@rage-against-the-pixel/unity-cli 1.8.3 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +128 -66
- package/dist/cli.js +264 -34
- package/dist/cli.js.map +1 -1
- package/dist/github-actions-ci.d.ts +21 -0
- package/dist/github-actions-ci.js +137 -0
- package/dist/github-actions-ci.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/logger-provider.d.ts +35 -0
- package/dist/logger-provider.js +48 -0
- package/dist/logger-provider.js.map +1 -0
- package/dist/logging.d.ts +89 -4
- package/dist/logging.js +780 -186
- package/dist/logging.js.map +1 -1
- package/dist/unity-editor.d.ts +12 -0
- package/dist/unity-editor.js +75 -16
- package/dist/unity-editor.js.map +1 -1
- package/dist/unity-hub.d.ts +21 -1
- package/dist/unity-hub.js +197 -90
- package/dist/unity-hub.js.map +1 -1
- package/dist/unity-logging.d.ts +23 -1
- package/dist/unity-logging.js +259 -12
- package/dist/unity-logging.js.map +1 -1
- package/dist/upm-cli.d.ts +86 -0
- package/dist/upm-cli.js +469 -0
- package/dist/upm-cli.js.map +1 -0
- package/dist/utilities.d.ts +52 -0
- package/dist/utilities.js +195 -13
- package/dist/utilities.js.map +1 -1
- package/dist/{utp/utp.d.ts → utp.d.ts} +21 -3
- package/dist/{utp/utp.js → utp.js} +25 -12
- package/dist/utp.js.map +1 -0
- package/package.json +20 -9
- package/dist/utp/utp.js.map +0 -1
package/dist/unity-logging.js
CHANGED
|
@@ -35,6 +35,10 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.ActionTableRenderer = void 0;
|
|
37
37
|
exports.sanitizeTelemetryJson = sanitizeTelemetryJson;
|
|
38
|
+
exports.formatUtpUnrecognizedTopLevelPropertiesMessage = formatUtpUnrecognizedTopLevelPropertiesMessage;
|
|
39
|
+
exports.describeUtpForUtpLogLevel = describeUtpForUtpLogLevel;
|
|
40
|
+
exports.normalizeAnnotationPath = normalizeAnnotationPath;
|
|
41
|
+
exports.isFileUnderProjectPath = isFileUnderProjectPath;
|
|
38
42
|
exports.stringDisplayWidth = stringDisplayWidth;
|
|
39
43
|
exports.formatActionTimelineTable = formatActionTimelineTable;
|
|
40
44
|
exports.TailLogFile = TailLogFile;
|
|
@@ -42,9 +46,9 @@ const fs = __importStar(require("fs"));
|
|
|
42
46
|
const path = __importStar(require("path"));
|
|
43
47
|
const logging_1 = require("./logging");
|
|
44
48
|
const utilities_1 = require("./utilities");
|
|
45
|
-
const utp_1 = require("./utp
|
|
46
|
-
// Detects
|
|
47
|
-
const
|
|
49
|
+
const utp_1 = require("./utp");
|
|
50
|
+
// Detects workflow command markers to avoid emitting duplicate annotations
|
|
51
|
+
const annotationCommandPrefixRegex = /\n::[a-z]+::/i;
|
|
48
52
|
// Matches ANSI escape sequences (CSI and single-character)
|
|
49
53
|
const ansiEscapeSequenceRegex = /\u001b(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])/g;
|
|
50
54
|
const TIMELINE_HEADING = '🔨 Unity Build Timeline';
|
|
@@ -63,12 +67,48 @@ function sanitizeTelemetryJson(raw) {
|
|
|
63
67
|
}
|
|
64
68
|
return sanitized;
|
|
65
69
|
}
|
|
70
|
+
/** Builds the warning when a `##utp:` payload includes unrecognized root properties. Exported for tests. */
|
|
71
|
+
function formatUtpUnrecognizedTopLevelPropertiesMessage(unknownTopLevelKeys, fullTelemetryLine) {
|
|
72
|
+
return `UTP entry contains unrecognized top-level properties: ${unknownTopLevelKeys.join(', ')}\nFull line: ${fullTelemetryLine}`;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Single-line debug text for `--log-level UTP` for telemetry types that do not use the action / memory / player-build tables.
|
|
76
|
+
* Returns `undefined` when the type should fall back to unknown-type handling (warn + raw JSON).
|
|
77
|
+
*/
|
|
78
|
+
function describeUtpForUtpLogLevel(utp) {
|
|
79
|
+
switch (utp.type) {
|
|
80
|
+
case 'Compiler':
|
|
81
|
+
case 'LogEntry': {
|
|
82
|
+
const u = utp;
|
|
83
|
+
const loc = u.file != null && u.line != null ? `${u.file}:${u.line}` : (u.file ?? '');
|
|
84
|
+
const sev = u.severity != null ? String(u.severity) : '';
|
|
85
|
+
const msg = (u.message ?? '');
|
|
86
|
+
return `[UTP] ${utp.type} ${sev} ${loc} ${msg}`.replace(/\s+/gu, ' ').trim();
|
|
87
|
+
}
|
|
88
|
+
case 'TestStatus': {
|
|
89
|
+
const u = utp;
|
|
90
|
+
const name = (u.name ?? u.description ?? '—').trim();
|
|
91
|
+
const dur = u.duration ?? (u.durationMicroseconds != null ? u.durationMicroseconds / 1000 : 0);
|
|
92
|
+
const msg = (u.message ?? '');
|
|
93
|
+
return `[UTP] TestStatus state=${u.state ?? '?'} durMs=${dur} ${name} ${msg}`.replace(/\s+/gu, ' ').trim();
|
|
94
|
+
}
|
|
95
|
+
case 'TestPlan':
|
|
96
|
+
case 'ScreenSettings':
|
|
97
|
+
case 'PlayerSettings':
|
|
98
|
+
case 'BuildSettings':
|
|
99
|
+
case 'PlayerSystemInfo':
|
|
100
|
+
case 'QualitySettings':
|
|
101
|
+
return `[UTP] ${utp.type} ${JSON.stringify(utp)}`;
|
|
102
|
+
default:
|
|
103
|
+
return undefined;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
66
106
|
function sanitizeStackTrace(raw) {
|
|
67
107
|
if (!raw) {
|
|
68
108
|
return undefined;
|
|
69
109
|
}
|
|
70
110
|
const sanitized = raw
|
|
71
|
-
.replace(
|
|
111
|
+
.replace(annotationCommandPrefixRegex, '')
|
|
72
112
|
.replace(ansiEscapeSequenceRegex, '')
|
|
73
113
|
.trim();
|
|
74
114
|
if (sanitized === '') {
|
|
@@ -76,6 +116,126 @@ function sanitizeStackTrace(raw) {
|
|
|
76
116
|
}
|
|
77
117
|
return sanitized;
|
|
78
118
|
}
|
|
119
|
+
const MAX_STACK_FRAME_ANNOTATIONS = 5;
|
|
120
|
+
const MAX_PLAIN_SCAN_ANNOTATIONS = 100;
|
|
121
|
+
function normalizePathSlashes(filePath) {
|
|
122
|
+
return path.normalize(filePath).replace(/\\/g, '/');
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Normalizes a candidate issue file path for annotation and project-path checks.
|
|
126
|
+
* - absoluteFile: used for `isFileUnderProjectPath` gating.
|
|
127
|
+
* - annotationFile: project-relative path preferred for GitHub annotation rendering.
|
|
128
|
+
*/
|
|
129
|
+
function normalizeAnnotationPath(filePath, projectPath) {
|
|
130
|
+
if (!filePath) {
|
|
131
|
+
return {};
|
|
132
|
+
}
|
|
133
|
+
const trimmed = filePath.trim();
|
|
134
|
+
if (!trimmed) {
|
|
135
|
+
return {};
|
|
136
|
+
}
|
|
137
|
+
const projectRootAbsolute = projectPath ? path.resolve(projectPath) : undefined;
|
|
138
|
+
const normalizedProject = projectRootAbsolute ? normalizePathSlashes(projectRootAbsolute) : undefined;
|
|
139
|
+
const isAbsolute = path.isAbsolute(trimmed);
|
|
140
|
+
const absoluteFile = normalizePathSlashes(isAbsolute
|
|
141
|
+
? trimmed
|
|
142
|
+
: (projectRootAbsolute ? path.resolve(projectRootAbsolute, trimmed) : trimmed));
|
|
143
|
+
if (!normalizedProject) {
|
|
144
|
+
return { absoluteFile, annotationFile: normalizePathSlashes(trimmed) };
|
|
145
|
+
}
|
|
146
|
+
if (!isFileUnderProjectPath(absoluteFile, normalizedProject)) {
|
|
147
|
+
return { absoluteFile };
|
|
148
|
+
}
|
|
149
|
+
const relative = normalizePathSlashes(path.relative(normalizedProject, absoluteFile));
|
|
150
|
+
if (!relative || relative.startsWith('../')) {
|
|
151
|
+
return { absoluteFile };
|
|
152
|
+
}
|
|
153
|
+
return {
|
|
154
|
+
absoluteFile,
|
|
155
|
+
annotationFile: relative,
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
function parsePlainLogIssue(line) {
|
|
159
|
+
const paren = line.match(/^(.+?)\((\d+)(?:,\d+)?\):\s*(warning|error)\b[:\s-]*(.*)$/i);
|
|
160
|
+
if (paren && paren[1] && paren[2] && paren[3]) {
|
|
161
|
+
const severity = paren[3].toLowerCase() === 'warning' ? utp_1.Severity.Warning : utp_1.Severity.Error;
|
|
162
|
+
const file = paren[1].trim().replace(/\\/g, '/');
|
|
163
|
+
const lineNum = parseInt(paren[2], 10);
|
|
164
|
+
const remainder = (paren[4] ?? '').trim();
|
|
165
|
+
const message = remainder.length > 0 ? remainder : line.trim();
|
|
166
|
+
const issue = { severity, file, message };
|
|
167
|
+
if (Number.isFinite(lineNum)) {
|
|
168
|
+
issue.line = lineNum;
|
|
169
|
+
}
|
|
170
|
+
return issue;
|
|
171
|
+
}
|
|
172
|
+
const colon = line.match(/^(.+?):(\d+):\s*(warning|error)\b[:\s-]*(.*)$/i);
|
|
173
|
+
if (colon && colon[1] && colon[2] && colon[3]) {
|
|
174
|
+
const severity = colon[3].toLowerCase() === 'warning' ? utp_1.Severity.Warning : utp_1.Severity.Error;
|
|
175
|
+
const file = colon[1].trim().replace(/\\/g, '/');
|
|
176
|
+
const lineNum = parseInt(colon[2], 10);
|
|
177
|
+
const remainder = (colon[4] ?? '').trim();
|
|
178
|
+
const message = remainder.length > 0 ? remainder : line.trim();
|
|
179
|
+
const issue = { severity, file, message };
|
|
180
|
+
if (Number.isFinite(lineNum)) {
|
|
181
|
+
issue.line = lineNum;
|
|
182
|
+
}
|
|
183
|
+
return issue;
|
|
184
|
+
}
|
|
185
|
+
const generic = line.match(/\b(error|warning)\b[:\s-]+(.+)/i);
|
|
186
|
+
if (generic && generic[1] && generic[2]) {
|
|
187
|
+
const severity = generic[1].toLowerCase() === 'warning' ? utp_1.Severity.Warning : utp_1.Severity.Error;
|
|
188
|
+
return { severity, message: generic[2].trim() };
|
|
189
|
+
}
|
|
190
|
+
return undefined;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* True if filePath is the project root or under it. Normalizes separators; on Windows compares case-insensitively.
|
|
194
|
+
* Exported for unit tests.
|
|
195
|
+
*/
|
|
196
|
+
function isFileUnderProjectPath(filePath, projectRoot) {
|
|
197
|
+
const normFile = normalizePathSlashes(filePath);
|
|
198
|
+
const normRoot = normalizePathSlashes(projectRoot);
|
|
199
|
+
const base = normRoot.endsWith('/') ? normRoot : `${normRoot}/`;
|
|
200
|
+
if (process.platform === 'win32') {
|
|
201
|
+
const f = normFile.toLowerCase();
|
|
202
|
+
const r = normRoot.toLowerCase();
|
|
203
|
+
const b = base.toLowerCase();
|
|
204
|
+
return f === r || f.startsWith(b);
|
|
205
|
+
}
|
|
206
|
+
return normFile === normRoot || normFile.startsWith(base);
|
|
207
|
+
}
|
|
208
|
+
function parseStackFrames(stackTrace, projectPath) {
|
|
209
|
+
const frames = [];
|
|
210
|
+
const lines = stackTrace.split(/\r?\n/).map(l => l.trim()).filter(Boolean);
|
|
211
|
+
for (const stackLine of lines) {
|
|
212
|
+
const inMatch = stackLine.match(/\s+in\s+([^\s]+):(\d+)\s*$/);
|
|
213
|
+
const parenMatch = stackLine.match(/\(([^)]+):(\d+)\)\s*$/);
|
|
214
|
+
const plainMatch = stackLine.match(/^(.+):(\d+)\s*$/);
|
|
215
|
+
let file;
|
|
216
|
+
let lineNum;
|
|
217
|
+
if (inMatch && inMatch[1] != null && inMatch[2] != null) {
|
|
218
|
+
file = inMatch[1].replace(/\\/g, '/');
|
|
219
|
+
lineNum = parseInt(inMatch[2], 10);
|
|
220
|
+
}
|
|
221
|
+
else if (parenMatch && parenMatch[1] != null && parenMatch[2] != null) {
|
|
222
|
+
file = parenMatch[1].replace(/\\/g, '/');
|
|
223
|
+
lineNum = parseInt(parenMatch[2], 10);
|
|
224
|
+
}
|
|
225
|
+
else if (plainMatch && plainMatch[1] != null && plainMatch[2] != null) {
|
|
226
|
+
file = plainMatch[1].replace(/\\/g, '/');
|
|
227
|
+
lineNum = parseInt(plainMatch[2], 10);
|
|
228
|
+
}
|
|
229
|
+
const line = lineNum !== undefined && Number.isFinite(lineNum) ? lineNum : undefined;
|
|
230
|
+
if (file != null && line != null && line > 0) {
|
|
231
|
+
const normalized = normalizeAnnotationPath(file, projectPath);
|
|
232
|
+
if (projectPath != null && normalized.absoluteFile && normalized.annotationFile) {
|
|
233
|
+
frames.push({ file: normalized.annotationFile, line, title: stackLine });
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
return frames;
|
|
238
|
+
}
|
|
79
239
|
const MIN_DESCRIPTION_COLUMN_WIDTH = 16;
|
|
80
240
|
const DEFAULT_TERMINAL_WIDTH = 120;
|
|
81
241
|
const TERMINAL_WIDTH_SAFETY_MARGIN = 2;
|
|
@@ -799,11 +959,24 @@ function TailLogFile(logPath, projectPath) {
|
|
|
799
959
|
const logPollingInterval = 250;
|
|
800
960
|
let pendingPartialLine = '';
|
|
801
961
|
const telemetry = [];
|
|
962
|
+
const testResults = [];
|
|
963
|
+
const scannedLogEntries = [];
|
|
964
|
+
const seenIssueKeys = new Set();
|
|
965
|
+
const seenAnnotationKeys = new Set();
|
|
966
|
+
let plainScanAnnotations = 0;
|
|
967
|
+
/** Dedupe stdout test table rows when Unity emits duplicate TestStatus lines (key: name + state + description). */
|
|
968
|
+
const seenTestStatusKeys = new Set();
|
|
802
969
|
const logger = logging_1.Logger.instance;
|
|
803
970
|
const actionAccumulator = new ActionTelemetryAccumulator();
|
|
804
|
-
const actionTableRenderer = new ActionTableRenderer(
|
|
971
|
+
const actionTableRenderer = new ActionTableRenderer((0, utilities_1.isStdoutTTY)());
|
|
805
972
|
const utpLogPath = buildUtpLogPath(logPath);
|
|
806
973
|
let telemetryFlushed = false;
|
|
974
|
+
const buildIssueKey = (file, lineNo, message) => {
|
|
975
|
+
const normalized = normalizeAnnotationPath(file, projectPath);
|
|
976
|
+
const canonicalFile = (normalized.absoluteFile ?? normalizePathSlashes(file ?? '')).toLowerCase();
|
|
977
|
+
const canonicalLine = lineNo ?? 0;
|
|
978
|
+
return `${canonicalFile}\u0000${canonicalLine}\u0000${message}`;
|
|
979
|
+
};
|
|
807
980
|
const renderActionTable = () => {
|
|
808
981
|
const snapshot = actionAccumulator.snapshot();
|
|
809
982
|
if (snapshot) {
|
|
@@ -816,6 +989,13 @@ function TailLogFile(logPath, projectPath) {
|
|
|
816
989
|
}
|
|
817
990
|
telemetryFlushed = true;
|
|
818
991
|
await writeUtpTelemetryLog(utpLogPath, telemetry, logger);
|
|
992
|
+
const parsed = path.parse(logPath);
|
|
993
|
+
logging_1.Logger.instance.CI_appendWorkflowSummary(parsed.name, telemetry, projectPath != null && projectPath !== '' ? { projectPath, additionalLogEntries: scannedLogEntries } : { additionalLogEntries: scannedLogEntries });
|
|
994
|
+
if (testResults.length > 0) {
|
|
995
|
+
const limit = logger.getMarkdownByteLimit('stdout');
|
|
996
|
+
const summary = (0, logging_1.buildUnitTestJobSummaryMarkdown)(testResults, limit, '\n');
|
|
997
|
+
process.stdout.write(summary);
|
|
998
|
+
}
|
|
819
999
|
};
|
|
820
1000
|
const writeStdoutThenTableContent = (content, restoreTable = true) => {
|
|
821
1001
|
actionTableRenderer.prepareForContent();
|
|
@@ -838,8 +1018,36 @@ function TailLogFile(logPath, projectPath) {
|
|
|
838
1018
|
return;
|
|
839
1019
|
}
|
|
840
1020
|
const utpJson = JSON.parse(sanitizedJson);
|
|
841
|
-
const utp = (0, utp_1.normalizeTelemetryEntry)(utpJson);
|
|
1021
|
+
const { utp, unknownTopLevelKeys } = (0, utp_1.normalizeTelemetryEntry)(utpJson);
|
|
1022
|
+
if (unknownTopLevelKeys.length > 0) {
|
|
1023
|
+
logger.warn(formatUtpUnrecognizedTopLevelPropertiesMessage(unknownTopLevelKeys, line));
|
|
1024
|
+
}
|
|
842
1025
|
telemetry.push(utp);
|
|
1026
|
+
const utpMsg = (utp.message ?? '').trim();
|
|
1027
|
+
if ((utp.type === 'LogEntry' || utp.type === 'Compiler') && utpMsg !== '') {
|
|
1028
|
+
seenIssueKeys.add(buildIssueKey(utp.file, utp.line, utpMsg));
|
|
1029
|
+
}
|
|
1030
|
+
if (utp.type === 'TestStatus') {
|
|
1031
|
+
const ts = utp;
|
|
1032
|
+
const dedupeKey = `${ts.name ?? ''}\u0000${ts.state ?? ''}\u0000${ts.description ?? ''}`;
|
|
1033
|
+
if (!seenTestStatusKeys.has(dedupeKey)) {
|
|
1034
|
+
seenTestStatusKeys.add(dedupeKey);
|
|
1035
|
+
const result = (0, logging_1.utpToTestResultSummary)(utp);
|
|
1036
|
+
testResults.push(result);
|
|
1037
|
+
}
|
|
1038
|
+
if ((ts.state === 2 || ts.state === 0) && ts.message && !annotationCommandPrefixRegex.test(ts.message)) {
|
|
1039
|
+
const normalizedPath = normalizeAnnotationPath(utp.file, projectPath);
|
|
1040
|
+
const lineNumber = utp.line;
|
|
1041
|
+
const title = (ts.name ?? ts.description ?? 'Test failure').trim();
|
|
1042
|
+
if (normalizedPath.annotationFile && lineNumber) {
|
|
1043
|
+
const key = buildIssueKey(normalizedPath.annotationFile, lineNumber, ts.message);
|
|
1044
|
+
if (!seenAnnotationKeys.has(key)) {
|
|
1045
|
+
seenAnnotationKeys.add(key);
|
|
1046
|
+
logger.annotate(ts.state === 2 ? logging_1.LogLevel.ERROR : logging_1.LogLevel.WARN, ts.message, normalizedPath.annotationFile, lineNumber, undefined, undefined, undefined, title);
|
|
1047
|
+
}
|
|
1048
|
+
}
|
|
1049
|
+
}
|
|
1050
|
+
}
|
|
843
1051
|
if (utp.message && 'severity' in utp &&
|
|
844
1052
|
(utp.severity === utp_1.Severity.Error || utp.severity === utp_1.Severity.Exception || utp.severity === utp_1.Severity.Assert)) {
|
|
845
1053
|
let messageLevel = logging_1.LogLevel.ERROR;
|
|
@@ -847,13 +1055,21 @@ function TailLogFile(logPath, projectPath) {
|
|
|
847
1055
|
if (remappedLevel !== undefined) {
|
|
848
1056
|
messageLevel = remappedLevel;
|
|
849
1057
|
}
|
|
850
|
-
const
|
|
1058
|
+
const normalizedPath = normalizeAnnotationPath(utp.file, projectPath);
|
|
851
1059
|
const stacktrace = sanitizeStackTrace(utp.stackTrace);
|
|
852
1060
|
const message = stacktrace == undefined ? utp.message : `${utp.message}\n${stacktrace}`;
|
|
853
|
-
if (!
|
|
1061
|
+
if (!annotationCommandPrefixRegex.test(message)) {
|
|
854
1062
|
// only annotate if the file is within the current project
|
|
855
|
-
if (
|
|
856
|
-
logger.annotate(logging_1.LogLevel.ERROR, message,
|
|
1063
|
+
if (normalizedPath.annotationFile) {
|
|
1064
|
+
logger.annotate(logging_1.LogLevel.ERROR, message, normalizedPath.annotationFile, utp.line);
|
|
1065
|
+
// Link stack trace to annotations: emit one annotation per frame (capped) for clickable stack in Checks
|
|
1066
|
+
if (stacktrace && projectPath) {
|
|
1067
|
+
const frames = parseStackFrames(stacktrace, projectPath);
|
|
1068
|
+
const toEmit = frames.slice(0, MAX_STACK_FRAME_ANNOTATIONS);
|
|
1069
|
+
for (const frame of toEmit) {
|
|
1070
|
+
logger.annotate(logging_1.LogLevel.ERROR, frame.title, frame.file, frame.line, undefined, undefined, undefined, 'Stack frame');
|
|
1071
|
+
}
|
|
1072
|
+
}
|
|
857
1073
|
}
|
|
858
1074
|
else {
|
|
859
1075
|
switch (messageLevel) {
|
|
@@ -880,6 +1096,31 @@ function TailLogFile(logPath, projectPath) {
|
|
|
880
1096
|
}
|
|
881
1097
|
}
|
|
882
1098
|
else {
|
|
1099
|
+
const scan = parsePlainLogIssue(line);
|
|
1100
|
+
if (scan) {
|
|
1101
|
+
const key = buildIssueKey(scan.file, scan.line, scan.message);
|
|
1102
|
+
if (!seenIssueKeys.has(key)) {
|
|
1103
|
+
seenIssueKeys.add(key);
|
|
1104
|
+
scannedLogEntries.push({
|
|
1105
|
+
type: 'Compiler',
|
|
1106
|
+
severity: scan.severity,
|
|
1107
|
+
message: scan.message,
|
|
1108
|
+
file: scan.file,
|
|
1109
|
+
line: scan.line,
|
|
1110
|
+
});
|
|
1111
|
+
}
|
|
1112
|
+
if (!annotationCommandPrefixRegex.test(scan.message) && plainScanAnnotations < MAX_PLAIN_SCAN_ANNOTATIONS) {
|
|
1113
|
+
const normalizedPath = normalizeAnnotationPath(scan.file, projectPath);
|
|
1114
|
+
const annotationKey = buildIssueKey(normalizedPath.annotationFile ?? scan.file, scan.line, scan.message);
|
|
1115
|
+
if (!seenAnnotationKeys.has(annotationKey)) {
|
|
1116
|
+
if (normalizedPath.annotationFile && scan.line) {
|
|
1117
|
+
seenAnnotationKeys.add(annotationKey);
|
|
1118
|
+
plainScanAnnotations++;
|
|
1119
|
+
logger.annotate(scan.severity === utp_1.Severity.Warning ? logging_1.LogLevel.WARN : logging_1.LogLevel.ERROR, scan.message, normalizedPath.annotationFile, scan.line);
|
|
1120
|
+
}
|
|
1121
|
+
}
|
|
1122
|
+
}
|
|
1123
|
+
}
|
|
883
1124
|
if (logging_1.Logger.instance.logLevel !== logging_1.LogLevel.UTP) {
|
|
884
1125
|
process.stdout.write(`${line}\n`);
|
|
885
1126
|
}
|
|
@@ -897,6 +1138,7 @@ function TailLogFile(logPath, projectPath) {
|
|
|
897
1138
|
break;
|
|
898
1139
|
}
|
|
899
1140
|
case 'MemoryLeaks':
|
|
1141
|
+
case 'MemoryLeak':
|
|
900
1142
|
logger.debug(formatMemoryLeakTable(utp));
|
|
901
1143
|
break;
|
|
902
1144
|
case 'PlayerBuildInfo': {
|
|
@@ -907,11 +1149,16 @@ function TailLogFile(logPath, projectPath) {
|
|
|
907
1149
|
}
|
|
908
1150
|
break;
|
|
909
1151
|
}
|
|
910
|
-
default:
|
|
1152
|
+
default: {
|
|
1153
|
+
const desc = describeUtpForUtpLogLevel(utp);
|
|
1154
|
+
if (desc !== undefined) {
|
|
1155
|
+
logger.debug(desc);
|
|
1156
|
+
break;
|
|
1157
|
+
}
|
|
911
1158
|
logger.warn(`UTP entry has unknown type: ${utp.type ?? 'undefined'}`);
|
|
912
|
-
// Print raw JSON for unhandled UTP types
|
|
913
1159
|
writeStdoutThenTableContent(`${JSON.stringify(utp)}\n`);
|
|
914
1160
|
break;
|
|
1161
|
+
}
|
|
915
1162
|
}
|
|
916
1163
|
}
|
|
917
1164
|
async function readNewLogContent() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unity-logging.js","sourceRoot":"","sources":["../src/unity-logging.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyEA,sDASC;AA4QD,gDAWC;AAiKD,8DAkIC;AA4SD,kCA0NC;AAlpCD,uCAAyB;AACzB,2CAA6B;AAC7B,uCAA6C;AAC7C,2CAA6D;AAC7D,mCAQmB;AAcnB,uEAAuE;AACvE,MAAM,2BAA2B,GAAG,eAAe,CAAC;AACpD,2DAA2D;AAC3D,MAAM,uBAAuB,GAAG,0CAA0C,CAAC;AAyC3E,MAAM,gBAAgB,GAAG,yBAAyB,CAAC;AACnD,MAAM,yBAAyB,GAAG,sBAAsB,CAAC;AAEzD,SAAgB,qBAAqB,CAAC,GAAuB;IACzD,IAAI,CAAC,GAAG,EAAE,CAAC;QAAC,OAAO,SAAS,CAAC;IAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,GAAG;SAChB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;SACpC,IAAI,EAAE,CAAC;IACZ,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;QAAC,OAAO,SAAS,CAAC;IAAC,CAAC;IAC3C,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAuB;IAC/C,IAAI,CAAC,GAAG,EAAE,CAAC;QAAC,OAAO,SAAS,CAAC;IAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,GAAG;SAChB,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC;SACxC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;SACpC,IAAI,EAAE,CAAC;IACZ,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;QAAC,OAAO,SAAS,CAAC;IAAC,CAAC;IAC3C,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,MAAM,4BAA4B,GAAG,EAAE,CAAC;AACxC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AACnC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AACvC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,MAAM,yBAAyB,GAAG,4BAA4B,CAAC;AAE/D,MAAM,0BAA0B;IACpB,cAAc,GAAG,IAAI,GAAG,EAAmB,CAAC;IAC5C,gBAAgB,GAA6B,EAAE,CAAC;IAChD,eAAe,GAAG,CAAC,CAAC;IACpB,eAAe,GAAG,CAAC,CAAC;IACpB,oBAAoB,GAAiC,EAAE,CAAC;IAEzD,MAAM,CAAC,MAAe;QACzB,IAAI,MAAM,CAAC,KAAK,KAAK,WAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,KAAK,WAAK,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACtC,IAAI,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,KAAK,EAAE,CAAC;gBACR,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACJ,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBAClD,IAAI,QAAQ,EAAE,CAAC;oBACX,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC;oBACxB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC7C,CAAC;YACL,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,OAAO,GAA2B;gBACpC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,gBAAgB;gBACrC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;gBACrC,UAAU;gBACV,MAAM;aACT,CAAC;YAEF,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEpC,IAAI,CAAC,eAAe,IAAI,UAAU,CAAC;YACnC,IAAI,CAAC,eAAe,IAAI,MAAM,CAAC,MAAM,CAAC;YACtC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,qBAAqB,CAAC,IAAwB;QACjD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,eAAe,GAAiC,IAAI,CAAC,KAAK;aAC3D,GAAG,CAAC,IAAI,CAAC,EAAE;YACR,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,OAAO,SAAS,CAAC;YACrB,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YACjD,OAAO;gBACH,WAAW;gBACX,UAAU;gBACV,UAAU;aACb,CAAC;QACN,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,IAAI,EAAsC,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAE9E,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,CAAC,oBAAoB,GAAG,eAAe,CAAC;QAC5C,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,QAAQ;QACX,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjH,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,OAAO;YACH,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC;YACrC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC7D,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,gBAAgB;gBACrC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;aACxC,CAAC,CAAC;YACH,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,eAAe,EAAE,IAAI,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC;gBACjD,CAAC,CAAC;oBACE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC;oBACrC,eAAe,EAAE,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;oBAC1F,eAAe,EAAE,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;iBAC7F;gBACD,CAAC,CAAC,SAAS;SAClB,CAAC;IACN,CAAC;IAEO,YAAY,CAAC,MAAe;QAChC,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;QACrC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;QAC7C,OAAO,GAAG,GAAG,KAAK,IAAI,KAAK,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,mBAAmB,CAAC,MAAe;QACvC,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC;YACzD,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC;YAC/E,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAC9D,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC5B,SAAS;YACb,CAAC;YAED,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;YACrD,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;YACnD,IAAI,CAAC,kBAAkB,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC5C,SAAS;YACb,CAAC;YAED,IAAI,iBAAiB,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,kBAAkB,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACvG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;YACpC,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAEO,mBAAmB,CAAC,KAA0B,EAAE,GAAY;QAChE,IAAI,KAAK,EAAE,IAAI,IAAI,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,CAAC,CAAC;IACb,CAAC;IAEO,aAAa,CAAC,MAAe;QACjC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9D,OAAO,EAAE,CAAC;QACd,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACrD,CAAC;CACJ;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC1C,IAAI,GAAG,GAAG,EAAE,CAAC;IAEb,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QACzB,GAAG,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpG,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACnC,GAAG,GAAG,KAAK,CAAC;IAChB,CAAC;SAAM,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC/C,GAAG,GAAG,EAAE,CAAC;IACb,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACnC,IAAI,CAAC;YACD,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACL,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,cAAc,CAAC,EAAU;IAC9B,IAAI,EAAE,IAAI,UAAU,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,EAAE,GAAG,UAAU,CAAC;QAC7B,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD,CAAC;IAED,IAAI,EAAE,IAAI,SAAS,EAAE,CAAC;QAClB,MAAM,KAAK,GAAG,EAAE,GAAG,SAAS,CAAC;QAC7B,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrD,CAAC;IAED,IAAI,EAAE,IAAI,MAAM,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,EAAE,GAAG,MAAM,CAAC;QAC5B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,CAAC;IAED,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,CAAC;QAC3B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,CAAC;IAED,OAAO,GAAG,EAAE,KAAK,CAAC;AACtB,CAAC;AAED,SAAS,eAAe,CAAC,KAAa,EAAE,QAAgB;IACpD,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QAChB,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAI,kBAAkB,CAAC,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QAChB,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACxC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC1B,SAAS;YACb,CAAC;YAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;YAC9C,IAAI,KAAK,GAAG,SAAS,GAAG,QAAQ,EAAE,CAAC;gBAC/B,MAAM;YACV,CAAC;YACD,KAAK,IAAI,SAAS,CAAC;YACnB,MAAM,IAAI,MAAM,CAAC;YACjB,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;gBACpB,MAAM;YACV,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC;IACvB,MAAM,aAAa,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC,CAAC;IAC1D,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1B,SAAS;QACb,CAAC;QAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,KAAK,GAAG,SAAS,GAAG,WAAW,EAAE,CAAC;YAClC,MAAM;QACV,CAAC;QACD,KAAK,IAAI,SAAS,CAAC;QACnB,MAAM,IAAI,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,OAAO,GAAG,MAAM,GAAG,QAAQ,EAAE,CAAC;AAClC,CAAC;AAED,SAAgB,kBAAkB,CAAC,KAAa;IAC5C,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1B,SAAS;QACb,CAAC;QAED,KAAK,IAAI,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,gBAAgB,CAAC,SAAiB;IACvC,IAAI,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,CAAC;IACb,CAAC;IAED,IAAI,mBAAmB,CAAC,SAAS,CAAC,IAAI,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QACpE,OAAO,CAAC,CAAC;IACb,CAAC;IAED,OAAO,CAAC,CAAC;AACb,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAiB;IAC3C,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,CAAC,4CAA4C;IAC7D,CAAC;IAED,IAAI,SAAS,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC;QAC5D,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,IAAI,SAAS,IAAI,OAAO,CAAC,EAAE,CAAC;QACjG,OAAO,IAAI,CAAC,CAAC,sBAAsB;IACvC,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CAAC,SAAiB;IAC1C,mFAAmF;IACnF,OAAO,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,eAAe,CAAC,SAAiB;IACtC,MAAM,MAAM,GAA4B;QACpC,CAAC,MAAM,EAAE,MAAM,CAAC;QAChB,CAAC,MAAM,EAAE,MAAM,CAAC;QAChB,CAAC,MAAM,EAAE,MAAM,CAAC;QAChB,CAAC,MAAM,EAAE,MAAM,CAAC;QAChB,CAAC,MAAM,EAAE,MAAM,CAAC;QAChB,CAAC,MAAM,EAAE,MAAM,CAAC;QAChB,CAAC,MAAM,EAAE,MAAM,CAAC;QAChB,CAAC,MAAM,EAAE,MAAM,CAAC;KACnB,CAAC;IAEF,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,SAAS,IAAI,KAAK,IAAI,SAAS,IAAI,GAAG,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAiB;IAC3C,OAAO,SAAS,IAAI,MAAM,IAAI,CAC1B,SAAS,IAAI,MAAM;QACnB,SAAS,KAAK,MAAM;QACpB,SAAS,KAAK,MAAM;QACpB,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,MAAM,IAAI,SAAS,KAAK,MAAM,CAAC;QACpE,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,SAAS,IAAI,OAAO,IAAI,SAAS,IAAI,OAAO,CAAC;QAC9C,CAAC,SAAS,IAAI,OAAO,IAAI,SAAS,IAAI,OAAO,CAAC;QAC9C,CAAC,SAAS,IAAI,OAAO,IAAI,SAAS,IAAI,OAAO,CAAC,CACjD,CAAC;AACN,CAAC;AAED,SAAS,UAAU,CAAC,KAAa,EAAE,KAAa,EAAE,YAAyC,MAAM;IAC7F,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACb,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,UAAU,GAAG,KAAK,EAAE,CAAC;QACrB,IAAI,GAAG,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,GAAG,UAAU,CAAC;IACnC,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC;IAC3C,CAAC;IAED,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;QACrC,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC;IACrE,CAAC;IAED,OAAO,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;AAC3C,CAAC;AAED,SAAS,mBAAmB,CAAC,WAAmB;IAC5C,OAAO,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,iBAAiB,CAAC,YAAuC;IAC9D,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QAC/B,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,GAAG,GAAG,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,4BAA4B,CAAC,YAAuC,EAAE,sBAA8B,EAAE,sBAA8B,EAAE,QAAiB;IAC5J,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QACxE,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,UAAU,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IACnD,MAAM,YAAY,GAAG,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAE9D,IAAI,qBAAqB,GAAG,CAAC,CAAC;IAC9B,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAClC,IAAI,KAAK,KAAK,sBAAsB,EAAE,CAAC;YACnC,OAAO;QACX,CAAC;QACD,qBAAqB,IAAI,KAAK,IAAI,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,sBAAsB,EAAE,4BAA4B,CAAC,CAAC;IAC3F,MAAM,uBAAuB,GAAG,YAAY,CAAC,sBAAsB,CAAC,IAAI,mBAAmB,CAAC;IAC5F,MAAM,4BAA4B,GAAG,WAAW,GAAG,YAAY,GAAG,qBAAqB,CAAC;IAExF,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;QAC5B,YAAY,CAAC,sBAAsB,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,uBAAuB,EAAE,4BAA4B,CAAC,CAAC;QACvG,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,IAAI,4BAA4B,IAAI,mBAAmB,EAAE,CAAC;QACtD,YAAY,CAAC,sBAAsB,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,GAAG,CAAC,uBAAuB,EAAE,4BAA4B,CAAC,CAAC,CAAC;QACtI,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,YAAY,CAAC,sBAAsB,CAAC,GAAG,mBAAmB,CAAC;IAC3D,OAAO,YAAY,CAAC;AACxB,CAAC;AAED,SAAS,eAAe,CAAC,YAAsB,EAAE,IAAY,EAAE,MAAc,EAAE,KAAa;IACxF,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAClC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACnC,MAAM,IAAI,KAAK,KAAK,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,SAAgB,yBAAyB,CAAC,QAA6B,EAAE,OAA+B;IACpG,MAAM,gBAAgB,GAAG,QAAQ,CAAC,eAAe,GAAG,CAAC,CAAC;IAStD,MAAM,SAAS,GAAe,EAAE,CAAC;IAEjC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC9B,MAAM,GAAG,GAAa;YAClB,MAAM,EAAE,GAAG;YACX,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;YACrC,YAAY,EAAE,KAAK;SACtB,CAAC;QACF,IAAI,gBAAgB,EAAE,CAAC;YACnB,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAChC,MAAM,GAAG,GAAa;YAClB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;YAC5C,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;YACrC,YAAY,EAAE,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC;SAClD,CAAC;QACF,IAAI,gBAAgB,EAAE,CAAC;YACnB,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrD,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACnE,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,SAAS,GAAa;QACxB,MAAM,EAAE,GAAG;QACX,WAAW,EAAE,uBAAuB;QACpC,YAAY,EAAE,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC;KACzD,CAAC;IACF,IAAI,gBAAgB,EAAE,CAAC;QACnB,SAAS,CAAC,UAAU,GAAG,QAAQ,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;IAC/D,CAAC;IAED,MAAM,YAAY,GAAG,QAAQ,CAAC;IAC9B,MAAM,iBAAiB,GAAG,aAAa,CAAC;IACxC,MAAM,cAAc,GAAG,UAAU,CAAC;IAClC,MAAM,YAAY,GAAG,aAAa,CAAC;IAEnC,IAAI,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5J,IAAI,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IAChL,IAAI,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,cAAc,CAAC,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;IAC5K,IAAI,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvM,IAAI,OAAO,GAA8B,gBAAgB;QACrD,CAAC,CAAC,CAAC,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,WAAW,CAAC;QAC7D,CAAC,CAAC,CAAC,WAAW,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;IAErD,OAAO,GAAG,4BAA4B,CAAC,OAAO,EAAE,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7G,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC;IACxC,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC;IAClD,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC;IAC5C,IAAI,gBAAgB,EAAE,CAAC;QACnB,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC;IAC5C,CAAC;IAED,MAAM,eAAe,GAAG,gBAAgB;QACpC,CAAC,CAAC,CAAC,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,WAAW,CAAC;QAC7D,CAAC,CAAC,CAAC,WAAW,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;IAErD,MAAM,SAAS,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAEtF,MAAM,SAAS,GAAG,CAAC,GAAa,EAAU,EAAE;QACxC,IAAI,IAAI,GAAG,KAAK,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,gBAAgB,CAAC,MAAM,UAAU,CAAC,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC;QACvJ,IAAI,gBAAgB,EAAE,CAAC;YACnB,IAAI,IAAI,IAAI,UAAU,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,eAAe,CAAC,eAAe,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,gBAAgB;QAC9B,CAAC,CAAC,KAAK,SAAS,CAAC,YAAY,CAAC,MAAM,UAAU,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,MAAM,UAAU,CAAC,cAAc,EAAE,aAAa,EAAE,OAAO,CAAC,MAAM,UAAU,CAAC,YAAY,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI;QACnM,CAAC,CAAC,KAAK,SAAS,CAAC,YAAY,CAAC,MAAM,UAAU,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,MAAM,UAAU,CAAC,cAAc,EAAE,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC;IACpJ,MAAM,aAAa,GAAG,eAAe,CAAC,eAAe,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACtE,MAAM,aAAa,GAAG,eAAe,CAAC,eAAe,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACtE,MAAM,YAAY,GAAG,eAAe,CAAC,eAAe,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAErE,IAAI,MAAM,GAAG,GAAG,gBAAgB,IAAI,CAAC;IACrC,MAAM,IAAI,GAAG,SAAS,IAAI,CAAC;IAC3B,MAAM,IAAI,GAAG,SAAS,IAAI,CAAC;IAC3B,MAAM,IAAI,GAAG,aAAa,IAAI,CAAC;IAE/B,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACpB,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,aAAa,IAAI,CAAC;IAC/B,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC;IACtC,MAAM,IAAI,GAAG,YAAY,IAAI,CAAC;IAE9B,MAAM,sBAAsB,GAAG,OAAO,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;IAE5G,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;QAC3B,MAAM,sBAAsB,GAAG,0BAA0B,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAC;QAC5G,IAAI,sBAAsB,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,sBAAsB,EAAE,CAAC;QAC5C,CAAC;IACL,CAAC;IAED,IAAI,gBAAgB,IAAI,QAAQ,CAAC,eAAe,GAAG,CAAC,EAAE,CAAC;QACnD,MAAM,YAAY,GAAG,yBAAyB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACnE,IAAI,YAAY,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,YAAY,IAAI,CAAC;QACpC,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,IAAI,CAAC;QACnB,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,MAAM,IAAI,IAAI,CAAC;IACnB,CAAC;IAED,OAAO;QACH,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC;KAChC,CAAC;AACN,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC7B,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,CAAC,CAAC;IACb,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC;IAC/D,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,0BAA0B,CAAC,UAAmC,EAAE,OAA+B;IACpG,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,OAAO,SAAS,CAAC;IACrB,CAAC;IAQD,MAAM,IAAI,GAAmB,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvD,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,YAAY,EAAE,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC;QAC7C,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;KACzC,CAAC,CAAC,CAAC;IAEJ,MAAM,SAAS,GAAiB;QAC5B,WAAW,EAAE,8BAA8B;QAC3C,YAAY,EAAE,cAAc,CAAC,UAAU,CAAC,eAAe,CAAC;QACxD,UAAU,EAAE,UAAU,CAAC,eAAe,CAAC,QAAQ,EAAE;KACpD,CAAC;IAEF,MAAM,iBAAiB,GAAG,aAAa,CAAC;IACxC,MAAM,cAAc,GAAG,UAAU,CAAC;IAClC,MAAM,YAAY,GAAG,aAAa,CAAC;IAEnC,IAAI,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IAC3K,IAAI,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,cAAc,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;IACvK,IAAI,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;IAE9J,IAAI,OAAO,GAA8B,CAAC,gBAAgB,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;IACvF,OAAO,GAAG,4BAA4B,CAAC,OAAO,EAAE,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7G,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC;IAClD,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC;IAC5C,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;IAEtC,MAAM,cAAc,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IAEtF,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAChG,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACpG,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACpG,MAAM,YAAY,GAAG,eAAe,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAEnG,IAAI,MAAM,GAAG,GAAG,yBAAyB,IAAI,CAAC;IAC9C,MAAM,IAAI,GAAG,SAAS,IAAI,CAAC;IAC3B,MAAM,IAAI,KAAK,cAAc,CAAC,iBAAiB,CAAC,MAAM,UAAU,CAAC,cAAc,EAAE,aAAa,EAAE,OAAO,CAAC,MAAM,UAAU,CAAC,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC;IAClK,MAAM,IAAI,GAAG,aAAa,IAAI,CAAC;IAE/B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACf,MAAM,IAAI,KAAK,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,UAAU,CAAC,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,OAAO,CAAC,MAAM,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC;IACxK,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,aAAa,IAAI,CAAC;IAC/B,MAAM,IAAI,KAAK,cAAc,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC,YAAY,EAAE,aAAa,EAAE,OAAO,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC;IACtL,MAAM,IAAI,GAAG,YAAY,IAAI,CAAC;IAE9B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,IAAI,CAAC;IACnB,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,SAAS,yBAAyB,CAAC,OAAiC;IAChE,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC7E,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,KAAK,GAAa,CAAC,eAAe,CAAC,CAAC;IAE1C,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC/B,MAAM,UAAU,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;YAC3E,CAAC,CAAC,MAAM,CAAC,WAAW;YACpB,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;QAEtF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEvB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC9B,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC;YAC9E,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,GAAG,QAAQ,CAAC;YACtC,KAAK,CAAC,IAAI,CAAC,OAAO,SAAS,EAAE,CAAC,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;gBACnB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACJ,KAAK,CAAC,IAAI,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC;gBACjC,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;AACtC,CAAC;AAED,MAAa,mBAAmB;IAIC;IAHrB,mBAAmB,GAAG,CAAC,CAAC;IACxB,YAAY,GAAG,KAAK,CAAC;IAE7B,YAA6B,iBAA0B;QAA1B,sBAAiB,GAAjB,iBAAiB,CAAS;IAAI,CAAC;IAE5D,iBAAiB;QACb,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC1B,OAAO;QACX,CAAC;QACD,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,QAAyC;QAC5C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,OAAO;QACX,CAAC;QAED,MAAM,SAAS,GAAG,yBAAyB,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAExF,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,OAAO;QACX,CAAC;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC,SAAS,CAAC;QACnD,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;IACL,CAAC;IAEO,mBAAmB;QACvB,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,mBAAmB,IAAI,CAAC,EAAE,CAAC;YACtD,OAAO;QACX,CAAC;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;IACjC,CAAC;IAEO,cAAc;QAClB,kGAAkG;QAClG,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAC7C,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;YACnB,OAAO;QACX,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,WAAW,GAAG,CAAC,CAAC;IACnD,CAAC;IAEO,WAAW;QACf,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACjD,MAAM,aAAa,GAAG,aAAa,GAAG,4BAA4B,CAAC;QACnE,OAAO,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;IACvD,CAAC;IAEO,mBAAmB;QACvB,MAAM,aAAa,GAAG,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QACtG,IAAI,aAAa,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YACrC,OAAO,aAAa,CAAC;QACzB,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YAChD,OAAO,UAAU,CAAC;QACtB,CAAC;QAED,OAAO,sBAAsB,CAAC;IAClC,CAAC;CAEJ;AA5ED,kDA4EC;AAED,SAAS,SAAS,CAAC,KAAc;IAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;AACrD,CAAC;AAED,SAAS,2BAA2B,CAAC,YAA2C;IAC5E,IAAI,CAAC,YAAY,EAAE,CAAC;QAAC,OAAO,EAAE,CAAC;IAAC,CAAC;IAEjC,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAuB,EAAE,CAAC;QACvC,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACrC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvD,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;gBACtC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;oBAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;gBACxC,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;SAC9B,GAAG,CAA+B,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE;QAClD,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QACtC,OAAO,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC1E,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,KAAK,EAA6B,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAuB;IAClD,MAAM,IAAI,GAAG,2BAA2B,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,QAAQ,CAAC,eAAe,IAAI,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,OAAO,CAAC;IAC5B,MAAM,UAAU,GAAG,MAAM,CAAC;IAC1B,MAAM,UAAU,GAAG,OAAO,CAAC;IAC3B,MAAM,eAAe,GAAG,QAAQ,CAAC;IACjC,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;IAE3C,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC;IAClH,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvG,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAClF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAElF,MAAM,OAAO,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC1D,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9D,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAE7D,IAAI,MAAM,GAAG,0BAA0B,CAAC;IACxC,MAAM,IAAI,GAAG,SAAS,IAAI,CAAC;IAC3B,MAAM,IAAI,KAAK,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC;IACxF,MAAM,IAAI,GAAG,aAAa,IAAI,CAAC;IAE/B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC;IACxF,CAAC;SAAM,CAAC;QACJ,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC;QAC3F,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAAG,aAAa,IAAI,CAAC;IAC/B,MAAM,IAAI,KAAK,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC;IAC1F,MAAM,IAAI,GAAG,YAAY,IAAI,CAAC;IAE9B,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,SAAS,eAAe,CAAC,OAAe;IACpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,WAAW,GAAG,GAAG,MAAM,CAAC,IAAI,eAAe,CAAC;IAClD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;AACzE,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,QAAgB,EAAE,OAAc,EAAE,MAAc;IAChF,IAAI,CAAC;QACD,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,sCAAsC,QAAQ,MAAM,KAAK,EAAE,CAAC,CAAC;IAC7E,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,kBAAkB,GAA6B;IACjD,mDAAmD,EAAE,kBAAQ,CAAC,IAAI;IAClE,6EAA6E,EAAE,kBAAQ,CAAC,IAAI;IAC5F,0GAA0G,EAAE,kBAAQ,CAAC,IAAI;CAC5H,CAAC;AAEF,SAAS,yBAAyB,CAAC,OAAe;IAC9C,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACjE,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,OAAe,EAAE,WAA+B;IACxE,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,MAAM,kBAAkB,GAAG,GAAG,CAAC;IAC/B,IAAI,kBAAkB,GAAG,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAU,EAAE,CAAC;IAC5B,MAAM,MAAM,GAAG,gBAAM,CAAC,QAAQ,CAAC;IAC/B,MAAM,iBAAiB,GAAG,IAAI,0BAA0B,EAAE,CAAC;IAC3D,MAAM,mBAAmB,GAAG,IAAI,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;IAChH,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAE7B,MAAM,iBAAiB,GAAG,GAAS,EAAE;QACjC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,EAAE,CAAC;QAC9C,IAAI,QAAQ,EAAE,CAAC;YACX,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACzC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,KAAK,IAAmB,EAAE;QAChD,IAAI,gBAAgB,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QACjC,gBAAgB,GAAG,IAAI,CAAC;QACxB,MAAM,oBAAoB,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,CAAC,OAAe,EAAE,eAAwB,IAAI,EAAQ,EAAE;QACxF,mBAAmB,CAAC,iBAAiB,EAAE,CAAC;QACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,YAAY,EAAE,CAAC;YACf,iBAAiB,EAAE,CAAC;QACxB,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,OAAe,EAAQ,EAAE;QAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QAEtB,sCAAsC;QACtC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YACxD,IAAI,CAAC;gBACD,MAAM,aAAa,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;gBACtD,IAAI,CAAC,aAAa,EAAE,CAAC;oBAAC,OAAO;gBAAC,CAAC;gBAE/B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBAC1C,MAAM,GAAG,GAAG,IAAA,6BAAuB,EAAC,OAAO,CAAC,CAAC;gBAC7C,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAEpB,IAAI,GAAG,CAAC,OAAO,IAAI,UAAU,IAAI,GAAG;oBAChC,CAAC,GAAG,CAAC,QAAQ,KAAK,cAAQ,CAAC,KAAK,IAAI,GAAG,CAAC,QAAQ,KAAK,cAAQ,CAAC,SAAS,IAAI,GAAG,CAAC,QAAQ,KAAK,cAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC/G,IAAI,YAAY,GAAa,kBAAQ,CAAC,KAAK,CAAC;oBAE5C,MAAM,aAAa,GAAG,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAC7D,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;wBAC9B,YAAY,GAAG,aAAa,CAAC;oBACjC,CAAC;oBAED,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBACjE,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBACtD,MAAM,OAAO,GAAG,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBAExF,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC7C,0DAA0D;wBAC1D,IAAI,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;4BACtD,MAAM,CAAC,QAAQ,CAAC,kBAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;wBAC7D,CAAC;6BAAM,CAAC;4BACJ,QAAQ,YAAY,EAAE,CAAC;gCACnB,KAAK,kBAAQ,CAAC,IAAI;oCACd,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oCACrB,MAAM;gCACV,KAAK,kBAAQ,CAAC,KAAK;oCACf,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oCACtB,MAAM;gCACV,KAAK,kBAAQ,CAAC,IAAI,CAAC;gCACnB;oCACI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oCACrB,MAAM;4BACd,CAAC;wBACL,CAAC;oBACL,CAAC;gBACL,CAAC;qBAAM,IAAI,gBAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,kBAAQ,CAAC,GAAG,EAAE,CAAC;oBACnD,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAClB,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,mCAAmC,KAAK,YAAY,QAAQ,EAAE,CAAC,CAAC;YAChF,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,IAAI,gBAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,kBAAQ,CAAC,GAAG,EAAE,CAAC;gBAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;YACtC,CAAC;QACL,CAAC;IACL,CAAC,CAAC;IAEF,SAAS,QAAQ,CAAC,GAAQ;QACtB,2GAA2G;QAC3G,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACf,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACZ,MAAM,WAAW,GAAG,GAAc,CAAC;gBACnC,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAE3D,IAAI,YAAY,EAAE,CAAC;oBACf,iBAAiB,EAAE,CAAC;gBACxB,CAAC;gBAED,MAAM;YACV,CAAC;YACD,KAAK,aAAa;gBACd,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,GAAoB,CAAC,CAAC,CAAC;gBAC1D,MAAM;YACV,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACrB,MAAM,SAAS,GAAG,GAAyB,CAAC;gBAC5C,MAAM,OAAO,GAAG,iBAAiB,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;gBAEnE,IAAI,OAAO,EAAE,CAAC;oBACV,iBAAiB,EAAE,CAAC;gBACxB,CAAC;gBAED,MAAM;YACV,CAAC;YACD;gBACI,MAAM,CAAC,IAAI,CAAC,+BAA+B,GAAG,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC;gBACtE,yCAAyC;gBACzC,2BAA2B,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACxD,MAAM;QACd,CAAC;IACL,CAAC;IAED,KAAK,UAAU,iBAAiB;QAC5B,IAAI,CAAC;YACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAAC,OAAO;YAAC,CAAC;YACxC,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9C,IAAI,KAAK,CAAC,IAAI,GAAG,QAAQ,EAAE,CAAC;gBAAC,QAAQ,GAAG,CAAC,CAAC;YAAC,CAAC;YAE5C,IAAI,KAAK,CAAC,IAAI,GAAG,QAAQ,EAAE,CAAC;gBACxB,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBACzC,IAAI,EAAsC,CAAC;gBAE3C,IAAI,CAAC;oBACD,EAAE,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;oBAC5D,MAAM,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;gBACpD,CAAC;wBAAS,CAAC;oBACP,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC;gBACtB,CAAC;gBAED,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;gBAEtB,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;oBAClB,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBAEtC,qEAAqE;oBACrE,IAAI,CAAC;wBACD,MAAM,QAAQ,GAAG,kBAAkB,GAAG,KAAK,CAAC;wBAC5C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;wBACtC,MAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAEtE,IAAI,CAAC,gBAAgB,EAAE,CAAC;4BACpB,kBAAkB,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;wBAC3C,CAAC;6BAAM,CAAC;4BACJ,kBAAkB,GAAG,EAAE,CAAC;wBAC5B,CAAC;wBAED,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;4BAC1B,cAAc,CAAC,OAAO,CAAC,CAAC;wBAC5B,CAAC;oBACL,CAAC;oBAAC,OAAO,KAAU,EAAE,CAAC;wBAClB,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;4BACzB,MAAM,KAAK,CAAC;wBAChB,CAAC;wBACD,MAAM,CAAC,IAAI,CAAC,iDAAiD,KAAK,EAAE,CAAC,CAAC;oBAC1E,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC;QAC1D,CAAC;IACL,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACtD,CAAC,KAAK,IAAI,EAAE;YACR,IAAI,CAAC;gBACD,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACf,MAAM,IAAA,iBAAK,EAAC,kBAAkB,CAAC,CAAC;oBAChC,MAAM,iBAAiB,EAAE,CAAC;gBAC9B,CAAC;gBAED,kEAAkE;gBAClE,MAAM,IAAA,mCAAuB,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC/C,MAAM,iBAAiB,EAAE,CAAC;gBAE1B,IAAI,kBAAkB,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvC,cAAc,CAAC,kBAAkB,CAAC,CAAC;oBACnC,kBAAkB,GAAG,EAAE,CAAC;gBAC5B,CAAC;gBAED,IAAI,CAAC;oBACD,+CAA+C;oBAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBAClB,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBACzB,MAAM,CAAC,IAAI,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC;oBAC1D,CAAC;gBACL,CAAC;gBAED,MAAM,iBAAiB,EAAE,CAAC;gBAC1B,OAAO,EAAE,CAAC;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,MAAM,iBAAiB,EAAE,CAAC;gBAC1B,MAAM,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;QACL,CAAC,CAAC,EAAE,CAAC;IACT,CAAC,CAAC,CAAC;IAEH,SAAS,WAAW;QAChB,QAAQ,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;AACnD,CAAC"}
|
|
1
|
+
{"version":3,"file":"unity-logging.js","sourceRoot":"","sources":["../src/unity-logging.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { SemVer } from 'semver';
|
|
2
|
+
import { ExecOptions } from './utilities';
|
|
3
|
+
export interface EnsureUpmInstalledOptions {
|
|
4
|
+
version?: string;
|
|
5
|
+
skipIfInstalled?: boolean;
|
|
6
|
+
}
|
|
7
|
+
/** Arguments for {@link UpmCli.Pack} (mapped to `UnityPackageManager pack …`). */
|
|
8
|
+
export interface UpmPackOptions {
|
|
9
|
+
/** Unity Cloud organization id. */
|
|
10
|
+
organizationId: string;
|
|
11
|
+
/** Output path for the packed artifact. */
|
|
12
|
+
destination?: string;
|
|
13
|
+
/** Folder containing `package.json` to pack; when omitted the child process cwd applies. */
|
|
14
|
+
packageDirectory?: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Managed Unity Package Manager CLI (unity-cli–installed `UnityPackageManager`), modeled after {@link UnityHub}:
|
|
18
|
+
* parameterless constructor resolves roots and executable preference, {@link Install} manages downloads, {@link Exec} runs the binary.
|
|
19
|
+
*/
|
|
20
|
+
export declare class UpmCli {
|
|
21
|
+
/** Root directory for managed installs (~/.unity-cli/upm), analogous to {@link UnityHub.rootDirectory}. */
|
|
22
|
+
readonly managedRoot: string;
|
|
23
|
+
private readonly logger;
|
|
24
|
+
constructor();
|
|
25
|
+
private static getCdnBaseUrl;
|
|
26
|
+
/**
|
|
27
|
+
* HTTPS URL under the UPM CLI CDN for a release file. Caller must validate `tag` (e.g. {@link UpmCli.validateVersionFormat});
|
|
28
|
+
* path segments are encoded to avoid tainted file-derived strings reaching the network unchecked (CodeQL js/file-access-to-http).
|
|
29
|
+
*/
|
|
30
|
+
private static buildUpmReleaseAssetUrl;
|
|
31
|
+
private static buildUpmLatestTxtUrl;
|
|
32
|
+
private static normalizeSemver;
|
|
33
|
+
private static parseVerifiedSemVerFromLine;
|
|
34
|
+
private static parseCliVersionStdout;
|
|
35
|
+
private getVersionInstallDir;
|
|
36
|
+
private getCurrentVersionFilePath;
|
|
37
|
+
private getPlatformId;
|
|
38
|
+
private validateVersionFormat;
|
|
39
|
+
private findPrimaryExecutable;
|
|
40
|
+
/** Optional executable override (mirrors `UNITY_HUB_PATH` for {@link UnityHub}). */
|
|
41
|
+
private getExecutablePathOverride;
|
|
42
|
+
private executableOverrideIsUsable;
|
|
43
|
+
/**
|
|
44
|
+
* Release tag of the managed install from `current-version.txt`, if present and valid.
|
|
45
|
+
*/
|
|
46
|
+
GetInstalledReleaseTag(): string | undefined;
|
|
47
|
+
/**
|
|
48
|
+
* Path to the primary `UnityPackageManager` binary for a managed release, or `undefined` if missing.
|
|
49
|
+
*/
|
|
50
|
+
ResolveManagedPrimaryPath(version?: string): string | undefined;
|
|
51
|
+
/**
|
|
52
|
+
* Resolved path used to spawn the UPM CLI: `UPM_CLI_PATH` override when set, otherwise the managed primary binary.
|
|
53
|
+
* @throws If nothing usable is installed (mirrors Hub/Editor behavior when the executable cannot be used).
|
|
54
|
+
*/
|
|
55
|
+
GetExecutablePath(): string;
|
|
56
|
+
/** Same role as {@link UnityHub.executable}: path used to spawn the UPM CLI (may reflect `UPM_CLI_PATH` or the managed install). */
|
|
57
|
+
get executable(): string;
|
|
58
|
+
GetLatestReleaseTag(): Promise<string>;
|
|
59
|
+
/** True if `latestTag` is newer than the installed managed release, or nothing is installed yet. */
|
|
60
|
+
IsUpdateAvailable(latestTag: string): boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Installs or updates the managed UPM CLI (mirrors {@link UnityHub.Install} for the Hub itself).
|
|
63
|
+
* @returns Installed release tag (e.g. v9.27.0).
|
|
64
|
+
*/
|
|
65
|
+
Install(options?: EnsureUpmInstalledOptions): Promise<string>;
|
|
66
|
+
/**
|
|
67
|
+
* When running in an interactive terminal, may prompt to install a missing UPM CLI or update to the latest CDN release.
|
|
68
|
+
* When not interactive, logs a warning if the running binary is older than the CDN latest (no install).
|
|
69
|
+
* Compares the running binary ({@link Version}) to {@link GetLatestReleaseTag} (including when {@code UPM_CLI_PATH} overrides the managed install).
|
|
70
|
+
* Call before {@link GetExecutablePath} / {@link Exec} for Hub-style optional install/update (e.g. pack).
|
|
71
|
+
*/
|
|
72
|
+
PromptInstallOrUpdateWhenInteractive(): Promise<void>;
|
|
73
|
+
/**
|
|
74
|
+
* Executes the UPM CLI with the given arguments (mirrors {@link UnityHub.Exec}).
|
|
75
|
+
*/
|
|
76
|
+
Exec(args: string[], options?: ExecOptions): Promise<string>;
|
|
77
|
+
/**
|
|
78
|
+
* Runs `--version` and returns the verified semver from the binary.
|
|
79
|
+
* @param expectedReleaseTag When set (e.g. from {@link Install}), ensures the reported semver matches this CDN release tag.
|
|
80
|
+
*/
|
|
81
|
+
Version(expectedReleaseTag?: string): Promise<SemVer>;
|
|
82
|
+
/**
|
|
83
|
+
* Runs the UPM CLI `pack` subcommand (builds argv from {@link UpmPackOptions}, then {@link Exec}).
|
|
84
|
+
*/
|
|
85
|
+
Pack(options: UpmPackOptions, execOptions?: ExecOptions): Promise<string>;
|
|
86
|
+
}
|