@evotor-dev/ui-kit 8.3.0 → 8.5.0

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.
@@ -1,6 +1,7 @@
1
1
  import { Component, forwardRef, Input } from '@angular/core';
2
2
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
3
  import { EvoBaseControl } from '../../common/evo-base-control';
4
+ import { isEqual } from 'lodash-es';
4
5
  import * as i0 from "@angular/core";
5
6
  export class EvoRadioComponent extends EvoBaseControl {
6
7
  constructor() {
@@ -9,7 +10,7 @@ export class EvoRadioComponent extends EvoBaseControl {
9
10
  this.onTouch = () => { };
10
11
  }
11
12
  get checked() {
12
- return this.control ? this.control.value === this.value : false;
13
+ return this.control ? isEqual(this.control.value, this.value) || this.forceChecked : this.forceChecked;
13
14
  }
14
15
  handleOnChange() {
15
16
  this.onChange(this.value);
@@ -28,7 +29,7 @@ export class EvoRadioComponent extends EvoBaseControl {
28
29
  // eslint-disable-next-line
29
30
  writeValue(obj) { }
30
31
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoRadioComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: EvoRadioComponent, isStandalone: true, selector: "evo-radio", inputs: { value: "value", name: "name" }, providers: [
32
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: EvoRadioComponent, isStandalone: true, selector: "evo-radio", inputs: { forceChecked: "forceChecked", value: "value", name: "name" }, providers: [
32
33
  {
33
34
  provide: NG_VALUE_ACCESSOR,
34
35
  useExisting: forwardRef(() => EvoRadioComponent),
@@ -45,9 +46,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
45
46
  multi: true,
46
47
  },
47
48
  ], standalone: true, template: "<label class=\"evo-radio\">\n <input\n type=\"radio\"\n class=\"evo-radio__input\"\n [name]=\"name\"\n [value]=\"value\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n (change)=\"handleOnChange()\"\n />\n <span class=\"evo-radio__element\"></span>\n <span class=\"evo-radio__content\">\n <ng-content />\n </span>\n</label>\n", styles: [":host{display:inline-block}.evo-radio{display:flex;align-items:center;cursor:pointer}.evo-radio__element{position:relative;display:block;flex:0 0 20px;width:20px;height:20px;margin:2px 8px 2px 2px;padding:4px;background-color:#fff;border:2px solid #C6C6C6;border-radius:50%;transition:background .3s,border-color .3s}.evo-radio__element:before{content:\"\";position:absolute;top:50%;left:50%;display:block;box-sizing:border-box;width:10px;height:10px;margin-top:-5px;margin-left:-5px;background-color:#0986e2;border-radius:50%;transform:scale(0);transform-origin:center;opacity:0;transition:background .3s,transform .3s}.evo-radio__input{display:none}.evo-radio__input[disabled]~.evo-radio__element{background-color:#f4f6f8}.evo-radio__input:checked[disabled]~.evo-radio__element{background-color:#fff}.evo-radio__input:checked[disabled]~.evo-radio__element:before{background-color:#c6c6c6}.evo-radio__input:checked~.evo-radio__element:before{transform:scale(1);opacity:1}.evo-radio__content{color:#212121;font-size:14px;line-height:22px;-webkit-user-select:none;user-select:none}\n"] }]
48
- }], propDecorators: { value: [{
49
+ }], propDecorators: { forceChecked: [{
50
+ type: Input
51
+ }], value: [{
49
52
  type: Input
50
53
  }], name: [{
51
54
  type: Input
52
55
  }] } });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXJhZGlvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by1yYWRpby9ldm8tcmFkaW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXJhZGlvL2V2by1yYWRpby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUF1QixpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7QUFlN0QsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGNBQWM7SUFickQ7O1FBb0JJLGFBQVEsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3JCLFlBQU8sR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7S0EwQnRCO0lBeEJHLElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxjQUFjO1FBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELDJCQUEyQjtJQUMzQixnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCwyQkFBMkI7SUFDM0IsaUJBQWlCLENBQUMsRUFBTztRQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsVUFBbUI7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7SUFDL0IsQ0FBQztJQUVELDJCQUEyQjtJQUMzQixVQUFVLENBQUMsR0FBUSxJQUFTLENBQUM7K0dBakNwQixpQkFBaUI7bUdBQWpCLGlCQUFpQixrR0FUZjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUM7Z0JBQ2hELEtBQUssRUFBRSxJQUFJO2FBQ2Q7U0FDSixpRENkTCxrWkFlQTs7NEZERWEsaUJBQWlCO2tCQWI3QixTQUFTOytCQUNJLFdBQVcsYUFHVjt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxrQkFBa0IsQ0FBQzs0QkFDaEQsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0osY0FDVyxJQUFJOzhCQUlQLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7RXZvQmFzZUNvbnRyb2x9IGZyb20gJy4uLy4uL2NvbW1vbi9ldm8tYmFzZS1jb250cm9sJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldm8tcmFkaW8nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ldm8tcmFkaW8uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2V2by1yYWRpby5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEV2b1JhZGlvQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgRXZvUmFkaW9Db21wb25lbnQgZXh0ZW5kcyBFdm9CYXNlQ29udHJvbCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBASW5wdXQoKSB2YWx1ZTogYW55O1xuICAgIEBJbnB1dCgpIG5hbWU6IHN0cmluZztcblxuICAgIGRpc2FibGVkOiBib29sZWFuO1xuXG4gICAgb25DaGFuZ2UgPSAoXykgPT4ge307XG4gICAgb25Ub3VjaCA9ICgpID0+IHt9O1xuXG4gICAgZ2V0IGNoZWNrZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2wgPyB0aGlzLmNvbnRyb2wudmFsdWUgPT09IHRoaXMudmFsdWUgOiBmYWxzZTtcbiAgICB9XG5cbiAgICBoYW5kbGVPbkNoYW5nZSgpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHt9XG59XG4iLCI8bGFiZWwgY2xhc3M9XCJldm8tcmFkaW9cIj5cbiAgICA8aW5wdXRcbiAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgY2xhc3M9XCJldm8tcmFkaW9fX2lucHV0XCJcbiAgICAgICAgW25hbWVdPVwibmFtZVwiXG4gICAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgIFtjaGVja2VkXT1cImNoZWNrZWRcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZU9uQ2hhbmdlKClcIlxuICAgIC8+XG4gICAgPHNwYW4gY2xhc3M9XCJldm8tcmFkaW9fX2VsZW1lbnRcIj48L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJldm8tcmFkaW9fX2NvbnRlbnRcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8L3NwYW4+XG48L2xhYmVsPlxuIl19
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXJhZGlvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by1yYWRpby9ldm8tcmFkaW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXJhZGlvL2V2by1yYWRpby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUF1QixpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sV0FBVyxDQUFDOztBQWVsQyxNQUFNLE9BQU8saUJBQWtCLFNBQVEsY0FBYztJQWJyRDs7UUFxQkksYUFBUSxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFDckIsWUFBTyxHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztLQTBCdEI7SUF4QkcsSUFBSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0csQ0FBQztJQUVELGNBQWM7UUFDVixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsMkJBQTJCO0lBQzNCLGdCQUFnQixDQUFDLEVBQU87UUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELDJCQUEyQjtJQUMzQixpQkFBaUIsQ0FBQyxFQUFPO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNoQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUMvQixDQUFDO0lBRUQsMkJBQTJCO0lBQzNCLFVBQVUsQ0FBQyxHQUFRLElBQVMsQ0FBQzsrR0FsQ3BCLGlCQUFpQjttR0FBakIsaUJBQWlCLGdJQVRmO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztnQkFDaEQsS0FBSyxFQUFFLElBQUk7YUFDZDtTQUNKLGlEQ2ZMLGtaQWVBOzs0RkRHYSxpQkFBaUI7a0JBYjdCLFNBQVM7K0JBQ0ksV0FBVyxhQUdWO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGtCQUFrQixDQUFDOzRCQUNoRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSixjQUNXLElBQUk7OEJBR1AsWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0V2b0Jhc2VDb250cm9sfSBmcm9tICcuLi8uLi9jb21tb24vZXZvLWJhc2UtY29udHJvbCc7XG5pbXBvcnQge2lzRXF1YWx9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXZvLXJhZGlvJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXZvLXJhZGlvLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ldm8tcmFkaW8uY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBFdm9SYWRpb0NvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEV2b1JhZGlvQ29tcG9uZW50IGV4dGVuZHMgRXZvQmFzZUNvbnRyb2wgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgQElucHV0KCkgZm9yY2VDaGVja2VkOiBib29sZWFuO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIEBJbnB1dCgpIHZhbHVlOiBhbnk7XG4gICAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xuXG4gICAgZGlzYWJsZWQ6IGJvb2xlYW47XG5cbiAgICBvbkNoYW5nZSA9IChfKSA9PiB7fTtcbiAgICBvblRvdWNoID0gKCkgPT4ge307XG5cbiAgICBnZXQgY2hlY2tlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbCA/IGlzRXF1YWwodGhpcy5jb250cm9sLnZhbHVlLCB0aGlzLnZhbHVlKSB8fCB0aGlzLmZvcmNlQ2hlY2tlZCA6IHRoaXMuZm9yY2VDaGVja2VkO1xuICAgIH1cblxuICAgIGhhbmRsZU9uQ2hhbmdlKCkge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2ggPSBmbjtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWQge31cbn1cbiIsIjxsYWJlbCBjbGFzcz1cImV2by1yYWRpb1wiPlxuICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICBjbGFzcz1cImV2by1yYWRpb19faW5wdXRcIlxuICAgICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgW2NoZWNrZWRdPVwiY2hlY2tlZFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIChjaGFuZ2UpPVwiaGFuZGxlT25DaGFuZ2UoKVwiXG4gICAgLz5cbiAgICA8c3BhbiBjbGFzcz1cImV2by1yYWRpb19fZWxlbWVudFwiPjwvc3Bhbj5cbiAgICA8c3BhbiBjbGFzcz1cImV2by1yYWRpb19fY29udGVudFwiPlxuICAgICAgICA8bmctY29udGVudCAvPlxuICAgIDwvc3Bhbj5cbjwvbGFiZWw+XG4iXX0=
@@ -41,17 +41,20 @@ export class EvoTableComponent {
41
41
  getClasses(row, item) {
42
42
  return typeof this.rowClasses === 'function' ? this.rowClasses(row, item) : this.rowClasses;
43
43
  }
44
+ getTitle(row, item) {
45
+ return typeof this.rowTitle === 'function' ? this.rowTitle(row, item) : this.rowTitle;
46
+ }
44
47
  filterColumns() {
45
48
  if (this.visibleColumns && this.columns) {
46
49
  this.filteredColumns = this.columns.filter((col) => this.visibleColumns.includes(col.prop));
47
50
  }
48
51
  }
49
52
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
50
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.10", type: EvoTableComponent, isStandalone: true, selector: "evo-table", inputs: { data: "data", showHeader: "showHeader", stripe: "stripe", visibleColumns: "visibleColumns", rowClasses: "rowClasses" }, outputs: { rowClick: "rowClick" }, queries: [{ propertyName: "columns", predicate: EvoTableColumnComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"evo-table\" [ngClass]=\"{'evo-table_row-clickable': states.isRowClickable}\">\n @if (showHeader) {\n <div class=\"evo-table__row evo-table__row_head mobile-hide\">\n @for (column of filteredColumns; track column.label) {\n <div class=\"evo-table__cell evo-table__cell_head\" [ngClass]=\"column.className\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n </div>\n }\n\n @for (item of data; track item; let row = $index) {\n <div class=\"evo-table__row\" [ngClass]=\"getClasses(row, item)\" (click)=\"onRowClick(row, item, $event)\">\n @for (column of filteredColumns; track column.label; let col = $index) {\n <div class=\"evo-table__cell\" [ngClass]=\"column.className\">\n @if (column.label) {\n <div class=\"evo-table__label mobile-show\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n\n @if (column.content; as content) {\n <div class=\"evo-table__data\">\n <ng-container *ngTemplateOutlet=\"content; context: {row: row, col: col, item: item}\" />\n </div>\n } @else {\n {{ column.formatter(row, col, column.prop !== undefined ? item[column.prop] : item, item) }}\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".evo-table{color:#212121}@media (min-width: 768px){.evo-table{display:table;width:100%}}.evo-table__row{padding:8px}.evo-table__row:nth-child(2n){background-color:#f4f6f8}@media (min-width: 768px){.evo-table__row{display:table-row}.evo-table__row:hover{background-color:#fff8e6}.evo-table__row_head:hover{background:none}}.evo-table__cell{margin-bottom:20px}.evo-table__cell:last-child{margin-bottom:0}@media (min-width: 768px){.evo-table__cell{display:table-cell;height:48px;padding:0 8px;vertical-align:middle}}.evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap}@media (min-width: 768px){.evo-table__cell.text-right{text-align:right}}@media (min-width: 768px){.evo-table__cell.text-center{text-align:center}}.evo-table__sort{position:relative;display:inline-block;padding-right:20px;vertical-align:top;cursor:pointer}.evo-table__sort_up:after,.evo-table__sort_down:after{content:\"\";position:absolute;right:0;border:5px solid transparent}.evo-table__sort_up:after{top:4px;border-bottom-color:#212121}.evo-table__sort_down:after{top:8px;border-top-color:#212121}.evo-table__label{margin-bottom:4px;font-weight:600}.evo-table_row-clickable .evo-table__row{cursor:pointer}:host(.evo-table_mobile) .evo-table__row{padding:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__row{display:table-row}:host(.evo-table_mobile) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile) .evo-table__row_head:hover{background:none}}:host(.evo-table_mobile) .evo-table__cell{display:flex;margin-bottom:0;padding:13px 8px}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}}:host(.evo-table_mobile) .evo-table__label{width:50%;margin-bottom:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__label{width:auto;margin-bottom:4px}}:host(.evo-table_mobile-align_right) .evo-table__cell{justify-content:space-between}:host(.evo-table_mobile_short) .evo-table{display:table;width:100%}:host(.evo-table_mobile_short) .evo-table__row{display:table-row;padding:16px}:host(.evo-table_mobile_short) .evo-table__row:nth-child(2n){background-color:#f4f6f8}:host(.evo-table_mobile_short) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile_short) .evo-table__row_head:hover{background:none}:host(.evo-table_mobile_short) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}:host(.evo-table_mobile_short) .evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap;border-top:none}:host(.evo-table_with-title) .evo-table__cell{font-weight:400}:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:600}@media (min-width: 768px){:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:400}}:host(.evo-table_with-title) .evo-table__cell:first-child .evo-table__label{display:none}:host(.evo-table_with-title) .evo-table__label{font-weight:400}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
53
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.10", type: EvoTableComponent, isStandalone: true, selector: "evo-table", inputs: { data: "data", showHeader: "showHeader", stripe: "stripe", visibleColumns: "visibleColumns", rowClasses: "rowClasses", rowTitle: "rowTitle" }, outputs: { rowClick: "rowClick" }, queries: [{ propertyName: "columns", predicate: EvoTableColumnComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"evo-table\" [ngClass]=\"{'evo-table_row-clickable': states.isRowClickable}\">\n @if (showHeader) {\n <div class=\"evo-table__row evo-table__row_head mobile-hide\">\n @for (column of filteredColumns; track column.label) {\n <div class=\"evo-table__cell evo-table__cell_head\" [ngClass]=\"column.className\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n </div>\n }\n\n @for (item of data; track item; let row = $index) {\n <div\n class=\"evo-table__row\"\n [title]=\"getTitle(row, item) || ''\"\n [ngClass]=\"getClasses(row, item)\"\n (click)=\"onRowClick(row, item, $event)\"\n >\n @for (column of filteredColumns; track column.label; let col = $index) {\n <div class=\"evo-table__cell\" [ngClass]=\"column.className\">\n @if (column.label) {\n <div class=\"evo-table__label mobile-show\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n\n @if (column.content; as content) {\n <div class=\"evo-table__data\">\n <ng-container *ngTemplateOutlet=\"content; context: {row: row, col: col, item: item}\" />\n </div>\n } @else {\n {{ column.formatter(row, col, column.prop !== undefined ? item[column.prop] : item, item) }}\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".evo-table{color:#212121}@media (min-width: 768px){.evo-table{display:table;width:100%}}.evo-table__row{padding:8px}.evo-table__row:nth-child(2n){background-color:#f4f6f8}@media (min-width: 768px){.evo-table__row{display:table-row}.evo-table__row:hover{background-color:#fff8e6}.evo-table__row_head:hover{background:none}}.evo-table__cell{margin-bottom:20px}.evo-table__cell:last-child{margin-bottom:0}@media (min-width: 768px){.evo-table__cell{display:table-cell;height:48px;padding:0 8px;vertical-align:middle}}.evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap}@media (min-width: 768px){.evo-table__cell.text-right{text-align:right}}@media (min-width: 768px){.evo-table__cell.text-center{text-align:center}}.evo-table__sort{position:relative;display:inline-block;padding-right:20px;vertical-align:top;cursor:pointer}.evo-table__sort_up:after,.evo-table__sort_down:after{content:\"\";position:absolute;right:0;border:5px solid transparent}.evo-table__sort_up:after{top:4px;border-bottom-color:#212121}.evo-table__sort_down:after{top:8px;border-top-color:#212121}.evo-table__label{margin-bottom:4px;font-weight:600}.evo-table_row-clickable .evo-table__row{cursor:pointer}:host(.evo-table_mobile) .evo-table__row{padding:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__row{display:table-row}:host(.evo-table_mobile) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile) .evo-table__row_head:hover{background:none}}:host(.evo-table_mobile) .evo-table__cell{display:flex;margin-bottom:0;padding:13px 8px}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}}:host(.evo-table_mobile) .evo-table__label{width:50%;margin-bottom:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__label{width:auto;margin-bottom:4px}}:host(.evo-table_mobile-align_right) .evo-table__cell{justify-content:space-between}:host(.evo-table_mobile_short) .evo-table{display:table;width:100%}:host(.evo-table_mobile_short) .evo-table__row{display:table-row;padding:16px}:host(.evo-table_mobile_short) .evo-table__row:nth-child(2n){background-color:#f4f6f8}:host(.evo-table_mobile_short) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile_short) .evo-table__row_head:hover{background:none}:host(.evo-table_mobile_short) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}:host(.evo-table_mobile_short) .evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap;border-top:none}:host(.evo-table_with-title) .evo-table__cell{font-weight:400}:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:600}@media (min-width: 768px){:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:400}}:host(.evo-table_with-title) .evo-table__cell:first-child .evo-table__label{display:none}:host(.evo-table_with-title) .evo-table__label{font-weight:400}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
51
54
  }
52
55
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoTableComponent, decorators: [{
53
56
  type: Component,
54
- args: [{ selector: 'evo-table', standalone: true, imports: [NgClass, NgTemplateOutlet], template: "<div class=\"evo-table\" [ngClass]=\"{'evo-table_row-clickable': states.isRowClickable}\">\n @if (showHeader) {\n <div class=\"evo-table__row evo-table__row_head mobile-hide\">\n @for (column of filteredColumns; track column.label) {\n <div class=\"evo-table__cell evo-table__cell_head\" [ngClass]=\"column.className\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n </div>\n }\n\n @for (item of data; track item; let row = $index) {\n <div class=\"evo-table__row\" [ngClass]=\"getClasses(row, item)\" (click)=\"onRowClick(row, item, $event)\">\n @for (column of filteredColumns; track column.label; let col = $index) {\n <div class=\"evo-table__cell\" [ngClass]=\"column.className\">\n @if (column.label) {\n <div class=\"evo-table__label mobile-show\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n\n @if (column.content; as content) {\n <div class=\"evo-table__data\">\n <ng-container *ngTemplateOutlet=\"content; context: {row: row, col: col, item: item}\" />\n </div>\n } @else {\n {{ column.formatter(row, col, column.prop !== undefined ? item[column.prop] : item, item) }}\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".evo-table{color:#212121}@media (min-width: 768px){.evo-table{display:table;width:100%}}.evo-table__row{padding:8px}.evo-table__row:nth-child(2n){background-color:#f4f6f8}@media (min-width: 768px){.evo-table__row{display:table-row}.evo-table__row:hover{background-color:#fff8e6}.evo-table__row_head:hover{background:none}}.evo-table__cell{margin-bottom:20px}.evo-table__cell:last-child{margin-bottom:0}@media (min-width: 768px){.evo-table__cell{display:table-cell;height:48px;padding:0 8px;vertical-align:middle}}.evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap}@media (min-width: 768px){.evo-table__cell.text-right{text-align:right}}@media (min-width: 768px){.evo-table__cell.text-center{text-align:center}}.evo-table__sort{position:relative;display:inline-block;padding-right:20px;vertical-align:top;cursor:pointer}.evo-table__sort_up:after,.evo-table__sort_down:after{content:\"\";position:absolute;right:0;border:5px solid transparent}.evo-table__sort_up:after{top:4px;border-bottom-color:#212121}.evo-table__sort_down:after{top:8px;border-top-color:#212121}.evo-table__label{margin-bottom:4px;font-weight:600}.evo-table_row-clickable .evo-table__row{cursor:pointer}:host(.evo-table_mobile) .evo-table__row{padding:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__row{display:table-row}:host(.evo-table_mobile) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile) .evo-table__row_head:hover{background:none}}:host(.evo-table_mobile) .evo-table__cell{display:flex;margin-bottom:0;padding:13px 8px}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}}:host(.evo-table_mobile) .evo-table__label{width:50%;margin-bottom:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__label{width:auto;margin-bottom:4px}}:host(.evo-table_mobile-align_right) .evo-table__cell{justify-content:space-between}:host(.evo-table_mobile_short) .evo-table{display:table;width:100%}:host(.evo-table_mobile_short) .evo-table__row{display:table-row;padding:16px}:host(.evo-table_mobile_short) .evo-table__row:nth-child(2n){background-color:#f4f6f8}:host(.evo-table_mobile_short) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile_short) .evo-table__row_head:hover{background:none}:host(.evo-table_mobile_short) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}:host(.evo-table_mobile_short) .evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap;border-top:none}:host(.evo-table_with-title) .evo-table__cell{font-weight:400}:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:600}@media (min-width: 768px){:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:400}}:host(.evo-table_with-title) .evo-table__cell:first-child .evo-table__label{display:none}:host(.evo-table_with-title) .evo-table__label{font-weight:400}\n"] }]
57
+ args: [{ selector: 'evo-table', standalone: true, imports: [NgClass, NgTemplateOutlet], template: "<div class=\"evo-table\" [ngClass]=\"{'evo-table_row-clickable': states.isRowClickable}\">\n @if (showHeader) {\n <div class=\"evo-table__row evo-table__row_head mobile-hide\">\n @for (column of filteredColumns; track column.label) {\n <div class=\"evo-table__cell evo-table__cell_head\" [ngClass]=\"column.className\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n </div>\n }\n\n @for (item of data; track item; let row = $index) {\n <div\n class=\"evo-table__row\"\n [title]=\"getTitle(row, item) || ''\"\n [ngClass]=\"getClasses(row, item)\"\n (click)=\"onRowClick(row, item, $event)\"\n >\n @for (column of filteredColumns; track column.label; let col = $index) {\n <div class=\"evo-table__cell\" [ngClass]=\"column.className\">\n @if (column.label) {\n <div class=\"evo-table__label mobile-show\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n\n @if (column.content; as content) {\n <div class=\"evo-table__data\">\n <ng-container *ngTemplateOutlet=\"content; context: {row: row, col: col, item: item}\" />\n </div>\n } @else {\n {{ column.formatter(row, col, column.prop !== undefined ? item[column.prop] : item, item) }}\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".evo-table{color:#212121}@media (min-width: 768px){.evo-table{display:table;width:100%}}.evo-table__row{padding:8px}.evo-table__row:nth-child(2n){background-color:#f4f6f8}@media (min-width: 768px){.evo-table__row{display:table-row}.evo-table__row:hover{background-color:#fff8e6}.evo-table__row_head:hover{background:none}}.evo-table__cell{margin-bottom:20px}.evo-table__cell:last-child{margin-bottom:0}@media (min-width: 768px){.evo-table__cell{display:table-cell;height:48px;padding:0 8px;vertical-align:middle}}.evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap}@media (min-width: 768px){.evo-table__cell.text-right{text-align:right}}@media (min-width: 768px){.evo-table__cell.text-center{text-align:center}}.evo-table__sort{position:relative;display:inline-block;padding-right:20px;vertical-align:top;cursor:pointer}.evo-table__sort_up:after,.evo-table__sort_down:after{content:\"\";position:absolute;right:0;border:5px solid transparent}.evo-table__sort_up:after{top:4px;border-bottom-color:#212121}.evo-table__sort_down:after{top:8px;border-top-color:#212121}.evo-table__label{margin-bottom:4px;font-weight:600}.evo-table_row-clickable .evo-table__row{cursor:pointer}:host(.evo-table_mobile) .evo-table__row{padding:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__row{display:table-row}:host(.evo-table_mobile) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile) .evo-table__row_head:hover{background:none}}:host(.evo-table_mobile) .evo-table__cell{display:flex;margin-bottom:0;padding:13px 8px}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}}:host(.evo-table_mobile) .evo-table__label{width:50%;margin-bottom:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__label{width:auto;margin-bottom:4px}}:host(.evo-table_mobile-align_right) .evo-table__cell{justify-content:space-between}:host(.evo-table_mobile_short) .evo-table{display:table;width:100%}:host(.evo-table_mobile_short) .evo-table__row{display:table-row;padding:16px}:host(.evo-table_mobile_short) .evo-table__row:nth-child(2n){background-color:#f4f6f8}:host(.evo-table_mobile_short) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile_short) .evo-table__row_head:hover{background:none}:host(.evo-table_mobile_short) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}:host(.evo-table_mobile_short) .evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap;border-top:none}:host(.evo-table_with-title) .evo-table__cell{font-weight:400}:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:600}@media (min-width: 768px){:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:400}}:host(.evo-table_with-title) .evo-table__cell:first-child .evo-table__label{display:none}:host(.evo-table_with-title) .evo-table__label{font-weight:400}\n"] }]
55
58
  }], propDecorators: { data: [{
56
59
  type: Input
57
60
  }], showHeader: [{
@@ -62,10 +65,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
62
65
  type: Input
63
66
  }], rowClasses: [{
64
67
  type: Input
68
+ }], rowTitle: [{
69
+ type: Input
65
70
  }], rowClick: [{
66
71
  type: Output
67
72
  }], columns: [{
68
73
  type: ContentChildren,
69
74
  args: [EvoTableColumnComponent]
70
75
  }] } });
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXRhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by10YWJsZS9ldm8tdGFibGUvZXZvLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by10YWJsZS9ldm8tdGFibGUvZXZvLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxTQUFTLEVBQ1QsZUFBZSxFQUNmLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxHQUVULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFMUQsTUFBTSxPQUFPLHFCQUFxQjtDQU9qQztBQVNELE1BQU0sT0FBTyxpQkFBaUI7SUFQOUI7UUFRSSxvQkFBZSxHQUE4QixFQUFFLENBQUM7UUFJaEQsMkJBQTJCO1FBQ2xCLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFDbEIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUtkLGFBQVEsR0FBd0MsSUFBSSxZQUFZLEVBQXlCLENBQUM7UUFHcEcsV0FBTSxHQUFHO1lBQ0wsY0FBYyxFQUFFLEtBQUs7U0FDeEIsQ0FBQztLQXVDTDtJQXJDRyxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxnQkFBZ0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDekIsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsYUFBYTtRQUNULE9BQU87WUFDSCxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDdkIsQ0FBQztJQUNOLENBQUM7SUFFRCxVQUFVLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLO1FBQzVCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1lBQ2YsT0FBTyxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQztZQUN6QixLQUFLLEVBQUUsS0FBSztTQUNmLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxVQUFVLENBQUMsR0FBVyxFQUFFLElBQUk7UUFDeEIsT0FBTyxPQUFPLElBQUksQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUNoRyxDQUFDO0lBRU8sYUFBYTtRQUNqQixJQUFJLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3RDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2hHLENBQUM7SUFDTCxDQUFDOytHQXZEUSxpQkFBaUI7bUdBQWpCLGlCQUFpQixrUUFhVCx1QkFBdUIsa0RDM0M1QyxxOERBeUNBLDBnR0RiYyxPQUFPLG9GQUFFLGdCQUFnQjs7NEZBRTFCLGlCQUFpQjtrQkFQN0IsU0FBUzsrQkFDSSxXQUFXLGNBR1QsSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLGdCQUFnQixDQUFDOzhCQU0zQixJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVJLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ21DLE9BQU87c0JBQWhELGVBQWU7dUJBQUMsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFdm9UYWJsZUNvbHVtbkNvbXBvbmVudH0gZnJvbSAnLi4vZXZvLXRhYmxlLWNvbHVtbi9ldm8tdGFibGUtY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQge05nQ2xhc3MsIE5nVGVtcGxhdGVPdXRsZXR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmV4cG9ydCBjbGFzcyBFdm9UYWJsZVJvd0NsaWNrRXZlbnQge1xuICAgIHBheWxvYWQ6IHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgICAgIGl0ZW06IGFueTtcbiAgICAgICAgcm93SW5kZXg6IG51bWJlcjtcbiAgICB9O1xuICAgIGV2ZW50OiBNb3VzZUV2ZW50O1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V2by10YWJsZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2V2by10YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZXZvLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTmdDbGFzcywgTmdUZW1wbGF0ZU91dGxldF0sXG59KVxuZXhwb3J0IGNsYXNzIEV2b1RhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMge1xuICAgIGZpbHRlcmVkQ29sdW1uczogRXZvVGFibGVDb2x1bW5Db21wb25lbnRbXSA9IFtdO1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgQElucHV0KCkgZGF0YTogYW55W107XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgQElucHV0KCkgc2hvd0hlYWRlciA9IHRydWU7XG4gICAgQElucHV0KCkgc3RyaXBlID0gZmFsc2U7XG4gICAgQElucHV0KCkgdmlzaWJsZUNvbHVtbnM6IHN0cmluZ1tdO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIEBJbnB1dCgpIHJvd0NsYXNzZXM/OiBOZ0NsYXNzWyduZ0NsYXNzJ10gfCAoKHJvdzogbnVtYmVyLCBpdGVtOiBhbnkpID0+IE5nQ2xhc3NbJ25nQ2xhc3MnXSk7XG5cbiAgICBAT3V0cHV0KCkgcm93Q2xpY2s6IEV2ZW50RW1pdHRlcjxFdm9UYWJsZVJvd0NsaWNrRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdm9UYWJsZVJvd0NsaWNrRXZlbnQ+KCk7XG4gICAgQENvbnRlbnRDaGlsZHJlbihFdm9UYWJsZUNvbHVtbkNvbXBvbmVudCkgY29sdW1uczogRXZvVGFibGVDb2x1bW5Db21wb25lbnRbXTtcblxuICAgIHN0YXRlcyA9IHtcbiAgICAgICAgaXNSb3dDbGlja2FibGU6IGZhbHNlLFxuICAgIH07XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGlmICgndmlzaWJsZUNvbHVtbnMnIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyQ29sdW1ucygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuc3RhdGVzLmlzUm93Q2xpY2thYmxlID0gdGhpcy5yb3dDbGljay5vYnNlcnZlcnMubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyZWRDb2x1bW5zID0gdGhpcy5jb2x1bW5zO1xuICAgICAgICB0aGlzLmZpbHRlckNvbHVtbnMoKTtcbiAgICB9XG5cbiAgICBnZXRSb3dDbGFzc2VzKCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgc3RyaXBlZDogdGhpcy5zdHJpcGUsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgb25Sb3dDbGljayhyb3dJbmRleCwgaXRlbSwgZXZlbnQpIHtcbiAgICAgICAgdGhpcy5yb3dDbGljay5lbWl0KHtcbiAgICAgICAgICAgIHBheWxvYWQ6IHtyb3dJbmRleCwgaXRlbX0sXG4gICAgICAgICAgICBldmVudDogZXZlbnQsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldENsYXNzZXMocm93OiBudW1iZXIsIGl0ZW0pIHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzLnJvd0NsYXNzZXMgPT09ICdmdW5jdGlvbicgPyB0aGlzLnJvd0NsYXNzZXMocm93LCBpdGVtKSA6IHRoaXMucm93Q2xhc3NlcztcbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbHRlckNvbHVtbnMoKSB7XG4gICAgICAgIGlmICh0aGlzLnZpc2libGVDb2x1bW5zICYmIHRoaXMuY29sdW1ucykge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJlZENvbHVtbnMgPSB0aGlzLmNvbHVtbnMuZmlsdGVyKChjb2wpID0+IHRoaXMudmlzaWJsZUNvbHVtbnMuaW5jbHVkZXMoY29sLnByb3ApKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJldm8tdGFibGVcIiBbbmdDbGFzc109XCJ7J2V2by10YWJsZV9yb3ctY2xpY2thYmxlJzogc3RhdGVzLmlzUm93Q2xpY2thYmxlfVwiPlxuICAgIEBpZiAoc2hvd0hlYWRlcikge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZXZvLXRhYmxlX19yb3cgZXZvLXRhYmxlX19yb3dfaGVhZCBtb2JpbGUtaGlkZVwiPlxuICAgICAgICAgICAgQGZvciAoY29sdW1uIG9mIGZpbHRlcmVkQ29sdW1uczsgdHJhY2sgY29sdW1uLmxhYmVsKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2by10YWJsZV9fY2VsbCBldm8tdGFibGVfX2NlbGxfaGVhZFwiIFtuZ0NsYXNzXT1cImNvbHVtbi5jbGFzc05hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChjb2x1bW4uaGVhZGVyOyBhcyBoZWFkZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXI7IGNvbnRleHQ6IHtsYWJlbDogY29sdW1uLmxhYmVsfVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAge3sgY29sdW1uLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgQGZvciAoaXRlbSBvZiBkYXRhOyB0cmFjayBpdGVtOyBsZXQgcm93ID0gJGluZGV4KSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJldm8tdGFibGVfX3Jvd1wiIFtuZ0NsYXNzXT1cImdldENsYXNzZXMocm93LCBpdGVtKVwiIChjbGljayk9XCJvblJvd0NsaWNrKHJvdywgaXRlbSwgJGV2ZW50KVwiPlxuICAgICAgICAgICAgQGZvciAoY29sdW1uIG9mIGZpbHRlcmVkQ29sdW1uczsgdHJhY2sgY29sdW1uLmxhYmVsOyBsZXQgY29sID0gJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2by10YWJsZV9fY2VsbFwiIFtuZ0NsYXNzXT1cImNvbHVtbi5jbGFzc05hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChjb2x1bW4ubGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldm8tdGFibGVfX2xhYmVsIG1vYmlsZS1zaG93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChjb2x1bW4uaGVhZGVyOyBhcyBoZWFkZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlcjsgY29udGV4dDoge2xhYmVsOiBjb2x1bW4ubGFiZWx9XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY29sdW1uLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaWYgKGNvbHVtbi5jb250ZW50OyBhcyBjb250ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZvLXRhYmxlX19kYXRhXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnQ7IGNvbnRleHQ6IHtyb3c6IHJvdywgY29sOiBjb2wsIGl0ZW06IGl0ZW19XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbHVtbi5mb3JtYXR0ZXIocm93LCBjb2wsIGNvbHVtbi5wcm9wICE9PSB1bmRlZmluZWQgPyBpdGVtW2NvbHVtbi5wcm9wXSA6IGl0ZW0sIGl0ZW0pIH19XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuPC9kaXY+XG4iXX0=
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXRhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by10YWJsZS9ldm8tdGFibGUvZXZvLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by10YWJsZS9ldm8tdGFibGUvZXZvLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxTQUFTLEVBQ1QsZUFBZSxFQUNmLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxHQUVULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFMUQsTUFBTSxPQUFPLHFCQUFxQjtDQU9qQztBQVNELE1BQU0sT0FBTyxpQkFBaUI7SUFQOUI7UUFRSSxvQkFBZSxHQUE4QixFQUFFLENBQUM7UUFJaEQsMkJBQTJCO1FBQ2xCLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFDbEIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQU9kLGFBQVEsR0FBd0MsSUFBSSxZQUFZLEVBQXlCLENBQUM7UUFHcEcsV0FBTSxHQUFHO1lBQ0wsY0FBYyxFQUFFLEtBQUs7U0FDeEIsQ0FBQztLQTJDTDtJQXpDRyxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxnQkFBZ0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDekIsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsYUFBYTtRQUNULE9BQU87WUFDSCxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDdkIsQ0FBQztJQUNOLENBQUM7SUFFRCxVQUFVLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLO1FBQzVCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1lBQ2YsT0FBTyxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQztZQUN6QixLQUFLLEVBQUUsS0FBSztTQUNmLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxVQUFVLENBQUMsR0FBVyxFQUFFLElBQUk7UUFDeEIsT0FBTyxPQUFPLElBQUksQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUNoRyxDQUFDO0lBRUQsUUFBUSxDQUFDLEdBQVcsRUFBRSxJQUFJO1FBQ3RCLE9BQU8sT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDMUYsQ0FBQztJQUVPLGFBQWE7UUFDakIsSUFBSSxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN0QyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNoRyxDQUFDO0lBQ0wsQ0FBQzsrR0E3RFEsaUJBQWlCO21HQUFqQixpQkFBaUIsd1JBZVQsdUJBQXVCLGtEQzdDNUMseWlFQThDQSwwZ0dEbEJjLE9BQU8sb0ZBQUUsZ0JBQWdCOzs0RkFFMUIsaUJBQWlCO2tCQVA3QixTQUFTOytCQUNJLFdBQVcsY0FHVCxJQUFJLFdBQ1AsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUM7OEJBTTNCLElBQUk7c0JBQVosS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNO2dCQUNtQyxPQUFPO3NCQUFoRCxlQUFlO3VCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RXZvVGFibGVDb2x1bW5Db21wb25lbnR9IGZyb20gJy4uL2V2by10YWJsZS1jb2x1bW4vZXZvLXRhYmxlLWNvbHVtbi5jb21wb25lbnQnO1xuaW1wb3J0IHtOZ0NsYXNzLCBOZ1RlbXBsYXRlT3V0bGV0fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5leHBvcnQgY2xhc3MgRXZvVGFibGVSb3dDbGlja0V2ZW50IHtcbiAgICBwYXlsb2FkOiB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgICAgICBpdGVtOiBhbnk7XG4gICAgICAgIHJvd0luZGV4OiBudW1iZXI7XG4gICAgfTtcbiAgICBldmVudDogTW91c2VFdmVudDtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldm8tdGFibGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ldm8tdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2V2by10YWJsZS5jb21wb25lbnQuc2NzcyddLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW05nQ2xhc3MsIE5nVGVtcGxhdGVPdXRsZXRdLFxufSlcbmV4cG9ydCBjbGFzcyBFdm9UYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdCwgT25DaGFuZ2VzIHtcbiAgICBmaWx0ZXJlZENvbHVtbnM6IEV2b1RhYmxlQ29sdW1uQ29tcG9uZW50W10gPSBbXTtcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIEBJbnB1dCgpIGRhdGE6IGFueVtdO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIEBJbnB1dCgpIHNob3dIZWFkZXIgPSB0cnVlO1xuICAgIEBJbnB1dCgpIHN0cmlwZSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHZpc2libGVDb2x1bW5zOiBzdHJpbmdbXTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBASW5wdXQoKSByb3dDbGFzc2VzPzogTmdDbGFzc1snbmdDbGFzcyddIHwgKChyb3c6IG51bWJlciwgaXRlbTogYW55KSA9PiBOZ0NsYXNzWyduZ0NsYXNzJ10pO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIEBJbnB1dCgpIHJvd1RpdGxlPzogc3RyaW5nIHwgKChyb3c6IG51bWJlciwgaXRlbTogYW55KSA9PiBzdHJpbmcpO1xuXG4gICAgQE91dHB1dCgpIHJvd0NsaWNrOiBFdmVudEVtaXR0ZXI8RXZvVGFibGVSb3dDbGlja0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RXZvVGFibGVSb3dDbGlja0V2ZW50PigpO1xuICAgIEBDb250ZW50Q2hpbGRyZW4oRXZvVGFibGVDb2x1bW5Db21wb25lbnQpIGNvbHVtbnM6IEV2b1RhYmxlQ29sdW1uQ29tcG9uZW50W107XG5cbiAgICBzdGF0ZXMgPSB7XG4gICAgICAgIGlzUm93Q2xpY2thYmxlOiBmYWxzZSxcbiAgICB9O1xuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBpZiAoJ3Zpc2libGVDb2x1bW5zJyBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLmZpbHRlckNvbHVtbnMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLnN0YXRlcy5pc1Jvd0NsaWNrYWJsZSA9IHRoaXMucm93Q2xpY2sub2JzZXJ2ZXJzLmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICB0aGlzLmZpbHRlcmVkQ29sdW1ucyA9IHRoaXMuY29sdW1ucztcbiAgICAgICAgdGhpcy5maWx0ZXJDb2x1bW5zKCk7XG4gICAgfVxuXG4gICAgZ2V0Um93Q2xhc3NlcygpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHN0cmlwZWQ6IHRoaXMuc3RyaXBlLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIG9uUm93Q2xpY2socm93SW5kZXgsIGl0ZW0sIGV2ZW50KSB7XG4gICAgICAgIHRoaXMucm93Q2xpY2suZW1pdCh7XG4gICAgICAgICAgICBwYXlsb2FkOiB7cm93SW5kZXgsIGl0ZW19LFxuICAgICAgICAgICAgZXZlbnQ6IGV2ZW50LFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXRDbGFzc2VzKHJvdzogbnVtYmVyLCBpdGVtKSB7XG4gICAgICAgIHJldHVybiB0eXBlb2YgdGhpcy5yb3dDbGFzc2VzID09PSAnZnVuY3Rpb24nID8gdGhpcy5yb3dDbGFzc2VzKHJvdywgaXRlbSkgOiB0aGlzLnJvd0NsYXNzZXM7XG4gICAgfVxuXG4gICAgZ2V0VGl0bGUocm93OiBudW1iZXIsIGl0ZW0pIHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzLnJvd1RpdGxlID09PSAnZnVuY3Rpb24nID8gdGhpcy5yb3dUaXRsZShyb3csIGl0ZW0pIDogdGhpcy5yb3dUaXRsZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbHRlckNvbHVtbnMoKSB7XG4gICAgICAgIGlmICh0aGlzLnZpc2libGVDb2x1bW5zICYmIHRoaXMuY29sdW1ucykge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJlZENvbHVtbnMgPSB0aGlzLmNvbHVtbnMuZmlsdGVyKChjb2wpID0+IHRoaXMudmlzaWJsZUNvbHVtbnMuaW5jbHVkZXMoY29sLnByb3ApKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJldm8tdGFibGVcIiBbbmdDbGFzc109XCJ7J2V2by10YWJsZV9yb3ctY2xpY2thYmxlJzogc3RhdGVzLmlzUm93Q2xpY2thYmxlfVwiPlxuICAgIEBpZiAoc2hvd0hlYWRlcikge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZXZvLXRhYmxlX19yb3cgZXZvLXRhYmxlX19yb3dfaGVhZCBtb2JpbGUtaGlkZVwiPlxuICAgICAgICAgICAgQGZvciAoY29sdW1uIG9mIGZpbHRlcmVkQ29sdW1uczsgdHJhY2sgY29sdW1uLmxhYmVsKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2by10YWJsZV9fY2VsbCBldm8tdGFibGVfX2NlbGxfaGVhZFwiIFtuZ0NsYXNzXT1cImNvbHVtbi5jbGFzc05hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChjb2x1bW4uaGVhZGVyOyBhcyBoZWFkZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXI7IGNvbnRleHQ6IHtsYWJlbDogY29sdW1uLmxhYmVsfVwiIC8+XG4gICAgICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAge3sgY29sdW1uLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgQGZvciAoaXRlbSBvZiBkYXRhOyB0cmFjayBpdGVtOyBsZXQgcm93ID0gJGluZGV4KSB7XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiZXZvLXRhYmxlX19yb3dcIlxuICAgICAgICAgICAgW3RpdGxlXT1cImdldFRpdGxlKHJvdywgaXRlbSkgfHwgJydcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwiZ2V0Q2xhc3Nlcyhyb3csIGl0ZW0pXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvblJvd0NsaWNrKHJvdywgaXRlbSwgJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEBmb3IgKGNvbHVtbiBvZiBmaWx0ZXJlZENvbHVtbnM7IHRyYWNrIGNvbHVtbi5sYWJlbDsgbGV0IGNvbCA9ICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldm8tdGFibGVfX2NlbGxcIiBbbmdDbGFzc109XCJjb2x1bW4uY2xhc3NOYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoY29sdW1uLmxhYmVsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZvLXRhYmxlX19sYWJlbCBtb2JpbGUtc2hvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoY29sdW1uLmhlYWRlcjsgYXMgaGVhZGVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXI7IGNvbnRleHQ6IHtsYWJlbDogY29sdW1uLmxhYmVsfVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbHVtbi5sYWJlbCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChjb2x1bW4uY29udGVudDsgYXMgY29udGVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2by10YWJsZV9fZGF0YVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50OyBjb250ZXh0OiB7cm93OiByb3csIGNvbDogY29sLCBpdGVtOiBpdGVtfVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBjb2x1bW4uZm9ybWF0dGVyKHJvdywgY29sLCBjb2x1bW4ucHJvcCAhPT0gdW5kZWZpbmVkID8gaXRlbVtjb2x1bW4ucHJvcF0gOiBpdGVtLCBpdGVtKSB9fVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbjwvZGl2PlxuIl19
@@ -4011,7 +4011,7 @@ class EvoRadioComponent extends EvoBaseControl {
4011
4011
  this.onTouch = () => { };
4012
4012
  }
4013
4013
  get checked() {
4014
- return this.control ? this.control.value === this.value : false;
4014
+ return this.control ? isEqual(this.control.value, this.value) || this.forceChecked : this.forceChecked;
4015
4015
  }
4016
4016
  handleOnChange() {
4017
4017
  this.onChange(this.value);
@@ -4030,7 +4030,7 @@ class EvoRadioComponent extends EvoBaseControl {
4030
4030
  // eslint-disable-next-line
4031
4031
  writeValue(obj) { }
4032
4032
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoRadioComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4033
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: EvoRadioComponent, isStandalone: true, selector: "evo-radio", inputs: { value: "value", name: "name" }, providers: [
4033
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: EvoRadioComponent, isStandalone: true, selector: "evo-radio", inputs: { forceChecked: "forceChecked", value: "value", name: "name" }, providers: [
4034
4034
  {
4035
4035
  provide: NG_VALUE_ACCESSOR,
4036
4036
  useExisting: forwardRef(() => EvoRadioComponent),
@@ -4047,7 +4047,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
4047
4047
  multi: true,
4048
4048
  },
4049
4049
  ], standalone: true, template: "<label class=\"evo-radio\">\n <input\n type=\"radio\"\n class=\"evo-radio__input\"\n [name]=\"name\"\n [value]=\"value\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n (change)=\"handleOnChange()\"\n />\n <span class=\"evo-radio__element\"></span>\n <span class=\"evo-radio__content\">\n <ng-content />\n </span>\n</label>\n", styles: [":host{display:inline-block}.evo-radio{display:flex;align-items:center;cursor:pointer}.evo-radio__element{position:relative;display:block;flex:0 0 20px;width:20px;height:20px;margin:2px 8px 2px 2px;padding:4px;background-color:#fff;border:2px solid #C6C6C6;border-radius:50%;transition:background .3s,border-color .3s}.evo-radio__element:before{content:\"\";position:absolute;top:50%;left:50%;display:block;box-sizing:border-box;width:10px;height:10px;margin-top:-5px;margin-left:-5px;background-color:#0986e2;border-radius:50%;transform:scale(0);transform-origin:center;opacity:0;transition:background .3s,transform .3s}.evo-radio__input{display:none}.evo-radio__input[disabled]~.evo-radio__element{background-color:#f4f6f8}.evo-radio__input:checked[disabled]~.evo-radio__element{background-color:#fff}.evo-radio__input:checked[disabled]~.evo-radio__element:before{background-color:#c6c6c6}.evo-radio__input:checked~.evo-radio__element:before{transform:scale(1);opacity:1}.evo-radio__content{color:#212121;font-size:14px;line-height:22px;-webkit-user-select:none;user-select:none}\n"] }]
4050
- }], propDecorators: { value: [{
4050
+ }], propDecorators: { forceChecked: [{
4051
+ type: Input
4052
+ }], value: [{
4051
4053
  type: Input
4052
4054
  }], name: [{
4053
4055
  type: Input
@@ -4677,17 +4679,20 @@ class EvoTableComponent {
4677
4679
  getClasses(row, item) {
4678
4680
  return typeof this.rowClasses === 'function' ? this.rowClasses(row, item) : this.rowClasses;
4679
4681
  }
4682
+ getTitle(row, item) {
4683
+ return typeof this.rowTitle === 'function' ? this.rowTitle(row, item) : this.rowTitle;
4684
+ }
4680
4685
  filterColumns() {
4681
4686
  if (this.visibleColumns && this.columns) {
4682
4687
  this.filteredColumns = this.columns.filter((col) => this.visibleColumns.includes(col.prop));
4683
4688
  }
4684
4689
  }
4685
4690
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4686
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.10", type: EvoTableComponent, isStandalone: true, selector: "evo-table", inputs: { data: "data", showHeader: "showHeader", stripe: "stripe", visibleColumns: "visibleColumns", rowClasses: "rowClasses" }, outputs: { rowClick: "rowClick" }, queries: [{ propertyName: "columns", predicate: EvoTableColumnComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"evo-table\" [ngClass]=\"{'evo-table_row-clickable': states.isRowClickable}\">\n @if (showHeader) {\n <div class=\"evo-table__row evo-table__row_head mobile-hide\">\n @for (column of filteredColumns; track column.label) {\n <div class=\"evo-table__cell evo-table__cell_head\" [ngClass]=\"column.className\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n </div>\n }\n\n @for (item of data; track item; let row = $index) {\n <div class=\"evo-table__row\" [ngClass]=\"getClasses(row, item)\" (click)=\"onRowClick(row, item, $event)\">\n @for (column of filteredColumns; track column.label; let col = $index) {\n <div class=\"evo-table__cell\" [ngClass]=\"column.className\">\n @if (column.label) {\n <div class=\"evo-table__label mobile-show\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n\n @if (column.content; as content) {\n <div class=\"evo-table__data\">\n <ng-container *ngTemplateOutlet=\"content; context: {row: row, col: col, item: item}\" />\n </div>\n } @else {\n {{ column.formatter(row, col, column.prop !== undefined ? item[column.prop] : item, item) }}\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".evo-table{color:#212121}@media (min-width: 768px){.evo-table{display:table;width:100%}}.evo-table__row{padding:8px}.evo-table__row:nth-child(2n){background-color:#f4f6f8}@media (min-width: 768px){.evo-table__row{display:table-row}.evo-table__row:hover{background-color:#fff8e6}.evo-table__row_head:hover{background:none}}.evo-table__cell{margin-bottom:20px}.evo-table__cell:last-child{margin-bottom:0}@media (min-width: 768px){.evo-table__cell{display:table-cell;height:48px;padding:0 8px;vertical-align:middle}}.evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap}@media (min-width: 768px){.evo-table__cell.text-right{text-align:right}}@media (min-width: 768px){.evo-table__cell.text-center{text-align:center}}.evo-table__sort{position:relative;display:inline-block;padding-right:20px;vertical-align:top;cursor:pointer}.evo-table__sort_up:after,.evo-table__sort_down:after{content:\"\";position:absolute;right:0;border:5px solid transparent}.evo-table__sort_up:after{top:4px;border-bottom-color:#212121}.evo-table__sort_down:after{top:8px;border-top-color:#212121}.evo-table__label{margin-bottom:4px;font-weight:600}.evo-table_row-clickable .evo-table__row{cursor:pointer}:host(.evo-table_mobile) .evo-table__row{padding:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__row{display:table-row}:host(.evo-table_mobile) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile) .evo-table__row_head:hover{background:none}}:host(.evo-table_mobile) .evo-table__cell{display:flex;margin-bottom:0;padding:13px 8px}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}}:host(.evo-table_mobile) .evo-table__label{width:50%;margin-bottom:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__label{width:auto;margin-bottom:4px}}:host(.evo-table_mobile-align_right) .evo-table__cell{justify-content:space-between}:host(.evo-table_mobile_short) .evo-table{display:table;width:100%}:host(.evo-table_mobile_short) .evo-table__row{display:table-row;padding:16px}:host(.evo-table_mobile_short) .evo-table__row:nth-child(2n){background-color:#f4f6f8}:host(.evo-table_mobile_short) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile_short) .evo-table__row_head:hover{background:none}:host(.evo-table_mobile_short) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}:host(.evo-table_mobile_short) .evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap;border-top:none}:host(.evo-table_with-title) .evo-table__cell{font-weight:400}:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:600}@media (min-width: 768px){:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:400}}:host(.evo-table_with-title) .evo-table__cell:first-child .evo-table__label{display:none}:host(.evo-table_with-title) .evo-table__label{font-weight:400}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
4691
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.10", type: EvoTableComponent, isStandalone: true, selector: "evo-table", inputs: { data: "data", showHeader: "showHeader", stripe: "stripe", visibleColumns: "visibleColumns", rowClasses: "rowClasses", rowTitle: "rowTitle" }, outputs: { rowClick: "rowClick" }, queries: [{ propertyName: "columns", predicate: EvoTableColumnComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"evo-table\" [ngClass]=\"{'evo-table_row-clickable': states.isRowClickable}\">\n @if (showHeader) {\n <div class=\"evo-table__row evo-table__row_head mobile-hide\">\n @for (column of filteredColumns; track column.label) {\n <div class=\"evo-table__cell evo-table__cell_head\" [ngClass]=\"column.className\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n </div>\n }\n\n @for (item of data; track item; let row = $index) {\n <div\n class=\"evo-table__row\"\n [title]=\"getTitle(row, item) || ''\"\n [ngClass]=\"getClasses(row, item)\"\n (click)=\"onRowClick(row, item, $event)\"\n >\n @for (column of filteredColumns; track column.label; let col = $index) {\n <div class=\"evo-table__cell\" [ngClass]=\"column.className\">\n @if (column.label) {\n <div class=\"evo-table__label mobile-show\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n\n @if (column.content; as content) {\n <div class=\"evo-table__data\">\n <ng-container *ngTemplateOutlet=\"content; context: {row: row, col: col, item: item}\" />\n </div>\n } @else {\n {{ column.formatter(row, col, column.prop !== undefined ? item[column.prop] : item, item) }}\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".evo-table{color:#212121}@media (min-width: 768px){.evo-table{display:table;width:100%}}.evo-table__row{padding:8px}.evo-table__row:nth-child(2n){background-color:#f4f6f8}@media (min-width: 768px){.evo-table__row{display:table-row}.evo-table__row:hover{background-color:#fff8e6}.evo-table__row_head:hover{background:none}}.evo-table__cell{margin-bottom:20px}.evo-table__cell:last-child{margin-bottom:0}@media (min-width: 768px){.evo-table__cell{display:table-cell;height:48px;padding:0 8px;vertical-align:middle}}.evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap}@media (min-width: 768px){.evo-table__cell.text-right{text-align:right}}@media (min-width: 768px){.evo-table__cell.text-center{text-align:center}}.evo-table__sort{position:relative;display:inline-block;padding-right:20px;vertical-align:top;cursor:pointer}.evo-table__sort_up:after,.evo-table__sort_down:after{content:\"\";position:absolute;right:0;border:5px solid transparent}.evo-table__sort_up:after{top:4px;border-bottom-color:#212121}.evo-table__sort_down:after{top:8px;border-top-color:#212121}.evo-table__label{margin-bottom:4px;font-weight:600}.evo-table_row-clickable .evo-table__row{cursor:pointer}:host(.evo-table_mobile) .evo-table__row{padding:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__row{display:table-row}:host(.evo-table_mobile) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile) .evo-table__row_head:hover{background:none}}:host(.evo-table_mobile) .evo-table__cell{display:flex;margin-bottom:0;padding:13px 8px}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}}:host(.evo-table_mobile) .evo-table__label{width:50%;margin-bottom:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__label{width:auto;margin-bottom:4px}}:host(.evo-table_mobile-align_right) .evo-table__cell{justify-content:space-between}:host(.evo-table_mobile_short) .evo-table{display:table;width:100%}:host(.evo-table_mobile_short) .evo-table__row{display:table-row;padding:16px}:host(.evo-table_mobile_short) .evo-table__row:nth-child(2n){background-color:#f4f6f8}:host(.evo-table_mobile_short) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile_short) .evo-table__row_head:hover{background:none}:host(.evo-table_mobile_short) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}:host(.evo-table_mobile_short) .evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap;border-top:none}:host(.evo-table_with-title) .evo-table__cell{font-weight:400}:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:600}@media (min-width: 768px){:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:400}}:host(.evo-table_with-title) .evo-table__cell:first-child .evo-table__label{display:none}:host(.evo-table_with-title) .evo-table__label{font-weight:400}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
4687
4692
  }
4688
4693
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoTableComponent, decorators: [{
4689
4694
  type: Component,
4690
- args: [{ selector: 'evo-table', standalone: true, imports: [NgClass, NgTemplateOutlet], template: "<div class=\"evo-table\" [ngClass]=\"{'evo-table_row-clickable': states.isRowClickable}\">\n @if (showHeader) {\n <div class=\"evo-table__row evo-table__row_head mobile-hide\">\n @for (column of filteredColumns; track column.label) {\n <div class=\"evo-table__cell evo-table__cell_head\" [ngClass]=\"column.className\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n </div>\n }\n\n @for (item of data; track item; let row = $index) {\n <div class=\"evo-table__row\" [ngClass]=\"getClasses(row, item)\" (click)=\"onRowClick(row, item, $event)\">\n @for (column of filteredColumns; track column.label; let col = $index) {\n <div class=\"evo-table__cell\" [ngClass]=\"column.className\">\n @if (column.label) {\n <div class=\"evo-table__label mobile-show\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n\n @if (column.content; as content) {\n <div class=\"evo-table__data\">\n <ng-container *ngTemplateOutlet=\"content; context: {row: row, col: col, item: item}\" />\n </div>\n } @else {\n {{ column.formatter(row, col, column.prop !== undefined ? item[column.prop] : item, item) }}\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".evo-table{color:#212121}@media (min-width: 768px){.evo-table{display:table;width:100%}}.evo-table__row{padding:8px}.evo-table__row:nth-child(2n){background-color:#f4f6f8}@media (min-width: 768px){.evo-table__row{display:table-row}.evo-table__row:hover{background-color:#fff8e6}.evo-table__row_head:hover{background:none}}.evo-table__cell{margin-bottom:20px}.evo-table__cell:last-child{margin-bottom:0}@media (min-width: 768px){.evo-table__cell{display:table-cell;height:48px;padding:0 8px;vertical-align:middle}}.evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap}@media (min-width: 768px){.evo-table__cell.text-right{text-align:right}}@media (min-width: 768px){.evo-table__cell.text-center{text-align:center}}.evo-table__sort{position:relative;display:inline-block;padding-right:20px;vertical-align:top;cursor:pointer}.evo-table__sort_up:after,.evo-table__sort_down:after{content:\"\";position:absolute;right:0;border:5px solid transparent}.evo-table__sort_up:after{top:4px;border-bottom-color:#212121}.evo-table__sort_down:after{top:8px;border-top-color:#212121}.evo-table__label{margin-bottom:4px;font-weight:600}.evo-table_row-clickable .evo-table__row{cursor:pointer}:host(.evo-table_mobile) .evo-table__row{padding:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__row{display:table-row}:host(.evo-table_mobile) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile) .evo-table__row_head:hover{background:none}}:host(.evo-table_mobile) .evo-table__cell{display:flex;margin-bottom:0;padding:13px 8px}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}}:host(.evo-table_mobile) .evo-table__label{width:50%;margin-bottom:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__label{width:auto;margin-bottom:4px}}:host(.evo-table_mobile-align_right) .evo-table__cell{justify-content:space-between}:host(.evo-table_mobile_short) .evo-table{display:table;width:100%}:host(.evo-table_mobile_short) .evo-table__row{display:table-row;padding:16px}:host(.evo-table_mobile_short) .evo-table__row:nth-child(2n){background-color:#f4f6f8}:host(.evo-table_mobile_short) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile_short) .evo-table__row_head:hover{background:none}:host(.evo-table_mobile_short) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}:host(.evo-table_mobile_short) .evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap;border-top:none}:host(.evo-table_with-title) .evo-table__cell{font-weight:400}:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:600}@media (min-width: 768px){:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:400}}:host(.evo-table_with-title) .evo-table__cell:first-child .evo-table__label{display:none}:host(.evo-table_with-title) .evo-table__label{font-weight:400}\n"] }]
4695
+ args: [{ selector: 'evo-table', standalone: true, imports: [NgClass, NgTemplateOutlet], template: "<div class=\"evo-table\" [ngClass]=\"{'evo-table_row-clickable': states.isRowClickable}\">\n @if (showHeader) {\n <div class=\"evo-table__row evo-table__row_head mobile-hide\">\n @for (column of filteredColumns; track column.label) {\n <div class=\"evo-table__cell evo-table__cell_head\" [ngClass]=\"column.className\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n </div>\n }\n\n @for (item of data; track item; let row = $index) {\n <div\n class=\"evo-table__row\"\n [title]=\"getTitle(row, item) || ''\"\n [ngClass]=\"getClasses(row, item)\"\n (click)=\"onRowClick(row, item, $event)\"\n >\n @for (column of filteredColumns; track column.label; let col = $index) {\n <div class=\"evo-table__cell\" [ngClass]=\"column.className\">\n @if (column.label) {\n <div class=\"evo-table__label mobile-show\">\n @if (column.header; as header) {\n <ng-container *ngTemplateOutlet=\"header; context: {label: column.label}\" />\n } @else {\n {{ column.label }}\n }\n </div>\n }\n\n @if (column.content; as content) {\n <div class=\"evo-table__data\">\n <ng-container *ngTemplateOutlet=\"content; context: {row: row, col: col, item: item}\" />\n </div>\n } @else {\n {{ column.formatter(row, col, column.prop !== undefined ? item[column.prop] : item, item) }}\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".evo-table{color:#212121}@media (min-width: 768px){.evo-table{display:table;width:100%}}.evo-table__row{padding:8px}.evo-table__row:nth-child(2n){background-color:#f4f6f8}@media (min-width: 768px){.evo-table__row{display:table-row}.evo-table__row:hover{background-color:#fff8e6}.evo-table__row_head:hover{background:none}}.evo-table__cell{margin-bottom:20px}.evo-table__cell:last-child{margin-bottom:0}@media (min-width: 768px){.evo-table__cell{display:table-cell;height:48px;padding:0 8px;vertical-align:middle}}.evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap}@media (min-width: 768px){.evo-table__cell.text-right{text-align:right}}@media (min-width: 768px){.evo-table__cell.text-center{text-align:center}}.evo-table__sort{position:relative;display:inline-block;padding-right:20px;vertical-align:top;cursor:pointer}.evo-table__sort_up:after,.evo-table__sort_down:after{content:\"\";position:absolute;right:0;border:5px solid transparent}.evo-table__sort_up:after{top:4px;border-bottom-color:#212121}.evo-table__sort_down:after{top:8px;border-top-color:#212121}.evo-table__label{margin-bottom:4px;font-weight:600}.evo-table_row-clickable .evo-table__row{cursor:pointer}:host(.evo-table_mobile) .evo-table__row{padding:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__row{display:table-row}:host(.evo-table_mobile) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile) .evo-table__row_head:hover{background:none}}:host(.evo-table_mobile) .evo-table__cell{display:flex;margin-bottom:0;padding:13px 8px}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}}:host(.evo-table_mobile) .evo-table__label{width:50%;margin-bottom:0}@media (min-width: 768px){:host(.evo-table_mobile) .evo-table__label{width:auto;margin-bottom:4px}}:host(.evo-table_mobile-align_right) .evo-table__cell{justify-content:space-between}:host(.evo-table_mobile_short) .evo-table{display:table;width:100%}:host(.evo-table_mobile_short) .evo-table__row{display:table-row;padding:16px}:host(.evo-table_mobile_short) .evo-table__row:nth-child(2n){background-color:#f4f6f8}:host(.evo-table_mobile_short) .evo-table__row:hover{background-color:#fff8e6}:host(.evo-table_mobile_short) .evo-table__row_head:hover{background:none}:host(.evo-table_mobile_short) .evo-table__cell{display:table-cell;height:52px;padding:11px 16px;vertical-align:middle}:host(.evo-table_mobile_short) .evo-table__cell_head{height:auto;padding-top:0;padding-bottom:16px;font-weight:600;white-space:nowrap;border-top:none}:host(.evo-table_with-title) .evo-table__cell{font-weight:400}:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:600}@media (min-width: 768px){:host(.evo-table_with-title) .evo-table__cell:first-child{font-weight:400}}:host(.evo-table_with-title) .evo-table__cell:first-child .evo-table__label{display:none}:host(.evo-table_with-title) .evo-table__label{font-weight:400}\n"] }]
4691
4696
  }], propDecorators: { data: [{
4692
4697
  type: Input
4693
4698
  }], showHeader: [{
@@ -4698,6 +4703,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
4698
4703
  type: Input
4699
4704
  }], rowClasses: [{
4700
4705
  type: Input
4706
+ }], rowTitle: [{
4707
+ type: Input
4701
4708
  }], rowClick: [{
4702
4709
  type: Output
4703
4710
  }], columns: [{