{"version":3,"file":"ng-doc-app-type-controls-string-control.mjs","sources":["../../../../libs/app/type-controls/string-control/string-control.component.ts","../../../../libs/app/type-controls/string-control/string-control.component.html","../../../../libs/app/type-controls/string-control/ng-doc-app-type-controls-string-control.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { NgDocTypeControl } from '@ng-doc/app/interfaces';\nimport {\n  NgDocButtonIconComponent,\n  NgDocFocusableDirective,\n  NgDocIconComponent,\n  NgDocInputStringDirective,\n  NgDocInputWrapperComponent,\n} from '@ng-doc/ui-kit';\nimport { DIControl, DIControlSilencerDirective } from 'di-controls';\n\n@Component({\n  selector: 'ng-doc-string-control',\n  templateUrl: './string-control.component.html',\n  styleUrls: ['./string-control.component.scss'],\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  imports: [\n    FormsModule,\n    NgDocInputWrapperComponent,\n    NgDocInputStringDirective,\n    NgDocButtonIconComponent,\n    NgDocFocusableDirective,\n    NgDocIconComponent,\n    DIControlSilencerDirective,\n  ],\n})\nexport class NgDocStringControlComponent\n  extends DIControl<string>\n  implements NgDocTypeControl<string>\n{\n  @Input()\n  default?: string;\n\n  constructor() {\n    super();\n  }\n\n  changeModel(value: string | null): void {\n    this.updateModel(value === null && this.default ? this.default : value);\n  }\n\n  override writeValue(value: string | null) {\n    super.writeValue(value);\n  }\n}\n","<ng-doc-input-wrapper diControlSilencer>\n  <input ngDocInputString [ngModel]=\"model()\" (ngModelChange)=\"changeModel($event)\" />\n  @if (model() && model() !== default) {\n    <button\n      ng-doc-button-icon-transparent\n      ngDocInputWrapperRight\n      size=\"large\"\n      [ngDocFocusable]=\"false\"\n      [disabled]=\"disabled\"\n      [rounded]=\"false\"\n      (click)=\"updateModel(default ?? null)\"\n      (focusout)=\"touch()\">\n      <ng-doc-icon icon=\"x\"></ng-doc-icon>\n    </button>\n  }\n</ng-doc-input-wrapper>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AA2BM,MAAO,2BACX,SAAQ,SAAiB,CAAA;AAMzB,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;IACT;AAEA,IAAA,WAAW,CAAC,KAAoB,EAAA;QAC9B,IAAI,CAAC,WAAW,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACzE;AAES,IAAA,UAAU,CAAC,KAAoB,EAAA;AACtC,QAAA,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;IACzB;8GAjBW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA3B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3BxC,+hBAgBA,EAAA,MAAA,EAAA,CAAA,mCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDEI,WAAW,+mBACX,0BAA0B,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC1B,yBAAyB,EAAA,QAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACzB,wBAAwB,EAAA,QAAA,EAAA,+LAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACxB,uBAAuB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACvB,kBAAkB,gGAClB,0BAA0B,EAAA,QAAA,EAAA,qBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAGjB,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAfvC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EAAA,eAAA,EAGhB,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC;wBACP,WAAW;wBACX,0BAA0B;wBAC1B,yBAAyB;wBACzB,wBAAwB;wBACxB,uBAAuB;wBACvB,kBAAkB;wBAClB,0BAA0B;AAC3B,qBAAA,EAAA,QAAA,EAAA,+hBAAA,EAAA,MAAA,EAAA,CAAA,mCAAA,CAAA,EAAA;;sBAMA;;;AE/BH;;AAEG;;;;"}