@seniorsistemas/angular-components 19.0.9 → 19.1.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.
- package/breadcrumb/lib/breadcrumb/breadcrumb-models.d.ts +2 -0
- package/button/lib/button/button.component.d.ts +8 -2
- package/checkbox/lib/checkbox/checkbox.component.d.ts +5 -1
- package/dialog/lib/src/dialog/dialog.component.d.ts +7 -1
- package/esm2022/accordion/lib/accordion/components/accordion-panel/accordion-panel.component.mjs +2 -2
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb-models.mjs +1 -1
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2022/breadcrumb/lib/dynamic-breadcrumb/dynamic-breadcrumb.component.mjs +8 -6
- package/esm2022/button/lib/button/button.component.mjs +20 -8
- package/esm2022/checkbox/lib/checkbox/checkbox.component.mjs +8 -5
- package/esm2022/confirm-dialog/lib/popup-confirm-dialog/popup-confirm-dialog.component.mjs +2 -2
- package/esm2022/content-generator/lib/content-generator/content-generator.component.mjs +1 -1
- package/esm2022/dialog/lib/src/dialog/dialog.component.mjs +9 -3
- package/esm2022/dynamic-form/dynamic-form/components/grid/row/row.component.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/components/lookup/lookup.component.mjs +2 -2
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-radio-field/boolean-field.component.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.mjs +2 -2
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/button-field/button-field.component.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/password/password-field.component.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/radio-button/radio-button-field.component.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/select/select-field.component.mjs +2 -2
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/text/text-field.component.mjs +1 -1
- package/esm2022/empty-state/lib/empty-state/empty-state.component.mjs +1 -1
- package/esm2022/file-picker/lib/file-picker/file-picker.component.mjs +1 -1
- package/esm2022/global-search/lib/global-search/components/dropdown/global-search-dropdown-item.component.mjs +1 -1
- package/esm2022/global-search/lib/global-search/global-search.component.mjs +1 -1
- package/esm2022/help-popover/lib/help-popover/help-popover/help-popover.component.mjs +1 -1
- package/esm2022/image-cropper/lib/image-cropper/image-cropper.component.mjs +1 -1
- package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.mjs +1 -1
- package/esm2022/inline-edit/lib/inline-edit/components/inline-edit-item/inline-edit-item.component.mjs +1 -1
- package/esm2022/kanban/lib/kanban/components/kanban-column/kanban-column.component.mjs +1 -1
- package/esm2022/kanban/lib/kanban/components/kanban-item/kanban-item.component.mjs +1 -1
- package/esm2022/lib/locale/fallback.mjs +13 -2
- package/esm2022/navigation-button/lib/navigation-button/navigation-button.component.mjs +1 -1
- package/esm2022/object-card/lib/object-card/elements/field/object-card-field.component.mjs +1 -1
- package/esm2022/object-card/lib/object-card/elements/main/object-card-main.component.mjs +1 -1
- package/esm2022/paginator/lib/paginator/paginator.component.mjs +2 -2
- package/esm2022/picklist/lib/picklist/picklist.component.mjs +1 -1
- package/esm2022/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.mjs +1 -1
- package/esm2022/select/lib/select/components/select-option/select-option.component.mjs +3 -3
- package/esm2022/select/lib/select/select.component.mjs +132 -20
- package/esm2022/shared/lib/accessibility/paginator-accessibility.directive.mjs +182 -0
- package/esm2022/shared/lib/accessibility/table-checkbox-accessibility.directive.mjs +174 -0
- package/esm2022/shared/public-api.mjs +6 -4
- package/esm2022/switch/lib/switch/switch.component.mjs +19 -8
- package/esm2022/table/lib/table/table-paging/table-paging.component.mjs +1 -1
- package/esm2022/table/public-api.mjs +2 -1
- package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu/tiered-menu.component.mjs +18 -8
- package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu-item/tiered-menu-item.component.mjs +1 -1
- package/esm2022/tiered-menu/lib/tiered-menu/services/tiered-menu.service.mjs +1 -1
- package/esm2022/tiered-menu/lib/tiered-menu/tiered-menu.directive.mjs +11 -3
- package/esm2022/tooltip/lib/tooltip/tooltip.component.mjs +17 -11
- package/esm2022/tooltip/lib/tooltip/tooltip.directive.mjs +108 -241
- package/esm2022/tooltip/lib/tooltip/tooltip.module.mjs +4 -6
- package/esm2022/topbar/lib/topbar/topbar.component.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-accordion.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-accordion.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs +9 -7
- package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-button.mjs +19 -7
- package/fesm2022/seniorsistemas-angular-components-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-checkbox.mjs +7 -4
- package/fesm2022/seniorsistemas-angular-components-checkbox.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-confirm-dialog.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-confirm-dialog.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-content-generator.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-content-generator.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-dialog.mjs +8 -2
- package/fesm2022/seniorsistemas-angular-components-dialog.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +11 -11
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-empty-state.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-empty-state.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-file-picker.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-file-picker.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-global-search.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-global-search.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-help-popover.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-help-popover.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-kanban.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-kanban.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-object-card.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-object-card.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-paginator.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-paginator.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-picklist.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-picklist.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-select.mjs +133 -21
- package/fesm2022/seniorsistemas-angular-components-select.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-shared.mjs +354 -2
- package/fesm2022/seniorsistemas-angular-components-shared.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-switch.mjs +18 -7
- package/fesm2022/seniorsistemas-angular-components-switch.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-table.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-table.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs +26 -8
- package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tooltip.mjs +125 -254
- package/fesm2022/seniorsistemas-angular-components-tooltip.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-topbar.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-topbar.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components.mjs +12 -1
- package/fesm2022/seniorsistemas-angular-components.mjs.map +1 -1
- package/package.json +1 -1
- package/select/lib/select/select.component.d.ts +23 -2
- package/shared/lib/accessibility/paginator-accessibility.directive.d.ts +30 -0
- package/shared/lib/accessibility/table-checkbox-accessibility.directive.d.ts +46 -0
- package/shared/public-api.d.ts +7 -5
- package/switch/lib/switch/switch.component.d.ts +9 -5
- package/table/public-api.d.ts +1 -0
- package/tiered-menu/lib/tiered-menu/components/tiered-menu/tiered-menu.component.d.ts +1 -0
- package/tiered-menu/lib/tiered-menu/tiered-menu.directive.d.ts +4 -2
- package/tooltip/lib/tooltip/tooltip.component.d.ts +13 -7
- package/tooltip/lib/tooltip/tooltip.directive.d.ts +27 -40
- package/tooltip/lib/tooltip/tooltip.module.d.ts +3 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seniorsistemas-angular-components-dialog.mjs","sources":["../../projects/angular-components/dialog/src/lib/src/dialog/models/active-dialog.ts","../../projects/angular-components/dialog/src/lib/src/dialog/services/dialog.service.ts","../../projects/angular-components/dialog/src/lib/src/dialog/services/internal-dialog.service.ts","../../projects/angular-components/dialog/src/lib/src/dialog/dialog.component.ts","../../projects/angular-components/dialog/src/lib/src/dialog/dialog.component.html","../../projects/angular-components/dialog/src/seniorsistemas-angular-components-dialog.ts"],"sourcesContent":["import { Subject } from \"rxjs\";\nimport { DialogSize } from \"./dialog-models\";\n\nexport class ActiveDialog {\n dialogSize: DialogSize = 'md';\n escapeOnEsc = true;\n private _close = new Subject<any>();\n private _dismiss = new Subject<any>();\n\n close<T>(result?: T) {\n this._close.next(result);\n this._close.complete();\n }\n\n dismiss<T>(reason?: T) {\n this._dismiss.next(reason);\n this._dismiss.complete();\n }\n\n onClose$ = this._close.asObservable();\n onDismiss$ = this._dismiss.asObservable();\n}\n","import { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { inject, Injectable, Injector, Type } from '@angular/core';\nimport { take } from 'rxjs';\nimport { ActiveDialog } from '../models/active-dialog';\nimport { DialogOptions, DialogRef } from '../models/dialog-models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DialogService {\n protected readonly activeDialogInstances: ActiveDialog[] = [];\n protected readonly overlay = inject(Overlay);\n protected readonly injector = inject(Injector);\n\n constructor() {\n this.checkEscapeEvent();\n }\n\n open<T>(componentRef: Type<T>, options?: DialogOptions): DialogRef<T> {\n const createdComponent = this.createComponent(componentRef, options);\n return {\n componentInstance: createdComponent.componentInstance as T,\n closed: createdComponent.activeDialog.onClose$,\n dismissed: createdComponent.activeDialog.onDismiss$,\n };\n }\n\n protected createComponent<T>(\n componentRef: Type<T>,\n dialogOptions?: DialogOptions,\n ): {\n componentInstance?: T;\n activeDialog: ActiveDialog;\n } {\n const injector = this.dialogInjector;\n const overlayRef = this.getOverlayRef();\n const portal = new ComponentPortal(componentRef, null, injector);\n const _componentRef = overlayRef.attach(portal);\n const activeDialog = this.getActiveDialog(injector);\n this.activeDialogInstances.push(activeDialog);\n this.applyDialogOptionsIntoActiveDialog(activeDialog, dialogOptions);\n this.handleDialogDestroyEvents(injector, overlayRef, dialogOptions);\n return {\n activeDialog,\n componentInstance: _componentRef.instance,\n };\n }\n\n protected handleDialogDestroyEvents(injector: Injector, overlayRef: OverlayRef, dialogOptions?: DialogOptions) {\n const destroyClickOutside = dialogOptions?.destroyClickOutside ?? true;\n const activeDialog = this.getActiveDialog(injector);\n const destroyDialog = () => {\n overlayRef.dispose();\n const index = this.activeDialogInstances.indexOf(activeDialog);\n this.activeDialogInstances.splice(index, 1);\n };\n if (destroyClickOutside) {\n overlayRef\n .backdropClick()\n .pipe(take(1))\n .subscribe(() => {\n activeDialog.dismiss();\n });\n }\n activeDialog.onClose$.pipe(take(1)).subscribe(destroyDialog);\n activeDialog.onDismiss$.pipe(take(1)).subscribe(destroyDialog);\n }\n\n protected applyDialogOptionsIntoActiveDialog(activeDialog: ActiveDialog, dialogOptions: DialogOptions | undefined) {\n activeDialog.dialogSize = dialogOptions?.size ?? 'md';\n activeDialog.escapeOnEsc = dialogOptions?.escapeOnEsc ?? true;\n }\n\n protected getOverlayRef() {\n const panelClass = ['h-min'];\n const overlayRef = this.overlay.create({\n hasBackdrop: true,\n positionStrategy: this.overlay.position().global().centerHorizontally().centerVertically(),\n panelClass,\n });\n return overlayRef;\n }\n\n protected getActiveDialog(injector: Injector) {\n return injector.get(ActiveDialog);\n }\n\n protected get dialogInjector() {\n const injector = Injector.create({\n providers: [{ provide: ActiveDialog, useClass: ActiveDialog }],\n parent: this.injector,\n });\n return injector;\n }\n\n protected checkEscapeEvent() {\n document.body.addEventListener('keydown', (keyboardEvent: KeyboardEvent) => {\n const isEscapePressed = keyboardEvent.key === 'Escape';\n if (!isEscapePressed) {\n return;\n }\n const lastActiveModal = this.activeDialogInstances.at(this.activeDialogInstances.length - 1);\n if (lastActiveModal && lastActiveModal.escapeOnEsc) {\n lastActiveModal.dismiss();\n }\n });\n }\n}\n\n","import { TemplatePortal } from '@angular/cdk/portal';\nimport { Injectable, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { DialogOptions } from '../models/dialog-models';\nimport { DialogService } from './dialog.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class InternalDialogService extends DialogService {\n constructor() {\n super();\n }\n\n openByTemplate(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef, dialogOptions?: DialogOptions) {\n const injector = this.dialogInjector;\n const overlayRef = this.getOverlayRef();\n const portal = new TemplatePortal(templateRef, viewContainerRef);\n overlayRef.attach(portal);\n const activeDialog = this.getActiveDialog(injector);\n this.applyDialogOptionsIntoActiveDialog(activeDialog, dialogOptions);\n this.activeDialogInstances.push(activeDialog);\n this.handleDialogDestroyEvents(injector, overlayRef, dialogOptions);\n return activeDialog;\n }\n}\n\n","import { NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n AfterViewInit,\n Component,\n computed,\n contentChildren,\n inject,\n input,\n model,\n OnDestroy,\n TemplateRef,\n viewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { InteractiveContentDirective } from '@seniorsistemas/angular-components/interactive-content';\nimport { TemplateDirective } from '@seniorsistemas/angular-components/template';\nimport { Subject, take, takeUntil } from 'rxjs';\nimport { ActiveDialog } from './models/active-dialog';\nimport { InternalDialogService } from './services/internal-dialog.service';\nimport { DialogSize } from './models/dialog-models';\n\n/**\n * @description Componente de diálogo modal que exibe conteúdo em uma janela sobreposta.\n * Suporta templates customizados para cabeçalho, corpo e rodapé via `sTemplate`.\n * Pode ser utilizado de forma declarativa (via `visible`) ou programática (via `DialogService`).\n *\n * @example\n * ```html\n * <!-- Modo declarativo -->\n * <s-dialog header=\"Título\" [(visible)]=\"showDialog\">\n * <ng-template sTemplate=\"body\">Conteúdo</ng-template>\n * <ng-template sTemplate=\"footer\"><button (click)=\"showDialog = false\">Fechar</button></ng-template>\n * </s-dialog>\n * ```\n *\n * @category Overlay\n */\n@Component({\n selector: 's-dialog',\n standalone: true,\n templateUrl: './dialog.component.html',\n imports: [NgTemplateOutlet, InteractiveContentDirective, NgClass],\n providers: [{ provide: ActiveDialog, useValue: null }],\n})\nexport class DialogComponent implements AfterViewInit, OnDestroy {\n /** @description Texto exibido no cabeçalho do diálogo. Pode ser substituído por um template com `sTemplate=\"header\"`. */\n header = input();\n\n /**\n * @description Controla a visibilidade do diálogo. Suporta two-way binding via `[(visible)]`.\n * Ao definir `true`, o diálogo é aberto; ao definir `false`, é fechado.\n * Não deve ser usado em conjunto com `DialogService` (modo programático).\n */\n visible = model<boolean | undefined>(undefined);\n\n /**\n * @description Instância do diálogo ativo.\n * Em modo programático (aberto via `DialogService`): injetado do pai via `skipSelf`.\n * Em modo declarativo (via `visible`): atribuído internamente ao abrir.\n *\n * O `providers` do componente sobrescreve o token com `null` para que descendentes\n * (ex: `s-dialog` dentro de um lookup dentro deste diálogo) não herdem esta instância.\n */\n activeDialog = inject(ActiveDialog, { optional: true, skipSelf: true });\n\n /**\n * @description Tamanho do diálogo.\n * Valores aceitos: `'sm'`, `'md'` (padrão), `'lg'`, `'xl'`, `'fullscreen'`.\n *\n * @default 'md'\n */\n size = input<DialogSize>('md');\n\n /**\n * @description Classes CSS adicionais aplicadas ao container de conteúdo do diálogo.\n *\n * @default ''\n */\n contentClassName = input('');\n\n /**\n * @description Quando `true`, pressionar a tecla Escape fecha o diálogo.\n *\n * @default true\n */\n escapeOnEsc = input(true);\n\n /**\n * @description Quando `true`, clicar fora do diálogo (no backdrop) fecha o diálogo.\n *\n * @default true\n */\n destroyClickOutside = input(true);\n private readonly viewContainerRef = inject(ViewContainerRef);\n private readonly dialogService = inject(InternalDialogService);\n private readonly template = viewChild<TemplateRef<any>>('dialogTemplate');\n private readonly templateDiretives = contentChildren(TemplateDirective);\n private readonly onDestroy$ = new Subject<void>();\n\n protected headerTemplate = computed(() => {\n return this.getTemplate('header');\n });\n\n protected bodyTemplate = computed(() => {\n return this.getTemplate('body');\n });\n\n protected footerTemplate = computed(() => {\n return this.getTemplate('footer');\n });\n\n constructor() {\n toObservable(this.visible)\n .pipe(takeUntil(this.onDestroy$))\n .subscribe(() => {\n const visible = this.visible();\n if (visible === true) {\n this.openDialog();\n } else if (visible === false) {\n this.activeDialog?.dismiss();\n }\n });\n }\n\n ngAfterViewInit(): void {\n if (!this.header() && !this.headerTemplate()) {\n console.error('Header is required. provide header via input or sTemplate=\"header\"');\n }\n\n if (this.activeDialog && this.visible() !== undefined) {\n throw new Error(\n '[s-dialog] O input \"visible\" não pode ser usado em um componente aberto via DialogService. ' +\n 'Remova o binding \"[visible]\" — o ciclo de vida deste diálogo já é controlado pelo ActiveDialog injetado.',\n );\n }\n }\n\n ngOnDestroy(): void {\n this.onDestroy$.next();\n this.onDestroy$.complete();\n }\n\n protected onDismiss() {\n this.activeDialog?.dismiss();\n }\n\n private getTemplate(templateType: string) {\n return this.templateDiretives().find((template) => template.type === templateType)?.template;\n }\n\n private openDialog(): void {\n this.activeDialog = this.dialogService.openByTemplate(this.template()!, this.viewContainerRef, {\n size: this.size(),\n destroyClickOutside: this.destroyClickOutside(),\n escapeOnEsc: this.escapeOnEsc(),\n });\n this.activeDialog.onClose$.pipe(take(1)).subscribe(() => {\n this.activeDialog = null;\n this.visible.set(false);\n });\n\n this.activeDialog.onDismiss$.pipe(take(1)).subscribe(() => {\n this.activeDialog = null;\n this.visible.set(false);\n });\n }\n}\n\n","@let activeDialogContext = { activeDialog: activeDialog };\n<ng-template #dialogTemplate>\n @if (activeDialog) {\n @let isSm = activeDialog.dialogSize === 'sm';\n @let isMd = activeDialog.dialogSize === 'md';\n @let isLg = activeDialog.dialogSize === 'lg';\n @let isXl = activeDialog.dialogSize === 'xl';\n @let isFullscreen = activeDialog.dialogSize === 'fullscreen';\n <div\n [class]=\"contentClassName()\"\n class=\"flex h-min max-h-screen w-screen flex-col bg-grayscale-0 shadow-md max-sm:h-screen max-sm:w-screen\"\n [ngClass]=\"{\n 'max-w-[300px]': isSm,\n 'max-w-[500px]': isMd,\n 'max-w-[800px]': isLg,\n 'max-w-[1140px]': isXl,\n 'h-screen': isFullscreen,\n }\"\n >\n <header class=\"flex flex-wrap justify-between gap-3 p-4 pb-0\">\n @let _header = headerTemplate();\n @if (_header) {\n <ng-container *ngTemplateOutlet=\"_header; context: activeDialogContext\"></ng-container>\n } @else {\n <h3>{{ header() }}</h3>\n }\n <div\n class=\"flex cursor-pointer items-center justify-center\"\n (sInteractiveContent)=\"onDismiss()\"\n >\n <i class=\"fas fa-times\"></i>\n </div>\n <hr class=\"h-[1px] w-full bg-grayscale-20\" />\n </header>\n\n <main class=\"flex-1 p-4\">\n @let _bodyTemplate = bodyTemplate();\n @if (_bodyTemplate) {\n <ng-container *ngTemplateOutlet=\"_bodyTemplate; context: activeDialogContext\"></ng-container>\n } @else {\n <ng-content></ng-content>\n }\n </main>\n\n @let footer = footerTemplate();\n @if (footer) {\n <footer class=\"flex flex-wrap gap-3 p-4 pt-0\">\n <hr class=\"h-[1px] w-full bg-grayscale-20\" />\n <div class=\"w-full\">\n <ng-container *ngTemplateOutlet=\"footer; context: activeDialogContext\"></ng-container>\n </div>\n </footer>\n }\n </div>\n }\n</ng-template>\n\n@if (visible() === undefined) {\n <ng-container *ngTemplateOutlet=\"dialogTemplate\"></ng-container>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"seniorsistemas-angular-components-dialog.mjs","sources":["../../projects/angular-components/dialog/src/lib/src/dialog/models/active-dialog.ts","../../projects/angular-components/dialog/src/lib/src/dialog/services/dialog.service.ts","../../projects/angular-components/dialog/src/lib/src/dialog/services/internal-dialog.service.ts","../../projects/angular-components/dialog/src/lib/src/dialog/dialog.component.ts","../../projects/angular-components/dialog/src/lib/src/dialog/dialog.component.html","../../projects/angular-components/dialog/src/seniorsistemas-angular-components-dialog.ts"],"sourcesContent":["import { Subject } from \"rxjs\";\nimport { DialogSize } from \"./dialog-models\";\n\nexport class ActiveDialog {\n dialogSize: DialogSize = 'md';\n escapeOnEsc = true;\n private _close = new Subject<any>();\n private _dismiss = new Subject<any>();\n\n close<T>(result?: T) {\n this._close.next(result);\n this._close.complete();\n }\n\n dismiss<T>(reason?: T) {\n this._dismiss.next(reason);\n this._dismiss.complete();\n }\n\n onClose$ = this._close.asObservable();\n onDismiss$ = this._dismiss.asObservable();\n}\n","import { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { inject, Injectable, Injector, Type } from '@angular/core';\nimport { take } from 'rxjs';\nimport { ActiveDialog } from '../models/active-dialog';\nimport { DialogOptions, DialogRef } from '../models/dialog-models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DialogService {\n protected readonly activeDialogInstances: ActiveDialog[] = [];\n protected readonly overlay = inject(Overlay);\n protected readonly injector = inject(Injector);\n\n constructor() {\n this.checkEscapeEvent();\n }\n\n open<T>(componentRef: Type<T>, options?: DialogOptions): DialogRef<T> {\n const createdComponent = this.createComponent(componentRef, options);\n return {\n componentInstance: createdComponent.componentInstance as T,\n closed: createdComponent.activeDialog.onClose$,\n dismissed: createdComponent.activeDialog.onDismiss$,\n };\n }\n\n protected createComponent<T>(\n componentRef: Type<T>,\n dialogOptions?: DialogOptions,\n ): {\n componentInstance?: T;\n activeDialog: ActiveDialog;\n } {\n const injector = this.dialogInjector;\n const overlayRef = this.getOverlayRef();\n const portal = new ComponentPortal(componentRef, null, injector);\n const _componentRef = overlayRef.attach(portal);\n const activeDialog = this.getActiveDialog(injector);\n this.activeDialogInstances.push(activeDialog);\n this.applyDialogOptionsIntoActiveDialog(activeDialog, dialogOptions);\n this.handleDialogDestroyEvents(injector, overlayRef, dialogOptions);\n return {\n activeDialog,\n componentInstance: _componentRef.instance,\n };\n }\n\n protected handleDialogDestroyEvents(injector: Injector, overlayRef: OverlayRef, dialogOptions?: DialogOptions) {\n const destroyClickOutside = dialogOptions?.destroyClickOutside ?? true;\n const activeDialog = this.getActiveDialog(injector);\n const destroyDialog = () => {\n overlayRef.dispose();\n const index = this.activeDialogInstances.indexOf(activeDialog);\n this.activeDialogInstances.splice(index, 1);\n };\n if (destroyClickOutside) {\n overlayRef\n .backdropClick()\n .pipe(take(1))\n .subscribe(() => {\n activeDialog.dismiss();\n });\n }\n activeDialog.onClose$.pipe(take(1)).subscribe(destroyDialog);\n activeDialog.onDismiss$.pipe(take(1)).subscribe(destroyDialog);\n }\n\n protected applyDialogOptionsIntoActiveDialog(activeDialog: ActiveDialog, dialogOptions: DialogOptions | undefined) {\n activeDialog.dialogSize = dialogOptions?.size ?? 'md';\n activeDialog.escapeOnEsc = dialogOptions?.escapeOnEsc ?? true;\n }\n\n protected getOverlayRef() {\n const panelClass = ['h-min'];\n const overlayRef = this.overlay.create({\n hasBackdrop: true,\n positionStrategy: this.overlay.position().global().centerHorizontally().centerVertically(),\n panelClass,\n });\n return overlayRef;\n }\n\n protected getActiveDialog(injector: Injector) {\n return injector.get(ActiveDialog);\n }\n\n protected get dialogInjector() {\n const injector = Injector.create({\n providers: [{ provide: ActiveDialog, useClass: ActiveDialog }],\n parent: this.injector,\n });\n return injector;\n }\n\n protected checkEscapeEvent() {\n document.body.addEventListener('keydown', (keyboardEvent: KeyboardEvent) => {\n const isEscapePressed = keyboardEvent.key === 'Escape';\n if (!isEscapePressed) {\n return;\n }\n const lastActiveModal = this.activeDialogInstances.at(this.activeDialogInstances.length - 1);\n if (lastActiveModal && lastActiveModal.escapeOnEsc) {\n lastActiveModal.dismiss();\n }\n });\n }\n}\n\n","import { TemplatePortal } from '@angular/cdk/portal';\nimport { Injectable, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { DialogOptions } from '../models/dialog-models';\nimport { DialogService } from './dialog.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class InternalDialogService extends DialogService {\n constructor() {\n super();\n }\n\n openByTemplate(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef, dialogOptions?: DialogOptions) {\n const injector = this.dialogInjector;\n const overlayRef = this.getOverlayRef();\n const portal = new TemplatePortal(templateRef, viewContainerRef);\n overlayRef.attach(portal);\n const activeDialog = this.getActiveDialog(injector);\n this.applyDialogOptionsIntoActiveDialog(activeDialog, dialogOptions);\n this.activeDialogInstances.push(activeDialog);\n this.handleDialogDestroyEvents(injector, overlayRef, dialogOptions);\n return activeDialog;\n }\n}\n\n","import { NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n AfterViewInit,\n Component,\n computed,\n contentChildren,\n inject,\n input,\n model,\n OnDestroy,\n TemplateRef,\n viewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { InteractiveContentDirective } from '@seniorsistemas/angular-components/interactive-content';\nimport { TemplateDirective } from '@seniorsistemas/angular-components/template';\nimport { Subject, take, takeUntil } from 'rxjs';\nimport { ActiveDialog } from './models/active-dialog';\nimport { InternalDialogService } from './services/internal-dialog.service';\nimport { DialogSize } from './models/dialog-models';\n\n/**\n * @description Componente de diálogo modal que exibe conteúdo em uma janela sobreposta.\n * Suporta templates customizados para cabeçalho, corpo e rodapé via `sTemplate`.\n * Pode ser utilizado de forma declarativa (via `visible`) ou programática (via `DialogService`).\n *\n * @example\n * ```html\n * <!-- Modo declarativo -->\n * <s-dialog header=\"Título\" [(visible)]=\"showDialog\">\n * <ng-template sTemplate=\"body\">Conteúdo</ng-template>\n * <ng-template sTemplate=\"footer\"><button (click)=\"showDialog = false\">Fechar</button></ng-template>\n * </s-dialog>\n * ```\n *\n * @category Overlay\n */\n@Component({\n selector: 's-dialog',\n standalone: true,\n templateUrl: './dialog.component.html',\n imports: [NgTemplateOutlet, InteractiveContentDirective, NgClass],\n providers: [{ provide: ActiveDialog, useValue: null }],\n})\nexport class DialogComponent implements AfterViewInit, OnDestroy {\n /** @description Texto exibido no cabeçalho do diálogo. Pode ser substituído por um template com `sTemplate=\"header\"`. */\n header = input();\n\n /**\n * @description Controla a visibilidade do diálogo. Suporta two-way binding via `[(visible)]`.\n * Ao definir `true`, o diálogo é aberto; ao definir `false`, é fechado.\n * Não deve ser usado em conjunto com `DialogService` (modo programático).\n */\n visible = model<boolean | undefined>(undefined);\n\n /**\n * @description Instância do diálogo ativo.\n * Em modo programático (aberto via `DialogService`): injetado do pai via `skipSelf`.\n * Em modo declarativo (via `visible`): atribuído internamente ao abrir.\n *\n * O `providers` do componente sobrescreve o token com `null` para que descendentes\n * (ex: `s-dialog` dentro de um lookup dentro deste diálogo) não herdem esta instância.\n */\n activeDialog = inject(ActiveDialog, { optional: true, skipSelf: true });\n\n /**\n * @description Tamanho do diálogo.\n * Valores aceitos: `'sm'`, `'md'` (padrão), `'lg'`, `'xl'`, `'fullscreen'`.\n *\n * @default 'md'\n */\n size = input<DialogSize>('md');\n\n /**\n * @description Classes CSS adicionais aplicadas ao container de conteúdo do diálogo.\n *\n * @default ''\n */\n contentClassName = input('');\n\n /**\n * @description Quando `true`, pressionar a tecla Escape fecha o diálogo.\n *\n * @default true\n */\n escapeOnEsc = input(true);\n\n /**\n * @description Quando `true`, clicar fora do diálogo (no backdrop) fecha o diálogo.\n *\n * @default true\n */\n destroyClickOutside = input(true);\n\n /**\n * @description Valor do aria-label do botão de fechar a dialog.\n *\n * @default 'Fechar'\n */\n closeAriaLabel = input('Fechar');\n\n private readonly viewContainerRef = inject(ViewContainerRef);\n private readonly dialogService = inject(InternalDialogService);\n private readonly template = viewChild<TemplateRef<any>>('dialogTemplate');\n private readonly templateDiretives = contentChildren(TemplateDirective);\n private readonly onDestroy$ = new Subject<void>();\n\n protected headerTemplate = computed(() => {\n return this.getTemplate('header');\n });\n\n protected bodyTemplate = computed(() => {\n return this.getTemplate('body');\n });\n\n protected footerTemplate = computed(() => {\n return this.getTemplate('footer');\n });\n\n constructor() {\n toObservable(this.visible)\n .pipe(takeUntil(this.onDestroy$))\n .subscribe(() => {\n const visible = this.visible();\n if (visible === true) {\n this.openDialog();\n } else if (visible === false) {\n this.activeDialog?.dismiss();\n }\n });\n }\n\n ngAfterViewInit(): void {\n if (!this.header() && !this.headerTemplate()) {\n console.error('Header is required. provide header via input or sTemplate=\"header\"');\n }\n\n if (this.activeDialog && this.visible() !== undefined) {\n throw new Error(\n '[s-dialog] O input \"visible\" não pode ser usado em um componente aberto via DialogService. ' +\n 'Remova o binding \"[visible]\" — o ciclo de vida deste diálogo já é controlado pelo ActiveDialog injetado.',\n );\n }\n }\n\n ngOnDestroy(): void {\n this.onDestroy$.next();\n this.onDestroy$.complete();\n }\n\n protected onDismiss() {\n this.activeDialog?.dismiss();\n }\n\n private getTemplate(templateType: string) {\n return this.templateDiretives().find((template) => template.type === templateType)?.template;\n }\n\n private openDialog(): void {\n this.activeDialog = this.dialogService.openByTemplate(this.template()!, this.viewContainerRef, {\n size: this.size(),\n destroyClickOutside: this.destroyClickOutside(),\n escapeOnEsc: this.escapeOnEsc(),\n });\n this.activeDialog.onClose$.pipe(take(1)).subscribe(() => {\n this.activeDialog = null;\n this.visible.set(false);\n });\n\n this.activeDialog.onDismiss$.pipe(take(1)).subscribe(() => {\n this.activeDialog = null;\n this.visible.set(false);\n });\n }\n}\n\n","@let activeDialogContext = { activeDialog: activeDialog };\n<ng-template #dialogTemplate>\n @if (activeDialog) {\n @let isSm = activeDialog.dialogSize === 'sm';\n @let isMd = activeDialog.dialogSize === 'md';\n @let isLg = activeDialog.dialogSize === 'lg';\n @let isXl = activeDialog.dialogSize === 'xl';\n @let isFullscreen = activeDialog.dialogSize === 'fullscreen';\n\n <div\n [class]=\"contentClassName()\"\n class=\"max-sm:h-screen max-sm:w-screen flex h-min max-h-screen w-screen flex-col bg-grayscale-0 shadow-md\"\n [ngClass]=\"{\n 'max-w-[300px]': isSm,\n 'max-w-[500px]': isMd,\n 'max-w-[800px]': isLg,\n 'max-w-[1140px]': isXl,\n 'h-screen': isFullscreen,\n }\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"dialog-main-title\"\n >\n <header class=\"flex flex-wrap justify-between gap-3 p-4 pb-0\">\n @let _header = headerTemplate();\n @if (_header) {\n <ng-container *ngTemplateOutlet=\"_header; context: activeDialogContext\"></ng-container>\n } @else {\n <h3 id=\"dialog-main-title\">{{ header() }}</h3>\n }\n\n <button\n type=\"button\"\n class=\"rounded flex cursor-pointer items-center justify-center border-none bg-transparent outline-none focus-visible:ring-2 focus-visible:ring-primary\"\n [attr.aria-label]=\"closeAriaLabel()\"\n (click)=\"onDismiss()\"\n >\n <i\n class=\"fas fa-times\"\n aria-hidden=\"true\"\n ></i>\n </button>\n </header>\n <hr class=\"mt-4 h-[1px] w-full bg-grayscale-20\" />\n\n <main class=\"flex-1 p-4\">\n @let _bodyTemplate = bodyTemplate();\n @if (_bodyTemplate) {\n <ng-container *ngTemplateOutlet=\"_bodyTemplate; context: activeDialogContext\"></ng-container>\n } @else {\n <ng-content></ng-content>\n }\n </main>\n\n @let footer = footerTemplate();\n @if (footer) {\n <footer class=\"flex flex-wrap gap-3 p-4 pt-0\">\n <hr class=\"h-[1px] w-full bg-grayscale-20\" />\n <div class=\"w-full\">\n <ng-container *ngTemplateOutlet=\"footer; context: activeDialogContext\"></ng-container>\n </div>\n </footer>\n }\n </div>\n }\n</ng-template>\n\n@if (visible() === undefined) {\n <ng-container *ngTemplateOutlet=\"dialogTemplate\"></ng-container>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|