{"version":3,"file":"takkion-components-box-form.mjs","sources":["../../../libraries/components/box-form/box-form.component.ts","../../../libraries/components/box-form/box-form.component.html","../../../libraries/components/box-form/box-form.module.ts","../../../libraries/components/box-form/index.ts","../../../libraries/components/box-form/takkion-components-box-form.ts"],"sourcesContent":["import {\n  ChangeDetectorRef,\n  Component,\n  ElementRef,\n  EventEmitter,\n  Input,\n  Output,\n  ViewChild,\n  ViewEncapsulation,\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { Subscription } from 'rxjs';\n\n@Component({\n  selector: 'tak-box-form',\n  templateUrl: './box-form.component.html',\n  styleUrls: ['./box-form.component.scss'],\n  encapsulation: ViewEncapsulation.None,\n})\nexport class TakBoxFormComponent {\n  @ViewChild('content') content!: ElementRef;\n\n  @Output() ngSubmit = new EventEmitter();\n  @Output() ngReset = new EventEmitter();\n\n  @Output() onBack = new EventEmitter();\n\n  @Input() formGroup: FormGroup = new FormGroup({});\n  @Input() takTitle = '';\n  @Input() takSubtitle = '';\n\n  @Input() showActionButtons = true;\n  @Input() hasResetButton = false;\n  @Input() hasBreadcrumbs = false;\n  @Input() hasBackButton = false;\n  @Input() hasBranding = true;\n  @Input() isLoading = false;\n\n  @Input() exedentInPx = 265;\n\n  @Input() submitButton = '';\n  @Input() resetButton = '';\n\n  private _submitButton = '';\n  private _resetButton = '';\n\n  private _formGroupSubs!: Subscription;\n\n  constructor(\n    private _href: ElementRef<HTMLElement>,\n    private _cd: ChangeDetectorRef\n  ) {\n    _href.nativeElement.classList.add('tak-box-form');\n  }\n\n  public ngOnInit(): void {\n    this._formGroupSubs = this.formGroup.statusChanges.subscribe(() => {\n      this._cd.markForCheck();\n    });\n\n    if (!this.showActionButtons) this.exedentInPx -= 58;\n\n    this._submitButton = this.submitButton ? this.submitButton : 'ENVIAR';\n    this._resetButton = this.resetButton ? this.resetButton : 'REINICIAR';\n\n    if (this.hasBreadcrumbs) this.exedentInPx = this.exedentInPx + 45;\n  }\n\n  public clickOnReset() {\n    if (this.formGroup) this.formGroup.reset();\n    this.ngReset.emit();\n  }\n\n  public ngOnDestroy(): void {\n    if (this._formGroupSubs) this._formGroupSubs.unsubscribe();\n  }\n\n  get orSubmitButton() {\n    return this._submitButton;\n  }\n\n  get orResetButton() {\n    return this._resetButton;\n  }\n}\n","<mat-card [class.actions-hidden]=\"!showActionButtons\">\n  <form [formGroup]=\"formGroup\" #ngForm=\"ngForm\">\n    @if (hasBackButton || takTitle || takSubtitle) {\n      <section class=\"tak-box-form__branding\">\n        @if (hasBackButton) {\n          <div style=\"margin-right: 5px; float: left\">\n            <button mat-icon-button type=\"button\" (click)=\"onBack.emit()\">\n              <mat-icon>arrow_back</mat-icon>\n            </button>\n          </div>\n        }\n        <span class=\"tak-box-form__branding__title\">{{ takTitle }}</span>\n        @if (takSubtitle) {\n          <span class=\"tak-box-form__branding__subtitle\">{{ takSubtitle }}</span>\n        }\n      </section>\n    }\n    @if (hasBackButton || takTitle || takSubtitle) {\n      <mat-divider></mat-divider>\n    }\n    <ng-content select=\"[tak-custom-branding]\"></ng-content>\n    @if (!takTitle && !takSubtitle && !hasBackButton && hasBranding) {\n      <mat-divider></mat-divider>\n    }\n    <div class=\"tak-box-form__scroll\" attr.style=\"max-height: calc(100vh - {{ exedentInPx }}px)\">\n      <div class=\"tak-box-form__content\" #content>\n        <ng-content></ng-content>\n      </div>\n    </div>\n    <mat-divider [style.margin-bottom.px]=\"!isLoading ? 4 : 0\"></mat-divider>\n    @if (isLoading) {\n      <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\n    }\n  </form>\n  @if (showActionButtons) {\n    <mat-card-actions>\n      <button\n        mat-button\n        type=\"button\"\n        color=\"accent\"\n        class=\"action-button\"\n        [disabled]=\"formGroup.invalid || isLoading\"\n        (click)=\"formGroup ? ngSubmit.emit(formGroup.value) : ngSubmit.emit()\"\n      >\n        {{ orSubmitButton }}\n      </button>\n      @if (hasResetButton) {\n        <button\n          mat-button\n          type=\"button\"\n          color=\"warn\"\n          class=\"action-button\"\n          (click)=\"clickOnReset()\"\n        >\n          {{ orResetButton }}\n        </button>\n      }\n    </mat-card-actions>\n  }\n</mat-card>\n","import { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { TakBoxFormComponent } from './box-form.component';\nimport { MatCardModule } from '@takkion/material/card';\nimport { MatIconModule } from '@takkion/material/icon';\nimport { MatProgressBarModule } from '@takkion/material/progress-bar';\nimport { MatButtonModule } from '@takkion/material/button';\nimport { MatDividerModule } from '@takkion/material/divider';\n\n@NgModule({\n  declarations: [TakBoxFormComponent],\n  imports: [\n    MatCardModule,\n    ReactiveFormsModule,\n    MatIconModule,\n    MatButtonModule,\n    MatDividerModule,\n    MatProgressBarModule,\n  ],\n  exports: [TakBoxFormComponent],\n})\nexport class TakBoxFormModule {}\n","/*\n * Public API Surface of @takkion/components/box-form\n */\nexport * from './box-form.component';\nexport * from './box-form.module';\nexport * from './common';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;MAmBa,mBAAmB,CAAA;IA6B9B,WACU,CAAA,KAA8B,EAC9B,GAAsB,EAAA;QADtB,IAAK,CAAA,KAAA,GAAL,KAAK,CAAyB;QAC9B,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;AA5BtB,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;AAC9B,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;AAE7B,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;AAE7B,QAAA,IAAA,CAAA,SAAS,GAAc,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;QACzC,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC;QACd,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;QAEjB,IAAiB,CAAA,iBAAA,GAAG,IAAI,CAAC;QACzB,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;QACvB,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;QACvB,IAAa,CAAA,aAAA,GAAG,KAAK,CAAC;QACtB,IAAW,CAAA,WAAA,GAAG,IAAI,CAAC;QACnB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAElB,IAAW,CAAA,WAAA,GAAG,GAAG,CAAC;QAElB,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC;QAClB,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;QAElB,IAAa,CAAA,aAAA,GAAG,EAAE,CAAC;QACnB,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC;QAQxB,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;KACnD;IAEM,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,MAAK;AAChE,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAC1B,SAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,iBAAiB;AAAE,YAAA,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;AAEpD,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;AACtE,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAEtE,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;KACnE;IAEM,YAAY,GAAA;QACjB,IAAI,IAAI,CAAC,SAAS;AAAE,YAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;AAC3C,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;KACrB;IAEM,WAAW,GAAA;QAChB,IAAI,IAAI,CAAC,cAAc;AAAE,YAAA,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;KAC5D;AAED,IAAA,IAAI,cAAc,GAAA;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC;KAC3B;AAED,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;8GAhEU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,6kBCnBhC,qhEA4DA,EAAA,MAAA,EAAA,CAAA,y3BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,0FAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,4LAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,aAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDzCa,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAN/B,SAAS;+BACE,cAAc,EAAA,aAAA,EAGT,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,qhEAAA,EAAA,MAAA,EAAA,CAAA,y3BAAA,CAAA,EAAA,CAAA;+GAGf,OAAO,EAAA,CAAA;sBAA5B,SAAS;uBAAC,SAAS,CAAA;gBAEV,QAAQ,EAAA,CAAA;sBAAjB,MAAM;gBACG,OAAO,EAAA,CAAA;sBAAhB,MAAM;gBAEG,MAAM,EAAA,CAAA;sBAAf,MAAM;gBAEE,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEG,iBAAiB,EAAA,CAAA;sBAAzB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;;;MEpBK,gBAAgB,CAAA;8GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAhB,gBAAgB,EAAA,YAAA,EAAA,CAXZ,mBAAmB,CAAA,EAAA,OAAA,EAAA,CAEhC,aAAa;YACb,mBAAmB;YACnB,aAAa;YACb,eAAe;YACf,gBAAgB;AAChB,YAAA,oBAAoB,aAEZ,mBAAmB,CAAA,EAAA,CAAA,CAAA,EAAA;AAElB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YATzB,aAAa;YACb,mBAAmB;YACnB,aAAa;YACb,eAAe;YACf,gBAAgB;YAChB,oBAAoB,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAIX,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAZ5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,mBAAmB,CAAC;AACnC,oBAAA,OAAO,EAAE;wBACP,aAAa;wBACb,mBAAmB;wBACnB,aAAa;wBACb,eAAe;wBACf,gBAAgB;wBAChB,oBAAoB;AACrB,qBAAA;oBACD,OAAO,EAAE,CAAC,mBAAmB,CAAC;AAC/B,iBAAA,CAAA;;;ACpBD;;AAEG;;ACFH;;AAEG;;;;"}