taxtank-core 0.16.10 → 0.16.11

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.
@@ -21,6 +21,9 @@ export class IncomeSourceCollection extends Collection {
21
21
  filterByTypes(types) {
22
22
  return this.items.filter((incomeSource) => types.includes(incomeSource.type));
23
23
  }
24
+ getSalary() {
25
+ return this.items.filter((incomeSource) => incomeSource.isSalaryIncome());
26
+ }
24
27
  /**
25
28
  * Get income sources list of forecasts
26
29
  */
@@ -28,4 +31,4 @@ export class IncomeSourceCollection extends Collection {
28
31
  return this.items.map((incomeSource) => incomeSource.forecasts).flat();
29
32
  }
30
33
  }
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2luY29tZS1zb3VyY2UuY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUkxRDs7R0FFRztBQUNILE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxVQUF3QjtJQUNsRSxZQUFZLENBQUMsSUFBa0I7UUFDN0IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQTBCLEVBQUUsRUFBRTtZQUN0RCxRQUFRLElBQUksRUFBRTtnQkFDWixLQUFLLFlBQVksQ0FBQyxLQUFLO29CQUNyQixPQUFPLFlBQVksQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDdEM7b0JBQ0UsT0FBTyxZQUFZLENBQUMsY0FBYyxFQUFFLElBQUksWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO2FBQ3ZFO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsYUFBYSxDQUFDLEtBQTZCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUEwQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzlGLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxZQUEwQixFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkYsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4vY29sbGVjdGlvbic7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2UgfSBmcm9tICcuLi9tb2RlbHMvaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlJztcbmltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uL2RiL0VudW1zL3RhbmstdHlwZS5lbnVtJztcbmltcG9ydCB7IEluY29tZVNvdXJjZVR5cGVFbnVtIH0gZnJvbSAnLi4vZGIvRW51bXMvaW5jb21lLXNvdXJjZS10eXBlLmVudW0nO1xuaW1wb3J0IHsgSUluY29tZVNvdXJjZUZvcmVjYXN0IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9pbmNvbWUtc291cmNlLWZvcmVjYXN0LmludGVyZmFjZSc7XG5cbi8qKlxuICogQ29sbGVjdGlvbiBvZiBpbmNvbWUgc291cmNlc1xuICovXG5leHBvcnQgY2xhc3MgSW5jb21lU291cmNlQ29sbGVjdGlvbiBleHRlbmRzIENvbGxlY3Rpb248SW5jb21lU291cmNlPiB7XG4gIGZpbHRlckJ5VGFuayh0YW5rOiBUYW5rVHlwZUVudW0pOiBJbmNvbWVTb3VyY2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmlsdGVyKChpbmNvbWVTb3VyY2U6IEluY29tZVNvdXJjZSkgPT4ge1xuICAgICAgc3dpdGNoICh0YW5rKSB7XG4gICAgICAgIGNhc2UgVGFua1R5cGVFbnVtLk9USEVSOlxuICAgICAgICAgIHJldHVybiBpbmNvbWVTb3VyY2UuaXNPdGhlckluY29tZSgpO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJldHVybiBpbmNvbWVTb3VyY2UuaXNTYWxhcnlJbmNvbWUoKSB8fCBpbmNvbWVTb3VyY2UuaXNXb3JrSW5jb21lKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRmlsdGVyIGluY29tZSBzb3VyY2VzIGJ5IHByb3ZpZGVkIHR5b2VzXG4gICAqIEBwYXJhbSB0eXBlc1xuICAgKi9cbiAgZmlsdGVyQnlUeXBlcyh0eXBlczogSW5jb21lU291cmNlVHlwZUVudW1bXSk6IEluY29tZVNvdXJjZVtdIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maWx0ZXIoKGluY29tZVNvdXJjZTogSW5jb21lU291cmNlKSA9PiB0eXBlcy5pbmNsdWRlcyhpbmNvbWVTb3VyY2UudHlwZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBpbmNvbWUgc291cmNlcyBsaXN0IG9mIGZvcmVjYXN0c1xuICAgKi9cbiAgZ2V0IGZvcmVjYXN0cygpOiBJSW5jb21lU291cmNlRm9yZWNhc3RbXSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMubWFwKChpbmNvbWVTb3VyY2U6IEluY29tZVNvdXJjZSkgPT4gaW5jb21lU291cmNlLmZvcmVjYXN0cykuZmxhdCgpO1xuICB9XG59XG4iXX0=
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2luY29tZS1zb3VyY2UuY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUkxRDs7R0FFRztBQUNILE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxVQUF3QjtJQUNsRSxZQUFZLENBQUMsSUFBa0I7UUFDN0IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQTBCLEVBQUUsRUFBRTtZQUN0RCxRQUFRLElBQUksRUFBRTtnQkFDWixLQUFLLFlBQVksQ0FBQyxLQUFLO29CQUNyQixPQUFPLFlBQVksQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDdEM7b0JBQ0UsT0FBTyxZQUFZLENBQUMsY0FBYyxFQUFFLElBQUksWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO2FBQ3ZFO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsYUFBYSxDQUFDLEtBQTZCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUEwQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzlGLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQTBCLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQzFGLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxZQUEwQixFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkYsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4vY29sbGVjdGlvbic7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2UgfSBmcm9tICcuLi9tb2RlbHMvaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlJztcbmltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uL2RiL0VudW1zL3RhbmstdHlwZS5lbnVtJztcbmltcG9ydCB7IEluY29tZVNvdXJjZVR5cGVFbnVtIH0gZnJvbSAnLi4vZGIvRW51bXMvaW5jb21lLXNvdXJjZS10eXBlLmVudW0nO1xuaW1wb3J0IHsgSUluY29tZVNvdXJjZUZvcmVjYXN0IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9pbmNvbWUtc291cmNlLWZvcmVjYXN0LmludGVyZmFjZSc7XG5cbi8qKlxuICogQ29sbGVjdGlvbiBvZiBpbmNvbWUgc291cmNlc1xuICovXG5leHBvcnQgY2xhc3MgSW5jb21lU291cmNlQ29sbGVjdGlvbiBleHRlbmRzIENvbGxlY3Rpb248SW5jb21lU291cmNlPiB7XG4gIGZpbHRlckJ5VGFuayh0YW5rOiBUYW5rVHlwZUVudW0pOiBJbmNvbWVTb3VyY2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmlsdGVyKChpbmNvbWVTb3VyY2U6IEluY29tZVNvdXJjZSkgPT4ge1xuICAgICAgc3dpdGNoICh0YW5rKSB7XG4gICAgICAgIGNhc2UgVGFua1R5cGVFbnVtLk9USEVSOlxuICAgICAgICAgIHJldHVybiBpbmNvbWVTb3VyY2UuaXNPdGhlckluY29tZSgpO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJldHVybiBpbmNvbWVTb3VyY2UuaXNTYWxhcnlJbmNvbWUoKSB8fCBpbmNvbWVTb3VyY2UuaXNXb3JrSW5jb21lKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRmlsdGVyIGluY29tZSBzb3VyY2VzIGJ5IHByb3ZpZGVkIHR5b2VzXG4gICAqIEBwYXJhbSB0eXBlc1xuICAgKi9cbiAgZmlsdGVyQnlUeXBlcyh0eXBlczogSW5jb21lU291cmNlVHlwZUVudW1bXSk6IEluY29tZVNvdXJjZVtdIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maWx0ZXIoKGluY29tZVNvdXJjZTogSW5jb21lU291cmNlKSA9PiB0eXBlcy5pbmNsdWRlcyhpbmNvbWVTb3VyY2UudHlwZSkpO1xuICB9XG5cbiAgZ2V0U2FsYXJ5KCk6IEluY29tZVNvdXJjZVtdIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maWx0ZXIoKGluY29tZVNvdXJjZTogSW5jb21lU291cmNlKSA9PiBpbmNvbWVTb3VyY2UuaXNTYWxhcnlJbmNvbWUoKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGluY29tZSBzb3VyY2VzIGxpc3Qgb2YgZm9yZWNhc3RzXG4gICAqL1xuICBnZXQgZm9yZWNhc3RzKCk6IElJbmNvbWVTb3VyY2VGb3JlY2FzdFtdIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5tYXAoKGluY29tZVNvdXJjZTogSW5jb21lU291cmNlKSA9PiBpbmNvbWVTb3VyY2UuZm9yZWNhc3RzKS5mbGF0KCk7XG4gIH1cbn1cbiJdfQ==
@@ -5,4 +5,4 @@ export var IncomeSourceTypeListOtherEnum;
5
5
  IncomeSourceTypeListOtherEnum[IncomeSourceTypeListOtherEnum["PARTNERSHIPS_AND_TRUSTS"] = 9] = "PARTNERSHIPS_AND_TRUSTS";
6
6
  IncomeSourceTypeListOtherEnum[IncomeSourceTypeListOtherEnum["OTHER_INCOME"] = 10] = "OTHER_INCOME";
7
7
  })(IncomeSourceTypeListOtherEnum || (IncomeSourceTypeListOtherEnum = {}));
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS10eXBlLWxpc3Qtb3RoZXIuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9kYi9FbnVtcy9pbmNvbWUtc291cmNlLXR5cGUtbGlzdC1vdGhlci5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLDZCQUtYO0FBTEQsV0FBWSw2QkFBNkI7SUFDeEMsK0VBQU8sQ0FBQTtJQUNQLCtGQUFlLENBQUE7SUFDZix1SEFBMkIsQ0FBQTtJQUMzQixrR0FBaUIsQ0FBQTtBQUNsQixDQUFDLEVBTFcsNkJBQTZCLEtBQTdCLDZCQUE2QixRQUt4QyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEluY29tZVNvdXJjZVR5cGVMaXN0T3RoZXJFbnVtIHtcblx0UFNJID0gNixcblx0U09MRV9UUkFERVIgPSA3LFxuXHRQQVJUTkVSU0hJUFNfQU5EX1RSVVNUUyA9IDksXG5cdE9USEVSX0lOQ09NRSA9IDEwLFxufSJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS10eXBlLWxpc3Qtb3RoZXIuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9kYi9FbnVtcy9pbmNvbWUtc291cmNlLXR5cGUtbGlzdC1vdGhlci5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLDZCQUtYO0FBTEQsV0FBWSw2QkFBNkI7SUFDdkMsK0VBQU8sQ0FBQTtJQUNQLCtGQUFlLENBQUE7SUFDZix1SEFBMkIsQ0FBQTtJQUMzQixrR0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBTFcsNkJBQTZCLEtBQTdCLDZCQUE2QixRQUt4QyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEluY29tZVNvdXJjZVR5cGVMaXN0T3RoZXJFbnVtIHtcbiAgUFNJID0gNixcbiAgU09MRV9UUkFERVIgPSA3LFxuICBQQVJUTkVSU0hJUFNfQU5EX1RSVVNUUyA9IDksXG4gIE9USEVSX0lOQ09NRSA9IDEwLFxufVxuIl19
@@ -1,5 +1,6 @@
1
1
  export var IncomeSourceTypeListWorkEnum;
2
2
  (function (IncomeSourceTypeListWorkEnum) {
3
+ IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["BONUSES"] = 1] = "BONUSES";
3
4
  IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["DIRECTOR_FEES"] = 2] = "DIRECTOR_FEES";
4
5
  IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["DIVIDENDS"] = 3] = "DIVIDENDS";
5
6
  IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["INTEREST"] = 4] = "INTEREST";
@@ -7,4 +8,4 @@ export var IncomeSourceTypeListWorkEnum;
7
8
  IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["SUPERANNUATION"] = 8] = "SUPERANNUATION";
8
9
  IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["ATTRIBUTED_P_S_I"] = 11] = "ATTRIBUTED_P_S_I";
9
10
  })(IncomeSourceTypeListWorkEnum || (IncomeSourceTypeListWorkEnum = {}));
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS10eXBlLWxpc3Qtd29yay5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS1saXN0LXdvcmsuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSw0QkFPWDtBQVBELFdBQVksNEJBQTRCO0lBQ3RDLGlHQUFpQixDQUFBO0lBQ2pCLHlGQUFhLENBQUE7SUFDYix1RkFBWSxDQUFBO0lBQ1oscUhBQTJCLENBQUE7SUFDM0IsbUdBQWtCLENBQUE7SUFDbEIsd0dBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQVBXLDRCQUE0QixLQUE1Qiw0QkFBNEIsUUFPdkMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBJbmNvbWVTb3VyY2VUeXBlTGlzdFdvcmtFbnVtIHtcbiAgRElSRUNUT1JfRkVFUyA9IDIsXG4gIERJVklERU5EUyA9IDMsXG4gIElOVEVSRVNUID0gNCxcbiAgUEVOU0lPTlNfQU5EX0FMTE9XQU5DRVMgPSA1LFxuICBTVVBFUkFOTlVBVElPTiA9IDgsXG4gIEFUVFJJQlVURURfUF9TX0kgPSAxMSxcbn1cbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS10eXBlLWxpc3Qtd29yay5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS1saXN0LXdvcmsuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSw0QkFRWDtBQVJELFdBQVksNEJBQTRCO0lBQ3RDLHFGQUFXLENBQUE7SUFDWCxpR0FBaUIsQ0FBQTtJQUNqQix5RkFBYSxDQUFBO0lBQ2IsdUZBQVksQ0FBQTtJQUNaLHFIQUEyQixDQUFBO0lBQzNCLG1HQUFrQixDQUFBO0lBQ2xCLHdHQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFSVyw0QkFBNEIsS0FBNUIsNEJBQTRCLFFBUXZDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gSW5jb21lU291cmNlVHlwZUxpc3RXb3JrRW51bSB7XG4gIEJPTlVTRVMgPSAxLFxuICBESVJFQ1RPUl9GRUVTID0gMixcbiAgRElWSURFTkRTID0gMyxcbiAgSU5URVJFU1QgPSA0LFxuICBQRU5TSU9OU19BTkRfQUxMT1dBTkNFUyA9IDUsXG4gIFNVUEVSQU5OVUFUSU9OID0gOCxcbiAgQVRUUklCVVRFRF9QX1NfSSA9IDExLFxufVxuIl19
@@ -1,8 +1,7 @@
1
1
  export var IncomeSourceTypeEnum;
2
2
  (function (IncomeSourceTypeEnum) {
3
- IncomeSourceTypeEnum[IncomeSourceTypeEnum["SALARY"] = 1] = "SALARY";
4
- IncomeSourceTypeEnum[IncomeSourceTypeEnum["WORK"] = 2] = "WORK";
3
+ IncomeSourceTypeEnum[IncomeSourceTypeEnum["WORK"] = 1] = "WORK";
4
+ IncomeSourceTypeEnum[IncomeSourceTypeEnum["SOLE"] = 2] = "SOLE";
5
5
  IncomeSourceTypeEnum[IncomeSourceTypeEnum["OTHER"] = 3] = "OTHER";
6
- IncomeSourceTypeEnum[IncomeSourceTypeEnum["SOLE"] = 4] = "SOLE";
7
6
  })(IncomeSourceTypeEnum || (IncomeSourceTypeEnum = {}));
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZGIvRW51bXMvaW5jb21lLXNvdXJjZS10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksb0JBS1g7QUFMRCxXQUFZLG9CQUFvQjtJQUM5QixtRUFBVSxDQUFBO0lBQ1YsK0RBQVEsQ0FBQTtJQUNSLGlFQUFTLENBQUE7SUFDVCwrREFBUSxDQUFBO0FBQ1YsQ0FBQyxFQUxXLG9CQUFvQixLQUFwQixvQkFBb0IsUUFLL0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBJbmNvbWVTb3VyY2VUeXBlRW51bSB7XG4gIFNBTEFSWSA9IDEsXG4gIFdPUksgPSAyLFxuICBPVEhFUiA9IDMsXG4gIFNPTEUgPSA0XG59XG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZGIvRW51bXMvaW5jb21lLXNvdXJjZS10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksb0JBSVg7QUFKRCxXQUFZLG9CQUFvQjtJQUM5QiwrREFBUSxDQUFBO0lBQ1IsK0RBQVEsQ0FBQTtJQUNSLGlFQUFTLENBQUE7QUFDWCxDQUFDLEVBSlcsb0JBQW9CLEtBQXBCLG9CQUFvQixRQUkvQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEluY29tZVNvdXJjZVR5cGVFbnVtIHtcbiAgV09SSyA9IDEsXG4gIFNPTEUgPSAyLFxuICBPVEhFUiA9IDMsXG59XG4iXX0=
@@ -1,11 +1,10 @@
1
1
  import { IncomeSourceType as IncomeSourceTypeBase } from '../../db/Models/incomeSource/income-source-type';
2
- import { IncomeSourceTypeListSalaryEnum } from '../../db/Enums/income-source-type-list-salary.enum';
3
2
  import { IncomeSourceTypeListWorkEnum } from '../../db/Enums/income-source-type-list-work.enum';
4
3
  import { IncomeSourceTypeListOtherEnum } from '../../db/Enums/income-source-type-list-other.enum';
5
4
  import { IncomeSourceTypeEnum } from '../../db/Enums/income-source-type.enum';
6
5
  export class IncomeSourceType extends IncomeSourceTypeBase {
7
- isSalary() {
8
- return !!IncomeSourceTypeListSalaryEnum[this.id];
6
+ isBonuses() {
7
+ return this.id === IncomeSourceTypeListWorkEnum.BONUSES;
9
8
  }
10
9
  isWork() {
11
10
  return !!IncomeSourceTypeListWorkEnum[this.id];
@@ -14,12 +13,11 @@ export class IncomeSourceType extends IncomeSourceTypeBase {
14
13
  return !!IncomeSourceTypeListOtherEnum[this.id];
15
14
  }
16
15
  isSole() {
16
+ // @TODO use IncomeSourceTypeListSoleEnum when sole tank ready
17
17
  return !!IncomeSourceTypeListOtherEnum[this.id];
18
18
  }
19
19
  get type() {
20
20
  switch (true) {
21
- case this.isSalary():
22
- return IncomeSourceTypeEnum.SALARY;
23
21
  case this.isWork():
24
22
  return IncomeSourceTypeEnum.WORK;
25
23
  case this.isSole():
@@ -29,4 +27,4 @@ export class IncomeSourceType extends IncomeSourceTypeBase {
29
27
  }
30
28
  }
31
29
  }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UtdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLElBQUksb0JBQW9CLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMzRyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUNwRyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUNoRyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUU5RSxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsb0JBQW9CO0lBQ3hELFFBQVE7UUFDTixPQUFPLENBQUMsQ0FBQyw4QkFBOEIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLENBQUMsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLENBQUMsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLFFBQVEsSUFBSSxFQUFFO1lBQ1osS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNsQixPQUFPLG9CQUFvQixDQUFDLE1BQU0sQ0FBQztZQUNyQyxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ2hCLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDO1lBQ25DLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDaEIsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUM7WUFDbkM7Z0JBQ0UsT0FBTyxvQkFBb0IsQ0FBQyxLQUFLLENBQUM7U0FDckM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmNvbWVTb3VyY2VUeXBlIGFzIEluY29tZVNvdXJjZVR5cGVCYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL2luY29tZVNvdXJjZS9pbmNvbWUtc291cmNlLXR5cGUnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZUxpc3RTYWxhcnlFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvaW5jb21lLXNvdXJjZS10eXBlLWxpc3Qtc2FsYXJ5LmVudW0nO1xuaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZUxpc3RXb3JrRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS1saXN0LXdvcmsuZW51bSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VUeXBlTGlzdE90aGVyRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS1saXN0LW90aGVyLmVudW0nO1xuaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9pbmNvbWUtc291cmNlLXR5cGUuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBJbmNvbWVTb3VyY2VUeXBlIGV4dGVuZHMgSW5jb21lU291cmNlVHlwZUJhc2Uge1xuICBpc1NhbGFyeSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISFJbmNvbWVTb3VyY2VUeXBlTGlzdFNhbGFyeUVudW1bdGhpcy5pZF07XG4gIH1cblxuICBpc1dvcmsoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhSW5jb21lU291cmNlVHlwZUxpc3RXb3JrRW51bVt0aGlzLmlkXTtcbiAgfVxuXG4gIGlzT3RoZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhSW5jb21lU291cmNlVHlwZUxpc3RPdGhlckVudW1bdGhpcy5pZF07XG4gIH1cblxuICBpc1NvbGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhSW5jb21lU291cmNlVHlwZUxpc3RPdGhlckVudW1bdGhpcy5pZF07XG4gIH1cblxuICBnZXQgdHlwZSgpOiBJbmNvbWVTb3VyY2VUeXBlRW51bSB7XG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICBjYXNlIHRoaXMuaXNTYWxhcnkoKTpcbiAgICAgICAgcmV0dXJuIEluY29tZVNvdXJjZVR5cGVFbnVtLlNBTEFSWTtcbiAgICAgIGNhc2UgdGhpcy5pc1dvcmsoKTpcbiAgICAgICAgcmV0dXJuIEluY29tZVNvdXJjZVR5cGVFbnVtLldPUks7XG4gICAgICBjYXNlIHRoaXMuaXNTb2xlKCk6XG4gICAgICAgIHJldHVybiBJbmNvbWVTb3VyY2VUeXBlRW51bS5TT0xFO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIEluY29tZVNvdXJjZVR5cGVFbnVtLk9USEVSO1xuICAgIH1cbiAgfVxufVxuIl19
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UtdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLElBQUksb0JBQW9CLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMzRyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUNoRyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUU5RSxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsb0JBQW9CO0lBQ3hELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxFQUFFLEtBQUssNEJBQTRCLENBQUMsT0FBTyxDQUFDO0lBQzFELENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTyxDQUFDLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxDQUFDLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxNQUFNO1FBQ0osOERBQThEO1FBQzlELE9BQU8sQ0FBQyxDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sUUFBUSxJQUFJLEVBQUU7WUFDWixLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ2hCLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDO1lBQ25DLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDaEIsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUM7WUFDbkM7Z0JBQ0UsT0FBTyxvQkFBb0IsQ0FBQyxLQUFLLENBQUM7U0FDckM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmNvbWVTb3VyY2VUeXBlIGFzIEluY29tZVNvdXJjZVR5cGVCYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL2luY29tZVNvdXJjZS9pbmNvbWUtc291cmNlLXR5cGUnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZUxpc3RXb3JrRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS1saXN0LXdvcmsuZW51bSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VUeXBlTGlzdE90aGVyRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS1saXN0LW90aGVyLmVudW0nO1xuaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9pbmNvbWUtc291cmNlLXR5cGUuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBJbmNvbWVTb3VyY2VUeXBlIGV4dGVuZHMgSW5jb21lU291cmNlVHlwZUJhc2Uge1xuICBpc0JvbnVzZXMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaWQgPT09IEluY29tZVNvdXJjZVR5cGVMaXN0V29ya0VudW0uQk9OVVNFUztcbiAgfVxuXG4gIGlzV29yaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISFJbmNvbWVTb3VyY2VUeXBlTGlzdFdvcmtFbnVtW3RoaXMuaWRdO1xuICB9XG5cbiAgaXNPdGhlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISFJbmNvbWVTb3VyY2VUeXBlTGlzdE90aGVyRW51bVt0aGlzLmlkXTtcbiAgfVxuXG4gIGlzU29sZSgpOiBib29sZWFuIHtcbiAgICAvLyBAVE9ETyB1c2UgSW5jb21lU291cmNlVHlwZUxpc3RTb2xlRW51bSB3aGVuIHNvbGUgdGFuayByZWFkeVxuICAgIHJldHVybiAhIUluY29tZVNvdXJjZVR5cGVMaXN0T3RoZXJFbnVtW3RoaXMuaWRdO1xuICB9XG5cbiAgZ2V0IHR5cGUoKTogSW5jb21lU291cmNlVHlwZUVudW0ge1xuICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgY2FzZSB0aGlzLmlzV29yaygpOlxuICAgICAgICByZXR1cm4gSW5jb21lU291cmNlVHlwZUVudW0uV09SSztcbiAgICAgIGNhc2UgdGhpcy5pc1NvbGUoKTpcbiAgICAgICAgcmV0dXJuIEluY29tZVNvdXJjZVR5cGVFbnVtLlNPTEU7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gSW5jb21lU291cmNlVHlwZUVudW0uT1RIRVI7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -8,7 +8,9 @@ import { IncomeSourceForecast } from './income-source-forecast';
8
8
  import { FinancialYear } from '../financial-year/financial-year';
9
9
  export class IncomeSource extends IncomeSourceBase {
10
10
  isSalaryIncome() {
11
- return this.type === IncomeSourceTypeEnum.SALARY;
11
+ return !!this.salaryForecasts.length;
12
+ // @TODO Vik: old code
13
+ // return this.type === IncomeSourceTypeEnum.SALARY;
12
14
  }
13
15
  isSoleIncome() {
14
16
  return this.type === IncomeSourceTypeEnum.SOLE;
@@ -55,4 +57,4 @@ __decorate([
55
57
  __decorate([
56
58
  Type(() => Date)
57
59
  ], IncomeSource.prototype, "dateTo", void 0);
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxJQUFJLGdCQUFnQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDOUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFOUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRWpFLE1BQU0sT0FBTyxZQUFhLFNBQVEsZ0JBQWdCO0lBZ0JoRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLG9CQUFvQixDQUFDLE1BQU0sQ0FBQztJQUNuRCxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxvQkFBb0IsQ0FBQyxJQUFJLENBQUM7SUFDakQsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssb0JBQW9CLENBQUMsSUFBSSxDQUFDO0lBQ2pELENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLG9CQUFvQixDQUFDLEtBQUssQ0FBQztJQUNsRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFNBQVM7UUFDWCxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixFQUFFLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILGVBQWUsQ0FBQyxVQUFrQjtRQUNoQyxNQUFNLFNBQVMsR0FBUyxJQUFJLGFBQWEsRUFBRSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLFNBQVMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyRyxDQUFDO0NBQ0Y7QUFwREM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUFDO3FEQUNPO0FBR2xDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQzttREFDSztBQUc5QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQzsyREFDYTtBQUc5QztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7OENBQ0Y7QUFHZjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7NENBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmNvbWVTb3VyY2UgYXMgSW5jb21lU291cmNlQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9pbmNvbWVTb3VyY2UvaW5jb21lLXNvdXJjZSc7XHJcbmltcG9ydCB7IEluY29tZVNvdXJjZVR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvaW5jb21lLXNvdXJjZS10eXBlLmVudW0nO1xyXG5pbXBvcnQgeyBJSW5jb21lU291cmNlRm9yZWNhc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2luY29tZS1zb3VyY2UtZm9yZWNhc3QuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcclxuaW1wb3J0IHsgU2FsYXJ5Rm9yZWNhc3QgfSBmcm9tICcuL3NhbGFyeS1mb3JlY2FzdCc7XHJcbmltcG9ydCB7IFNvbGVGb3JlY2FzdCB9IGZyb20gJy4vc29sZS1mb3JlY2FzdCc7XHJcbmltcG9ydCB7IEluY29tZVNvdXJjZUZvcmVjYXN0IH0gZnJvbSAnLi9pbmNvbWUtc291cmNlLWZvcmVjYXN0JztcclxuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcclxuXHJcbmV4cG9ydCBjbGFzcyBJbmNvbWVTb3VyY2UgZXh0ZW5kcyBJbmNvbWVTb3VyY2VCYXNlIHtcclxuICBAVHlwZSgoKSA9PiBTYWxhcnlGb3JlY2FzdClcclxuICBzYWxhcnlGb3JlY2FzdHM6IFNhbGFyeUZvcmVjYXN0W107XHJcblxyXG4gIEBUeXBlKCgpID0+IFNvbGVGb3JlY2FzdClcclxuICBzb2xlRm9yZWNhc3RzOiBTb2xlRm9yZWNhc3RbXTtcclxuXHJcbiAgQFR5cGUoKCkgPT4gSW5jb21lU291cmNlRm9yZWNhc3QpXHJcbiAgaW5jb21lU291cmNlRm9yZWNhc3RzOiBJbmNvbWVTb3VyY2VGb3JlY2FzdFtdO1xyXG5cclxuICBAVHlwZSgoKSA9PiBEYXRlKVxyXG4gIGRhdGVGcm9tOiBEYXRlO1xyXG5cclxuICBAVHlwZSgoKSA9PiBEYXRlKVxyXG4gIGRhdGVUbzogRGF0ZTtcclxuXHJcbiAgaXNTYWxhcnlJbmNvbWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJbmNvbWVTb3VyY2VUeXBlRW51bS5TQUxBUlk7XHJcbiAgfVxyXG5cclxuICBpc1NvbGVJbmNvbWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJbmNvbWVTb3VyY2VUeXBlRW51bS5TT0xFO1xyXG4gIH1cclxuXHJcbiAgaXNXb3JrSW5jb21lKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSW5jb21lU291cmNlVHlwZUVudW0uV09SSztcclxuICB9XHJcblxyXG4gIGlzT3RoZXJJbmNvbWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJbmNvbWVTb3VyY2VUeXBlRW51bS5PVEhFUjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBzYWxhcnkgYW5kIG90aGVyIGluY29tZSBmb3JlY2FzdHNcclxuICAgKi9cclxuICBnZXQgZm9yZWNhc3RzKCk6IElJbmNvbWVTb3VyY2VGb3JlY2FzdFtdIHtcclxuICAgIHJldHVybiBbLi4udGhpcy5zYWxhcnlGb3JlY2FzdHMsIC4uLnRoaXMuaW5jb21lU291cmNlRm9yZWNhc3RzLCAuLi50aGlzLnNvbGVGb3JlY2FzdHNdO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IGFjdHVhbCAoMXN0IGZyb20gdGhlIGxpc3QpIGZvcmVjYXN0XHJcbiAgICovXHJcbiAgZ2V0IGFjdHVhbEZvcmVjYXN0KCk6IElJbmNvbWVTb3VyY2VGb3JlY2FzdCB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JlY2FzdHNbMF07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiB1c2VyIHdhcyB3b3JraW5nIGluIG1vbnRoIHRha2VuIGJ5IHRoZSBpbmRleFxyXG4gICAqIEBwYXJhbSBtb250aEluZGV4IGJ5IHdoaWNoIG1vbnRoIHNob3VsZCBiZSB0YWtlblxyXG4gICAqL1xyXG4gIGlzV29ya2VkSW5Nb250aChtb250aEluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IG1vbnRoRGF0ZTogRGF0ZSA9IG5ldyBGaW5hbmNpYWxZZWFyKCkuZ2V0TW9udGhEYXRlKG1vbnRoSW5kZXgpO1xyXG4gICAgcmV0dXJuICghdGhpcy5kYXRlRnJvbSB8fCBtb250aERhdGUgPj0gdGhpcy5kYXRlRnJvbSkgJiYgKCF0aGlzLmRhdGVUbyB8fCBtb250aERhdGUgPCB0aGlzLmRhdGVUbyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxJQUFJLGdCQUFnQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDOUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFOUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRWpFLE1BQU0sT0FBTyxZQUFhLFNBQVEsZ0JBQWdCO0lBZ0JoRCxjQUFjO1FBQ1osT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7UUFDckMsc0JBQXNCO1FBQ3RCLG9EQUFvRDtJQUN0RCxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxvQkFBb0IsQ0FBQyxJQUFJLENBQUM7SUFDakQsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssb0JBQW9CLENBQUMsSUFBSSxDQUFDO0lBQ2pELENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLG9CQUFvQixDQUFDLEtBQUssQ0FBQztJQUNsRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFNBQVM7UUFDWCxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixFQUFFLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILGVBQWUsQ0FBQyxVQUFrQjtRQUNoQyxNQUFNLFNBQVMsR0FBUyxJQUFJLGFBQWEsRUFBRSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLFNBQVMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyRyxDQUFDO0NBQ0Y7QUF0REM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUFDO3FEQUNPO0FBR2xDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQzttREFDSztBQUc5QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQzsyREFDYTtBQUc5QztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7OENBQ0Y7QUFHZjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7NENBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmNvbWVTb3VyY2UgYXMgSW5jb21lU291cmNlQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9pbmNvbWVTb3VyY2UvaW5jb21lLXNvdXJjZSc7XHJcbmltcG9ydCB7IEluY29tZVNvdXJjZVR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvaW5jb21lLXNvdXJjZS10eXBlLmVudW0nO1xyXG5pbXBvcnQgeyBJSW5jb21lU291cmNlRm9yZWNhc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2luY29tZS1zb3VyY2UtZm9yZWNhc3QuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcclxuaW1wb3J0IHsgU2FsYXJ5Rm9yZWNhc3QgfSBmcm9tICcuL3NhbGFyeS1mb3JlY2FzdCc7XHJcbmltcG9ydCB7IFNvbGVGb3JlY2FzdCB9IGZyb20gJy4vc29sZS1mb3JlY2FzdCc7XHJcbmltcG9ydCB7IEluY29tZVNvdXJjZUZvcmVjYXN0IH0gZnJvbSAnLi9pbmNvbWUtc291cmNlLWZvcmVjYXN0JztcclxuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcclxuXHJcbmV4cG9ydCBjbGFzcyBJbmNvbWVTb3VyY2UgZXh0ZW5kcyBJbmNvbWVTb3VyY2VCYXNlIHtcclxuICBAVHlwZSgoKSA9PiBTYWxhcnlGb3JlY2FzdClcclxuICBzYWxhcnlGb3JlY2FzdHM6IFNhbGFyeUZvcmVjYXN0W107XHJcblxyXG4gIEBUeXBlKCgpID0+IFNvbGVGb3JlY2FzdClcclxuICBzb2xlRm9yZWNhc3RzOiBTb2xlRm9yZWNhc3RbXTtcclxuXHJcbiAgQFR5cGUoKCkgPT4gSW5jb21lU291cmNlRm9yZWNhc3QpXHJcbiAgaW5jb21lU291cmNlRm9yZWNhc3RzOiBJbmNvbWVTb3VyY2VGb3JlY2FzdFtdO1xyXG5cclxuICBAVHlwZSgoKSA9PiBEYXRlKVxyXG4gIGRhdGVGcm9tOiBEYXRlO1xyXG5cclxuICBAVHlwZSgoKSA9PiBEYXRlKVxyXG4gIGRhdGVUbzogRGF0ZTtcclxuXHJcbiAgaXNTYWxhcnlJbmNvbWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLnNhbGFyeUZvcmVjYXN0cy5sZW5ndGg7XHJcbiAgICAvLyBAVE9ETyBWaWs6IG9sZCBjb2RlXHJcbiAgICAvLyByZXR1cm4gdGhpcy50eXBlID09PSBJbmNvbWVTb3VyY2VUeXBlRW51bS5TQUxBUlk7XHJcbiAgfVxyXG5cclxuICBpc1NvbGVJbmNvbWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJbmNvbWVTb3VyY2VUeXBlRW51bS5TT0xFO1xyXG4gIH1cclxuXHJcbiAgaXNXb3JrSW5jb21lKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSW5jb21lU291cmNlVHlwZUVudW0uV09SSztcclxuICB9XHJcblxyXG4gIGlzT3RoZXJJbmNvbWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJbmNvbWVTb3VyY2VUeXBlRW51bS5PVEhFUjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBzYWxhcnkgYW5kIG90aGVyIGluY29tZSBmb3JlY2FzdHNcclxuICAgKi9cclxuICBnZXQgZm9yZWNhc3RzKCk6IElJbmNvbWVTb3VyY2VGb3JlY2FzdFtdIHtcclxuICAgIHJldHVybiBbLi4udGhpcy5zYWxhcnlGb3JlY2FzdHMsIC4uLnRoaXMuaW5jb21lU291cmNlRm9yZWNhc3RzLCAuLi50aGlzLnNvbGVGb3JlY2FzdHNdO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IGFjdHVhbCAoMXN0IGZyb20gdGhlIGxpc3QpIGZvcmVjYXN0XHJcbiAgICovXHJcbiAgZ2V0IGFjdHVhbEZvcmVjYXN0KCk6IElJbmNvbWVTb3VyY2VGb3JlY2FzdCB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JlY2FzdHNbMF07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiB1c2VyIHdhcyB3b3JraW5nIGluIG1vbnRoIHRha2VuIGJ5IHRoZSBpbmRleFxyXG4gICAqIEBwYXJhbSBtb250aEluZGV4IGJ5IHdoaWNoIG1vbnRoIHNob3VsZCBiZSB0YWtlblxyXG4gICAqL1xyXG4gIGlzV29ya2VkSW5Nb250aChtb250aEluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IG1vbnRoRGF0ZTogRGF0ZSA9IG5ldyBGaW5hbmNpYWxZZWFyKCkuZ2V0TW9udGhEYXRlKG1vbnRoSW5kZXgpO1xyXG4gICAgcmV0dXJuICghdGhpcy5kYXRlRnJvbSB8fCBtb250aERhdGUgPj0gdGhpcy5kYXRlRnJvbSkgJiYgKCF0aGlzLmRhdGVUbyB8fCBtb250aERhdGUgPCB0aGlzLmRhdGVUbyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -3,7 +3,6 @@ import { ACCOUNT_SETUP_ITEMS } from '../../models/account-setup/account-setup-it
3
3
  import { AccountSetupItemsEnum } from '../../models/account-setup/account-setup-items.enum';
4
4
  import { ClientIncomeTypes } from '../../models/client/client-income-types';
5
5
  import { IncomeSourceCollection } from '../../collections/income-source.collection';
6
- import { IncomeSourceTypeEnum } from '../../db/Enums/income-source-type.enum';
7
6
  import { combineLatest, of, ReplaySubject } from 'rxjs';
8
7
  import { filter, map, mergeMap } from 'rxjs/operators';
9
8
  import { AccountSetupItemCollection } from '../../collections/account-setup-item.collection';
@@ -88,11 +87,11 @@ export class AccountSetupService {
88
87
  const batch = [];
89
88
  // Salary item is completed when user added salary income source
90
89
  if (incomeTypes.salary) {
91
- batch.push(this.create(AccountSetupItemsEnum.SALARY, this.getIncomeSourcesByType(IncomeSourceTypeEnum.WORK)));
90
+ batch.push(this.create(AccountSetupItemsEnum.SALARY, this.getIncomeSources(true)));
92
91
  }
93
92
  // Other income item is completed when user added at least one other income source
94
93
  if (incomeTypes.dividends || incomeTypes.other) {
95
- batch.push(this.create(AccountSetupItemsEnum.OTHER_INCOME, this.getIncomeSourcesByType(IncomeSourceTypeEnum.OTHER)));
94
+ batch.push(this.create(AccountSetupItemsEnum.OTHER_INCOME, this.getIncomeSources()));
96
95
  }
97
96
  // Rental income item is completed when user added at least one property
98
97
  if (incomeTypes.property) {
@@ -117,11 +116,16 @@ export class AccountSetupService {
117
116
  return combineLatest(batch).pipe(map((items) => new AccountSetupItemCollection(items)));
118
117
  }
119
118
  /**
120
- * @TODO work with collection when services refactored
119
+ * @TODO Alex: work with collection when services refactored
120
+ * @TODO Vik: waiting for income sources refactoring
121
121
  */
122
- getIncomeSourcesByType(type) {
122
+ getIncomeSources(isSalary = false) {
123
123
  return this.incomeSourceService.get().pipe(map((incomeSources) => {
124
- return new IncomeSourceCollection(incomeSources).getBy('type', type).toArray();
124
+ const collection = new IncomeSourceCollection(incomeSources);
125
+ if (isSalary) {
126
+ return collection.getSalary();
127
+ }
128
+ return collection.items.filter((incomeSource) => !incomeSource.isSalaryIncome() && !incomeSource.isSoleIncome());
125
129
  }));
126
130
  }
127
131
  /**
@@ -147,4 +151,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
147
151
  providedIn: 'root'
148
152
  }]
149
153
  }], ctorParameters: function () { return [{ type: i1.ClientIncomeTypesService }, { type: i2.PropertyService }, { type: i3.IncomeSourceService }, { type: i4.BankAccountService }, { type: i5.TransactionAllocationService }, { type: i6.VehicleClaimService }, { type: i7.TransactionService }]; } });
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1zZXR1cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2FjY291bnQtc2V0dXAvYWNjb3VudC1zZXR1cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFFM0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFFNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFHNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFFcEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFHOUUsT0FBTyxFQUFFLGFBQWEsRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRTdGLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7Ozs7Ozs7O0FBRWpGOzs7R0FHRztBQUlILE1BQU0sT0FBTyxtQkFBbUI7SUFLOUIsWUFDVSx3QkFBa0QsRUFDbEQsZUFBZ0MsRUFDaEMsbUJBQXdDLEVBQ3hDLG1CQUF1QyxFQUN2Qyw0QkFBMEQsRUFDMUQsbUJB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LENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDOztpSEE5SlUsbUJBQW1CO3FIQUFuQixtQkFBbUIsY0FGbEIsTUFBTTs0RkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQUNDT1VOVF9TRVRVUF9JVEVNUyB9IGZyb20gJy4uLy4uL21vZGVscy9hY2NvdW50LXNldHVwL2FjY291bnQtc2V0dXAtaXRlbXMuY29uc3QnO1xuaW1wb3J0IHsgQWNjb3VudFNldHVwSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy9hY2NvdW50LXNldHVwL2FjY291bnQtc2V0dXAtaXRlbSc7XG5pbXBvcnQgeyBBY2NvdW50U2V0dXBJdGVtc0VudW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW1zLmVudW0nO1xuaW1wb3J0IHsgQmFua0FjY291bnRTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9iYW5rL2JhbmstYWNjb3VudC9iYW5rLWFjY291bnQuc2VydmljZSc7XG5pbXBvcnQgeyBDbGllbnRJbmNvbWVUeXBlcyB9IGZyb20gJy4uLy4uL21vZGVscy9jbGllbnQvY2xpZW50LWluY29tZS10eXBlcyc7XG5pbXBvcnQgeyBDbGllbnRJbmNvbWVUeXBlc1NlcnZpY2UgfSBmcm9tICcuLi9odHRwL2Zpcm0vY2xpZW50LWluY29tZS9jbGllbnQtaW5jb21lLXR5cGVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvaW5jb21lLXNvdXJjZS5jb2xsZWN0aW9uJztcbmltcG9ydCB7IEluY29tZVNvdXJjZVNlcnZpY2UgfSBmcm9tICcuLi9odHRwL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZS5zZXJ2aWNlJztcbmltcG9ydCB7IEluY29tZVNvdXJjZVR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvaW5jb21lLXNvdXJjZS10eXBlLmVudW0nO1xuaW1wb3J0IHsgUHJvcGVydHlTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9wcm9wZXJ0eS9wcm9wZXJ0eS5zZXJ2aWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9odHRwL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLWFsbG9jYXRpb24vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIG9mLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgbWVyZ2VNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2FjY291bnQtc2V0dXAtaXRlbS5jb2xsZWN0aW9uJztcbmltcG9ydCB7IFZlaGljbGVDbGFpbVNlcnZpY2UgfSBmcm9tICcuLi9odHRwL3ZlaGljbGUvdmVoaWNsZS1jbGFpbS5zZXJ2aWNlJztcbmltcG9ydCBmcm9tUGFpcnMgZnJvbSAnbG9kYXNoL2Zyb21QYWlycyc7XG5pbXBvcnQgY2xvbmVEZWVwIGZyb20gJ2xvZGFzaC9jbG9uZURlZXAnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL3RyYW5zYWN0aW9uLmNvbGxlY3Rpb24nO1xuXG4vKipcbiAqIFNlcnZpY2UgaGFuZGxpbmcgdXNlcidzIGFjY291bnQgc2V0dXAgcHJvY2Vzcy5cbiAqIENoZWNrcyByZXF1aXJlZCBzdGVwcyBhbmQgdGhlaXIgY29tcGxldGlvblxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBY2NvdW50U2V0dXBTZXJ2aWNlIHtcbiAgY2FjaGU6IEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uO1xuICBjYWNoZVN1YmplY3Q6IFJlcGxheVN1YmplY3Q8QWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24+ID0gbmV3IFJlcGxheVN1YmplY3Q8QWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24+KDEpO1xuICBjbGllbnRJbmNvbWVUeXBlc0lkOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjbGllbnRJbmNvbWVUeXBlc1NlcnZpY2U6IENsaWVudEluY29tZVR5cGVzU2VydmljZSxcbiAgICBwcml2YXRlIHByb3BlcnR5U2VydmljZTogUHJvcGVydHlTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW5jb21lU291cmNlU2VydmljZTogSW5jb21lU291cmNlU2VydmljZSxcbiAgICBwcml2YXRlIGJhbmtBY2NvdW50c1NlcnZpY2U6IEJhbmtBY2NvdW50U2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zYWN0aW9uQWxsb2NhdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uQWxsb2NhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSB2ZWhpY2xlQ2xhaW1TZXJ2aWNlOiBWZWhpY2xlQ2xhaW1TZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2VcbiAgKSB7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGxpc3Qgb2YgYWNjb3VudCBzZXR1cCBpdGVtcyBmb3IgY3VycmVudCB1c2VyXG4gICAqL1xuICBnZXQoKTogT2JzZXJ2YWJsZTxBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbj4ge1xuICAgIGlmICghdGhpcy5jYWNoZSkge1xuICAgICAgdGhpcy5jYWNoZSA9IG5ldyBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbihbXSk7XG5cbiAgICAgIHRoaXMuY2xpZW50SW5jb21lVHlwZXNTZXJ2aWNlLmdldCgpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIC8vIHdlIG5lZWQgYWNjb3VudCBzZXR1cCBvbmx5IHdoZW4gdXNlciBzZWxlY3RlZCBhdCBsZWFzdCBvbmUgaW5jb21lIHR5cGVcbiAgICAgICAgICBmaWx0ZXIoKGluY29tZVR5cGVzOiBDbGllbnRJbmNvbWVUeXBlcykgPT4gISFpbmNvbWVUeXBlcy5sZW5ndGgpLFxuICAgICAgICAgIG1lcmdlTWFwKChpbmNvbWVUeXBlczogQ2xpZW50SW5jb21lVHlwZXMpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2xpZW50SW5jb21lVHlwZXNJZCA9IGluY29tZVR5cGVzLmlkO1xuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVCYXRjaChpbmNvbWVUeXBlcyk7XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChpdGVtczogQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24pID0+IHtcbiAgICAgICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgICAgIGNhc2UgIXRoaXMuY2FjaGU6XG4gICAgICAgICAgICBjYXNlIHRoaXMuY2FjaGUuZ2V0QnkoJ2lzQ29tcGxldGVkJywgdHJ1ZSkubGVuZ3RoICE9PSBpdGVtcy5nZXRCeSgnaXNDb21wbGV0ZWQnLCB0cnVlKS5sZW5ndGg6XG4gICAgICAgICAgICBjYXNlIHRoaXMuY2FjaGUubGVuZ3RoICE9PSBpdGVtcy5sZW5ndGg6XG4gICAgICAgICAgICAgIHRoaXMuY2FjaGUgPSBjbG9uZURlZXAoaXRlbXMpO1xuICAgICAgICAgICAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY2FjaGVTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFByZXBhcmUgY2xpZW50IGluY29tZSB0eXBlcyB0byB1cGRhdGUgdG8gaGlkZSBkZXBlbmRlZCBhY2NvdW50IHNldHVwIGl0ZW1zXG4gICAqL1xuICBwcmVwYXJlSW5jb21lVHlwZXMoaXRlbTogQWNjb3VudFNldHVwSXRlbSk6IENsaWVudEluY29tZVR5cGVzIHtcbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKFxuICAgICAgQ2xpZW50SW5jb21lVHlwZXMsXG4gICAgICBPYmplY3QuYXNzaWduKHtpZDogdGhpcy5jbGllbnRJbmNvbWVUeXBlc0lkfSwgZnJvbVBhaXJzKGl0ZW0uY2xpZW50SW5jb21lVHlwZXMubWFwKCh0eXBlOiBzdHJpbmcpID0+IFt0eXBlLCBmYWxzZV0pKSlcbiAgICApXG4gIH1cblxuICAvKipcbiAgICogR2V0IGEgc2luZ2xlIEFjY291bnRTZXR1cEl0ZW0gYW5kIGNoZWNrIGl0J3MgY29tcGxldGlvblxuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGUoaXRlbVR5cGU6IEFjY291bnRTZXR1cEl0ZW1zRW51bSwgcmVxdWVzdDogT2JzZXJ2YWJsZTxvYmplY3RbXT4pOiBPYnNlcnZhYmxlPEFjY291bnRTZXR1cEl0ZW0+IHtcbiAgICByZXR1cm4gcmVxdWVzdC5waXBlKFxuICAgICAgbWFwKChyZXN1bHQ6IG9iamVjdFtdKTogQWNjb3VudFNldHVwSXRlbSA9PiB7XG4gICAgICAgIGNvbnN0IGl0ZW06IEFjY291bnRTZXR1cEl0ZW0gPSBBQ0NPVU5UX1NFVFVQX0lURU1TW2l0ZW1UeXBlXTtcblxuICAgICAgICBpZiAocmVzdWx0Lmxlbmd0aCkge1xuICAgICAgICAgIGl0ZW0uaXNDb21wbGV0ZWQgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGl0ZW0uaXNDb21wbGV0ZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpdGVtO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBiYXRjaCBvZiByZXF1ZXN0cyB0byBnZXQgbGlzdCBvZiByZXF1aXJlZCBBY2NvdW50U2V0dXBJdGVtJ3MuXG4gICAqIFNvbWUgaXRlbXMgYXJlIG9wdGlvbmFsIGFuZCBkZXBlbmRzIG9mIHVzZXIncyBjbGllbnQgaW5jb21lIHR5cGVzXG4gICAqL1xuICBwcml2YXRlIGNyZWF0ZUJhdGNoKGluY29tZVR5cGVzOiBDbGllbnRJbmNvbWVUeXBlcyk6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24+IHtcbiAgICBjb25zdCBiYXRjaDogT2JzZXJ2YWJsZTxBY2NvdW50U2V0dXBJdGVtPltdID0gW107XG5cbiAgICAvLyBTYWxhcnkgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIHNhbGFyeSBpbmNvbWUgc291cmNlXG4gICAgaWYgKGluY29tZVR5cGVzLnNhbGFyeSkge1xuICAgICAgYmF0Y2gucHVzaChcbiAgICAgICAgdGhpcy5jcmVhdGUoXG4gICAgICAgICAgQWNjb3VudFNldHVwSXRlbXNFbnVtLlNBTEFSWSxcbiAgICAgICAgICB0aGlzLmdldEluY29tZVNvdXJjZXNCeVR5cGUoSW5jb21lU291cmNlVHlwZUVudW0uV09SSylcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBPdGhlciBpbmNvbWUgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSBvdGhlciBpbmNvbWUgc291cmNlXG4gICAgaWYgKGluY29tZVR5cGVzLmRpdmlkZW5kcyB8fCBpbmNvbWVUeXBlcy5vdGhlcikge1xuICAgICAgYmF0Y2gucHVzaChcbiAgICAgICAgdGhpcy5jcmVhdGUoXG4gICAgICAgICAgQWNjb3VudFNldHVwSXRlbXNFbnVtLk9USEVSX0lOQ09NRSxcbiAgICAgICAgICB0aGlzLmdldEluY29tZVNvdXJjZXNCeVR5cGUoSW5jb21lU291cmNlVHlwZUVudW0uT1RIRVIpXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gUmVudGFsIGluY29tZSBpdGVtIGlzIGNvbXBsZXRlZCB3aGVuIHVzZXIgYWRkZWQgYXQgbGVhc3Qgb25lIHByb3BlcnR5XG4gICAgaWYgKGluY29tZVR5cGVzLnByb3BlcnR5KSB7XG4gICAgICBiYXRjaC5wdXNoKHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5QUk9QRVJUWSwgdGhpcy5wcm9wZXJ0eVNlcnZpY2UuZ2V0KCkpKTtcbiAgICB9XG5cbiAgICAvLyBCYW5rIGZlZWRzIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgYmFuayBhY2NvdW50IChiYXNpcSBvciBtYW51YWwpXG4gICAgYmF0Y2gucHVzaCh0aGlzLmNyZWF0ZShBY2NvdW50U2V0dXBJdGVtc0VudW0uQkFOS19GRUVEUywgdGhpcy5iYW5rQWNjb3VudHNTZXJ2aWNlLmdldCgpKSk7XG5cbiAgICAvLyBMb2dib29rIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBoYXMgYXQgbGVhc3Qgb25lIHZlaGljbGUgY2xhaW0gd2l0aCBhbnkgbWV0aG9kIChrbG1zIG9yIGxvZ2Jvb2spXG4gICAgYmF0Y2gucHVzaCh0aGlzLmdldExvZ2Jvb2tJdGVtKCkpO1xuXG4gICAgLy8gQFRPRE8gd2FpdGluZyBmb3Igc29sZSB0YW5rIGZvcmVjYXN0IHBhZ2VcbiAgICAvLyBTb2xlIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgc29sZSBpbmNvbWUgc291cmNlXG4gICAgLy8gaWYgKGluY29tZVR5cGVzLnNvbGVUcmFkZXIpIHtcbiAgICAvLyAgIGJhdGNoLnB1c2goXG4gICAgLy8gICAgIHRoaXMucHJlcGFyZUl0ZW0oXG4gICAgLy8gICAgICAgQWNjb3VudFNldHVwSXRlbXNFbnVtLlNPTEVfSU5DT01FLFxuICAgIC8vICAgICAgIHRoaXMuZ2V0SW5jb21lU291cmNlc0J5VHlwZShJbmNvbWVTb3VyY2VUeXBlRW51bS5TT0xFKVxuICAgIC8vICAgICApXG4gICAgLy8gICApO1xuICAgIC8vIH1cblxuICAgIC8vIEFsbG9jYXRpb24gaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSB0cmFuc2FjdGlvbiBhbGxvY2F0aW9uXG4gICAgYmF0Y2gucHVzaCh0aGlzLmNyZWF0ZShBY2NvdW50U2V0dXBJdGVtc0VudW0uVFJBTlNBQ1RJT04sIHRoaXMudHJhbnNhY3Rpb25BbGxvY2F0aW9uU2VydmljZS5nZXQoKSkpO1xuXG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoYmF0Y2gpLnBpcGUobWFwKChpdGVtczogQWNjb3VudFNldHVwSXRlbVtdKSA9PiBuZXcgQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24oaXRlbXMpKSk7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gd29yayB3aXRoIGNvbGxlY3Rpb24gd2hlbiBzZXJ2aWNlcyByZWZhY3RvcmVkXG4gICAqL1xuICBwcml2YXRlIGdldEluY29tZVNvdXJjZXNCeVR5cGUodHlwZTogSW5jb21lU291cmNlVHlwZUVudW0pOiBPYnNlcnZhYmxlPEluY29tZVNvdXJjZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaW5jb21lU291cmNlU2VydmljZS5nZXQoKS5waXBlKFxuICAgICAgbWFwKChpbmNvbWVTb3VyY2VzOiBJbmNvbWVTb3VyY2VbXSk6IEluY29tZVNvdXJjZVtdID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBJbmNvbWVTb3VyY2VDb2xsZWN0aW9uKGluY29tZVNvdXJjZXMpLmdldEJ5KCd0eXBlJywgdHlwZSkudG9BcnJheSgpO1xuICAgICAgfSlcbiAgICApXG4gIH1cblxuICAvKipcbiAgICogU2hvdyBsb2dib29rIGl0ZW0gd2hlbiB1c2VyIGhhcyBhdCBsZWFzdCAxIHZlaGljbGUgdHJhbnNhY3Rpb25cbiAgICovXG4gIHByaXZhdGUgZ2V0TG9nYm9va0l0ZW0oKTogT2JzZXJ2YWJsZTxBY2NvdW50U2V0dXBJdGVtPiB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldCgpXG4gICAgICAucGlwZShcbiAgICAgICAgLy8gQFRPRE8gQWxleDogcmVtb3ZlIG1hcCB3aGVuIHNlcnZpY2VzIHN0YXJ0IHdvcmsgd2l0aCBjb2xsZWN0aW9uc1xuICAgICAgICBtYXAoKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXSkgPT4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbih0cmFuc2FjdGlvbnMpKSxcbiAgICAgICAgbWVyZ2VNYXAoKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uKSA9PiB7XG4gICAgICAgICAgaWYgKHRyYW5zYWN0aW9ucy5nZXRWZWhpY2xlVHJhbnNhY3Rpb25zKCkubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGUoQWNjb3VudFNldHVwSXRlbXNFbnVtLldPUktfTE9HQk9PSywgdGhpcy52ZWhpY2xlQ2xhaW1TZXJ2aWNlLmdldCgpKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG59XG4iXX0=
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1zZXR1cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2FjY291bnQtc2V0dXAvYWNjb3VudC1zZXR1cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFFM0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFFNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFHNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFLcEYsT0FBTyxFQUFFLGFBQWEsRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRTdGLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7Ozs7Ozs7O0FBRWpGOzs7R0FHRztBQUlILE1BQU0sT0FBTyxtQkFBbUI7SUFLOUIsWUFDVSx3QkFBa0QsRUFDbEQsZUFBZ0MsRUFDaEMsbUJBQXdDLEVBQ3hDLG1CQUF1QyxFQUN2Qyw0QkFBMEQsRUFDMUQsbUJBQXdDLEVBQ3hDLGtCQUFzQztRQU50Qyw2QkFBd0IsR0FBeEIsd0JBQXdCLENB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QUFDLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7YUFDeEY7WUFFRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQzs7aUhBcEtVLG1CQUFtQjtxSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFDQ09VTlRfU0VUVVBfSVRFTVMgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW1zLmNvbnN0JztcbmltcG9ydCB7IEFjY291bnRTZXR1cEl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW0nO1xuaW1wb3J0IHsgQWNjb3VudFNldHVwSXRlbXNFbnVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FjY291bnQtc2V0dXAvYWNjb3VudC1zZXR1cC1pdGVtcy5lbnVtJztcbmltcG9ydCB7IEJhbmtBY2NvdW50U2VydmljZSB9IGZyb20gJy4uL2h0dHAvYmFuay9iYW5rLWFjY291bnQvYmFuay1hY2NvdW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xpZW50SW5jb21lVHlwZXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvY2xpZW50L2NsaWVudC1pbmNvbWUtdHlwZXMnO1xuaW1wb3J0IHsgQ2xpZW50SW5jb21lVHlwZXNTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9maXJtL2NsaWVudC1pbmNvbWUvY2xpZW50LWluY29tZS10eXBlcy5zZXJ2aWNlJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uLy4uL21vZGVscy9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2luY29tZS1zb3VyY2UuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS5lbnVtJztcbmltcG9ydCB7IFByb3BlcnR5U2VydmljZSB9IGZyb20gJy4uL2h0dHAvcHJvcGVydHkvcHJvcGVydHkuc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uL3RyYW5zYWN0aW9uLWFsbG9jYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIG1lcmdlTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy9hY2NvdW50LXNldHVwLWl0ZW0uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBWZWhpY2xlQ2xhaW1TZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC92ZWhpY2xlL3ZlaGljbGUtY2xhaW0uc2VydmljZSc7XG5pbXBvcnQgZnJvbVBhaXJzIGZyb20gJ2xvZGFzaC9mcm9tUGFpcnMnO1xuaW1wb3J0IGNsb25lRGVlcCBmcm9tICdsb2Rhc2gvY2xvbmVEZWVwJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uU2VydmljZSB9IGZyb20gJy4uL2h0dHAvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBTZXJ2aWNlIGhhbmRsaW5nIHVzZXIncyBhY2NvdW50IHNldHVwIHByb2Nlc3MuXG4gKiBDaGVja3MgcmVxdWlyZWQgc3RlcHMgYW5kIHRoZWlyIGNvbXBsZXRpb25cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQWNjb3VudFNldHVwU2VydmljZSB7XG4gIGNhY2hlOiBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbjtcbiAgY2FjaGVTdWJqZWN0OiBSZXBsYXlTdWJqZWN0PEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPiA9IG5ldyBSZXBsYXlTdWJqZWN0PEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPigxKTtcbiAgY2xpZW50SW5jb21lVHlwZXNJZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2xpZW50SW5jb21lVHlwZXNTZXJ2aWNlOiBDbGllbnRJbmNvbWVUeXBlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBwcm9wZXJ0eVNlcnZpY2U6IFByb3BlcnR5U2VydmljZSxcbiAgICBwcml2YXRlIGluY29tZVNvdXJjZVNlcnZpY2U6IEluY29tZVNvdXJjZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBiYW5rQWNjb3VudHNTZXJ2aWNlOiBCYW5rQWNjb3VudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgdmVoaWNsZUNsYWltU2VydmljZTogVmVoaWNsZUNsYWltU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIGFjY291bnQgc2V0dXAgaXRlbXMgZm9yIGN1cnJlbnQgdXNlclxuICAgKi9cbiAgZ2V0KCk6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24+IHtcbiAgICBpZiAoIXRoaXMuY2FjaGUpIHtcbiAgICAgIHRoaXMuY2FjaGUgPSBuZXcgQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24oW10pO1xuXG4gICAgICB0aGlzLmNsaWVudEluY29tZVR5cGVzU2VydmljZS5nZXQoKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICAvLyB3ZSBuZWVkIGFjY291bnQgc2V0dXAgb25seSB3aGVuIHVzZXIgc2VsZWN0ZWQgYXQgbGVhc3Qgb25lIGluY29tZSB0eXBlXG4gICAgICAgICAgZmlsdGVyKChpbmNvbWVUeXBlczogQ2xpZW50SW5jb21lVHlwZXMpID0+ICEhaW5jb21lVHlwZXMubGVuZ3RoKSxcbiAgICAgICAgICBtZXJnZU1hcCgoaW5jb21lVHlwZXM6IENsaWVudEluY29tZVR5cGVzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsaWVudEluY29tZVR5cGVzSWQgPSBpbmNvbWVUeXBlcy5pZDtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlQmF0Y2goaW5jb21lVHlwZXMpO1xuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoaXRlbXM6IEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uKSA9PiB7XG4gICAgICAgICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICAgICAgICBjYXNlICF0aGlzLmNhY2hlOlxuICAgICAgICAgICAgY2FzZSB0aGlzLmNhY2hlLmdldEJ5KCdpc0NvbXBsZXRlZCcsIHRydWUpLmxlbmd0aCAhPT0gaXRlbXMuZ2V0QnkoJ2lzQ29tcGxldGVkJywgdHJ1ZSkubGVuZ3RoOlxuICAgICAgICAgICAgY2FzZSB0aGlzLmNhY2hlLmxlbmd0aCAhPT0gaXRlbXMubGVuZ3RoOlxuICAgICAgICAgICAgICB0aGlzLmNhY2hlID0gY2xvbmVEZWVwKGl0ZW1zKTtcbiAgICAgICAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNhY2hlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmVwYXJlIGNsaWVudCBpbmNvbWUgdHlwZXMgdG8gdXBkYXRlIHRvIGhpZGUgZGVwZW5kZWQgYWNjb3VudCBzZXR1cCBpdGVtc1xuICAgKi9cbiAgcHJlcGFyZUluY29tZVR5cGVzKGl0ZW06IEFjY291bnRTZXR1cEl0ZW0pOiBDbGllbnRJbmNvbWVUeXBlcyB7XG4gICAgcmV0dXJuIHBsYWluVG9DbGFzcyhcbiAgICAgIENsaWVudEluY29tZVR5cGVzLFxuICAgICAgT2JqZWN0LmFzc2lnbih7aWQ6IHRoaXMuY2xpZW50SW5jb21lVHlwZXNJZH0sIGZyb21QYWlycyhpdGVtLmNsaWVudEluY29tZVR5cGVzLm1hcCgodHlwZTogc3RyaW5nKSA9PiBbdHlwZSwgZmFsc2VdKSkpXG4gICAgKVxuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhIHNpbmdsZSBBY2NvdW50U2V0dXBJdGVtIGFuZCBjaGVjayBpdCdzIGNvbXBsZXRpb25cbiAgICovXG4gIHByaXZhdGUgY3JlYXRlKGl0ZW1UeXBlOiBBY2NvdW50U2V0dXBJdGVtc0VudW0sIHJlcXVlc3Q6IE9ic2VydmFibGU8b2JqZWN0W10+KTogT2JzZXJ2YWJsZTxBY2NvdW50U2V0dXBJdGVtPiB7XG4gICAgcmV0dXJuIHJlcXVlc3QucGlwZShcbiAgICAgIG1hcCgocmVzdWx0OiBvYmplY3RbXSk6IEFjY291bnRTZXR1cEl0ZW0gPT4ge1xuICAgICAgICBjb25zdCBpdGVtOiBBY2NvdW50U2V0dXBJdGVtID0gQUNDT1VOVF9TRVRVUF9JVEVNU1tpdGVtVHlwZV07XG5cbiAgICAgICAgaWYgKHJlc3VsdC5sZW5ndGgpIHtcbiAgICAgICAgICBpdGVtLmlzQ29tcGxldGVkID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpdGVtLmlzQ29tcGxldGVkID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXRlbTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYmF0Y2ggb2YgcmVxdWVzdHMgdG8gZ2V0IGxpc3Qgb2YgcmVxdWlyZWQgQWNjb3VudFNldHVwSXRlbSdzLlxuICAgKiBTb21lIGl0ZW1zIGFyZSBvcHRpb25hbCBhbmQgZGVwZW5kcyBvZiB1c2VyJ3MgY2xpZW50IGluY29tZSB0eXBlc1xuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVCYXRjaChpbmNvbWVUeXBlczogQ2xpZW50SW5jb21lVHlwZXMpOiBPYnNlcnZhYmxlPEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPiB7XG4gICAgY29uc3QgYmF0Y2g6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbT5bXSA9IFtdO1xuXG4gICAgLy8gU2FsYXJ5IGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBzYWxhcnkgaW5jb21lIHNvdXJjZVxuICAgIGlmIChpbmNvbWVUeXBlcy5zYWxhcnkpIHtcbiAgICAgIGJhdGNoLnB1c2goXG4gICAgICAgIHRoaXMuY3JlYXRlKFxuICAgICAgICAgIEFjY291bnRTZXR1cEl0ZW1zRW51bS5TQUxBUlksXG4gICAgICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzKHRydWUpXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gT3RoZXIgaW5jb21lIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgb3RoZXIgaW5jb21lIHNvdXJjZVxuICAgIGlmIChpbmNvbWVUeXBlcy5kaXZpZGVuZHMgfHwgaW5jb21lVHlwZXMub3RoZXIpIHtcbiAgICAgIGJhdGNoLnB1c2goXG4gICAgICAgIHRoaXMuY3JlYXRlKFxuICAgICAgICAgIEFjY291bnRTZXR1cEl0ZW1zRW51bS5PVEhFUl9JTkNPTUUsXG4gICAgICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzKClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBSZW50YWwgaW5jb21lIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgcHJvcGVydHlcbiAgICBpZiAoaW5jb21lVHlwZXMucHJvcGVydHkpIHtcbiAgICAgIGJhdGNoLnB1c2godGhpcy5jcmVhdGUoQWNjb3VudFNldHVwSXRlbXNFbnVtLlBST1BFUlRZLCB0aGlzLnByb3BlcnR5U2VydmljZS5nZXQoKSkpO1xuICAgIH1cblxuICAgIC8vIEJhbmsgZmVlZHMgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSBiYW5rIGFjY291bnQgKGJhc2lxIG9yIG1hbnVhbClcbiAgICBiYXRjaC5wdXNoKHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5CQU5LX0ZFRURTLCB0aGlzLmJhbmtBY2NvdW50c1NlcnZpY2UuZ2V0KCkpKTtcblxuICAgIC8vIExvZ2Jvb2sgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGhhcyBhdCBsZWFzdCBvbmUgdmVoaWNsZSBjbGFpbSB3aXRoIGFueSBtZXRob2QgKGtsbXMgb3IgbG9nYm9vaylcbiAgICBiYXRjaC5wdXNoKHRoaXMuZ2V0TG9nYm9va0l0ZW0oKSk7XG5cbiAgICAvLyBAVE9ETyB3YWl0aW5nIGZvciBzb2xlIHRhbmsgZm9yZWNhc3QgcGFnZVxuICAgIC8vIFNvbGUgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSBzb2xlIGluY29tZSBzb3VyY2VcbiAgICAvLyBpZiAoaW5jb21lVHlwZXMuc29sZVRyYWRlcikge1xuICAgIC8vICAgYmF0Y2gucHVzaChcbiAgICAvLyAgICAgdGhpcy5wcmVwYXJlSXRlbShcbiAgICAvLyAgICAgICBBY2NvdW50U2V0dXBJdGVtc0VudW0uU09MRV9JTkNPTUUsXG4gICAgLy8gICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzQnlUeXBlKEluY29tZVNvdXJjZVR5cGVFbnVtLlNPTEUpXG4gICAgLy8gICAgIClcbiAgICAvLyAgICk7XG4gICAgLy8gfVxuXG4gICAgLy8gQWxsb2NhdGlvbiBpdGVtIGlzIGNvbXBsZXRlZCB3aGVuIHVzZXIgYWRkZWQgYXQgbGVhc3Qgb25lIHRyYW5zYWN0aW9uIGFsbG9jYXRpb25cbiAgICBiYXRjaC5wdXNoKHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5UUkFOU0FDVElPTiwgdGhpcy50cmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlLmdldCgpKSk7XG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChiYXRjaCkucGlwZShtYXAoKGl0ZW1zOiBBY2NvdW50U2V0dXBJdGVtW10pID0+IG5ldyBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbihpdGVtcykpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyBBbGV4OiB3b3JrIHdpdGggY29sbGVjdGlvbiB3aGVuIHNlcnZpY2VzIHJlZmFjdG9yZWRcbiAgICogQFRPRE8gVmlrOiB3YWl0aW5nIGZvciBpbmNvbWUgc291cmNlcyByZWZhY3RvcmluZ1xuICAgKi9cbiAgcHJpdmF0ZSBnZXRJbmNvbWVTb3VyY2VzKGlzU2FsYXJ5OiBib29sZWFuID0gZmFsc2UpOiBPYnNlcnZhYmxlPEluY29tZVNvdXJjZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaW5jb21lU291cmNlU2VydmljZS5nZXQoKS5waXBlKFxuICAgICAgbWFwKChpbmNvbWVTb3VyY2VzOiBJbmNvbWVTb3VyY2VbXSk6IEluY29tZVNvdXJjZVtdID0+IHtcbiAgICAgICAgY29uc3QgY29sbGVjdGlvbjogSW5jb21lU291cmNlQ29sbGVjdGlvbiA9IG5ldyBJbmNvbWVTb3VyY2VDb2xsZWN0aW9uKGluY29tZVNvdXJjZXMpO1xuICAgICAgICBpZiAoaXNTYWxhcnkpIHtcbiAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbi5nZXRTYWxhcnkoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb2xsZWN0aW9uLml0ZW1zLmZpbHRlcigoaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2UpID0+ICFpbmNvbWVTb3VyY2UuaXNTYWxhcnlJbmNvbWUoKSAmJiAhaW5jb21lU291cmNlLmlzU29sZUluY29tZSgpKTtcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgLyoqXG4gICAqIFNob3cgbG9nYm9vayBpdGVtIHdoZW4gdXNlciBoYXMgYXQgbGVhc3QgMSB2ZWhpY2xlIHRyYW5zYWN0aW9uXG4gICAqL1xuICBwcml2YXRlIGdldExvZ2Jvb2tJdGVtKCk6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbT4ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIC8vIEBUT0RPIEFsZXg6IHJlbW92ZSBtYXAgd2hlbiBzZXJ2aWNlcyBzdGFydCB3b3JrIHdpdGggY29sbGVjdGlvbnNcbiAgICAgICAgbWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pID0+IG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24odHJhbnNhY3Rpb25zKSksXG4gICAgICAgIG1lcmdlTWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbikgPT4ge1xuICAgICAgICAgIGlmICh0cmFuc2FjdGlvbnMuZ2V0VmVoaWNsZVRyYW5zYWN0aW9ucygpLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5XT1JLX0xPR0JPT0ssIHRoaXMudmVoaWNsZUNsYWltU2VydmljZS5nZXQoKSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxufVxuIl19
@@ -1621,6 +1621,9 @@ class IncomeSourceCollection extends Collection {
1621
1621
  filterByTypes(types) {
1622
1622
  return this.items.filter((incomeSource) => types.includes(incomeSource.type));
1623
1623
  }
1624
+ getSalary() {
1625
+ return this.items.filter((incomeSource) => incomeSource.isSalaryIncome());
1626
+ }
1624
1627
  /**
1625
1628
  * Get income sources list of forecasts
1626
1629
  */
@@ -3176,10 +3179,9 @@ class IncomeSource$1 extends AbstractModel {
3176
3179
 
3177
3180
  var IncomeSourceTypeEnum;
3178
3181
  (function (IncomeSourceTypeEnum) {
3179
- IncomeSourceTypeEnum[IncomeSourceTypeEnum["SALARY"] = 1] = "SALARY";
3180
- IncomeSourceTypeEnum[IncomeSourceTypeEnum["WORK"] = 2] = "WORK";
3182
+ IncomeSourceTypeEnum[IncomeSourceTypeEnum["WORK"] = 1] = "WORK";
3183
+ IncomeSourceTypeEnum[IncomeSourceTypeEnum["SOLE"] = 2] = "SOLE";
3181
3184
  IncomeSourceTypeEnum[IncomeSourceTypeEnum["OTHER"] = 3] = "OTHER";
3182
- IncomeSourceTypeEnum[IncomeSourceTypeEnum["SOLE"] = 4] = "SOLE";
3183
3185
  })(IncomeSourceTypeEnum || (IncomeSourceTypeEnum = {}));
3184
3186
 
3185
3187
  class SalaryForecast$1 extends AbstractModel {
@@ -3222,13 +3224,9 @@ var SalaryForecastFrequencyEnum;
3222
3224
  class IncomeSourceType$1 extends AbstractModel {
3223
3225
  }
3224
3226
 
3225
- var IncomeSourceTypeListSalaryEnum;
3226
- (function (IncomeSourceTypeListSalaryEnum) {
3227
- IncomeSourceTypeListSalaryEnum[IncomeSourceTypeListSalaryEnum["BONUSES"] = 1] = "BONUSES";
3228
- })(IncomeSourceTypeListSalaryEnum || (IncomeSourceTypeListSalaryEnum = {}));
3229
-
3230
3227
  var IncomeSourceTypeListWorkEnum;
3231
3228
  (function (IncomeSourceTypeListWorkEnum) {
3229
+ IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["BONUSES"] = 1] = "BONUSES";
3232
3230
  IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["DIRECTOR_FEES"] = 2] = "DIRECTOR_FEES";
3233
3231
  IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["DIVIDENDS"] = 3] = "DIVIDENDS";
3234
3232
  IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["INTEREST"] = 4] = "INTEREST";
@@ -3246,8 +3244,8 @@ var IncomeSourceTypeListOtherEnum;
3246
3244
  })(IncomeSourceTypeListOtherEnum || (IncomeSourceTypeListOtherEnum = {}));
3247
3245
 
3248
3246
  class IncomeSourceType extends IncomeSourceType$1 {
3249
- isSalary() {
3250
- return !!IncomeSourceTypeListSalaryEnum[this.id];
3247
+ isBonuses() {
3248
+ return this.id === IncomeSourceTypeListWorkEnum.BONUSES;
3251
3249
  }
3252
3250
  isWork() {
3253
3251
  return !!IncomeSourceTypeListWorkEnum[this.id];
@@ -3256,12 +3254,11 @@ class IncomeSourceType extends IncomeSourceType$1 {
3256
3254
  return !!IncomeSourceTypeListOtherEnum[this.id];
3257
3255
  }
3258
3256
  isSole() {
3257
+ // @TODO use IncomeSourceTypeListSoleEnum when sole tank ready
3259
3258
  return !!IncomeSourceTypeListOtherEnum[this.id];
3260
3259
  }
3261
3260
  get type() {
3262
3261
  switch (true) {
3263
- case this.isSalary():
3264
- return IncomeSourceTypeEnum.SALARY;
3265
3262
  case this.isWork():
3266
3263
  return IncomeSourceTypeEnum.WORK;
3267
3264
  case this.isSole():
@@ -3299,7 +3296,9 @@ __decorate([
3299
3296
 
3300
3297
  class IncomeSource extends IncomeSource$1 {
3301
3298
  isSalaryIncome() {
3302
- return this.type === IncomeSourceTypeEnum.SALARY;
3299
+ return !!this.salaryForecasts.length;
3300
+ // @TODO Vik: old code
3301
+ // return this.type === IncomeSourceTypeEnum.SALARY;
3303
3302
  }
3304
3303
  isSoleIncome() {
3305
3304
  return this.type === IncomeSourceTypeEnum.SOLE;
@@ -8050,11 +8049,11 @@ class AccountSetupService {
8050
8049
  const batch = [];
8051
8050
  // Salary item is completed when user added salary income source
8052
8051
  if (incomeTypes.salary) {
8053
- batch.push(this.create(AccountSetupItemsEnum.SALARY, this.getIncomeSourcesByType(IncomeSourceTypeEnum.WORK)));
8052
+ batch.push(this.create(AccountSetupItemsEnum.SALARY, this.getIncomeSources(true)));
8054
8053
  }
8055
8054
  // Other income item is completed when user added at least one other income source
8056
8055
  if (incomeTypes.dividends || incomeTypes.other) {
8057
- batch.push(this.create(AccountSetupItemsEnum.OTHER_INCOME, this.getIncomeSourcesByType(IncomeSourceTypeEnum.OTHER)));
8056
+ batch.push(this.create(AccountSetupItemsEnum.OTHER_INCOME, this.getIncomeSources()));
8058
8057
  }
8059
8058
  // Rental income item is completed when user added at least one property
8060
8059
  if (incomeTypes.property) {
@@ -8079,11 +8078,16 @@ class AccountSetupService {
8079
8078
  return combineLatest(batch).pipe(map((items) => new AccountSetupItemCollection(items)));
8080
8079
  }
8081
8080
  /**
8082
- * @TODO work with collection when services refactored
8081
+ * @TODO Alex: work with collection when services refactored
8082
+ * @TODO Vik: waiting for income sources refactoring
8083
8083
  */
8084
- getIncomeSourcesByType(type) {
8084
+ getIncomeSources(isSalary = false) {
8085
8085
  return this.incomeSourceService.get().pipe(map((incomeSources) => {
8086
- return new IncomeSourceCollection(incomeSources).getBy('type', type).toArray();
8086
+ const collection = new IncomeSourceCollection(incomeSources);
8087
+ if (isSalary) {
8088
+ return collection.getSalary();
8089
+ }
8090
+ return collection.items.filter((incomeSource) => !incomeSource.isSalaryIncome() && !incomeSource.isSoleIncome());
8087
8091
  }));
8088
8092
  }
8089
8093
  /**