taxtank-core 0.32.71 → 0.32.72
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.
- package/esm2022/lib/db/Models/transaction/transaction.mjs +1 -1
- package/esm2022/lib/forms/transaction/allocation-rule.form.mjs +28 -1
- package/esm2022/lib/forms/transaction/transaction.form.mjs +1 -1
- package/esm2022/lib/models/transaction/allocation-rule-transaction.mjs +16 -12
- package/esm2022/lib/models/transaction/transaction.mjs +4 -2
- package/fesm2022/taxtank-core.mjs +48 -16
- package/fesm2022/taxtank-core.mjs.map +1 -1
- package/lib/db/Models/transaction/transaction.d.ts +3 -0
- package/lib/forms/transaction/allocation-rule.form.d.ts +9 -0
- package/lib/models/transaction/transaction.d.ts +3 -0
- package/package.json +1 -1
|
@@ -2,4 +2,4 @@ import { TransactionBase } from './transaction-base';
|
|
|
2
2
|
export class Transaction extends TransactionBase {
|
|
3
3
|
static { this.className = 'Transaction'; }
|
|
4
4
|
}
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZGIvTW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQU1yRCxNQUFNLE9BQU8sV0FBWSxTQUFRLGVBQWU7YUFDdkMsY0FBUyxHQUFHLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi9FbnVtcy90cmFuc2FjdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Tb3VyY2VFbnVtIH0gZnJvbSAnLi4vLi4vRW51bXMvdHJhbnNhY3Rpb24tc291cmNlLmVudW0nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vRW51bXMvdHJhbnNhY3Rpb24tb3BlcmF0aW9uLmVudW0nO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL3VzZXIvdXNlcic7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlIH0gZnJvbSAnLi4vaW5jb21lU291cmNlL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25NZXRhRmllbGQgfSBmcm9tICcuL3RyYW5zYWN0aW9uLW1ldGEtZmllbGQnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25BbGxvY2F0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uJztcbmltcG9ydCB7IExvYW4gfSBmcm9tICcuLi9sb2FuL2xvYW4nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CYXNlIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1iYXNlJztcbmltcG9ydCB7IFByb3BlcnR5IH0gZnJvbSAnLi4vcHJvcGVydHkvcHJvcGVydHknO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIH0gZnJvbSAnLi4vZGVwcmVjaWF0aW9uL2RlcHJlY2lhdGlvbic7XG5pbXBvcnQgeyBTb2xlQnVzaW5lc3MgfSBmcm9tICcuLi9zb2xlL3NvbGUtYnVzaW5lc3MnO1xuaW1wb3J0IHsgU29sZUludm9pY2VJdGVtIH0gZnJvbSAnLi4vc29sZS9zb2xlLWludm9pY2UtaXRlbSc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbiBleHRlbmRzIFRyYW5zYWN0aW9uQmFzZSB7XG4gIHN0YXRpYyBjbGFzc05hbWUgPSAnVHJhbnNhY3Rpb24nO1xuICB0eXBlPzogVHJhbnNhY3Rpb25UeXBlRW51bTtcbiAgc291cmNlPzogVHJhbnNhY3Rpb25Tb3VyY2VFbnVtO1xuICBkYXRlPzogRGF0ZTtcbiAgYW1vdW50PzogbnVtYmVyO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgdGF4PzogbnVtYmVyO1xuICBjbGFpbVBlcmNlbnQ/OiBudW1iZXI7XG4gIGNsYWltQW1vdW50PzogbnVtYmVyO1xuICB0YXhQYXlhYmxlPzogbnVtYmVyO1xuICBvcGVyYXRpb24/OiBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW07XG4gIGNyZWF0ZWRBdD86IERhdGU7XG4gIHVwZGF0ZWRBdD86IERhdGU7XG4gIGRlbGV0ZWRBdD86IERhdGU7XG4gIHVzZXI/
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZGIvTW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQU1yRCxNQUFNLE9BQU8sV0FBWSxTQUFRLGVBQWU7YUFDdkMsY0FBUyxHQUFHLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi9FbnVtcy90cmFuc2FjdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Tb3VyY2VFbnVtIH0gZnJvbSAnLi4vLi4vRW51bXMvdHJhbnNhY3Rpb24tc291cmNlLmVudW0nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vRW51bXMvdHJhbnNhY3Rpb24tb3BlcmF0aW9uLmVudW0nO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL3VzZXIvdXNlcic7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlIH0gZnJvbSAnLi4vaW5jb21lU291cmNlL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25NZXRhRmllbGQgfSBmcm9tICcuL3RyYW5zYWN0aW9uLW1ldGEtZmllbGQnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25BbGxvY2F0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uJztcbmltcG9ydCB7IExvYW4gfSBmcm9tICcuLi9sb2FuL2xvYW4nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CYXNlIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1iYXNlJztcbmltcG9ydCB7IFByb3BlcnR5IH0gZnJvbSAnLi4vcHJvcGVydHkvcHJvcGVydHknO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIH0gZnJvbSAnLi4vZGVwcmVjaWF0aW9uL2RlcHJlY2lhdGlvbic7XG5pbXBvcnQgeyBTb2xlQnVzaW5lc3MgfSBmcm9tICcuLi9zb2xlL3NvbGUtYnVzaW5lc3MnO1xuaW1wb3J0IHsgU29sZUludm9pY2VJdGVtIH0gZnJvbSAnLi4vc29sZS9zb2xlLWludm9pY2UtaXRlbSc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbiBleHRlbmRzIFRyYW5zYWN0aW9uQmFzZSB7XG4gIHN0YXRpYyBjbGFzc05hbWUgPSAnVHJhbnNhY3Rpb24nO1xuICB0eXBlPzogVHJhbnNhY3Rpb25UeXBlRW51bTtcbiAgc291cmNlPzogVHJhbnNhY3Rpb25Tb3VyY2VFbnVtO1xuICBkYXRlPzogRGF0ZTtcbiAgYW1vdW50PzogbnVtYmVyO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgdGF4PzogbnVtYmVyO1xuICBjbGFpbVBlcmNlbnQ/OiBudW1iZXI7XG4gIGNsYWltQW1vdW50PzogbnVtYmVyO1xuICB0YXhQYXlhYmxlPzogbnVtYmVyO1xuICBvcGVyYXRpb24/OiBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW07XG4gIGNyZWF0ZWRBdD86IERhdGU7XG4gIHVwZGF0ZWRBdD86IERhdGU7XG4gIGRlbGV0ZWRBdD86IERhdGU7XG4gIHVzZXI/OiBVc2VyO1xuICBjaGFydEFjY291bnRzPzogQ2hhcnRBY2NvdW50cztcbiAgaW5jb21lU291cmNlPzogSW5jb21lU291cmNlO1xuICBwYXJlbnRUcmFuc2FjdGlvbj86IFRyYW5zYWN0aW9uO1xuICAvKipcbiAgICogbGlzdCBvZiBjaGlsZCB0cmFuc2FjdGlvbnMgKGZlZXMpXG4gICAqL1xuICBjaGlsZFRyYW5zYWN0aW9ucz86IFRyYW5zYWN0aW9uW107XG4gIHByb3BlcnR5PzogUHJvcGVydHk7XG4gIG1ldGFGaWVsZHM/OiBUcmFuc2FjdGlvbk1ldGFGaWVsZFtdO1xuICB0cmFuc2Zlcj86IFRyYW5zYWN0aW9uO1xuICBhbGxvY2F0aW9ucz86IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdO1xuICBsb2FuPzogTG9hbjtcbiAgZGVwcmVjaWF0aW9uPzogRGVwcmVjaWF0aW9uO1xuICBjcmVhdGVkQnk/OiBVc2VyO1xuICB1cGRhdGVkQnk/OiBVc2VyO1xuICBidXNpbmVzcz86IFNvbGVCdXNpbmVzcztcbiAgaXNHU1Q/OiBib29sZWFuO1xuICBpbnZvaWNlSXRlbT86IFNvbGVJbnZvaWNlSXRlbTtcbn1cbiJdfQ==
|
|
@@ -159,5 +159,32 @@ export class AllocationRuleForm extends AbstractForm {
|
|
|
159
159
|
break;
|
|
160
160
|
}
|
|
161
161
|
}
|
|
162
|
+
isIncome() {
|
|
163
|
+
return this.get('type').value === AllocationRuleTypeEnum.INCOME;
|
|
164
|
+
}
|
|
165
|
+
isExpense() {
|
|
166
|
+
return this.get('type').value === AllocationRuleTypeEnum.EXPENSE;
|
|
167
|
+
}
|
|
168
|
+
isTransfer() {
|
|
169
|
+
return this.get('type').value === AllocationRuleTypeEnum.TRANSFER;
|
|
170
|
+
}
|
|
171
|
+
isPropertyTank() {
|
|
172
|
+
return this.get('transaction').get('tankType').value === TankTypeEnum.PROPERTY;
|
|
173
|
+
}
|
|
174
|
+
isWorkTank() {
|
|
175
|
+
return this.get('transaction').get('tankType').value === TankTypeEnum.WORK;
|
|
176
|
+
}
|
|
177
|
+
isSoleTank() {
|
|
178
|
+
return this.get('transaction').get('tankType').value === TankTypeEnum.SOLE;
|
|
179
|
+
}
|
|
180
|
+
isPropertyIncome() {
|
|
181
|
+
return this.isIncome() && this.isPropertyTank();
|
|
182
|
+
}
|
|
183
|
+
isWorkIncome() {
|
|
184
|
+
return this.isIncome() && this.isWorkTank();
|
|
185
|
+
}
|
|
186
|
+
isSoleIncome() {
|
|
187
|
+
return this.isIncome() && this.isSoleTank();
|
|
188
|
+
}
|
|
162
189
|
}
|
|
163
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvbi1ydWxlLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvdHJhbnNhY3Rpb24vYWxsb2NhdGlvbi1ydWxlLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBa0IseUJBQXlCLEVBQUUseUJBQXlCLEVBQWlCLE1BQU0sY0FBYyxDQUFDO0FBQ25ILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDN0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDL0UsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkYsT0FBTyxFQUFFLHNCQUFzQixFQUE2QixNQUFNLGdCQUFnQixDQUFDO0FBQ25GLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUU3RCxPQUFPLFlBQVksTUFBTSxxQkFBcUIsQ0FBQztBQUUvQyxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsWUFBNEI7SUFHbEU7SUFDRSxpRUFBaUU7SUFDakUsSUFBb0I7SUFDcEIsdUNBQXVDO0lBQy9CLEtBQWM7UUFFdEIsS0FBSyxDQUFDO1lBQ0osSUFBSSxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzVELElBQUksRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZ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b250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Rm9ybSB9IGZyb20gJy4uL2Fic3RyYWN0LmZvcm0nO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJ1bGUsIEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb24sIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMsIENoYXJ0QWNjb3VudHMgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1BcnJheSwgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJ1bGVDb25kaXRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvdHJhbnNhY3Rpb24vYWxsb2NhdGlvbi1ydWxlLWNvbmRpdGlvbic7XG5pbXBvcnQgeyBBbGxvY2F0aW9uUnVsZUNvbmRpdGlvbkZvcm0gfSBmcm9tICcuL2FsbG9jYXRpb24tcnVsZS1jb25kaXRpb24uZm9ybSc7XG5pbXBvcnQgeyBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uRm9ybSB9IGZyb20gJy4vYWxsb2NhdGlvbi1ydWxlLXRyYW5zYWN0aW9uLmZvcm0nO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJ1bGVUeXBlRW51bSwgQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zJztcbmltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RhbmstdHlwZS5lbnVtJztcbmltcG9ydCB7IElFdmVudExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgaW50ZXJzZWN0aW9uIGZyb20gJ2xvZGFzaC9pbnRlcnNlY3Rpb24nO1xuXG5leHBvcnQgY2xhc3MgQWxsb2NhdGlvblJ1bGVGb3JtIGV4dGVuZHMgQWJzdHJhY3RGb3JtPEFsbG9jYXRpb25SdWxlPiBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgY2hhcnRBY2NvdW50c0NhdGVnb3JpZXM6IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW1bXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvLyBydWxlIGlzIHJlcXVpcmVkIGJlY2F1c2Ugd2UgaGF2ZSB0byBrZWVwIGJhbmsgYWNjb3VudCByZWxhdGlvblxuICAgIHJ1bGU6IEFsbG9jYXRpb25SdWxlLFxuICAgIC8vIEZsYWcgdG8gZW5hYmxlIHRyYW5zYWN0aW9uIEdTVCBmaWVsZFxuICAgIHByaXZhdGUgaXNHU1Q6IGJvb2xlYW5cbiAgKSB7XG4gICAgc3VwZXIoe1xuICAgICAgdHlwZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChydWxlLnR5cGUsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgbmFtZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChydWxlLm5hbWUsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgY29uZGl0aW9uT3BlcmF0b3I6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wocnVsZS5jb25kaXRpb25PcGVyYXRvciwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBjb25kaXRpb25zOiBuZXcgVW50eXBlZEZvcm1BcnJheShcbiAgICAgICAgKHJ1bGUuY29uZGl0aW9ucyB8fCBbcGxhaW5Ub0NsYXNzKEFsbG9jYXRpb25SdWxlQ29uZGl0aW9uLCB7fSldKVxuICAgICAgICAgIC5tYXAoKGNvbmRpdGlvbjogQWxsb2NhdGlvblJ1bGVDb25kaXRpb24pID0+IG5ldyBBbGxvY2F0aW9uUnVsZUNvbmRpdGlvbkZvcm0oY29uZGl0aW9uKSlcbiAgICAgICksXG4gICAgICB0cmFuc2FjdGlvbjogbmV3IEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25Gb3JtKHJ1bGUudHJhbnNhY3Rpb24gfHwgcGxhaW5Ub0NsYXNzKEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb24sIHt9KSwgaXNHU1QpLFxuICAgICAgdHJhbnNmZXJCYW5rQWNjb3VudDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChydWxlLnRyYW5zZmVyQmFua0FjY291bnQsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgYXV0b0FsbG9jYXRlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHJ1bGUuYXV0b0FsbG9jYXRlIHx8IGZhbHNlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICB9LCBydWxlKTtcblxuICAgIHRoaXMubGlzdGVuRXZlbnRzKCk7XG4gICAgdGhpcy5zZXR1cEZpZWxkc0J5VHlwZShydWxlLnR5cGUpO1xuICAgIHRoaXMuc2V0dXBGaWVsZHNCeVRhbmtUeXBlKHJ1bGUudHJhbnNhY3Rpb24/LnRhbmtUeXBlKTtcbiAgICB0aGlzLnVwZGF0ZUNoYXJ0QWNjb3VudHNDYXRlZ29yaWVzKCk7XG5cbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb25Gb3JtR3JvdXAuZ2V0KCdjaGFydEFjY291bnRzJykudmFsdWU/LmlzQ2xhaW1QZXJjZW50RWRpdGFibGUoKSkge1xuICAgICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ2NsYWltUGVyY2VudCcpLmRpc2FibGUoKTtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlIHRyYW5zYWN0aW9uIGFtb3VudCBmaWVsZCB3aGVuIHRyYW5zYWN0aW9uIGhhcyBubyBhbW91bnQgKG5vbi1zcGxpdClcbiAgICBpZiAoIXJ1bGUudHJhbnNhY3Rpb24/LmlzU3BsaXQoKSkge1xuICAgICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoWydhbW91bnRQZXJjZW50J10pLmRpc2FibGUoKTtcbiAgICB9XG4gIH1cblxuICBnZXQgY29uZGl0aW9uc0FycmF5KCk6IFVudHlwZWRGb3JtQXJyYXkge1xuICAgIHJldHVybiB0aGlzLmdldCgnY29uZGl0aW9ucycpIGFzIFVudHlwZWRGb3JtQXJyYXk7XG4gIH1cblxuICBnZXQgY2hpbGRUcmFuc2FjdGlvbnNBcnJheSgpOiBVbnR5cGVkRm9ybUFycmF5IHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ2NoaWxkVHJhbnNhY3Rpb25zJykgYXMgVW50eXBlZEZvcm1BcnJheTtcbiAgfVxuXG4gIGdldCB0cmFuc2FjdGlvbkZvcm1Hcm91cCgpOiBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uRm9ybSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCd0cmFuc2FjdGlvbicpIGFzIEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25Gb3JtO1xuICB9XG5cbiAgYWRkQ29uZGl0aW9uRm9ybSgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbmRpdGlvbnNBcnJheS5wdXNoKG5ldyBBbGxvY2F0aW9uUnVsZUNvbmRpdGlvbkZvcm0oKSk7XG4gIH1cblxuICBpc1RheEZpZWxkSGlkZGVuKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHMgPSB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgnY2hhcnRBY2NvdW50cycpLnZhbHVlO1xuXG4gICAgcmV0dXJuICFjaGFydEFjY291bnRzIHx8ICFjaGFydEFjY291bnRzLmhhc1RheEZpZWxkKCk7XG4gIH1cblxuICAvKipcbiAgICogVE9ETyBBbGV4OiBkaXNhYmxlIHNvbGUgdGFuayBpbiBmb3JtIGNvbnRyb2wgd2hlbiBpbmNvbWUgc2VsZWN0ZWRcbiAgICovXG4gIGlzVHJhbnNhY3Rpb25GaWVsZHNIaWRkZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb25Gb3JtR3JvdXAuZ2V0KCd0YW5rVHlwZScpLnZhbHVlID09PSBudWxsIHx8IHRoaXMuY3VycmVudFZhbHVlLmlzU29sZUluY29tZSgpO1xuICB9XG5cbiAgc3VibWl0KCk6IEFsbG9jYXRpb25SdWxlIHtcbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgY29uZGl0aW9uczogdGhpcy5jb25kaXRpb25zQXJyYXkuY29udHJvbHMubWFwKChjb25kaXRpb25Gb3JtOiBBbGxvY2F0aW9uUnVsZUNvbmRpdGlvbkZvcm0pID0+IGNvbmRpdGlvbkZvcm0uc3VibWl0KCkpLFxuICAgICAgdHJhbnNhY3Rpb246IG51bGwsXG4gICAgfTtcblxuICAgIGlmICghdGhpcy5jdXJyZW50VmFsdWUuaXNUcmFuc2ZlcigpKSB7XG4gICAgICBkYXRhLnRyYW5zYWN0aW9uID0gdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5zdWJtaXQoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3VwZXIuc3VibWl0KGRhdGEpO1xuICB9XG5cbiAgaXNTcGxpdHRhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldCgndHlwZScpLnZhbHVlID09PSBBbGxvY2F0aW9uUnVsZVR5cGVFbnVtLkVYUEVOU0UgfHwgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5pc1BlcnNvbmFsKCk7XG4gIH1cblxuICBsaXN0ZW5FdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0ZW5UYW5rVHlwZUNoYW5nZXMoKTtcbiAgICB0aGlzLmxpc3RlblR5cGVDaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblR5cGVDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuZ2V0KCd0eXBlJykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodHlwZTogQWxsb2NhdGlvblJ1bGVUeXBlRW51bSkgPT4ge1xuICAgICAgdGhpcy5zZXR1cEZpZWxkc0J5VHlwZSh0eXBlKTtcbiAgICAgIHRoaXMudXBkYXRlQ2hhcnRBY2NvdW50c0NhdGVnb3JpZXMoKTtcblxuICAgICAgLy8gd2UgaGF2ZSBkaWZmZXJlbnQgZmllbGRzIGZvciBkaWZmZXJlbnQgdHlwZXNcbiAgICAgIC8vIEBUT0RPIHNlcGFyYXRlZCByZWluaXQgbWV0aG9kIGlmIHdlIG5lZWQgaXQgYW55d2hlcmUgZWxzZVxuICAgICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5zZXRWYWx1ZShcbiAgICAgICAgbmV3IEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25Gb3JtKHBsYWluVG9DbGFzcyhBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uLCB7fSksIHRoaXMuaXNHU1QpLmdldFJhd1ZhbHVlKClcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblRhbmtUeXBlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgndGFua1R5cGUnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh0YW5rVHlwZTogVGFua1R5cGVFbnVtKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUNoYXJ0QWNjb3VudHNDYXRlZ29yaWVzKCk7XG4gICAgICB0aGlzLnNldHVwRmllbGRzQnlUYW5rVHlwZSh0YW5rVHlwZSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGxpc3Qgb2YgY2hhcnQgYWNjb3VudHMgY2F0ZWdvcmllcyBhbGxvd2VkIGZvciB0cmFuc2FjdGlvblxuICAgKiBEZXBlbmRzIG9uIHRyYW5zYWN0aW9uIHR5cGUgYW5kIHRhbmsgdHlwZVxuICAgKi9cbiAgcHJpdmF0ZSB1cGRhdGVDaGFydEFjY291bnRzQ2F0ZWdvcmllcygpOiB2b2lkIHtcbiAgICAvLyBXZSB1c2UgdW5pcXVlIG9uZSBDaGFydCBBY2NvdW50cyBmb3IgdHJhbnNmZXJcbiAgICBpZiAodGhpcy5jdXJyZW50VmFsdWUuaXNUcmFuc2ZlcigpKSB7XG4gICAgICB0aGlzLmNoYXJ0QWNjb3VudHNDYXRlZ29yaWVzID0gbnVsbDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBleGNsdWRlZENhdGVnb3JpZXM6IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW1bXSA9IFsuLi5DSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLmRlcHJlY2lhdGlvbl07XG5cbiAgICB0aGlzLmNoYXJ0QWNjb3VudHNDYXRlZ29yaWVzID0gaW50ZXJzZWN0aW9uKENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVNbdGhpcy5jdXJyZW50VmFsdWUudHlwZUxhYmVsXSwgQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFU1t0aGlzLnRhbmtUeXBlTGFiZWxdKVxuICAgICAgLmZpbHRlcigoY2F0ZWdvcnk6IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0pID0+ICFleGNsdWRlZENhdGVnb3JpZXMuaW5jbHVkZXMoY2F0ZWdvcnkpKTtcbiAgfVxuXG4gIGdldCB0YW5rVHlwZUxhYmVsKCk6IHN0cmluZyB7XG4gICAgc3dpdGNoICh0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgndGFua1R5cGUnKS52YWx1ZSkge1xuICAgICAgY2FzZSBUYW5rVHlwZUVudW0uV09SSzpcbiAgICAgICAgcmV0dXJuICd3b3JrJztcblxuICAgICAgY2FzZSBUYW5rVHlwZUVudW0uUFJPUEVSVFk6XG4gICAgICAgIHJldHVybiAncHJvcGVydHknO1xuXG4gICAgICBjYXNlIFRhbmtUeXBlRW51bS5TT0xFOlxuICAgICAgICByZXR1cm4gJ3NvbGUnO1xuXG4gICAgICBjYXNlIFRhbmtUeXBlRW51bS5IT0xESU5HOlxuICAgICAgICByZXR1cm4gJ2hvbGRpbmcnO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gJ3BlcnNvbmFsJztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldHVwRmllbGRzQnlUeXBlKHR5cGU6IEFsbG9jYXRpb25SdWxlVHlwZUVudW0pOiB2b2lkIHtcbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgIGNhc2UgQWxsb2NhdGlvblJ1bGVUeXBlRW51bS5FWFBFTlNFOlxuICAgICAgY2FzZSBBbGxvY2F0aW9uUnVsZVR5cGVFbnVtLklOQ09NRTpcbiAgICAgICAgdGhpcy5nZXQoJ3RyYW5zYWN0aW9uJykuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgdGhpcy5nZXQoJ3RyYW5zZmVyQmFua0FjY291bnQnKS5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcblxuICAgICAgICAvLyBkaXNhYmxlIHRyYW5zYWN0aW9uIGFtb3VudCBmaWVsZCB3aGVuIHZhbHVlIGlzIGVtcHR5XG4gICAgICAgIC8vIGRpc2FibGUgbWFudWFsbHkgYmVjYXVzZSBjb2RlIGFib3ZlIGVuYWJsZXMgdGhpcyBmaWVsZFxuICAgICAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb25Gb3JtR3JvdXAuZ2V0KFsnYW1vdW50UGVyY2VudCddKS52YWx1ZSkge1xuICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb25Gb3JtR3JvdXAuZ2V0KFsnYW1vdW50UGVyY2VudCddKS5kaXNhYmxlKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEFsbG9jYXRpb25SdWxlVHlwZUVudW0uVFJBTlNGRVI6XG4gICAgICAgIHRoaXMuZ2V0KCd0cmFuc2FjdGlvbicpLmRpc2FibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgICB0aGlzLmdldCgndHJhbnNmZXJCYW5rQWNjb3VudCcpLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldHVwRmllbGRzQnlUYW5rVHlwZSh0YW5rVHlwZTogVGFua1R5cGVFbnVtKTogdm9pZCB7XG4gICAgLy8gRmlyc3QgZGlzYWJsZSB0YW5rVHlwZS1yZWxhdGVkIGZpZWxkcywgc2Vjb25kIGVuYWJsZSBmb3Igc2VsZWN0ZWQgdGFuayB0eXBlXG4gICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ3Byb3BlcnR5JykuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ2J1c2luZXNzJykuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ2lzR1NUJykuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ2luY29tZVNvdXJjZScpLmRpc2FibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuXG4gICAgc3dpdGNoICh0YW5rVHlwZSkge1xuICAgICAgY2FzZSBUYW5rVHlwZUVudW0uV09SSzpcbiAgICAgICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ2luY29tZVNvdXJjZScpLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBUYW5rVHlwZUVudW0uUFJPUEVSVFk6XG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb25Gb3JtR3JvdXAuZ2V0KCdwcm9wZXJ0eScpLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBUYW5rVHlwZUVudW0uU09MRTpcbiAgICAgICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ2J1c2luZXNzJykuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcblxuICAgICAgICBpZiAodGhpcy5pc0dTVCkge1xuICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb25Gb3JtR3JvdXAuZ2V0KCdpc0dTVCcpLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ2lzR1NUJykuc2V0VmFsdWUodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvbi1ydWxlLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvdHJhbnNhY3Rpb24vYWxsb2NhdGlvbi1ydWxlLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBa0IseUJBQXlCLEVBQUUseUJBQXlCLEVBQWlCLE1BQU0sY0FBYyxDQUFDO0FBQ25ILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDN0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDL0UsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkYsT0FBTyxFQUFFLHNCQUFzQixFQUE2QixNQUFNLGdCQUFnQixDQUFDO0FBQ25GLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUU3RCxPQUFPLFlBQVksTUFBTSxxQkFBcUIsQ0FBQztBQUUvQyxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsWUFBNEI7SUFHbEU7SUFDRSxpRUFBaUU7SUFDakUsSUFBb0I7SUFDcEIsdUNBQXVDO0lBQy9CLEtBQWM7UUFFdEIsS0FBSyxDQUFDO1lBQ0osSUFBSSxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzVELElBQUksRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZ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c0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBBbGxvY2F0aW9uUnVsZSwgQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbiwgQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUywgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUFycmF5LCBVbnR5cGVkRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBbGxvY2F0aW9uUnVsZUNvbmRpdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy90cmFuc2FjdGlvbi9hbGxvY2F0aW9uLXJ1bGUtY29uZGl0aW9uJztcbmltcG9ydCB7IEFsbG9jYXRpb25SdWxlQ29uZGl0aW9uRm9ybSB9IGZyb20gJy4vYWxsb2NhdGlvbi1ydWxlLWNvbmRpdGlvbi5mb3JtJztcbmltcG9ydCB7IEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25Gb3JtIH0gZnJvbSAnLi9hbGxvY2F0aW9uLXJ1bGUtdHJhbnNhY3Rpb24uZm9ybSc7XG5pbXBvcnQgeyBBbGxvY2F0aW9uUnVsZVR5cGVFbnVtLCBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgVGFua1R5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdGFuay10eXBlLmVudW0nO1xuaW1wb3J0IHsgSUV2ZW50TGlzdGVuZXIgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCBpbnRlcnNlY3Rpb24gZnJvbSAnbG9kYXNoL2ludGVyc2VjdGlvbic7XG5cbmV4cG9ydCBjbGFzcyBBbGxvY2F0aW9uUnVsZUZvcm0gZXh0ZW5kcyBBYnN0cmFjdEZvcm08QWxsb2NhdGlvblJ1bGU+IGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICBjaGFydEFjY291bnRzQ2F0ZWdvcmllczogQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bVtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIC8vIHJ1bGUgaXMgcmVxdWlyZWQgYmVjYXVzZSB3ZSBoYXZlIHRvIGtlZXAgYmFuayBhY2NvdW50IHJlbGF0aW9uXG4gICAgcnVsZTogQWxsb2NhdGlvblJ1bGUsXG4gICAgLy8gRmxhZyB0byBlbmFibGUgdHJhbnNhY3Rpb24gR1NUIGZpZWxkXG4gICAgcHJpdmF0ZSBpc0dTVDogYm9vbGVhblxuICApIHtcbiAgICBzdXBlcih7XG4gICAgICB0eXBlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHJ1bGUudHlwZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBuYW1lOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHJ1bGUubmFtZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBjb25kaXRpb25PcGVyYXRvcjogbmV3IFVudHlwZWRGb3JtQ29udHJvbChydWxlLmNvbmRpdGlvbk9wZXJhdG9yLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGNvbmRpdGlvbnM6IG5ldyBVbnR5cGVkRm9ybUFycmF5KFxuICAgICAgICAocnVsZS5jb25kaXRpb25zIHx8IFtwbGFpblRvQ2xhc3MoQWxsb2NhdGlvblJ1bGVDb25kaXRpb24sIHt9KV0pXG4gICAgICAgICAgLm1hcCgoY29uZGl0aW9uOiBBbGxvY2F0aW9uUnVsZUNvbmRpdGlvbikgPT4gbmV3IEFsbG9jYXRpb25SdWxlQ29uZGl0aW9uRm9ybShjb25kaXRpb24pKVxuICAgICAgKSxcbiAgICAgIHRyYW5zYWN0aW9uOiBuZXcgQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbkZvcm0ocnVsZS50cmFuc2FjdGlvbiB8fCBwbGFpblRvQ2xhc3MoQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbiwge30pLCBpc0dTVCksXG4gICAgICB0cmFuc2ZlckJhbmtBY2NvdW50OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHJ1bGUudHJhbnNmZXJCYW5rQWNjb3VudCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBhdXRvQWxsb2NhdGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wocnVsZS5hdXRvQWxsb2NhdGUgfHwgZmFsc2UsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgIH0sIHJ1bGUpO1xuXG4gICAgdGhpcy5saXN0ZW5FdmVudHMoKTtcbiAgICB0aGlzLnNldHVwRmllbGRzQnlUeXBlKHJ1bGUudHlwZSk7XG4gICAgdGhpcy5zZXR1cEZpZWxkc0J5VGFua1R5cGUocnVsZS50cmFuc2FjdGlvbj8udGFua1R5cGUpO1xuICAgIHRoaXMudXBkYXRlQ2hhcnRBY2NvdW50c0NhdGVnb3JpZXMoKTtcblxuICAgIGlmICghdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ2NoYXJ0QWNjb3VudHMnKS52YWx1ZT8uaXNDbGFpbVBlcmNlbnRFZGl0YWJsZSgpKSB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgnY2xhaW1QZXJjZW50JykuZGlzYWJsZSgpO1xuICAgIH1cblxuICAgIC8vIERpc2FibGUgdHJhbnNhY3Rpb24gYW1vdW50IGZpZWxkIHdoZW4gdHJhbnNhY3Rpb24gaGFzIG5vIGFtb3VudCAobm9uLXNwbGl0KVxuICAgIGlmICghcnVsZS50cmFuc2FjdGlvbj8uaXNTcGxpdCgpKSB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldChbJ2Ftb3VudFBlcmNlbnQnXSkuZGlzYWJsZSgpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBjb25kaXRpb25zQXJyYXkoKTogVW50eXBlZEZvcm1BcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCdjb25kaXRpb25zJykgYXMgVW50eXBlZEZvcm1BcnJheTtcbiAgfVxuXG4gIGdldCBjaGlsZFRyYW5zYWN0aW9uc0FycmF5KCk6IFVudHlwZWRGb3JtQXJyYXkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgnY2hpbGRUcmFuc2FjdGlvbnMnKSBhcyBVbnR5cGVkRm9ybUFycmF5O1xuICB9XG5cbiAgZ2V0IHRyYW5zYWN0aW9uRm9ybUdyb3VwKCk6IEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25Gb3JtIHtcbiAgICByZXR1cm4gdGhpcy5nZXQoJ3RyYW5zYWN0aW9uJykgYXMgQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbkZvcm07XG4gIH1cblxuICBhZGRDb25kaXRpb25Gb3JtKCk6IHZvaWQge1xuICAgIHRoaXMuY29uZGl0aW9uc0FycmF5LnB1c2gobmV3IEFsbG9jYXRpb25SdWxlQ29uZGl0aW9uRm9ybSgpKTtcbiAgfVxuXG4gIGlzVGF4RmllbGRIaWRkZW4oKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY2hhcnRBY2NvdW50czogQ2hhcnRBY2NvdW50cyA9IHRoaXMudHJhbnNhY3Rpb25Gb3JtR3JvdXAuZ2V0KCdjaGFydEFjY291bnRzJykudmFsdWU7XG5cbiAgICByZXR1cm4gIWNoYXJ0QWNjb3VudHMgfHwgIWNoYXJ0QWNjb3VudHMuaGFzVGF4RmllbGQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUT0RPIEFsZXg6IGRpc2FibGUgc29sZSB0YW5rIGluIGZvcm0gY29udHJvbCB3aGVuIGluY29tZSBzZWxlY3RlZFxuICAgKi9cbiAgaXNUcmFuc2FjdGlvbkZpZWxkc0hpZGRlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ3RhbmtUeXBlJykudmFsdWUgPT09IG51bGwgfHwgdGhpcy5jdXJyZW50VmFsdWUuaXNTb2xlSW5jb21lKCk7XG4gIH1cblxuICBzdWJtaXQoKTogQWxsb2NhdGlvblJ1bGUge1xuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBjb25kaXRpb25zOiB0aGlzLmNvbmRpdGlvbnNBcnJheS5jb250cm9scy5tYXAoKGNvbmRpdGlvbkZvcm06IEFsbG9jYXRpb25SdWxlQ29uZGl0aW9uRm9ybSkgPT4gY29uZGl0aW9uRm9ybS5zdWJtaXQoKSksXG4gICAgICB0cmFuc2FjdGlvbjogbnVsbCxcbiAgICB9O1xuXG4gICAgaWYgKCF0aGlzLmN1cnJlbnRWYWx1ZS5pc1RyYW5zZmVyKCkpIHtcbiAgICAgIGRhdGEudHJhbnNhY3Rpb24gPSB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLnN1Ym1pdCgpO1xuICAgIH1cblxuICAgIHJldHVybiBzdXBlci5zdWJtaXQoZGF0YSk7XG4gIH1cblxuICBpc1NwbGl0dGFibGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCd0eXBlJykudmFsdWUgPT09IEFsbG9jYXRpb25SdWxlVHlwZUVudW0uRVhQRU5TRSB8fCB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmlzUGVyc29uYWwoKTtcbiAgfVxuXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlblRhbmtUeXBlQ2hhbmdlcygpO1xuICAgIHRoaXMubGlzdGVuVHlwZUNoYW5nZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuVHlwZUNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5nZXQoJ3R5cGUnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh0eXBlOiBBbGxvY2F0aW9uUnVsZVR5cGVFbnVtKSA9PiB7XG4gICAgICB0aGlzLnNldHVwRmllbGRzQnlUeXBlKHR5cGUpO1xuICAgICAgdGhpcy51cGRhdGVDaGFydEFjY291bnRzQ2F0ZWdvcmllcygpO1xuXG4gICAgICAvLyB3ZSBoYXZlIGRpZmZlcmVudCBmaWVsZHMgZm9yIGRpZmZlcmVudCB0eXBlc1xuICAgICAgLy8gQFRPRE8gc2VwYXJhdGVkIHJlaW5pdCBtZXRob2QgaWYgd2UgbmVlZCBpdCBhbnl3aGVyZSBlbHNlXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLnNldFZhbHVlKFxuICAgICAgICBuZXcgQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbkZvcm0ocGxhaW5Ub0NsYXNzKEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb24sIHt9KSwgdGhpcy5pc0dTVCkuZ2V0UmF3VmFsdWUoKVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuVGFua1R5cGVDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNhY3Rpb25Gb3JtR3JvdXAuZ2V0KCd0YW5rVHlwZScpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHRhbmtUeXBlOiBUYW5rVHlwZUVudW0pID0+IHtcbiAgICAgIHRoaXMudXBkYXRlQ2hhcnRBY2NvdW50c0NhdGVnb3JpZXMoKTtcbiAgICAgIHRoaXMuc2V0dXBGaWVsZHNCeVRhbmtUeXBlKHRhbmtUeXBlKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgbGlzdCBvZiBjaGFydCBhY2NvdW50cyBjYXRlZ29yaWVzIGFsbG93ZWQgZm9yIHRyYW5zYWN0aW9uXG4gICAqIERlcGVuZHMgb24gdHJhbnNhY3Rpb24gdHlwZSBhbmQgdGFuayB0eXBlXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZUNoYXJ0QWNjb3VudHNDYXRlZ29yaWVzKCk6IHZvaWQge1xuICAgIC8vIFdlIHVzZSB1bmlxdWUgb25lIENoYXJ0IEFjY291bnRzIGZvciB0cmFuc2ZlclxuICAgIGlmICh0aGlzLmN1cnJlbnRWYWx1ZS5pc1RyYW5zZmVyKCkpIHtcbiAgICAgIHRoaXMuY2hhcnRBY2NvdW50c0NhdGVnb3JpZXMgPSBudWxsO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGV4Y2x1ZGVkQ2F0ZWdvcmllczogQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bVtdID0gWy4uLkNIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuZGVwcmVjaWF0aW9uXTtcblxuICAgIHRoaXMuY2hhcnRBY2NvdW50c0NhdGVnb3JpZXMgPSBpbnRlcnNlY3Rpb24oQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFU1t0aGlzLmN1cnJlbnRWYWx1ZS50eXBlTGFiZWxdLCBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTW3RoaXMudGFua1R5cGVMYWJlbF0pXG4gICAgICAuZmlsdGVyKChjYXRlZ29yeTogQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bSkgPT4gIWV4Y2x1ZGVkQ2F0ZWdvcmllcy5pbmNsdWRlcyhjYXRlZ29yeSkpO1xuICB9XG5cbiAgZ2V0IHRhbmtUeXBlTGFiZWwoKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKHRoaXMudHJhbnNhY3Rpb25Gb3JtR3JvdXAuZ2V0KCd0YW5rVHlwZScpLnZhbHVlKSB7XG4gICAgICBjYXNlIFRhbmtUeXBlRW51bS5XT1JLOlxuICAgICAgICByZXR1cm4gJ3dvcmsnO1xuXG4gICAgICBjYXNlIFRhbmtUeXBlRW51bS5QUk9QRVJUWTpcbiAgICAgICAgcmV0dXJuICdwcm9wZXJ0eSc7XG5cbiAgICAgIGNhc2UgVGFua1R5cGVFbnVtLlNPTEU6XG4gICAgICAgIHJldHVybiAnc29sZSc7XG5cbiAgICAgIGNhc2UgVGFua1R5cGVFbnVtLkhPTERJTkc6XG4gICAgICAgIHJldHVybiAnaG9sZGluZyc7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAncGVyc29uYWwnO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBGaWVsZHNCeVR5cGUodHlwZTogQWxsb2NhdGlvblJ1bGVUeXBlRW51bSk6IHZvaWQge1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSBBbGxvY2F0aW9uUnVsZVR5cGVFbnVtLkVYUEVOU0U6XG4gICAgICBjYXNlIEFsbG9jYXRpb25SdWxlVHlwZUVudW0uSU5DT01FOlxuICAgICAgICB0aGlzLmdldCgndHJhbnNhY3Rpb24nKS5lbmFibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgICB0aGlzLmdldCgndHJhbnNmZXJCYW5rQWNjb3VudCcpLmRpc2FibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuXG4gICAgICAgIC8vIGRpc2FibGUgdHJhbnNhY3Rpb24gYW1vdW50IGZpZWxkIHdoZW4gdmFsdWUgaXMgZW1wdHlcbiAgICAgICAgLy8gZGlzYWJsZSBtYW51YWxseSBiZWNhdXNlIGNvZGUgYWJvdmUgZW5hYmxlcyB0aGlzIGZpZWxkXG4gICAgICAgIGlmICghdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoWydhbW91bnRQZXJjZW50J10pLnZhbHVlKSB7XG4gICAgICAgICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoWydhbW91bnRQZXJjZW50J10pLmRpc2FibGUoKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgQWxsb2NhdGlvblJ1bGVUeXBlRW51bS5UUkFOU0ZFUjpcbiAgICAgICAgdGhpcy5nZXQoJ3RyYW5zYWN0aW9uJykuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgIHRoaXMuZ2V0KCd0cmFuc2ZlckJhbmtBY2NvdW50JykuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBGaWVsZHNCeVRhbmtUeXBlKHRhbmtUeXBlOiBUYW5rVHlwZUVudW0pOiB2b2lkIHtcbiAgICAvLyBGaXJzdCBkaXNhYmxlIHRhbmtUeXBlLXJlbGF0ZWQgZmllbGRzLCBzZWNvbmQgZW5hYmxlIGZvciBzZWxlY3RlZCB0YW5rIHR5cGVcbiAgICB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgncHJvcGVydHknKS5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgnYnVzaW5lc3MnKS5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgnaXNHU1QnKS5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgnaW5jb21lU291cmNlJykuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG5cbiAgICBzd2l0Y2ggKHRhbmtUeXBlKSB7XG4gICAgICBjYXNlIFRhbmtUeXBlRW51bS5XT1JLOlxuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgnaW5jb21lU291cmNlJykuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFRhbmtUeXBlRW51bS5QUk9QRVJUWTpcbiAgICAgICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ3Byb3BlcnR5JykuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFRhbmtUeXBlRW51bS5TT0xFOlxuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgnYnVzaW5lc3MnKS5lbmFibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLmlzR1NUKSB7XG4gICAgICAgICAgdGhpcy50cmFuc2FjdGlvbkZvcm1Hcm91cC5nZXQoJ2lzR1NUJykuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uRm9ybUdyb3VwLmdldCgnaXNHU1QnKS5zZXRWYWx1ZSh0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBpc0luY29tZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXQoJ3R5cGUnKS52YWx1ZSA9PT0gQWxsb2NhdGlvblJ1bGVUeXBlRW51bS5JTkNPTUU7XG4gIH1cblxuICBpc0V4cGVuc2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCd0eXBlJykudmFsdWUgPT09IEFsbG9jYXRpb25SdWxlVHlwZUVudW0uRVhQRU5TRTtcbiAgfVxuXG4gIGlzVHJhbnNmZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCd0eXBlJykudmFsdWUgPT09IEFsbG9jYXRpb25SdWxlVHlwZUVudW0uVFJBTlNGRVI7XG4gIH1cblxuICBpc1Byb3BlcnR5VGFuaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXQoJ3RyYW5zYWN0aW9uJykuZ2V0KCd0YW5rVHlwZScpLnZhbHVlID09PSBUYW5rVHlwZUVudW0uUFJPUEVSVFk7XG4gIH1cblxuICBpc1dvcmtUYW5rKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldCgndHJhbnNhY3Rpb24nKS5nZXQoJ3RhbmtUeXBlJykudmFsdWUgPT09IFRhbmtUeXBlRW51bS5XT1JLO1xuICB9XG5cbiAgaXNTb2xlVGFuaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXQoJ3RyYW5zYWN0aW9uJykuZ2V0KCd0YW5rVHlwZScpLnZhbHVlID09PSBUYW5rVHlwZUVudW0uU09MRTtcbiAgfVxuXG4gIGlzUHJvcGVydHlJbmNvbWUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNJbmNvbWUoKSAmJiB0aGlzLmlzUHJvcGVydHlUYW5rKCk7XG4gIH1cblxuICBpc1dvcmtJbmNvbWUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNJbmNvbWUoKSAmJiB0aGlzLmlzV29ya1RhbmsoKTtcbiAgfVxuXG4gIGlzU29sZUluY29tZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0luY29tZSgpICYmIHRoaXMuaXNTb2xlVGFuaygpO1xuICB9XG59XG4iXX0=
|
|
@@ -61,4 +61,4 @@ export class TransactionForm extends TransactionBaseForm {
|
|
|
61
61
|
return super.submit(Object.assign(data, { transactions: this.buildTransactions(this.currentValue) }), true);
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQXlCLE1BQU0sY0FBYyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3BHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQW1CLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUzRSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxtQkFBZ0M7SUFDbkUsWUFBWSxXQUF3QixFQUFFLGdCQUF5QixFQUFFLFdBQW9DLEVBQUUsV0FFbkcsRUFBRTtRQUNKLEtBQUssQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDM0QsWUFBWSxFQUFFLElBQUksZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sRUFBRSxJQUFJLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxNQUFNLElBQUkscUJBQXFCLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztTQUNsSCxDQUFDLENBQUMs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S0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEtBQUssZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQzlGLGdCQUFnQixDQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQWUsRUFBRTtRQUN0QixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUcsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb24sIFRyYW5zYWN0aW9uQWxsb2NhdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJhc2VGb3JtIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1iYXNlLmZvcm0nO1xuaW1wb3J0IHsgYXV0b2NvbXBsZXRlVmFsaWRhdG9yLCBjdXJyZW50RmluWWVhclZhbGlkYXRvciwgbWluRGF0ZVZhbGlkYXRvciB9IGZyb20gJy4uLy4uL3ZhbGlkYXRvcnMnO1xuaW1wb3J0IHsgTWVzc2FnZXNFbnVtIH0gZnJvbSAnLi9tZXNzYWdlcy5lbnVtJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVW50eXBlZEZvcm1BcnJheSwgVW50eXBlZEZvcm1Db250cm9sLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Tb3VyY2VFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tc291cmNlLmVudW0nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLXR5cGUuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkZvcm0gZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VGb3JtPFRyYW5zYWN0aW9uPiB7XG4gIGNvbnN0cnVjdG9yKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbiwgcmVnaXN0ZXJlZEZvckdzdDogYm9vbGVhbiwgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdLCBjb250cm9sczoge1xuICAgIFtrZXk6IHN0cmluZ106IEFic3RyYWN0Q29udHJvbFxuICB9ID0ge30pIHtcbiAgICBzdXBlcih0cmFuc2FjdGlvbiwgcmVnaXN0ZXJlZEZvckdzdCwgT2JqZWN0LmFzc2lnbihjb250cm9scywge1xuICAgICAgdHJhbnNhY3Rpb25zOiBuZXcgVW50eXBlZEZvcm1BcnJheShbXSksXG4gICAgICBzb3VyY2U6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodHJhbnNhY3Rpb24uc291cmNlIHx8IFRyYW5zYWN0aW9uU291cmNlRW51bS5CQU5LX1RSQU5TQUNUSU9OLCBWYWxpZGF0b3JzLnJlcXVpcmVkKVxuICAgIH0pKTtcbiAgICB0aGlzLmdldCgnZGF0ZScpLmFkZFZhbGlkYXRvcnMoW2N1cnJlbnRGaW5ZZWFyVmFsaWRhdG9yKCldKTtcblxuICAgIC8vIGNvbnZlcnQgY2hpbGQgdHJhbnNhY3Rpb25zIHRvIGNvbnRyb2xzXG4gICAgdHJhbnNhY3Rpb24udHJhbnNhY3Rpb25zLm1hcCgodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogdm9pZCA9PiB7XG4gICAgICB0aGlzLmFkZFRyYW5zYWN0aW9uQ29udHJvbCh0cmFuc2FjdGlvbik7XG4gICAgfSk7XG5cbiAgICAvLyBmb3JiaWQgdG8gYWRkIHRyYW5zYWN0aW9ucyBiZWZvcmUgcHJvcGVydHkgb3duZXJzaGlwXG4gICAgaWYgKHRyYW5zYWN0aW9uLnByb3BlcnR5KSB7XG4gICAgICB0aGlzLmdldCgnZGF0ZScpLmFkZFZhbGlkYXRvcnMoXG4gICAgICAgIG1pbkRhdGVWYWxpZGF0b3IodHJhbnNhY3Rpb24ucHJvcGVydHkubXlTaGFyZS5mcm9tRGF0ZSwgTWVzc2FnZXNFbnVtLkRBVEVfVkFMSURBVElPTl9FUlJPUilcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gcHJvcGVydHkgaW5jb21lIHVzdWFsbHkgY29tZXMgd2l0aCBmZWVzLCBhZGQgZW1wdHkgY29udHJvbCBmb3IgbmV3IHRyYW5zYWN0aW9uc1xuICAgIGlmICghdHJhbnNhY3Rpb24uaWQgJiYgdHJhbnNhY3Rpb24ucHJvcGVydHkgJiYgIXRyYW5zYWN0aW9uLnRyYW5zYWN0aW9ucy5sZW5ndGggJiYgdHJhbnNhY3Rpb24uaXNDcmVkaXQoKSkge1xuICAgICAgdGhpcy5hZGRUcmFuc2FjdGlvbkNvbnRyb2woKTtcbiAgICB9XG5cbiAgICAvLyBmb3JiaWQgdG8gZWRpdCBhbW91bnQgZm9yIGFsbG9jYXRlZCB0cmFuc2FjdGlvbnMgdG8gcHJldmVudCB3cm9uZyBhbGxvY2F0aW9uc1xuICAgIGlmIChhbGxvY2F0aW9ucy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuZ2V0KCdhbW91bnQnKS5kaXNhYmxlKCk7XG4gICAgICB0aGlzLmdldCgnZGF0ZScpLmRpc2FibGUoKTtcbiAgICB9XG4gIH1cblxuICBhZGRUcmFuc2FjdGlvbkNvbnRyb2wodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uID0gcGxhaW5Ub0NsYXNzKFRyYW5zYWN0aW9uLCB7fSkpOiB2b2lkIHtcbiAgICBjb25zdCBmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXAgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgICBpZDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh0cmFuc2FjdGlvbi5pZCksXG4gICAgICBjaGFydEFjY291bnRzOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHRyYW5zYWN0aW9uLmNoYXJ0QWNjb3VudHMsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBhdXRvY29tcGxldGVWYWxpZGF0b3IoKV0pLFxuICAgICAgYW1vdW50OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHRyYW5zYWN0aW9uLmFtb3VudCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSxcbiAgICB9KTtcblxuICAgICh0aGlzLmdldCgndHJhbnNhY3Rpb25zJykgYXMgVW50eXBlZEZvcm1BcnJheSkucHVzaChmb3JtR3JvdXApO1xuICB9XG5cbiAgcmVtb3ZlVHJhbnNhY3Rpb25Db250cm9sKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAodGhpcy5nZXQoJ3RyYW5zYWN0aW9ucycpIGFzIFVudHlwZWRGb3JtQXJyYXkpLnJlbW92ZUF0KGluZGV4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBpbmNvbWUgdHJhbnNhY3Rpb25zIG1pZ2h0IGluY2x1ZGUgYWRqdXN0bWVudHMgKGNoaWxkIHRyYW5zYWN0aW9ucyksIGxpa2UgdGlwcyBvciBmZWVzLlxuICAgKiBBZGp1c3RtZW50cyBpbmhlcml0IG1vc3Qgb2YgdGhlIGZpZWxkcyBmcm9tIHBhcmVudCB0cmFuc2FjdGlvblxuICAgKi9cbiAgYnVpbGRUcmFuc2FjdGlvbnModHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogVHJhbnNhY3Rpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCd0cmFuc2FjdGlvbnMnKS52YWx1ZS5tYXAoKGNoaWxkVHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSA9PiBPYmplY3QuYXNzaWduKFxuICAgICAge1xuICAgICAgICBkZXNjcmlwdGlvbjogY2hpbGRUcmFuc2FjdGlvbi5jaGFydEFjY291bnRzPy5uYW1lLFxuICAgICAgICBkYXRlOiB0cmFuc2FjdGlvbi5kYXRlLFxuICAgICAgICBjbGFpbVBlcmNlbnQ6ICh0cmFuc2FjdGlvbi5jbGFpbVBlcmNlbnQgKiBjaGlsZFRyYW5zYWN0aW9uLmNoYXJ0QWNjb3VudHM/LnRheGFibGVQZXJjZW50KSAvIDEwMCxcbiAgICAgICAgc291cmNlOiBUcmFuc2FjdGlvblNvdXJjZUVudW0uQkFOS19UUkFOU0FDVElPTixcbiAgICAgICAgdHlwZTogY2hpbGRUcmFuc2FjdGlvbi5jaGFydEFjY291bnRzPy5pc0V4cGVuc2UoKSA/IFRyYW5zYWN0aW9uVHlwZUVudW0uREVCSVQgOiBUcmFuc2FjdGlvblR5cGVFbnVtLkNSRURJVCxcbiAgICAgICAgaW5jb21lU291cmNlOiB0cmFuc2FjdGlvbi5pbmNvbWVTb3VyY2UsXG4gICAgICAgIHByb3BlcnR5OiB0cmFuc2FjdGlvbi5wcm9wZXJ0eVxuICAgICAgfSxcbiAgICAgIHRoaXMubW9kZWwudHJhbnNhY3Rpb25zLmZpbmQoKHRyYW5zYWN0aW9uKSA9PiB0cmFuc2FjdGlvbi5pZCA9PT0gY2hpbGRUcmFuc2FjdGlvblsnaWQnXSkgfHwge30sXG4gICAgICBjaGlsZFRyYW5zYWN0aW9uLFxuICAgICkpO1xuICB9XG5cbiAgc3VibWl0KGRhdGE6IG9iamVjdCA9IHt9KTogVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBzdXBlci5zdWJtaXQoT2JqZWN0LmFzc2lnbihkYXRhLCB7IHRyYW5zYWN0aW9uczogdGhpcy5idWlsZFRyYW5zYWN0aW9ucyh0aGlzLmN1cnJlbnRWYWx1ZSkgfSksIHRydWUpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { AllocationRuleTransaction as AllocationRuleTransactionBase } from '../../db/Models/transaction/allocation-rule-transaction';
|
|
3
3
|
import { ChartAccounts } from '../chart-accounts';
|
|
4
|
-
import { Transform, Type } from 'class-transformer';
|
|
4
|
+
import { Transform, Type, plainToClass } from 'class-transformer';
|
|
5
5
|
import { AllocationRuleTransactionMetaField } from './allocation-rule-transaction-meta-field';
|
|
6
|
-
import { Loan, Property, SoleBusiness, TransactionAllocation } from '../../models';
|
|
6
|
+
import { Loan, Property, SoleBusiness, Transaction, TransactionAllocation } from '../../models';
|
|
7
7
|
import { IncomeSource } from '../income-source';
|
|
8
8
|
import { ChartAccountsListEnum } from '../../db/Enums';
|
|
9
9
|
import merge from 'lodash/merge';
|
|
10
10
|
import { TransactionOperationEnum } from '../../db/Enums/transaction-operation.enum';
|
|
11
|
+
import { TransactionTypeEnum } from '../../db/Enums/transaction-type.enum';
|
|
11
12
|
export class AllocationRuleTransaction extends AllocationRuleTransactionBase {
|
|
12
13
|
constructor() {
|
|
13
14
|
super(...arguments);
|
|
@@ -49,18 +50,21 @@ export class AllocationRuleTransaction extends AllocationRuleTransactionBase {
|
|
|
49
50
|
loan: this.loan,
|
|
50
51
|
incomeSource: this.incomeSource,
|
|
51
52
|
metaFields: this.metaFields,
|
|
52
|
-
|
|
53
|
-
childTransactions: this.childTransactions,
|
|
53
|
+
transactions: [],
|
|
54
54
|
business: this.business,
|
|
55
55
|
operation: TransactionOperationEnum.ALLOCATE,
|
|
56
56
|
});
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
57
|
+
transaction.amount *= this.amountPercentCoefficient;
|
|
58
|
+
// child transactions inherit most of the fields from parent transaction
|
|
59
|
+
this.childTransactions.forEach((childTransaction) => {
|
|
60
|
+
transaction.transactions.push(Object.assign(plainToClass(Transaction, {}), transaction, {
|
|
61
|
+
amount: childTransaction.amount,
|
|
62
|
+
chartAccounts: childTransaction.chartAccounts,
|
|
63
|
+
description: childTransaction.chartAccounts.name,
|
|
64
|
+
type: childTransaction.chartAccounts.isExpense() ? TransactionTypeEnum.DEBIT : TransactionTypeEnum.CREDIT,
|
|
65
|
+
transactions: [],
|
|
66
|
+
}));
|
|
67
|
+
});
|
|
64
68
|
transaction.allocations = [TransactionAllocation.create(transaction.amountWithGst, bankTransaction)];
|
|
65
69
|
return transaction;
|
|
66
70
|
}
|
|
@@ -102,4 +106,4 @@ __decorate([
|
|
|
102
106
|
__decorate([
|
|
103
107
|
Type(() => Number)
|
|
104
108
|
], AllocationRuleTransaction.prototype, "tax", void 0);
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvbi1ydWxlLXRyYW5zYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy90cmFuc2FjdGlvbi9hbGxvY2F0aW9uLXJ1bGUtdHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCx5QkFBeUIsSUFBSSw2QkFBNkIsRUFDM0QsTUFBTSx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RixPQUFPLEVBQW1CLElBQUksRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFlLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2pILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEtBQUssTUFBTSxjQUFjLENBQUM7QUFDakMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFckYsTUFBTSxPQUFPLHlCQUEwQixTQUFRLDZCQUE2QjtJQUE1RTs7UUErQnNCLGlCQUFZLEdBQUcsR0FBRyxDQUFDO1FBQ25CLFFBQUcsR0FBRyxDQUFDLENBQUM7UUFFNUIsV0FBTSxHQUFXLElBQUksQ0FBQztJQThEeEIsQ0FBQztJQTVEQyxJQUFJLHdCQUF3QjtRQUMxQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELHFCQUFx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LENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQzt1REFDdEU7QUFJWDtJQUZDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7SUFDeEIsU0FBUyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQzsrREFDckQ7QUFJNUI7SUFGQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDO0lBQ3hCLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUM7MkRBQzFEO0FBR3ZCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtDQUFrQyxDQUFDOzZEQUNFO0FBR2pEO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO29FQUNPO0FBRzdDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO29FQUNTO0FBRTNCO0lBQW5CLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7K0RBQW9CO0FBQ25CO0lBQW5CLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7c0RBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uIGFzIEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25CYXNlXG59IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi9hbGxvY2F0aW9uLXJ1bGUtdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IFRyYW5zZm9ybSwgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25NZXRhRmllbGQgfSBmcm9tICcuL2FsbG9jYXRpb24tcnVsZS10cmFuc2FjdGlvbi1tZXRhLWZpZWxkJztcbmltcG9ydCB7IEJhbmtUcmFuc2FjdGlvbiwgTG9hbiwgUHJvcGVydHksIFNvbGVCdXNpbmVzcywgVHJhbnNhY3Rpb24sIFRyYW5zYWN0aW9uQWxsb2NhdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2UgfSBmcm9tICcuLi9pbmNvbWUtc291cmNlJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zJztcbmltcG9ydCBtZXJnZSBmcm9tICdsb2Rhc2gvbWVyZ2UnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tb3BlcmF0aW9uLmVudW0nO1xuXG5leHBvcnQgY2xhc3MgQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbiBleHRlbmRzIEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25CYXNlIHtcbiAgQFR5cGUoKCkgPT4gQ2hhcnRBY2NvdW50cylcbiAgLy8gQFRPRE8gQWxleDogQ3JlYXRlIGN1c3RvbSBkZWNvcmF0b3IgZm9yIHRoaXMgdHJhbnNmb3JtXG4gIEBUcmFuc2Zvcm0oKHsgdmFsdWUgfSkgPT4gKHsgaWQ6IHZhbHVlLmlkIH0pLCB7IHRvUGxhaW5Pbmx5OiB0cnVlIH0pXG4gIGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHM7XG5cbiAgQFR5cGUoKCkgPT4gUHJvcGVydHkpXG4gIEBUcmFuc2Zvcm0oKHsgdmFsdWUgfSkgPT4gdmFsdWUgPyB7IGlkOiB2YWx1ZS5pZCB9IDogbnVsbCwgeyB0b1BsYWluT25seTogdHJ1ZSB9KVxuICBwcm9wZXJ0eTogUHJvcGVydHk7XG5cbiAgQFR5cGUoKCkgPT4gTG9hbilcbiAgQFRyYW5zZm9ybSgoeyB2YWx1ZSB9KSA9PiB2YWx1ZSA/IHsgaWQ6IHZhbHVlLmlkIH0gOiBudWxsLCB7IHRvUGxhaW5Pbmx5OiB0cnVlIH0pXG4gIGxvYW46IExvYW47XG5cbiAgQFR5cGUoKCkgPT4gSW5jb21lU291cmNlKVxuICBAVHJhbnNmb3JtKCh7IHZhbHVlIH0pID0+IHZhbHVlID8geyBpZDogdmFsdWUuaWQgfSA6IG51bGwsIHsgdG9QbGFpbk9ubHk6IHRydWUgfSlcbiAgaW5jb21lU291cmNlPzogSW5jb21lU291cmNlO1xuXG4gIEBUeXBlKCgpID0+IFNvbGVCdXNpbmVzcylcbiAgQFRyYW5zZm9ybSgoeyB2YWx1ZSB9KSA9PiB2YWx1ZSA/IHsgaWQ6IHZhbHVlLmlkIH0gOiBudWxsLCB7IHRvUGxhaW5Pbmx5OiB0cnVlIH0pXG4gIGJ1c2luZXNzOiBTb2xlQnVzaW5lc3M7XG5cbiAgQFR5cGUoKCkgPT4gQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbk1ldGFGaWVsZClcbiAgbWV0YUZpZWxkczogQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbk1ldGFGaWVsZFtdO1xuXG4gIEBUeXBlKCgpID0+IEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb24pXG4gIHBhcmVudFRyYW5zYWN0aW9uOiBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uO1xuXG4gIEBUeXBlKCgpID0+IEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb24pXG4gIGNoaWxkVHJhbnNhY3Rpb25zOiBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uW107XG5cbiAgQFR5cGUoKCkgPT4gTnVtYmVyKSBjbGFpbVBlcmNlbnQgPSAxMDA7XG4gIEBUeXBlKCgpID0+IE51bWJlcikgdGF4ID0gMDtcblxuICBhbW91bnQ6IG51bWJlciA9IG51bGw7XG5cbiAgZ2V0IGFtb3VudFBlcmNlbnRDb2VmZmljaWVudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmFtb3VudFBlcmNlbnQgPyB0aGlzLmFtb3VudFBlcmNlbnQgLyAxMDAgOiAxO1xuICB9XG5cbiAgY2FsY3VsYXRlQ2xhaW1QZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmNoYXJ0QWNjb3VudHMpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGxldCBjbGFpbVBlcmNlbnQgPSB0aGlzLmNoYXJ0QWNjb3VudHMudGF4YWJsZVBlcmNlbnQ7XG5cbiAgICAvLyBQcm9wZXJ0eSBjbGFpbSAob3duZXJzaGlwJSB4IHNoYXJlZCUpIGZvciBwcm9wZXJ0eSBleHBlbnNlcywgdGF4YWJsZSBwZXJjZW50IGZvciBvdGhlcnNcbiAgICBpZiAodGhpcy5jaGFydEFjY291bnRzPy5pc1Byb3BlcnR5KCkgJiYgdGhpcy5wcm9wZXJ0eSkge1xuXG4gICAgICBpZiAodGhpcy5jaGFydEFjY291bnRzLmlzUHJvcGVydHlFeHBlbnNlKCkgJiYgdGhpcy5jaGFydEFjY291bnRzLmlkICE9PSBDaGFydEFjY291bnRzTGlzdEVudW0uUExBVEZPUk1fRkVFUykge1xuICAgICAgICBjbGFpbVBlcmNlbnQgKj0gdGhpcy5wcm9wZXJ0eT8uY2xhaW1Db2VmZmljaWVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY2xhaW1QZXJjZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIElmIHJ1bGUgdHJhbnNhY3Rpb24gaGFzIGFtb3VudCB0aGVuIHNwbGl0IGVuYWJsZWQuIFRoZXJlIGlzIDAgd2hlbiBzcGxpdCBkaXNhYmxlZFxuICAgKi9cbiAgaXNTcGxpdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmFtb3VudFBlcmNlbnQ7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIFRyYW5zYWN0aW9uIGluc3RhbmNlIGJhc2VkIG9uIHBhc3NlZCBiYW5rIHRyYW5zYWN0aW9uIGFuZCBydWxlIHRyYW5zYWN0aW9uXG4gICAqL1xuICB0b1RyYW5zYWN0aW9uKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gbWVyZ2UoXG4gICAgICBiYW5rVHJhbnNhY3Rpb24udG9UcmFuc2FjdGlvbih0aGlzLmlzR1NUKSxcbiAgICAgIHtcbiAgICAgICAgdGF4OiB0aGlzLnRheCxcbiAgICAgICAgY2xhaW1QZXJjZW50OiB0aGlzLmNsYWltUGVyY2VudCxcbiAgICAgICAgY2hhcnRBY2NvdW50czogdGhpcy5jaGFydEFjY291bnRzLFxuICAgICAgICBwcm9wZXJ0eTogdGhpcy5wcm9wZXJ0eSxcbiAgICAgICAgbG9hbjogdGhpcy5sb2FuLFxuICAgICAgICBpbmNvbWVTb3VyY2U6IHRoaXMuaW5jb21lU291cmNlLFxuICAgICAgICBtZXRhRmllbGRzOiB0aGlzLm1ldGFGaWVsZHMsXG4gICAgICAgIHBhcmVudFRyYW5zYWN0aW9uOiB0aGlzLnBhcmVudFRyYW5zYWN0aW9uLFxuICAgICAgICBjaGlsZFRyYW5zYWN0aW9uczogdGhpcy5jaGlsZFRyYW5zYWN0aW9ucyxcbiAgICAgICAgYnVzaW5lc3M6IHRoaXMuYnVzaW5lc3MsXG4gICAgICAgIG9wZXJhdGlvbjogVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtLkFMTE9DQVRFLFxuICAgICAgfVxuICAgICk7XG4gICAgLy8gYW1vdW50OiBiYW5rVHJhbnNhY3Rpb24uYW1vdW50ICogKHRoaXMuYW1vdW50UGVyY2VudCA/ICh0aGlzLmFtb3VudFBlcmNlbnQgLyAxMDApIDogMSksXG4gICAgaWYgKHRoaXMuYW1vdW50KSB7XG4gICAgICB0cmFuc2FjdGlvbi5hbW91bnQgPSB0aGlzLmFtb3VudDtcbiAgICB9IGVsc2UgaWYgKHRoaXMuYW1vdW50UGVyY2VudCkge1xuICAgICAgdHJhbnNhY3Rpb24uYW1vdW50ICo9IHRoaXMuYW1vdW50UGVyY2VudENvZWZmaWNpZW50O1xuICAgIH1cblxuICAgIHRyYW5zYWN0aW9uLmFsbG9jYXRpb25zID0gW1RyYW5zYWN0aW9uQWxsb2NhdGlvbi5jcmVhdGUodHJhbnNhY3Rpb24uYW1vdW50V2l0aEdzdCwgYmFua1RyYW5zYWN0aW9uKV1cblxuICAgIHJldHVybiB0cmFuc2FjdGlvbjtcbiAgfVxufVxuIl19
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvbi1ydWxlLXRyYW5zYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy90cmFuc2FjdGlvbi9hbGxvY2F0aW9uLXJ1bGUtdHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCx5QkFBeUIsSUFBSSw2QkFBNkIsRUFDM0QsTUFBTSx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDOUYsT0FBTyxFQUFtQixJQUFJLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDakgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUNqQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUzRSxNQUFNLE9BQU8seUJBQTBCLFNBQVEsNkJBQTZCO0lBQTVFOztRQStCc0IsaUJBQVksR0FBRyxHQUFHLENBQUM7UUFDbkIsUUFBRyxHQUFHLENBQUMsQ0FBQztRQUU1QixXQUFNLEdBQVcsSUFBSSxDQUFDO0lBa0V4QixDQUFDO0lBaEVDLElBQUksd0JBQXdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3ZCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQztRQUVyRCwwRkFBMEY7UUFDMUYsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFFckQsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixFQUFFLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUsscUJBQXFCLENBQUMsYUFBYSxFQUFFO2dCQUMzRyxZQUFZLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQzthQUNqRDtTQUNGO1FBRUQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTztRQUNMLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDOUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsYUFBYSxDQUFDLGVBQWdDO1FBQzVDLE1BQU0sV0FBVyxHQUFnQixLQUFLLENBQ3BDLGVBQWUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUN6QztZQUNFLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNiLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDM0IsWUFBWSxFQUFFLEVBQUU7WUFDaEIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLFNBQVMsRUFBRSx3QkFBd0IsQ0FBQyxRQUFRO1NBQzdDLENBQ0YsQ0FBQztRQUNGLFdBQVcsQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLHdCQUF3QixDQUFDO1FBQ3BELHdFQUF3RTtRQUN4RSxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsZ0JBQTJDLEVBQUUsRUFBRTtZQUM3RSxXQUFXLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLEVBQUUsV0FBVyxFQUFFO2dCQUN0RixNQUFNLEVBQUUsZ0JBQWdCLENBQUMsTUFBTTtnQkFDL0IsYUFBYSxFQUFFLGdCQUFnQixDQUFDLGFBQWE7Z0JBQzdDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsSUFBSTtnQkFDaEQsSUFBSSxFQUFFLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNO2dCQUN6RyxZQUFZLEVBQUUsRUFBRTthQUNqQixDQUFDLENBQUMsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBRUgsV0FBVyxDQUFDLFdBQVcsR0FBRyxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUM7UUFFckcsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztDQUNGO0FBaEdDO0lBSEMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQztJQUMxQix5REFBeUQ7O0lBQ3hELFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUM7Z0VBQ3ZDO0FBSTdCO0lBRkMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQztJQUNwQixTQUFTLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDOzJEQUM5RDtBQUluQjtJQUZDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7SUFDaEIsU0FBUyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQzt1REFDdEU7QUFJWDtJQUZDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7SUFDeEIsU0FBUyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQzsrREFDckQ7QUFJNUI7SUFGQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDO0lBQ3hCLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUM7MkRBQzFEO0FBR3ZCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtDQUFrQyxDQUFDOzZEQUNFO0FBR2pEO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO29FQUNPO0FBRzdDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO29FQUNTO0FBRTNCO0lBQW5CLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7K0RBQW9CO0FBQ25CO0lBQW5CLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7c0RBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uIGFzIEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25CYXNlXG59IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi9hbGxvY2F0aW9uLXJ1bGUtdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IFRyYW5zZm9ybSwgVHlwZSwgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbk1ldGFGaWVsZCB9IGZyb20gJy4vYWxsb2NhdGlvbi1ydWxlLXRyYW5zYWN0aW9uLW1ldGEtZmllbGQnO1xuaW1wb3J0IHsgQmFua1RyYW5zYWN0aW9uLCBMb2FuLCBQcm9wZXJ0eSwgU29sZUJ1c2luZXNzLCBUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25BbGxvY2F0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c0xpc3RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IG1lcmdlIGZyb20gJ2xvZGFzaC9tZXJnZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1vcGVyYXRpb24uZW51bSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tdHlwZS5lbnVtJztcblxuZXhwb3J0IGNsYXNzIEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb24gZXh0ZW5kcyBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uQmFzZSB7XG4gIEBUeXBlKCgpID0+IENoYXJ0QWNjb3VudHMpXG4gIC8vIEBUT0RPIEFsZXg6IENyZWF0ZSBjdXN0b20gZGVjb3JhdG9yIGZvciB0aGlzIHRyYW5zZm9ybVxuICBAVHJhbnNmb3JtKCh7IHZhbHVlIH0pID0+ICh7IGlkOiB2YWx1ZS5pZCB9KSwgeyB0b1BsYWluT25seTogdHJ1ZSB9KVxuICBjaGFydEFjY291bnRzOiBDaGFydEFjY291bnRzO1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5KVxuICBAVHJhbnNmb3JtKCh7IHZhbHVlIH0pID0+IHZhbHVlID8geyBpZDogdmFsdWUuaWQgfSA6IG51bGwsIHsgdG9QbGFpbk9ubHk6IHRydWUgfSlcbiAgcHJvcGVydHk6IFByb3BlcnR5O1xuXG4gIEBUeXBlKCgpID0+IExvYW4pXG4gIEBUcmFuc2Zvcm0oKHsgdmFsdWUgfSkgPT4gdmFsdWUgPyB7IGlkOiB2YWx1ZS5pZCB9IDogbnVsbCwgeyB0b1BsYWluT25seTogdHJ1ZSB9KVxuICBsb2FuOiBMb2FuO1xuXG4gIEBUeXBlKCgpID0+IEluY29tZVNvdXJjZSlcbiAgQFRyYW5zZm9ybSgoeyB2YWx1ZSB9KSA9PiB2YWx1ZSA/IHsgaWQ6IHZhbHVlLmlkIH0gOiBudWxsLCB7IHRvUGxhaW5Pbmx5OiB0cnVlIH0pXG4gIGluY29tZVNvdXJjZT86IEluY29tZVNvdXJjZTtcblxuICBAVHlwZSgoKSA9PiBTb2xlQnVzaW5lc3MpXG4gIEBUcmFuc2Zvcm0oKHsgdmFsdWUgfSkgPT4gdmFsdWUgPyB7IGlkOiB2YWx1ZS5pZCB9IDogbnVsbCwgeyB0b1BsYWluT25seTogdHJ1ZSB9KVxuICBidXNpbmVzczogU29sZUJ1c2luZXNzO1xuXG4gIEBUeXBlKCgpID0+IEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25NZXRhRmllbGQpXG4gIG1ldGFGaWVsZHM6IEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25NZXRhRmllbGRbXTtcblxuICBAVHlwZSgoKSA9PiBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uKVxuICBwYXJlbnRUcmFuc2FjdGlvbjogQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbjtcblxuICBAVHlwZSgoKSA9PiBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uKVxuICBjaGlsZFRyYW5zYWN0aW9uczogQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbltdO1xuXG4gIEBUeXBlKCgpID0+IE51bWJlcikgY2xhaW1QZXJjZW50ID0gMTAwO1xuICBAVHlwZSgoKSA9PiBOdW1iZXIpIHRheCA9IDA7XG5cbiAgYW1vdW50OiBudW1iZXIgPSBudWxsO1xuXG4gIGdldCBhbW91bnRQZXJjZW50Q29lZmZpY2llbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5hbW91bnRQZXJjZW50ID8gdGhpcy5hbW91bnRQZXJjZW50IC8gMTAwIDogMTtcbiAgfVxuXG4gIGNhbGN1bGF0ZUNsYWltUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5jaGFydEFjY291bnRzKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBsZXQgY2xhaW1QZXJjZW50ID0gdGhpcy5jaGFydEFjY291bnRzLnRheGFibGVQZXJjZW50O1xuXG4gICAgLy8gUHJvcGVydHkgY2xhaW0gKG93bmVyc2hpcCUgeCBzaGFyZWQlKSBmb3IgcHJvcGVydHkgZXhwZW5zZXMsIHRheGFibGUgcGVyY2VudCBmb3Igb3RoZXJzXG4gICAgaWYgKHRoaXMuY2hhcnRBY2NvdW50cz8uaXNQcm9wZXJ0eSgpICYmIHRoaXMucHJvcGVydHkpIHtcblxuICAgICAgaWYgKHRoaXMuY2hhcnRBY2NvdW50cy5pc1Byb3BlcnR5RXhwZW5zZSgpICYmIHRoaXMuY2hhcnRBY2NvdW50cy5pZCAhPT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlBMQVRGT1JNX0ZFRVMpIHtcbiAgICAgICAgY2xhaW1QZXJjZW50ICo9IHRoaXMucHJvcGVydHk/LmNsYWltQ29lZmZpY2llbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGNsYWltUGVyY2VudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBydWxlIHRyYW5zYWN0aW9uIGhhcyBhbW91bnQgdGhlbiBzcGxpdCBlbmFibGVkLiBUaGVyZSBpcyAwIHdoZW4gc3BsaXQgZGlzYWJsZWRcbiAgICovXG4gIGlzU3BsaXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5hbW91bnRQZXJjZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBUcmFuc2FjdGlvbiBpbnN0YW5jZSBiYXNlZCBvbiBwYXNzZWQgYmFuayB0cmFuc2FjdGlvbiBhbmQgcnVsZSB0cmFuc2FjdGlvblxuICAgKi9cbiAgdG9UcmFuc2FjdGlvbihiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbik6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24gPSBtZXJnZShcbiAgICAgIGJhbmtUcmFuc2FjdGlvbi50b1RyYW5zYWN0aW9uKHRoaXMuaXNHU1QpLFxuICAgICAge1xuICAgICAgICB0YXg6IHRoaXMudGF4LFxuICAgICAgICBjbGFpbVBlcmNlbnQ6IHRoaXMuY2xhaW1QZXJjZW50LFxuICAgICAgICBjaGFydEFjY291bnRzOiB0aGlzLmNoYXJ0QWNjb3VudHMsXG4gICAgICAgIHByb3BlcnR5OiB0aGlzLnByb3BlcnR5LFxuICAgICAgICBsb2FuOiB0aGlzLmxvYW4sXG4gICAgICAgIGluY29tZVNvdXJjZTogdGhpcy5pbmNvbWVTb3VyY2UsXG4gICAgICAgIG1ldGFGaWVsZHM6IHRoaXMubWV0YUZpZWxkcyxcbiAgICAgICAgdHJhbnNhY3Rpb25zOiBbXSxcbiAgICAgICAgYnVzaW5lc3M6IHRoaXMuYnVzaW5lc3MsXG4gICAgICAgIG9wZXJhdGlvbjogVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtLkFMTE9DQVRFLFxuICAgICAgfVxuICAgICk7XG4gICAgdHJhbnNhY3Rpb24uYW1vdW50ICo9IHRoaXMuYW1vdW50UGVyY2VudENvZWZmaWNpZW50O1xuICAgIC8vIGNoaWxkIHRyYW5zYWN0aW9ucyBpbmhlcml0IG1vc3Qgb2YgdGhlIGZpZWxkcyBmcm9tIHBhcmVudCB0cmFuc2FjdGlvblxuICAgIHRoaXMuY2hpbGRUcmFuc2FjdGlvbnMuZm9yRWFjaCgoY2hpbGRUcmFuc2FjdGlvbjogQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbikgPT4ge1xuICAgICAgdHJhbnNhY3Rpb24udHJhbnNhY3Rpb25zLnB1c2goT2JqZWN0LmFzc2lnbihwbGFpblRvQ2xhc3MoVHJhbnNhY3Rpb24sIHt9KSwgdHJhbnNhY3Rpb24sIHtcbiAgICAgICAgYW1vdW50OiBjaGlsZFRyYW5zYWN0aW9uLmFtb3VudCxcbiAgICAgICAgY2hhcnRBY2NvdW50czogY2hpbGRUcmFuc2FjdGlvbi5jaGFydEFjY291bnRzLFxuICAgICAgICBkZXNjcmlwdGlvbjogY2hpbGRUcmFuc2FjdGlvbi5jaGFydEFjY291bnRzLm5hbWUsXG4gICAgICAgIHR5cGU6IGNoaWxkVHJhbnNhY3Rpb24uY2hhcnRBY2NvdW50cy5pc0V4cGVuc2UoKSA/IFRyYW5zYWN0aW9uVHlwZUVudW0uREVCSVQgOiBUcmFuc2FjdGlvblR5cGVFbnVtLkNSRURJVCxcbiAgICAgICAgdHJhbnNhY3Rpb25zOiBbXSxcbiAgICAgIH0pKTtcbiAgICB9KTtcblxuICAgIHRyYW5zYWN0aW9uLmFsbG9jYXRpb25zID0gW1RyYW5zYWN0aW9uQWxsb2NhdGlvbi5jcmVhdGUodHJhbnNhY3Rpb24uYW1vdW50V2l0aEdzdCwgYmFua1RyYW5zYWN0aW9uKV07XG5cbiAgICByZXR1cm4gdHJhbnNhY3Rpb247XG4gIH1cbn1cbiJdfQ==
|
|
@@ -20,7 +20,9 @@ import { SoleInvoiceItem } from '../sole';
|
|
|
20
20
|
export class Transaction extends TransactionBase {
|
|
21
21
|
constructor() {
|
|
22
22
|
super(...arguments);
|
|
23
|
-
|
|
23
|
+
/**
|
|
24
|
+
* @TODO rename to childTransactions
|
|
25
|
+
*/
|
|
24
26
|
this.transactions = [];
|
|
25
27
|
this.metaFields = [];
|
|
26
28
|
this.allocations = [];
|
|
@@ -232,4 +234,4 @@ __decorate([
|
|
|
232
234
|
__decorate([
|
|
233
235
|
Transform(({ value }) => +value)
|
|
234
236
|
], Transaction.prototype, "tax", void 0);
|
|
235
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxJQUFJLGVBQWUsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFDc0IscUJBQXFCLEVBQ2hELHFCQUFxQixFQUNyQiw4QkFBOEIsRUFBRSxrQ0FBa0MsR0FDbkUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNyRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMzRixPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUMvQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsVUFBVSxFQUFtQyxNQUFNLG1CQUFt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Y3Rpb24gYXMgVHJhbnNhY3Rpb25CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHtcbiAgQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bSwgQ2hhcnRBY2NvdW50c0tlZXBTaWduLFxuICBDaGFydEFjY291bnRzTGlzdEVudW0sXG4gIENoYXJ0QWNjb3VudHNNZXRhRmllbGRMaXN0RW51bSwgQ2hhcnRBY2NvdW50c1VuYWxsb2NhdGFibGVMaXN0RW51bSxcbn0gZnJvbSAnLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tb3BlcmF0aW9uLmVudW0nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Tb3VyY2VFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tc291cmNlLmVudW0nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9kZXByZWNpYXRpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IERlcHJlY2lhdGlvbkNhbGN1bGF0aW9uRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2RlcHJlY2lhdGlvbi1jYWxjdWxhdGlvbi5lbnVtJztcbmltcG9ydCB7IFRyYW5zZm9ybSwgVHlwZSwgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICcuLi9wcm9wZXJ0eSc7XG5pbXBvcnQgeyBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLCBDaGFydEFjY291bnRzIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlIH0gZnJvbSAnLi4vaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbk1ldGFGaWVsZCB9IGZyb20gJy4vdHJhbnNhY3Rpb24tbWV0YS1maWVsZCc7XG5pbXBvcnQgeyBMb2FuIH0gZnJvbSAnLi4vbG9hbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uLWFsbG9jYXRpb24nO1xuaW1wb3J0IHsgQ29sbGVjdGlvbiwgVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IERlcHJlY2lhdGlvbiB9IGZyb20gJy4uL2RlcHJlY2lhdGlvbic7XG5pbXBvcnQgeyBFeHBlbnNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBTb2xlSW52b2ljZUl0ZW0gfSBmcm9tICcuLi9zb2xlJztcblxuLy8gQFRPRE8gQWxleDogcmVmYWN0b3I6IG1vdmUgaGVyZSBhbGxvY2F0aW9ucyBtZXRob2RzLCBuZXRBbW91bnQgPSBhbW91bnQsIGdyb3NzQW1vdW50IGNhbGN1bGF0aW9uLCByZW1vdmUgdW51c2VkIG1ldGhvZHMsIGV0Yy5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbiBleHRlbmRzIFRyYW5zYWN0aW9uQmFzZSBpbXBsZW1lbnRzIEV4cGVuc2Uge1xuICBzdGF0aWMgY2xhc3NOYW1lID0gJ1RyYW5zYWN0aW9uJztcbiAgLy8gbGlzdCBvZiBjaGlsZCB0cmFuc2FjdGlvbnMgKGZlZXMpXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uKVxuICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10gPSBbXTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eSlcbiAgcHJvcGVydHk6IFByb3BlcnR5O1xuXG4gIEBUeXBlKCgpID0+IENoYXJ0QWNjb3VudHMpXG4gIGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHM7XG5cbiAgQFR5cGUoKCkgPT4gSW5jb21lU291cmNlKVxuICBpbmNvbWVTb3VyY2U6IEluY29tZVNvdXJjZTtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbk1ldGFGaWVsZClcbiAgbWV0YUZpZWxkczogVHJhbnNhY3Rpb25NZXRhRmllbGRbXSA9IFtdO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uKVxuICB0cmFuc2ZlcjogVHJhbnNhY3Rpb247XG5cbiAgQFR5cGUoKCkgPT4gTG9hbilcbiAgbG9hbjogTG9hbjtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBkYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uQWxsb2NhdGlvbilcbiAgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdID0gW107XG5cbiAgQFR5cGUoKCkgPT4gU29sZUludm9pY2VJdGVtKVxuICBpbnZvaWNlSXRlbTogU29sZUludm9pY2VJdGVtO1xuXG4gIEBUcmFuc2Zvcm0oKHsgdmFsdWUgfSkgPT4gK3ZhbHVlKVxuICB0YXggPSAwO1xuXG4gIG9wZXJhdGlvbjogVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtID0gVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtLkZJTkRfQU5EX01BVENIO1xuICBjbGFpbVBlcmNlbnQgPSAxMDA7XG4gIGFtb3VudCA9IDA7XG5cbiAgZ2V0IGludm9pY2VJZCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmludm9pY2VJdGVtPy5pbnZvaWNlLmlkO1xuICB9XG5cbiAgaXNEZWJpdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBUcmFuc2FjdGlvblR5cGVFbnVtLkRFQklUO1xuICB9XG5cbiAgaXNDcmVkaXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlRW51bS5DUkVESVQ7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gbW92ZSB0byBiYXNlIGNvbGxlY3Rpb25cbiAgICovXG4gIGlzSW5jb21lKCk6IGJvb2xlYW4ge1xuICAgIC8vIEBUT0RPIG5vdCB1c2VkXG4gICAgaWYgKCF0aGlzLmNoYXJ0QWNjb3VudHMpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzQ3JlZGl0KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuaW5jb21lLmluY2x1ZGVzKHRoaXMuY2hhcnRBY2NvdW50cy5jYXRlZ29yeSk7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gbW92ZSB0byBiYXNlIGNvbGxlY3Rpb25cbiAgICovXG4gIGlzRXhwZW5zZSgpOiBib29sZWFuIHtcbiAgICAvLyBAVE9ETyBub3QgdXNlZFxuICAgIGlmICghdGhpcy5jaGFydEFjY291bnRzKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0RlYml0KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuZXhwZW5zZS5pbmNsdWRlcyh0aGlzLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpO1xuICB9XG5cbiAgaXNQZXJzb25hbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wZXJzb25hbC5pbmNsdWRlcyh0aGlzLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpO1xuICB9XG5cbiAgaXNJbnRlcmVzdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uSU5URVJFU1RfT05fTE9BTjtcbiAgfVxuXG4gIGdldCBjaGFydEFjY291bnRzQ2F0ZWdvcmllcygpOiBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtW10ge1xuICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgY2FzZSB0aGlzLmlzUGVyc29uYWwoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWw7XG5cbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wcm9wZXJ0eTtcblxuICAgICAgY2FzZSB0aGlzLmlzU29sZVRhbmsoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuc29sZTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMud29yaztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRyYW5zYWN0aW9uIGRhdGVcbiAgICovXG4gIGdldERhdGUoKTogRGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiB0eXBlIGlzIHZlaGljbGVcbiAgICovXG4gIGlzVmVoaWNsZVRyYW5zYWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0QWNjb3VudHMuaXNWZWhpY2xlRXhwZW5zZSgpO1xuICB9XG5cbiAgZ2V0IHRheEZyZWVDb21wb25lbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YUZpZWxkTGlzdEVudW0uVEFYX0ZSRUVfQ09NUE9ORU5UKTtcbiAgfVxuXG4gIGdldCBmcmFua2luZ0NyZWRpdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhRmllbGRMaXN0RW51bS5GUkFOS0lOR19DUkVESVQpO1xuICB9XG5cbiAgZ2V0IGVsaWdpYmxlRm9yUmVkdWN0aW9uKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFGaWVsZExpc3RFbnVtLkVMSUdJQkxFX0ZPUl9SRURVQ1RJT04pO1xuICB9XG5cbiAgZ2V0IHVudGF4ZWRFbGVtZW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFGaWVsZExpc3RFbnVtLlVOVEFYRURfRUxFTUVOVCk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gcmVjb25jaWxlIG9wZXJhdGlvbiBpZiBUUkFOU0ZFUlxuICAgKiBAVE9ETyBiYWQgdXNhZ2Ugb2YgZ2V0IChhbmQgYWxsIGlzKiBtZXRob2RzKSwgZ2V0dGVyIHNob3VsZCBzb3VuZCBsaWtlIGEgbm91blxuICAgKi9cbiAgZ2V0IGlzVHJhbnNmZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMub3BlcmF0aW9uID09PSBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0uVFJBTlNGRVI7XG4gIH1cblxuICBpc0ZpbmRBbmRNYXRjaCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcGVyYXRpb24gPT09IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5GSU5EX0FORF9NQVRDSDtcbiAgfVxuXG4gIGdldCBkZWJpdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmlzRGViaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICBnZXQgY3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHZhbHVlIG9mIHRyYW5zYWN0aW9uIG1ldGEgZmllbGRcbiAgICogQHBhcmFtIGZpZWxkIGZvciB3aGljaCB2YWx1ZSBzaG91bGQgYmUgcmV0dXJuZWRcbiAgICogQFRvZG8gbW9kaWZ5ICdtZXRhRmllbGRzJyBwcm9wZXJ0eSBmcm9tIGFycmF5IHRvIENvbGxlY3Rpb25cbiAgICovXG4gIGdldE1ldGFGaWVsZFZhbHVlKGZpZWxkOiBDaGFydEFjY291bnRzTWV0YUZpZWxkTGlzdEVudW0pOiBudW1iZXIge1xuICAgIHJldHVybiArdGhpcy5tZXRhRmllbGRzLmZpbmQoKHRyYW5zYWN0aW9uTWV0YUZpZWxkOiBUcmFuc2FjdGlvbk1ldGFGaWVsZCk6IGJvb2xlYW4gPT4gdHJhbnNhY3Rpb25NZXRhRmllbGQuY2hhcnRBY2NvdW50c01ldGFGaWVsZC5pZCA9PT0gZmllbGQpPy52YWx1ZSB8fCAwO1xuICB9XG5cbiAgaXNDYXNoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNvdXJjZSA9PT0gVHJhbnNhY3Rpb25Tb3VyY2VFbnVtLkNBU0g7XG4gIH1cblxuICBjYW5GaW5kQW5kTWF0Y2goYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMucGFyZW50VHJhbnNhY3Rpb25cbiAgICAgICYmICF0aGlzLmlzQ2FzaCgpXG4gICAgICAmJiAhKHRoaXMuaXNTb2xlVGFuaygpICYmIHRoaXMuaXNJbmNvbWUoKSlcbiAgICAgICYmICFPYmplY3QudmFsdWVzKENoYXJ0QWNjb3VudHNVbmFsbG9jYXRhYmxlTGlzdEVudW0pLmluY2x1ZGVzKHRoaXMuY2hhcnRBY2NvdW50cy5pZClcbiAgICAgICYmICF0aGlzLmlzQWxsb2NhdGVkKGFsbG9jYXRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgRGVwcmVjaWF0aW9uIGluc3RhbmNlIGJhc2VkIG9uIFRyYW5zYWN0aW9uXG4gICAqL1xuICB0b0RlcHJlY2lhdGlvbigpOiBEZXByZWNpYXRpb24ge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3MoRGVwcmVjaWF0aW9uLCB7XG4gICAgICBkYXRlOiB0aGlzLmRhdGUsXG4gICAgICBhbW91bnQ6IE1hdGguYWJzKHRoaXMuYW1vdW50KSxcbiAgICAgIGNoYXJ0QWNjb3VudHM6IHRoaXMuY2hhcnRBY2NvdW50cyxcbiAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmRlc2NyaXB0aW9uLFxuICAgICAgdHlwZTogdGhpcy5jaGFydEFjY291bnRzLmlzUHJvcGVydHlDYXBpdGFsV29ya3MoKSA/IERlcHJlY2lhdGlvblR5cGVFbnVtLkNBUElUQUxfV09SS1MgOiBEZXByZWNpYXRpb25UeXBlRW51bS5QTEFOVF9FUVVJUE1FTlQsXG4gICAgICBjbGFpbVBlcmNlbnQ6IHRoaXMuY2xhaW1QZXJjZW50LFxuICAgICAgcHJvcGVydHk6IHRoaXMucHJvcGVydHksXG4gICAgICBjYWxjdWxhdGlvbjogdGhpcy5wcm9wZXJ0eSA/IHRoaXMucHJvcGVydHkuZGVwcmVjaWF0aW9uQ2FsY3VsYXRpb24gOiBEZXByZWNpYXRpb25DYWxjdWxhdGlvbkVudW0uUFJJTUVfQ09TVCxcbiAgICAgIHRyYW5zYWN0aW9uczogW3RoaXNdLFxuICAgICAgYnVzaW5lc3M6IHRoaXMuYnVzaW5lc3MsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gaXMgY29tcGxldGVseSBhbGxvY2F0ZWRcbiAgICovXG4gIGlzQWxsb2NhdGVkKGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIE1hdGguYWJzKHRoaXMuZ2V0QWxsb2NhdGVkQW1vdW50KGFsbG9jYXRpb25zKSkgLSBNYXRoLmFicyh0aGlzLm5ldEFtb3VudCkgPj0gMDtcbiAgfVxuXG4gIGdldEFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuIGFsbG9jYXRpb25zLmZpbHRlckJ5KCd0cmFuc2FjdGlvbi5pZCcsIHRoaXMuaWQpLnN1bUJ5KCdhbW91bnQnKTtcbiAgfVxuXG4gIGdldFVuYWxsb2NhdGVkQW1vdW50KGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5uZXRBbW91bnQgLSB0aGlzLmdldEFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogVG90YWwgdHJhbnNhY3Rpb24gYW1vdW50IGluY2x1ZGluZyB0YXhlcyBhbmQgb3RoZXIgYWRkaXRpb25hbCBhbW91bnRzXG4gICAqL1xuICBnZXQgZ3Jvc3NBbW91bnQoKTogbnVtYmVyIHtcbiAgICBsZXQgZ3Jvc3NBbW91bnQgPSBzdXBlci5ncm9zc0Ftb3VudCArIHRoaXMudGF4O1xuICAgIGlmICh0aGlzLmlzRXhwZW5zZSgpKSB7XG4gICAgICByZXR1cm4gZ3Jvc3NBbW91bnQ7XG4gICAgfVxuXG4gICAgLy8gc2FsYXJ5IGluY2x1ZGVkIHRyYW5zYWN0aW9ucyBhZmZlY3QgcGFyZW50IHRyYW5zYWN0aW9uIGFtb3VudCBhbmQgYXMgYSByZXN1bHQgZ3Jvc3NBbW91bnQsIHNraXAgdG8gYXZvaWQgZG91YmxlIHN1bVxuICAgIGdyb3NzQW1vdW50ICs9IG5ldyBDb2xsZWN0aW9uKHRoaXMudHJhbnNhY3Rpb25zKVxuICAgICAgLmZpbHRlcigodCkgPT4gIXQuY2hhcnRBY2NvdW50cz8uaXNTYWxhcnlJbmNsdWRlZCgpKVxuICAgICAgLnN1bUJ5KCdhbW91bnQnLCB0cnVlKTtcblxuICAgIGlmICh0aGlzLmlzV29ya1RhbmsoKSB8fCB0aGlzLmlzSG9sZGluZ1RhbmsoKSkge1xuICAgICAgZ3Jvc3NBbW91bnQgKz0gdGhpcy5mcmFua2luZ0NyZWRpdCAtIHRoaXMudGF4RnJlZUNvbXBvbmVudCAtIHRoaXMuZWxpZ2libGVGb3JSZWR1Y3Rpb247XG4gICAgfVxuXG4gICAgcmV0dXJuIGdyb3NzQW1vdW50O1xuICB9XG5cbiAgLyoqXG4gICAqIEBUT0RPIHZpayBjb25mdXNpbmcgbG9naWMgZGVtYW5kZWQgYnkgTmljb2xlLCB3ZSBuZWVkIGEgYmV0dGVyIHV4IHRvIGZpeCBpdFxuICAgKiBuZXRBbW91bnQgbWF0Y2hlcyByZWNlaXZlZCBwYXltZW50IChiYW5rVHJhbnNhY3Rpb24gYW1vdW50KSwgaW5jbHVkZXMgZ3N0IGFuZCBzYWxhcnkgaW5jbHVkZWQgYWRqdXN0bWVudHNcbiAgICogaWUgdXNlciByZWNlaXZlZCAxMDAwJCBzYWxhcnkgaW5jbHVkaW5nIDEwMCQgdGlwcy4gTmV0QW1vdW50PTEwMDAkLCBhbW91bnQ9OTAwJCwgdGlwcz0xMDAkXG4gICAqL1xuICBnZXQgbmV0QW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIG5ldyBDb2xsZWN0aW9uKHRoaXMudHJhbnNhY3Rpb25zKVxuICAgICAgLmZpbHRlcigodCkgPT4gdC5jaGFydEFjY291bnRzPy5pc1NhbGFyeUluY2x1ZGVkKCkpXG4gICAgICAuc3VtQnkoJ2Ftb3VudCcpICsgdGhpcy5hbW91bnRXaXRoR3N0O1xuICB9XG5cbiAgLyoqXG4gICAqIG1vc3Qgb2YgdGhlIHRyYW5zYWN0aW9ucyBjb3VsZCBoYXZlIG9ubHkgcG9zaXRpdmUgb3IgbmVnYXRpdmUgYW1vdW50IGRlcGVuZHMgb24gY2hhcnRBY2NvdW50cywgc28gd2UgaWdub3JlXG4gICAqIHVzZXIncyBjaG9pY2UgYW5kIHRyYW5zZm9ybSBhbW91bnQsIGJ1dCB0aGVyZSBhcmUgZXhjZXB0aW9ucyBsaWtlIGFkdmFuY2UgKG5lZ2F0aXZlIG9yIHBvc2l0aXZlIGFtb3VudClcbiAgICovXG4gIGlnbm9yZVNpZ24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEodGhpcy5jaGFydEFjY291bnRzPy5pZCBpbiBDaGFydEFjY291bnRzS2VlcFNpZ24pO1xuICB9XG59XG4iXX0=
|
|
237
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxJQUFJLGVBQWUsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFDc0IscUJBQXFCLEVBQ2hELHFCQUFxQixFQUNyQiw4QkFBOEIsRUFBRSxrQ0FBa0MsR0FDbkUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNyRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMzRixPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUMvQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsVUFBVSxFQUFtQyxNQUFNLG1CQUFt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aW9uIGFzIFRyYW5zYWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7XG4gIENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0sIENoYXJ0QWNjb3VudHNLZWVwU2lnbixcbiAgQ2hhcnRBY2NvdW50c0xpc3RFbnVtLFxuICBDaGFydEFjY291bnRzTWV0YUZpZWxkTGlzdEVudW0sIENoYXJ0QWNjb3VudHNVbmFsbG9jYXRhYmxlTGlzdEVudW0sXG59IGZyb20gJy4uLy4uL2RiL0VudW1zJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLW9wZXJhdGlvbi5lbnVtJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uU291cmNlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLXNvdXJjZS5lbnVtJztcbmltcG9ydCB7IERlcHJlY2lhdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvZGVwcmVjaWF0aW9uLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25DYWxjdWxhdGlvbkVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9kZXByZWNpYXRpb24tY2FsY3VsYXRpb24uZW51bSc7XG5pbXBvcnQgeyBUcmFuc2Zvcm0sIFR5cGUsIHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFByb3BlcnR5IH0gZnJvbSAnLi4vcHJvcGVydHknO1xuaW1wb3J0IHsgQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUywgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25NZXRhRmllbGQgfSBmcm9tICcuL3RyYW5zYWN0aW9uLW1ldGEtZmllbGQnO1xuaW1wb3J0IHsgTG9hbiB9IGZyb20gJy4uL2xvYW4nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25BbGxvY2F0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uJztcbmltcG9ydCB7IENvbGxlY3Rpb24sIFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucyc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb24gfSBmcm9tICcuLi9kZXByZWNpYXRpb24nO1xuaW1wb3J0IHsgRXhwZW5zZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgU29sZUludm9pY2VJdGVtIH0gZnJvbSAnLi4vc29sZSc7XG5cbi8vIEBUT0RPIEFsZXg6IHJlZmFjdG9yOiBtb3ZlIGhlcmUgYWxsb2NhdGlvbnMgbWV0aG9kcywgbmV0QW1vdW50ID0gYW1vdW50LCBncm9zc0Ftb3VudCBjYWxjdWxhdGlvbiwgcmVtb3ZlIHVudXNlZCBtZXRob2RzLCBldGMuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2UgaW1wbGVtZW50cyBFeHBlbnNlIHtcbiAgc3RhdGljIGNsYXNzTmFtZSA9ICdUcmFuc2FjdGlvbic7XG4gIC8qKlxuICAgKiBAVE9ETyByZW5hbWUgdG8gY2hpbGRUcmFuc2FjdGlvbnNcbiAgICovXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uKVxuICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10gPSBbXTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eSlcbiAgcHJvcGVydHk6IFByb3BlcnR5O1xuXG4gIEBUeXBlKCgpID0+IENoYXJ0QWNjb3VudHMpXG4gIGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHM7XG5cbiAgQFR5cGUoKCkgPT4gSW5jb21lU291cmNlKVxuICBpbmNvbWVTb3VyY2U6IEluY29tZVNvdXJjZTtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbk1ldGFGaWVsZClcbiAgbWV0YUZpZWxkczogVHJhbnNhY3Rpb25NZXRhRmllbGRbXSA9IFtdO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uKVxuICB0cmFuc2ZlcjogVHJhbnNhY3Rpb247XG5cbiAgQFR5cGUoKCkgPT4gTG9hbilcbiAgbG9hbjogTG9hbjtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBkYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uQWxsb2NhdGlvbilcbiAgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdID0gW107XG5cbiAgQFR5cGUoKCkgPT4gU29sZUludm9pY2VJdGVtKVxuICBpbnZvaWNlSXRlbTogU29sZUludm9pY2VJdGVtO1xuXG4gIEBUcmFuc2Zvcm0oKHsgdmFsdWUgfSkgPT4gK3ZhbHVlKVxuICB0YXggPSAwO1xuXG4gIG9wZXJhdGlvbjogVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtID0gVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtLkZJTkRfQU5EX01BVENIO1xuICBjbGFpbVBlcmNlbnQgPSAxMDA7XG4gIGFtb3VudCA9IDA7XG5cbiAgZ2V0IGludm9pY2VJZCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmludm9pY2VJdGVtPy5pbnZvaWNlLmlkO1xuICB9XG5cbiAgaXNEZWJpdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBUcmFuc2FjdGlvblR5cGVFbnVtLkRFQklUO1xuICB9XG5cbiAgaXNDcmVkaXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlRW51bS5DUkVESVQ7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gbW92ZSB0byBiYXNlIGNvbGxlY3Rpb25cbiAgICovXG4gIGlzSW5jb21lKCk6IGJvb2xlYW4ge1xuICAgIC8vIEBUT0RPIG5vdCB1c2VkXG4gICAgaWYgKCF0aGlzLmNoYXJ0QWNjb3VudHMpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzQ3JlZGl0KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuaW5jb21lLmluY2x1ZGVzKHRoaXMuY2hhcnRBY2NvdW50cy5jYXRlZ29yeSk7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gbW92ZSB0byBiYXNlIGNvbGxlY3Rpb25cbiAgICovXG4gIGlzRXhwZW5zZSgpOiBib29sZWFuIHtcbiAgICAvLyBAVE9ETyBub3QgdXNlZFxuICAgIGlmICghdGhpcy5jaGFydEFjY291bnRzKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0RlYml0KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuZXhwZW5zZS5pbmNsdWRlcyh0aGlzLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpO1xuICB9XG5cbiAgaXNQZXJzb25hbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wZXJzb25hbC5pbmNsdWRlcyh0aGlzLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpO1xuICB9XG5cbiAgaXNJbnRlcmVzdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uSU5URVJFU1RfT05fTE9BTjtcbiAgfVxuXG4gIGdldCBjaGFydEFjY291bnRzQ2F0ZWdvcmllcygpOiBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtW10ge1xuICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgY2FzZSB0aGlzLmlzUGVyc29uYWwoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWw7XG5cbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wcm9wZXJ0eTtcblxuICAgICAgY2FzZSB0aGlzLmlzU29sZVRhbmsoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuc29sZTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMud29yaztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRyYW5zYWN0aW9uIGRhdGVcbiAgICovXG4gIGdldERhdGUoKTogRGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiB0eXBlIGlzIHZlaGljbGVcbiAgICovXG4gIGlzVmVoaWNsZVRyYW5zYWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0QWNjb3VudHMuaXNWZWhpY2xlRXhwZW5zZSgpO1xuICB9XG5cbiAgZ2V0IHRheEZyZWVDb21wb25lbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YUZpZWxkTGlzdEVudW0uVEFYX0ZSRUVfQ09NUE9ORU5UKTtcbiAgfVxuXG4gIGdldCBmcmFua2luZ0NyZWRpdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhRmllbGRMaXN0RW51bS5GUkFOS0lOR19DUkVESVQpO1xuICB9XG5cbiAgZ2V0IGVsaWdpYmxlRm9yUmVkdWN0aW9uKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFGaWVsZExpc3RFbnVtLkVMSUdJQkxFX0ZPUl9SRURVQ1RJT04pO1xuICB9XG5cbiAgZ2V0IHVudGF4ZWRFbGVtZW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFGaWVsZExpc3RFbnVtLlVOVEFYRURfRUxFTUVOVCk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gcmVjb25jaWxlIG9wZXJhdGlvbiBpZiBUUkFOU0ZFUlxuICAgKiBAVE9ETyBiYWQgdXNhZ2Ugb2YgZ2V0IChhbmQgYWxsIGlzKiBtZXRob2RzKSwgZ2V0dGVyIHNob3VsZCBzb3VuZCBsaWtlIGEgbm91blxuICAgKi9cbiAgZ2V0IGlzVHJhbnNmZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMub3BlcmF0aW9uID09PSBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0uVFJBTlNGRVI7XG4gIH1cblxuICBpc0ZpbmRBbmRNYXRjaCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcGVyYXRpb24gPT09IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5GSU5EX0FORF9NQVRDSDtcbiAgfVxuXG4gIGdldCBkZWJpdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmlzRGViaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICBnZXQgY3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHZhbHVlIG9mIHRyYW5zYWN0aW9uIG1ldGEgZmllbGRcbiAgICogQHBhcmFtIGZpZWxkIGZvciB3aGljaCB2YWx1ZSBzaG91bGQgYmUgcmV0dXJuZWRcbiAgICogQFRvZG8gbW9kaWZ5ICdtZXRhRmllbGRzJyBwcm9wZXJ0eSBmcm9tIGFycmF5IHRvIENvbGxlY3Rpb25cbiAgICovXG4gIGdldE1ldGFGaWVsZFZhbHVlKGZpZWxkOiBDaGFydEFjY291bnRzTWV0YUZpZWxkTGlzdEVudW0pOiBudW1iZXIge1xuICAgIHJldHVybiArdGhpcy5tZXRhRmllbGRzLmZpbmQoKHRyYW5zYWN0aW9uTWV0YUZpZWxkOiBUcmFuc2FjdGlvbk1ldGFGaWVsZCk6IGJvb2xlYW4gPT4gdHJhbnNhY3Rpb25NZXRhRmllbGQuY2hhcnRBY2NvdW50c01ldGFGaWVsZC5pZCA9PT0gZmllbGQpPy52YWx1ZSB8fCAwO1xuICB9XG5cbiAgaXNDYXNoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNvdXJjZSA9PT0gVHJhbnNhY3Rpb25Tb3VyY2VFbnVtLkNBU0g7XG4gIH1cblxuICBjYW5GaW5kQW5kTWF0Y2goYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMucGFyZW50VHJhbnNhY3Rpb25cbiAgICAgICYmICF0aGlzLmlzQ2FzaCgpXG4gICAgICAmJiAhKHRoaXMuaXNTb2xlVGFuaygpICYmIHRoaXMuaXNJbmNvbWUoKSlcbiAgICAgICYmICFPYmplY3QudmFsdWVzKENoYXJ0QWNjb3VudHNVbmFsbG9jYXRhYmxlTGlzdEVudW0pLmluY2x1ZGVzKHRoaXMuY2hhcnRBY2NvdW50cy5pZClcbiAgICAgICYmICF0aGlzLmlzQWxsb2NhdGVkKGFsbG9jYXRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgRGVwcmVjaWF0aW9uIGluc3RhbmNlIGJhc2VkIG9uIFRyYW5zYWN0aW9uXG4gICAqL1xuICB0b0RlcHJlY2lhdGlvbigpOiBEZXByZWNpYXRpb24ge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3MoRGVwcmVjaWF0aW9uLCB7XG4gICAgICBkYXRlOiB0aGlzLmRhdGUsXG4gICAgICBhbW91bnQ6IE1hdGguYWJzKHRoaXMuYW1vdW50KSxcbiAgICAgIGNoYXJ0QWNjb3VudHM6IHRoaXMuY2hhcnRBY2NvdW50cyxcbiAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmRlc2NyaXB0aW9uLFxuICAgICAgdHlwZTogdGhpcy5jaGFydEFjY291bnRzLmlzUHJvcGVydHlDYXBpdGFsV29ya3MoKSA/IERlcHJlY2lhdGlvblR5cGVFbnVtLkNBUElUQUxfV09SS1MgOiBEZXByZWNpYXRpb25UeXBlRW51bS5QTEFOVF9FUVVJUE1FTlQsXG4gICAgICBjbGFpbVBlcmNlbnQ6IHRoaXMuY2xhaW1QZXJjZW50LFxuICAgICAgcHJvcGVydHk6IHRoaXMucHJvcGVydHksXG4gICAgICBjYWxjdWxhdGlvbjogdGhpcy5wcm9wZXJ0eSA/IHRoaXMucHJvcGVydHkuZGVwcmVjaWF0aW9uQ2FsY3VsYXRpb24gOiBEZXByZWNpYXRpb25DYWxjdWxhdGlvbkVudW0uUFJJTUVfQ09TVCxcbiAgICAgIHRyYW5zYWN0aW9uczogW3RoaXNdLFxuICAgICAgYnVzaW5lc3M6IHRoaXMuYnVzaW5lc3MsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gaXMgY29tcGxldGVseSBhbGxvY2F0ZWRcbiAgICovXG4gIGlzQWxsb2NhdGVkKGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIE1hdGguYWJzKHRoaXMuZ2V0QWxsb2NhdGVkQW1vdW50KGFsbG9jYXRpb25zKSkgLSBNYXRoLmFicyh0aGlzLm5ldEFtb3VudCkgPj0gMDtcbiAgfVxuXG4gIGdldEFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuIGFsbG9jYXRpb25zLmZpbHRlckJ5KCd0cmFuc2FjdGlvbi5pZCcsIHRoaXMuaWQpLnN1bUJ5KCdhbW91bnQnKTtcbiAgfVxuXG4gIGdldFVuYWxsb2NhdGVkQW1vdW50KGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5uZXRBbW91bnQgLSB0aGlzLmdldEFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogVG90YWwgdHJhbnNhY3Rpb24gYW1vdW50IGluY2x1ZGluZyB0YXhlcyBhbmQgb3RoZXIgYWRkaXRpb25hbCBhbW91bnRzXG4gICAqL1xuICBnZXQgZ3Jvc3NBbW91bnQoKTogbnVtYmVyIHtcbiAgICBsZXQgZ3Jvc3NBbW91bnQgPSBzdXBlci5ncm9zc0Ftb3VudCArIHRoaXMudGF4O1xuICAgIGlmICh0aGlzLmlzRXhwZW5zZSgpKSB7XG4gICAgICByZXR1cm4gZ3Jvc3NBbW91bnQ7XG4gICAgfVxuXG4gICAgLy8gc2FsYXJ5IGluY2x1ZGVkIHRyYW5zYWN0aW9ucyBhZmZlY3QgcGFyZW50IHRyYW5zYWN0aW9uIGFtb3VudCBhbmQgYXMgYSByZXN1bHQgZ3Jvc3NBbW91bnQsIHNraXAgdG8gYXZvaWQgZG91YmxlIHN1bVxuICAgIGdyb3NzQW1vdW50ICs9IG5ldyBDb2xsZWN0aW9uKHRoaXMudHJhbnNhY3Rpb25zKVxuICAgICAgLmZpbHRlcigodCkgPT4gIXQuY2hhcnRBY2NvdW50cz8uaXNTYWxhcnlJbmNsdWRlZCgpKVxuICAgICAgLnN1bUJ5KCdhbW91bnQnLCB0cnVlKTtcblxuICAgIGlmICh0aGlzLmlzV29ya1RhbmsoKSB8fCB0aGlzLmlzSG9sZGluZ1RhbmsoKSkge1xuICAgICAgZ3Jvc3NBbW91bnQgKz0gdGhpcy5mcmFua2luZ0NyZWRpdCAtIHRoaXMudGF4RnJlZUNvbXBvbmVudCAtIHRoaXMuZWxpZ2libGVGb3JSZWR1Y3Rpb247XG4gICAgfVxuXG4gICAgcmV0dXJuIGdyb3NzQW1vdW50O1xuICB9XG5cbiAgLyoqXG4gICAqIEBUT0RPIHZpayBjb25mdXNpbmcgbG9naWMgZGVtYW5kZWQgYnkgTmljb2xlLCB3ZSBuZWVkIGEgYmV0dGVyIHV4IHRvIGZpeCBpdFxuICAgKiBuZXRBbW91bnQgbWF0Y2hlcyByZWNlaXZlZCBwYXltZW50IChiYW5rVHJhbnNhY3Rpb24gYW1vdW50KSwgaW5jbHVkZXMgZ3N0IGFuZCBzYWxhcnkgaW5jbHVkZWQgYWRqdXN0bWVudHNcbiAgICogaWUgdXNlciByZWNlaXZlZCAxMDAwJCBzYWxhcnkgaW5jbHVkaW5nIDEwMCQgdGlwcy4gTmV0QW1vdW50PTEwMDAkLCBhbW91bnQ9OTAwJCwgdGlwcz0xMDAkXG4gICAqL1xuICBnZXQgbmV0QW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIG5ldyBDb2xsZWN0aW9uKHRoaXMudHJhbnNhY3Rpb25zKVxuICAgICAgLmZpbHRlcigodCkgPT4gdC5jaGFydEFjY291bnRzPy5pc1NhbGFyeUluY2x1ZGVkKCkpXG4gICAgICAuc3VtQnkoJ2Ftb3VudCcpICsgdGhpcy5hbW91bnRXaXRoR3N0O1xuICB9XG5cbiAgLyoqXG4gICAqIG1vc3Qgb2YgdGhlIHRyYW5zYWN0aW9ucyBjb3VsZCBoYXZlIG9ubHkgcG9zaXRpdmUgb3IgbmVnYXRpdmUgYW1vdW50IGRlcGVuZHMgb24gY2hhcnRBY2NvdW50cywgc28gd2UgaWdub3JlXG4gICAqIHVzZXIncyBjaG9pY2UgYW5kIHRyYW5zZm9ybSBhbW91bnQsIGJ1dCB0aGVyZSBhcmUgZXhjZXB0aW9ucyBsaWtlIGFkdmFuY2UgKG5lZ2F0aXZlIG9yIHBvc2l0aXZlIGFtb3VudClcbiAgICovXG4gIGlnbm9yZVNpZ24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEodGhpcy5jaGFydEFjY291bnRzPy5pZCBpbiBDaGFydEFjY291bnRzS2VlcFNpZ24pO1xuICB9XG59XG4iXX0=
|
|
@@ -3750,6 +3750,12 @@ class IncomeSourceChartData {
|
|
|
3750
3750
|
}
|
|
3751
3751
|
}
|
|
3752
3752
|
|
|
3753
|
+
var TransactionTypeEnum;
|
|
3754
|
+
(function (TransactionTypeEnum) {
|
|
3755
|
+
TransactionTypeEnum[TransactionTypeEnum["DEBIT"] = 1] = "DEBIT";
|
|
3756
|
+
TransactionTypeEnum[TransactionTypeEnum["CREDIT"] = 2] = "CREDIT";
|
|
3757
|
+
})(TransactionTypeEnum || (TransactionTypeEnum = {}));
|
|
3758
|
+
|
|
3753
3759
|
class AllocationRuleTransaction extends AllocationRuleTransaction$1 {
|
|
3754
3760
|
constructor() {
|
|
3755
3761
|
super(...arguments);
|
|
@@ -3791,18 +3797,21 @@ class AllocationRuleTransaction extends AllocationRuleTransaction$1 {
|
|
|
3791
3797
|
loan: this.loan,
|
|
3792
3798
|
incomeSource: this.incomeSource,
|
|
3793
3799
|
metaFields: this.metaFields,
|
|
3794
|
-
|
|
3795
|
-
childTransactions: this.childTransactions,
|
|
3800
|
+
transactions: [],
|
|
3796
3801
|
business: this.business,
|
|
3797
3802
|
operation: TransactionOperationEnum.ALLOCATE,
|
|
3798
3803
|
});
|
|
3799
|
-
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3804
|
+
transaction.amount *= this.amountPercentCoefficient;
|
|
3805
|
+
// child transactions inherit most of the fields from parent transaction
|
|
3806
|
+
this.childTransactions.forEach((childTransaction) => {
|
|
3807
|
+
transaction.transactions.push(Object.assign(plainToClass(Transaction, {}), transaction, {
|
|
3808
|
+
amount: childTransaction.amount,
|
|
3809
|
+
chartAccounts: childTransaction.chartAccounts,
|
|
3810
|
+
description: childTransaction.chartAccounts.name,
|
|
3811
|
+
type: childTransaction.chartAccounts.isExpense() ? TransactionTypeEnum.DEBIT : TransactionTypeEnum.CREDIT,
|
|
3812
|
+
transactions: [],
|
|
3813
|
+
}));
|
|
3814
|
+
});
|
|
3806
3815
|
transaction.allocations = [TransactionAllocation.create(transaction.amountWithGst, bankTransaction)];
|
|
3807
3816
|
return transaction;
|
|
3808
3817
|
}
|
|
@@ -3972,12 +3981,6 @@ var IncomeAmountTypeEnum;
|
|
|
3972
3981
|
IncomeAmountTypeEnum[IncomeAmountTypeEnum["GROSS"] = 1] = "GROSS";
|
|
3973
3982
|
})(IncomeAmountTypeEnum || (IncomeAmountTypeEnum = {}));
|
|
3974
3983
|
|
|
3975
|
-
var TransactionTypeEnum;
|
|
3976
|
-
(function (TransactionTypeEnum) {
|
|
3977
|
-
TransactionTypeEnum[TransactionTypeEnum["DEBIT"] = 1] = "DEBIT";
|
|
3978
|
-
TransactionTypeEnum[TransactionTypeEnum["CREDIT"] = 2] = "CREDIT";
|
|
3979
|
-
})(TransactionTypeEnum || (TransactionTypeEnum = {}));
|
|
3980
|
-
|
|
3981
3984
|
var TransactionSourceEnum;
|
|
3982
3985
|
(function (TransactionSourceEnum) {
|
|
3983
3986
|
TransactionSourceEnum[TransactionSourceEnum["CASH"] = 1] = "CASH";
|
|
@@ -6281,7 +6284,9 @@ __decorate([
|
|
|
6281
6284
|
class Transaction extends Transaction$1 {
|
|
6282
6285
|
constructor() {
|
|
6283
6286
|
super(...arguments);
|
|
6284
|
-
|
|
6287
|
+
/**
|
|
6288
|
+
* @TODO rename to childTransactions
|
|
6289
|
+
*/
|
|
6285
6290
|
this.transactions = [];
|
|
6286
6291
|
this.metaFields = [];
|
|
6287
6292
|
this.allocations = [];
|
|
@@ -23016,6 +23021,33 @@ class AllocationRuleForm extends AbstractForm {
|
|
|
23016
23021
|
break;
|
|
23017
23022
|
}
|
|
23018
23023
|
}
|
|
23024
|
+
isIncome() {
|
|
23025
|
+
return this.get('type').value === AllocationRuleTypeEnum.INCOME;
|
|
23026
|
+
}
|
|
23027
|
+
isExpense() {
|
|
23028
|
+
return this.get('type').value === AllocationRuleTypeEnum.EXPENSE;
|
|
23029
|
+
}
|
|
23030
|
+
isTransfer() {
|
|
23031
|
+
return this.get('type').value === AllocationRuleTypeEnum.TRANSFER;
|
|
23032
|
+
}
|
|
23033
|
+
isPropertyTank() {
|
|
23034
|
+
return this.get('transaction').get('tankType').value === TankTypeEnum.PROPERTY;
|
|
23035
|
+
}
|
|
23036
|
+
isWorkTank() {
|
|
23037
|
+
return this.get('transaction').get('tankType').value === TankTypeEnum.WORK;
|
|
23038
|
+
}
|
|
23039
|
+
isSoleTank() {
|
|
23040
|
+
return this.get('transaction').get('tankType').value === TankTypeEnum.SOLE;
|
|
23041
|
+
}
|
|
23042
|
+
isPropertyIncome() {
|
|
23043
|
+
return this.isIncome() && this.isPropertyTank();
|
|
23044
|
+
}
|
|
23045
|
+
isWorkIncome() {
|
|
23046
|
+
return this.isIncome() && this.isWorkTank();
|
|
23047
|
+
}
|
|
23048
|
+
isSoleIncome() {
|
|
23049
|
+
return this.isIncome() && this.isSoleTank();
|
|
23050
|
+
}
|
|
23019
23051
|
}
|
|
23020
23052
|
|
|
23021
23053
|
/**
|