@acorex/connectivity 20.2.4-next.3 → 20.2.4-next.5
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/fesm2022/{acorex-connectivity-mock-acorex-connectivity-mock-CVAXxD06.mjs → acorex-connectivity-mock-acorex-connectivity-mock-BrHaSAxo.mjs} +16531 -15223
- package/fesm2022/acorex-connectivity-mock-acorex-connectivity-mock-BrHaSAxo.mjs.map +1 -0
- package/fesm2022/{acorex-connectivity-mock-employee-skills.queries-DLQzhHUF.mjs → acorex-connectivity-mock-employee-skills.queries-Bg44X62k.mjs} +22 -22
- package/fesm2022/acorex-connectivity-mock-employee-skills.queries-Bg44X62k.mjs.map +1 -0
- package/fesm2022/acorex-connectivity-mock.mjs +1 -1
- package/mock/index.d.ts +96 -42
- package/package.json +3 -3
- package/fesm2022/acorex-connectivity-mock-acorex-connectivity-mock-CVAXxD06.mjs.map +0 -1
- package/fesm2022/acorex-connectivity-mock-employee-skills.queries-DLQzhHUF.mjs.map +0 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable } from '@angular/core';
|
|
3
|
-
import { E as EMPLOYEE_SKILLS_MOCK } from './acorex-connectivity-mock-acorex-connectivity-mock-
|
|
3
|
+
import { E as EMPLOYEE_SKILLS_MOCK, S as SKILL_LEVELS_MOCK } from './acorex-connectivity-mock-acorex-connectivity-mock-BrHaSAxo.mjs';
|
|
4
4
|
|
|
5
5
|
class AXQEmployeeSkillsListQuery {
|
|
6
6
|
async fetch(input) {
|
|
7
|
-
const { skillId,
|
|
7
|
+
const { skillId, levelId, minYears, startDate, endDate, skip = 0, take = 10 } = input ?? {};
|
|
8
8
|
const sDate = startDate ? new Date(startDate) : undefined;
|
|
9
9
|
const eDate = endDate ? new Date(endDate) : undefined;
|
|
10
10
|
let data = EMPLOYEE_SKILLS_MOCK.map((r) => ({
|
|
@@ -13,14 +13,14 @@ class AXQEmployeeSkillsListQuery {
|
|
|
13
13
|
employeeName: r.employee?.contact?.displayName,
|
|
14
14
|
skillId: r.skillId,
|
|
15
15
|
skillTitle: r.skill?.title ?? r.skillId,
|
|
16
|
-
level: r.level,
|
|
16
|
+
level: r.level?.title ?? r.levelId,
|
|
17
17
|
yearsOfExperience: r.yearsOfExperience ?? 0,
|
|
18
18
|
lastUsedDate: r.lastUsedDate,
|
|
19
19
|
}));
|
|
20
20
|
if (skillId)
|
|
21
21
|
data = data.filter((x) => x.skillId === skillId);
|
|
22
|
-
if (
|
|
23
|
-
data = data.filter((x) => x.level ===
|
|
22
|
+
if (levelId)
|
|
23
|
+
data = data.filter((x) => x.level === (SKILL_LEVELS_MOCK.find(l => l.id === levelId)?.title ?? levelId));
|
|
24
24
|
if (minYears != null)
|
|
25
25
|
data = data.filter((x) => (x.yearsOfExperience ?? 0) >= Number(minYears));
|
|
26
26
|
if (sDate)
|
|
@@ -42,12 +42,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
|
|
|
42
42
|
}] });
|
|
43
43
|
class AXQEmployeeSkillsStatsQuery {
|
|
44
44
|
async fetch(input) {
|
|
45
|
-
const { skillId,
|
|
45
|
+
const { skillId, levelId, minYears } = input ?? {};
|
|
46
46
|
let data = EMPLOYEE_SKILLS_MOCK;
|
|
47
47
|
if (skillId)
|
|
48
48
|
data = data.filter((x) => x.skillId === skillId);
|
|
49
|
-
if (
|
|
50
|
-
data = data.filter((x) => x.
|
|
49
|
+
if (levelId)
|
|
50
|
+
data = data.filter((x) => x.levelId === levelId);
|
|
51
51
|
if (minYears != null)
|
|
52
52
|
data = data.filter((x) => (x.yearsOfExperience ?? 0) >= Number(minYears));
|
|
53
53
|
const grouped = data.reduce((acc, cur) => {
|
|
@@ -74,14 +74,14 @@ class AXQEmployeeSkillsLevelsQuery {
|
|
|
74
74
|
data = data.filter((x) => x.skillId === skillId);
|
|
75
75
|
if (minYears != null)
|
|
76
76
|
data = data.filter((x) => (x.yearsOfExperience ?? 0) >= Number(minYears));
|
|
77
|
-
const levels =
|
|
77
|
+
const levels = SKILL_LEVELS_MOCK.map(l => ({ id: l.id, title: l.title }));
|
|
78
78
|
const grouped = data.reduce((acc, cur) => {
|
|
79
|
-
const key = cur.
|
|
79
|
+
const key = cur.levelId && levels.find((x) => x.id === cur.levelId)?.title || 'Unknown';
|
|
80
80
|
acc[key] = (acc[key] ?? 0) + 1;
|
|
81
81
|
return acc;
|
|
82
82
|
}, {});
|
|
83
83
|
// Ensure all known levels exist (0 if missing)
|
|
84
|
-
levels.forEach((lvl) => (grouped[lvl] = grouped[lvl] ?? 0));
|
|
84
|
+
levels.forEach((lvl) => (grouped[lvl.title] = grouped[lvl.title] ?? 0));
|
|
85
85
|
return grouped;
|
|
86
86
|
}
|
|
87
87
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXQEmployeeSkillsLevelsQuery, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
@@ -95,12 +95,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
|
|
|
95
95
|
}] });
|
|
96
96
|
class AXQEmployeeSkillsTrendQuery {
|
|
97
97
|
async fetch(input) {
|
|
98
|
-
const { startDate, endDate, skillId,
|
|
98
|
+
const { startDate, endDate, skillId, levelId } = input ?? {};
|
|
99
99
|
const sDate = startDate ? new Date(startDate) : undefined;
|
|
100
100
|
const eDate = endDate ? new Date(endDate) : undefined;
|
|
101
101
|
let data = EMPLOYEE_SKILLS_MOCK
|
|
102
102
|
.filter((x) => (skillId ? x.skillId === skillId : true))
|
|
103
|
-
.filter((x) => (
|
|
103
|
+
.filter((x) => (levelId ? x.levelId === levelId : true))
|
|
104
104
|
.filter((x) => (sDate ? (x.lastUsedDate && new Date(x.lastUsedDate) >= sDate) : true))
|
|
105
105
|
.filter((x) => (eDate ? (x.lastUsedDate && new Date(x.lastUsedDate) <= eDate) : true));
|
|
106
106
|
// Group by YYYY-MM from lastUsedDate and count occurrences
|
|
@@ -128,12 +128,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
|
|
|
128
128
|
//#region ---- Percentage Queries ----
|
|
129
129
|
class AXQEmployeeSkillsSkillPercentagesQuery {
|
|
130
130
|
async fetch(input) {
|
|
131
|
-
const { skillId,
|
|
131
|
+
const { skillId, levelId, minYears } = input ?? {};
|
|
132
132
|
let data = EMPLOYEE_SKILLS_MOCK;
|
|
133
133
|
if (skillId)
|
|
134
134
|
data = data.filter((x) => x.skillId === skillId);
|
|
135
|
-
if (
|
|
136
|
-
data = data.filter((x) => x.
|
|
135
|
+
if (levelId)
|
|
136
|
+
data = data.filter((x) => x.levelId === levelId);
|
|
137
137
|
if (minYears != null)
|
|
138
138
|
data = data.filter((x) => (x.yearsOfExperience ?? 0) >= Number(minYears));
|
|
139
139
|
const counts = data.reduce((acc, cur) => {
|
|
@@ -165,18 +165,18 @@ class AXQEmployeeSkillsLevelPercentagesQuery {
|
|
|
165
165
|
data = data.filter((x) => x.skillId === skillId);
|
|
166
166
|
if (minYears != null)
|
|
167
167
|
data = data.filter((x) => (x.yearsOfExperience ?? 0) >= Number(minYears));
|
|
168
|
-
const levels =
|
|
168
|
+
const levels = SKILL_LEVELS_MOCK.map(l => ({ id: l.id, title: l.title }));
|
|
169
169
|
const counts = data.reduce((acc, cur) => {
|
|
170
|
-
const key = cur.
|
|
170
|
+
const key = cur.levelId && levels.find((x) => x.id === cur.levelId)?.title || 'Unknown';
|
|
171
171
|
acc[key] = (acc[key] ?? 0) + 1;
|
|
172
172
|
return acc;
|
|
173
173
|
}, {});
|
|
174
174
|
// Ensure fixed level keys exist
|
|
175
|
-
levels.forEach((lvl) => (counts[lvl] = counts[lvl] ?? 0));
|
|
176
|
-
const total = levels.reduce((sum, lvl) => sum + (counts[lvl] ?? 0), 0) || 1;
|
|
175
|
+
levels.forEach((lvl) => (counts[lvl.title] = counts[lvl.title] ?? 0));
|
|
176
|
+
const total = levels.reduce((sum, lvl) => sum + (counts[lvl.title] ?? 0), 0) || 1;
|
|
177
177
|
const percentages = {};
|
|
178
178
|
levels.forEach((lvl) => {
|
|
179
|
-
percentages[lvl] = Math.round(((counts[lvl] ?? 0) / total) * 100);
|
|
179
|
+
percentages[lvl.title] = Math.round(((counts[lvl.title] ?? 0) / total) * 100);
|
|
180
180
|
});
|
|
181
181
|
return percentages;
|
|
182
182
|
}
|
|
@@ -191,4 +191,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
|
|
|
191
191
|
}] });
|
|
192
192
|
|
|
193
193
|
export { AXQEmployeeSkillsLevelPercentagesQuery, AXQEmployeeSkillsLevelsQuery, AXQEmployeeSkillsListQuery, AXQEmployeeSkillsSkillPercentagesQuery, AXQEmployeeSkillsStatsQuery, AXQEmployeeSkillsTrendQuery };
|
|
194
|
-
//# sourceMappingURL=acorex-connectivity-mock-employee-skills.queries-
|
|
194
|
+
//# sourceMappingURL=acorex-connectivity-mock-employee-skills.queries-Bg44X62k.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-connectivity-mock-employee-skills.queries-Bg44X62k.mjs","sources":["../tmp-esm2022/mock/lib/human-capital-management/reports/employee-skills.queries.js"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { EMPLOYEE_SKILLS_MOCK } from '../../human-capital-management/employee-skill/employee-skill.mock';\nimport { SKILL_LEVELS_MOCK } from '../../human-capital-management/skill-level/skill-level.mock';\nimport * as i0 from \"@angular/core\";\nexport class AXQEmployeeSkillsListQuery {\n async fetch(input) {\n const { skillId, levelId, minYears, startDate, endDate, skip = 0, take = 10 } = input ?? {};\n const sDate = startDate ? new Date(startDate) : undefined;\n const eDate = endDate ? new Date(endDate) : undefined;\n let data = EMPLOYEE_SKILLS_MOCK.map((r) => ({\n id: r.id,\n employeeId: r.employeeId,\n employeeName: r.employee?.contact?.displayName,\n skillId: r.skillId,\n skillTitle: r.skill?.title ?? r.skillId,\n level: r.level?.title ?? r.levelId,\n yearsOfExperience: r.yearsOfExperience ?? 0,\n lastUsedDate: r.lastUsedDate,\n }));\n if (skillId)\n data = data.filter((x) => x.skillId === skillId);\n if (levelId)\n data = data.filter((x) => x.level === (SKILL_LEVELS_MOCK.find(l => l.id === levelId)?.title ?? levelId));\n if (minYears != null)\n data = data.filter((x) => (x.yearsOfExperience ?? 0) >= Number(minYears));\n if (sDate)\n data = data.filter((x) => x.lastUsedDate && new Date(x.lastUsedDate) >= sDate);\n if (eDate)\n data = data.filter((x) => x.lastUsedDate && new Date(x.lastUsedDate) <= eDate);\n const total = data.length;\n const items = data.slice(skip, skip + take);\n return { items, total };\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsListQuery, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsListQuery, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsListQuery, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }] });\nexport class AXQEmployeeSkillsStatsQuery {\n async fetch(input) {\n const { skillId, levelId, minYears } = input ?? {};\n let data = EMPLOYEE_SKILLS_MOCK;\n if (skillId)\n data = data.filter((x) => x.skillId === skillId);\n if (levelId)\n data = data.filter((x) => x.levelId === levelId);\n if (minYears != null)\n data = data.filter((x) => (x.yearsOfExperience ?? 0) >= Number(minYears));\n const grouped = data.reduce((acc, cur) => {\n const key = cur.skill?.title ?? cur.skillId;\n acc[key] = (acc[key] ?? 0) + 1;\n return acc;\n }, {});\n return grouped;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsStatsQuery, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsStatsQuery, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsStatsQuery, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }] });\nexport class AXQEmployeeSkillsLevelsQuery {\n async fetch(input) {\n const { skillId, minYears } = input ?? {};\n let data = EMPLOYEE_SKILLS_MOCK;\n if (skillId)\n data = data.filter((x) => x.skillId === skillId);\n if (minYears != null)\n data = data.filter((x) => (x.yearsOfExperience ?? 0) >= Number(minYears));\n const levels = SKILL_LEVELS_MOCK.map(l => ({ id: l.id, title: l.title }));\n const grouped = data.reduce((acc, cur) => {\n const key = cur.levelId && levels.find((x) => x.id === cur.levelId)?.title || 'Unknown';\n acc[key] = (acc[key] ?? 0) + 1;\n return acc;\n }, {});\n // Ensure all known levels exist (0 if missing)\n levels.forEach((lvl) => (grouped[lvl.title] = grouped[lvl.title] ?? 0));\n return grouped;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsLevelsQuery, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsLevelsQuery, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsLevelsQuery, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }] });\nexport class AXQEmployeeSkillsTrendQuery {\n async fetch(input) {\n const { startDate, endDate, skillId, levelId } = input ?? {};\n const sDate = startDate ? new Date(startDate) : undefined;\n const eDate = endDate ? new Date(endDate) : undefined;\n let data = EMPLOYEE_SKILLS_MOCK\n .filter((x) => (skillId ? x.skillId === skillId : true))\n .filter((x) => (levelId ? x.levelId === levelId : true))\n .filter((x) => (sDate ? (x.lastUsedDate && new Date(x.lastUsedDate) >= sDate) : true))\n .filter((x) => (eDate ? (x.lastUsedDate && new Date(x.lastUsedDate) <= eDate) : true));\n // Group by YYYY-MM from lastUsedDate and count occurrences\n const counts = data.reduce((acc, cur) => {\n const d = cur.lastUsedDate ? new Date(cur.lastUsedDate) : undefined;\n const key = d ? `${d.getFullYear()}-${String(d.getMonth() + 1).padStart(2, '0')}` : 'Unknown';\n acc[key] = (acc[key] ?? 0) + 1;\n return acc;\n }, {});\n // Convert to sorted array, ignoring 'Unknown'\n return Object.entries(counts)\n .filter(([k]) => k !== 'Unknown')\n .sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0))\n .map(([month, value]) => ({ month, value }));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsTrendQuery, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsTrendQuery, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsTrendQuery, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }] });\n//#region ---- Percentage Queries ----\nexport class AXQEmployeeSkillsSkillPercentagesQuery {\n async fetch(input) {\n const { skillId, levelId, minYears } = input ?? {};\n let data = EMPLOYEE_SKILLS_MOCK;\n if (skillId)\n data = data.filter((x) => x.skillId === skillId);\n if (levelId)\n data = data.filter((x) => x.levelId === levelId);\n if (minYears != null)\n data = data.filter((x) => (x.yearsOfExperience ?? 0) >= Number(minYears));\n const counts = data.reduce((acc, cur) => {\n const key = cur.skill?.title ?? cur.skillId;\n acc[key] = (acc[key] ?? 0) + 1;\n return acc;\n }, {});\n const total = Object.values(counts).reduce((a, b) => a + b, 0) || 1;\n const percentages = {};\n Object.entries(counts).forEach(([k, v]) => {\n percentages[k] = Math.round((v / total) * 100);\n });\n return percentages;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsSkillPercentagesQuery, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsSkillPercentagesQuery, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsSkillPercentagesQuery, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }] });\nexport class AXQEmployeeSkillsLevelPercentagesQuery {\n async fetch(input) {\n const { skillId, minYears } = input ?? {};\n let data = EMPLOYEE_SKILLS_MOCK;\n if (skillId)\n data = data.filter((x) => x.skillId === skillId);\n if (minYears != null)\n data = data.filter((x) => (x.yearsOfExperience ?? 0) >= Number(minYears));\n const levels = SKILL_LEVELS_MOCK.map(l => ({ id: l.id, title: l.title }));\n const counts = data.reduce((acc, cur) => {\n const key = cur.levelId && levels.find((x) => x.id === cur.levelId)?.title || 'Unknown';\n acc[key] = (acc[key] ?? 0) + 1;\n return acc;\n }, {});\n // Ensure fixed level keys exist\n levels.forEach((lvl) => (counts[lvl.title] = counts[lvl.title] ?? 0));\n const total = levels.reduce((sum, lvl) => sum + (counts[lvl.title] ?? 0), 0) || 1;\n const percentages = {};\n levels.forEach((lvl) => {\n percentages[lvl.title] = Math.round(((counts[lvl.title] ?? 0) / total) * 100);\n });\n return percentages;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsLevelPercentagesQuery, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsLevelPercentagesQuery, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.6\", ngImport: i0, type: AXQEmployeeSkillsLevelPercentagesQuery, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wbG95ZWUtc2tpbGxzLnF1ZXJpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nvbm5lY3Rpdml0eS9tb2NrL3NyYy9saWIvaHVtYW4tY2FwaXRhbC1tYW5hZ2VtZW50L3JlcG9ydHMvZW1wbG95ZWUtc2tpbGxzLnF1ZXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQzs7QUFpQmhHLE1BQU0sT0FBTywwQkFBMEI7SUFDbkMsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFnQjtRQUN4QixNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxFQUFFLEVBQUUsR0FBRyxLQUFLLElBQUksRUFBUyxDQUFDO1FBRW5HLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUMxRCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDdEQsSUFBSSxJQUFJLEdBQUcsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3hDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRTtZQUNSLFVBQVUsRUFBRSxDQUFDLENBQUMsVUFBVTtZQUN4QixZQUFZLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsV0FBVztZQUM5QyxPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU87WUFDbEIsVUFBVSxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxJQUFJLENBQUMsQ0FBQyxPQUFPO1lBQ3ZDLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssSUFBSSxDQUFDLENBQUMsT0FBTztZQUNsQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsaUJBQWlCLElBQUksQ0FBQztZQUMzQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLFlBQVk7U0FDL0IsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLE9BQU87WUFBRSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxPQUFPLENBQUMsQ0FBQztRQUM5RCxJQUFJLE9BQU87WUFBRSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssT0FBTyxDQUFDLEVBQUUsS0FBSyxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDdEgsSUFBSSxRQUFRLElBQUksSUFBSTtZQUFFLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUNoRyxJQUFJLEtBQUs7WUFBRSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLElBQUksS0FBSyxDQUFDLENBQUM7UUFDMUYsSUFBSSxLQUFLO1lBQUUsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDO1FBRTFGLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQzVDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDNUIsQ0FBQzs4R0ExQlEsMEJBQTBCO2tIQUExQiwwQkFBMEIsY0FGdkIsTUFBTTs7MkZBRVQsMEJBQTBCO2tCQUh0QyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7QUF1Q0QsTUFBTSxPQUFPLDJCQUEyQjtJQUNwQyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQWlCO1FBQ3pCLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEtBQUssSUFBSSxFQUFTLENBQUM7UUFDMUQsSUFBSSxJQUFJLEdBQUcsb0JBQW9CLENBQUM7UUFFaEMsSUFBSSxPQUFPO1lBQUUsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDLENBQUM7UUFDOUQsSUFBSSxPQUFPO1lBQUUsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDLENBQUM7UUFDOUQsSUFBSSxRQUFRLElBQUksSUFBSTtZQUFFLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUVoRyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBMkIsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUM3RCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDO1lBQzVDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDL0IsT0FBTyxHQUFHLENBQUM7UUFDZixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFUCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDOzhHQWhCUSwyQkFBMkI7a0hBQTNCLDJCQUEyQixjQUZ4QixNQUFNOzsyRkFFVCwyQkFBMkI7a0JBSHZDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOztBQTRCRCxNQUFNLE9BQU8sNEJBQTRCO0lBQ3JDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBa0I7UUFDMUIsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxLQUFLLElBQUksRUFBUyxDQUFDO1FBQ2pELElBQUksSUFBSSxHQUFHLG9CQUFvQixDQUFDO1FBRWhDLElBQUksT0FBTztZQUFFLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLE9BQU8sQ0FBQyxDQUFDO1FBQzlELElBQUksUUFBUSxJQUFJLElBQUk7WUFBRSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFFaEcsTUFBTSxNQUFNLEdBQUcsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzFFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUEyQixFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQzdELE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxPQUFPLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSyxJQUFJLFNBQVMsQ0FBQztZQUN4RixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQy9CLE9BQU8sR0FBRyxDQUFDO1FBQ2YsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ1AsK0NBQStDO1FBQy9DLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEUsT0FBTyxPQUFPLENBQUM7SUFDbkIsQ0FBQzs4R0FqQlEsNEJBQTRCO2tIQUE1Qiw0QkFBNEIsY0FGekIsTUFBTTs7MkZBRVQsNEJBQTRCO2tCQUh4QyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7QUErQkQsTUFBTSxPQUFPLDJCQUEyQjtJQUNwQyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQWlCO1FBQ3pCLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsR0FBRyxLQUFLLElBQUksRUFBUyxDQUFDO1FBQ3BFLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUMxRCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFFdEQsSUFBSSxJQUFJLEdBQUcsb0JBQW9CO2FBQzFCLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN2RCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDdkQsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxJQUFJLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDckYsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxJQUFJLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUUzRiwyREFBMkQ7UUFDM0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQTJCLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDNUQsTUFBTSxDQUFDLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDcEUsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQzlGLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDL0IsT0FBTyxHQUFHLENBQUM7UUFDZixDQUFDLEVBQUUsRUFBNEIsQ0FBQyxDQUFDO1FBRWpDLDhDQUE4QztRQUM5QyxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2FBQ3hCLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUM7YUFDaEMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2hELEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDOzhHQXpCUSwyQkFBMkI7a0hBQTNCLDJCQUEyQixjQUZ4QixNQUFNOzsyRkFFVCwyQkFBMkI7a0JBSHZDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOztBQTZCRCwwQ0FBMEM7QUFLMUMsTUFBTSxPQUFPLHNDQUFzQztJQUMvQyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQWlCO1FBQ3pCLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEtBQUssSUFBSyxFQUFVLENBQUM7UUFDNUQsSUFBSSxJQUFJLEdBQUcsb0JBQW9CLENBQUM7UUFFaEMsSUFBSSxPQUFPO1lBQUUsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDLENBQUM7UUFDOUQsSUFBSSxPQUFPO1lBQUUsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDLENBQUM7UUFDOUQsSUFBSSxRQUFRLElBQUksSUFBSTtZQUFFLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUVoRyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBMkIsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUM1RCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDO1lBQzVDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDL0IsT0FBTyxHQUFHLENBQUM7UUFDZixDQUFDLEVBQUUsRUFBNEIsQ0FBQyxDQUFDO1FBRWpDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEUsTUFBTSxXQUFXLEdBQTJCLEVBQUUsQ0FBQztRQUMvQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDdEMsV0FBVyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLFdBQVcsQ0FBQztJQUN2QixDQUFDOzhHQXJCUSxzQ0FBc0M7a0hBQXRDLHNDQUFzQyxjQUZuQyxNQUFNOzsyRkFFVCxzQ0FBc0M7a0JBSGxELFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOztBQTRCRCxNQUFNLE9BQU8sc0NBQXNDO0lBQy9DLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBa0I7UUFDMUIsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxLQUFLLElBQUssRUFBVSxDQUFDO1FBQ25ELElBQUksSUFBSSxHQUFHLG9CQUFvQixDQUFDO1FBRWhDLElBQUksT0FBTztZQUFFLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLE9BQU8sQ0FBQyxDQUFDO1FBQzlELElBQUksUUFBUSxJQUFJLElBQUk7WUFBRSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFFaEcsTUFBTSxNQUFNLEdBQUcsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzFFLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUEyQixFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQzVELE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxPQUFPLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSyxJQUFJLFNBQVMsQ0FBQztZQUN4RixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQy9CLE9BQU8sR0FBRyxDQUFDO1FBQ2YsQ0FBQyxFQUFFLEVBQTRCLENBQUMsQ0FBQztRQUVqQyxnQ0FBZ0M7UUFDaEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV0RSxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEYsTUFBTSxXQUFXLEdBQTJCLEVBQUUsQ0FBQztRQUMvQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDbkIsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQ2xGLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxXQUFXLENBQUM7SUFDdkIsQ0FBQzs4R0F4QlEsc0NBQXNDO2tIQUF0QyxzQ0FBc0MsY0FGbkMsTUFBTTs7MkZBRVQsc0NBQXNDO2tCQUhsRCxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQUXVlcnkgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL3J1bnRpbWUnO1xuaW1wb3J0IHsgRU1QTE9ZRUVfU0tJTExTX01PQ0sgfSBmcm9tICcuLi8uLi9odW1hbi1jYXBpdGFsLW1hbmFnZW1lbnQvZW1wbG95ZWUtc2tpbGwvZW1wbG95ZWUtc2tpbGwubW9jayc7XG5pbXBvcnQgeyBTS0lMTF9MRVZFTFNfTU9DSyB9IGZyb20gJy4uLy4uL2h1bWFuLWNhcGl0YWwtbWFuYWdlbWVudC9za2lsbC1sZXZlbC9za2lsbC1sZXZlbC5tb2NrJztcblxuLy8jcmVnaW9uIC0tLS0gICBRdWVyaWVzICAgLS0tLVxuXG50eXBlIExpc3RJbnB1dCA9IHtcbiAgICBza2lsbElkPzogc3RyaW5nO1xuICAgIGxldmVsSWQ/OiBzdHJpbmc7XG4gICAgbWluWWVhcnM/OiBudW1iZXI7XG4gICAgc3RhcnREYXRlPzogRGF0ZSB8IHN0cmluZztcbiAgICBlbmREYXRlPzogRGF0ZSB8IHN0cmluZztcbiAgICBza2lwPzogbnVtYmVyO1xuICAgIHRha2U/OiBudW1iZXI7XG59O1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEFYUUVtcGxveWVlU2tpbGxzTGlzdFF1ZXJ5IGltcGxlbWVudHMgQVhQUXVlcnk8TGlzdElucHV0LCB7IGl0ZW1zOiBhbnlbXTsgdG90YWw6IG51bWJlciB9PiB7XG4gICAgYXN5bmMgZmV0Y2goaW5wdXQ6IExpc3RJbnB1dCk6IFByb21pc2U8eyBpdGVtczogYW55W107IHRvdGFsOiBudW1iZXIgfT4ge1xuICAgICAgICBjb25zdCB7IHNraWxsSWQsIGxldmVsSWQsIG1pblllYXJzLCBzdGFydERhdGUsIGVuZERhdGUsIHNraXAgPSAwLCB0YWtlID0gMTAgfSA9IGlucHV0ID8/IHt9IGFzIGFueTtcblxuICAgICAgICBjb25zdCBzRGF0ZSA9IHN0YXJ0RGF0ZSA/IG5ldyBEYXRlKHN0YXJ0RGF0ZSkgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGVEYXRlID0gZW5kRGF0ZSA/IG5ldyBEYXRlKGVuZERhdGUpIDogdW5kZWZpbmVkO1xuICAgICAgICBsZXQgZGF0YSA9IEVNUExPWUVFX1NLSUxMU19NT0NLLm1hcCgocikgPT4gKHtcbiAgICAgICAgICAgIGlkOiByLmlkLFxuICAgICAgICAgICAgZW1wbG95ZWVJZDogci5lbXBsb3llZUlkLFxuICAgICAgICAgICAgZW1wbG95ZWVOYW1lOiByLmVtcGxveWVlPy5jb250YWN0Py5kaXNwbGF5TmFtZSxcbiAgICAgICAgICAgIHNraWxsSWQ6IHIuc2tpbGxJZCxcbiAgICAgICAgICAgIHNraWxsVGl0bGU6IHIuc2tpbGw/LnRpdGxlID8/IHIuc2tpbGxJZCxcbiAgICAgICAgICAgIGxldmVsOiByLmxldmVsPy50aXRsZSA/PyByLmxldmVsSWQsXG4gICAgICAgICAgICB5ZWFyc09mRXhwZXJpZW5jZTogci55ZWFyc09mRXhwZXJpZW5jZSA/PyAwLFxuICAgICAgICAgICAgbGFzdFVzZWREYXRlOiByLmxhc3RVc2VkRGF0ZSxcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIGlmIChza2lsbElkKSBkYXRhID0gZGF0YS5maWx0ZXIoKHgpID0+IHguc2tpbGxJZCA9PT0gc2tpbGxJZCk7XG4gICAgICAgIGlmIChsZXZlbElkKSBkYXRhID0gZGF0YS5maWx0ZXIoKHgpID0+IHgubGV2ZWwgPT09IChTS0lMTF9MRVZFTFNfTU9DSy5maW5kKGwgPT4gbC5pZCA9PT0gbGV2ZWxJZCk/LnRpdGxlID8/IGxldmVsSWQpKTtcbiAgICAgICAgaWYgKG1pblllYXJzICE9IG51bGwpIGRhdGEgPSBkYXRhLmZpbHRlcigoeCkgPT4gKHgueWVhcnNPZkV4cGVyaWVuY2UgPz8gMCkgPj0gTnVtYmVyKG1pblllYXJzKSk7XG4gICAgICAgIGlmIChzRGF0ZSkgZGF0YSA9IGRhdGEuZmlsdGVyKCh4KSA9PiB4Lmxhc3RVc2VkRGF0ZSAmJiBuZXcgRGF0ZSh4Lmxhc3RVc2VkRGF0ZSkgPj0gc0RhdGUpO1xuICAgICAgICBpZiAoZURhdGUpIGRhdGEgPSBkYXRhLmZpbHRlcigoeCkgPT4geC5sYXN0VXNlZERhdGUgJiYgbmV3IERhdGUoeC5sYXN0VXNlZERhdGUpIDw9IGVEYXRlKTtcblxuICAgICAgICBjb25zdCB0b3RhbCA9IGRhdGEubGVuZ3RoO1xuICAgICAgICBjb25zdCBpdGVtcyA9IGRhdGEuc2xpY2Uoc2tpcCwgc2tpcCArIHRha2UpO1xuICAgICAgICByZXR1cm4geyBpdGVtcywgdG90YWwgfTtcbiAgICB9XG59XG5cbnR5cGUgU3RhdHNJbnB1dCA9IHtcbiAgICBza2lsbElkPzogc3RyaW5nO1xuICAgIGxldmVsSWQ/OiBzdHJpbmc7XG4gICAgbWluWWVhcnM/OiBudW1iZXI7XG59O1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEFYUUVtcGxveWVlU2tpbGxzU3RhdHNRdWVyeSBpbXBsZW1lbnRzIEFYUFF1ZXJ5PFN0YXRzSW5wdXQsIFJlY29yZDxzdHJpbmcsIG51bWJlcj4+IHtcbiAgICBhc3luYyBmZXRjaChpbnB1dDogU3RhdHNJbnB1dCk6IFByb21pc2U8UmVjb3JkPHN0cmluZywgbnVtYmVyPj4ge1xuICAgICAgICBjb25zdCB7IHNraWxsSWQsIGxldmVsSWQsIG1pblllYXJzIH0gPSBpbnB1dCA/PyB7fSBhcyBhbnk7XG4gICAgICAgIGxldCBkYXRhID0gRU1QTE9ZRUVfU0tJTExTX01PQ0s7XG5cbiAgICAgICAgaWYgKHNraWxsSWQpIGRhdGEgPSBkYXRhLmZpbHRlcigoeCkgPT4geC5za2lsbElkID09PSBza2lsbElkKTtcbiAgICAgICAgaWYgKGxldmVsSWQpIGRhdGEgPSBkYXRhLmZpbHRlcigoeCkgPT4geC5sZXZlbElkID09PSBsZXZlbElkKTtcbiAgICAgICAgaWYgKG1pblllYXJzICE9IG51bGwpIGRhdGEgPSBkYXRhLmZpbHRlcigoeCkgPT4gKHgueWVhcnNPZkV4cGVyaWVuY2UgPz8gMCkgPj0gTnVtYmVyKG1pblllYXJzKSk7XG5cbiAgICAgICAgY29uc3QgZ3JvdXBlZCA9IGRhdGEucmVkdWNlKChhY2M6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4sIGN1cikgPT4ge1xuICAgICAgICAgICAgY29uc3Qga2V5ID0gY3VyLnNraWxsPy50aXRsZSA/PyBjdXIuc2tpbGxJZDtcbiAgICAgICAgICAgIGFjY1trZXldID0gKGFjY1trZXldID8/IDApICsgMTtcbiAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgIH0sIHt9KTtcblxuICAgICAgICByZXR1cm4gZ3JvdXBlZDtcbiAgICB9XG59XG5cbnR5cGUgTGV2ZWxzSW5wdXQgPSB7XG4gICAgc2tpbGxJZD86IHN0cmluZztcbiAgICBtaW5ZZWFycz86IG51bWJlcjtcbn07XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQVhRRW1wbG95ZWVTa2lsbHNMZXZlbHNRdWVyeSBpbXBsZW1lbnRzIEFYUFF1ZXJ5PExldmVsc0lucHV0LCBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+PiB7XG4gICAgYXN5bmMgZmV0Y2goaW5wdXQ6IExldmVsc0lucHV0KTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCBudW1iZXI+PiB7XG4gICAgICAgIGNvbnN0IHsgc2tpbGxJZCwgbWluWWVhcnMgfSA9IGlucHV0ID8/IHt9IGFzIGFueTtcbiAgICAgICAgbGV0IGRhdGEgPSBFTVBMT1lFRV9TS0lMTFNfTU9DSztcblxuICAgICAgICBpZiAoc2tpbGxJZCkgZGF0YSA9IGRhdGEuZmlsdGVyKCh4KSA9PiB4LnNraWxsSWQgPT09IHNraWxsSWQpO1xuICAgICAgICBpZiAobWluWWVhcnMgIT0gbnVsbCkgZGF0YSA9IGRhdGEuZmlsdGVyKCh4KSA9PiAoeC55ZWFyc09mRXhwZXJpZW5jZSA/PyAwKSA+PSBOdW1iZXIobWluWWVhcnMpKTtcblxuICAgICAgICBjb25zdCBsZXZlbHMgPSBTS0lMTF9MRVZFTFNfTU9DSy5tYXAobCA9PiAoeyBpZDogbC5pZCwgdGl0bGU6IGwudGl0bGUgfSkpO1xuICAgICAgICBjb25zdCBncm91cGVkID0gZGF0YS5yZWR1Y2UoKGFjYzogUmVjb3JkPHN0cmluZywgbnVtYmVyPiwgY3VyKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBrZXkgPSBjdXIubGV2ZWxJZCAmJiBsZXZlbHMuZmluZCgoeCkgPT4geC5pZCA9PT0gY3VyLmxldmVsSWQpPy50aXRsZSB8fCAnVW5rbm93bic7XG4gICAgICAgICAgICBhY2Nba2V5XSA9IChhY2Nba2V5XSA/PyAwKSArIDE7XG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCB7fSk7XG4gICAgICAgIC8vIEVuc3VyZSBhbGwga25vd24gbGV2ZWxzIGV4aXN0ICgwIGlmIG1pc3NpbmcpXG4gICAgICAgIGxldmVscy5mb3JFYWNoKChsdmwpID0+IChncm91cGVkW2x2bC50aXRsZV0gPSBncm91cGVkW2x2bC50aXRsZV0gPz8gMCkpO1xuICAgICAgICByZXR1cm4gZ3JvdXBlZDtcbiAgICB9XG59XG5cbnR5cGUgVHJlbmRJbnB1dCA9IHtcbiAgICBzdGFydERhdGU/OiBEYXRlIHwgc3RyaW5nO1xuICAgIGVuZERhdGU/OiBEYXRlIHwgc3RyaW5nO1xuICAgIHNraWxsSWQ/OiBzdHJpbmc7XG4gICAgbGV2ZWxJZD86IHN0cmluZztcbn07XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQVhRRW1wbG95ZWVTa2lsbHNUcmVuZFF1ZXJ5IGltcGxlbWVudHMgQVhQUXVlcnk8VHJlbmRJbnB1dCwgeyBtb250aDogc3RyaW5nOyB2YWx1ZTogbnVtYmVyIH1bXT4ge1xuICAgIGFzeW5jIGZldGNoKGlucHV0OiBUcmVuZElucHV0KTogUHJvbWlzZTx7IG1vbnRoOiBzdHJpbmc7IHZhbHVlOiBudW1iZXIgfVtdPiB7XG4gICAgICAgIGNvbnN0IHsgc3RhcnREYXRlLCBlbmREYXRlLCBza2lsbElkLCBsZXZlbElkIH0gPSBpbnB1dCA/PyB7fSBhcyBhbnk7XG4gICAgICAgIGNvbnN0IHNEYXRlID0gc3RhcnREYXRlID8gbmV3IERhdGUoc3RhcnREYXRlKSA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgZURhdGUgPSBlbmREYXRlID8gbmV3IERhdGUoZW5kRGF0ZSkgOiB1bmRlZmluZWQ7XG5cbiAgICAgICAgbGV0IGRhdGEgPSBFTVBMT1lFRV9TS0lMTFNfTU9DS1xuICAgICAgICAgICAgLmZpbHRlcigoeCkgPT4gKHNraWxsSWQgPyB4LnNraWxsSWQgPT09IHNraWxsSWQgOiB0cnVlKSlcbiAgICAgICAgICAgIC5maWx0ZXIoKHgpID0+IChsZXZlbElkID8geC5sZXZlbElkID09PSBsZXZlbElkIDogdHJ1ZSkpXG4gICAgICAgICAgICAuZmlsdGVyKCh4KSA9PiAoc0RhdGUgPyAoeC5sYXN0VXNlZERhdGUgJiYgbmV3IERhdGUoeC5sYXN0VXNlZERhdGUpID49IHNEYXRlKSA6IHRydWUpKVxuICAgICAgICAgICAgLmZpbHRlcigoeCkgPT4gKGVEYXRlID8gKHgubGFzdFVzZWREYXRlICYmIG5ldyBEYXRlKHgubGFzdFVzZWREYXRlKSA8PSBlRGF0ZSkgOiB0cnVlKSk7XG5cbiAgICAgICAgLy8gR3JvdXAgYnkgWVlZWS1NTSBmcm9tIGxhc3RVc2VkRGF0ZSBhbmQgY291bnQgb2NjdXJyZW5jZXNcbiAgICAgICAgY29uc3QgY291bnRzID0gZGF0YS5yZWR1Y2UoKGFjYzogUmVjb3JkPHN0cmluZywgbnVtYmVyPiwgY3VyKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBkID0gY3VyLmxhc3RVc2VkRGF0ZSA/IG5ldyBEYXRlKGN1ci5sYXN0VXNlZERhdGUpIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3Qga2V5ID0gZCA/IGAke2QuZ2V0RnVsbFllYXIoKX0tJHtTdHJpbmcoZC5nZXRNb250aCgpICsgMSkucGFkU3RhcnQoMiwgJzAnKX1gIDogJ1Vua25vd24nO1xuICAgICAgICAgICAgYWNjW2tleV0gPSAoYWNjW2tleV0gPz8gMCkgKyAxO1xuICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgfSwge30gYXMgUmVjb3JkPHN0cmluZywgbnVtYmVyPik7XG5cbiAgICAgICAgLy8gQ29udmVydCB0byBzb3J0ZWQgYXJyYXksIGlnbm9yaW5nICdVbmtub3duJ1xuICAgICAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMoY291bnRzKVxuICAgICAgICAgICAgLmZpbHRlcigoW2tdKSA9PiBrICE9PSAnVW5rbm93bicpXG4gICAgICAgICAgICAuc29ydCgoW2FdLCBbYl0pID0+IChhIDwgYiA/IC0xIDogYSA+IGIgPyAxIDogMCkpXG4gICAgICAgICAgICAubWFwKChbbW9udGgsIHZhbHVlXSkgPT4gKHsgbW9udGgsIHZhbHVlIH0pKTtcbiAgICB9XG59XG5cbi8vI3JlZ2lvbiAtLS0tICAgUGVyY2VudGFnZSBRdWVyaWVzICAgLS0tLVxuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEFYUUVtcGxveWVlU2tpbGxzU2tpbGxQZXJjZW50YWdlc1F1ZXJ5IGltcGxlbWVudHMgQVhQUXVlcnk8U3RhdHNJbnB1dCwgUmVjb3JkPHN0cmluZywgbnVtYmVyPj4ge1xuICAgIGFzeW5jIGZldGNoKGlucHV0OiBTdGF0c0lucHV0KTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCBudW1iZXI+PiB7XG4gICAgICAgIGNvbnN0IHsgc2tpbGxJZCwgbGV2ZWxJZCwgbWluWWVhcnMgfSA9IGlucHV0ID8/ICh7fSBhcyBhbnkpO1xuICAgICAgICBsZXQgZGF0YSA9IEVNUExPWUVFX1NLSUxMU19NT0NLO1xuXG4gICAgICAgIGlmIChza2lsbElkKSBkYXRhID0gZGF0YS5maWx0ZXIoKHgpID0+IHguc2tpbGxJZCA9PT0gc2tpbGxJZCk7XG4gICAgICAgIGlmIChsZXZlbElkKSBkYXRhID0gZGF0YS5maWx0ZXIoKHgpID0+IHgubGV2ZWxJZCA9PT0gbGV2ZWxJZCk7XG4gICAgICAgIGlmIChtaW5ZZWFycyAhPSBudWxsKSBkYXRhID0gZGF0YS5maWx0ZXIoKHgpID0+ICh4LnllYXJzT2ZFeHBlcmllbmNlID8/IDApID49IE51bWJlcihtaW5ZZWFycykpO1xuXG4gICAgICAgIGNvbnN0IGNvdW50cyA9IGRhdGEucmVkdWNlKChhY2M6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4sIGN1cikgPT4ge1xuICAgICAgICAgICAgY29uc3Qga2V5ID0gY3VyLnNraWxsPy50aXRsZSA/PyBjdXIuc2tpbGxJZDtcbiAgICAgICAgICAgIGFjY1trZXldID0gKGFjY1trZXldID8/IDApICsgMTtcbiAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgIH0sIHt9IGFzIFJlY29yZDxzdHJpbmcsIG51bWJlcj4pO1xuXG4gICAgICAgIGNvbnN0IHRvdGFsID0gT2JqZWN0LnZhbHVlcyhjb3VudHMpLnJlZHVjZSgoYSwgYikgPT4gYSArIGIsIDApIHx8IDE7XG4gICAgICAgIGNvbnN0IHBlcmNlbnRhZ2VzOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+ID0ge307XG4gICAgICAgIE9iamVjdC5lbnRyaWVzKGNvdW50cykuZm9yRWFjaCgoW2ssIHZdKSA9PiB7XG4gICAgICAgICAgICBwZXJjZW50YWdlc1trXSA9IE1hdGgucm91bmQoKHYgLyB0b3RhbCkgKiAxMDApO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHBlcmNlbnRhZ2VzO1xuICAgIH1cbn1cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBWFFFbXBsb3llZVNraWxsc0xldmVsUGVyY2VudGFnZXNRdWVyeSBpbXBsZW1lbnRzIEFYUFF1ZXJ5PExldmVsc0lucHV0LCBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+PiB7XG4gICAgYXN5bmMgZmV0Y2goaW5wdXQ6IExldmVsc0lucHV0KTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCBudW1iZXI+PiB7XG4gICAgICAgIGNvbnN0IHsgc2tpbGxJZCwgbWluWWVhcnMgfSA9IGlucHV0ID8/ICh7fSBhcyBhbnkpO1xuICAgICAgICBsZXQgZGF0YSA9IEVNUExPWUVFX1NLSUxMU19NT0NLO1xuXG4gICAgICAgIGlmIChza2lsbElkKSBkYXRhID0gZGF0YS5maWx0ZXIoKHgpID0+IHguc2tpbGxJZCA9PT0gc2tpbGxJZCk7XG4gICAgICAgIGlmIChtaW5ZZWFycyAhPSBudWxsKSBkYXRhID0gZGF0YS5maWx0ZXIoKHgpID0+ICh4LnllYXJzT2ZFeHBlcmllbmNlID8/IDApID49IE51bWJlcihtaW5ZZWFycykpO1xuXG4gICAgICAgIGNvbnN0IGxldmVscyA9IFNLSUxMX0xFVkVMU19NT0NLLm1hcChsID0+ICh7IGlkOiBsLmlkLCB0aXRsZTogbC50aXRsZSB9KSk7XG4gICAgICAgIGNvbnN0IGNvdW50cyA9IGRhdGEucmVkdWNlKChhY2M6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4sIGN1cikgPT4ge1xuICAgICAgICAgICAgY29uc3Qga2V5ID0gY3VyLmxldmVsSWQgJiYgbGV2ZWxzLmZpbmQoKHgpID0+IHguaWQgPT09IGN1ci5sZXZlbElkKT8udGl0bGUgfHwgJ1Vua25vd24nO1xuICAgICAgICAgICAgYWNjW2tleV0gPSAoYWNjW2tleV0gPz8gMCkgKyAxO1xuICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgfSwge30gYXMgUmVjb3JkPHN0cmluZywgbnVtYmVyPik7XG5cbiAgICAgICAgLy8gRW5zdXJlIGZpeGVkIGxldmVsIGtleXMgZXhpc3RcbiAgICAgICAgbGV2ZWxzLmZvckVhY2goKGx2bCkgPT4gKGNvdW50c1tsdmwudGl0bGVdID0gY291bnRzW2x2bC50aXRsZV0gPz8gMCkpO1xuXG4gICAgICAgIGNvbnN0IHRvdGFsID0gbGV2ZWxzLnJlZHVjZSgoc3VtLCBsdmwpID0+IHN1bSArIChjb3VudHNbbHZsLnRpdGxlXSA/PyAwKSwgMCkgfHwgMTtcbiAgICAgICAgY29uc3QgcGVyY2VudGFnZXM6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4gPSB7fTtcbiAgICAgICAgbGV2ZWxzLmZvckVhY2goKGx2bCkgPT4ge1xuICAgICAgICAgICAgcGVyY2VudGFnZXNbbHZsLnRpdGxlXSA9IE1hdGgucm91bmQoKChjb3VudHNbbHZsLnRpdGxlXSA/PyAwKSAvIHRvdGFsKSAqIDEwMCk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcGVyY2VudGFnZXM7XG4gICAgfVxufVxuXG4vLyNlbmRyZWdpb25cblxuLy8jZW5kcmVnaW9uXG5cblxuIl19"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { A as APPLICATIONS, a as APPLICATIONS_MODULES,
|
|
1
|
+
export { A as APPLICATIONS, a as APPLICATIONS_MODULES, Z as AXCAppVersionDataSeeder, f as AXCApplicationManagementMockModule, e as AXCApplicationTemplateDataSeeder, g as AXCAuthMockModule, h as AXCCommonMockModule, l as AXCContactManagementMockModule, p as AXCConversationMockModule, s as AXCDashboardManagementMockModule, t as AXCDataManagementMockModule, w as AXCDocumentManagementMockModule, I as AXCFOrganizationManagementMockModule, j as AXCFileStorageService, x as AXCFormTemplateManagementMockModule, _ as AXCGlobalVariablesDataSeeder, y as AXCHelpDeskMockModule, at as AXCIdentifierManagementMockModule, as as AXCLocaleManagementMockModule, ar as AXCLocationManagementMockModule, i as AXCLockService, z as AXCLogManagementMockModule, u as AXCMetaDataDefinitionDataSeeder, aG as AXCMiddlewaresModule, aF as AXCMockEntityLogListener, C as AXCMockModule, H as AXCNotificationManagementMockModule, a0 as AXCPlatformManagementMockModule, a1 as AXCProjectManagementMockModule, a5 as AXCReportManagementMockModule, a7 as AXCSchedulerJobDataSeeder, a8 as AXCSchedulerJobManagementMockModule, af as AXCSecurityManagementMockModule, ak as AXCTaskManagementMockModule, al as AXCTextTemplateCategoryDataSeeder, am as AXCTextTemplateDataSeeder, ap as AXCTextTemplateManagementMockModule, aq as AXCTrainingManagementMockModule, m as AXMAiResponderService, K as AXMBranchDataSeeder, Q as AXMDepartmentDataSeeder, N as AXMDivisionDataSeeder, W as AXMEmployeeDataSeeder, Y as AXMPositionAssignmentDataSeeder, a2 as AXMReportCategoryDataSeeder, a3 as AXMReportDefinitionDataSeeder, a4 as AXMReportExecuteCommand, a6 as AXMReportMockDataService, R as AXMTeamDataSeeder, r as AXPDashboardDataSeeder, v as AXPDexieEntityStorageService, au as AXPIdentifierDB, n as AXPMessageDataSeeder, aw as AXPMockChecksumProvider, av as AXPMockClockProvider, aA as AXPMockIdentifierService, ay as AXPMockLookupProvider, ax as AXPMockPolicyProvider, az as AXPMockSequenceProvider, o as AXPRoomDataSeeder, ad as AXPSecurityManagementRoleDataSeeder, ae as AXPSecurityManagementUserDataSeeder, J as BRANCHES_MOCK, D as DASHBOARDS, O as DEPARTMENTS_MOCK, L as DIVISIONS_MOCK, b as EDITIONS, V as EMPLOYEES_MOCK, c as ENTITIES, F as FEATURES, $ as GLOBAL_VARIABLES, B as MOCKGoogleStrategy, G as MOCKStrategy, M as MODULES, P as PERMISSIONS, X as POSITION_ASSIGNMENTS_MOCK, d as PROPERTIES, ai as TASKS, ah as TASK_STATUSES, aj as TASK_TEMPLATES, ag as TASK_TYPES, T as TEAMS_MOCK, ao as TEXT_TEMPLATES, an as TEXT_TEMPLATE_CATEGORY, aa as applications, aB as auditLoggerMiddleware, aC as createFileCastMiddleware, k as findContactMethod, U as findEmployeeById, q as generateRandomDashboard, aD as identifierCommitMiddleware, aE as mergeDetailRelationMiddleware, ab as mockRoleDefinitions, ac as mockUsers, a9 as tenantsMock } from './acorex-connectivity-mock-acorex-connectivity-mock-BrHaSAxo.mjs';
|
|
2
2
|
//# sourceMappingURL=acorex-connectivity-mock.mjs.map
|
package/mock/index.d.ts
CHANGED
|
@@ -314,6 +314,12 @@ declare class AXCFOrganizationManagementMockModule {
|
|
|
314
314
|
static ɵinj: i0.ɵɵInjectorDeclaration<AXCFOrganizationManagementMockModule>;
|
|
315
315
|
}
|
|
316
316
|
|
|
317
|
+
declare class AXCHumanCapitalManagementMockModule {
|
|
318
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXCHumanCapitalManagementMockModule, never>;
|
|
319
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AXCHumanCapitalManagementMockModule, never, never, never>;
|
|
320
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<AXCHumanCapitalManagementMockModule>;
|
|
321
|
+
}
|
|
322
|
+
|
|
317
323
|
declare class AXCReportManagementMockModule {
|
|
318
324
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXCReportManagementMockModule, never>;
|
|
319
325
|
static ɵmod: i0.ɵɵNgModuleDeclaration<AXCReportManagementMockModule, never, [typeof i1.AXPRuntimeModule], never>;
|
|
@@ -431,7 +437,7 @@ declare class AXCMiddlewaresModule {
|
|
|
431
437
|
declare class AXCMockModule {
|
|
432
438
|
constructor(appInitService: AXPAppStartUpService, injector: Injector);
|
|
433
439
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXCMockModule, never>;
|
|
434
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AXCMockModule, never, [typeof _acorex_platform_auth.AXPAuthModule, typeof AXCCommonMockModule, typeof AXCFormTemplateManagementMockModule, typeof AXCFOrganizationManagementMockModule, typeof AXCReportManagementMockModule, typeof AXCContactManagementMockModule, typeof AXCLocationManagementMockModule, typeof AXCLocaleManagementMockModule, typeof AXCDashboardManagementMockModule, typeof AXCConversationMockModule, typeof AXCAuthMockModule, typeof AXCPlatformManagementMockModule, typeof AXCTextTemplateManagementMockModule, typeof AXCSecurityManagementMockModule, typeof AXCSchedulerJobManagementMockModule, typeof AXCApplicationManagementMockModule, typeof AXCTrainingManagementMockModule, typeof AXCProjectManagementMockModule, typeof AXCDocumentManagementMockModule, typeof AXCHelpDeskMockModule, typeof AXCLogManagementMockModule, typeof AXMCalendarManagementMockModule, typeof AXCDataManagementMockModule, typeof AXCWorkflowManagementMockModule, typeof AXCNotificationManagementMockModule, typeof AXCTaskManagementMockModule, typeof AXMPartyManagementMockModule, typeof AXCContentManagementMockModule, typeof AXCIdentifierManagementMockModule, typeof AXCMeetingManagementMockModule, typeof AXCCustomerManagementMockModule, typeof AXCMiddlewaresModule], never>;
|
|
440
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AXCMockModule, never, [typeof _acorex_platform_auth.AXPAuthModule, typeof AXCCommonMockModule, typeof AXCFormTemplateManagementMockModule, typeof AXCFOrganizationManagementMockModule, typeof AXCHumanCapitalManagementMockModule, typeof AXCReportManagementMockModule, typeof AXCContactManagementMockModule, typeof AXCLocationManagementMockModule, typeof AXCLocaleManagementMockModule, typeof AXCDashboardManagementMockModule, typeof AXCConversationMockModule, typeof AXCAuthMockModule, typeof AXCPlatformManagementMockModule, typeof AXCTextTemplateManagementMockModule, typeof AXCSecurityManagementMockModule, typeof AXCSchedulerJobManagementMockModule, typeof AXCApplicationManagementMockModule, typeof AXCTrainingManagementMockModule, typeof AXCProjectManagementMockModule, typeof AXCDocumentManagementMockModule, typeof AXCHelpDeskMockModule, typeof AXCLogManagementMockModule, typeof AXMCalendarManagementMockModule, typeof AXCDataManagementMockModule, typeof AXCWorkflowManagementMockModule, typeof AXCNotificationManagementMockModule, typeof AXCTaskManagementMockModule, typeof AXMPartyManagementMockModule, typeof AXCContentManagementMockModule, typeof AXCIdentifierManagementMockModule, typeof AXCMeetingManagementMockModule, typeof AXCCustomerManagementMockModule, typeof AXCMiddlewaresModule], never>;
|
|
435
441
|
static ɵinj: i0.ɵɵInjectorDeclaration<AXCMockModule>;
|
|
436
442
|
}
|
|
437
443
|
|
|
@@ -461,35 +467,11 @@ declare class MOCKStrategy extends AXPAuthStrategy {
|
|
|
461
467
|
static ɵprov: i0.ɵɵInjectableDeclaration<MOCKStrategy>;
|
|
462
468
|
}
|
|
463
469
|
|
|
464
|
-
interface PartyMockData {
|
|
465
|
-
id: string;
|
|
466
|
-
firstName: string;
|
|
467
|
-
lastName: string;
|
|
468
|
-
displayName: string;
|
|
469
|
-
email: string;
|
|
470
|
-
mobile: string;
|
|
471
|
-
}
|
|
472
|
-
|
|
473
|
-
interface AXCMockUserMockDto {
|
|
474
|
-
id: string;
|
|
475
|
-
username: string;
|
|
476
|
-
displayName: string;
|
|
477
|
-
partyId: string;
|
|
478
|
-
roleIds: string[];
|
|
479
|
-
roles: {
|
|
480
|
-
id: string;
|
|
481
|
-
title: string;
|
|
482
|
-
}[];
|
|
483
|
-
}
|
|
484
|
-
declare const mockUsers: AXCMockUserMockDto[];
|
|
485
|
-
|
|
486
470
|
declare function findEmployeeById(employeeId: string): AXCEmployeeMockDto | undefined;
|
|
487
471
|
interface AXCEmployeeMockDto {
|
|
488
472
|
id: string;
|
|
489
473
|
userId?: string;
|
|
490
|
-
|
|
491
|
-
contactId: string;
|
|
492
|
-
contact: PartyMockData;
|
|
474
|
+
partyId: string;
|
|
493
475
|
birthDate: Date;
|
|
494
476
|
employeeCode: string;
|
|
495
477
|
roleId: string;
|
|
@@ -521,9 +503,21 @@ interface AXCBranchMockDto {
|
|
|
521
503
|
description: string;
|
|
522
504
|
managerId: string;
|
|
523
505
|
manager: AXCEmployeeMock$3;
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
506
|
+
locationId?: string;
|
|
507
|
+
location?: {
|
|
508
|
+
country: {
|
|
509
|
+
id: string;
|
|
510
|
+
title: string;
|
|
511
|
+
};
|
|
512
|
+
state: {
|
|
513
|
+
id: string;
|
|
514
|
+
title: string;
|
|
515
|
+
};
|
|
516
|
+
city: {
|
|
517
|
+
id: string;
|
|
518
|
+
title: string;
|
|
519
|
+
};
|
|
520
|
+
};
|
|
527
521
|
}
|
|
528
522
|
declare const BRANCHES_MOCK: AXCBranchMockDto[];
|
|
529
523
|
|
|
@@ -534,16 +528,28 @@ declare class AXMBranchDataSeeder implements AXPDataSeeder {
|
|
|
534
528
|
static ɵprov: i0.ɵɵInjectableDeclaration<AXMBranchDataSeeder>;
|
|
535
529
|
}
|
|
536
530
|
|
|
537
|
-
type AXCEmployeeMock$2 = typeof EMPLOYEES_MOCK[number];
|
|
531
|
+
type AXCEmployeeMock$2 = (typeof EMPLOYEES_MOCK)[number];
|
|
538
532
|
interface AXCDivisionMockDto {
|
|
539
533
|
id: string;
|
|
540
534
|
title: string;
|
|
541
535
|
description: string;
|
|
542
536
|
managerId: string;
|
|
543
537
|
manager: AXCEmployeeMock$2;
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
538
|
+
countryId?: string;
|
|
539
|
+
stateId?: string;
|
|
540
|
+
cityId?: string;
|
|
541
|
+
country?: {
|
|
542
|
+
id: string;
|
|
543
|
+
title: string;
|
|
544
|
+
};
|
|
545
|
+
state?: {
|
|
546
|
+
id: string;
|
|
547
|
+
title: string;
|
|
548
|
+
};
|
|
549
|
+
city?: {
|
|
550
|
+
id: string;
|
|
551
|
+
title: string;
|
|
552
|
+
};
|
|
547
553
|
}
|
|
548
554
|
declare const DIVISIONS_MOCK: AXCDivisionMockDto[];
|
|
549
555
|
|
|
@@ -561,9 +567,6 @@ interface AXCDepartmentMockDto {
|
|
|
561
567
|
description: string;
|
|
562
568
|
managerId: string;
|
|
563
569
|
manager: AXCEmployeeMock$1;
|
|
564
|
-
country: string;
|
|
565
|
-
province: string;
|
|
566
|
-
city: string;
|
|
567
570
|
}
|
|
568
571
|
declare const DEPARTMENTS_MOCK: AXCDepartmentMockDto[];
|
|
569
572
|
|
|
@@ -574,7 +577,18 @@ declare class AXMDepartmentDataSeeder implements AXPDataSeeder {
|
|
|
574
577
|
static ɵprov: i0.ɵɵInjectableDeclaration<AXMDepartmentDataSeeder>;
|
|
575
578
|
}
|
|
576
579
|
|
|
577
|
-
type AXCEmployeeMock = typeof EMPLOYEES_MOCK[number];
|
|
580
|
+
type AXCEmployeeMock = (typeof EMPLOYEES_MOCK)[number];
|
|
581
|
+
interface AXCTeamMockDto {
|
|
582
|
+
id: string;
|
|
583
|
+
title: string;
|
|
584
|
+
description: string;
|
|
585
|
+
leaderId: string;
|
|
586
|
+
leader: AXCEmployeeMock;
|
|
587
|
+
managerId: string;
|
|
588
|
+
manager: AXCEmployeeMock;
|
|
589
|
+
memberIds: string[];
|
|
590
|
+
members: AXCEmployeeMock[];
|
|
591
|
+
}
|
|
578
592
|
interface AXCTeamMockDto {
|
|
579
593
|
id: string;
|
|
580
594
|
title: string;
|
|
@@ -602,6 +616,29 @@ declare class AXMEmployeeDataSeeder implements AXPDataSeeder {
|
|
|
602
616
|
static ɵprov: i0.ɵɵInjectableDeclaration<AXMEmployeeDataSeeder>;
|
|
603
617
|
}
|
|
604
618
|
|
|
619
|
+
interface AXCPositionAssignmentMockDto {
|
|
620
|
+
id: string;
|
|
621
|
+
employeeId: string;
|
|
622
|
+
employee?: any;
|
|
623
|
+
positionId: string;
|
|
624
|
+
position?: any;
|
|
625
|
+
scopeType: 'division' | 'department';
|
|
626
|
+
scopeId: string;
|
|
627
|
+
scope?: any;
|
|
628
|
+
startDate: Date;
|
|
629
|
+
endDate?: Date | null;
|
|
630
|
+
isPrimary?: boolean;
|
|
631
|
+
notes?: string;
|
|
632
|
+
}
|
|
633
|
+
declare const POSITION_ASSIGNMENTS_MOCK: AXCPositionAssignmentMockDto[];
|
|
634
|
+
|
|
635
|
+
declare class AXMPositionAssignmentDataSeeder implements AXPDataSeeder {
|
|
636
|
+
private storageService;
|
|
637
|
+
seed(): Promise<void>;
|
|
638
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXMPositionAssignmentDataSeeder, never>;
|
|
639
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AXMPositionAssignmentDataSeeder>;
|
|
640
|
+
}
|
|
641
|
+
|
|
605
642
|
declare class AXCAppVersionDataSeeder implements AXPDataSeeder {
|
|
606
643
|
private storageService;
|
|
607
644
|
private appVersionService;
|
|
@@ -726,6 +763,20 @@ declare const mockRoleDefinitions: {
|
|
|
726
763
|
permissions: never[];
|
|
727
764
|
}[];
|
|
728
765
|
|
|
766
|
+
interface AXCMockUserMockDto {
|
|
767
|
+
id: string;
|
|
768
|
+
username: string;
|
|
769
|
+
displayName: string;
|
|
770
|
+
partyId: string;
|
|
771
|
+
roleIds: string[];
|
|
772
|
+
roles: {
|
|
773
|
+
id: string;
|
|
774
|
+
title: string;
|
|
775
|
+
}[];
|
|
776
|
+
password: string;
|
|
777
|
+
}
|
|
778
|
+
declare const mockUsers: AXCMockUserMockDto[];
|
|
779
|
+
|
|
729
780
|
interface TaskType {
|
|
730
781
|
id: string;
|
|
731
782
|
name: string;
|
|
@@ -867,7 +918,8 @@ declare class AXPMockLookupProvider implements AXPLookupProvider {
|
|
|
867
918
|
}
|
|
868
919
|
declare class AXPMockSequenceProvider implements AXPSequenceProvider {
|
|
869
920
|
private readonly db;
|
|
870
|
-
|
|
921
|
+
private readonly rulesFromProviders;
|
|
922
|
+
next(scopeHash: string, ruleId: string, options?: {
|
|
871
923
|
pad?: number;
|
|
872
924
|
consume?: boolean;
|
|
873
925
|
}): Promise<number>;
|
|
@@ -898,8 +950,6 @@ declare class AXPMockIdentifierService extends AXPIdentifierService {
|
|
|
898
950
|
static ɵprov: i0.ɵɵInjectableDeclaration<AXPMockIdentifierService>;
|
|
899
951
|
}
|
|
900
952
|
|
|
901
|
-
declare const identifierCommitMiddleware: AXPEntityStorageMiddleware;
|
|
902
|
-
|
|
903
953
|
declare const auditLoggerMiddleware: AXPEntityStorageMiddleware;
|
|
904
954
|
|
|
905
955
|
/**
|
|
@@ -922,7 +972,11 @@ declare const auditLoggerMiddleware: AXPEntityStorageMiddleware;
|
|
|
922
972
|
*/
|
|
923
973
|
declare const createFileCastMiddleware: AXPEntityStorageMiddleware;
|
|
924
974
|
|
|
975
|
+
declare const identifierCommitMiddleware: AXPEntityStorageMiddleware;
|
|
976
|
+
|
|
977
|
+
declare const mergeDetailRelationMiddleware: AXPEntityStorageMiddleware;
|
|
978
|
+
|
|
925
979
|
declare const AXCMockEntityLogListener: AXPDistributedEventListenerProvider<any>;
|
|
926
980
|
|
|
927
|
-
export { APPLICATIONS, APPLICATIONS_MODULES, AXCAppVersionDataSeeder, AXCApplicationManagementMockModule, AXCApplicationTemplateDataSeeder, AXCAuthMockModule, AXCCommonMockModule, AXCContactManagementMockModule, AXCConversationMockModule, AXCDashboardManagementMockModule, AXCDataManagementMockModule, AXCDocumentManagementMockModule, AXCFOrganizationManagementMockModule, AXCFileStorageService, AXCFormTemplateManagementMockModule, AXCGlobalVariablesDataSeeder, AXCHelpDeskMockModule, AXCIdentifierManagementMockModule, AXCLocaleManagementMockModule, AXCLocationManagementMockModule, AXCLockService, AXCLogManagementMockModule, AXCMetaDataDefinitionDataSeeder, AXCMiddlewaresModule, AXCMockEntityLogListener, AXCMockModule, AXCNotificationManagementMockModule, AXCPlatformManagementMockModule, AXCProjectManagementMockModule, AXCReportManagementMockModule, AXCSchedulerJobDataSeeder, AXCSchedulerJobManagementMockModule, AXCSecurityManagementMockModule, AXCTaskManagementMockModule, AXCTextTemplateCategoryDataSeeder, AXCTextTemplateDataSeeder, AXCTextTemplateManagementMockModule, AXCTrainingManagementMockModule, AXMAiResponderService, AXMBranchDataSeeder, AXMDepartmentDataSeeder, AXMDivisionDataSeeder, AXMEmployeeDataSeeder, AXMReportCategoryDataSeeder, AXMReportDefinitionDataSeeder, AXMReportExecuteCommand, AXMReportMockDataService, AXMTeamDataSeeder, AXPDashboardDataSeeder, AXPDexieEntityStorageService, AXPIdentifierDB, AXPMessageDataSeeder, AXPMockChecksumProvider, AXPMockClockProvider, AXPMockIdentifierService, AXPMockLookupProvider, AXPMockPolicyProvider, AXPMockSequenceProvider, AXPRoomDataSeeder, AXPSecurityManagementRoleDataSeeder, AXPSecurityManagementUserDataSeeder, BRANCHES_MOCK, DASHBOARDS, DEPARTMENTS_MOCK, DIVISIONS_MOCK, EDITIONS, EMPLOYEES_MOCK, ENTITIES, FEATURES, GLOBAL_VARIABLES, MOCKGoogleStrategy, MOCKStrategy, MODULES, PERMISSIONS, PROPERTIES, TASKS, TASK_STATUSES, TASK_TEMPLATES, TASK_TYPES, TEAMS_MOCK, TEXT_TEMPLATES, TEXT_TEMPLATE_CATEGORY, applications, auditLoggerMiddleware, createFileCastMiddleware, findContactMethod, findEmployeeById, generateRandomDashboard, identifierCommitMiddleware, mockRoleDefinitions, mockUsers, tenantsMock };
|
|
928
|
-
export type { AXCBranchMockDto, AXCDepartmentMockDto, AXCDivisionMockDto, AXCTeamMockDto, AXPLogRow, AXPRuleRow, AXPSeqRow, MockUserPassCredentials, Task, TaskStatus, TaskTemplate, TaskType };
|
|
981
|
+
export { APPLICATIONS, APPLICATIONS_MODULES, AXCAppVersionDataSeeder, AXCApplicationManagementMockModule, AXCApplicationTemplateDataSeeder, AXCAuthMockModule, AXCCommonMockModule, AXCContactManagementMockModule, AXCConversationMockModule, AXCDashboardManagementMockModule, AXCDataManagementMockModule, AXCDocumentManagementMockModule, AXCFOrganizationManagementMockModule, AXCFileStorageService, AXCFormTemplateManagementMockModule, AXCGlobalVariablesDataSeeder, AXCHelpDeskMockModule, AXCIdentifierManagementMockModule, AXCLocaleManagementMockModule, AXCLocationManagementMockModule, AXCLockService, AXCLogManagementMockModule, AXCMetaDataDefinitionDataSeeder, AXCMiddlewaresModule, AXCMockEntityLogListener, AXCMockModule, AXCNotificationManagementMockModule, AXCPlatformManagementMockModule, AXCProjectManagementMockModule, AXCReportManagementMockModule, AXCSchedulerJobDataSeeder, AXCSchedulerJobManagementMockModule, AXCSecurityManagementMockModule, AXCTaskManagementMockModule, AXCTextTemplateCategoryDataSeeder, AXCTextTemplateDataSeeder, AXCTextTemplateManagementMockModule, AXCTrainingManagementMockModule, AXMAiResponderService, AXMBranchDataSeeder, AXMDepartmentDataSeeder, AXMDivisionDataSeeder, AXMEmployeeDataSeeder, AXMPositionAssignmentDataSeeder, AXMReportCategoryDataSeeder, AXMReportDefinitionDataSeeder, AXMReportExecuteCommand, AXMReportMockDataService, AXMTeamDataSeeder, AXPDashboardDataSeeder, AXPDexieEntityStorageService, AXPIdentifierDB, AXPMessageDataSeeder, AXPMockChecksumProvider, AXPMockClockProvider, AXPMockIdentifierService, AXPMockLookupProvider, AXPMockPolicyProvider, AXPMockSequenceProvider, AXPRoomDataSeeder, AXPSecurityManagementRoleDataSeeder, AXPSecurityManagementUserDataSeeder, BRANCHES_MOCK, DASHBOARDS, DEPARTMENTS_MOCK, DIVISIONS_MOCK, EDITIONS, EMPLOYEES_MOCK, ENTITIES, FEATURES, GLOBAL_VARIABLES, MOCKGoogleStrategy, MOCKStrategy, MODULES, PERMISSIONS, POSITION_ASSIGNMENTS_MOCK, PROPERTIES, TASKS, TASK_STATUSES, TASK_TEMPLATES, TASK_TYPES, TEAMS_MOCK, TEXT_TEMPLATES, TEXT_TEMPLATE_CATEGORY, applications, auditLoggerMiddleware, createFileCastMiddleware, findContactMethod, findEmployeeById, generateRandomDashboard, identifierCommitMiddleware, mergeDetailRelationMiddleware, mockRoleDefinitions, mockUsers, tenantsMock };
|
|
982
|
+
export type { AXCBranchMockDto, AXCDepartmentMockDto, AXCDivisionMockDto, AXCPositionAssignmentMockDto, AXCTeamMockDto, AXPLogRow, AXPRuleRow, AXPSeqRow, MockUserPassCredentials, Task, TaskStatus, TaskTemplate, TaskType };
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acorex/connectivity",
|
|
3
|
-
"version": "20.2.4-next.
|
|
3
|
+
"version": "20.2.4-next.5",
|
|
4
4
|
"peerDependencies": {
|
|
5
|
-
"@angular/common": "
|
|
6
|
-
"@angular/core": "
|
|
5
|
+
"@angular/common": ">=19.0.0",
|
|
6
|
+
"@angular/core": ">=19.0.0"
|
|
7
7
|
},
|
|
8
8
|
"sideEffects": false,
|
|
9
9
|
"module": "fesm2022/acorex-connectivity.mjs",
|