@simpleangularcontrols/sac-bootstrap3 16.0.0-rc.2 → 16.0.0-rc.4

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 (97) hide show
  1. package/controls/checkbox/checkbox.d.ts +7 -2
  2. package/controls/checkbox/checkbox.d.ts.map +1 -1
  3. package/controls/checkbox/radiobutton.d.ts.map +1 -1
  4. package/controls/checkbox/radiobuttons.d.ts +7 -2
  5. package/controls/checkbox/radiobuttons.d.ts.map +1 -1
  6. package/controls/datetime/date.d.ts +8 -2
  7. package/controls/datetime/date.d.ts.map +1 -1
  8. package/controls/datetime/dateselector.d.ts.map +1 -1
  9. package/controls/datetime/datetime.d.ts +8 -2
  10. package/controls/datetime/datetime.d.ts.map +1 -1
  11. package/controls/datetime/time.d.ts +8 -2
  12. package/controls/datetime/time.d.ts.map +1 -1
  13. package/controls/form/form.d.ts +4 -12
  14. package/controls/form/form.d.ts.map +1 -1
  15. package/controls/form/inheritform.directive.d.ts +11 -11
  16. package/controls/form/inheritform.directive.d.ts.map +1 -1
  17. package/controls/input/input.d.ts +7 -2
  18. package/controls/input/input.d.ts.map +1 -1
  19. package/controls/input/inputarea.d.ts +7 -2
  20. package/controls/input/inputarea.d.ts.map +1 -1
  21. package/controls/input/inputcurrency.d.ts +7 -2
  22. package/controls/input/inputcurrency.d.ts.map +1 -1
  23. package/controls/input/inputdecimal.d.ts +7 -2
  24. package/controls/input/inputdecimal.d.ts.map +1 -1
  25. package/controls/input/inputemail.d.ts +7 -2
  26. package/controls/input/inputemail.d.ts.map +1 -1
  27. package/controls/input/inputinteger.d.ts +7 -2
  28. package/controls/input/inputinteger.d.ts.map +1 -1
  29. package/controls/input/inputpassword.d.ts +7 -2
  30. package/controls/input/inputpassword.d.ts.map +1 -1
  31. package/controls/input/inputsearch.d.ts +7 -2
  32. package/controls/input/inputsearch.d.ts.map +1 -1
  33. package/controls/layout/formlayout.directive.d.ts +7 -0
  34. package/controls/layout/formlayout.directive.d.ts.map +1 -0
  35. package/controls/layout/layout.module.d.ts +11 -0
  36. package/controls/layout/layout.module.d.ts.map +1 -0
  37. package/controls/layout/tocontrolwidthcss.pipe.d.ts +20 -0
  38. package/controls/layout/tocontrolwidthcss.pipe.d.ts.map +1 -0
  39. package/controls/layout/tolabelwidthcss.pipe.d.ts +14 -0
  40. package/controls/layout/tolabelwidthcss.pipe.d.ts.map +1 -0
  41. package/controls/list/dropdown.d.ts +16 -3
  42. package/controls/list/dropdown.d.ts.map +1 -1
  43. package/controls/list/listbox.d.ts +7 -2
  44. package/controls/list/listbox.d.ts.map +1 -1
  45. package/controls/static/formcontainer.d.ts +5 -5
  46. package/controls/static/formcontainer.d.ts.map +1 -1
  47. package/controls/static/staticlabel.d.ts +7 -2
  48. package/controls/static/staticlabel.d.ts.map +1 -1
  49. package/controls/tinymce/tinymce.d.ts +6 -6
  50. package/controls/tinymce/tinymce.d.ts.map +1 -1
  51. package/controls/treeview/ngtreeitemaction.d.ts.map +1 -1
  52. package/controls/treeview/treeview.d.ts.map +1 -1
  53. package/controls/upload/upload.d.ts +10 -4
  54. package/controls/upload/upload.d.ts.map +1 -1
  55. package/controls/upload/uploadmultiple.d.ts +9 -2
  56. package/controls/upload/uploadmultiple.d.ts.map +1 -1
  57. package/controls/validation/validationsummary.d.ts +6 -1
  58. package/controls/validation/validationsummary.d.ts.map +1 -1
  59. package/esm2022/controls/checkbox/checkbox.mjs +39 -15
  60. package/esm2022/controls/checkbox/radiobutton.mjs +3 -2
  61. package/esm2022/controls/checkbox/radiobuttons.mjs +39 -15
  62. package/esm2022/controls/datetime/date.mjs +51 -18
  63. package/esm2022/controls/datetime/dateselector.mjs +3 -8
  64. package/esm2022/controls/datetime/datetime.mjs +49 -16
  65. package/esm2022/controls/datetime/time.mjs +49 -16
  66. package/esm2022/controls/form/form.mjs +7 -19
  67. package/esm2022/controls/form/inheritform.directive.mjs +31 -28
  68. package/esm2022/controls/input/input.mjs +35 -13
  69. package/esm2022/controls/input/inputarea.mjs +45 -15
  70. package/esm2022/controls/input/inputcurrency.mjs +45 -15
  71. package/esm2022/controls/input/inputdecimal.mjs +45 -15
  72. package/esm2022/controls/input/inputemail.mjs +45 -15
  73. package/esm2022/controls/input/inputinteger.mjs +45 -15
  74. package/esm2022/controls/input/inputpassword.mjs +45 -15
  75. package/esm2022/controls/input/inputsearch.mjs +39 -15
  76. package/esm2022/controls/layout/formlayout.directive.mjs +16 -0
  77. package/esm2022/controls/layout/layout.module.mjs +34 -0
  78. package/esm2022/controls/layout/tocontrolwidthcss.pipe.mjs +53 -0
  79. package/esm2022/controls/layout/tolabelwidthcss.pipe.mjs +37 -0
  80. package/esm2022/controls/list/dropdown.mjs +31 -14
  81. package/esm2022/controls/list/listbox.mjs +19 -8
  82. package/esm2022/controls/static/formcontainer.mjs +43 -18
  83. package/esm2022/controls/static/staticlabel.mjs +39 -15
  84. package/esm2022/controls/tinymce/tinymce.mjs +19 -12
  85. package/esm2022/controls/treeview/ngtreeitemaction.mjs +2 -1
  86. package/esm2022/controls/treeview/treeview.mjs +3 -9
  87. package/esm2022/controls/upload/upload.mjs +47 -15
  88. package/esm2022/controls/upload/uploadmultiple.mjs +21 -9
  89. package/esm2022/controls/validation/validationsummary.mjs +15 -11
  90. package/esm2022/public_api.mjs +34 -30
  91. package/fesm2022/simpleangularcontrols-sac-bootstrap3.mjs +1656 -1082
  92. package/fesm2022/simpleangularcontrols-sac-bootstrap3.mjs.map +1 -1
  93. package/package.json +4 -3
  94. package/public_api.d.ts +33 -29
  95. package/public_api.d.ts.map +1 -1
  96. package/simpleangularcontrols-sac-bootstrap3-16.0.0-rc.4.tgz +0 -0
  97. package/simpleangularcontrols-sac-bootstrap3-16.0.0-rc.2.tgz +0 -0
@@ -1,29 +1,59 @@
1
- import { NG_VALUE_ACCESSOR, NG_VALIDATORS } from '@angular/forms';
2
- import { Component, forwardRef, Host, Optional } from '@angular/core';
1
+ import { AsyncPipe, NgClass, NgIf } from '@angular/common';
2
+ import { Component, Host, Optional, forwardRef } from '@angular/core';
3
+ import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
3
4
  import { SacInputPasswordCommon } from '@simpleangularcontrols/sac-common';
4
- import { NgClass, NgIf, AsyncPipe } from '@angular/common';
5
+ import { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';
6
+ import { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';
5
7
  import * as i0 from "@angular/core";
6
- import * as i1 from "../form/form";
8
+ import * as i1 from "../layout/formlayout.directive";
7
9
  class SacInputPasswordComponent extends SacInputPasswordCommon {
8
- constructor(parent, injector) {
9
- super(parent, injector);
10
+ // #region Constructors
11
+ /**
12
+ * Constructor
13
+ * @param formLayout SacFormLayout to define scoped layout settings
14
+ * @param injector Injector for injecting services
15
+ */
16
+ constructor(formLayout, injector) {
17
+ super(formLayout, injector);
10
18
  }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputPasswordComponent, deps: [{ token: i1.SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputPasswordComponent, deps: [{ token: i1.SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
12
20
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputPasswordComponent, isStandalone: true, selector: "sac-inputpassword", providers: [
13
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputPasswordComponent },
14
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputPasswordComponent) }
15
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" class=\"form-control\" type=\"password\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\" autocomplete=\"new-password\" [ngClass]=\"{'language-specific': islanguagespecific }\"\r\n [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
21
+ {
22
+ provide: NG_VALUE_ACCESSOR,
23
+ multi: true,
24
+ useExisting: SacInputPasswordComponent,
25
+ },
26
+ {
27
+ provide: NG_VALIDATORS,
28
+ multi: true,
29
+ useExisting: forwardRef(() => SacInputPasswordComponent),
30
+ },
31
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n class=\"form-control\"\r\n type=\"password\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\"\r\n autocomplete=\"new-password\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
16
32
  }
17
33
  export { SacInputPasswordComponent };
18
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputPasswordComponent, decorators: [{
19
35
  type: Component,
20
36
  args: [{ selector: 'sac-inputpassword', providers: [
21
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputPasswordComponent },
22
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputPasswordComponent) }
23
- ], standalone: true, imports: [NgClass, NgIf, AsyncPipe], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" class=\"form-control\" type=\"password\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\" (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\" autocomplete=\"new-password\" [ngClass]=\"{'language-specific': islanguagespecific }\"\r\n [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <label for=\"{{name}}\" class=\"form-label-adaptive form-label-fixed\" [ngClass]=\"{ 'required': isrequired }\" *ngIf=\"isadaptivelabel && !disablelabel\">{{label}}</label>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n" }]
24
- }], ctorParameters: function () { return [{ type: i1.SacFormDirective, decorators: [{
37
+ {
38
+ provide: NG_VALUE_ACCESSOR,
39
+ multi: true,
40
+ useExisting: SacInputPasswordComponent,
41
+ },
42
+ {
43
+ provide: NG_VALIDATORS,
44
+ multi: true,
45
+ useExisting: forwardRef(() => SacInputPasswordComponent),
46
+ },
47
+ ], standalone: true, imports: [
48
+ NgClass,
49
+ NgIf,
50
+ AsyncPipe,
51
+ SacToLabelWidthCssPipe,
52
+ SacToControlWidthCssPipe,
53
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n class=\"form-control\"\r\n type=\"password\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\"\r\n autocomplete=\"new-password\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n" }]
54
+ }], ctorParameters: function () { return [{ type: i1.SacFormLayoutDirective, decorators: [{
25
55
  type: Host
26
56
  }, {
27
57
  type: Optional
28
58
  }] }, { type: i0.Injector }]; } });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRwYXNzd29yZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy9pbnB1dC9pbnB1dHBhc3N3b3JkLnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL2lucHV0L2lucHV0cGFzc3dvcmQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQW9CLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBWSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDM0UsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUczRCxNQVdhLHlCQUEwQixTQUFRLHNCQUFzQjtJQUNuRSxZQUFnQyxNQUF3QixFQUFFLFFBQWtCO1FBQzFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDMUIsQ0FBQzsrR0FIVSx5QkFBeUI7bUdBQXpCLHlCQUF5QixnRUFQdkI7WUFDUCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSx5QkFBeUIsRUFBRTtZQUNuRixFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDLEVBQUU7U0FDcEcsaURDZEwsK3FDQVdBLDRDREtjLE9BQU8sb0ZBQUUsSUFBSSx3RkFBRSxTQUFTOztTQUV6Qix5QkFBeUI7NEZBQXpCLHlCQUF5QjtrQkFYckMsU0FBUzsrQkFDSSxtQkFBbUIsYUFHbEI7d0JBQ1AsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxXQUFXLDJCQUEyQixFQUFFO3dCQUNuRixFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwwQkFBMEIsQ0FBQyxFQUFFO3FCQUNwRyxjQUNXLElBQUksV0FDUCxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDOzswQkFHeEIsSUFBSTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SLCBDb250cm9sQ29udGFpbmVyLCBOR19WQUxJREFUT1JTIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIEhvc3QsIEluamVjdG9yLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTYWNGb3JtRGlyZWN0aXZlIH0gZnJvbSAnLi4vZm9ybS9mb3JtJztcclxuaW1wb3J0IHsgU2FjSW5wdXRQYXNzd29yZENvbW1vbiB9IGZyb20gJ0BzaW1wbGVhbmd1bGFyY29udHJvbHMvc2FjLWNvbW1vbic7XHJcbmltcG9ydCB7IE5nQ2xhc3MsIE5nSWYsIEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3NhYy1pbnB1dHBhc3N3b3JkJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbnB1dHBhc3N3b3JkLmh0bWwnLFxyXG4gICAgLy8gVmFsdWUgQWNjZXNzIFByb3ZpZGVyIHJlZ2lzdHJpZXJlbiwgZGFtaXQgV2VydCB2aWEgTW9kZWwgZ2VzY2hyaWViZW4gdW5kIGdlbGVzZW4gd2VyZGVuIGthbm5cclxuICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHsgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIG11bHRpOiB0cnVlLCB1c2VFeGlzdGluZzogU2FjSW5wdXRQYXNzd29yZENvbXBvbmVudCB9LFxyXG4gICAgICAgIHsgcHJvdmlkZTogTkdfVkFMSURBVE9SUywgbXVsdGk6IHRydWUsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNhY0lucHV0UGFzc3dvcmRDb21wb25lbnQpIH1cclxuICAgIF0sXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW05nQ2xhc3MsIE5nSWYsIEFzeW5jUGlwZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNhY0lucHV0UGFzc3dvcmRDb21wb25lbnQgZXh0ZW5kcyBTYWNJbnB1dFBhc3N3b3JkQ29tbW9uIHtcclxuICBjb25zdHJ1Y3RvcihASG9zdCgpIEBPcHRpb25hbCgpIHBhcmVudDogU2FjRm9ybURpcmVjdGl2ZSwgaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgICBzdXBlcihwYXJlbnQsIGluamVjdG9yKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIiBbbmdDbGFzc109XCJ7J2hhcy1lcnJvcic6IGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpfVwiPlxyXG4gIDxsYWJlbCAqbmdJZj1cImRpc2FibGVsYWJlbCA9PT0gZmFsc2UgJiYgIWlzYWRhcHRpdmVsYWJlbFwiIGlkPVwie3tuYW1lfX1sYWJlbFwiIGZvcj1cInt7bmFtZX19XCIgY2xhc3M9XCJjb250cm9sLWxhYmVsXCIgW25nQ2xhc3NdPVwiW2xhYmVsc2l6ZSAhPT0gMTIgPyAgJ2NvbC1tZC0nICsgbGFiZWxzaXplIDogJ3NyLW9ubHknXVwiIFtjbGFzcy5yZXF1aXJlZF09XCJpc3JlcXVpcmVkXCI+e3tsYWJlbH19PC9sYWJlbD5cclxuICA8ZGl2IFtuZ0NsYXNzXT1cIltkaXNhYmxlbGFiZWwgPT09IGZhbHNlID8gJ2NvbC1tZC0nICsgX2lucHV0c2l6ZSA6ICdjb2wtbWQtMTInXVwiPlxyXG4gICAgPGlucHV0IGlkPVwie3tuYW1lfX1cIiBuYW1lPVwie3tuYW1lfX1cIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIHR5cGU9XCJwYXNzd29yZFwiXHJcbiAgICAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCIgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiAoYmx1cik9XCJvblRvdWNoKClcIiAoaW5wdXQpPVwic2V0VmFsdWUoJGV2ZW50LnRhcmdldC52YWx1ZSlcIlxyXG4gICAgICAgICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIiBhdXRvY29tcGxldGU9XCJuZXctcGFzc3dvcmRcIiBbbmdDbGFzc109XCJ7J2xhbmd1YWdlLXNwZWNpZmljJzogaXNsYW5ndWFnZXNwZWNpZmljIH1cIlxyXG4gICAgICAgICAgIFtkaXNhYmxlZF09XCJpc2Rpc2FibGVkXCIgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCIgLz5cclxuICAgIDxsYWJlbCBmb3I9XCJ7e25hbWV9fVwiIGNsYXNzPVwiZm9ybS1sYWJlbC1hZGFwdGl2ZSBmb3JtLWxhYmVsLWZpeGVkXCIgW25nQ2xhc3NdPVwieyAncmVxdWlyZWQnOiBpc3JlcXVpcmVkIH1cIiAqbmdJZj1cImlzYWRhcHRpdmVsYWJlbCAmJiAhZGlzYWJsZWxhYmVsXCI+e3tsYWJlbH19PC9sYWJlbD5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWxwLWJsb2NrIGhlbHAtYmxvY2stZXJyb3JcIiAqbmdJZj1cImlzaW5saW5lZXJyb3JlbmFibGVkICYmIGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCI+e3sgR2V0RXJyb3JNZXNzYWdlKCkgfCBhc3luYyB9fTwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRwYXNzd29yZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy9pbnB1dC9pbnB1dHBhc3N3b3JkLnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjL2NvbnRyb2xzL2lucHV0L2lucHV0cGFzc3dvcmQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBWSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7O0FBRXhFLE1BeUJhLHlCQUEwQixTQUFRLHNCQUFzQjtJQUNuRSx1QkFBdUI7SUFFdkI7Ozs7T0FJRztJQUNILFlBQ3NCLFVBQWtDLEVBQ3RELFFBQWtCO1FBRWxCLEtBQUssQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDOUIsQ0FBQzsrR0FiVSx5QkFBeUI7bUdBQXpCLHlCQUF5QixnRUFyQnpCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsV0FBVyxFQUFFLHlCQUF5QjthQUN2QztZQUNEO2dCQUNFLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixLQUFLLEVBQUUsSUFBSTtnQkFDWCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO2FBQ3pEO1NBQ0YsaURDdkJILHc3Q0E4Q0EsNENEcEJJLE9BQU8sb0ZBQ1AsSUFBSSx3RkFDSixTQUFTLHlDQUNULHNCQUFzQixtREFDdEIsd0JBQXdCOztTQUdmLHlCQUF5Qjs0RkFBekIseUJBQXlCO2tCQXpCckMsU0FBUzsrQkFDRSxtQkFBbUIsYUFHbEI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsS0FBSyxFQUFFLElBQUk7NEJBQ1gsV0FBVywyQkFBMkI7eUJBQ3ZDO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxhQUFhOzRCQUN0QixLQUFLLEVBQUUsSUFBSTs0QkFDWCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwwQkFBMEIsQ0FBQzt5QkFDekQ7cUJBQ0YsY0FDVyxJQUFJLFdBQ1A7d0JBQ1AsT0FBTzt3QkFDUCxJQUFJO3dCQUNKLFNBQVM7d0JBQ1Qsc0JBQXNCO3dCQUN0Qix3QkFBd0I7cUJBQ3pCOzswQkFXRSxJQUFJOzswQkFBSSxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlLCBOZ0NsYXNzLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0LCBJbmplY3RvciwgT3B0aW9uYWwsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMSURBVE9SUywgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNhY0lucHV0UGFzc3dvcmRDb21tb24gfSBmcm9tICdAc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NhYy1jb21tb24nO1xyXG5pbXBvcnQgeyBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vbGF5b3V0L2Zvcm1sYXlvdXQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU2FjVG9Db250cm9sV2lkdGhDc3NQaXBlIH0gZnJvbSAnLi4vbGF5b3V0L3RvY29udHJvbHdpZHRoY3NzLnBpcGUnO1xyXG5pbXBvcnQgeyBTYWNUb0xhYmVsV2lkdGhDc3NQaXBlIH0gZnJvbSAnLi4vbGF5b3V0L3RvbGFiZWx3aWR0aGNzcy5waXBlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2FjLWlucHV0cGFzc3dvcmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dHBhc3N3b3JkLmh0bWwnLFxyXG4gIC8vIFZhbHVlIEFjY2VzcyBQcm92aWRlciByZWdpc3RyaWVyZW4sIGRhbWl0IFdlcnQgdmlhIE1vZGVsIGdlc2NocmllYmVuIHVuZCBnZWxlc2VuIHdlcmRlbiBrYW5uXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IFNhY0lucHV0UGFzc3dvcmRDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2FjSW5wdXRQYXNzd29yZENvbXBvbmVudCksXHJcbiAgICB9LFxyXG4gIF0sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBOZ0NsYXNzLFxyXG4gICAgTmdJZixcclxuICAgIEFzeW5jUGlwZSxcclxuICAgIFNhY1RvTGFiZWxXaWR0aENzc1BpcGUsXHJcbiAgICBTYWNUb0NvbnRyb2xXaWR0aENzc1BpcGUsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNhY0lucHV0UGFzc3dvcmRDb21wb25lbnQgZXh0ZW5kcyBTYWNJbnB1dFBhc3N3b3JkQ29tbW9uIHtcclxuICAvLyAjcmVnaW9uIENvbnN0cnVjdG9yc1xyXG5cclxuICAvKipcclxuICAgKiBDb25zdHJ1Y3RvclxyXG4gICAqIEBwYXJhbSBmb3JtTGF5b3V0IFNhY0Zvcm1MYXlvdXQgdG8gZGVmaW5lIHNjb3BlZCBsYXlvdXQgc2V0dGluZ3NcclxuICAgKiBAcGFyYW0gaW5qZWN0b3IgSW5qZWN0b3IgZm9yIGluamVjdGluZyBzZXJ2aWNlc1xyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEhvc3QoKSBAT3B0aW9uYWwoKSBmb3JtTGF5b3V0OiBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlLFxyXG4gICAgaW5qZWN0b3I6IEluamVjdG9yXHJcbiAgKSB7XHJcbiAgICBzdXBlcihmb3JtTGF5b3V0LCBpbmplY3Rvcik7XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uIENvbnN0cnVjdG9yc1xyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cInJvdyBmb3JtLWdyb3VwXCJcclxuICBbbmdDbGFzc109XCJ7J2hhcy1lcnJvcic6IGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpfVwiXHJcbj5cclxuICA8bGFiZWxcclxuICAgICpuZ0lmPVwiZGlzYWJsZWxhYmVsID09PSBmYWxzZSAmJiAhaXNBZGFwdGl2ZUxhYmVsXCJcclxuICAgIGlkPVwie3tuYW1lfX1sYWJlbFwiXHJcbiAgICBmb3I9XCJ7e25hbWV9fVwiXHJcbiAgICBjbGFzcz1cImNvbC14cy0xMiBjb250cm9sLWxhYmVsXCJcclxuICAgIFtuZ0NsYXNzXT1cIltkaXNhYmxlbGFiZWwgPT09IGZhbHNlID8gKHRoaXMubGFiZWxTaXplcyB8IHRvTGFiZWxXaWR0aENzcykgOiAnc3Itb25seScgXVwiXHJcbiAgICBbY2xhc3MucmVxdWlyZWRdPVwiaXNyZXF1aXJlZFwiXHJcbiAgICA+e3tsYWJlbH19PC9sYWJlbFxyXG4gID5cclxuICA8ZGl2XHJcbiAgICBjbGFzcz1cImNvbC14cy0xMlwiXHJcbiAgICBbbmdDbGFzc109XCJbZGlzYWJsZWxhYmVsID09PSBmYWxzZSA/ICAodGhpcy5sYWJlbFNpemVzIHwgdG9Db250cm9sV2lkdGhDc3MpIDogJyddXCJcclxuICA+XHJcbiAgICA8aW5wdXRcclxuICAgICAgaWQ9XCJ7e25hbWV9fVwiXHJcbiAgICAgIG5hbWU9XCJ7e25hbWV9fVwiXHJcbiAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcclxuICAgICAgdHlwZT1cInBhc3N3b3JkXCJcclxuICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcclxuICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICAoYmx1cik9XCJvblRvdWNoKClcIlxyXG4gICAgICAoaW5wdXQpPVwic2V0VmFsdWUoJGV2ZW50LnRhcmdldC52YWx1ZSlcIlxyXG4gICAgICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4bGVuZ3RoXCJcclxuICAgICAgYXV0b2NvbXBsZXRlPVwibmV3LXBhc3N3b3JkXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImlzZGlzYWJsZWRcIlxyXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgLz5cclxuICAgIDxsYWJlbFxyXG4gICAgICBmb3I9XCJ7e25hbWV9fVwiXHJcbiAgICAgIGNsYXNzPVwiZm9ybS1sYWJlbC1hZGFwdGl2ZSBmb3JtLWxhYmVsLWZpeGVkXCJcclxuICAgICAgW25nQ2xhc3NdPVwieyAncmVxdWlyZWQnOiBpc3JlcXVpcmVkIH1cIlxyXG4gICAgICAqbmdJZj1cImlzQWRhcHRpdmVMYWJlbCAmJiAhZGlzYWJsZWxhYmVsXCJcclxuICAgICAgPnt7bGFiZWx9fTwvbGFiZWxcclxuICAgID5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJoZWxwLWJsb2NrIGhlbHAtYmxvY2stZXJyb3JcIlxyXG4gICAgICAqbmdJZj1cImlzaW5saW5lZXJyb3JlbmFibGVkICYmIGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCJcclxuICAgID5cclxuICAgICAge3sgR2V0RXJyb3JNZXNzYWdlKCkgfCBhc3luYyB9fVxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -1,29 +1,53 @@
1
- import { Component, Host, forwardRef, Optional } from '@angular/core';
2
- import { SacInputSearchCommon } from '@simpleangularcontrols/sac-common';
3
- import { NG_VALUE_ACCESSOR, NG_VALIDATORS } from '@angular/forms';
4
1
  import { NgClass, NgIf } from '@angular/common';
2
+ import { Component, Host, Optional, forwardRef } from '@angular/core';
3
+ import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
4
+ import { SacInputSearchCommon } from '@simpleangularcontrols/sac-common';
5
+ import { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';
6
+ import { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';
5
7
  import * as i0 from "@angular/core";
6
- import * as i1 from "../form/form";
8
+ import * as i1 from "../layout/formlayout.directive";
7
9
  class SacInputSearchComponent extends SacInputSearchCommon {
8
- constructor(parent, injector) {
9
- super(parent, injector);
10
+ // #region Constructors
11
+ /**
12
+ * Constructor
13
+ * @param formLayout SacFormLayout to define scoped layout settings
14
+ * @param injector Injector for injecting services
15
+ */
16
+ constructor(formLayout, injector) {
17
+ super(formLayout, injector);
10
18
  }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputSearchComponent, deps: [{ token: i1.SacFormDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputSearchComponent, deps: [{ token: i1.SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
12
20
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacInputSearchComponent, isStandalone: true, selector: "sac-inputsearch", providers: [
13
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputSearchComponent },
14
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputSearchComponent) }
15
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div class=\"input-group\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\" [ngClass]=\"{'language-specific': islanguagespecific }\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <span class=\"input-group-btn\">\r\n <input type=\"submit\" class=\"btn btn-default\" id=\"{{name}}_search\" (click)=\"searchClick()\" [value]=\"buttontext\" />\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
21
+ {
22
+ provide: NG_VALUE_ACCESSOR,
23
+ multi: true,
24
+ useExisting: SacInputSearchComponent,
25
+ },
26
+ {
27
+ provide: NG_VALIDATORS,
28
+ multi: true,
29
+ useExisting: forwardRef(() => SacInputSearchComponent),
30
+ },
31
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <input\r\n type=\"submit\"\r\n class=\"btn btn-default\"\r\n id=\"{{name}}_search\"\r\n (click)=\"searchClick()\"\r\n [value]=\"buttontext\"\r\n />\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: SacToLabelWidthCssPipe, name: "toLabelWidthCss" }, { kind: "pipe", type: SacToControlWidthCssPipe, name: "toControlWidthCss" }] }); }
16
32
  }
17
33
  export { SacInputSearchComponent };
18
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacInputSearchComponent, decorators: [{
19
35
  type: Component,
20
36
  args: [{ selector: 'sac-inputsearch', providers: [
21
- { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputSearchComponent },
22
- { provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacInputSearchComponent) }
23
- ], standalone: true, imports: [NgClass, NgIf], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <div class=\"input-group\">\r\n <input id=\"{{name}}\" name=\"{{name}}\" type=\"text\" class=\"form-control\"\r\n [value]=\"value\" [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\" (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\" [ngClass]=\"{'language-specific': islanguagespecific }\" [disabled]=\"isdisabled\" [readonly]=\"readonly\" />\r\n <span class=\"input-group-btn\">\r\n <input type=\"submit\" class=\"btn btn-default\" id=\"{{name}}_search\" (click)=\"searchClick()\" [value]=\"buttontext\" />\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
24
- }], ctorParameters: function () { return [{ type: i1.SacFormDirective, decorators: [{
37
+ {
38
+ provide: NG_VALUE_ACCESSOR,
39
+ multi: true,
40
+ useExisting: SacInputSearchComponent,
41
+ },
42
+ {
43
+ provide: NG_VALIDATORS,
44
+ multi: true,
45
+ useExisting: forwardRef(() => SacInputSearchComponent),
46
+ },
47
+ ], standalone: true, imports: [NgClass, NgIf, SacToLabelWidthCssPipe, SacToControlWidthCssPipe], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div class=\"input-group\">\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <span class=\"input-group-btn\">\r\n <input\r\n type=\"submit\"\r\n class=\"btn btn-default\"\r\n id=\"{{name}}_search\"\r\n (click)=\"searchClick()\"\r\n [value]=\"buttontext\"\r\n />\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
48
+ }], ctorParameters: function () { return [{ type: i1.SacFormLayoutDirective, decorators: [{
25
49
  type: Host
26
50
  }, {
27
51
  type: Optional
28
52
  }] }, { type: i0.Injector }]; } });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRzZWFyY2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvaW5wdXQvaW5wdXRzZWFyY2gudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvaW5wdXQvaW5wdXRzZWFyY2guaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBWSxVQUFVLEVBQStCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFvQixNQUFNLGdCQUFnQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUdoRCxNQVlhLHVCQUF3QixTQUFRLG9CQUFvQjtJQUUvRCxZQUFnQyxNQUF3QixFQUFFLFFBQWtCO1FBQzFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDMUIsQ0FBQzsrR0FKVSx1QkFBdUI7bUdBQXZCLHVCQUF1Qiw4REFSckI7WUFDUCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSx1QkFBdUIsRUFBRTtZQUNqRixFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDLEVBQUU7U0FDbEcsaURDZEwsNGpDQWNBLDRDREVjLE9BQU8sb0ZBQUUsSUFBSTs7U0FHZCx1QkFBdUI7NEZBQXZCLHVCQUF1QjtrQkFabkMsU0FBUzsrQkFDSSxpQkFBaUIsYUFHaEI7d0JBQ1AsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxXQUFXLHlCQUF5QixFQUFFO3dCQUNqRixFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx3QkFBd0IsQ0FBQyxFQUFFO3FCQUNsRyxjQUNXLElBQUksV0FDUCxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUM7OzBCQUtiLElBQUk7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3QsIEluamVjdG9yLCBmb3J3YXJkUmVmLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNhY0lucHV0U2VhcmNoQ29tbW9uIH0gZnJvbSAnQHNpbXBsZWFuZ3VsYXJjb250cm9scy9zYWMtY29tbW9uJztcclxuaW1wb3J0IHsgU2FjRm9ybURpcmVjdGl2ZSB9IGZyb20gJy4uL2Zvcm0vZm9ybSc7XHJcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SLCBOR19WQUxJREFUT1JTLCBDb250cm9sQ29udGFpbmVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBOZ0NsYXNzLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnc2FjLWlucHV0c2VhcmNoJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbnB1dHNlYXJjaC5odG1sJyxcclxuICAgIC8vIFZhbHVlIEFjY2VzcyBQcm92aWRlciByZWdpc3RyaWVyZW4sIGRhbWl0IFdlcnQgdmlhIE1vZGVsIGdlc2NocmllYmVuIHVuZCBnZWxlc2VuIHdlcmRlbiBrYW5uXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7IHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLCBtdWx0aTogdHJ1ZSwgdXNlRXhpc3Rpbmc6IFNhY0lucHV0U2VhcmNoQ29tcG9uZW50IH0sXHJcbiAgICAgICAgeyBwcm92aWRlOiBOR19WQUxJREFUT1JTLCBtdWx0aTogdHJ1ZSwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2FjSW5wdXRTZWFyY2hDb21wb25lbnQpIH1cclxuICAgIF0sXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW05nQ2xhc3MsIE5nSWZdXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgU2FjSW5wdXRTZWFyY2hDb21wb25lbnQgZXh0ZW5kcyBTYWNJbnB1dFNlYXJjaENvbW1vbiB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBIb3N0KCkgQE9wdGlvbmFsKCkgcGFyZW50OiBTYWNGb3JtRGlyZWN0aXZlLCBpbmplY3RvcjogSW5qZWN0b3IpIHtcclxuICAgIHN1cGVyKHBhcmVudCwgaW5qZWN0b3IpO1xyXG4gIH1cclxuXHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCIgW25nQ2xhc3NdPVwieydoYXMtZXJyb3InOiBpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKX1cIj5cclxuICA8bGFiZWwgKm5nSWY9XCJkaXNhYmxlbGFiZWwgPT09IGZhbHNlICYmICFpc2FkYXB0aXZlbGFiZWxcIiBpZD1cInt7bmFtZX19bGFiZWxcIiBmb3I9XCJ7e25hbWV9fVwiIGNsYXNzPVwiY29udHJvbC1sYWJlbFwiIFtuZ0NsYXNzXT1cIltsYWJlbHNpemUgIT09IDEyID8gICdjb2wtbWQtJyArIGxhYmVsc2l6ZSA6ICdzci1vbmx5J11cIiBbY2xhc3MucmVxdWlyZWRdPVwiaXNyZXF1aXJlZFwiPnt7bGFiZWx9fTwvbGFiZWw+XHJcbiAgPGRpdiBbbmdDbGFzc109XCJbZGlzYWJsZWxhYmVsID09PSBmYWxzZSA/ICdjb2wtbWQtJyArIF9pbnB1dHNpemUgOiAnY29sLW1kLTEyJ11cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiPlxyXG4gICAgICA8aW5wdXQgaWQ9XCJ7e25hbWV9fVwiIG5hbWU9XCJ7e25hbWV9fVwiIHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCIgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgICAgKGJsdXIpPVwib25Ub3VjaCgpXCIgKGlucHV0KT1cInNldFZhbHVlKCRldmVudC50YXJnZXQudmFsdWUpXCJcclxuICAgICAgICAgICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIiBbbmdDbGFzc109XCJ7J2xhbmd1YWdlLXNwZWNpZmljJzogaXNsYW5ndWFnZXNwZWNpZmljIH1cIiBbZGlzYWJsZWRdPVwiaXNkaXNhYmxlZFwiIFtyZWFkb25seV09XCJyZWFkb25seVwiIC8+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiaW5wdXQtZ3JvdXAtYnRuXCI+XHJcbiAgICAgICAgPGlucHV0IHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImJ0biBidG4tZGVmYXVsdFwiIGlkPVwie3tuYW1lfX1fc2VhcmNoXCIgKGNsaWNrKT1cInNlYXJjaENsaWNrKClcIiBbdmFsdWVdPVwiYnV0dG9udGV4dFwiIC8+XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRzZWFyY2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvaW5wdXQvaW5wdXRzZWFyY2gudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvaW5wdXQvaW5wdXRzZWFyY2guaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFZLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXpFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7QUFFeEUsTUFtQmEsdUJBQXdCLFNBQVEsb0JBQW9CO0lBQy9ELHVCQUF1QjtJQUV2Qjs7OztPQUlHO0lBQ0gsWUFDc0IsVUFBa0MsRUFDdEQsUUFBa0I7UUFFbEIsS0FBSyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM5QixDQUFDOytHQWJVLHVCQUF1QjttR0FBdkIsdUJBQXVCLDhEQWZ2QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLEtBQUssRUFBRSxJQUFJO2dCQUNYLFdBQVcsRUFBRSx1QkFBdUI7YUFDckM7WUFDRDtnQkFDRSxPQUFPLEVBQUUsYUFBYTtnQkFDdEIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQzthQUN2RDtTQUNGLGlEQ3ZCSCx3ekNBMkNBLDRDRGxCWSxPQUFPLG9GQUFFLElBQUksd0ZBQUUsc0JBQXNCLG1EQUFFLHdCQUF3Qjs7U0FFOUQsdUJBQXVCOzRGQUF2Qix1QkFBdUI7a0JBbkJuQyxTQUFTOytCQUNFLGlCQUFpQixhQUdoQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixLQUFLLEVBQUUsSUFBSTs0QkFDWCxXQUFXLHlCQUF5Qjt5QkFDckM7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHdCQUF3QixDQUFDO3lCQUN2RDtxQkFDRixjQUNXLElBQUksV0FDUCxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsd0JBQXdCLENBQUM7OzBCQVd2RSxJQUFJOzswQkFBSSxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcywgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSG9zdCwgSW5qZWN0b3IsIE9wdGlvbmFsLCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYWNJbnB1dFNlYXJjaENvbW1vbiB9IGZyb20gJ0BzaW1wbGVhbmd1bGFyY29udHJvbHMvc2FjLWNvbW1vbic7XHJcbmltcG9ydCB7IFNhY0Zvcm1MYXlvdXREaXJlY3RpdmUgfSBmcm9tICcuLi9sYXlvdXQvZm9ybWxheW91dC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTYWNUb0NvbnRyb2xXaWR0aENzc1BpcGUgfSBmcm9tICcuLi9sYXlvdXQvdG9jb250cm9sd2lkdGhjc3MucGlwZSc7XHJcbmltcG9ydCB7IFNhY1RvTGFiZWxXaWR0aENzc1BpcGUgfSBmcm9tICcuLi9sYXlvdXQvdG9sYWJlbHdpZHRoY3NzLnBpcGUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYWMtaW5wdXRzZWFyY2gnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dHNlYXJjaC5odG1sJyxcclxuICAvLyBWYWx1ZSBBY2Nlc3MgUHJvdmlkZXIgcmVnaXN0cmllcmVuLCBkYW1pdCBXZXJ0IHZpYSBNb2RlbCBnZXNjaHJpZWJlbiB1bmQgZ2VsZXNlbiB3ZXJkZW4ga2FublxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBTYWNJbnB1dFNlYXJjaENvbXBvbmVudCxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTYWNJbnB1dFNlYXJjaENvbXBvbmVudCksXHJcbiAgICB9LFxyXG4gIF0sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbTmdDbGFzcywgTmdJZiwgU2FjVG9MYWJlbFdpZHRoQ3NzUGlwZSwgU2FjVG9Db250cm9sV2lkdGhDc3NQaXBlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNhY0lucHV0U2VhcmNoQ29tcG9uZW50IGV4dGVuZHMgU2FjSW5wdXRTZWFyY2hDb21tb24ge1xyXG4gIC8vICNyZWdpb24gQ29uc3RydWN0b3JzXHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnN0cnVjdG9yXHJcbiAgICogQHBhcmFtIGZvcm1MYXlvdXQgU2FjRm9ybUxheW91dCB0byBkZWZpbmUgc2NvcGVkIGxheW91dCBzZXR0aW5nc1xyXG4gICAqIEBwYXJhbSBpbmplY3RvciBJbmplY3RvciBmb3IgaW5qZWN0aW5nIHNlcnZpY2VzXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASG9zdCgpIEBPcHRpb25hbCgpIGZvcm1MYXlvdXQ6IFNhY0Zvcm1MYXlvdXREaXJlY3RpdmUsXHJcbiAgICBpbmplY3RvcjogSW5qZWN0b3JcclxuICApIHtcclxuICAgIHN1cGVyKGZvcm1MYXlvdXQsIGluamVjdG9yKTtcclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gQ29uc3RydWN0b3JzXHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwicm93IGZvcm0tZ3JvdXBcIlxyXG4gIFtuZ0NsYXNzXT1cInsnaGFzLWVycm9yJzogaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCl9XCJcclxuPlxyXG4gIDxsYWJlbFxyXG4gICAgKm5nSWY9XCJkaXNhYmxlbGFiZWwgPT09IGZhbHNlICYmICFpc0FkYXB0aXZlTGFiZWxcIlxyXG4gICAgaWQ9XCJ7e25hbWV9fWxhYmVsXCJcclxuICAgIGZvcj1cInt7bmFtZX19XCJcclxuICAgIGNsYXNzPVwiY29sLXhzLTEyIGNvbnRyb2wtbGFiZWxcIlxyXG4gICAgW25nQ2xhc3NdPVwiW2Rpc2FibGVsYWJlbCA9PT0gZmFsc2UgPyAodGhpcy5sYWJlbFNpemVzIHwgdG9MYWJlbFdpZHRoQ3NzKSA6ICdzci1vbmx5JyBdXCJcclxuICAgIFtjbGFzcy5yZXF1aXJlZF09XCJpc3JlcXVpcmVkXCJcclxuICAgID57e2xhYmVsfX08L2xhYmVsXHJcbiAgPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwiY29sLXhzLTEyXCJcclxuICAgIFtuZ0NsYXNzXT1cIltkaXNhYmxlbGFiZWwgPT09IGZhbHNlID8gICh0aGlzLmxhYmVsU2l6ZXMgfCB0b0NvbnRyb2xXaWR0aENzcykgOiAnJ11cIlxyXG4gID5cclxuICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICBpZD1cInt7bmFtZX19XCJcclxuICAgICAgICBuYW1lPVwie3tuYW1lfX1cIlxyXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcclxuICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgKGJsdXIpPVwib25Ub3VjaCgpXCJcclxuICAgICAgICAoaW5wdXQpPVwic2V0VmFsdWUoJGV2ZW50LnRhcmdldC52YWx1ZSlcIlxyXG4gICAgICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc2Rpc2FibGVkXCJcclxuICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAvPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImlucHV0LWdyb3VwLWJ0blwiPlxyXG4gICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgdHlwZT1cInN1Ym1pdFwiXHJcbiAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdFwiXHJcbiAgICAgICAgICBpZD1cInt7bmFtZX19X3NlYXJjaFwiXHJcbiAgICAgICAgICAoY2xpY2spPVwic2VhcmNoQ2xpY2soKVwiXHJcbiAgICAgICAgICBbdmFsdWVdPVwiYnV0dG9udGV4dFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,16 @@
1
+ import { Directive } from '@angular/core';
2
+ import { SacFormLayoutCommon } from '@simpleangularcontrols/sac-common';
3
+ import * as i0 from "@angular/core";
4
+ class SacFormLayoutDirective extends SacFormLayoutCommon {
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacFormLayoutDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
6
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SacFormLayoutDirective, isStandalone: true, selector: "[sacFormLayout]", usesInheritance: true, ngImport: i0 }); }
7
+ }
8
+ export { SacFormLayoutDirective };
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacFormLayoutDirective, decorators: [{
10
+ type: Directive,
11
+ args: [{
12
+ selector: '[sacFormLayout]',
13
+ standalone: true,
14
+ }]
15
+ }] });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWxheW91dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvbGF5b3V0L2Zvcm1sYXlvdXQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBRXhFLE1BSWEsc0JBQXVCLFNBQVEsbUJBQW1COytHQUFsRCxzQkFBc0I7bUdBQXRCLHNCQUFzQjs7U0FBdEIsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBSmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNhY0Zvcm1MYXlvdXRDb21tb24gfSBmcm9tICdAc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NhYy1jb21tb24nO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbc2FjRm9ybUxheW91dF0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlIGV4dGVuZHMgU2FjRm9ybUxheW91dENvbW1vbiB7fVxyXG4iXX0=
@@ -0,0 +1,34 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { SacFormLayoutDirective } from './formlayout.directive';
4
+ import { SacToControlWidthCssPipe } from './tocontrolwidthcss.pipe';
5
+ import { SacToLabelWidthCssPipe } from './tolabelwidthcss.pipe';
6
+ import * as i0 from "@angular/core";
7
+ class SACBootstrap3LayoutModule {
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3LayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3LayoutModule, imports: [CommonModule,
10
+ SacFormLayoutDirective,
11
+ SacToControlWidthCssPipe,
12
+ SacToLabelWidthCssPipe], exports: [SacFormLayoutDirective,
13
+ SacToControlWidthCssPipe,
14
+ SacToLabelWidthCssPipe] }); }
15
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3LayoutModule, imports: [CommonModule] }); }
16
+ }
17
+ export { SACBootstrap3LayoutModule };
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SACBootstrap3LayoutModule, decorators: [{
19
+ type: NgModule,
20
+ args: [{
21
+ imports: [
22
+ CommonModule,
23
+ SacFormLayoutDirective,
24
+ SacToControlWidthCssPipe,
25
+ SacToLabelWidthCssPipe,
26
+ ],
27
+ exports: [
28
+ SacFormLayoutDirective,
29
+ SacToControlWidthCssPipe,
30
+ SacToLabelWidthCssPipe,
31
+ ],
32
+ }]
33
+ }] });
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy9sYXlvdXQvbGF5b3V0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFFaEUsTUFhYSx5QkFBeUI7K0dBQXpCLHlCQUF5QjtnSEFBekIseUJBQXlCLFlBWGxDLFlBQVk7WUFDWixzQkFBc0I7WUFDdEIsd0JBQXdCO1lBQ3hCLHNCQUFzQixhQUd0QixzQkFBc0I7WUFDdEIsd0JBQXdCO1lBQ3hCLHNCQUFzQjtnSEFHYix5QkFBeUIsWUFYbEMsWUFBWTs7U0FXSCx5QkFBeUI7NEZBQXpCLHlCQUF5QjtrQkFickMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixzQkFBc0I7d0JBQ3RCLHdCQUF3Qjt3QkFDeEIsc0JBQXNCO3FCQUN2QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asc0JBQXNCO3dCQUN0Qix3QkFBd0I7d0JBQ3hCLHNCQUFzQjtxQkFDdkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi9mb3JtbGF5b3V0LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNhY1RvQ29udHJvbFdpZHRoQ3NzUGlwZSB9IGZyb20gJy4vdG9jb250cm9sd2lkdGhjc3MucGlwZSc7XHJcbmltcG9ydCB7IFNhY1RvTGFiZWxXaWR0aENzc1BpcGUgfSBmcm9tICcuL3RvbGFiZWx3aWR0aGNzcy5waXBlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgU2FjRm9ybUxheW91dERpcmVjdGl2ZSxcclxuICAgIFNhY1RvQ29udHJvbFdpZHRoQ3NzUGlwZSxcclxuICAgIFNhY1RvTGFiZWxXaWR0aENzc1BpcGUsXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlLFxyXG4gICAgU2FjVG9Db250cm9sV2lkdGhDc3NQaXBlLFxyXG4gICAgU2FjVG9MYWJlbFdpZHRoQ3NzUGlwZSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU0FDQm9vdHN0cmFwM0xheW91dE1vZHVsZSB7fVxyXG4iXX0=
@@ -0,0 +1,53 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ class SacToControlWidthCssPipe {
4
+ // #region Public Methods
5
+ /**
6
+ * Get CSS classes from label width configuration to set control size
7
+ * @param value Configuration with grid columns for different viewports
8
+ * @returns string with css classe for bootstrap3
9
+ */
10
+ transform(value) {
11
+ const classes = [];
12
+ if (value.labelSizeXs) {
13
+ classes.push('col-xs-' + this.calcControlSize(value.labelSizeXs));
14
+ }
15
+ if (value.labelSizeSm) {
16
+ classes.push('col-sm-' + this.calcControlSize(value.labelSizeSm));
17
+ }
18
+ if (value.labelSizeMd) {
19
+ classes.push('col-md-' + this.calcControlSize(value.labelSizeMd));
20
+ }
21
+ if (value.labelSizeLg) {
22
+ classes.push('col-lg-' + this.calcControlSize(value.labelSizeLg));
23
+ }
24
+ return classes.join(' ');
25
+ }
26
+ // #endregion Public Methods
27
+ // #region Private Methods
28
+ /**
29
+ * calculate the control size
30
+ * @param labelsize grid size of label
31
+ * @returns grid size for control. should be between 1 and 12
32
+ */
33
+ calcControlSize(labelsize) {
34
+ if (labelsize === 12) {
35
+ return 12;
36
+ }
37
+ if (!labelsize) {
38
+ return 12;
39
+ }
40
+ return 12 - labelsize;
41
+ }
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacToControlWidthCssPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
43
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SacToControlWidthCssPipe, isStandalone: true, name: "toControlWidthCss" }); }
44
+ }
45
+ export { SacToControlWidthCssPipe };
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacToControlWidthCssPipe, decorators: [{
47
+ type: Pipe,
48
+ args: [{
49
+ name: 'toControlWidthCss',
50
+ standalone: true,
51
+ }]
52
+ }] });
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jb250cm9sd2lkdGhjc3MucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy9sYXlvdXQvdG9jb250cm9sd2lkdGhjc3MucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFHcEQsTUFJYSx3QkFBd0I7SUFDbkMseUJBQXlCO0lBRXpCOzs7O09BSUc7SUFDSSxTQUFTLENBQUMsS0FBcUI7UUFDcEMsTUFBTSxPQUFPLEdBQWEsRUFBRSxDQUFDO1FBRTdCLElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRTtZQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1NBQ25FO1FBRUQsSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFO1lBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7U0FDbkU7UUFFRCxJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUU7WUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztTQUNuRTtRQUVELElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRTtZQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1NBQ25FO1FBRUQsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCw0QkFBNEI7SUFFNUIsMEJBQTBCO0lBRTFCOzs7O09BSUc7SUFDSyxlQUFlLENBQUMsU0FBaUI7UUFDdkMsSUFBSSxTQUFTLEtBQUssRUFBRSxFQUFFO1lBQ3BCLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFFRCxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2QsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUVELE9BQU8sRUFBRSxHQUFHLFNBQVMsQ0FBQztJQUN4QixDQUFDOytHQWpEVSx3QkFBd0I7NkdBQXhCLHdCQUF3Qjs7U0FBeEIsd0JBQXdCOzRGQUF4Qix3QkFBd0I7a0JBSnBDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLG1CQUFtQjtvQkFDekIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJU2FjTGFiZWxTaXplcyB9IGZyb20gJ0BzaW1wbGVhbmd1bGFyY29udHJvbHMvc2FjLWNvbW1vbic7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3RvQ29udHJvbFdpZHRoQ3NzJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2FjVG9Db250cm9sV2lkdGhDc3NQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBHZXQgQ1NTIGNsYXNzZXMgZnJvbSBsYWJlbCB3aWR0aCBjb25maWd1cmF0aW9uIHRvIHNldCBjb250cm9sIHNpemVcclxuICAgKiBAcGFyYW0gdmFsdWUgQ29uZmlndXJhdGlvbiB3aXRoIGdyaWQgY29sdW1ucyBmb3IgZGlmZmVyZW50IHZpZXdwb3J0c1xyXG4gICAqIEByZXR1cm5zIHN0cmluZyB3aXRoIGNzcyBjbGFzc2UgZm9yIGJvb3RzdHJhcDNcclxuICAgKi9cclxuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBJU2FjTGFiZWxTaXplcyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBjbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAgIGlmICh2YWx1ZS5sYWJlbFNpemVYcykge1xyXG4gICAgICBjbGFzc2VzLnB1c2goJ2NvbC14cy0nICsgdGhpcy5jYWxjQ29udHJvbFNpemUodmFsdWUubGFiZWxTaXplWHMpKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodmFsdWUubGFiZWxTaXplU20pIHtcclxuICAgICAgY2xhc3Nlcy5wdXNoKCdjb2wtc20tJyArIHRoaXMuY2FsY0NvbnRyb2xTaXplKHZhbHVlLmxhYmVsU2l6ZVNtKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHZhbHVlLmxhYmVsU2l6ZU1kKSB7XHJcbiAgICAgIGNsYXNzZXMucHVzaCgnY29sLW1kLScgKyB0aGlzLmNhbGNDb250cm9sU2l6ZSh2YWx1ZS5sYWJlbFNpemVNZCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh2YWx1ZS5sYWJlbFNpemVMZykge1xyXG4gICAgICBjbGFzc2VzLnB1c2goJ2NvbC1sZy0nICsgdGhpcy5jYWxjQ29udHJvbFNpemUodmFsdWUubGFiZWxTaXplTGcpKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gY2xhc3Nlcy5qb2luKCcgJyk7XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBNZXRob2RzXHJcblxyXG4gIC8vICNyZWdpb24gUHJpdmF0ZSBNZXRob2RzXHJcblxyXG4gIC8qKlxyXG4gICAqIGNhbGN1bGF0ZSB0aGUgY29udHJvbCBzaXplXHJcbiAgICogQHBhcmFtIGxhYmVsc2l6ZSBncmlkIHNpemUgb2YgbGFiZWxcclxuICAgKiBAcmV0dXJucyBncmlkIHNpemUgZm9yIGNvbnRyb2wuIHNob3VsZCBiZSBiZXR3ZWVuIDEgYW5kIDEyXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBjYWxjQ29udHJvbFNpemUobGFiZWxzaXplOiBudW1iZXIpIHtcclxuICAgIGlmIChsYWJlbHNpemUgPT09IDEyKSB7XHJcbiAgICAgIHJldHVybiAxMjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIWxhYmVsc2l6ZSkge1xyXG4gICAgICByZXR1cm4gMTI7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIDEyIC0gbGFiZWxzaXplO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQcml2YXRlIE1ldGhvZHNcclxufVxyXG4iXX0=
@@ -0,0 +1,37 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ class SacToLabelWidthCssPipe {
4
+ // #region Public Methods
5
+ /**
6
+ * Get CSS classes from label width configuration to set label size
7
+ * @param value Configuration with grid columns for different viewports
8
+ * @returns string with css classe for bootstrap3
9
+ */
10
+ transform(value) {
11
+ const classes = [];
12
+ if (value.labelSizeXs) {
13
+ classes.push('col-xs-' + value.labelSizeXs);
14
+ }
15
+ if (value.labelSizeSm) {
16
+ classes.push('col-sm-' + value.labelSizeSm);
17
+ }
18
+ if (value.labelSizeMd) {
19
+ classes.push('col-md-' + value.labelSizeMd);
20
+ }
21
+ if (value.labelSizeLg) {
22
+ classes.push('col-lg-' + value.labelSizeLg);
23
+ }
24
+ return classes.join(' ');
25
+ }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacToLabelWidthCssPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
27
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SacToLabelWidthCssPipe, isStandalone: true, name: "toLabelWidthCss" }); }
28
+ }
29
+ export { SacToLabelWidthCssPipe };
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacToLabelWidthCssPipe, decorators: [{
31
+ type: Pipe,
32
+ args: [{
33
+ name: 'toLabelWidthCss',
34
+ standalone: true,
35
+ }]
36
+ }] });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9sYWJlbHdpZHRoY3NzLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvbGF5b3V0L3RvbGFiZWx3aWR0aGNzcy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQUdwRCxNQUlhLHNCQUFzQjtJQUNqQyx5QkFBeUI7SUFFekI7Ozs7T0FJRztJQUNJLFNBQVMsQ0FBQyxLQUFxQjtRQUNwQyxNQUFNLE9BQU8sR0FBYSxFQUFFLENBQUM7UUFFN0IsSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFO1lBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUM3QztRQUVELElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRTtZQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDN0M7UUFFRCxJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUU7WUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQzdDO1FBRUQsSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFO1lBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUM3QztRQUVELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQixDQUFDOytHQTVCVSxzQkFBc0I7NkdBQXRCLHNCQUFzQjs7U0FBdEIsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBSmxDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGlCQUFpQjtvQkFDdkIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJU2FjTGFiZWxTaXplcyB9IGZyb20gJ0BzaW1wbGVhbmd1bGFyY29udHJvbHMvc2FjLWNvbW1vbic7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3RvTGFiZWxXaWR0aENzcycsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNhY1RvTGFiZWxXaWR0aENzc1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICAvLyAjcmVnaW9uIFB1YmxpYyBNZXRob2RzXHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBDU1MgY2xhc3NlcyBmcm9tIGxhYmVsIHdpZHRoIGNvbmZpZ3VyYXRpb24gdG8gc2V0IGxhYmVsIHNpemVcclxuICAgKiBAcGFyYW0gdmFsdWUgQ29uZmlndXJhdGlvbiB3aXRoIGdyaWQgY29sdW1ucyBmb3IgZGlmZmVyZW50IHZpZXdwb3J0c1xyXG4gICAqIEByZXR1cm5zIHN0cmluZyB3aXRoIGNzcyBjbGFzc2UgZm9yIGJvb3RzdHJhcDNcclxuICAgKi9cclxuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBJU2FjTGFiZWxTaXplcyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBjbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAgIGlmICh2YWx1ZS5sYWJlbFNpemVYcykge1xyXG4gICAgICBjbGFzc2VzLnB1c2goJ2NvbC14cy0nICsgdmFsdWUubGFiZWxTaXplWHMpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh2YWx1ZS5sYWJlbFNpemVTbSkge1xyXG4gICAgICBjbGFzc2VzLnB1c2goJ2NvbC1zbS0nICsgdmFsdWUubGFiZWxTaXplU20pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh2YWx1ZS5sYWJlbFNpemVNZCkge1xyXG4gICAgICBjbGFzc2VzLnB1c2goJ2NvbC1tZC0nICsgdmFsdWUubGFiZWxTaXplTWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh2YWx1ZS5sYWJlbFNpemVMZykge1xyXG4gICAgICBjbGFzc2VzLnB1c2goJ2NvbC1sZy0nICsgdmFsdWUubGFiZWxTaXplTGcpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBjbGFzc2VzLmpvaW4oJyAnKTtcclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHVibGljIE1ldGhvZHNcclxufVxyXG4iXX0=
@@ -2,14 +2,25 @@ import { AsyncPipe, NgClass, NgFor, NgIf, NgTemplateOutlet, } from '@angular/com
2
2
  import { Component, Directive, Host, Optional, forwardRef, } from '@angular/core';
3
3
  import { FormsModule, NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
4
4
  import { SacDropdownCommon, SacDropdownOptionCommon, } from '@simpleangularcontrols/sac-common';
5
+ import { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';
6
+ import { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';
5
7
  import * as i0 from "@angular/core";
6
- import * as i1 from "../form/form";
8
+ import * as i1 from "../layout/formlayout.directive";
7
9
  import * as i2 from "@angular/forms";
10
+ // #region Classes
8
11
  class SacDropdownComponent extends SacDropdownCommon {
9
- constructor(parent, injector, _renderer, _elementRef) {
10
- super(parent, injector, _renderer, _elementRef);
12
+ // #region Constructors
13
+ /**
14
+ * Constructor
15
+ * @param formLayout SacFormLayout to define scoped layout settings
16
+ * @param injector Injector for injecting services
17
+ * @param renderer Angular rendering engine
18
+ * @param elementRef Reference to html dom element
19
+ */
20
+ constructor(formLayout, injector, renderer, elementRef) {
21
+ super(formLayout, injector, renderer, elementRef);
11
22
  }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownComponent, deps: [{ token: i1.SacFormDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownComponent, deps: [{ token: i1.SacFormLayoutDirective, host: true, optional: true }, { token: i0.Injector }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
13
24
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SacDropdownComponent, isStandalone: true, selector: "sac-dropdown", providers: [
14
25
  {
15
26
  provide: NG_VALUE_ACCESSOR,
@@ -21,7 +32,7 @@ class SacDropdownComponent extends SacDropdownCommon {
21
32
  multi: true,
22
33
  useExisting: forwardRef(() => SacDropdownComponent),
23
34
  },
24
- ], usesInheritance: true, ngImport: i0, template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <select #dropdownitem id=\"{{name}}\" name=\"{{name}}\" class=\"form-control\"\r\n (blur)=\"onTouch()\" (change)=\"setValue(dropdownitem.value)\" [disabled]=\"isdisabled\">\r\n\r\n <option *ngIf=\"emptylabel !== ''\" [ngValue]=\"emptyvalue\">{{emptylabel}}</option>\r\n\r\n <ng-content></ng-content>\r\n\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option *ngFor=\"let item of options\" [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\">\r\n </ng-template>\r\n\r\n </option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup *ngFor=\"let group of options\" [attr.label]=\"group[grouplabel]\">\r\n <option *ngFor=\"let item of group[groupitems]\" [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\">\r\n </ng-template>\r\n\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n\r\n\r\n </select>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(function () { return FormsModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgSelectOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.ɵNgSelectMultipleOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return SacDropdownOptionDirective; }), selector: "option,[sacOption]" }, { kind: "directive", type: i0.forwardRef(function () { return NgFor; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i0.forwardRef(function () { return AsyncPipe; }), name: "async" }] }); }
35
+ ], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <select\r\n #dropdownitem\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n class=\"form-control\"\r\n (blur)=\"onTouch()\"\r\n (change)=\"setValue(dropdownitem.value)\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <option *ngIf=\"emptylabel !== ''\" [ngValue]=\"emptyvalue\">\r\n {{emptylabel}}\r\n </option>\r\n\r\n <ng-content></ng-content>\r\n\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option\r\n *ngFor=\"let item of options\"\r\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup\r\n *ngFor=\"let group of options\"\r\n [attr.label]=\"group[grouplabel]\"\r\n >\r\n <option\r\n *ngFor=\"let item of group[groupitems]\"\r\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n </select>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(function () { return FormsModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgSelectOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.ɵNgSelectMultipleOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return SacDropdownOptionDirective; }), selector: "option,[sacOption]" }, { kind: "directive", type: i0.forwardRef(function () { return NgFor; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i0.forwardRef(function () { return AsyncPipe; }), name: "async" }, { kind: "pipe", type: i0.forwardRef(function () { return SacToLabelWidthCssPipe; }), name: "toLabelWidthCss" }, { kind: "pipe", type: i0.forwardRef(function () { return SacToControlWidthCssPipe; }), name: "toControlWidthCss" }] }); }
25
36
  }
26
37
  export { SacDropdownComponent };
27
38
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownComponent, decorators: [{
@@ -45,15 +56,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
45
56
  NgFor,
46
57
  NgTemplateOutlet,
47
58
  AsyncPipe,
48
- ], template: "<div class=\"form-group\" [ngClass]=\"{'has-error': invalid && (dirty || touched)}\">\r\n <label *ngIf=\"disablelabel === false && !isadaptivelabel\" id=\"{{name}}label\" for=\"{{name}}\" class=\"control-label\" [ngClass]=\"[labelsize !== 12 ? 'col-md-' + labelsize : 'sr-only']\" [class.required]=\"isrequired\">{{label}}</label>\r\n <div [ngClass]=\"[disablelabel === false ? 'col-md-' + _inputsize : 'col-md-12']\">\r\n <select #dropdownitem id=\"{{name}}\" name=\"{{name}}\" class=\"form-control\"\r\n (blur)=\"onTouch()\" (change)=\"setValue(dropdownitem.value)\" [disabled]=\"isdisabled\">\r\n\r\n <option *ngIf=\"emptylabel !== ''\" [ngValue]=\"emptyvalue\">{{emptylabel}}</option>\r\n\r\n <ng-content></ng-content>\r\n\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option *ngFor=\"let item of options\" [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\">\r\n </ng-template>\r\n\r\n </option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup *ngFor=\"let group of options\" [attr.label]=\"group[grouplabel]\">\r\n <option *ngFor=\"let item of group[groupitems]\" [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\r\n\r\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\">\r\n </ng-template>\r\n\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n\r\n\r\n </select>\r\n <div class=\"help-block help-block-error\" *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">{{ GetErrorMessage() | async }}</div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n" }]
49
- }], ctorParameters: function () { return [{ type: i1.SacFormDirective, decorators: [{
59
+ SacToLabelWidthCssPipe,
60
+ SacToControlWidthCssPipe,
61
+ ], template: "<div\r\n class=\"row form-group\"\r\n [ngClass]=\"{'has-error': invalid && (dirty || touched)}\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <select\r\n #dropdownitem\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n class=\"form-control\"\r\n (blur)=\"onTouch()\"\r\n (change)=\"setValue(dropdownitem.value)\"\r\n [disabled]=\"isdisabled\"\r\n >\r\n <option *ngIf=\"emptylabel !== ''\" [ngValue]=\"emptyvalue\">\r\n {{emptylabel}}\r\n </option>\r\n\r\n <ng-content></ng-content>\r\n\r\n <ng-container *ngIf=\"groupitems === ''\">\r\n <option\r\n *ngFor=\"let item of options\"\r\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"groupitems !== ''\">\r\n <optgroup\r\n *ngFor=\"let group of options\"\r\n [attr.label]=\"group[grouplabel]\"\r\n >\r\n <option\r\n *ngFor=\"let item of group[groupitems]\"\r\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\r\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\"\r\n >\r\n <ng-template\r\n *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate;context:{ label: item[optionlabel], item: item }\"\r\n >\r\n </ng-template>\r\n </option>\r\n </optgroup>\r\n </ng-container>\r\n </select>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #defaultItemLabelTemplate let-label=\"label\">\r\n {{label}}\r\n</ng-template>\r\n" }]
62
+ }], ctorParameters: function () { return [{ type: i1.SacFormLayoutDirective, decorators: [{
50
63
  type: Host
51
64
  }, {
52
65
  type: Optional
53
66
  }] }, { type: i0.Injector }, { type: i0.Renderer2 }, { type: i0.ElementRef }]; } });
54
67
  class SacDropdownOptionDirective extends SacDropdownOptionCommon {
55
- constructor(_elementRef, _renderer, dropdownList) {
56
- super(_elementRef, _renderer, dropdownList);
68
+ // #region Constructors
69
+ /**
70
+ * Konstruktor
71
+ * @param elementRef Referenz auf HTML DOM Element
72
+ * @param renderer Angular Rendering Engine
73
+ * @param dropdownList Referenz auf DropDown Komponente
74
+ */
75
+ constructor(elementRef, renderer, dropdownList) {
76
+ super(elementRef, renderer, dropdownList);
57
77
  }
58
78
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownOptionDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: SacDropdownComponent, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
59
79
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SacDropdownOptionDirective, isStandalone: true, selector: "option,[sacOption]", usesInheritance: true, ngImport: i0 }); }
@@ -61,13 +81,10 @@ class SacDropdownOptionDirective extends SacDropdownOptionCommon {
61
81
  export { SacDropdownOptionDirective };
62
82
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SacDropdownOptionDirective, decorators: [{
63
83
  type: Directive,
64
- args: [{
65
- selector: 'option,[sacOption]',
66
- standalone: true,
67
- }]
84
+ args: [{ selector: 'option,[sacOption]', standalone: true }]
68
85
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: SacDropdownComponent, decorators: [{
69
86
  type: Optional
70
87
  }, {
71
88
  type: Host
72
89
  }] }]; } });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvbGlzdC9kcm9wZG93bi50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy9saXN0L2Ryb3Bkb3duLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsS0FBSyxFQUNMLElBQUksRUFDSixnQkFBZ0IsR0FDakIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFFVCxJQUFJLEVBRUosUUFBUSxFQUVSLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9FLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsdUJBQXVCLEdBQ3hCLE1BQU0sbUNBQW1DLENBQUM7Ozs7QUFHM0MsTUEyQmEsb0JBQXFCLFNBQVEsaUJBQWlCO0lBQ3pELFlBQ3NCLE1BQXdCLEVBQzVDLFFBQWtCLEVBQ2xCLFNBQW9CLEVBQ3BCLFdBQXVCO1FBRXZCLEtBQUssQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNsRCxDQUFDOytHQVJVLG9CQUFvQjttR0FBcEIsb0JBQW9CLDJEQXZCcEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixLQUFLLEVBQUUsSUFBSTtnQkFDWCxXQUFXLEVBQUUsb0JBQW9CO2FBQ2xDO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLEtBQUssRUFBRSxJQUFJO2dCQUNYLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7YUFDcEQ7U0FDRixpREN2Q0gsMGxFQXlDQSwrRURDSSxPQUFPLDJIQUNQLElBQUksbUlBQ0osV0FBVyxpV0FzQkYsMEJBQTBCLHNHQXBCbkMsS0FBSywwSkFDTCxnQkFBZ0Isc0xBQ2hCLFNBQVM7O1NBR0Esb0JBQW9COzRGQUFwQixvQkFBb0I7a0JBM0JoQyxTQUFTOytCQUNFLGNBQWMsYUFHYjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixLQUFLLEVBQUUsSUFBSTs0QkFDWCxXQUFXLHNCQUFzQjt5QkFDbEM7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHFCQUFxQixDQUFDO3lCQUNwRDtxQkFDRixjQUNXLElBQUksV0FDUDt3QkFDUCxPQUFPO3dCQUNQLElBQUk7d0JBQ0osV0FBVzt3QkFDWCxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsMEJBQTBCLENBQUM7d0JBQzVDLEtBQUs7d0JBQ0wsZ0JBQWdCO3dCQUNoQixTQUFTO3FCQUNWOzswQkFJRSxJQUFJOzswQkFBSSxRQUFROztBQVNyQixNQUlhLDBCQUEyQixTQUFRLHVCQUF1QjtJQUNyRSxZQUNFLFdBQXVCLEVBQ3ZCLFNBQW9CLEVBQ0EsWUFBa0M7UUFFdEQsS0FBSyxDQUFDLFdBQVcsRUFBRSxTQUFTLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDOUMsQ0FBQzsrR0FQVSwwQkFBMEI7bUdBQTFCLDBCQUEwQjs7U0FBMUIsMEJBQTBCOzRGQUExQiwwQkFBMEI7a0JBSnRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzswQkFLSSxRQUFROzswQkFBSSxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBc3luY1BpcGUsXHJcbiAgTmdDbGFzcyxcclxuICBOZ0ZvcixcclxuICBOZ0lmLFxyXG4gIE5nVGVtcGxhdGVPdXRsZXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRGlyZWN0aXZlLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgSG9zdCxcclxuICBJbmplY3RvcixcclxuICBPcHRpb25hbCxcclxuICBSZW5kZXJlcjIsXHJcbiAgZm9yd2FyZFJlZixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQge1xyXG4gIFNhY0Ryb3Bkb3duQ29tbW9uLFxyXG4gIFNhY0Ryb3Bkb3duT3B0aW9uQ29tbW9uLFxyXG59IGZyb20gJ0BzaW1wbGVhbmd1bGFyY29udHJvbHMvc2FjLWNvbW1vbic7XHJcbmltcG9ydCB7IFNhY0Zvcm1EaXJlY3RpdmUgfSBmcm9tICcuLi9mb3JtL2Zvcm0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYWMtZHJvcGRvd24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kcm9wZG93bi5odG1sJyxcclxuICAvLyBWYWx1ZSBBY2Nlc3MgUHJvdmlkZXIgcmVnaXN0cmllcmVuLCBkYW1pdCBXZXJ0IHZpYSBNb2RlbCBnZXNjaHJpZWJlbiB1bmQgZ2VsZXNlbiB3ZXJkZW4ga2FublxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBTYWNEcm9wZG93bkNvbXBvbmVudCxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTYWNEcm9wZG93bkNvbXBvbmVudCksXHJcbiAgICB9LFxyXG4gIF0sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBOZ0NsYXNzLFxyXG4gICAgTmdJZixcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgZm9yd2FyZFJlZigoKSA9PiBTYWNEcm9wZG93bk9wdGlvbkRpcmVjdGl2ZSksXHJcbiAgICBOZ0ZvcixcclxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXHJcbiAgICBBc3luY1BpcGUsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNhY0Ryb3Bkb3duQ29tcG9uZW50IGV4dGVuZHMgU2FjRHJvcGRvd25Db21tb24ge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEhvc3QoKSBAT3B0aW9uYWwoKSBwYXJlbnQ6IFNhY0Zvcm1EaXJlY3RpdmUsXHJcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBfcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmXHJcbiAgKSB7XHJcbiAgICBzdXBlcihwYXJlbnQsIGluamVjdG9yLCBfcmVuZGVyZXIsIF9lbGVtZW50UmVmKTtcclxuICB9XHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnb3B0aW9uLFtzYWNPcHRpb25dJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2FjRHJvcGRvd25PcHRpb25EaXJlY3RpdmUgZXh0ZW5kcyBTYWNEcm9wZG93bk9wdGlvbkNvbW1vbiB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgQE9wdGlvbmFsKCkgQEhvc3QoKSBkcm9wZG93bkxpc3Q6IFNhY0Ryb3Bkb3duQ29tcG9uZW50XHJcbiAgKSB7XHJcbiAgICBzdXBlcihfZWxlbWVudFJlZiwgX3JlbmRlcmVyLCBkcm9wZG93bkxpc3QpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiIFtuZ0NsYXNzXT1cInsnaGFzLWVycm9yJzogaW52YWxpZCAmJiAoZGlydHkgfHwgdG91Y2hlZCl9XCI+XHJcbiAgPGxhYmVsICpuZ0lmPVwiZGlzYWJsZWxhYmVsID09PSBmYWxzZSAmJiAhaXNhZGFwdGl2ZWxhYmVsXCIgaWQ9XCJ7e25hbWV9fWxhYmVsXCIgZm9yPVwie3tuYW1lfX1cIiBjbGFzcz1cImNvbnRyb2wtbGFiZWxcIiBbbmdDbGFzc109XCJbbGFiZWxzaXplICE9PSAxMiA/ICAnY29sLW1kLScgKyBsYWJlbHNpemUgOiAnc3Itb25seSddXCIgW2NsYXNzLnJlcXVpcmVkXT1cImlzcmVxdWlyZWRcIj57e2xhYmVsfX08L2xhYmVsPlxyXG4gIDxkaXYgW25nQ2xhc3NdPVwiW2Rpc2FibGVsYWJlbCA9PT0gZmFsc2UgPyAnY29sLW1kLScgKyBfaW5wdXRzaXplIDogJ2NvbC1tZC0xMiddXCI+XHJcbiAgICA8c2VsZWN0ICNkcm9wZG93bml0ZW0gaWQ9XCJ7e25hbWV9fVwiIG5hbWU9XCJ7e25hbWV9fVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcclxuICAgICAgICAgICAgKGJsdXIpPVwib25Ub3VjaCgpXCIgKGNoYW5nZSk9XCJzZXRWYWx1ZShkcm9wZG93bml0ZW0udmFsdWUpXCIgW2Rpc2FibGVkXT1cImlzZGlzYWJsZWRcIj5cclxuXHJcbiAgICAgIDxvcHRpb24gKm5nSWY9XCJlbXB0eWxhYmVsICE9PSAnJ1wiIFtuZ1ZhbHVlXT1cImVtcHR5dmFsdWVcIj57e2VtcHR5bGFiZWx9fTwvb3B0aW9uPlxyXG5cclxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImdyb3VwaXRlbXMgPT09ICcnXCI+XHJcbiAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBvcHRpb25zXCIgW25nVmFsdWVdPVwib3B0aW9udmFsdWUgPyBpdGVtW29wdGlvbnZhbHVlXSA6IGl0ZW1cIlxyXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm9wdGlvbmVuYWJsZWQgIT09ICcnICYmIGl0ZW1bb3B0aW9uZW5hYmxlZF0gPT09IGZhbHNlXCI+XHJcblxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICpuZ1RlbXBsYXRlT3V0bGV0PVwib3B0aW9ubGFiZWx0ZW1wbGF0ZSB8fCBkZWZhdWx0SXRlbUxhYmVsVGVtcGxhdGU7Y29udGV4dDp7IGxhYmVsOiBpdGVtW29wdGlvbmxhYmVsXSwgaXRlbTogaXRlbSB9XCI+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICA8L29wdGlvbj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZ3JvdXBpdGVtcyAhPT0gJydcIj5cclxuICAgICAgICA8b3B0Z3JvdXAgKm5nRm9yPVwibGV0IGdyb3VwIG9mIG9wdGlvbnNcIiBbYXR0ci5sYWJlbF09XCJncm91cFtncm91cGxhYmVsXVwiPlxyXG4gICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cFtncm91cGl0ZW1zXVwiIFtuZ1ZhbHVlXT1cIm9wdGlvbnZhbHVlID8gaXRlbVtvcHRpb252YWx1ZV0gOiBpdGVtXCJcclxuICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm9wdGlvbmVuYWJsZWQgIT09ICcnICYmIGl0ZW1bb3B0aW9uZW5hYmxlZF0gPT09IGZhbHNlXCI+XHJcblxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgKm5nVGVtcGxhdGVPdXRsZXQ9XCJvcHRpb25sYWJlbHRlbXBsYXRlIHx8IGRlZmF1bHRJdGVtTGFiZWxUZW1wbGF0ZTtjb250ZXh0OnsgbGFiZWw6IGl0ZW1bb3B0aW9ubGFiZWxdLCBpdGVtOiBpdGVtIH1cIj5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICA8L29wdGdyb3VwPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcblxyXG4gICAgPC9zZWxlY3Q+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaGVscC1ibG9jayBoZWxwLWJsb2NrLWVycm9yXCIgKm5nSWY9XCJpc2lubGluZWVycm9yZW5hYmxlZCAmJiBpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKVwiPnt7IEdldEVycm9yTWVzc2FnZSgpIHwgYXN5bmMgfX08L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48bmctdGVtcGxhdGUgI2RlZmF1bHRJdGVtTGFiZWxUZW1wbGF0ZSBsZXQtbGFiZWw9XCJsYWJlbFwiPlxyXG4gIHt7bGFiZWx9fVxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvY29udHJvbHMvbGlzdC9kcm9wZG93bi50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy9jb250cm9scy9saXN0L2Ryb3Bkb3duLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsS0FBSyxFQUNMLElBQUksRUFDSixnQkFBZ0IsR0FDakIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFFVCxJQUFJLEVBRUosUUFBUSxFQUVSLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9FLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsdUJBQXVCLEdBQ3hCLE1BQU0sbUNBQW1DLENBQUM7QUFFM0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7QUFFeEUsa0JBQWtCO0FBRWxCLE1BNkJhLG9CQUFxQixTQUFRLGlCQUFpQjtJQUN6RCx1QkFBdUI7SUFFdkI7Ozs7OztPQU1HO0lBQ0gsWUFDc0IsVUFBa0MsRUFDdEQsUUFBa0IsRUFDbEIsUUFBbUIsRUFDbkIsVUFBc0I7UUFFdEIsS0FBSyxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7K0dBakJVLG9CQUFvQjttR0FBcEIsb0JBQW9CLDJEQXpCcEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixLQUFLLEVBQUUsSUFBSTtnQkFDWCxXQUFXLEVBQUUsb0JBQW9CO2FBQ2xDO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLEtBQUssRUFBRSxJQUFJO2dCQUNYLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7YUFDcEQ7U0FDRixpREMzQ0gseS9FQTJFQSwrRUQ3QkksT0FBTywySEFDUCxJQUFJLG1JQUNKLFdBQVcsaVdBZ0NGLDBCQUEwQixzR0E5Qm5DLEtBQUssMEpBQ0wsZ0JBQWdCLHNMQUNoQixTQUFTLGdGQUNULHNCQUFzQiwwRkFDdEIsd0JBQXdCOztTQUdmLG9CQUFvQjs0RkFBcEIsb0JBQW9CO2tCQTdCaEMsU0FBUzsrQkFDRSxjQUFjLGFBR2I7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsS0FBSyxFQUFFLElBQUk7NEJBQ1gsV0FBVyxzQkFBc0I7eUJBQ2xDO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxhQUFhOzRCQUN0QixLQUFLLEVBQUUsSUFBSTs0QkFDWCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxxQkFBcUIsQ0FBQzt5QkFDcEQ7cUJBQ0YsY0FDVyxJQUFJLFdBQ1A7d0JBQ1AsT0FBTzt3QkFDUCxJQUFJO3dCQUNKLFdBQVc7d0JBQ1gsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDBCQUEwQixDQUFDO3dCQUM1QyxLQUFLO3dCQUNMLGdCQUFnQjt3QkFDaEIsU0FBUzt3QkFDVCxzQkFBc0I7d0JBQ3RCLHdCQUF3QjtxQkFDekI7OzBCQWFFLElBQUk7OzBCQUFJLFFBQVE7O0FBV3JCLE1BQ2EsMEJBQTJCLFNBQVEsdUJBQXVCO0lBQ3JFLHVCQUF1QjtJQUV2Qjs7Ozs7T0FLRztJQUNILFlBQ0UsVUFBc0IsRUFDdEIsUUFBbUIsRUFDQyxZQUFrQztRQUV0RCxLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUM1QyxDQUFDOytHQWZVLDBCQUEwQjttR0FBMUIsMEJBQTBCOztTQUExQiwwQkFBMEI7NEZBQTFCLDBCQUEwQjtrQkFEdEMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxvQkFBb0IsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFOzswQkFhMUQsUUFBUTs7MEJBQUksSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQXN5bmNQaXBlLFxyXG4gIE5nQ2xhc3MsXHJcbiAgTmdGb3IsXHJcbiAgTmdJZixcclxuICBOZ1RlbXBsYXRlT3V0bGV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIERpcmVjdGl2ZSxcclxuICBFbGVtZW50UmVmLFxyXG4gIEhvc3QsXHJcbiAgSW5qZWN0b3IsXHJcbiAgT3B0aW9uYWwsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIGZvcndhcmRSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtcclxuICBTYWNEcm9wZG93bkNvbW1vbixcclxuICBTYWNEcm9wZG93bk9wdGlvbkNvbW1vbixcclxufSBmcm9tICdAc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NhYy1jb21tb24nO1xyXG5pbXBvcnQgeyBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vbGF5b3V0L2Zvcm1sYXlvdXQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU2FjVG9Db250cm9sV2lkdGhDc3NQaXBlIH0gZnJvbSAnLi4vbGF5b3V0L3RvY29udHJvbHdpZHRoY3NzLnBpcGUnO1xyXG5pbXBvcnQgeyBTYWNUb0xhYmVsV2lkdGhDc3NQaXBlIH0gZnJvbSAnLi4vbGF5b3V0L3RvbGFiZWx3aWR0aGNzcy5waXBlJztcclxuXHJcbi8vICNyZWdpb24gQ2xhc3Nlc1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYWMtZHJvcGRvd24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kcm9wZG93bi5odG1sJyxcclxuICAvLyBWYWx1ZSBBY2Nlc3MgUHJvdmlkZXIgcmVnaXN0cmllcmVuLCBkYW1pdCBXZXJ0IHZpYSBNb2RlbCBnZXNjaHJpZWJlbiB1bmQgZ2VsZXNlbiB3ZXJkZW4ga2FublxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBTYWNEcm9wZG93bkNvbXBvbmVudCxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTYWNEcm9wZG93bkNvbXBvbmVudCksXHJcbiAgICB9LFxyXG4gIF0sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBOZ0NsYXNzLFxyXG4gICAgTmdJZixcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgZm9yd2FyZFJlZigoKSA9PiBTYWNEcm9wZG93bk9wdGlvbkRpcmVjdGl2ZSksXHJcbiAgICBOZ0ZvcixcclxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXHJcbiAgICBBc3luY1BpcGUsXHJcbiAgICBTYWNUb0xhYmVsV2lkdGhDc3NQaXBlLFxyXG4gICAgU2FjVG9Db250cm9sV2lkdGhDc3NQaXBlLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTYWNEcm9wZG93bkNvbXBvbmVudCBleHRlbmRzIFNhY0Ryb3Bkb3duQ29tbW9uIHtcclxuICAvLyAjcmVnaW9uIENvbnN0cnVjdG9yc1xyXG5cclxuICAvKipcclxuICAgKiBDb25zdHJ1Y3RvclxyXG4gICAqIEBwYXJhbSBmb3JtTGF5b3V0IFNhY0Zvcm1MYXlvdXQgdG8gZGVmaW5lIHNjb3BlZCBsYXlvdXQgc2V0dGluZ3NcclxuICAgKiBAcGFyYW0gaW5qZWN0b3IgSW5qZWN0b3IgZm9yIGluamVjdGluZyBzZXJ2aWNlc1xyXG4gICAqIEBwYXJhbSByZW5kZXJlciBBbmd1bGFyIHJlbmRlcmluZyBlbmdpbmVcclxuICAgKiBAcGFyYW0gZWxlbWVudFJlZiBSZWZlcmVuY2UgdG8gaHRtbCBkb20gZWxlbWVudFxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEhvc3QoKSBAT3B0aW9uYWwoKSBmb3JtTGF5b3V0OiBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlLFxyXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWZcclxuICApIHtcclxuICAgIHN1cGVyKGZvcm1MYXlvdXQsIGluamVjdG9yLCByZW5kZXJlciwgZWxlbWVudFJlZik7XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uIENvbnN0cnVjdG9yc1xyXG59XHJcblxyXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdvcHRpb24sW3NhY09wdGlvbl0nLCBzdGFuZGFsb25lOiB0cnVlIH0pXHJcbmV4cG9ydCBjbGFzcyBTYWNEcm9wZG93bk9wdGlvbkRpcmVjdGl2ZSBleHRlbmRzIFNhY0Ryb3Bkb3duT3B0aW9uQ29tbW9uIHtcclxuICAvLyAjcmVnaW9uIENvbnN0cnVjdG9yc1xyXG5cclxuICAvKipcclxuICAgKiBLb25zdHJ1a3RvclxyXG4gICAqIEBwYXJhbSBlbGVtZW50UmVmIFJlZmVyZW56IGF1ZiBIVE1MIERPTSBFbGVtZW50XHJcbiAgICogQHBhcmFtIHJlbmRlcmVyIEFuZ3VsYXIgUmVuZGVyaW5nIEVuZ2luZVxyXG4gICAqIEBwYXJhbSBkcm9wZG93bkxpc3QgUmVmZXJlbnogYXVmIERyb3BEb3duIEtvbXBvbmVudGVcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgQE9wdGlvbmFsKCkgQEhvc3QoKSBkcm9wZG93bkxpc3Q6IFNhY0Ryb3Bkb3duQ29tcG9uZW50XHJcbiAgKSB7XHJcbiAgICBzdXBlcihlbGVtZW50UmVmLCByZW5kZXJlciwgZHJvcGRvd25MaXN0KTtcclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gQ29uc3RydWN0b3JzXHJcbn1cclxuXHJcbi8vICNlbmRyZWdpb24gQ2xhc3Nlc1xyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJyb3cgZm9ybS1ncm91cFwiXHJcbiAgW25nQ2xhc3NdPVwieydoYXMtZXJyb3InOiBpbnZhbGlkICYmIChkaXJ0eSB8fCB0b3VjaGVkKX1cIlxyXG4+XHJcbiAgPGxhYmVsXHJcbiAgICAqbmdJZj1cImRpc2FibGVsYWJlbCA9PT0gZmFsc2UgJiYgIWlzQWRhcHRpdmVMYWJlbFwiXHJcbiAgICBpZD1cInt7bmFtZX19bGFiZWxcIlxyXG4gICAgZm9yPVwie3tuYW1lfX1cIlxyXG4gICAgY2xhc3M9XCJjb2wteHMtMTIgY29udHJvbC1sYWJlbFwiXHJcbiAgICBbbmdDbGFzc109XCJbZGlzYWJsZWxhYmVsID09PSBmYWxzZSA/ICh0aGlzLmxhYmVsU2l6ZXMgfCB0b0xhYmVsV2lkdGhDc3MpIDogJ3NyLW9ubHknIF1cIlxyXG4gICAgW2NsYXNzLnJlcXVpcmVkXT1cImlzcmVxdWlyZWRcIlxyXG4gICAgPnt7bGFiZWx9fTwvbGFiZWxcclxuICA+XHJcbiAgPGRpdlxyXG4gICAgY2xhc3M9XCJjb2wteHMtMTJcIlxyXG4gICAgW25nQ2xhc3NdPVwiW2Rpc2FibGVsYWJlbCA9PT0gZmFsc2UgPyAgKHRoaXMubGFiZWxTaXplcyB8IHRvQ29udHJvbFdpZHRoQ3NzKSA6ICcnXVwiXHJcbiAgPlxyXG4gICAgPHNlbGVjdFxyXG4gICAgICAjZHJvcGRvd25pdGVtXHJcbiAgICAgIGlkPVwie3tuYW1lfX1cIlxyXG4gICAgICBuYW1lPVwie3tuYW1lfX1cIlxyXG4gICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgIChibHVyKT1cIm9uVG91Y2goKVwiXHJcbiAgICAgIChjaGFuZ2UpPVwic2V0VmFsdWUoZHJvcGRvd25pdGVtLnZhbHVlKVwiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJpc2Rpc2FibGVkXCJcclxuICAgID5cclxuICAgICAgPG9wdGlvbiAqbmdJZj1cImVtcHR5bGFiZWwgIT09ICcnXCIgW25nVmFsdWVdPVwiZW1wdHl2YWx1ZVwiPlxyXG4gICAgICAgIHt7ZW1wdHlsYWJlbH19XHJcbiAgICAgIDwvb3B0aW9uPlxyXG5cclxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImdyb3VwaXRlbXMgPT09ICcnXCI+XHJcbiAgICAgICAgPG9wdGlvblxyXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygb3B0aW9uc1wiXHJcbiAgICAgICAgICBbbmdWYWx1ZV09XCJvcHRpb252YWx1ZSA/IGl0ZW1bb3B0aW9udmFsdWVdIDogaXRlbVwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwib3B0aW9uZW5hYmxlZCAhPT0gJycgJiYgaXRlbVtvcHRpb25lbmFibGVkXSA9PT0gZmFsc2VcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIm9wdGlvbmxhYmVsdGVtcGxhdGUgfHwgZGVmYXVsdEl0ZW1MYWJlbFRlbXBsYXRlO2NvbnRleHQ6eyBsYWJlbDogaXRlbVtvcHRpb25sYWJlbF0sIGl0ZW06IGl0ZW0gfVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvb3B0aW9uPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJncm91cGl0ZW1zICE9PSAnJ1wiPlxyXG4gICAgICAgIDxvcHRncm91cFxyXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGdyb3VwIG9mIG9wdGlvbnNcIlxyXG4gICAgICAgICAgW2F0dHIubGFiZWxdPVwiZ3JvdXBbZ3JvdXBsYWJlbF1cIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxvcHRpb25cclxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZ3JvdXBbZ3JvdXBpdGVtc11cIlxyXG4gICAgICAgICAgICBbbmdWYWx1ZV09XCJvcHRpb252YWx1ZSA/IGl0ZW1bb3B0aW9udmFsdWVdIDogaXRlbVwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJvcHRpb25lbmFibGVkICE9PSAnJyAmJiBpdGVtW29wdGlvbmVuYWJsZWRdID09PSBmYWxzZVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwib3B0aW9ubGFiZWx0ZW1wbGF0ZSB8fCBkZWZhdWx0SXRlbUxhYmVsVGVtcGxhdGU7Y29udGV4dDp7IGxhYmVsOiBpdGVtW29wdGlvbmxhYmVsXSwgaXRlbTogaXRlbSB9XCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgPC9vcHRncm91cD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L3NlbGVjdD5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJoZWxwLWJsb2NrIGhlbHAtYmxvY2stZXJyb3JcIlxyXG4gICAgICAqbmdJZj1cImlzaW5saW5lZXJyb3JlbmFibGVkICYmIGludmFsaWQgJiYgKGRpcnR5IHx8IHRvdWNoZWQpXCJcclxuICAgID5cclxuICAgICAge3sgR2V0RXJyb3JNZXNzYWdlKCkgfCBhc3luYyB9fVxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNkZWZhdWx0SXRlbUxhYmVsVGVtcGxhdGUgbGV0LWxhYmVsPVwibGFiZWxcIj5cclxuICB7e2xhYmVsfX1cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19