@seniorsistemas/angular-components 19.9.0 → 19.9.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.
Files changed (28) hide show
  1. package/bignumber-input/lib/bignumber-input/bignumber-input.directive.d.ts +7 -1
  2. package/control-errors/lib/control-errors/control-errors.component.d.ts +11 -2
  3. package/esm2022/bignumber-input/lib/bignumber-input/bignumber-input.directive.mjs +8 -2
  4. package/esm2022/control-errors/lib/control-errors/control-errors.component.mjs +21 -1
  5. package/esm2022/drawer/lib/drawer/drawer.component.mjs +3 -3
  6. package/esm2022/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +2 -2
  7. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.mjs +1 -1
  8. package/esm2022/numeric-mask/lib/numeric-mask/numeric-mask.directive.mjs +62 -6
  9. package/esm2022/sidebar/public-api.mjs +12 -1
  10. package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs +7 -1
  11. package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs.map +1 -1
  12. package/fesm2022/seniorsistemas-angular-components-control-errors.mjs +20 -0
  13. package/fesm2022/seniorsistemas-angular-components-control-errors.mjs.map +1 -1
  14. package/fesm2022/seniorsistemas-angular-components-drawer.mjs +2 -2
  15. package/fesm2022/seniorsistemas-angular-components-drawer.mjs.map +1 -1
  16. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +1 -1
  17. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
  18. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +1 -1
  19. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
  20. package/fesm2022/seniorsistemas-angular-components-numeric-mask.mjs +61 -5
  21. package/fesm2022/seniorsistemas-angular-components-numeric-mask.mjs.map +1 -1
  22. package/fesm2022/seniorsistemas-angular-components-sidebar.mjs +12 -1
  23. package/fesm2022/seniorsistemas-angular-components-sidebar.mjs.map +1 -1
  24. package/numeric-mask/README.md +164 -60
  25. package/numeric-mask/lib/numeric-mask/numeric-mask.directive.d.ts +29 -2
  26. package/package.json +7 -7
  27. package/sidebar/README.md +3 -3
  28. package/sidebar/public-api.d.ts +10 -0
@@ -133,7 +133,7 @@ class DrawerComponent {
133
133
  removalVersion: '20.0.0',
134
134
  },
135
135
  },
136
- ], queries: [{ propertyName: "footerComponent", first: true, predicate: FooterComponent, descendants: true, isSignal: true }, { propertyName: "templates", predicate: TemplateDirective }], hostDirectives: [{ directive: i1.DeprecatedSelectorDirective }], ngImport: i0, template: "@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeDrawer()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"drawer\"\n [class.drawer--open]=\"visible()\"\n [class.drawer--large-size]=\"largeSized\"\n >\n <div class=\"drawer__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <span class=\"drawer__header__title\">{{ header }}</span>\n }\n @if (closable) {\n <button\n class=\"drawer__header__close fa-solid fa-xmark\"\n (click)=\"closeDrawer()\"\n ></button>\n }\n </div>\n <div class=\"drawer__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content select=\":not(s-footer)\"></ng-content>\n }\n </div>\n @if (footerTemplate || footerComponent()) {\n <div class=\"drawer__footer\">\n @if (footerTemplate) {\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n } @else {\n <ng-content select=\"s-footer\"></ng-content>\n }\n </div>\n }\n </div>\n}\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:998}.drawer{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:999}.drawer__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.drawer__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;text-transform:uppercase;-webkit-user-select:none;user-select:none}.drawer__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.drawer__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.drawer__footer{border-top:1px solid #dedce5;padding-top:.75rem}.drawer--open{right:0}@media (min-width: 768px){.drawer{width:75%}}@media (min-width: 992px){.drawer{width:50%}}\n"], dependencies: [{ kind: "directive", type: CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
136
+ ], queries: [{ propertyName: "footerComponent", first: true, predicate: FooterComponent, descendants: true, isSignal: true }, { propertyName: "templates", predicate: TemplateDirective }], hostDirectives: [{ directive: i1.DeprecatedSelectorDirective }], ngImport: i0, template: "@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeDrawer()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"drawer\"\n [class.drawer--open]=\"visible()\"\n [class.drawer--large-size]=\"largeSized\"\n >\n <div class=\"drawer__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <span class=\"drawer__header__title\">{{ header }}</span>\n }\n @if (closable) {\n <button\n class=\"drawer__header__close fas fa-times\"\n (click)=\"closeDrawer()\"\n ></button>\n }\n </div>\n <div class=\"drawer__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content select=\":not(s-footer)\"></ng-content>\n }\n </div>\n @if (footerTemplate || footerComponent()) {\n <div class=\"drawer__footer\">\n @if (footerTemplate) {\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n } @else {\n <ng-content select=\"s-footer\"></ng-content>\n }\n </div>\n }\n </div>\n}\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:998}.drawer{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:999}.drawer__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.drawer__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;text-transform:uppercase;-webkit-user-select:none;user-select:none}.drawer__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.drawer__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.drawer__footer{border-top:1px solid #dedce5;padding-top:.75rem}.drawer--open{right:0}@media (min-width: 768px){.drawer{width:75%}}@media (min-width: 992px){.drawer{width:50%}}\n"], dependencies: [{ kind: "directive", type: CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
137
137
  trigger('visibilityChanged', [
138
138
  transition(':enter', [
139
139
  style({ transform: 'translateX(100%)' }),
@@ -170,7 +170,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
170
170
  animate('300ms', style({ transform: 'translateX(100%)' })),
171
171
  ]),
172
172
  ]),
173
- ], standalone: true, imports: [CdkTrapFocus, NgTemplateOutlet], template: "@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeDrawer()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"drawer\"\n [class.drawer--open]=\"visible()\"\n [class.drawer--large-size]=\"largeSized\"\n >\n <div class=\"drawer__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <span class=\"drawer__header__title\">{{ header }}</span>\n }\n @if (closable) {\n <button\n class=\"drawer__header__close fa-solid fa-xmark\"\n (click)=\"closeDrawer()\"\n ></button>\n }\n </div>\n <div class=\"drawer__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content select=\":not(s-footer)\"></ng-content>\n }\n </div>\n @if (footerTemplate || footerComponent()) {\n <div class=\"drawer__footer\">\n @if (footerTemplate) {\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n } @else {\n <ng-content select=\"s-footer\"></ng-content>\n }\n </div>\n }\n </div>\n}\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:998}.drawer{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:999}.drawer__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.drawer__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;text-transform:uppercase;-webkit-user-select:none;user-select:none}.drawer__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.drawer__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.drawer__footer{border-top:1px solid #dedce5;padding-top:.75rem}.drawer--open{right:0}@media (min-width: 768px){.drawer{width:75%}}@media (min-width: 992px){.drawer{width:50%}}\n"] }]
173
+ ], standalone: true, imports: [CdkTrapFocus, NgTemplateOutlet], template: "@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeDrawer()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"drawer\"\n [class.drawer--open]=\"visible()\"\n [class.drawer--large-size]=\"largeSized\"\n >\n <div class=\"drawer__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <span class=\"drawer__header__title\">{{ header }}</span>\n }\n @if (closable) {\n <button\n class=\"drawer__header__close fas fa-times\"\n (click)=\"closeDrawer()\"\n ></button>\n }\n </div>\n <div class=\"drawer__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content select=\":not(s-footer)\"></ng-content>\n }\n </div>\n @if (footerTemplate || footerComponent()) {\n <div class=\"drawer__footer\">\n @if (footerTemplate) {\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n } @else {\n <ng-content select=\"s-footer\"></ng-content>\n }\n </div>\n }\n </div>\n}\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:998}.drawer{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:999}.drawer__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.drawer__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;text-transform:uppercase;-webkit-user-select:none;user-select:none}.drawer__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.drawer__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.drawer__footer{border-top:1px solid #dedce5;padding-top:.75rem}.drawer--open{right:0}@media (min-width: 768px){.drawer{width:75%}}@media (min-width: 992px){.drawer{width:50%}}\n"] }]
174
174
  }], propDecorators: { templates: [{
175
175
  type: ContentChildren,
176
176
  args: [TemplateDirective]
@@ -1 +1 @@
1
- {"version":3,"file":"seniorsistemas-angular-components-drawer.mjs","sources":["../../projects/angular-components/drawer/src/lib/drawer/drawer.component.ts","../../projects/angular-components/drawer/src/lib/drawer/drawer.component.html","../../projects/angular-components/drawer/src/lib/drawer/drawer.module.ts","../../projects/angular-components/drawer/src/seniorsistemas-angular-components-drawer.ts"],"sourcesContent":["import { animate, style, transition, trigger } from '@angular/animations';\nimport { CdkTrapFocus } from '@angular/cdk/a11y';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n AfterContentInit,\n Component,\n contentChild,\n ContentChildren,\n effect,\n Input,\n model,\n OnDestroy,\n QueryList,\n TemplateRef,\n} from '@angular/core';\nimport { DEPRECATED_CONFIG } from '@seniorsistemas/angular-components/common/deprecated-selector';\nimport { DeprecatedSelectorDirective } from '@seniorsistemas/angular-components/common/deprecated-selector';\nimport { FooterComponent } from '@seniorsistemas/angular-components/structure';\nimport { TemplateDirective } from '@seniorsistemas/angular-components/template';\nimport { disableScroll, enableScroll } from '@seniorsistemas/angular-components/utils';\n\n/**\n * @description Componente de painel lateral deslizante (drawer) que aparece sobre o conteúdo\n * vindo do lado direito da tela. Suporta templates customizados para cabeçalho, corpo e rodapé\n * via `sTemplate`, bloqueio de scroll automático e confirmação de fechamento.\n *\n * Também responde ao seletor legado `s-sidebar`.\n *\n * @example\n * ```html\n * <s-drawer [(visible)]=\"drawerOpen\" header=\"Filtros\" [closable]=\"true\">\n * <ng-template sTemplate=\"body\">Conteúdo</ng-template>\n * </s-drawer>\n * ```\n *\n * @category Overlay\n */\n@Component({\n selector: 's-drawer, s-sidebar',\n templateUrl: './drawer.component.html',\n styleUrls: ['./drawer.component.scss'],\n host: {\n '(document:keydown.escape)': 'handleEscape()',\n },\n hostDirectives: [DeprecatedSelectorDirective],\n providers: [\n {\n provide: DEPRECATED_CONFIG,\n useValue: {\n oldSelector: 's-sidebar',\n newSelector: 's-drawer',\n removalVersion: '20.0.0',\n },\n },\n ],\n animations: [\n trigger('visibilityChanged', [\n transition(':enter', [\n style({ transform: 'translateX(100%)' }),\n animate('300ms', style({ transform: 'translateX(0)' })),\n ]),\n transition(':leave', [\n style({ transform: 'translateX(0)' }),\n animate('300ms', style({ transform: 'translateX(100%)' })),\n ]),\n ]),\n ],\n standalone: true,\n imports: [CdkTrapFocus, NgTemplateOutlet],\n})\nexport class DrawerComponent implements AfterContentInit, OnDestroy {\n @ContentChildren(TemplateDirective)\n public templates: QueryList<TemplateDirective> | null = null;\n\n /**\n * @description Controla a visibilidade do drawer. Suporta two-way binding via `[(visible)]`.\n *\n * @default false\n */\n public visible = model<boolean>(false);\n\n /**\n * @description Quando `true`, exibe o botão de fechar (X) no cabeçalho do drawer.\n *\n * @default true\n */\n @Input()\n public closable = true;\n\n /**\n * @description Quando `true`, clicar no backdrop (área escurecida fora do drawer) fecha o painel.\n *\n * @default true\n */\n @Input()\n public dismissible = true;\n\n /**\n * @description Quando `true`, pressionar a tecla Escape fecha o drawer.\n *\n * @default true\n */\n @Input()\n public closeOnEscape = true;\n\n /**\n * @description Texto exibido no cabeçalho padrão do drawer.\n * Pode ser substituído por um template customizado via `sTemplate=\"header\"`.\n */\n @Input()\n public header?: string;\n\n /**\n * @description Quando `true`, aumenta a largura do drawer para acomodar mais conteúdo.\n *\n * @default false\n */\n @Input()\n public largeSized = false;\n\n /**\n * @description Quando `true`, mantém o conteúdo do drawer no DOM mesmo quando oculto,\n * preservando o estado interno dos componentes filhos.\n *\n * @default false\n */\n @Input()\n public cache = false;\n\n /**\n * @description Função de confirmação chamada antes de fechar o drawer.\n * Quando retornar `false`, o fechamento é bloqueado. Útil para validar formulários não salvos.\n */\n @Input()\n public set registerConfirmClose(fn: () => boolean) {\n this._confirmClose = fn;\n }\n\n public headerTemplate: TemplateRef<unknown> | null = null;\n public bodyTemplate: TemplateRef<unknown> | null = null;\n public footerTemplate: TemplateRef<unknown> | null = null;\n\n protected readonly footerComponent = contentChild(FooterComponent);\n\n private _confirmClose = () => true;\n\n private readonly visibleEffect = effect(() => {\n const visible = this.visible();\n if (visible) {\n disableScroll();\n } else {\n enableScroll();\n }\n });\n\n public ngAfterContentInit(): void {\n this._getTemplates();\n }\n\n public ngOnDestroy(): void {\n this.visibleEffect.destroy();\n }\n\n public closeDrawer(): void {\n if (this._confirmClose()) {\n this.visible.set(false);\n }\n }\n\n public handleEscape(): void {\n if (this.closeOnEscape) {\n this.closeDrawer();\n }\n }\n\n private _getCustomTemplate(type: string): TemplateRef<any> | null {\n return this.templates?.find((template: TemplateDirective) => template.type === type)?.template ?? null;\n }\n\n private getHeaderTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('header') ?? null;\n }\n\n private getBodyTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('body') ?? null;\n }\n\n private getFooterTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('footer') ?? null;\n }\n\n private _getTemplates(): void {\n this.headerTemplate = this.getHeaderTemplate();\n this.bodyTemplate = this.getBodyTemplate();\n this.footerTemplate = this.getFooterTemplate();\n }\n}\n","@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeDrawer()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"drawer\"\n [class.drawer--open]=\"visible()\"\n [class.drawer--large-size]=\"largeSized\"\n >\n <div class=\"drawer__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <span class=\"drawer__header__title\">{{ header }}</span>\n }\n @if (closable) {\n <button\n class=\"drawer__header__close fa-solid fa-xmark\"\n (click)=\"closeDrawer()\"\n ></button>\n }\n </div>\n <div class=\"drawer__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content select=\":not(s-footer)\"></ng-content>\n }\n </div>\n @if (footerTemplate || footerComponent()) {\n <div class=\"drawer__footer\">\n @if (footerTemplate) {\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n } @else {\n <ng-content select=\"s-footer\"></ng-content>\n }\n </div>\n }\n </div>\n}\n","import { NgModule } from '@angular/core';\n\nimport { TemplateModule } from '@seniorsistemas/angular-components/template';\n\nimport { DrawerComponent } from './drawer.component';\n\n@NgModule({\n imports: [DrawerComponent],\n exports: [DrawerComponent, TemplateModule],\n})\nexport class DrawerModule {}\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-drawer.mjs","sources":["../../projects/angular-components/drawer/src/lib/drawer/drawer.component.ts","../../projects/angular-components/drawer/src/lib/drawer/drawer.component.html","../../projects/angular-components/drawer/src/lib/drawer/drawer.module.ts","../../projects/angular-components/drawer/src/seniorsistemas-angular-components-drawer.ts"],"sourcesContent":["import { animate, style, transition, trigger } from '@angular/animations';\nimport { CdkTrapFocus } from '@angular/cdk/a11y';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n AfterContentInit,\n Component,\n contentChild,\n ContentChildren,\n effect,\n Input,\n model,\n OnDestroy,\n QueryList,\n TemplateRef,\n} from '@angular/core';\nimport { DEPRECATED_CONFIG } from '@seniorsistemas/angular-components/common/deprecated-selector';\nimport { DeprecatedSelectorDirective } from '@seniorsistemas/angular-components/common/deprecated-selector';\nimport { FooterComponent } from '@seniorsistemas/angular-components/structure';\nimport { TemplateDirective } from '@seniorsistemas/angular-components/template';\nimport { disableScroll, enableScroll } from '@seniorsistemas/angular-components/utils';\n\n/**\n * @description Componente de painel lateral deslizante (drawer) que aparece sobre o conteúdo\n * vindo do lado direito da tela. Suporta templates customizados para cabeçalho, corpo e rodapé\n * via `sTemplate`, bloqueio de scroll automático e confirmação de fechamento.\n *\n * Também responde ao seletor legado `s-sidebar`.\n *\n * @example\n * ```html\n * <s-drawer [(visible)]=\"drawerOpen\" header=\"Filtros\" [closable]=\"true\">\n * <ng-template sTemplate=\"body\">Conteúdo</ng-template>\n * </s-drawer>\n * ```\n *\n * @category Overlay\n */\n@Component({\n selector: 's-drawer, s-sidebar',\n templateUrl: './drawer.component.html',\n styleUrls: ['./drawer.component.scss'],\n host: {\n '(document:keydown.escape)': 'handleEscape()',\n },\n hostDirectives: [DeprecatedSelectorDirective],\n providers: [\n {\n provide: DEPRECATED_CONFIG,\n useValue: {\n oldSelector: 's-sidebar',\n newSelector: 's-drawer',\n removalVersion: '20.0.0',\n },\n },\n ],\n animations: [\n trigger('visibilityChanged', [\n transition(':enter', [\n style({ transform: 'translateX(100%)' }),\n animate('300ms', style({ transform: 'translateX(0)' })),\n ]),\n transition(':leave', [\n style({ transform: 'translateX(0)' }),\n animate('300ms', style({ transform: 'translateX(100%)' })),\n ]),\n ]),\n ],\n standalone: true,\n imports: [CdkTrapFocus, NgTemplateOutlet],\n})\nexport class DrawerComponent implements AfterContentInit, OnDestroy {\n @ContentChildren(TemplateDirective)\n public templates: QueryList<TemplateDirective> | null = null;\n\n /**\n * @description Controla a visibilidade do drawer. Suporta two-way binding via `[(visible)]`.\n *\n * @default false\n */\n public visible = model<boolean>(false);\n\n /**\n * @description Quando `true`, exibe o botão de fechar (X) no cabeçalho do drawer.\n *\n * @default true\n */\n @Input()\n public closable = true;\n\n /**\n * @description Quando `true`, clicar no backdrop (área escurecida fora do drawer) fecha o painel.\n *\n * @default true\n */\n @Input()\n public dismissible = true;\n\n /**\n * @description Quando `true`, pressionar a tecla Escape fecha o drawer.\n *\n * @default true\n */\n @Input()\n public closeOnEscape = true;\n\n /**\n * @description Texto exibido no cabeçalho padrão do drawer.\n * Pode ser substituído por um template customizado via `sTemplate=\"header\"`.\n */\n @Input()\n public header?: string;\n\n /**\n * @description Quando `true`, aumenta a largura do drawer para acomodar mais conteúdo.\n *\n * @default false\n */\n @Input()\n public largeSized = false;\n\n /**\n * @description Quando `true`, mantém o conteúdo do drawer no DOM mesmo quando oculto,\n * preservando o estado interno dos componentes filhos.\n *\n * @default false\n */\n @Input()\n public cache = false;\n\n /**\n * @description Função de confirmação chamada antes de fechar o drawer.\n * Quando retornar `false`, o fechamento é bloqueado. Útil para validar formulários não salvos.\n */\n @Input()\n public set registerConfirmClose(fn: () => boolean) {\n this._confirmClose = fn;\n }\n\n public headerTemplate: TemplateRef<unknown> | null = null;\n public bodyTemplate: TemplateRef<unknown> | null = null;\n public footerTemplate: TemplateRef<unknown> | null = null;\n\n protected readonly footerComponent = contentChild(FooterComponent);\n\n private _confirmClose = () => true;\n\n private readonly visibleEffect = effect(() => {\n const visible = this.visible();\n if (visible) {\n disableScroll();\n } else {\n enableScroll();\n }\n });\n\n public ngAfterContentInit(): void {\n this._getTemplates();\n }\n\n public ngOnDestroy(): void {\n this.visibleEffect.destroy();\n }\n\n public closeDrawer(): void {\n if (this._confirmClose()) {\n this.visible.set(false);\n }\n }\n\n public handleEscape(): void {\n if (this.closeOnEscape) {\n this.closeDrawer();\n }\n }\n\n private _getCustomTemplate(type: string): TemplateRef<any> | null {\n return this.templates?.find((template: TemplateDirective) => template.type === type)?.template ?? null;\n }\n\n private getHeaderTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('header') ?? null;\n }\n\n private getBodyTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('body') ?? null;\n }\n\n private getFooterTemplate(): TemplateRef<unknown> | null {\n return this._getCustomTemplate('footer') ?? null;\n }\n\n private _getTemplates(): void {\n this.headerTemplate = this.getHeaderTemplate();\n this.bodyTemplate = this.getBodyTemplate();\n this.footerTemplate = this.getFooterTemplate();\n }\n}\n","@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeDrawer()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"drawer\"\n [class.drawer--open]=\"visible()\"\n [class.drawer--large-size]=\"largeSized\"\n >\n <div class=\"drawer__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <span class=\"drawer__header__title\">{{ header }}</span>\n }\n @if (closable) {\n <button\n class=\"drawer__header__close fas fa-times\"\n (click)=\"closeDrawer()\"\n ></button>\n }\n </div>\n <div class=\"drawer__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content select=\":not(s-footer)\"></ng-content>\n }\n </div>\n @if (footerTemplate || footerComponent()) {\n <div class=\"drawer__footer\">\n @if (footerTemplate) {\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n } @else {\n <ng-content select=\"s-footer\"></ng-content>\n }\n </div>\n }\n </div>\n}\n","import { NgModule } from '@angular/core';\n\nimport { TemplateModule } from '@seniorsistemas/angular-components/template';\n\nimport { DrawerComponent } from './drawer.component';\n\n@NgModule({\n imports: [DrawerComponent],\n exports: [DrawerComponent, TemplateModule],\n})\nexport class DrawerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1270,7 +1270,7 @@ class BignumberFieldComponent {
1270
1270
  }
1271
1271
  }
1272
1272
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BignumberFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1273
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BignumberFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef!.nativeElement\"\n />\n}\n@if (_field.mask) {\n @let autoClear = _field.type === 'number' ? (_field.autoClear ?? true) : false;\n <input\n #inputRef\n sInputText\n class=\"input-text mousetrap\"\n type=\"text\"\n [id]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [sInputMask]=\"fieldUtils.getFieldPropertyMask(_field.mask)\"\n [placeholder]=\"_field.placeholder ?? ''\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n [autoClear]=\"autoClear\"\n [formControl]=\"formControl()\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (maskComplete)=\"onComplete.next($event)\"\n (input)=\"onInput.next($event)\"\n />\n} @else {\n <div class=\"bignumber-field\">\n @if (_field.leftAddon) {\n <div class=\"button-left\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.leftAddon }\"></ng-container>\n </div>\n }\n @let allowNegative = _field.type === 'number' ? (_field.allowNegative ?? true) : false;\n @let scale = fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale;\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sBignumberInput\n [allowNegative]=\"allowNegative\"\n [precision]=\"\n fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\n \"\n [minDecimalPlaces]=\"scale\"\n [maxDecimalPlaces]=\"scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n sInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n class=\"input-text\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n @if (_field.rightAddon) {\n <div class=\"button-right\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.rightAddon }\"></ng-container>\n </div>\n }\n </div>\n}\n\n<ng-template\n #addonRender\n let-button=\"button\"\n>\n <s-button\n [label]=\"button.label\"\n [priority]=\"button.priority ?? 'default'\"\n [iconClass]=\"button.icon\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(button.leftAddon)\"\n [auxiliary]=\"false\"\n (clicked)=\"button.callback?.()\"\n />\n</ng-template>\n\n", styles: [".bignumber-field{display:flex;width:100%}.bignumber-field .input-text{width:auto;flex-grow:1}.bignumber-field:has(.button-left) .input-text{border-top-left-radius:0;border-bottom-left-radius:0}.bignumber-field:has(.button-left) .button-left button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.bignumber-field:has(input:focus) .button-left button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-left button{border-color:#c13018!important}.bignumber-field:has(.button-right) .input-text{border-top-right-radius:0;border-bottom-right-radius:0}.bignumber-field:has(.button-right) .button-right button{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.bignumber-field:has(input:focus) .button-right button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-right button{border-color:#c13018!important}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "directive", type: InputMaskDirective, selector: "input[sInputMask]", inputs: ["sInputMask", "slotChar", "unmask", "characterPattern", "autoClear"], outputs: ["maskComplete"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel", "ariaLabel"], outputs: ["clicked"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: BignumberInputModule }, { kind: "directive", type: i2$1.BignumberInputDirective, selector: "input[sBignumberInput]", inputs: ["precision", "scale", "minDecimalPlaces", "maxDecimalPlaces", "decimalSeparator", "thousandsSeparator", "thousandSeparator", "alignTo", "allowNegative", "placeholder"], outputs: ["minDecimalPlacesChange", "maxDecimalPlacesChange", "decimalSeparatorChange", "thousandSeparatorChange", "placeholderChange", "pasteRejected"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i3.InputTextDirective, selector: "input[sInputText]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
1273
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BignumberFieldComponent, isStandalone: true, selector: "ng-component", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onInput: "onInput", onFocus: "onFocus", onComplete: "onComplete" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true }], ngImport: i0, template: "@let _field = field();\n@if (inputRef) {\n <s-field-label\n [field]=\"_field\"\n [fieldContainerRef]=\"inputRef!.nativeElement\"\n />\n}\n@if (_field.mask) {\n @let autoClear = _field.type === 'number' ? (_field.autoClear ?? true) : false;\n <input\n #inputRef\n sInputText\n class=\"input-text mousetrap\"\n type=\"text\"\n [id]=\"_field.id || _field.name\"\n [name]=\"_field.name\"\n [sInputMask]=\"fieldUtils.getFieldPropertyMask(_field.mask)\"\n [placeholder]=\"_field.placeholder ?? ''\"\n slotChar=\"_\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n [autoClear]=\"autoClear\"\n [formControl]=\"formControl()\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (maskComplete)=\"onComplete.next($event)\"\n (input)=\"onInput.next($event)\"\n />\n} @else {\n <div class=\"bignumber-field\">\n @if (_field.leftAddon) {\n <div class=\"button-left\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.leftAddon }\"></ng-container>\n </div>\n }\n @let allowNegative = _field.type === 'number' ? (_field.allowNegative ?? true) : false;\n @let scale = fieldUtils.isFunction(_field.scale) ? fieldUtils.trigger(_field.scale) : _field.scale;\n <input\n #inputRef\n [id]=\"_field.id || _field.name\"\n type=\"text\"\n [name]=\"_field.name\"\n sBignumberInput\n [allowNegative]=\"allowNegative\"\n [precision]=\"\n fieldUtils.isFunction(_field.precision) ? fieldUtils.trigger(_field.precision) : _field.precision\n \"\n [minDecimalPlaces]=\"scale\"\n [maxDecimalPlaces]=\"scale\"\n [decimalSeparator]=\"_field.numberLocaleOptions?.decimalSeparator ?? ''\"\n [thousandSeparator]=\"_field.numberLocaleOptions?.thousandsSeparator ?? ''\"\n [sTooltip]=\"_field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"_field.placeholder\"\n [showDelay]=\"500\"\n sInputText\n [autocomplete]=\"_field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n class=\"input-text\"\n (blur)=\"_field.onBlur ? _field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl()\"\n />\n @if (_field.rightAddon) {\n <div class=\"button-right\">\n <ng-container *ngTemplateOutlet=\"addonRender; context: { button: _field.rightAddon }\"></ng-container>\n </div>\n }\n </div>\n}\n\n<ng-template\n #addonRender\n let-button=\"button\"\n>\n <s-button\n [label]=\"button.label\"\n [priority]=\"button.priority ?? 'default'\"\n [iconClass]=\"button.icon\"\n [disabled]=\"fieldUtils.fieldPropertyIsDisabled(button.leftAddon)\"\n [auxiliary]=\"false\"\n (clicked)=\"button.callback?.()\"\n />\n</ng-template>\n\n", styles: [".bignumber-field{display:flex;width:100%}.bignumber-field .input-text{width:auto;flex-grow:1}.bignumber-field:has(.button-left) .input-text{border-top-left-radius:0;border-bottom-left-radius:0}.bignumber-field:has(.button-left) .button-left button{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.bignumber-field:has(input:focus) .button-left button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-left button{border-color:#c13018!important}.bignumber-field:has(.button-right) .input-text{border-top-right-radius:0;border-bottom-right-radius:0}.bignumber-field:has(.button-right) .button-right button{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.bignumber-field:has(input:focus) .button-right button{border-color:#428bca!important}.bignumber-field:has(input.ng-invalid.ng-dirty) .button-right button{border-color:#c13018!important}\n"], dependencies: [{ kind: "component", type: FieldLabelComponent, selector: "s-field-label", inputs: ["field", "fieldContainerRef"] }, { kind: "directive", type: InputMaskDirective, selector: "input[sInputMask]", inputs: ["sInputMask", "slotChar", "unmask", "characterPattern", "autoClear"], outputs: ["maskComplete"] }, { kind: "directive", type: TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor", "menuAriaLabel", "ariaLabel"], outputs: ["clicked"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: BignumberInputModule }, { kind: "directive", type: i2$1.BignumberInputDirective, selector: "input[sBignumberInput]", inputs: ["precision", "scale", "minDecimalPlaces", "maxDecimalPlaces", "decimalSeparator", "thousandsSeparator", "thousandSeparator", "alignTo", "allowNegative", "blockDecimalOverflow", "placeholder"], outputs: ["minDecimalPlacesChange", "maxDecimalPlacesChange", "decimalSeparatorChange", "thousandSeparatorChange", "placeholderChange", "pasteRejected"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i3.InputTextDirective, selector: "input[sInputText]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
1274
1274
  }
1275
1275
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BignumberFieldComponent, decorators: [{
1276
1276
  type: Component,