atr-components 0.2.301 → 0.2.303

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,5 +1,6 @@
1
1
  import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import { atr_static_datas } from "../../../../core/base/atr-common";
3
+ import { ToolsUtil } from "../../../../core/utils/ToolsUtil";
3
4
  import * as i0 from "@angular/core";
4
5
  import * as i1 from "ng-zorro-antd/switch";
5
6
  import * as i2 from "ng-zorro-antd/button";
@@ -89,15 +90,11 @@ export class TableTdComponent {
89
90
  let isShow = false;
90
91
  if (op.length > 1) {
91
92
  let value = data[op[0]];
92
- if (!value) {
93
- isShow = false;
94
- }
95
- else {
96
- isShow = this.compare(value, op[1], op[2]);
97
- }
93
+ isShow = this.compare(value, op[1], op[2]);
98
94
  }
99
- else
95
+ else {
100
96
  isShow = false;
97
+ }
101
98
  return isShow;
102
99
  }
103
100
  compare(value, operator, target) {
@@ -119,16 +116,10 @@ export class TableTdComponent {
119
116
  }
120
117
  break;
121
118
  case 'notEmpty':
122
- isRight = false;
123
- if (value) {
124
- isRight = true;
125
- }
119
+ isRight = !ToolsUtil.isEmpty(value);
126
120
  break;
127
121
  case 'empty':
128
- isRight = true;
129
- if (!!value) {
130
- isRight = false;
131
- }
122
+ isRight = ToolsUtil.isEmpty(value);
132
123
  break;
133
124
  default:
134
125
  isRight = false;
@@ -151,4 +142,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
151
142
  }], doActionByRowAction: [{
152
143
  type: Output
153
144
  }] } });
154
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC90YWJsZS90YWJsZS10ZC90YWJsZS10ZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3RhYmxlL3RhYmxlLXRkL3RhYmxlLXRkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFN0UsT0FBTyxFQUFDLGdCQUFnQixFQUFxQixNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFPdEYsTUFBTSxPQUFPLGdCQUFnQjtJQVUzQjtRQUxVLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDeEQsbUJBQWMsR0FBTyxPQUFPLENBQUE7UUFFNUIsZ0JBQVcsR0FBRyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUM7SUFHdkMsQ0FBQztJQUNELGdCQUFnQixDQUFDLElBQVUsRUFBQyxJQUFRO1FBQ2xDLElBQUksS0FBSyxHQUFPLEVBQUUsQ0FBQTtRQUNsQixJQUFHLElBQUksQ0FBQyxhQUFhLEVBQUM7WUFDcEIsS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUE7U0FDakM7UUFDRCxJQUFHLElBQUksQ0FBQyxLQUFLLEVBQUM7WUFDWixLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUM3QjtRQUNELE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUNELGNBQWMsQ0FBQyxJQUFRLEVBQUUsSUFBUSxFQUFFLEtBQWtCLEVBQUUsS0FBVTtRQUMvRCxJQUFJLENBQUMsbUJB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QyxDQUFDLEtBQUssRUFBRTtvQkFDWCxPQUFPLEdBQUcsS0FBSyxDQUFDO2lCQUNqQjtnQkFDRCxNQUFNO1lBQ1I7Z0JBQ0UsT0FBTyxHQUFHLEtBQUssQ0FBQztnQkFDaEIsTUFBTTtTQUNUO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQzs7OEdBL0hVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLDZKQ1Q3QixvbEpBdUVBOzRGRDlEYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsY0FBYzswRUFLZixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLENBQUM7c0JBQVQsS0FBSztnQkFFSSxtQkFBbUI7c0JBQTVCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge2Vudmlyb25tZW50fSBmcm9tIFwibmctem9ycm8tYW50ZC9jb3JlL2Vudmlyb25tZW50c1wiO1xyXG5pbXBvcnQge2F0cl9zdGF0aWNfZGF0YXMsIFRhYmxlLCBUYWJsZUFjdGlvbn0gZnJvbSBcIi4uLy4uLy4uLy4uL2NvcmUvYmFzZS9hdHItY29tbW9uXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC10YWJsZS10ZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLXRkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS10ZC5jb21wb25lbnQuc2NzcycsICcuLi90YWJsZS5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVRkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBkYXRhOmFueVxyXG4gIEBJbnB1dCgpIGl0ZW06IFRhYmxlIHxhbnk7XHJcbiAgQElucHV0KCkgaTphbnlcclxuXHJcbiAgQE91dHB1dCgpIGRvQWN0aW9uQnlSb3dBY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBwb3BvdmVyVHJpZ2dlcjphbnkgPSAnaG92ZXInXHJcblxyXG4gIGltYWdlUHJlZml4ID0gYXRyX3N0YXRpY19kYXRhcy5PU1NfVVJMO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcbiAgZ2V0U3R5bGVDYWxsQmFjayhpdGVtOlRhYmxlLGRhdGE6YW55KXtcclxuICAgIGxldCBzdHlsZTphbnkgPSB7fVxyXG4gICAgaWYoaXRlbS5zdHlsZUNhbGxCYWNrKXtcclxuICAgICAgc3R5bGUgPSBpdGVtLnN0eWxlQ2FsbEJhY2soZGF0YSlcclxuICAgIH1cclxuICAgIGlmKGl0ZW0uY29sb3Ipe1xyXG4gICAgICBzdHlsZVsnY29sb3InXSA9IGl0ZW0uY29sb3I7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3R5bGVcclxuICB9XHJcbiAgZG9BY3Rpb25Td2l0Y2goZGF0YTphbnksIGNvZGU6YW55LCBldmVudD86IE1vdXNlRXZlbnQsIGluZGV4PzphbnkpIHtcclxuICAgIHRoaXMuZG9BY3Rpb25CeVJvd0FjdGlvbi5lbWl0KHtkYXRhOiBkYXRhLCBjb2RlOiBjb2RlLCBldmVudDogZXZlbnQsIGluZGV4OiBpbmRleH0pXHJcbiAgfVxyXG5cclxuICBjaGFuZ2UodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIGNvbnNvbGUubG9nKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgZG9BY3Rpb25CeVJvdyhkYXRhOmFueSwgY29kZTphbnksIGV2ZW50OiBNb3VzZUV2ZW50LCBpbmRleDphbnkpIHtcclxuICAgIHRoaXMuZG9BY3Rpb25CeVJvd0FjdGlvbi5lbWl0KHtkYXRhOiBkYXRhLCBjb2RlOiBjb2RlLCBldmVudDogZXZlbnQsIGluZGV4OiBpbmRleH0pXHJcbiAgfVxyXG5cclxuICBlbnRlcihlOmFueSkge1xyXG4gICAgdGhpcy5wb3BvdmVyVHJpZ2dlciA9IGUudG9FbGVtZW50LmNsaWVudFdpZHRoIDwgZS50b0VsZW1lbnQuc2Nyb2xsV2lkdGggPyAnaG92ZXInIDogbnVsbDtcclxuICB9XHJcblxyXG4gIGlzU2hvd0J0bihkYXRhOiBhbnksIG9wZXJhdG9yOiBzdHJpbmcsIGFjdGlvbj86VGFibGVBY3Rpb24pOiBib29sZWFuIHtcclxuICAgIGxldCBpc1Nob3cgPSBmYWxzZTtcclxuICAgIGlmICghb3BlcmF0b3IgfHwgb3BlcmF0b3IgPT0gbnVsbCB8fCBvcGVyYXRvciA9PSBcIlwiKSB7XHJcbiAgICAgIGlzU2hvdyA9IHRydWU7XHJcbiAgICB9IGVsc2UgaWYgKG9wZXJhdG9yLmluZGV4T2YoJyYmJykgPiAwKSB7XHJcbiAgICAgIC8vIGF8ZXF8YiAmJmN8ZXF8ZFxyXG4gICAgICBjb25zdCBvcHMgPSBvcGVyYXRvci5zcGxpdCgnJiYnKTtcclxuICAgICAgaWYgKG9wcy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnByZWZlci1mb3Itb2ZcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9wcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgaXNTaG93ID0gdHJ1ZVxyXG4gICAgICAgICAgaWYgKCF0aGlzLmNoZWNrSXNTaG93QmFzZShvcHNbaV0uc3BsaXQoJ3wnKSwgZGF0YSkpIHtcclxuICAgICAgICAgICAgaXNTaG93ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChvcGVyYXRvci5pbmRleE9mKCd8fCcpID4gMCkge1xyXG4gICAgICAvLyBhfGVxfGJ8fGN8ZXF8ZFxyXG4gICAgICBjb25zdCBvcHMgPSBvcGVyYXRvci5zcGxpdCgnfHwnKTtcclxuICAgICAgaWYgKG9wcy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvcHMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGlzU2hvdyA9IGZhbHNlO1xyXG4gICAgICAgICAgaWYgKHRoaXMuY2hlY2tJc1Nob3dCYXNlKG9wc1tpXS5zcGxpdCgnfCcpLCBkYXRhKSkge1xyXG4gICAgICAgICAgICBpc1Nob3cgPSB0cnVlO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxldCBvcCA9IG9wZXJhdG9yLnNwbGl0KFwifFwiKTtcclxuICAgICAgaXNTaG93ID0gdGhpcy5jaGVja0lzU2hvd0Jhc2Uob3AsIGRhdGEpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGlzU2hvdztcclxuICB9XHJcblxyXG4gIGNoZWNrSXNTaG93QmFzZShvcDphbnksIGRhdGE6YW55KTogYm9vbGVhbiB7XHJcbiAgICBsZXQgaXNTaG93ID0gZmFsc2U7XHJcbiAgICBpZiAob3AubGVuZ3RoID4gMSkge1xyXG4gICAgICBsZXQgdmFsdWUgPSBkYXRhW29wWzBdXTtcclxuICAgICAgaWYgKCF2YWx1ZSkge1xyXG4gICAgICAgIGlzU2hvdyA9IGZhbHNlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlzU2hvdyA9IHRoaXMuY29tcGFyZSh2YWx1ZSwgb3BbMV0sIG9wWzJdKVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2VcclxuICAgICAgaXNTaG93ID0gZmFsc2VcclxuXHJcbiAgICByZXR1cm4gaXNTaG93O1xyXG4gIH1cclxuXHJcbiAgY29tcGFyZSh2YWx1ZTphbnksIG9wZXJhdG9yOmFueSwgdGFyZ2V0OmFueSk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IGlzUmlnaHQgPSBmYWxzZTtcclxuICAgIHN3aXRjaCAob3BlcmF0b3IpIHtcclxuICAgICAgY2FzZSAnZXEnIDpcclxuICAgICAgICBpZiAodmFsdWUgPT0gdGFyZ2V0KSB7XHJcbiAgICAgICAgICBpc1JpZ2h0ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2doJyA6XHJcbiAgICAgICAgaWYgKHZhbHVlID49IHRhcmdldCkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICduZSc6XHJcbiAgICAgICAgaWYgKHZhbHVlICE9IHRhcmdldCkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrXHJcbiAgICAgIGNhc2UgJ25vdEVtcHR5JzpcclxuICAgICAgICBpc1JpZ2h0ID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICBpc1JpZ2h0ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2VtcHR5JzpcclxuICAgICAgICBpc1JpZ2h0ID0gdHJ1ZTtcclxuICAgICAgICBpZiAoISF2YWx1ZSkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdCA6XHJcbiAgICAgICAgaXNSaWdodCA9IGZhbHNlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGlzUmlnaHQ7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJpdGVtLnR5cGVcIj5cclxuXHJcbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2lubmVySHRtbCdcIj5cclxuICAgIDxkaXYgW25nU3R5bGVdPVwiZ2V0U3R5bGVDYWxsQmFjayhpdGVtLGRhdGEpXCIgW2lubmVySFRNTF09XCJpdGVtLmlubmVySHRtbEJhY2soZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsLGRhdGEpIHwgc2FmZUh0bWxcIiAgPjwvZGl2PlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIid0ZXh0Y29sb3InXCI+XHJcbiAgICA8ZGl2IFtpbm5lckhUTUxdPVwiZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCIgW25nU3R5bGVdPVwieydjb2xvcic6aXRlbS5jb2xvcn1cIlxyXG4gICAgICAgICAqbmdJZj1cIml0ZW0uY29sb3JTaG93ID09IGRhdGFbaXRlbS5rZXldXCI+PC9kaXY+XHJcbiAgICA8ZGl2IFtpbm5lckhUTUxdPVwiZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCIgKm5nSWY9XCJpdGVtLmNvbG9yU2hvdyAhPSBkYXRhW2l0ZW0ua2V5XVwiPjwvZGl2PlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidkYXRlJ1wiPlxyXG4gICAgICAgPHNwYW4gbnotcG9wb3ZlciAobW91c2VlbnRlcik9XCJlbnRlcigkZXZlbnQpXCJcclxuICAgICAgICAgICAgIFtuelBvcG92ZXJUcmlnZ2VyXT1cInBvcG92ZXJUcmlnZ2VyXCJcclxuICAgICAgICAgICAgIFtuZ1N0eWxlXT1cImdldFN0eWxlQ2FsbEJhY2soaXRlbSxkYXRhKVwiXHJcbiAgICAgICAgICAgICBbbnpQb3BvdmVyQ29udGVudF09XCJkYXRhW2l0ZW0ua2V5XSB8IGRhdGU6J3l5eXktTU0tZGQnIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbFwiXHJcbiAgICAgICAgICAgICBjbGFzcz1cInZpZXctdGV4dFwiPnt7IGRhdGFbaXRlbS5rZXldIHwgZGF0ZToneXl5eS1NTS1kZCcgfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsfX08L3NwYW4+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGVUaW1lJ1wiPlxyXG4gICAgICA8c3BhbiBuei1wb3BvdmVyIChtb3VzZWVudGVyKT1cImVudGVyKCRldmVudClcIlxyXG4gICAgICAgICAgICBbbnpQb3BvdmVyVHJpZ2dlcl09XCJwb3BvdmVyVHJpZ2dlclwiXHJcbiAgICAgICAgICAgIFtuZ1N0eWxlXT1cImdldFN0eWxlQ2FsbEJhY2soaXRlbSxkYXRhKVwiXHJcbiAgICAgICAgICAgIFtuelBvcG92ZXJDb250ZW50XT1cImRhdGFbaXRlbS5rZXldIHwgZGF0ZToneXl5eS1NTS1kZCBISDptbTpzcycgfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJ2aWV3LXRleHRcIj4ge3sgZGF0YVtpdGVtLmtleV0gfCBkYXRlOid5eXl5LU1NLWRkIEhIOm1tOnNzJyB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWx9fTwvc3Bhbj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8bnotc3dpdGNoICpuZ1N3aXRjaENhc2U9XCInc3dpdGNoJ1wiIFsobmdNb2RlbCldPVwiZGF0YVtpdGVtLmtleV1cIiBbbnpEaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcclxuICAgICAgICAgICAgIFtuZ1N0eWxlXT1cImdldFN0eWxlQ2FsbEJhY2soaXRlbSxkYXRhKVwiXHJcbiAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJkb0FjdGlvblN3aXRjaChkYXRhLGl0ZW0ua2V5KVwiIG56Q2hlY2tlZENoaWxkcmVuPVwi5pivXCIgbnpVbkNoZWNrZWRDaGlsZHJlbj1cIuWQplwiPlxyXG4gIDwvbnotc3dpdGNoPlxyXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidzRGF0ZVRpbWUnXCI+XHJcbiAgICAgIDxzcGFuIG56LXBvcG92ZXIgKG1vdXNlZW50ZXIpPVwiZW50ZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIFtuelBvcG92ZXJUcmlnZ2VyXT1cInBvcG92ZXJUcmlnZ2VyXCIgW25nU3R5bGVdPVwiZ2V0U3R5bGVDYWxsQmFjayhpdGVtLGRhdGEpXCJcclxuICAgICAgICAgICAgW256UG9wb3ZlckNvbnRlbnRdPVwiZGF0YVtpdGVtLmtleV0gfCBkYXRlOidNTS1kZCBISDptbScgfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJ2aWV3LXRleHRcIj4gIHt7IGRhdGFbaXRlbS5rZXldIHwgZGF0ZTonTU0tZGQgSEg6bW0nIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbH19PC9zcGFuPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIidmaXhlZFRleHQnXCIgW25nU3R5bGVdPVwiZ2V0U3R5bGVDYWxsQmFjayhpdGVtLGRhdGEpXCIgW2lubmVySFRNTF09XCJpdGVtLmtleVwiPjwvZGl2PlxyXG5cclxuICA8aW1nICpuZ1N3aXRjaENhc2U9XCInaW1hZ2UnXCIgW25nU3R5bGVdPVwiZ2V0U3R5bGVDYWxsQmFjayhpdGVtLGRhdGEpXCIgd2lkdGg9XCIzNXB4XCIgbnpTcmM9XCJ7eyhkYXRhW2l0ZW0ua2V5XSB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWwpIHwgb3NzSW1nfX1cIlxyXG4gICAgICAgbnotaW1hZ2UgYXRyRXJyb3JJbWcvPlxyXG4gIDxkaXYgbnotcm93ICpuZ1N3aXRjaENhc2U9XCInYWN0aW9uJ1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImFjdGlvbi1hcmVhXCIgbnotY29sIFtuelNwYW5dPVwiMjRcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIGl0ZW0uYWN0aW9uc1wiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1Nob3dCdG4oZGF0YSxhY3Rpb24ub3BlcmF0b3IsYWN0aW9uKVwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhY3Rpb24ud2l0aG91dFJvbGVcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBuei1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICBbbnpUeXBlXT1cImFjdGlvbi5idXR0b25UeXBlJiZhY3Rpb24uYnV0dG9uVHlwZSAhPSAnZGFuZ2VyJz8gYWN0aW9uLmJ1dHRvblR5cGUgOiAncHJpbWFyeSdcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuekRhbmdlcl09XCJhY3Rpb24uYnV0dG9uVHlwZSA9PSAnZGFuZ2VyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgbnpTaXplPVwic21hbGxcIiAqYXRyUm9sZT1cImFjdGlvbi5jb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZG9BY3Rpb25CeVJvdyhkYXRhLGFjdGlvbi5jb2RlLCRldmVudCxpKVwiPlxyXG4gICAgICAgICAgICAgIDxpIG56LWljb24gKm5nSWY9XCJhY3Rpb24uaWNvblwiIFtuelR5cGVdPVwiYWN0aW9uLmljb25cIj48L2k+XHJcbiAgICAgICAgICAgICAge3thY3Rpb24ubmFtZX19PC9idXR0b24+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhY3Rpb24ud2l0aG91dFJvbGVcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBuei1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICBbbnpUeXBlXT1cImFjdGlvbi5idXR0b25UeXBlJiZhY3Rpb24uYnV0dG9uVHlwZSAhPSAnZGFuZ2VyJz8gYWN0aW9uLmJ1dHRvblR5cGUgOiAncHJpbWFyeSdcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuekRhbmdlcl09XCJhY3Rpb24uYnV0dG9uVHlwZSA9PSAnZGFuZ2VyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgbnpTaXplPVwic21hbGxcIiAoY2xpY2spPVwiZG9BY3Rpb25CeVJvdyhkYXRhLGFjdGlvbi5jb2RlLCRldmVudCxpKVwiPlxyXG4gICAgICAgICAgICAgIDxpIG56LWljb24gKm5nSWY9XCJhY3Rpb24uaWNvblwiIFtuelR5cGVdPVwiYWN0aW9uLmljb25cIj48L2k+XHJcbiAgICAgICAgICAgICAge3thY3Rpb24ubmFtZX19PC9idXR0b24+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDwhLS0gPGJ1dHRvbiBuei1idXR0b24gW256VHlwZV09XCIncHJpbWFyeSdcIiBuelNpemU9XCJzbWFsbFwiICphdHJSb2xlPVwiYWN0aW9uLmNvZGVcIiAoY2xpY2spPVwiZG9BY3Rpb25CeVJvdyhkYXRhLGFjdGlvbi5jb2RlLCRldmVudClcIj57e2FjdGlvbi5uYW1lXHJcbiAgICAgICAgICB9fTwvYnV0dG9uPiAtLT5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IFtuZ1N0eWxlXT1cImdldFN0eWxlQ2FsbEJhY2soaXRlbSxkYXRhKVwiICpuZ1N3aXRjaENhc2U9XCInZGljdCdcIiBbaW5uZXJIVE1MXT1cImRhdGFbaXRlbS5rZXldIHwgZGljdHM6aXRlbS5kaWN0Q29kZTonLCcgfCBhc3luYyB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWxcIj48L2Rpdj5cclxuICA8ZGl2IFtuZ1N0eWxlXT1cImdldFN0eWxlQ2FsbEJhY2soaXRlbSxkYXRhKVwiIG56LXBvcG92ZXIgKG1vdXNlZW50ZXIpPVwiZW50ZXIoJGV2ZW50KVwiXHJcbiAgICAgICBbbnpQb3BvdmVyVHJpZ2dlcl09XCJwb3BvdmVyVHJpZ2dlclwiIFtuelBvcG92ZXJDb250ZW50XT0nZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsJ1xyXG4gICAgICAgY2xhc3M9XCJ2aWV3LXRleHRcIiAqbmdTd2l0Y2hEZWZhdWx0IFtpbm5lckhUTUxdPVwiZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCI+PC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG5cclxuIl19
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC90YWJsZS90YWJsZS10ZC90YWJsZS10ZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3RhYmxlL3RhYmxlLXRkL3RhYmxlLXRkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFN0UsT0FBTyxFQUFDLGdCQUFnQixFQUFxQixNQUFNLGtDQUFrQyxDQUFDO0FBQ3RGLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTzNELE1BQU0sT0FBTyxnQkFBZ0I7SUFVM0I7UUFMVSx3QkFBbUIsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3hELG1CQUFjLEdBQU8sT0FBTyxDQUFBO1FBRTVCLGdCQUFXLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDO0lBR3ZDLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxJQUFVLEVBQUMsSUFBUTtRQUNsQyxJQUFJLEtBQUssR0FBTyxFQUFFLENBQUE7UUFDbEIsSUFBRyxJQUFJLENBQUMsYUFBYSxFQUFDO1lBQ3BCLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBO1NBQ2pDO1FBQ0QsSUFBRyxJQUFJLENBQUMsS0FBSyxFQUFDO1lBQ1osS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDN0I7UUFDRCxPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUM7SUFDRCxjQUFjLENBQUMsSUFBUSxFQUFFLElB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RyxLQUFLLENBQUM7Z0JBQ2hCLE1BQU07U0FDVDtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7OzhHQXRIVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQiw2SkNWN0Isb2xKQXVFQTs0RkQ3RGEsZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNFLGNBQWM7MEVBS2YsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxDQUFDO3NCQUFULEtBQUs7Z0JBRUksbUJBQW1CO3NCQUE1QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtlbnZpcm9ubWVudH0gZnJvbSBcIm5nLXpvcnJvLWFudGQvY29yZS9lbnZpcm9ubWVudHNcIjtcclxuaW1wb3J0IHthdHJfc3RhdGljX2RhdGFzLCBUYWJsZSwgVGFibGVBY3Rpb259IGZyb20gXCIuLi8uLi8uLi8uLi9jb3JlL2Jhc2UvYXRyLWNvbW1vblwiO1xyXG5pbXBvcnQge1Rvb2xzVXRpbH0gZnJvbSBcIi4uLy4uLy4uLy4uL2NvcmUvdXRpbHMvVG9vbHNVdGlsXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC10YWJsZS10ZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLXRkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS10ZC5jb21wb25lbnQuc2NzcycsICcuLi90YWJsZS5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVRkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBkYXRhOmFueVxyXG4gIEBJbnB1dCgpIGl0ZW06IFRhYmxlIHxhbnk7XHJcbiAgQElucHV0KCkgaTphbnlcclxuXHJcbiAgQE91dHB1dCgpIGRvQWN0aW9uQnlSb3dBY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBwb3BvdmVyVHJpZ2dlcjphbnkgPSAnaG92ZXInXHJcblxyXG4gIGltYWdlUHJlZml4ID0gYXRyX3N0YXRpY19kYXRhcy5PU1NfVVJMO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcbiAgZ2V0U3R5bGVDYWxsQmFjayhpdGVtOlRhYmxlLGRhdGE6YW55KXtcclxuICAgIGxldCBzdHlsZTphbnkgPSB7fVxyXG4gICAgaWYoaXRlbS5zdHlsZUNhbGxCYWNrKXtcclxuICAgICAgc3R5bGUgPSBpdGVtLnN0eWxlQ2FsbEJhY2soZGF0YSlcclxuICAgIH1cclxuICAgIGlmKGl0ZW0uY29sb3Ipe1xyXG4gICAgICBzdHlsZVsnY29sb3InXSA9IGl0ZW0uY29sb3I7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3R5bGVcclxuICB9XHJcbiAgZG9BY3Rpb25Td2l0Y2goZGF0YTphbnksIGNvZGU6YW55LCBldmVudD86IE1vdXNlRXZlbnQsIGluZGV4PzphbnkpIHtcclxuICAgIHRoaXMuZG9BY3Rpb25CeVJvd0FjdGlvbi5lbWl0KHtkYXRhOiBkYXRhLCBjb2RlOiBjb2RlLCBldmVudDogZXZlbnQsIGluZGV4OiBpbmRleH0pXHJcbiAgfVxyXG5cclxuICBjaGFuZ2UodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIGNvbnNvbGUubG9nKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgZG9BY3Rpb25CeVJvdyhkYXRhOmFueSwgY29kZTphbnksIGV2ZW50OiBNb3VzZUV2ZW50LCBpbmRleDphbnkpIHtcclxuICAgIHRoaXMuZG9BY3Rpb25CeVJvd0FjdGlvbi5lbWl0KHtkYXRhOiBkYXRhLCBjb2RlOiBjb2RlLCBldmVudDogZXZlbnQsIGluZGV4OiBpbmRleH0pXHJcbiAgfVxyXG5cclxuICBlbnRlcihlOmFueSkge1xyXG4gICAgdGhpcy5wb3BvdmVyVHJpZ2dlciA9IGUudG9FbGVtZW50LmNsaWVudFdpZHRoIDwgZS50b0VsZW1lbnQuc2Nyb2xsV2lkdGggPyAnaG92ZXInIDogbnVsbDtcclxuICB9XHJcblxyXG4gIGlzU2hvd0J0bihkYXRhOiBhbnksIG9wZXJhdG9yOiBzdHJpbmcsIGFjdGlvbj86VGFibGVBY3Rpb24pOiBib29sZWFuIHtcclxuICAgIGxldCBpc1Nob3cgPSBmYWxzZTtcclxuICAgIGlmICghb3BlcmF0b3IgfHwgb3BlcmF0b3IgPT0gbnVsbCB8fCBvcGVyYXRvciA9PSBcIlwiKSB7XHJcbiAgICAgIGlzU2hvdyA9IHRydWU7XHJcbiAgICB9IGVsc2UgaWYgKG9wZXJhdG9yLmluZGV4T2YoJyYmJykgPiAwKSB7XHJcbiAgICAgIC8vIGF8ZXF8YiAmJmN8ZXF8ZFxyXG4gICAgICBjb25zdCBvcHMgPSBvcGVyYXRvci5zcGxpdCgnJiYnKTtcclxuICAgICAgaWYgKG9wcy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnByZWZlci1mb3Itb2ZcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9wcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgaXNTaG93ID0gdHJ1ZVxyXG4gICAgICAgICAgaWYgKCF0aGlzLmNoZWNrSXNTaG93QmFzZShvcHNbaV0uc3BsaXQoJ3wnKSwgZGF0YSkpIHtcclxuICAgICAgICAgICAgaXNTaG93ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChvcGVyYXRvci5pbmRleE9mKCd8fCcpID4gMCkge1xyXG4gICAgICAvLyBhfGVxfGJ8fGN8ZXF8ZFxyXG4gICAgICBjb25zdCBvcHMgPSBvcGVyYXRvci5zcGxpdCgnfHwnKTtcclxuICAgICAgaWYgKG9wcy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvcHMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGlzU2hvdyA9IGZhbHNlO1xyXG4gICAgICAgICAgaWYgKHRoaXMuY2hlY2tJc1Nob3dCYXNlKG9wc1tpXS5zcGxpdCgnfCcpLCBkYXRhKSkge1xyXG4gICAgICAgICAgICBpc1Nob3cgPSB0cnVlO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxldCBvcCA9IG9wZXJhdG9yLnNwbGl0KFwifFwiKTtcclxuICAgICAgaXNTaG93ID0gdGhpcy5jaGVja0lzU2hvd0Jhc2Uob3AsIGRhdGEpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGlzU2hvdztcclxuICB9XHJcblxyXG4gIGNoZWNrSXNTaG93QmFzZShvcDphbnksIGRhdGE6YW55KTogYm9vbGVhbiB7XHJcbiAgICBsZXQgaXNTaG93ID0gZmFsc2U7XHJcbiAgICBpZiAob3AubGVuZ3RoID4gMSkge1xyXG4gICAgICBsZXQgdmFsdWUgPSBkYXRhW29wWzBdXTtcclxuICAgICAgaXNTaG93ID0gdGhpcy5jb21wYXJlKHZhbHVlLCBvcFsxXSwgb3BbMl0pXHJcbiAgICB9IGVsc2V7XHJcbiAgICAgIGlzU2hvdyA9IGZhbHNlXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGlzU2hvdztcclxuICB9XHJcblxyXG4gIGNvbXBhcmUodmFsdWU6YW55LCBvcGVyYXRvcjphbnksIHRhcmdldDphbnkpOiBib29sZWFuIHtcclxuICAgIGxldCBpc1JpZ2h0ID0gZmFsc2U7XHJcbiAgICBzd2l0Y2ggKG9wZXJhdG9yKSB7XHJcbiAgICAgIGNhc2UgJ2VxJyA6XHJcbiAgICAgICAgaWYgKHZhbHVlID09IHRhcmdldCkge1xyXG4gICAgICAgICAgaXNSaWdodCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdnaCcgOlxyXG4gICAgICAgIGlmICh2YWx1ZSA+PSB0YXJnZXQpIHtcclxuICAgICAgICAgIGlzUmlnaHQgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnbmUnOlxyXG4gICAgICAgIGlmICh2YWx1ZSAhPSB0YXJnZXQpIHtcclxuICAgICAgICAgIGlzUmlnaHQgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBicmVha1xyXG4gICAgICBjYXNlICdub3RFbXB0eSc6XHJcbiAgICAgICAgaXNSaWdodCA9ICFUb29sc1V0aWwuaXNFbXB0eSh2YWx1ZSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2VtcHR5JzpcclxuICAgICAgICBpc1JpZ2h0ID0gVG9vbHNVdGlsLmlzRW1wdHkodmFsdWUpXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGRlZmF1bHQgOlxyXG4gICAgICAgIGlzUmlnaHQgPSBmYWxzZTtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICAgIHJldHVybiBpc1JpZ2h0O1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiaXRlbS50eXBlXCI+XHJcblxyXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidpbm5lckh0bWwnXCI+XHJcbiAgICA8ZGl2IFtuZ1N0eWxlXT1cImdldFN0eWxlQ2FsbEJhY2soaXRlbSxkYXRhKVwiIFtpbm5lckhUTUxdPVwiaXRlbS5pbm5lckh0bWxCYWNrKGRhdGFbaXRlbS5rZXldIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbCxkYXRhKSB8IHNhZmVIdG1sXCIgID48L2Rpdj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIndGV4dGNvbG9yJ1wiPlxyXG4gICAgPGRpdiBbaW5uZXJIVE1MXT1cImRhdGFbaXRlbS5rZXldIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbFwiIFtuZ1N0eWxlXT1cInsnY29sb3InOml0ZW0uY29sb3J9XCJcclxuICAgICAgICAgKm5nSWY9XCJpdGVtLmNvbG9yU2hvdyA9PSBkYXRhW2l0ZW0ua2V5XVwiPjwvZGl2PlxyXG4gICAgPGRpdiBbaW5uZXJIVE1MXT1cImRhdGFbaXRlbS5rZXldIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbFwiICpuZ0lmPVwiaXRlbS5jb2xvclNob3cgIT0gZGF0YVtpdGVtLmtleV1cIj48L2Rpdj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZGF0ZSdcIj5cclxuICAgICAgIDxzcGFuIG56LXBvcG92ZXIgKG1vdXNlZW50ZXIpPVwiZW50ZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICBbbnpQb3BvdmVyVHJpZ2dlcl09XCJwb3BvdmVyVHJpZ2dlclwiXHJcbiAgICAgICAgICAgICBbbmdTdHlsZV09XCJnZXRTdHlsZUNhbGxCYWNrKGl0ZW0sZGF0YSlcIlxyXG4gICAgICAgICAgICAgW256UG9wb3ZlckNvbnRlbnRdPVwiZGF0YVtpdGVtLmtleV0gfCBkYXRlOid5eXl5LU1NLWRkJyB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWxcIlxyXG4gICAgICAgICAgICAgY2xhc3M9XCJ2aWV3LXRleHRcIj57eyBkYXRhW2l0ZW0ua2V5XSB8IGRhdGU6J3l5eXktTU0tZGQnIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbH19PC9zcGFuPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidkYXRlVGltZSdcIj5cclxuICAgICAgPHNwYW4gbnotcG9wb3ZlciAobW91c2VlbnRlcik9XCJlbnRlcigkZXZlbnQpXCJcclxuICAgICAgICAgICAgW256UG9wb3ZlclRyaWdnZXJdPVwicG9wb3ZlclRyaWdnZXJcIlxyXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJnZXRTdHlsZUNhbGxCYWNrKGl0ZW0sZGF0YSlcIlxyXG4gICAgICAgICAgICBbbnpQb3BvdmVyQ29udGVudF09XCJkYXRhW2l0ZW0ua2V5XSB8IGRhdGU6J3l5eXktTU0tZGQgSEg6bW06c3MnIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidmlldy10ZXh0XCI+IHt7IGRhdGFbaXRlbS5rZXldIHwgZGF0ZToneXl5eS1NTS1kZCBISDptbTpzcycgfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsfX08L3NwYW4+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbiAgPG56LXN3aXRjaCAqbmdTd2l0Y2hDYXNlPVwiJ3N3aXRjaCdcIiBbKG5nTW9kZWwpXT1cImRhdGFbaXRlbS5rZXldXCIgW256RGlzYWJsZWRdPVwiaXRlbS5kaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICBbbmdTdHlsZV09XCJnZXRTdHlsZUNhbGxCYWNrKGl0ZW0sZGF0YSlcIlxyXG4gICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiZG9BY3Rpb25Td2l0Y2goZGF0YSxpdGVtLmtleSlcIiBuekNoZWNrZWRDaGlsZHJlbj1cIuaYr1wiIG56VW5DaGVja2VkQ2hpbGRyZW49XCLlkKZcIj5cclxuICA8L256LXN3aXRjaD5cclxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInc0RhdGVUaW1lJ1wiPlxyXG4gICAgICA8c3BhbiBuei1wb3BvdmVyIChtb3VzZWVudGVyKT1cImVudGVyKCRldmVudClcIlxyXG4gICAgICAgICAgICBbbnpQb3BvdmVyVHJpZ2dlcl09XCJwb3BvdmVyVHJpZ2dlclwiIFtuZ1N0eWxlXT1cImdldFN0eWxlQ2FsbEJhY2soaXRlbSxkYXRhKVwiXHJcbiAgICAgICAgICAgIFtuelBvcG92ZXJDb250ZW50XT1cImRhdGFbaXRlbS5rZXldIHwgZGF0ZTonTU0tZGQgSEg6bW0nIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidmlldy10ZXh0XCI+ICB7eyBkYXRhW2l0ZW0ua2V5XSB8IGRhdGU6J01NLWRkIEhIOm1tJyB8IGRlZlZhbDppdGVtLmRlZmF1bHRWYWx9fTwvc3Bhbj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInZml4ZWRUZXh0J1wiIFtuZ1N0eWxlXT1cImdldFN0eWxlQ2FsbEJhY2soaXRlbSxkYXRhKVwiIFtpbm5lckhUTUxdPVwiaXRlbS5rZXlcIj48L2Rpdj5cclxuXHJcbiAgPGltZyAqbmdTd2l0Y2hDYXNlPVwiJ2ltYWdlJ1wiIFtuZ1N0eWxlXT1cImdldFN0eWxlQ2FsbEJhY2soaXRlbSxkYXRhKVwiIHdpZHRoPVwiMzVweFwiIG56U3JjPVwie3soZGF0YVtpdGVtLmtleV0gfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsKSB8IG9zc0ltZ319XCJcclxuICAgICAgIG56LWltYWdlIGF0ckVycm9ySW1nLz5cclxuICA8ZGl2IG56LXJvdyAqbmdTd2l0Y2hDYXNlPVwiJ2FjdGlvbidcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tYXJlYVwiIG56LWNvbCBbbnpTcGFuXT1cIjI0XCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBpdGVtLmFjdGlvbnNcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNTaG93QnRuKGRhdGEsYWN0aW9uLm9wZXJhdG9yLGFjdGlvbilcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhYWN0aW9uLndpdGhvdXRSb2xlXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gbnotYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgW256VHlwZV09XCJhY3Rpb24uYnV0dG9uVHlwZSYmYWN0aW9uLmJ1dHRvblR5cGUgIT0gJ2Rhbmdlcic/IGFjdGlvbi5idXR0b25UeXBlIDogJ3ByaW1hcnknXCJcclxuICAgICAgICAgICAgICAgICAgICBbbnpEYW5nZXJdPVwiYWN0aW9uLmJ1dHRvblR5cGUgPT0gJ2RhbmdlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgIG56U2l6ZT1cInNtYWxsXCIgKmF0clJvbGU9XCJhY3Rpb24uY29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRvQWN0aW9uQnlSb3coZGF0YSxhY3Rpb24uY29kZSwkZXZlbnQsaSlcIj5cclxuICAgICAgICAgICAgICA8aSBuei1pY29uICpuZ0lmPVwiYWN0aW9uLmljb25cIiBbbnpUeXBlXT1cImFjdGlvbi5pY29uXCI+PC9pPlxyXG4gICAgICAgICAgICAgIHt7YWN0aW9uLm5hbWV9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWN0aW9uLndpdGhvdXRSb2xlXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gbnotYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgW256VHlwZV09XCJhY3Rpb24uYnV0dG9uVHlwZSYmYWN0aW9uLmJ1dHRvblR5cGUgIT0gJ2Rhbmdlcic/IGFjdGlvbi5idXR0b25UeXBlIDogJ3ByaW1hcnknXCJcclxuICAgICAgICAgICAgICAgICAgICBbbnpEYW5nZXJdPVwiYWN0aW9uLmJ1dHRvblR5cGUgPT0gJ2RhbmdlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgIG56U2l6ZT1cInNtYWxsXCIgKGNsaWNrKT1cImRvQWN0aW9uQnlSb3coZGF0YSxhY3Rpb24uY29kZSwkZXZlbnQsaSlcIj5cclxuICAgICAgICAgICAgICA8aSBuei1pY29uICpuZ0lmPVwiYWN0aW9uLmljb25cIiBbbnpUeXBlXT1cImFjdGlvbi5pY29uXCI+PC9pPlxyXG4gICAgICAgICAgICAgIHt7YWN0aW9uLm5hbWV9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8IS0tIDxidXR0b24gbnotYnV0dG9uIFtuelR5cGVdPVwiJ3ByaW1hcnknXCIgbnpTaXplPVwic21hbGxcIiAqYXRyUm9sZT1cImFjdGlvbi5jb2RlXCIgKGNsaWNrKT1cImRvQWN0aW9uQnlSb3coZGF0YSxhY3Rpb24uY29kZSwkZXZlbnQpXCI+e3thY3Rpb24ubmFtZVxyXG4gICAgICAgICAgfX08L2J1dHRvbj4gLS0+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBbbmdTdHlsZV09XCJnZXRTdHlsZUNhbGxCYWNrKGl0ZW0sZGF0YSlcIiAqbmdTd2l0Y2hDYXNlPVwiJ2RpY3QnXCIgW2lubmVySFRNTF09XCJkYXRhW2l0ZW0ua2V5XSB8IGRpY3RzOml0ZW0uZGljdENvZGU6JywnIHwgYXN5bmMgfCBkZWZWYWw6aXRlbS5kZWZhdWx0VmFsXCI+PC9kaXY+XHJcbiAgPGRpdiBbbmdTdHlsZV09XCJnZXRTdHlsZUNhbGxCYWNrKGl0ZW0sZGF0YSlcIiBuei1wb3BvdmVyIChtb3VzZWVudGVyKT1cImVudGVyKCRldmVudClcIlxyXG4gICAgICAgW256UG9wb3ZlclRyaWdnZXJdPVwicG9wb3ZlclRyaWdnZXJcIiBbbnpQb3BvdmVyQ29udGVudF09J2RhdGFbaXRlbS5rZXldIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbCdcclxuICAgICAgIGNsYXNzPVwidmlldy10ZXh0XCIgKm5nU3dpdGNoRGVmYXVsdCBbaW5uZXJIVE1MXT1cImRhdGFbaXRlbS5rZXldIHwgZGVmVmFsOml0ZW0uZGVmYXVsdFZhbFwiPjwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuXHJcbiJdfQ==
@@ -611,6 +611,24 @@ class ToolsUtil {
611
611
  static allEmpty(...arr) {
612
612
  return arr.every(item => !item);
613
613
  }
614
+ static isEmpty(obj) {
615
+ if (obj === undefined) {
616
+ return true;
617
+ }
618
+ if (obj === null) {
619
+ return true;
620
+ }
621
+ if (typeof obj == 'boolean') {
622
+ return false;
623
+ }
624
+ if (obj === 0) {
625
+ return false;
626
+ }
627
+ if (obj.trim() === '') {
628
+ return true;
629
+ }
630
+ return false;
631
+ }
614
632
  static encodeValue(params) {
615
633
  Object.keys(params).forEach(key => params[key] = encodeURIComponent(params[key]));
616
634
  return params;
@@ -624,6 +642,46 @@ class ToolsUtil {
624
642
  static modaleStyle() {
625
643
  return { 'maxHeight': ToolsUtil.windowHeight() - 200 + 'px', 'overflow-y': 'auto' };
626
644
  }
645
+ static getLength(pointA, pointB) {
646
+ var lengthAB = Math.sqrt(Math.pow(pointA.x1 - pointB.x1, 2) +
647
+ Math.pow(pointA.y1 - pointB.y1, 2));
648
+ return lengthAB;
649
+ }
650
+ static getRotateNum(pointB, pointC, pointA) {
651
+ //ABC中心点,起始点,终点
652
+ let AB = {};
653
+ let AC = {};
654
+ AB.x1 = pointB.x1 - pointA.x1;
655
+ AB.y1 = pointB.y1 - pointA.y1;
656
+ AC.x1 = pointC.x1 - pointA.x1;
657
+ AC.y1 = pointC.y1 - pointA.y1;
658
+ var direct = AB.x1 * AC.y1 - AB.y1 * AC.y1;
659
+ var lengthAB = this.getLength(pointB, pointA);
660
+ var lengthAC = this.getLength(pointC, pointA);
661
+ var lengthBC = this.getLength(pointB, pointC);
662
+ var cosA = (Math.pow(lengthAB, 2) + Math.pow(lengthAC, 2) -
663
+ Math.pow(lengthBC, 2)) / (2 * lengthAB * lengthAC);
664
+ var angleA = Math.round(Math.acos(cosA) * 180 / Math.PI);
665
+ if (direct < 0) {
666
+ return -angleA;
667
+ }
668
+ else {
669
+ return angleA;
670
+ }
671
+ }
672
+ //绕center点旋转rotate角度
673
+ static getRotatePoint(p, center, rotate) {
674
+ let startX = p.x1;
675
+ let startY = p.y1;
676
+ let a = center.x1;
677
+ let b = center.y1;
678
+ let x1 = a - Math.cos(rotate * Math.PI / 180) * (a - startX) + Math.sin(rotate * Math.PI / 180) * (b - startY);
679
+ let y1 = b - Math.cos(rotate * Math.PI / 180) * (b - startY) - Math.sin(rotate * Math.PI / 180) * (a - startX);
680
+ return {
681
+ x1: x1,
682
+ y1: y1
683
+ };
684
+ }
627
685
  }
628
686
  ToolsUtil.getOrgCode = function () {
629
687
  // var orgCode = '';
@@ -2576,15 +2634,11 @@ class TableTdComponent {
2576
2634
  let isShow = false;
2577
2635
  if (op.length > 1) {
2578
2636
  let value = data[op[0]];
2579
- if (!value) {
2580
- isShow = false;
2581
- }
2582
- else {
2583
- isShow = this.compare(value, op[1], op[2]);
2584
- }
2637
+ isShow = this.compare(value, op[1], op[2]);
2585
2638
  }
2586
- else
2639
+ else {
2587
2640
  isShow = false;
2641
+ }
2588
2642
  return isShow;
2589
2643
  }
2590
2644
  compare(value, operator, target) {
@@ -2606,16 +2660,10 @@ class TableTdComponent {
2606
2660
  }
2607
2661
  break;
2608
2662
  case 'notEmpty':
2609
- isRight = false;
2610
- if (value) {
2611
- isRight = true;
2612
- }
2663
+ isRight = !ToolsUtil.isEmpty(value);
2613
2664
  break;
2614
2665
  case 'empty':
2615
- isRight = true;
2616
- if (!!value) {
2617
- isRight = false;
2618
- }
2666
+ isRight = ToolsUtil.isEmpty(value);
2619
2667
  break;
2620
2668
  default:
2621
2669
  isRight = false;
@@ -4695,6 +4743,9 @@ class AtrFormComponent {
4695
4743
  return obj;
4696
4744
  }
4697
4745
  showTime(item) {
4746
+ if (item.nzShowTime) {
4747
+ return item.nzShowTime;
4748
+ }
4698
4749
  if (!item.dateFormat || item.dateFormat == "yyyy-MM-dd") {
4699
4750
  return false;
4700
4751
  }