@wizishop/angular-components 19.0.0-beta.3 → 19.0.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"wizishop-angular-components.mjs","sources":["../../../../projects/angular-components/src/lib/components/loader/loader.component.ts","../../../../projects/angular-components/src/lib/components/loader/loader.component.html","../../../../projects/angular-components/src/lib/directives/abstract-debounce/abstract-debounce.directive.ts","../../../../projects/angular-components/src/lib/directives/abstract-debounce/debounce-keyup.directive.ts","../../../../projects/angular-components/src/lib/services/dom.service.ts","../../../../projects/angular-components/src/lib/directives/auto-hide/auto-hide.directive.ts","../../../../projects/angular-components/src/lib/directives/zindex-toggle/zindex-toggle.directive.ts","../../../../projects/angular-components/src/lib/directives/ng-var.directive.ts","../../../../projects/angular-components/src/lib/directives/keyboard-events/keypress-enter.directive.ts","../../../../projects/angular-components/src/lib/components/select/option/option-selection-handler.token.ts","../../../../projects/angular-components/src/lib/components/select/option/select-option.directive.ts","../../../../projects/angular-components/src/lib/utils/array.ts","../../../../projects/angular-components/src/lib/components/select/select/value-change.service.ts","../../../../projects/angular-components/src/lib/components/select/select/select.directive.ts","../../../../projects/angular-components/src/lib/directives/keyboard-events/only-numbers.directive.ts","../../../../projects/angular-components/src/lib/directives/keyboard-events/two-digital-decimal-number.directive.ts","../../../../projects/angular-components/src/lib/components/radio-legacy/radio-legacy-directive.ts","../../../../projects/angular-components/src/lib/components/radio-legacy/radio-group-legacy.directive.ts","../../../../projects/angular-components/src/lib/directives/copy-to-clipboard/copy-to-clipboard.directive.ts","../../../../projects/angular-components/src/lib/directives/scroll-to/scroll-to.directive.ts","../../../../projects/angular-components/src/lib/directives/watch-dom-tree/watch-dom-tree.directive.ts","../../../../projects/angular-components/src/lib/directives/shared-directives.module.ts","../../../../projects/angular-components/src/lib/components/tooltip/tooltip.component.ts","../../../../projects/angular-components/src/lib/components/tooltip/tooltip.component.html","../../../../projects/angular-components/src/lib/components/tooltip/tooltip.module.ts","../../../../projects/angular-components/src/lib/components/progress-bar/progress-bar.component.ts","../../../../projects/angular-components/src/lib/components/progress-bar/progress-bar.component.html","../../../../projects/angular-components/src/lib/components/inputs/input/input.component.ts","../../../../projects/angular-components/src/lib/components/inputs/input/input.component.html","../../../../projects/angular-components/src/lib/components/inputs/input-search/input-search.component.ts","../../../../projects/angular-components/src/lib/components/inputs/input-search/input-search.component.html","../../../../projects/angular-components/src/lib/animations/in-out/in-out-y.animation.ts","../../../../projects/angular-components/src/lib/components/checkbox/checkbox.component.ts","../../../../projects/angular-components/src/lib/components/checkbox/checkbox.component.html","../../../../projects/angular-components/src/lib/utils/html-container.class.ts","../../../../projects/angular-components/src/lib/components/table/shared/table-checkbox-id.service.ts","../../../../projects/angular-components/src/lib/components/table/directives/checkBoxRow.directive.ts","../../../../projects/angular-components/src/lib/services/multiple-selection.service.ts","../../../../projects/angular-components/src/lib/components/table/directives/raw.directive.ts","../../../../projects/angular-components/src/lib/components/table/shared/filters-table.service.ts","../../../../projects/angular-components/src/lib/components/pagination/pipes/is-last-page.pipe.ts","../../../../projects/angular-components/src/lib/components/pagination/pipes/array-pages.pipe.ts","../../../../projects/angular-components/src/lib/components/pagination/pipes/custom-text.pipe.ts","../../../../projects/angular-components/src/lib/components/pagination/pagination.component.ts","../../../../projects/angular-components/src/lib/components/pagination/pagination.component.html","../../../../projects/angular-components/src/lib/components/table/table.component.ts","../../../../projects/angular-components/src/lib/components/table/table.component.html","../../../../projects/angular-components/src/lib/components/tag/tag.component.ts","../../../../projects/angular-components/src/lib/components/tag/tag.component.html","../../../../projects/angular-components/src/lib/components/tabs/tab/tab.component.ts","../../../../projects/angular-components/src/lib/components/tabs/tab/tab.component.html","../../../../projects/angular-components/src/lib/components/tabs/tab-body/tab-body.directive.ts","../../../../projects/angular-components/src/lib/components/tabs/tab-body/tab-body.component.ts","../../../../projects/angular-components/src/lib/components/tabs/tab-body/tab-body.component.html","../../../../projects/angular-components/src/lib/components/tabs/tabs.component.ts","../../../../projects/angular-components/src/lib/components/tabs/tabs.component.html","../../../../projects/angular-components/src/lib/components/button/button.component.ts","../../../../projects/angular-components/src/lib/components/button/button.component.html","../../../../projects/angular-components/src/lib/components/info/info.component.ts","../../../../projects/angular-components/src/lib/components/info/info.component.html","../../../../projects/angular-components/src/lib/components/settings/settings.component.ts","../../../../projects/angular-components/src/lib/components/settings/settings.component.html","../../../../projects/angular-components/src/lib/components/delete/delete.component.ts","../../../../projects/angular-components/src/lib/components/delete/delete.component.html","../../../../projects/angular-components/src/lib/components/dropdown/dropdown.component.ts","../../../../projects/angular-components/src/lib/components/dropdown/dropdown.component.html","../../../../projects/angular-components/src/lib/components/image/image.component.ts","../../../../projects/angular-components/src/lib/components/image/image.component.html","../../../../projects/angular-components/src/lib/components/back/back.component.ts","../../../../projects/angular-components/src/lib/components/back/back.component.html","../../../../projects/angular-components/src/lib/components/separator/separator.component.ts","../../../../projects/angular-components/src/lib/components/separator/separator.component.html","../../../../projects/angular-components/src/lib/components/logo/logo.component.ts","../../../../projects/angular-components/src/lib/components/logo/logo.component.html","../../../../projects/angular-components/src/lib/components/radio-legacy/radio.component.ts","../../../../projects/angular-components/src/lib/components/radio-legacy/radio.component.html","../../../../projects/angular-components/src/lib/components/state/state.component.ts","../../../../projects/angular-components/src/lib/components/state/state.component.html","../../../../projects/angular-components/src/lib/animations/in-out/in-out-x.animation.ts","../../../../projects/angular-components/src/lib/components/tag-label/tag-label.component.ts","../../../../projects/angular-components/src/lib/components/tag-label/tag-label.component.html","../../../../projects/angular-components/src/lib/animations/show/opacity.animation.ts","../../../../projects/angular-components/src/lib/components/optional-disable-container/optional-disable-container.component.ts","../../../../projects/angular-components/src/lib/components/optional-disable-container/optional-disable-container.component.html","../../../../projects/angular-components/src/lib/components/calendar/calendar.component.ts","../../../../projects/angular-components/src/lib/components/calendar/calendar.component.html","../../../../projects/angular-components/src/lib/components/edit-in-place/edit-in-place.component.ts","../../../../projects/angular-components/src/lib/components/edit-in-place/edit-in-place.component.html","../../../../projects/angular-components/src/lib/components/text-area/text-area.component.ts","../../../../projects/angular-components/src/lib/components/text-area/text-area.component.html","../../../../projects/angular-components/src/lib/components/hn/h1/h1.component.ts","../../../../projects/angular-components/src/lib/components/hn/h1/h1.component.html","../../../../projects/angular-components/src/lib/components/hn/h2/h2.component.ts","../../../../projects/angular-components/src/lib/components/hn/h2/h2.component.html","../../../../projects/angular-components/src/lib/components/hn/h3/h3.component.ts","../../../../projects/angular-components/src/lib/components/hn/h3/h3.component.html","../../../../projects/angular-components/src/lib/services/history.service.ts","../../../../projects/angular-components/src/lib/components/header-page/header-page.component.ts","../../../../projects/angular-components/src/lib/components/header-page/header-page.component.html","../../../../projects/angular-components/src/lib/components/link/link.component.ts","../../../../projects/angular-components/src/lib/components/link/link.component.html","../../../../projects/angular-components/src/lib/components/switch/switch.component.ts","../../../../projects/angular-components/src/lib/components/switch/switch.component.html","../../../../projects/angular-components/src/lib/components/alert/alert.component.ts","../../../../projects/angular-components/src/lib/components/alert/alert.component.html","../../../../projects/angular-components/src/lib/components/text/text.component.ts","../../../../projects/angular-components/src/lib/components/text/text.component.html","../../../../projects/angular-components/src/lib/components/pagination/pagination.module.ts","../../../../projects/angular-components/src/lib/components/checkbox/checkbox.module.ts","../../../../projects/angular-components/src/lib/components/table/directives/column.directive.ts","../../../../projects/angular-components/src/lib/components/table/directives/columnHeader.directive.ts","../../../../projects/angular-components/src/lib/components/table/table.module.ts","../../../../projects/angular-components/src/lib/components/upload/upload.component.ts","../../../../projects/angular-components/src/lib/components/upload/upload.component.html","../../../../projects/angular-components/src/lib/components/hn/h4/h4.component.ts","../../../../projects/angular-components/src/lib/components/hn/h4/h4.component.html","../../../../projects/angular-components/src/lib/components/select-in-text/select-in-text.component.ts","../../../../projects/angular-components/src/lib/components/select-in-text/select-in-text.component.html","../../../../projects/angular-components/src/lib/components/multiple-search/multiple-search.component.ts","../../../../projects/angular-components/src/lib/components/multiple-search/multiple-search.component.html","../../../../projects/angular-components/src/lib/components/multiple-search-plus/multiple-search-plus.component.ts","../../../../projects/angular-components/src/lib/components/multiple-search-plus/multiple-search-plus.component.html","../../../../projects/angular-components/src/lib/components/common/label/label.component.ts","../../../../projects/angular-components/src/lib/components/common/label/label.component.html","../../../../projects/angular-components/src/lib/components/inputs/input-with-select/input-with-select.component.ts","../../../../projects/angular-components/src/lib/components/inputs/input-with-select/input-with-select.component.html","../../../../projects/angular-components/src/lib/components/popin/popin.component.ts","../../../../projects/angular-components/src/lib/components/popin/popin.component.html","../../../../projects/angular-components/src/lib/components/free-popin/free-popin.component.ts","../../../../projects/angular-components/src/lib/components/free-popin/free-popin.component.html","../../../../projects/angular-components/src/lib/components/block/separator/block-separator.component.ts","../../../../projects/angular-components/src/lib/components/block/block.component.ts","../../../../projects/angular-components/src/lib/components/block/block.component.html","../../../../projects/angular-components/src/lib/components/wrapper/wrapper.component.ts","../../../../projects/angular-components/src/lib/components/wrapper/wrapper.component.html","../../../../projects/angular-components/src/lib/components/filters/filters.component.ts","../../../../projects/angular-components/src/lib/components/filters/filters.component.html","../../../../projects/angular-components/src/lib/components/wrapper-blocs/wrapper-blocs.component.ts","../../../../projects/angular-components/src/lib/components/wrapper-blocs/wrapper-blocs.component.html","../../../../projects/angular-components/src/lib/components/snackbar/snackbar.component.ts","../../../../projects/angular-components/src/lib/components/snackbar/snackbar.component.html","../../../../projects/angular-components/src/lib/components/alert-popup/alert-popup.component.ts","../../../../projects/angular-components/src/lib/components/alert-popup/alert-popup.component.html","../../../../projects/angular-components/src/lib/components/alert-popup/alert-popup.service.ts","../../../../projects/angular-components/src/lib/components/alert-popup/alert-popup-module.ts","../../../../projects/angular-components/src/lib/components/search/search.component.ts","../../../../projects/angular-components/src/lib/components/search/search.component.html","../../../../projects/angular-components/src/lib/pipes/selected-list/are-all-options-selected.pipe.ts","../../../../projects/angular-components/src/lib/components/selected-list/selected-list.component.ts","../../../../projects/angular-components/src/lib/components/selected-list/selected-list.component.html","../../../../projects/angular-components/src/lib/components/tree/tree.component.ts","../../../../projects/angular-components/src/lib/components/tree/tree.component.html","../../../../projects/angular-components/src/lib/pipes/tree/format-object-to-recursif-tree.pipe.ts","../../../../projects/angular-components/src/lib/pipes/tree/format-object-to-simple-tree.pipe.ts","../../../../projects/angular-components/src/lib/pipes/select/select-filters.pipe.ts","../../../../projects/angular-components/src/lib/pipes/select/filter-options.pipe.ts","../../../../projects/angular-components/src/lib/pipes/find-option-selected-field.pipe.ts","../../../../projects/angular-components/src/lib/pipes/call-component-function.pipe.ts","../../../../projects/angular-components/src/lib/pipes/shared-pipes.module.ts","../../../../projects/angular-components/src/lib/components/tree/tree.module.ts","../../../../projects/angular-components/src/lib/utils/uuid.ts","../../../../projects/angular-components/src/lib/components/select/option/option.component.ts","../../../../projects/angular-components/src/lib/components/select/option/option.component.html","../../../../projects/angular-components/src/lib/components/select/option-group/option-group.component.ts","../../../../projects/angular-components/src/lib/components/select/option-group/option-group.component.html","../../../../projects/angular-components/src/lib/components/select/select-search-trigger/select-search-trigger.component.ts","../../../../projects/angular-components/src/lib/components/select/select-search-trigger/select-search-trigger.component.html","../../../../projects/angular-components/src/lib/components/select/select/select.component.ts","../../../../projects/angular-components/src/lib/components/select/select/select.component.html","../../../../projects/angular-components/src/lib/components/select/option-call-to-action/option-call-to-action.component.ts","../../../../projects/angular-components/src/lib/components/select/option-call-to-action/option-call-to-action.component.html","../../../../projects/angular-components/src/lib/components/common/placeholder/placeholder.component.ts","../../../../projects/angular-components/src/lib/components/common/placeholder/placeholder.component.html","../../../../projects/angular-components/src/lib/components/wrapper-sidebar/wrapper-sidebar.component.ts","../../../../projects/angular-components/src/lib/components/wrapper-sidebar/wrapper-sidebar.component.html","../../../../projects/angular-components/src/lib/components/breadcrumbs/breadcrumbs.component.ts","../../../../projects/angular-components/src/lib/components/breadcrumbs/breadcrumbs.component.html","../../../../projects/angular-components/src/lib/components/card-price/card-price.component.ts","../../../../projects/angular-components/src/lib/components/card-price/card-price.component.html","../../../../projects/angular-components/src/lib/components/token-check/token-check.component.ts","../../../../projects/angular-components/src/lib/components/token-check/token-check.component.html","../../../../projects/angular-components/src/lib/components/block-with-checkbox/block-with-checkbox.component.ts","../../../../projects/angular-components/src/lib/components/block-with-checkbox/block-with-checkbox.component.html","../../../../projects/angular-components/src/lib/components/confirm-delete/confirm-delete.component.ts","../../../../projects/angular-components/src/lib/components/confirm-delete/confirm-delete.component.html","../../../../projects/angular-components/src/lib/components/mosaic/mosaic.component.ts","../../../../projects/angular-components/src/lib/components/mosaic/mosaic.component.html","../../../../projects/angular-components/src/lib/components/content-with-buttons/content-with-buttons.component.ts","../../../../projects/angular-components/src/lib/components/content-with-buttons/content-with-buttons.component.html","../../../../projects/angular-components/src/lib/components/wrapper-multiple-block/wrapper-multiple-block.component.ts","../../../../projects/angular-components/src/lib/components/wrapper-multiple-block/wrapper-multiple-block.component.html","../../../../projects/angular-components/src/lib/components/draganddrop-list/draganddrop-list.component.ts","../../../../projects/angular-components/src/lib/components/draganddrop-list/draganddrop-list.component.html","../../../../projects/angular-components/src/lib/components/expansion/accordion/accordion-item.token.ts","../../../../projects/angular-components/src/lib/components/expansion/accordion/accordion.component.ts","../../../../projects/angular-components/src/lib/components/expansion/accordion/accordion.component.html","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel-header/expansion-panel-header.token.ts","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel-header/expansion-panel-header.directive.ts","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel-header/expansion-panel-header.component.ts","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel-header/expansion-panel-header.component.html","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel/expansion-panel.directive.ts","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel/expansion-panel.component.ts","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel/expansion-panel.component.html","../../../../projects/angular-components/src/lib/components/expansion/expansion.module.ts","../../../../projects/angular-components/src/lib/components/block/block-title-legacy/block-title-legacy.component.ts","../../../../projects/angular-components/src/lib/components/block/block-title-legacy/block-title-legacy.component.html","../../../../projects/angular-components/src/lib/components/summary/summary.component.ts","../../../../projects/angular-components/src/lib/components/summary/summary.component.html","../../../../projects/angular-components/src/lib/components/google-preview/google-preview.component.ts","../../../../projects/angular-components/src/lib/components/google-preview/google-preview.component.html","../../../../projects/angular-components/src/lib/components/charging-bar/charging-bar.component.ts","../../../../projects/angular-components/src/lib/components/charging-bar/charging-bar.component.html","../../../../projects/angular-components/src/lib/components/expanded-panel/expanded-panel.component.ts","../../../../projects/angular-components/src/lib/components/expanded-panel/expanded-panel.component.html","../../../../projects/angular-components/src/lib/components/row/row.component.ts","../../../../projects/angular-components/src/lib/components/row/row.component.html","../../../../projects/angular-components/src/lib/components/column/column.component.ts","../../../../projects/angular-components/src/lib/components/column/column.component.html","../../../../projects/angular-components/src/lib/components/ai-express/ai-express.component.ts","../../../../projects/angular-components/src/lib/components/ai-express/ai-express.component.html","../../../../projects/angular-components/src/lib/components/radio/radio-group.directive.ts","../../../../projects/angular-components/src/lib/components/radio/radio.component.ts","../../../../projects/angular-components/src/lib/components/radio/radio.component.html","../../../../projects/angular-components/src/lib/components/radio/option/option.component.ts","../../../../projects/angular-components/src/lib/components/radio/option/option.component.html","../../../../projects/angular-components/src/lib/components/tag-dropdown/tag-dropdown.component.ts","../../../../projects/angular-components/src/lib/components/tag-dropdown/tag-dropdown.component.html","../../../../projects/angular-components/src/lib/components/grid/grid.component.ts","../../../../projects/angular-components/src/lib/components/grid/grid.component.html","../../../../projects/angular-components/src/lib/components/color-picker/color-picker.component.ts","../../../../projects/angular-components/src/lib/components/color-picker/color-picker.component.html","../../../../projects/angular-components/src/lib/components/border-picker/border-picker.component.ts","../../../../projects/angular-components/src/lib/components/border-picker/border-picker.component.html","../../../../projects/angular-components/src/lib/components/slide-in/slide-in.component.ts","../../../../projects/angular-components/src/lib/components/slide-in/slide-in.component.html","../../../../projects/angular-components/src/lib/components/menu-tile/menu-tile.component.ts","../../../../projects/angular-components/src/lib/components/menu-tile/menu-tile.component.html","../../../../projects/angular-components/src/lib/components/image-text-section/image-text-section.component.ts","../../../../projects/angular-components/src/lib/components/image-text-section/image-text-section.component.html","../../../../projects/angular-components/src/lib/components/faq-section/faq-section.component.ts","../../../../projects/angular-components/src/lib/components/faq-section/faq-section.component.html","../../../../projects/angular-components/src/lib/components/reassurance-section/reassurance-section.component.ts","../../../../projects/angular-components/src/lib/components/reassurance-section/reassurance-section.component.html","../../../../projects/angular-components/src/lib/components/pricing-section/pricing-section.component.ts","../../../../projects/angular-components/src/lib/components/pricing-section/pricing-section.component.html","../../../../projects/angular-components/src/lib/components/shared-components.module.ts","../../../../projects/angular-components/src/lib/wizi-components.module.ts","../../../../projects/angular-components/src/lib/components/table/shared/table-filters-group.model.ts","../../../../projects/angular-components/src/lib/components/table/shared/distinct-until-table-filters-changed.ts","../../../../projects/angular-components/src/lib/animations/show/show-from-bottom.animation.ts","../../../../projects/angular-components/src/lib/animations/show/show-from-top.animation.ts","../../../../projects/angular-components/src/lib/animations/show/show-from-left.animation.ts","../../../../projects/angular-components/src/lib/animations/show/show-from-right.animation.ts","../../../../projects/angular-components/src/lib/animations/list/animate-list-from-bottom.animation.ts","../../../../projects/angular-components/src/lib/animations/list/animate-list-from-top.animation.ts","../../../../projects/angular-components/src/lib/animations/list/animate-list-from-right.animation.ts","../../../../projects/angular-components/src/lib/animations/list/animate-list-from-left.animation.ts","../../../../projects/angular-components/src/lib/animations/switch/switch-in-out.animation.ts","../../../../projects/angular-components/src/lib/components/tag-input/tag-input.component.ts","../../../../projects/angular-components/src/lib/components/tag-input/tag-input.component.html","../../../../projects/angular-components/src/public-api.ts","../../../../projects/angular-components/src/wizishop-angular-components.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'wac-loader',\n templateUrl: './loader.component.html',\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CommonModule]\n})\nexport class LoaderComponent {\n @Input()\n text = '';\n @Input()\n small = false;\n}\n","<div class=\"wac-loader\" [ngClass]=\"{ 'is-small': small }\">\n <div class=\"loader loader1\">\n <div>\n <div>\n <div>\n <div>\n <div>\n <div></div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <p class=\"is-textcentered\" *ngIf=\"!!text\" [innerHTML]=\"text\"></p>\n</div>\n","import { Directive, OnDestroy, Input, Output, EventEmitter } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil, debounceTime, distinctUntilChanged, tap } from 'rxjs/operators';\n\n@Directive({\n standalone: false,\n selector: 'AbstractDebounceDirective'\n})\nexport class AbstractDebounceDirective implements OnDestroy {\n @Input()\n public debounceTime: number;\n\n @Output()\n public onEventChange: EventEmitter<any>;\n\n protected emitEvent$: Subject<any>;\n protected subscription$: Subject<void>;\n\n constructor() {\n this.debounceTime = 500;\n this.onEventChange = new EventEmitter<any>();\n this.emitEvent$ = new Subject<any>();\n this.subscription$ = new Subject<void>();\n }\n\n ngOnInit(): void {\n this.emitEvent$\n .pipe(\n takeUntil(this.subscription$),\n debounceTime(this.debounceTime),\n distinctUntilChanged(),\n tap(value => this.emitChange(value))\n )\n .subscribe();\n }\n\n public emitChange(value: any): void {\n this.onEventChange.emit(value);\n }\n\n ngOnDestroy(): void {\n this.subscription$.next();\n this.subscription$.complete();\n }\n}\n","import { Directive, HostListener } from '@angular/core';\nimport { AbstractDebounceDirective } from './abstract-debounce.directive';\n@Directive({\n standalone: false,\n selector: 'input[debounceKeyUp]'\n})\nexport class DebounceKeyupDirective extends AbstractDebounceDirective {\n constructor() {\n super();\n }\n\n @HostListener('keyup', ['$event'])\n public onKeyUp(event: any): void {\n event.preventDefault();\n this.emitEvent$.next(event);\n }\n}\n","import {ApplicationRef, ComponentFactoryResolver, ComponentRef, EmbeddedViewRef, Injectable, Injector} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport {ComponentType, OverlayContainer} from '@angular/cdk/overlay';\nimport {PortalInjector} from '@angular/cdk/portal';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DomService {\n\n constructor(\n private componentFactoryResolver: ComponentFactoryResolver,\n private appRef: ApplicationRef,\n private injector: Injector,\n private overlayContainer: OverlayContainer\n ) {}\n private documentEventSource = new Subject();\n private documentEventDone = this.documentEventSource.asObservable();\n private eventInitialisation = true;\n\n private documentScrollSource = new Subject();\n private documentScrollDone = this.documentScrollSource.asObservable();\n\n documentEvent() {\n this.setDocumentEventListener();\n return this.documentEventDone;\n }\n\n setDocumentEventListener() {\n if (!this.eventInitialisation) {\n return;\n }\n this.eventInitialisation = false;\n document.body.addEventListener('click', event => {\n this.documentEventSource.next(event.target);\n });\n }\n\n documentScroll() {\n return this.documentScrollDone;\n }\n\n setScrollEventListener() {\n window.onscroll = () => {\n this.documentScrollSource.next(window);\n };\n }\n attachComponentPortal<T>(component: ComponentType<T>, injector?: PortalInjector): ComponentRef<T> {\n const componentRef: ComponentRef<T> = this.componentFactoryResolver\n .resolveComponentFactory(component)\n .create(injector ? injector : this.injector);\n\n this.appRef.attachView(componentRef.hostView);\n\n this.overlayContainer.getContainerElement().appendChild(this._getComponentRootNode(componentRef));\n\n return componentRef;\n }\n\n /** Gets the root HTMLElement for an instantiated component. */\n private _getComponentRootNode(componentRef: ComponentRef<any>): HTMLElement {\n return (componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;\n }\n}\n","import {Directive, ElementRef, Input, Output, EventEmitter, AfterViewInit, OnInit} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { DomService } from '../../services/dom.service';\n\n@Directive({\n standalone: false,\n selector: '[wzAutoHide]'\n})\nexport class AutoHideDirective implements AfterViewInit {\n @Input() triggerElement: string;\n @Input() forceOn: Array<string> = null;\n subscription: Subscription;\n\n constructor(private _elementRef: ElementRef, private domService: DomService) {}\n\n @Output('clickOutside') clickOutside: EventEmitter<any> = new EventEmitter();\n\n ngAfterViewInit(): void {\n this.subscription = this.domService.documentEvent().subscribe((targetElement: Element) => {\n const clickedInside = this._elementRef.nativeElement.contains(targetElement);\n const classNameFromElement = targetElement.getAttribute('class');\n\n if (!clickedInside && (classNameFromElement === null || !classNameFromElement.includes(this.triggerElement))) {\n\n this.clickOutside.emit(null);\n }\n\n if (this.forceOn != null && classNameFromElement !== null) {\n let needToClose = true;\n this.forceOn.forEach(v => {\n if (!classNameFromElement.includes(v)) {\n needToClose = false;\n }\n });\n if (needToClose) {\n this.clickOutside.emit(null);\n }\n }\n });\n }\n\n ngOnDestroy() {\n this.subscription.unsubscribe()\n }\n}\n","import {Directive, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output, Renderer2} from '@angular/core';\n\n@Directive({\n standalone: false,\n selector: '[zIndexToggle]'\n})\nexport class ZindexToggleDirective implements OnInit, OnDestroy {\n isActived = false;\n\n @Output()\n public onEventChange: EventEmitter<any>;\n\n @Input('zIndexToggle')\n set isActive(value: boolean) {\n this.isActived = value;\n this.switchToggle();\n }\n get isActive(): boolean {\n return this.isActived;\n }\n\n constructor(private currentElement: ElementRef, private renderer: Renderer2) {\n }\n\n ngOnInit(): void {\n }\n\n switchToggle() {\n if (this.isActived) {\n this.renderer.addClass(this.currentElement.nativeElement.parentElement.parentNode, 'zindexToggle');\n this.renderer.addClass(this.currentElement.nativeElement.parentElement.parentNode.parentNode, 'zindexToggle');\n } else {\n this.renderer.removeClass(this.currentElement.nativeElement.parentElement.parentNode, 'zindexToggle');\n this.renderer.removeClass(this.currentElement.nativeElement.parentElement.parentNode.parentNode, 'zindexToggle');\n }\n }\n\n ngOnDestroy(): void {\n }\n}\n","import { Directive, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\n\n@Directive({\n standalone: false,\n selector: '[ngVar]',\n})\nexport class VarDirective {\n // https://stackoverflow.com/questions/38582293/how-to-declare-a-variable-in-a-template-in-angular\n\n @Input()\n set ngVar(context: unknown) {\n this.context.$implicit = this.context.ngVar = context;\n\n if (!this.hasView) {\n this.vcRef.createEmbeddedView(this.templateRef, this.context);\n this.hasView = true;\n }\n }\n\n private context: {\n $implicit: unknown;\n ngVar: unknown;\n } = {\n $implicit: null,\n ngVar: null,\n };\n\n private hasView: boolean = false;\n\n constructor(\n private templateRef: TemplateRef<any>,\n private vcRef: ViewContainerRef\n ) {}\n}","import { Directive, EventEmitter, HostListener, Output } from '@angular/core';\n\n@Directive({\n standalone: false,\n selector: '[keypressEnter]'\n})\nexport class KeypressEnterDirective {\n\n private KEYPRESS_ENTER = \"Enter\";\n\n @HostListener('keypress', ['$event']) onKeypress(event: KeyboardEvent){\n if (event.key === this.KEYPRESS_ENTER) {\n this.keypressEnter.next(true);\n }\n }\n\n @Output() keypressEnter = new EventEmitter<boolean>();\n\n constructor() {}\n}","import { InjectionToken } from \"@angular/core\";\nimport { OptionSelectionHandler } from \"./option-selection-handler.interface\";\n\nexport const OPTION_SELECTION_HANDLER = new InjectionToken<OptionSelectionHandler<any>>('OPTION_SELECTION_HANDLER');","import { ChangeDetectorRef, Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';\nimport { OptionSelectionHandler } from './option-selection-handler.interface';\nimport { OPTION_SELECTION_HANDLER } from './option-selection-handler.token';\n\n// todo create a select module and in the select-option.directive.ts\n@Directive({\n selector: '[wacOption]',\n providers: [{ provide: OPTION_SELECTION_HANDLER, useExisting: SelectOptionDirective }],\n exportAs: 'wacOption',\n standalone: true\n})\nexport class SelectOptionDirective<TOptionValue> implements OptionSelectionHandler<TOptionValue> {\n\n @HostListener('click', ['$event']) onClick(event: PointerEvent) {\n this.onSelectOption();\n if (this.onClickEventPreventDefault) {\n event.preventDefault();\n }\n }\n\n @HostBinding('class.wac-option-selected') get isOptionSelected() {\n return this.selected;\n }\n\n @HostBinding('class.wac-option-disabled') get isOptionDisabled() {\n return this.disabled || this.disabledByParent;\n }\n\n @HostBinding('style.cursor') get cursor () {\n return this.disabled || this.disabledByParent ? 'not-allowed' : 'pointer';\n }\n\n @Input()\n disabled = false;\n\n protected disabledByParent = false;\n\n @Input()\n value: TOptionValue;\n\n @Input()\n selected: boolean = false;\n\n @Input() onClickEventPreventDefault = true;\n\n @Output()\n selectedChange = new EventEmitter<boolean>();\n\n multiple = false;\n\n constructor(protected contentRef: ElementRef, protected changeDetectorRef: ChangeDetectorRef) {}\n\n setSelected(selected: boolean): void {\n this.selected = selected;\n this.changeDetectorRef.markForCheck();\n }\n\n onSelectOption() {\n if (this.disabled || this.disabledByParent) {\n return;\n }\n this.selected = this.multiple ? !this.selected : true; // If not multiple mode -> can not be unselected\n this.selectedChange.emit(this.selected);\n this.changeDetectorRef.markForCheck();\n }\n\n getValue() {\n return this.value;\n }\n\n setValue(value: TOptionValue): void {\n this.value = value;\n this.changeDetectorRef.markForCheck();\n }\n\n isSelected(): boolean {\n return this.selected;\n }\n\n getContentRef(): ElementRef<any> {\n return this.contentRef;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabledByParent = isDisabled;\n this.changeDetectorRef.markForCheck();\n }\n\n setMultiple(multiple: boolean): void {\n this.multiple = multiple;\n this.changeDetectorRef.markForCheck();\n }\n}","export const compareArrays = <TItem>(a: TItem[], b: TItem[]) =>\n a.length === b.length && a.every((element, index) => element === b[index]);\n","import { ChangeDetectorRef, Injectable, OnDestroy, QueryList } from '@angular/core';\nimport { merge, Observable, Subject } from 'rxjs';\nimport { filter, map, takeUntil } from 'rxjs/operators';\nimport { compareArrays } from '../../../utils/array';\nimport { OptionComponent } from '../option/option.component';\n\n@Injectable()\nexport class ValueChangeService<TOptionValue> implements OnDestroy {\n\n valueChange$: Subject<TOptionValue | TOptionValue[]> = new Subject();\n\n set value(value: TOptionValue | TOptionValue[]) {\n this._value = value;\n this.handleValueChange();\n this.valueChange$.next(value);\n }\n\n get value(): TOptionValue | TOptionValue[] {\n return this._value;\n }\n\n multiple: boolean = false;\n\n private _value: TOptionValue | TOptionValue[];\n\n disabled: boolean;\n\n optionChildren: QueryList<OptionComponent<TOptionValue>>;\n\n selectedOptionContent: any;\n\n indexSelectedOption: number = null; // todo update to array\n\n resetListeners$: Subject<void> = new Subject();\n\n constructor(private changeDetectorRef: ChangeDetectorRef) {\n }\n\n handleSelectOptionsChange(optionChildren: QueryList<OptionComponent<TOptionValue>>, value: any) {\n this.resetListeners$.next();\n\n this.optionChildren = optionChildren;\n this._value = value;\n this.indexSelectedOption = null;\n\n this.handleMultipleSelection();\n this.handleInitialSelectedOption();\n this.handleSelectedOptionsEvent();\n }\n\n assignValue(value: TOptionValue | TOptionValue[]) {\n this._value = value;\n this.handleValueChange();\n }\n\n handleValueChange() {\n this.changeSelectedOption();\n this.updateSelectPlaceholder();\n this.changeDetectorRef.markForCheck();\n }\n\n setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n this.optionChildren?.forEach((option) => option.setDisabledState(isDisabled));\n }\n\n selectNextOption() {\n // TODO : Handle multiple selection\n if (this.indexSelectedOption +1 >= this.optionChildren.length) {\n return;\n }\n\n if (this.indexSelectedOption === null) {\n this.indexSelectedOption = 0;\n } else {\n this.indexSelectedOption = this.indexSelectedOption + 1;\n }\n\n this.value = this.optionChildren.get(this.indexSelectedOption).value;\n }\n\n selectPreviousOption() {\n // TODO : Handle multiple selection\n if (!this.indexSelectedOption) {\n this.indexSelectedOption = null;\n this.assignValue(null);\n return;\n }\n\n this.indexSelectedOption = this.indexSelectedOption - 1;\n this.value = this.optionChildren.get(this.indexSelectedOption).value;\n }\n\n searchOptionByFirstLetter(letter: string) {\n // TODO : Handle multiple selectiong\n const matchedOptionsIndex = this.optionChildren\n .map((option, index) => this.indexOfMatchedOption(option, index, letter))\n .filter(this.isNotNull);\n\n if (!matchedOptionsIndex.length) { // reset the selection\n this.indexSelectedOption = null;\n this.value = null;\n return;\n }\n\n // find the next option after the current selected option, or the first option\n\n const validOptionIndex = matchedOptionsIndex.find(this.highestAndClosestIndex);\n\n this.indexSelectedOption = isNaN(validOptionIndex) ? matchedOptionsIndex[0] : validOptionIndex;\n this.value = this.optionChildren.get(this.indexSelectedOption).value;\n }\n\n setMultiple(value: boolean) {\n this.multiple = value;\n }\n\n private indexOfMatchedOption = (option: OptionComponent<TOptionValue>, index: number, letter: string) => {\n const textOption = option.getContentRef().nativeElement.textContent.trim().toLowerCase();\n return textOption.startsWith(letter) ? index : null;\n }\n\n private isNotNull = (index: number | null) => {\n return index !== null;\n }\n\n private highestAndClosestIndex = (index: number) => {\n if (isNaN(this.indexSelectedOption)) {\n return true;\n }\n if (index > this.indexSelectedOption) {\n return true;\n }\n\n return false;\n }\n\n private handleMultipleSelection() {\n if (this.multiple) {\n setTimeout(() => {\n this.optionChildren.forEach((option) => option.setMultiple(true));\n }, 0);\n }\n }\n\n private handleInitialSelectedOption() {\n setTimeout(() => { // ! Avoid Expression has changed...\n\n if (this.mustUpdateValueWithInitialSelectedOptionValues()) { // initial option value selected win against initial value or ngModel value\n this.value = this.multiple ? this.getSelectedOptionsValues() : this.getSelectedOptionsValues()[0];\n }\n\n if (this.disabled) {\n this.optionChildren.forEach((option) => option.setDisabledState(true));\n }\n\n this.handleValueChange();\n }, 0);\n }\n\n private mustUpdateValueWithInitialSelectedOptionValues() {\n if (!this.getSelectedOptionComponents().length) {\n return false;\n }\n\n if (this.multiple && Array.isArray(this.value)) {\n return !compareArrays(this.value, this.getSelectedOptionsValues());\n }\n\n return this.value !== this.getSelectedOptionsValues()[0];\n }\n\n private handleSelectedOptionsEvent() {\n this.optionSelectedChangeListeners().subscribe((option) => {\n const selectedOptionsValues = this.getSelectedOptionsValues();\n if (this.multiple) {\n this.value = selectedOptionsValues;\n return;\n }\n this.value = option.selected ? option.value : undefined;\n });\n }\n\n private updateSelectPlaceholder() {\n if (!this.value && typeof this.value !== 'number') {\n this.selectedOptionContent = null;\n return;\n }\n\n this.selectedOptionContent = this.getSelectedOptionsContent();\n }\n\n private getSelectedOptionsContent() {\n if (this.multiple) {\n return this.getSelectedOptionComponents().reduce((acc, option) => (acc ? acc + ', ' : '') + option.getContentRef().nativeElement.textContent.trim(), ''); // todo improve for multiple\n }\n return this.getSelectedOptionComponents()[0]?.getContentRef().nativeElement.innerHTML;\n }\n\n private getSelectedOptionComponents(){\n return this.optionChildren.filter((option) => option.selected);\n }\n\n private getSelectedOptionsValues() {\n return this.getSelectedOptionComponents().map((option) => option.value);\n }\n\n private optionSelectedChangeListeners() {\n const selectedChange$ = this.optionChildren.map((option) => {\n return option.selectedChange.pipe(\n filter(() => !this.disabled),\n map(() => option)\n );\n });\n\n return merge(...selectedChange$).pipe(takeUntil(this.resetListeners$));\n }\n\n private changeSelectedOption() {\n this.optionChildren.forEach((optionComponent, index) => {\n optionComponent.setSelected(this.isSelectedValue(optionComponent.value));\n\n if (optionComponent.selected) {\n this.indexSelectedOption = index;\n }\n });\n }\n\n /**\n * May not work with objects values\n */\n private isSelectedValue(value2: TOptionValue) {\n if (this.multiple && Array.isArray(this.value)) {\n return this.value.includes(value2);\n }\n return this.value === value2;\n }\n\n ngOnDestroy() {\n this.resetListeners$.next();\n this.resetListeners$.complete();\n }\n}","import { DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, A, Z, ZERO, NINE, TAB } from '@angular/cdk/keycodes';\nimport { AfterViewInit, ContentChildren, Directive, EventEmitter, HostBinding, HostListener, Input, OnDestroy, OnInit, Output, QueryList } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { startWith, Subject, takeUntil } from 'rxjs';\nimport { OptionSelectionHandler } from '../option/option-selection-handler.interface';\nimport { OPTION_SELECTION_HANDLER } from '../option/option-selection-handler.token';\nimport { ValueChangeService } from './value-change.service';\n\n@Directive(\n {\n selector: '[wacSelect]',\n providers: [\n { provide: NG_VALUE_ACCESSOR, useExisting: SelectDirective, multi: true },\n ValueChangeService\n ],\n exportAs: 'wacSelect',\n standalone: true\n})\nexport class SelectDirective<TOptionValue> implements OnInit, ControlValueAccessor, AfterViewInit, OnDestroy {\n\n @HostBinding('attr.tabindex') get tabindex() {\n return this.tabIndex;\n }\n\n @HostBinding('class.wac-select-disabled') get isSelectDisabled() {\n return this.disabled;\n }\n\n /** Handles all keydown events on the select. */\n @HostListener('keydown', ['$event']) onKeydown(event: KeyboardEvent): void {\n if (event.keyCode === TAB) {\n return;\n }\n if (this.disabled) {\n return;\n }\n this.handleKeyboardAction(event);\n }\n\n @ContentChildren(OPTION_SELECTION_HANDLER as any, { descendants: true }) optionChildren!: QueryList<OptionSelectionHandler<TOptionValue>>;\n\n @Input()\n set value(value: TOptionValue | TOptionValue[]) {\n this._value = value;\n\n if (!this.optionChildren) {\n return;\n }\n\n this.valueChangeService.assignValue(value);\n }\n\n get value() : TOptionValue | TOptionValue[] {\n return this._value;\n }\n _value: TOptionValue | TOptionValue[];\n\n @Output()\n valueChange = new EventEmitter<any>();\n\n @Input()\n get multiple(): boolean {\n return this._multiple;\n }\n set multiple(value: boolean) {\n this._multiple = value;\n this.valueChangeService.setMultiple(value);\n }\n private _multiple: boolean = false;\n\n @Input()\n set disabled(disabled: boolean) {\n this._disabled = disabled;\n this.valueChangeService.setDisabledState(disabled);\n }\n get disabled() : boolean {\n return this._disabled;\n }\n _disabled: boolean = false;\n\n\n @Input() tabIndex: number = 0;\n\n @Input() \n get searchByTyping(): boolean {\n return this._searchByTyping;\n }\n set searchByTyping(value: boolean) {\n this._searchByTyping = value;\n }\n _searchByTyping = false;\n\n isDestroyed$: Subject<void> = new Subject();\n\n constructor(protected valueChangeService: ValueChangeService<TOptionValue>) {\n }\n\n ngOnInit(): void {\n this.handleValueChange();\n }\n\n ngAfterViewInit() {\n this.handleOptionChildren();\n }\n\n private handleValueChange() {\n this.valueChangeService.valueChange$.pipe(takeUntil(this.isDestroyed$)).subscribe(value => {\n this._value = value;\n this.valueChange.emit(this.value);\n this.onChange(this.value);\n this.onTouch(this.value);\n });\n }\n\n private handleOptionChildren() {\n this.optionChildren.changes.pipe(takeUntil(this.isDestroyed$), startWith(this.optionChildren)).subscribe(optionChildren => {\n this.valueChangeService.handleSelectOptionsChange(optionChildren, this.value);\n\n });\n }\n\n /** Handles keyboard events when the selected is open. */\n protected handleKeyboardAction(event: KeyboardEvent): void {\n if (!this.searchByTyping) {\n return;\n }\n const keyCode = event.keyCode;\n const isArrowKey =\n keyCode === DOWN_ARROW ||\n keyCode === UP_ARROW ||\n keyCode === LEFT_ARROW ||\n keyCode === RIGHT_ARROW;\n const isTyping = (keyCode >= A && keyCode <= Z) || (keyCode >= ZERO && keyCode <= NINE);\n if (isArrowKey) {\n event.preventDefault(); // prevents the page from scrolling\n // select the next option on arrow key down\n if (keyCode === DOWN_ARROW || keyCode === RIGHT_ARROW) {\n this.valueChangeService.selectNextOption();\n return;\n }\n this.valueChangeService.selectPreviousOption();\n return;\n }\n\n if (isTyping) {\n this.valueChangeService.searchOptionByFirstLetter(event.key);\n return;\n }\n\n }\n\n // ControlValueAccessor methods\n\n onChange: (value: any) => void = () => {};\n\n onTouch: (value: any) => void = () => {};\n\n writeValue(value: any){\n if (typeof value === 'undefined') {\n return;\n }\n this.value = value;\n }\n\n registerOnChange(fn: any){\n this.onChange = fn;\n }\n registerOnTouched(fn: any){\n this.onTouch = fn;\n }\n\n setDisabledState(isDisabled: boolean) {\n this.disabled = isDisabled;\n };\n\n ngOnDestroy() {\n this.isDestroyed$.next();\n this.isDestroyed$.complete();\n }\n\n}\n","import { Directive, HostListener, Input } from '@angular/core';\n\n@Directive({\n standalone: false,\n selector: '[wacOnlyNumber]'\n})\nexport class OnlyNumberDirective {\n\n // https://stackoverflow.com/questions/41465542/angular2-input-field-to-accept-only-numbers?page=1&tab=scoredesc#tab-top\n\n constructor() { }\n\n @Input() wacOnlyNumber: boolean = true;\n\n @HostListener('keydown', ['$event']) onKeyDown(event: KeyboardEvent) {\n if (!this.wacOnlyNumber) {\n return;\n }\n\n if ([46, 8, 9, 27, 13, 110, 190].indexOf(event.keyCode) !== -1 ||\n // Allow: Ctrl+A\n (event.keyCode === 65 && (event.ctrlKey || event.metaKey)) ||\n // Allow: Ctrl+C\n (event.keyCode === 67 && (event.ctrlKey || event.metaKey)) ||\n // Allow: Ctrl+V\n (event.keyCode === 86 && (event.ctrlKey || event.metaKey)) ||\n // Allow: Ctrl+X\n (event.keyCode === 88 && (event.ctrlKey || event.metaKey)) ||\n // Allow: home, end, left, right\n (event.keyCode >= 35 && event.keyCode <= 39)) {\n // let it happen, don't do anything\n return;\n }\n // Ensure that it is a number and stop the keypress\n if ((event.shiftKey || (event.keyCode < 48 || event.keyCode > 57)) && (event.keyCode < 96 || event.keyCode > 105)) {\n event.preventDefault();\n }\n }\n}","import { Directive, ElementRef, HostListener, Input } from \"@angular/core\";\n\n@Directive({\n standalone: false,\n selector: '[wacTwoDigitDecimalNumber]',\n })\n export class TwoDigitDecimalNumberDirective {\n\n @Input() decimalSeparator: string[] = ['.', ',']; // user can put . or , char.\n // input also cannot start from , or .\n private specialKeys: Array<string> = ['Backspace', 'Tab', 'End', 'Home', '-', 'ArrowLeft', 'ArrowRight', 'Del', 'Delete'];\n\n constructor(private el: ElementRef) {\n }\n\n @HostListener('keydown', ['$event'])\n onKeyDown(event: KeyboardEvent) {\n if (this.specialKeys.includes(event.key)) {\n return;\n }\n const current: string = this.el.nativeElement.value;\n const position = this.el.nativeElement.selectionStart;\n const next: string = [current.slice(0, position), event.key == 'Decimal' ? '.' : event.key, current.slice(position)].join('');\n const regex = new RegExp(`^\\\\d+[${this.decimalSeparator.join('')}]?\\\\d{0,2}$`, 'g');\n\n if (next && !regex.test(next)) {\n event.preventDefault();\n }\n }\n }","import { ChangeDetectorRef, Directive, ElementRef } from '@angular/core';\nimport { OPTION_SELECTION_HANDLER } from '../select/option/option-selection-handler.token';\nimport { SelectOptionDirective } from '../select/option/select-option.directive';\n\n@Directive({\n standalone: false,\n selector: '[wacRadio]',\n exportAs: 'wacRadio',\n providers: [{ provide: OPTION_SELECTION_HANDLER, useExisting: RadioLegacyDirective }],\n })\nexport class RadioLegacyDirective<TOptionValue> extends SelectOptionDirective<TOptionValue> {\n\n constructor(protected contentRef: ElementRef, protected changeDetectorRef: ChangeDetectorRef) {\n super(contentRef, changeDetectorRef);\n }\n}","import { Directive } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SelectDirective } from '../select/select/select.directive';\nimport { ValueChangeService } from '../select/select/value-change.service';\n\n@Directive({\n standalone: false,\n selector: '[wacRadioGroup]',\n providers: [\n { provide: NG_VALUE_ACCESSOR, useExisting: RadioGroupLegacyDirective, multi: true },\n ValueChangeService\n ],\n })\nexport class RadioGroupLegacyDirective<TOptionValue> extends SelectDirective<TOptionValue> {\n\n get multiple() {\n return false;\n }\n set multiple(value: boolean) {\n throw new Error('RadioGroupDirective does not support multiple selection');\n }\n\n constructor(\n protected valueChangeService: ValueChangeService<TOptionValue>,\n ) {\n super(valueChangeService);\n }\n}","import { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Output } from '@angular/core';\n\n@Directive({\n selector: '[wacCopyToClipboard]',\n standalone: true\n })\nexport class CopyToClipBoardDirective {\n @HostListener('click') onClick = () => this.copyToClipboard(this.element.nativeElement.outerText);\n\n @HostBinding('style') cursor = 'cursor:pointer';\n\n @Output() textCopy = new EventEmitter<string>();\n\n constructor(private element: ElementRef) {}\n\n copyToClipboard = (text: string) => {\n navigator.clipboard.writeText(text);\n this.textCopy.emit(text);\n };\n}","import { Directive, HostBinding, HostListener, Input } from '@angular/core';\n\n@Directive({\n selector: '[wacScrollTo]',\n standalone: true,\n })\nexport class ScrollToDirective {\n\n @Input() elementId: string;\n\n @Input() scrollConfig: ScrollIntoViewOptions = {behavior: \"smooth\", block: \"start\", inline: \"nearest\"};\n\n @HostListener('click') onClick() {\n const element = document.getElementById(this.elementId);\n element?.scrollIntoView(this.scrollConfig);\n }\n\n @HostBinding('style.cursor') cursor = 'pointer';\n\n}","import { Directive, ElementRef, OnInit} from '@angular/core';\n// watch dom change and fire (dom-changed) event\n@Directive({\n standalone: false,\n selector: '[watchDomTree]'\n})\nexport class DomChangedDirective implements OnInit {\n constructor(private elRef: ElementRef) {}\n ngOnInit() {\n this.registerDomChangedEvent(this.elRef.nativeElement);\n }\n\n registerDomChangedEvent(el) {\n const observer = new MutationObserver( list => {\n const evt =\n new CustomEvent('dom-changed',\n {detail: list, bubbles: true});\n el.dispatchEvent(evt);\n });\n const attributes = false;\n const childList = true;\n const subtree = true;\n observer.observe(el, {attributes, childList, subtree});\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { DebounceKeyupDirective } from './abstract-debounce/debounce-keyup.directive';\nimport { AbstractDebounceDirective } from './abstract-debounce/abstract-debounce.directive';\nimport { AutoHideDirective } from './auto-hide/auto-hide.directive';\nimport {ZindexToggleDirective} from './zindex-toggle/zindex-toggle.directive';\nimport { VarDirective } from './ng-var.directive';\nimport { KeypressEnterDirective } from './keyboard-events/keypress-enter.directive';\nimport { SelectOptionDirective } from '../components/select/option/select-option.directive';\nimport { SelectDirective } from '../components/select/select/select.directive';\nimport { OnlyNumberDirective } from './keyboard-events/only-numbers.directive';\nimport { TwoDigitDecimalNumberDirective } from './keyboard-events/two-digital-decimal-number.directive';\nimport { RadioLegacyDirective } from '../components/radio-legacy/radio-legacy-directive';\nimport { RadioGroupLegacyDirective } from '../components/radio-legacy/radio-group-legacy.directive';\nimport { CopyToClipBoardDirective } from './copy-to-clipboard/copy-to-clipboard.directive';\nimport { ScrollToDirective } from './scroll-to/scroll-to.directive';\nimport { DomChangedDirective } from './watch-dom-tree/watch-dom-tree.directive';\n\nconst directives = [\n DebounceKeyupDirective,\n AbstractDebounceDirective,\n AutoHideDirective,\n ZindexToggleDirective,\n VarDirective,\n KeypressEnterDirective,\n OnlyNumberDirective,\n TwoDigitDecimalNumberDirective,\n RadioLegacyDirective,\n RadioGroupLegacyDirective,\n DomChangedDirective\n];\n\nconst standalone = [\n SelectDirective,\n SelectOptionDirective,\n]\n\n@NgModule({\n imports: [CommonModule, FormsModule, CopyToClipBoardDirective, ScrollToDirective, ...standalone],\n declarations: directives,\n exports: [...directives, CopyToClipBoardDirective, ScrollToDirective, ...standalone]\n})\nexport class SharedDirectives {}\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-tooltip',\n templateUrl: './tooltip.component.html',\n\n})\nexport class TooltipComponent implements OnInit {\n // todo add exemples. Should be a directive. Maybe allow to pass a template like\n @Input()\n tooltipIcon: string;\n @Input()\n tooltipText: string = '';\n @Input()\n tooltipLink: string = '';\n @Input()\n tooltipUrl: string = '#';\n\n constructor() {}\n\n ngOnInit() {\n if (this.tooltipIcon === '') {\n this.tooltipIcon = 'fas fa-info-circle';\n }\n }\n}\n","<span class=\"wac-tooltip\">\n <i [class]=\"tooltipIcon\"></i>\n <span class=\"tooltip-content\"\n >{{ tooltipText }}\n <span *ngIf=\"tooltipUrl\"\n ><a [href]=\"tooltipUrl\" target=\"_blank\">{{ tooltipLink }}</a></span\n >\n </span>\n</span>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { TooltipComponent } from './tooltip.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule\n ],\n exports: [TooltipComponent],\n declarations: [TooltipComponent],\n providers: [],\n})\nexport class TooltipModule { }\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Component({\n selector: 'wac-progress-bar',\n templateUrl: './progress-bar.component.html',\n standalone: true,\n imports: [CommonModule],\n})\nexport class ProgressBarComponent {\n @Input()\n valueLength = null;\n @Input()\n min = null;\n @Input()\n max = null;\n\n constructor(private translateService: TranslateService) {}\n\n progressBarClass(spanNumber = -1) {\n const length = this.valueLength;\n const min = this.min;\n const max = this.max;\n\n if (spanNumber === 1) {\n return {\n 'is-danger': length > max,\n 'is-success': length >= min && length <= max\n };\n } else if (spanNumber === 2) {\n return {\n 'is-success': length === max,\n 'is-danger': length > max\n };\n } else {\n return {\n 'is-warning': length < min,\n 'is-danger': length > max,\n 'is-success': length >= min && length <= max\n };\n }\n }\n\n progressBarSpanPosition(index) {\n const min = this.min;\n const max = this.max;\n const maxSize = this.progressBarGetMaxSize(max);\n const successMin = (min / maxSize) * 100;\n const successMax = (max / maxSize) * 100;\n return index === 1 ? successMin : successMax;\n }\n\n progressBarGetMaxSize(max) {\n return max + max / 4;\n }\n\n progressBarGetTextInfo() {\n const length = this.valueLength;\n const min = this.min;\n const max = this.max;\n\n if (length < min) {\n return this.translateService.instant('wac.input.progressbar.information.too.short');\n } else if (length > max) {\n return this.translateService.instant('wac.input.progressbar.information.too.long');\n } else {\n return this.translateService.instant('wac.input.progressbar.information.good');\n }\n }\n}\n","<div class=\"wac-progressBarContent\">\n <div class=\"progressBar\">\n <progress class=\"progress\" [ngClass]=\"progressBarClass()\" [max]=\"progressBarGetMaxSize(max)\" [value]=\"valueLength\"></progress>\n <span [ngClass]=\"progressBarClass(1)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(1) }\"></span>\n <span [ngClass]=\"progressBarClass(2)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(2) }\"></span>\n </div>\n <div class=\"size\">\n <span class=\"is-size-7 wac-input__size\">\n <span *ngIf=\"valueLength\">\n <span [ngClass]=\"progressBarClass()\">{{ progressBarGetTextInfo() }}</span> -\n </span>\n <strong>{{ valueLength }}</strong> / {{ max }}\n </span>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { TooltipModule } from '../../tooltip/tooltip.module';\nimport { SharedDirectives } from '../../../directives/shared-directives.module';\nimport { ProgressBarComponent } from '../../progress-bar/progress-bar.component';\n\n@Component({\n selector: 'wac-input',\n templateUrl: './input.component.html',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n SharedDirectives,\n TooltipModule,\n ProgressBarComponent],\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputComponent, multi: true }]\n})\nexport class InputComponent implements ControlValueAccessor {\n @Input()\n label = '';\n @Input()\n value = '';\n @Input()\n type = 'text';\n @Input()\n placeholder = ''; // todo could be handle with ng-content\n @Input()\n textInfo = null; // todo should be handle with ng-content\n @Input()\n textError = null; // todo should be handle with ng-content\n @Input()\n size = null;\n @Input()\n isNumber = null;\n @Input()\n withoutBlock = false;\n @Input()\n icon = '';\n @Input()\n big = false;\n @Input()\n medium = false;\n @Input()\n boldLabel = 'false'; // todo refacto to boolean\n @Input()\n min = null;\n @Input()\n max = null;\n @Input()\n disableMargin = false;\n @Input()\n textPrepend = null; // todo should be handle with ng-content\n @Input()\n textAppend = null; // todo should be handle with ng-content\n @Input()\n progressBar = false;\n @Input()\n extraClasses = '';\n @Input()\n keyPreventDefault = [];\n @Input()\n showTooltip = false;\n @Input()\n textTooltip = '';\n @Input()\n iconTooltip = '';\n @Input()\n urlTooltip = '';\n @Input()\n linkTooltip = '';\n @Input()\n padding = false;\n @Input()\n disabled = false;\n @Input()\n indication = ''; // todo should be handle with ng-content\n @Input()\n success = false;\n @Input()\n error = false;\n @Input()\n maxlength: number | string;\n @Input()\n minlength: number | string;\n @Input()\n indicationLeft = false;\n\n @Output() keypressEnter = new EventEmitter<boolean>();\n @Output() blurred = new EventEmitter<void>();\n\n private KEYPRESS_ENTER = \"Enter\";\n\n id =\n 'wz-input_' +\n Math.random()\n .toString(36)\n .substr(2, 9);\n\n private _onChange = (value: string) => {};\n private _onTouched: Function = () => {};\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n writeValue(obj: any): void {\n this.value = obj;\n }\n\n onChange(value: string) {\n if (this._onChange) {\n this._onChange(value);\n }\n }\n\n onBlur() {\n if (this._onTouched) {\n this._onTouched();\n }\n this.blurred.next();\n }\n\n checkNumberValue(value) {\n if (this.min && this.min > value) {\n this.value = this.min;\n }\n if (this.max && this.max < value) {\n this.value = this.max;\n }\n }\n\n onFocusOut() {\n if (this.type === 'number') {\n this.checkNumberValue(this.value);\n }\n }\n\n keyPress(event: KeyboardEvent) {\n if (this.keyPreventDefault.includes(event.key)) {\n event.preventDefault();\n }\n\n if (event.key === this.KEYPRESS_ENTER) {\n this.keypressEnter.next(true);\n }\n }\n}\n","<div\n class=\"field wac-input\"\n [ngClass]=\"{ 'has-no-block': withoutBlock, 'is-big': big, 'is-medium': medium, 'with-padding': padding, 'indication-left': indicationLeft, 'with-progress-bar': progressBar }\"\n>\n <div class=\"field-label is-normal has-text-left\" *ngIf=\"!withoutBlock && label\">\n <label\n [ngClass]=\"[boldLabel === 'true' ? 'label has-text-weight-bold' : 'label has-text-weight-normal', showTooltip ? 'label-inline' : '', size && !progressBar ? 'has-padding-right-mobile' : '']\"\n [innerHTML]=\"label\"\n [for]=\"id\"\n ></label>\n <wac-tooltip\n *ngIf=\"showTooltip\"\n [tooltipIcon]=\"iconTooltip\"\n [tooltipText]=\"textTooltip\"\n [tooltipLink]=\"linkTooltip\"\n [tooltipUrl]=\"urlTooltip\"\n ></wac-tooltip>\n <!-- Size -->\n <span *ngIf=\"size && !progressBar\" class=\"is-size-7 wac-input__size\">\n <strong>{{ !value ? 0 : value.toString().length }}</strong> / {{ size }}\n </span>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p\n class=\"control\"\n [ngClass]=\"{ 'has-icons-right': textError || success || error, 'has-icons-left': icon !== '', 'has-input-group': textAppend || textPrepend }\"\n >\n <!-- Text Prepend -->\n <span *ngIf=\"textPrepend\" class=\"has-input-group\">\n <span class=\"has-input-group-text prepend\">{{ textPrepend }}</span>\n <span *ngIf=\"icon !== ''\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n </span>\n\n <!-- Input -->\n <input\n [class]=\"'input ' + extraClasses\"\n [id]=\"id\"\n [ngClass]=\"{\n 'is-danger': (textError || error) && !disabled,\n 'is-empty': value === '',\n 'is-large': big,\n 'is-number': isNumber,\n 'remove-margin': disableMargin,\n 'text-append': textAppend\n }\"\n [type]=\"type\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n (focusout)=\"onFocusOut()\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxlength ? maxlength : 524288\"\n [minlength]=\"minlength ? minlength : 0\"\n (keypress)=\"keyPress($event)\"\n />\n\n <!-- Indication at the end of the input -->\n <span class=\"indication\" *ngIf=\"indication\" [ngClass]=\"{'reverse': indicationLeft}\">\n <span [innerHTML]=\"indication\"></span>\n </span>\n\n <!-- Text Append -->\n <span *ngIf=\"textAppend && !indicationLeft\" class=\"has-input-group\">\n <span class=\"has-input-group-text append\">{{ textAppend }}</span>\n <!-- error if text append not empty -->\n <span *ngIf=\"textError\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n </span>\n\n <!-- Icon Left -->\n <span *ngIf=\"icon !== '' && !textPrepend && !indicationLeft\" class=\"icon is-small is-left\">\n <i [class]=\"icon\"></i>\n </span>\n\n <!-- Icon error if textAppend empty -->\n <span *ngIf=\"(textError || error) && !textAppend && !indicationLeft && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n\n <!-- Icon success -->\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n\n <!-- Text Info -->\n <span\n *ngIf=\"textInfo && (textError === null || textError === '') && !progressBar && !indicationLeft\"\n class=\"is-size-7 wac-input__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n\n <!-- Text Error -->\n <span *ngIf=\"textError && !progressBar && !indicationLeft\" class=\"is-size-7 wac-input__error has-text-danger\" [innerHtml]=\"textError\"></span>\n </p>\n\n <!-- Progress Bar -->\n <wac-progress-bar *ngIf=\"progressBar && !indicationLeft\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SharedDirectives } from '../../../directives/shared-directives.module';\nimport { InputComponent } from '../input/input.component';\n\n@Component({\n selector: 'wac-input-search',\n templateUrl: './input-search.component.html',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n InputComponent,\n SharedDirectives\n ],\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputSearchComponent, multi: true }]\n})\nexport class InputSearchComponent implements ControlValueAccessor {\n\n @Input()\n placeholder: string = '';\n\n @Input()\n withoutgrey: boolean = false;\n\n @Input()\n smallPadding:boolean = false; // todo Try to be more flexible like changing type : export type PaddingConfig = \"default\" | \"small\" | \"big\" | \"no-padding\";\n\n @Input()\n id: string;\n private innerValue: any = '';\n @Output() changeDebounced = new EventEmitter<any>(); // debounced\n\n private onTouchedCallback: () => void = () => {};\n private onChangeCallback: (_: any) => void = () => {};\n\n get value(): any {\n return this.innerValue;\n }\n\n set value(v: any) {\n if (v !== this.innerValue) {\n this.innerValue = v;\n this.onChangeCallback(v);\n }\n }\n\n writeValue(value: any) {\n if (value !== this.innerValue) {\n this.innerValue = value;\n }\n }\n\n registerOnChange(fn: any) {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouchedCallback = fn;\n }\n\n public handleDebouncedKeyUp(): void {\n this.changeDebounced.emit(this.value);\n }\n}\n","<div class=\"wac-field-input-search\" [ngClass]=\"{'small-padding' : smallPadding, 'no-grey': withoutgrey}\">\n <p class=\"control has-icons-left has-icons-right\">\n <input\n [placeholder]=\"placeholder\"\n value=\"\"\n class=\"input\"\n type=\"text\"\n [attr.id]=\"id\"\n [(ngModel)]=\"value\"\n debounceKeyUp\n [debounceTime]=\"1000\"\n (onEventChange)=\"handleDebouncedKeyUp()\"\n />\n <i class=\"icon fal fa-search\"></i>\n </p>\n</div>\n","import { animate, style, transition, trigger } from '@angular/animations';\n\nexport const inOutY = trigger('inOutYAnimation', [\n transition(':enter', [\n style({ transform: 'scaleY(0)', height: 0, opacity: 0 }),\n animate('.3s ease-out', style({ transform: 'scaleY(1)', height: 'auto', opacity: 1 }))\n ]),\n transition(':leave', [\n style({ transform: 'scaleY(1)', height: 'auto', opacity: 1 }),\n animate('.3s ease-in', style({ transform: 'scaleY(0)', height: 0, opacity: 0 }))\n ])\n]);\n","import { Component, Input, Output, EventEmitter, ViewEncapsulation } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { inOutY } from '../../animations/in-out/in-out-y.animation';\n\n@Component({\n standalone: false,\n selector: 'wac-checkbox',\n templateUrl: './checkbox.component.html',\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: CheckboxComponent, multi: true }],\n animations: [inOutY],\n encapsulation: ViewEncapsulation.None\n})\nexport class CheckboxComponent implements ControlValueAccessor {\n @Input()\n label = '';\n\n @Input()\n set value(value: boolean) {\n this._value = value;\n this._onChange(value);\n this._onTouched();\n }\n get value() : boolean {\n return this._value;\n }\n _value: boolean;\n\n @Input()\n type: 'checkbox' | 'radio' = 'checkbox';\n @Input()\n alone = false;\n @Input()\n checked = false;\n @Input()\n hasInput = false; // todo remove from it ! That is not a part of a checkbox\n @Input()\n inputPlaceholder = ''; // todo remove from it ! That is not a part of a checkbox\n @Input()\n id = ''; // todo maybe create a static property for unique id\n @Input()\n name: string;\n @Input()\n whiteSpace = true;\n @Input()\n disabled = false;\n\n @Output() valueChange = new EventEmitter<boolean>();\n\n constructor() {}\n\n private _onChange: (value: boolean) => void = (value) => {};\n private _onTouched = () => {};\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n writeValue(isChecked: boolean): void {\n this._value = isChecked;\n }\n\n onChange(value) {\n this._onChange(value);\n }\n\n inputClick($event) { // todo it is usefull ?\n $event.stopPropagation();\n }\n}\n","<div class=\"wac-field-checkbox\" [ngClass]=\"{ 'disable-wt' : !whiteSpace, alone: alone }\">\n <div class=\"wac-field-checkbox__row\">\n <!-- TODO handle radio styles -->\n <input\n [type]=\"type\"\n [id]=\"id\"\n [class]=\"'is-checkradio' + (value ? ' checked' : '')\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [checked]=\"value\"\n (change)=\"value = !value\"\n />\n <label [attr.for]=\"id\"><span [innerHTML]=\"label\"></span></label>\n </div>\n <input\n *ngIf=\"hasInput && checked\"\n [@inOutYAnimation]\n type=\"text\"\n [placeholder]=\"inputPlaceholder\"\n (click)=\"inputClick($event)\"\n />\n</div>\n","import { ApplicationRef, ComponentFactoryResolver, Injector, Type, ComponentRef, EmbeddedViewRef } from \"@angular/core\";\n\nexport class HtmlContainer {\n private attached: boolean = false;\n\n private disposeFn: () => void;\n\n constructor(\n private hostElement: Element,\n private appRef: ApplicationRef,\n private componentFactoryResolver: ComponentFactoryResolver,\n private injector: Injector\n ) {}\n\n attach(component: Type<any>): ComponentRef<any> {\n if (this.attached) {\n throw new Error('component has already been attached');\n }\n\n this.attached = true;\n const childComponentFactory = this.componentFactoryResolver.resolveComponentFactory(component);\n\n let componentRef = childComponentFactory.create(this.injector);\n\n this.appRef.attachView(componentRef.hostView);\n this.disposeFn = () => {\n this.appRef.detachView(componentRef.hostView);\n componentRef.destroy();\n };\n\n this.hostElement.appendChild((componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0]);\n\n return componentRef;\n }\n\n dispose() {\n if (this.attached) {\n this.disposeFn();\n }\n }\n}","import { Injectable } from '@angular/core';\n\n\n@Injectable()\nexport class TableCheckboxIdService {\n\n static tableInstance = 0;\n\n currentTableInstance:number;\n nbCheckboxInstances: number = 0;\n\n constructor() {\n TableCheckboxIdService.tableInstance++;\n this.currentTableInstance = TableCheckboxIdService.tableInstance;\n }\n\n getUniqueId() {\n this.nbCheckboxInstances++;\n return `wac-table-${this.currentTableInstance}-${this.nbCheckboxInstances}`;\n }\n}","import { DOCUMENT } from '@angular/common';\nimport {\n ComponentFactoryResolver,\n EventEmitter,\n Inject,\n Output,\n Renderer2,\n Directive,\n ElementRef,\n Input,\n ComponentRef,\n ApplicationRef,\n Injector,\n} from '@angular/core';\nimport { HtmlContainer } from '../../../utils/html-container.class';\nimport { CheckboxComponent } from '../../checkbox/checkbox.component';\nimport { TableCheckboxIdService } from '../shared/table-checkbox-id.service';\n\n@Directive({\n standalone: false,\n selector: '[checkBoxRow]'\n})\nexport class CheckBoxRow {\n @Input() checkBoxId: string | number;\n @Input() checkBoxName: string;\n\n @Input() set checkBoxValue(value: boolean) {\n this._value = value;\n if (this.checkboxComponentRef) {\n this.setCheckBoxValue();\n }\n }\n _value: boolean;\n get checkBoxValue(): boolean {\n return this._value;\n }\n\n @Output() checkBoxValueChange: EventEmitter<boolean> = new EventEmitter();\n\n private checkboxComponentRef: ComponentRef<CheckboxComponent>;\n private htmlContainer: HtmlContainer;\n private checkBoxElement;\n\n constructor(\n private currentRow: ElementRef,\n private appRef: ApplicationRef,\n private renderer: Renderer2,\n @Inject(DOCUMENT) private document,\n private resolver: ComponentFactoryResolver,\n private injector: Injector,\n private tableCheckboxIdService: TableCheckboxIdService\n ) {}\n\n ngOnInit() {\n this.createCheckBoxComponent();\n this.handleChecboxInputs();\n this.handleCheckboxOutputs();\n }\n\n createCheckBoxComponent() {\n // Create the container\n this.checkBoxElement = document.createElement('div');\n this.checkBoxElement.className = 'wac-table__body__line__cell wac-table__body__line__cell--checkbox';\n\n // Insert divCheckBox in the DOM as the first child of the row\n this.renderer.insertBefore(this.currentRow.nativeElement, this.checkBoxElement, this.currentRow.nativeElement.firstChild);\n\n // Insert the CheckBoxComponent inside the container (DOM and Angular DOM)\n this.htmlContainer = new HtmlContainer(this.checkBoxElement, this.appRef, this.resolver, this.injector);\n this.checkboxComponentRef = this.htmlContainer.attach(CheckboxComponent);\n }\n\n private handleChecboxInputs() {\n this.checkboxComponentRef.instance.id = this.checkBoxId ? '' + this.checkBoxId : this.tableCheckboxIdService.getUniqueId();\n this.checkboxComponentRef.instance.name = this.checkBoxName ? this.checkBoxName : undefined;\n this.checkboxComponentRef.instance.alone = true;\n this.setCheckBoxValue();\n }\n\n private setCheckBoxValue() {\n this.checkboxComponentRef.instance.value = this.checkBoxValue;\n }\n\n private handleCheckboxOutputs() {\n // Detect checkbox changes\n this.checkboxComponentRef.instance.registerOnChange(() => {\n this._toggleCheckbox();\n });\n }\n\n private _toggleCheckbox() {\n this.checkBoxValueChange.emit(this.checkBoxValue);\n }\n\n getElement() {\n return this.checkBoxElement.querySelector('.wac-field-checkbox');\n }\n\n isActive(): boolean {\n return !!this.checkboxComponentRef.instance.value;\n }\n\n setActive(isActive: boolean) {\n this.checkboxComponentRef.instance.value = isActive; //? does not trigger output\n }\n\n ngOnDestroy() {\n this.htmlContainer.dispose();\n }\n}\n","import { Injectable, QueryList } from \"@angular/core\";\nimport { Subscription, Subject, merge, fromEvent } from \"rxjs\";\nimport { debounceTime, map } from \"rxjs/operators\";\nimport { SelectionItem } from \"../utils/slection-item.interface\";\n\n@Injectable()\nexport class MultiSelectionService {\n private items: QueryList<SelectionItem>;\n private subscription: Subscription;\n private lastIndex: number;\n private activeChanges: Subject<number[]> = new Subject();\n activeChanges$ = this.activeChanges.asObservable();\n\n constructor() {}\n\n handle(items: QueryList<SelectionItem>, toggleSingleItem: boolean = false): void {\n\n if (!items || !items.first) {\n this.destroy();\n return;\n }\n\n this.destroy(); // close previous subsciption\n\n this.items = items;\n\n const clicks$ = this.getListeners();\n\n this.subscription = merge(...clicks$).subscribe(({ component, isShift: isShiftKeyPressed, index }) => {\n if (!isShiftKeyPressed) {\n if (toggleSingleItem) {\n component.setActive(!component.isActive());\n }\n this.activeChanges.next([index]);\n this.lastIndex = index;\n return;\n }\n\n const start = index;\n const end = this.lastIndex;\n const [first, last] = [Math.min(start, end), Math.max(start, end) + 1];\n const itemsSelection = this.items.toArray().slice(first, last);\n const isBeginnerItemActive = this.items.get(end).isActive();\n\n itemsSelection.forEach(current => current.setActive(isBeginnerItemActive));\n window.getSelection().removeAllRanges(); // remove text selection\n const indexInRange = Array.from({length: last-first}, (x, i) => i + first);\n this.activeChanges.next(indexInRange);\n });\n }\n\n private getListeners() {\n return this.items.map((item, index) => {\n return fromEvent(item.getElement(), 'click').pipe(\n map((event: MouseEvent) => {\n return {\n index,\n isShift: event.shiftKey,\n component: item\n }\n })\n )\n .pipe(debounceTime(100)) // debounced, because when clicking on a wac-checkbox it is emitted twice and can not find why\n });\n }\n\n getActives() {\n return this.items.filter(item => item.isActive());\n }\n\n destroy() {\n this.subscription?.unsubscribe();\n }\n}","import { DOCUMENT } from '@angular/common';\nimport { Inject } from '@angular/core';\nimport { Renderer2 } from '@angular/core';\nimport { Directive, ElementRef } from '@angular/core';\n\n@Directive({\n standalone: false,\n // The selector has the same name as the tableRaw selector in table.component.html\n selector: '[tableRow]'\n})\nexport class TableRow {\n constructor(private currentCell: ElementRef, private renderer: Renderer2, @Inject(DOCUMENT) private document) {}\n\n ngAfterViewInit() {\n this.applyCustomStylesOnCell();\n }\n\n applyCustomStylesOnCell() {\n this.renderer.addClass(this.currentCell.nativeElement, 'wac-table__body__line');\n }\n}\n","import { Injectable } from '@angular/core';\nimport { NwbFilterGroup, NwbFilterRoutingBuilder } from '@wizishop/ng-wizi-bulma';\nimport { ReplaySubject, Subject } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { TableFiltersGroup } from './table-filters-group.model';\nimport { TableFilters } from './table-filters.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FiltersTableService {\n filterGroups = new Map<string, NwbFilterGroup>();\n\n private sortSubject: Subject<any> = new Subject<any>();\n\n constructor(private filterRoutingBuilder: NwbFilterRoutingBuilder) {}\n\n getTableFilterGroup(dataTableName: string): TableFiltersGroup {\n if (this.filterGroups.has(dataTableName)) {\n return this.filterGroups.get(dataTableName) as TableFiltersGroup;\n }\n\n const dataTableFilters: TableFilters = {\n sort: undefined,\n order: undefined,\n searchValue: undefined,\n totalItems: 0,\n itemsPerPage: 0,\n currentPage: 0\n };\n\n const filterGroup: TableFiltersGroup = this.filterRoutingBuilder.group(dataTableFilters, dataTableName) as TableFiltersGroup;\n filterGroup.tableFiltersValuesChange$ = new ReplaySubject<TableFilters>(1);\n filterGroup.tableFiltersValuesDebouncedChange$ = filterGroup.tableFiltersValuesChange$.pipe(debounceTime(300));\n\n this.filterGroups.set(dataTableName, filterGroup);\n return filterGroup;\n }\n\n /**\n * Use to reset the others sorts of the table\n * @param dataTableName\n * @param sortName\n * @param order\n */\n emitSortChange(dataTableName: string, sortName: string, order: boolean) {\n this.sortSubject.next({ dataTableName, sortName, order });\n }\n\n getSortChangeListner() {\n return this.sortSubject.asObservable();\n }\n\n setPaginationFilters(dataTableName, totalItems, itemsPerPage, currentPage) {\n const filterGroup = this.getTableFilterGroup(dataTableName);\n filterGroup.setValues({\n itemsPerPage,\n currentPage\n });\n }\n\n /*\n Add defaults filters in the URL if they not exists.\n */\n setInitialPaginationFiltersIfNotExist(dataTableName, itemsPerPage, currentPage) {\n const filterGroup = this.getTableFilterGroup(dataTableName);\n filterGroup.setValues({\n itemsPerPage: filterGroup.get('itemsPerPage') ? parseInt(filterGroup.get('itemsPerPage')) : itemsPerPage,\n currentPage: filterGroup.get('currentPage') ? parseInt(filterGroup.get('currentPage')) : currentPage\n });\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: false,\n name: 'IsLastPage'\n})\nexport class PagniationIsLastPage implements PipeTransform {\n /**\n * Return true, if the current page is the last page. Otherwise, return false.\n * @param currentPage\n * @param totalItems\n * @param itemsPerPage\n */\n transform(currentPage, totalItems, itemsPerPage): boolean {\n if (!(currentPage >= 0 && totalItems >= 0 && itemsPerPage >= 0)) {\n throw new Error('currentPage or totalItems or itemsPerPage is/are missing in PagniationIsLastPage pipe.');\n }\n return currentPage === Math.ceil(totalItems / itemsPerPage);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: false,\n name: 'ArrayTotalPages'\n})\nexport class PagniationArrayTotalPages implements PipeTransform {\n /**\n * Return an incremental array corresponding with the number page\n * [ 1, 2, 3 ..., last page number ]\n * @param totalItems\n * @param itemsPerPage\n */\n transform(totalItems, itemsPerPage): number[] {\n if (!(totalItems >= 0 && itemsPerPage >= 0)) {\n throw new Error('totalItems or itemsPerPage missing in ArrayTotalPages pipe.');\n }\n const arrayLength: number = Math.ceil(totalItems / itemsPerPage);\n return Array.apply(null, { length: arrayLength })\n .map(Number.call, Number)\n .map(x => x + 1);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Pipe({\n standalone: false,\n name: 'customPagniationText'\n})\nexport class PagniationText implements PipeTransform {\n constructor(private translateService: TranslateService) {}\n\n /**\n * Update pagination text if at least one entrie change\n * @param currentPage\n * @param totalItems\n * @param itemsPerPage\n */\n transform(currentPage, totalItems, itemsPerPage): any {\n let currentItemsLow = 0,\n currentItemsHigh = 0;\n\n if (totalItems) {\n currentItemsLow = (parseInt(currentPage) - 1) * parseInt(itemsPerPage) + 1;\n currentItemsHigh = parseInt(currentPage) * parseInt(itemsPerPage);\n }\n\n if (currentItemsHigh > totalItems) {\n currentItemsHigh = totalItems;\n }\n\n return this.translateService.get('wac.PaginationComponent.on', { low: currentItemsLow, high: currentItemsHigh, total: totalItems })\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { PagniationIsLastPage } from './pipes/is-last-page.pipe';\n\nexport interface PaginationFilters {\n totalItems: number;\n itemsPerPage: number;\n currentPage: number;\n}\n\n@Component({\n standalone: false,\n selector: 'wac-pagination',\n templateUrl: './pagination.component.html'\n})\nexport class PaginationComponent {\n @Input()\n set pagination(pagination: PaginationFilters) {\n this._pagination = pagination;\n }\n get pagination(): PaginationFilters {\n return this._pagination;\n }\n private _pagination: PaginationFilters;\n\n @Output() pageChange: EventEmitter<PaginationFilters> = new EventEmitter();\n\n constructor() {}\n\n decrementPage() {\n if (this.pagination.currentPage <= 1) {\n return;\n }\n this.pagination.currentPage--;\n this.pageChange.emit(this.pagination);\n }\n\n incrementPage() {\n const isLastPage = new PagniationIsLastPage().transform(\n this.pagination.currentPage,\n this.pagination.totalItems,\n this.pagination.itemsPerPage\n );\n if (isLastPage) {\n return;\n }\n this.pagination.currentPage++;\n this.pageChange.emit(this.pagination);\n }\n\n onGotoPageChange(event: any) {\n this.pagination.currentPage = parseInt(event.target.value);\n this.pageChange.emit(this.pagination);\n }\n}\n","<div class=\"wac-pagination\" *ngIf=\"pagination && pagination.itemsPerPage\">\n <div class=\"wac-pagination__wrapper\">\n <div class=\"wac-pagination__wrapper__page\">\n <p>{{ 'wac.PaginationComponent.page' | translate }}</p>\n\n <select name=\"page\" (change)=\"onGotoPageChange($event)\">\n <ng-container *ngFor=\"let pageIndex of pagination.totalItems | ArrayTotalPages: pagination.itemsPerPage\">\n <option [selected]=\"pageIndex === pagination.currentPage\" [value]=\"pageIndex\">\n {{ pageIndex }}\n </option>\n </ng-container>\n </select>\n </div>\n\n <div class=\"wac-pagination__wrapper__elements\">\n <p>{{ pagination.currentPage | customPagniationText: pagination.totalItems:pagination.itemsPerPage | async}}</p>\n </div>\n\n <div class=\"wac-pagination__wrapper__arrows\">\n <div\n (click)=\"decrementPage()\"\n class=\"wac-pagination__wrapper__arrows__arrow wac-pagination__wrapper__arrows__arrow--left\"\n [ngClass]=\"{ 'wac-pagination__wrapper__arrows__arrow--disabled': pagination.currentPage === 1 }\"\n >\n <span class=\"wac-pagination__wrapper__arrows__arrow__icon\"></span>\n </div>\n <div\n (click)=\"incrementPage()\"\n class=\"wac-pagination__wrapper__arrows__arrow wac-pagination__wrapper__arrows__arrow--right\"\n [ngClass]=\"{\n 'wac-pagination__wrapper__arrows__arrow--disabled':\n pagination.currentPage | IsLastPage: pagination.totalItems:pagination.itemsPerPage\n }\"\n >\n <span class=\"wac-pagination__wrapper__arrows__arrow__icon\"></span>\n </div>\n </div>\n </div>\n</div>\n","import { Component, ContentChildren, EventEmitter, Input, OnInit, Output, QueryList, ViewChildren, ViewEncapsulation } from '@angular/core';\nimport { FiltersTableService } from './shared/filters-table.service';\nimport { Subscription } from 'rxjs';\nimport { TableFilters } from './shared/table-filters.model';\nimport { TableFiltersGroup } from './shared/table-filters-group.model';\nimport { CheckBoxRow } from './directives/checkBoxRow.directive';\nimport { MultiSelectionService } from '../../services/multiple-selection.service';\nimport { TableCheckboxIdService } from './shared/table-checkbox-id.service';\nimport { TableRow } from './directives/raw.directive';\n\n@Component({\n standalone: false,\n selector: 'wac-table',\n templateUrl: './table.component.html',\n encapsulation: ViewEncapsulation.None,\n providers: [\n TableCheckboxIdService,\n MultiSelectionService\n ]\n})\nexport class TableComponent implements OnInit {\n\n @ContentChildren(CheckBoxRow) checkBoxRows: QueryList<CheckBoxRow>;\n @ContentChildren(TableRow) tableRows: QueryList<TableRow>;\n\n // todo find a way to spotlight the wac-table doc when used on wizi-admin only in dev\n // todo try to use bridge patterne in order to add checkbox and remove checkbowrox directive.\n /// Input/Output of table filters ///\n\n @Input() tableFilters: TableFilters;\n @Output() tableFiltersChange: EventEmitter<TableFilters> = new EventEmitter();\n\n @Input() tableRoutingName: string; // Name of the table\n @Input() placeholder: string = '';\n\n private _tableFiltersGroup: TableFiltersGroup;\n\n /// Input/Output of checkbox ///\n\n /** Pass to true to display checkbox in the header table */\n @Input() checkbox = false;\n\n @Output() toggleAllCheckBox: EventEmitter<boolean> = new EventEmitter(); // todo replace by checkBoxSelectionChange\n\n @Output() checkBoxSelectionChange: EventEmitter<number[]> = new EventEmitter(); // todo add to doc\n\n /// Input to disable section ///\n\n /** Pass to true to hide search input */\n @Input() disableSearch: boolean = false;\n /** Pass to true to hide the pagniator */\n @Input() disablePagniation: boolean = false;\n\n /// Input for loader on table body ///\n\n @Input() isLoading = false;\n\n /// Private variables ///\n headerCheckBoxId: string;\n private filterGroupChangeSub: Subscription;\n\n constructor(private filtersTableService: FiltersTableService, private tableCheckboxIdService: TableCheckboxIdService, private multiSelectionService: MultiSelectionService) {}\n\n ngOnInit(): void {\n this.headerCheckBoxId = this.tableCheckboxIdService.getUniqueId(); // Create checkbox unique id\n\n /* Handle routing filters */\n if (this.tableRoutingName) {\n\n this.filtersTableService.setInitialPaginationFiltersIfNotExist(\n this.tableRoutingName,\n this.tableFilters.itemsPerPage,\n this.tableFilters.currentPage\n );\n\n this._tableFiltersGroup = this.filtersTableService.getTableFilterGroup(this.tableRoutingName);\n this.setTablesFilters();\n // Listen to filters changes with debounced time to limit multiple api calls\n this.filterGroupChangeSub = this._tableFiltersGroup.valuesChange$.subscribe(() => {\n this.setTablesFilters();\n });\n }\n\n this.multiSelectionService.activeChanges$.subscribe(selectionIndexRawCheckChange => {\n this.checkBoxSelectionChange.emit(selectionIndexRawCheckChange);\n });\n }\n\n ngAfterViewInit() {\n this.multiSelectionService.handle(this.checkBoxRows);\n this.checkBoxRows.changes.subscribe(() => {\n this.multiSelectionService.handle(this.checkBoxRows);\n });\n }\n\n onToggleAllCheckBox(event: any) {\n this.toggleAllCheckBox.emit(event.target.checked);\n }\n\n searchChange() {\n // Reset table filters\n this.tableFilters.sort = undefined;\n this.tableFilters.order = undefined;\n this.tableFilters.currentPage = 1;\n this.tableFiltersChange.emit(this.tableFilters);\n\n // Reset routing filters\n if (this._tableFiltersGroup) {\n this._tableFiltersGroup.setValues({\n searchValue: this.tableFilters.searchValue,\n sort: undefined,\n order: undefined,\n currentPage: 1\n });\n }\n }\n\n pageChange() {\n this.tableFiltersChange.emit(this.tableFilters);\n if (this._tableFiltersGroup) {\n this._tableFiltersGroup.setValues({\n itemsPerPage: this.tableFilters.itemsPerPage,\n currentPage: this.tableFilters.currentPage\n });\n }\n }\n\n /**\n * Set tableFilters from routing data existing in the url\n * */\n private setTablesFilters() {\n this.tableFilters = {\n sort: this._tableFiltersGroup.get('sort'),\n order: this._tableFiltersGroup.get('order') ? this._tableFiltersGroup.get('order') === 'true' : undefined,\n searchValue: this._tableFiltersGroup.get('searchValue'),\n itemsPerPage: this._tableFiltersGroup.get('itemsPerPage') ? parseInt(this._tableFiltersGroup.get('itemsPerPage')) : 0,\n currentPage: this._tableFiltersGroup.get('currentPage') ? parseInt(this._tableFiltersGroup.get('currentPage')) : 0,\n totalItems: this.tableFilters.totalItems\n };\n this.tableFiltersChange.emit(this.tableFilters);\n this._tableFiltersGroup.tableFiltersValuesChange$.next(this.tableFilters);\n }\n\n ngOnDestroy() {\n if (this.filterGroupChangeSub) {\n this.filterGroupChangeSub.unsubscribe();\n }\n this.multiSelectionService.destroy();\n }\n}\n","<div class=\"wac-table\">\n <!-- Header section -->\n <div class=\"wac-table__head\" id=\"headerTable\">\n <div *ngIf=\"checkbox\" class=\"wac-table__head__cell wac-table__head__cell--checkbox\">\n <wac-checkbox [id]=\"headerCheckBoxId\" (change)=\"onToggleAllCheckBox($event)\" [alone]=\"true\"></wac-checkbox>\n </div>\n\n <!-- Header contents are added with the headerCell directive -->\n <ng-content select=\"[headerCell]\"></ng-content>\n </div>\n\n <!-- Search section -->\n <div *ngIf=\"!disableSearch\" class=\"wac-table__search\">\n <wac-input-search\n [(ngModel)]=\"tableFilters.searchValue\"\n (changeDebounced)=\"searchChange()\"\n [placeholder]=\"placeholder\"\n [smallPadding]=\"true\"\n ></wac-input-search>\n </div>\n\n <!-- Body section -->\n <div class=\"wac-table__body\">\n <!-- Loader on body -->\n <div class=\"wac-table__body__loader\" *ngIf=\"isLoading\">\n <wac-loader [small]=\"true\"></wac-loader>\n </div>\n <!-- Body contents are added with the tableRow directive -->\n <ng-content select=\".complex-table\" *ngIf=\"!isLoading\"></ng-content>\n <ng-content select=\"[tableRow]\" *ngIf=\"!isLoading\"></ng-content>\n </div>\n\n <!-- Pagination section -->\n <wac-pagination *ngIf=\"!disablePagniation\" [pagination]=\"tableFilters\" (pageChange)=\"pageChange()\"></wac-pagination>\n</div>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-tag',\n templateUrl: './tag.component.html'\n})\nexport class TagComponent {\n @Input()\n label = '';\n @Input()\n class: 'default'|'success'|'warning'|'error'|'dark'|'gray'|'lightgray'|'white';\n @Input()\n hasClose = false;\n @Input()\n draggable = false;\n @Input()\n hoverDelete = false;\n\n @Input()\n big = false;\n\n @Input() isOpen:boolean = true;\n @Output() isOpenChange = new EventEmitter<boolean>();\n\n constructor() {}\n\n toggleTag() {\n this.isOpen = !this.isOpen;\n this.isOpenChange.next(this.isOpen);\n }\n}\n","<div class=\"wac-tag\" [classList]=\"'wac-tag--' + class\" [ngClass]=\"{ hover: hasClose, 'big': big , draggable: draggable, 'hover-delete': hoverDelete}\">\n <div *ngIf=\"draggable\" class=\"wac-tag__draggable\">\n <span>\n <span></span>\n </span>\n </div>\n {{ label }}\n <span class=\"wac-tag__close\" *ngIf=\"hasClose\" (click)=\"toggleTag()\"><i class=\"fas fa-times\"></i></span>\n <div class=\"hover-delete\">\n <i class=\"fa-solid fa-trash\"></i>\n </div>\n</div>\n","import { TemplatePortal } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, Input, OnInit, TemplateRef, ViewChild, ViewContainerRef, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'wac-tab',\n templateUrl: './tab.component.html',\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CommonModule],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TabComponent implements OnInit {\n @Input() label: string;\n\n @Input()\n set selected(value: boolean) {\n this._selected = value;\n this.changeDetectorRef.markForCheck();\n }\n\n get selected(): boolean {\n return this._selected;\n }\n\n private _selected: boolean = false;\n\n private contentPortal: TemplatePortal | null = null;\n\n get content(): TemplatePortal | null {\n return this.contentPortal;\n }\n\n @ContentChild(TabComponent, { read: TemplateRef, static: true})\n private _explicitContent: TemplateRef<any> = undefined;\n\n @ViewChild(TemplateRef, { static: true }) _implicitContent: TemplateRef<any>;\n\n constructor(private changeDetectorRef: ChangeDetectorRef, private viewContainerRef: ViewContainerRef) { }\n\n ngOnInit() {\n this.contentPortal = new TemplatePortal(this._explicitContent || this._implicitContent, this.viewContainerRef);\n }\n}\n","<ng-template><ng-content></ng-content></ng-template>","import { CdkPortalOutlet } from '@angular/cdk/portal';\nimport { ComponentFactoryResolver, Directive, Inject, OnInit, ViewContainerRef, forwardRef } from '@angular/core';\nimport { TabBodyComponent } from './tab-body.component';\nimport { DOCUMENT } from '@angular/common';\n\n@Directive(\n {\n selector: '[wacTabBody]',\n exportAs: 'wacTabBody',\n standalone: true,\n})\nexport class TabBodyDirective extends CdkPortalOutlet implements OnInit {\n\n constructor(private componentFactoryResolver: ComponentFactoryResolver, private viewContainerRef: ViewContainerRef, @Inject(DOCUMENT) private document: any, @Inject(forwardRef(() => TabBodyComponent)) private host: TabBodyComponent) {\n super(componentFactoryResolver, viewContainerRef, document);\n }\n\n override ngOnInit() {\n super.ngOnInit();\n this.attach(this.host.content);\n }\n}\n","import { TemplatePortal } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { Component, Input, ViewEncapsulation, ChangeDetectionStrategy, HostBinding } from '@angular/core';\nimport { TabBodyDirective } from './tab-body.directive';\n\n@Component({\n selector: 'wac-tab-body',\n templateUrl: './tab-body.component.html',\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CommonModule, TabBodyDirective],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TabBodyComponent {\n @Input() content: TemplatePortal;\n\n @Input() active: boolean;\n\n @HostBinding('style.display') get display(): string {\n return (this.active ? 'initial' : 'none');\n }\n}\n","<div class=\"wac-tab-body\" #content>\n <ng-template wacTabBody></ng-template>\n</div>","import { CommonModule } from '@angular/common';\nimport { ChangeDetectorRef, Component, ContentChildren, Input, QueryList, ViewEncapsulation, ChangeDetectionStrategy, AfterViewInit } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { TabComponent } from './tab/tab.component';\nimport { SharedDirectives } from '../../directives/shared-directives.module';\nimport { BehaviorSubject, ReplaySubject, combineLatest, delay, distinctUntilChanged, map, startWith, switchMap } from 'rxjs';\nimport { TabBodyComponent } from './tab-body/tab-body.component';\n\n@Component({\n selector: 'wac-tabs',\n templateUrl: './tabs.component.html',\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CommonModule, FormsModule, TabComponent, SharedDirectives, TabBodyComponent],\n providers: [\n { provide: NG_VALUE_ACCESSOR, useExisting: TabsComponent, multi: true },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TabsComponent implements AfterViewInit {\n\n disabled = false;\n\n @ContentChildren(TabComponent) tabList: QueryList<TabComponent>;\n\n index$: BehaviorSubject<number> = new BehaviorSubject<number>(0);\n\n tabList$ = new ReplaySubject<QueryList<TabComponent>>(1);\n\n listIsOpen$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n\n private onChange: (selectedIndex: number) => void = (selectedIndex) => {};\n private onTouched = () => {};\n\n viewModel$ = combineLatest({\n index: this.index$,\n tabList: this.tabList$.pipe(switchMap((tabList) => {\n return tabList.changes.pipe(startWith(tabList));\n })),\n listIsOpen: this.listIsOpen$.pipe(distinctUntilChanged())\n }).pipe(\n delay(0), \n map((data) => {\n let selected = this.setIndex(data.index, data.tabList);\n this.changeDetectorRef.markForCheck();\n return {...data, selected};\n }));\n\n @Input()\n underline = false;\n\n @Input()\n button = false;\n\n @Input()\n right: boolean = false;\n\n @Input()\n marginBottom = '30px';\n\n @Input()\n column: boolean = false;\n\n get defaultViewModel() {\n return {index: 0, tabList: [], listIsOpen: false, selected: null};\n }\n\n constructor(private changeDetectorRef: ChangeDetectorRef) {}\n\n ngAfterViewInit() {\n this.tabList$.next(this.tabList);\n }\n\n writeValue(selectedIndex: number): void {\n if (!selectedIndex) {\n return;\n }\n this.index$.next(selectedIndex);\n }\n\n registerOnChange(onChange: any): void {\n this.onChange = onChange;\n }\n\n onBlur(): void {\n this.onTouched();\n }\n\n registerOnTouched(onTouched: any): void {\n this.onTouched = onTouched;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled = disabled;\n this.changeDetectorRef.markForCheck();\n }\n\n selectTab(index: number) {\n this.index$.next(index);\n }\n\n private setIndex(currentIndex: number, tabList: QueryList<TabComponent>) {\n let selected: TabComponent = null;\n tabList.forEach((tab: TabComponent, index) => {\n tab.selected = currentIndex === index;\n selected = (currentIndex === index ? tab : selected);\n });\n this.onChange(currentIndex);\n return selected;\n }\n\n openList($event: any) {\n $event?.stopPropagation();\n this.listIsOpen$.next(!this.listIsOpen$.getValue());\n }\n}\n","<div class=\"wac-tabs\"\n *ngIf=\"((viewModel$ | async) || defaultViewModel ) as viewModel\"\n [ngClass]=\"{'wac-tabs--underline': underline, 'wac-tabs--button' : button, 'wac-tabs--right' : right, 'wac-tabs--column' : column}\"\n wzAutoHide\n (clickOutside)=\"listIsOpen$.next(false)\"\n [triggerElement]=\"'wac-select__header__selection'\"\n>\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__mobile\" (click)=\"openList($event)\">\n <div>{{ viewModel.selected?.label }}</div><i [class]=\"'fa-solid fa-caret-' + (viewModel.listIsOpen ? 'up' : 'down')\"></i>\n </div>\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__wrapper\" [ngClass]=\"{ 'open' : viewModel.listIsOpen }\" [ngStyle]=\"{'margin-bottom': marginBottom}\">\n <a\n *ngFor=\"let tab of tabList; let i = index\"\n class=\"wac-tabs__wrapper__tab\"\n [ngClass]=\"{'wac-tabs__wrapper__tab--selected': i === viewModel.index}\"\n (click)=\"index$.next(i); listIsOpen$.next(false)\"\n >\n {{ tab.label }}\n </a>\n </div>\n <wac-tab-body\n *ngFor=\"let tab of tabList; let i = index\"\n [content]=\"tab.content\"\n [active]=\"i === viewModel.index\"\n ></wac-tab-body>\n</div>\n","import {AfterViewInit, Attribute, Component, ElementRef, EventEmitter, Inject, Input, OnInit, Optional, Output, ViewChild} from '@angular/core';\nimport { FormGroupDirective } from '@angular/forms';\nimport { interval } from 'rxjs';\nimport { takeWhile } from 'rxjs/operators';\n\n@Component({\n standalone: false,\n selector: 'wac-button',\n templateUrl: './button.component.html'\n})\nexport class ButtonComponent implements OnInit, AfterViewInit {\n // todo add button type (ex: for submit and check if it works with template driven forms)\n @Input()\n extraClasses = 'is-info'; // todo make a list of existing class\n\n @Input()\n label = '';\n\n @Input()\n icon = '';\n\n @Input() \n isLoadingSvg: boolean = false;\n\n @Input()\n iconNext: string;\n\n @Input()\n textcolor = null;\n\n @Input()\n colorIcon: string;\n\n @Input()\n widthAuto = false;\n\n @Input()\n contentHorizontalPosition: 'left' | 'center' | 'right' = 'center';\n\n @Input()\n iconFontSize = 12;\n\n @Input()\n hasLoader = false;\n\n @Input()\n disabled = false;\n\n @Input()\n whiteSpaceNowrap = false;\n\n @Input()\n opacity = false;\n // TODO MAKE ANNIMATION AVAILABLE FOR MOBILE as CONFIRM DELETE DO (because, its doeant show the text and trigger click)\n @Input()\n animation = false;\n\n @Input()\n animationRight = false;\n\n @Input()\n animationText = '';\n\n @Input()\n confirmDelete = false;\n\n @Input()\n confirmDeleteText = '';\n\n @Input()\n coin: number | string;\n\n @Input()\n tooltip: string;\n\n @Input()\n tooltipWidth: string;\n\n @Input()\n borderColor: string;\n\n @Input()\n noPadding = false;\n\n @Input()\n tooltipPosition: 'top-center' | 'top-right' | 'top-left' | 'bottom-center' | 'bottom-right' | 'bottom-left' | 'left' | 'right' = 'top-center';\n\n @Input()\n tooltipOneline = false;\n\n @Input()\n confirmDeletePosition = 'right';\n\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() public click: EventEmitter<MouseEvent> = new EventEmitter();\n\n @Input() set isLoading(isLoading : boolean) {\n this._isLoading = isLoading;\n this.isLoadingChange.next(isLoading);\n this.toggleLoading();\n }\n\n @Output() isLoadingChange = new EventEmitter<boolean>();\n\n get isLoading() : boolean {\n return this._isLoading;\n }\n\n private _isLoading: boolean = false;\n\n\n interval = null;\n\n waitForConfirmDelete = false;\n\n buttonMaxWidth = '0px';\n buttonWidth = '0px';\n\n buttonMaxWidthDelete = '0px';\n buttonWidthDelete = '0px';\n\n currentLoading = 0;\n\n @ViewChild('calculWidth')\n calculWidth: ElementRef;\n\n @ViewChild('calculWidthDelete')\n calculWidthDelete: ElementRef;\n\n constructor(\n @Attribute('type') private type: string,\n @Optional() @Inject(FormGroupDirective) private formGroup: FormGroupDirective\n ) {\n }\n\n ngOnInit() {\n if (this.confirmDelete) {\n this.waitForConfirmDelete = true;\n }\n }\n\n toggleLoading() {\n this.currentLoading = this.isLoading ? 10 : 100;\n\n interval(200).pipe(takeWhile( time=> this.isLoading)).subscribe(\n () => {\n if (this.currentLoading < 85) {\n this.currentLoading += Math.floor(Math.random() * 15);\n }\n }\n );\n }\n\n onButtonClickLoader() {\n this.isLoadingSvg = true;\n }\n\n addMaxWidth() {\n this.buttonMaxWidth = this.buttonWidth + 'px';\n }\n\n resetMaxWidth() {\n this.buttonMaxWidth = '0px';\n }\n\n addMaxWidthDelete() {\n this.buttonMaxWidthDelete = this.buttonWidthDelete + 'px';\n }\n\n resetMaxWidthDelete() {\n this.buttonMaxWidthDelete = '0px';\n this.waitForConfirmDelete = true;\n }\n\n onButtonClick(event){\n event.stopPropagation();\n if (this.disabled) {\n return;\n }\n if (this.type === 'submit' && this.formGroup) { // Maybe there is a better way to handle submit\n this.formGroup.onSubmit(this.formGroup.value);\n }\n if (this.hasLoader) {\n this.isLoading = false;\n setTimeout(() => { // trick to reset the animation loading\n this.isLoading = true;\n }, 0);\n }\n\n if (!this.waitForConfirmDelete) {\n this.click.emit(event);\n if (this.confirmDelete) {\n this.resetMaxWidthDelete();\n }\n } else {\n this.waitForConfirmDelete = false;\n }\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n if (this.animation) {\n this.buttonWidth = this.calculWidth.nativeElement.offsetWidth;\n }\n if (this.confirmDelete) {\n this.buttonWidthDelete = this.calculWidthDelete.nativeElement.offsetWidth;\n }\n }, 1000);\n }\n}\n","<a\n [class]=\"'wac-button ' + extraClasses\"\n [style.borderColor]=\"borderColor ? borderColor + '!important' : ''\"\n (click)=\"confirmDelete && waitForConfirmDelete ? addMaxWidthDelete() : '';onButtonClick($event);\"\n (mouseleave)=\"animation ? resetMaxWidth() : '';\"\n (mouseenter)=\"animation ? addMaxWidth() : '';\"\n wzAutoHide (clickOutside)=\"confirmDelete && !waitForConfirmDelete ? resetMaxWidthDelete() : ''\"\n [ngClass]=\"[\n label === '' ? 'alone' : '',\n coin ? 'has-coin width-auto' : '',\n animationRight ? 'animation-right' : '',\n animation ? 'animationText' : '',\n isLoading ? 'is-loading' : '',\n opacity ? 'opacity' : '',\n disabled ? 'disabled' : '',\n widthAuto ? 'width-auto' : '',\n noPadding ? 'no-padding' : '',\n whiteSpaceNowrap ? 'white-space-no-wrap' : '',\n !waitForConfirmDelete && confirmDelete ? 'step-delete' : '',\n confirmDelete ? 'deletePosition-' + confirmDeletePosition : ''\n ]\"\n [ngStyle]=\"{\n 'text-align': contentHorizontalPosition\n }\"\n>\n <span class=\"wac-button__wrapper\" [style.color]=\"textcolor ? textcolor : ''\" [ngClass]=\"{'loading-class': isLoadingSvg}\">\n <svg *ngIf=\"isLoadingSvg; else iconTemplate\" version=\"1.1\" id=\"loader-1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n width=\"20px\" height=\"20px\" viewBox=\"0 0 50 50\" style=\"enable-background:new 0 0 50 50;\" xml:space=\"preserve\">\n <path fill=\"#fff\" d=\"M43.935,25.145c0-10.318-8.364-18.683-18.683-18.683c-10.318,0-18.683,8.365-18.683,18.683h4.068c0-8.071,6.543-14.615,14.615-14.615c8.072,0,14.615,6.543,14.615,14.615H43.935z\">\n <animateTransform attributeType=\"xml\"\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 25 25\"\n to=\"360 25 25\"\n dur=\"0.6s\"\n repeatCount=\"indefinite\"/>\n </path>\n </svg>\n <ng-template #iconTemplate>\n <i *ngIf=\"icon\" [ngClass]=\"icon\" [style.color]=\"colorIcon\" [style.font-size.px]=\"iconFontSize\"></i>\n </ng-template>\n {{ label }}\n <i *ngIf=\"iconNext\" [style.color]=\"colorIcon\" [ngClass]=\"iconNext\" [style.font-size.px]=\"iconFontSize\"></i>\n </span>\n <span class=\"wac-button__animation\" [style.maxWidth]=\"buttonMaxWidth\" [style.width]=\"buttonWidth + 'px'\">\n <span #calculWidth class=\"wac-button__animation__text\" [innerHTML]=\"animationText\"></span>\n </span>\n <span class=\"wac-button__confirmDelete\" [style.maxWidth]=\"buttonMaxWidthDelete\" [style.width]=\"buttonWidthDelete + 'px'\">\n <span #calculWidthDelete class=\"wac-button__confirmDelete__text\" [innerHTML]=\"confirmDeleteText\"></span>\n </span>\n <span *ngIf=\"coin\" class=\"wac-button__coin\"><i class=\"fa-solid fa-coin-front\"></i><span [innerHTML]=\"coin\"></span></span>\n <span\n class=\"wac-button__loader\"\n [ngClass]=\"extraClasses.includes('is-outlined') ? 'outlined' : ''\"\n *ngIf=\"isLoading\"\n [style.width]=\"currentLoading + '%'\"\n >\n </span>\n <span class=\"wac-button__tooltips {{ tooltipPosition }}\" [ngClass]=\"{'oneline': tooltipOneline}\" [style.minWidth]=\"tooltipWidth\" *ngIf=\"tooltip\">\n {{ tooltip }}\n </span>\n</a>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-info',\n templateUrl: './info.component.html'\n})\nexport class InfoComponent {\n\n @Input() colorPicker: boolean | string = false;\n\n get isColorPickerEnabled(): boolean {\n return this.colorPicker === true || this.colorPicker === 'true';\n }\n\n constructor() {}\n}\n","<div class=\"wac-info\" [ngClass]=\"{'wac-info__color-picker': isColorPickerEnabled}\">\n <div class=\"wac-info__wrapper\">\n <i class=\"fas fa-info-circle\"></i>\n <div class=\"wac-info__wrapper__sublevel\">\n <div class=\"wac-info__wrapper__sublevel__container\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n","import { Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-settings',\n templateUrl: './settings.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class SettingsComponent {\n constructor() {}\n}\n","<div class=\"wac-settings\">\n <div class=\"wac-settings__wrapper\">\n <i class=\"fas fa-cog\"></i>\n </div>\n</div>\n","import { Component } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-delete',\n templateUrl: './delete.component.html'\n})\nexport class DeleteComponent {\n constructor() {}\n}\n","<div class=\"wac-delete\">\n <div class=\"wac-delete__wrapper\">\n <i class=\"fas fa-trash\"></i>\n </div>\n</div>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-dropdown',\n templateUrl: './dropdown.component.html'\n})\nexport class DropdownComponent {\n @Input()\n hasIcons = false;\n\n @Input()\n items = [];\n\n @Output() userInput = new EventEmitter<any>();\n\n constructor() {}\n\n onUserInput(itemIndex) {\n this.userInput.emit(itemIndex);\n }\n}\n","<div class=\"wac-dropdown\">\n <div class=\"wac-dropdown__wrapper\">\n <i class=\"wac-dropdown__wrapper__icon far fa-ellipsis-v\"></i>\n <div class=\"wac-dropdown__wrapper__sublevel\">\n <ul class=\"wac-dropdown__wrapper__sublevel__container\">\n <li\n *ngFor=\"let item of items\"\n class=\"wac-dropdown__wrapper__sublevel__container__item\"\n (click)=\"onUserInput(item.index)\"\n >\n <i\n *ngIf=\"hasIcons\"\n [class]=\"item.icon\"\n [style.font-size.px]=\"item.iconFontSize ? item.iconFontSize : '14'\"\n ></i>\n <span>{{ item.label }}</span>\n </li>\n </ul>\n </div>\n </div>\n</div>\n","import { Component, Input } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-image',\n templateUrl: './image.component.html'\n})\nexport class ImageComponent {\n @Input()\n src = '';\n\n constructor() {}\n}\n","<div class=\"wac-image\">\n <div class=\"wac-image__wrapper\" [ngClass]=\"src === '' ? 'empty' : ''\" [style.background-image]=\"'url(' + src + ')'\">\n <i class=\"fal fa-images\" *ngIf=\"src === ''\"></i>\n </div>\n</div>\n","import { Component } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-back',\n templateUrl: './back.component.html'\n})\nexport class BackComponent {\n constructor() {}\n}\n","<div class=\"wac-back\">\n <div class=\"wac-back__wrapper\">\n <i class=\"fas fa-chevron-left\"></i>\n </div>\n</div>\n","import { Component, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-separator',\n templateUrl: './separator.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class SeparatorComponent {\n @Input()\n dashed = false;\n\n constructor() {}\n}\n","<div class=\"wac-separator\" [ngClass]=\"dashed ? 'dashed' : ''\"></div>\n","import { Component, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-logo',\n templateUrl: './logo.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class LogoComponent {\n @Input()\n isDropizi = false;\n\n @Input()\n isWhite = false;\n\n constructor() {}\n}\n","<div class=\"wac-logo\">\n <div class=\"wac-logo__wrapper\" [ngClass]=\"isWhite ? 'white' : ''\" *ngIf=\"isDropizi\">\n <svg id=\"Calque_1\" data-name=\"Calque 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 102.33 40\">\n <defs>\n <style>\n .cls-0 {\n fill: #fa096a;\n }\n </style>\n </defs>\n <title>Logo_Dropizi</title>\n <path\n id=\"Logo_Dropizi-2\"\n data-name=\"Logo Dropizi-2\"\n class=\"cls-0\"\n d=\"M83,44.94a4.87,4.87,0,0,1-4.36-7,3.81,3.81,0,0,1-.72-2l-.3-5.69a9.61,9.61,0,0,1-3.43,2,13.51,13.51,0,0,1-3.34.63l-1.06,0L70,36.29a3.75,3.75,0,0,1-3.54,3.94l-2.25.11H64a3.69,3.69,0,0,1-3-1.56,12.82,12.82,0,0,1-7.68,2.61,13.45,13.45,0,0,1-5.37-1.14,3.67,3.67,0,0,1-2.46,1.09l-2.15.12h-.2a3.76,3.76,0,0,1-3.17-1.74l-3.29-5.25L36.84,38a3.78,3.78,0,0,1-1,2.7A3.74,3.74,0,0,1,33.28,42L31,42.09h-.19a3.77,3.77,0,0,1-3.06-1.58,12.62,12.62,0,0,1-1.62.87,15,15,0,0,1-5.35,1.24L13.49,43H13.3a3.76,3.76,0,0,1-3.74-3.54L8.5,19.3A3.75,3.75,0,0,1,12,15.36L19.37,15c.3,0,.59,0,.88,0a14.67,14.67,0,0,1,4.56.7,13.17,13.17,0,0,1,1.74.7,3.73,3.73,0,0,1,3.06-1.91l7.14-.37c.35,0,.69,0,1,0,3.65,0,6,1.12,7.41,2.57A13.29,13.29,0,0,1,49,14.33a12.05,12.05,0,0,1,4.44-.82c.23,0,.45,0,.69,0a13.63,13.63,0,0,1,5.2,1.35l.22.11a3.75,3.75,0,0,1,3.25-2.29l5.32-.27c.7,0,1.38-.06,2-.06.92,0,1.78,0,2.57.11a10.17,10.17,0,0,1,4.16,1.26l.37.24a3.78,3.78,0,0,1,3.22-2.2l2.18-.12h.2a3.89,3.89,0,0,1,2,.57,3.63,3.63,0,0,1,2.07-.79l12.9-.67h.11c0-.24-.07-.47-.09-.71a4.88,4.88,0,0,1,4.62-5.12h.25a4.86,4.86,0,0,1,4.88,4.62v.26A4.89,4.89,0,0,1,109,12a3.62,3.62,0,0,1,.72,2l1.06,20.14,0,0a3.75,3.75,0,0,1-3.54,3.94l-2.18.11h-.2a3.83,3.83,0,0,1-2-.57,3.54,3.54,0,0,1-2.06.78l-12.9.68h-.1c0,.24.07.47.09.71a4.87,4.87,0,0,1-1.25,3.51,4.82,4.82,0,0,1-3.37,1.6Zm-2-4.87v.11a2,2,0,0,0,2.1,1.9h0a2,2,0,0,0,1.9-2V40a2,2,0,0,0-2-1.9H83A2,2,0,0,0,81.05,40.07ZM19.54,17.84l-7.34.39a.89.89,0,0,0-.84.93l1.06,20.17a.89.89,0,0,0,.92.83l7.33-.39a11.89,11.89,0,0,0,4.32-1,9.7,9.7,0,0,0,3.3-2.36,8.91,8.91,0,0,0,1.46-2.14L30,38.4a.88.88,0,0,0,.92.84l2.25-.12A.88.88,0,0,0,34,38.2h0l-.34-6.38a.88.88,0,0,1,.84-.93h0l2.67-.14a.89.89,0,0,1,.8.41l4.41,7a.92.92,0,0,0,.8.42l2.17-.12a.88.88,0,0,0,.72-1.34l-4.25-7A.88.88,0,0,1,42,29c.22-.18.44-.37.64-.56a10.07,10.07,0,0,0,.5,3,9.65,9.65,0,0,0,2,3.45,11.39,11.39,0,0,0,3.45,2.5,10,10,0,0,0,8.09.47,11,11,0,0,0,6.08-6l.08-.18.26,4.91a.89.89,0,0,0,.92.84l2.25-.12a.89.89,0,0,0,.84-.92L66.86,31a.87.87,0,0,1,.83-.92h0l3-.16a10.49,10.49,0,0,0,2.6-.5A6.87,6.87,0,0,0,75.75,28a6.67,6.67,0,0,0,1.68-2.36l0-.12A8.77,8.77,0,0,0,78,21.73a9,9,0,0,0-.77-3.49,4.1,4.1,0,0,0-.22-.41,4.71,4.71,0,0,0-1.63-1.63,7.28,7.28,0,0,0-3-.87,28.9,28.9,0,0,0-4.16,0l-5.33.28a.86.86,0,0,0-.61.29.9.9,0,0,0-.22.63L62.33,21a10.85,10.85,0,0,0-.8-1A11.54,11.54,0,0,0,54,16.38,9.3,9.3,0,0,0,50,17a10.46,10.46,0,0,0-3.46,2.22,11.5,11.5,0,0,0-1.92,2.41q-1-5.05-7.73-4.7l-7.14.37a.88.88,0,0,0-.84.93l.22,4.15a9.5,9.5,0,0,0-5.19-4,12.2,12.2,0,0,0-3.65-.56C20.05,17.82,19.79,17.82,19.54,17.84Zm63.22-3.31-2.17.12a.9.9,0,0,0-.61.29.87.87,0,0,0-.23.64l1.06,20.15a.88.88,0,0,0,.93.84L84,36.45a.83.83,0,0,0,.61-.29.87.87,0,0,0,.23-.63l-1-20.09a1,1,0,0,0-1-.9Zm11.48,3.85a.9.9,0,0,1,.07.87L86.94,35a.88.88,0,0,0,.06.86.85.85,0,0,0,.76.4l12.9-.67h0a.76.76,0,0,0,.72-.8h0l-.13-2.48a.75.75,0,0,0-.8-.72l-6.21.33a.89.89,0,0,1-.84-1.26l7.37-15.74a.9.9,0,0,0-.07-.87.87.87,0,0,0-.78-.39L87,14.31a.75.75,0,0,0-.71.8l.13,2.49a.74.74,0,0,0,.25.52.75.75,0,0,0,.55.2L93.46,18h.05A.89.89,0,0,1,94.24,18.38ZM106,13.31l-2.24.12a.89.89,0,0,0-.85.93l.85,16.15v.1l.2,3.83a1,1,0,0,0,1,.91l2.18-.11h0a.9.9,0,0,0,.83-.93l-1.06-20.16a.88.88,0,0,0-.88-.84Zm-3.32-3.5v.1a2,2,0,0,0,4-.1V9.7a2,2,0,0,0-2-1.9h-.1a2,2,0,0,0-1.91,2ZM16.25,35.28l-.66-12.51a.87.87,0,0,1,.23-.64.83.83,0,0,1,.61-.29l3.3-.18a6,6,0,0,1,4.87,1.62,7.74,7.74,0,0,1,1.92,5.19,7.71,7.71,0,0,1-1.37,5.35A6,6,0,0,1,20.47,36l-3.31.17h0a.88.88,0,0,1-.88-.84Zm36.61-.55A6.9,6.9,0,0,1,48,32.44a5.3,5.3,0,0,1-1.12-2.17,6.7,6.7,0,0,1-.09-2.6,11,11,0,0,1,2.57-5.41,6.42,6.42,0,0,1,2.07-1.58,5.52,5.52,0,0,1,2.4-.52,6.36,6.36,0,0,1,2.64.66,5.45,5.45,0,0,1,3.3,3.78A8.32,8.32,0,0,1,59,30.1a10.69,10.69,0,0,1-1.66,2.54,6.76,6.76,0,0,1-2.07,1.57,5.42,5.42,0,0,1-2.31.52.27.27,0,0,1-.09,0Zm-19.2-7.84a.83.83,0,0,1-.29-.61l-.26-4.91a.87.87,0,0,1,.83-.92l2.22-.12a5.2,5.2,0,0,1,3.39.63,3.08,3.08,0,0,1,1,2.41,3.29,3.29,0,0,1-.8,2.6,5.23,5.23,0,0,1-3.43,1l-2.07.11h0a.89.89,0,0,1-.59-.23Zm32.93-1.41-.31-5.84a.9.9,0,0,1,.23-.64.86.86,0,0,1,.61-.29l2.4-.12a8.81,8.81,0,0,1,2,.09,3.1,3.1,0,0,1,1.33.57,2.58,2.58,0,0,1,.75,1.09A6.22,6.22,0,0,1,73.94,22a4.16,4.16,0,0,1-.79,3.14A4.63,4.63,0,0,1,70,26.19l-2.51.13h0a.9.9,0,0,1-.89-.84Z\"\n transform=\"translate(-8.49 -4.94)\"\n />\n </svg>\n </div>\n <div class=\"wac-logo__wrapper\" [ngClass]=\"isWhite ? 'white' : ''\" *ngIf=\"!isDropizi\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 128.044 40\">\n <defs>\n <style>\n .cls-1 {\n fill: #a4c445;\n }\n .cls-2 {\n fill: #52aecd;\n }\n </style>\n </defs>\n <g id=\"Logo_WiziShop\" transform=\"translate(0.024 0)\">\n <path\n id=\"Shop\"\n class=\"cls-1\"\n d=\"M50.812,38.431V12.3a2.468,2.468,0,0,1,2.452-1.643A2.307,2.307,0,0,1,55.446,12a7.058,7.058,0,0,1,4.107-1.348A5.245,5.245,0,0,1,63.218,12,6.1,6.1,0,0,1,64.7,16.365v7.208h-.012q0,7.282-5.835,7.282a8.453,8.453,0,0,1-3.224-.674v8.25A2.471,2.471,0,0,1,53.178,40,2.419,2.419,0,0,1,50.812,38.431Zm4.805-21.845V26a7.046,7.046,0,0,0,2.709.834c1.1-.012,1.655-1.091,1.655-3.248V15.912c0-.65-.4-.981-1.226-.981A3.59,3.59,0,0,0,55.617,16.586ZM33.858,19.614q0-9.727,7.159-9.721,4.1,0,5.762,3.065a15.8,15.8,0,0,1,1.067,6.656q0,4.56-1.226,6.8-1.655,3.144-6.031,3.138Q33.858,29.556,33.858,19.614Zm4.462,0c0,3.947.846,5.909,2.538,5.909,1.741.012,2.623-1.961,2.623-5.909q0-5.682-2.538-5.688Q38.315,13.926,38.321,19.614Zm-35.8,8.4A5.577,5.577,0,0,1,.172,23.917L0,22.262l4.536-.6a12.942,12.942,0,0,0,.613,2.317,1.976,1.976,0,0,0,2.01,1.189,1.375,1.375,0,0,0,1.226-.674A4.161,4.161,0,0,0,9,22.4c0-1.2-.736-2.623-2.219-4.266s-2.954-3.273-4.4-4.867A10,10,0,0,1,.025,7.2a9.322,9.322,0,0,1,.441-2.77Q1.955.012,6.84.012a7.629,7.629,0,0,1,4.585,1.5,5.555,5.555,0,0,1,2.317,4.131l.172,1.655-4.585.588a12.943,12.943,0,0,0-.613-2.317,1.976,1.976,0,0,0-2.01-1.189c-.7,0-1.189.429-1.483,1.275A3.756,3.756,0,0,0,4.965,7q0,2.537,4.622,7.416t4.622,8.017a7.691,7.691,0,0,1-1.876,4.72,6.225,6.225,0,0,1-5.185,2.39A7.665,7.665,0,0,1,2.525,28.011Zm23.488-.368V15.3c0-.552-.343-.821-1.042-.821a3.356,3.356,0,0,0-2.954,1.569v11.6a2.629,2.629,0,0,1-2.538,1.716,2.589,2.589,0,0,1-2.452-1.728V1.729A2.578,2.578,0,0,1,19.479,0a2.641,2.641,0,0,1,2.538,1.729v9.292a7.611,7.611,0,0,1,3.751-1.042,5.039,5.039,0,0,1,3.665,1.459,5.748,5.748,0,0,1,1.483,4.3V27.631a2.548,2.548,0,0,1-2.366,1.728l-.136,0A2.521,2.521,0,0,1,26.013,27.643Z\"\n transform=\"translate(63.32 0)\"\n />\n <path\n id=\"Wizi\"\n class=\"cls-2\"\n d=\"M13.341,28.661,12.2,22.617l-1.226,6.044a2.9,2.9,0,0,1-2.353,1.189,3.26,3.26,0,0,1-2.44-1.1L.064,2.55A1.793,1.793,0,0,1,.591.674,2.977,2.977,0,0,1,2.6,0c1.287,0,2.047.478,2.28,1.422L8.535,18.707l1.312-6.055a2.228,2.228,0,0,1,2.524-1.876,2.035,2.035,0,0,1,2.183,1.876l1.213,6.142Q16.816,12.6,18,6.3c.785-4.2,2.06-6.3,3.8-6.3a2.717,2.717,0,0,1,1.054.221,1.774,1.774,0,0,1,1.41,2.329l-6.032,26.1a2.881,2.881,0,0,1-2.354,1.2A3.247,3.247,0,0,1,13.341,28.661Zm39.816-.356V11.67c.293-.6,1.139-.895,2.537-.895,1.336,0,2.182.294,2.538.895V28.305c-.355.65-1.2.968-2.538.968C54.3,29.273,53.451,28.955,53.157,28.305Zm-15.667.968c-1.287-.147-1.924-.772-1.924-1.863a2.936,2.936,0,0,1,.343-1.5l7.16-10.984H37.33a2.307,2.307,0,0,1-1.765-2.182,2.226,2.226,0,0,1,1.778-2.182h10.1a2.144,2.144,0,0,1,1.679,2.1q0,1.8-2.574,5.529-2.483,3.366-4.879,6.73h5.7v-.013a2.235,2.235,0,0,1,0,4.364Zm-11.5-.968V11.67c.294-.6,1.14-.895,2.538-.895,1.336,0,2.182.294,2.537.895V28.305c-.355.65-1.2.968-2.537.968C27.131,29.273,26.285,28.955,25.991,28.305ZM53.9,8.054a2,2,0,0,1-.747-1.544A1.858,1.858,0,0,1,53.9,5a2.969,2.969,0,0,1,3.58,0,1.859,1.859,0,0,1,.748,1.508,1.962,1.962,0,0,1-.748,1.544,2.833,2.833,0,0,1-3.58,0Zm-27.165,0a2,2,0,0,1-.748-1.544A1.859,1.859,0,0,1,26.739,5a2.968,2.968,0,0,1,3.579,0,1.892,1.892,0,0,1,.748,1.508,1.959,1.959,0,0,1-.748,1.544,2.832,2.832,0,0,1-3.579,0Z\"\n transform=\"translate(-0.024 0.086)\"\n />\n </g>\n </svg>\n </div>\n</div>\n","import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n standalone: false,\n selector: 'wac-radio-legacy',\n templateUrl: './radio.component.html',\n encapsulation: ViewEncapsulation.None,\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: RadioLegacyComponent, multi: true }]\n})\nexport class RadioLegacyComponent implements ControlValueAccessor {\n // ! refacto\n @Input()\n label = '';\n @Input()\n options: Array<any>; // todo refacto type\n @Input()\n value: any;\n @Input()\n type: string;\n @Input()\n id = '';\n @Input()\n name: string;\n @Input()\n alone = false;\n @Output()\n changeInput = new EventEmitter<any>();\n disabled = false;\n constructor() {}\n private _onChange: Function;\n private _onTouched: Function;\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n writeValue(obj: any): void {\n this.value = obj;\n }\n\n onChange(value) {\n if (this._onChange) {\n this._onChange(value);\n }\n }\n\n valueInput(value) {\n this.changeInput.emit(value);\n }\n}\n","<div class=\"wac-radio\" *ngFor=\"let option of options\" [ngClass]=\"{ 'wac-radio--nowrap': type === 'column', alone: alone }\">\n <div class=\"wac-radio__row\">\n <input\n type=\"radio\"\n [id]=\"option.id\"\n class=\"is-checkradio\"\n [name]=\"option.name\"\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n />\n <label [attr.for]=\"option.id\">{{ option.label }}</label>\n <div class=\"wac-radio__input\" *ngIf=\"value && option.value && option.hasInput\">\n <input type=\"text\" [placeholder]=\"option.placeholderInput\" (blur)=\"valueInput($event)\" />\n </div>\n </div>\n</div>\n","import { Component, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-state',\n templateUrl: './state.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class StateComponent {\n @Input()\n state = 'success';\n constructor() {}\n}\n","<div [class]=\"'wac-state ' + state\"></div>\n","import { animate, style, transition, trigger } from '@angular/animations';\n\nexport const inOutX = trigger('inOutXAnimation', [\n transition(':enter', [\n style({ zIndex: -1, transform: 'scaleX(0)', width: 0, opacity: 0 }),\n animate('.3s ease-out', style({ zIndex: 1, transform: 'scaleX(1)', width: 'auto', opacity: 1 }))\n ]),\n transition(':leave', [\n style({ zIndex: 1, transform: 'scaleX(1)', width: 'auto', opacity: 1 }),\n animate('.3s ease-in', style({ zIndex: -1, transform: 'scaleX(0)', width: 0, opacity: 0 }))\n ])\n]);\n","import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\nimport { inOutX } from '../../animations/in-out/in-out-x.animation';\n\n@Component({\n standalone: false,\n selector: 'wac-tag-label',\n templateUrl: './tag-label.component.html',\n encapsulation: ViewEncapsulation.None,\n animations: [inOutX]\n})\nexport class TagLabelComponent {\n @Input()\n index = 0;\n @Input()\n label = '';\n @Input()\n deleted = false;\n\n @Output() onDeleteLabel = new EventEmitter<any>();\n\n constructor() {}\n\n deleteLabel() {\n this.deleted = true;\n this.onDeleteLabel.emit({\n index: this.index,\n label: this.label\n });\n }\n}\n","<div *ngIf=\"!deleted\" [@inOutXAnimation] class=\"wac-tag-label\">\n <div class=\"wac-label__wrapper\">\n {{ label }}\n <i class=\"far fa-times\" (click)=\"deleteLabel()\"></i>\n </div>\n</div>\n","import { animate, style, transition, trigger } from '@angular/animations';\n\nexport const opacityAnimation = trigger('opacityAnimation', [\n transition(':enter', [style({ opacity: 0 }), animate('0.4s ease-in-out', style({ opacity: 1 }))])\n]);\n","import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-optional-disable-container',\n templateUrl: './optional-disable-container.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class OptionalDisableContainerComponent {\n\n @Input() disabled = false;\n\n constructor() { }\n\n}","<ng-content></ng-content>\n<div class=\"wac-optional-disable-container__disabledSection\" *ngIf=\"disabled\"></div>","import { DatePipe } from '@angular/common';\nimport { Component, Input, EventEmitter, Output, OnChanges, SimpleChanges, ChangeDetectionStrategy, ViewChild, ElementRef, ViewEncapsulation } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { NwbDatePickerComponent, NwbDatePickerEvent, NwbDatePickerOptions, NwbDatePickerIntl, NwbDatePickerFormat, NwbDatePickerDefaultSettings } from '@wizishop/ng-wizi-bulma';\nimport { opacityAnimation } from '../../animations/show/opacity.animation';\n\n@Component({\n standalone: false,\n selector: 'wac-calendar',\n templateUrl: './calendar.component.html',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: CalendarComponent,\n multi: true\n },\n DatePipe,\n NwbDatePickerIntl,\n NwbDatePickerFormat,\n NwbDatePickerDefaultSettings\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n animations: [opacityAnimation]\n})\nexport class CalendarComponent implements OnChanges, ControlValueAccessor {\n //! At the moment, the component handle only one date (not a range)\n @ViewChild('minutes') minutes: ElementRef;\n @ViewChild('hours') hours: ElementRef;\n @ViewChild('datePicker') datePicker: NwbDatePickerComponent;\n\n @Input()\n label: string | null; // todo use ng-content instead\n\n @Input()\n boldLabel: boolean = false; // todo remove when label will be a ng-content\n\n @Input()\n type: 'input' | 'edit' | 'select' = 'input';\n\n @Input()\n isRange: boolean = false;\n\n @Input()\n set options(options: Readonly<NwbDatePickerOptions>) {\n this._options = options;\n if (this.isBulmaDatePickerExists()) {\n this.updateBulmaDatePickerOptions(options);\n }\n }\n\n get options() : Readonly<NwbDatePickerOptions> {\n return this._options;\n }\n\n _options: Readonly<NwbDatePickerOptions> = {\n displayMode: 'inline',\n showHeader: false,\n showFooter: true,\n };\n\n @Input()\n position = 'bottom';\n\n @Input()\n set dateSelected(dateSelected: Date) {\n if (this.disabled) {\n return;\n }\n this._dateSelected = new Date(dateSelected); // trigger change detection for pure pipe\n }\n get dateSelected() : Date {\n return this._dateSelected;\n }\n _dateSelected: Date;\n\n @Input()\n set dateSelectedEnd(dateSelected: Date) {\n if (this.disabled) {\n return;\n }\n this._dateSelectedEnd = new Date(dateSelected); // trigger change detection for pure pipe\n }\n get dateSelectedEnd() : Date {\n return this._dateSelectedEnd;\n }\n _dateSelectedEnd: Date;\n\n @Output() dateSelectedChange = new EventEmitter();\n\n @Input()\n typeDate: 'datetime' | 'datetime-local' | 'date' = 'datetime-local';\n @Input()\n noMargin = false;\n\n @Input() disabled = false;\n\n @Output() changeData = new EventEmitter<{ startDate: Date; endDate: Date; }>();\n open = false;\n startLabel = '';\n endLabel = '';\n\n set calendarMinutes(calendarMinutes: string) {\n if (!this.dateSelected) {\n this.dateSelected = new Date();\n }\n const minutes = this.formatTime(calendarMinutes, 0, 59);\n this.dateSelected.setMinutes(minutes);\n\n this.dateSelected = this.dateSelected; // trigger change detection\n this.minutes.nativeElement.value = this.datePipe.transform(this.dateSelected, 'mm'); // force to update the input value\n this.triggerDateSelectedChange();\n }\n\n get calendarMinutes(): string {\n return this.datePipe.transform(this.dateSelected ?? new Date(), 'mm');\n }\n\n set calendarHours(calendarHours: string) {\n if (!this.dateSelected) {\n this.dateSelected = new Date();\n }\n\n const hours = this.formatTime(calendarHours, 0, 23);\n\n this.dateSelected.setHours(hours);\n this.dateSelected = this.dateSelected; // trigger change detection\n this.hours.nativeElement.value = this.datePipe.transform(this.dateSelected, 'HH'); // force to update the input value\n this.triggerDateSelectedChange();\n }\n\n get calendarHours(): string {\n return this.datePipe.transform(this.dateSelected ?? new Date(), 'HH');\n }\n\n constructor(private datePipe: DatePipe) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.label || changes.type) {\n this.setCalendarLabel();\n }\n }\n\n onChangeDate(selectedDates: NwbDatePickerEvent) {\n if (this.disabled) {\n return;\n }\n\n if (!this.dateSelected) {\n this.dateSelected = new Date();\n }\n\n selectedDates.startDate.setHours(this.dateSelected.getHours());\n selectedDates.startDate.setMinutes(this.dateSelected.getMinutes());\n\n this.dateSelected = selectedDates.startDate;\n\n if (selectedDates.endDate && this.isRange) {\n selectedDates.endDate.setMinutes(this.dateSelectedEnd.getMinutes());\n selectedDates.endDate.setMinutes(this.dateSelectedEnd.getMinutes());\n this.dateSelectedEnd = selectedDates.endDate;\n } else {\n selectedDates.endDate = this.dateSelected;\n this.dateSelectedEnd = this.dateSelected;\n }\n this.triggerDateSelectedChange();\n }\n\n private triggerDateSelectedChange() {\n this.onChange(this.dateSelected);\n this.dateSelectedChange.emit(this.dateSelected);\n this.triggerChange({\n startDate: this.dateSelected,\n endDate: this.dateSelectedEnd\n });\n }\n\n triggerChange(event: { startDate: Date; endDate: Date; }) {\n console.log(event);\n this.changeData.emit(event);\n }\n\n openCalendar(value = null) {\n\n if (this.disabled) {\n return;\n }\n\n if (value === 'close') {\n if (this.open) {\n this.open = false;\n this.onTouch();\n }\n } else {\n this.open = !this.open;\n }\n }\n\n private setCalendarLabel() {\n if (this.type === 'edit' && this.label) {\n const splitLabel = this.label.split('{x}');\n if (splitLabel.length > 1) {\n this.startLabel = splitLabel[0];\n this.endLabel = splitLabel[1];\n } else {\n this.startLabel = this.label;\n }\n }\n }\n\n incrementMinutes($event: Event) {\n this.calendarMinutes = parseInt(this.calendarMinutes, 10) + 1 + '';\n $event.preventDefault();\n }\n\n decrementsMinutes($event: Event) {\n this.calendarMinutes = parseInt(this.calendarMinutes, 10) - 1 + '';\n $event.preventDefault();\n }\n\n incrementHours($event: Event) {\n this.calendarHours = parseInt(this.calendarHours, 10) + 1 + '';\n $event.preventDefault();\n }\n\n decrementHours($event: Event) {\n this.calendarHours = parseInt(this.calendarHours, 10) - 1 + '';\n $event.preventDefault();\n }\n\n /*\n Ensure that the input value is a number and that it is between min and max\n */\n private formatTime(time: string | number, min = 0, max = 59) {\n let timeNumber = typeof time === 'string' ? parseInt(time, 10) : time;\n timeNumber = timeNumber > max ? min : timeNumber;\n timeNumber = timeNumber < min ? max : timeNumber;\n timeNumber = parseInt(('' + timeNumber).slice(-2)); // keeps only the last 2 digits\n return timeNumber;\n }\n\n private updateBulmaDatePickerOptions(options: Readonly<NwbDatePickerOptions>) {\n const bulmaCalendarDatePicker = this.datePicker['bulmaCalendar'].datePicker;\n bulmaCalendarDatePicker.min = options.minDate;\n bulmaCalendarDatePicker.max = options.maxDate;\n bulmaCalendarDatePicker.refresh();\n }\n\n private isBulmaDatePickerExists() {\n return this.datePicker && this.datePicker['bulmaCalendar'] && this.datePicker['bulmaCalendar'].datePicker;\n }\n\n // ControlValueAccessor methods\n\n onChange: (value: Date) => void = () => {};\n\n onTouch: () => void = () => {};\n\n writeValue(date: Date): void {\n if (!date) {\n return;\n }\n this.dateSelected = date;\n }\n registerOnChange(fn: any){\n this.onChange = fn;\n }\n registerOnTouched(fn: any){\n this.onTouch = fn;\n }\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n}\n","<div\n class=\"wac-calendar\"\n [ngClass]=\"{\n 'wac-calendar--input': type === 'input',\n 'wac-calendar--onlyDate': typeDate === 'date',\n 'wac-calendar--edit': type === 'edit',\n 'wac-calendar--select': type === 'select',\n 'wac-calendar--no-margin': noMargin,\n 'wac-calendar--open': open,\n 'wac-calendar--range': isRange\n }\"\n [zIndexToggle]=\"open\"\n>\n <p [class]=\"'wac-calendar__label' + (boldLabel ? ' bold' : '')\" *ngIf=\"label && (type === 'input' || type === 'select')\" (click)=\"openCalendar()\">{{ label }}</p>\n <p class=\"wac-calendar__startLabel\" *ngIf=\"type === 'edit'\">{{ startLabel }}</p>\n <wac-optional-disable-container [disabled]=\"disabled\">\n <div class=\"wac-calendar__autoHide\" wzAutoHide (clickOutside)=\"openCalendar('close')\">\n <div class=\"wac-calendar__wrapper\">\n <div class=\"wac-calendar__wrapper__input\" *ngIf=\"type === 'input'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__input__icon\">\n <i class=\"far fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__input__date\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy'}}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/mm/yyyy' | translate }}</span>\n </div>\n <div class=\"wac-calendar__wrapper__input__time\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'HH:mm' }}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.HH:mm' | translate }}</span>\n </div>\n <ng-container *ngIf=\"isRange\">\n <div class=\"wac-calendar__wrapper__input__separator\"><i class=\"fa-solid fa-chevron-right\"></i></div>\n <div class=\"wac-calendar__wrapper__input__date\">\n <span *ngIf=\"dateSelectedEnd\" @opacityAnimation>{{ dateSelectedEnd | date: 'dd/MM/yyyy'}}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelectedEnd\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/mm/yyyy' | translate }}</span>\n </div>\n <div class=\"wac-calendar__wrapper__input__time\">\n <span *ngIf=\"dateSelectedEnd\" @opacityAnimation>{{ dateSelectedEnd | date: 'HH:mm' }}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelectedEnd\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.HH:mm' | translate }}</span>\n </div>\n </ng-container>\n </div>\n <div class=\"wac-calendar__wrapper__editInPlace\" *ngIf=\"type === 'edit'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__editInPlace__icon\">\n <i class=\"fal fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__editInPlace__date\">\n <div class=\"wac-calendar__wrapper__input__time\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\n </div>\n </div>\n </div>\n <div class=\"wac-calendar__wrapper__select\" *ngIf=\"type === 'select'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__select__icon\">\n <i class=\"fal fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__select__date\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\n </div>\n </div>\n </div>\n <div\n class=\"wac-calendar__absolute\"\n [ngClass]=\"{\n top: position === 'top',\n bottom: position === 'bottom',\n left: position === 'left',\n right: position === 'right',\n 'right-top': position === 'right-top',\n 'right-bottom': position === 'right-bottom',\n 'left-top': position === 'left-top',\n 'left-bottom': position === 'left-bottom',\n 'with-time': typeDate === 'datetime-local' || typeDate === 'datetime'\n }\"\n >\n\n <!-- Solo nwbDatePicker -->\n <ng-container *ngIf=\"!isRange\">\n <nwb-date-picker #datePicker (change)=\"onChangeDate($event)\" [options]=\"options\">\n <input [nwbDatepickerStart]=\"datePicker\" type=\"text\" [nwbDateType]=\"'date'\" [value]=\"dateSelected?.toISOString()\" />\n </nwb-date-picker>\n </ng-container>\n\n <!-- Range nwbDatePicker -->\n <ng-container *ngIf=\"isRange\">\n <nwb-date-picker #datePicker (change)=\"onChangeDate($event)\" [options]=\"options\">\n <input [nwbDatepickerStart]=\"datePicker\" type=\"text\" [nwbDateType]=\"'date'\" [value]=\"dateSelected?.toISOString()\" />\n <input [nwbDatepickerEnd]=\"datePicker\" type=\"text\" [nwbDateType]=\"'date'\" [value]=\"dateSelectedEnd?.toISOString()\" />\n </nwb-date-picker>\n </ng-container>\n <div class=\"wac-calendar__absolute__time\" *ngIf=\"typeDate === 'datetime-local' || typeDate === 'datetime'\">\n <div class=\"wac-calendar__absolute__time__wrapper\">\n <div class=\"wac-calendar__absolute__time__wrapper__hours\">\n <div class=\"wac-calendar__absolute__time__wrapper__hours__left\">\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"incrementHours($event)\">\n <i class=\"fas fa-plus\"></i>\n </button>\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"decrementHours($event)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__hours__right\">\n <input #hours type=\"text\" [(ngModel)]=\"calendarHours\" [wacOnlyNumber]=\"true\"/>\n </div>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__minutes\">\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__left\">\n <input #minutes type=\"text\" [(ngModel)]=\"calendarMinutes\" [wacOnlyNumber]=\"true\"/>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__right\">\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"incrementMinutes($event)\">\n <i class=\"fas fa-plus\"></i>\n </button>\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"decrementsMinutes($event)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </wac-optional-disable-container>\n <p class=\"wac-calendar__endLabel\" *ngIf=\"type === 'edit'\">{{ endLabel }}</p>\n</div>\n","import {\n AfterViewChecked,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n Output,\n SimpleChanges,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { Observable } from 'rxjs';\n\n@Component({\n standalone: false,\n selector: 'wac-edit-in-place',\n templateUrl: './edit-in-place.component.html',\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: WzEditInPlaceComponent,\n multi: true\n }\n ]\n})\nexport class WzEditInPlaceComponent implements ControlValueAccessor, AfterViewChecked, OnChanges {\n //! Refacto aweful to use\n // todo add exemples in showcases\n // ! Not working correctly with ngModel and (ngModelChange)\n @Input()\n type: string;\n @Input()\n nwbOptions: object | string[];\n @Input()\n config: NwbEditInPlaceConfig = {};\n @Input()\n label: string;\n @Output() customChange = new EventEmitter<any>();\n\n @ViewChild('input')\n input: ElementRef;\n\n objectKeys = Object.keys;\n public currentValue: string | number;\n private preValue: string | number;\n\n public inputWidth: number;\n public editing = false;\n public isLoading: boolean;\n private firstEdit: boolean;\n private initialized: boolean;\n\n public onChange: any = Function.prototype;\n public onTouched: any = Function.prototype;\n\n get value(): any {\n return this.currentValue;\n }\n\n set value(v: any) {\n if (v !== this.currentValue) {\n this.currentValue = v;\n }\n }\n\n writeValue(value: any) {\n if (value !== null) {\n if (this.config.currency) {\n this.currentValue = this.parseValueToNumber(value);\n if (this.config.separator !== '.') {\n this.currentValue = this.parseValueToSeparator(this.currentValue);\n }\n this.currentValue += this.config.currency;\n } else {\n this.currentValue = value;\n }\n }\n }\n\n public registerOnChange(fn: (_: any) => {}): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n private _setValue(v: string | number) {\n if (this.type === 'select') {\n this.onChange(v);\n } else if (typeof this.config.currency === 'string') {\n v = this.parseValueToNumber(v);\n this.onChange(v);\n if (this.config.separator !== '.') {\n v = this.parseValueToSeparator(v);\n }\n v = v + this.config.currency;\n this.customChange.emit(v);\n } else {\n this.onChange(v);\n }\n this.writeValue(v);\n this.value = v;\n }\n\n ngAfterViewChecked() {\n if (this.input && this.editing) {\n this.input.nativeElement.focus();\n if (this.config.selectTextUponClick && this.firstEdit && this.preValue && this.input.nativeElement.value) {\n this.input.nativeElement.select();\n this.firstEdit = false;\n }\n }\n this.initialized = true;\n }\n\n startEditing() {\n if (!this.editing) {\n this.editing = true;\n this.currentValue = this.checkAndRemoveCurrency(this.currentValue);\n this.firstEdit = true;\n }\n }\n\n edit() {\n this.preValue = this.currentValue;\n this.editing = true;\n }\n\n onSubmit() {\n this.editing = false;\n if (this.currentValue !== this.preValue) {\n if (typeof this.config.handler === 'function') {\n this.isLoading = true;\n this.config.handler(this.currentValue, this.config.data).subscribe(\n data => {\n let hasChanged: boolean;\n this.isLoading = false;\n if (typeof data !== 'boolean') {\n this.currentValue = data.value;\n hasChanged = data.success;\n } else {\n hasChanged = data;\n }\n if (hasChanged) {\n this._setValue(this.currentValue);\n } else {\n this._setValue(this.preValue);\n }\n },\n () => {\n this.isLoading = false;\n this._setValue(this.preValue);\n }\n );\n } else {\n this._setValue(this.currentValue);\n }\n } else {\n if (typeof this.config.currency === 'string') {\n this.currentValue = this.currentValue + this.config.currency;\n }\n }\n }\n\n checkAndRemoveCurrency(value) {\n if (typeof this.config.currency === 'string') {\n return value.slice(0, -1);\n }\n\n return value;\n }\n\n parseValueToNumber(value) {\n if (!isNaN(value) && value !== '') {\n return parseFloat(value);\n }\n if (typeof this.config.currency === 'string') {\n const indexComma = value.indexOf(',');\n const indexDot = value.indexOf('.');\n if (indexComma > 0 && indexDot === -1) {\n const parsedValue = value.replace(',', '.');\n if (!isNaN(parsedValue)) {\n return parseFloat(parsedValue);\n }\n }\n if (indexDot > 0 && indexComma === -1) {\n if (!isNaN(value)) {\n return parseFloat(value);\n }\n }\n return 0;\n }\n }\n\n parseValueToSeparator(value) {\n if (typeof this.config.separator === 'string') {\n value = parseFloat(value).toFixed(2);\n return value.replace('.', this.config.separator);\n }\n\n return value;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (this.initialized) {\n this.currentValue = this.checkAndRemoveCurrency(this.currentValue) + this.config.currency;\n this.customChange.emit(this.value);\n }\n }\n\n selectOption(event) {\n this.currentValue = event.target.innerText;\n this.closeSelect(event);\n event.stopPropagation();\n this.customChange.emit(event.target.value);\n }\n\n closeSelect(event) {\n this.editing = false;\n this.isLoading = false;\n event.stopPropagation();\n }\n}\n\nexport interface NwbEditInPlaceConfig {\n /** Whether to select the whole text inside the input upon click */\n selectTextUponClick?: boolean;\n\n /** Data to pass as the second argument for the handler method if any **/\n data?: any;\n\n currency?: string;\n\n separator?: string;\n\n /**\n * handler method to call on change.\n * This allows you to perform any action before setting new value to the model\n * It has to return a boolean observable. If the returned value is true then the model will change.\n */\n handler?: (value: any, data: any) => Observable<boolean | ReturnedData>;\n}\n\nexport interface ReturnedData {\n success: boolean;\n value: any;\n}\n","<div [class.nwb-wrapper--editable]=\"type === 'select' || (!editing && !isLoading)\" class=\"wac-edit-in-place nwb-wrapper\" (click)=\"startEditing()\">\n <span\n data-text=\"dd\"\n [class.nwb-is-loading]=\"type === 'select' ? '' : isLoading\"\n [class.nwb-editing]=\"type === 'select' ? '' : editing\"\n [ngClass]=\"type === 'select' ? 'nwbSelect' : ''\"\n >\n {{ currentValue }}\n </span>\n\n <input\n #input\n *ngIf=\"type !== 'select' && editing\"\n [class.nwb-editable]=\"!editing\"\n [class.nwb-editing]=\"editing\"\n [class.nwb-is-loading]=\"isLoading\"\n type=\"text\"\n [(ngModel)]=\"value\"\n (focus)=\"edit()\"\n (blur)=\"onSubmit()\"\n (keyup.enter)=\"onSubmit()\"\n [ngStyle]=\"{ 'width.px': inputWidth }\"\n />\n <div class=\"nwbSelect__container\" *ngIf=\"type === 'select' && editing\">\n <div class=\"nwbSelect__background\" (click)=\"closeSelect($event)\"></div>\n <ng-container *ngFor=\"let nwbOption of objectKeys(nwbOptions)\">\n <button\n *ngIf=\"nwbOptions[nwbOption]\"\n [ngClass]=\"\n nwbOptions[nwbOption].label === currentValue\n ? 'nwbSelect__container__item nwbSelect__container__item--selected'\n : 'nwbSelect__container__item'\n \"\n (click)=\"selectOption($event)\"\n [value]=\"nwbOptions[nwbOption].value\"\n >\n {{ nwbOptions[nwbOption].label ? nwbOptions[nwbOption].label : nwbOptions[nwbOption].value }}\n </button>\n </ng-container>\n </div>\n\n <span class=\"nwb-loader\" [class.nwb-is-loading]=\"type === 'select' ? '' : isLoading\"></span>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ProgressBarComponent } from '../progress-bar/progress-bar.component';\nimport { AutosizeModule } from 'ngx-autosize';\n\n@Component({\n selector: 'wac-text-area',\n templateUrl: './text-area.component.html',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n ProgressBarComponent,\n AutosizeModule\n ],\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: TextAreaComponent, multi: true }]\n})\nexport class TextAreaComponent implements ControlValueAccessor {\n // todo simplify and improve progress bar\n @Input()\n label = '';\n @Input()\n value = '';\n @Input()\n placeholder = '';\n @Input()\n textInfo = '';\n @Input()\n textError = '';\n @Input()\n error: boolean;\n @Input()\n success: boolean;\n @Input()\n size = null;\n @Input()\n min = null;\n @Input()\n max = null;\n @Input()\n minHeight: string;\n @Input()\n dynamicSize = false;\n @Input()\n progressBar = false;\n @Input()\n disabled = false;\n @Input()\n maxlength: number | string;\n @Input()\n minlength: number | string;\n @Input()\n disableResize = false;\n\n id =\n 'wac-textarea__' +\n Math.random()\n .toString(36)\n .substr(2, 9);\n\n private _onChange: Function;\n private _onTouched: Function;\n\n registerOnChange(fn: any): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this._onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n writeValue(obj: any): void {\n this.value = obj;\n }\n\n onChange(value) {\n if (this._onChange) {\n this._onChange(value);\n this.writeValue(value);\n }\n }\n\n onBlur() {\n if (this._onTouched) {\n this._onTouched();\n }\n }\n}\n","<div class=\"field wac-text-area\" [ngClass]=\"{'dynamic': dynamicSize}\">\n <div class=\"field-label is-normal has-text-left\">\n <label class=\"label has-text-weight-normal\" [innerHTML]=\"label\" [for]=\"id\"></label>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <p class=\"control\" [ngClass]=\"{ 'has-icons-right': (textError || error || success) && !disabled }\">\n <textarea\n [class]=\"'textarea' + (disableResize ? ' no-resize' : '')\"\n [id]=\"id\"\n [ngClass]=\"{ 'is-danger': (textError || error) && !disabled, 'is-empty': value === '', 'is-success': success && !disabled, 'has-help-text': textInfo !== '' || size }\"\n [placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [style.minHeight]=\"minHeight\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (blur)=\"onBlur()\"\n [disabled]=\"disabled\"\n [autosize]=\"dynamicSize\"\n [maxlength]=\"maxlength ? maxlength : 524288\"\n [minlength]=\"minlength ? minlength : 0\"\n ></textarea>\n <!-- Icon error -->\n <span *ngIf=\"(textError || error) && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fal fa-times has-text-danger\"></i>\n </span>\n <!-- Icon success -->\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\n <i class=\"fas fa-check has-text-success\"></i>\n </span>\n <span\n *ngIf=\"textInfo && (textError === null || textError === '')\"\n class=\"is-size-7 wac-text-area__info text-info\"\n [innerHtml]=\"textInfo\"\n ></span>\n <span *ngIf=\"textError\" class=\"is-size-7 wac-text-area__error has-text-danger\" [innerHtml]=\"textError\"></span>\n <span\n *ngIf=\"size && !progressBar\"\n class=\"is-size-7 wac-text-area__size\"\n [ngClass]=\"value && value.length > size ? 'has-text-danger' : ''\"\n ><strong>{{ value ? value.length : 0 }}</strong> / {{ size }}</span\n >\n </p>\n <wac-progress-bar *ngIf=\"progressBar && value\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\n </div>\n </div>\n</div>\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-h1',\n templateUrl: './h1.component.html'\n})\nexport class H1Component {\n @Input()\n annotation = '';\n @Input()\n withImg = false;\n @Input()\n center = false;\n @Input()\n color = null;\n\n private _noMargin: boolean = false;\n\n @Input()\n get noMargin(): boolean {\n return this._noMargin;\n }\n \n set noMargin(value: boolean | string | '') {\n this._noMargin = value === '' || value === 'noMargin' || value === true;\n }\n\n constructor() {}\n}\n","<h1 class=\"wac-h1\" [ngClass]=\"{'with-img': withImg, 'center': center}\" [style.color]=\"color?color:''\" [class.no-margin]=\"noMargin\">\n <ng-content></ng-content><small *ngIf=\"annotation !== ''\">{{ annotation }}</small>\n</h1>\n","import { Component, OnInit, Input } from '@angular/core';\n\n\n@Component({\n standalone: false,\n selector: 'wac-h2',\n templateUrl: './h2.component.html'\n})\nexport class H2Component implements OnInit {\n private _noMargin: boolean = false;\n \n @Input()\n get noMargin(): boolean {\n return this._noMargin;\n }\n \n set noMargin(value: boolean | string | '') {\n this._noMargin = value === '' || value === 'noMargin' || value === true;\n }\n\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<h2 class=\"wac-h2\" [class.no-margin]=\"noMargin\">\n <ng-content></ng-content>\n</h2>\n","import { Component, Input, OnInit } from '@angular/core';\n\n\n@Component({\n standalone: false,\n selector: 'wac-h3',\n templateUrl: './h3.component.html'\n})\nexport class H3Component implements OnInit {\n @Input() grey = false;\n \n private _noMargin: boolean = false;\n\n @Input()\n get noMargin(): boolean {\n return this._noMargin;\n }\n \n set noMargin(value: boolean | string | '') {\n this._noMargin = value === '' || value === 'noMargin' || value === true;\n }\n \n constructor() {}\n\n ngOnInit(): void {}\n}\n","<h3 class=\"wac-h3\" [ngClass]=\"{ grey: grey }\" [class.no-margin]=\"noMargin\">\n <ng-content></ng-content>\n</h3>\n","import { Injectable } from '@angular/core';\nimport { NavigationStart, Router } from '@angular/router';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class HistoryService {\n private history: string[] = [];\n\n constructor(private router: Router) {}\n\n registerHistory() {\n this.router.events.subscribe((event) => {\n if (event instanceof NavigationStart) {\n if (this.history.length > 0 && this.history[this.history.length - 1] === event.url.split('?')[0]) {\n return;\n }\n this.history.push(event.url.split('?')[0])\n }\n })\n }\n\n back(link: string[]) {\n this.history.pop();\n if (this.history.length > 0) {\n const lastlink = this.history[this.history.length - 1];\n this.router.navigate(lastlink.split('/'));\n } else {\n this.redirect(link);\n }\n }\n\n redirect(link: string[]) {\n if (link[0].indexOf('http') !== -1) {\n this.redirectToExternalLink(link);\n } else {\n this.redirectToInternalLink(link);\n }\n }\n\n redirectToExternalLink(link: string[]) {\n window.location.href = link[0];\n }\n\n redirectToInternalLink(link: string[]) {\n this.router.navigate(link);\n }\n}\n","import { Location } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { HistoryService } from '../../services/history.service';\n@Component({\n standalone: false,\n selector: 'wac-header-page',\n templateUrl: './header-page.component.html'\n})\nexport class HeaderPageComponent {\n @Input()\n title: string;\n @Input()\n linkBack: string[];\n @Input()\n withImg = false;\n @Input()\n center = false;\n @Input()\n useHistory = false;\n\n constructor(private historyService: HistoryService, private location: Location) {}\n back() {\n if (this.useHistory && !this.linkBack) {\n window.history.back();\n return;\n } else if(!this.useHistory) {\n this.historyService.redirect(this.linkBack);\n return;\n }\n\n this.historyService.back(this.linkBack);\n }\n}\n","<div class=\"wac-header-page\">\n <div class=\"wac-header-page__maxWidth\">\n <div class=\"wac-header-page__maxWidth__top\" [ngClass]=\"{'center':center}\">\n <div class=\"wac-header-page__maxWidth__top__left\" [ngClass]=\"{'fullsize':center}\">\n <div class=\"wac-header-page__maxWidth__top__left__nowrap\">\n <a *ngIf=\"linkBack || useHistory\" (click)=\"back()\"><i class=\"fas fa-chevron-left\"></i></a>\n <wac-h1 [center]=\"center\" [withImg]=\"withImg\">{{ title }}<ng-content select=\"[role=header]\"></ng-content></wac-h1>\n </div>\n <p class=\"subtitle\"><ng-content select=\"[role=subtitle]\"></ng-content></p>\n </div>\n <div class=\"wac-header-page__maxWidth__top__right\" *ngIf=\"!center\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n</div>\n","import { AfterViewInit, Component, ElementRef, Input, Renderer2, ViewChild } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-link',\n templateUrl: './link.component.html'\n})\nexport class LinkComponent implements AfterViewInit {\n\n _link: string;\n\n @Input() set href(link : string) {\n this._link = link;\n this.setAttributesLink();\n }\n\n get href(): string {\n return this._link;\n }\n\n @Input() tooltip: string;\n @Input() tooltipWidth: string | number;\n @Input() target: '_self' | '_blank' | '_parent' | '_top' = '_self';\n @Input() id: string;\n @Input() class: string;\n @Input() fontSize = '14px';\n\n @ViewChild('linkComponent')\n linkComponent: ElementRef;\n\n constructor(private renderer2: Renderer2) {}\n\n ngAfterViewInit() {\n this.setAttributesLink();\n }\n\n setAttributesLink() {\n if (!this.linkComponent) {\n return;\n }\n\n if (this.href) {\n this.renderer2.setAttribute(this.linkComponent.nativeElement, \"href\", this.href);\n this.renderer2.setAttribute(this.linkComponent.nativeElement, \"target\", this.target);\n } else {\n this.renderer2.removeAttribute(this.linkComponent.nativeElement, \"href\");\n this.renderer2.removeAttribute(this.linkComponent.nativeElement, \"target\");\n }\n }\n}\n","<a #linkComponent class=\"wac-link\" [style.fontSize]=\"fontSize\" [ngClass]=\"{ class: class }\" [id]=\"{ id: id }\">\n <ng-content></ng-content>\n <span class=\"wac-link__tooltip\" [ngStyle]=\"{'min-width': tooltipWidth + 'px'}\" *ngIf=\"tooltip\" [innerHTML]=\"tooltip\"></span>\n</a>\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n@Component({\n standalone: false,\n selector: 'wac-switch',\n templateUrl: './switch.component.html',\n providers: [\n { provide: NG_VALUE_ACCESSOR, useExisting: SwitchComponent, multi: true },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SwitchComponent implements OnInit, ControlValueAccessor {\n // todo add ngmodel and review texts display (textState is mandatory in order to display textStateEnable and textStateDisable)\n @Input() value = false;\n @Input() textState = '';\n @Input() textStateAfter = '';\n @Input() textStateEnable = '';\n @Input() textStateDisable = '';\n @Input() showInput = false; // todo should not be handle here, but in another component\n @Input() placholderInput: string; // todo should be removed from here\n @Input() danger = false;\n @Input() whiteSpace: boolean = false;\n @Input() inverted: boolean = false;\n @Output() switchChange = new EventEmitter<any>(); // todo set emitted type\n @Output() changeInput = new EventEmitter<any>(); // todo set emitted type, should be removed\n valueInput: string;\n public id: string;\n\n disabled: boolean;\n\n constructor(private changeDetectorRef: ChangeDetectorRef) {}\n\n ngOnInit(): void {\n this.id = 'switch-' + Math.floor(Math.random() * Math.floor(1000));\n }\n\n changeValue(event: any) {\n if (this.disabled) {\n return;\n }\n this.value = event.target.checked;\n this.switchChange.emit(this.value);\n this.onChange(this.value)\n }\n\n triggerInput() {\n this.changeInput.emit(this.valueInput);\n }\n\n private onChange: (value: boolean) => void = (value) => {};\n\n writeValue(value: boolean): void {\n this.value = value;\n }\n registerOnChange(onChange: any): void {\n this.onChange = onChange;\n }\n\n onBlur(): void {\n this.onTouched();\n }\n\n private onTouched = () => {};\n\n registerOnTouched(onTouched: any): void {\n this.onTouched = onTouched;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled = disabled;\n this.changeDetectorRef.markForCheck();\n }\n}\n","<div class=\"wac-switch\" [ngClass]=\"{ inverted: inverted }\">\n <input type=\"checkbox\" [checked]=\"value\" (change)=\"changeValue($event)\" [id]=\"id\" [ngClass]=\"{ danger: danger }\" [disabled]=\"disabled\"/>\n <label [for]=\"id\" class=\"wac-switch__label\">\n <span class=\"wac-switch__label__text\">\n <ng-content></ng-content>\n <span\n *ngIf=\"textState\"\n [ngStyle]=\"{'whiteSpace': whiteSpace ? 'nowrap' :'normal'}\"\n >{{ textState }}\n <strong class=\"disable\" *ngIf=\"textStateDisable\">{{ textStateDisable }}</strong>\n <strong class=\"enable\" *ngIf=\"textStateEnable\">{{ textStateEnable }}</strong>\n {{ textStateAfter }}\n </span>\n </span>\n </label>\n</div>\n<div class=\"wac-show-input\" *ngIf=\"showInput && value\">\n <input [placeholder]=\"placholderInput\" type=\"text\" [(ngModel)]=\"valueInput\" (blur)=\"triggerInput()\" />\n</div>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-alert',\n templateUrl: './alert.component.html'\n})\nexport class AlertComponent implements OnInit {\n @Input() icon = true;\n @Input() warning = false;\n @Input() success = false;\n @Input() alert = false;\n @Input() iconClass = 'fas fa-info';\n @Input() closeButton = false;\n\n private isClose: boolean = false;\n @Output() isCloseChange = new EventEmitter<boolean>();\n\n constructor() {}\n ngOnInit(): void {}\n\n closeAlert(el) {\n el.remove();\n this.isClose = true;\n this.isCloseChange.next(this.isClose);\n }\n}\n","<div #alertBlock class=\"wac-alert\" [ngClass]=\"{ success: success, warning: warning, alert: alert }\">\n <i *ngIf=\"icon\" [ngClass]=\"iconClass\"></i>\n <p><ng-content></ng-content></p> <!-- ! Refacto : Remove p tag, attention à wizi-admin -->\n <a *ngIf=\"closeButton\" (click)=\"closeAlert(alertBlock)\"><i [ngClass]=\"'closeAlert fal fa-circle-xmark'\"></i></a>\n</div>\n","import { Component, Input } from '@angular/core';\n\n\n@Component({\n standalone: false,\n selector: 'wac-text',\n templateUrl: './text.component.html'\n})\nexport class TextComponent {\n @Input()\n textClass: 'grey'|'yellow'|'red'|'label'|'optional';\n\n private _noMargin: boolean = false;\n\n @Input()\n get noMargin(): boolean {\n return this._noMargin;\n }\n \n set noMargin(value: boolean | string | '') {\n this._noMargin = value === '' || value === 'noMargin' || value === true;\n }\n}\n","<div class=\"wac-text\" [class]=\"textClass\" [class.no-margin]=\"noMargin\">\n <p><ng-content></ng-content></p>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { TranslateModule } from '@ngx-translate/core';\n\nimport { PaginationComponent } from './pagination.component';\nimport { PagniationArrayTotalPages } from './pipes/array-pages.pipe';\nimport { PagniationText } from './pipes/custom-text.pipe';\nimport { PagniationIsLastPage } from './pipes/is-last-page.pipe';\n\nconst pipes = [PagniationArrayTotalPages, PagniationIsLastPage, PagniationText];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n TranslateModule\n ],\n exports: [PaginationComponent],\n declarations: [PaginationComponent, ...pipes],\n providers: [],\n})\nexport class PaginationModule { }\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { CheckboxComponent } from './checkbox.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ],\n exports: [CheckboxComponent],\n declarations: [CheckboxComponent],\n providers: [],\n})\nexport class CheckboxModule { }\n","import { DOCUMENT } from '@angular/common';\nimport { Inject } from '@angular/core';\nimport { Renderer2 } from '@angular/core';\nimport { Directive, ElementRef, Input } from '@angular/core';\n\n@Directive({\n standalone: false,\n selector: '[tableColumn]'\n})\nexport class TableColumn {\n @Input() columnSize: string; // Optional.\n @Input() centerCell: 'left'|'center'|'right'; // Optional. left|center|right\n\n private centerCellValue: string[] = ['left', 'center', 'right'];\n\n constructor(private currentCell: ElementRef, private renderer: Renderer2, @Inject(DOCUMENT) private document) {}\n\n ngAfterViewInit() {\n this.applyCustomStylesOnCell();\n }\n\n applyCustomStylesOnCell() {\n this.currentCell.nativeElement.style.flexGrow = typeof this.columnSize !== 'undefined' ? this.columnSize : '1';\n this.renderer.addClass(this.currentCell.nativeElement, 'wac-table__body__line__cell');\n\n if (this.centerCell) {\n if (this.centerCellValue.indexOf(this.centerCell) === -1) {\n throw 'Error : The centerCell directive has no matched value. The value must be one of the following : left, center, right.';\n }\n\n let className = 'wac-table__body__line__cell--center' + '--' + this.centerCell;\n this.renderer.addClass(this.currentCell.nativeElement, className);\n }\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { EventEmitter, Inject, Output } from '@angular/core';\nimport { Renderer2 } from '@angular/core';\nimport { Directive, ElementRef, Input } from '@angular/core';\nimport { NwbFilter, NwbFilterGroup } from '@wizishop/ng-wizi-bulma';\nimport { Subscription } from 'rxjs';\nimport { FiltersTableService } from '../shared/filters-table.service';\nimport { TableFilters } from '../shared/table-filters.model';\n\n@Directive({\n standalone: false,\n // The selector has the same name as the headerCell selector in table.component.html\n selector: '[headerCell]'\n})\nexport class TableColumnHeader {\n @Input() // Optional.\n set headerName(value: string) {\n this._headerName = value;\n this.setHeaderName();\n }\n _headerName: string = '';\n get headerName(): string {\n return this._headerName;\n }\n @Input() columnSize: string; // Optional.\n @Input() filterRouting: boolean = false; // Optional. Set to true to use Filter Routing.\n @Input() tableName: string; // Optional, but mandatory to handle sorting\n @Input() sortName: string; // Optional, but mandatory to handle sorting\n @Input() centerCell: 'left'|'center'|'right'; // Optional. left|center|right\n @Output() onSortChange: EventEmitter<boolean> = new EventEmitter(); // Emit the sort value (true, false, undefuned) of the current sort icon when clicking\n @Input() tableFilters: TableFilters;\n @Output() tableFiltersChange: EventEmitter<TableFilters> = new EventEmitter();\n\n private centerCellValue: string[] = ['left', 'center', 'right'];\n\n private contentHeader: HTMLAnchorElement;\n private filterGroup: NwbFilterGroup;\n\n private subscriptions: Subscription[] = [];\n\n constructor(\n private currentCell: ElementRef,\n private renderer: Renderer2,\n @Inject(DOCUMENT) private document,\n private filtersTableService: FiltersTableService\n ) {}\n\n ngOnInit() {\n if (this.tableName && this.sortName) {\n if (this.filterRouting) {\n this.handleSortRouting();\n } else {\n this.handleSortBasic();\n }\n }\n }\n\n ngAfterViewInit() {\n this.applyCustomStylesOnCell();\n this.renderHeaderColumn();\n }\n\n handleSortRouting() {\n this.filterGroup = this.filtersTableService.getTableFilterGroup(this.tableName);\n\n const filterGroupChangeSub = this.filterGroup.valuesChange$.subscribe((filters:NwbFilter[]) => {\n if (!filters || !filters.length) {\n return;\n }\n const filterSort = filters.filter(filter => filter.key === 'sort')[0];\n if (this.sortName !== filterSort.value) {\n this.resetSortIcon();\n }\n });\n this.subscriptions.push(filterGroupChangeSub);\n }\n\n handleSortBasic() {\n const sortChangeSub = this.filtersTableService.getSortChangeListner().subscribe(sort => {\n if (this.tableName === sort.dataTableName && this.sortName !== sort.sortName) {\n // Reset the current sort icon\n this.resetSortIcon();\n }\n });\n this.subscriptions.push(sortChangeSub);\n }\n\n resetSortIcon() {\n // Replace current icon with default icon\n this.contentHeader.className = this.contentHeader.className.replace(this.getCurrentSortIcon(), 'idle');\n }\n\n applyCustomStylesOnCell() {\n this.currentCell.nativeElement.style.flexGrow = typeof this.columnSize !== 'undefined' ? this.columnSize : '1';\n this.renderer.addClass(this.currentCell.nativeElement, 'wac-table__head__cell');\n\n if (this.centerCell) {\n if (this.centerCellValue.indexOf(this.centerCell) === -1) {\n throw 'Error : The centerCell directive has no matched value. The value must be one of the following : left, center, right.';\n }\n\n let className = 'wac-table__head__cell--center' + '--' + this.centerCell;\n this.renderer.addClass(this.currentCell.nativeElement, className);\n }\n }\n\n renderHeaderColumn() {\n this.createHeaderContent();\n this.renderer.appendChild(this.currentCell.nativeElement, this.contentHeader);\n }\n\n createHeaderContent() {\n this.contentHeader = document.createElement('a');\n this.contentHeader.className = 'wac-table__head__cell__search';\n this.setHeaderName();\n if (this.tableName && this.sortName) {\n this.handleSort();\n }\n }\n\n private setHeaderName() {\n if (!this.contentHeader) {\n return;\n }\n this.contentHeader.innerHTML = this.headerName;\n }\n\n handleSort() {\n // Set icon in the header column cell\n this.contentHeader.className += ' wac-table__head__cell__search--' + this.getInitialSortIcon();\n\n // On click on the content header, change the icon and emit event\n this.renderer.listen(this.contentHeader, 'click', () => {\n const currentIcon = this.getCurrentSortIcon();\n let newIcon: string;\n let newSort: string, newOrder: boolean;\n\n switch (currentIcon) {\n case 'idle':\n newIcon = 'up';\n newSort = this.sortName;\n newOrder = true;\n break;\n\n case 'up':\n newIcon = 'down';\n newSort = this.sortName;\n newOrder = false;\n break;\n\n case 'down':\n newIcon = 'idle';\n break;\n\n default:\n newIcon = 'idle';\n break;\n }\n // Replace the icon\n this.contentHeader.className = this.contentHeader.className.replace(currentIcon, newIcon);\n\n this.emitEvents(newSort, newOrder);\n });\n }\n\n getInitialSortIcon() {\n if (!this.filterRouting) {\n return 'idle';\n }\n // Get Initial Sort Icon for Routing Filter\n let initialSortIcon = 'idle';\n if (this.filterGroup.get('sort') === this.sortName) {\n initialSortIcon = this.filterGroup.get('order') == 'true' ? 'up' : 'down';\n }\n return initialSortIcon;\n }\n\n getCurrentSortIcon() {\n const regexp = /wac-table__head__cell__search--(?<icon>\\w+)/;\n const { groups } = regexp.exec(this.contentHeader.className);\n return groups.icon;\n }\n\n emitEvents(newSort, newOrder) {\n if (this.filterRouting) {\n // Will send the filter routing value has changes event\n this.filterGroup.setValues({\n sort: newSort,\n order: newOrder,\n currentPage: 1\n });\n } else {\n // Send the event sort change\n this.filtersTableService.emitSortChange(this.tableName, this.sortName, newOrder);\n }\n if (this.tableFilters) {\n this.tableFilters.sort = this.sortName;\n this.tableFilters.order = newOrder;\n this.tableFilters.currentPage = 1;\n this.tableFiltersChange.emit(this.tableFilters);\n }\n this.onSortChange.emit(newOrder);\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach(subscription => {\n subscription.unsubscribe();\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CheckboxModule } from '../checkbox/checkbox.module';\nimport { LoaderComponent } from '../loader/loader.component';\nimport { PaginationModule } from '../pagination/pagination.module';\nimport { CheckBoxRow } from './directives/checkBoxRow.directive';\nimport { TableColumn } from './directives/column.directive';\nimport { TableColumnHeader } from './directives/columnHeader.directive';\nimport { TableRow } from './directives/raw.directive';\n\nimport { TableComponent } from './table.component';\nimport { InputSearchComponent } from '../inputs/input-search/input-search.component';\n\nconst directives = [TableColumn, CheckBoxRow, TableColumnHeader, TableRow,]\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n InputSearchComponent,\n LoaderComponent,\n CheckboxModule,\n PaginationModule\n ],\n exports: [TableComponent, ...directives],\n declarations: [TableComponent, ...directives],\n providers: [],\n})\nexport class TableModule { }\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-upload',\n templateUrl: './upload.component.html'\n})\nexport class UploadComponent implements OnInit {\n @Input()\n label: string = 'Choisir les images à importer';\n @Input()\n type: string = 'button';\n @Input()\n icon: string | boolean = 'far fa-images';\n @Input()\n image: string | boolean = 'assets/angular-components/images/upload/icon_picture.svg';\n @Input()\n labelImage: string = 'Glisser-déposer votre image ici';\n @Input()\n imageBlock: string | boolean = 'assets/angular-components/images/upload/upload_images.svg';\n @Input()\n labelUploadImage: string = '';\n @Input()\n onClickAction: () => void = () => {};\n @Input()\n isUploaded: boolean = false;\n @Input()\n imageUpload: string = '';\n\n @Output()\n open = new EventEmitter<any>();\n @Output()\n clickEvent = new EventEmitter<void>();\n constructor() {}\n\n ngOnInit(): void {}\n\n triggerEvent(event) {\n this.open.emit(event);\n }\n\n clickAction() {\n if (this.onClickAction) {\n this.onClickAction();\n }\n this.clickEvent.emit();\n }\n}\n","<div class=\"wac-upload\" [ngClass]=\"{ portrait: type === 'portrait', landscape: type === 'landscape', block: type === 'block', btn: type === 'btn' }\" (click)=\"clickAction()\">\n <div class=\"wac-upload__wrapper\">\n\n <!-- Affichage quand aucune image n'est uploadée -->\n <ng-container *ngIf=\"!isUploaded\">\n <div *ngIf=\"(type === 'portrait' || type === 'landscape') && image\" class=\"wac-upload__wrapper__visual\">\n <img [src]=\"image\" />\n <strong [innerHTML]=\"labelImage\"></strong>\n </div>\n \n <div *ngIf=\"(type === 'block')\" class=\"wac-upload__wrapper__visual\">\n <img [src]=\"imageBlock\" />\n </div>\n\n <span *ngIf=\"(type === 'portrait' || type === 'landscape') && image\">ou</span>\n \n <button (click)=\"triggerEvent($event)\" type=\"button\" [ngClass]=\"{ block: type === 'block', btn: type === 'btn' }\">\n <span *ngIf=\"icon\"><i [classList]=\"icon\"></i></span>\n <span [innerHTML]=\"label\"></span>\n </button>\n\n <div *ngIf=\"(type === 'block')\" class=\"wac-upload__wrapper__visual\">\n <wac-text [textClass]=\"'optional'\" noMargin>{{ labelUploadImage }}</wac-text>\n </div>\n </ng-container>\n\n <!-- Affichage quand une image est uploadée -->\n <ng-container *ngIf=\"isUploaded && imageUpload\">\n <div class=\"wac-upload__wrapper__uploaded\">\n <img [src]=\"imageUpload\" alt=\"Image uploadée\" />\n </div>\n </ng-container>\n\n </div>\n\n <ng-container *ngIf=\"isUploaded && imageUpload\">\n <div class=\"overlay\">\n <img [src]=\"imageBlock\" alt=\"Image de fond\" />\n </div>\n </ng-container>\n</div>","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-h4',\n templateUrl: './h4.component.html'\n})\nexport class H4Component implements OnInit {\n @Input() grey = false;\n\n private _noMargin: boolean = false;\n\n @Input()\n get noMargin(): boolean {\n return this._noMargin;\n }\n \n set noMargin(value: boolean | string | '') {\n this._noMargin = value === '' || value === 'noMargin' || value === true;\n }\n \n constructor() {}\n\n ngOnInit(): void {}\n}\n","<h4 class=\"wac-h4\" [ngClass]=\"{ grey: grey }\" [class.no-margin]=\"noMargin\">\n <ng-content></ng-content>\n</h4>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { CalllToAction } from '../select/call-to-action.model';\nimport { SelectItem } from '../select/select-items.dto';\n\n@Component({\n standalone: false,\n selector: 'wac-select-in-text',\n templateUrl: './select-in-text.component.html',\n})\nexport class SelectInTextComponent implements OnInit {\n @Input()\n set items(items: SelectItem[]) {\n this._items = items;\n this.setInitialValues();\n }\n get items(): SelectItem[] {\n return this._items;\n }\n private _items: SelectItem[];\n\n @Input()\n placeholder: string;\n\n @Input()\n label: string;\n\n @Input()\n maxWidthItems: string;\n\n @Input()\n type = 'default';\n\n @Input()\n callToAction: CalllToAction;\n\n @Input()\n preText: string;\n\n @Input()\n postText: string;\n\n @Input()\n alwaysOpen: boolean = false;\n\n openCategories = false;\n\n currentLabel: string = '';\n currentLabelIcon: string = '';\n\n @Input() maxWidth = '100%';\n\n @Output() selectValue = new EventEmitter<number>();\n\n @Output() clickOnCallToAction = new EventEmitter<any>();\n\n constructor() {}\n\n ngOnInit(): void {\n this.currentLabel = this.placeholder;\n this.setInitialValues();\n }\n\n setInitialValues() {\n if (!this.items.length) {\n return;\n }\n\n const itemSelected: SelectItem = this.getItemSelected();\n this.setCurrentItem(itemSelected);\n }\n\n onClose() {\n this.openCategories = false;\n }\n\n customTB(index: number, item: SelectItem) {\n return item.id;\n }\n\n onSelectItem(index: number) {\n this.unselectAll();\n const itemSelected: SelectItem = this.items[index];\n this.setCurrentItem(itemSelected);\n this.selectValue.emit(index);\n }\n\n onClickCallToAction() {\n this.clickOnCallToAction.emit(this.callToAction.value);\n }\n\n private getItemSelected():SelectItem {\n let itemSelected: SelectItem = null;\n this.items.forEach(item => {\n if (!item.selected) {\n return;\n }\n itemSelected = item;\n });\n return itemSelected;\n }\n\n private setCurrentItem(itemSelected: SelectItem) {\n if (!itemSelected) {\n return;\n }\n itemSelected.selected = true;\n this.currentLabel = itemSelected.name;\n this.currentLabelIcon = itemSelected.icon;\n }\n\n private unselectAll() {\n this.items.forEach(item => item.selected = false);\n }\n}\n","<div class=\"wac-select-in-text\" wzAutoHide (clickOutside)=\"onClose()\" [ngStyle]=\"{ 'max-width': maxWidth }\" [zIndexToggle]=\"openCategories\">\n <div class=\"wac-select-in-text__prepend\" [innerHTML]=\"preText\" *ngIf=\"preText\"></div>\n <div #current class=\"wac-select-in-text__current\" (click)=\"openCategories = !openCategories\">\n <span>{{ currentLabel }}</span>\n <div\n class=\"wac-select-in-text__content\"\n [ngClass]=\"{ hidden: !openCategories && !alwaysOpen, open: type === 'open' }\"\n [ngStyle]=\"{ 'max-width': maxWidthItems }\"\n >\n <ng-scrollbar *ngIf=\"items.length > 0\">\n <div class=\"wac-select-in-text__content__item\" *ngFor=\"let item of items; trackBy : customTB; let index = index;\">\n <div [ngClass]=\"{ selected: item.selected }\" (click)=\"onSelectItem(index)\">\n <span class=\"icon\" [innerHTML]=\"item.icon\" *ngIf=\"item.icon\"></span>{{ item.name }}\n </div>\n </div>\n </ng-scrollbar>\n </div>\n </div>\n <div class=\"wac-select-in-text__after\" [innerHTML]=\"postText\" *ngIf=\"postText\"></div>\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Component({\n standalone: false,\n selector: 'wac-multiple-search',\n templateUrl: './multiple-search.component.html'\n})\nexport class MultipleSearchComponent implements OnInit {\n @Input() options = [];\n @Input() alwaysOpen = false;\n label = '';\n placeholder = '';\n icon = '';\n query = '';\n search: any = '';\n openSelect = false;\n error = 'wac.simpleSearchComponent.error';\n showError = false;\n constructor(private translateService: TranslateService) {}\n\n ngOnInit(): void {\n this.setPlaceholder();\n this.setLabel();\n this.setQuery();\n this.setIcon();\n }\n\n setSearchValueToQuery(value) {\n if (value.code !== 'Enter') {\n this.search = encodeURI(value.target.value);\n } else {\n this.submitForm();\n }\n }\n\n submitForm() {\n if (this.search) {\n if (this.search.length > 0) {\n window.location.href = this.query.replace('{s}', this.search);\n } else {\n this.displayError();\n }\n } else {\n this.displayError();\n }\n }\n\n setPlaceholder(value?) {\n if (value) {\n this.placeholder = this.options[value].placeholder;\n } else {\n this.placeholder = this.options[0].placeholder;\n }\n }\n\n setLabel(value?) {\n if (value) {\n this.label = this.options[value].label;\n } else {\n this.label = this.options[0].label;\n }\n }\n\n setQuery(value?) {\n if (value) {\n this.query = this.options[value].queries;\n } else {\n this.query = this.options[0].queries;\n }\n }\n\n displayError() {\n this.showError = true;\n setTimeout(() => {\n this.hideError();\n }, 2000);\n }\n\n hideError() {\n this.showError = false;\n }\n\n setIcon(value?) {\n if (value) {\n this.icon = this.options[value].icon;\n } else {\n this.icon = this.options[0].icon;\n }\n }\n\n openFuncSelect() {\n this.openSelect = !this.openSelect;\n }\n\n closeSelect() {\n this.openSelect = false;\n }\n\n resetAllVue(value) {\n this.setPlaceholder(value);\n this.setLabel(value);\n this.setQuery(value);\n this.setIcon(value);\n this.search = '';\n this.closeSelect();\n }\n}\n","<div class=\"wac-multiple-search\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" [zIndexToggle]=\"openSelect\">\n <div class=\"wac-multiple-search__wrapper\">\n <div class=\"wac-multiple-search__wrapper__left\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" wzAutoHide (clickOutside)=\"closeSelect()\">\n <span>{{ label }}</span>\n <i class=\"fal fa-chevron-down\"></i>\n <div class=\"wac-multiple-search__wrapper__left__background\" (click)=\"openFuncSelect()\"></div>\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSelect || alwaysOpen\">\n <div\n class=\"wac-multiple-search__wrapper__left__select__item\"\n *ngFor=\"let option of options; let i = index\"\n [attr.data-index]=\"i\"\n (click)=\"resetAllVue(i); inputSearch.value = ''\"\n >\n <i [ngClass]=\"option.icon\"></i>\n <span>{{ option.label }}</span>\n <input type=\"hidden\" value=\"\" />\n </div>\n </div>\n </div>\n <div class=\"wac-multiple-search__wrapper__right\">\n <form [action]=\"query\" method=\"get\">\n <button type=\"submit\" (click)=\"submitForm()\"><i class=\"fal fa-search\"></i></button>\n <input #inputSearch type=\"text\" required [placeholder]=\"placeholder\" (keyup)=\"setSearchValueToQuery($event)\" />\n </form>\n </div>\n </div>\n <div class=\"wac-multiple-search__error\" *ngIf=\"showError\">{{ error | translate}}</div>\n</div>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { MultipleSearchPlusOption } from './shared/multiple-search-plus-option.model';\nimport { MultipleSearchPlusResults } from './shared/multiple-search-plus-results.model';\n\n@Component({\n standalone: false,\n selector: 'wac-multiple-search-plus',\n templateUrl: './multiple-search-plus.component.html'\n})\nexport class MultipleSearchPlusComponent implements OnInit {\n\n currentOption:number;\n label = '';\n placeholder = '';\n openSelect = false;\n openSearchResults = false;\n\n isLoading = true;\n\n @Input() options:MultipleSearchPlusOption[];\n @Input() searchResults:MultipleSearchPlusResults[];\n @Input() disabled: boolean | string = false;\n @Input() hideResults: boolean | string = false;\n\n @Output() searchValue = new EventEmitter();\n @Output() optionsChange = new EventEmitter();\n\n constructor() {}\n\n ngOnInit(): void {\n this.setCurrentOption();\n this.setPlaceholder();\n this.setLabel();\n }\n\n setSearchValue(value:any) {\n if(value.target.value != ''){\n this.openSearchResults = true;\n } else {\n this.openSearchResults = false;\n }\n this.searchValue.emit({ currentOption: this.options[this.currentOption].code, value: value.target.value });\n }\n\n setCurrentOption(value?:number) {\n this.currentOption = value || 0;\n }\n\n setPlaceholder(value?:number) {\n this.placeholder = value ? this.options[value].placeholder : this.options[0].placeholder;\n }\n\n setLabel(value?:number) {\n this.label = value ? this.options[value].label : this.options[0].label;\n }\n\n onToggleSelect() {\n this.openSelect = !this.openSelect;\n }\n\n closeSelect() {\n this.openSelect = false;\n }\n\n closeSearchResults() {\n this.openSearchResults = false;\n }\n\n resetAllVue(value:number) {\n this.searchResults = undefined;\n this.setCurrentOption(value);\n this.setPlaceholder(value);\n this.setLabel(value);\n this.openSearchResults = false;\n this.closeSelect();\n }\n\n addResult(index:number) {\n let alreadyExist = false;\n this.options[this.currentOption].table.forEach(elem => {\n if(elem.id == this.searchResults[index].id){\n alreadyExist = true;\n }\n });\n if(!alreadyExist) {\n this.options[this.currentOption].table.push(this.searchResults[index]);\n }\n this.resetAllVue(this.currentOption);\n this.optionsChange.emit({ currentOption: this.options[this.currentOption].code, action: 'add'});\n }\n\n deleteResult(indexItem:number, index:number) {\n this.options[index].table.splice(indexItem,1);\n this.optionsChange.emit({ currentOption: this.options[index].code, action: 'delete'});\n }\n}\n","<div class=\"wac-multiple-search-plus\" [zIndexToggle]=\"openSelect || openSearchResults\" [ngClass]=\"{ 'disabled': disabled }\">\n <!-- Multiple select with search input -->\n <div class=\"wac-multiple-search\" [ngClass]=\"{ open: openSelect }\">\n <div class=\"wac-multiple-search__wrapper\">\n <div class=\"wac-multiple-search__wrapper__left\" *ngIf=\"options.length > 1\" [ngClass]=\"{ open: openSelect }\" wzAutoHide (clickOutside)=\"closeSelect()\">\n <span>{{ label }}</span>\n <i class=\"fal fa-chevron-down\"></i>\n <div class=\"wac-multiple-search__wrapper__left__background\" (click)=\"onToggleSelect()\"></div>\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSelect\">\n <div\n class=\"wac-multiple-search__wrapper__left__select__item\"\n *ngFor=\"let option of options; let i = index\"\n [attr.data-index]=\"i\"\n (click)=\"resetAllVue(i); inputSearch.value = ''\"\n >\n <span>{{ option.label }}</span>\n <input type=\"hidden\" value=\"\" />\n </div>\n </div>\n </div>\n <div class=\"wac-multiple-search__wrapper__right\" wzAutoHide (clickOutside)=\"closeSearchResults()\">\n <button><i class=\"fal fa-search\"></i></button>\n <input\n #inputSearch\n type=\"text\"\n [placeholder]=\"placeholder\"\n debounceKeyUp\n [debounceTime]=\"500\"\n (onEventChange)=\"setSearchValue($event)\"\n />\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSearchResults\">\n <div\n class=\"wac-multiple-search__wrapper__left__select__item\"\n *ngFor=\"let res of searchResults; let i = index\"\n (click)=\"addResult(i); inputSearch.value = ''\"\n >\n <wac-image *ngIf=\"res.image\" [src]=\"res.image\"></wac-image>\n <wac-text>#{{ res.id }} {{ res.name }}</wac-text>\n </div>\n <div class=\"wac-table__body__loader\" *ngIf=\"isLoading && !searchResults\">\n <wac-loader [small]=\"true\"></wac-loader>\n </div>\n <div\n class=\"wac-multiple-search__wrapper__left__select__item\"\n *ngIf=\"!searchResults?.length\"\n >\n <span>{{'wac.datatable.noresult' | translate}}</span>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Results checked -->\n <div *ngFor=\"let option of options; let i = index\">\n <div class=\"wac-multiple-search-plus__wrapper\" *ngIf=\"option.table.length && !hideResults\">\n <wac-h3>{{ option.title }}</wac-h3>\n <div class=\"wac-multiple-search-plus__wrapper__block hover default\" *ngFor=\"let item of option.table; let indexItem = index\">\n <wac-image *ngIf=\"item.image\" [src]=\"item.image\"></wac-image>\n <wac-text>{{ item.name }}</wac-text>\n <span (click)=\"deleteResult(indexItem, i)\"><i class=\"fas fa-times\"></i></span>\n </div>\n </div>\n </div>\n</div>\n","import {Component, OnInit} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-label',\n templateUrl: './label.component.html',\n host: {\n 'class': 'wac-label'\n }\n})\nexport class LabelComponent implements OnInit {\n\n constructor() {}\n\n ngOnInit(): void {\n }\n\n}\n","<ng-content></ng-content>","import { Component, ContentChild, ViewEncapsulation } from '@angular/core';\nimport { LabelComponent } from '../../common/label/label.component';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wac-input-with-select',\n templateUrl: './input-with-select.component.html',\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CommonModule]\n})\nexport class InputWithSelectComponent {\n @ContentChild(LabelComponent) label: LabelComponent;\n}\n","<p *ngIf=\"!!label\" class=\"wac-select__label\">\n <ng-content select=\"wac-label, .wac-label\" ></ng-content>\n</p>\n\n<div class=\"wac-input-with-select\">\n <div class=\"wac-input-with-select__wrapper\">\n <div class=\"wac-input-with-select__wrapper__left\">\n <ng-content select=\"input\"></ng-content>\n <ng-content select=\"wac-select\"></ng-content>\n </div>\n <div class=\"wac-input-with-select__wrapper__right\">\n <ng-content select=\"[text]\"></ng-content>\n </div>\n </div>\n</div>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { DomService } from '../../services/dom.service';\n\n@Component({\n standalone: false,\n selector: 'wac-popin',\n templateUrl: './popin.component.html'\n})\nexport class PopinComponent implements OnInit {\n @Input()\n title: string;\n\n @Input()\n content: string;\n\n @Input()\n imgSrc: string;\n\n @Input()\n okButtonLabel: string;\n\n @Input()\n koButtonLabel: string;\n\n @Input()\n okButtonClass: string;\n\n @Input()\n koButtonClass: string;\n\n @Input()\n visible = false;\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Output()\n response = new EventEmitter();\n\n @Input()\n background = true;\n\n @Input()\n closeOnBackgroundClick: boolean = true;\n\n firstOpen = false;\n\n constructor(private domService: DomService) { }\n\n ngOnInit() {\n this.domService.setDocumentEventListener();\n }\n\n validatePopin() {\n this.response.emit(true);\n this.closePopin();\n }\n\n refusePopin(){\n this.response.emit(false);\n this.closePopin();\n }\n\n closePopin(clickOnBackground: boolean = false) {\n if (!this.closeOnBackgroundClick && clickOnBackground) {\n return;\n }\n if (!this.firstOpen){ //trick for auto-hide directive that close immediatly the pop-in\n this.visible = false;\n this.visibleChange.emit(this.visible);\n this.firstOpen = true;\n } else {\n this.firstOpen = false;\n }\n }\n}\n","<div class=\"wac-free\" *ngIf=\"visible\">\n <div class=\"wac-free__wrapper\" wzAutoHide (clickOutside)=\"closePopin(true)\">\n <a class=\"wac-free__wrapper__button-close\" (click)=\"closePopin()\">\n <i class=\"fas fa-times\"></i>\n </a>\n <div class=\"wac-free__wrapper__content\">\n <ng-scrollbar>\n <img *ngIf=\"imgSrc\" [src]=\"imgSrc\" alt=\"barre admin\" />\n\n <h2 class=\"wac-popin__wrapper__title\" [innerHTML]=\"title\"></h2>\n\n <p class=\"wac-popin__wrapper__text\" [innerHTML]=\"content\"></p>\n </ng-scrollbar>\n </div>\n <div class=\"wac-free__wrapper__buttons\">\n <div class=\"wac-free__wrapper__buttons__button\" *ngIf=\"okButtonLabel\">\n <wac-button [extraClasses]=\"'is-success'\" [label]=\"okButtonLabel\" [hasLoader]=\"true\" (click)=\"validatePopin()\"></wac-button>\n </div>\n <div class=\"wac-free__wrapper__buttons__button\" *ngIf=\"koButtonLabel\">\n <wac-button [extraClasses]=\"'is-danger is-outlined'\" [label]=\"koButtonLabel\" [hasLoader]=\"true\" (click)=\"refusePopin()\"></wac-button>\n </div>\n </div>\n </div>\n <div class=\"wac-free__background\" *ngIf=\"background\"></div>\n</div>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { DomService } from '../../services/dom.service';\n\n@Component({\n standalone: false,\n selector: 'wac-free-popin',\n templateUrl: './free-popin.component.html'\n})\nexport class FreePopinComponent implements OnInit {\n @Input()\n okButtonLabel: string;\n\n @Input()\n koButtonLabel: string;\n\n @Input()\n visible = false;\n\n @Input()\n disableCloseOutside = false;\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Output()\n response = new EventEmitter();\n\n @Input()\n background = true;\n\n @Input()\n zIndex: number = 9999;\n\n firstOpen = true;\n\n constructor(private domService: DomService) { }\n\n ngOnInit() {\n if (this.visible) {\n this.firstOpen = false;\n }\n this.domService.setDocumentEventListener();\n }\n\n validatePopin() {\n this.response.emit(true);\n this.closePopin();\n }\n\n refusePopin(){\n this.response.emit(false);\n this.closePopin();\n }\n\n closePopin() {\n if (!this.firstOpen || this.disableCloseOutside) {\n this.visible = false;\n this.visibleChange.emit(this.visible);\n this.firstOpen = true;\n } else {\n this.firstOpen = false;\n }\n }\n}\n","<div class=\"wac-free-popin\" *ngIf=\"visible\" [ngStyle]=\"{'z-index': zIndex}\">\n <div class=\"wac-free-popin__wrapper\" wzAutoHide (clickOutside)=\"!disableCloseOutside ? closePopin() : ''\">\n <a class=\"wac-free-popin__wrapper__button-close\" (click)=\"closePopin()\">\n <i class=\"fas fa-times\"></i>\n </a>\n <div class=\"wac-free-popin__wrapper__content\">\n <ng-scrollbar>\n <ng-content></ng-content>\n </ng-scrollbar>\n </div>\n <div class=\"wac-free-popin__wrapper__buttons\">\n <div class=\"wac-free-popin__wrapper__buttons__button\" *ngIf=\"okButtonLabel\">\n <wac-button [extraClasses]=\"'is-success'\" [label]=\"okButtonLabel\" [hasLoader]=\"true\" (click)=\"validatePopin()\"></wac-button>\n </div>\n <div class=\"wac-free-popin__wrapper__buttons__button\" *ngIf=\"koButtonLabel\">\n <wac-button [extraClasses]=\"'is-danger is-outlined'\" [label]=\"koButtonLabel\" [hasLoader]=\"true\" (click)=\"refusePopin()\"></wac-button>\n </div>\n </div>\n </div>\n <div class=\"wac-free-popin__background\" *ngIf=\"background\"></div>\n</div>\n","import { Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'wac-block-separator',\n template: ``,\n encapsulation: ViewEncapsulation.None,\n standalone: true\n})\n\nexport class BlockSeparatorComponent {\n\n constructor() { }\n\n}","import { CommonModule } from '@angular/common';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, ContentChildren, ElementRef, HostBinding, Input, QueryList, Renderer2, ViewEncapsulation } from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { BlockSeparatorComponent } from './separator/block-separator.component';\n\nexport type WacBlockConfig = Readonly<{\n borderRadius?: string;\n}>;\n\n@Component({\n selector: 'wac-block',\n templateUrl: './block.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [CommonModule]\n})\nexport class BlockComponent implements AfterViewInit {\n\n // todo optimize render, add a call by default remove at the end, and add block in correct order, use debugger to help\n\n @ContentChildren(BlockSeparatorComponent) blockSeparators: QueryList<BlockSeparatorComponent>;\n\n @Input()\n config: WacBlockConfig = {\n borderRadius: '3px'\n }\n\n @HostBinding('style') get borderRadius() {\n return `--wac-block-border-radius: ${this.config.borderRadius ? this.config.borderRadius : '3px'};`;\n }\n\n destroy$ = new Subject<void>();\n\n constructor(\n private renderer2: Renderer2,\n private wacBlockElementRef: ElementRef\n ) {}\n\n ngAfterViewInit() {\n const groupedNodesList = this.getSeparatedGroupedOfNodes(this.wacBlockElementRef.nativeElement.childNodes);\n this.attachSeparatedBlocksToTheDom(groupedNodesList, this.wacBlockElementRef.nativeElement);\n\n this.blockSeparators\n .changes.pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.handleAddedSeparator();\n setTimeout(() => { // wait next render, because, Angular will remove child separator after this function is called\n this.handleRemovedSeparator();\n }, 0);\n\n });\n }\n\n private handleRemovedSeparator() {\n const wacBlockComponentChildNodes = this.wacBlockElementRef.nativeElement.childNodes;\n for (let i = 0; i < wacBlockComponentChildNodes.length; i++) {\n\n const childNode = wacBlockComponentChildNodes[i];\n const nextChild = wacBlockComponentChildNodes[i + 1];\n const areWacBlockSideBySide = nextChild && childNode.classList.contains('wac-block') && nextChild.classList.contains('wac-block');\n\n if (!areWacBlockSideBySide) {\n continue;\n }\n\n const parentElement = this.wacBlockElementRef.nativeElement;\n this.fusionNextBlockWithCurrentBlock(parentElement, nextChild, childNode);\n i--; // we remove a child, so we need to go back to the previous index\n\n }\n }\n\n private fusionNextBlockWithCurrentBlock(parentElement: any, nextChild: any, childNode: any) {\n parentElement.removeChild(nextChild); // not working with renderer2, it just freeze the app\n childNode.append(...nextChild.childNodes);\n }\n\n private handleAddedSeparator() {\n const wacBlockComponentChildNodes = [...this.wacBlockElementRef.nativeElement.childNodes];\n\n for (let i = 0; i < wacBlockComponentChildNodes.length; i++) {\n const childNode = wacBlockComponentChildNodes[i];\n if (childNode.nodeName === 'WAC-BLOCK-SEPARATOR') {\n continue;\n }\n if (!this.hasBlockSeparator(childNode.childNodes)) {\n continue;\n }\n\n const groupedNodesList = this.getSeparatedGroupedOfNodes(childNode.childNodes);\n groupedNodesList.shift(); // remove first group, it's the current block\n\n this.attachSeparatedBlocksToTheDom(groupedNodesList, this.wacBlockElementRef.nativeElement, wacBlockComponentChildNodes[i + 1]);\n }\n }\n\n private hasBlockSeparator(childNodes: any) {\n return [...childNodes].some(groupedNodes => groupedNodes?.nodeName === 'WAC-BLOCK-SEPARATOR');\n }\n\n private attachSeparatedBlocksToTheDom(groupedNodesList: any[], parentElement: any, nextElement?: any) {\n for (let index = 0; index < groupedNodesList.length; index++) {\n const groupedNodes = groupedNodesList[index];\n\n if (groupedNodes[0]?.nodeName === 'WAC-BLOCK-SEPARATOR') {\n this.attachToTheDom(groupedNodes[0], parentElement, nextElement);\n\n continue;\n }\n const separatedWacBlock = document.createElement('div');\n separatedWacBlock.classList.add('wac-block');\n groupedNodes.forEach(node => {\n separatedWacBlock.appendChild(node);\n });\n this.attachToTheDom(separatedWacBlock, parentElement, nextElement);\n }\n }\n\n private attachToTheDom(child:any, parentElement:any, nextElement?:any) {\n if (nextElement) {\n this.renderer2.insertBefore(parentElement, child, nextElement, true);\n } else {\n this.renderer2.appendChild(parentElement, child);\n }\n }\n\n\n private getSeparatedGroupedOfNodes(childNodes: any) {\n const groupedNodesList = [];\n let followingNodes = [];\n\n for (const node of childNodes) {\n\n if (node.nodeName === 'WAC-BLOCK-SEPARATOR') {\n groupedNodesList.push(followingNodes, [node]); // close a group and start a new one\n followingNodes = [];\n continue;\n }\n\n followingNodes.push(node);\n\n }\n\n if (followingNodes.length) {\n groupedNodesList.push(followingNodes);\n }\n return groupedNodesList;\n }\n\n ngOnDesTroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n}\n\n","<ng-content></ng-content>","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-wrapper',\n templateUrl: './wrapper.component.html'\n})\nexport class WrapperComponent implements OnInit {\n @Input()\n size = 'fullsize';\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<div class=\"wac-wrapper\" [ngClass]=\"{ fullsize: size === 'fullsize', 'max-width': size === 'max-width' }\">\n <ng-content></ng-content>\n</div>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { FilterItem } from './filter-item.dto';\n\n@Component({\n standalone: false,\n selector: 'wac-filters',\n templateUrl: './filters.component.html'\n})\nexport class FiltersComponent implements OnInit {\n\n @Input()\n options: FilterItem[];\n\n @Input()\n labelRestart: string = 'Afficher toutes les catégories';\n\n @Output()\n filterChange = new EventEmitter<number>();\n\n filterActiveIndex?: string;\n\n constructor() {}\n\n ngOnInit(): void {\n this.options.forEach((item, index) => {\n\n if (item.active) {\n this.filterActiveIndex = '' + index;\n }\n });\n\n }\n\n activeFilter(index: number) {\n this.options[index].active = true;\n this.filterActiveIndex = '' + index;\n this.filterChange.emit(index);\n }\n\n resetFilter() {\n this.options.forEach((item) => {\n item.active = false;\n });\n this.filterActiveIndex = null;\n this.filterChange.emit(-1);\n }\n}\n","<div class=\"wac-filters\">\n <div class=\"wac-filters__wrapper\" *ngIf=\"!filterActiveIndex\">\n <button *ngFor=\"let option of options; let i = index\">\n <span class=\"event\" (click)=\"activeFilter(i)\"></span><span [innerHTML]=\"option.name\"></span>\n </button>\n </div>\n <div class=\"wac-filters__wrapper\" *ngIf=\"filterActiveIndex\">\n <button (click)=\"resetFilter()\" class=\"active\">\n <i class=\"fas fa-times\"></i><span [innerHTML]=\"options[filterActiveIndex].name\"></span>\n </button>\n <span (click)=\"resetFilter()\">{{ labelRestart }}</span>\n </div>\n</div>\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-wrapper-blocs',\n templateUrl: './wrapper-blocs.component.html'\n})\nexport class WrapperBlocsComponent implements OnInit {\n @Input()\n sidebar = false;\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","<div class=\"wac-wrapper-blocs\" [ngClass]=\"{'sidebar': sidebar}\">\n <ng-content></ng-content>\n</div>\n","import { Component, Input, OnInit, Output, ViewEncapsulation, EventEmitter } from '@angular/core';\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wac-snackbar',\n templateUrl: './snackbar.component.html',\n encapsulation: ViewEncapsulation.None,\n animations: [\n trigger('state', [\n state(\n 'void',\n style({\n bottom: '-100px'\n })\n ),\n state(\n 'inactive',\n style({\n bottom: '-100px'\n })\n ),\n state(\n 'active',\n style({\n bottom: '0px'\n })\n ),\n transition('void => active', animate(300)),\n transition('active => inactive', animate(300))\n ])\n ],\n standalone: true,\n imports: [CommonModule]\n})\nexport class SnackbarComponent implements OnInit {\n\n @Input() message: string;\n @Input() textButtonOk?: string;\n @Input() textButtonKo?: string;\n @Input() duration?: number;\n @Input() color?: string;\n @Input() buttonColor?: string;\n\n @Input() visible = false;\n @Output() visibleChange = new EventEmitter();\n\n @Output() response = new EventEmitter();\n\n private manualClose = false;\n\n private timer: any;\n\n ngOnInit() {\n if (this.duration > 0) {\n this.timer = setTimeout(() => this.manualClose = true, this.duration);\n }\n }\n\n validate(){\n this.response.emit(true);\n this.closeSnackbar();\n this.manualClose = true;\n }\n\n refuse(){\n this.response.emit(false);\n this.closeSnackbar();\n this.manualClose = true;\n }\n\n closeSnackbar(){\n this.visible = false;\n this.visibleChange.emit(this.visible);\n }\n\n}\n","<div class=\"wac-snackbar\">\n <div [class]=\"'notification is-active ' + ((color) ? color : 'is-transparent')\"\n [@state]=\"visible ? 'active': 'inactive'\"\n >\n <div class=\"columns\">\n <div class=\"column notification--message\" [ngClass]=\"{'is-half': textButtonOk}\"\n [innerHTML]=\"message\">\n </div>\n <div class=\"column is-half\">\n <button [class]=\"'button ' + ((buttonColor) ? buttonColor : 'is-success')\"\n (click)=\"validate()\">{{textButtonOk}}\n </button>\n <button [class]=\"'button ' + ((buttonColor) ? buttonColor : 'is-success')\"\n (click)=\"refuse()\">{{textButtonKo}}\n </button>\n </div>\n </div>\n </div>\n</div>\n","import { Observable, Subject } from 'rxjs';\nimport { AlertPopupConfig } from './alert-popup.service';\nimport {AfterViewInit, Component, OnInit, ViewEncapsulation} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-alert-popup',\n templateUrl: './alert-popup.component.html',\n host: {\n class: 'wac-alert-popup'\n },\n encapsulation: ViewEncapsulation.None\n})\nexport class AlertPopupComponent implements AfterViewInit {\n config: AlertPopupConfig;\n\n /** Subject for notifying the user that the dialog has finished closing. */\n private afterClosedPopup: Subject<any> = new Subject();\n\n open = false;\n\n private timer: any;\n\n ngAfterViewInit() {\n setTimeout(() => {\n this.open = true;\n }, 50);\n\n if (this.config.duration > 0) {\n this.timer = setTimeout(() => this.dismiss(), this.config.duration);\n }\n }\n\n dismiss() {\n this.open = false;\n\n setTimeout(() => {\n this.afterClosedPopup.next(true);\n this.afterClosedPopup.complete();\n }, 200);\n }\n\n /**\n * Gets an observable that is notified when the dialog is finished closing.\n */\n afterClosed(): Observable<any> {\n return this.afterClosedPopup.asObservable();\n }\n}\n","<div\n [class]=\"'alert ' + ((config.color) ? config.color : ' is-primary') + ((config.extraClasses) ? ' ' + config.extraClasses : '') + ((config.position) ? ' ' + config.position : '') + ((config.fullsize) ? ' fullsize' : '') + ((config.opacity) ? ' opacity-active' : '') + ((config.small) ? ' small' : '') + ((config.icon) ? ' with-icon' : '') + ((config.duration) ? '' : ' no-duration')\"\n [ngClass]=\"{'is-active': open, 'has-close': config.closeButton}\"\n>\n <div class=\"alert--message\">\n <span class=\"icon\" *ngIf=\"config.icon\">\n <i [class]=\"config.icon\"></i>\n </span>\n <span (click)=\"dismiss()\" class=\"wac-alert-popup__close\" *ngIf=\"!config.small || (config.small && config.closeButton)\"><i class=\"far fa-times\"></i></span>\n <p *ngIf=\"config.title\" class=\"wac-alert-popup__title\" [innerHTML]=\"config.title\"></p>\n <p *ngIf=\"config.message\" class=\"wac-alert-popup__text\" [innerHTML]=\"config.message\"></p>\n </div>\n</div>\n","import { Injectable } from '@angular/core';\nimport { AlertPopupComponent } from './alert-popup.component';\nimport {DomService} from '../../services/dom.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AlertPopupService {\n constructor(private domService: DomService) {}\n\n open(config: AlertPopupConfig): AlertPopupComponent {\n const componentRef = this.getComponentRef(config);\n\n return componentRef.instance;\n }\n\n private getComponentRef(config: AlertPopupConfig) {\n const componentRef = this.domService.attachComponentPortal(AlertPopupComponent);\n\n config = Object.assign(\n {\n position: 'is-top'\n },\n config\n );\n\n componentRef.instance.config = config;\n\n componentRef.instance.afterClosed().subscribe(() => {\n componentRef.destroy();\n });\n\n return componentRef;\n }\n}\n\nexport interface AlertPopupConfig {\n message: string;\n title?: string;\n icon?: string;\n color?: string;\n position?: string;\n duration?: number;\n extraClasses?: string;\n fullsize?: boolean;\n opacity?: boolean;\n small?: boolean;\n closeButton?: boolean;\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AlertPopupService } from './alert-popup.service';\nimport { AlertPopupComponent } from './alert-popup.component';\n\n@NgModule({\n imports: [CommonModule],\n providers: [AlertPopupService],\n declarations: [AlertPopupComponent],\n exports: [AlertPopupComponent]\n})\nexport class AlertPopupModule {}\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {SearchOption} from './shared/search-option.model';\nimport {SelectItem} from '../select/select-items.dto';\n\n@Component({\n standalone: false,\n selector: 'wac-search',\n templateUrl: './search.component.html'\n})\nexport class SearchComponent implements OnInit {\n\n @Input() placeholder: string;\n @Input() alwaysOpen = false;\n @Input() label: string;\n @Input() options: SearchOption[];\n @Input() disableSearchIn = false;\n @Input() emptyResult = '';\n search: any = '';\n openSelect = false;\n triggerOptions: SearchOption[];\n @Output() selectValue = new EventEmitter<number>();\n @Output() searchKeyUp = new EventEmitter<string>();\n @Output() searchFocusOut = new EventEmitter<string>();\n constructor() {}\n\n ngOnInit() {\n this.triggerOptions = this.options;\n }\n\n onClose() {\n this.openSelect = false;\n }\n\n setSearchValueToQuery(value) {\n this.search = value.target.value;\n if (this.disableSearchIn) {\n this.triggerOptions = this.options;\n } else {\n if (this.search.length > 0) {\n this.openSelect = true;\n this.triggerOptions = this.options.filter(element => element.label.toLowerCase().indexOf(this.search.toLowerCase()) !== -1);\n } else {\n this.triggerOptions = this.options;\n }\n }\n this.searchKeyUp.emit(this.search);\n }\n\n sendEventFocusOut() {\n this.searchFocusOut.emit(this.search);\n }\n\n closeSelect() {\n this.openSelect = false;\n }\n\n onSelectItem(index: number, value: number, label: string) {\n this.search = '';\n this.openSelect = false;\n if (this.disableSearchIn) {\n this.selectValue.emit(index);\n } else {\n const findInOption = this.options.findIndex(element => element.label === label && element.id === value);\n this.selectValue.emit(findInOption);\n }\n }\n\n resetAllVue() {\n this.search = '';\n this.closeSelect();\n }\n\n}\n","<div class=\"wac-search\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" [zIndexToggle]=\"openSelect\" wzAutoHide (clickOutside)=\"closeSelect()\">\n <div class=\"wac-search__wrapper\">\n <button><i class=\"fal fa-search\"></i></button>\n <input [value]=\"search\" type=\"text\" required [placeholder]=\"placeholder\" (focus)=\"openSelect = true;\" (focusout)=\"sendEventFocusOut()\" (keyup)=\"setSearchValueToQuery($event)\" />\n </div>\n <div class=\"wac-search__absolute\" *ngIf=\"triggerOptions\" [ngClass]=\"{'hidden': !openSelect}\">\n <ng-scrollbar *ngIf=\"triggerOptions.length > 0\">\n <div (click)=\"onClose()\" class=\"wac-select__content__item\" *ngFor=\"let item of triggerOptions; let index = index;\">\n <div [ngClass]=\"{ selected: item.checked }\" (click)=\"onSelectItem(index, item.id, item.label)\">\n {{ item.label }}\n </div>\n </div>\n </ng-scrollbar>\n <div class=\"wac-select__content__empty\" *ngIf=\"triggerOptions.length === 0\">\n <span *ngIf=\"emptyResult\">{{emptyResult}}</span>\n </div>\n </div>\n</div>\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SelectedListOption } from '../../components/selected-list/shared/selected-list-option.model';\n\n@Pipe({\n standalone: false,\n name: 'areAllOptionsSelected',\n pure: false\n})\n\nexport class AreAllOptionsSelectedPipe implements PipeTransform {\n transform(options: SelectedListOption[]): boolean {\n return !options.some(option => !option.checked);\n }\n}","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {SelectedListOption} from './shared/selected-list-option.model';\n\n@Component({\n standalone: false,\n selector: 'wac-selected-list',\n templateUrl: './selected-list.component.html',\n})\nexport class SelectedListComponent implements OnInit {\n\n @Input() options: SelectedListOption[] = [];\n @Input() label: string;\n @Input() textSelectAll: string;\n @Input() textUnSelectAll: string;\n @Input() enableSelectAll = true;\n @Output() selectedItemsIndex = new EventEmitter<number>();\n @Output() selectedItemsAll = new EventEmitter<number[]>();\n @Output() unSelectedItemsAll = new EventEmitter<number[]>();\n\n selectedOptionIndex = [];\n\n ngOnInit() {\n }\n\n onSelectAll() {\n this.selectedOptionIndex = this.options.map((option, index) => {\n option.checked = true;\n return index;\n });\n this.selectedItemsAll.emit(this.selectedOptionIndex);\n }\n\n onUnSelectAll() {\n this.selectedOptionIndex = this.options.map((option, index) => {\n option.checked = false;\n return index;\n });\n this.unSelectedItemsAll.emit(this.selectedOptionIndex);\n }\n\n onSelectItem(index: number) {\n this.options[index].checked = !this.options[index].checked;\n this.selectedItemsIndex.emit(index);\n }\n\n areAllOptionsChecked() {\n return !this.options.some(option => !option.checked);\n }\n\n}\n","<div class=\"selected-list\">\n <div class=\"selected-list__wrapper\">\n <div class=\"selected-list__wrapper__head\">\n <p *ngIf=\"label\" [innerHTML]=\"label\"></p>\n <ng-container *ngVar=\"(options | areAllOptionsSelected) as areAllOptionsSelected\">\n <ng-container *ngIf=\"textSelectAll && !areAllOptionsSelected\">\n\n <div class=\"selected-list__wrapper__head__button\">\n\n <div class=\"selected-list__wrapper__head__button__notMobile\">\n <wac-button\n [label]=\"textSelectAll\"\n (click)=\"onSelectAll()\"\n >\n </wac-button>\n </div>\n\n <div class=\"selected-list__wrapper__head__button__mobile\">\n <wac-button\n [extraClasses]=\"'is-grey'\"\n [icon]=\"'fad fa-check-double'\"\n (click)=\"onSelectAll()\"\n >\n </wac-button>\n </div>\n\n </div>\n\n </ng-container>\n\n <ng-container *ngIf=\"textUnSelectAll && areAllOptionsSelected\">\n\n <div class=\"selected-list__wrapper__head__button\">\n\n <div class=\"selected-list__wrapper__head__button__notMobile\">\n <wac-button\n [extraClasses]=\"'is-info'\"\n [label]=\"textUnSelectAll\"\n (click)=\"onUnSelectAll()\"\n >\n </wac-button>\n </div>\n\n <div class=\"selected-list__wrapper__head__button__mobile\">\n <wac-button\n [extraClasses]=\"'is-grey'\"\n [icon]=\"'fad fa-check-double'\"\n (click)=\"onUnSelectAll()\"\n >\n </wac-button>\n </div>\n\n </div>\n\n </ng-container>\n\n </ng-container>\n\n </div>\n <div class=\"selected-list__wrapper__content\">\n <div class=\"selected-list__wrapper__content__item\" *ngFor=\"let item of options;let i = index;\" [ngClass]=\"{'active': item.checked}\" (click)=\"onSelectItem(i)\">\n <span [innerHTML]=\"item.label\"></span>\n <i class=\"fas fa-check\"></i>\n </div>\n </div>\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component, Input, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { RecursifDto } from './tree.dto';\n\n@Component({\n standalone: false,\n selector: 'wac-tree',\n templateUrl: 'tree.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\n\nexport class TreeComponent<Tree extends RecursifDto<Tree>> {\n\n // https://indepth.dev/posts/1405/ngtemplateoutlet\n\n constructor() { }\n /**\n *! items sould include RecursifDto interface\n */\n @Input() items: Tree[];\n @Input() treeDepth:number = 0;\n @Input() optionTemplate: TemplateRef<any>;\n @Input() trackByFn: (index: number, item: Tree) => any = (index, item) => item;\n\n}","<ul [ngClass]=\"['treeDepth-' + treeDepth]\">\n <li *ngFor=\"let item of items; let index = index; trackBy: trackByFn\">\n\n <ng-template #defaultItem>\n {{ item?.treeLabel }}\n </ng-template>\n\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate || defaultItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item, index: index }\"\n >\n </ng-container>\n\n <wac-tree [optionTemplate]=\"optionTemplate\" [items]=\"item.treeChildren\" *ngIf=\"item.treeChildren?.length\" [treeDepth]=\"treeDepth + 1\"></wac-tree>\n </li>\n</ul>","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: false,\n name: 'formatObjectToRecursifTree'\n})\n\nexport class FormatObjectToRecursifTreePipe implements PipeTransform {\n\n childrenProperties: string[] = [];\n\n transform(objectList:any[], childrenProperties: string[]): any {\n this.childrenProperties = childrenProperties;\n const treeDepth = 0;\n\n objectList.forEach(object => this.recursiveFormatObjectToRecursifTree(object, treeDepth));\n\n return objectList;\n }\n\n private recursiveFormatObjectToRecursifTree(object: any, treeDepth:number): any {\n for (const childrenProperty of this.childrenProperties) {\n\n object.hasTreeChildren = true;\n\n if (!object.hasOwnProperty(childrenProperty)) {\n // No more chrildren\n object.hasTreeChildren = false;\n continue;\n }\n\n if (!Array.isArray(object[childrenProperty])) {\n throw `Property : \"${childrenProperty}\", is not an array. it could not be transform to a recursive list.`;\n }\n // Add treeChildren property filled with name children property\n object.treeChildren = object[childrenProperty];\n // call this function recursively until no children can be generated\n this.recursiveFormatObjectToRecursifTree(object.treeChildren, treeDepth++);\n break;\n }\n\n object.treeDepth = treeDepth;\n }\n}","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: false,\n name: 'formatObjectToSimpleTree'\n})\n\nexport class FormatObjectToSimpleTreePipe implements PipeTransform {\n\n private childrenProperties: string[] = [];\n private labelProperties: string[] = [];\n\n transform(objectList:any[], childrenProperties: string[], labelProperties: string[]): any {\n\n this.childrenProperties = childrenProperties;\n this.labelProperties = labelProperties;\n const treeDepth = 0;\n\n objectList.forEach(object => this.recursiveFormatObjectToSimpleTree(object, treeDepth));\n\n return objectList;\n }\n\n private recursiveFormatObjectToSimpleTree(object: any, treeDepth:number): any {\n for (const property in object) {\n\n if (!Object.prototype.hasOwnProperty.call(object, property)) {\n continue;\n }\n\n if (this.labelProperties.includes(property)) {\n object.treeLabel = object[property];\n continue;\n }\n\n object.hasTreeChildren = true;\n\n if (!this.childrenProperties.includes(property)) {\n // No more chrildren\n object.hasTreeChildren = false;\n continue;\n }\n\n if (!Array.isArray(object[property])) {\n throw `Property : \"${property}\", is not an array. it could not be transform to a recursive list.`;\n }\n // Add treeChildren property filled with name children property\n object.treeChildren = object[property];\n // call this function recursively until no children can be generated\n this.recursiveFormatObjectToSimpleTree(object.treeChildren, treeDepth++);\n break;\n }\n }\n}","import { Pipe, PipeTransform } from '@angular/core';\nimport { SelectItem } from '../../components/select/select-items.dto';\n\n@Pipe({\n standalone: false,\n name: 'selectFilters'\n})\n\nexport class SelectFiltersPipe implements PipeTransform {\n transform(items: SelectItem[], filterName: string): any {\n return items.filter(item => {\n const regexp = new RegExp(filterName, 'i');\n return regexp.test(item.name);\n });\n }\n}","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n standalone: false,\n name: 'filterOptions'\n})\n\nexport class FilterOptionsPipe implements PipeTransform {\n\n transform(options: any[], searchValue: string, ...args: string[]): any {\n const regexp = new RegExp(searchValue, 'i');\n\n return options.filter(option => {\n return args.some(arg => regexp.test(option[arg]));\n });\n }\n}","import { Pipe, PipeTransform } from '@angular/core';\nimport { OptionField, OptionItem } from '../components/inputs/input-with-select/option-item.dto';\n\n@Pipe({\n standalone: false,\n name: 'wacFindOptionSelectedField'\n})\nexport class FindOptionSelectedPipe implements PipeTransform {\n transform(options: Readonly<OptionItem[]>, field: OptionField | OptionField[]): Partial<OptionItem> | Partial<OptionItem>[] | string {\n\n const isFieldArray = Array.isArray(field);\n\n if (!options) {\n return isFieldArray ? [] : '';\n }\n\n const optionSelected = options.find((item) => item.active);\n\n if (!optionSelected) {\n return isFieldArray ? [] : '';\n }\n\n if (isFieldArray) {\n return field.reduce((acc, curr) => {\n return acc[curr];\n }, optionSelected);\n }\n\n return optionSelected[field];\n\n }\n}","import { Pipe, PipeTransform } from '@angular/core';\n\n/**\n * Typed mapping function.\n */\nexport type Mapper<T, G> = (item: T, ...args: any[]) => G;\n\n@Pipe({\n name: 'wacFn',\n standalone: true,\n})\nexport class CallComponentFunctionPipe implements PipeTransform {\n /**\n * Maps object to an arbitrary result through a plan-name function\n *\n * @param value an item to transform\n * @param mapper a mapping function\n * @param args arbitrary number of additional arguments\n */\n transform<T, G>(value: T, mapper: Mapper<T, G>, ...args: any[]): G {\n return mapper(value, ...args);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { FormatObjectToRecursifTreePipe } from './tree/format-object-to-recursif-tree.pipe';\nimport { FormatObjectToSimpleTreePipe } from './tree/format-object-to-simple-tree.pipe';\nimport { SelectFiltersPipe } from './select/select-filters.pipe';\nimport { AreAllOptionsSelectedPipe } from './selected-list/are-all-options-selected.pipe';\nimport { FilterOptionsPipe } from './select/filter-options.pipe';\nimport { FindOptionSelectedPipe } from './find-option-selected-field.pipe';\nimport { CallComponentFunctionPipe } from './call-component-function.pipe';\n\nconst exportedPipes = [\n FormatObjectToRecursifTreePipe,\n FormatObjectToSimpleTreePipe,\n FilterOptionsPipe,\n FindOptionSelectedPipe\n];\n\nconst pipes = [\n SelectFiltersPipe,\n AreAllOptionsSelectedPipe\n]\n\n@NgModule({\n imports: [CommonModule, FormsModule, CallComponentFunctionPipe],\n declarations: [...exportedPipes, ...pipes],\n exports: [...exportedPipes, ...pipes, CallComponentFunctionPipe]\n})\nexport class SharedPipes {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SharedPipes } from '../../pipes/shared-pipes.module';\nimport { TreeComponent } from './tree.component';\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n SharedPipes\n ],\n exports: [TreeComponent],\n declarations: [TreeComponent],\n providers: [],\n})\nexport class TreeModule { }\n","export const uuid = () => {\n if (typeof window !== \"undefined\" && typeof window.crypto.randomUUID === \"function\") {\n return window.crypto.randomUUID();\n }\n // https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues\n return window.crypto.getRandomValues(new Uint32Array(5)).join(\"-\");\n};","import {ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, ViewChild, ViewEncapsulation} from '@angular/core';\nimport { uuid } from '../../../utils/uuid';\nimport { OPTION_SELECTION_HANDLER } from './option-selection-handler.token';\nimport { SelectOptionDirective } from './select-option.directive';\n\n@Component({\n standalone: false,\n selector: 'wac-option',\n templateUrl: './option.component.html',\n encapsulation: ViewEncapsulation.None,\n providers: [{ provide: OPTION_SELECTION_HANDLER, useExisting: OptionComponent }],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class OptionComponent<TOptionValue> extends SelectOptionDirective<TOptionValue> {\n\n @ViewChild('contentWrapper') contentOption: ElementRef;\n\n checkBoxId = `wac-option-${uuid()}`;\n\n constructor(protected contentRef: ElementRef, protected changeDetectorRef: ChangeDetectorRef) {\n super(contentRef, changeDetectorRef);\n }\n\n override getContentRef(): ElementRef<any> {\n return this.contentOption;\n }\n}\n","<div\n [ngClass]=\"{ 'disabled': disabled }\"\n class=\"wac-option\"\n >\n <div [ngClass]=\"{ 'selected': !disabled && selected, 'disabled': disabled }\" #contentWrapper>\n <wac-checkbox *ngIf=\"multiple\" [id]=\"checkBoxId\" [value]=\"selected\"></wac-checkbox>\n <ng-content></ng-content>\n </div>\n</div>","import { Component, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-option-group',\n templateUrl: './option-group.component.html',\n styleUrls: ['./option-group.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class OptionGroupComponent {\n @Input() title: string;\n}","<div class=\"wac-option-group\">\n <div class=\"wac-option-group__title\">{{ title }}</div>\n <div class=\"wac-option-group__content\">\n <ng-content select=\"wac-option, option, .option, [selectOption]\"></ng-content>\n </div>\n </div>","import { Component, EventEmitter, Input, Output, ViewChild, ViewEncapsulation} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-select-search-trigger',\n templateUrl: './select-search-trigger.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class SelectSearchTriggerComponent {\n\n @Input() searchValue: string = '';\n\n @Output() searchValueChange = new EventEmitter<string>();\n\n @Output() searchInputKeyEnterPressed = new EventEmitter<void>();\n\n @ViewChild('searchInput') searchInput: any;\n\n constructor(\n ) {\n }\n\n onSearchValueChange() {\n this.searchValueChange.emit(this.searchValue);\n }\n\n onKeypressEnter() {\n this.searchInputKeyEnterPressed.emit();\n }\n\n setFocus() {\n setTimeout(() => { // otherwise the focus is not set\n this.searchInput.nativeElement.focus();\n },0);\n }\n}\n","<div class=\"wac-select-seacrh-trigger\">\n <i class=\"far fa-search\"></i>\n <input #searchInput type=\"text\" (click)=\"$event.stopPropagation()\" [(ngModel)]=\"searchValue\" (ngModelChange)=\"onSearchValueChange()\" (keypressEnter)=\"onKeypressEnter()\"/>\n</div>","import { ChangeDetectionStrategy, Component, ContentChild, ElementRef, EventEmitter, HostBinding, Input, OnDestroy, OnInit, Output, ViewChild, ViewEncapsulation} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { filter, takeUntil } from 'rxjs/operators';\nimport { ValueChangeService } from './value-change.service';\nimport { Subject } from 'rxjs';\nimport { SelectSearchTriggerComponent } from '../select-search-trigger/select-search-trigger.component';\nimport {\n DOWN_ARROW,\n ENTER,\n ESCAPE,\n hasModifierKey,\n LEFT_ARROW,\n RIGHT_ARROW,\n TAB,\n UP_ARROW,\n} from '@angular/cdk/keycodes';\nimport { LabelComponent } from '../../common/label/label.component';\nimport { SelectDirective } from './select.directive';\n\n\n@Component({\n standalone: false,\n selector: 'wac-select',\n templateUrl: './select.component.html',\n providers: [\n { provide: NG_VALUE_ACCESSOR, useExisting: SelectComponent, multi: true },\n ValueChangeService\n ],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.Default,\n})\nexport class SelectComponent<TOptionValue> extends SelectDirective<TOptionValue> implements OnInit, OnDestroy {\n //! Refacto improve sroll on mobile, see with Pauline\n // angular material select https://github.com/angular/components/blob/main/src/material/select/select.ts\n\n @HostBinding('attr.role') role = 'combobox';\n\n @ContentChild(SelectSearchTriggerComponent) customSearchTrigger: SelectSearchTriggerComponent;\n\n @ContentChild(LabelComponent) label: LabelComponent;\n\n @ViewChild('selectHeader') selectHeader: ElementRef;\n\n /** Whether the component is required. */\n @Input()\n get required(): boolean {\n return this._required ?? false;\n }\n\n set required(value: boolean) {\n this._required = value;\n }\n\n private _required: boolean | undefined;\n\n get selectedOptionContent(): any {\n return this.valueChangeService.selectedOptionContent;\n };\n\n @Input() small = false;\n\n @Input()\n set keepPanelOpen(keepPanelOpen: boolean) {\n this.openPanel = keepPanelOpen;\n this._keepPanelOpen = keepPanelOpen;\n }\n\n get keepPanelOpen(): boolean {\n return this._keepPanelOpen ;\n }\n\n private _keepPanelOpen: boolean;\n\n @Input()\n set openPanel(openPanel: boolean) {\n const wasOpen = this._openPanel;\n this._openPanel = this.keepPanelOpen || openPanel;\n\n if (openPanel) {\n this.customSearchTrigger?.setFocus();\n }\n\n if (wasOpen) {\n this.onSelectTouch(this.value);\n }\n }\n\n get openPanel() : boolean {\n return this._openPanel;\n }\n _openPanel: boolean = false;\n\n @Output() openPanelChange = new EventEmitter<boolean>();\n\n override tabIndex: number = -1;\n\n override _searchByTyping: boolean = true;\n\n isDestroyed$: Subject<void> = new Subject();\n\n private isKeyBoardAction = false;\n\n constructor(\n protected valueChangeService: ValueChangeService<TOptionValue>,\n ) {\n super(valueChangeService);\n }\n\n override ngOnInit(): void {\n super.ngOnInit();\n this.closeTabOnValueChange();\n }\n\n private closeTabOnValueChange() {\n this.valueChangeService.valueChange$.pipe(takeUntil(this.isDestroyed$), filter(this.skipIfTriggeredByKeyboardAction)).subscribe(() => {\n this.onClosePanel();\n });\n }\n\n private skipIfTriggeredByKeyboardAction = () => {\n if(!this.isKeyBoardAction) {\n return true;\n }\n this.isKeyBoardAction = false;\n return false;\n }\n\n onTogglePanel() {\n this.openPanel = !this.openPanel;\n this.openPanelChange.emit(this.openPanel);\n }\n\n onClosePanel() {\n this.openPanel = false;\n this.openPanelChange.emit(this.openPanel);\n }\n\n override onKeydown(event: KeyboardEvent): void {\n const keyCode = event.keyCode;\n if (event.keyCode === TAB) {\n // go to the next element with tabindex\n if (this.openPanel) {\n this.openPanel = false;\n }\n return;\n }\n if (this.disabled) {\n return;\n }\n\n const actionTriggered = this.openPanel ? this._handleOpenKeydown(event) : this._handleClosedKeydown(event);\n\n if (actionTriggered) {\n return;\n }\n this.isKeyBoardAction = true;\n super.onKeydown(event);\n }\n\n handleKeyboardActionWithSearch(event: KeyboardEvent): boolean {\n const keyCode = event.keyCode;\n\n if (keyCode === DOWN_ARROW) {\n this.isKeyBoardAction = true;\n this.valueChangeService.selectNextOption();\n return true;\n }\n if (keyCode === UP_ARROW) {\n this.isKeyBoardAction = true;\n this.valueChangeService.selectPreviousOption();\n return true;\n }\n return false;\n }\n\n /** Handles keyboard events while the select is closed. */\n private _handleClosedKeydown(event: KeyboardEvent): boolean {\n const keyCode = event.keyCode;\n const isArrowKey =\n keyCode === DOWN_ARROW ||\n keyCode === UP_ARROW ||\n keyCode === LEFT_ARROW ||\n keyCode === RIGHT_ARROW;\n const isOpenKey = keyCode === ENTER;\n // Open the select on ALT + arrow key to match the native <select>\n if (\n (isOpenKey && !hasModifierKey(event)) ||\n (event.altKey && isArrowKey)\n ) {\n this.openPanel = true;\n return true;\n }\n\n return false;\n }\n\n /** Handles keyboard events when the selected is open. */\n private _handleOpenKeydown(event: KeyboardEvent): boolean {\n const keyCode = event.keyCode;\n const isArrowKey =\n keyCode === DOWN_ARROW ||\n keyCode === UP_ARROW ||\n keyCode === LEFT_ARROW ||\n keyCode === RIGHT_ARROW;\n const isEscapeKey = keyCode === ESCAPE || keyCode === ENTER || keyCode === TAB;\n\n if ((isArrowKey && event.altKey) || isEscapeKey) {\n // Close the select on ALT + arrow key to match the native <select>\n this.openPanel = false;\n\n if (this.customSearchTrigger && keyCode !== TAB) {\n // If a escape key is used with the search, the focus on the select is loosed. And we can not interact with the select anymore.\n this.selectHeader.nativeElement.focus();\n }\n return true;\n }\n\n return false;\n }\n\n onSelectTouch: (value: any) => void = () => {};\n\n override registerOnTouched(fn: any){\n this.onSelectTouch = fn;\n }\n\n ngOnDestroy() {\n this.isDestroyed$.next();\n this.isDestroyed$.complete();\n }\n}\n","<p *ngIf=\"!!label\" class=\"wac-select__label\">\n <ng-content select=\"wac-label, .wac-label\" ></ng-content>\n</p>\n\n<div\n class=\"wac-select\"\n wzAutoHide\n (clickOutside)=\"onClosePanel()\"\n [triggerElement]=\"'wac-select__header__selection'\"\n [zIndexToggle]=\"openPanel\"\n [ngClass]=\"{'small': small}\"\n >\n\n <div #selectHeader class=\"wac-select__header\" [ngClass]=\"{ 'select-disabled' : disabled, 'open': openPanel }\" (click)=\"!disabled && onTogglePanel()\" tabindex=\"0\">\n\n <ng-container [ngTemplateOutlet]=\"openPanel ? openPanelTrigger : closePanelTrigger\" >\n\n <ng-template #closePanelTrigger>\n <ng-container [ngTemplateOutlet]=\"defaultTrigger\"></ng-container>\n </ng-template>\n\n <ng-template #openPanelTrigger>\n <ng-content *ngIf=\"!!customSearchTrigger; else defaultTrigger\" select=\"wac-select-search-trigger\" ></ng-content>\n </ng-template>\n\n <ng-template #defaultTrigger>\n <ng-content *ngIf=\"!selectedOptionContent\" select=\"wac-placeholder,[role=placeholder]\"></ng-content>\n <div\n class=\"wac-select__header__selection wac-option__placeholder\"\n *ngIf=\"!!selectedOptionContent\"\n [innerHtml]=\"selectedOptionContent\">\n </div>\n </ng-template>\n\n </ng-container>\n\n <span class=\"wac-select__header__chevron\"><i class=\"fas fa-chevron-down\"></i></span>\n\n </div>\n\n\n <div class=\"wac-select__content\" *ngIf=\"!disabled\" [ngClass]=\"{ hidden: !openPanel, open: openPanel }\">\n\n <ng-scrollbar>\n <ng-content\n select=\"wac-option-group, wac-option-call-to-action, wac-option, option, .option, [selectOption]\">\n </ng-content>\n </ng-scrollbar>\n\n <div *ngIf=\"!optionChildren?.length\" class=\"wac-select__content__empty\">\n <span>{{'wac.datatable.noresult' | translate}}</span>\n </div>\n\n </div>\n</div>\n","import {Component} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-option-call-to-action',\n templateUrl: './option-call-to-action.component.html'\n})\nexport class OptionCallToActionComponent {\n\n constructor() {}\n}\n","\n<div class=\"wac-option-call-to-action\">\n <div>\n <ng-content></ng-content>\n </div>\n</div>\n\n","import {Component, OnInit, TemplateRef, ViewChild} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-placeholder',\n templateUrl: './placeholder.component.html',\n host: {\n 'class': 'wac-placeholder'\n }\n})\nexport class PlaceholderComponent implements OnInit {\n\n constructor() {}\n\n ngOnInit(): void {\n }\n\n}\n","<ng-content></ng-content>","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-wrapper-sidebar',\n templateUrl: './wrapper-sidebar.component.html'\n})\nexport class WrapperSidebarComponent {\n\n @Input() reverse = false;\n @Input() hideBackground = false;\n @Input() backgroundGrey: string; // todo should be renamed, it is not understandable\n @Input() backgroundWidth: string;\n @Input() stickySidebar = false;\n @Input() transparentSidebar = false;\n\n constructor() { }\n}\n","<div class=\"wac-wrapper-sidebar\" [ngClass]=\"{'reverse': reverse}\">\n <div class=\"wac-wrapper-sidebar__left\" [ngClass]=\"{'sticky': stickySidebar, 'transparent': transparentSidebar}\">\n <ng-content select=\"[sidebar]\"></ng-content>\n </div>\n <div class=\"wac-wrapper-sidebar__right\" [style.backgroundImage]=\"!hideBackground && backgroundGrey !== '' ? 'url(' + backgroundGrey + ')' : ''\" [style.backgroundSize]=\"backgroundWidth\">\n <ng-content select=\"[content]\"></ng-content>\n </div>\n</div>\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {BreadcrumbsDto} from './breadcrumbs.dto';\n\n@Component({\n standalone: false,\n selector: 'wac-breadcrumbs',\n templateUrl: './breadcrumbs.component.html',\n})\nexport class BreadcrumbsComponent {\n\n @Input()\n breadcrumbs: BreadcrumbsDto[];\n\n @Input()\n noResponsive = false;\n\n index: number = 0;\n\n @Output()\n indexChange = new EventEmitter<any>();\n\n constructor() { }\n\n valueChanged(i) {\n this.index = i;\n this.indexChange.emit(this.index);\n }\n\n}\n","<div class=\"wac-breadcrumbs\" [ngClass]=\"{'no-responsive': noResponsive}\">\n <div class=\"wac-breadcrumbs__wrapper\">\n <div class=\"wac-breadcrumbs__item\" *ngFor=\"let b of breadcrumbs; let i = index;\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\" (click)=\"valueChanged(i)\">\n <div class=\"round\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\"><span *ngIf=\"!b.valid\"><span *ngIf=\"i < 9\">0</span>{{ i + 1 }}</span><i class=\"fas fa-check\" *ngIf=\"b.valid\"></i></div>\n <div class=\"name\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\">{{ b.name }}</div>\n </div>\n </div>\n</div>\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-card-price',\n templateUrl: './card-price.component.html',\n})\nexport class CardPriceComponent {\n\n @Input()\n amount: string;\n\n @Input()\n promo: string;\n\n @Input()\n title: string;\n\n @Input()\n selected = false;\n\n @Input()\n btnLabelSelected: string;\n\n @Input()\n price: string | number;\n\n @Input()\n currency: string;\n\n @Input()\n priceWording: string;\n\n @Input()\n subtitle: string;\n\n @Input()\n btnLabel: string;\n\n @Input()\n packageSubtitle: string;\n\n @Input()\n linkPackageLabel: string;\n\n @Input()\n listFeatures: string[];\n\n @Input()\n disabled: boolean = false;\n\n @Input()\n btnTextcolor = '#ffffff';\n\n @Input()\n extraClasses = 'is-success';\n\n @Input()\n extraClassesSelected = 'is-success is-outlined';\n\n @Input()\n hideButton = false;\n\n @Input()\n darkMode = false;\n\n @Input()\n isEvolup = false;\n\n @Output() public confirm: EventEmitter<any> = new EventEmitter();\n\n @Output() public cancel: EventEmitter<any> = new EventEmitter();\n\n constructor() { }\n\n triggerClick() {\n this.confirm.emit(true);\n }\n\n removePackageTrigger() {\n this.cancel.emit(true);\n }\n\n}\n","<div class=\"wac-card-price\" [ngClass]=\"{'selected': selected, 'is-evolup': isEvolup, 'is-dark': darkMode}\">\n <div class=\"promo\" *ngIf=\"promo\">\n <p [innerHTML]=\"promo\"></p>\n </div>\n <strong>{{amount}} <span>{{title}}</span></strong>\n <div class=\"price\">\n <span class=\"amount\">{{price}} <span>{{currency}}</span></span><span class=\"month\" [innerHTML]=\"priceWording\"></span>\n </div>\n <div class=\"subtitle\">{{subtitle}}</div>\n <div class=\"list-features\" *ngIf=\"listFeatures\">\n <div *ngFor=\"let feat of listFeatures;\" class=\"list-features__item\"><span>{{feat}}</span></div>\n </div>\n <div class=\"cta\" *ngIf=\"!selected && !hideButton\">\n <wac-button [noPadding]=\"true\" [label]=\"btnLabel\" [extraClasses]=\"extraClasses\" (click)=\"triggerClick()\" [disabled]=\"disabled\" [whiteSpaceNowrap]=\"true\" [textcolor]=\"btnTextcolor\"></wac-button>\n </div>\n <div class=\"cta\" *ngIf=\"selected && !hideButton\">\n <wac-button [noPadding]=\"true\" [icon]=\"'fa-solid fa-check'\" [label]=\"btnLabelSelected\" [extraClasses]=\"extraClassesSelected\" [whiteSpaceNowrap]=\"true\"></wac-button>\n </div>\n <div class=\"package-subtitle\" *ngIf=\"selected\">{{packageSubtitle}}</div>\n <div class=\"link-bottom\" *ngIf=\"linkPackageLabel\">\n <wac-link (click)=\"removePackageTrigger()\">{{linkPackageLabel}}</wac-link>\n </div>\n</div>\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-token-check',\n templateUrl: './token-check.component.html',\n})\nexport class TokenCheckComponent {\n\n @Input()\n label: string;\n\n @Input()\n value: number;\n\n @Input()\n max: number;\n\n warning = false;\n\n constructor() { }\n}\n","<div class=\"wac-token-check\">\n <span [innerHTML]=\"label\"></span> : <span [innerHTML]=\"value\" [ngClass]=\"{'warning': value > max}\"></span>/<strong [innerHTML]=\"max\"></strong>\n</div>\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport { uuid } from '../../utils/uuid';\n\n@Component({\n standalone: false,\n selector: 'wac-block-with-checkbox',\n templateUrl: './block-with-checkbox.component.html',\n})\nexport class BlockWithCheckboxComponent {\n\n @Input()\n selected = false;\n\n @Input()\n disabled = false;\n\n @Output()\n checkboxAction = new EventEmitter<boolean>();\n\n randomLabelName = uuid();\n\n @Input()\n nameRadio = 'wacBlockCheckboxRadio';\n\n @Input()\n isFirst = false;\n\n @Input()\n opacity = '.45';\n\n constructor() { }\n\n eventSelected(event) {\n if (!this.disabled) {\n this.selected = event.target.checked;\n this.checkboxAction.emit(this.selected);\n this.isFirst = false;\n }\n }\n\n removeFirstClass() {\n if (typeof document.querySelectorAll('.firstWacRadioBLock')[0] !== typeof undefined) {\n document.querySelectorAll('.firstWacRadioBLock')[0].classList.remove('firstWacRadioBLock');\n }\n }\n}\n","<div class=\"block-with-checkbox\" (click)=\"disabled && $event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? $event.preventDefault() : ''\" [ngClass]=\"{'selected': inputRadioA.checked || selected, 'firstWacRadioBLock': isFirst, 'disabled': disabled}\" [style.opacity]=\"opacity\" (mouseover)=\"removeFirstClass()\">\n <div class=\"block-with-checkbox__left\" (click)=\"inputRadioA.click()\">\n <div class=\"wac-radio-block\">\n <div class=\"wac-radio__row\">\n <input #inputRadioA [name]=\"nameRadio\" type=\"radio\" [checked]=\"selected\" [value]=\"selected\" (change)=\"eventSelected($event)\" [id]=\"randomLabelName\">\n <label [for]=\"randomLabelName\"></label>\n </div>\n </div>\n </div>\n <div class=\"block-with-checkbox__center\" (click)=\"$event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? inputRadioA.click() : '';\">\n <ng-content></ng-content>\n </div>\n</div>\n","import {AfterViewInit, Component, ElementRef, EventEmitter, HostListener, Input, OnInit, Output, ViewChild} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-confirm-delete',\n templateUrl: './confirm-delete.component.html'\n})\nexport class ConfirmDeleteComponent implements AfterViewInit {\n\n @Input()\n open = false;\n\n @Input()\n label: string;\n\n @Input()\n labelCancel: string;\n\n @Input()\n labelConfirm: string;\n\n @Output()\n confirm = new EventEmitter<boolean>();\n\n @Input()\n backgroundColor = '#fff';\n\n @Input()\n borderRadius = '0px';\n\n hideText = false;\n\n @ViewChild('container') container: ElementRef;\n\n constructor() { }\n\n eventCancel(event) {\n this.confirm.emit(false);\n this.open = false;\n }\n\n eventConfirm(event) {\n this.confirm.emit(true);\n this.open = false;\n }\n\n responsiveControl(size) {\n if (size < 342) {\n this.hideText = true;\n } else {\n this.hideText = false;\n }\n }\n\n @HostListener('window:resize')\n onResize(): void {\n this.responsiveControl(this.container.nativeElement.offsetWidth);\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n this.responsiveControl(this.container.nativeElement.offsetWidth);\n }, 100);\n }\n\n}\n","<div class=\"wac-confirm-delete\" #container [ngClass]=\"{'is-open': open, 'hide-text': hideText}\" [style.backgroundColor]=\"backgroundColor\" [style.borderRadius]=\"borderRadius\">\n <div>\n <span [innerHTML]=\"label\"></span>\n </div>\n <div>\n <div><wac-button [label]=\"labelCancel\" [extraClasses]=\"'is-outlined is-grey'\" (click)=\"eventCancel($event)\"></wac-button></div>\n <div><wac-button [label]=\"labelConfirm\" [extraClasses]=\"'is-danger'\" (click)=\"eventConfirm($event)\"></wac-button></div>\n </div>\n</div>\n","import {ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges, TemplateRef, ViewEncapsulation} from '@angular/core';\n\nexport type ImageSource = string;\nexport type ImageAlt = string;\n\nexport type MosaicImage = {\n src: ImageSource,\n alt: ImageAlt\n}\n\nexport type MosaicImages = Readonly<MosaicImage[]>;\n\n@Component({\n standalone: false,\n selector: 'wac-mosaic',\n templateUrl: './mosaic.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class MosaicComponent implements OnChanges {\n\n @Input() imagesList: MosaicImages = [];\n\n @Input() isLoading = false;\n\n @Input() numberOfColumn = 3;\n\n @Input() hoverImageTemplate: TemplateRef<any>;\n\n @Output() importImageSrc = new EventEmitter<ImageSource>();\n\n @Output() loadMoreImages = new EventEmitter<void>();\n\n columns: MosaicImages[];\n\n trackColumn(index: number ) {\n return index;\n }\n\n trackImage(index: number, image: MosaicImage ) {\n return image.src;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const imagesListChange = changes.imagesList;\n const isNumberOfColumnChange = changes.numberOfColumn && (changes.numberOfColumn.currentValue !== changes.numberOfColumn.previousValue);\n\n if (imagesListChange && imagesListChange.currentValue !== imagesListChange.previousValue) {\n this.generateColumns(imagesListChange.previousValue, imagesListChange.currentValue, isNumberOfColumnChange);\n return;\n }\n\n if (isNumberOfColumnChange) {\n this.generateColumns(null, this.imagesList, isNumberOfColumnChange);\n }\n }\n\n generateColumns(previousList: MosaicImages, currentList: MosaicImages, isNumberOfColumnChange: boolean) {\n const isNewListSmaller = (currentList && previousList) && (currentList.length < previousList.length);\n const resetColumns = isNumberOfColumnChange || isNewListSmaller;\n const isPreviousListExisting = previousList?.length;\n const newImagesToDisplay = !isPreviousListExisting || resetColumns ? currentList : currentList.slice(previousList.length);\n\n let columns: MosaicImage[][] = this.separateImagesIntoColumns(newImagesToDisplay);\n\n if (isPreviousListExisting && !resetColumns) {\n const existingColumns = this.columns;\n columns = this.concatColumns(existingColumns, columns);\n }\n\n this.columns = columns;\n }\n\n separateImagesIntoColumns(newImagesToDisplay: MosaicImages): MosaicImage[][] {\n const columns: MosaicImage[][] = Array.from({ length: this.numberOfColumn }, () => []);\n\n newImagesToDisplay.forEach((image, index) => {\n columns[index % this.numberOfColumn].push(image);\n });\n\n return columns;\n }\n\n concatColumns(oldColumns: MosaicImages[], newColumns: MosaicImages[]): MosaicImage[][] {\n return oldColumns.map((oldColumn, columnIndex) => {\n return [...oldColumn, ...newColumns[columnIndex]];\n });\n }\n\n onBottomReached() {\n if (!this.isLoading) {\n this.loadMoreImages.emit();\n }\n }\n\n onImportImage(src: ImageSource) {\n this.importImageSrc.emit(src);\n }\n}\n","<div class=\"wac-mosaic\" [ngClass]=\"{'is-loading': isLoading}\">\n <ng-scrollbar (reachedBottom)=\"onBottomReached()\" [reachedOffset]=\"200\" class=\"wac-mosaic__wrapper__scrollbar\">\n <div class=\"wac-mosaic__wrapper\">\n <div class=\"wac-mosaic__wrapper__column\" *ngFor=\"let column of columns; trackBy : trackColumn;\">\n <div class=\"wac-mosaic__wrapper__column__image\" *ngFor=\"let image of column; let i = index; trackBy : trackImage\">\n <img [src]=\"image.src\" [alt]=\"image.alt\"/>\n <div class=\"hover\">\n <ng-container\n [ngTemplateOutlet]=\"hoverImageTemplate || defaultImportButton\"\n [ngTemplateOutletContext]=\"{ $implicit: image }\"\n >\n </ng-container>\n </div>\n </div>\n </div>\n </div>\n <div class=\"wac-mosaic__wrapper load\">\n <div class=\"wac-mosaic__wrapper__column\" *ngFor=\"let column of columns; trackBy : trackColumn;\">\n <div class=\"load-img\">\n </div>\n </div>\n </div>\n </ng-scrollbar>\n</div>\n\n<ng-template #defaultImportButton let-image>\n <wac-button [icon]=\"'fa-solid fa-image'\" [label]=\"'wac.MosaicComponent.import' | translate\" [extraClasses]=\"'is-success'\" (click)=\"onImportImage(image.src)\"></wac-button>\n</ng-template>\n","import {AfterContentInit, AfterViewInit, Component, ContentChild, EventEmitter, Input, OnInit, Output} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-content-with-buttons',\n templateUrl: './content-with-buttons.component.html',\n})\nexport class ContentWithButtonsComponent implements OnInit, AfterViewInit {\n\n @Input()\n iconCopy = 'fa-duotone fa-copy';\n\n @Input()\n iconTranslate = 'fa-regular fa-globe';\n\n @Input()\n tooltipCopy = '';\n\n @Input()\n tooltipTranslate = '';\n\n @Input()\n tooltipLinkReport = '';\n\n @Input()\n count = true;\n\n @Input()\n countCharacterLabel = 'caractères';\n\n @Input()\n countWordsLabel = 'mots';\n\n @Input()\n reportLabel: string;\n\n @Output()\n copyAction = new EventEmitter<boolean>();\n\n @Output()\n reportAction = new EventEmitter<boolean>();\n\n @Output()\n translateAction = new EventEmitter<boolean>();\n\n countWords: number;\n\n countIsReady = false;\n\n countCharacter: number;\n\n randomLabelName: string;\n\n\n ngOnInit() {\n this.randomLabelName = 'content-' + Math.random() * (900 - 700) + 700;\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n const content = document.getElementById(this.randomLabelName).innerHTML.replace(/(<([^>]+)>)/gi, '').replace(/[.,\\/#!$%\\^&\\*;:{}=\\-_`~()]/g, '');\n this.countCharacter = content.trim().split(' ').join('').length;\n this.countWords = content.trim().split(' ').length;\n this.countIsReady = true;\n });\n }\n\n eventCopy() {\n this.copyAction.emit(true);\n }\n\n eventTranslate() {\n this.translateAction.emit(true);\n }\n\n eventReport() {\n this.reportAction.emit(true);\n }\n}\n","<div class=\"wac-content-with-buttons\">\n <div class=\"wac-content-with-buttons__text\">\n <div id=\"{{randomLabelName}}\">\n <ng-content></ng-content>\n </div>\n <div class=\"wac-content-with-buttons__text__count\" *ngIf=\"count && countIsReady\">\n <span>{{ countWords }} {{ countWordsLabel }} - {{ countCharacter }} {{ countCharacterLabel }}</span>\n <span><wac-link [tooltipWidth]=\"600\" [tooltip]=\"tooltipLinkReport\" (click)=\"$event.preventDefault();\" (mousedown)=\"$event.preventDefault();eventReport();\" fontSize=\"12px\">{{ reportLabel }}</wac-link></span>\n </div>\n </div>\n <div class=\"wac-content-with-buttons__cta\">\n <div><wac-button extraClasses=\"is-blue opacity static-width\" [iconFontSize]=\"18\" [icon]=\"iconCopy\" (click)=\"eventCopy()\" [tooltip]=\"tooltipCopy\" [tooltipPosition]=\"'top-center'\" [tooltipOneline]=\"true\"></wac-button></div>\n <div><wac-button extraClasses=\"is-green opacity static-width\" [iconFontSize]=\"18\" [icon]=\"iconTranslate\" [tooltip]=\"tooltipTranslate\" [tooltipPosition]=\"'top-center'\" [tooltipOneline]=\"true\" (click)=\"eventTranslate()\"></wac-button></div>\n </div>\n</div>\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-wrapper-multiple-block',\n templateUrl: './wrapper-multiple-block.component.html',\n})\nexport class WrapperMultipleBlockComponent {\n\n constructor() { }\n}\n","<div class=\"wac-wrapper-multiple-block\">\n <div class=\"wac-wrapper-multiple-block__sidebar\">\n <ng-content select=\"[sidebar]\"></ng-content>\n </div>\n <div class=\"wac-wrapper-multiple-block__content\">\n <ng-content select=\"[content]\"></ng-content>\n </div>\n</div>\n","import {ChangeDetectionStrategy, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\nimport {CdkDragDrop, moveItemInArray} from '@angular/cdk/drag-drop';\n\n@Component({\n standalone: false,\n selector: 'wac-draganddrop-list',\n templateUrl: './draganddrop-list.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DraganddropListComponent {\n\n @Input()\n label = '';\n\n @Input()\n items: Array<string>;\n\n @Input()\n disabled = false;\n\n @Input()\n max: number;\n\n @Input()\n labelBtnAdd: string;\n\n @Input()\n backgroundColor = '#fff';\n\n showTriggerSave = false;\n\n @Output()\n itemsChange = new EventEmitter<Array<string>>();\n\n drop(event: CdkDragDrop<string[]>) {\n if (!this.disabled) {\n moveItemInArray(this.items, event.previousIndex, event.currentIndex);\n this.itemsChange.emit(Object.values(this.items));\n }\n }\n\n delete(index) {\n if (!this.disabled) {\n this.items = this.items.filter((value, i) => i !== index );\n this.itemsChange.emit(Object.values(this.items));\n }\n }\n\n saveFieldEnd(index, event) {\n this.items[index] = event.target.value;\n this.itemsChange.emit(Object.values(this.items));\n }\n\n addField() {\n this.showTriggerSave = true;\n }\n\n saveNewField(event) {\n this.items.push(event.target.value);\n this.itemsChange.emit(Object.values(this.items));\n this.showTriggerSave = false;\n }\n\n}\n","<div class=\"wac-draganddrop-list\" *ngIf=\"!disabled\" [style.backgroundColor]=\"backgroundColor\">\n <div class=\"wac-draganddrop-list__label\" *ngIf=\"label\"><span [innerHTML]=\"label\"></span></div>\n <div class=\"wac-draganddrop-list__wrapper\" [cdkDropListLockAxis]=\"'y'\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\n <div class=\"wac-draganddrop-list__wrapper__item\" [style.backgroundColor]=\"backgroundColor\" *ngFor=\"let item of items;let i = index;\" cdkDrag>\n <div>\n <span class=\"wac-draganddrop-list__wrapper__item__icon\">\n <span></span>\n </span>\n <span (mousedown)=\"$event.stopPropagation()\" class=\"wac-draganddrop-list__wrapper__item__input\">\n <wac-input [value]=\"item\" [extraClasses]=\"'transparent'\" (keyup.enter)=\"saveFieldEnd(i, $event)\" (focusout)=\"saveFieldEnd(i, $event)\"></wac-input>\n </span>\n </div>\n <div (mousedown)=\"$event.stopPropagation()\">\n <div>\n <wac-button [iconFontSize]=\"14\" [opacity]=\"true\" [icon]=\"'fa-regular fa-trash-can'\" [extraClasses]=\"'is-danger'\" (click)=\"delete(i)\"></wac-button>\n </div>\n <div *ngIf=\"i === (items.length - 1) && max > items.length && !showTriggerSave\">\n <wac-button [extraClasses]=\"'is-info'\" [iconFontSize]=\"18\" [opacity]=\"true\" [icon]=\"'fa-regular fa-plus'\" (click)=\"addField()\"></wac-button>\n </div>\n </div>\n </div>\n <div class=\"wac-draganddrop-list__wrapper__item wac-draganddrop-list__wrapper__item--trigger\" *ngIf=\"showTriggerSave\">\n <div>\n <span class=\"wac-draganddrop-list__wrapper__item__icon\">\n <span></span>\n </span>\n <span class=\"wac-draganddrop-list__wrapper__item__input\">\n <wac-input [extraClasses]=\"'transparent'\" (keyup.enter)=\"saveNewField($event)\" (focusout)=\"saveNewField($event)\"></wac-input>\n </span>\n </div>\n </div>\n </div>\n</div>\n\n<div class=\"wac-draganddrop-list wac-draganddrop-list--disabled\" *ngIf=\"disabled\">\n <div class=\"wac-draganddrop-list__label\" *ngIf=\"label\"><span [innerHTML]=\"label\"></span></div>\n <div class=\"wac-draganddrop-list__wrapper\">\n <div class=\"wac-draganddrop-list__wrapper__item\" *ngFor=\"let item of items;let i = index;\">\n <div>\n <span class=\"wac-draganddrop-list__wrapper__item__label\" [innerHTML]=\"item\"></span>\n </div>\n </div>\n </div>\n</div>\n","import { InjectionToken } from \"@angular/core\";\nimport { AccordionItem } from \"./accordion-item.interface\";\n\nexport const ACCORDION_ITEM = new InjectionToken<AccordionItem>('ACCORDION_ITEM');","import { AfterViewInit, Component, ContentChildren, HostBinding, Input, OnDestroy, QueryList } from '@angular/core';\nimport { takeUntil, startWith, Subject, map, merge, Observable } from 'rxjs';\nimport { AccordionItem } from './accordion-item.interface';\nimport { ACCORDION_ITEM } from './accordion-item.token';\n\n@Component({\n standalone: false,\n selector: 'wac-accordion',\n templateUrl: './accordion.component.html'\n})\nexport class AccordionComponent implements AfterViewInit, OnDestroy {\n\n @HostBinding('class') class = 'wac-accordion';\n\n @ContentChildren(ACCORDION_ITEM, { descendants: true }) expansionItems!: QueryList<AccordionItem>;\n\n @Input() keepOnlyOnePanelOpen: boolean = false;\n\n // Inputs: hideToggle (hide the arrow) // togglePosition\n\n private isDestroyed$ = new Subject<void>();\n private resetListeners$: Subject<void> = new Subject();\n\n constructor() { }\n\n public openAll(): void {\n this.expansionItems?.forEach((item: AccordionItem) => {\n item.isExpanded = true;\n });\n }\n\n public closeAll(): void {\n this.expansionItems?.forEach((item: AccordionItem) => {\n item.isExpanded = false;\n });\n }\n\n ngAfterViewInit(): void {\n this.expansionItems.changes\n .pipe(\n takeUntil(this.isDestroyed$),\n startWith(this.expansionItems)\n )\n .subscribe(() => {\n this.resetListeners$.next();\n this.panelExpansionChanges().subscribe(expandedItem => {\n if (this.keepOnlyOnePanelOpen) {\n this.keepOnlyOnePanelOpenHandler(expandedItem.index);\n }\n });\n });\n }\n\n private panelExpansionChanges(): Observable<{index:number, expansionItem: AccordionItem}> {\n const panelExpansionChange$ = this.expansionItems.map((expansionItem, index) => {\n return expansionItem.expandChange.pipe(\n map(() => {\n return {\n index,\n expansionItem\n }\n })\n );\n });\n return merge(...panelExpansionChange$).pipe(takeUntil(this.resetListeners$));\n }\n\n private keepOnlyOnePanelOpenHandler(index: number): void {\n this.expansionItems.forEach((expansionItem, i) => {\n if (i !== index) {\n expansionItem.isExpanded = false;\n }\n });\n }\n\n ngOnDestroy(): void {\n this.isDestroyed$.next();\n this.isDestroyed$.complete();\n this.resetListeners$.next();\n this.resetListeners$.complete();\n }\n}\n","<ng-content></ng-content>","import { InjectionToken } from \"@angular/core\";\nimport { ExpansionPanelHeader } from \"./expansion-panel-header.interface\";\n\nexport const EXPANSION_PANEL_HEADER = new InjectionToken<ExpansionPanelHeader>('EXPANSION_PANEL_HEADER');","import { ChangeDetectorRef, Directive, EventEmitter, HostListener, Input, Output } from '@angular/core';\nimport { EXPANSION_PANEL_HEADER } from './expansion-panel-header.token';\n\n@Directive({\n standalone: false,\n selector: '[wacExpansionPanelHeader]',\n providers: [{ provide: EXPANSION_PANEL_HEADER, useExisting: ExpansionPanelHeaderDirective }],\n})\nexport class ExpansionPanelHeaderDirective {\n\n\n @HostListener('click') onClick() {\n this.toggle();\n }\n\n @Input() disabled: boolean = false;\n @Output() disabledChange = new EventEmitter<boolean>();\n\n @Input() hideToggle: boolean = false;\n @Output() hideToggleChange = new EventEmitter<boolean>();\n\n @Input() isExpanded: boolean = false;\n @Output() isExpandedChange = new EventEmitter<boolean>();\n\n constructor(protected changeDetectorRef:ChangeDetectorRef) {\n }\n\n onToggle() {\n if (this.disabled) {\n return;\n }\n this.isExpanded = !this.isExpanded;\n this.toggle();\n }\n\n // Will be used by the parent component\n close: () => {};\n open: () => {};\n toggle: () => {};\n}","import { ChangeDetectorRef, Component, HostBinding, ViewEncapsulation } from '@angular/core';\nimport { ExpansionPanelHeaderDirective } from './expansion-panel-header.directive';\nimport { EXPANSION_PANEL_HEADER } from './expansion-panel-header.token';\n\n@Component({\n standalone: false,\n selector: 'wac-expansion-panel-header',\n templateUrl: './expansion-panel-header.component.html',\n encapsulation: ViewEncapsulation.None,\n //changeDetection: ChangeDetectionStrategy.OnPush, // todo handle\n providers: [{ provide: EXPANSION_PANEL_HEADER, useExisting: ExpansionPanelHeaderComponent }]\n})\nexport class ExpansionPanelHeaderComponent extends ExpansionPanelHeaderDirective {\n\n @HostBinding('class') class = 'wac-expansion-panel-header';\n\n @HostBinding('class.wac-expansion-panel-header--disabled') get isDisabled() {\n return this.disabled;\n }\n\n constructor(protected changeDetectorRef:ChangeDetectorRef) {\n super(changeDetectorRef);\n }\n\n}\n","<ng-content></ng-content>\n<i class=\"wac-expansion-panel-header__icon\" [class]=\"isExpanded ? 'fas fa-angle-down' : 'fas fa-angle-up'\"></i>","import { AfterViewInit, ChangeDetectorRef, ContentChild, Directive, EventEmitter, Input, Output } from '@angular/core';\nimport { AccordionItem } from '../accordion/accordion-item.interface';\nimport { ACCORDION_ITEM } from '../accordion/accordion-item.token';\nimport { ExpansionPanelHeader } from '../expansion-panel-header/expansion-panel-header.interface';\nimport { EXPANSION_PANEL_HEADER } from '../expansion-panel-header/expansion-panel-header.token';\n\n@Directive({\n standalone: false,\n selector: '[wacExpansionPanel]',\n providers: [{ provide: ACCORDION_ITEM, useExisting: ExpansionPanelDirective }]\n})\nexport class ExpansionPanelDirective implements AccordionItem, AfterViewInit {\n\n\n @ContentChild(EXPANSION_PANEL_HEADER) header: ExpansionPanelHeader;\n\n @Input() set disabled(disabled: boolean) {\n this._disabled = disabled;\n if (this.header) {\n this.header.disabled = disabled;\n }\n }\n get disabled(): boolean {\n return this._disabled;\n }\n _disabled = false;\n\n @Input() set hideToggle(hideToggle: boolean) {\n this._hideToggle = hideToggle;\n if (this.header) {\n this.header.hideToggle = hideToggle;\n }\n }\n get hideToggle() : boolean {\n return this._hideToggle;\n }\n _hideToggle: boolean = false;\n\n @Input() set isExpanded(isExpanded: boolean) {\n if (this.disabled) {\n return;\n }\n this._isExpanded = isExpanded;\n if (this.header) {\n this.header.isExpanded = isExpanded;\n }\n this.isExpandedChange.emit(isExpanded);\n }\n get isExpanded(): boolean {\n return this._isExpanded;\n }\n _isExpanded = false;\n\n @Output() isExpandedChange = new EventEmitter<boolean>();\n\n expandChange = new EventEmitter<void>(); // used by the accordion component if exists\n\n constructor(protected changeDetectorRef:ChangeDetectorRef) {\n }\n\n ngAfterViewInit(): void {\n setTimeout(() => {\n this.header.isExpanded = this.isExpanded;\n this.header.hideToggle = this.hideToggle;\n this.header.disabled = this.disabled;\n\n this.header.close = () => this.close();\n this.header.open = () => this.open();\n this.header.toggle = () => this.toggle();\n }, 0);\n }\n\n close(): void {\n this.isExpanded = false;\n this.expandChange.emit();\n }\n open(): void {\n this.isExpanded = true;\n this.expandChange.emit();\n }\n toggle(): void {\n this.isExpanded = !this.isExpanded;\n this.expandChange.emit();\n }\n}","import { ChangeDetectorRef, Component, HostBinding } from '@angular/core';\nimport { ACCORDION_ITEM } from '../accordion/accordion-item.token';\nimport { ExpansionPanelDirective } from './expansion-panel.directive';\n\n// https://material.angular.io/components/expansion/api\n\n@Component({\n standalone: false,\n selector: 'wac-expansion-panel',\n templateUrl: './expansion-panel.component.html',\n providers: [{ provide: ACCORDION_ITEM, useExisting: ExpansionPanelComponent }]\n})\nexport class ExpansionPanelComponent extends ExpansionPanelDirective {\n\n @HostBinding('class') class = 'wac-expansion-panel';\n\n @HostBinding('class.wac-expansion-panel--disabled') get isDisabled() {\n return this.disabled;\n }\n\n constructor(protected changeDetectorRef:ChangeDetectorRef) {\n super(changeDetectorRef);\n }\n}\n","<ng-content select=\"wac-expansion-panel-header, wacExpansionPanelHeader\"></ng-content>\n<div *ngIf=\"isExpanded\">\n <ng-content></ng-content>\n</div>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AccordionComponent } from './accordion/accordion.component';\nimport { ExpansionPanelHeaderComponent } from './expansion-panel-header/expansion-panel-header.component';\nimport { ExpansionPanelHeaderDirective } from './expansion-panel-header/expansion-panel-header.directive';\nimport { ExpansionPanelComponent } from './expansion-panel/expansion-panel.component';\nimport { ExpansionPanelDirective } from './expansion-panel/expansion-panel.directive';\n\nconst components = [\n ExpansionPanelComponent,\n ExpansionPanelHeaderComponent,\n AccordionComponent\n];\n\nconst directives = [\n ExpansionPanelDirective,\n ExpansionPanelHeaderDirective\n];\n\nexport const ExpansionExport = [\n ...components,\n ...directives\n]\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n exports: [\n ...ExpansionExport\n ],\n declarations: [\n ...ExpansionExport\n ],\n providers: [],\n})\nexport class ExpansionModule { }\n","import { CommonModule } from '@angular/common';\nimport { Component, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'wac-block-title-legacy',\n templateUrl: 'block-title-legacy.component.html',\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CommonModule],\n})\nexport class BlockTitleLegacyComponent {\n\n @Input()\n simple = false;\n\n @Input()\n icon = '';\n\n constructor() { }\n}","<h2 class=\"wac-block__title\" [ngClass]=\"{ 'is-simple': simple }\">\n <ng-content></ng-content> <i *ngIf=\"icon\" [ngClass]=\"icon\"></i>\n</h2>","import { Component, Input, Output, ViewEncapsulation, EventEmitter } from '@angular/core';\n\nexport interface SummaryItems {\n label: string;\n href?: string;\n};\n\n@Component({\n standalone: false,\n selector: 'wac-summary',\n templateUrl: './summary.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class SummaryComponent {\n\n _activeItem = 0;\n\n @Input() set activeItem(activeItem: number) {\n this._activeItem = activeItem;\n }\n\n get activeItem(): number {\n return this._activeItem;\n }\n\n @Input() items: Array<SummaryItems>;\n\n @Output() itemChanged = new EventEmitter<number>();\n\n constructor() {}\n\n scrollToItem(i: number) {\n this._activeItem = i;\n this.itemChanged.emit(i);\n if (this.items[i].href) {\n const yOffset = -20;\n const element = window.document.getElementById(this.items[i].href);\n if (element) {\n const y = element.getBoundingClientRect().top + window.pageYOffset + yOffset;\n window.scrollTo({ top: y, behavior: 'smooth' });\n }\n }\n }\n\n}\n","<div class=\"wac-summary\">\n <ng-container *ngFor=\"let item of items; let i = index\">\n <p [ngClass]=\"{'active' : activeItem === i, 'item-link': item.href}\" (click)=\"scrollToItem(i)\">{{ item.label }}</p>\n </ng-container>\n</div>\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-google-preview',\n templateUrl: './google-preview.component.html'\n})\nexport class GooglePreviewComponent implements OnInit {\n\n @Input()\n title: string;\n\n @Input()\n url: string;\n\n @Input()\n description: string;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","<div class=\"wac-google-preview\">\n <div class=\"wac-google-preview__url\" [innerHTML]=\"url\"></div>\n <div class=\"wac-google-preview__title\" [innerHTML]=\"title\"></div>\n <div class=\"wac-google-preview__description\" [innerHTML]=\"description\"></div>\n</div>\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-charging-bar',\n templateUrl: './charging-bar.component.html'\n})\nexport class ChargingBarComponent implements OnInit {\n\n @Input()\n value = 0;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","<div class=\"wac-charging-bar\">\n <div class=\"wac-charging-bar__wrapLine\">\n <div class=\"wac-charging-bar__wrapLine__line\">\n <div class=\"wac-charging-bar__wrapLine__line__width\" [ngClass]=\"{'complete': value === 100}\" [ngStyle]=\"{'max-width': value + '%'}\"></div>\n </div>\n </div>\n <div class=\"wac-charging-bar__number\" [innerHTML]=\"value + '%'\"></div>\n</div>\n","import {Component, Input, OnInit} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-expanded-panel',\n templateUrl: './expanded-panel.component.html',\n})\nexport class ExpandedPanelComponent implements OnInit {\n\n @Input()\n label: string;\n\n @Input()\n section = false;\n\n @Input()\n open = false;\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","<div class=\"wac-expanded-panel\">\n <div class=\"wac-expanded-panel__top\" (click)=\"open = !open\">\n <div class=\"wac-expanded-panel__top__label\" [ngClass]=\"{'big': section}\" [innerHTML]=\"label\"></div>\n <div class=\"wac-expanded-panel__top__icon\" [ngClass]=\"{'is-open': open, 'big': section}\">\n <i class=\"fa-regular fa-angle-down\"></i>\n </div>\n </div>\n <div class=\"wac-expanded-panel__bottom\" [ngClass]=\"{'is-open': open}\">\n <ng-content></ng-content>\n </div>\n</div>\n","import {\n AfterContentInit,\n Component, ElementRef,\n HostListener,\n Input,\n OnInit,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport {NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {Observable} from 'rxjs';\n\n@Component({\n standalone: false,\n selector: 'wac-row',\n templateUrl: './row.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class RowComponent implements OnInit, AfterContentInit {\n @Input() colPosition: string;\n @Input() rowPosition: string;\n @Input()\n position: 'top-left'|'top-middle'|'top-right'|'middle-left'|'middle-middle'|'middle-right'|'bottom-left'|'bottom-middle'|'bottom-right'|'stretch-left'|'stretch-middle'|'stretch-right';\n id = '';\n childs = 0;\n classWidth = '';\n responsiveClass = '';\n @Input()\n width: string;\n @Input()\n height: string;\n @Input()\n responsiveAuto = false;\n @Input()\n childrensWidthAuto = false;\n @Input()\n visibility: 'mobile-only'|'tablet-only'|'desktop-only'|'under-desktop'|'above-mobile';\n @Input()\n marginChild = '';\n @Input()\n marginBottom = '';\n @Input()\n marginBottomChild = '';\n @Input()\n addWacBlock = false;\n @Input()\n lineDisplayContent = false;\n @Input()\n border = false;\n @Input()\n multipleLine = false;\n @Input()\n childrenByLine = 0;\n @Input()\n padding = '';\n @Input()\n gap = '';\n @Input()\n lastChildIsDown = false;\n @Input()\n addClass = '';\n halfMarginChild = '';\n @ViewChild(`container`) container: ElementRef;\n nbChildsClass = '';\n\n ngOnInit() {\n this.id = 'row-' + Math.floor(Math.random() * 100000);\n if (this.marginChild) {\n this.halfMarginChild = parseInt(this.marginChild) / 2 + 'px';\n }\n }\n\n responsiveControl(size) {\n if (size > 1024) {\n this.classWidth = '';\n } else if (size <= 480) {\n this.classWidth = 'low';\n } else {\n this.classWidth = 'medium';\n }\n }\n\n handleResponsiveAuto(size) {\n if (size < 500) {\n this.responsiveClass = 'mobile';\n } else {\n this.responsiveClass = '';\n }\n }\n\n @HostListener('window:resize', ['$event'])\n onResize() {\n const size = this.container.nativeElement.offsetWidth;\n this.responsiveControl(size);\n if (this.responsiveAuto) {\n this.handleResponsiveAuto(size);\n }\n }\n\n actionsDom() {\n this.childs = this.container.nativeElement.childElementCount;\n if (this.width) {\n document.getElementById(this.id).parentElement.style.maxWidth = this.width;\n }\n if (this.height) {\n document.getElementById(this.id).parentElement.style.maxHeight = this.height;\n }\n if ((this.childs > 1 && this.marginChild) || this.multipleLine) {\n for (let i = 0; i < this.childs; i++) {\n const child: any = document.getElementById(this.id).children[i];\n child.style.marginLeft = this.halfMarginChild;\n child.style.marginRight = this.halfMarginChild;\n if (this.multipleLine) {\n child.style.width = 'calc(' + (100 / this.childrenByLine) + '% - ' + this.marginChild + ')';\n }\n }\n }\n if (this.childs > 1 && this.marginBottomChild) {\n for (let i = 0; i < this.childs; i++) {\n const child: any = document.getElementById(this.id).children[i];\n child.style.marginBottom = this.marginBottomChild;\n }\n }\n this.nbChildsClass = 'nb-child-' + this.childs;\n this.onResize();\n }\n\n ngAfterContentInit() {\n setTimeout(() => {\n this.actionsDom();\n }, 1);\n }\n\n handleDomChange(event) {\n this.actionsDom();\n }\n}\n","<div [style.gridColumn]=\"colPosition\" [style.gridRow]=\"rowPosition\" watchDomTree (dom-changed)=\"handleDomChange($event)\" [ngStyle]=\"{'padding': padding,'margin-bottom': marginBottom,'transform': (childs > 1 || multipleLine ? 'translateX(-' + halfMarginChild + ')' : 'wrong'), 'width': ((childs > 1 && !addWacBlock) || multipleLine ? 'calc(100% + ' + marginChild + ')' : 'wrong')}\" class=\"wac-row {{ addWacBlock ? 'white-block' : '' }} {{ multipleLine ? 'multiple-line' : '' }} {{ lineDisplayContent ? 'direction-column' : '' }} {{ border ? 'with-border' : '' }} {{ lastChildIsDown ? 'last-child-down' : '' }} {{ childrensWidthAuto ? 'childrens-width-auto' : '' }} {{ position ? position : '' }} {{ visibility ? visibility : '' }} {{ responsiveClass ? responsiveClass : '' }} {{addClass}} {{nbChildsClass}} {{classWidth}}\" #container [ngClass]=\"{\n 'multiple-child': childs > 3,\n 'five-or-more-child': childs > 4,\n 'alone': childs === 1\n}\" [id]=\"id\">\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-column',\n templateUrl: './column.component.html',\n})\nexport class ColumnComponent {\n\n}\n","<p>column works!</p>\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-ai-express',\n templateUrl: './ai-express.component.html',\n})\nexport class AiExpressComponent implements OnInit {\n\n @Input() top = '28px';\n @Input() right = '1px';\n @Input() loading = false;\n @Input() disabled = false;\n @Input() wordingTop: string;\n @Input() wordingToken: string;\n @Input() wordingTokenLeft: string;\n @Input() wordingRegisterTop: string;\n @Input() wordingRegisterBtn: string;\n @Input() wordingDisabled: string;\n @Input() tokenCost = 0;\n @Input() tokenLeft = 0;\n @Input() tokenCount = 0;\n @Input() isRegister = false;\n @Output() validAction = new EventEmitter<boolean>();\n\n isOpen = false;\n hrefRegister = '/v3/ai/select-plan';\n\n constructor() {}\n ngOnInit(): void {}\n\n showPopup() {\n if (!this.isOpen && (!this.disabled || (this.disabled && this.wordingDisabled))) {\n this.isOpen = true;\n }\n }\n\n validate() {\n if (!this.disabled) {\n if (!this.isRegister) {\n if (!this.isOpen) {\n this.isOpen = true;\n } else {\n this.isOpen = false;\n }\n } else {\n if (!this.loading) {\n this.validAction.emit(true);\n }\n }\n }\n }\n\n hidePopup() {\n if (this.isOpen && (!this.disabled || (this.disabled && this.wordingDisabled))) {\n this.isOpen = false;\n }\n }\n\n}\n","<div class=\"wac-ai-express\">\n <ng-content></ng-content>\n <div [style.top]=\"top\" [style.right]=\"right\" class=\"wac-ai-express__icon\" [ngClass]=\"{'disabled': disabled, 'loading': loading}\" (click)=\"validate();\">\n <i class=\"fa-regular fa-wand-magic-sparkles\" *ngIf=\"!loading\"></i>\n <svg *ngIf=\"loading\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" style=\"margin:auto;background:transparent;display:block;\" width=\"200px\" height=\"200px\" viewBox=\"0 0 100 100\" preserveAspectRatio=\"xMidYMid\">\n <g transform=\"rotate(0 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.9166666666666666s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g><g transform=\"rotate(30 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.8333333333333334s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g><g transform=\"rotate(60 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.75s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g><g transform=\"rotate(90 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.6666666666666666s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g><g transform=\"rotate(120 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.5833333333333334s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g><g transform=\"rotate(150 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.5s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g><g transform=\"rotate(180 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.4166666666666667s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g><g transform=\"rotate(210 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.3333333333333333s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g><g transform=\"rotate(240 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.25s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g><g transform=\"rotate(270 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.16666666666666666s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g><g transform=\"rotate(300 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.08333333333333333s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g><g transform=\"rotate(330 50 50)\">\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"0s\" repeatCount=\"indefinite\"></animate>\n </rect>\n </g>\n </svg>\n </div>\n <div *ngIf=\"isRegister && !disabled\" class=\"wac-ai-express__wrapper\" [ngClass]=\"{'height-auto': (!tokenCost || tokenCost === 0)}\">\n <div>\n <span [innerHTML]=\"wordingTop\"></span>\n </div>\n <div [ngClass]=\"{'hide': (!tokenCost || tokenCost === 0)}\">\n <div>\n <div>\n <i class=\"fa-solid fa-coin-front\"></i>\n <span [innerHTML]=\"tokenCost\"></span>\n </div>\n <span [innerHTML]=\"wordingToken\"></span>\n </div>\n <div>\n <div>\n <strong [innerHTML]=\"tokenLeft\"></strong> / <span [innerHTML]=\"tokenCount\"></span>\n </div>\n <div>\n <span [innerHTML]=\"wordingTokenLeft\"></span>\n </div>\n </div>\n </div>\n </div>\n <div *ngIf=\"!isRegister && !disabled\" class=\"wac-ai-express__register\">\n <p [innerHTML]=\"wordingRegisterTop\"></p>\n <a [target]=\"'_blank'\" [href]=\"hrefRegister\"><i class=\"fa-regular fa-wand-magic-sparkles\"></i> <span [innerHTML]=\"wordingRegisterBtn\"></span></a>\n </div>\n <div *ngIf=\"disabled && wordingDisabled\" class=\"wac-ai-express__disabled\">\n <p [innerHTML]=\"wordingDisabled\"></p>\n </div>\n</div>\n","import { Directive } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SelectDirective } from '../select/select/select.directive';\nimport { ValueChangeService } from '../select/select/value-change.service';\n\n@Directive({\n standalone: false,\n selector: '[wacRadioGroup]',\n providers: [\n { provide: NG_VALUE_ACCESSOR, useExisting: RadioGroupDirective, multi: true },\n ValueChangeService\n ],\n })\nexport class RadioGroupDirective<TOptionValue> extends SelectDirective<TOptionValue> {\n\n get multiple() {\n return false;\n }\n set multiple(value: boolean) {\n throw new Error('RadioGroupDirective does not support multiple selection');\n }\n override get searchByTyping() {\n return false;\n }\n set searchByTyping(value: boolean) {\n throw new Error('RadioGroupDirective does not support search by typing');\n }\n\n constructor(\n protected valueChangeService: ValueChangeService<TOptionValue>,\n ) {\n super(valueChangeService);\n }\n}","import { Component, ContentChild, ViewEncapsulation } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { RadioGroupDirective } from './radio-group.directive';\nimport { ValueChangeService } from '../select/select/value-change.service';\nimport { LabelComponent } from '../common/label/label.component';\n\n@Component({\n standalone: false,\n selector: 'wac-radio',\n templateUrl: './radio.component.html',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: RadioComponent,\n multi: true\n },\n ValueChangeService\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class RadioComponent<TOptionValue> extends RadioGroupDirective<TOptionValue> {\n \n @ContentChild(LabelComponent) label: LabelComponent;\n \n constructor(protected valueChangeService: ValueChangeService<TOptionValue>) {\n super(valueChangeService);\n }\n}\n","<div class=\"wac-radio\">\n <ng-container *ngIf=\"!!label\" class=\"wac-select__label\">\n <ng-content select=\"wac-label, .wac-label\" ></ng-content>\n </ng-container>\n <div class=\"wac-radio__row\">\n <ng-content></ng-content>\n </div>\n</div>\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { uuid } from '../../../utils/uuid';\nimport { OptionComponent } from '../../select/option/option.component';\nimport { OPTION_SELECTION_HANDLER } from '../../select/option/option-selection-handler.token';\n\n@Component({\n standalone: false,\n selector: 'wac-radio-option',\n templateUrl: './option.component.html',\n encapsulation: ViewEncapsulation.None,\n providers: [{ provide: OPTION_SELECTION_HANDLER, useExisting: RadioOptionComponent }],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class RadioOptionComponent<TOptionValue> extends OptionComponent<TOptionValue> {\n\n @ViewChild('contentWrapper') contentOption: ElementRef;\n\n optionId = `wac-radio-option-${uuid()}`;\n\n constructor(protected contentRef: ElementRef, protected changeDetectorRef: ChangeDetectorRef) {\n super(contentRef, changeDetectorRef);\n }\n\n override getContentRef(): ElementRef<any> {\n return this.contentOption;\n }\n}\n","<div\n [ngClass]=\"{ 'disabled': disabled }\"\n class=\"wac-radio-option\"\n >\n <div [ngClass]=\"{ 'selected': selected, 'disabled': disabled }\" #contentWrapper>\n <input type=\"checkbox\" [id]=\"optionId\" [checked]=\"selected\" />\n <label [for]=\"optionId\">\n <ng-content></ng-content>\n </label>\n </div>\n</div>","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-tag-dropdown',\n templateUrl: './tag-dropdown.component.html'\n})\nexport class TagDropdownComponent {\n @Input()\n hasIcons = false;\n @Input()\n items = [];\n\n @Input()\n label = '';\n @Input()\n class: 'default'|'success'|'warning'|'error' = 'default';\n @Input()\n icon = '';\n @Input()\n iconNext: string;\n @Input()\n colorIcon: string;\n @Input()\n iconFontSize = 12;\n\n @Input()\n isDropdown: boolean = true;\n\n @Output() userInput = new EventEmitter<any>();\n\n constructor() {}\n\n onUserInput(itemIndex) {\n this.userInput.emit(itemIndex);\n }\n}\n","<div class=\"wac-tag-dropdown\">\n <div class=\"wac-tag-dropdown__wrapper\" [ngClass]=\"{'hover': isDropdown}\">\n <div class=\"wac-tag-dropdown__wrapper__firstlevel\">\n <div [classList]=\"'wac-tag-dropdown__wrapper__firstlevel--' + class\">\n <i *ngIf=\"icon\" [ngClass]=\"icon + ' i-primary'\" [style.color]=\"colorIcon\" [style.font-size.px]=\"iconFontSize\"></i>\n {{ label }}\n <i *ngIf=\"iconNext\" [style.color]=\"colorIcon\" [ngClass]=\"iconNext + ' i-next'\" [style.font-size.px]=\"iconFontSize\"></i>\n <i *ngIf=\"isDropdown\" [ngClass]=\"'fas fa-angle-down i-dropdown'\" [style.font-size.px]=\"iconFontSize\"></i>\n </div>\n </div>\n <div class=\"wac-tag-dropdown__wrapper__sublevel\" *ngIf=\"isDropdown\">\n <ul class=\"wac-tag-dropdown__wrapper__sublevel__container\">\n <li\n *ngFor=\"let item of items\"\n class=\"wac-tag-dropdown__wrapper__sublevel__container__item\"\n (click)=\"onUserInput(item.index)\"\n >\n <i\n *ngIf=\"hasIcons\"\n [class]=\"item.icon\"\n [style.font-size.px]=\"item.iconFontSize ? item.iconFontSize : '14'\"\n ></i>\n <span>{{ item.label }}</span>\n </li>\n </ul>\n </div>\n </div>\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-grid',\n templateUrl: './grid.component.html',\n styleUrls: ['./grid.component.scss']\n})\nexport class GridComponent implements OnInit{\n @Input() cols: number = 12;\n @Input() gap: number = 10;\n @Input() justify: string = 'center';\n @Input() align: string = 'center';\n\n gridTemplateColumns: string;\n\n constructor() {}\n ngOnInit(): void {\n this.gridTemplateColumns = `repeat(${this.cols}, 1fr)`;\n }\n\n}\n","<div \n [style.gridTemplateColumns]=\"gridTemplateColumns\" \n [style.gap]=\"gap + 'px'\" \n [style.justifyContent]=\"justify\"\n [style.alignItems]=\"align\"\n class=\"wac-grid\">\n <ng-content></ng-content>\n</div>","import {Component, EventEmitter, forwardRef, Input, Output} from \"@angular/core\";\nimport {ControlValueAccessor, NG_VALUE_ACCESSOR} from '@angular/forms';\n\n@Component ({\n standalone: false,\n selector: \"wac-color-picker\",\n templateUrl: \"./color-picker.component.html\",\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ColorPickerComponent),\n multi: true\n }\n ]\n})\n\nexport class ColorPickerComponent implements ControlValueAccessor {\n @Input() label: string;\n @Input() value: string = '';\n @Input() gap: string = '12px';\n @Input() fontSize: string = '14px';\n @Input() id: string = 'colorPicker';\n @Input() info: string;\n @Output() colorChange = new EventEmitter<string>();\n\n constructor() {}\n\n onChange: any = () => {};\n onTouched: any = () => {};\n\n writeValue(value: string): void {\n if (value !== undefined) {\n this.value = value;\n }\n }\n\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setValue(event: any) {\n this.value = event.target.value;\n this.onChange(this.value);\n this.colorChange.emit(this.value);\n }\n\n changeColor(color: string) {\n // Check if it's an rgba color\n if (color.startsWith('rgba')) {\n this.value = color;\n this.onChange(this.value);\n this.colorChange.emit(this.value);\n return;\n }\n\n // Handle hex colors\n color = color.replace(/[^a-fA-F0-9]/g, '');\n\n // Add '#' if not present\n if (!color.startsWith('#')) {\n color = '#' + color;\n }\n\n\n // Validate and update color\n if (this.isValidColor(color)) {\n this.value = color;\n this.onChange(this.value);\n this.colorChange.emit(this.value);\n } else {\n this.colorChange.emit(this.value);\n }\n}\n\n\n isValidColor(color: string): boolean {\n const s = new Option().style;\n s.color = color;\n return s.color !== '';\n }\n}\n","<div class=\"w-color-picker\" [ngStyle]=\"{'gap': gap}\">\n\n <div class=\"w-label\">\n <label class=\"cp-label\" [for]=\"id\" [ngStyle]=\"{'font-size': fontSize}\">{{ label }}</label>\n <wac-info *ngIf=\"info\">{{ info }}</wac-info>\n </div>\n\n <div class=\"w-input\">\n\n <div\n class=\"color-preview\"\n [colorPicker]=\"value\"\n (click)=\"colorPickerInput.openDialog()\"\n [ngStyle]=\"{'background-color': value}\"\n [cpPosition]=\"'bottom'\"\n [cpPositionOffset]=\"'-35'\"\n ></div>\n\n <input\n class=\"cp-input\"\n [id]=\"id\"\n #colorPickerInput=\"ngxColorPicker\"\n maxlength=\"7\"\n placeholder=\"#000000\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"changeColor($event)\"\n [colorPicker]=\"value\"\n (colorPickerChange)=\"changeColor($event)\"\n [cpPosition]=\"'bottom'\"\n [cpPositionOffset]=\"'-35'\"\n (input)=\"setValue($event)\"\n />\n\n </div>\n\n</div>\n","import { CommonModule } from \"@angular/common\";\nimport {Component, EventEmitter, Input, Output, OnInit , HostListener, CUSTOM_ELEMENTS_SCHEMA, forwardRef, AfterViewInit} from \"@angular/core\";\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component ({\n selector: \"wac-border-picker\",\n templateUrl: \"./border-picker.component.html\",\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n ],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => BorderPickerComponent),\n multi: true\n }\n ]\n})\n\nexport class BorderPickerComponent implements ControlValueAccessor, OnInit, AfterViewInit {\n @Input() label: string;\n @Input() gap: string = '12px';\n @Input() fontSize: string = '14px';\n @Input() disabled: boolean = false;\n @Input() value: string = '0px';\n @Input() maxPixels: number = 50; // Valeur maximale en pixels\n\n @Output() blurred = new EventEmitter<void>();\n @Output() borderRadiusChange = new EventEmitter<string>();\n sliderValue: number = 0;\n\n constructor() {}\n\n onChange: any = () => {};\n onTouched: any = () => {};\n\n ngOnInit() {\n if (this.value) {\n const numericValue = parseInt(this.value.replace('px', ''), 10);\n if (!isNaN(numericValue)) {\n this.sliderValue = numericValue;\n }\n }\n }\n\n writeValue(value: string | null): void {\n if (value !== undefined) {\n this.value = value || '0px'; // Default to '0px' if value is null\n \n if (this.value) {\n const numericValue = parseInt(this.value.replace('px', ''), 10);\n if (!isNaN(numericValue)) {\n this.sliderValue = numericValue;\n this.updateSliderPercentage();\n }\n } else {\n // Handle null value case\n this.sliderValue = 0;\n this.value = '0px';\n this.updateSliderPercentage();\n }\n }\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setValue(event: any) {\n this.value = event.target.value || '0px';\n \n if (this.value) {\n const numericValue = parseInt(this.value.replace('px', ''), 10);\n \n if (!isNaN(numericValue)) {\n this.sliderValue = numericValue;\n this.updateSliderPercentage();\n }\n } else {\n this.sliderValue = 0;\n }\n \n this.onChange(this.value);\n this.borderRadiusChange.emit(this.value);\n }\n\n private updateSliderPercentage() {\n const slider = document.querySelector('.bp-range') as HTMLElement;\n if (slider) {\n const percentage = (this.sliderValue / this.maxPixels) * 100;\n slider.style.setProperty('--slider-percentage', `${percentage}%`);\n }\n }\n\n ngAfterViewInit() {\n this.updateSliderPercentage();\n }\n\n onFocusOut() {\n if (!this.value.endsWith('px') && this.value) {\n this.value = this.value + 'px';\n this.onChange(this.value);\n this.borderRadiusChange.emit(this.value);\n }\n }\n\n updateBorderRadius(value: number) {\n this.value = value + 'px';\n this.updateSliderPercentage();\n this.onChange(this.value);\n this.borderRadiusChange.emit(this.value);\n }\n\n setBorderRadius(value: number) {\n this.sliderValue = value;\n this.updateBorderRadius(value);\n }\n}","<div class=\"w-border-picker\" [ngStyle]=\"{'gap': gap}\">\n\n <label class=\"bp-label\" for=\"borderPicker\" [ngStyle]=\"{'font-size': fontSize}\">{{ label }}</label>\n\n <div class=\"w-input\">\n\n <div class=\"border-preview\" [ngStyle]=\"{'border-radius': value}\">\n <div class=\"mask1\"></div>\n <div class=\"mask2\"></div>\n </div>\n\n <input\n class=\"bp-range\"\n type=\"range\"\n min=\"0\"\n [max]=\"maxPixels\"\n [(ngModel)]=\"sliderValue\"\n (ngModelChange)=\"updateBorderRadius($event)\"\n />\n\n <input\n class=\"bp-input\"\n id=\"borderPicker\"\n [placeholder]=\"sliderValue\"\n maxlength=\"5\"\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onChange($event)\"\n (focusout)=\"onFocusOut()\"\n (input)=\"setValue($event)\"\n />\n\n </div>\n\n</div>","import { Component, Input, Output, EventEmitter } from '@angular/core';\n\n@Component({\n standalone: false,\n selector: 'wac-slide-in',\n templateUrl: './slide-in.component.html'\n})\nexport class SlideInComponent {\n @Input() title: string = '';\n @Input() subtitle: string = '';\n @Input() isOpen: boolean = false;\n @Input() hasButton: boolean = false;\n @Input() primaryButtonText: string = 'Valider';\n @Input() secondaryButtonText: string = 'Annuler';\n @Input() maxWidth: string | null = null;\n\n @Output() closed = new EventEmitter<void>();\n @Output() primaryButtonClick = new EventEmitter<void>();\n @Output() secondaryButtonClick = new EventEmitter<void>();\n\n /**\n * Ouvre le panneau coulissant\n */\n open(): void {\n this.isOpen = true;\n document.body.classList.add('slide-in-open');\n }\n\n /**\n * Ferme le panneau coulissant\n */\n close(): void {\n this.isOpen = false;\n document.body.classList.remove('slide-in-open');\n this.closed.emit();\n }\n\n /**\n * Gère le clic sur le bouton primaire\n */\n onPrimaryButtonClick(): void {\n this.primaryButtonClick.emit();\n }\n\n /**\n * Gère le clic sur le bouton secondaire\n */\n onSecondaryButtonClick(): void {\n this.secondaryButtonClick.emit();\n }\n}","<ng-container class=\"slide-in\">\n <div class=\"slide-in__overlay\" [class.is-visible]=\"isOpen\" (click)=\"close()\"></div>\n \n <div class=\"slide-in__panel\" [class.is-open]=\"isOpen\" [style.max-width]=\"maxWidth ? maxWidth : '534px'\">\n \n <div class=\"slide-in__panel__header\">\n <div class=\"w-title\">\n <wac-h1 noMargin class=\"slide-in__panel__header__title\">{{ title }}</wac-h1>\n <wac-text *ngIf=\"subtitle\" noMargin [textClass]=\"'grey'\">{{ subtitle }}</wac-text>\n </div>\n <i class=\"slide-in__panel__header__close fa-regular fa-xmark\" (click)=\"close()\"></i>\n </div>\n \n <div class=\"slide-in__panel__content\">\n <ng-content></ng-content>\n </div>\n\n <div class=\"slide-in__panel__footer\" *ngIf=\"hasButton\">\n <wac-button \n [extraClasses]=\"'is-grey is-outlined'\" \n [label]=\"secondaryButtonText\"\n (click)=\"onSecondaryButtonClick()\"\n ></wac-button>\n <wac-button \n [extraClasses]=\"'is-info'\" \n [label]=\"primaryButtonText\"\n (click)=\"onPrimaryButtonClick()\"\n ></wac-button>\n </div>\n \n </div>\n</ng-container>","import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { Params, Router } from '@angular/router';\n\n@Component({\n standalone: false,\n selector: 'wac-menu-tile',\n templateUrl: './menu-tile.component.html',\n styleUrls: ['./menu-tile.component.scss']\n})\nexport class MenuTileComponent implements OnInit {\n\n private _col: number = 1;\n\n @Input()\n get col(): number { \n return this._col; \n }\n set col(value: number) {\n // Ensure col is between 1-12 for a 12-column grid\n this._col = !isNaN(Number(value)) ? Math.min(Math.max(Math.round(Number(value)), 1), 12) : 1;\n }\n\n @HostBinding('class')\n get hostClasses(): string {\n return `wac-menu-tile wac-menu-tile--col-${this.col}`;\n }\n\n @Input() iconPath: string = '';\n\n @Input() title: string = '';\n\n @Input() description: string = '';\n\n @Input() new: string = '';\n\n @Input() newElement: boolean = false;\n\n @Input() url: string | null = null;\n\n @Input() urlQueryParams: Params = null;\n\n @Input() external: boolean = false;\n\n constructor(private router: Router) {}\n\n ngOnInit() {}\n\n navigate() {\n const queryParams = this.urlQueryParams;\n this.router.navigate([this.url], \n {\n queryParams,\n queryParamsHandling: 'merge',\n }\n );\n }\n}\n","<div class=\"wac-menu-tile__new\" *ngIf=\"newElement\">\n <i class=\"fa-regular fa-wand-magic-sparkles\"></i>\n <wac-text noMargin *ngIf=\"new\">{{ new }}</wac-text>\n</div>\n<a class=\"wac-menu-tile__content\" [ngClass]=\"{'with-desc': description}\" *ngIf=\"url && url.startsWith('http')\" [href]=\"url\" [target]=\"external ? '_blank' : '_self'\">\n <img [src]=\"iconPath\" />\n <div class=\"w-text\">\n <wac-text noMargin>{{ title }}</wac-text>\n <wac-text *ngIf=\"description\" noMargin [textClass]=\"'grey'\">{{ description }}</wac-text>\n </div>\n</a>\n<a class=\"wac-menu-tile__content\" [ngClass]=\"{'with-desc': description}\" *ngIf=\"url && !url.startsWith('http')\" (click)=\"navigate()\">\n <img [src]=\"iconPath\" />\n <div class=\"w-text\">\n <wac-text noMargin>{{ title }}</wac-text>\n <wac-text *ngIf=\"description\" noMargin [textClass]=\"'grey'\">{{ description }}</wac-text>\n </div>\n</a>\n<div *ngIf=\"!url\" class=\"wac-menu-tile__content\" [ngClass]=\"{'with-desc': description}\">\n <img [src]=\"iconPath\" />\n <div class=\"w-text\">\n <wac-text noMargin>{{ title }}</wac-text>\n <wac-text *ngIf=\"description\" noMargin [textClass]=\"'grey'\">{{ description }}</wac-text>\n </div>\n</div>\n","import {Component, Input, OnInit} from '@angular/core';\nimport {ImageTextSectionDto} from \"./image-text-section.dto\";\n\n@Component({\n standalone: false,\n selector: 'wac-image-text-section',\n templateUrl: './image-text-section.component.html'\n})\nexport class ImageTextSectionComponent {\n\n private _data!: ImageTextSectionDto;\n public textIsArray = false;\n @Input()\n set data(value: ImageTextSectionDto) {\n this._data = {\n buttonTarget: '_self',\n reverse: false,\n ...value,\n };\n if (typeof this._data.text === 'string') {\n this.textIsArray = false;\n } else {\n this.textIsArray = true;\n }\n }\n\n get data(): ImageTextSectionDto {\n return this._data;\n }\n constructor() {}\n}\n","<div class=\"wac-image-text-section\" [ngClass]=\"{'wac-image-text-section--reverse': data?.reverse}\">\n <div class=\"wac-image-text-section__left\">\n <div class=\"wac-image-text-section__left__text\">\n <h2 *ngIf=\"data?.title\" [innerHTML]=\"data.title\"></h2>\n <ng-container *ngIf=\"data?.text && textIsArray\">\n <div class=\"wac-image-text-section__left__text__paragraph\">\n <p *ngFor=\"let text of data.text; let i = index\" [innerHTML]=\"text\"></p>\n </div>\n </ng-container>\n <p *ngIf=\"data?.text && !textIsArray\" [innerHTML]=\"data?.text\"></p>\n <ng-container *ngIf=\"data?.listItems\">\n <ul>\n <li *ngFor=\"let list of data?.listItems\"><i class=\"fa-solid fa-check\"></i><span [innerHTML]=\"list\"></span></li>\n </ul>\n </ng-container>\n </div>\n <ng-container *ngIf=\"data?.buttonLink && data?.buttonText\">\n <div class=\"wac-image-text-section__left__btn\">\n <wac-button [label]=\"data?.buttonText\" routerLink=\"{{data?.buttonLink}}\" [target]=\"data?.buttonTarget\"></wac-button>\n </div>\n </ng-container>\n </div>\n <div class=\"wac-image-text-section__right\">\n <div class=\"gabarit-img-main\">\n <img [src]=\"data?.imageSrc\" [alt]=\"data?.imageAlt\" />\n </div>\n </div>\n</div>\n","import {Component, Input} from '@angular/core';\nimport {FaqSectionDto} from \"./faq-section.dto\";\n\n@Component({\n standalone: false,\n selector: 'wac-faq-section',\n templateUrl: './faq-section.component.html'\n})\nexport class FaqSectionComponent {\n\n @Input() data: FaqSectionDto;\n constructor() {}\n}\n","<div class=\"wac-faq-section\">\n <h2 *ngIf=\"data?.title\" [innerHTML]=\"data?.title\"></h2>\n <div class=\"wac-faq-section__wrapper\">\n <div class=\"wac-faq-section__wrapper__item\" *ngFor=\"let item of data?.content; let i = index;\">\n <strong [innerHTML]=\"item.question\"></strong>\n <p [innerHTML]=\"item.answer\"></p>\n </div>\n </div>\n</div>\n","import {Component, Input} from '@angular/core';\nimport {ReassuranceSectionDto} from \"./reassurance-section.dto\";\n\n@Component({\n standalone: false,\n selector: 'wac-reassurance-section',\n templateUrl: './reassurance-section.component.html'\n})\nexport class ReassuranceSectionComponent {\n\n @Input() data: ReassuranceSectionDto;\n constructor() {}\n}\n","<div class=\"wac-reassurance-section\">\n <h2 *ngIf=\"data?.title\" [innerHTML]=\"data?.title\" class=\"wac-reassurance-section__title\"></h2>\n <div class=\"wac-reassurance-section__wrapper\">\n <div class=\"wac-reassurance-section__wrapper__item\" *ngFor=\"let item of data?.content; let i = index;\">\n <strong [innerHTML]=\"item.title\"></strong>\n <span [innerHTML]=\"item.text\"></span>\n </div>\n </div>\n</div>\n","import {Component, Input} from '@angular/core';\nimport {PricingSectionDto} from \"./pricing-section.dto\";\n\n@Component({\n standalone: false,\n selector: 'wac-pricing-section',\n templateUrl: './pricing-section.component.html'\n})\nexport class PricingSectionComponent {\n\n @Input() data: PricingSectionDto;\n constructor() {}\n}\n","<div class=\"wac-pricing-section\">\n <div class=\"wac-pricing-section__top\">\n <h2 *ngIf=\"data?.title\" [innerHTML]=\"data?.title\"></h2>\n <div class=\"wac-pricing-section__top__text\" *ngIf=\"data?.subtitle\" [innerHTML]=\"data?.subtitle\"></div>\n </div>\n\n <div class=\"wac-pricing-section__table\">\n <div class=\"wac-pricing-section__table__top\">\n <div class=\"wac-pricing-section__table__item\" *ngFor=\"let table of data?.tables\">\n <div class=\"wac-pricing-section__table__item__thead\">\n <i *ngIf=\"table?.icon\" class=\"{{ table?.icon }}\"></i>\n <strong [innerHTML]=\"table.title\"></strong>\n </div>\n <div class=\"wac-pricing-section__table__item__tbody\">\n <div class=\"wac-pricing-section__table__item__tbody__label\">\n <strong *ngFor=\"let th of table.thead\">{{ th }}</strong>\n </div>\n <div class=\"wac-pricing-section__table__item__tbody__line\" *ngFor=\"let line of table.tbody\">\n <strong class=\"hide-for-mobile\">{{ line[0] }}</strong>\n <span *ngFor=\"let l of line;let i = index;\" [ngClass]=\"{'hide': i === 0}\">\n <ng-container *ngIf=\"i > 0\">\n <span><strong class=\"show-for-mobile\">{{ line[0] }}<br/></strong>{{l}}</span>\n </ng-container>\n </span>\n </div>\n </div>\n </div>\n </div>\n <div class=\"wac-pricing-section__table__bottom\" *ngIf=\"data?.furtherInformation\">\n <p class=\"italic small\" [innerHTML]=\"data?.furtherInformation\"></p>\n </div>\n </div>\n\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NwbAllModule } from '@wizishop/ng-wizi-bulma';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { LoaderComponent } from './loader/loader.component';\nimport { InputSearchComponent } from './inputs/input-search/input-search.component';\nimport { SharedDirectives } from '../directives/shared-directives.module';\nimport { CdkTableModule } from '@angular/cdk/table';\nimport { CheckboxComponent } from './checkbox/checkbox.component';\nimport { TableComponent } from './table/table.component';\nimport { TagComponent } from './tag/tag.component';\nimport { TabsComponent } from './tabs/tabs.component';\nimport { TabComponent } from './tabs/tab/tab.component';\nimport { ButtonComponent } from './button/button.component';\nimport { InfoComponent } from './info/info.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { DeleteComponent } from './delete/delete.component';\nimport { DropdownComponent } from './dropdown/dropdown.component';\nimport { ImageComponent } from './image/image.component';\nimport { BackComponent } from './back/back.component';\nimport { SeparatorComponent } from './separator/separator.component';\nimport { LogoComponent } from './logo/logo.component';\nimport { RadioLegacyComponent } from './radio-legacy/radio.component';\nimport { StateComponent } from './state/state.component';\nimport { TagLabelComponent } from './tag-label/tag-label.component';\nimport { CalendarComponent } from './calendar/calendar.component';\nimport { WzEditInPlaceComponent } from './edit-in-place/edit-in-place.component';\nimport { TextAreaComponent } from './text-area/text-area.component';\nimport { H1Component } from './hn/h1/h1.component';\nimport { H2Component } from './hn/h2/h2.component';\nimport { H3Component } from './hn/h3/h3.component';\nimport { HeaderPageComponent } from './header-page/header-page.component';\nimport { InputComponent } from './inputs/input/input.component';\nimport { LinkComponent } from './link/link.component';\nimport { ProgressBarComponent } from './progress-bar/progress-bar.component';\nimport { SwitchComponent } from './switch/switch.component';\nimport { TooltipComponent } from './tooltip/tooltip.component';\nimport { AlertComponent } from './alert/alert.component';\nimport { TextComponent } from './text/text.component';\nimport { PaginationModule } from './pagination/pagination.module';\nimport { PaginationComponent } from './pagination/pagination.component';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { TableModule } from './table/table.module';\nimport { CheckBoxRow } from './table/directives/checkBoxRow.directive';\nimport { TableColumn } from './table/directives/column.directive';\nimport { TableColumnHeader } from './table/directives/columnHeader.directive';\nimport { TableRow } from './table/directives/raw.directive';\nimport { TooltipModule } from './tooltip/tooltip.module';\nimport { CheckboxModule } from './checkbox/checkbox.module';\nimport { UploadComponent } from './upload/upload.component';\nimport { H4Component } from './hn/h4/h4.component';\nimport { SelectInTextComponent } from './select-in-text/select-in-text.component';\nimport { MultipleSearchComponent } from './multiple-search/multiple-search.component';\nimport { MultipleSearchPlusComponent } from './multiple-search-plus/multiple-search-plus.component';\nimport { InputWithSelectComponent } from './inputs/input-with-select/input-with-select.component';\nimport { PopinComponent } from './popin/popin.component';\nimport { FreePopinComponent } from './free-popin/free-popin.component';\nimport { BlockComponent } from './block/block.component';\nimport { WrapperComponent } from './wrapper/wrapper.component';\nimport { FiltersComponent } from './filters/filters.component';\nimport { WrapperBlocsComponent } from './wrapper-blocs/wrapper-blocs.component';\nimport { SnackbarComponent } from './snackbar/snackbar.component';\nimport { RouterModule } from '@angular/router';\nimport {AlertPopupModule} from './alert-popup/alert-popup-module';\nimport {SearchComponent} from './search/search.component';\nimport {SelectedListComponent} from './selected-list/selected-list.component';\nimport { TreeComponent } from './tree/tree.component';\nimport { TreeModule } from './tree/tree.module';\nimport { SharedPipes } from '../pipes/shared-pipes.module';\nimport { OptionalDisableContainerComponent } from './optional-disable-container/optional-disable-container.component';\nimport { OptionComponent } from './select/option/option.component';\nimport { OptionGroupComponent } from './select/option-group/option-group.component';\nimport { SelectComponent } from './select/select/select.component';\nimport { OptionCallToActionComponent } from './select/option-call-to-action/option-call-to-action.component';\nimport { PlaceholderComponent } from './common/placeholder/placeholder.component';\nimport { SelectSearchTriggerComponent } from './select/select-search-trigger/select-search-trigger.component';\nimport { LabelComponent } from './common/label/label.component';\nimport {WrapperSidebarComponent} from './wrapper-sidebar/wrapper-sidebar.component';\nimport {AutosizeModule} from 'ngx-autosize';\nimport {BreadcrumbsComponent} from './breadcrumbs/breadcrumbs.component';\nimport {CardPriceComponent} from './card-price/card-price.component';\nimport {TokenCheckComponent} from './token-check/token-check.component';\nimport {BlockWithCheckboxComponent} from './block-with-checkbox/block-with-checkbox.component';\nimport {ConfirmDeleteComponent} from './confirm-delete/confirm-delete.component';\nimport {MosaicComponent} from './mosaic/mosaic.component';\nimport {NgScrollbarModule} from 'ngx-scrollbar';\nimport {NgScrollReached} from 'ngx-scrollbar/reached-event';\nimport {ContentWithButtonsComponent} from './content-with-buttons/content-with-buttons.component';\nimport {WrapperMultipleBlockComponent} from './wrapper-multiple-block/wrapper-multiple-block.component';\nimport {DraganddropListComponent} from './draganddrop-list/draganddrop-list.component';\nimport {DragDropModule} from '@angular/cdk/drag-drop';\nimport { ExpansionModule, ExpansionExport } from './expansion/expansion.module';\nimport { BlockSeparatorComponent } from './block/separator/block-separator.component';\nimport { BlockTitleLegacyComponent } from './block/block-title-legacy/block-title-legacy.component';\nimport { SummaryComponent } from './summary/summary.component';\nimport {GooglePreviewComponent} from './google-preview/google-preview.component';\nimport {ChargingBarComponent} from './charging-bar/charging-bar.component';\nimport {ExpandedPanelComponent} from './expanded-panel/expanded-panel.component';\nimport {RowComponent} from './row/row.component';\nimport {ColumnComponent} from './column/column.component';\nimport {AiExpressComponent} from './ai-express/ai-express.component';\nimport { RadioComponent } from './radio/radio.component';\nimport { RadioOptionComponent } from './radio/option/option.component';\nimport { TagDropdownComponent } from \"./tag-dropdown/tag-dropdown.component\";\nimport { GridComponent } from './grid/grid.component';\nimport { ColorPickerDirective } from 'ngx-color-picker';\nimport { ColorPickerComponent } from './color-picker/color-picker.component';\nimport { BorderPickerComponent } from './border-picker/border-picker.component';\nimport { SlideInComponent } from './slide-in/slide-in.component';\nimport { MenuTileComponent } from './menu-tile/menu-tile.component';\nimport {ImageTextSectionComponent} from \"./image-text-section/image-text-section.component\";\nimport {FaqSectionComponent} from \"./faq-section/faq-section.component\";\nimport {ReassuranceSectionComponent} from \"./reassurance-section/reassurance-section.component\";\nimport {PricingSectionComponent} from \"./pricing-section/pricing-section.component\";\n\nconst components = [\n GridComponent,\n TagComponent,\n ButtonComponent,\n InfoComponent,\n SettingsComponent,\n DeleteComponent,\n DropdownComponent,\n ImageComponent,\n BackComponent,\n SeparatorComponent,\n LogoComponent,\n RadioLegacyComponent,\n RadioComponent,\n StateComponent,\n TagLabelComponent,\n CalendarComponent,\n WzEditInPlaceComponent,\n AlertComponent,\n HeaderPageComponent,\n SwitchComponent,\n LinkComponent,\n H1Component,\n H2Component,\n H3Component,\n H4Component,\n TextComponent,\n UploadComponent,\n SelectInTextComponent,\n MultipleSearchComponent,\n MultipleSearchPlusComponent,\n PopinComponent,\n FreePopinComponent,\n WrapperComponent,\n FiltersComponent,\n WrapperBlocsComponent,\n SearchComponent,\n SelectedListComponent,\n OptionalDisableContainerComponent,\n SelectComponent,\n OptionComponent,\n OptionCallToActionComponent,\n PlaceholderComponent,\n LabelComponent,\n SelectSearchTriggerComponent,\n WrapperSidebarComponent,\n BreadcrumbsComponent,\n CardPriceComponent,\n TokenCheckComponent,\n BlockWithCheckboxComponent,\n ConfirmDeleteComponent,\n MosaicComponent,\n ContentWithButtonsComponent,\n WrapperMultipleBlockComponent,\n DraganddropListComponent,\n SummaryComponent,\n GooglePreviewComponent,\n DraganddropListComponent,\n ChargingBarComponent,\n ExpandedPanelComponent,\n RowComponent,\n ColumnComponent,\n AiExpressComponent,\n RadioOptionComponent,\n TagDropdownComponent,\n SlideInComponent,\n OptionGroupComponent,\n MenuTileComponent,\n ColorPickerComponent,\n ImageTextSectionComponent,\n FaqSectionComponent,\n ReassuranceSectionComponent,\n PricingSectionComponent\n];\n\nconst exportsFromModule = [\n PaginationComponent,\n TableComponent,\n TableColumn,\n CheckBoxRow,\n TableColumnHeader,\n TableRow,\n TooltipComponent,\n CheckboxComponent,\n LoaderComponent,\n TreeComponent,\n ...ExpansionExport\n];\n\nconst standaloneComponents = [\n TabsComponent,\n TabComponent,\n SnackbarComponent,\n BlockComponent,\n LoaderComponent,\n TextAreaComponent,\n ProgressBarComponent,\n InputComponent,\n InputSearchComponent,\n InputWithSelectComponent,\n BlockTitleLegacyComponent,\n BlockSeparatorComponent,\n BorderPickerComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n NwbAllModule,\n TranslateModule,\n ReactiveFormsModule,\n SharedDirectives,\n SharedPipes,\n CdkTableModule,\n DragDropModule,\n PaginationModule,\n TableModule,\n TooltipModule,\n CheckboxModule,\n AlertPopupModule,\n RouterModule,\n AutosizeModule,\n NgScrollbarModule,\n NgScrollReached,\n TreeModule,\n ExpansionModule,\n ColorPickerDirective,\n TabsComponent,\n TabComponent,\n SnackbarComponent,\n BlockComponent,\n LoaderComponent,\n TextAreaComponent,\n ProgressBarComponent,\n InputComponent,\n InputSearchComponent,\n InputWithSelectComponent,\n BlockTitleLegacyComponent,\n BlockSeparatorComponent,\n BorderPickerComponent\n ],\n declarations: components,\n exports: [\n ...components,\n ...exportsFromModule,\n TabsComponent,\n TabComponent,\n SnackbarComponent,\n BlockComponent,\n LoaderComponent,\n TextAreaComponent,\n ProgressBarComponent,\n InputComponent,\n InputSearchComponent,\n InputWithSelectComponent,\n BlockTitleLegacyComponent,\n BlockSeparatorComponent,\n BorderPickerComponent\n ]\n})\nexport class SharedComponentsModule {}\n","import { NwbAllModule } from '@wizishop/ng-wizi-bulma';\nimport { NgModule } from '@angular/core';\nimport { SharedComponentsModule } from './components/shared-components.module';\nimport { CommonModule } from '@angular/common';\nimport { SharedDirectives } from './directives/shared-directives.module';\nimport { SharedPipes } from './pipes/shared-pipes.module';\n\n@NgModule({\n imports: [\n CommonModule,\n SharedComponentsModule,\n SharedDirectives,\n SharedPipes,\n NwbAllModule],\n exports: [SharedComponentsModule, SharedDirectives, SharedPipes]\n})\nexport class WiziComponentsModule {}\n","import { NwbFilterGroup } from \"@wizishop/ng-wizi-bulma\";\nimport { Observable, ReplaySubject } from \"rxjs\";\nimport { TableFilters } from \"./table-filters.model\";\n\nexport class TableFiltersGroup extends NwbFilterGroup {\n tableFiltersValuesChange$: ReplaySubject<TableFilters>;\n tableFiltersValuesDebouncedChange$: Observable<TableFilters>;\n\n set(key: \"sort\" | \"order\" | \"searchValue\" | \"totalItems\" | \"itemsPerPage\" | \"currentPage\", value: any): void {\n super.set(key, value);\n }\n\n resetToFirstPage(): void {\n this.set(\"currentPage\", 1);\n }\n}","import { BehaviorSubject, distinctUntilChanged, tap } from \"rxjs\";\nimport { TableFilters } from \"./table-filters.model\";\n\n/**\n * Avoid to fetch data when totalItems change\n * @returns\n */\nexport function distinctUntilTableFiltersChanged() {\n return distinctUntilChanged<TableFilters>((previousFilters, currentFilters) => {\n return previousFilters.searchValue === currentFilters.searchValue &&\n previousFilters.sort === currentFilters.sort &&\n previousFilters.order === currentFilters.order &&\n previousFilters.currentPage === currentFilters.currentPage &&\n previousFilters.itemsPerPage === currentFilters.itemsPerPage;\n });\n}\n\nexport function updateTableFiltersTotalItems<TResponse extends {totalItems: number}>(tableFilters$: BehaviorSubject<TableFilters>, totalItems?: number) {\n return tap((response: TResponse) => tableFilters$.next({\n ...tableFilters$.getValue(),\n totalItems: totalItems ?? response['totalItems']\n }))\n}","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\n\nconst currentUsedSelectorForThisAnimation = 'li, div';\n\nexport const showFromBottom = trigger('showFromBottom', [\n transition('* => *', [\n animation([\n query(\n currentUsedSelectorForThisAnimation,\n style({\n opacity: 0,\n position: 'relative',\n bottom: -150\n }),\n { optional: true }\n ),\n query(currentUsedSelectorForThisAnimation, [stagger('150ms', animate('100ms', style({ opacity: 1, bottom: 0 })))], { optional: true })\n ])\n ])\n]);\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\n\nconst currentUsedSelectorForThisAnimation = 'li, div';\n\nexport const showFromTop = trigger('showFromTop', [\n transition('* => *', [\n animation([\n query(\n currentUsedSelectorForThisAnimation,\n style({\n opacity: 0,\n position: 'relative',\n top: -150\n }),\n { optional: true }\n ),\n query(currentUsedSelectorForThisAnimation, [stagger('150ms', animate('100ms', style({ opacity: 1, top: 0 })))], { optional: true })\n ])\n ])\n]);\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\n\nconst currentUsedSelectorForThisAnimation = 'li, div';\n\nexport const showFromLeft = trigger('showFromLeft', [\n transition('* => *', [\n animation([\n query(\n currentUsedSelectorForThisAnimation,\n style({\n opacity: 0,\n position: 'relative',\n left: -150\n }),\n { optional: true }\n ),\n query(currentUsedSelectorForThisAnimation, [stagger('150ms', animate('100ms', style({ opacity: 1, left: 0 })))], { optional: true })\n ])\n ])\n]);\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\n\nconst currentUsedSelectorForThisAnimation = 'li, div';\n\nexport const showFromRight = trigger('showFromRight', [\n transition('* => *', [\n animation([\n query(\n currentUsedSelectorForThisAnimation,\n style({\n opacity: 0,\n position: 'relative',\n right: -150\n }),\n { optional: true }\n ),\n query(currentUsedSelectorForThisAnimation, [stagger('150ms', animate('100ms', style({ opacity: 1, right: 0 })))], { optional: true })\n ])\n ])\n]);\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\n\nexport function animateListFromBottom(passedTime = '.3s ease') {\n return trigger('animateList', [\n transition('* => *', [\n animation(\n [\n query(':enter', [style({ position: 'relative', opacity: 0, bottom: '-60px' })], { optional: true }),\n\n query(\n ':leave',\n [\n style({ position: 'relative', opacity: 1, bottom: 0 }),\n animate('{{time}}', style({ position: 'relative', opacity: 0, bottom: '-60px' }))\n ],\n { optional: true }\n ),\n\n query(':enter', stagger('100ms', [animate('{{time}}', style({ position: 'relative', opacity: 1, bottom: 0 }))]), {\n optional: true\n })\n ],\n { params: { time: passedTime } }\n )\n ])\n ]);\n}\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\n\nexport function animateListFromTop(passedTime = '.3s ease') {\n return trigger('animateList', [\n transition('* => *', [\n animation(\n [\n query(':enter', [style({ position: 'relative', opacity: 0, top: '-60px' })], { optional: true }),\n\n query(\n ':leave',\n [\n style({ position: 'relative', opacity: 1, top: 0 }),\n animate('{{time}}', style({ position: 'relative', opacity: 0, top: '-60px' }))\n ],\n { optional: true }\n ),\n\n query(':enter', stagger('200ms', [animate('{{time}}', style({ position: 'relative', opacity: 1, top: 0 }))]), { optional: true })\n ],\n { params: { time: passedTime } }\n )\n ])\n ]);\n}\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\n\nexport function animateListFromRight(passedTime = '.3s ease-in-out', staggerTime = '50ms') {\n return trigger('animateList', [\n transition('* => *', [\n animation(\n [\n query(':enter', [style({ position: 'relative', opacity: 0, right: '-60px' })], { optional: true }),\n\n query(\n ':leave',\n [\n style({ position: 'relative', opacity: 1, right: 0 }),\n animate('{{time}}', style({ position: 'relative', opacity: 0, right: '-60px' }))\n ],\n { optional: true }\n ),\n\n query(':enter', stagger(staggerTime, [animate('{{time}}', style({ position: 'relative', opacity: 1, right: 0 }))]), {\n optional: true\n })\n ],\n { params: { time: passedTime } }\n )\n ])\n ]);\n}\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\n\nexport function animateListFromLeft(passedTime = '.3s ease') {\n return trigger('animateList', [\n transition('* => *', [\n animation(\n [\n query(':enter', [style({ position: 'relative', opacity: 0, left: '-60px' })], { optional: true }),\n\n query(\n ':leave',\n [\n style({ position: 'relative', opacity: 1, left: 0 }),\n animate('{{time}}', style({ position: 'relative', opacity: 0, left: '-60px' }))\n ],\n { optional: true }\n ),\n\n query(':enter', stagger('{{time}}', [animate('{{time}}', style({ position: 'relative', opacity: 1, left: 0 }))]), {\n optional: true\n })\n ],\n { params: { time: passedTime } }\n )\n ])\n ]);\n}\n","import { animate, animation, style, transition, trigger } from '@angular/animations';\n\nexport const switchInOut = trigger('switchInOut', [\n transition(':enter', [animation([style({ transform: 'translateX(100%)', opacity: 0 }), animate('200ms 200ms ease')])]),\n transition(':leave', [animation([animate('200ms ease', style({ transform: 'translateX(-100%)', opacity: 0 }))])])\n]);\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nexport interface TagModel {\n display: string;\n value: string;\n}\n\n@Component({\n standalone: true,\n selector: 'wac-tag-input',\n templateUrl: './tag-input.component.html',\n styleUrls: ['./tag-input.component.scss'],\n imports: [CommonModule, FormsModule]\n})\nexport class TagInputComponent {\n @Input() placeholder = '';\n @Input() secondaryPlaceholder = '';\n @Input() addOnBlur = true;\n @Input() addOnPaste = true;\n\n @Input() tags: TagModel[] = [];\n @Output() tagsChange = new EventEmitter<TagModel[]>();\n @Output() onAdd = new EventEmitter<TagModel>();\n @Output() onRemove = new EventEmitter<TagModel>();\n\n inputValue = '';\n\n get currentPlaceholder(): string {\n return this.tags.length > 0 ? this.secondaryPlaceholder : this.placeholder;\n }\n\n onKeydown(event: KeyboardEvent): void {\n if (event.key === 'Enter' || event.key === ',') {\n event.preventDefault();\n this.addTag(this.inputValue);\n }\n }\n\n onInputBlur(): void {\n if (this.addOnBlur) {\n this.addTag(this.inputValue);\n }\n }\n\n onPaste(event: ClipboardEvent): void {\n if (!this.addOnPaste) {\n return;\n }\n event.preventDefault();\n const pastedText = event.clipboardData?.getData('text') || '';\n const items = pastedText.split(/[,\\n]+/);\n items.forEach(item => this.addTag(item));\n }\n\n removeTag(tag: TagModel, index: number): void {\n this.tags.splice(index, 1);\n this.tagsChange.emit(this.tags);\n this.onRemove.emit(tag);\n }\n\n private addTag(value: string): void {\n const trimmed = value.trim();\n if (!trimmed) {\n return;\n }\n\n const tag: TagModel = { display: trimmed, value: trimmed };\n this.tags.push(tag);\n this.inputValue = '';\n this.tagsChange.emit(this.tags);\n this.onAdd.emit(tag);\n }\n}\n","<div class=\"wac-tag-input\">\n <div class=\"wac-tag-input__tags\">\n <span class=\"wac-tag-input__tag\" *ngFor=\"let tag of tags; let i = index\">\n <span class=\"wac-tag-input__tag__text\">{{ tag.display }}</span>\n <span class=\"wac-tag-input__tag__remove\" (click)=\"removeTag(tag, i)\">&times;</span>\n </span>\n <input\n class=\"wac-tag-input__input\"\n type=\"text\"\n [(ngModel)]=\"inputValue\"\n [placeholder]=\"currentPlaceholder\"\n (keydown)=\"onKeydown($event)\"\n (blur)=\"onInputBlur()\"\n (paste)=\"onPaste($event)\"\n />\n </div>\n</div>\n","/*\n * Public API Surface of angular-components\n */\n\nexport * from './lib/wizi-components.module';\nexport * from './lib/components/shared-components.module';\nexport * from './lib/components/tag/tag.component';\nexport * from './lib/components/tag-dropdown/tag-dropdown.component';\nexport * from './lib/components/tabs/tabs.component';\nexport * from './lib/components/tabs/tab/tab.component';\nexport * from './lib/components/button/button.component';\nexport * from './lib/components/info/info.component';\nexport * from './lib/components/settings/settings.component';\nexport * from './lib/components/delete/delete.component';\nexport * from './lib/components/dropdown/dropdown.component';\nexport * from './lib/components/image/image.component';\nexport * from './lib/components/image-text-section/image-text-section.component';\nexport * from './lib/components/image-text-section/image-text-section.dto';\nexport * from './lib/components/faq-section/faq-section.component';\nexport * from './lib/components/faq-section/faq-section.dto';\nexport * from './lib/components/faq-section/faq-section-content.dto';\nexport * from './lib/components/reassurance-section/reassurance-section.component';\nexport * from './lib/components/reassurance-section/reassurance-section.dto';\nexport * from './lib/components/reassurance-section/reassurance-section-content.dto';\nexport * from './lib/components/pricing-section/pricing-section.component';\nexport * from './lib/components/pricing-section/pricing-section.dto';\nexport * from './lib/components/pricing-section/pricing-section-table.dto';\nexport * from './lib/components/back/back.component';\nexport * from './lib/components/separator/separator.component';\nexport * from './lib/components/logo/logo.component';\nexport * from './lib/components/radio-legacy/radio.component';\nexport * from './lib/components/radio-legacy/radio-legacy-directive';\nexport * from './lib/components/radio-legacy/radio-group-legacy.directive';\nexport * from './lib/components/radio/radio.component';\nexport * from './lib/components/radio/option/option.component';\nexport * from './lib/components/state/state.component';\nexport * from './lib/components/tag-label/tag-label.component';\nexport * from './lib/components/calendar/calendar.component';\nexport * from './lib/components/edit-in-place/edit-in-place.component';\nexport * from './lib/components/alert/alert.component';\nexport * from './lib/components/header-page/header-page.component';\nexport * from './lib/components/switch/switch.component';\nexport * from './lib/components/link/link.component';\nexport * from './lib/components/hn/h1/h1.component';\nexport * from './lib/components/hn/h2/h2.component';\nexport * from './lib/components/hn/h3/h3.component';\nexport * from './lib/components/hn/h4/h4.component';\nexport * from './lib/components/select-in-text/select-in-text.component';\nexport * from './lib/components/text/text.component';\nexport * from './lib/components/text-area/text-area.component';\nexport * from './lib/components/pagination/pagination.component';\nexport * from './lib/components/table/table.component';\nexport * from './lib/components/table/shared/table-filters.model';\nexport * from './lib/components/table/shared/table-filters-group.model';\nexport * from './lib/components/table/directives/column.directive';\nexport * from './lib/components/table/directives/checkBoxRow.directive';\nexport * from './lib/components/table/directives/columnHeader.directive';\nexport * from './lib/components/table/directives/raw.directive';\nexport * from './lib/components/inputs/input-search/input-search.component';\nexport * from './lib/components/inputs/input/input.component';\nexport * from './lib/components/tooltip/tooltip.component';\nexport * from './lib/components/checkbox/checkbox.component';\nexport * from './lib/components/loader/loader.component';\nexport * from './lib/components/progress-bar/progress-bar.component';\nexport * from './lib/components/upload/upload.component';\nexport * from './lib/components/select/select-items.dto';\nexport * from './lib/components/inputs/input-with-select/input-with-select.component';\nexport * from './lib/components/inputs/input-with-select/option-item.dto';\nexport * from './lib/components/multiple-search/multiple-search.component';\nexport * from './lib/components/multiple-search-plus/multiple-search-plus.component';\nexport * from './lib/directives/shared-directives.module';\nexport * from './lib/directives/abstract-debounce/debounce-keyup.directive';\nexport * from './lib/directives/abstract-debounce/abstract-debounce.directive';\nexport * from './lib/directives/auto-hide/auto-hide.directive';\nexport * from './lib/directives/zindex-toggle/zindex-toggle.directive';\nexport * from './lib/directives/keyboard-events/only-numbers.directive';\nexport * from './lib/directives/scroll-to/scroll-to.directive';\nexport * from './lib/directives/ng-var.directive';\nexport * from './lib/utils/html-container.class';\nexport * from './lib/utils/uuid';\nexport * from './lib/components/select/call-to-action.model';\nexport * from './lib/components/table/shared/filters-table.service';\nexport * from './lib/components/table/shared/table-filters.model';\nexport * from './lib/components/table/shared/distinct-until-table-filters-changed';\nexport * from './lib/components/popin/popin.component';\nexport * from './lib/components/free-popin/free-popin.component';\nexport * from './lib/components/google-preview/google-preview.component';\nexport * from './lib/components/block/block.component';\nexport * from './lib/components/block/separator/block-separator.component';\nexport * from './lib/components/block/block-title-legacy/block-title-legacy.component';\n\nexport * from './lib/components/wrapper/wrapper.component';\nexport * from './lib/components/filters/filters.component';\nexport * from './lib/components/expanded-panel/expanded-panel.component';\nexport * from './lib/components/filters/filter-item.dto';\nexport * from './lib/components/wrapper-blocs/wrapper-blocs.component';\nexport * from './lib/components/card-price/card-price.component';\nexport * from './lib/components/multiple-search-plus/shared/multiple-search-plus-results.model';\nexport * from './lib/components/multiple-search-plus/shared/multiple-search-plus-option.model';\nexport * from './lib/components/snackbar/snackbar.component';\nexport * from './lib/components/alert-popup/alert-popup.service';\nexport * from './lib/components/alert-popup/alert-popup.component';\nexport * from './lib/components/alert-popup/alert-popup-module';\nexport * from './lib/components/wrapper-sidebar/wrapper-sidebar.component';\nexport * from './lib/components/breadcrumbs/breadcrumbs.component';\nexport * from './lib/components/token-check/token-check.component';\nexport * from './lib/components/row/row.component';\nexport * from './lib/components/column/column.component';\nexport * from './lib/components/block-with-checkbox/block-with-checkbox.component';\nexport * from './lib/components/confirm-delete/confirm-delete.component';\nexport * from './lib/components/search/search.component';\nexport * from './lib/components/charging-bar/charging-bar.component';\nexport * from './lib/components/mosaic/mosaic.component';\nexport * from './lib/components/content-with-buttons/content-with-buttons.component';\nexport * from './lib/components/wrapper-multiple-block/wrapper-multiple-block.component';\nexport * from './lib/components/draganddrop-list/draganddrop-list.component';\nexport * from './lib/components/selected-list/selected-list.component';\nexport * from './lib/components/selected-list/shared/selected-list-option.model';\nexport * from './lib/components/search/shared/search-option.model';\nexport * from './lib/components/tree/tree.component';\nexport * from './lib/components/tree/tree.module';\nexport * from './lib/components/tree/tree.dto';\nexport * from './lib/pipes/shared-pipes.module';\nexport * from './lib/pipes/tree/format-object-to-recursif-tree.pipe';\nexport * from './lib/pipes/tree/format-object-to-simple-tree.pipe';\nexport * from './lib/pipes/select/select-filters.pipe';\nexport * from './lib/pipes/selected-list/are-all-options-selected.pipe';\nexport * from './lib/pipes/find-option-selected-field.pipe';\nexport * from './lib/pipes/call-component-function.pipe';\nexport * from './lib/directives/keyboard-events/keypress-enter.directive';\nexport * from './lib/directives/copy-to-clipboard/copy-to-clipboard.directive';\nexport * from './lib/directives/keyboard-events/two-digital-decimal-number.directive';\nexport * from './lib/directives/watch-dom-tree/watch-dom-tree.directive';\nexport * from './lib/components/optional-disable-container/optional-disable-container.component';\nexport * from './lib/components/summary/summary.component';\nexport * from './lib/components/color-picker/color-picker.component';\nexport * from './lib/components/border-picker/border-picker.component';\n\nexport * from './lib/components/select/select/select.component';\nexport * from './lib/components/select/select/value-change.service';\nexport * from './lib/components/select/select/select.directive';\nexport * from './lib/components/select/option/option.component';\nexport * from './lib/components/select/option-group/option-group.component';\nexport * from './lib/components/select/option-call-to-action/option-call-to-action.component';\nexport * from './lib/components/common/placeholder/placeholder.component';\nexport * from './lib/components/common/label/label.component';\nexport * from './lib/components/ai-express/ai-express.component';\nexport * from './lib/components/select/option/select-option.directive';\nexport * from './lib/components/select/select-search-trigger/select-search-trigger.component';\nexport * from './lib/pipes/select/filter-options.pipe';\nexport * from './lib/components/slide-in/slide-in.component';\nexport * from './lib/components/menu-tile/menu-tile.component';\nexport * from './lib/components/grid/grid.component';\n\n// expansion\nexport * from './lib/components/expansion/expansion.module';\nexport * from './lib/components/expansion/accordion/accordion.component';\nexport * from './lib/components/expansion/accordion/accordion-item.token';\nexport * from './lib/components/expansion/expansion-panel-header/expansion-panel-header.component';\nexport * from './lib/components/expansion/expansion-panel-header/expansion-panel-header.token';\nexport * from './lib/components/expansion/expansion-panel-header/expansion-panel-header.directive';\nexport * from './lib/components/expansion/expansion-panel/expansion-panel.component';\nexport * from './lib/components/expansion/expansion-panel/expansion-panel.directive';\n\nexport * from './lib/animations/show/show-from-bottom.animation';\nexport * from './lib/animations/show/show-from-top.animation';\nexport * from './lib/animations/show/show-from-left.animation';\nexport * from './lib/animations/show/show-from-right.animation';\nexport * from './lib/animations/show/opacity.animation';\n\nexport * from './lib/animations/list/animate-list-from-bottom.animation';\nexport * from './lib/animations/list/animate-list-from-top.animation';\nexport * from './lib/animations/list/animate-list-from-right.animation';\nexport * from './lib/animations/list/animate-list-from-left.animation';\n\nexport * from './lib/animations/switch/switch-in-out.animation';\nexport * from './lib/animations/in-out/in-out-x.animation';\nexport * from './lib/animations/in-out/in-out-y.animation';\n\nexport * from './lib/services/history.service';\n\nexport * from './lib/components/tag-input/tag-input.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i1.DomService","takeUntil","i1.ValueChangeService","directives","i2","i3.TooltipComponent","i3.DebounceKeyupDirective","i1.TableCheckboxIdService","i3","i4.PagniationArrayTotalPages","i5.PagniationIsLastPage","i6.PagniationText","i1.FiltersTableService","i2.TableCheckboxIdService","i3.MultiSelectionService","i4","i5","i6.InputSearchComponent","i7.LoaderComponent","i8.CheckboxComponent","i9.PaginationComponent","distinctUntilChanged","map","i2.AutoHideDirective","i4.AutoHideDirective","i5.ZindexToggleDirective","i6.OnlyNumberDirective","i7.OptionalDisableContainerComponent","i8","i1.HistoryService","i3.H1Component","pipes","i2.TextComponent","i3.ZindexToggleDirective","i2.DebounceKeyupDirective","i3.AutoHideDirective","i4.ZindexToggleDirective","i5.LoaderComponent","i6.ImageComponent","i7.H3Component","i8.TextComponent","i9","i5.ButtonComponent","i2.VarDirective","i3.ButtonComponent","i4.AreAllOptionsSelectedPipe","i2.CheckboxComponent","i2.KeypressEnterDirective","i6","i2.ButtonComponent","i3.LinkComponent","i4.ButtonComponent","i3.InputComponent","components","i2.DomChangedDirective","i4.InfoComponent","i4.TextComponent","i3.TextComponent","tap","currentUsedSelectorForThisAnimation"],"mappings":"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"}
1
+ {"version":3,"file":"wizishop-angular-components.mjs","sources":["../../../../projects/angular-components/src/lib/components/loader/loader.component.ts","../../../../projects/angular-components/src/lib/components/loader/loader.component.html","../../../../projects/angular-components/src/lib/directives/abstract-debounce/abstract-debounce.directive.ts","../../../../projects/angular-components/src/lib/directives/abstract-debounce/debounce-keyup.directive.ts","../../../../projects/angular-components/src/lib/services/dom.service.ts","../../../../projects/angular-components/src/lib/directives/auto-hide/auto-hide.directive.ts","../../../../projects/angular-components/src/lib/directives/zindex-toggle/zindex-toggle.directive.ts","../../../../projects/angular-components/src/lib/directives/ng-var.directive.ts","../../../../projects/angular-components/src/lib/directives/keyboard-events/keypress-enter.directive.ts","../../../../projects/angular-components/src/lib/components/select/option/option-selection-handler.token.ts","../../../../projects/angular-components/src/lib/components/select/option/select-option.directive.ts","../../../../projects/angular-components/src/lib/utils/array.ts","../../../../projects/angular-components/src/lib/components/select/select/value-change.service.ts","../../../../projects/angular-components/src/lib/components/select/select/select.directive.ts","../../../../projects/angular-components/src/lib/directives/keyboard-events/only-numbers.directive.ts","../../../../projects/angular-components/src/lib/directives/keyboard-events/two-digital-decimal-number.directive.ts","../../../../projects/angular-components/src/lib/components/radio-legacy/radio-legacy-directive.ts","../../../../projects/angular-components/src/lib/components/radio-legacy/radio-group-legacy.directive.ts","../../../../projects/angular-components/src/lib/directives/copy-to-clipboard/copy-to-clipboard.directive.ts","../../../../projects/angular-components/src/lib/directives/scroll-to/scroll-to.directive.ts","../../../../projects/angular-components/src/lib/directives/watch-dom-tree/watch-dom-tree.directive.ts","../../../../projects/angular-components/src/lib/directives/shared-directives.module.ts","../../../../projects/angular-components/src/lib/components/tooltip/tooltip.component.ts","../../../../projects/angular-components/src/lib/components/tooltip/tooltip.component.html","../../../../projects/angular-components/src/lib/components/tooltip/tooltip.module.ts","../../../../projects/angular-components/src/lib/components/progress-bar/progress-bar.component.ts","../../../../projects/angular-components/src/lib/components/progress-bar/progress-bar.component.html","../../../../projects/angular-components/src/lib/components/inputs/input/input.component.ts","../../../../projects/angular-components/src/lib/components/inputs/input/input.component.html","../../../../projects/angular-components/src/lib/components/inputs/input-search/input-search.component.ts","../../../../projects/angular-components/src/lib/components/inputs/input-search/input-search.component.html","../../../../projects/angular-components/src/lib/animations/in-out/in-out-y.animation.ts","../../../../projects/angular-components/src/lib/components/checkbox/checkbox.component.ts","../../../../projects/angular-components/src/lib/components/checkbox/checkbox.component.html","../../../../projects/angular-components/src/lib/utils/html-container.class.ts","../../../../projects/angular-components/src/lib/components/table/shared/table-checkbox-id.service.ts","../../../../projects/angular-components/src/lib/components/table/directives/checkBoxRow.directive.ts","../../../../projects/angular-components/src/lib/services/multiple-selection.service.ts","../../../../projects/angular-components/src/lib/components/table/directives/raw.directive.ts","../../../../projects/angular-components/src/lib/components/table/shared/filters-table.service.ts","../../../../projects/angular-components/src/lib/components/pagination/pipes/is-last-page.pipe.ts","../../../../projects/angular-components/src/lib/components/pagination/pipes/array-pages.pipe.ts","../../../../projects/angular-components/src/lib/components/pagination/pipes/custom-text.pipe.ts","../../../../projects/angular-components/src/lib/components/pagination/pagination.component.ts","../../../../projects/angular-components/src/lib/components/pagination/pagination.component.html","../../../../projects/angular-components/src/lib/components/table/table.component.ts","../../../../projects/angular-components/src/lib/components/table/table.component.html","../../../../projects/angular-components/src/lib/components/tag/tag.component.ts","../../../../projects/angular-components/src/lib/components/tag/tag.component.html","../../../../projects/angular-components/src/lib/components/tabs/tab/tab.component.ts","../../../../projects/angular-components/src/lib/components/tabs/tab/tab.component.html","../../../../projects/angular-components/src/lib/components/tabs/tab-body/tab-body.directive.ts","../../../../projects/angular-components/src/lib/components/tabs/tab-body/tab-body.component.ts","../../../../projects/angular-components/src/lib/components/tabs/tab-body/tab-body.component.html","../../../../projects/angular-components/src/lib/components/tabs/tabs.component.ts","../../../../projects/angular-components/src/lib/components/tabs/tabs.component.html","../../../../projects/angular-components/src/lib/components/button/button.component.ts","../../../../projects/angular-components/src/lib/components/button/button.component.html","../../../../projects/angular-components/src/lib/components/info/info.component.ts","../../../../projects/angular-components/src/lib/components/info/info.component.html","../../../../projects/angular-components/src/lib/components/settings/settings.component.ts","../../../../projects/angular-components/src/lib/components/settings/settings.component.html","../../../../projects/angular-components/src/lib/components/delete/delete.component.ts","../../../../projects/angular-components/src/lib/components/delete/delete.component.html","../../../../projects/angular-components/src/lib/components/dropdown/dropdown.component.ts","../../../../projects/angular-components/src/lib/components/dropdown/dropdown.component.html","../../../../projects/angular-components/src/lib/components/image/image.component.ts","../../../../projects/angular-components/src/lib/components/image/image.component.html","../../../../projects/angular-components/src/lib/components/back/back.component.ts","../../../../projects/angular-components/src/lib/components/back/back.component.html","../../../../projects/angular-components/src/lib/components/separator/separator.component.ts","../../../../projects/angular-components/src/lib/components/separator/separator.component.html","../../../../projects/angular-components/src/lib/components/logo/logo.component.ts","../../../../projects/angular-components/src/lib/components/logo/logo.component.html","../../../../projects/angular-components/src/lib/components/radio-legacy/radio.component.ts","../../../../projects/angular-components/src/lib/components/radio-legacy/radio.component.html","../../../../projects/angular-components/src/lib/components/state/state.component.ts","../../../../projects/angular-components/src/lib/components/state/state.component.html","../../../../projects/angular-components/src/lib/animations/in-out/in-out-x.animation.ts","../../../../projects/angular-components/src/lib/components/tag-label/tag-label.component.ts","../../../../projects/angular-components/src/lib/components/tag-label/tag-label.component.html","../../../../projects/angular-components/src/lib/animations/show/opacity.animation.ts","../../../../projects/angular-components/src/lib/components/optional-disable-container/optional-disable-container.component.ts","../../../../projects/angular-components/src/lib/components/optional-disable-container/optional-disable-container.component.html","../../../../projects/angular-components/src/lib/components/calendar/calendar.component.ts","../../../../projects/angular-components/src/lib/components/calendar/calendar.component.html","../../../../projects/angular-components/src/lib/components/edit-in-place/edit-in-place.component.ts","../../../../projects/angular-components/src/lib/components/edit-in-place/edit-in-place.component.html","../../../../projects/angular-components/src/lib/components/text-area/text-area.component.ts","../../../../projects/angular-components/src/lib/components/text-area/text-area.component.html","../../../../projects/angular-components/src/lib/components/hn/h1/h1.component.ts","../../../../projects/angular-components/src/lib/components/hn/h1/h1.component.html","../../../../projects/angular-components/src/lib/components/hn/h2/h2.component.ts","../../../../projects/angular-components/src/lib/components/hn/h2/h2.component.html","../../../../projects/angular-components/src/lib/components/hn/h3/h3.component.ts","../../../../projects/angular-components/src/lib/components/hn/h3/h3.component.html","../../../../projects/angular-components/src/lib/services/history.service.ts","../../../../projects/angular-components/src/lib/components/header-page/header-page.component.ts","../../../../projects/angular-components/src/lib/components/header-page/header-page.component.html","../../../../projects/angular-components/src/lib/components/link/link.component.ts","../../../../projects/angular-components/src/lib/components/link/link.component.html","../../../../projects/angular-components/src/lib/components/switch/switch.component.ts","../../../../projects/angular-components/src/lib/components/switch/switch.component.html","../../../../projects/angular-components/src/lib/components/alert/alert.component.ts","../../../../projects/angular-components/src/lib/components/alert/alert.component.html","../../../../projects/angular-components/src/lib/components/text/text.component.ts","../../../../projects/angular-components/src/lib/components/text/text.component.html","../../../../projects/angular-components/src/lib/components/pagination/pagination.module.ts","../../../../projects/angular-components/src/lib/components/checkbox/checkbox.module.ts","../../../../projects/angular-components/src/lib/components/table/directives/column.directive.ts","../../../../projects/angular-components/src/lib/components/table/directives/columnHeader.directive.ts","../../../../projects/angular-components/src/lib/components/table/table.module.ts","../../../../projects/angular-components/src/lib/components/upload/upload.component.ts","../../../../projects/angular-components/src/lib/components/upload/upload.component.html","../../../../projects/angular-components/src/lib/components/hn/h4/h4.component.ts","../../../../projects/angular-components/src/lib/components/hn/h4/h4.component.html","../../../../projects/angular-components/src/lib/components/select-in-text/select-in-text.component.ts","../../../../projects/angular-components/src/lib/components/select-in-text/select-in-text.component.html","../../../../projects/angular-components/src/lib/components/multiple-search/multiple-search.component.ts","../../../../projects/angular-components/src/lib/components/multiple-search/multiple-search.component.html","../../../../projects/angular-components/src/lib/components/multiple-search-plus/multiple-search-plus.component.ts","../../../../projects/angular-components/src/lib/components/multiple-search-plus/multiple-search-plus.component.html","../../../../projects/angular-components/src/lib/components/common/label/label.component.ts","../../../../projects/angular-components/src/lib/components/common/label/label.component.html","../../../../projects/angular-components/src/lib/components/inputs/input-with-select/input-with-select.component.ts","../../../../projects/angular-components/src/lib/components/inputs/input-with-select/input-with-select.component.html","../../../../projects/angular-components/src/lib/components/popin/popin.component.ts","../../../../projects/angular-components/src/lib/components/popin/popin.component.html","../../../../projects/angular-components/src/lib/components/free-popin/free-popin.component.ts","../../../../projects/angular-components/src/lib/components/free-popin/free-popin.component.html","../../../../projects/angular-components/src/lib/components/block/separator/block-separator.component.ts","../../../../projects/angular-components/src/lib/components/block/block.component.ts","../../../../projects/angular-components/src/lib/components/block/block.component.html","../../../../projects/angular-components/src/lib/components/wrapper/wrapper.component.ts","../../../../projects/angular-components/src/lib/components/wrapper/wrapper.component.html","../../../../projects/angular-components/src/lib/components/filters/filters.component.ts","../../../../projects/angular-components/src/lib/components/filters/filters.component.html","../../../../projects/angular-components/src/lib/components/wrapper-blocs/wrapper-blocs.component.ts","../../../../projects/angular-components/src/lib/components/wrapper-blocs/wrapper-blocs.component.html","../../../../projects/angular-components/src/lib/components/snackbar/snackbar.component.ts","../../../../projects/angular-components/src/lib/components/snackbar/snackbar.component.html","../../../../projects/angular-components/src/lib/components/alert-popup/alert-popup.component.ts","../../../../projects/angular-components/src/lib/components/alert-popup/alert-popup.component.html","../../../../projects/angular-components/src/lib/components/alert-popup/alert-popup.service.ts","../../../../projects/angular-components/src/lib/components/alert-popup/alert-popup-module.ts","../../../../projects/angular-components/src/lib/components/search/search.component.ts","../../../../projects/angular-components/src/lib/components/search/search.component.html","../../../../projects/angular-components/src/lib/pipes/selected-list/are-all-options-selected.pipe.ts","../../../../projects/angular-components/src/lib/components/selected-list/selected-list.component.ts","../../../../projects/angular-components/src/lib/components/selected-list/selected-list.component.html","../../../../projects/angular-components/src/lib/components/tree/tree.component.ts","../../../../projects/angular-components/src/lib/components/tree/tree.component.html","../../../../projects/angular-components/src/lib/pipes/tree/format-object-to-recursif-tree.pipe.ts","../../../../projects/angular-components/src/lib/pipes/tree/format-object-to-simple-tree.pipe.ts","../../../../projects/angular-components/src/lib/pipes/select/select-filters.pipe.ts","../../../../projects/angular-components/src/lib/pipes/select/filter-options.pipe.ts","../../../../projects/angular-components/src/lib/pipes/find-option-selected-field.pipe.ts","../../../../projects/angular-components/src/lib/pipes/call-component-function.pipe.ts","../../../../projects/angular-components/src/lib/pipes/shared-pipes.module.ts","../../../../projects/angular-components/src/lib/components/tree/tree.module.ts","../../../../projects/angular-components/src/lib/utils/uuid.ts","../../../../projects/angular-components/src/lib/components/select/option/option.component.ts","../../../../projects/angular-components/src/lib/components/select/option/option.component.html","../../../../projects/angular-components/src/lib/components/select/option-group/option-group.component.ts","../../../../projects/angular-components/src/lib/components/select/option-group/option-group.component.html","../../../../projects/angular-components/src/lib/components/select/select-search-trigger/select-search-trigger.component.ts","../../../../projects/angular-components/src/lib/components/select/select-search-trigger/select-search-trigger.component.html","../../../../projects/angular-components/src/lib/components/select/select/select.component.ts","../../../../projects/angular-components/src/lib/components/select/select/select.component.html","../../../../projects/angular-components/src/lib/components/select/option-call-to-action/option-call-to-action.component.ts","../../../../projects/angular-components/src/lib/components/select/option-call-to-action/option-call-to-action.component.html","../../../../projects/angular-components/src/lib/components/common/placeholder/placeholder.component.ts","../../../../projects/angular-components/src/lib/components/common/placeholder/placeholder.component.html","../../../../projects/angular-components/src/lib/components/wrapper-sidebar/wrapper-sidebar.component.ts","../../../../projects/angular-components/src/lib/components/wrapper-sidebar/wrapper-sidebar.component.html","../../../../projects/angular-components/src/lib/components/breadcrumbs/breadcrumbs.component.ts","../../../../projects/angular-components/src/lib/components/breadcrumbs/breadcrumbs.component.html","../../../../projects/angular-components/src/lib/components/card-price/card-price.component.ts","../../../../projects/angular-components/src/lib/components/card-price/card-price.component.html","../../../../projects/angular-components/src/lib/components/token-check/token-check.component.ts","../../../../projects/angular-components/src/lib/components/token-check/token-check.component.html","../../../../projects/angular-components/src/lib/components/block-with-checkbox/block-with-checkbox.component.ts","../../../../projects/angular-components/src/lib/components/block-with-checkbox/block-with-checkbox.component.html","../../../../projects/angular-components/src/lib/components/confirm-delete/confirm-delete.component.ts","../../../../projects/angular-components/src/lib/components/confirm-delete/confirm-delete.component.html","../../../../projects/angular-components/src/lib/components/mosaic/mosaic.component.ts","../../../../projects/angular-components/src/lib/components/mosaic/mosaic.component.html","../../../../projects/angular-components/src/lib/components/content-with-buttons/content-with-buttons.component.ts","../../../../projects/angular-components/src/lib/components/content-with-buttons/content-with-buttons.component.html","../../../../projects/angular-components/src/lib/components/wrapper-multiple-block/wrapper-multiple-block.component.ts","../../../../projects/angular-components/src/lib/components/wrapper-multiple-block/wrapper-multiple-block.component.html","../../../../projects/angular-components/src/lib/components/draganddrop-list/draganddrop-list.component.ts","../../../../projects/angular-components/src/lib/components/draganddrop-list/draganddrop-list.component.html","../../../../projects/angular-components/src/lib/components/expansion/accordion/accordion-item.token.ts","../../../../projects/angular-components/src/lib/components/expansion/accordion/accordion.component.ts","../../../../projects/angular-components/src/lib/components/expansion/accordion/accordion.component.html","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel-header/expansion-panel-header.token.ts","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel-header/expansion-panel-header.directive.ts","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel-header/expansion-panel-header.component.ts","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel-header/expansion-panel-header.component.html","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel/expansion-panel.directive.ts","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel/expansion-panel.component.ts","../../../../projects/angular-components/src/lib/components/expansion/expansion-panel/expansion-panel.component.html","../../../../projects/angular-components/src/lib/components/expansion/expansion.module.ts","../../../../projects/angular-components/src/lib/components/block/block-title-legacy/block-title-legacy.component.ts","../../../../projects/angular-components/src/lib/components/block/block-title-legacy/block-title-legacy.component.html","../../../../projects/angular-components/src/lib/components/summary/summary.component.ts","../../../../projects/angular-components/src/lib/components/summary/summary.component.html","../../../../projects/angular-components/src/lib/components/google-preview/google-preview.component.ts","../../../../projects/angular-components/src/lib/components/google-preview/google-preview.component.html","../../../../projects/angular-components/src/lib/components/charging-bar/charging-bar.component.ts","../../../../projects/angular-components/src/lib/components/charging-bar/charging-bar.component.html","../../../../projects/angular-components/src/lib/components/expanded-panel/expanded-panel.component.ts","../../../../projects/angular-components/src/lib/components/expanded-panel/expanded-panel.component.html","../../../../projects/angular-components/src/lib/components/row/row.component.ts","../../../../projects/angular-components/src/lib/components/row/row.component.html","../../../../projects/angular-components/src/lib/components/column/column.component.ts","../../../../projects/angular-components/src/lib/components/column/column.component.html","../../../../projects/angular-components/src/lib/components/ai-express/ai-express.component.ts","../../../../projects/angular-components/src/lib/components/ai-express/ai-express.component.html","../../../../projects/angular-components/src/lib/components/radio/radio-group.directive.ts","../../../../projects/angular-components/src/lib/components/radio/radio.component.ts","../../../../projects/angular-components/src/lib/components/radio/radio.component.html","../../../../projects/angular-components/src/lib/components/radio/option/option.component.ts","../../../../projects/angular-components/src/lib/components/radio/option/option.component.html","../../../../projects/angular-components/src/lib/components/tag-dropdown/tag-dropdown.component.ts","../../../../projects/angular-components/src/lib/components/tag-dropdown/tag-dropdown.component.html","../../../../projects/angular-components/src/lib/components/grid/grid.component.ts","../../../../projects/angular-components/src/lib/components/grid/grid.component.html","../../../../projects/angular-components/src/lib/components/color-picker/color-picker.component.ts","../../../../projects/angular-components/src/lib/components/color-picker/color-picker.component.html","../../../../projects/angular-components/src/lib/components/border-picker/border-picker.component.ts","../../../../projects/angular-components/src/lib/components/border-picker/border-picker.component.html","../../../../projects/angular-components/src/lib/components/slide-in/slide-in.component.ts","../../../../projects/angular-components/src/lib/components/slide-in/slide-in.component.html","../../../../projects/angular-components/src/lib/components/menu-tile/menu-tile.component.ts","../../../../projects/angular-components/src/lib/components/menu-tile/menu-tile.component.html","../../../../projects/angular-components/src/lib/components/image-text-section/image-text-section.component.ts","../../../../projects/angular-components/src/lib/components/image-text-section/image-text-section.component.html","../../../../projects/angular-components/src/lib/components/faq-section/faq-section.component.ts","../../../../projects/angular-components/src/lib/components/faq-section/faq-section.component.html","../../../../projects/angular-components/src/lib/components/reassurance-section/reassurance-section.component.ts","../../../../projects/angular-components/src/lib/components/reassurance-section/reassurance-section.component.html","../../../../projects/angular-components/src/lib/components/pricing-section/pricing-section.component.ts","../../../../projects/angular-components/src/lib/components/pricing-section/pricing-section.component.html","../../../../projects/angular-components/src/lib/components/shared-components.module.ts","../../../../projects/angular-components/src/lib/wizi-components.module.ts","../../../../projects/angular-components/src/lib/components/table/shared/table-filters-group.model.ts","../../../../projects/angular-components/src/lib/components/table/shared/distinct-until-table-filters-changed.ts","../../../../projects/angular-components/src/lib/animations/show/show-from-bottom.animation.ts","../../../../projects/angular-components/src/lib/animations/show/show-from-top.animation.ts","../../../../projects/angular-components/src/lib/animations/show/show-from-left.animation.ts","../../../../projects/angular-components/src/lib/animations/show/show-from-right.animation.ts","../../../../projects/angular-components/src/lib/animations/list/animate-list-from-bottom.animation.ts","../../../../projects/angular-components/src/lib/animations/list/animate-list-from-top.animation.ts","../../../../projects/angular-components/src/lib/animations/list/animate-list-from-right.animation.ts","../../../../projects/angular-components/src/lib/animations/list/animate-list-from-left.animation.ts","../../../../projects/angular-components/src/lib/animations/switch/switch-in-out.animation.ts","../../../../projects/angular-components/src/lib/components/tag-input/tag-input.component.ts","../../../../projects/angular-components/src/lib/components/tag-input/tag-input.component.html","../../../../projects/angular-components/src/public-api.ts","../../../../projects/angular-components/src/wizishop-angular-components.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\r\nimport { Component, Input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'wac-loader',\r\n templateUrl: './loader.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n standalone: true,\r\n imports: [CommonModule]\r\n})\r\nexport class LoaderComponent {\r\n @Input()\r\n text = '';\r\n @Input()\r\n small = false;\r\n}\r\n","<div class=\"wac-loader\" [ngClass]=\"{ 'is-small': small }\">\r\n <div class=\"loader loader1\">\r\n <div>\r\n <div>\r\n <div>\r\n <div>\r\n <div>\r\n <div></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <p class=\"is-textcentered\" *ngIf=\"!!text\" [innerHTML]=\"text\"></p>\r\n</div>\r\n","import { Directive, OnDestroy, Input, Output, EventEmitter } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil, debounceTime, distinctUntilChanged, tap } from 'rxjs/operators';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: 'AbstractDebounceDirective'\r\n})\r\nexport class AbstractDebounceDirective implements OnDestroy {\r\n @Input()\r\n public debounceTime: number;\r\n\r\n @Output()\r\n public onEventChange: EventEmitter<any>;\r\n\r\n protected emitEvent$: Subject<any>;\r\n protected subscription$: Subject<void>;\r\n\r\n constructor() {\r\n this.debounceTime = 500;\r\n this.onEventChange = new EventEmitter<any>();\r\n this.emitEvent$ = new Subject<any>();\r\n this.subscription$ = new Subject<void>();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.emitEvent$\r\n .pipe(\r\n takeUntil(this.subscription$),\r\n debounceTime(this.debounceTime),\r\n distinctUntilChanged(),\r\n tap(value => this.emitChange(value))\r\n )\r\n .subscribe();\r\n }\r\n\r\n public emitChange(value: any): void {\r\n this.onEventChange.emit(value);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription$.next();\r\n this.subscription$.complete();\r\n }\r\n}\r\n","import { Directive, HostListener } from '@angular/core';\r\nimport { AbstractDebounceDirective } from './abstract-debounce.directive';\r\n@Directive({\r\n standalone: false,\r\n selector: 'input[debounceKeyUp]'\r\n})\r\nexport class DebounceKeyupDirective extends AbstractDebounceDirective {\r\n constructor() {\r\n super();\r\n }\r\n\r\n @HostListener('keyup', ['$event'])\r\n public onKeyUp(event: any): void {\r\n event.preventDefault();\r\n this.emitEvent$.next(event);\r\n }\r\n}\r\n","import {ApplicationRef, ComponentFactoryResolver, ComponentRef, EmbeddedViewRef, Injectable, Injector} from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport {ComponentType, OverlayContainer} from '@angular/cdk/overlay';\r\nimport {PortalInjector} from '@angular/cdk/portal';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DomService {\r\n\r\n constructor(\r\n private componentFactoryResolver: ComponentFactoryResolver,\r\n private appRef: ApplicationRef,\r\n private injector: Injector,\r\n private overlayContainer: OverlayContainer\r\n ) {}\r\n private documentEventSource = new Subject();\r\n private documentEventDone = this.documentEventSource.asObservable();\r\n private eventInitialisation = true;\r\n\r\n private documentScrollSource = new Subject();\r\n private documentScrollDone = this.documentScrollSource.asObservable();\r\n\r\n documentEvent() {\r\n this.setDocumentEventListener();\r\n return this.documentEventDone;\r\n }\r\n\r\n setDocumentEventListener() {\r\n if (!this.eventInitialisation) {\r\n return;\r\n }\r\n this.eventInitialisation = false;\r\n document.body.addEventListener('click', event => {\r\n this.documentEventSource.next(event.target);\r\n });\r\n }\r\n\r\n documentScroll() {\r\n return this.documentScrollDone;\r\n }\r\n\r\n setScrollEventListener() {\r\n window.onscroll = () => {\r\n this.documentScrollSource.next(window);\r\n };\r\n }\r\n attachComponentPortal<T>(component: ComponentType<T>, injector?: PortalInjector): ComponentRef<T> {\r\n const componentRef: ComponentRef<T> = this.componentFactoryResolver\r\n .resolveComponentFactory(component)\r\n .create(injector ? injector : this.injector);\r\n\r\n this.appRef.attachView(componentRef.hostView);\r\n\r\n this.overlayContainer.getContainerElement().appendChild(this._getComponentRootNode(componentRef));\r\n\r\n return componentRef;\r\n }\r\n\r\n /** Gets the root HTMLElement for an instantiated component. */\r\n private _getComponentRootNode(componentRef: ComponentRef<any>): HTMLElement {\r\n return (componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;\r\n }\r\n}\r\n","import {Directive, ElementRef, Input, Output, EventEmitter, AfterViewInit, OnInit} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { DomService } from '../../services/dom.service';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[wzAutoHide]'\r\n})\r\nexport class AutoHideDirective implements AfterViewInit {\r\n @Input() triggerElement: string;\r\n @Input() forceOn: Array<string> = null;\r\n subscription: Subscription;\r\n\r\n constructor(private _elementRef: ElementRef, private domService: DomService) {}\r\n\r\n @Output('clickOutside') clickOutside: EventEmitter<any> = new EventEmitter();\r\n\r\n ngAfterViewInit(): void {\r\n this.subscription = this.domService.documentEvent().subscribe((targetElement: Element) => {\r\n const clickedInside = this._elementRef.nativeElement.contains(targetElement);\r\n const classNameFromElement = targetElement.getAttribute('class');\r\n\r\n if (!clickedInside && (classNameFromElement === null || !classNameFromElement.includes(this.triggerElement))) {\r\n\r\n this.clickOutside.emit(null);\r\n }\r\n\r\n if (this.forceOn != null && classNameFromElement !== null) {\r\n let needToClose = true;\r\n this.forceOn.forEach(v => {\r\n if (!classNameFromElement.includes(v)) {\r\n needToClose = false;\r\n }\r\n });\r\n if (needToClose) {\r\n this.clickOutside.emit(null);\r\n }\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe()\r\n }\r\n}\r\n","import {Directive, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output, Renderer2} from '@angular/core';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[zIndexToggle]'\r\n})\r\nexport class ZindexToggleDirective implements OnInit, OnDestroy {\r\n isActived = false;\r\n\r\n @Output()\r\n public onEventChange: EventEmitter<any>;\r\n\r\n @Input('zIndexToggle')\r\n set isActive(value: boolean) {\r\n this.isActived = value;\r\n this.switchToggle();\r\n }\r\n get isActive(): boolean {\r\n return this.isActived;\r\n }\r\n\r\n constructor(private currentElement: ElementRef, private renderer: Renderer2) {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n switchToggle() {\r\n if (this.isActived) {\r\n this.renderer.addClass(this.currentElement.nativeElement.parentElement.parentNode, 'zindexToggle');\r\n this.renderer.addClass(this.currentElement.nativeElement.parentElement.parentNode.parentNode, 'zindexToggle');\r\n } else {\r\n this.renderer.removeClass(this.currentElement.nativeElement.parentElement.parentNode, 'zindexToggle');\r\n this.renderer.removeClass(this.currentElement.nativeElement.parentElement.parentNode.parentNode, 'zindexToggle');\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n }\r\n}\r\n","import { Directive, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[ngVar]',\r\n})\r\nexport class VarDirective {\r\n // https://stackoverflow.com/questions/38582293/how-to-declare-a-variable-in-a-template-in-angular\r\n\r\n @Input()\r\n set ngVar(context: unknown) {\r\n this.context.$implicit = this.context.ngVar = context;\r\n\r\n if (!this.hasView) {\r\n this.vcRef.createEmbeddedView(this.templateRef, this.context);\r\n this.hasView = true;\r\n }\r\n }\r\n\r\n private context: {\r\n $implicit: unknown;\r\n ngVar: unknown;\r\n } = {\r\n $implicit: null,\r\n ngVar: null,\r\n };\r\n\r\n private hasView: boolean = false;\r\n\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private vcRef: ViewContainerRef\r\n ) {}\r\n}","import { Directive, EventEmitter, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[keypressEnter]'\r\n})\r\nexport class KeypressEnterDirective {\r\n\r\n private KEYPRESS_ENTER = \"Enter\";\r\n\r\n @HostListener('keypress', ['$event']) onKeypress(event: KeyboardEvent){\r\n if (event.key === this.KEYPRESS_ENTER) {\r\n this.keypressEnter.next(true);\r\n }\r\n }\r\n\r\n @Output() keypressEnter = new EventEmitter<boolean>();\r\n\r\n constructor() {}\r\n}","import { InjectionToken } from \"@angular/core\";\r\nimport { OptionSelectionHandler } from \"./option-selection-handler.interface\";\r\n\r\nexport const OPTION_SELECTION_HANDLER = new InjectionToken<OptionSelectionHandler<any>>('OPTION_SELECTION_HANDLER');","import { ChangeDetectorRef, Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';\r\nimport { OptionSelectionHandler } from './option-selection-handler.interface';\r\nimport { OPTION_SELECTION_HANDLER } from './option-selection-handler.token';\r\n\r\n// todo create a select module and in the select-option.directive.ts\r\n@Directive({\r\n selector: '[wacOption]',\r\n providers: [{ provide: OPTION_SELECTION_HANDLER, useExisting: SelectOptionDirective }],\r\n exportAs: 'wacOption',\r\n standalone: true\r\n})\r\nexport class SelectOptionDirective<TOptionValue> implements OptionSelectionHandler<TOptionValue> {\r\n\r\n @HostListener('click', ['$event']) onClick(event: PointerEvent) {\r\n this.onSelectOption();\r\n if (this.onClickEventPreventDefault) {\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n @HostBinding('class.wac-option-selected') get isOptionSelected() {\r\n return this.selected;\r\n }\r\n\r\n @HostBinding('class.wac-option-disabled') get isOptionDisabled() {\r\n return this.disabled || this.disabledByParent;\r\n }\r\n\r\n @HostBinding('style.cursor') get cursor () {\r\n return this.disabled || this.disabledByParent ? 'not-allowed' : 'pointer';\r\n }\r\n\r\n @Input()\r\n disabled = false;\r\n\r\n protected disabledByParent = false;\r\n\r\n @Input()\r\n value: TOptionValue;\r\n\r\n @Input()\r\n selected: boolean = false;\r\n\r\n @Input() onClickEventPreventDefault = true;\r\n\r\n @Output()\r\n selectedChange = new EventEmitter<boolean>();\r\n\r\n multiple = false;\r\n\r\n constructor(protected contentRef: ElementRef, protected changeDetectorRef: ChangeDetectorRef) {}\r\n\r\n setSelected(selected: boolean): void {\r\n this.selected = selected;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n onSelectOption() {\r\n if (this.disabled || this.disabledByParent) {\r\n return;\r\n }\r\n this.selected = this.multiple ? !this.selected : true; // If not multiple mode -> can not be unselected\r\n this.selectedChange.emit(this.selected);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n getValue() {\r\n return this.value;\r\n }\r\n\r\n setValue(value: TOptionValue): void {\r\n this.value = value;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n isSelected(): boolean {\r\n return this.selected;\r\n }\r\n\r\n getContentRef(): ElementRef<any> {\r\n return this.contentRef;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabledByParent = isDisabled;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n setMultiple(multiple: boolean): void {\r\n this.multiple = multiple;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n}","export const compareArrays = <TItem>(a: TItem[], b: TItem[]) =>\r\n a.length === b.length && a.every((element, index) => element === b[index]);\r\n","import { ChangeDetectorRef, Injectable, OnDestroy, QueryList } from '@angular/core';\r\nimport { merge, Observable, Subject } from 'rxjs';\r\nimport { filter, map, takeUntil } from 'rxjs/operators';\r\nimport { compareArrays } from '../../../utils/array';\r\nimport { OptionComponent } from '../option/option.component';\r\n\r\n@Injectable()\r\nexport class ValueChangeService<TOptionValue> implements OnDestroy {\r\n\r\n valueChange$: Subject<TOptionValue | TOptionValue[]> = new Subject();\r\n\r\n set value(value: TOptionValue | TOptionValue[]) {\r\n this._value = value;\r\n this.handleValueChange();\r\n this.valueChange$.next(value);\r\n }\r\n\r\n get value(): TOptionValue | TOptionValue[] {\r\n return this._value;\r\n }\r\n\r\n multiple: boolean = false;\r\n\r\n private _value: TOptionValue | TOptionValue[];\r\n\r\n disabled: boolean;\r\n\r\n optionChildren: QueryList<OptionComponent<TOptionValue>>;\r\n\r\n selectedOptionContent: any;\r\n\r\n indexSelectedOption: number = null; // todo update to array\r\n\r\n resetListeners$: Subject<void> = new Subject();\r\n\r\n constructor(private changeDetectorRef: ChangeDetectorRef) {\r\n }\r\n\r\n handleSelectOptionsChange(optionChildren: QueryList<OptionComponent<TOptionValue>>, value: any) {\r\n this.resetListeners$.next();\r\n\r\n this.optionChildren = optionChildren;\r\n this._value = value;\r\n this.indexSelectedOption = null;\r\n\r\n this.handleMultipleSelection();\r\n this.handleInitialSelectedOption();\r\n this.handleSelectedOptionsEvent();\r\n }\r\n\r\n assignValue(value: TOptionValue | TOptionValue[]) {\r\n this._value = value;\r\n this.handleValueChange();\r\n }\r\n\r\n handleValueChange() {\r\n this.changeSelectedOption();\r\n this.updateSelectPlaceholder();\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n setDisabledState(isDisabled: boolean) {\r\n this.disabled = isDisabled;\r\n this.optionChildren?.forEach((option) => option.setDisabledState(isDisabled));\r\n }\r\n\r\n selectNextOption() {\r\n // TODO : Handle multiple selection\r\n if (this.indexSelectedOption +1 >= this.optionChildren.length) {\r\n return;\r\n }\r\n\r\n if (this.indexSelectedOption === null) {\r\n this.indexSelectedOption = 0;\r\n } else {\r\n this.indexSelectedOption = this.indexSelectedOption + 1;\r\n }\r\n\r\n this.value = this.optionChildren.get(this.indexSelectedOption).value;\r\n }\r\n\r\n selectPreviousOption() {\r\n // TODO : Handle multiple selection\r\n if (!this.indexSelectedOption) {\r\n this.indexSelectedOption = null;\r\n this.assignValue(null);\r\n return;\r\n }\r\n\r\n this.indexSelectedOption = this.indexSelectedOption - 1;\r\n this.value = this.optionChildren.get(this.indexSelectedOption).value;\r\n }\r\n\r\n searchOptionByFirstLetter(letter: string) {\r\n // TODO : Handle multiple selectiong\r\n const matchedOptionsIndex = this.optionChildren\r\n .map((option, index) => this.indexOfMatchedOption(option, index, letter))\r\n .filter(this.isNotNull);\r\n\r\n if (!matchedOptionsIndex.length) { // reset the selection\r\n this.indexSelectedOption = null;\r\n this.value = null;\r\n return;\r\n }\r\n\r\n // find the next option after the current selected option, or the first option\r\n\r\n const validOptionIndex = matchedOptionsIndex.find(this.highestAndClosestIndex);\r\n\r\n this.indexSelectedOption = isNaN(validOptionIndex) ? matchedOptionsIndex[0] : validOptionIndex;\r\n this.value = this.optionChildren.get(this.indexSelectedOption).value;\r\n }\r\n\r\n setMultiple(value: boolean) {\r\n this.multiple = value;\r\n }\r\n\r\n private indexOfMatchedOption = (option: OptionComponent<TOptionValue>, index: number, letter: string) => {\r\n const textOption = option.getContentRef().nativeElement.textContent.trim().toLowerCase();\r\n return textOption.startsWith(letter) ? index : null;\r\n }\r\n\r\n private isNotNull = (index: number | null) => {\r\n return index !== null;\r\n }\r\n\r\n private highestAndClosestIndex = (index: number) => {\r\n if (isNaN(this.indexSelectedOption)) {\r\n return true;\r\n }\r\n if (index > this.indexSelectedOption) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n private handleMultipleSelection() {\r\n if (this.multiple) {\r\n setTimeout(() => {\r\n this.optionChildren.forEach((option) => option.setMultiple(true));\r\n }, 0);\r\n }\r\n }\r\n\r\n private handleInitialSelectedOption() {\r\n setTimeout(() => { // ! Avoid Expression has changed...\r\n\r\n if (this.mustUpdateValueWithInitialSelectedOptionValues()) { // initial option value selected win against initial value or ngModel value\r\n this.value = this.multiple ? this.getSelectedOptionsValues() : this.getSelectedOptionsValues()[0];\r\n }\r\n\r\n if (this.disabled) {\r\n this.optionChildren.forEach((option) => option.setDisabledState(true));\r\n }\r\n\r\n this.handleValueChange();\r\n }, 0);\r\n }\r\n\r\n private mustUpdateValueWithInitialSelectedOptionValues() {\r\n if (!this.getSelectedOptionComponents().length) {\r\n return false;\r\n }\r\n\r\n if (this.multiple && Array.isArray(this.value)) {\r\n return !compareArrays(this.value, this.getSelectedOptionsValues());\r\n }\r\n\r\n return this.value !== this.getSelectedOptionsValues()[0];\r\n }\r\n\r\n private handleSelectedOptionsEvent() {\r\n this.optionSelectedChangeListeners().subscribe((option) => {\r\n const selectedOptionsValues = this.getSelectedOptionsValues();\r\n if (this.multiple) {\r\n this.value = selectedOptionsValues;\r\n return;\r\n }\r\n this.value = option.selected ? option.value : undefined;\r\n });\r\n }\r\n\r\n private updateSelectPlaceholder() {\r\n if (!this.value && typeof this.value !== 'number') {\r\n this.selectedOptionContent = null;\r\n return;\r\n }\r\n\r\n this.selectedOptionContent = this.getSelectedOptionsContent();\r\n }\r\n\r\n private getSelectedOptionsContent() {\r\n if (this.multiple) {\r\n return this.getSelectedOptionComponents().reduce((acc, option) => (acc ? acc + ', ' : '') + option.getContentRef().nativeElement.textContent.trim(), ''); // todo improve for multiple\r\n }\r\n return this.getSelectedOptionComponents()[0]?.getContentRef().nativeElement.innerHTML;\r\n }\r\n\r\n private getSelectedOptionComponents(){\r\n return this.optionChildren.filter((option) => option.selected);\r\n }\r\n\r\n private getSelectedOptionsValues() {\r\n return this.getSelectedOptionComponents().map((option) => option.value);\r\n }\r\n\r\n private optionSelectedChangeListeners() {\r\n const selectedChange$ = this.optionChildren.map((option) => {\r\n return option.selectedChange.pipe(\r\n filter(() => !this.disabled),\r\n map(() => option)\r\n );\r\n });\r\n\r\n return merge(...selectedChange$).pipe(takeUntil(this.resetListeners$));\r\n }\r\n\r\n private changeSelectedOption() {\r\n this.optionChildren.forEach((optionComponent, index) => {\r\n optionComponent.setSelected(this.isSelectedValue(optionComponent.value));\r\n\r\n if (optionComponent.selected) {\r\n this.indexSelectedOption = index;\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * May not work with objects values\r\n */\r\n private isSelectedValue(value2: TOptionValue) {\r\n if (this.multiple && Array.isArray(this.value)) {\r\n return this.value.includes(value2);\r\n }\r\n return this.value === value2;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.resetListeners$.next();\r\n this.resetListeners$.complete();\r\n }\r\n}","import { DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, A, Z, ZERO, NINE, TAB } from '@angular/cdk/keycodes';\r\nimport { AfterViewInit, ContentChildren, Directive, EventEmitter, HostBinding, HostListener, Input, OnDestroy, OnInit, Output, QueryList } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { startWith, Subject, takeUntil } from 'rxjs';\r\nimport { OptionSelectionHandler } from '../option/option-selection-handler.interface';\r\nimport { OPTION_SELECTION_HANDLER } from '../option/option-selection-handler.token';\r\nimport { ValueChangeService } from './value-change.service';\r\n\r\n@Directive(\r\n {\r\n selector: '[wacSelect]',\r\n providers: [\r\n { provide: NG_VALUE_ACCESSOR, useExisting: SelectDirective, multi: true },\r\n ValueChangeService\r\n ],\r\n exportAs: 'wacSelect',\r\n standalone: true\r\n})\r\nexport class SelectDirective<TOptionValue> implements OnInit, ControlValueAccessor, AfterViewInit, OnDestroy {\r\n\r\n @HostBinding('attr.tabindex') get tabindex() {\r\n return this.tabIndex;\r\n }\r\n\r\n @HostBinding('class.wac-select-disabled') get isSelectDisabled() {\r\n return this.disabled;\r\n }\r\n\r\n /** Handles all keydown events on the select. */\r\n @HostListener('keydown', ['$event']) onKeydown(event: KeyboardEvent): void {\r\n if (event.keyCode === TAB) {\r\n return;\r\n }\r\n if (this.disabled) {\r\n return;\r\n }\r\n this.handleKeyboardAction(event);\r\n }\r\n\r\n @ContentChildren(OPTION_SELECTION_HANDLER as any, { descendants: true }) optionChildren!: QueryList<OptionSelectionHandler<TOptionValue>>;\r\n\r\n @Input()\r\n set value(value: TOptionValue | TOptionValue[]) {\r\n this._value = value;\r\n\r\n if (!this.optionChildren) {\r\n return;\r\n }\r\n\r\n this.valueChangeService.assignValue(value);\r\n }\r\n\r\n get value() : TOptionValue | TOptionValue[] {\r\n return this._value;\r\n }\r\n _value: TOptionValue | TOptionValue[];\r\n\r\n @Output()\r\n valueChange = new EventEmitter<any>();\r\n\r\n @Input()\r\n get multiple(): boolean {\r\n return this._multiple;\r\n }\r\n set multiple(value: boolean) {\r\n this._multiple = value;\r\n this.valueChangeService.setMultiple(value);\r\n }\r\n private _multiple: boolean = false;\r\n\r\n @Input()\r\n set disabled(disabled: boolean) {\r\n this._disabled = disabled;\r\n this.valueChangeService.setDisabledState(disabled);\r\n }\r\n get disabled() : boolean {\r\n return this._disabled;\r\n }\r\n _disabled: boolean = false;\r\n\r\n\r\n @Input() tabIndex: number = 0;\r\n\r\n @Input() \r\n get searchByTyping(): boolean {\r\n return this._searchByTyping;\r\n }\r\n set searchByTyping(value: boolean) {\r\n this._searchByTyping = value;\r\n }\r\n _searchByTyping = false;\r\n\r\n isDestroyed$: Subject<void> = new Subject();\r\n\r\n constructor(protected valueChangeService: ValueChangeService<TOptionValue>) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.handleValueChange();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.handleOptionChildren();\r\n }\r\n\r\n private handleValueChange() {\r\n this.valueChangeService.valueChange$.pipe(takeUntil(this.isDestroyed$)).subscribe(value => {\r\n this._value = value;\r\n this.valueChange.emit(this.value);\r\n this.onChange(this.value);\r\n this.onTouch(this.value);\r\n });\r\n }\r\n\r\n private handleOptionChildren() {\r\n this.optionChildren.changes.pipe(takeUntil(this.isDestroyed$), startWith(this.optionChildren)).subscribe(optionChildren => {\r\n this.valueChangeService.handleSelectOptionsChange(optionChildren, this.value);\r\n\r\n });\r\n }\r\n\r\n /** Handles keyboard events when the selected is open. */\r\n protected handleKeyboardAction(event: KeyboardEvent): void {\r\n if (!this.searchByTyping) {\r\n return;\r\n }\r\n const keyCode = event.keyCode;\r\n const isArrowKey =\r\n keyCode === DOWN_ARROW ||\r\n keyCode === UP_ARROW ||\r\n keyCode === LEFT_ARROW ||\r\n keyCode === RIGHT_ARROW;\r\n const isTyping = (keyCode >= A && keyCode <= Z) || (keyCode >= ZERO && keyCode <= NINE);\r\n if (isArrowKey) {\r\n event.preventDefault(); // prevents the page from scrolling\r\n // select the next option on arrow key down\r\n if (keyCode === DOWN_ARROW || keyCode === RIGHT_ARROW) {\r\n this.valueChangeService.selectNextOption();\r\n return;\r\n }\r\n this.valueChangeService.selectPreviousOption();\r\n return;\r\n }\r\n\r\n if (isTyping) {\r\n this.valueChangeService.searchOptionByFirstLetter(event.key);\r\n return;\r\n }\r\n\r\n }\r\n\r\n // ControlValueAccessor methods\r\n\r\n onChange: (value: any) => void = () => {};\r\n\r\n onTouch: (value: any) => void = () => {};\r\n\r\n writeValue(value: any){\r\n if (typeof value === 'undefined') {\r\n return;\r\n }\r\n this.value = value;\r\n }\r\n\r\n registerOnChange(fn: any){\r\n this.onChange = fn;\r\n }\r\n registerOnTouched(fn: any){\r\n this.onTouch = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean) {\r\n this.disabled = isDisabled;\r\n };\r\n\r\n ngOnDestroy() {\r\n this.isDestroyed$.next();\r\n this.isDestroyed$.complete();\r\n }\r\n\r\n}\r\n","import { Directive, HostListener, Input } from '@angular/core';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[wacOnlyNumber]'\r\n})\r\nexport class OnlyNumberDirective {\r\n\r\n // https://stackoverflow.com/questions/41465542/angular2-input-field-to-accept-only-numbers?page=1&tab=scoredesc#tab-top\r\n\r\n constructor() { }\r\n\r\n @Input() wacOnlyNumber: boolean = true;\r\n\r\n @HostListener('keydown', ['$event']) onKeyDown(event: KeyboardEvent) {\r\n if (!this.wacOnlyNumber) {\r\n return;\r\n }\r\n\r\n if ([46, 8, 9, 27, 13, 110, 190].indexOf(event.keyCode) !== -1 ||\r\n // Allow: Ctrl+A\r\n (event.keyCode === 65 && (event.ctrlKey || event.metaKey)) ||\r\n // Allow: Ctrl+C\r\n (event.keyCode === 67 && (event.ctrlKey || event.metaKey)) ||\r\n // Allow: Ctrl+V\r\n (event.keyCode === 86 && (event.ctrlKey || event.metaKey)) ||\r\n // Allow: Ctrl+X\r\n (event.keyCode === 88 && (event.ctrlKey || event.metaKey)) ||\r\n // Allow: home, end, left, right\r\n (event.keyCode >= 35 && event.keyCode <= 39)) {\r\n // let it happen, don't do anything\r\n return;\r\n }\r\n // Ensure that it is a number and stop the keypress\r\n if ((event.shiftKey || (event.keyCode < 48 || event.keyCode > 57)) && (event.keyCode < 96 || event.keyCode > 105)) {\r\n event.preventDefault();\r\n }\r\n }\r\n}","import { Directive, ElementRef, HostListener, Input } from \"@angular/core\";\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[wacTwoDigitDecimalNumber]',\r\n })\r\n export class TwoDigitDecimalNumberDirective {\r\n\r\n @Input() decimalSeparator: string[] = ['.', ',']; // user can put . or , char.\r\n // input also cannot start from , or .\r\n private specialKeys: Array<string> = ['Backspace', 'Tab', 'End', 'Home', '-', 'ArrowLeft', 'ArrowRight', 'Del', 'Delete'];\r\n\r\n constructor(private el: ElementRef) {\r\n }\r\n\r\n @HostListener('keydown', ['$event'])\r\n onKeyDown(event: KeyboardEvent) {\r\n if (this.specialKeys.includes(event.key)) {\r\n return;\r\n }\r\n const current: string = this.el.nativeElement.value;\r\n const position = this.el.nativeElement.selectionStart;\r\n const next: string = [current.slice(0, position), event.key == 'Decimal' ? '.' : event.key, current.slice(position)].join('');\r\n const regex = new RegExp(`^\\\\d+[${this.decimalSeparator.join('')}]?\\\\d{0,2}$`, 'g');\r\n\r\n if (next && !regex.test(next)) {\r\n event.preventDefault();\r\n }\r\n }\r\n }","import { ChangeDetectorRef, Directive, ElementRef } from '@angular/core';\r\nimport { OPTION_SELECTION_HANDLER } from '../select/option/option-selection-handler.token';\r\nimport { SelectOptionDirective } from '../select/option/select-option.directive';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[wacRadio]',\r\n exportAs: 'wacRadio',\r\n providers: [{ provide: OPTION_SELECTION_HANDLER, useExisting: RadioLegacyDirective }],\r\n })\r\nexport class RadioLegacyDirective<TOptionValue> extends SelectOptionDirective<TOptionValue> {\r\n\r\n constructor(protected contentRef: ElementRef, protected changeDetectorRef: ChangeDetectorRef) {\r\n super(contentRef, changeDetectorRef);\r\n }\r\n}","import { Directive } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { SelectDirective } from '../select/select/select.directive';\r\nimport { ValueChangeService } from '../select/select/value-change.service';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[wacRadioGroup]',\r\n providers: [\r\n { provide: NG_VALUE_ACCESSOR, useExisting: RadioGroupLegacyDirective, multi: true },\r\n ValueChangeService\r\n ],\r\n })\r\nexport class RadioGroupLegacyDirective<TOptionValue> extends SelectDirective<TOptionValue> {\r\n\r\n get multiple() {\r\n return false;\r\n }\r\n set multiple(value: boolean) {\r\n throw new Error('RadioGroupDirective does not support multiple selection');\r\n }\r\n\r\n constructor(\r\n protected valueChangeService: ValueChangeService<TOptionValue>,\r\n ) {\r\n super(valueChangeService);\r\n }\r\n}","import { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[wacCopyToClipboard]',\r\n standalone: true\r\n })\r\nexport class CopyToClipBoardDirective {\r\n @HostListener('click') onClick = () => this.copyToClipboard(this.element.nativeElement.outerText);\r\n\r\n @HostBinding('style') cursor = 'cursor:pointer';\r\n\r\n @Output() textCopy = new EventEmitter<string>();\r\n\r\n constructor(private element: ElementRef) {}\r\n\r\n copyToClipboard = (text: string) => {\r\n navigator.clipboard.writeText(text);\r\n this.textCopy.emit(text);\r\n };\r\n}","import { Directive, HostBinding, HostListener, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[wacScrollTo]',\r\n standalone: true,\r\n })\r\nexport class ScrollToDirective {\r\n\r\n @Input() elementId: string;\r\n\r\n @Input() scrollConfig: ScrollIntoViewOptions = {behavior: \"smooth\", block: \"start\", inline: \"nearest\"};\r\n\r\n @HostListener('click') onClick() {\r\n const element = document.getElementById(this.elementId);\r\n element?.scrollIntoView(this.scrollConfig);\r\n }\r\n\r\n @HostBinding('style.cursor') cursor = 'pointer';\r\n\r\n}","import { Directive, ElementRef, OnInit} from '@angular/core';\r\n// watch dom change and fire (dom-changed) event\r\n@Directive({\r\n standalone: false,\r\n selector: '[watchDomTree]'\r\n})\r\nexport class DomChangedDirective implements OnInit {\r\n constructor(private elRef: ElementRef) {}\r\n ngOnInit() {\r\n this.registerDomChangedEvent(this.elRef.nativeElement);\r\n }\r\n\r\n registerDomChangedEvent(el) {\r\n const observer = new MutationObserver( list => {\r\n const evt =\r\n new CustomEvent('dom-changed',\r\n {detail: list, bubbles: true});\r\n el.dispatchEvent(evt);\r\n });\r\n const attributes = false;\r\n const childList = true;\r\n const subtree = true;\r\n observer.observe(el, {attributes, childList, subtree});\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { DebounceKeyupDirective } from './abstract-debounce/debounce-keyup.directive';\r\nimport { AbstractDebounceDirective } from './abstract-debounce/abstract-debounce.directive';\r\nimport { AutoHideDirective } from './auto-hide/auto-hide.directive';\r\nimport {ZindexToggleDirective} from './zindex-toggle/zindex-toggle.directive';\r\nimport { VarDirective } from './ng-var.directive';\r\nimport { KeypressEnterDirective } from './keyboard-events/keypress-enter.directive';\r\nimport { SelectOptionDirective } from '../components/select/option/select-option.directive';\r\nimport { SelectDirective } from '../components/select/select/select.directive';\r\nimport { OnlyNumberDirective } from './keyboard-events/only-numbers.directive';\r\nimport { TwoDigitDecimalNumberDirective } from './keyboard-events/two-digital-decimal-number.directive';\r\nimport { RadioLegacyDirective } from '../components/radio-legacy/radio-legacy-directive';\r\nimport { RadioGroupLegacyDirective } from '../components/radio-legacy/radio-group-legacy.directive';\r\nimport { CopyToClipBoardDirective } from './copy-to-clipboard/copy-to-clipboard.directive';\r\nimport { ScrollToDirective } from './scroll-to/scroll-to.directive';\r\nimport { DomChangedDirective } from './watch-dom-tree/watch-dom-tree.directive';\r\n\r\nconst directives = [\r\n DebounceKeyupDirective,\r\n AbstractDebounceDirective,\r\n AutoHideDirective,\r\n ZindexToggleDirective,\r\n VarDirective,\r\n KeypressEnterDirective,\r\n OnlyNumberDirective,\r\n TwoDigitDecimalNumberDirective,\r\n RadioLegacyDirective,\r\n RadioGroupLegacyDirective,\r\n DomChangedDirective\r\n];\r\n\r\nconst standalone = [\r\n SelectDirective,\r\n SelectOptionDirective,\r\n]\r\n\r\n@NgModule({\r\n imports: [CommonModule, FormsModule, CopyToClipBoardDirective, ScrollToDirective, ...standalone],\r\n declarations: directives,\r\n exports: [...directives, CopyToClipBoardDirective, ScrollToDirective, ...standalone]\r\n})\r\nexport class SharedDirectives {}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-tooltip',\r\n templateUrl: './tooltip.component.html',\r\n\r\n})\r\nexport class TooltipComponent implements OnInit {\r\n // todo add exemples. Should be a directive. Maybe allow to pass a template like\r\n @Input()\r\n tooltipIcon: string;\r\n @Input()\r\n tooltipText: string = '';\r\n @Input()\r\n tooltipLink: string = '';\r\n @Input()\r\n tooltipUrl: string = '#';\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n if (this.tooltipIcon === '') {\r\n this.tooltipIcon = 'fas fa-info-circle';\r\n }\r\n }\r\n}\r\n","<span class=\"wac-tooltip\">\r\n <i [class]=\"tooltipIcon\"></i>\r\n <span class=\"tooltip-content\"\r\n >{{ tooltipText }}\r\n <span *ngIf=\"tooltipUrl\"\r\n ><a [href]=\"tooltipUrl\" target=\"_blank\">{{ tooltipLink }}</a></span\r\n >\r\n </span>\r\n</span>\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { TooltipComponent } from './tooltip.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule\r\n ],\r\n exports: [TooltipComponent],\r\n declarations: [TooltipComponent],\r\n providers: [],\r\n})\r\nexport class TooltipModule { }\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'wac-progress-bar',\r\n templateUrl: './progress-bar.component.html',\r\n standalone: true,\r\n imports: [CommonModule],\r\n})\r\nexport class ProgressBarComponent {\r\n @Input()\r\n valueLength = null;\r\n @Input()\r\n min = null;\r\n @Input()\r\n max = null;\r\n\r\n constructor(private translateService: TranslateService) {}\r\n\r\n progressBarClass(spanNumber = -1) {\r\n const length = this.valueLength;\r\n const min = this.min;\r\n const max = this.max;\r\n\r\n if (spanNumber === 1) {\r\n return {\r\n 'is-danger': length > max,\r\n 'is-success': length >= min && length <= max\r\n };\r\n } else if (spanNumber === 2) {\r\n return {\r\n 'is-success': length === max,\r\n 'is-danger': length > max\r\n };\r\n } else {\r\n return {\r\n 'is-warning': length < min,\r\n 'is-danger': length > max,\r\n 'is-success': length >= min && length <= max\r\n };\r\n }\r\n }\r\n\r\n progressBarSpanPosition(index) {\r\n const min = this.min;\r\n const max = this.max;\r\n const maxSize = this.progressBarGetMaxSize(max);\r\n const successMin = (min / maxSize) * 100;\r\n const successMax = (max / maxSize) * 100;\r\n return index === 1 ? successMin : successMax;\r\n }\r\n\r\n progressBarGetMaxSize(max) {\r\n return max + max / 4;\r\n }\r\n\r\n progressBarGetTextInfo() {\r\n const length = this.valueLength;\r\n const min = this.min;\r\n const max = this.max;\r\n\r\n if (length < min) {\r\n return this.translateService.instant('wac.input.progressbar.information.too.short');\r\n } else if (length > max) {\r\n return this.translateService.instant('wac.input.progressbar.information.too.long');\r\n } else {\r\n return this.translateService.instant('wac.input.progressbar.information.good');\r\n }\r\n }\r\n}\r\n","<div class=\"wac-progressBarContent\">\r\n <div class=\"progressBar\">\r\n <progress class=\"progress\" [ngClass]=\"progressBarClass()\" [max]=\"progressBarGetMaxSize(max)\" [value]=\"valueLength\"></progress>\r\n <span [ngClass]=\"progressBarClass(1)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(1) }\"></span>\r\n <span [ngClass]=\"progressBarClass(2)\" [ngStyle]=\"{ 'left.%': progressBarSpanPosition(2) }\"></span>\r\n </div>\r\n <div class=\"size\">\r\n <span class=\"is-size-7 wac-input__size\">\r\n <span *ngIf=\"valueLength\">\r\n <span [ngClass]=\"progressBarClass()\">{{ progressBarGetTextInfo() }}</span> -\r\n </span>\r\n <strong>{{ valueLength }}</strong> / {{ max }}\r\n </span>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { TooltipModule } from '../../tooltip/tooltip.module';\r\nimport { SharedDirectives } from '../../../directives/shared-directives.module';\r\nimport { ProgressBarComponent } from '../../progress-bar/progress-bar.component';\r\n\r\n@Component({\r\n selector: 'wac-input',\r\n templateUrl: './input.component.html',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n SharedDirectives,\r\n TooltipModule,\r\n ProgressBarComponent],\r\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputComponent, multi: true }]\r\n})\r\nexport class InputComponent implements ControlValueAccessor {\r\n @Input()\r\n label = '';\r\n @Input()\r\n value = '';\r\n @Input()\r\n type = 'text';\r\n @Input()\r\n placeholder = ''; // todo could be handle with ng-content\r\n @Input()\r\n textInfo = null; // todo should be handle with ng-content\r\n @Input()\r\n textError = null; // todo should be handle with ng-content\r\n @Input()\r\n size = null;\r\n @Input()\r\n isNumber = null;\r\n @Input()\r\n withoutBlock = false;\r\n @Input()\r\n icon = '';\r\n @Input()\r\n big = false;\r\n @Input()\r\n medium = false;\r\n @Input()\r\n boldLabel = 'false'; // todo refacto to boolean\r\n @Input()\r\n min = null;\r\n @Input()\r\n max = null;\r\n @Input()\r\n disableMargin = false;\r\n @Input()\r\n textPrepend = null; // todo should be handle with ng-content\r\n @Input()\r\n textAppend = null; // todo should be handle with ng-content\r\n @Input()\r\n progressBar = false;\r\n @Input()\r\n extraClasses = '';\r\n @Input()\r\n keyPreventDefault = [];\r\n @Input()\r\n showTooltip = false;\r\n @Input()\r\n textTooltip = '';\r\n @Input()\r\n iconTooltip = '';\r\n @Input()\r\n urlTooltip = '';\r\n @Input()\r\n linkTooltip = '';\r\n @Input()\r\n padding = false;\r\n @Input()\r\n disabled = false;\r\n @Input()\r\n indication = ''; // todo should be handle with ng-content\r\n @Input()\r\n success = false;\r\n @Input()\r\n error = false;\r\n @Input()\r\n maxlength: number | string;\r\n @Input()\r\n minlength: number | string;\r\n @Input()\r\n indicationLeft = false;\r\n\r\n @Output() keypressEnter = new EventEmitter<boolean>();\r\n @Output() blurred = new EventEmitter<void>();\r\n\r\n private KEYPRESS_ENTER = \"Enter\";\r\n\r\n id =\r\n 'wz-input_' +\r\n Math.random()\r\n .toString(36)\r\n .substr(2, 9);\r\n\r\n private _onChange = (value: string) => {};\r\n private _onTouched: Function = () => {};\r\n\r\n registerOnChange(fn: any): void {\r\n this._onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this._onTouched = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n writeValue(obj: any): void {\r\n this.value = obj;\r\n }\r\n\r\n onChange(value: string) {\r\n if (this._onChange) {\r\n this._onChange(value);\r\n }\r\n }\r\n\r\n onBlur() {\r\n if (this._onTouched) {\r\n this._onTouched();\r\n }\r\n this.blurred.next();\r\n }\r\n\r\n checkNumberValue(value) {\r\n if (this.min && this.min > value) {\r\n this.value = this.min;\r\n }\r\n if (this.max && this.max < value) {\r\n this.value = this.max;\r\n }\r\n }\r\n\r\n onFocusOut() {\r\n if (this.type === 'number') {\r\n this.checkNumberValue(this.value);\r\n }\r\n }\r\n\r\n keyPress(event: KeyboardEvent) {\r\n if (this.keyPreventDefault.includes(event.key)) {\r\n event.preventDefault();\r\n }\r\n\r\n if (event.key === this.KEYPRESS_ENTER) {\r\n this.keypressEnter.next(true);\r\n }\r\n }\r\n}\r\n","<div\r\n class=\"field wac-input\"\r\n [ngClass]=\"{ 'has-no-block': withoutBlock, 'is-big': big, 'is-medium': medium, 'with-padding': padding, 'indication-left': indicationLeft, 'with-progress-bar': progressBar }\"\r\n>\r\n <div class=\"field-label is-normal has-text-left\" *ngIf=\"!withoutBlock && label\">\r\n <label\r\n [ngClass]=\"[boldLabel === 'true' ? 'label has-text-weight-bold' : 'label has-text-weight-normal', showTooltip ? 'label-inline' : '', size && !progressBar ? 'has-padding-right-mobile' : '']\"\r\n [innerHTML]=\"label\"\r\n [for]=\"id\"\r\n ></label>\r\n <wac-tooltip\r\n *ngIf=\"showTooltip\"\r\n [tooltipIcon]=\"iconTooltip\"\r\n [tooltipText]=\"textTooltip\"\r\n [tooltipLink]=\"linkTooltip\"\r\n [tooltipUrl]=\"urlTooltip\"\r\n ></wac-tooltip>\r\n <!-- Size -->\r\n <span *ngIf=\"size && !progressBar\" class=\"is-size-7 wac-input__size\">\r\n <strong>{{ !value ? 0 : value.toString().length }}</strong> / {{ size }}\r\n </span>\r\n </div>\r\n <div class=\"field-body\">\r\n <div class=\"field\">\r\n <p\r\n class=\"control\"\r\n [ngClass]=\"{ 'has-icons-right': textError || success || error, 'has-icons-left': icon !== '', 'has-input-group': textAppend || textPrepend }\"\r\n >\r\n <!-- Text Prepend -->\r\n <span *ngIf=\"textPrepend\" class=\"has-input-group\">\r\n <span class=\"has-input-group-text prepend\">{{ textPrepend }}</span>\r\n <span *ngIf=\"icon !== ''\" class=\"icon is-small is-left\">\r\n <i [class]=\"icon\"></i>\r\n </span>\r\n </span>\r\n\r\n <!-- Input -->\r\n <input\r\n [class]=\"'input ' + extraClasses\"\r\n [id]=\"id\"\r\n [ngClass]=\"{\r\n 'is-danger': (textError || error) && !disabled,\r\n 'is-empty': value === '',\r\n 'is-large': big,\r\n 'is-number': isNumber,\r\n 'remove-margin': disableMargin,\r\n 'text-append': textAppend\r\n }\"\r\n [type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n [attr.size]=\"size\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"onChange($event)\"\r\n (blur)=\"onBlur()\"\r\n [disabled]=\"disabled\"\r\n (focusout)=\"onFocusOut()\"\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n [maxlength]=\"maxlength ? maxlength : 524288\"\r\n [minlength]=\"minlength ? minlength : 0\"\r\n (keypress)=\"keyPress($event)\"\r\n />\r\n\r\n <!-- Indication at the end of the input -->\r\n <span class=\"indication\" *ngIf=\"indication\" [ngClass]=\"{'reverse': indicationLeft}\">\r\n <span [innerHTML]=\"indication\"></span>\r\n </span>\r\n\r\n <!-- Text Append -->\r\n <span *ngIf=\"textAppend && !indicationLeft\" class=\"has-input-group\">\r\n <span class=\"has-input-group-text append\">{{ textAppend }}</span>\r\n <!-- error if text append not empty -->\r\n <span *ngIf=\"textError\" class=\"icon is-small is-right\">\r\n <i class=\"fal fa-times has-text-danger\"></i>\r\n </span>\r\n </span>\r\n\r\n <!-- Icon Left -->\r\n <span *ngIf=\"icon !== '' && !textPrepend && !indicationLeft\" class=\"icon is-small is-left\">\r\n <i [class]=\"icon\"></i>\r\n </span>\r\n\r\n <!-- Icon error if textAppend empty -->\r\n <span *ngIf=\"(textError || error) && !textAppend && !indicationLeft && !disabled\" class=\"icon is-small is-right\">\r\n <i class=\"fal fa-times has-text-danger\"></i>\r\n </span>\r\n\r\n <!-- Icon success -->\r\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\r\n <i class=\"fas fa-check has-text-success\"></i>\r\n </span>\r\n\r\n <!-- Text Info -->\r\n <span\r\n *ngIf=\"textInfo && (textError === null || textError === '') && !progressBar && !indicationLeft\"\r\n class=\"is-size-7 wac-input__info text-info\"\r\n [innerHtml]=\"textInfo\"\r\n ></span>\r\n\r\n <!-- Text Error -->\r\n <span *ngIf=\"textError && !progressBar && !indicationLeft\" class=\"is-size-7 wac-input__error has-text-danger\" [innerHtml]=\"textError\"></span>\r\n </p>\r\n\r\n <!-- Progress Bar -->\r\n <wac-progress-bar *ngIf=\"progressBar && !indicationLeft\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\r\n </div>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { SharedDirectives } from '../../../directives/shared-directives.module';\r\nimport { InputComponent } from '../input/input.component';\r\n\r\n@Component({\r\n selector: 'wac-input-search',\r\n templateUrl: './input-search.component.html',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n InputComponent,\r\n SharedDirectives\r\n ],\r\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputSearchComponent, multi: true }]\r\n})\r\nexport class InputSearchComponent implements ControlValueAccessor {\r\n\r\n @Input()\r\n placeholder: string = '';\r\n\r\n @Input()\r\n withoutgrey: boolean = false;\r\n\r\n @Input()\r\n smallPadding:boolean = false; // todo Try to be more flexible like changing type : export type PaddingConfig = \"default\" | \"small\" | \"big\" | \"no-padding\";\r\n\r\n @Input()\r\n id: string;\r\n private innerValue: any = '';\r\n @Output() changeDebounced = new EventEmitter<any>(); // debounced\r\n\r\n private onTouchedCallback: () => void = () => {};\r\n private onChangeCallback: (_: any) => void = () => {};\r\n\r\n get value(): any {\r\n return this.innerValue;\r\n }\r\n\r\n set value(v: any) {\r\n if (v !== this.innerValue) {\r\n this.innerValue = v;\r\n this.onChangeCallback(v);\r\n }\r\n }\r\n\r\n writeValue(value: any) {\r\n if (value !== this.innerValue) {\r\n this.innerValue = value;\r\n }\r\n }\r\n\r\n registerOnChange(fn: any) {\r\n this.onChangeCallback = fn;\r\n }\r\n\r\n registerOnTouched(fn: any) {\r\n this.onTouchedCallback = fn;\r\n }\r\n\r\n public handleDebouncedKeyUp(): void {\r\n this.changeDebounced.emit(this.value);\r\n }\r\n}\r\n","<div class=\"wac-field-input-search\" [ngClass]=\"{'small-padding' : smallPadding, 'no-grey': withoutgrey}\">\r\n <p class=\"control has-icons-left has-icons-right\">\r\n <input\r\n [placeholder]=\"placeholder\"\r\n value=\"\"\r\n class=\"input\"\r\n type=\"text\"\r\n [attr.id]=\"id\"\r\n [(ngModel)]=\"value\"\r\n debounceKeyUp\r\n [debounceTime]=\"1000\"\r\n (onEventChange)=\"handleDebouncedKeyUp()\"\r\n />\r\n <i class=\"icon fal fa-search\"></i>\r\n </p>\r\n</div>\r\n","import { animate, style, transition, trigger } from '@angular/animations';\r\n\r\nexport const inOutY = trigger('inOutYAnimation', [\r\n transition(':enter', [\r\n style({ transform: 'scaleY(0)', height: 0, opacity: 0 }),\r\n animate('.3s ease-out', style({ transform: 'scaleY(1)', height: 'auto', opacity: 1 }))\r\n ]),\r\n transition(':leave', [\r\n style({ transform: 'scaleY(1)', height: 'auto', opacity: 1 }),\r\n animate('.3s ease-in', style({ transform: 'scaleY(0)', height: 0, opacity: 0 }))\r\n ])\r\n]);\r\n","import { Component, Input, Output, EventEmitter, ViewEncapsulation } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { inOutY } from '../../animations/in-out/in-out-y.animation';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-checkbox',\r\n templateUrl: './checkbox.component.html',\r\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: CheckboxComponent, multi: true }],\r\n animations: [inOutY],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class CheckboxComponent implements ControlValueAccessor {\r\n @Input()\r\n label = '';\r\n\r\n @Input()\r\n set value(value: boolean) {\r\n this._value = value;\r\n this._onChange(value);\r\n this._onTouched();\r\n }\r\n get value() : boolean {\r\n return this._value;\r\n }\r\n _value: boolean;\r\n\r\n @Input()\r\n type: 'checkbox' | 'radio' = 'checkbox';\r\n @Input()\r\n alone = false;\r\n @Input()\r\n checked = false;\r\n @Input()\r\n hasInput = false; // todo remove from it ! That is not a part of a checkbox\r\n @Input()\r\n inputPlaceholder = ''; // todo remove from it ! That is not a part of a checkbox\r\n @Input()\r\n id = ''; // todo maybe create a static property for unique id\r\n @Input()\r\n name: string;\r\n @Input()\r\n whiteSpace = true;\r\n @Input()\r\n disabled = false;\r\n\r\n @Output() valueChange = new EventEmitter<boolean>();\r\n\r\n constructor() {}\r\n\r\n private _onChange: (value: boolean) => void = (value) => {};\r\n private _onTouched = () => {};\r\n\r\n registerOnChange(fn: any): void {\r\n this._onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this._onTouched = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n writeValue(isChecked: boolean): void {\r\n this._value = isChecked;\r\n }\r\n\r\n onChange(value) {\r\n this._onChange(value);\r\n }\r\n\r\n inputClick($event) { // todo it is usefull ?\r\n $event.stopPropagation();\r\n }\r\n}\r\n","<div class=\"wac-field-checkbox\" [ngClass]=\"{ 'disable-wt' : !whiteSpace, alone: alone }\">\r\n <div class=\"wac-field-checkbox__row\">\r\n <!-- TODO handle radio styles -->\r\n <input\r\n [type]=\"type\"\r\n [id]=\"id\"\r\n [class]=\"'is-checkradio' + (value ? ' checked' : '')\"\r\n [name]=\"name\"\r\n [disabled]=\"disabled\"\r\n [checked]=\"value\"\r\n (change)=\"value = !value\"\r\n />\r\n <label [attr.for]=\"id\"><span [innerHTML]=\"label\"></span></label>\r\n </div>\r\n <input\r\n *ngIf=\"hasInput && checked\"\r\n [@inOutYAnimation]\r\n type=\"text\"\r\n [placeholder]=\"inputPlaceholder\"\r\n (click)=\"inputClick($event)\"\r\n />\r\n</div>\r\n","import { ApplicationRef, ComponentFactoryResolver, Injector, Type, ComponentRef, EmbeddedViewRef } from \"@angular/core\";\r\n\r\nexport class HtmlContainer {\r\n private attached: boolean = false;\r\n\r\n private disposeFn: () => void;\r\n\r\n constructor(\r\n private hostElement: Element,\r\n private appRef: ApplicationRef,\r\n private componentFactoryResolver: ComponentFactoryResolver,\r\n private injector: Injector\r\n ) {}\r\n\r\n attach(component: Type<any>): ComponentRef<any> {\r\n if (this.attached) {\r\n throw new Error('component has already been attached');\r\n }\r\n\r\n this.attached = true;\r\n const childComponentFactory = this.componentFactoryResolver.resolveComponentFactory(component);\r\n\r\n let componentRef = childComponentFactory.create(this.injector);\r\n\r\n this.appRef.attachView(componentRef.hostView);\r\n this.disposeFn = () => {\r\n this.appRef.detachView(componentRef.hostView);\r\n componentRef.destroy();\r\n };\r\n\r\n this.hostElement.appendChild((componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0]);\r\n\r\n return componentRef;\r\n }\r\n\r\n dispose() {\r\n if (this.attached) {\r\n this.disposeFn();\r\n }\r\n }\r\n}","import { Injectable } from '@angular/core';\r\n\r\n\r\n@Injectable()\r\nexport class TableCheckboxIdService {\r\n\r\n static tableInstance = 0;\r\n\r\n currentTableInstance:number;\r\n nbCheckboxInstances: number = 0;\r\n\r\n constructor() {\r\n TableCheckboxIdService.tableInstance++;\r\n this.currentTableInstance = TableCheckboxIdService.tableInstance;\r\n }\r\n\r\n getUniqueId() {\r\n this.nbCheckboxInstances++;\r\n return `wac-table-${this.currentTableInstance}-${this.nbCheckboxInstances}`;\r\n }\r\n}","import { DOCUMENT } from '@angular/common';\r\nimport {\r\n ComponentFactoryResolver,\r\n EventEmitter,\r\n Inject,\r\n Output,\r\n Renderer2,\r\n Directive,\r\n ElementRef,\r\n Input,\r\n ComponentRef,\r\n ApplicationRef,\r\n Injector,\r\n} from '@angular/core';\r\nimport { HtmlContainer } from '../../../utils/html-container.class';\r\nimport { CheckboxComponent } from '../../checkbox/checkbox.component';\r\nimport { TableCheckboxIdService } from '../shared/table-checkbox-id.service';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[checkBoxRow]'\r\n})\r\nexport class CheckBoxRow {\r\n @Input() checkBoxId: string | number;\r\n @Input() checkBoxName: string;\r\n\r\n @Input() set checkBoxValue(value: boolean) {\r\n this._value = value;\r\n if (this.checkboxComponentRef) {\r\n this.setCheckBoxValue();\r\n }\r\n }\r\n _value: boolean;\r\n get checkBoxValue(): boolean {\r\n return this._value;\r\n }\r\n\r\n @Output() checkBoxValueChange: EventEmitter<boolean> = new EventEmitter();\r\n\r\n private checkboxComponentRef: ComponentRef<CheckboxComponent>;\r\n private htmlContainer: HtmlContainer;\r\n private checkBoxElement;\r\n\r\n constructor(\r\n private currentRow: ElementRef,\r\n private appRef: ApplicationRef,\r\n private renderer: Renderer2,\r\n @Inject(DOCUMENT) private document,\r\n private resolver: ComponentFactoryResolver,\r\n private injector: Injector,\r\n private tableCheckboxIdService: TableCheckboxIdService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.createCheckBoxComponent();\r\n this.handleChecboxInputs();\r\n this.handleCheckboxOutputs();\r\n }\r\n\r\n createCheckBoxComponent() {\r\n // Create the container\r\n this.checkBoxElement = document.createElement('div');\r\n this.checkBoxElement.className = 'wac-table__body__line__cell wac-table__body__line__cell--checkbox';\r\n\r\n // Insert divCheckBox in the DOM as the first child of the row\r\n this.renderer.insertBefore(this.currentRow.nativeElement, this.checkBoxElement, this.currentRow.nativeElement.firstChild);\r\n\r\n // Insert the CheckBoxComponent inside the container (DOM and Angular DOM)\r\n this.htmlContainer = new HtmlContainer(this.checkBoxElement, this.appRef, this.resolver, this.injector);\r\n this.checkboxComponentRef = this.htmlContainer.attach(CheckboxComponent);\r\n }\r\n\r\n private handleChecboxInputs() {\r\n this.checkboxComponentRef.instance.id = this.checkBoxId ? '' + this.checkBoxId : this.tableCheckboxIdService.getUniqueId();\r\n this.checkboxComponentRef.instance.name = this.checkBoxName ? this.checkBoxName : undefined;\r\n this.checkboxComponentRef.instance.alone = true;\r\n this.setCheckBoxValue();\r\n }\r\n\r\n private setCheckBoxValue() {\r\n this.checkboxComponentRef.instance.value = this.checkBoxValue;\r\n }\r\n\r\n private handleCheckboxOutputs() {\r\n // Detect checkbox changes\r\n this.checkboxComponentRef.instance.registerOnChange(() => {\r\n this._toggleCheckbox();\r\n });\r\n }\r\n\r\n private _toggleCheckbox() {\r\n this.checkBoxValueChange.emit(this.checkBoxValue);\r\n }\r\n\r\n getElement() {\r\n return this.checkBoxElement.querySelector('.wac-field-checkbox');\r\n }\r\n\r\n isActive(): boolean {\r\n return !!this.checkboxComponentRef.instance.value;\r\n }\r\n\r\n setActive(isActive: boolean) {\r\n this.checkboxComponentRef.instance.value = isActive; //? does not trigger output\r\n }\r\n\r\n ngOnDestroy() {\r\n this.htmlContainer.dispose();\r\n }\r\n}\r\n","import { Injectable, QueryList } from \"@angular/core\";\r\nimport { Subscription, Subject, merge, fromEvent } from \"rxjs\";\r\nimport { debounceTime, map } from \"rxjs/operators\";\r\nimport { SelectionItem } from \"../utils/slection-item.interface\";\r\n\r\n@Injectable()\r\nexport class MultiSelectionService {\r\n private items: QueryList<SelectionItem>;\r\n private subscription: Subscription;\r\n private lastIndex: number;\r\n private activeChanges: Subject<number[]> = new Subject();\r\n activeChanges$ = this.activeChanges.asObservable();\r\n\r\n constructor() {}\r\n\r\n handle(items: QueryList<SelectionItem>, toggleSingleItem: boolean = false): void {\r\n\r\n if (!items || !items.first) {\r\n this.destroy();\r\n return;\r\n }\r\n\r\n this.destroy(); // close previous subsciption\r\n\r\n this.items = items;\r\n\r\n const clicks$ = this.getListeners();\r\n\r\n this.subscription = merge(...clicks$).subscribe(({ component, isShift: isShiftKeyPressed, index }) => {\r\n if (!isShiftKeyPressed) {\r\n if (toggleSingleItem) {\r\n component.setActive(!component.isActive());\r\n }\r\n this.activeChanges.next([index]);\r\n this.lastIndex = index;\r\n return;\r\n }\r\n\r\n const start = index;\r\n const end = this.lastIndex;\r\n const [first, last] = [Math.min(start, end), Math.max(start, end) + 1];\r\n const itemsSelection = this.items.toArray().slice(first, last);\r\n const isBeginnerItemActive = this.items.get(end).isActive();\r\n\r\n itemsSelection.forEach(current => current.setActive(isBeginnerItemActive));\r\n window.getSelection().removeAllRanges(); // remove text selection\r\n const indexInRange = Array.from({length: last-first}, (x, i) => i + first);\r\n this.activeChanges.next(indexInRange);\r\n });\r\n }\r\n\r\n private getListeners() {\r\n return this.items.map((item, index) => {\r\n return fromEvent(item.getElement(), 'click').pipe(\r\n map((event: MouseEvent) => {\r\n return {\r\n index,\r\n isShift: event.shiftKey,\r\n component: item\r\n }\r\n })\r\n )\r\n .pipe(debounceTime(100)) // debounced, because when clicking on a wac-checkbox it is emitted twice and can not find why\r\n });\r\n }\r\n\r\n getActives() {\r\n return this.items.filter(item => item.isActive());\r\n }\r\n\r\n destroy() {\r\n this.subscription?.unsubscribe();\r\n }\r\n}","import { DOCUMENT } from '@angular/common';\r\nimport { Inject } from '@angular/core';\r\nimport { Renderer2 } from '@angular/core';\r\nimport { Directive, ElementRef } from '@angular/core';\r\n\r\n@Directive({\r\n standalone: false,\r\n // The selector has the same name as the tableRaw selector in table.component.html\r\n selector: '[tableRow]'\r\n})\r\nexport class TableRow {\r\n constructor(private currentCell: ElementRef, private renderer: Renderer2, @Inject(DOCUMENT) private document) {}\r\n\r\n ngAfterViewInit() {\r\n this.applyCustomStylesOnCell();\r\n }\r\n\r\n applyCustomStylesOnCell() {\r\n this.renderer.addClass(this.currentCell.nativeElement, 'wac-table__body__line');\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { NwbFilterGroup, NwbFilterRoutingBuilder } from '@wizishop/ng-wizi-bulma';\r\nimport { ReplaySubject, Subject } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\nimport { TableFiltersGroup } from './table-filters-group.model';\r\nimport { TableFilters } from './table-filters.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FiltersTableService {\r\n filterGroups = new Map<string, NwbFilterGroup>();\r\n\r\n private sortSubject: Subject<any> = new Subject<any>();\r\n\r\n constructor(private filterRoutingBuilder: NwbFilterRoutingBuilder) {}\r\n\r\n getTableFilterGroup(dataTableName: string): TableFiltersGroup {\r\n if (this.filterGroups.has(dataTableName)) {\r\n return this.filterGroups.get(dataTableName) as TableFiltersGroup;\r\n }\r\n\r\n const dataTableFilters: TableFilters = {\r\n sort: undefined,\r\n order: undefined,\r\n searchValue: undefined,\r\n totalItems: 0,\r\n itemsPerPage: 0,\r\n currentPage: 0\r\n };\r\n\r\n const filterGroup: TableFiltersGroup = this.filterRoutingBuilder.group(dataTableFilters, dataTableName) as TableFiltersGroup;\r\n filterGroup.tableFiltersValuesChange$ = new ReplaySubject<TableFilters>(1);\r\n filterGroup.tableFiltersValuesDebouncedChange$ = filterGroup.tableFiltersValuesChange$.pipe(debounceTime(300));\r\n\r\n this.filterGroups.set(dataTableName, filterGroup);\r\n return filterGroup;\r\n }\r\n\r\n /**\r\n * Use to reset the others sorts of the table\r\n * @param dataTableName\r\n * @param sortName\r\n * @param order\r\n */\r\n emitSortChange(dataTableName: string, sortName: string, order: boolean) {\r\n this.sortSubject.next({ dataTableName, sortName, order });\r\n }\r\n\r\n getSortChangeListner() {\r\n return this.sortSubject.asObservable();\r\n }\r\n\r\n setPaginationFilters(dataTableName, totalItems, itemsPerPage, currentPage) {\r\n const filterGroup = this.getTableFilterGroup(dataTableName);\r\n filterGroup.setValues({\r\n itemsPerPage,\r\n currentPage\r\n });\r\n }\r\n\r\n /*\r\n Add defaults filters in the URL if they not exists.\r\n */\r\n setInitialPaginationFiltersIfNotExist(dataTableName, itemsPerPage, currentPage) {\r\n const filterGroup = this.getTableFilterGroup(dataTableName);\r\n filterGroup.setValues({\r\n itemsPerPage: filterGroup.get('itemsPerPage') ? parseInt(filterGroup.get('itemsPerPage')) : itemsPerPage,\r\n currentPage: filterGroup.get('currentPage') ? parseInt(filterGroup.get('currentPage')) : currentPage\r\n });\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n standalone: false,\r\n name: 'IsLastPage'\r\n})\r\nexport class PagniationIsLastPage implements PipeTransform {\r\n /**\r\n * Return true, if the current page is the last page. Otherwise, return false.\r\n * @param currentPage\r\n * @param totalItems\r\n * @param itemsPerPage\r\n */\r\n transform(currentPage, totalItems, itemsPerPage): boolean {\r\n if (!(currentPage >= 0 && totalItems >= 0 && itemsPerPage >= 0)) {\r\n throw new Error('currentPage or totalItems or itemsPerPage is/are missing in PagniationIsLastPage pipe.');\r\n }\r\n return currentPage === Math.ceil(totalItems / itemsPerPage);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n standalone: false,\r\n name: 'ArrayTotalPages'\r\n})\r\nexport class PagniationArrayTotalPages implements PipeTransform {\r\n /**\r\n * Return an incremental array corresponding with the number page\r\n * [ 1, 2, 3 ..., last page number ]\r\n * @param totalItems\r\n * @param itemsPerPage\r\n */\r\n transform(totalItems, itemsPerPage): number[] {\r\n if (!(totalItems >= 0 && itemsPerPage >= 0)) {\r\n throw new Error('totalItems or itemsPerPage missing in ArrayTotalPages pipe.');\r\n }\r\n const arrayLength: number = Math.ceil(totalItems / itemsPerPage);\r\n return Array.apply(null, { length: arrayLength })\r\n .map(Number.call, Number)\r\n .map(x => x + 1);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Pipe({\r\n standalone: false,\r\n name: 'customPagniationText'\r\n})\r\nexport class PagniationText implements PipeTransform {\r\n constructor(private translateService: TranslateService) {}\r\n\r\n /**\r\n * Update pagination text if at least one entrie change\r\n * @param currentPage\r\n * @param totalItems\r\n * @param itemsPerPage\r\n */\r\n transform(currentPage, totalItems, itemsPerPage): any {\r\n let currentItemsLow = 0,\r\n currentItemsHigh = 0;\r\n\r\n if (totalItems) {\r\n currentItemsLow = (parseInt(currentPage) - 1) * parseInt(itemsPerPage) + 1;\r\n currentItemsHigh = parseInt(currentPage) * parseInt(itemsPerPage);\r\n }\r\n\r\n if (currentItemsHigh > totalItems) {\r\n currentItemsHigh = totalItems;\r\n }\r\n\r\n return this.translateService.get('wac.PaginationComponent.on', { low: currentItemsLow, high: currentItemsHigh, total: totalItems })\r\n }\r\n}\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { PagniationIsLastPage } from './pipes/is-last-page.pipe';\r\n\r\nexport interface PaginationFilters {\r\n totalItems: number;\r\n itemsPerPage: number;\r\n currentPage: number;\r\n}\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-pagination',\r\n templateUrl: './pagination.component.html'\r\n})\r\nexport class PaginationComponent {\r\n @Input()\r\n set pagination(pagination: PaginationFilters) {\r\n this._pagination = pagination;\r\n }\r\n get pagination(): PaginationFilters {\r\n return this._pagination;\r\n }\r\n private _pagination: PaginationFilters;\r\n\r\n @Output() pageChange: EventEmitter<PaginationFilters> = new EventEmitter();\r\n\r\n constructor() {}\r\n\r\n decrementPage() {\r\n if (this.pagination.currentPage <= 1) {\r\n return;\r\n }\r\n this.pagination.currentPage--;\r\n this.pageChange.emit(this.pagination);\r\n }\r\n\r\n incrementPage() {\r\n const isLastPage = new PagniationIsLastPage().transform(\r\n this.pagination.currentPage,\r\n this.pagination.totalItems,\r\n this.pagination.itemsPerPage\r\n );\r\n if (isLastPage) {\r\n return;\r\n }\r\n this.pagination.currentPage++;\r\n this.pageChange.emit(this.pagination);\r\n }\r\n\r\n onGotoPageChange(event: any) {\r\n this.pagination.currentPage = parseInt(event.target.value);\r\n this.pageChange.emit(this.pagination);\r\n }\r\n}\r\n","<div class=\"wac-pagination\" *ngIf=\"pagination && pagination.itemsPerPage\">\r\n <div class=\"wac-pagination__wrapper\">\r\n <div class=\"wac-pagination__wrapper__page\">\r\n <p>{{ 'wac.PaginationComponent.page' | translate }}</p>\r\n\r\n <select name=\"page\" (change)=\"onGotoPageChange($event)\">\r\n <ng-container *ngFor=\"let pageIndex of pagination.totalItems | ArrayTotalPages: pagination.itemsPerPage\">\r\n <option [selected]=\"pageIndex === pagination.currentPage\" [value]=\"pageIndex\">\r\n {{ pageIndex }}\r\n </option>\r\n </ng-container>\r\n </select>\r\n </div>\r\n\r\n <div class=\"wac-pagination__wrapper__elements\">\r\n <p>{{ pagination.currentPage | customPagniationText: pagination.totalItems:pagination.itemsPerPage | async}}</p>\r\n </div>\r\n\r\n <div class=\"wac-pagination__wrapper__arrows\">\r\n <div\r\n (click)=\"decrementPage()\"\r\n class=\"wac-pagination__wrapper__arrows__arrow wac-pagination__wrapper__arrows__arrow--left\"\r\n [ngClass]=\"{ 'wac-pagination__wrapper__arrows__arrow--disabled': pagination.currentPage === 1 }\"\r\n >\r\n <span class=\"wac-pagination__wrapper__arrows__arrow__icon\"></span>\r\n </div>\r\n <div\r\n (click)=\"incrementPage()\"\r\n class=\"wac-pagination__wrapper__arrows__arrow wac-pagination__wrapper__arrows__arrow--right\"\r\n [ngClass]=\"{\r\n 'wac-pagination__wrapper__arrows__arrow--disabled':\r\n pagination.currentPage | IsLastPage: pagination.totalItems:pagination.itemsPerPage\r\n }\"\r\n >\r\n <span class=\"wac-pagination__wrapper__arrows__arrow__icon\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, ContentChildren, EventEmitter, Input, OnInit, Output, QueryList, ViewChildren, ViewEncapsulation } from '@angular/core';\r\nimport { FiltersTableService } from './shared/filters-table.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { TableFilters } from './shared/table-filters.model';\r\nimport { TableFiltersGroup } from './shared/table-filters-group.model';\r\nimport { CheckBoxRow } from './directives/checkBoxRow.directive';\r\nimport { MultiSelectionService } from '../../services/multiple-selection.service';\r\nimport { TableCheckboxIdService } from './shared/table-checkbox-id.service';\r\nimport { TableRow } from './directives/raw.directive';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-table',\r\n templateUrl: './table.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n TableCheckboxIdService,\r\n MultiSelectionService\r\n ]\r\n})\r\nexport class TableComponent implements OnInit {\r\n\r\n @ContentChildren(CheckBoxRow) checkBoxRows: QueryList<CheckBoxRow>;\r\n @ContentChildren(TableRow) tableRows: QueryList<TableRow>;\r\n\r\n // todo find a way to spotlight the wac-table doc when used on wizi-admin only in dev\r\n // todo try to use bridge patterne in order to add checkbox and remove checkbowrox directive.\r\n /// Input/Output of table filters ///\r\n\r\n @Input() tableFilters: TableFilters;\r\n @Output() tableFiltersChange: EventEmitter<TableFilters> = new EventEmitter();\r\n\r\n @Input() tableRoutingName: string; // Name of the table\r\n @Input() placeholder: string = '';\r\n\r\n private _tableFiltersGroup: TableFiltersGroup;\r\n\r\n /// Input/Output of checkbox ///\r\n\r\n /** Pass to true to display checkbox in the header table */\r\n @Input() checkbox = false;\r\n\r\n @Output() toggleAllCheckBox: EventEmitter<boolean> = new EventEmitter(); // todo replace by checkBoxSelectionChange\r\n\r\n @Output() checkBoxSelectionChange: EventEmitter<number[]> = new EventEmitter(); // todo add to doc\r\n\r\n /// Input to disable section ///\r\n\r\n /** Pass to true to hide search input */\r\n @Input() disableSearch: boolean = false;\r\n /** Pass to true to hide the pagniator */\r\n @Input() disablePagniation: boolean = false;\r\n\r\n /// Input for loader on table body ///\r\n\r\n @Input() isLoading = false;\r\n\r\n /// Private variables ///\r\n headerCheckBoxId: string;\r\n private filterGroupChangeSub: Subscription;\r\n\r\n constructor(private filtersTableService: FiltersTableService, private tableCheckboxIdService: TableCheckboxIdService, private multiSelectionService: MultiSelectionService) {}\r\n\r\n ngOnInit(): void {\r\n this.headerCheckBoxId = this.tableCheckboxIdService.getUniqueId(); // Create checkbox unique id\r\n\r\n /* Handle routing filters */\r\n if (this.tableRoutingName) {\r\n\r\n this.filtersTableService.setInitialPaginationFiltersIfNotExist(\r\n this.tableRoutingName,\r\n this.tableFilters.itemsPerPage,\r\n this.tableFilters.currentPage\r\n );\r\n\r\n this._tableFiltersGroup = this.filtersTableService.getTableFilterGroup(this.tableRoutingName);\r\n this.setTablesFilters();\r\n // Listen to filters changes with debounced time to limit multiple api calls\r\n this.filterGroupChangeSub = this._tableFiltersGroup.valuesChange$.subscribe(() => {\r\n this.setTablesFilters();\r\n });\r\n }\r\n\r\n this.multiSelectionService.activeChanges$.subscribe(selectionIndexRawCheckChange => {\r\n this.checkBoxSelectionChange.emit(selectionIndexRawCheckChange);\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.multiSelectionService.handle(this.checkBoxRows);\r\n this.checkBoxRows.changes.subscribe(() => {\r\n this.multiSelectionService.handle(this.checkBoxRows);\r\n });\r\n }\r\n\r\n onToggleAllCheckBox(event: any) {\r\n this.toggleAllCheckBox.emit(event.target.checked);\r\n }\r\n\r\n searchChange() {\r\n // Reset table filters\r\n this.tableFilters.sort = undefined;\r\n this.tableFilters.order = undefined;\r\n this.tableFilters.currentPage = 1;\r\n this.tableFiltersChange.emit(this.tableFilters);\r\n\r\n // Reset routing filters\r\n if (this._tableFiltersGroup) {\r\n this._tableFiltersGroup.setValues({\r\n searchValue: this.tableFilters.searchValue,\r\n sort: undefined,\r\n order: undefined,\r\n currentPage: 1\r\n });\r\n }\r\n }\r\n\r\n pageChange() {\r\n this.tableFiltersChange.emit(this.tableFilters);\r\n if (this._tableFiltersGroup) {\r\n this._tableFiltersGroup.setValues({\r\n itemsPerPage: this.tableFilters.itemsPerPage,\r\n currentPage: this.tableFilters.currentPage\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Set tableFilters from routing data existing in the url\r\n * */\r\n private setTablesFilters() {\r\n this.tableFilters = {\r\n sort: this._tableFiltersGroup.get('sort'),\r\n order: this._tableFiltersGroup.get('order') ? this._tableFiltersGroup.get('order') === 'true' : undefined,\r\n searchValue: this._tableFiltersGroup.get('searchValue'),\r\n itemsPerPage: this._tableFiltersGroup.get('itemsPerPage') ? parseInt(this._tableFiltersGroup.get('itemsPerPage')) : 0,\r\n currentPage: this._tableFiltersGroup.get('currentPage') ? parseInt(this._tableFiltersGroup.get('currentPage')) : 0,\r\n totalItems: this.tableFilters.totalItems\r\n };\r\n this.tableFiltersChange.emit(this.tableFilters);\r\n this._tableFiltersGroup.tableFiltersValuesChange$.next(this.tableFilters);\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.filterGroupChangeSub) {\r\n this.filterGroupChangeSub.unsubscribe();\r\n }\r\n this.multiSelectionService.destroy();\r\n }\r\n}\r\n","<div class=\"wac-table\">\r\n <!-- Header section -->\r\n <div class=\"wac-table__head\" id=\"headerTable\">\r\n <div *ngIf=\"checkbox\" class=\"wac-table__head__cell wac-table__head__cell--checkbox\">\r\n <wac-checkbox [id]=\"headerCheckBoxId\" (change)=\"onToggleAllCheckBox($event)\" [alone]=\"true\"></wac-checkbox>\r\n </div>\r\n\r\n <!-- Header contents are added with the headerCell directive -->\r\n <ng-content select=\"[headerCell]\"></ng-content>\r\n </div>\r\n\r\n <!-- Search section -->\r\n <div *ngIf=\"!disableSearch\" class=\"wac-table__search\">\r\n <wac-input-search\r\n [(ngModel)]=\"tableFilters.searchValue\"\r\n (changeDebounced)=\"searchChange()\"\r\n [placeholder]=\"placeholder\"\r\n [smallPadding]=\"true\"\r\n ></wac-input-search>\r\n </div>\r\n\r\n <!-- Body section -->\r\n <div class=\"wac-table__body\">\r\n <!-- Loader on body -->\r\n <div class=\"wac-table__body__loader\" *ngIf=\"isLoading\">\r\n <wac-loader [small]=\"true\"></wac-loader>\r\n </div>\r\n <!-- Body contents are added with the tableRow directive -->\r\n <ng-content select=\".complex-table\" *ngIf=\"!isLoading\"></ng-content>\r\n <ng-content select=\"[tableRow]\" *ngIf=\"!isLoading\"></ng-content>\r\n </div>\r\n\r\n <!-- Pagination section -->\r\n <wac-pagination *ngIf=\"!disablePagniation\" [pagination]=\"tableFilters\" (pageChange)=\"pageChange()\"></wac-pagination>\r\n</div>\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-tag',\r\n templateUrl: './tag.component.html'\r\n})\r\nexport class TagComponent {\r\n @Input()\r\n label = '';\r\n @Input()\r\n class: 'default'|'success'|'warning'|'error'|'dark'|'gray'|'lightgray'|'white';\r\n @Input()\r\n hasClose = false;\r\n @Input()\r\n draggable = false;\r\n @Input()\r\n hoverDelete = false;\r\n\r\n @Input()\r\n big = false;\r\n\r\n @Input() isOpen:boolean = true;\r\n @Output() isOpenChange = new EventEmitter<boolean>();\r\n\r\n constructor() {}\r\n\r\n toggleTag() {\r\n this.isOpen = !this.isOpen;\r\n this.isOpenChange.next(this.isOpen);\r\n }\r\n}\r\n","<div class=\"wac-tag\" [classList]=\"'wac-tag--' + class\" [ngClass]=\"{ hover: hasClose, 'big': big , draggable: draggable, 'hover-delete': hoverDelete}\">\r\n <div *ngIf=\"draggable\" class=\"wac-tag__draggable\">\r\n <span>\r\n <span></span>\r\n </span>\r\n </div>\r\n {{ label }}\r\n <span class=\"wac-tag__close\" *ngIf=\"hasClose\" (click)=\"toggleTag()\"><i class=\"fas fa-times\"></i></span>\r\n <div class=\"hover-delete\">\r\n <i class=\"fa-solid fa-trash\"></i>\r\n </div>\r\n</div>\r\n","import { TemplatePortal } from '@angular/cdk/portal';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, Input, OnInit, TemplateRef, ViewChild, ViewContainerRef, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'wac-tab',\r\n templateUrl: './tab.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n standalone: true,\r\n imports: [CommonModule],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TabComponent implements OnInit {\r\n @Input() label: string;\r\n\r\n @Input()\r\n set selected(value: boolean) {\r\n this._selected = value;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n get selected(): boolean {\r\n return this._selected;\r\n }\r\n\r\n private _selected: boolean = false;\r\n\r\n private contentPortal: TemplatePortal | null = null;\r\n\r\n get content(): TemplatePortal | null {\r\n return this.contentPortal;\r\n }\r\n\r\n @ContentChild(TabComponent, { read: TemplateRef, static: true})\r\n private _explicitContent: TemplateRef<any> = undefined;\r\n\r\n @ViewChild(TemplateRef, { static: true }) _implicitContent: TemplateRef<any>;\r\n\r\n constructor(private changeDetectorRef: ChangeDetectorRef, private viewContainerRef: ViewContainerRef) { }\r\n\r\n ngOnInit() {\r\n this.contentPortal = new TemplatePortal(this._explicitContent || this._implicitContent, this.viewContainerRef);\r\n }\r\n}\r\n","<ng-template><ng-content></ng-content></ng-template>","import { CdkPortalOutlet } from '@angular/cdk/portal';\r\nimport { ComponentFactoryResolver, Directive, Inject, OnInit, ViewContainerRef, forwardRef } from '@angular/core';\r\nimport { TabBodyComponent } from './tab-body.component';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Directive(\r\n {\r\n selector: '[wacTabBody]',\r\n exportAs: 'wacTabBody',\r\n standalone: true,\r\n})\r\nexport class TabBodyDirective extends CdkPortalOutlet implements OnInit {\r\n\r\n constructor(private componentFactoryResolver: ComponentFactoryResolver, private viewContainerRef: ViewContainerRef, @Inject(DOCUMENT) private document: any, @Inject(forwardRef(() => TabBodyComponent)) private host: TabBodyComponent) {\r\n super(componentFactoryResolver, viewContainerRef, document);\r\n }\r\n\r\n override ngOnInit() {\r\n super.ngOnInit();\r\n this.attach(this.host.content);\r\n }\r\n}\r\n","import { TemplatePortal } from '@angular/cdk/portal';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component, Input, ViewEncapsulation, ChangeDetectionStrategy, HostBinding } from '@angular/core';\r\nimport { TabBodyDirective } from './tab-body.directive';\r\n\r\n@Component({\r\n selector: 'wac-tab-body',\r\n templateUrl: './tab-body.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n standalone: true,\r\n imports: [CommonModule, TabBodyDirective],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TabBodyComponent {\r\n @Input() content: TemplatePortal;\r\n\r\n @Input() active: boolean;\r\n\r\n @HostBinding('style.display') get display(): string {\r\n return (this.active ? 'initial' : 'none');\r\n }\r\n}\r\n","<div class=\"wac-tab-body\" #content>\r\n <ng-template wacTabBody></ng-template>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, ContentChildren, Input, QueryList, ViewEncapsulation, ChangeDetectionStrategy, AfterViewInit } from '@angular/core';\r\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { TabComponent } from './tab/tab.component';\r\nimport { SharedDirectives } from '../../directives/shared-directives.module';\r\nimport { BehaviorSubject, ReplaySubject, combineLatest, delay, distinctUntilChanged, map, startWith, switchMap } from 'rxjs';\r\nimport { TabBodyComponent } from './tab-body/tab-body.component';\r\n\r\n@Component({\r\n selector: 'wac-tabs',\r\n templateUrl: './tabs.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n standalone: true,\r\n imports: [CommonModule, FormsModule, TabComponent, SharedDirectives, TabBodyComponent],\r\n providers: [\r\n { provide: NG_VALUE_ACCESSOR, useExisting: TabsComponent, multi: true },\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TabsComponent implements AfterViewInit {\r\n\r\n disabled = false;\r\n\r\n @ContentChildren(TabComponent) tabList: QueryList<TabComponent>;\r\n\r\n index$: BehaviorSubject<number> = new BehaviorSubject<number>(0);\r\n\r\n tabList$ = new ReplaySubject<QueryList<TabComponent>>(1);\r\n\r\n listIsOpen$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\r\n\r\n private onChange: (selectedIndex: number) => void = (selectedIndex) => {};\r\n private onTouched = () => {};\r\n\r\n viewModel$ = combineLatest({\r\n index: this.index$,\r\n tabList: this.tabList$.pipe(switchMap((tabList) => {\r\n return tabList.changes.pipe(startWith(tabList));\r\n })),\r\n listIsOpen: this.listIsOpen$.pipe(distinctUntilChanged())\r\n }).pipe(\r\n delay(0), \r\n map((data) => {\r\n let selected = this.setIndex(data.index, data.tabList);\r\n this.changeDetectorRef.markForCheck();\r\n return {...data, selected};\r\n }));\r\n\r\n @Input()\r\n underline = false;\r\n\r\n @Input()\r\n button = false;\r\n\r\n @Input()\r\n right: boolean = false;\r\n\r\n @Input()\r\n marginBottom = '30px';\r\n\r\n @Input()\r\n column: boolean = false;\r\n\r\n get defaultViewModel() {\r\n return {index: 0, tabList: [], listIsOpen: false, selected: null};\r\n }\r\n\r\n constructor(private changeDetectorRef: ChangeDetectorRef) {}\r\n\r\n ngAfterViewInit() {\r\n this.tabList$.next(this.tabList);\r\n }\r\n\r\n writeValue(selectedIndex: number): void {\r\n if (!selectedIndex) {\r\n return;\r\n }\r\n this.index$.next(selectedIndex);\r\n }\r\n\r\n registerOnChange(onChange: any): void {\r\n this.onChange = onChange;\r\n }\r\n\r\n onBlur(): void {\r\n this.onTouched();\r\n }\r\n\r\n registerOnTouched(onTouched: any): void {\r\n this.onTouched = onTouched;\r\n }\r\n\r\n setDisabledState(disabled: boolean) {\r\n this.disabled = disabled;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n selectTab(index: number) {\r\n this.index$.next(index);\r\n }\r\n\r\n private setIndex(currentIndex: number, tabList: QueryList<TabComponent>) {\r\n let selected: TabComponent = null;\r\n tabList.forEach((tab: TabComponent, index) => {\r\n tab.selected = currentIndex === index;\r\n selected = (currentIndex === index ? tab : selected);\r\n });\r\n this.onChange(currentIndex);\r\n return selected;\r\n }\r\n\r\n openList($event: any) {\r\n $event?.stopPropagation();\r\n this.listIsOpen$.next(!this.listIsOpen$.getValue());\r\n }\r\n}\r\n","<div class=\"wac-tabs\"\r\n *ngIf=\"((viewModel$ | async) || defaultViewModel ) as viewModel\"\r\n [ngClass]=\"{'wac-tabs--underline': underline, 'wac-tabs--button' : button, 'wac-tabs--right' : right, 'wac-tabs--column' : column}\"\r\n wzAutoHide\r\n (clickOutside)=\"listIsOpen$.next(false)\"\r\n [triggerElement]=\"'wac-select__header__selection'\"\r\n>\r\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__mobile\" (click)=\"openList($event)\">\r\n <div>{{ viewModel.selected?.label }}</div><i [class]=\"'fa-solid fa-caret-' + (viewModel.listIsOpen ? 'up' : 'down')\"></i>\r\n </div>\r\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__wrapper\" [ngClass]=\"{ 'open' : viewModel.listIsOpen }\" [ngStyle]=\"{'margin-bottom': marginBottom}\">\r\n <a\r\n *ngFor=\"let tab of tabList; let i = index\"\r\n class=\"wac-tabs__wrapper__tab\"\r\n [ngClass]=\"{'wac-tabs__wrapper__tab--selected': i === viewModel.index}\"\r\n (click)=\"index$.next(i); listIsOpen$.next(false)\"\r\n >\r\n {{ tab.label }}\r\n </a>\r\n </div>\r\n <wac-tab-body\r\n *ngFor=\"let tab of tabList; let i = index\"\r\n [content]=\"tab.content\"\r\n [active]=\"i === viewModel.index\"\r\n ></wac-tab-body>\r\n</div>\r\n","import {AfterViewInit, Attribute, Component, ElementRef, EventEmitter, Inject, Input, OnInit, Optional, Output, ViewChild} from '@angular/core';\r\nimport { FormGroupDirective } from '@angular/forms';\r\nimport { interval } from 'rxjs';\r\nimport { takeWhile } from 'rxjs/operators';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-button',\r\n templateUrl: './button.component.html'\r\n})\r\nexport class ButtonComponent implements OnInit, AfterViewInit {\r\n // todo add button type (ex: for submit and check if it works with template driven forms)\r\n @Input()\r\n extraClasses = 'is-info'; // todo make a list of existing class\r\n\r\n @Input()\r\n label = '';\r\n\r\n @Input()\r\n icon = '';\r\n\r\n @Input() \r\n isLoadingSvg: boolean = false;\r\n\r\n @Input()\r\n iconNext: string;\r\n\r\n @Input()\r\n textcolor = null;\r\n\r\n @Input()\r\n colorIcon: string;\r\n\r\n @Input()\r\n widthAuto = false;\r\n\r\n @Input()\r\n contentHorizontalPosition: 'left' | 'center' | 'right' = 'center';\r\n\r\n @Input()\r\n iconFontSize = 12;\r\n\r\n @Input()\r\n hasLoader = false;\r\n\r\n @Input()\r\n disabled = false;\r\n\r\n @Input()\r\n whiteSpaceNowrap = false;\r\n\r\n @Input()\r\n opacity = false;\r\n // TODO MAKE ANNIMATION AVAILABLE FOR MOBILE as CONFIRM DELETE DO (because, its doeant show the text and trigger click)\r\n @Input()\r\n animation = false;\r\n\r\n @Input()\r\n animationRight = false;\r\n\r\n @Input()\r\n animationText = '';\r\n\r\n @Input()\r\n confirmDelete = false;\r\n\r\n @Input()\r\n confirmDeleteText = '';\r\n\r\n @Input()\r\n coin: number | string;\r\n\r\n @Input()\r\n tooltip: string;\r\n\r\n @Input()\r\n tooltipWidth: string;\r\n\r\n @Input()\r\n borderColor: string;\r\n\r\n @Input()\r\n noPadding = false;\r\n\r\n @Input()\r\n tooltipPosition: 'top-center' | 'top-right' | 'top-left' | 'bottom-center' | 'bottom-right' | 'bottom-left' | 'left' | 'right' = 'top-center';\r\n\r\n @Input()\r\n tooltipOneline = false;\r\n\r\n @Input()\r\n confirmDeletePosition = 'right';\r\n\r\n // eslint-disable-next-line @angular-eslint/no-output-native\r\n @Output() public click: EventEmitter<MouseEvent> = new EventEmitter();\r\n\r\n @Input() set isLoading(isLoading : boolean) {\r\n this._isLoading = isLoading;\r\n this.isLoadingChange.next(isLoading);\r\n this.toggleLoading();\r\n }\r\n\r\n @Output() isLoadingChange = new EventEmitter<boolean>();\r\n\r\n get isLoading() : boolean {\r\n return this._isLoading;\r\n }\r\n\r\n private _isLoading: boolean = false;\r\n\r\n\r\n interval = null;\r\n\r\n waitForConfirmDelete = false;\r\n\r\n buttonMaxWidth = '0px';\r\n buttonWidth = '0px';\r\n\r\n buttonMaxWidthDelete = '0px';\r\n buttonWidthDelete = '0px';\r\n\r\n currentLoading = 0;\r\n\r\n @ViewChild('calculWidth')\r\n calculWidth: ElementRef;\r\n\r\n @ViewChild('calculWidthDelete')\r\n calculWidthDelete: ElementRef;\r\n\r\n constructor(\r\n @Attribute('type') private type: string,\r\n @Optional() @Inject(FormGroupDirective) private formGroup: FormGroupDirective\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n if (this.confirmDelete) {\r\n this.waitForConfirmDelete = true;\r\n }\r\n }\r\n\r\n toggleLoading() {\r\n this.currentLoading = this.isLoading ? 10 : 100;\r\n\r\n interval(200).pipe(takeWhile( time=> this.isLoading)).subscribe(\r\n () => {\r\n if (this.currentLoading < 85) {\r\n this.currentLoading += Math.floor(Math.random() * 15);\r\n }\r\n }\r\n );\r\n }\r\n\r\n onButtonClickLoader() {\r\n this.isLoadingSvg = true;\r\n }\r\n\r\n addMaxWidth() {\r\n this.buttonMaxWidth = this.buttonWidth + 'px';\r\n }\r\n\r\n resetMaxWidth() {\r\n this.buttonMaxWidth = '0px';\r\n }\r\n\r\n addMaxWidthDelete() {\r\n this.buttonMaxWidthDelete = this.buttonWidthDelete + 'px';\r\n }\r\n\r\n resetMaxWidthDelete() {\r\n this.buttonMaxWidthDelete = '0px';\r\n this.waitForConfirmDelete = true;\r\n }\r\n\r\n onButtonClick(event){\r\n event.stopPropagation();\r\n if (this.disabled) {\r\n return;\r\n }\r\n if (this.type === 'submit' && this.formGroup) { // Maybe there is a better way to handle submit\r\n this.formGroup.onSubmit(this.formGroup.value);\r\n }\r\n if (this.hasLoader) {\r\n this.isLoading = false;\r\n setTimeout(() => { // trick to reset the animation loading\r\n this.isLoading = true;\r\n }, 0);\r\n }\r\n\r\n if (!this.waitForConfirmDelete) {\r\n this.click.emit(event);\r\n if (this.confirmDelete) {\r\n this.resetMaxWidthDelete();\r\n }\r\n } else {\r\n this.waitForConfirmDelete = false;\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n if (this.animation) {\r\n this.buttonWidth = this.calculWidth.nativeElement.offsetWidth;\r\n }\r\n if (this.confirmDelete) {\r\n this.buttonWidthDelete = this.calculWidthDelete.nativeElement.offsetWidth;\r\n }\r\n }, 1000);\r\n }\r\n}\r\n","<a\r\n [class]=\"'wac-button ' + extraClasses\"\r\n [style.borderColor]=\"borderColor ? borderColor + '!important' : ''\"\r\n (click)=\"confirmDelete && waitForConfirmDelete ? addMaxWidthDelete() : '';onButtonClick($event);\"\r\n (mouseleave)=\"animation ? resetMaxWidth() : '';\"\r\n (mouseenter)=\"animation ? addMaxWidth() : '';\"\r\n wzAutoHide (clickOutside)=\"confirmDelete && !waitForConfirmDelete ? resetMaxWidthDelete() : ''\"\r\n [ngClass]=\"[\r\n label === '' ? 'alone' : '',\r\n coin ? 'has-coin width-auto' : '',\r\n animationRight ? 'animation-right' : '',\r\n animation ? 'animationText' : '',\r\n isLoading ? 'is-loading' : '',\r\n opacity ? 'opacity' : '',\r\n disabled ? 'disabled' : '',\r\n widthAuto ? 'width-auto' : '',\r\n noPadding ? 'no-padding' : '',\r\n whiteSpaceNowrap ? 'white-space-no-wrap' : '',\r\n !waitForConfirmDelete && confirmDelete ? 'step-delete' : '',\r\n confirmDelete ? 'deletePosition-' + confirmDeletePosition : ''\r\n ]\"\r\n [ngStyle]=\"{\r\n 'text-align': contentHorizontalPosition\r\n }\"\r\n>\r\n <span class=\"wac-button__wrapper\" [style.color]=\"textcolor ? textcolor : ''\" [ngClass]=\"{'loading-class': isLoadingSvg}\">\r\n <svg *ngIf=\"isLoadingSvg; else iconTemplate\" version=\"1.1\" id=\"loader-1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\r\n width=\"20px\" height=\"20px\" viewBox=\"0 0 50 50\" style=\"enable-background:new 0 0 50 50;\" xml:space=\"preserve\">\r\n <path fill=\"#fff\" d=\"M43.935,25.145c0-10.318-8.364-18.683-18.683-18.683c-10.318,0-18.683,8.365-18.683,18.683h4.068c0-8.071,6.543-14.615,14.615-14.615c8.072,0,14.615,6.543,14.615,14.615H43.935z\">\r\n <animateTransform attributeType=\"xml\"\r\n attributeName=\"transform\"\r\n type=\"rotate\"\r\n from=\"0 25 25\"\r\n to=\"360 25 25\"\r\n dur=\"0.6s\"\r\n repeatCount=\"indefinite\"/>\r\n </path>\r\n </svg>\r\n <ng-template #iconTemplate>\r\n <i *ngIf=\"icon\" [ngClass]=\"icon\" [style.color]=\"colorIcon\" [style.font-size.px]=\"iconFontSize\"></i>\r\n </ng-template>\r\n {{ label }}\r\n <i *ngIf=\"iconNext\" [style.color]=\"colorIcon\" [ngClass]=\"iconNext\" [style.font-size.px]=\"iconFontSize\"></i>\r\n </span>\r\n <span class=\"wac-button__animation\" [style.maxWidth]=\"buttonMaxWidth\" [style.width]=\"buttonWidth + 'px'\">\r\n <span #calculWidth class=\"wac-button__animation__text\" [innerHTML]=\"animationText\"></span>\r\n </span>\r\n <span class=\"wac-button__confirmDelete\" [style.maxWidth]=\"buttonMaxWidthDelete\" [style.width]=\"buttonWidthDelete + 'px'\">\r\n <span #calculWidthDelete class=\"wac-button__confirmDelete__text\" [innerHTML]=\"confirmDeleteText\"></span>\r\n </span>\r\n <span *ngIf=\"coin\" class=\"wac-button__coin\"><i class=\"fa-solid fa-coin-front\"></i><span [innerHTML]=\"coin\"></span></span>\r\n <span\r\n class=\"wac-button__loader\"\r\n [ngClass]=\"extraClasses.includes('is-outlined') ? 'outlined' : ''\"\r\n *ngIf=\"isLoading\"\r\n [style.width]=\"currentLoading + '%'\"\r\n >\r\n </span>\r\n <span class=\"wac-button__tooltips {{ tooltipPosition }}\" [ngClass]=\"{'oneline': tooltipOneline}\" [style.minWidth]=\"tooltipWidth\" *ngIf=\"tooltip\">\r\n {{ tooltip }}\r\n </span>\r\n</a>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-info',\r\n templateUrl: './info.component.html'\r\n})\r\nexport class InfoComponent {\r\n\r\n @Input() colorPicker: boolean | string = false;\r\n\r\n get isColorPickerEnabled(): boolean {\r\n return this.colorPicker === true || this.colorPicker === 'true';\r\n }\r\n\r\n constructor() {}\r\n}\r\n","<div class=\"wac-info\" [ngClass]=\"{'wac-info__color-picker': isColorPickerEnabled}\">\r\n <div class=\"wac-info__wrapper\">\r\n <i class=\"fas fa-info-circle\"></i>\r\n <div class=\"wac-info__wrapper__sublevel\">\r\n <div class=\"wac-info__wrapper__sublevel__container\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-settings',\r\n templateUrl: './settings.component.html',\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SettingsComponent {\r\n constructor() {}\r\n}\r\n","<div class=\"wac-settings\">\r\n <div class=\"wac-settings__wrapper\">\r\n <i class=\"fas fa-cog\"></i>\r\n </div>\r\n</div>\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-delete',\r\n templateUrl: './delete.component.html'\r\n})\r\nexport class DeleteComponent {\r\n constructor() {}\r\n}\r\n","<div class=\"wac-delete\">\r\n <div class=\"wac-delete__wrapper\">\r\n <i class=\"fas fa-trash\"></i>\r\n </div>\r\n</div>\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-dropdown',\r\n templateUrl: './dropdown.component.html'\r\n})\r\nexport class DropdownComponent {\r\n @Input()\r\n hasIcons = false;\r\n\r\n @Input()\r\n items = [];\r\n\r\n @Output() userInput = new EventEmitter<any>();\r\n\r\n constructor() {}\r\n\r\n onUserInput(itemIndex) {\r\n this.userInput.emit(itemIndex);\r\n }\r\n}\r\n","<div class=\"wac-dropdown\">\r\n <div class=\"wac-dropdown__wrapper\">\r\n <i class=\"wac-dropdown__wrapper__icon far fa-ellipsis-v\"></i>\r\n <div class=\"wac-dropdown__wrapper__sublevel\">\r\n <ul class=\"wac-dropdown__wrapper__sublevel__container\">\r\n <li\r\n *ngFor=\"let item of items\"\r\n class=\"wac-dropdown__wrapper__sublevel__container__item\"\r\n (click)=\"onUserInput(item.index)\"\r\n >\r\n <i\r\n *ngIf=\"hasIcons\"\r\n [class]=\"item.icon\"\r\n [style.font-size.px]=\"item.iconFontSize ? item.iconFontSize : '14'\"\r\n ></i>\r\n <span>{{ item.label }}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-image',\r\n templateUrl: './image.component.html'\r\n})\r\nexport class ImageComponent {\r\n @Input()\r\n src = '';\r\n\r\n constructor() {}\r\n}\r\n","<div class=\"wac-image\">\r\n <div class=\"wac-image__wrapper\" [ngClass]=\"src === '' ? 'empty' : ''\" [style.background-image]=\"'url(' + src + ')'\">\r\n <i class=\"fal fa-images\" *ngIf=\"src === ''\"></i>\r\n </div>\r\n</div>\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-back',\r\n templateUrl: './back.component.html'\r\n})\r\nexport class BackComponent {\r\n constructor() {}\r\n}\r\n","<div class=\"wac-back\">\r\n <div class=\"wac-back__wrapper\">\r\n <i class=\"fas fa-chevron-left\"></i>\r\n </div>\r\n</div>\r\n","import { Component, Input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-separator',\r\n templateUrl: './separator.component.html',\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SeparatorComponent {\r\n @Input()\r\n dashed = false;\r\n\r\n constructor() {}\r\n}\r\n","<div class=\"wac-separator\" [ngClass]=\"dashed ? 'dashed' : ''\"></div>\r\n","import { Component, Input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-logo',\r\n templateUrl: './logo.component.html',\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class LogoComponent {\r\n @Input()\r\n isDropizi = false;\r\n\r\n @Input()\r\n isWhite = false;\r\n\r\n constructor() {}\r\n}\r\n","<div class=\"wac-logo\">\r\n <div class=\"wac-logo__wrapper\" [ngClass]=\"isWhite ? 'white' : ''\" *ngIf=\"isDropizi\">\r\n <svg id=\"Calque_1\" data-name=\"Calque 1\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 102.33 40\">\r\n <defs>\r\n <style>\r\n .cls-0 {\r\n fill: #fa096a;\r\n }\r\n </style>\r\n </defs>\r\n <title>Logo_Dropizi</title>\r\n <path\r\n id=\"Logo_Dropizi-2\"\r\n data-name=\"Logo Dropizi-2\"\r\n class=\"cls-0\"\r\n d=\"M83,44.94a4.87,4.87,0,0,1-4.36-7,3.81,3.81,0,0,1-.72-2l-.3-5.69a9.61,9.61,0,0,1-3.43,2,13.51,13.51,0,0,1-3.34.63l-1.06,0L70,36.29a3.75,3.75,0,0,1-3.54,3.94l-2.25.11H64a3.69,3.69,0,0,1-3-1.56,12.82,12.82,0,0,1-7.68,2.61,13.45,13.45,0,0,1-5.37-1.14,3.67,3.67,0,0,1-2.46,1.09l-2.15.12h-.2a3.76,3.76,0,0,1-3.17-1.74l-3.29-5.25L36.84,38a3.78,3.78,0,0,1-1,2.7A3.74,3.74,0,0,1,33.28,42L31,42.09h-.19a3.77,3.77,0,0,1-3.06-1.58,12.62,12.62,0,0,1-1.62.87,15,15,0,0,1-5.35,1.24L13.49,43H13.3a3.76,3.76,0,0,1-3.74-3.54L8.5,19.3A3.75,3.75,0,0,1,12,15.36L19.37,15c.3,0,.59,0,.88,0a14.67,14.67,0,0,1,4.56.7,13.17,13.17,0,0,1,1.74.7,3.73,3.73,0,0,1,3.06-1.91l7.14-.37c.35,0,.69,0,1,0,3.65,0,6,1.12,7.41,2.57A13.29,13.29,0,0,1,49,14.33a12.05,12.05,0,0,1,4.44-.82c.23,0,.45,0,.69,0a13.63,13.63,0,0,1,5.2,1.35l.22.11a3.75,3.75,0,0,1,3.25-2.29l5.32-.27c.7,0,1.38-.06,2-.06.92,0,1.78,0,2.57.11a10.17,10.17,0,0,1,4.16,1.26l.37.24a3.78,3.78,0,0,1,3.22-2.2l2.18-.12h.2a3.89,3.89,0,0,1,2,.57,3.63,3.63,0,0,1,2.07-.79l12.9-.67h.11c0-.24-.07-.47-.09-.71a4.88,4.88,0,0,1,4.62-5.12h.25a4.86,4.86,0,0,1,4.88,4.62v.26A4.89,4.89,0,0,1,109,12a3.62,3.62,0,0,1,.72,2l1.06,20.14,0,0a3.75,3.75,0,0,1-3.54,3.94l-2.18.11h-.2a3.83,3.83,0,0,1-2-.57,3.54,3.54,0,0,1-2.06.78l-12.9.68h-.1c0,.24.07.47.09.71a4.87,4.87,0,0,1-1.25,3.51,4.82,4.82,0,0,1-3.37,1.6Zm-2-4.87v.11a2,2,0,0,0,2.1,1.9h0a2,2,0,0,0,1.9-2V40a2,2,0,0,0-2-1.9H83A2,2,0,0,0,81.05,40.07ZM19.54,17.84l-7.34.39a.89.89,0,0,0-.84.93l1.06,20.17a.89.89,0,0,0,.92.83l7.33-.39a11.89,11.89,0,0,0,4.32-1,9.7,9.7,0,0,0,3.3-2.36,8.91,8.91,0,0,0,1.46-2.14L30,38.4a.88.88,0,0,0,.92.84l2.25-.12A.88.88,0,0,0,34,38.2h0l-.34-6.38a.88.88,0,0,1,.84-.93h0l2.67-.14a.89.89,0,0,1,.8.41l4.41,7a.92.92,0,0,0,.8.42l2.17-.12a.88.88,0,0,0,.72-1.34l-4.25-7A.88.88,0,0,1,42,29c.22-.18.44-.37.64-.56a10.07,10.07,0,0,0,.5,3,9.65,9.65,0,0,0,2,3.45,11.39,11.39,0,0,0,3.45,2.5,10,10,0,0,0,8.09.47,11,11,0,0,0,6.08-6l.08-.18.26,4.91a.89.89,0,0,0,.92.84l2.25-.12a.89.89,0,0,0,.84-.92L66.86,31a.87.87,0,0,1,.83-.92h0l3-.16a10.49,10.49,0,0,0,2.6-.5A6.87,6.87,0,0,0,75.75,28a6.67,6.67,0,0,0,1.68-2.36l0-.12A8.77,8.77,0,0,0,78,21.73a9,9,0,0,0-.77-3.49,4.1,4.1,0,0,0-.22-.41,4.71,4.71,0,0,0-1.63-1.63,7.28,7.28,0,0,0-3-.87,28.9,28.9,0,0,0-4.16,0l-5.33.28a.86.86,0,0,0-.61.29.9.9,0,0,0-.22.63L62.33,21a10.85,10.85,0,0,0-.8-1A11.54,11.54,0,0,0,54,16.38,9.3,9.3,0,0,0,50,17a10.46,10.46,0,0,0-3.46,2.22,11.5,11.5,0,0,0-1.92,2.41q-1-5.05-7.73-4.7l-7.14.37a.88.88,0,0,0-.84.93l.22,4.15a9.5,9.5,0,0,0-5.19-4,12.2,12.2,0,0,0-3.65-.56C20.05,17.82,19.79,17.82,19.54,17.84Zm63.22-3.31-2.17.12a.9.9,0,0,0-.61.29.87.87,0,0,0-.23.64l1.06,20.15a.88.88,0,0,0,.93.84L84,36.45a.83.83,0,0,0,.61-.29.87.87,0,0,0,.23-.63l-1-20.09a1,1,0,0,0-1-.9Zm11.48,3.85a.9.9,0,0,1,.07.87L86.94,35a.88.88,0,0,0,.06.86.85.85,0,0,0,.76.4l12.9-.67h0a.76.76,0,0,0,.72-.8h0l-.13-2.48a.75.75,0,0,0-.8-.72l-6.21.33a.89.89,0,0,1-.84-1.26l7.37-15.74a.9.9,0,0,0-.07-.87.87.87,0,0,0-.78-.39L87,14.31a.75.75,0,0,0-.71.8l.13,2.49a.74.74,0,0,0,.25.52.75.75,0,0,0,.55.2L93.46,18h.05A.89.89,0,0,1,94.24,18.38ZM106,13.31l-2.24.12a.89.89,0,0,0-.85.93l.85,16.15v.1l.2,3.83a1,1,0,0,0,1,.91l2.18-.11h0a.9.9,0,0,0,.83-.93l-1.06-20.16a.88.88,0,0,0-.88-.84Zm-3.32-3.5v.1a2,2,0,0,0,4-.1V9.7a2,2,0,0,0-2-1.9h-.1a2,2,0,0,0-1.91,2ZM16.25,35.28l-.66-12.51a.87.87,0,0,1,.23-.64.83.83,0,0,1,.61-.29l3.3-.18a6,6,0,0,1,4.87,1.62,7.74,7.74,0,0,1,1.92,5.19,7.71,7.71,0,0,1-1.37,5.35A6,6,0,0,1,20.47,36l-3.31.17h0a.88.88,0,0,1-.88-.84Zm36.61-.55A6.9,6.9,0,0,1,48,32.44a5.3,5.3,0,0,1-1.12-2.17,6.7,6.7,0,0,1-.09-2.6,11,11,0,0,1,2.57-5.41,6.42,6.42,0,0,1,2.07-1.58,5.52,5.52,0,0,1,2.4-.52,6.36,6.36,0,0,1,2.64.66,5.45,5.45,0,0,1,3.3,3.78A8.32,8.32,0,0,1,59,30.1a10.69,10.69,0,0,1-1.66,2.54,6.76,6.76,0,0,1-2.07,1.57,5.42,5.42,0,0,1-2.31.52.27.27,0,0,1-.09,0Zm-19.2-7.84a.83.83,0,0,1-.29-.61l-.26-4.91a.87.87,0,0,1,.83-.92l2.22-.12a5.2,5.2,0,0,1,3.39.63,3.08,3.08,0,0,1,1,2.41,3.29,3.29,0,0,1-.8,2.6,5.23,5.23,0,0,1-3.43,1l-2.07.11h0a.89.89,0,0,1-.59-.23Zm32.93-1.41-.31-5.84a.9.9,0,0,1,.23-.64.86.86,0,0,1,.61-.29l2.4-.12a8.81,8.81,0,0,1,2,.09,3.1,3.1,0,0,1,1.33.57,2.58,2.58,0,0,1,.75,1.09A6.22,6.22,0,0,1,73.94,22a4.16,4.16,0,0,1-.79,3.14A4.63,4.63,0,0,1,70,26.19l-2.51.13h0a.9.9,0,0,1-.89-.84Z\"\r\n transform=\"translate(-8.49 -4.94)\"\r\n />\r\n </svg>\r\n </div>\r\n <div class=\"wac-logo__wrapper\" [ngClass]=\"isWhite ? 'white' : ''\" *ngIf=\"!isDropizi\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 128.044 40\">\r\n <defs>\r\n <style>\r\n .cls-1 {\r\n fill: #a4c445;\r\n }\r\n .cls-2 {\r\n fill: #52aecd;\r\n }\r\n </style>\r\n </defs>\r\n <g id=\"Logo_WiziShop\" transform=\"translate(0.024 0)\">\r\n <path\r\n id=\"Shop\"\r\n class=\"cls-1\"\r\n d=\"M50.812,38.431V12.3a2.468,2.468,0,0,1,2.452-1.643A2.307,2.307,0,0,1,55.446,12a7.058,7.058,0,0,1,4.107-1.348A5.245,5.245,0,0,1,63.218,12,6.1,6.1,0,0,1,64.7,16.365v7.208h-.012q0,7.282-5.835,7.282a8.453,8.453,0,0,1-3.224-.674v8.25A2.471,2.471,0,0,1,53.178,40,2.419,2.419,0,0,1,50.812,38.431Zm4.805-21.845V26a7.046,7.046,0,0,0,2.709.834c1.1-.012,1.655-1.091,1.655-3.248V15.912c0-.65-.4-.981-1.226-.981A3.59,3.59,0,0,0,55.617,16.586ZM33.858,19.614q0-9.727,7.159-9.721,4.1,0,5.762,3.065a15.8,15.8,0,0,1,1.067,6.656q0,4.56-1.226,6.8-1.655,3.144-6.031,3.138Q33.858,29.556,33.858,19.614Zm4.462,0c0,3.947.846,5.909,2.538,5.909,1.741.012,2.623-1.961,2.623-5.909q0-5.682-2.538-5.688Q38.315,13.926,38.321,19.614Zm-35.8,8.4A5.577,5.577,0,0,1,.172,23.917L0,22.262l4.536-.6a12.942,12.942,0,0,0,.613,2.317,1.976,1.976,0,0,0,2.01,1.189,1.375,1.375,0,0,0,1.226-.674A4.161,4.161,0,0,0,9,22.4c0-1.2-.736-2.623-2.219-4.266s-2.954-3.273-4.4-4.867A10,10,0,0,1,.025,7.2a9.322,9.322,0,0,1,.441-2.77Q1.955.012,6.84.012a7.629,7.629,0,0,1,4.585,1.5,5.555,5.555,0,0,1,2.317,4.131l.172,1.655-4.585.588a12.943,12.943,0,0,0-.613-2.317,1.976,1.976,0,0,0-2.01-1.189c-.7,0-1.189.429-1.483,1.275A3.756,3.756,0,0,0,4.965,7q0,2.537,4.622,7.416t4.622,8.017a7.691,7.691,0,0,1-1.876,4.72,6.225,6.225,0,0,1-5.185,2.39A7.665,7.665,0,0,1,2.525,28.011Zm23.488-.368V15.3c0-.552-.343-.821-1.042-.821a3.356,3.356,0,0,0-2.954,1.569v11.6a2.629,2.629,0,0,1-2.538,1.716,2.589,2.589,0,0,1-2.452-1.728V1.729A2.578,2.578,0,0,1,19.479,0a2.641,2.641,0,0,1,2.538,1.729v9.292a7.611,7.611,0,0,1,3.751-1.042,5.039,5.039,0,0,1,3.665,1.459,5.748,5.748,0,0,1,1.483,4.3V27.631a2.548,2.548,0,0,1-2.366,1.728l-.136,0A2.521,2.521,0,0,1,26.013,27.643Z\"\r\n transform=\"translate(63.32 0)\"\r\n />\r\n <path\r\n id=\"Wizi\"\r\n class=\"cls-2\"\r\n d=\"M13.341,28.661,12.2,22.617l-1.226,6.044a2.9,2.9,0,0,1-2.353,1.189,3.26,3.26,0,0,1-2.44-1.1L.064,2.55A1.793,1.793,0,0,1,.591.674,2.977,2.977,0,0,1,2.6,0c1.287,0,2.047.478,2.28,1.422L8.535,18.707l1.312-6.055a2.228,2.228,0,0,1,2.524-1.876,2.035,2.035,0,0,1,2.183,1.876l1.213,6.142Q16.816,12.6,18,6.3c.785-4.2,2.06-6.3,3.8-6.3a2.717,2.717,0,0,1,1.054.221,1.774,1.774,0,0,1,1.41,2.329l-6.032,26.1a2.881,2.881,0,0,1-2.354,1.2A3.247,3.247,0,0,1,13.341,28.661Zm39.816-.356V11.67c.293-.6,1.139-.895,2.537-.895,1.336,0,2.182.294,2.538.895V28.305c-.355.65-1.2.968-2.538.968C54.3,29.273,53.451,28.955,53.157,28.305Zm-15.667.968c-1.287-.147-1.924-.772-1.924-1.863a2.936,2.936,0,0,1,.343-1.5l7.16-10.984H37.33a2.307,2.307,0,0,1-1.765-2.182,2.226,2.226,0,0,1,1.778-2.182h10.1a2.144,2.144,0,0,1,1.679,2.1q0,1.8-2.574,5.529-2.483,3.366-4.879,6.73h5.7v-.013a2.235,2.235,0,0,1,0,4.364Zm-11.5-.968V11.67c.294-.6,1.14-.895,2.538-.895,1.336,0,2.182.294,2.537.895V28.305c-.355.65-1.2.968-2.537.968C27.131,29.273,26.285,28.955,25.991,28.305ZM53.9,8.054a2,2,0,0,1-.747-1.544A1.858,1.858,0,0,1,53.9,5a2.969,2.969,0,0,1,3.58,0,1.859,1.859,0,0,1,.748,1.508,1.962,1.962,0,0,1-.748,1.544,2.833,2.833,0,0,1-3.58,0Zm-27.165,0a2,2,0,0,1-.748-1.544A1.859,1.859,0,0,1,26.739,5a2.968,2.968,0,0,1,3.579,0,1.892,1.892,0,0,1,.748,1.508,1.959,1.959,0,0,1-.748,1.544,2.832,2.832,0,0,1-3.579,0Z\"\r\n transform=\"translate(-0.024 0.086)\"\r\n />\r\n </g>\r\n </svg>\r\n </div>\r\n</div>\r\n","import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-radio-legacy',\r\n templateUrl: './radio.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: RadioLegacyComponent, multi: true }]\r\n})\r\nexport class RadioLegacyComponent implements ControlValueAccessor {\r\n // ! refacto\r\n @Input()\r\n label = '';\r\n @Input()\r\n options: Array<any>; // todo refacto type\r\n @Input()\r\n value: any;\r\n @Input()\r\n type: string;\r\n @Input()\r\n id = '';\r\n @Input()\r\n name: string;\r\n @Input()\r\n alone = false;\r\n @Output()\r\n changeInput = new EventEmitter<any>();\r\n disabled = false;\r\n constructor() {}\r\n private _onChange: Function;\r\n private _onTouched: Function;\r\n\r\n registerOnChange(fn: any): void {\r\n this._onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this._onTouched = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n writeValue(obj: any): void {\r\n this.value = obj;\r\n }\r\n\r\n onChange(value) {\r\n if (this._onChange) {\r\n this._onChange(value);\r\n }\r\n }\r\n\r\n valueInput(value) {\r\n this.changeInput.emit(value);\r\n }\r\n}\r\n","<div class=\"wac-radio\" *ngFor=\"let option of options\" [ngClass]=\"{ 'wac-radio--nowrap': type === 'column', alone: alone }\">\r\n <div class=\"wac-radio__row\">\r\n <input\r\n type=\"radio\"\r\n [id]=\"option.id\"\r\n class=\"is-checkradio\"\r\n [name]=\"option.name\"\r\n [value]=\"option.value\"\r\n [disabled]=\"option.disabled\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"onChange($event)\"\r\n />\r\n <label [attr.for]=\"option.id\">{{ option.label }}</label>\r\n <div class=\"wac-radio__input\" *ngIf=\"value && option.value && option.hasInput\">\r\n <input type=\"text\" [placeholder]=\"option.placeholderInput\" (blur)=\"valueInput($event)\" />\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, Input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-state',\r\n templateUrl: './state.component.html',\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class StateComponent {\r\n @Input()\r\n state = 'success';\r\n constructor() {}\r\n}\r\n","<div [class]=\"'wac-state ' + state\"></div>\r\n","import { animate, style, transition, trigger } from '@angular/animations';\r\n\r\nexport const inOutX = trigger('inOutXAnimation', [\r\n transition(':enter', [\r\n style({ zIndex: -1, transform: 'scaleX(0)', width: 0, opacity: 0 }),\r\n animate('.3s ease-out', style({ zIndex: 1, transform: 'scaleX(1)', width: 'auto', opacity: 1 }))\r\n ]),\r\n transition(':leave', [\r\n style({ zIndex: 1, transform: 'scaleX(1)', width: 'auto', opacity: 1 }),\r\n animate('.3s ease-in', style({ zIndex: -1, transform: 'scaleX(0)', width: 0, opacity: 0 }))\r\n ])\r\n]);\r\n","import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\r\nimport { inOutX } from '../../animations/in-out/in-out-x.animation';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-tag-label',\r\n templateUrl: './tag-label.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n animations: [inOutX]\r\n})\r\nexport class TagLabelComponent {\r\n @Input()\r\n index = 0;\r\n @Input()\r\n label = '';\r\n @Input()\r\n deleted = false;\r\n\r\n @Output() onDeleteLabel = new EventEmitter<any>();\r\n\r\n constructor() {}\r\n\r\n deleteLabel() {\r\n this.deleted = true;\r\n this.onDeleteLabel.emit({\r\n index: this.index,\r\n label: this.label\r\n });\r\n }\r\n}\r\n","<div *ngIf=\"!deleted\" [@inOutXAnimation] class=\"wac-tag-label\">\r\n <div class=\"wac-label__wrapper\">\r\n {{ label }}\r\n <i class=\"far fa-times\" (click)=\"deleteLabel()\"></i>\r\n </div>\r\n</div>\r\n","import { animate, style, transition, trigger } from '@angular/animations';\r\n\r\nexport const opacityAnimation = trigger('opacityAnimation', [\r\n transition(':enter', [style({ opacity: 0 }), animate('0.4s ease-in-out', style({ opacity: 1 }))])\r\n]);\r\n","import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-optional-disable-container',\r\n templateUrl: './optional-disable-container.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class OptionalDisableContainerComponent {\r\n\r\n @Input() disabled = false;\r\n\r\n constructor() { }\r\n\r\n}","<ng-content></ng-content>\r\n<div class=\"wac-optional-disable-container__disabledSection\" *ngIf=\"disabled\"></div>","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, EventEmitter, Output, OnChanges, SimpleChanges, ChangeDetectionStrategy, ViewChild, ElementRef, ViewEncapsulation } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { NwbDatePickerComponent, NwbDatePickerEvent, NwbDatePickerOptions, NwbDatePickerIntl, NwbDatePickerFormat, NwbDatePickerDefaultSettings } from '@wizishop/ng-wizi-bulma';\r\nimport { opacityAnimation } from '../../animations/show/opacity.animation';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-calendar',\r\n templateUrl: './calendar.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: CalendarComponent,\r\n multi: true\r\n },\r\n DatePipe,\r\n NwbDatePickerIntl,\r\n NwbDatePickerFormat,\r\n NwbDatePickerDefaultSettings\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n animations: [opacityAnimation]\r\n})\r\nexport class CalendarComponent implements OnChanges, ControlValueAccessor {\r\n //! At the moment, the component handle only one date (not a range)\r\n @ViewChild('minutes') minutes: ElementRef;\r\n @ViewChild('hours') hours: ElementRef;\r\n @ViewChild('datePicker') datePicker: NwbDatePickerComponent;\r\n\r\n @Input()\r\n label: string | null; // todo use ng-content instead\r\n\r\n @Input()\r\n boldLabel: boolean = false; // todo remove when label will be a ng-content\r\n\r\n @Input()\r\n type: 'input' | 'edit' | 'select' = 'input';\r\n\r\n @Input()\r\n isRange: boolean = false;\r\n\r\n @Input()\r\n set options(options: Readonly<NwbDatePickerOptions>) {\r\n this._options = options;\r\n if (this.isBulmaDatePickerExists()) {\r\n this.updateBulmaDatePickerOptions(options);\r\n }\r\n }\r\n\r\n get options() : Readonly<NwbDatePickerOptions> {\r\n return this._options;\r\n }\r\n\r\n _options: Readonly<NwbDatePickerOptions> = {\r\n displayMode: 'inline',\r\n showHeader: false,\r\n showFooter: true,\r\n };\r\n\r\n @Input()\r\n position = 'bottom';\r\n\r\n @Input()\r\n set dateSelected(dateSelected: Date) {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this._dateSelected = new Date(dateSelected); // trigger change detection for pure pipe\r\n }\r\n get dateSelected() : Date {\r\n return this._dateSelected;\r\n }\r\n _dateSelected: Date;\r\n\r\n @Input()\r\n set dateSelectedEnd(dateSelected: Date) {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this._dateSelectedEnd = new Date(dateSelected); // trigger change detection for pure pipe\r\n }\r\n get dateSelectedEnd() : Date {\r\n return this._dateSelectedEnd;\r\n }\r\n _dateSelectedEnd: Date;\r\n\r\n @Output() dateSelectedChange = new EventEmitter();\r\n\r\n @Input()\r\n typeDate: 'datetime' | 'datetime-local' | 'date' = 'datetime-local';\r\n @Input()\r\n noMargin = false;\r\n\r\n @Input() disabled = false;\r\n\r\n @Output() changeData = new EventEmitter<{ startDate: Date; endDate: Date; }>();\r\n open = false;\r\n startLabel = '';\r\n endLabel = '';\r\n\r\n set calendarMinutes(calendarMinutes: string) {\r\n if (!this.dateSelected) {\r\n this.dateSelected = new Date();\r\n }\r\n const minutes = this.formatTime(calendarMinutes, 0, 59);\r\n this.dateSelected.setMinutes(minutes);\r\n\r\n this.dateSelected = this.dateSelected; // trigger change detection\r\n this.minutes.nativeElement.value = this.datePipe.transform(this.dateSelected, 'mm'); // force to update the input value\r\n this.triggerDateSelectedChange();\r\n }\r\n\r\n get calendarMinutes(): string {\r\n return this.datePipe.transform(this.dateSelected ?? new Date(), 'mm');\r\n }\r\n\r\n set calendarHours(calendarHours: string) {\r\n if (!this.dateSelected) {\r\n this.dateSelected = new Date();\r\n }\r\n\r\n const hours = this.formatTime(calendarHours, 0, 23);\r\n\r\n this.dateSelected.setHours(hours);\r\n this.dateSelected = this.dateSelected; // trigger change detection\r\n this.hours.nativeElement.value = this.datePipe.transform(this.dateSelected, 'HH'); // force to update the input value\r\n this.triggerDateSelectedChange();\r\n }\r\n\r\n get calendarHours(): string {\r\n return this.datePipe.transform(this.dateSelected ?? new Date(), 'HH');\r\n }\r\n\r\n constructor(private datePipe: DatePipe) {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.label || changes.type) {\r\n this.setCalendarLabel();\r\n }\r\n }\r\n\r\n onChangeDate(selectedDates: NwbDatePickerEvent) {\r\n if (this.disabled) {\r\n return;\r\n }\r\n\r\n if (!this.dateSelected) {\r\n this.dateSelected = new Date();\r\n }\r\n\r\n selectedDates.startDate.setHours(this.dateSelected.getHours());\r\n selectedDates.startDate.setMinutes(this.dateSelected.getMinutes());\r\n\r\n this.dateSelected = selectedDates.startDate;\r\n\r\n if (selectedDates.endDate && this.isRange) {\r\n selectedDates.endDate.setMinutes(this.dateSelectedEnd.getMinutes());\r\n selectedDates.endDate.setMinutes(this.dateSelectedEnd.getMinutes());\r\n this.dateSelectedEnd = selectedDates.endDate;\r\n } else {\r\n selectedDates.endDate = this.dateSelected;\r\n this.dateSelectedEnd = this.dateSelected;\r\n }\r\n this.triggerDateSelectedChange();\r\n }\r\n\r\n private triggerDateSelectedChange() {\r\n this.onChange(this.dateSelected);\r\n this.dateSelectedChange.emit(this.dateSelected);\r\n this.triggerChange({\r\n startDate: this.dateSelected,\r\n endDate: this.dateSelectedEnd\r\n });\r\n }\r\n\r\n triggerChange(event: { startDate: Date; endDate: Date; }) {\r\n console.log(event);\r\n this.changeData.emit(event);\r\n }\r\n\r\n openCalendar(value = null) {\r\n\r\n if (this.disabled) {\r\n return;\r\n }\r\n\r\n if (value === 'close') {\r\n if (this.open) {\r\n this.open = false;\r\n this.onTouch();\r\n }\r\n } else {\r\n this.open = !this.open;\r\n }\r\n }\r\n\r\n private setCalendarLabel() {\r\n if (this.type === 'edit' && this.label) {\r\n const splitLabel = this.label.split('{x}');\r\n if (splitLabel.length > 1) {\r\n this.startLabel = splitLabel[0];\r\n this.endLabel = splitLabel[1];\r\n } else {\r\n this.startLabel = this.label;\r\n }\r\n }\r\n }\r\n\r\n incrementMinutes($event: Event) {\r\n this.calendarMinutes = parseInt(this.calendarMinutes, 10) + 1 + '';\r\n $event.preventDefault();\r\n }\r\n\r\n decrementsMinutes($event: Event) {\r\n this.calendarMinutes = parseInt(this.calendarMinutes, 10) - 1 + '';\r\n $event.preventDefault();\r\n }\r\n\r\n incrementHours($event: Event) {\r\n this.calendarHours = parseInt(this.calendarHours, 10) + 1 + '';\r\n $event.preventDefault();\r\n }\r\n\r\n decrementHours($event: Event) {\r\n this.calendarHours = parseInt(this.calendarHours, 10) - 1 + '';\r\n $event.preventDefault();\r\n }\r\n\r\n /*\r\n Ensure that the input value is a number and that it is between min and max\r\n */\r\n private formatTime(time: string | number, min = 0, max = 59) {\r\n let timeNumber = typeof time === 'string' ? parseInt(time, 10) : time;\r\n timeNumber = timeNumber > max ? min : timeNumber;\r\n timeNumber = timeNumber < min ? max : timeNumber;\r\n timeNumber = parseInt(('' + timeNumber).slice(-2)); // keeps only the last 2 digits\r\n return timeNumber;\r\n }\r\n\r\n private updateBulmaDatePickerOptions(options: Readonly<NwbDatePickerOptions>) {\r\n const bulmaCalendarDatePicker = this.datePicker['bulmaCalendar'].datePicker;\r\n bulmaCalendarDatePicker.min = options.minDate;\r\n bulmaCalendarDatePicker.max = options.maxDate;\r\n bulmaCalendarDatePicker.refresh();\r\n }\r\n\r\n private isBulmaDatePickerExists() {\r\n return this.datePicker && this.datePicker['bulmaCalendar'] && this.datePicker['bulmaCalendar'].datePicker;\r\n }\r\n\r\n // ControlValueAccessor methods\r\n\r\n onChange: (value: Date) => void = () => {};\r\n\r\n onTouch: () => void = () => {};\r\n\r\n writeValue(date: Date): void {\r\n if (!date) {\r\n return;\r\n }\r\n this.dateSelected = date;\r\n }\r\n registerOnChange(fn: any){\r\n this.onChange = fn;\r\n }\r\n registerOnTouched(fn: any){\r\n this.onTouch = fn;\r\n }\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n}\r\n","<div\r\n class=\"wac-calendar\"\r\n [ngClass]=\"{\r\n 'wac-calendar--input': type === 'input',\r\n 'wac-calendar--onlyDate': typeDate === 'date',\r\n 'wac-calendar--edit': type === 'edit',\r\n 'wac-calendar--select': type === 'select',\r\n 'wac-calendar--no-margin': noMargin,\r\n 'wac-calendar--open': open,\r\n 'wac-calendar--range': isRange\r\n }\"\r\n [zIndexToggle]=\"open\"\r\n>\r\n <p [class]=\"'wac-calendar__label' + (boldLabel ? ' bold' : '')\" *ngIf=\"label && (type === 'input' || type === 'select')\" (click)=\"openCalendar()\">{{ label }}</p>\r\n <p class=\"wac-calendar__startLabel\" *ngIf=\"type === 'edit'\">{{ startLabel }}</p>\r\n <wac-optional-disable-container [disabled]=\"disabled\">\r\n <div class=\"wac-calendar__autoHide\" wzAutoHide (clickOutside)=\"openCalendar('close')\">\r\n <div class=\"wac-calendar__wrapper\">\r\n <div class=\"wac-calendar__wrapper__input\" *ngIf=\"type === 'input'\" (click)=\"openCalendar()\">\r\n <div class=\"wac-calendar__wrapper__input__icon\">\r\n <i class=\"far fa-calendar-alt\"></i>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__input__date\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy'}}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/mm/yyyy' | translate }}</span>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__input__time\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'HH:mm' }}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.HH:mm' | translate }}</span>\r\n </div>\r\n <ng-container *ngIf=\"isRange\">\r\n <div class=\"wac-calendar__wrapper__input__separator\"><i class=\"fa-solid fa-chevron-right\"></i></div>\r\n <div class=\"wac-calendar__wrapper__input__date\">\r\n <span *ngIf=\"dateSelectedEnd\" @opacityAnimation>{{ dateSelectedEnd | date: 'dd/MM/yyyy'}}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelectedEnd\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/mm/yyyy' | translate }}</span>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__input__time\">\r\n <span *ngIf=\"dateSelectedEnd\" @opacityAnimation>{{ dateSelectedEnd | date: 'HH:mm' }}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelectedEnd\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.HH:mm' | translate }}</span>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__editInPlace\" *ngIf=\"type === 'edit'\" (click)=\"openCalendar()\">\r\n <div class=\"wac-calendar__wrapper__editInPlace__icon\">\r\n <i class=\"fal fa-calendar-alt\"></i>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__editInPlace__date\">\r\n <div class=\"wac-calendar__wrapper__input__time\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__select\" *ngIf=\"type === 'select'\" (click)=\"openCalendar()\">\r\n <div class=\"wac-calendar__wrapper__select__icon\">\r\n <i class=\"fal fa-calendar-alt\"></i>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__select__date\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"wac-calendar__absolute\"\r\n [ngClass]=\"{\r\n top: position === 'top',\r\n bottom: position === 'bottom',\r\n left: position === 'left',\r\n right: position === 'right',\r\n 'right-top': position === 'right-top',\r\n 'right-bottom': position === 'right-bottom',\r\n 'left-top': position === 'left-top',\r\n 'left-bottom': position === 'left-bottom',\r\n 'with-time': typeDate === 'datetime-local' || typeDate === 'datetime'\r\n }\"\r\n >\r\n\r\n <!-- Solo nwbDatePicker -->\r\n <ng-container *ngIf=\"!isRange\">\r\n <nwb-date-picker #datePicker (change)=\"onChangeDate($event)\" [options]=\"options\">\r\n <input [nwbDatepickerStart]=\"datePicker\" type=\"text\" [nwbDateType]=\"'date'\" [value]=\"dateSelected?.toISOString()\" />\r\n </nwb-date-picker>\r\n </ng-container>\r\n\r\n <!-- Range nwbDatePicker -->\r\n <ng-container *ngIf=\"isRange\">\r\n <nwb-date-picker #datePicker (change)=\"onChangeDate($event)\" [options]=\"options\">\r\n <input [nwbDatepickerStart]=\"datePicker\" type=\"text\" [nwbDateType]=\"'date'\" [value]=\"dateSelected?.toISOString()\" />\r\n <input [nwbDatepickerEnd]=\"datePicker\" type=\"text\" [nwbDateType]=\"'date'\" [value]=\"dateSelectedEnd?.toISOString()\" />\r\n </nwb-date-picker>\r\n </ng-container>\r\n <div class=\"wac-calendar__absolute__time\" *ngIf=\"typeDate === 'datetime-local' || typeDate === 'datetime'\">\r\n <div class=\"wac-calendar__absolute__time__wrapper\">\r\n <div class=\"wac-calendar__absolute__time__wrapper__hours\">\r\n <div class=\"wac-calendar__absolute__time__wrapper__hours__left\">\r\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"incrementHours($event)\">\r\n <i class=\"fas fa-plus\"></i>\r\n </button>\r\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"decrementHours($event)\">\r\n <i class=\"fas fa-minus\"></i>\r\n </button>\r\n </div>\r\n <div class=\"wac-calendar__absolute__time__wrapper__hours__right\">\r\n <input #hours type=\"text\" [(ngModel)]=\"calendarHours\" [wacOnlyNumber]=\"true\"/>\r\n </div>\r\n </div>\r\n <div class=\"wac-calendar__absolute__time__wrapper__minutes\">\r\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__left\">\r\n <input #minutes type=\"text\" [(ngModel)]=\"calendarMinutes\" [wacOnlyNumber]=\"true\"/>\r\n </div>\r\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__right\">\r\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"incrementMinutes($event)\">\r\n <i class=\"fas fa-plus\"></i>\r\n </button>\r\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"decrementsMinutes($event)\">\r\n <i class=\"fas fa-minus\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </wac-optional-disable-container>\r\n <p class=\"wac-calendar__endLabel\" *ngIf=\"type === 'edit'\">{{ endLabel }}</p>\r\n</div>\r\n","import {\r\n AfterViewChecked,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n OnChanges,\r\n Output,\r\n SimpleChanges,\r\n ViewChild,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\nimport { Observable } from 'rxjs';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-edit-in-place',\r\n templateUrl: './edit-in-place.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: WzEditInPlaceComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class WzEditInPlaceComponent implements ControlValueAccessor, AfterViewChecked, OnChanges {\r\n //! Refacto aweful to use\r\n // todo add exemples in showcases\r\n // ! Not working correctly with ngModel and (ngModelChange)\r\n @Input()\r\n type: string;\r\n @Input()\r\n nwbOptions: object | string[];\r\n @Input()\r\n config: NwbEditInPlaceConfig = {};\r\n @Input()\r\n label: string;\r\n @Output() customChange = new EventEmitter<any>();\r\n\r\n @ViewChild('input')\r\n input: ElementRef;\r\n\r\n objectKeys = Object.keys;\r\n public currentValue: string | number;\r\n private preValue: string | number;\r\n\r\n public inputWidth: number;\r\n public editing = false;\r\n public isLoading: boolean;\r\n private firstEdit: boolean;\r\n private initialized: boolean;\r\n\r\n public onChange: any = Function.prototype;\r\n public onTouched: any = Function.prototype;\r\n\r\n get value(): any {\r\n return this.currentValue;\r\n }\r\n\r\n set value(v: any) {\r\n if (v !== this.currentValue) {\r\n this.currentValue = v;\r\n }\r\n }\r\n\r\n writeValue(value: any) {\r\n if (value !== null) {\r\n if (this.config.currency) {\r\n this.currentValue = this.parseValueToNumber(value);\r\n if (this.config.separator !== '.') {\r\n this.currentValue = this.parseValueToSeparator(this.currentValue);\r\n }\r\n this.currentValue += this.config.currency;\r\n } else {\r\n this.currentValue = value;\r\n }\r\n }\r\n }\r\n\r\n public registerOnChange(fn: (_: any) => {}): void {\r\n this.onChange = fn;\r\n }\r\n\r\n public registerOnTouched(fn: () => {}): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n private _setValue(v: string | number) {\r\n if (this.type === 'select') {\r\n this.onChange(v);\r\n } else if (typeof this.config.currency === 'string') {\r\n v = this.parseValueToNumber(v);\r\n this.onChange(v);\r\n if (this.config.separator !== '.') {\r\n v = this.parseValueToSeparator(v);\r\n }\r\n v = v + this.config.currency;\r\n this.customChange.emit(v);\r\n } else {\r\n this.onChange(v);\r\n }\r\n this.writeValue(v);\r\n this.value = v;\r\n }\r\n\r\n ngAfterViewChecked() {\r\n if (this.input && this.editing) {\r\n this.input.nativeElement.focus();\r\n if (this.config.selectTextUponClick && this.firstEdit && this.preValue && this.input.nativeElement.value) {\r\n this.input.nativeElement.select();\r\n this.firstEdit = false;\r\n }\r\n }\r\n this.initialized = true;\r\n }\r\n\r\n startEditing() {\r\n if (!this.editing) {\r\n this.editing = true;\r\n this.currentValue = this.checkAndRemoveCurrency(this.currentValue);\r\n this.firstEdit = true;\r\n }\r\n }\r\n\r\n edit() {\r\n this.preValue = this.currentValue;\r\n this.editing = true;\r\n }\r\n\r\n onSubmit() {\r\n this.editing = false;\r\n if (this.currentValue !== this.preValue) {\r\n if (typeof this.config.handler === 'function') {\r\n this.isLoading = true;\r\n this.config.handler(this.currentValue, this.config.data).subscribe(\r\n data => {\r\n let hasChanged: boolean;\r\n this.isLoading = false;\r\n if (typeof data !== 'boolean') {\r\n this.currentValue = data.value;\r\n hasChanged = data.success;\r\n } else {\r\n hasChanged = data;\r\n }\r\n if (hasChanged) {\r\n this._setValue(this.currentValue);\r\n } else {\r\n this._setValue(this.preValue);\r\n }\r\n },\r\n () => {\r\n this.isLoading = false;\r\n this._setValue(this.preValue);\r\n }\r\n );\r\n } else {\r\n this._setValue(this.currentValue);\r\n }\r\n } else {\r\n if (typeof this.config.currency === 'string') {\r\n this.currentValue = this.currentValue + this.config.currency;\r\n }\r\n }\r\n }\r\n\r\n checkAndRemoveCurrency(value) {\r\n if (typeof this.config.currency === 'string') {\r\n return value.slice(0, -1);\r\n }\r\n\r\n return value;\r\n }\r\n\r\n parseValueToNumber(value) {\r\n if (!isNaN(value) && value !== '') {\r\n return parseFloat(value);\r\n }\r\n if (typeof this.config.currency === 'string') {\r\n const indexComma = value.indexOf(',');\r\n const indexDot = value.indexOf('.');\r\n if (indexComma > 0 && indexDot === -1) {\r\n const parsedValue = value.replace(',', '.');\r\n if (!isNaN(parsedValue)) {\r\n return parseFloat(parsedValue);\r\n }\r\n }\r\n if (indexDot > 0 && indexComma === -1) {\r\n if (!isNaN(value)) {\r\n return parseFloat(value);\r\n }\r\n }\r\n return 0;\r\n }\r\n }\r\n\r\n parseValueToSeparator(value) {\r\n if (typeof this.config.separator === 'string') {\r\n value = parseFloat(value).toFixed(2);\r\n return value.replace('.', this.config.separator);\r\n }\r\n\r\n return value;\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (this.initialized) {\r\n this.currentValue = this.checkAndRemoveCurrency(this.currentValue) + this.config.currency;\r\n this.customChange.emit(this.value);\r\n }\r\n }\r\n\r\n selectOption(event) {\r\n this.currentValue = event.target.innerText;\r\n this.closeSelect(event);\r\n event.stopPropagation();\r\n this.customChange.emit(event.target.value);\r\n }\r\n\r\n closeSelect(event) {\r\n this.editing = false;\r\n this.isLoading = false;\r\n event.stopPropagation();\r\n }\r\n}\r\n\r\nexport interface NwbEditInPlaceConfig {\r\n /** Whether to select the whole text inside the input upon click */\r\n selectTextUponClick?: boolean;\r\n\r\n /** Data to pass as the second argument for the handler method if any **/\r\n data?: any;\r\n\r\n currency?: string;\r\n\r\n separator?: string;\r\n\r\n /**\r\n * handler method to call on change.\r\n * This allows you to perform any action before setting new value to the model\r\n * It has to return a boolean observable. If the returned value is true then the model will change.\r\n */\r\n handler?: (value: any, data: any) => Observable<boolean | ReturnedData>;\r\n}\r\n\r\nexport interface ReturnedData {\r\n success: boolean;\r\n value: any;\r\n}\r\n","<div [class.nwb-wrapper--editable]=\"type === 'select' || (!editing && !isLoading)\" class=\"wac-edit-in-place nwb-wrapper\" (click)=\"startEditing()\">\r\n <span\r\n data-text=\"dd\"\r\n [class.nwb-is-loading]=\"type === 'select' ? '' : isLoading\"\r\n [class.nwb-editing]=\"type === 'select' ? '' : editing\"\r\n [ngClass]=\"type === 'select' ? 'nwbSelect' : ''\"\r\n >\r\n {{ currentValue }}\r\n </span>\r\n\r\n <input\r\n #input\r\n *ngIf=\"type !== 'select' && editing\"\r\n [class.nwb-editable]=\"!editing\"\r\n [class.nwb-editing]=\"editing\"\r\n [class.nwb-is-loading]=\"isLoading\"\r\n type=\"text\"\r\n [(ngModel)]=\"value\"\r\n (focus)=\"edit()\"\r\n (blur)=\"onSubmit()\"\r\n (keyup.enter)=\"onSubmit()\"\r\n [ngStyle]=\"{ 'width.px': inputWidth }\"\r\n />\r\n <div class=\"nwbSelect__container\" *ngIf=\"type === 'select' && editing\">\r\n <div class=\"nwbSelect__background\" (click)=\"closeSelect($event)\"></div>\r\n <ng-container *ngFor=\"let nwbOption of objectKeys(nwbOptions)\">\r\n <button\r\n *ngIf=\"nwbOptions[nwbOption]\"\r\n [ngClass]=\"\r\n nwbOptions[nwbOption].label === currentValue\r\n ? 'nwbSelect__container__item nwbSelect__container__item--selected'\r\n : 'nwbSelect__container__item'\r\n \"\r\n (click)=\"selectOption($event)\"\r\n [value]=\"nwbOptions[nwbOption].value\"\r\n >\r\n {{ nwbOptions[nwbOption].label ? nwbOptions[nwbOption].label : nwbOptions[nwbOption].value }}\r\n </button>\r\n </ng-container>\r\n </div>\r\n\r\n <span class=\"nwb-loader\" [class.nwb-is-loading]=\"type === 'select' ? '' : isLoading\"></span>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { ProgressBarComponent } from '../progress-bar/progress-bar.component';\r\nimport { AutosizeModule } from 'ngx-autosize';\r\n\r\n@Component({\r\n selector: 'wac-text-area',\r\n templateUrl: './text-area.component.html',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ProgressBarComponent,\r\n AutosizeModule\r\n ],\r\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: TextAreaComponent, multi: true }]\r\n})\r\nexport class TextAreaComponent implements ControlValueAccessor {\r\n // todo simplify and improve progress bar\r\n @Input()\r\n label = '';\r\n @Input()\r\n value = '';\r\n @Input()\r\n placeholder = '';\r\n @Input()\r\n textInfo = '';\r\n @Input()\r\n textError = '';\r\n @Input()\r\n error: boolean;\r\n @Input()\r\n success: boolean;\r\n @Input()\r\n size = null;\r\n @Input()\r\n min = null;\r\n @Input()\r\n max = null;\r\n @Input()\r\n minHeight: string;\r\n @Input()\r\n dynamicSize = false;\r\n @Input()\r\n progressBar = false;\r\n @Input()\r\n disabled = false;\r\n @Input()\r\n maxlength: number | string;\r\n @Input()\r\n minlength: number | string;\r\n @Input()\r\n disableResize = false;\r\n\r\n id =\r\n 'wac-textarea__' +\r\n Math.random()\r\n .toString(36)\r\n .substr(2, 9);\r\n\r\n private _onChange: Function;\r\n private _onTouched: Function;\r\n\r\n registerOnChange(fn: any): void {\r\n this._onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this._onTouched = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n writeValue(obj: any): void {\r\n this.value = obj;\r\n }\r\n\r\n onChange(value) {\r\n if (this._onChange) {\r\n this._onChange(value);\r\n this.writeValue(value);\r\n }\r\n }\r\n\r\n onBlur() {\r\n if (this._onTouched) {\r\n this._onTouched();\r\n }\r\n }\r\n}\r\n","<div class=\"field wac-text-area\" [ngClass]=\"{'dynamic': dynamicSize}\">\r\n <div class=\"field-label is-normal has-text-left\">\r\n <label class=\"label has-text-weight-normal\" [innerHTML]=\"label\" [for]=\"id\"></label>\r\n </div>\r\n <div class=\"field-body\">\r\n <div class=\"field\">\r\n <p class=\"control\" [ngClass]=\"{ 'has-icons-right': (textError || error || success) && !disabled }\">\r\n <textarea\r\n [class]=\"'textarea' + (disableResize ? ' no-resize' : '')\"\r\n [id]=\"id\"\r\n [ngClass]=\"{ 'is-danger': (textError || error) && !disabled, 'is-empty': value === '', 'is-success': success && !disabled, 'has-help-text': textInfo !== '' || size }\"\r\n [placeholder]=\"placeholder\"\r\n [attr.size]=\"size\"\r\n [style.minHeight]=\"minHeight\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"onChange($event)\"\r\n (blur)=\"onBlur()\"\r\n [disabled]=\"disabled\"\r\n [autosize]=\"dynamicSize\"\r\n [maxlength]=\"maxlength ? maxlength : 524288\"\r\n [minlength]=\"minlength ? minlength : 0\"\r\n ></textarea>\r\n <!-- Icon error -->\r\n <span *ngIf=\"(textError || error) && !disabled\" class=\"icon is-small is-right\">\r\n <i class=\"fal fa-times has-text-danger\"></i>\r\n </span>\r\n <!-- Icon success -->\r\n <span *ngIf=\"success && !disabled\" class=\"icon is-small is-right\">\r\n <i class=\"fas fa-check has-text-success\"></i>\r\n </span>\r\n <span\r\n *ngIf=\"textInfo && (textError === null || textError === '')\"\r\n class=\"is-size-7 wac-text-area__info text-info\"\r\n [innerHtml]=\"textInfo\"\r\n ></span>\r\n <span *ngIf=\"textError\" class=\"is-size-7 wac-text-area__error has-text-danger\" [innerHtml]=\"textError\"></span>\r\n <span\r\n *ngIf=\"size && !progressBar\"\r\n class=\"is-size-7 wac-text-area__size\"\r\n [ngClass]=\"value && value.length > size ? 'has-text-danger' : ''\"\r\n ><strong>{{ value ? value.length : 0 }}</strong> / {{ size }}</span\r\n >\r\n </p>\r\n <wac-progress-bar *ngIf=\"progressBar && value\" [min]=\"min\" [max]=\"max\" [valueLength]=\"value.length\"></wac-progress-bar>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-h1',\r\n templateUrl: './h1.component.html'\r\n})\r\nexport class H1Component {\r\n @Input()\r\n annotation = '';\r\n @Input()\r\n withImg = false;\r\n @Input()\r\n center = false;\r\n @Input()\r\n color = null;\r\n\r\n private _noMargin: boolean = false;\r\n\r\n @Input()\r\n get noMargin(): boolean {\r\n return this._noMargin;\r\n }\r\n \r\n set noMargin(value: boolean | string | '') {\r\n this._noMargin = value === '' || value === 'noMargin' || value === true;\r\n }\r\n\r\n constructor() {}\r\n}\r\n","<h1 class=\"wac-h1\" [ngClass]=\"{'with-img': withImg, 'center': center}\" [style.color]=\"color?color:''\" [class.no-margin]=\"noMargin\">\r\n <ng-content></ng-content><small *ngIf=\"annotation !== ''\">{{ annotation }}</small>\r\n</h1>\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-h2',\r\n templateUrl: './h2.component.html'\r\n})\r\nexport class H2Component implements OnInit {\r\n private _noMargin: boolean = false;\r\n \r\n @Input()\r\n get noMargin(): boolean {\r\n return this._noMargin;\r\n }\r\n \r\n set noMargin(value: boolean | string | '') {\r\n this._noMargin = value === '' || value === 'noMargin' || value === true;\r\n }\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","<h2 class=\"wac-h2\" [class.no-margin]=\"noMargin\">\r\n <ng-content></ng-content>\r\n</h2>\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-h3',\r\n templateUrl: './h3.component.html'\r\n})\r\nexport class H3Component implements OnInit {\r\n @Input() grey = false;\r\n \r\n private _noMargin: boolean = false;\r\n\r\n @Input()\r\n get noMargin(): boolean {\r\n return this._noMargin;\r\n }\r\n \r\n set noMargin(value: boolean | string | '') {\r\n this._noMargin = value === '' || value === 'noMargin' || value === true;\r\n }\r\n \r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","<h3 class=\"wac-h3\" [ngClass]=\"{ grey: grey }\" [class.no-margin]=\"noMargin\">\r\n <ng-content></ng-content>\r\n</h3>\r\n","import { Injectable } from '@angular/core';\r\nimport { NavigationStart, Router } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HistoryService {\r\n private history: string[] = [];\r\n\r\n constructor(private router: Router) {}\r\n\r\n registerHistory() {\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationStart) {\r\n if (this.history.length > 0 && this.history[this.history.length - 1] === event.url.split('?')[0]) {\r\n return;\r\n }\r\n this.history.push(event.url.split('?')[0])\r\n }\r\n })\r\n }\r\n\r\n back(link: string[]) {\r\n this.history.pop();\r\n if (this.history.length > 0) {\r\n const lastlink = this.history[this.history.length - 1];\r\n this.router.navigate(lastlink.split('/'));\r\n } else {\r\n this.redirect(link);\r\n }\r\n }\r\n\r\n redirect(link: string[]) {\r\n if (link[0].indexOf('http') !== -1) {\r\n this.redirectToExternalLink(link);\r\n } else {\r\n this.redirectToInternalLink(link);\r\n }\r\n }\r\n\r\n redirectToExternalLink(link: string[]) {\r\n window.location.href = link[0];\r\n }\r\n\r\n redirectToInternalLink(link: string[]) {\r\n this.router.navigate(link);\r\n }\r\n}\r\n","import { Location } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\nimport { HistoryService } from '../../services/history.service';\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-header-page',\r\n templateUrl: './header-page.component.html'\r\n})\r\nexport class HeaderPageComponent {\r\n @Input()\r\n title: string;\r\n @Input()\r\n linkBack: string[];\r\n @Input()\r\n withImg = false;\r\n @Input()\r\n center = false;\r\n @Input()\r\n useHistory = false;\r\n\r\n constructor(private historyService: HistoryService, private location: Location) {}\r\n back() {\r\n if (this.useHistory && !this.linkBack) {\r\n window.history.back();\r\n return;\r\n } else if(!this.useHistory) {\r\n this.historyService.redirect(this.linkBack);\r\n return;\r\n }\r\n\r\n this.historyService.back(this.linkBack);\r\n }\r\n}\r\n","<div class=\"wac-header-page\">\r\n <div class=\"wac-header-page__maxWidth\">\r\n <div class=\"wac-header-page__maxWidth__top\" [ngClass]=\"{'center':center}\">\r\n <div class=\"wac-header-page__maxWidth__top__left\" [ngClass]=\"{'fullsize':center}\">\r\n <div class=\"wac-header-page__maxWidth__top__left__nowrap\">\r\n <a *ngIf=\"linkBack || useHistory\" (click)=\"back()\"><i class=\"fas fa-chevron-left\"></i></a>\r\n <wac-h1 [center]=\"center\" [withImg]=\"withImg\">{{ title }}<ng-content select=\"[role=header]\"></ng-content></wac-h1>\r\n </div>\r\n <p class=\"subtitle\"><ng-content select=\"[role=subtitle]\"></ng-content></p>\r\n </div>\r\n <div class=\"wac-header-page__maxWidth__top__right\" *ngIf=\"!center\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { AfterViewInit, Component, ElementRef, Input, Renderer2, ViewChild } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-link',\r\n templateUrl: './link.component.html'\r\n})\r\nexport class LinkComponent implements AfterViewInit {\r\n\r\n _link: string;\r\n\r\n @Input() set href(link : string) {\r\n this._link = link;\r\n this.setAttributesLink();\r\n }\r\n\r\n get href(): string {\r\n return this._link;\r\n }\r\n\r\n @Input() tooltip: string;\r\n @Input() tooltipWidth: string | number;\r\n @Input() target: '_self' | '_blank' | '_parent' | '_top' = '_self';\r\n @Input() id: string;\r\n @Input() class: string;\r\n @Input() fontSize = '14px';\r\n\r\n @ViewChild('linkComponent')\r\n linkComponent: ElementRef;\r\n\r\n constructor(private renderer2: Renderer2) {}\r\n\r\n ngAfterViewInit() {\r\n this.setAttributesLink();\r\n }\r\n\r\n setAttributesLink() {\r\n if (!this.linkComponent) {\r\n return;\r\n }\r\n\r\n if (this.href) {\r\n this.renderer2.setAttribute(this.linkComponent.nativeElement, \"href\", this.href);\r\n this.renderer2.setAttribute(this.linkComponent.nativeElement, \"target\", this.target);\r\n } else {\r\n this.renderer2.removeAttribute(this.linkComponent.nativeElement, \"href\");\r\n this.renderer2.removeAttribute(this.linkComponent.nativeElement, \"target\");\r\n }\r\n }\r\n}\r\n","<a #linkComponent class=\"wac-link\" [style.fontSize]=\"fontSize\" [ngClass]=\"{ class: class }\" [id]=\"{ id: id }\">\r\n <ng-content></ng-content>\r\n <span class=\"wac-link__tooltip\" [ngStyle]=\"{'min-width': tooltipWidth + 'px'}\" *ngIf=\"tooltip\" [innerHTML]=\"tooltip\"></span>\r\n</a>\r\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-switch',\r\n templateUrl: './switch.component.html',\r\n providers: [\r\n { provide: NG_VALUE_ACCESSOR, useExisting: SwitchComponent, multi: true },\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SwitchComponent implements OnInit, ControlValueAccessor {\r\n // todo add ngmodel and review texts display (textState is mandatory in order to display textStateEnable and textStateDisable)\r\n @Input() value = false;\r\n @Input() textState = '';\r\n @Input() textStateAfter = '';\r\n @Input() textStateEnable = '';\r\n @Input() textStateDisable = '';\r\n @Input() showInput = false; // todo should not be handle here, but in another component\r\n @Input() placholderInput: string; // todo should be removed from here\r\n @Input() danger = false;\r\n @Input() whiteSpace: boolean = false;\r\n @Input() inverted: boolean = false;\r\n @Output() switchChange = new EventEmitter<any>(); // todo set emitted type\r\n @Output() changeInput = new EventEmitter<any>(); // todo set emitted type, should be removed\r\n valueInput: string;\r\n public id: string;\r\n\r\n disabled: boolean;\r\n\r\n constructor(private changeDetectorRef: ChangeDetectorRef) {}\r\n\r\n ngOnInit(): void {\r\n this.id = 'switch-' + Math.floor(Math.random() * Math.floor(1000));\r\n }\r\n\r\n changeValue(event: any) {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this.value = event.target.checked;\r\n this.switchChange.emit(this.value);\r\n this.onChange(this.value)\r\n }\r\n\r\n triggerInput() {\r\n this.changeInput.emit(this.valueInput);\r\n }\r\n\r\n private onChange: (value: boolean) => void = (value) => {};\r\n\r\n writeValue(value: boolean): void {\r\n this.value = value;\r\n }\r\n registerOnChange(onChange: any): void {\r\n this.onChange = onChange;\r\n }\r\n\r\n onBlur(): void {\r\n this.onTouched();\r\n }\r\n\r\n private onTouched = () => {};\r\n\r\n registerOnTouched(onTouched: any): void {\r\n this.onTouched = onTouched;\r\n }\r\n\r\n setDisabledState(disabled: boolean) {\r\n this.disabled = disabled;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n}\r\n","<div class=\"wac-switch\" [ngClass]=\"{ inverted: inverted }\">\r\n <input type=\"checkbox\" [checked]=\"value\" (change)=\"changeValue($event)\" [id]=\"id\" [ngClass]=\"{ danger: danger }\" [disabled]=\"disabled\"/>\r\n <label [for]=\"id\" class=\"wac-switch__label\">\r\n <span class=\"wac-switch__label__text\">\r\n <ng-content></ng-content>\r\n <span\r\n *ngIf=\"textState\"\r\n [ngStyle]=\"{'whiteSpace': whiteSpace ? 'nowrap' :'normal'}\"\r\n >{{ textState }}\r\n <strong class=\"disable\" *ngIf=\"textStateDisable\">{{ textStateDisable }}</strong>\r\n <strong class=\"enable\" *ngIf=\"textStateEnable\">{{ textStateEnable }}</strong>\r\n {{ textStateAfter }}\r\n </span>\r\n </span>\r\n </label>\r\n</div>\r\n<div class=\"wac-show-input\" *ngIf=\"showInput && value\">\r\n <input [placeholder]=\"placholderInput\" type=\"text\" [(ngModel)]=\"valueInput\" (blur)=\"triggerInput()\" />\r\n</div>\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-alert',\r\n templateUrl: './alert.component.html'\r\n})\r\nexport class AlertComponent implements OnInit {\r\n @Input() icon = true;\r\n @Input() warning = false;\r\n @Input() success = false;\r\n @Input() alert = false;\r\n @Input() iconClass = 'fas fa-info';\r\n @Input() closeButton = false;\r\n\r\n private isClose: boolean = false;\r\n @Output() isCloseChange = new EventEmitter<boolean>();\r\n\r\n constructor() {}\r\n ngOnInit(): void {}\r\n\r\n closeAlert(el) {\r\n el.remove();\r\n this.isClose = true;\r\n this.isCloseChange.next(this.isClose);\r\n }\r\n}\r\n","<div #alertBlock class=\"wac-alert\" [ngClass]=\"{ success: success, warning: warning, alert: alert }\">\r\n <i *ngIf=\"icon\" [ngClass]=\"iconClass\"></i>\r\n <p><ng-content></ng-content></p> <!-- ! Refacto : Remove p tag, attention à wizi-admin -->\r\n <a *ngIf=\"closeButton\" (click)=\"closeAlert(alertBlock)\"><i [ngClass]=\"'closeAlert fal fa-circle-xmark'\"></i></a>\r\n</div>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-text',\r\n templateUrl: './text.component.html'\r\n})\r\nexport class TextComponent {\r\n @Input()\r\n textClass: 'grey'|'yellow'|'red'|'label'|'optional';\r\n\r\n private _noMargin: boolean = false;\r\n\r\n @Input()\r\n get noMargin(): boolean {\r\n return this._noMargin;\r\n }\r\n \r\n set noMargin(value: boolean | string | '') {\r\n this._noMargin = value === '' || value === 'noMargin' || value === true;\r\n }\r\n}\r\n","<div class=\"wac-text\" [class]=\"textClass\" [class.no-margin]=\"noMargin\">\r\n <p><ng-content></ng-content></p>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\n\r\nimport { PaginationComponent } from './pagination.component';\r\nimport { PagniationArrayTotalPages } from './pipes/array-pages.pipe';\r\nimport { PagniationText } from './pipes/custom-text.pipe';\r\nimport { PagniationIsLastPage } from './pipes/is-last-page.pipe';\r\n\r\nconst pipes = [PagniationArrayTotalPages, PagniationIsLastPage, PagniationText];\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n TranslateModule\r\n ],\r\n exports: [PaginationComponent],\r\n declarations: [PaginationComponent, ...pipes],\r\n providers: [],\r\n})\r\nexport class PaginationModule { }\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { CheckboxComponent } from './checkbox.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ],\r\n exports: [CheckboxComponent],\r\n declarations: [CheckboxComponent],\r\n providers: [],\r\n})\r\nexport class CheckboxModule { }\r\n","import { DOCUMENT } from '@angular/common';\r\nimport { Inject } from '@angular/core';\r\nimport { Renderer2 } from '@angular/core';\r\nimport { Directive, ElementRef, Input } from '@angular/core';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[tableColumn]'\r\n})\r\nexport class TableColumn {\r\n @Input() columnSize: string; // Optional.\r\n @Input() centerCell: 'left'|'center'|'right'; // Optional. left|center|right\r\n\r\n private centerCellValue: string[] = ['left', 'center', 'right'];\r\n\r\n constructor(private currentCell: ElementRef, private renderer: Renderer2, @Inject(DOCUMENT) private document) {}\r\n\r\n ngAfterViewInit() {\r\n this.applyCustomStylesOnCell();\r\n }\r\n\r\n applyCustomStylesOnCell() {\r\n this.currentCell.nativeElement.style.flexGrow = typeof this.columnSize !== 'undefined' ? this.columnSize : '1';\r\n this.renderer.addClass(this.currentCell.nativeElement, 'wac-table__body__line__cell');\r\n\r\n if (this.centerCell) {\r\n if (this.centerCellValue.indexOf(this.centerCell) === -1) {\r\n throw 'Error : The centerCell directive has no matched value. The value must be one of the following : left, center, right.';\r\n }\r\n\r\n let className = 'wac-table__body__line__cell--center' + '--' + this.centerCell;\r\n this.renderer.addClass(this.currentCell.nativeElement, className);\r\n }\r\n }\r\n}\r\n","import { DOCUMENT } from '@angular/common';\r\nimport { EventEmitter, Inject, Output } from '@angular/core';\r\nimport { Renderer2 } from '@angular/core';\r\nimport { Directive, ElementRef, Input } from '@angular/core';\r\nimport { NwbFilter, NwbFilterGroup } from '@wizishop/ng-wizi-bulma';\r\nimport { Subscription } from 'rxjs';\r\nimport { FiltersTableService } from '../shared/filters-table.service';\r\nimport { TableFilters } from '../shared/table-filters.model';\r\n\r\n@Directive({\r\n standalone: false,\r\n // The selector has the same name as the headerCell selector in table.component.html\r\n selector: '[headerCell]'\r\n})\r\nexport class TableColumnHeader {\r\n @Input() // Optional.\r\n set headerName(value: string) {\r\n this._headerName = value;\r\n this.setHeaderName();\r\n }\r\n _headerName: string = '';\r\n get headerName(): string {\r\n return this._headerName;\r\n }\r\n @Input() columnSize: string; // Optional.\r\n @Input() filterRouting: boolean = false; // Optional. Set to true to use Filter Routing.\r\n @Input() tableName: string; // Optional, but mandatory to handle sorting\r\n @Input() sortName: string; // Optional, but mandatory to handle sorting\r\n @Input() centerCell: 'left'|'center'|'right'; // Optional. left|center|right\r\n @Output() onSortChange: EventEmitter<boolean> = new EventEmitter(); // Emit the sort value (true, false, undefuned) of the current sort icon when clicking\r\n @Input() tableFilters: TableFilters;\r\n @Output() tableFiltersChange: EventEmitter<TableFilters> = new EventEmitter();\r\n\r\n private centerCellValue: string[] = ['left', 'center', 'right'];\r\n\r\n private contentHeader: HTMLAnchorElement;\r\n private filterGroup: NwbFilterGroup;\r\n\r\n private subscriptions: Subscription[] = [];\r\n\r\n constructor(\r\n private currentCell: ElementRef,\r\n private renderer: Renderer2,\r\n @Inject(DOCUMENT) private document,\r\n private filtersTableService: FiltersTableService\r\n ) {}\r\n\r\n ngOnInit() {\r\n if (this.tableName && this.sortName) {\r\n if (this.filterRouting) {\r\n this.handleSortRouting();\r\n } else {\r\n this.handleSortBasic();\r\n }\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.applyCustomStylesOnCell();\r\n this.renderHeaderColumn();\r\n }\r\n\r\n handleSortRouting() {\r\n this.filterGroup = this.filtersTableService.getTableFilterGroup(this.tableName);\r\n\r\n const filterGroupChangeSub = this.filterGroup.valuesChange$.subscribe((filters:NwbFilter[]) => {\r\n if (!filters || !filters.length) {\r\n return;\r\n }\r\n const filterSort = filters.filter(filter => filter.key === 'sort')[0];\r\n if (this.sortName !== filterSort.value) {\r\n this.resetSortIcon();\r\n }\r\n });\r\n this.subscriptions.push(filterGroupChangeSub);\r\n }\r\n\r\n handleSortBasic() {\r\n const sortChangeSub = this.filtersTableService.getSortChangeListner().subscribe(sort => {\r\n if (this.tableName === sort.dataTableName && this.sortName !== sort.sortName) {\r\n // Reset the current sort icon\r\n this.resetSortIcon();\r\n }\r\n });\r\n this.subscriptions.push(sortChangeSub);\r\n }\r\n\r\n resetSortIcon() {\r\n // Replace current icon with default icon\r\n this.contentHeader.className = this.contentHeader.className.replace(this.getCurrentSortIcon(), 'idle');\r\n }\r\n\r\n applyCustomStylesOnCell() {\r\n this.currentCell.nativeElement.style.flexGrow = typeof this.columnSize !== 'undefined' ? this.columnSize : '1';\r\n this.renderer.addClass(this.currentCell.nativeElement, 'wac-table__head__cell');\r\n\r\n if (this.centerCell) {\r\n if (this.centerCellValue.indexOf(this.centerCell) === -1) {\r\n throw 'Error : The centerCell directive has no matched value. The value must be one of the following : left, center, right.';\r\n }\r\n\r\n let className = 'wac-table__head__cell--center' + '--' + this.centerCell;\r\n this.renderer.addClass(this.currentCell.nativeElement, className);\r\n }\r\n }\r\n\r\n renderHeaderColumn() {\r\n this.createHeaderContent();\r\n this.renderer.appendChild(this.currentCell.nativeElement, this.contentHeader);\r\n }\r\n\r\n createHeaderContent() {\r\n this.contentHeader = document.createElement('a');\r\n this.contentHeader.className = 'wac-table__head__cell__search';\r\n this.setHeaderName();\r\n if (this.tableName && this.sortName) {\r\n this.handleSort();\r\n }\r\n }\r\n\r\n private setHeaderName() {\r\n if (!this.contentHeader) {\r\n return;\r\n }\r\n this.contentHeader.innerHTML = this.headerName;\r\n }\r\n\r\n handleSort() {\r\n // Set icon in the header column cell\r\n this.contentHeader.className += ' wac-table__head__cell__search--' + this.getInitialSortIcon();\r\n\r\n // On click on the content header, change the icon and emit event\r\n this.renderer.listen(this.contentHeader, 'click', () => {\r\n const currentIcon = this.getCurrentSortIcon();\r\n let newIcon: string;\r\n let newSort: string, newOrder: boolean;\r\n\r\n switch (currentIcon) {\r\n case 'idle':\r\n newIcon = 'up';\r\n newSort = this.sortName;\r\n newOrder = true;\r\n break;\r\n\r\n case 'up':\r\n newIcon = 'down';\r\n newSort = this.sortName;\r\n newOrder = false;\r\n break;\r\n\r\n case 'down':\r\n newIcon = 'idle';\r\n break;\r\n\r\n default:\r\n newIcon = 'idle';\r\n break;\r\n }\r\n // Replace the icon\r\n this.contentHeader.className = this.contentHeader.className.replace(currentIcon, newIcon);\r\n\r\n this.emitEvents(newSort, newOrder);\r\n });\r\n }\r\n\r\n getInitialSortIcon() {\r\n if (!this.filterRouting) {\r\n return 'idle';\r\n }\r\n // Get Initial Sort Icon for Routing Filter\r\n let initialSortIcon = 'idle';\r\n if (this.filterGroup.get('sort') === this.sortName) {\r\n initialSortIcon = this.filterGroup.get('order') == 'true' ? 'up' : 'down';\r\n }\r\n return initialSortIcon;\r\n }\r\n\r\n getCurrentSortIcon() {\r\n const regexp = /wac-table__head__cell__search--(?<icon>\\w+)/;\r\n const { groups } = regexp.exec(this.contentHeader.className);\r\n return groups.icon;\r\n }\r\n\r\n emitEvents(newSort, newOrder) {\r\n if (this.filterRouting) {\r\n // Will send the filter routing value has changes event\r\n this.filterGroup.setValues({\r\n sort: newSort,\r\n order: newOrder,\r\n currentPage: 1\r\n });\r\n } else {\r\n // Send the event sort change\r\n this.filtersTableService.emitSortChange(this.tableName, this.sortName, newOrder);\r\n }\r\n if (this.tableFilters) {\r\n this.tableFilters.sort = this.sortName;\r\n this.tableFilters.order = newOrder;\r\n this.tableFilters.currentPage = 1;\r\n this.tableFiltersChange.emit(this.tableFilters);\r\n }\r\n this.onSortChange.emit(newOrder);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscriptions.forEach(subscription => {\r\n subscription.unsubscribe();\r\n });\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CheckboxModule } from '../checkbox/checkbox.module';\r\nimport { LoaderComponent } from '../loader/loader.component';\r\nimport { PaginationModule } from '../pagination/pagination.module';\r\nimport { CheckBoxRow } from './directives/checkBoxRow.directive';\r\nimport { TableColumn } from './directives/column.directive';\r\nimport { TableColumnHeader } from './directives/columnHeader.directive';\r\nimport { TableRow } from './directives/raw.directive';\r\n\r\nimport { TableComponent } from './table.component';\r\nimport { InputSearchComponent } from '../inputs/input-search/input-search.component';\r\n\r\nconst directives = [TableColumn, CheckBoxRow, TableColumnHeader, TableRow,]\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n InputSearchComponent,\r\n LoaderComponent,\r\n CheckboxModule,\r\n PaginationModule\r\n ],\r\n exports: [TableComponent, ...directives],\r\n declarations: [TableComponent, ...directives],\r\n providers: [],\r\n})\r\nexport class TableModule { }\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-upload',\r\n templateUrl: './upload.component.html'\r\n})\r\nexport class UploadComponent implements OnInit {\r\n @Input()\r\n label: string = 'Choisir les images à importer';\r\n @Input()\r\n type: string = 'button';\r\n @Input()\r\n icon: string | boolean = 'far fa-images';\r\n @Input()\r\n image: string | boolean = 'assets/angular-components/images/upload/icon_picture.svg';\r\n @Input()\r\n labelImage: string = 'Glisser-déposer votre image ici';\r\n @Input()\r\n imageBlock: string | boolean = 'assets/angular-components/images/upload/upload_images.svg';\r\n @Input()\r\n labelUploadImage: string = '';\r\n @Input()\r\n onClickAction: () => void = () => {};\r\n @Input()\r\n isUploaded: boolean = false;\r\n @Input()\r\n imageUpload: string = '';\r\n\r\n @Output()\r\n open = new EventEmitter<any>();\r\n @Output()\r\n clickEvent = new EventEmitter<void>();\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n triggerEvent(event) {\r\n this.open.emit(event);\r\n }\r\n\r\n clickAction() {\r\n if (this.onClickAction) {\r\n this.onClickAction();\r\n }\r\n this.clickEvent.emit();\r\n }\r\n}\r\n","<div class=\"wac-upload\" [ngClass]=\"{ portrait: type === 'portrait', landscape: type === 'landscape', block: type === 'block', btn: type === 'btn' }\" (click)=\"clickAction()\">\r\n <div class=\"wac-upload__wrapper\">\r\n\r\n <!-- Affichage quand aucune image n'est uploadée -->\r\n <ng-container *ngIf=\"!isUploaded\">\r\n <div *ngIf=\"(type === 'portrait' || type === 'landscape') && image\" class=\"wac-upload__wrapper__visual\">\r\n <img [src]=\"image\" />\r\n <strong [innerHTML]=\"labelImage\"></strong>\r\n </div>\r\n \r\n <div *ngIf=\"(type === 'block')\" class=\"wac-upload__wrapper__visual\">\r\n <img [src]=\"imageBlock\" />\r\n </div>\r\n\r\n <span *ngIf=\"(type === 'portrait' || type === 'landscape') && image\">ou</span>\r\n \r\n <button (click)=\"triggerEvent($event)\" type=\"button\" [ngClass]=\"{ block: type === 'block', btn: type === 'btn' }\">\r\n <span *ngIf=\"icon\"><i [classList]=\"icon\"></i></span>\r\n <span [innerHTML]=\"label\"></span>\r\n </button>\r\n\r\n <div *ngIf=\"(type === 'block')\" class=\"wac-upload__wrapper__visual\">\r\n <wac-text [textClass]=\"'optional'\" noMargin>{{ labelUploadImage }}</wac-text>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- Affichage quand une image est uploadée -->\r\n <ng-container *ngIf=\"isUploaded && imageUpload\">\r\n <div class=\"wac-upload__wrapper__uploaded\">\r\n <img [src]=\"imageUpload\" alt=\"Image uploadée\" />\r\n </div>\r\n </ng-container>\r\n\r\n </div>\r\n\r\n <ng-container *ngIf=\"isUploaded && imageUpload\">\r\n <div class=\"overlay\">\r\n <img [src]=\"imageBlock\" alt=\"Image de fond\" />\r\n </div>\r\n </ng-container>\r\n</div>","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-h4',\r\n templateUrl: './h4.component.html'\r\n})\r\nexport class H4Component implements OnInit {\r\n @Input() grey = false;\r\n\r\n private _noMargin: boolean = false;\r\n\r\n @Input()\r\n get noMargin(): boolean {\r\n return this._noMargin;\r\n }\r\n \r\n set noMargin(value: boolean | string | '') {\r\n this._noMargin = value === '' || value === 'noMargin' || value === true;\r\n }\r\n \r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","<h4 class=\"wac-h4\" [ngClass]=\"{ grey: grey }\" [class.no-margin]=\"noMargin\">\r\n <ng-content></ng-content>\r\n</h4>\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { CalllToAction } from '../select/call-to-action.model';\r\nimport { SelectItem } from '../select/select-items.dto';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-select-in-text',\r\n templateUrl: './select-in-text.component.html',\r\n})\r\nexport class SelectInTextComponent implements OnInit {\r\n @Input()\r\n set items(items: SelectItem[]) {\r\n this._items = items;\r\n this.setInitialValues();\r\n }\r\n get items(): SelectItem[] {\r\n return this._items;\r\n }\r\n private _items: SelectItem[];\r\n\r\n @Input()\r\n placeholder: string;\r\n\r\n @Input()\r\n label: string;\r\n\r\n @Input()\r\n maxWidthItems: string;\r\n\r\n @Input()\r\n type = 'default';\r\n\r\n @Input()\r\n callToAction: CalllToAction;\r\n\r\n @Input()\r\n preText: string;\r\n\r\n @Input()\r\n postText: string;\r\n\r\n @Input()\r\n alwaysOpen: boolean = false;\r\n\r\n openCategories = false;\r\n\r\n currentLabel: string = '';\r\n currentLabelIcon: string = '';\r\n\r\n @Input() maxWidth = '100%';\r\n\r\n @Output() selectValue = new EventEmitter<number>();\r\n\r\n @Output() clickOnCallToAction = new EventEmitter<any>();\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n this.currentLabel = this.placeholder;\r\n this.setInitialValues();\r\n }\r\n\r\n setInitialValues() {\r\n if (!this.items.length) {\r\n return;\r\n }\r\n\r\n const itemSelected: SelectItem = this.getItemSelected();\r\n this.setCurrentItem(itemSelected);\r\n }\r\n\r\n onClose() {\r\n this.openCategories = false;\r\n }\r\n\r\n customTB(index: number, item: SelectItem) {\r\n return item.id;\r\n }\r\n\r\n onSelectItem(index: number) {\r\n this.unselectAll();\r\n const itemSelected: SelectItem = this.items[index];\r\n this.setCurrentItem(itemSelected);\r\n this.selectValue.emit(index);\r\n }\r\n\r\n onClickCallToAction() {\r\n this.clickOnCallToAction.emit(this.callToAction.value);\r\n }\r\n\r\n private getItemSelected():SelectItem {\r\n let itemSelected: SelectItem = null;\r\n this.items.forEach(item => {\r\n if (!item.selected) {\r\n return;\r\n }\r\n itemSelected = item;\r\n });\r\n return itemSelected;\r\n }\r\n\r\n private setCurrentItem(itemSelected: SelectItem) {\r\n if (!itemSelected) {\r\n return;\r\n }\r\n itemSelected.selected = true;\r\n this.currentLabel = itemSelected.name;\r\n this.currentLabelIcon = itemSelected.icon;\r\n }\r\n\r\n private unselectAll() {\r\n this.items.forEach(item => item.selected = false);\r\n }\r\n}\r\n","<div class=\"wac-select-in-text\" wzAutoHide (clickOutside)=\"onClose()\" [ngStyle]=\"{ 'max-width': maxWidth }\" [zIndexToggle]=\"openCategories\">\r\n <div class=\"wac-select-in-text__prepend\" [innerHTML]=\"preText\" *ngIf=\"preText\"></div>\r\n <div #current class=\"wac-select-in-text__current\" (click)=\"openCategories = !openCategories\">\r\n <span>{{ currentLabel }}</span>\r\n <div\r\n class=\"wac-select-in-text__content\"\r\n [ngClass]=\"{ hidden: !openCategories && !alwaysOpen, open: type === 'open' }\"\r\n [ngStyle]=\"{ 'max-width': maxWidthItems }\"\r\n >\r\n <ng-scrollbar *ngIf=\"items.length > 0\">\r\n <div class=\"wac-select-in-text__content__item\" *ngFor=\"let item of items; trackBy : customTB; let index = index;\">\r\n <div [ngClass]=\"{ selected: item.selected }\" (click)=\"onSelectItem(index)\">\r\n <span class=\"icon\" [innerHTML]=\"item.icon\" *ngIf=\"item.icon\"></span>{{ item.name }}\r\n </div>\r\n </div>\r\n </ng-scrollbar>\r\n </div>\r\n </div>\r\n <div class=\"wac-select-in-text__after\" [innerHTML]=\"postText\" *ngIf=\"postText\"></div>\r\n</div>\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-multiple-search',\r\n templateUrl: './multiple-search.component.html'\r\n})\r\nexport class MultipleSearchComponent implements OnInit {\r\n @Input() options = [];\r\n @Input() alwaysOpen = false;\r\n label = '';\r\n placeholder = '';\r\n icon = '';\r\n query = '';\r\n search: any = '';\r\n openSelect = false;\r\n error = 'wac.simpleSearchComponent.error';\r\n showError = false;\r\n constructor(private translateService: TranslateService) {}\r\n\r\n ngOnInit(): void {\r\n this.setPlaceholder();\r\n this.setLabel();\r\n this.setQuery();\r\n this.setIcon();\r\n }\r\n\r\n setSearchValueToQuery(value) {\r\n if (value.code !== 'Enter') {\r\n this.search = encodeURI(value.target.value);\r\n } else {\r\n this.submitForm();\r\n }\r\n }\r\n\r\n submitForm() {\r\n if (this.search) {\r\n if (this.search.length > 0) {\r\n window.location.href = this.query.replace('{s}', this.search);\r\n } else {\r\n this.displayError();\r\n }\r\n } else {\r\n this.displayError();\r\n }\r\n }\r\n\r\n setPlaceholder(value?) {\r\n if (value) {\r\n this.placeholder = this.options[value].placeholder;\r\n } else {\r\n this.placeholder = this.options[0].placeholder;\r\n }\r\n }\r\n\r\n setLabel(value?) {\r\n if (value) {\r\n this.label = this.options[value].label;\r\n } else {\r\n this.label = this.options[0].label;\r\n }\r\n }\r\n\r\n setQuery(value?) {\r\n if (value) {\r\n this.query = this.options[value].queries;\r\n } else {\r\n this.query = this.options[0].queries;\r\n }\r\n }\r\n\r\n displayError() {\r\n this.showError = true;\r\n setTimeout(() => {\r\n this.hideError();\r\n }, 2000);\r\n }\r\n\r\n hideError() {\r\n this.showError = false;\r\n }\r\n\r\n setIcon(value?) {\r\n if (value) {\r\n this.icon = this.options[value].icon;\r\n } else {\r\n this.icon = this.options[0].icon;\r\n }\r\n }\r\n\r\n openFuncSelect() {\r\n this.openSelect = !this.openSelect;\r\n }\r\n\r\n closeSelect() {\r\n this.openSelect = false;\r\n }\r\n\r\n resetAllVue(value) {\r\n this.setPlaceholder(value);\r\n this.setLabel(value);\r\n this.setQuery(value);\r\n this.setIcon(value);\r\n this.search = '';\r\n this.closeSelect();\r\n }\r\n}\r\n","<div class=\"wac-multiple-search\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" [zIndexToggle]=\"openSelect\">\r\n <div class=\"wac-multiple-search__wrapper\">\r\n <div class=\"wac-multiple-search__wrapper__left\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" wzAutoHide (clickOutside)=\"closeSelect()\">\r\n <span>{{ label }}</span>\r\n <i class=\"fal fa-chevron-down\"></i>\r\n <div class=\"wac-multiple-search__wrapper__left__background\" (click)=\"openFuncSelect()\"></div>\r\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSelect || alwaysOpen\">\r\n <div\r\n class=\"wac-multiple-search__wrapper__left__select__item\"\r\n *ngFor=\"let option of options; let i = index\"\r\n [attr.data-index]=\"i\"\r\n (click)=\"resetAllVue(i); inputSearch.value = ''\"\r\n >\r\n <i [ngClass]=\"option.icon\"></i>\r\n <span>{{ option.label }}</span>\r\n <input type=\"hidden\" value=\"\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wac-multiple-search__wrapper__right\">\r\n <form [action]=\"query\" method=\"get\">\r\n <button type=\"submit\" (click)=\"submitForm()\"><i class=\"fal fa-search\"></i></button>\r\n <input #inputSearch type=\"text\" required [placeholder]=\"placeholder\" (keyup)=\"setSearchValueToQuery($event)\" />\r\n </form>\r\n </div>\r\n </div>\r\n <div class=\"wac-multiple-search__error\" *ngIf=\"showError\">{{ error | translate}}</div>\r\n</div>\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { MultipleSearchPlusOption } from './shared/multiple-search-plus-option.model';\r\nimport { MultipleSearchPlusResults } from './shared/multiple-search-plus-results.model';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-multiple-search-plus',\r\n templateUrl: './multiple-search-plus.component.html'\r\n})\r\nexport class MultipleSearchPlusComponent implements OnInit {\r\n\r\n currentOption:number;\r\n label = '';\r\n placeholder = '';\r\n openSelect = false;\r\n openSearchResults = false;\r\n\r\n isLoading = true;\r\n\r\n @Input() options:MultipleSearchPlusOption[];\r\n @Input() searchResults:MultipleSearchPlusResults[];\r\n @Input() disabled: boolean | string = false;\r\n @Input() hideResults: boolean | string = false;\r\n\r\n @Output() searchValue = new EventEmitter();\r\n @Output() optionsChange = new EventEmitter();\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n this.setCurrentOption();\r\n this.setPlaceholder();\r\n this.setLabel();\r\n }\r\n\r\n setSearchValue(value:any) {\r\n if(value.target.value != ''){\r\n this.openSearchResults = true;\r\n } else {\r\n this.openSearchResults = false;\r\n }\r\n this.searchValue.emit({ currentOption: this.options[this.currentOption].code, value: value.target.value });\r\n }\r\n\r\n setCurrentOption(value?:number) {\r\n this.currentOption = value || 0;\r\n }\r\n\r\n setPlaceholder(value?:number) {\r\n this.placeholder = value ? this.options[value].placeholder : this.options[0].placeholder;\r\n }\r\n\r\n setLabel(value?:number) {\r\n this.label = value ? this.options[value].label : this.options[0].label;\r\n }\r\n\r\n onToggleSelect() {\r\n this.openSelect = !this.openSelect;\r\n }\r\n\r\n closeSelect() {\r\n this.openSelect = false;\r\n }\r\n\r\n closeSearchResults() {\r\n this.openSearchResults = false;\r\n }\r\n\r\n resetAllVue(value:number) {\r\n this.searchResults = undefined;\r\n this.setCurrentOption(value);\r\n this.setPlaceholder(value);\r\n this.setLabel(value);\r\n this.openSearchResults = false;\r\n this.closeSelect();\r\n }\r\n\r\n addResult(index:number) {\r\n let alreadyExist = false;\r\n this.options[this.currentOption].table.forEach(elem => {\r\n if(elem.id == this.searchResults[index].id){\r\n alreadyExist = true;\r\n }\r\n });\r\n if(!alreadyExist) {\r\n this.options[this.currentOption].table.push(this.searchResults[index]);\r\n }\r\n this.resetAllVue(this.currentOption);\r\n this.optionsChange.emit({ currentOption: this.options[this.currentOption].code, action: 'add'});\r\n }\r\n\r\n deleteResult(indexItem:number, index:number) {\r\n this.options[index].table.splice(indexItem,1);\r\n this.optionsChange.emit({ currentOption: this.options[index].code, action: 'delete'});\r\n }\r\n}\r\n","<div class=\"wac-multiple-search-plus\" [zIndexToggle]=\"openSelect || openSearchResults\" [ngClass]=\"{ 'disabled': disabled }\">\r\n <!-- Multiple select with search input -->\r\n <div class=\"wac-multiple-search\" [ngClass]=\"{ open: openSelect }\">\r\n <div class=\"wac-multiple-search__wrapper\">\r\n <div class=\"wac-multiple-search__wrapper__left\" *ngIf=\"options.length > 1\" [ngClass]=\"{ open: openSelect }\" wzAutoHide (clickOutside)=\"closeSelect()\">\r\n <span>{{ label }}</span>\r\n <i class=\"fal fa-chevron-down\"></i>\r\n <div class=\"wac-multiple-search__wrapper__left__background\" (click)=\"onToggleSelect()\"></div>\r\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSelect\">\r\n <div\r\n class=\"wac-multiple-search__wrapper__left__select__item\"\r\n *ngFor=\"let option of options; let i = index\"\r\n [attr.data-index]=\"i\"\r\n (click)=\"resetAllVue(i); inputSearch.value = ''\"\r\n >\r\n <span>{{ option.label }}</span>\r\n <input type=\"hidden\" value=\"\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wac-multiple-search__wrapper__right\" wzAutoHide (clickOutside)=\"closeSearchResults()\">\r\n <button><i class=\"fal fa-search\"></i></button>\r\n <input\r\n #inputSearch\r\n type=\"text\"\r\n [placeholder]=\"placeholder\"\r\n debounceKeyUp\r\n [debounceTime]=\"500\"\r\n (onEventChange)=\"setSearchValue($event)\"\r\n />\r\n <div class=\"wac-multiple-search__wrapper__left__select\" *ngIf=\"openSearchResults\">\r\n <div\r\n class=\"wac-multiple-search__wrapper__left__select__item\"\r\n *ngFor=\"let res of searchResults; let i = index\"\r\n (click)=\"addResult(i); inputSearch.value = ''\"\r\n >\r\n <wac-image *ngIf=\"res.image\" [src]=\"res.image\"></wac-image>\r\n <wac-text>#{{ res.id }} {{ res.name }}</wac-text>\r\n </div>\r\n <div class=\"wac-table__body__loader\" *ngIf=\"isLoading && !searchResults\">\r\n <wac-loader [small]=\"true\"></wac-loader>\r\n </div>\r\n <div\r\n class=\"wac-multiple-search__wrapper__left__select__item\"\r\n *ngIf=\"!searchResults?.length\"\r\n >\r\n <span>{{'wac.datatable.noresult' | translate}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Results checked -->\r\n <div *ngFor=\"let option of options; let i = index\">\r\n <div class=\"wac-multiple-search-plus__wrapper\" *ngIf=\"option.table.length && !hideResults\">\r\n <wac-h3>{{ option.title }}</wac-h3>\r\n <div class=\"wac-multiple-search-plus__wrapper__block hover default\" *ngFor=\"let item of option.table; let indexItem = index\">\r\n <wac-image *ngIf=\"item.image\" [src]=\"item.image\"></wac-image>\r\n <wac-text>{{ item.name }}</wac-text>\r\n <span (click)=\"deleteResult(indexItem, i)\"><i class=\"fas fa-times\"></i></span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-label',\r\n templateUrl: './label.component.html',\r\n host: {\r\n 'class': 'wac-label'\r\n }\r\n})\r\nexport class LabelComponent implements OnInit {\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<ng-content></ng-content>","import { Component, ContentChild, ViewEncapsulation } from '@angular/core';\r\nimport { LabelComponent } from '../../common/label/label.component';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'wac-input-with-select',\r\n templateUrl: './input-with-select.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n standalone: true,\r\n imports: [CommonModule]\r\n})\r\nexport class InputWithSelectComponent {\r\n @ContentChild(LabelComponent) label: LabelComponent;\r\n}\r\n","<p *ngIf=\"!!label\" class=\"wac-select__label\">\r\n <ng-content select=\"wac-label, .wac-label\" ></ng-content>\r\n</p>\r\n\r\n<div class=\"wac-input-with-select\">\r\n <div class=\"wac-input-with-select__wrapper\">\r\n <div class=\"wac-input-with-select__wrapper__left\">\r\n <ng-content select=\"input\"></ng-content>\r\n <ng-content select=\"wac-select\"></ng-content>\r\n </div>\r\n <div class=\"wac-input-with-select__wrapper__right\">\r\n <ng-content select=\"[text]\"></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { DomService } from '../../services/dom.service';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-popin',\r\n templateUrl: './popin.component.html'\r\n})\r\nexport class PopinComponent implements OnInit {\r\n @Input()\r\n title: string;\r\n\r\n @Input()\r\n content: string;\r\n\r\n @Input()\r\n imgSrc: string;\r\n\r\n @Input()\r\n okButtonLabel: string;\r\n\r\n @Input()\r\n koButtonLabel: string;\r\n\r\n @Input()\r\n okButtonClass: string;\r\n\r\n @Input()\r\n koButtonClass: string;\r\n\r\n @Input()\r\n visible = false;\r\n\r\n @Output()\r\n visibleChange = new EventEmitter();\r\n\r\n @Output()\r\n response = new EventEmitter();\r\n\r\n @Input()\r\n background = true;\r\n\r\n @Input()\r\n closeOnBackgroundClick: boolean = true;\r\n\r\n firstOpen = false;\r\n\r\n constructor(private domService: DomService) { }\r\n\r\n ngOnInit() {\r\n this.domService.setDocumentEventListener();\r\n }\r\n\r\n validatePopin() {\r\n this.response.emit(true);\r\n this.closePopin();\r\n }\r\n\r\n refusePopin(){\r\n this.response.emit(false);\r\n this.closePopin();\r\n }\r\n\r\n closePopin(clickOnBackground: boolean = false) {\r\n if (!this.closeOnBackgroundClick && clickOnBackground) {\r\n return;\r\n }\r\n if (!this.firstOpen){ //trick for auto-hide directive that close immediatly the pop-in\r\n this.visible = false;\r\n this.visibleChange.emit(this.visible);\r\n this.firstOpen = true;\r\n } else {\r\n this.firstOpen = false;\r\n }\r\n }\r\n}\r\n","<div class=\"wac-free\" *ngIf=\"visible\">\r\n <div class=\"wac-free__wrapper\" wzAutoHide (clickOutside)=\"closePopin(true)\">\r\n <a class=\"wac-free__wrapper__button-close\" (click)=\"closePopin()\">\r\n <i class=\"fas fa-times\"></i>\r\n </a>\r\n <div class=\"wac-free__wrapper__content\">\r\n <ng-scrollbar>\r\n <img *ngIf=\"imgSrc\" [src]=\"imgSrc\" alt=\"barre admin\" />\r\n\r\n <h2 class=\"wac-popin__wrapper__title\" [innerHTML]=\"title\"></h2>\r\n\r\n <p class=\"wac-popin__wrapper__text\" [innerHTML]=\"content\"></p>\r\n </ng-scrollbar>\r\n </div>\r\n <div class=\"wac-free__wrapper__buttons\">\r\n <div class=\"wac-free__wrapper__buttons__button\" *ngIf=\"okButtonLabel\">\r\n <wac-button [extraClasses]=\"'is-success'\" [label]=\"okButtonLabel\" [hasLoader]=\"true\" (click)=\"validatePopin()\"></wac-button>\r\n </div>\r\n <div class=\"wac-free__wrapper__buttons__button\" *ngIf=\"koButtonLabel\">\r\n <wac-button [extraClasses]=\"'is-danger is-outlined'\" [label]=\"koButtonLabel\" [hasLoader]=\"true\" (click)=\"refusePopin()\"></wac-button>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wac-free__background\" *ngIf=\"background\"></div>\r\n</div>\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { DomService } from '../../services/dom.service';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-free-popin',\r\n templateUrl: './free-popin.component.html'\r\n})\r\nexport class FreePopinComponent implements OnInit {\r\n @Input()\r\n okButtonLabel: string;\r\n\r\n @Input()\r\n koButtonLabel: string;\r\n\r\n @Input()\r\n visible = false;\r\n\r\n @Input()\r\n disableCloseOutside = false;\r\n\r\n @Output()\r\n visibleChange = new EventEmitter();\r\n\r\n @Output()\r\n response = new EventEmitter();\r\n\r\n @Input()\r\n background = true;\r\n\r\n @Input()\r\n zIndex: number = 9999;\r\n\r\n firstOpen = true;\r\n\r\n constructor(private domService: DomService) { }\r\n\r\n ngOnInit() {\r\n if (this.visible) {\r\n this.firstOpen = false;\r\n }\r\n this.domService.setDocumentEventListener();\r\n }\r\n\r\n validatePopin() {\r\n this.response.emit(true);\r\n this.closePopin();\r\n }\r\n\r\n refusePopin(){\r\n this.response.emit(false);\r\n this.closePopin();\r\n }\r\n\r\n closePopin() {\r\n if (!this.firstOpen || this.disableCloseOutside) {\r\n this.visible = false;\r\n this.visibleChange.emit(this.visible);\r\n this.firstOpen = true;\r\n } else {\r\n this.firstOpen = false;\r\n }\r\n }\r\n}\r\n","<div class=\"wac-free-popin\" *ngIf=\"visible\" [ngStyle]=\"{'z-index': zIndex}\">\r\n <div class=\"wac-free-popin__wrapper\" wzAutoHide (clickOutside)=\"!disableCloseOutside ? closePopin() : ''\">\r\n <a class=\"wac-free-popin__wrapper__button-close\" (click)=\"closePopin()\">\r\n <i class=\"fas fa-times\"></i>\r\n </a>\r\n <div class=\"wac-free-popin__wrapper__content\">\r\n <ng-scrollbar>\r\n <ng-content></ng-content>\r\n </ng-scrollbar>\r\n </div>\r\n <div class=\"wac-free-popin__wrapper__buttons\">\r\n <div class=\"wac-free-popin__wrapper__buttons__button\" *ngIf=\"okButtonLabel\">\r\n <wac-button [extraClasses]=\"'is-success'\" [label]=\"okButtonLabel\" [hasLoader]=\"true\" (click)=\"validatePopin()\"></wac-button>\r\n </div>\r\n <div class=\"wac-free-popin__wrapper__buttons__button\" *ngIf=\"koButtonLabel\">\r\n <wac-button [extraClasses]=\"'is-danger is-outlined'\" [label]=\"koButtonLabel\" [hasLoader]=\"true\" (click)=\"refusePopin()\"></wac-button>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wac-free-popin__background\" *ngIf=\"background\"></div>\r\n</div>\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'wac-block-separator',\r\n template: ``,\r\n encapsulation: ViewEncapsulation.None,\r\n standalone: true\r\n})\r\n\r\nexport class BlockSeparatorComponent {\r\n\r\n constructor() { }\r\n\r\n}","import { CommonModule } from '@angular/common';\r\nimport { AfterViewInit, ChangeDetectionStrategy, Component, ContentChildren, ElementRef, HostBinding, Input, QueryList, Renderer2, ViewEncapsulation } from '@angular/core';\r\nimport { Subject, takeUntil } from 'rxjs';\r\nimport { BlockSeparatorComponent } from './separator/block-separator.component';\r\n\r\nexport type WacBlockConfig = Readonly<{\r\n borderRadius?: string;\r\n}>;\r\n\r\n@Component({\r\n selector: 'wac-block',\r\n templateUrl: './block.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: true,\r\n imports: [CommonModule]\r\n})\r\nexport class BlockComponent implements AfterViewInit {\r\n\r\n // todo optimize render, add a call by default remove at the end, and add block in correct order, use debugger to help\r\n\r\n @ContentChildren(BlockSeparatorComponent) blockSeparators: QueryList<BlockSeparatorComponent>;\r\n\r\n @Input()\r\n config: WacBlockConfig = {\r\n borderRadius: '3px'\r\n }\r\n\r\n @HostBinding('style') get borderRadius() {\r\n return `--wac-block-border-radius: ${this.config.borderRadius ? this.config.borderRadius : '3px'};`;\r\n }\r\n\r\n destroy$ = new Subject<void>();\r\n\r\n constructor(\r\n private renderer2: Renderer2,\r\n private wacBlockElementRef: ElementRef\r\n ) {}\r\n\r\n ngAfterViewInit() {\r\n const groupedNodesList = this.getSeparatedGroupedOfNodes(this.wacBlockElementRef.nativeElement.childNodes);\r\n this.attachSeparatedBlocksToTheDom(groupedNodesList, this.wacBlockElementRef.nativeElement);\r\n\r\n this.blockSeparators\r\n .changes.pipe(takeUntil(this.destroy$))\r\n .subscribe(() => {\r\n this.handleAddedSeparator();\r\n setTimeout(() => { // wait next render, because, Angular will remove child separator after this function is called\r\n this.handleRemovedSeparator();\r\n }, 0);\r\n\r\n });\r\n }\r\n\r\n private handleRemovedSeparator() {\r\n const wacBlockComponentChildNodes = this.wacBlockElementRef.nativeElement.childNodes;\r\n for (let i = 0; i < wacBlockComponentChildNodes.length; i++) {\r\n\r\n const childNode = wacBlockComponentChildNodes[i];\r\n const nextChild = wacBlockComponentChildNodes[i + 1];\r\n const areWacBlockSideBySide = nextChild && childNode.classList.contains('wac-block') && nextChild.classList.contains('wac-block');\r\n\r\n if (!areWacBlockSideBySide) {\r\n continue;\r\n }\r\n\r\n const parentElement = this.wacBlockElementRef.nativeElement;\r\n this.fusionNextBlockWithCurrentBlock(parentElement, nextChild, childNode);\r\n i--; // we remove a child, so we need to go back to the previous index\r\n\r\n }\r\n }\r\n\r\n private fusionNextBlockWithCurrentBlock(parentElement: any, nextChild: any, childNode: any) {\r\n parentElement.removeChild(nextChild); // not working with renderer2, it just freeze the app\r\n childNode.append(...nextChild.childNodes);\r\n }\r\n\r\n private handleAddedSeparator() {\r\n const wacBlockComponentChildNodes = [...this.wacBlockElementRef.nativeElement.childNodes];\r\n\r\n for (let i = 0; i < wacBlockComponentChildNodes.length; i++) {\r\n const childNode = wacBlockComponentChildNodes[i];\r\n if (childNode.nodeName === 'WAC-BLOCK-SEPARATOR') {\r\n continue;\r\n }\r\n if (!this.hasBlockSeparator(childNode.childNodes)) {\r\n continue;\r\n }\r\n\r\n const groupedNodesList = this.getSeparatedGroupedOfNodes(childNode.childNodes);\r\n groupedNodesList.shift(); // remove first group, it's the current block\r\n\r\n this.attachSeparatedBlocksToTheDom(groupedNodesList, this.wacBlockElementRef.nativeElement, wacBlockComponentChildNodes[i + 1]);\r\n }\r\n }\r\n\r\n private hasBlockSeparator(childNodes: any) {\r\n return [...childNodes].some(groupedNodes => groupedNodes?.nodeName === 'WAC-BLOCK-SEPARATOR');\r\n }\r\n\r\n private attachSeparatedBlocksToTheDom(groupedNodesList: any[], parentElement: any, nextElement?: any) {\r\n for (let index = 0; index < groupedNodesList.length; index++) {\r\n const groupedNodes = groupedNodesList[index];\r\n\r\n if (groupedNodes[0]?.nodeName === 'WAC-BLOCK-SEPARATOR') {\r\n this.attachToTheDom(groupedNodes[0], parentElement, nextElement);\r\n\r\n continue;\r\n }\r\n const separatedWacBlock = document.createElement('div');\r\n separatedWacBlock.classList.add('wac-block');\r\n groupedNodes.forEach(node => {\r\n separatedWacBlock.appendChild(node);\r\n });\r\n this.attachToTheDom(separatedWacBlock, parentElement, nextElement);\r\n }\r\n }\r\n\r\n private attachToTheDom(child:any, parentElement:any, nextElement?:any) {\r\n if (nextElement) {\r\n this.renderer2.insertBefore(parentElement, child, nextElement, true);\r\n } else {\r\n this.renderer2.appendChild(parentElement, child);\r\n }\r\n }\r\n\r\n\r\n private getSeparatedGroupedOfNodes(childNodes: any) {\r\n const groupedNodesList = [];\r\n let followingNodes = [];\r\n\r\n for (const node of childNodes) {\r\n\r\n if (node.nodeName === 'WAC-BLOCK-SEPARATOR') {\r\n groupedNodesList.push(followingNodes, [node]); // close a group and start a new one\r\n followingNodes = [];\r\n continue;\r\n }\r\n\r\n followingNodes.push(node);\r\n\r\n }\r\n\r\n if (followingNodes.length) {\r\n groupedNodesList.push(followingNodes);\r\n }\r\n return groupedNodesList;\r\n }\r\n\r\n ngOnDesTroy() {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n}\r\n\r\n","<ng-content></ng-content>","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-wrapper',\r\n templateUrl: './wrapper.component.html'\r\n})\r\nexport class WrapperComponent implements OnInit {\r\n @Input()\r\n size = 'fullsize';\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","<div class=\"wac-wrapper\" [ngClass]=\"{ fullsize: size === 'fullsize', 'max-width': size === 'max-width' }\">\r\n <ng-content></ng-content>\r\n</div>\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { FilterItem } from './filter-item.dto';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-filters',\r\n templateUrl: './filters.component.html'\r\n})\r\nexport class FiltersComponent implements OnInit {\r\n\r\n @Input()\r\n options: FilterItem[];\r\n\r\n @Input()\r\n labelRestart: string = 'Afficher toutes les catégories';\r\n\r\n @Output()\r\n filterChange = new EventEmitter<number>();\r\n\r\n filterActiveIndex?: string;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n this.options.forEach((item, index) => {\r\n\r\n if (item.active) {\r\n this.filterActiveIndex = '' + index;\r\n }\r\n });\r\n\r\n }\r\n\r\n activeFilter(index: number) {\r\n this.options[index].active = true;\r\n this.filterActiveIndex = '' + index;\r\n this.filterChange.emit(index);\r\n }\r\n\r\n resetFilter() {\r\n this.options.forEach((item) => {\r\n item.active = false;\r\n });\r\n this.filterActiveIndex = null;\r\n this.filterChange.emit(-1);\r\n }\r\n}\r\n","<div class=\"wac-filters\">\r\n <div class=\"wac-filters__wrapper\" *ngIf=\"!filterActiveIndex\">\r\n <button *ngFor=\"let option of options; let i = index\">\r\n <span class=\"event\" (click)=\"activeFilter(i)\"></span><span [innerHTML]=\"option.name\"></span>\r\n </button>\r\n </div>\r\n <div class=\"wac-filters__wrapper\" *ngIf=\"filterActiveIndex\">\r\n <button (click)=\"resetFilter()\" class=\"active\">\r\n <i class=\"fas fa-times\"></i><span [innerHTML]=\"options[filterActiveIndex].name\"></span>\r\n </button>\r\n <span (click)=\"resetFilter()\">{{ labelRestart }}</span>\r\n </div>\r\n</div>\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-wrapper-blocs',\r\n templateUrl: './wrapper-blocs.component.html'\r\n})\r\nexport class WrapperBlocsComponent implements OnInit {\r\n @Input()\r\n sidebar = false;\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<div class=\"wac-wrapper-blocs\" [ngClass]=\"{'sidebar': sidebar}\">\r\n <ng-content></ng-content>\r\n</div>\r\n","import { Component, Input, OnInit, Output, ViewEncapsulation, EventEmitter } from '@angular/core';\r\nimport { animate, state, style, transition, trigger } from '@angular/animations';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'wac-snackbar',\r\n templateUrl: './snackbar.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n animations: [\r\n trigger('state', [\r\n state(\r\n 'void',\r\n style({\r\n bottom: '-100px'\r\n })\r\n ),\r\n state(\r\n 'inactive',\r\n style({\r\n bottom: '-100px'\r\n })\r\n ),\r\n state(\r\n 'active',\r\n style({\r\n bottom: '0px'\r\n })\r\n ),\r\n transition('void => active', animate(300)),\r\n transition('active => inactive', animate(300))\r\n ])\r\n ],\r\n standalone: true,\r\n imports: [CommonModule]\r\n})\r\nexport class SnackbarComponent implements OnInit {\r\n\r\n @Input() message: string;\r\n @Input() textButtonOk?: string;\r\n @Input() textButtonKo?: string;\r\n @Input() duration?: number;\r\n @Input() color?: string;\r\n @Input() buttonColor?: string;\r\n\r\n @Input() visible = false;\r\n @Output() visibleChange = new EventEmitter();\r\n\r\n @Output() response = new EventEmitter();\r\n\r\n private manualClose = false;\r\n\r\n private timer: any;\r\n\r\n ngOnInit() {\r\n if (this.duration > 0) {\r\n this.timer = setTimeout(() => this.manualClose = true, this.duration);\r\n }\r\n }\r\n\r\n validate(){\r\n this.response.emit(true);\r\n this.closeSnackbar();\r\n this.manualClose = true;\r\n }\r\n\r\n refuse(){\r\n this.response.emit(false);\r\n this.closeSnackbar();\r\n this.manualClose = true;\r\n }\r\n\r\n closeSnackbar(){\r\n this.visible = false;\r\n this.visibleChange.emit(this.visible);\r\n }\r\n\r\n}\r\n","<div class=\"wac-snackbar\">\r\n <div [class]=\"'notification is-active ' + ((color) ? color : 'is-transparent')\"\r\n [@state]=\"visible ? 'active': 'inactive'\"\r\n >\r\n <div class=\"columns\">\r\n <div class=\"column notification--message\" [ngClass]=\"{'is-half': textButtonOk}\"\r\n [innerHTML]=\"message\">\r\n </div>\r\n <div class=\"column is-half\">\r\n <button [class]=\"'button ' + ((buttonColor) ? buttonColor : 'is-success')\"\r\n (click)=\"validate()\">{{textButtonOk}}\r\n </button>\r\n <button [class]=\"'button ' + ((buttonColor) ? buttonColor : 'is-success')\"\r\n (click)=\"refuse()\">{{textButtonKo}}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Observable, Subject } from 'rxjs';\r\nimport { AlertPopupConfig } from './alert-popup.service';\r\nimport {AfterViewInit, Component, OnInit, ViewEncapsulation} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-alert-popup',\r\n templateUrl: './alert-popup.component.html',\r\n host: {\r\n class: 'wac-alert-popup'\r\n },\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AlertPopupComponent implements AfterViewInit {\r\n config: AlertPopupConfig;\r\n\r\n /** Subject for notifying the user that the dialog has finished closing. */\r\n private afterClosedPopup: Subject<any> = new Subject();\r\n\r\n open = false;\r\n\r\n private timer: any;\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.open = true;\r\n }, 50);\r\n\r\n if (this.config.duration > 0) {\r\n this.timer = setTimeout(() => this.dismiss(), this.config.duration);\r\n }\r\n }\r\n\r\n dismiss() {\r\n this.open = false;\r\n\r\n setTimeout(() => {\r\n this.afterClosedPopup.next(true);\r\n this.afterClosedPopup.complete();\r\n }, 200);\r\n }\r\n\r\n /**\r\n * Gets an observable that is notified when the dialog is finished closing.\r\n */\r\n afterClosed(): Observable<any> {\r\n return this.afterClosedPopup.asObservable();\r\n }\r\n}\r\n","<div\r\n [class]=\"'alert ' + ((config.color) ? config.color : ' is-primary') + ((config.extraClasses) ? ' ' + config.extraClasses : '') + ((config.position) ? ' ' + config.position : '') + ((config.fullsize) ? ' fullsize' : '') + ((config.opacity) ? ' opacity-active' : '') + ((config.small) ? ' small' : '') + ((config.icon) ? ' with-icon' : '') + ((config.duration) ? '' : ' no-duration')\"\r\n [ngClass]=\"{'is-active': open, 'has-close': config.closeButton}\"\r\n>\r\n <div class=\"alert--message\">\r\n <span class=\"icon\" *ngIf=\"config.icon\">\r\n <i [class]=\"config.icon\"></i>\r\n </span>\r\n <span (click)=\"dismiss()\" class=\"wac-alert-popup__close\" *ngIf=\"!config.small || (config.small && config.closeButton)\"><i class=\"far fa-times\"></i></span>\r\n <p *ngIf=\"config.title\" class=\"wac-alert-popup__title\" [innerHTML]=\"config.title\"></p>\r\n <p *ngIf=\"config.message\" class=\"wac-alert-popup__text\" [innerHTML]=\"config.message\"></p>\r\n </div>\r\n</div>\r\n","import { Injectable } from '@angular/core';\r\nimport { AlertPopupComponent } from './alert-popup.component';\r\nimport {DomService} from '../../services/dom.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AlertPopupService {\r\n constructor(private domService: DomService) {}\r\n\r\n open(config: AlertPopupConfig): AlertPopupComponent {\r\n const componentRef = this.getComponentRef(config);\r\n\r\n return componentRef.instance;\r\n }\r\n\r\n private getComponentRef(config: AlertPopupConfig) {\r\n const componentRef = this.domService.attachComponentPortal(AlertPopupComponent);\r\n\r\n config = Object.assign(\r\n {\r\n position: 'is-top'\r\n },\r\n config\r\n );\r\n\r\n componentRef.instance.config = config;\r\n\r\n componentRef.instance.afterClosed().subscribe(() => {\r\n componentRef.destroy();\r\n });\r\n\r\n return componentRef;\r\n }\r\n}\r\n\r\nexport interface AlertPopupConfig {\r\n message: string;\r\n title?: string;\r\n icon?: string;\r\n color?: string;\r\n position?: string;\r\n duration?: number;\r\n extraClasses?: string;\r\n fullsize?: boolean;\r\n opacity?: boolean;\r\n small?: boolean;\r\n closeButton?: boolean;\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AlertPopupService } from './alert-popup.service';\r\nimport { AlertPopupComponent } from './alert-popup.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n providers: [AlertPopupService],\r\n declarations: [AlertPopupComponent],\r\n exports: [AlertPopupComponent]\r\n})\r\nexport class AlertPopupModule {}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {SearchOption} from './shared/search-option.model';\r\nimport {SelectItem} from '../select/select-items.dto';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-search',\r\n templateUrl: './search.component.html'\r\n})\r\nexport class SearchComponent implements OnInit {\r\n\r\n @Input() placeholder: string;\r\n @Input() alwaysOpen = false;\r\n @Input() label: string;\r\n @Input() options: SearchOption[];\r\n @Input() disableSearchIn = false;\r\n @Input() emptyResult = '';\r\n search: any = '';\r\n openSelect = false;\r\n triggerOptions: SearchOption[];\r\n @Output() selectValue = new EventEmitter<number>();\r\n @Output() searchKeyUp = new EventEmitter<string>();\r\n @Output() searchFocusOut = new EventEmitter<string>();\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.triggerOptions = this.options;\r\n }\r\n\r\n onClose() {\r\n this.openSelect = false;\r\n }\r\n\r\n setSearchValueToQuery(value) {\r\n this.search = value.target.value;\r\n if (this.disableSearchIn) {\r\n this.triggerOptions = this.options;\r\n } else {\r\n if (this.search.length > 0) {\r\n this.openSelect = true;\r\n this.triggerOptions = this.options.filter(element => element.label.toLowerCase().indexOf(this.search.toLowerCase()) !== -1);\r\n } else {\r\n this.triggerOptions = this.options;\r\n }\r\n }\r\n this.searchKeyUp.emit(this.search);\r\n }\r\n\r\n sendEventFocusOut() {\r\n this.searchFocusOut.emit(this.search);\r\n }\r\n\r\n closeSelect() {\r\n this.openSelect = false;\r\n }\r\n\r\n onSelectItem(index: number, value: number, label: string) {\r\n this.search = '';\r\n this.openSelect = false;\r\n if (this.disableSearchIn) {\r\n this.selectValue.emit(index);\r\n } else {\r\n const findInOption = this.options.findIndex(element => element.label === label && element.id === value);\r\n this.selectValue.emit(findInOption);\r\n }\r\n }\r\n\r\n resetAllVue() {\r\n this.search = '';\r\n this.closeSelect();\r\n }\r\n\r\n}\r\n","<div class=\"wac-search\" [ngClass]=\"{ open: openSelect || alwaysOpen }\" [zIndexToggle]=\"openSelect\" wzAutoHide (clickOutside)=\"closeSelect()\">\r\n <div class=\"wac-search__wrapper\">\r\n <button><i class=\"fal fa-search\"></i></button>\r\n <input [value]=\"search\" type=\"text\" required [placeholder]=\"placeholder\" (focus)=\"openSelect = true;\" (focusout)=\"sendEventFocusOut()\" (keyup)=\"setSearchValueToQuery($event)\" />\r\n </div>\r\n <div class=\"wac-search__absolute\" *ngIf=\"triggerOptions\" [ngClass]=\"{'hidden': !openSelect}\">\r\n <ng-scrollbar *ngIf=\"triggerOptions.length > 0\">\r\n <div (click)=\"onClose()\" class=\"wac-select__content__item\" *ngFor=\"let item of triggerOptions; let index = index;\">\r\n <div [ngClass]=\"{ selected: item.checked }\" (click)=\"onSelectItem(index, item.id, item.label)\">\r\n {{ item.label }}\r\n </div>\r\n </div>\r\n </ng-scrollbar>\r\n <div class=\"wac-select__content__empty\" *ngIf=\"triggerOptions.length === 0\">\r\n <span *ngIf=\"emptyResult\">{{emptyResult}}</span>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { SelectedListOption } from '../../components/selected-list/shared/selected-list-option.model';\r\n\r\n@Pipe({\r\n standalone: false,\r\n name: 'areAllOptionsSelected',\r\n pure: false\r\n})\r\n\r\nexport class AreAllOptionsSelectedPipe implements PipeTransform {\r\n transform(options: SelectedListOption[]): boolean {\r\n return !options.some(option => !option.checked);\r\n }\r\n}","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {SelectedListOption} from './shared/selected-list-option.model';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-selected-list',\r\n templateUrl: './selected-list.component.html',\r\n})\r\nexport class SelectedListComponent implements OnInit {\r\n\r\n @Input() options: SelectedListOption[] = [];\r\n @Input() label: string;\r\n @Input() textSelectAll: string;\r\n @Input() textUnSelectAll: string;\r\n @Input() enableSelectAll = true;\r\n @Output() selectedItemsIndex = new EventEmitter<number>();\r\n @Output() selectedItemsAll = new EventEmitter<number[]>();\r\n @Output() unSelectedItemsAll = new EventEmitter<number[]>();\r\n\r\n selectedOptionIndex = [];\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onSelectAll() {\r\n this.selectedOptionIndex = this.options.map((option, index) => {\r\n option.checked = true;\r\n return index;\r\n });\r\n this.selectedItemsAll.emit(this.selectedOptionIndex);\r\n }\r\n\r\n onUnSelectAll() {\r\n this.selectedOptionIndex = this.options.map((option, index) => {\r\n option.checked = false;\r\n return index;\r\n });\r\n this.unSelectedItemsAll.emit(this.selectedOptionIndex);\r\n }\r\n\r\n onSelectItem(index: number) {\r\n this.options[index].checked = !this.options[index].checked;\r\n this.selectedItemsIndex.emit(index);\r\n }\r\n\r\n areAllOptionsChecked() {\r\n return !this.options.some(option => !option.checked);\r\n }\r\n\r\n}\r\n","<div class=\"selected-list\">\r\n <div class=\"selected-list__wrapper\">\r\n <div class=\"selected-list__wrapper__head\">\r\n <p *ngIf=\"label\" [innerHTML]=\"label\"></p>\r\n <ng-container *ngVar=\"(options | areAllOptionsSelected) as areAllOptionsSelected\">\r\n <ng-container *ngIf=\"textSelectAll && !areAllOptionsSelected\">\r\n\r\n <div class=\"selected-list__wrapper__head__button\">\r\n\r\n <div class=\"selected-list__wrapper__head__button__notMobile\">\r\n <wac-button\r\n [label]=\"textSelectAll\"\r\n (click)=\"onSelectAll()\"\r\n >\r\n </wac-button>\r\n </div>\r\n\r\n <div class=\"selected-list__wrapper__head__button__mobile\">\r\n <wac-button\r\n [extraClasses]=\"'is-grey'\"\r\n [icon]=\"'fad fa-check-double'\"\r\n (click)=\"onSelectAll()\"\r\n >\r\n </wac-button>\r\n </div>\r\n\r\n </div>\r\n\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"textUnSelectAll && areAllOptionsSelected\">\r\n\r\n <div class=\"selected-list__wrapper__head__button\">\r\n\r\n <div class=\"selected-list__wrapper__head__button__notMobile\">\r\n <wac-button\r\n [extraClasses]=\"'is-info'\"\r\n [label]=\"textUnSelectAll\"\r\n (click)=\"onUnSelectAll()\"\r\n >\r\n </wac-button>\r\n </div>\r\n\r\n <div class=\"selected-list__wrapper__head__button__mobile\">\r\n <wac-button\r\n [extraClasses]=\"'is-grey'\"\r\n [icon]=\"'fad fa-check-double'\"\r\n (click)=\"onUnSelectAll()\"\r\n >\r\n </wac-button>\r\n </div>\r\n\r\n </div>\r\n\r\n </ng-container>\r\n\r\n </ng-container>\r\n\r\n </div>\r\n <div class=\"selected-list__wrapper__content\">\r\n <div class=\"selected-list__wrapper__content__item\" *ngFor=\"let item of options;let i = index;\" [ngClass]=\"{'active': item.checked}\" (click)=\"onSelectItem(i)\">\r\n <span [innerHTML]=\"item.label\"></span>\r\n <i class=\"fas fa-check\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { ChangeDetectionStrategy, Component, Input, TemplateRef, ViewEncapsulation } from '@angular/core';\r\nimport { RecursifDto } from './tree.dto';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-tree',\r\n templateUrl: 'tree.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\n\r\nexport class TreeComponent<Tree extends RecursifDto<Tree>> {\r\n\r\n // https://indepth.dev/posts/1405/ngtemplateoutlet\r\n\r\n constructor() { }\r\n /**\r\n *! items sould include RecursifDto interface\r\n */\r\n @Input() items: Tree[];\r\n @Input() treeDepth:number = 0;\r\n @Input() optionTemplate: TemplateRef<any>;\r\n @Input() trackByFn: (index: number, item: Tree) => any = (index, item) => item;\r\n\r\n}","<ul [ngClass]=\"['treeDepth-' + treeDepth]\">\r\n <li *ngFor=\"let item of items; let index = index; trackBy: trackByFn\">\r\n\r\n <ng-template #defaultItem>\r\n {{ item?.treeLabel }}\r\n </ng-template>\r\n\r\n <ng-container\r\n [ngTemplateOutlet]=\"optionTemplate || defaultItem\"\r\n [ngTemplateOutletContext]=\"{ $implicit: item, index: index }\"\r\n >\r\n </ng-container>\r\n\r\n <wac-tree [optionTemplate]=\"optionTemplate\" [items]=\"item.treeChildren\" *ngIf=\"item.treeChildren?.length\" [treeDepth]=\"treeDepth + 1\"></wac-tree>\r\n </li>\r\n</ul>","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n standalone: false,\r\n name: 'formatObjectToRecursifTree'\r\n})\r\n\r\nexport class FormatObjectToRecursifTreePipe implements PipeTransform {\r\n\r\n childrenProperties: string[] = [];\r\n\r\n transform(objectList:any[], childrenProperties: string[]): any {\r\n this.childrenProperties = childrenProperties;\r\n const treeDepth = 0;\r\n\r\n objectList.forEach(object => this.recursiveFormatObjectToRecursifTree(object, treeDepth));\r\n\r\n return objectList;\r\n }\r\n\r\n private recursiveFormatObjectToRecursifTree(object: any, treeDepth:number): any {\r\n for (const childrenProperty of this.childrenProperties) {\r\n\r\n object.hasTreeChildren = true;\r\n\r\n if (!object.hasOwnProperty(childrenProperty)) {\r\n // No more chrildren\r\n object.hasTreeChildren = false;\r\n continue;\r\n }\r\n\r\n if (!Array.isArray(object[childrenProperty])) {\r\n throw `Property : \"${childrenProperty}\", is not an array. it could not be transform to a recursive list.`;\r\n }\r\n // Add treeChildren property filled with name children property\r\n object.treeChildren = object[childrenProperty];\r\n // call this function recursively until no children can be generated\r\n this.recursiveFormatObjectToRecursifTree(object.treeChildren, treeDepth++);\r\n break;\r\n }\r\n\r\n object.treeDepth = treeDepth;\r\n }\r\n}","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n standalone: false,\r\n name: 'formatObjectToSimpleTree'\r\n})\r\n\r\nexport class FormatObjectToSimpleTreePipe implements PipeTransform {\r\n\r\n private childrenProperties: string[] = [];\r\n private labelProperties: string[] = [];\r\n\r\n transform(objectList:any[], childrenProperties: string[], labelProperties: string[]): any {\r\n\r\n this.childrenProperties = childrenProperties;\r\n this.labelProperties = labelProperties;\r\n const treeDepth = 0;\r\n\r\n objectList.forEach(object => this.recursiveFormatObjectToSimpleTree(object, treeDepth));\r\n\r\n return objectList;\r\n }\r\n\r\n private recursiveFormatObjectToSimpleTree(object: any, treeDepth:number): any {\r\n for (const property in object) {\r\n\r\n if (!Object.prototype.hasOwnProperty.call(object, property)) {\r\n continue;\r\n }\r\n\r\n if (this.labelProperties.includes(property)) {\r\n object.treeLabel = object[property];\r\n continue;\r\n }\r\n\r\n object.hasTreeChildren = true;\r\n\r\n if (!this.childrenProperties.includes(property)) {\r\n // No more chrildren\r\n object.hasTreeChildren = false;\r\n continue;\r\n }\r\n\r\n if (!Array.isArray(object[property])) {\r\n throw `Property : \"${property}\", is not an array. it could not be transform to a recursive list.`;\r\n }\r\n // Add treeChildren property filled with name children property\r\n object.treeChildren = object[property];\r\n // call this function recursively until no children can be generated\r\n this.recursiveFormatObjectToSimpleTree(object.treeChildren, treeDepth++);\r\n break;\r\n }\r\n }\r\n}","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { SelectItem } from '../../components/select/select-items.dto';\r\n\r\n@Pipe({\r\n standalone: false,\r\n name: 'selectFilters'\r\n})\r\n\r\nexport class SelectFiltersPipe implements PipeTransform {\r\n transform(items: SelectItem[], filterName: string): any {\r\n return items.filter(item => {\r\n const regexp = new RegExp(filterName, 'i');\r\n return regexp.test(item.name);\r\n });\r\n }\r\n}","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n standalone: false,\r\n name: 'filterOptions'\r\n})\r\n\r\nexport class FilterOptionsPipe implements PipeTransform {\r\n\r\n transform(options: any[], searchValue: string, ...args: string[]): any {\r\n const regexp = new RegExp(searchValue, 'i');\r\n\r\n return options.filter(option => {\r\n return args.some(arg => regexp.test(option[arg]));\r\n });\r\n }\r\n}","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { OptionField, OptionItem } from '../components/inputs/input-with-select/option-item.dto';\r\n\r\n@Pipe({\r\n standalone: false,\r\n name: 'wacFindOptionSelectedField'\r\n})\r\nexport class FindOptionSelectedPipe implements PipeTransform {\r\n transform(options: Readonly<OptionItem[]>, field: OptionField | OptionField[]): Partial<OptionItem> | Partial<OptionItem>[] | string {\r\n\r\n const isFieldArray = Array.isArray(field);\r\n\r\n if (!options) {\r\n return isFieldArray ? [] : '';\r\n }\r\n\r\n const optionSelected = options.find((item) => item.active);\r\n\r\n if (!optionSelected) {\r\n return isFieldArray ? [] : '';\r\n }\r\n\r\n if (isFieldArray) {\r\n return field.reduce((acc, curr) => {\r\n return acc[curr];\r\n }, optionSelected);\r\n }\r\n\r\n return optionSelected[field];\r\n\r\n }\r\n}","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n/**\r\n * Typed mapping function.\r\n */\r\nexport type Mapper<T, G> = (item: T, ...args: any[]) => G;\r\n\r\n@Pipe({\r\n name: 'wacFn',\r\n standalone: true,\r\n})\r\nexport class CallComponentFunctionPipe implements PipeTransform {\r\n /**\r\n * Maps object to an arbitrary result through a plan-name function\r\n *\r\n * @param value an item to transform\r\n * @param mapper a mapping function\r\n * @param args arbitrary number of additional arguments\r\n */\r\n transform<T, G>(value: T, mapper: Mapper<T, G>, ...args: any[]): G {\r\n return mapper(value, ...args);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { FormatObjectToRecursifTreePipe } from './tree/format-object-to-recursif-tree.pipe';\r\nimport { FormatObjectToSimpleTreePipe } from './tree/format-object-to-simple-tree.pipe';\r\nimport { SelectFiltersPipe } from './select/select-filters.pipe';\r\nimport { AreAllOptionsSelectedPipe } from './selected-list/are-all-options-selected.pipe';\r\nimport { FilterOptionsPipe } from './select/filter-options.pipe';\r\nimport { FindOptionSelectedPipe } from './find-option-selected-field.pipe';\r\nimport { CallComponentFunctionPipe } from './call-component-function.pipe';\r\n\r\nconst exportedPipes = [\r\n FormatObjectToRecursifTreePipe,\r\n FormatObjectToSimpleTreePipe,\r\n FilterOptionsPipe,\r\n FindOptionSelectedPipe\r\n];\r\n\r\nconst pipes = [\r\n SelectFiltersPipe,\r\n AreAllOptionsSelectedPipe\r\n]\r\n\r\n@NgModule({\r\n imports: [CommonModule, FormsModule, CallComponentFunctionPipe],\r\n declarations: [...exportedPipes, ...pipes],\r\n exports: [...exportedPipes, ...pipes, CallComponentFunctionPipe]\r\n})\r\nexport class SharedPipes {}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { SharedPipes } from '../../pipes/shared-pipes.module';\r\nimport { TreeComponent } from './tree.component';\r\n\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n SharedPipes\r\n ],\r\n exports: [TreeComponent],\r\n declarations: [TreeComponent],\r\n providers: [],\r\n})\r\nexport class TreeModule { }\r\n","export const uuid = () => {\r\n if (typeof window !== \"undefined\" && typeof window.crypto.randomUUID === \"function\") {\r\n return window.crypto.randomUUID();\r\n }\r\n // https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues\r\n return window.crypto.getRandomValues(new Uint32Array(5)).join(\"-\");\r\n};","import {ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, ViewChild, ViewEncapsulation} from '@angular/core';\r\nimport { uuid } from '../../../utils/uuid';\r\nimport { OPTION_SELECTION_HANDLER } from './option-selection-handler.token';\r\nimport { SelectOptionDirective } from './select-option.directive';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-option',\r\n templateUrl: './option.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: OPTION_SELECTION_HANDLER, useExisting: OptionComponent }],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class OptionComponent<TOptionValue> extends SelectOptionDirective<TOptionValue> {\r\n\r\n @ViewChild('contentWrapper') contentOption: ElementRef;\r\n\r\n checkBoxId = `wac-option-${uuid()}`;\r\n\r\n constructor(protected contentRef: ElementRef, protected changeDetectorRef: ChangeDetectorRef) {\r\n super(contentRef, changeDetectorRef);\r\n }\r\n\r\n override getContentRef(): ElementRef<any> {\r\n return this.contentOption;\r\n }\r\n}\r\n","<div\r\n [ngClass]=\"{ 'disabled': disabled }\"\r\n class=\"wac-option\"\r\n >\r\n <div [ngClass]=\"{ 'selected': !disabled && selected, 'disabled': disabled }\" #contentWrapper>\r\n <wac-checkbox *ngIf=\"multiple\" [id]=\"checkBoxId\" [value]=\"selected\"></wac-checkbox>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>","import { Component, Input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-option-group',\r\n templateUrl: './option-group.component.html',\r\n styleUrls: ['./option-group.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class OptionGroupComponent {\r\n @Input() title: string;\r\n}","<div class=\"wac-option-group\">\r\n <div class=\"wac-option-group__title\">{{ title }}</div>\r\n <div class=\"wac-option-group__content\">\r\n <ng-content select=\"wac-option, option, .option, [selectOption]\"></ng-content>\r\n </div>\r\n </div>","import { Component, EventEmitter, Input, Output, ViewChild, ViewEncapsulation} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-select-search-trigger',\r\n templateUrl: './select-search-trigger.component.html',\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SelectSearchTriggerComponent {\r\n\r\n @Input() searchValue: string = '';\r\n\r\n @Output() searchValueChange = new EventEmitter<string>();\r\n\r\n @Output() searchInputKeyEnterPressed = new EventEmitter<void>();\r\n\r\n @ViewChild('searchInput') searchInput: any;\r\n\r\n constructor(\r\n ) {\r\n }\r\n\r\n onSearchValueChange() {\r\n this.searchValueChange.emit(this.searchValue);\r\n }\r\n\r\n onKeypressEnter() {\r\n this.searchInputKeyEnterPressed.emit();\r\n }\r\n\r\n setFocus() {\r\n setTimeout(() => { // otherwise the focus is not set\r\n this.searchInput.nativeElement.focus();\r\n },0);\r\n }\r\n}\r\n","<div class=\"wac-select-seacrh-trigger\">\r\n <i class=\"far fa-search\"></i>\r\n <input #searchInput type=\"text\" (click)=\"$event.stopPropagation()\" [(ngModel)]=\"searchValue\" (ngModelChange)=\"onSearchValueChange()\" (keypressEnter)=\"onKeypressEnter()\"/>\r\n</div>","import { ChangeDetectionStrategy, Component, ContentChild, ElementRef, EventEmitter, HostBinding, Input, OnDestroy, OnInit, Output, ViewChild, ViewEncapsulation} from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { filter, takeUntil } from 'rxjs/operators';\r\nimport { ValueChangeService } from './value-change.service';\r\nimport { Subject } from 'rxjs';\r\nimport { SelectSearchTriggerComponent } from '../select-search-trigger/select-search-trigger.component';\r\nimport {\r\n DOWN_ARROW,\r\n ENTER,\r\n ESCAPE,\r\n hasModifierKey,\r\n LEFT_ARROW,\r\n RIGHT_ARROW,\r\n TAB,\r\n UP_ARROW,\r\n} from '@angular/cdk/keycodes';\r\nimport { LabelComponent } from '../../common/label/label.component';\r\nimport { SelectDirective } from './select.directive';\r\n\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-select',\r\n templateUrl: './select.component.html',\r\n providers: [\r\n { provide: NG_VALUE_ACCESSOR, useExisting: SelectComponent, multi: true },\r\n ValueChangeService\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.Default,\r\n})\r\nexport class SelectComponent<TOptionValue> extends SelectDirective<TOptionValue> implements OnInit, OnDestroy {\r\n //! Refacto improve sroll on mobile, see with Pauline\r\n // angular material select https://github.com/angular/components/blob/main/src/material/select/select.ts\r\n\r\n @HostBinding('attr.role') role = 'combobox';\r\n\r\n @ContentChild(SelectSearchTriggerComponent) customSearchTrigger: SelectSearchTriggerComponent;\r\n\r\n @ContentChild(LabelComponent) label: LabelComponent;\r\n\r\n @ViewChild('selectHeader') selectHeader: ElementRef;\r\n\r\n /** Whether the component is required. */\r\n @Input()\r\n get required(): boolean {\r\n return this._required ?? false;\r\n }\r\n\r\n set required(value: boolean) {\r\n this._required = value;\r\n }\r\n\r\n private _required: boolean | undefined;\r\n\r\n get selectedOptionContent(): any {\r\n return this.valueChangeService.selectedOptionContent;\r\n };\r\n\r\n @Input() small = false;\r\n\r\n @Input()\r\n set keepPanelOpen(keepPanelOpen: boolean) {\r\n this.openPanel = keepPanelOpen;\r\n this._keepPanelOpen = keepPanelOpen;\r\n }\r\n\r\n get keepPanelOpen(): boolean {\r\n return this._keepPanelOpen ;\r\n }\r\n\r\n private _keepPanelOpen: boolean;\r\n\r\n @Input()\r\n set openPanel(openPanel: boolean) {\r\n const wasOpen = this._openPanel;\r\n this._openPanel = this.keepPanelOpen || openPanel;\r\n\r\n if (openPanel) {\r\n this.customSearchTrigger?.setFocus();\r\n }\r\n\r\n if (wasOpen) {\r\n this.onSelectTouch(this.value);\r\n }\r\n }\r\n\r\n get openPanel() : boolean {\r\n return this._openPanel;\r\n }\r\n _openPanel: boolean = false;\r\n\r\n @Output() openPanelChange = new EventEmitter<boolean>();\r\n\r\n override tabIndex: number = -1;\r\n\r\n override _searchByTyping: boolean = true;\r\n\r\n isDestroyed$: Subject<void> = new Subject();\r\n\r\n private isKeyBoardAction = false;\r\n\r\n constructor(\r\n protected valueChangeService: ValueChangeService<TOptionValue>,\r\n ) {\r\n super(valueChangeService);\r\n }\r\n\r\n override ngOnInit(): void {\r\n super.ngOnInit();\r\n this.closeTabOnValueChange();\r\n }\r\n\r\n private closeTabOnValueChange() {\r\n this.valueChangeService.valueChange$.pipe(takeUntil(this.isDestroyed$), filter(this.skipIfTriggeredByKeyboardAction)).subscribe(() => {\r\n this.onClosePanel();\r\n });\r\n }\r\n\r\n private skipIfTriggeredByKeyboardAction = () => {\r\n if(!this.isKeyBoardAction) {\r\n return true;\r\n }\r\n this.isKeyBoardAction = false;\r\n return false;\r\n }\r\n\r\n onTogglePanel() {\r\n this.openPanel = !this.openPanel;\r\n this.openPanelChange.emit(this.openPanel);\r\n }\r\n\r\n onClosePanel() {\r\n this.openPanel = false;\r\n this.openPanelChange.emit(this.openPanel);\r\n }\r\n\r\n override onKeydown(event: KeyboardEvent): void {\r\n const keyCode = event.keyCode;\r\n if (event.keyCode === TAB) {\r\n // go to the next element with tabindex\r\n if (this.openPanel) {\r\n this.openPanel = false;\r\n }\r\n return;\r\n }\r\n if (this.disabled) {\r\n return;\r\n }\r\n\r\n const actionTriggered = this.openPanel ? this._handleOpenKeydown(event) : this._handleClosedKeydown(event);\r\n\r\n if (actionTriggered) {\r\n return;\r\n }\r\n this.isKeyBoardAction = true;\r\n super.onKeydown(event);\r\n }\r\n\r\n handleKeyboardActionWithSearch(event: KeyboardEvent): boolean {\r\n const keyCode = event.keyCode;\r\n\r\n if (keyCode === DOWN_ARROW) {\r\n this.isKeyBoardAction = true;\r\n this.valueChangeService.selectNextOption();\r\n return true;\r\n }\r\n if (keyCode === UP_ARROW) {\r\n this.isKeyBoardAction = true;\r\n this.valueChangeService.selectPreviousOption();\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n /** Handles keyboard events while the select is closed. */\r\n private _handleClosedKeydown(event: KeyboardEvent): boolean {\r\n const keyCode = event.keyCode;\r\n const isArrowKey =\r\n keyCode === DOWN_ARROW ||\r\n keyCode === UP_ARROW ||\r\n keyCode === LEFT_ARROW ||\r\n keyCode === RIGHT_ARROW;\r\n const isOpenKey = keyCode === ENTER;\r\n // Open the select on ALT + arrow key to match the native <select>\r\n if (\r\n (isOpenKey && !hasModifierKey(event)) ||\r\n (event.altKey && isArrowKey)\r\n ) {\r\n this.openPanel = true;\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n /** Handles keyboard events when the selected is open. */\r\n private _handleOpenKeydown(event: KeyboardEvent): boolean {\r\n const keyCode = event.keyCode;\r\n const isArrowKey =\r\n keyCode === DOWN_ARROW ||\r\n keyCode === UP_ARROW ||\r\n keyCode === LEFT_ARROW ||\r\n keyCode === RIGHT_ARROW;\r\n const isEscapeKey = keyCode === ESCAPE || keyCode === ENTER || keyCode === TAB;\r\n\r\n if ((isArrowKey && event.altKey) || isEscapeKey) {\r\n // Close the select on ALT + arrow key to match the native <select>\r\n this.openPanel = false;\r\n\r\n if (this.customSearchTrigger && keyCode !== TAB) {\r\n // If a escape key is used with the search, the focus on the select is loosed. And we can not interact with the select anymore.\r\n this.selectHeader.nativeElement.focus();\r\n }\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n onSelectTouch: (value: any) => void = () => {};\r\n\r\n override registerOnTouched(fn: any){\r\n this.onSelectTouch = fn;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.isDestroyed$.next();\r\n this.isDestroyed$.complete();\r\n }\r\n}\r\n","<p *ngIf=\"!!label\" class=\"wac-select__label\">\r\n <ng-content select=\"wac-label, .wac-label\" ></ng-content>\r\n</p>\r\n\r\n<div\r\n class=\"wac-select\"\r\n wzAutoHide\r\n (clickOutside)=\"onClosePanel()\"\r\n [triggerElement]=\"'wac-select__header__selection'\"\r\n [zIndexToggle]=\"openPanel\"\r\n [ngClass]=\"{'small': small}\"\r\n >\r\n\r\n <div #selectHeader class=\"wac-select__header\" [ngClass]=\"{ 'select-disabled' : disabled, 'open': openPanel }\" (click)=\"!disabled && onTogglePanel()\" tabindex=\"0\">\r\n\r\n <ng-container [ngTemplateOutlet]=\"openPanel ? openPanelTrigger : closePanelTrigger\" >\r\n\r\n <ng-template #closePanelTrigger>\r\n <ng-container [ngTemplateOutlet]=\"defaultTrigger\"></ng-container>\r\n </ng-template>\r\n\r\n <ng-template #openPanelTrigger>\r\n <ng-content *ngIf=\"!!customSearchTrigger; else defaultTrigger\" select=\"wac-select-search-trigger\" ></ng-content>\r\n </ng-template>\r\n\r\n <ng-template #defaultTrigger>\r\n <ng-content *ngIf=\"!selectedOptionContent\" select=\"wac-placeholder,[role=placeholder]\"></ng-content>\r\n <div\r\n class=\"wac-select__header__selection wac-option__placeholder\"\r\n *ngIf=\"!!selectedOptionContent\"\r\n [innerHtml]=\"selectedOptionContent\">\r\n </div>\r\n </ng-template>\r\n\r\n </ng-container>\r\n\r\n <span class=\"wac-select__header__chevron\"><i class=\"fas fa-chevron-down\"></i></span>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"wac-select__content\" *ngIf=\"!disabled\" [ngClass]=\"{ hidden: !openPanel, open: openPanel }\">\r\n\r\n <ng-scrollbar>\r\n <ng-content\r\n select=\"wac-option-group, wac-option-call-to-action, wac-option, option, .option, [selectOption]\">\r\n </ng-content>\r\n </ng-scrollbar>\r\n\r\n <div *ngIf=\"!optionChildren?.length\" class=\"wac-select__content__empty\">\r\n <span>{{'wac.datatable.noresult' | translate}}</span>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n","import {Component} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-option-call-to-action',\r\n templateUrl: './option-call-to-action.component.html'\r\n})\r\nexport class OptionCallToActionComponent {\r\n\r\n constructor() {}\r\n}\r\n","\r\n<div class=\"wac-option-call-to-action\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n\r\n","import {Component, OnInit, TemplateRef, ViewChild} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-placeholder',\r\n templateUrl: './placeholder.component.html',\r\n host: {\r\n 'class': 'wac-placeholder'\r\n }\r\n})\r\nexport class PlaceholderComponent implements OnInit {\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<ng-content></ng-content>","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-wrapper-sidebar',\r\n templateUrl: './wrapper-sidebar.component.html'\r\n})\r\nexport class WrapperSidebarComponent {\r\n\r\n @Input() reverse = false;\r\n @Input() hideBackground = false;\r\n @Input() backgroundGrey: string; // todo should be renamed, it is not understandable\r\n @Input() backgroundWidth: string;\r\n @Input() stickySidebar = false;\r\n @Input() transparentSidebar = false;\r\n\r\n constructor() { }\r\n}\r\n","<div class=\"wac-wrapper-sidebar\" [ngClass]=\"{'reverse': reverse}\">\r\n <div class=\"wac-wrapper-sidebar__left\" [ngClass]=\"{'sticky': stickySidebar, 'transparent': transparentSidebar}\">\r\n <ng-content select=\"[sidebar]\"></ng-content>\r\n </div>\r\n <div class=\"wac-wrapper-sidebar__right\" [style.backgroundImage]=\"!hideBackground && backgroundGrey !== '' ? 'url(' + backgroundGrey + ')' : ''\" [style.backgroundSize]=\"backgroundWidth\">\r\n <ng-content select=\"[content]\"></ng-content>\r\n </div>\r\n</div>\r\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\r\nimport {BreadcrumbsDto} from './breadcrumbs.dto';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-breadcrumbs',\r\n templateUrl: './breadcrumbs.component.html',\r\n})\r\nexport class BreadcrumbsComponent {\r\n\r\n @Input()\r\n breadcrumbs: BreadcrumbsDto[];\r\n\r\n @Input()\r\n noResponsive = false;\r\n\r\n index: number = 0;\r\n\r\n @Output()\r\n indexChange = new EventEmitter<any>();\r\n\r\n constructor() { }\r\n\r\n valueChanged(i) {\r\n this.index = i;\r\n this.indexChange.emit(this.index);\r\n }\r\n\r\n}\r\n","<div class=\"wac-breadcrumbs\" [ngClass]=\"{'no-responsive': noResponsive}\">\r\n <div class=\"wac-breadcrumbs__wrapper\">\r\n <div class=\"wac-breadcrumbs__item\" *ngFor=\"let b of breadcrumbs; let i = index;\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\" (click)=\"valueChanged(i)\">\r\n <div class=\"round\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\"><span *ngIf=\"!b.valid\"><span *ngIf=\"i < 9\">0</span>{{ i + 1 }}</span><i class=\"fas fa-check\" *ngIf=\"b.valid\"></i></div>\r\n <div class=\"name\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\">{{ b.name }}</div>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-card-price',\r\n templateUrl: './card-price.component.html',\r\n})\r\nexport class CardPriceComponent {\r\n\r\n @Input()\r\n amount: string;\r\n\r\n @Input()\r\n promo: string;\r\n\r\n @Input()\r\n title: string;\r\n\r\n @Input()\r\n selected = false;\r\n\r\n @Input()\r\n btnLabelSelected: string;\r\n\r\n @Input()\r\n price: string | number;\r\n\r\n @Input()\r\n currency: string;\r\n\r\n @Input()\r\n priceWording: string;\r\n\r\n @Input()\r\n subtitle: string;\r\n\r\n @Input()\r\n btnLabel: string;\r\n\r\n @Input()\r\n packageSubtitle: string;\r\n\r\n @Input()\r\n linkPackageLabel: string;\r\n\r\n @Input()\r\n listFeatures: string[];\r\n\r\n @Input()\r\n disabled: boolean = false;\r\n\r\n @Input()\r\n btnTextcolor = '#ffffff';\r\n\r\n @Input()\r\n extraClasses = 'is-success';\r\n\r\n @Input()\r\n extraClassesSelected = 'is-success is-outlined';\r\n\r\n @Input()\r\n hideButton = false;\r\n\r\n @Input()\r\n darkMode = false;\r\n\r\n @Input()\r\n isEvolup = false;\r\n\r\n @Output() public confirm: EventEmitter<any> = new EventEmitter();\r\n\r\n @Output() public cancel: EventEmitter<any> = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n triggerClick() {\r\n this.confirm.emit(true);\r\n }\r\n\r\n removePackageTrigger() {\r\n this.cancel.emit(true);\r\n }\r\n\r\n}\r\n","<div class=\"wac-card-price\" [ngClass]=\"{'selected': selected, 'is-evolup': isEvolup, 'is-dark': darkMode}\">\r\n <div class=\"promo\" *ngIf=\"promo\">\r\n <p [innerHTML]=\"promo\"></p>\r\n </div>\r\n <strong>{{amount}} <span>{{title}}</span></strong>\r\n <div class=\"price\">\r\n <span class=\"amount\">{{price}} <span>{{currency}}</span></span><span class=\"month\" [innerHTML]=\"priceWording\"></span>\r\n </div>\r\n <div class=\"subtitle\">{{subtitle}}</div>\r\n <div class=\"list-features\" *ngIf=\"listFeatures\">\r\n <div *ngFor=\"let feat of listFeatures;\" class=\"list-features__item\"><span>{{feat}}</span></div>\r\n </div>\r\n <div class=\"cta\" *ngIf=\"!selected && !hideButton\">\r\n <wac-button [noPadding]=\"true\" [label]=\"btnLabel\" [extraClasses]=\"extraClasses\" (click)=\"triggerClick()\" [disabled]=\"disabled\" [whiteSpaceNowrap]=\"true\" [textcolor]=\"btnTextcolor\"></wac-button>\r\n </div>\r\n <div class=\"cta\" *ngIf=\"selected && !hideButton\">\r\n <wac-button [noPadding]=\"true\" [icon]=\"'fa-solid fa-check'\" [label]=\"btnLabelSelected\" [extraClasses]=\"extraClassesSelected\" [whiteSpaceNowrap]=\"true\"></wac-button>\r\n </div>\r\n <div class=\"package-subtitle\" *ngIf=\"selected\">{{packageSubtitle}}</div>\r\n <div class=\"link-bottom\" *ngIf=\"linkPackageLabel\">\r\n <wac-link (click)=\"removePackageTrigger()\">{{linkPackageLabel}}</wac-link>\r\n </div>\r\n</div>\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-token-check',\r\n templateUrl: './token-check.component.html',\r\n})\r\nexport class TokenCheckComponent {\r\n\r\n @Input()\r\n label: string;\r\n\r\n @Input()\r\n value: number;\r\n\r\n @Input()\r\n max: number;\r\n\r\n warning = false;\r\n\r\n constructor() { }\r\n}\r\n","<div class=\"wac-token-check\">\r\n <span [innerHTML]=\"label\"></span> : <span [innerHTML]=\"value\" [ngClass]=\"{'warning': value > max}\"></span>/<strong [innerHTML]=\"max\"></strong>\r\n</div>\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport { uuid } from '../../utils/uuid';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-block-with-checkbox',\r\n templateUrl: './block-with-checkbox.component.html',\r\n})\r\nexport class BlockWithCheckboxComponent {\r\n\r\n @Input()\r\n selected = false;\r\n\r\n @Input()\r\n disabled = false;\r\n\r\n @Output()\r\n checkboxAction = new EventEmitter<boolean>();\r\n\r\n randomLabelName = uuid();\r\n\r\n @Input()\r\n nameRadio = 'wacBlockCheckboxRadio';\r\n\r\n @Input()\r\n isFirst = false;\r\n\r\n @Input()\r\n opacity = '.45';\r\n\r\n constructor() { }\r\n\r\n eventSelected(event) {\r\n if (!this.disabled) {\r\n this.selected = event.target.checked;\r\n this.checkboxAction.emit(this.selected);\r\n this.isFirst = false;\r\n }\r\n }\r\n\r\n removeFirstClass() {\r\n if (typeof document.querySelectorAll('.firstWacRadioBLock')[0] !== typeof undefined) {\r\n document.querySelectorAll('.firstWacRadioBLock')[0].classList.remove('firstWacRadioBLock');\r\n }\r\n }\r\n}\r\n","<div class=\"block-with-checkbox\" (click)=\"disabled && $event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? $event.preventDefault() : ''\" [ngClass]=\"{'selected': inputRadioA.checked || selected, 'firstWacRadioBLock': isFirst, 'disabled': disabled}\" [style.opacity]=\"opacity\" (mouseover)=\"removeFirstClass()\">\r\n <div class=\"block-with-checkbox__left\" (click)=\"inputRadioA.click()\">\r\n <div class=\"wac-radio-block\">\r\n <div class=\"wac-radio__row\">\r\n <input #inputRadioA [name]=\"nameRadio\" type=\"radio\" [checked]=\"selected\" [value]=\"selected\" (change)=\"eventSelected($event)\" [id]=\"randomLabelName\">\r\n <label [for]=\"randomLabelName\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"block-with-checkbox__center\" (click)=\"$event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? inputRadioA.click() : '';\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n","import {AfterViewInit, Component, ElementRef, EventEmitter, HostListener, Input, OnInit, Output, ViewChild} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-confirm-delete',\r\n templateUrl: './confirm-delete.component.html'\r\n})\r\nexport class ConfirmDeleteComponent implements AfterViewInit {\r\n\r\n @Input()\r\n open = false;\r\n\r\n @Input()\r\n label: string;\r\n\r\n @Input()\r\n labelCancel: string;\r\n\r\n @Input()\r\n labelConfirm: string;\r\n\r\n @Output()\r\n confirm = new EventEmitter<boolean>();\r\n\r\n @Input()\r\n backgroundColor = '#fff';\r\n\r\n @Input()\r\n borderRadius = '0px';\r\n\r\n hideText = false;\r\n\r\n @ViewChild('container') container: ElementRef;\r\n\r\n constructor() { }\r\n\r\n eventCancel(event) {\r\n this.confirm.emit(false);\r\n this.open = false;\r\n }\r\n\r\n eventConfirm(event) {\r\n this.confirm.emit(true);\r\n this.open = false;\r\n }\r\n\r\n responsiveControl(size) {\r\n if (size < 342) {\r\n this.hideText = true;\r\n } else {\r\n this.hideText = false;\r\n }\r\n }\r\n\r\n @HostListener('window:resize')\r\n onResize(): void {\r\n this.responsiveControl(this.container.nativeElement.offsetWidth);\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n this.responsiveControl(this.container.nativeElement.offsetWidth);\r\n }, 100);\r\n }\r\n\r\n}\r\n","<div class=\"wac-confirm-delete\" #container [ngClass]=\"{'is-open': open, 'hide-text': hideText}\" [style.backgroundColor]=\"backgroundColor\" [style.borderRadius]=\"borderRadius\">\r\n <div>\r\n <span [innerHTML]=\"label\"></span>\r\n </div>\r\n <div>\r\n <div><wac-button [label]=\"labelCancel\" [extraClasses]=\"'is-outlined is-grey'\" (click)=\"eventCancel($event)\"></wac-button></div>\r\n <div><wac-button [label]=\"labelConfirm\" [extraClasses]=\"'is-danger'\" (click)=\"eventConfirm($event)\"></wac-button></div>\r\n </div>\r\n</div>\r\n","import {ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges, TemplateRef, ViewEncapsulation} from '@angular/core';\r\n\r\nexport type ImageSource = string;\r\nexport type ImageAlt = string;\r\n\r\nexport type MosaicImage = {\r\n src: ImageSource,\r\n alt: ImageAlt\r\n}\r\n\r\nexport type MosaicImages = Readonly<MosaicImage[]>;\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-mosaic',\r\n templateUrl: './mosaic.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class MosaicComponent implements OnChanges {\r\n\r\n @Input() imagesList: MosaicImages = [];\r\n\r\n @Input() isLoading = false;\r\n\r\n @Input() numberOfColumn = 3;\r\n\r\n @Input() hoverImageTemplate: TemplateRef<any>;\r\n\r\n @Output() importImageSrc = new EventEmitter<ImageSource>();\r\n\r\n @Output() loadMoreImages = new EventEmitter<void>();\r\n\r\n columns: MosaicImages[];\r\n\r\n trackColumn(index: number ) {\r\n return index;\r\n }\r\n\r\n trackImage(index: number, image: MosaicImage ) {\r\n return image.src;\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n const imagesListChange = changes.imagesList;\r\n const isNumberOfColumnChange = changes.numberOfColumn && (changes.numberOfColumn.currentValue !== changes.numberOfColumn.previousValue);\r\n\r\n if (imagesListChange && imagesListChange.currentValue !== imagesListChange.previousValue) {\r\n this.generateColumns(imagesListChange.previousValue, imagesListChange.currentValue, isNumberOfColumnChange);\r\n return;\r\n }\r\n\r\n if (isNumberOfColumnChange) {\r\n this.generateColumns(null, this.imagesList, isNumberOfColumnChange);\r\n }\r\n }\r\n\r\n generateColumns(previousList: MosaicImages, currentList: MosaicImages, isNumberOfColumnChange: boolean) {\r\n const isNewListSmaller = (currentList && previousList) && (currentList.length < previousList.length);\r\n const resetColumns = isNumberOfColumnChange || isNewListSmaller;\r\n const isPreviousListExisting = previousList?.length;\r\n const newImagesToDisplay = !isPreviousListExisting || resetColumns ? currentList : currentList.slice(previousList.length);\r\n\r\n let columns: MosaicImage[][] = this.separateImagesIntoColumns(newImagesToDisplay);\r\n\r\n if (isPreviousListExisting && !resetColumns) {\r\n const existingColumns = this.columns;\r\n columns = this.concatColumns(existingColumns, columns);\r\n }\r\n\r\n this.columns = columns;\r\n }\r\n\r\n separateImagesIntoColumns(newImagesToDisplay: MosaicImages): MosaicImage[][] {\r\n const columns: MosaicImage[][] = Array.from({ length: this.numberOfColumn }, () => []);\r\n\r\n newImagesToDisplay.forEach((image, index) => {\r\n columns[index % this.numberOfColumn].push(image);\r\n });\r\n\r\n return columns;\r\n }\r\n\r\n concatColumns(oldColumns: MosaicImages[], newColumns: MosaicImages[]): MosaicImage[][] {\r\n return oldColumns.map((oldColumn, columnIndex) => {\r\n return [...oldColumn, ...newColumns[columnIndex]];\r\n });\r\n }\r\n\r\n onBottomReached() {\r\n if (!this.isLoading) {\r\n this.loadMoreImages.emit();\r\n }\r\n }\r\n\r\n onImportImage(src: ImageSource) {\r\n this.importImageSrc.emit(src);\r\n }\r\n}\r\n","<div class=\"wac-mosaic\" [ngClass]=\"{'is-loading': isLoading}\">\r\n <ng-scrollbar (reachedBottom)=\"onBottomReached()\" [reachedOffset]=\"200\" class=\"wac-mosaic__wrapper__scrollbar\">\r\n <div class=\"wac-mosaic__wrapper\">\r\n <div class=\"wac-mosaic__wrapper__column\" *ngFor=\"let column of columns; trackBy : trackColumn;\">\r\n <div class=\"wac-mosaic__wrapper__column__image\" *ngFor=\"let image of column; let i = index; trackBy : trackImage\">\r\n <img [src]=\"image.src\" [alt]=\"image.alt\"/>\r\n <div class=\"hover\">\r\n <ng-container\r\n [ngTemplateOutlet]=\"hoverImageTemplate || defaultImportButton\"\r\n [ngTemplateOutletContext]=\"{ $implicit: image }\"\r\n >\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wac-mosaic__wrapper load\">\r\n <div class=\"wac-mosaic__wrapper__column\" *ngFor=\"let column of columns; trackBy : trackColumn;\">\r\n <div class=\"load-img\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-scrollbar>\r\n</div>\r\n\r\n<ng-template #defaultImportButton let-image>\r\n <wac-button [icon]=\"'fa-solid fa-image'\" [label]=\"'wac.MosaicComponent.import' | translate\" [extraClasses]=\"'is-success'\" (click)=\"onImportImage(image.src)\"></wac-button>\r\n</ng-template>\r\n","import {AfterContentInit, AfterViewInit, Component, ContentChild, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-content-with-buttons',\r\n templateUrl: './content-with-buttons.component.html',\r\n})\r\nexport class ContentWithButtonsComponent implements OnInit, AfterViewInit {\r\n\r\n @Input()\r\n iconCopy = 'fa-duotone fa-copy';\r\n\r\n @Input()\r\n iconTranslate = 'fa-regular fa-globe';\r\n\r\n @Input()\r\n tooltipCopy = '';\r\n\r\n @Input()\r\n tooltipTranslate = '';\r\n\r\n @Input()\r\n tooltipLinkReport = '';\r\n\r\n @Input()\r\n count = true;\r\n\r\n @Input()\r\n countCharacterLabel = 'caractères';\r\n\r\n @Input()\r\n countWordsLabel = 'mots';\r\n\r\n @Input()\r\n reportLabel: string;\r\n\r\n @Output()\r\n copyAction = new EventEmitter<boolean>();\r\n\r\n @Output()\r\n reportAction = new EventEmitter<boolean>();\r\n\r\n @Output()\r\n translateAction = new EventEmitter<boolean>();\r\n\r\n countWords: number;\r\n\r\n countIsReady = false;\r\n\r\n countCharacter: number;\r\n\r\n randomLabelName: string;\r\n\r\n\r\n ngOnInit() {\r\n this.randomLabelName = 'content-' + Math.random() * (900 - 700) + 700;\r\n }\r\n\r\n ngAfterViewInit() {\r\n setTimeout(() => {\r\n const content = document.getElementById(this.randomLabelName).innerHTML.replace(/(<([^>]+)>)/gi, '').replace(/[.,\\/#!$%\\^&\\*;:{}=\\-_`~()]/g, '');\r\n this.countCharacter = content.trim().split(' ').join('').length;\r\n this.countWords = content.trim().split(' ').length;\r\n this.countIsReady = true;\r\n });\r\n }\r\n\r\n eventCopy() {\r\n this.copyAction.emit(true);\r\n }\r\n\r\n eventTranslate() {\r\n this.translateAction.emit(true);\r\n }\r\n\r\n eventReport() {\r\n this.reportAction.emit(true);\r\n }\r\n}\r\n","<div class=\"wac-content-with-buttons\">\r\n <div class=\"wac-content-with-buttons__text\">\r\n <div id=\"{{randomLabelName}}\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"wac-content-with-buttons__text__count\" *ngIf=\"count && countIsReady\">\r\n <span>{{ countWords }} {{ countWordsLabel }} - {{ countCharacter }} {{ countCharacterLabel }}</span>\r\n <span><wac-link [tooltipWidth]=\"600\" [tooltip]=\"tooltipLinkReport\" (click)=\"$event.preventDefault();\" (mousedown)=\"$event.preventDefault();eventReport();\" fontSize=\"12px\">{{ reportLabel }}</wac-link></span>\r\n </div>\r\n </div>\r\n <div class=\"wac-content-with-buttons__cta\">\r\n <div><wac-button extraClasses=\"is-blue opacity static-width\" [iconFontSize]=\"18\" [icon]=\"iconCopy\" (click)=\"eventCopy()\" [tooltip]=\"tooltipCopy\" [tooltipPosition]=\"'top-center'\" [tooltipOneline]=\"true\"></wac-button></div>\r\n <div><wac-button extraClasses=\"is-green opacity static-width\" [iconFontSize]=\"18\" [icon]=\"iconTranslate\" [tooltip]=\"tooltipTranslate\" [tooltipPosition]=\"'top-center'\" [tooltipOneline]=\"true\" (click)=\"eventTranslate()\"></wac-button></div>\r\n </div>\r\n</div>\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-wrapper-multiple-block',\r\n templateUrl: './wrapper-multiple-block.component.html',\r\n})\r\nexport class WrapperMultipleBlockComponent {\r\n\r\n constructor() { }\r\n}\r\n","<div class=\"wac-wrapper-multiple-block\">\r\n <div class=\"wac-wrapper-multiple-block__sidebar\">\r\n <ng-content select=\"[sidebar]\"></ng-content>\r\n </div>\r\n <div class=\"wac-wrapper-multiple-block__content\">\r\n <ng-content select=\"[content]\"></ng-content>\r\n </div>\r\n</div>\r\n","import {ChangeDetectionStrategy, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {CdkDragDrop, moveItemInArray} from '@angular/cdk/drag-drop';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-draganddrop-list',\r\n templateUrl: './draganddrop-list.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class DraganddropListComponent {\r\n\r\n @Input()\r\n label = '';\r\n\r\n @Input()\r\n items: Array<string>;\r\n\r\n @Input()\r\n disabled = false;\r\n\r\n @Input()\r\n max: number;\r\n\r\n @Input()\r\n labelBtnAdd: string;\r\n\r\n @Input()\r\n backgroundColor = '#fff';\r\n\r\n showTriggerSave = false;\r\n\r\n @Output()\r\n itemsChange = new EventEmitter<Array<string>>();\r\n\r\n drop(event: CdkDragDrop<string[]>) {\r\n if (!this.disabled) {\r\n moveItemInArray(this.items, event.previousIndex, event.currentIndex);\r\n this.itemsChange.emit(Object.values(this.items));\r\n }\r\n }\r\n\r\n delete(index) {\r\n if (!this.disabled) {\r\n this.items = this.items.filter((value, i) => i !== index );\r\n this.itemsChange.emit(Object.values(this.items));\r\n }\r\n }\r\n\r\n saveFieldEnd(index, event) {\r\n this.items[index] = event.target.value;\r\n this.itemsChange.emit(Object.values(this.items));\r\n }\r\n\r\n addField() {\r\n this.showTriggerSave = true;\r\n }\r\n\r\n saveNewField(event) {\r\n this.items.push(event.target.value);\r\n this.itemsChange.emit(Object.values(this.items));\r\n this.showTriggerSave = false;\r\n }\r\n\r\n}\r\n","<div class=\"wac-draganddrop-list\" *ngIf=\"!disabled\" [style.backgroundColor]=\"backgroundColor\">\r\n <div class=\"wac-draganddrop-list__label\" *ngIf=\"label\"><span [innerHTML]=\"label\"></span></div>\r\n <div class=\"wac-draganddrop-list__wrapper\" [cdkDropListLockAxis]=\"'y'\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\r\n <div class=\"wac-draganddrop-list__wrapper__item\" [style.backgroundColor]=\"backgroundColor\" *ngFor=\"let item of items;let i = index;\" cdkDrag>\r\n <div>\r\n <span class=\"wac-draganddrop-list__wrapper__item__icon\">\r\n <span></span>\r\n </span>\r\n <span (mousedown)=\"$event.stopPropagation()\" class=\"wac-draganddrop-list__wrapper__item__input\">\r\n <wac-input [value]=\"item\" [extraClasses]=\"'transparent'\" (keyup.enter)=\"saveFieldEnd(i, $event)\" (focusout)=\"saveFieldEnd(i, $event)\"></wac-input>\r\n </span>\r\n </div>\r\n <div (mousedown)=\"$event.stopPropagation()\">\r\n <div>\r\n <wac-button [iconFontSize]=\"14\" [opacity]=\"true\" [icon]=\"'fa-regular fa-trash-can'\" [extraClasses]=\"'is-danger'\" (click)=\"delete(i)\"></wac-button>\r\n </div>\r\n <div *ngIf=\"i === (items.length - 1) && max > items.length && !showTriggerSave\">\r\n <wac-button [extraClasses]=\"'is-info'\" [iconFontSize]=\"18\" [opacity]=\"true\" [icon]=\"'fa-regular fa-plus'\" (click)=\"addField()\"></wac-button>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wac-draganddrop-list__wrapper__item wac-draganddrop-list__wrapper__item--trigger\" *ngIf=\"showTriggerSave\">\r\n <div>\r\n <span class=\"wac-draganddrop-list__wrapper__item__icon\">\r\n <span></span>\r\n </span>\r\n <span class=\"wac-draganddrop-list__wrapper__item__input\">\r\n <wac-input [extraClasses]=\"'transparent'\" (keyup.enter)=\"saveNewField($event)\" (focusout)=\"saveNewField($event)\"></wac-input>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"wac-draganddrop-list wac-draganddrop-list--disabled\" *ngIf=\"disabled\">\r\n <div class=\"wac-draganddrop-list__label\" *ngIf=\"label\"><span [innerHTML]=\"label\"></span></div>\r\n <div class=\"wac-draganddrop-list__wrapper\">\r\n <div class=\"wac-draganddrop-list__wrapper__item\" *ngFor=\"let item of items;let i = index;\">\r\n <div>\r\n <span class=\"wac-draganddrop-list__wrapper__item__label\" [innerHTML]=\"item\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import { InjectionToken } from \"@angular/core\";\r\nimport { AccordionItem } from \"./accordion-item.interface\";\r\n\r\nexport const ACCORDION_ITEM = new InjectionToken<AccordionItem>('ACCORDION_ITEM');","import { AfterViewInit, Component, ContentChildren, HostBinding, Input, OnDestroy, QueryList } from '@angular/core';\r\nimport { takeUntil, startWith, Subject, map, merge, Observable } from 'rxjs';\r\nimport { AccordionItem } from './accordion-item.interface';\r\nimport { ACCORDION_ITEM } from './accordion-item.token';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-accordion',\r\n templateUrl: './accordion.component.html'\r\n})\r\nexport class AccordionComponent implements AfterViewInit, OnDestroy {\r\n\r\n @HostBinding('class') class = 'wac-accordion';\r\n\r\n @ContentChildren(ACCORDION_ITEM, { descendants: true }) expansionItems!: QueryList<AccordionItem>;\r\n\r\n @Input() keepOnlyOnePanelOpen: boolean = false;\r\n\r\n // Inputs: hideToggle (hide the arrow) // togglePosition\r\n\r\n private isDestroyed$ = new Subject<void>();\r\n private resetListeners$: Subject<void> = new Subject();\r\n\r\n constructor() { }\r\n\r\n public openAll(): void {\r\n this.expansionItems?.forEach((item: AccordionItem) => {\r\n item.isExpanded = true;\r\n });\r\n }\r\n\r\n public closeAll(): void {\r\n this.expansionItems?.forEach((item: AccordionItem) => {\r\n item.isExpanded = false;\r\n });\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.expansionItems.changes\r\n .pipe(\r\n takeUntil(this.isDestroyed$),\r\n startWith(this.expansionItems)\r\n )\r\n .subscribe(() => {\r\n this.resetListeners$.next();\r\n this.panelExpansionChanges().subscribe(expandedItem => {\r\n if (this.keepOnlyOnePanelOpen) {\r\n this.keepOnlyOnePanelOpenHandler(expandedItem.index);\r\n }\r\n });\r\n });\r\n }\r\n\r\n private panelExpansionChanges(): Observable<{index:number, expansionItem: AccordionItem}> {\r\n const panelExpansionChange$ = this.expansionItems.map((expansionItem, index) => {\r\n return expansionItem.expandChange.pipe(\r\n map(() => {\r\n return {\r\n index,\r\n expansionItem\r\n }\r\n })\r\n );\r\n });\r\n return merge(...panelExpansionChange$).pipe(takeUntil(this.resetListeners$));\r\n }\r\n\r\n private keepOnlyOnePanelOpenHandler(index: number): void {\r\n this.expansionItems.forEach((expansionItem, i) => {\r\n if (i !== index) {\r\n expansionItem.isExpanded = false;\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.isDestroyed$.next();\r\n this.isDestroyed$.complete();\r\n this.resetListeners$.next();\r\n this.resetListeners$.complete();\r\n }\r\n}\r\n","<ng-content></ng-content>","import { InjectionToken } from \"@angular/core\";\r\nimport { ExpansionPanelHeader } from \"./expansion-panel-header.interface\";\r\n\r\nexport const EXPANSION_PANEL_HEADER = new InjectionToken<ExpansionPanelHeader>('EXPANSION_PANEL_HEADER');","import { ChangeDetectorRef, Directive, EventEmitter, HostListener, Input, Output } from '@angular/core';\r\nimport { EXPANSION_PANEL_HEADER } from './expansion-panel-header.token';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[wacExpansionPanelHeader]',\r\n providers: [{ provide: EXPANSION_PANEL_HEADER, useExisting: ExpansionPanelHeaderDirective }],\r\n})\r\nexport class ExpansionPanelHeaderDirective {\r\n\r\n\r\n @HostListener('click') onClick() {\r\n this.toggle();\r\n }\r\n\r\n @Input() disabled: boolean = false;\r\n @Output() disabledChange = new EventEmitter<boolean>();\r\n\r\n @Input() hideToggle: boolean = false;\r\n @Output() hideToggleChange = new EventEmitter<boolean>();\r\n\r\n @Input() isExpanded: boolean = false;\r\n @Output() isExpandedChange = new EventEmitter<boolean>();\r\n\r\n constructor(protected changeDetectorRef:ChangeDetectorRef) {\r\n }\r\n\r\n onToggle() {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this.isExpanded = !this.isExpanded;\r\n this.toggle();\r\n }\r\n\r\n // Will be used by the parent component\r\n close: () => {};\r\n open: () => {};\r\n toggle: () => {};\r\n}","import { ChangeDetectorRef, Component, HostBinding, ViewEncapsulation } from '@angular/core';\r\nimport { ExpansionPanelHeaderDirective } from './expansion-panel-header.directive';\r\nimport { EXPANSION_PANEL_HEADER } from './expansion-panel-header.token';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-expansion-panel-header',\r\n templateUrl: './expansion-panel-header.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n //changeDetection: ChangeDetectionStrategy.OnPush, // todo handle\r\n providers: [{ provide: EXPANSION_PANEL_HEADER, useExisting: ExpansionPanelHeaderComponent }]\r\n})\r\nexport class ExpansionPanelHeaderComponent extends ExpansionPanelHeaderDirective {\r\n\r\n @HostBinding('class') class = 'wac-expansion-panel-header';\r\n\r\n @HostBinding('class.wac-expansion-panel-header--disabled') get isDisabled() {\r\n return this.disabled;\r\n }\r\n\r\n constructor(protected changeDetectorRef:ChangeDetectorRef) {\r\n super(changeDetectorRef);\r\n }\r\n\r\n}\r\n","<ng-content></ng-content>\r\n<i class=\"wac-expansion-panel-header__icon\" [class]=\"isExpanded ? 'fas fa-angle-down' : 'fas fa-angle-up'\"></i>","import { AfterViewInit, ChangeDetectorRef, ContentChild, Directive, EventEmitter, Input, Output } from '@angular/core';\r\nimport { AccordionItem } from '../accordion/accordion-item.interface';\r\nimport { ACCORDION_ITEM } from '../accordion/accordion-item.token';\r\nimport { ExpansionPanelHeader } from '../expansion-panel-header/expansion-panel-header.interface';\r\nimport { EXPANSION_PANEL_HEADER } from '../expansion-panel-header/expansion-panel-header.token';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[wacExpansionPanel]',\r\n providers: [{ provide: ACCORDION_ITEM, useExisting: ExpansionPanelDirective }]\r\n})\r\nexport class ExpansionPanelDirective implements AccordionItem, AfterViewInit {\r\n\r\n\r\n @ContentChild(EXPANSION_PANEL_HEADER) header: ExpansionPanelHeader;\r\n\r\n @Input() set disabled(disabled: boolean) {\r\n this._disabled = disabled;\r\n if (this.header) {\r\n this.header.disabled = disabled;\r\n }\r\n }\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n _disabled = false;\r\n\r\n @Input() set hideToggle(hideToggle: boolean) {\r\n this._hideToggle = hideToggle;\r\n if (this.header) {\r\n this.header.hideToggle = hideToggle;\r\n }\r\n }\r\n get hideToggle() : boolean {\r\n return this._hideToggle;\r\n }\r\n _hideToggle: boolean = false;\r\n\r\n @Input() set isExpanded(isExpanded: boolean) {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this._isExpanded = isExpanded;\r\n if (this.header) {\r\n this.header.isExpanded = isExpanded;\r\n }\r\n this.isExpandedChange.emit(isExpanded);\r\n }\r\n get isExpanded(): boolean {\r\n return this._isExpanded;\r\n }\r\n _isExpanded = false;\r\n\r\n @Output() isExpandedChange = new EventEmitter<boolean>();\r\n\r\n expandChange = new EventEmitter<void>(); // used by the accordion component if exists\r\n\r\n constructor(protected changeDetectorRef:ChangeDetectorRef) {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.header.isExpanded = this.isExpanded;\r\n this.header.hideToggle = this.hideToggle;\r\n this.header.disabled = this.disabled;\r\n\r\n this.header.close = () => this.close();\r\n this.header.open = () => this.open();\r\n this.header.toggle = () => this.toggle();\r\n }, 0);\r\n }\r\n\r\n close(): void {\r\n this.isExpanded = false;\r\n this.expandChange.emit();\r\n }\r\n open(): void {\r\n this.isExpanded = true;\r\n this.expandChange.emit();\r\n }\r\n toggle(): void {\r\n this.isExpanded = !this.isExpanded;\r\n this.expandChange.emit();\r\n }\r\n}","import { ChangeDetectorRef, Component, HostBinding } from '@angular/core';\r\nimport { ACCORDION_ITEM } from '../accordion/accordion-item.token';\r\nimport { ExpansionPanelDirective } from './expansion-panel.directive';\r\n\r\n// https://material.angular.io/components/expansion/api\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-expansion-panel',\r\n templateUrl: './expansion-panel.component.html',\r\n providers: [{ provide: ACCORDION_ITEM, useExisting: ExpansionPanelComponent }]\r\n})\r\nexport class ExpansionPanelComponent extends ExpansionPanelDirective {\r\n\r\n @HostBinding('class') class = 'wac-expansion-panel';\r\n\r\n @HostBinding('class.wac-expansion-panel--disabled') get isDisabled() {\r\n return this.disabled;\r\n }\r\n\r\n constructor(protected changeDetectorRef:ChangeDetectorRef) {\r\n super(changeDetectorRef);\r\n }\r\n}\r\n","<ng-content select=\"wac-expansion-panel-header, wacExpansionPanelHeader\"></ng-content>\r\n<div *ngIf=\"isExpanded\">\r\n <ng-content></ng-content>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { AccordionComponent } from './accordion/accordion.component';\r\nimport { ExpansionPanelHeaderComponent } from './expansion-panel-header/expansion-panel-header.component';\r\nimport { ExpansionPanelHeaderDirective } from './expansion-panel-header/expansion-panel-header.directive';\r\nimport { ExpansionPanelComponent } from './expansion-panel/expansion-panel.component';\r\nimport { ExpansionPanelDirective } from './expansion-panel/expansion-panel.directive';\r\n\r\nconst components = [\r\n ExpansionPanelComponent,\r\n ExpansionPanelHeaderComponent,\r\n AccordionComponent\r\n];\r\n\r\nconst directives = [\r\n ExpansionPanelDirective,\r\n ExpansionPanelHeaderDirective\r\n];\r\n\r\nexport const ExpansionExport = [\r\n ...components,\r\n ...directives\r\n]\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ],\r\n exports: [\r\n ...ExpansionExport\r\n ],\r\n declarations: [\r\n ...ExpansionExport\r\n ],\r\n providers: [],\r\n})\r\nexport class ExpansionModule { }\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'wac-block-title-legacy',\r\n templateUrl: 'block-title-legacy.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n standalone: true,\r\n imports: [CommonModule],\r\n})\r\nexport class BlockTitleLegacyComponent {\r\n\r\n @Input()\r\n simple = false;\r\n\r\n @Input()\r\n icon = '';\r\n\r\n constructor() { }\r\n}","<h2 class=\"wac-block__title\" [ngClass]=\"{ 'is-simple': simple }\">\r\n <ng-content></ng-content> <i *ngIf=\"icon\" [ngClass]=\"icon\"></i>\r\n</h2>","import { Component, Input, Output, ViewEncapsulation, EventEmitter } from '@angular/core';\r\n\r\nexport interface SummaryItems {\r\n label: string;\r\n href?: string;\r\n};\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-summary',\r\n templateUrl: './summary.component.html',\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SummaryComponent {\r\n\r\n _activeItem = 0;\r\n\r\n @Input() set activeItem(activeItem: number) {\r\n this._activeItem = activeItem;\r\n }\r\n\r\n get activeItem(): number {\r\n return this._activeItem;\r\n }\r\n\r\n @Input() items: Array<SummaryItems>;\r\n\r\n @Output() itemChanged = new EventEmitter<number>();\r\n\r\n constructor() {}\r\n\r\n scrollToItem(i: number) {\r\n this._activeItem = i;\r\n this.itemChanged.emit(i);\r\n if (this.items[i].href) {\r\n const yOffset = -20;\r\n const element = window.document.getElementById(this.items[i].href);\r\n if (element) {\r\n const y = element.getBoundingClientRect().top + window.pageYOffset + yOffset;\r\n window.scrollTo({ top: y, behavior: 'smooth' });\r\n }\r\n }\r\n }\r\n\r\n}\r\n","<div class=\"wac-summary\">\r\n <ng-container *ngFor=\"let item of items; let i = index\">\r\n <p [ngClass]=\"{'active' : activeItem === i, 'item-link': item.href}\" (click)=\"scrollToItem(i)\">{{ item.label }}</p>\r\n </ng-container>\r\n</div>\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-google-preview',\r\n templateUrl: './google-preview.component.html'\r\n})\r\nexport class GooglePreviewComponent implements OnInit {\r\n\r\n @Input()\r\n title: string;\r\n\r\n @Input()\r\n url: string;\r\n\r\n @Input()\r\n description: string;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<div class=\"wac-google-preview\">\r\n <div class=\"wac-google-preview__url\" [innerHTML]=\"url\"></div>\r\n <div class=\"wac-google-preview__title\" [innerHTML]=\"title\"></div>\r\n <div class=\"wac-google-preview__description\" [innerHTML]=\"description\"></div>\r\n</div>\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-charging-bar',\r\n templateUrl: './charging-bar.component.html'\r\n})\r\nexport class ChargingBarComponent implements OnInit {\r\n\r\n @Input()\r\n value = 0;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<div class=\"wac-charging-bar\">\r\n <div class=\"wac-charging-bar__wrapLine\">\r\n <div class=\"wac-charging-bar__wrapLine__line\">\r\n <div class=\"wac-charging-bar__wrapLine__line__width\" [ngClass]=\"{'complete': value === 100}\" [ngStyle]=\"{'max-width': value + '%'}\"></div>\r\n </div>\r\n </div>\r\n <div class=\"wac-charging-bar__number\" [innerHTML]=\"value + '%'\"></div>\r\n</div>\r\n","import {Component, Input, OnInit} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-expanded-panel',\r\n templateUrl: './expanded-panel.component.html',\r\n})\r\nexport class ExpandedPanelComponent implements OnInit {\r\n\r\n @Input()\r\n label: string;\r\n\r\n @Input()\r\n section = false;\r\n\r\n @Input()\r\n open = false;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<div class=\"wac-expanded-panel\">\r\n <div class=\"wac-expanded-panel__top\" (click)=\"open = !open\">\r\n <div class=\"wac-expanded-panel__top__label\" [ngClass]=\"{'big': section}\" [innerHTML]=\"label\"></div>\r\n <div class=\"wac-expanded-panel__top__icon\" [ngClass]=\"{'is-open': open, 'big': section}\">\r\n <i class=\"fa-regular fa-angle-down\"></i>\r\n </div>\r\n </div>\r\n <div class=\"wac-expanded-panel__bottom\" [ngClass]=\"{'is-open': open}\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n","import {\r\n AfterContentInit,\r\n Component, ElementRef,\r\n HostListener,\r\n Input,\r\n OnInit,\r\n ViewChild,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport {NG_VALUE_ACCESSOR} from '@angular/forms';\r\nimport {Observable} from 'rxjs';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-row',\r\n templateUrl: './row.component.html',\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class RowComponent implements OnInit, AfterContentInit {\r\n @Input() colPosition: string;\r\n @Input() rowPosition: string;\r\n @Input()\r\n position: 'top-left'|'top-middle'|'top-right'|'middle-left'|'middle-middle'|'middle-right'|'bottom-left'|'bottom-middle'|'bottom-right'|'stretch-left'|'stretch-middle'|'stretch-right';\r\n id = '';\r\n childs = 0;\r\n classWidth = '';\r\n responsiveClass = '';\r\n @Input()\r\n width: string;\r\n @Input()\r\n height: string;\r\n @Input()\r\n responsiveAuto = false;\r\n @Input()\r\n childrensWidthAuto = false;\r\n @Input()\r\n visibility: 'mobile-only'|'tablet-only'|'desktop-only'|'under-desktop'|'above-mobile';\r\n @Input()\r\n marginChild = '';\r\n @Input()\r\n marginBottom = '';\r\n @Input()\r\n marginBottomChild = '';\r\n @Input()\r\n addWacBlock = false;\r\n @Input()\r\n lineDisplayContent = false;\r\n @Input()\r\n border = false;\r\n @Input()\r\n multipleLine = false;\r\n @Input()\r\n childrenByLine = 0;\r\n @Input()\r\n padding = '';\r\n @Input()\r\n gap = '';\r\n @Input()\r\n lastChildIsDown = false;\r\n @Input()\r\n addClass = '';\r\n halfMarginChild = '';\r\n @ViewChild(`container`) container: ElementRef;\r\n nbChildsClass = '';\r\n\r\n ngOnInit() {\r\n this.id = 'row-' + Math.floor(Math.random() * 100000);\r\n if (this.marginChild) {\r\n this.halfMarginChild = parseInt(this.marginChild) / 2 + 'px';\r\n }\r\n }\r\n\r\n responsiveControl(size) {\r\n if (size > 1024) {\r\n this.classWidth = '';\r\n } else if (size <= 480) {\r\n this.classWidth = 'low';\r\n } else {\r\n this.classWidth = 'medium';\r\n }\r\n }\r\n\r\n handleResponsiveAuto(size) {\r\n if (size < 500) {\r\n this.responsiveClass = 'mobile';\r\n } else {\r\n this.responsiveClass = '';\r\n }\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize() {\r\n const size = this.container.nativeElement.offsetWidth;\r\n this.responsiveControl(size);\r\n if (this.responsiveAuto) {\r\n this.handleResponsiveAuto(size);\r\n }\r\n }\r\n\r\n actionsDom() {\r\n this.childs = this.container.nativeElement.childElementCount;\r\n if (this.width) {\r\n document.getElementById(this.id).parentElement.style.maxWidth = this.width;\r\n }\r\n if (this.height) {\r\n document.getElementById(this.id).parentElement.style.maxHeight = this.height;\r\n }\r\n if ((this.childs > 1 && this.marginChild) || this.multipleLine) {\r\n for (let i = 0; i < this.childs; i++) {\r\n const child: any = document.getElementById(this.id).children[i];\r\n child.style.marginLeft = this.halfMarginChild;\r\n child.style.marginRight = this.halfMarginChild;\r\n if (this.multipleLine) {\r\n child.style.width = 'calc(' + (100 / this.childrenByLine) + '% - ' + this.marginChild + ')';\r\n }\r\n }\r\n }\r\n if (this.childs > 1 && this.marginBottomChild) {\r\n for (let i = 0; i < this.childs; i++) {\r\n const child: any = document.getElementById(this.id).children[i];\r\n child.style.marginBottom = this.marginBottomChild;\r\n }\r\n }\r\n this.nbChildsClass = 'nb-child-' + this.childs;\r\n this.onResize();\r\n }\r\n\r\n ngAfterContentInit() {\r\n setTimeout(() => {\r\n this.actionsDom();\r\n }, 1);\r\n }\r\n\r\n handleDomChange(event) {\r\n this.actionsDom();\r\n }\r\n}\r\n","<div [style.gridColumn]=\"colPosition\" [style.gridRow]=\"rowPosition\" watchDomTree (dom-changed)=\"handleDomChange($event)\" [ngStyle]=\"{'padding': padding,'margin-bottom': marginBottom,'transform': (childs > 1 || multipleLine ? 'translateX(-' + halfMarginChild + ')' : 'wrong'), 'width': ((childs > 1 && !addWacBlock) || multipleLine ? 'calc(100% + ' + marginChild + ')' : 'wrong')}\" class=\"wac-row {{ addWacBlock ? 'white-block' : '' }} {{ multipleLine ? 'multiple-line' : '' }} {{ lineDisplayContent ? 'direction-column' : '' }} {{ border ? 'with-border' : '' }} {{ lastChildIsDown ? 'last-child-down' : '' }} {{ childrensWidthAuto ? 'childrens-width-auto' : '' }} {{ position ? position : '' }} {{ visibility ? visibility : '' }} {{ responsiveClass ? responsiveClass : '' }} {{addClass}} {{nbChildsClass}} {{classWidth}}\" #container [ngClass]=\"{\r\n 'multiple-child': childs > 3,\r\n 'five-or-more-child': childs > 4,\r\n 'alone': childs === 1\r\n}\" [id]=\"id\">\r\n <ng-content></ng-content>\r\n</div>\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-column',\r\n templateUrl: './column.component.html',\r\n})\r\nexport class ColumnComponent {\r\n\r\n}\r\n","<p>column works!</p>\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-ai-express',\r\n templateUrl: './ai-express.component.html',\r\n})\r\nexport class AiExpressComponent implements OnInit {\r\n\r\n @Input() top = '28px';\r\n @Input() right = '1px';\r\n @Input() loading = false;\r\n @Input() disabled = false;\r\n @Input() wordingTop: string;\r\n @Input() wordingToken: string;\r\n @Input() wordingTokenLeft: string;\r\n @Input() wordingRegisterTop: string;\r\n @Input() wordingRegisterBtn: string;\r\n @Input() wordingDisabled: string;\r\n @Input() tokenCost = 0;\r\n @Input() tokenLeft = 0;\r\n @Input() tokenCount = 0;\r\n @Input() isRegister = false;\r\n @Output() validAction = new EventEmitter<boolean>();\r\n\r\n isOpen = false;\r\n hrefRegister = '/v3/ai/select-plan';\r\n\r\n constructor() {}\r\n ngOnInit(): void {}\r\n\r\n showPopup() {\r\n if (!this.isOpen && (!this.disabled || (this.disabled && this.wordingDisabled))) {\r\n this.isOpen = true;\r\n }\r\n }\r\n\r\n validate() {\r\n if (!this.disabled) {\r\n if (!this.isRegister) {\r\n if (!this.isOpen) {\r\n this.isOpen = true;\r\n } else {\r\n this.isOpen = false;\r\n }\r\n } else {\r\n if (!this.loading) {\r\n this.validAction.emit(true);\r\n }\r\n }\r\n }\r\n }\r\n\r\n hidePopup() {\r\n if (this.isOpen && (!this.disabled || (this.disabled && this.wordingDisabled))) {\r\n this.isOpen = false;\r\n }\r\n }\r\n\r\n}\r\n","<div class=\"wac-ai-express\">\r\n <ng-content></ng-content>\r\n <div [style.top]=\"top\" [style.right]=\"right\" class=\"wac-ai-express__icon\" [ngClass]=\"{'disabled': disabled, 'loading': loading}\" (click)=\"validate();\">\r\n <i class=\"fa-regular fa-wand-magic-sparkles\" *ngIf=\"!loading\"></i>\r\n <svg *ngIf=\"loading\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" style=\"margin:auto;background:transparent;display:block;\" width=\"200px\" height=\"200px\" viewBox=\"0 0 100 100\" preserveAspectRatio=\"xMidYMid\">\r\n <g transform=\"rotate(0 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.9166666666666666s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g><g transform=\"rotate(30 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.8333333333333334s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g><g transform=\"rotate(60 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.75s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g><g transform=\"rotate(90 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.6666666666666666s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g><g transform=\"rotate(120 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.5833333333333334s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g><g transform=\"rotate(150 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.5s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g><g transform=\"rotate(180 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.4166666666666667s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g><g transform=\"rotate(210 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.3333333333333333s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g><g transform=\"rotate(240 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.25s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g><g transform=\"rotate(270 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.16666666666666666s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g><g transform=\"rotate(300 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"-0.08333333333333333s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g><g transform=\"rotate(330 50 50)\">\r\n <rect x=\"47\" y=\"24\" rx=\"3\" ry=\"6\" width=\"6\" height=\"12\" fill=\"#59d0cf\">\r\n <animate attributeName=\"opacity\" values=\"1;0\" keyTimes=\"0;1\" dur=\"1s\" begin=\"0s\" repeatCount=\"indefinite\"></animate>\r\n </rect>\r\n </g>\r\n </svg>\r\n </div>\r\n <div *ngIf=\"isRegister && !disabled\" class=\"wac-ai-express__wrapper\" [ngClass]=\"{'height-auto': (!tokenCost || tokenCost === 0)}\">\r\n <div>\r\n <span [innerHTML]=\"wordingTop\"></span>\r\n </div>\r\n <div [ngClass]=\"{'hide': (!tokenCost || tokenCost === 0)}\">\r\n <div>\r\n <div>\r\n <i class=\"fa-solid fa-coin-front\"></i>\r\n <span [innerHTML]=\"tokenCost\"></span>\r\n </div>\r\n <span [innerHTML]=\"wordingToken\"></span>\r\n </div>\r\n <div>\r\n <div>\r\n <strong [innerHTML]=\"tokenLeft\"></strong> / <span [innerHTML]=\"tokenCount\"></span>\r\n </div>\r\n <div>\r\n <span [innerHTML]=\"wordingTokenLeft\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!isRegister && !disabled\" class=\"wac-ai-express__register\">\r\n <p [innerHTML]=\"wordingRegisterTop\"></p>\r\n <a [target]=\"'_blank'\" [href]=\"hrefRegister\"><i class=\"fa-regular fa-wand-magic-sparkles\"></i> <span [innerHTML]=\"wordingRegisterBtn\"></span></a>\r\n </div>\r\n <div *ngIf=\"disabled && wordingDisabled\" class=\"wac-ai-express__disabled\">\r\n <p [innerHTML]=\"wordingDisabled\"></p>\r\n </div>\r\n</div>\r\n","import { Directive } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { SelectDirective } from '../select/select/select.directive';\r\nimport { ValueChangeService } from '../select/select/value-change.service';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: '[wacRadioGroup]',\r\n providers: [\r\n { provide: NG_VALUE_ACCESSOR, useExisting: RadioGroupDirective, multi: true },\r\n ValueChangeService\r\n ],\r\n })\r\nexport class RadioGroupDirective<TOptionValue> extends SelectDirective<TOptionValue> {\r\n\r\n get multiple() {\r\n return false;\r\n }\r\n set multiple(value: boolean) {\r\n throw new Error('RadioGroupDirective does not support multiple selection');\r\n }\r\n override get searchByTyping() {\r\n return false;\r\n }\r\n set searchByTyping(value: boolean) {\r\n throw new Error('RadioGroupDirective does not support search by typing');\r\n }\r\n\r\n constructor(\r\n protected valueChangeService: ValueChangeService<TOptionValue>,\r\n ) {\r\n super(valueChangeService);\r\n }\r\n}","import { Component, ContentChild, ViewEncapsulation } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { RadioGroupDirective } from './radio-group.directive';\r\nimport { ValueChangeService } from '../select/select/value-change.service';\r\nimport { LabelComponent } from '../common/label/label.component';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-radio',\r\n templateUrl: './radio.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: RadioComponent,\r\n multi: true\r\n },\r\n ValueChangeService\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class RadioComponent<TOptionValue> extends RadioGroupDirective<TOptionValue> {\r\n \r\n @ContentChild(LabelComponent) label: LabelComponent;\r\n \r\n constructor(protected valueChangeService: ValueChangeService<TOptionValue>) {\r\n super(valueChangeService);\r\n }\r\n}\r\n","<div class=\"wac-radio\">\r\n <ng-container *ngIf=\"!!label\" class=\"wac-select__label\">\r\n <ng-content select=\"wac-label, .wac-label\" ></ng-content>\r\n </ng-container>\r\n <div class=\"wac-radio__row\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { uuid } from '../../../utils/uuid';\r\nimport { OptionComponent } from '../../select/option/option.component';\r\nimport { OPTION_SELECTION_HANDLER } from '../../select/option/option-selection-handler.token';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-radio-option',\r\n templateUrl: './option.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: OPTION_SELECTION_HANDLER, useExisting: RadioOptionComponent }],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class RadioOptionComponent<TOptionValue> extends OptionComponent<TOptionValue> {\r\n\r\n @ViewChild('contentWrapper') contentOption: ElementRef;\r\n\r\n optionId = `wac-radio-option-${uuid()}`;\r\n\r\n constructor(protected contentRef: ElementRef, protected changeDetectorRef: ChangeDetectorRef) {\r\n super(contentRef, changeDetectorRef);\r\n }\r\n\r\n override getContentRef(): ElementRef<any> {\r\n return this.contentOption;\r\n }\r\n}\r\n","<div\r\n [ngClass]=\"{ 'disabled': disabled }\"\r\n class=\"wac-radio-option\"\r\n >\r\n <div [ngClass]=\"{ 'selected': selected, 'disabled': disabled }\" #contentWrapper>\r\n <input type=\"checkbox\" [id]=\"optionId\" [checked]=\"selected\" />\r\n <label [for]=\"optionId\">\r\n <ng-content></ng-content>\r\n </label>\r\n </div>\r\n</div>","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-tag-dropdown',\r\n templateUrl: './tag-dropdown.component.html'\r\n})\r\nexport class TagDropdownComponent {\r\n @Input()\r\n hasIcons = false;\r\n @Input()\r\n items = [];\r\n\r\n @Input()\r\n label = '';\r\n @Input()\r\n class: 'default'|'success'|'warning'|'error' = 'default';\r\n @Input()\r\n icon = '';\r\n @Input()\r\n iconNext: string;\r\n @Input()\r\n colorIcon: string;\r\n @Input()\r\n iconFontSize = 12;\r\n\r\n @Input()\r\n isDropdown: boolean = true;\r\n\r\n @Output() userInput = new EventEmitter<any>();\r\n\r\n constructor() {}\r\n\r\n onUserInput(itemIndex) {\r\n this.userInput.emit(itemIndex);\r\n }\r\n}\r\n","<div class=\"wac-tag-dropdown\">\r\n <div class=\"wac-tag-dropdown__wrapper\" [ngClass]=\"{'hover': isDropdown}\">\r\n <div class=\"wac-tag-dropdown__wrapper__firstlevel\">\r\n <div [classList]=\"'wac-tag-dropdown__wrapper__firstlevel--' + class\">\r\n <i *ngIf=\"icon\" [ngClass]=\"icon + ' i-primary'\" [style.color]=\"colorIcon\" [style.font-size.px]=\"iconFontSize\"></i>\r\n {{ label }}\r\n <i *ngIf=\"iconNext\" [style.color]=\"colorIcon\" [ngClass]=\"iconNext + ' i-next'\" [style.font-size.px]=\"iconFontSize\"></i>\r\n <i *ngIf=\"isDropdown\" [ngClass]=\"'fas fa-angle-down i-dropdown'\" [style.font-size.px]=\"iconFontSize\"></i>\r\n </div>\r\n </div>\r\n <div class=\"wac-tag-dropdown__wrapper__sublevel\" *ngIf=\"isDropdown\">\r\n <ul class=\"wac-tag-dropdown__wrapper__sublevel__container\">\r\n <li\r\n *ngFor=\"let item of items\"\r\n class=\"wac-tag-dropdown__wrapper__sublevel__container__item\"\r\n (click)=\"onUserInput(item.index)\"\r\n >\r\n <i\r\n *ngIf=\"hasIcons\"\r\n [class]=\"item.icon\"\r\n [style.font-size.px]=\"item.iconFontSize ? item.iconFontSize : '14'\"\r\n ></i>\r\n <span>{{ item.label }}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-grid',\r\n templateUrl: './grid.component.html',\r\n styleUrls: ['./grid.component.scss']\r\n})\r\nexport class GridComponent implements OnInit{\r\n @Input() cols: number = 12;\r\n @Input() gap: number = 10;\r\n @Input() justify: string = 'center';\r\n @Input() align: string = 'center';\r\n\r\n gridTemplateColumns: string;\r\n\r\n constructor() {}\r\n ngOnInit(): void {\r\n this.gridTemplateColumns = `repeat(${this.cols}, 1fr)`;\r\n }\r\n\r\n}\r\n","<div \r\n [style.gridTemplateColumns]=\"gridTemplateColumns\" \r\n [style.gap]=\"gap + 'px'\" \r\n [style.justifyContent]=\"justify\"\r\n [style.alignItems]=\"align\"\r\n class=\"wac-grid\">\r\n <ng-content></ng-content>\r\n</div>","import {Component, EventEmitter, forwardRef, Input, Output} from \"@angular/core\";\r\nimport {ControlValueAccessor, NG_VALUE_ACCESSOR} from '@angular/forms';\r\n\r\n@Component ({\r\n standalone: false,\r\n selector: \"wac-color-picker\",\r\n templateUrl: \"./color-picker.component.html\",\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => ColorPickerComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\n\r\nexport class ColorPickerComponent implements ControlValueAccessor {\r\n @Input() label: string;\r\n @Input() value: string = '';\r\n @Input() gap: string = '12px';\r\n @Input() fontSize: string = '14px';\r\n @Input() id: string = 'colorPicker';\r\n @Input() info: string;\r\n @Output() colorChange = new EventEmitter<string>();\r\n\r\n constructor() {}\r\n\r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n\r\n writeValue(value: string): void {\r\n if (value !== undefined) {\r\n this.value = value;\r\n }\r\n }\r\n\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n setValue(event: any) {\r\n this.value = event.target.value;\r\n this.onChange(this.value);\r\n this.colorChange.emit(this.value);\r\n }\r\n\r\n changeColor(color: string) {\r\n // Check if it's an rgba color\r\n if (color.startsWith('rgba')) {\r\n this.value = color;\r\n this.onChange(this.value);\r\n this.colorChange.emit(this.value);\r\n return;\r\n }\r\n\r\n // Handle hex colors\r\n color = color.replace(/[^a-fA-F0-9]/g, '');\r\n\r\n // Add '#' if not present\r\n if (!color.startsWith('#')) {\r\n color = '#' + color;\r\n }\r\n\r\n\r\n // Validate and update color\r\n if (this.isValidColor(color)) {\r\n this.value = color;\r\n this.onChange(this.value);\r\n this.colorChange.emit(this.value);\r\n } else {\r\n this.colorChange.emit(this.value);\r\n }\r\n}\r\n\r\n\r\n isValidColor(color: string): boolean {\r\n const s = new Option().style;\r\n s.color = color;\r\n return s.color !== '';\r\n }\r\n}\r\n","<div class=\"w-color-picker\" [ngStyle]=\"{'gap': gap}\">\r\n\r\n <div class=\"w-label\">\r\n <label class=\"cp-label\" [for]=\"id\" [ngStyle]=\"{'font-size': fontSize}\">{{ label }}</label>\r\n <wac-info *ngIf=\"info\">{{ info }}</wac-info>\r\n </div>\r\n\r\n <div class=\"w-input\">\r\n\r\n <div\r\n class=\"color-preview\"\r\n [colorPicker]=\"value\"\r\n (click)=\"colorPickerInput.openDialog()\"\r\n [ngStyle]=\"{'background-color': value}\"\r\n [cpPosition]=\"'bottom'\"\r\n [cpPositionOffset]=\"'-35'\"\r\n ></div>\r\n\r\n <input\r\n class=\"cp-input\"\r\n [id]=\"id\"\r\n #colorPickerInput=\"ngxColorPicker\"\r\n maxlength=\"7\"\r\n placeholder=\"#000000\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"changeColor($event)\"\r\n [colorPicker]=\"value\"\r\n (colorPickerChange)=\"changeColor($event)\"\r\n [cpPosition]=\"'bottom'\"\r\n [cpPositionOffset]=\"'-35'\"\r\n (input)=\"setValue($event)\"\r\n />\r\n\r\n </div>\r\n\r\n</div>\r\n","import { CommonModule } from \"@angular/common\";\r\nimport {Component, EventEmitter, Input, Output, OnInit , HostListener, CUSTOM_ELEMENTS_SCHEMA, forwardRef, AfterViewInit} from \"@angular/core\";\r\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\n@Component ({\r\n selector: \"wac-border-picker\",\r\n templateUrl: \"./border-picker.component.html\",\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => BorderPickerComponent),\r\n multi: true\r\n }\r\n ]\r\n})\r\n\r\nexport class BorderPickerComponent implements ControlValueAccessor, OnInit, AfterViewInit {\r\n @Input() label: string;\r\n @Input() gap: string = '12px';\r\n @Input() fontSize: string = '14px';\r\n @Input() disabled: boolean = false;\r\n @Input() value: string = '0px';\r\n @Input() maxPixels: number = 50; // Valeur maximale en pixels\r\n\r\n @Output() blurred = new EventEmitter<void>();\r\n @Output() borderRadiusChange = new EventEmitter<string>();\r\n sliderValue: number = 0;\r\n\r\n constructor() {}\r\n\r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n\r\n ngOnInit() {\r\n if (this.value) {\r\n const numericValue = parseInt(this.value.replace('px', ''), 10);\r\n if (!isNaN(numericValue)) {\r\n this.sliderValue = numericValue;\r\n }\r\n }\r\n }\r\n\r\n writeValue(value: string | null): void {\r\n if (value !== undefined) {\r\n this.value = value || '0px'; // Default to '0px' if value is null\r\n \r\n if (this.value) {\r\n const numericValue = parseInt(this.value.replace('px', ''), 10);\r\n if (!isNaN(numericValue)) {\r\n this.sliderValue = numericValue;\r\n this.updateSliderPercentage();\r\n }\r\n } else {\r\n // Handle null value case\r\n this.sliderValue = 0;\r\n this.value = '0px';\r\n this.updateSliderPercentage();\r\n }\r\n }\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n setValue(event: any) {\r\n this.value = event.target.value || '0px';\r\n \r\n if (this.value) {\r\n const numericValue = parseInt(this.value.replace('px', ''), 10);\r\n \r\n if (!isNaN(numericValue)) {\r\n this.sliderValue = numericValue;\r\n this.updateSliderPercentage();\r\n }\r\n } else {\r\n this.sliderValue = 0;\r\n }\r\n \r\n this.onChange(this.value);\r\n this.borderRadiusChange.emit(this.value);\r\n }\r\n\r\n private updateSliderPercentage() {\r\n const slider = document.querySelector('.bp-range') as HTMLElement;\r\n if (slider) {\r\n const percentage = (this.sliderValue / this.maxPixels) * 100;\r\n slider.style.setProperty('--slider-percentage', `${percentage}%`);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.updateSliderPercentage();\r\n }\r\n\r\n onFocusOut() {\r\n if (!this.value.endsWith('px') && this.value) {\r\n this.value = this.value + 'px';\r\n this.onChange(this.value);\r\n this.borderRadiusChange.emit(this.value);\r\n }\r\n }\r\n\r\n updateBorderRadius(value: number) {\r\n this.value = value + 'px';\r\n this.updateSliderPercentage();\r\n this.onChange(this.value);\r\n this.borderRadiusChange.emit(this.value);\r\n }\r\n\r\n setBorderRadius(value: number) {\r\n this.sliderValue = value;\r\n this.updateBorderRadius(value);\r\n }\r\n}","<div class=\"w-border-picker\" [ngStyle]=\"{'gap': gap}\">\r\n\r\n <label class=\"bp-label\" for=\"borderPicker\" [ngStyle]=\"{'font-size': fontSize}\">{{ label }}</label>\r\n\r\n <div class=\"w-input\">\r\n\r\n <div class=\"border-preview\" [ngStyle]=\"{'border-radius': value}\">\r\n <div class=\"mask1\"></div>\r\n <div class=\"mask2\"></div>\r\n </div>\r\n\r\n <input\r\n class=\"bp-range\"\r\n type=\"range\"\r\n min=\"0\"\r\n [max]=\"maxPixels\"\r\n [(ngModel)]=\"sliderValue\"\r\n (ngModelChange)=\"updateBorderRadius($event)\"\r\n />\r\n\r\n <input\r\n class=\"bp-input\"\r\n id=\"borderPicker\"\r\n [placeholder]=\"sliderValue\"\r\n maxlength=\"5\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"onChange($event)\"\r\n (focusout)=\"onFocusOut()\"\r\n (input)=\"setValue($event)\"\r\n />\r\n\r\n </div>\r\n\r\n</div>","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-slide-in',\r\n templateUrl: './slide-in.component.html'\r\n})\r\nexport class SlideInComponent {\r\n @Input() title: string = '';\r\n @Input() subtitle: string = '';\r\n @Input() isOpen: boolean = false;\r\n @Input() hasButton: boolean = false;\r\n @Input() primaryButtonText: string = 'Valider';\r\n @Input() secondaryButtonText: string = 'Annuler';\r\n @Input() maxWidth: string | null = null;\r\n\r\n @Output() closed = new EventEmitter<void>();\r\n @Output() primaryButtonClick = new EventEmitter<void>();\r\n @Output() secondaryButtonClick = new EventEmitter<void>();\r\n\r\n /**\r\n * Ouvre le panneau coulissant\r\n */\r\n open(): void {\r\n this.isOpen = true;\r\n document.body.classList.add('slide-in-open');\r\n }\r\n\r\n /**\r\n * Ferme le panneau coulissant\r\n */\r\n close(): void {\r\n this.isOpen = false;\r\n document.body.classList.remove('slide-in-open');\r\n this.closed.emit();\r\n }\r\n\r\n /**\r\n * Gère le clic sur le bouton primaire\r\n */\r\n onPrimaryButtonClick(): void {\r\n this.primaryButtonClick.emit();\r\n }\r\n\r\n /**\r\n * Gère le clic sur le bouton secondaire\r\n */\r\n onSecondaryButtonClick(): void {\r\n this.secondaryButtonClick.emit();\r\n }\r\n}","<ng-container class=\"slide-in\">\r\n <div class=\"slide-in__overlay\" [class.is-visible]=\"isOpen\" (click)=\"close()\"></div>\r\n \r\n <div class=\"slide-in__panel\" [class.is-open]=\"isOpen\" [style.max-width]=\"maxWidth ? maxWidth : '534px'\">\r\n \r\n <div class=\"slide-in__panel__header\">\r\n <div class=\"w-title\">\r\n <wac-h1 noMargin class=\"slide-in__panel__header__title\">{{ title }}</wac-h1>\r\n <wac-text *ngIf=\"subtitle\" noMargin [textClass]=\"'grey'\">{{ subtitle }}</wac-text>\r\n </div>\r\n <i class=\"slide-in__panel__header__close fa-regular fa-xmark\" (click)=\"close()\"></i>\r\n </div>\r\n \r\n <div class=\"slide-in__panel__content\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <div class=\"slide-in__panel__footer\" *ngIf=\"hasButton\">\r\n <wac-button \r\n [extraClasses]=\"'is-grey is-outlined'\" \r\n [label]=\"secondaryButtonText\"\r\n (click)=\"onSecondaryButtonClick()\"\r\n ></wac-button>\r\n <wac-button \r\n [extraClasses]=\"'is-info'\" \r\n [label]=\"primaryButtonText\"\r\n (click)=\"onPrimaryButtonClick()\"\r\n ></wac-button>\r\n </div>\r\n \r\n </div>\r\n</ng-container>","import { Component, HostBinding, Input, OnInit } from '@angular/core';\r\nimport { Params, Router } from '@angular/router';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-menu-tile',\r\n templateUrl: './menu-tile.component.html',\r\n styleUrls: ['./menu-tile.component.scss']\r\n})\r\nexport class MenuTileComponent implements OnInit {\r\n\r\n private _col: number = 1;\r\n\r\n @Input()\r\n get col(): number { \r\n return this._col; \r\n }\r\n set col(value: number) {\r\n // Ensure col is between 1-12 for a 12-column grid\r\n this._col = !isNaN(Number(value)) ? Math.min(Math.max(Math.round(Number(value)), 1), 12) : 1;\r\n }\r\n\r\n @HostBinding('class')\r\n get hostClasses(): string {\r\n return `wac-menu-tile wac-menu-tile--col-${this.col}`;\r\n }\r\n\r\n @Input() iconPath: string = '';\r\n\r\n @Input() title: string = '';\r\n\r\n @Input() description: string = '';\r\n\r\n @Input() new: string = '';\r\n\r\n @Input() newElement: boolean = false;\r\n\r\n @Input() url: string | null = null;\r\n\r\n @Input() urlQueryParams: Params = null;\r\n\r\n @Input() external: boolean = false;\r\n\r\n constructor(private router: Router) {}\r\n\r\n ngOnInit() {}\r\n\r\n navigate() {\r\n const queryParams = this.urlQueryParams;\r\n this.router.navigate([this.url], \r\n {\r\n queryParams,\r\n queryParamsHandling: 'merge',\r\n }\r\n );\r\n }\r\n}\r\n","<div class=\"wac-menu-tile__new\" *ngIf=\"newElement\">\r\n <i class=\"fa-regular fa-wand-magic-sparkles\"></i>\r\n <wac-text noMargin *ngIf=\"new\">{{ new }}</wac-text>\r\n</div>\r\n<a class=\"wac-menu-tile__content\" [ngClass]=\"{'with-desc': description}\" *ngIf=\"url && url.startsWith('http')\" [href]=\"url\" [target]=\"external ? '_blank' : '_self'\">\r\n <img [src]=\"iconPath\" />\r\n <div class=\"w-text\">\r\n <wac-text noMargin>{{ title }}</wac-text>\r\n <wac-text *ngIf=\"description\" noMargin [textClass]=\"'grey'\">{{ description }}</wac-text>\r\n </div>\r\n</a>\r\n<a class=\"wac-menu-tile__content\" [ngClass]=\"{'with-desc': description}\" *ngIf=\"url && !url.startsWith('http')\" (click)=\"navigate()\">\r\n <img [src]=\"iconPath\" />\r\n <div class=\"w-text\">\r\n <wac-text noMargin>{{ title }}</wac-text>\r\n <wac-text *ngIf=\"description\" noMargin [textClass]=\"'grey'\">{{ description }}</wac-text>\r\n </div>\r\n</a>\r\n<div *ngIf=\"!url\" class=\"wac-menu-tile__content\" [ngClass]=\"{'with-desc': description}\">\r\n <img [src]=\"iconPath\" />\r\n <div class=\"w-text\">\r\n <wac-text noMargin>{{ title }}</wac-text>\r\n <wac-text *ngIf=\"description\" noMargin [textClass]=\"'grey'\">{{ description }}</wac-text>\r\n </div>\r\n</div>\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {ImageTextSectionDto} from \"./image-text-section.dto\";\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-image-text-section',\r\n templateUrl: './image-text-section.component.html'\r\n})\r\nexport class ImageTextSectionComponent {\r\n\r\n private _data!: ImageTextSectionDto;\r\n public textIsArray = false;\r\n @Input()\r\n set data(value: ImageTextSectionDto) {\r\n this._data = {\r\n buttonTarget: '_self',\r\n reverse: false,\r\n ...value,\r\n };\r\n if (typeof this._data.text === 'string') {\r\n this.textIsArray = false;\r\n } else {\r\n this.textIsArray = true;\r\n }\r\n }\r\n\r\n get data(): ImageTextSectionDto {\r\n return this._data;\r\n }\r\n constructor() {}\r\n}\r\n","<div class=\"wac-image-text-section\" [ngClass]=\"{'wac-image-text-section--reverse': data?.reverse}\">\r\n <div class=\"wac-image-text-section__left\">\r\n <div class=\"wac-image-text-section__left__text\">\r\n <h2 *ngIf=\"data?.title\" [innerHTML]=\"data.title\"></h2>\r\n <ng-container *ngIf=\"data?.text && textIsArray\">\r\n <div class=\"wac-image-text-section__left__text__paragraph\">\r\n <p *ngFor=\"let text of data.text; let i = index\" [innerHTML]=\"text\"></p>\r\n </div>\r\n </ng-container>\r\n <p *ngIf=\"data?.text && !textIsArray\" [innerHTML]=\"data?.text\"></p>\r\n <ng-container *ngIf=\"data?.listItems\">\r\n <ul>\r\n <li *ngFor=\"let list of data?.listItems\"><i class=\"fa-solid fa-check\"></i><span [innerHTML]=\"list\"></span></li>\r\n </ul>\r\n </ng-container>\r\n </div>\r\n <ng-container *ngIf=\"data?.buttonLink && data?.buttonText\">\r\n <div class=\"wac-image-text-section__left__btn\">\r\n <wac-button [label]=\"data?.buttonText\" routerLink=\"{{data?.buttonLink}}\" [target]=\"data?.buttonTarget\"></wac-button>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"wac-image-text-section__right\">\r\n <div class=\"gabarit-img-main\">\r\n <img [src]=\"data?.imageSrc\" [alt]=\"data?.imageAlt\" />\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, Input} from '@angular/core';\r\nimport {FaqSectionDto} from \"./faq-section.dto\";\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-faq-section',\r\n templateUrl: './faq-section.component.html'\r\n})\r\nexport class FaqSectionComponent {\r\n\r\n @Input() data: FaqSectionDto;\r\n constructor() {}\r\n}\r\n","<div class=\"wac-faq-section\">\r\n <h2 *ngIf=\"data?.title\" [innerHTML]=\"data?.title\"></h2>\r\n <div class=\"wac-faq-section__wrapper\">\r\n <div class=\"wac-faq-section__wrapper__item\" *ngFor=\"let item of data?.content; let i = index;\">\r\n <strong [innerHTML]=\"item.question\"></strong>\r\n <p [innerHTML]=\"item.answer\"></p>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, Input} from '@angular/core';\r\nimport {ReassuranceSectionDto} from \"./reassurance-section.dto\";\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-reassurance-section',\r\n templateUrl: './reassurance-section.component.html'\r\n})\r\nexport class ReassuranceSectionComponent {\r\n\r\n @Input() data: ReassuranceSectionDto;\r\n constructor() {}\r\n}\r\n","<div class=\"wac-reassurance-section\">\r\n <h2 *ngIf=\"data?.title\" [innerHTML]=\"data?.title\" class=\"wac-reassurance-section__title\"></h2>\r\n <div class=\"wac-reassurance-section__wrapper\">\r\n <div class=\"wac-reassurance-section__wrapper__item\" *ngFor=\"let item of data?.content; let i = index;\">\r\n <strong [innerHTML]=\"item.title\"></strong>\r\n <span [innerHTML]=\"item.text\"></span>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, Input} from '@angular/core';\r\nimport {PricingSectionDto} from \"./pricing-section.dto\";\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'wac-pricing-section',\r\n templateUrl: './pricing-section.component.html'\r\n})\r\nexport class PricingSectionComponent {\r\n\r\n @Input() data: PricingSectionDto;\r\n constructor() {}\r\n}\r\n","<div class=\"wac-pricing-section\">\r\n <div class=\"wac-pricing-section__top\">\r\n <h2 *ngIf=\"data?.title\" [innerHTML]=\"data?.title\"></h2>\r\n <div class=\"wac-pricing-section__top__text\" *ngIf=\"data?.subtitle\" [innerHTML]=\"data?.subtitle\"></div>\r\n </div>\r\n\r\n <div class=\"wac-pricing-section__table\">\r\n <div class=\"wac-pricing-section__table__top\">\r\n <div class=\"wac-pricing-section__table__item\" *ngFor=\"let table of data?.tables\">\r\n <div class=\"wac-pricing-section__table__item__thead\">\r\n <i *ngIf=\"table?.icon\" class=\"{{ table?.icon }}\"></i>\r\n <strong [innerHTML]=\"table.title\"></strong>\r\n </div>\r\n <div class=\"wac-pricing-section__table__item__tbody\">\r\n <div class=\"wac-pricing-section__table__item__tbody__label\">\r\n <strong *ngFor=\"let th of table.thead\">{{ th }}</strong>\r\n </div>\r\n <div class=\"wac-pricing-section__table__item__tbody__line\" *ngFor=\"let line of table.tbody\">\r\n <strong class=\"hide-for-mobile\">{{ line[0] }}</strong>\r\n <span *ngFor=\"let l of line;let i = index;\" [ngClass]=\"{'hide': i === 0}\">\r\n <ng-container *ngIf=\"i > 0\">\r\n <span><strong class=\"show-for-mobile\">{{ line[0] }}<br/></strong>{{l}}</span>\r\n </ng-container>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wac-pricing-section__table__bottom\" *ngIf=\"data?.furtherInformation\">\r\n <p class=\"italic small\" [innerHTML]=\"data?.furtherInformation\"></p>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NwbAllModule } from '@wizishop/ng-wizi-bulma';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { LoaderComponent } from './loader/loader.component';\r\nimport { InputSearchComponent } from './inputs/input-search/input-search.component';\r\nimport { SharedDirectives } from '../directives/shared-directives.module';\r\nimport { CdkTableModule } from '@angular/cdk/table';\r\nimport { CheckboxComponent } from './checkbox/checkbox.component';\r\nimport { TableComponent } from './table/table.component';\r\nimport { TagComponent } from './tag/tag.component';\r\nimport { TabsComponent } from './tabs/tabs.component';\r\nimport { TabComponent } from './tabs/tab/tab.component';\r\nimport { ButtonComponent } from './button/button.component';\r\nimport { InfoComponent } from './info/info.component';\r\nimport { SettingsComponent } from './settings/settings.component';\r\nimport { DeleteComponent } from './delete/delete.component';\r\nimport { DropdownComponent } from './dropdown/dropdown.component';\r\nimport { ImageComponent } from './image/image.component';\r\nimport { BackComponent } from './back/back.component';\r\nimport { SeparatorComponent } from './separator/separator.component';\r\nimport { LogoComponent } from './logo/logo.component';\r\nimport { RadioLegacyComponent } from './radio-legacy/radio.component';\r\nimport { StateComponent } from './state/state.component';\r\nimport { TagLabelComponent } from './tag-label/tag-label.component';\r\nimport { CalendarComponent } from './calendar/calendar.component';\r\nimport { WzEditInPlaceComponent } from './edit-in-place/edit-in-place.component';\r\nimport { TextAreaComponent } from './text-area/text-area.component';\r\nimport { H1Component } from './hn/h1/h1.component';\r\nimport { H2Component } from './hn/h2/h2.component';\r\nimport { H3Component } from './hn/h3/h3.component';\r\nimport { HeaderPageComponent } from './header-page/header-page.component';\r\nimport { InputComponent } from './inputs/input/input.component';\r\nimport { LinkComponent } from './link/link.component';\r\nimport { ProgressBarComponent } from './progress-bar/progress-bar.component';\r\nimport { SwitchComponent } from './switch/switch.component';\r\nimport { TooltipComponent } from './tooltip/tooltip.component';\r\nimport { AlertComponent } from './alert/alert.component';\r\nimport { TextComponent } from './text/text.component';\r\nimport { PaginationModule } from './pagination/pagination.module';\r\nimport { PaginationComponent } from './pagination/pagination.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { TableModule } from './table/table.module';\r\nimport { CheckBoxRow } from './table/directives/checkBoxRow.directive';\r\nimport { TableColumn } from './table/directives/column.directive';\r\nimport { TableColumnHeader } from './table/directives/columnHeader.directive';\r\nimport { TableRow } from './table/directives/raw.directive';\r\nimport { TooltipModule } from './tooltip/tooltip.module';\r\nimport { CheckboxModule } from './checkbox/checkbox.module';\r\nimport { UploadComponent } from './upload/upload.component';\r\nimport { H4Component } from './hn/h4/h4.component';\r\nimport { SelectInTextComponent } from './select-in-text/select-in-text.component';\r\nimport { MultipleSearchComponent } from './multiple-search/multiple-search.component';\r\nimport { MultipleSearchPlusComponent } from './multiple-search-plus/multiple-search-plus.component';\r\nimport { InputWithSelectComponent } from './inputs/input-with-select/input-with-select.component';\r\nimport { PopinComponent } from './popin/popin.component';\r\nimport { FreePopinComponent } from './free-popin/free-popin.component';\r\nimport { BlockComponent } from './block/block.component';\r\nimport { WrapperComponent } from './wrapper/wrapper.component';\r\nimport { FiltersComponent } from './filters/filters.component';\r\nimport { WrapperBlocsComponent } from './wrapper-blocs/wrapper-blocs.component';\r\nimport { SnackbarComponent } from './snackbar/snackbar.component';\r\nimport { RouterModule } from '@angular/router';\r\nimport {AlertPopupModule} from './alert-popup/alert-popup-module';\r\nimport {SearchComponent} from './search/search.component';\r\nimport {SelectedListComponent} from './selected-list/selected-list.component';\r\nimport { TreeComponent } from './tree/tree.component';\r\nimport { TreeModule } from './tree/tree.module';\r\nimport { SharedPipes } from '../pipes/shared-pipes.module';\r\nimport { OptionalDisableContainerComponent } from './optional-disable-container/optional-disable-container.component';\r\nimport { OptionComponent } from './select/option/option.component';\r\nimport { OptionGroupComponent } from './select/option-group/option-group.component';\r\nimport { SelectComponent } from './select/select/select.component';\r\nimport { OptionCallToActionComponent } from './select/option-call-to-action/option-call-to-action.component';\r\nimport { PlaceholderComponent } from './common/placeholder/placeholder.component';\r\nimport { SelectSearchTriggerComponent } from './select/select-search-trigger/select-search-trigger.component';\r\nimport { LabelComponent } from './common/label/label.component';\r\nimport {WrapperSidebarComponent} from './wrapper-sidebar/wrapper-sidebar.component';\r\nimport {AutosizeModule} from 'ngx-autosize';\r\nimport {BreadcrumbsComponent} from './breadcrumbs/breadcrumbs.component';\r\nimport {CardPriceComponent} from './card-price/card-price.component';\r\nimport {TokenCheckComponent} from './token-check/token-check.component';\r\nimport {BlockWithCheckboxComponent} from './block-with-checkbox/block-with-checkbox.component';\r\nimport {ConfirmDeleteComponent} from './confirm-delete/confirm-delete.component';\r\nimport {MosaicComponent} from './mosaic/mosaic.component';\r\nimport {NgScrollbarModule} from 'ngx-scrollbar';\r\nimport {NgScrollReached} from 'ngx-scrollbar/reached-event';\r\nimport {ContentWithButtonsComponent} from './content-with-buttons/content-with-buttons.component';\r\nimport {WrapperMultipleBlockComponent} from './wrapper-multiple-block/wrapper-multiple-block.component';\r\nimport {DraganddropListComponent} from './draganddrop-list/draganddrop-list.component';\r\nimport {DragDropModule} from '@angular/cdk/drag-drop';\r\nimport { ExpansionModule, ExpansionExport } from './expansion/expansion.module';\r\nimport { BlockSeparatorComponent } from './block/separator/block-separator.component';\r\nimport { BlockTitleLegacyComponent } from './block/block-title-legacy/block-title-legacy.component';\r\nimport { SummaryComponent } from './summary/summary.component';\r\nimport {GooglePreviewComponent} from './google-preview/google-preview.component';\r\nimport {ChargingBarComponent} from './charging-bar/charging-bar.component';\r\nimport {ExpandedPanelComponent} from './expanded-panel/expanded-panel.component';\r\nimport {RowComponent} from './row/row.component';\r\nimport {ColumnComponent} from './column/column.component';\r\nimport {AiExpressComponent} from './ai-express/ai-express.component';\r\nimport { RadioComponent } from './radio/radio.component';\r\nimport { RadioOptionComponent } from './radio/option/option.component';\r\nimport { TagDropdownComponent } from \"./tag-dropdown/tag-dropdown.component\";\r\nimport { GridComponent } from './grid/grid.component';\r\nimport { ColorPickerDirective } from 'ngx-color-picker';\r\nimport { ColorPickerComponent } from './color-picker/color-picker.component';\r\nimport { BorderPickerComponent } from './border-picker/border-picker.component';\r\nimport { SlideInComponent } from './slide-in/slide-in.component';\r\nimport { MenuTileComponent } from './menu-tile/menu-tile.component';\r\nimport {ImageTextSectionComponent} from \"./image-text-section/image-text-section.component\";\r\nimport {FaqSectionComponent} from \"./faq-section/faq-section.component\";\r\nimport {ReassuranceSectionComponent} from \"./reassurance-section/reassurance-section.component\";\r\nimport {PricingSectionComponent} from \"./pricing-section/pricing-section.component\";\r\n\r\nconst components = [\r\n GridComponent,\r\n TagComponent,\r\n ButtonComponent,\r\n InfoComponent,\r\n SettingsComponent,\r\n DeleteComponent,\r\n DropdownComponent,\r\n ImageComponent,\r\n BackComponent,\r\n SeparatorComponent,\r\n LogoComponent,\r\n RadioLegacyComponent,\r\n RadioComponent,\r\n StateComponent,\r\n TagLabelComponent,\r\n CalendarComponent,\r\n WzEditInPlaceComponent,\r\n AlertComponent,\r\n HeaderPageComponent,\r\n SwitchComponent,\r\n LinkComponent,\r\n H1Component,\r\n H2Component,\r\n H3Component,\r\n H4Component,\r\n TextComponent,\r\n UploadComponent,\r\n SelectInTextComponent,\r\n MultipleSearchComponent,\r\n MultipleSearchPlusComponent,\r\n PopinComponent,\r\n FreePopinComponent,\r\n WrapperComponent,\r\n FiltersComponent,\r\n WrapperBlocsComponent,\r\n SearchComponent,\r\n SelectedListComponent,\r\n OptionalDisableContainerComponent,\r\n SelectComponent,\r\n OptionComponent,\r\n OptionCallToActionComponent,\r\n PlaceholderComponent,\r\n LabelComponent,\r\n SelectSearchTriggerComponent,\r\n WrapperSidebarComponent,\r\n BreadcrumbsComponent,\r\n CardPriceComponent,\r\n TokenCheckComponent,\r\n BlockWithCheckboxComponent,\r\n ConfirmDeleteComponent,\r\n MosaicComponent,\r\n ContentWithButtonsComponent,\r\n WrapperMultipleBlockComponent,\r\n DraganddropListComponent,\r\n SummaryComponent,\r\n GooglePreviewComponent,\r\n DraganddropListComponent,\r\n ChargingBarComponent,\r\n ExpandedPanelComponent,\r\n RowComponent,\r\n ColumnComponent,\r\n AiExpressComponent,\r\n RadioOptionComponent,\r\n TagDropdownComponent,\r\n SlideInComponent,\r\n OptionGroupComponent,\r\n MenuTileComponent,\r\n ColorPickerComponent,\r\n ImageTextSectionComponent,\r\n FaqSectionComponent,\r\n ReassuranceSectionComponent,\r\n PricingSectionComponent\r\n];\r\n\r\nconst exportsFromModule = [\r\n PaginationComponent,\r\n TableComponent,\r\n TableColumn,\r\n CheckBoxRow,\r\n TableColumnHeader,\r\n TableRow,\r\n TooltipComponent,\r\n CheckboxComponent,\r\n LoaderComponent,\r\n TreeComponent,\r\n ...ExpansionExport\r\n];\r\n\r\nconst standaloneComponents = [\r\n TabsComponent,\r\n TabComponent,\r\n SnackbarComponent,\r\n BlockComponent,\r\n LoaderComponent,\r\n TextAreaComponent,\r\n ProgressBarComponent,\r\n InputComponent,\r\n InputSearchComponent,\r\n InputWithSelectComponent,\r\n BlockTitleLegacyComponent,\r\n BlockSeparatorComponent,\r\n BorderPickerComponent\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n NwbAllModule,\r\n TranslateModule,\r\n ReactiveFormsModule,\r\n SharedDirectives,\r\n SharedPipes,\r\n CdkTableModule,\r\n DragDropModule,\r\n PaginationModule,\r\n TableModule,\r\n TooltipModule,\r\n CheckboxModule,\r\n AlertPopupModule,\r\n RouterModule,\r\n AutosizeModule,\r\n NgScrollbarModule,\r\n NgScrollReached,\r\n TreeModule,\r\n ExpansionModule,\r\n ColorPickerDirective,\r\n TabsComponent,\r\n TabComponent,\r\n SnackbarComponent,\r\n BlockComponent,\r\n LoaderComponent,\r\n TextAreaComponent,\r\n ProgressBarComponent,\r\n InputComponent,\r\n InputSearchComponent,\r\n InputWithSelectComponent,\r\n BlockTitleLegacyComponent,\r\n BlockSeparatorComponent,\r\n BorderPickerComponent\r\n ],\r\n declarations: components,\r\n exports: [\r\n ...components,\r\n ...exportsFromModule,\r\n TabsComponent,\r\n TabComponent,\r\n SnackbarComponent,\r\n BlockComponent,\r\n LoaderComponent,\r\n TextAreaComponent,\r\n ProgressBarComponent,\r\n InputComponent,\r\n InputSearchComponent,\r\n InputWithSelectComponent,\r\n BlockTitleLegacyComponent,\r\n BlockSeparatorComponent,\r\n BorderPickerComponent\r\n ]\r\n})\r\nexport class SharedComponentsModule {}\r\n","import { NwbAllModule } from '@wizishop/ng-wizi-bulma';\r\nimport { NgModule } from '@angular/core';\r\nimport { SharedComponentsModule } from './components/shared-components.module';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SharedDirectives } from './directives/shared-directives.module';\r\nimport { SharedPipes } from './pipes/shared-pipes.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n SharedComponentsModule,\r\n SharedDirectives,\r\n SharedPipes,\r\n NwbAllModule],\r\n exports: [SharedComponentsModule, SharedDirectives, SharedPipes]\r\n})\r\nexport class WiziComponentsModule {}\r\n","import { NwbFilterGroup } from \"@wizishop/ng-wizi-bulma\";\r\nimport { Observable, ReplaySubject } from \"rxjs\";\r\nimport { TableFilters } from \"./table-filters.model\";\r\n\r\nexport class TableFiltersGroup extends NwbFilterGroup {\r\n tableFiltersValuesChange$: ReplaySubject<TableFilters>;\r\n tableFiltersValuesDebouncedChange$: Observable<TableFilters>;\r\n\r\n set(key: \"sort\" | \"order\" | \"searchValue\" | \"totalItems\" | \"itemsPerPage\" | \"currentPage\", value: any): void {\r\n super.set(key, value);\r\n }\r\n\r\n resetToFirstPage(): void {\r\n this.set(\"currentPage\", 1);\r\n }\r\n}","import { BehaviorSubject, distinctUntilChanged, tap } from \"rxjs\";\r\nimport { TableFilters } from \"./table-filters.model\";\r\n\r\n/**\r\n * Avoid to fetch data when totalItems change\r\n * @returns\r\n */\r\nexport function distinctUntilTableFiltersChanged() {\r\n return distinctUntilChanged<TableFilters>((previousFilters, currentFilters) => {\r\n return previousFilters.searchValue === currentFilters.searchValue &&\r\n previousFilters.sort === currentFilters.sort &&\r\n previousFilters.order === currentFilters.order &&\r\n previousFilters.currentPage === currentFilters.currentPage &&\r\n previousFilters.itemsPerPage === currentFilters.itemsPerPage;\r\n });\r\n}\r\n\r\nexport function updateTableFiltersTotalItems<TResponse extends {totalItems: number}>(tableFilters$: BehaviorSubject<TableFilters>, totalItems?: number) {\r\n return tap((response: TResponse) => tableFilters$.next({\r\n ...tableFilters$.getValue(),\r\n totalItems: totalItems ?? response['totalItems']\r\n }))\r\n}","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\r\n\r\nconst currentUsedSelectorForThisAnimation = 'li, div';\r\n\r\nexport const showFromBottom = trigger('showFromBottom', [\r\n transition('* => *', [\r\n animation([\r\n query(\r\n currentUsedSelectorForThisAnimation,\r\n style({\r\n opacity: 0,\r\n position: 'relative',\r\n bottom: -150\r\n }),\r\n { optional: true }\r\n ),\r\n query(currentUsedSelectorForThisAnimation, [stagger('150ms', animate('100ms', style({ opacity: 1, bottom: 0 })))], { optional: true })\r\n ])\r\n ])\r\n]);\r\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\r\n\r\nconst currentUsedSelectorForThisAnimation = 'li, div';\r\n\r\nexport const showFromTop = trigger('showFromTop', [\r\n transition('* => *', [\r\n animation([\r\n query(\r\n currentUsedSelectorForThisAnimation,\r\n style({\r\n opacity: 0,\r\n position: 'relative',\r\n top: -150\r\n }),\r\n { optional: true }\r\n ),\r\n query(currentUsedSelectorForThisAnimation, [stagger('150ms', animate('100ms', style({ opacity: 1, top: 0 })))], { optional: true })\r\n ])\r\n ])\r\n]);\r\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\r\n\r\nconst currentUsedSelectorForThisAnimation = 'li, div';\r\n\r\nexport const showFromLeft = trigger('showFromLeft', [\r\n transition('* => *', [\r\n animation([\r\n query(\r\n currentUsedSelectorForThisAnimation,\r\n style({\r\n opacity: 0,\r\n position: 'relative',\r\n left: -150\r\n }),\r\n { optional: true }\r\n ),\r\n query(currentUsedSelectorForThisAnimation, [stagger('150ms', animate('100ms', style({ opacity: 1, left: 0 })))], { optional: true })\r\n ])\r\n ])\r\n]);\r\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\r\n\r\nconst currentUsedSelectorForThisAnimation = 'li, div';\r\n\r\nexport const showFromRight = trigger('showFromRight', [\r\n transition('* => *', [\r\n animation([\r\n query(\r\n currentUsedSelectorForThisAnimation,\r\n style({\r\n opacity: 0,\r\n position: 'relative',\r\n right: -150\r\n }),\r\n { optional: true }\r\n ),\r\n query(currentUsedSelectorForThisAnimation, [stagger('150ms', animate('100ms', style({ opacity: 1, right: 0 })))], { optional: true })\r\n ])\r\n ])\r\n]);\r\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\r\n\r\nexport function animateListFromBottom(passedTime = '.3s ease') {\r\n return trigger('animateList', [\r\n transition('* => *', [\r\n animation(\r\n [\r\n query(':enter', [style({ position: 'relative', opacity: 0, bottom: '-60px' })], { optional: true }),\r\n\r\n query(\r\n ':leave',\r\n [\r\n style({ position: 'relative', opacity: 1, bottom: 0 }),\r\n animate('{{time}}', style({ position: 'relative', opacity: 0, bottom: '-60px' }))\r\n ],\r\n { optional: true }\r\n ),\r\n\r\n query(':enter', stagger('100ms', [animate('{{time}}', style({ position: 'relative', opacity: 1, bottom: 0 }))]), {\r\n optional: true\r\n })\r\n ],\r\n { params: { time: passedTime } }\r\n )\r\n ])\r\n ]);\r\n}\r\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\r\n\r\nexport function animateListFromTop(passedTime = '.3s ease') {\r\n return trigger('animateList', [\r\n transition('* => *', [\r\n animation(\r\n [\r\n query(':enter', [style({ position: 'relative', opacity: 0, top: '-60px' })], { optional: true }),\r\n\r\n query(\r\n ':leave',\r\n [\r\n style({ position: 'relative', opacity: 1, top: 0 }),\r\n animate('{{time}}', style({ position: 'relative', opacity: 0, top: '-60px' }))\r\n ],\r\n { optional: true }\r\n ),\r\n\r\n query(':enter', stagger('200ms', [animate('{{time}}', style({ position: 'relative', opacity: 1, top: 0 }))]), { optional: true })\r\n ],\r\n { params: { time: passedTime } }\r\n )\r\n ])\r\n ]);\r\n}\r\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\r\n\r\nexport function animateListFromRight(passedTime = '.3s ease-in-out', staggerTime = '50ms') {\r\n return trigger('animateList', [\r\n transition('* => *', [\r\n animation(\r\n [\r\n query(':enter', [style({ position: 'relative', opacity: 0, right: '-60px' })], { optional: true }),\r\n\r\n query(\r\n ':leave',\r\n [\r\n style({ position: 'relative', opacity: 1, right: 0 }),\r\n animate('{{time}}', style({ position: 'relative', opacity: 0, right: '-60px' }))\r\n ],\r\n { optional: true }\r\n ),\r\n\r\n query(':enter', stagger(staggerTime, [animate('{{time}}', style({ position: 'relative', opacity: 1, right: 0 }))]), {\r\n optional: true\r\n })\r\n ],\r\n { params: { time: passedTime } }\r\n )\r\n ])\r\n ]);\r\n}\r\n","import { animate, animation, query, stagger, style, transition, trigger } from '@angular/animations';\r\n\r\nexport function animateListFromLeft(passedTime = '.3s ease') {\r\n return trigger('animateList', [\r\n transition('* => *', [\r\n animation(\r\n [\r\n query(':enter', [style({ position: 'relative', opacity: 0, left: '-60px' })], { optional: true }),\r\n\r\n query(\r\n ':leave',\r\n [\r\n style({ position: 'relative', opacity: 1, left: 0 }),\r\n animate('{{time}}', style({ position: 'relative', opacity: 0, left: '-60px' }))\r\n ],\r\n { optional: true }\r\n ),\r\n\r\n query(':enter', stagger('{{time}}', [animate('{{time}}', style({ position: 'relative', opacity: 1, left: 0 }))]), {\r\n optional: true\r\n })\r\n ],\r\n { params: { time: passedTime } }\r\n )\r\n ])\r\n ]);\r\n}\r\n","import { animate, animation, style, transition, trigger } from '@angular/animations';\r\n\r\nexport const switchInOut = trigger('switchInOut', [\r\n transition(':enter', [animation([style({ transform: 'translateX(100%)', opacity: 0 }), animate('200ms 200ms ease')])]),\r\n transition(':leave', [animation([animate('200ms ease', style({ transform: 'translateX(-100%)', opacity: 0 }))])])\r\n]);\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nexport interface TagModel {\r\n display: string;\r\n value: string;\r\n}\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'wac-tag-input',\r\n templateUrl: './tag-input.component.html',\r\n styleUrls: ['./tag-input.component.scss'],\r\n imports: [CommonModule, FormsModule]\r\n})\r\nexport class TagInputComponent {\r\n @Input() placeholder = '';\r\n @Input() secondaryPlaceholder = '';\r\n @Input() addOnBlur = true;\r\n @Input() addOnPaste = true;\r\n\r\n @Input() tags: TagModel[] = [];\r\n @Output() tagsChange = new EventEmitter<TagModel[]>();\r\n @Output() onAdd = new EventEmitter<TagModel>();\r\n @Output() onRemove = new EventEmitter<TagModel>();\r\n\r\n inputValue = '';\r\n\r\n get currentPlaceholder(): string {\r\n return this.tags.length > 0 ? this.secondaryPlaceholder : this.placeholder;\r\n }\r\n\r\n onKeydown(event: KeyboardEvent): void {\r\n if (event.key === 'Enter' || event.key === ',') {\r\n event.preventDefault();\r\n this.addTag(this.inputValue);\r\n }\r\n }\r\n\r\n onInputBlur(): void {\r\n if (this.addOnBlur) {\r\n this.addTag(this.inputValue);\r\n }\r\n }\r\n\r\n onPaste(event: ClipboardEvent): void {\r\n if (!this.addOnPaste) {\r\n return;\r\n }\r\n event.preventDefault();\r\n const pastedText = event.clipboardData?.getData('text') || '';\r\n const items = pastedText.split(/[,\\n]+/);\r\n items.forEach(item => this.addTag(item));\r\n }\r\n\r\n removeTag(tag: TagModel, index: number): void {\r\n this.tags.splice(index, 1);\r\n this.tagsChange.emit(this.tags);\r\n this.onRemove.emit(tag);\r\n }\r\n\r\n private addTag(value: string): void {\r\n const trimmed = value.trim();\r\n if (!trimmed) {\r\n return;\r\n }\r\n\r\n const tag: TagModel = { display: trimmed, value: trimmed };\r\n this.tags.push(tag);\r\n this.inputValue = '';\r\n this.tagsChange.emit(this.tags);\r\n this.onAdd.emit(tag);\r\n }\r\n}\r\n","<div class=\"wac-tag-input\">\r\n <div class=\"wac-tag-input__tags\">\r\n <span class=\"wac-tag-input__tag\" *ngFor=\"let tag of tags; let i = index\">\r\n <span class=\"wac-tag-input__tag__text\">{{ tag.display }}</span>\r\n <span class=\"wac-tag-input__tag__remove\" (click)=\"removeTag(tag, i)\">&times;</span>\r\n </span>\r\n <input\r\n class=\"wac-tag-input__input\"\r\n type=\"text\"\r\n [(ngModel)]=\"inputValue\"\r\n [placeholder]=\"currentPlaceholder\"\r\n (keydown)=\"onKeydown($event)\"\r\n (blur)=\"onInputBlur()\"\r\n (paste)=\"onPaste($event)\"\r\n />\r\n </div>\r\n</div>\r\n","/*\r\n * Public API Surface of angular-components\r\n */\r\n\r\nexport * from './lib/wizi-components.module';\r\nexport * from './lib/components/shared-components.module';\r\nexport * from './lib/components/tag/tag.component';\r\nexport * from './lib/components/tag-dropdown/tag-dropdown.component';\r\nexport * from './lib/components/tabs/tabs.component';\r\nexport * from './lib/components/tabs/tab/tab.component';\r\nexport * from './lib/components/button/button.component';\r\nexport * from './lib/components/info/info.component';\r\nexport * from './lib/components/settings/settings.component';\r\nexport * from './lib/components/delete/delete.component';\r\nexport * from './lib/components/dropdown/dropdown.component';\r\nexport * from './lib/components/image/image.component';\r\nexport * from './lib/components/image-text-section/image-text-section.component';\r\nexport * from './lib/components/image-text-section/image-text-section.dto';\r\nexport * from './lib/components/faq-section/faq-section.component';\r\nexport * from './lib/components/faq-section/faq-section.dto';\r\nexport * from './lib/components/faq-section/faq-section-content.dto';\r\nexport * from './lib/components/reassurance-section/reassurance-section.component';\r\nexport * from './lib/components/reassurance-section/reassurance-section.dto';\r\nexport * from './lib/components/reassurance-section/reassurance-section-content.dto';\r\nexport * from './lib/components/pricing-section/pricing-section.component';\r\nexport * from './lib/components/pricing-section/pricing-section.dto';\r\nexport * from './lib/components/pricing-section/pricing-section-table.dto';\r\nexport * from './lib/components/back/back.component';\r\nexport * from './lib/components/separator/separator.component';\r\nexport * from './lib/components/logo/logo.component';\r\nexport * from './lib/components/radio-legacy/radio.component';\r\nexport * from './lib/components/radio-legacy/radio-legacy-directive';\r\nexport * from './lib/components/radio-legacy/radio-group-legacy.directive';\r\nexport * from './lib/components/radio/radio.component';\r\nexport * from './lib/components/radio/option/option.component';\r\nexport * from './lib/components/state/state.component';\r\nexport * from './lib/components/tag-label/tag-label.component';\r\nexport * from './lib/components/calendar/calendar.component';\r\nexport * from './lib/components/edit-in-place/edit-in-place.component';\r\nexport * from './lib/components/alert/alert.component';\r\nexport * from './lib/components/header-page/header-page.component';\r\nexport * from './lib/components/switch/switch.component';\r\nexport * from './lib/components/link/link.component';\r\nexport * from './lib/components/hn/h1/h1.component';\r\nexport * from './lib/components/hn/h2/h2.component';\r\nexport * from './lib/components/hn/h3/h3.component';\r\nexport * from './lib/components/hn/h4/h4.component';\r\nexport * from './lib/components/select-in-text/select-in-text.component';\r\nexport * from './lib/components/text/text.component';\r\nexport * from './lib/components/text-area/text-area.component';\r\nexport * from './lib/components/pagination/pagination.component';\r\nexport * from './lib/components/table/table.component';\r\nexport * from './lib/components/table/shared/table-filters.model';\r\nexport * from './lib/components/table/shared/table-filters-group.model';\r\nexport * from './lib/components/table/directives/column.directive';\r\nexport * from './lib/components/table/directives/checkBoxRow.directive';\r\nexport * from './lib/components/table/directives/columnHeader.directive';\r\nexport * from './lib/components/table/directives/raw.directive';\r\nexport * from './lib/components/inputs/input-search/input-search.component';\r\nexport * from './lib/components/inputs/input/input.component';\r\nexport * from './lib/components/tooltip/tooltip.component';\r\nexport * from './lib/components/checkbox/checkbox.component';\r\nexport * from './lib/components/loader/loader.component';\r\nexport * from './lib/components/progress-bar/progress-bar.component';\r\nexport * from './lib/components/upload/upload.component';\r\nexport * from './lib/components/select/select-items.dto';\r\nexport * from './lib/components/inputs/input-with-select/input-with-select.component';\r\nexport * from './lib/components/inputs/input-with-select/option-item.dto';\r\nexport * from './lib/components/multiple-search/multiple-search.component';\r\nexport * from './lib/components/multiple-search-plus/multiple-search-plus.component';\r\nexport * from './lib/directives/shared-directives.module';\r\nexport * from './lib/directives/abstract-debounce/debounce-keyup.directive';\r\nexport * from './lib/directives/abstract-debounce/abstract-debounce.directive';\r\nexport * from './lib/directives/auto-hide/auto-hide.directive';\r\nexport * from './lib/directives/zindex-toggle/zindex-toggle.directive';\r\nexport * from './lib/directives/keyboard-events/only-numbers.directive';\r\nexport * from './lib/directives/scroll-to/scroll-to.directive';\r\nexport * from './lib/directives/ng-var.directive';\r\nexport * from './lib/utils/html-container.class';\r\nexport * from './lib/utils/uuid';\r\nexport * from './lib/components/select/call-to-action.model';\r\nexport * from './lib/components/table/shared/filters-table.service';\r\nexport * from './lib/components/table/shared/table-filters.model';\r\nexport * from './lib/components/table/shared/distinct-until-table-filters-changed';\r\nexport * from './lib/components/popin/popin.component';\r\nexport * from './lib/components/free-popin/free-popin.component';\r\nexport * from './lib/components/google-preview/google-preview.component';\r\nexport * from './lib/components/block/block.component';\r\nexport * from './lib/components/block/separator/block-separator.component';\r\nexport * from './lib/components/block/block-title-legacy/block-title-legacy.component';\r\n\r\nexport * from './lib/components/wrapper/wrapper.component';\r\nexport * from './lib/components/filters/filters.component';\r\nexport * from './lib/components/expanded-panel/expanded-panel.component';\r\nexport * from './lib/components/filters/filter-item.dto';\r\nexport * from './lib/components/wrapper-blocs/wrapper-blocs.component';\r\nexport * from './lib/components/card-price/card-price.component';\r\nexport * from './lib/components/multiple-search-plus/shared/multiple-search-plus-results.model';\r\nexport * from './lib/components/multiple-search-plus/shared/multiple-search-plus-option.model';\r\nexport * from './lib/components/snackbar/snackbar.component';\r\nexport * from './lib/components/alert-popup/alert-popup.service';\r\nexport * from './lib/components/alert-popup/alert-popup.component';\r\nexport * from './lib/components/alert-popup/alert-popup-module';\r\nexport * from './lib/components/wrapper-sidebar/wrapper-sidebar.component';\r\nexport * from './lib/components/breadcrumbs/breadcrumbs.component';\r\nexport * from './lib/components/token-check/token-check.component';\r\nexport * from './lib/components/row/row.component';\r\nexport * from './lib/components/column/column.component';\r\nexport * from './lib/components/block-with-checkbox/block-with-checkbox.component';\r\nexport * from './lib/components/confirm-delete/confirm-delete.component';\r\nexport * from './lib/components/search/search.component';\r\nexport * from './lib/components/charging-bar/charging-bar.component';\r\nexport * from './lib/components/mosaic/mosaic.component';\r\nexport * from './lib/components/content-with-buttons/content-with-buttons.component';\r\nexport * from './lib/components/wrapper-multiple-block/wrapper-multiple-block.component';\r\nexport * from './lib/components/draganddrop-list/draganddrop-list.component';\r\nexport * from './lib/components/selected-list/selected-list.component';\r\nexport * from './lib/components/selected-list/shared/selected-list-option.model';\r\nexport * from './lib/components/search/shared/search-option.model';\r\nexport * from './lib/components/tree/tree.component';\r\nexport * from './lib/components/tree/tree.module';\r\nexport * from './lib/components/tree/tree.dto';\r\nexport * from './lib/pipes/shared-pipes.module';\r\nexport * from './lib/pipes/tree/format-object-to-recursif-tree.pipe';\r\nexport * from './lib/pipes/tree/format-object-to-simple-tree.pipe';\r\nexport * from './lib/pipes/select/select-filters.pipe';\r\nexport * from './lib/pipes/selected-list/are-all-options-selected.pipe';\r\nexport * from './lib/pipes/find-option-selected-field.pipe';\r\nexport * from './lib/pipes/call-component-function.pipe';\r\nexport * from './lib/directives/keyboard-events/keypress-enter.directive';\r\nexport * from './lib/directives/copy-to-clipboard/copy-to-clipboard.directive';\r\nexport * from './lib/directives/keyboard-events/two-digital-decimal-number.directive';\r\nexport * from './lib/directives/watch-dom-tree/watch-dom-tree.directive';\r\nexport * from './lib/components/optional-disable-container/optional-disable-container.component';\r\nexport * from './lib/components/summary/summary.component';\r\nexport * from './lib/components/color-picker/color-picker.component';\r\nexport * from './lib/components/border-picker/border-picker.component';\r\n\r\nexport * from './lib/components/select/select/select.component';\r\nexport * from './lib/components/select/select/value-change.service';\r\nexport * from './lib/components/select/select/select.directive';\r\nexport * from './lib/components/select/option/option.component';\r\nexport * from './lib/components/select/option-group/option-group.component';\r\nexport * from './lib/components/select/option-call-to-action/option-call-to-action.component';\r\nexport * from './lib/components/common/placeholder/placeholder.component';\r\nexport * from './lib/components/common/label/label.component';\r\nexport * from './lib/components/ai-express/ai-express.component';\r\nexport * from './lib/components/select/option/select-option.directive';\r\nexport * from './lib/components/select/select-search-trigger/select-search-trigger.component';\r\nexport * from './lib/pipes/select/filter-options.pipe';\r\nexport * from './lib/components/slide-in/slide-in.component';\r\nexport * from './lib/components/menu-tile/menu-tile.component';\r\nexport * from './lib/components/grid/grid.component';\r\n\r\n// expansion\r\nexport * from './lib/components/expansion/expansion.module';\r\nexport * from './lib/components/expansion/accordion/accordion.component';\r\nexport * from './lib/components/expansion/accordion/accordion-item.token';\r\nexport * from './lib/components/expansion/expansion-panel-header/expansion-panel-header.component';\r\nexport * from './lib/components/expansion/expansion-panel-header/expansion-panel-header.token';\r\nexport * from './lib/components/expansion/expansion-panel-header/expansion-panel-header.directive';\r\nexport * from './lib/components/expansion/expansion-panel/expansion-panel.component';\r\nexport * from './lib/components/expansion/expansion-panel/expansion-panel.directive';\r\n\r\nexport * from './lib/animations/show/show-from-bottom.animation';\r\nexport * from './lib/animations/show/show-from-top.animation';\r\nexport * from './lib/animations/show/show-from-left.animation';\r\nexport * from './lib/animations/show/show-from-right.animation';\r\nexport * from './lib/animations/show/opacity.animation';\r\n\r\nexport * from './lib/animations/list/animate-list-from-bottom.animation';\r\nexport * from './lib/animations/list/animate-list-from-top.animation';\r\nexport * from './lib/animations/list/animate-list-from-right.animation';\r\nexport * from './lib/animations/list/animate-list-from-left.animation';\r\n\r\nexport * from './lib/animations/switch/switch-in-out.animation';\r\nexport * from './lib/animations/in-out/in-out-x.animation';\r\nexport * from './lib/animations/in-out/in-out-y.animation';\r\n\r\nexport * from './lib/services/history.service';\r\n\r\nexport * from './lib/components/tag-input/tag-input.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i1.DomService","takeUntil","i1.ValueChangeService","directives","i2","i3.TooltipComponent","i3.DebounceKeyupDirective","i1.TableCheckboxIdService","i3","i4.PagniationArrayTotalPages","i5.PagniationIsLastPage","i6.PagniationText","i1.FiltersTableService","i2.TableCheckboxIdService","i3.MultiSelectionService","i4","i5","i6.InputSearchComponent","i7.LoaderComponent","i8.CheckboxComponent","i9.PaginationComponent","distinctUntilChanged","map","i2.AutoHideDirective","i4.AutoHideDirective","i5.ZindexToggleDirective","i6.OnlyNumberDirective","i7.OptionalDisableContainerComponent","i8","i1.HistoryService","i3.H1Component","pipes","i2.TextComponent","i3.ZindexToggleDirective","i2.DebounceKeyupDirective","i3.AutoHideDirective","i4.ZindexToggleDirective","i5.LoaderComponent","i6.ImageComponent","i7.H3Component","i8.TextComponent","i9","i5.ButtonComponent","i2.VarDirective","i3.ButtonComponent","i4.AreAllOptionsSelectedPipe","i2.CheckboxComponent","i2.KeypressEnterDirective","i6","i2.ButtonComponent","i3.LinkComponent","i4.ButtonComponent","i3.InputComponent","components","i2.DomChangedDirective","i4.InfoComponent","i4.TextComponent","i3.TextComponent","tap","currentUsedSelectorForThisAnimation"],"mappings":"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"}