@neobiotechlabs/neobiotech-dev-agent 0.1.37 → 0.1.39
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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +13 -1
- package/.mcp.json +6 -2
- package/dist/doctor.js +15106 -0
- package/dist/doctor.js.map +1 -0
- package/dist/index.js +1212 -886
- package/dist/index.js.map +1 -1
- package/dist/setup-codex.js +164 -0
- package/dist/setup-codex.js.map +1 -0
- package/package.json +4 -33
- package/skills/doc-render/SKILL.md +2 -2
- package/README.md +0 -493
package/dist/index.js
CHANGED
|
@@ -1146,12 +1146,12 @@ var require_util = __commonJS({
|
|
|
1146
1146
|
return str.replace(/~1/g, "/").replace(/~0/g, "~");
|
|
1147
1147
|
}
|
|
1148
1148
|
exports.unescapeJsonPointer = unescapeJsonPointer;
|
|
1149
|
-
function eachItem(xs,
|
|
1149
|
+
function eachItem(xs, f4) {
|
|
1150
1150
|
if (Array.isArray(xs)) {
|
|
1151
1151
|
for (const x3 of xs)
|
|
1152
|
-
|
|
1152
|
+
f4(x3);
|
|
1153
1153
|
} else {
|
|
1154
|
-
|
|
1154
|
+
f4(xs);
|
|
1155
1155
|
}
|
|
1156
1156
|
}
|
|
1157
1157
|
exports.eachItem = eachItem;
|
|
@@ -1198,10 +1198,10 @@ var require_util = __commonJS({
|
|
|
1198
1198
|
}
|
|
1199
1199
|
exports.setEvaluated = setEvaluated;
|
|
1200
1200
|
var snippets = {};
|
|
1201
|
-
function useFunc(gen,
|
|
1201
|
+
function useFunc(gen, f4) {
|
|
1202
1202
|
return gen.scopeValue("func", {
|
|
1203
|
-
ref:
|
|
1204
|
-
code: snippets[
|
|
1203
|
+
ref: f4,
|
|
1204
|
+
code: snippets[f4.code] || (snippets[f4.code] = new code_1._Code(f4.code))
|
|
1205
1205
|
});
|
|
1206
1206
|
}
|
|
1207
1207
|
exports.useFunc = useFunc;
|
|
@@ -1339,7 +1339,7 @@ var require_errors = __commonJS({
|
|
|
1339
1339
|
gen.return(false);
|
|
1340
1340
|
}
|
|
1341
1341
|
}
|
|
1342
|
-
var
|
|
1342
|
+
var E = {
|
|
1343
1343
|
keyword: new codegen_1.Name("keyword"),
|
|
1344
1344
|
schemaPath: new codegen_1.Name("schemaPath"),
|
|
1345
1345
|
// also used in JTD errors
|
|
@@ -1373,20 +1373,20 @@ var require_errors = __commonJS({
|
|
|
1373
1373
|
if (schemaPath) {
|
|
1374
1374
|
schPath = (0, codegen_1.str)`${schPath}${(0, util_1.getErrorPath)(schemaPath, util_1.Type.Str)}`;
|
|
1375
1375
|
}
|
|
1376
|
-
return [
|
|
1376
|
+
return [E.schemaPath, schPath];
|
|
1377
1377
|
}
|
|
1378
1378
|
function extraErrorProps(cxt, { params, message }, keyValues) {
|
|
1379
1379
|
const { keyword, data, schemaValue, it: it2 } = cxt;
|
|
1380
1380
|
const { opts, propertyName, topSchemaRef, schemaPath } = it2;
|
|
1381
|
-
keyValues.push([
|
|
1381
|
+
keyValues.push([E.keyword, keyword], [E.params, typeof params == "function" ? params(cxt) : params || (0, codegen_1._)`{}`]);
|
|
1382
1382
|
if (opts.messages) {
|
|
1383
|
-
keyValues.push([
|
|
1383
|
+
keyValues.push([E.message, typeof message == "function" ? message(cxt) : message]);
|
|
1384
1384
|
}
|
|
1385
1385
|
if (opts.verbose) {
|
|
1386
|
-
keyValues.push([
|
|
1386
|
+
keyValues.push([E.schema, schemaValue], [E.parentSchema, (0, codegen_1._)`${topSchemaRef}${schemaPath}`], [names_1.default.data, data]);
|
|
1387
1387
|
}
|
|
1388
1388
|
if (propertyName)
|
|
1389
|
-
keyValues.push([
|
|
1389
|
+
keyValues.push([E.propertyName, propertyName]);
|
|
1390
1390
|
}
|
|
1391
1391
|
}
|
|
1392
1392
|
});
|
|
@@ -3122,7 +3122,25 @@ var require_utils = __commonJS({
|
|
|
3122
3122
|
var isIPv4 = RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);
|
|
3123
3123
|
var isHexPair = RegExp.prototype.test.bind(/^[\da-f]{2}$/iu);
|
|
3124
3124
|
var isUnreserved = RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu);
|
|
3125
|
-
var isPathCharacter = RegExp.prototype.test.bind(/^[
|
|
3125
|
+
var isPathCharacter = RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/]$/u);
|
|
3126
|
+
var isQueryFragmentCharacter = RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/?]$/u);
|
|
3127
|
+
var isUserinfoCharacter = RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:]$/u);
|
|
3128
|
+
var BYTE_HEX = new Array(256);
|
|
3129
|
+
{
|
|
3130
|
+
const HEX_DIGITS = "0123456789ABCDEF";
|
|
3131
|
+
for (let i2 = 0; i2 < 256; i2++) {
|
|
3132
|
+
BYTE_HEX[i2] = "%" + HEX_DIGITS[i2 >> 4] + HEX_DIGITS[i2 & 15];
|
|
3133
|
+
}
|
|
3134
|
+
}
|
|
3135
|
+
function percentEncodeNonAscii(cp) {
|
|
3136
|
+
if (cp < 2048) {
|
|
3137
|
+
return BYTE_HEX[192 | cp >> 6] + BYTE_HEX[128 | cp & 63];
|
|
3138
|
+
}
|
|
3139
|
+
if (cp < 65536) {
|
|
3140
|
+
return BYTE_HEX[224 | cp >> 12] + BYTE_HEX[128 | cp >> 6 & 63] + BYTE_HEX[128 | cp & 63];
|
|
3141
|
+
}
|
|
3142
|
+
return BYTE_HEX[240 | cp >> 18] + BYTE_HEX[128 | cp >> 12 & 63] + BYTE_HEX[128 | cp >> 6 & 63] + BYTE_HEX[128 | cp & 63];
|
|
3143
|
+
}
|
|
3126
3144
|
function stringArrayToHexStripped(input) {
|
|
3127
3145
|
let acc = "";
|
|
3128
3146
|
let code = 0;
|
|
@@ -3147,91 +3165,105 @@ var require_utils = __commonJS({
|
|
|
3147
3165
|
}
|
|
3148
3166
|
return acc;
|
|
3149
3167
|
}
|
|
3168
|
+
var isHextet = RegExp.prototype.test.bind(/^[\dA-Fa-f]{1,4}$/);
|
|
3169
|
+
var isIPvFuture = RegExp.prototype.test.bind(/^[vV][\dA-Fa-f]+\.[A-Za-z\d\-._~!$&'()*+,;=:]+$/);
|
|
3170
|
+
var isZoneCharacter = RegExp.prototype.test.bind(/^[A-Za-z\d\-._~]$/);
|
|
3150
3171
|
var nonSimpleDomain = RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);
|
|
3151
|
-
function
|
|
3152
|
-
|
|
3153
|
-
|
|
3154
|
-
|
|
3155
|
-
|
|
3156
|
-
|
|
3157
|
-
|
|
3158
|
-
if (hex !== "") {
|
|
3159
|
-
address.push(hex);
|
|
3160
|
-
} else {
|
|
3161
|
-
output.error = true;
|
|
3162
|
-
return false;
|
|
3172
|
+
function isZoneIdentifier(zone) {
|
|
3173
|
+
if (zone.length === 0) return false;
|
|
3174
|
+
for (let i2 = 0; i2 < zone.length; i2++) {
|
|
3175
|
+
if (isZoneCharacter(zone[i2])) continue;
|
|
3176
|
+
if (zone[i2] === "%" && i2 + 2 < zone.length && isHexPair(zone.slice(i2 + 1, i2 + 3))) {
|
|
3177
|
+
i2 += 2;
|
|
3178
|
+
continue;
|
|
3163
3179
|
}
|
|
3164
|
-
|
|
3180
|
+
return false;
|
|
3165
3181
|
}
|
|
3166
3182
|
return true;
|
|
3167
3183
|
}
|
|
3168
|
-
function
|
|
3169
|
-
let
|
|
3170
|
-
|
|
3171
|
-
|
|
3172
|
-
|
|
3173
|
-
let
|
|
3174
|
-
|
|
3175
|
-
|
|
3176
|
-
|
|
3177
|
-
|
|
3178
|
-
|
|
3179
|
-
|
|
3180
|
-
}
|
|
3181
|
-
if (cursor === ":") {
|
|
3182
|
-
if (endipv6Encountered === true) {
|
|
3183
|
-
endIpv6 = true;
|
|
3184
|
-
}
|
|
3185
|
-
if (!consume(buffer, address, output)) {
|
|
3186
|
-
break;
|
|
3187
|
-
}
|
|
3188
|
-
if (++tokenCount > 7) {
|
|
3189
|
-
output.error = true;
|
|
3190
|
-
break;
|
|
3191
|
-
}
|
|
3192
|
-
if (i2 > 0 && input[i2 - 1] === ":") {
|
|
3193
|
-
endipv6Encountered = true;
|
|
3194
|
-
}
|
|
3195
|
-
address.push(":");
|
|
3196
|
-
continue;
|
|
3197
|
-
} else if (cursor === "%") {
|
|
3198
|
-
if (!consume(buffer, address, output)) {
|
|
3199
|
-
break;
|
|
3184
|
+
function compressIPv6ZeroRun(hextets) {
|
|
3185
|
+
let bestStart = -1;
|
|
3186
|
+
let bestLength = 0;
|
|
3187
|
+
let runStart = -1;
|
|
3188
|
+
let runLength = 0;
|
|
3189
|
+
for (let i2 = 0; i2 < hextets.length; i2++) {
|
|
3190
|
+
if (hextets[i2] === "0") {
|
|
3191
|
+
if (runStart === -1) runStart = i2;
|
|
3192
|
+
runLength++;
|
|
3193
|
+
if (runLength > bestLength) {
|
|
3194
|
+
bestLength = runLength;
|
|
3195
|
+
bestStart = runStart;
|
|
3200
3196
|
}
|
|
3201
|
-
consume = consumeIsZone;
|
|
3202
3197
|
} else {
|
|
3203
|
-
|
|
3198
|
+
runStart = -1;
|
|
3199
|
+
runLength = 0;
|
|
3200
|
+
}
|
|
3201
|
+
}
|
|
3202
|
+
if (bestLength < 2) return hextets.join(":");
|
|
3203
|
+
const head = hextets.slice(0, bestStart).join(":");
|
|
3204
|
+
const tail = hextets.slice(bestStart + bestLength).join(":");
|
|
3205
|
+
return head + "::" + tail;
|
|
3206
|
+
}
|
|
3207
|
+
function normalizeIPv6Address(input) {
|
|
3208
|
+
const compression = input.indexOf("::");
|
|
3209
|
+
if (compression !== -1 && input.indexOf("::", compression + 1) !== -1) return void 0;
|
|
3210
|
+
const left = compression === -1 ? input.split(":") : input.slice(0, compression).split(":");
|
|
3211
|
+
const right = compression === -1 ? [] : input.slice(compression + 2).split(":");
|
|
3212
|
+
if (compression !== -1) {
|
|
3213
|
+
if (left.length === 1 && left[0] === "") left.length = 0;
|
|
3214
|
+
if (right.length === 1 && right[0] === "") right.length = 0;
|
|
3215
|
+
}
|
|
3216
|
+
const parts = left.concat(right);
|
|
3217
|
+
let hextetCount = 0;
|
|
3218
|
+
for (let i2 = 0; i2 < parts.length; i2++) {
|
|
3219
|
+
const part = parts[i2];
|
|
3220
|
+
if (part === "") return void 0;
|
|
3221
|
+
if (part.indexOf(".") !== -1) {
|
|
3222
|
+
if (i2 !== parts.length - 1 || compression !== -1 && right.length === 0 || !isIPv4(part)) return void 0;
|
|
3223
|
+
hextetCount += 2;
|
|
3204
3224
|
continue;
|
|
3205
3225
|
}
|
|
3226
|
+
if (!isHextet(part)) return void 0;
|
|
3227
|
+
parts[i2] = parseInt(part, 16).toString(16);
|
|
3228
|
+
hextetCount++;
|
|
3206
3229
|
}
|
|
3207
|
-
if (
|
|
3208
|
-
if (
|
|
3209
|
-
|
|
3210
|
-
} else if (endIpv6) {
|
|
3211
|
-
address.push(buffer.join(""));
|
|
3212
|
-
} else {
|
|
3213
|
-
address.push(stringArrayToHexStripped(buffer));
|
|
3214
|
-
}
|
|
3230
|
+
if (compression === -1) {
|
|
3231
|
+
if (hextetCount !== 8) return void 0;
|
|
3232
|
+
return compressIPv6ZeroRun(parts);
|
|
3215
3233
|
}
|
|
3216
|
-
|
|
3217
|
-
|
|
3234
|
+
if (hextetCount >= 8) return void 0;
|
|
3235
|
+
const expanded = parts.slice(0, left.length);
|
|
3236
|
+
for (let i2 = hextetCount; i2 < 8; i2++) expanded.push("0");
|
|
3237
|
+
for (let i2 = left.length; i2 < parts.length; i2++) expanded.push(parts[i2]);
|
|
3238
|
+
return compressIPv6ZeroRun(expanded);
|
|
3218
3239
|
}
|
|
3219
3240
|
function normalizeIPv6(host) {
|
|
3220
|
-
|
|
3221
|
-
|
|
3222
|
-
}
|
|
3223
|
-
|
|
3224
|
-
if (
|
|
3225
|
-
|
|
3226
|
-
|
|
3227
|
-
|
|
3228
|
-
|
|
3229
|
-
|
|
3230
|
-
|
|
3231
|
-
|
|
3232
|
-
|
|
3233
|
-
|
|
3234
|
-
|
|
3241
|
+
const bracketed = host[0] === "[" && host[host.length - 1] === "]";
|
|
3242
|
+
const hasBracket = host[0] === "[" || host[host.length - 1] === "]";
|
|
3243
|
+
if (hasBracket && !bracketed) return { host, isIPV6: false, error: true };
|
|
3244
|
+
let input = bracketed ? host.slice(1, -1) : host;
|
|
3245
|
+
if (bracketed && isIPvFuture(input)) {
|
|
3246
|
+
input = input.toLowerCase();
|
|
3247
|
+
return { host: `[${input}]`, escapedHost: input, isIPV6: false, isIPVFuture: true };
|
|
3248
|
+
}
|
|
3249
|
+
if (findToken(input, ":") < 2) {
|
|
3250
|
+
return { host, isIPV6: false, error: bracketed };
|
|
3251
|
+
}
|
|
3252
|
+
let zoneIdentifier = "";
|
|
3253
|
+
const zoneSeparator = input.indexOf("%");
|
|
3254
|
+
if (zoneSeparator !== -1) {
|
|
3255
|
+
const separatorLength = input.slice(zoneSeparator, zoneSeparator + 3).toLowerCase() === "%25" ? 3 : 1;
|
|
3256
|
+
zoneIdentifier = input.slice(zoneSeparator + separatorLength);
|
|
3257
|
+
if (!isZoneIdentifier(zoneIdentifier)) return { host, isIPV6: false, error: true };
|
|
3258
|
+
input = input.slice(0, zoneSeparator);
|
|
3259
|
+
}
|
|
3260
|
+
const address = normalizeIPv6Address(input);
|
|
3261
|
+
if (address === void 0) return { host, isIPV6: false, error: true };
|
|
3262
|
+
return {
|
|
3263
|
+
host: address + (zoneIdentifier ? "%" + zoneIdentifier : ""),
|
|
3264
|
+
escapedHost: address + (zoneIdentifier ? "%25" + zoneIdentifier : ""),
|
|
3265
|
+
isIPV6: true
|
|
3266
|
+
};
|
|
3235
3267
|
}
|
|
3236
3268
|
function findToken(str, token) {
|
|
3237
3269
|
let ind = 0;
|
|
@@ -3350,7 +3382,8 @@ var require_utils = __commonJS({
|
|
|
3350
3382
|
function normalizePathEncoding(input) {
|
|
3351
3383
|
let output = "";
|
|
3352
3384
|
for (let i2 = 0; i2 < input.length; i2++) {
|
|
3353
|
-
|
|
3385
|
+
const ch = input[i2];
|
|
3386
|
+
if (ch === "%" && i2 + 2 < input.length) {
|
|
3354
3387
|
const hex = input.slice(i2 + 1, i2 + 3);
|
|
3355
3388
|
if (isHexPair(hex)) {
|
|
3356
3389
|
const normalizedHex = hex.toUpperCase();
|
|
@@ -3364,10 +3397,152 @@ var require_utils = __commonJS({
|
|
|
3364
3397
|
continue;
|
|
3365
3398
|
}
|
|
3366
3399
|
}
|
|
3367
|
-
if (isPathCharacter(
|
|
3368
|
-
output +=
|
|
3400
|
+
if (isPathCharacter(ch)) {
|
|
3401
|
+
output += ch;
|
|
3402
|
+
} else {
|
|
3403
|
+
const code = input.charCodeAt(i2);
|
|
3404
|
+
if (code < 128) {
|
|
3405
|
+
output += isEscapeSafe(code) ? ch : BYTE_HEX[code];
|
|
3406
|
+
} else if (code < 55296 || code > 57343) {
|
|
3407
|
+
output += percentEncodeNonAscii(code);
|
|
3408
|
+
} else if (code <= 56319 && i2 + 1 < input.length) {
|
|
3409
|
+
const low = input.charCodeAt(i2 + 1);
|
|
3410
|
+
if (low >= 56320 && low <= 57343) {
|
|
3411
|
+
output += percentEncodeNonAscii(65536 + (code - 55296 << 10) + (low - 56320));
|
|
3412
|
+
i2++;
|
|
3413
|
+
} else {
|
|
3414
|
+
output += percentEncodeNonAscii(65533);
|
|
3415
|
+
}
|
|
3416
|
+
} else {
|
|
3417
|
+
output += percentEncodeNonAscii(65533);
|
|
3418
|
+
}
|
|
3419
|
+
}
|
|
3420
|
+
}
|
|
3421
|
+
return output;
|
|
3422
|
+
}
|
|
3423
|
+
function serializePathEncoding(input, pathNoScheme = false) {
|
|
3424
|
+
let output = "";
|
|
3425
|
+
let firstSegment = pathNoScheme && input[0] !== "/";
|
|
3426
|
+
for (let i2 = 0; i2 < input.length; i2++) {
|
|
3427
|
+
const ch = input[i2];
|
|
3428
|
+
if (ch === "%" && i2 + 2 < input.length) {
|
|
3429
|
+
const hex = input.slice(i2 + 1, i2 + 3);
|
|
3430
|
+
if (isHexPair(hex)) {
|
|
3431
|
+
output += "%" + hex.toUpperCase();
|
|
3432
|
+
i2 += 2;
|
|
3433
|
+
continue;
|
|
3434
|
+
}
|
|
3435
|
+
}
|
|
3436
|
+
if (ch === "/") {
|
|
3437
|
+
firstSegment = false;
|
|
3438
|
+
}
|
|
3439
|
+
if (isPathCharacter(ch) && (ch !== ":" || !firstSegment)) {
|
|
3440
|
+
output += ch;
|
|
3441
|
+
} else {
|
|
3442
|
+
const code = input.charCodeAt(i2);
|
|
3443
|
+
if (code < 128) {
|
|
3444
|
+
output += BYTE_HEX[code];
|
|
3445
|
+
} else if (code < 55296 || code > 57343) {
|
|
3446
|
+
output += percentEncodeNonAscii(code);
|
|
3447
|
+
} else if (code <= 56319 && i2 + 1 < input.length) {
|
|
3448
|
+
const low = input.charCodeAt(i2 + 1);
|
|
3449
|
+
if (low >= 56320 && low <= 57343) {
|
|
3450
|
+
output += percentEncodeNonAscii(65536 + (code - 55296 << 10) + (low - 56320));
|
|
3451
|
+
i2++;
|
|
3452
|
+
} else {
|
|
3453
|
+
output += percentEncodeNonAscii(65533);
|
|
3454
|
+
}
|
|
3455
|
+
} else {
|
|
3456
|
+
output += percentEncodeNonAscii(65533);
|
|
3457
|
+
}
|
|
3458
|
+
}
|
|
3459
|
+
}
|
|
3460
|
+
return output;
|
|
3461
|
+
}
|
|
3462
|
+
function encodeComponent(input, isAllowed) {
|
|
3463
|
+
let output = "";
|
|
3464
|
+
for (let i2 = 0; i2 < input.length; i2++) {
|
|
3465
|
+
const ch = input[i2];
|
|
3466
|
+
if (ch === "%" && i2 + 2 < input.length) {
|
|
3467
|
+
const hex = input.slice(i2 + 1, i2 + 3);
|
|
3468
|
+
if (isHexPair(hex)) {
|
|
3469
|
+
output += "%" + hex.toUpperCase();
|
|
3470
|
+
i2 += 2;
|
|
3471
|
+
continue;
|
|
3472
|
+
}
|
|
3473
|
+
}
|
|
3474
|
+
if (isAllowed(ch)) {
|
|
3475
|
+
output += ch;
|
|
3476
|
+
} else {
|
|
3477
|
+
const code = input.charCodeAt(i2);
|
|
3478
|
+
if (code < 128) {
|
|
3479
|
+
output += BYTE_HEX[code];
|
|
3480
|
+
} else if (code < 55296 || code > 57343) {
|
|
3481
|
+
output += percentEncodeNonAscii(code);
|
|
3482
|
+
} else if (code <= 56319 && i2 + 1 < input.length) {
|
|
3483
|
+
const low = input.charCodeAt(i2 + 1);
|
|
3484
|
+
if (low >= 56320 && low <= 57343) {
|
|
3485
|
+
output += percentEncodeNonAscii(65536 + (code - 55296 << 10) + (low - 56320));
|
|
3486
|
+
i2++;
|
|
3487
|
+
} else {
|
|
3488
|
+
output += percentEncodeNonAscii(65533);
|
|
3489
|
+
}
|
|
3490
|
+
} else {
|
|
3491
|
+
output += percentEncodeNonAscii(65533);
|
|
3492
|
+
}
|
|
3493
|
+
}
|
|
3494
|
+
}
|
|
3495
|
+
return output;
|
|
3496
|
+
}
|
|
3497
|
+
function encodeUserinfo(input) {
|
|
3498
|
+
return encodeComponent(input, isUserinfoCharacter);
|
|
3499
|
+
}
|
|
3500
|
+
function encodeQuery(input) {
|
|
3501
|
+
return encodeComponent(input, isQueryFragmentCharacter);
|
|
3502
|
+
}
|
|
3503
|
+
function encodeFragment(input) {
|
|
3504
|
+
return encodeComponent(input, isQueryFragmentCharacter);
|
|
3505
|
+
}
|
|
3506
|
+
function isEscapeSafe(cp) {
|
|
3507
|
+
return cp >= 48 && cp <= 57 || cp >= 65 && cp <= 90 || cp >= 97 && cp <= 122 || cp === 42 || cp === 43 || cp === 45 || cp === 46 || cp === 47 || cp === 64 || cp === 95;
|
|
3508
|
+
}
|
|
3509
|
+
function normalizeQueryFragmentEncoding(input) {
|
|
3510
|
+
let output = "";
|
|
3511
|
+
for (let i2 = 0; i2 < input.length; i2++) {
|
|
3512
|
+
const ch = input[i2];
|
|
3513
|
+
if (ch === "%" && i2 + 2 < input.length) {
|
|
3514
|
+
const hex = input.slice(i2 + 1, i2 + 3);
|
|
3515
|
+
if (isHexPair(hex)) {
|
|
3516
|
+
const normalizedHex = hex.toUpperCase();
|
|
3517
|
+
const decoded = String.fromCharCode(parseInt(normalizedHex, 16));
|
|
3518
|
+
if (isUnreserved(decoded)) {
|
|
3519
|
+
output += decoded;
|
|
3520
|
+
} else {
|
|
3521
|
+
output += "%" + normalizedHex;
|
|
3522
|
+
}
|
|
3523
|
+
i2 += 2;
|
|
3524
|
+
continue;
|
|
3525
|
+
}
|
|
3526
|
+
}
|
|
3527
|
+
if (isQueryFragmentCharacter(ch)) {
|
|
3528
|
+
output += ch;
|
|
3369
3529
|
} else {
|
|
3370
|
-
|
|
3530
|
+
const code = input.charCodeAt(i2);
|
|
3531
|
+
if (code < 128) {
|
|
3532
|
+
output += isEscapeSafe(code) ? ch : BYTE_HEX[code];
|
|
3533
|
+
} else if (code < 55296 || code > 57343) {
|
|
3534
|
+
output += percentEncodeNonAscii(code);
|
|
3535
|
+
} else if (code <= 56319 && i2 + 1 < input.length) {
|
|
3536
|
+
const low = input.charCodeAt(i2 + 1);
|
|
3537
|
+
if (low >= 56320 && low <= 57343) {
|
|
3538
|
+
output += percentEncodeNonAscii(65536 + (code - 55296 << 10) + (low - 56320));
|
|
3539
|
+
i2++;
|
|
3540
|
+
} else {
|
|
3541
|
+
output += percentEncodeNonAscii(65533);
|
|
3542
|
+
}
|
|
3543
|
+
} else {
|
|
3544
|
+
output += percentEncodeNonAscii(65533);
|
|
3545
|
+
}
|
|
3371
3546
|
}
|
|
3372
3547
|
}
|
|
3373
3548
|
return output;
|
|
@@ -3390,14 +3565,18 @@ var require_utils = __commonJS({
|
|
|
3390
3565
|
function recomposeAuthority(component) {
|
|
3391
3566
|
const uriTokens = [];
|
|
3392
3567
|
if (component.userinfo !== void 0) {
|
|
3393
|
-
uriTokens.push(component.userinfo);
|
|
3568
|
+
uriTokens.push(encodeUserinfo(component.userinfo));
|
|
3394
3569
|
uriTokens.push("@");
|
|
3395
3570
|
}
|
|
3396
3571
|
if (component.host !== void 0) {
|
|
3397
|
-
let host =
|
|
3572
|
+
let host = component.host;
|
|
3398
3573
|
if (!isIPv4(host)) {
|
|
3399
|
-
|
|
3400
|
-
if (ipV6res.isIPV6
|
|
3574
|
+
let ipV6res = normalizeIPv6(host);
|
|
3575
|
+
if (ipV6res.isIPV6 !== true && ipV6res.isIPVFuture !== true) {
|
|
3576
|
+
host = normalizePercentEncoding(host, true);
|
|
3577
|
+
ipV6res = normalizeIPv6(host);
|
|
3578
|
+
}
|
|
3579
|
+
if (ipV6res.isIPV6 === true || ipV6res.isIPVFuture === true) {
|
|
3401
3580
|
host = `[${ipV6res.escapedHost}]`;
|
|
3402
3581
|
} else {
|
|
3403
3582
|
host = reescapeHostDelimiters(host, false);
|
|
@@ -3417,6 +3596,11 @@ var require_utils = __commonJS({
|
|
|
3417
3596
|
reescapeHostDelimiters,
|
|
3418
3597
|
normalizePercentEncoding,
|
|
3419
3598
|
normalizePathEncoding,
|
|
3599
|
+
serializePathEncoding,
|
|
3600
|
+
normalizeQueryFragmentEncoding,
|
|
3601
|
+
encodeUserinfo,
|
|
3602
|
+
encodeQuery,
|
|
3603
|
+
encodeFragment,
|
|
3420
3604
|
escapePreservingEscapes,
|
|
3421
3605
|
removeDotSegments,
|
|
3422
3606
|
isIPv4,
|
|
@@ -3432,7 +3616,7 @@ var require_schemes = __commonJS({
|
|
|
3432
3616
|
"node_modules/fast-uri/lib/schemes.js"(exports, module) {
|
|
3433
3617
|
"use strict";
|
|
3434
3618
|
var { isUUID } = require_utils();
|
|
3435
|
-
var URN_REG =
|
|
3619
|
+
var URN_REG = /^([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-./:;=@]|%[\da-f]{2})+)$/iu;
|
|
3436
3620
|
var supportedSchemeNames = (
|
|
3437
3621
|
/** @type {const} */
|
|
3438
3622
|
[
|
|
@@ -3493,9 +3677,10 @@ var require_schemes = __commonJS({
|
|
|
3493
3677
|
wsComponent.secure = void 0;
|
|
3494
3678
|
}
|
|
3495
3679
|
if (wsComponent.resourceName) {
|
|
3496
|
-
const
|
|
3680
|
+
const queryIndex = wsComponent.resourceName.indexOf("?");
|
|
3681
|
+
const path3 = queryIndex === -1 ? wsComponent.resourceName : wsComponent.resourceName.slice(0, queryIndex);
|
|
3497
3682
|
wsComponent.path = path3 && path3 !== "/" ? path3 : void 0;
|
|
3498
|
-
wsComponent.query =
|
|
3683
|
+
wsComponent.query = queryIndex === -1 ? void 0 : wsComponent.resourceName.slice(queryIndex + 1);
|
|
3499
3684
|
wsComponent.resourceName = void 0;
|
|
3500
3685
|
}
|
|
3501
3686
|
wsComponent.fragment = void 0;
|
|
@@ -3507,7 +3692,7 @@ var require_schemes = __commonJS({
|
|
|
3507
3692
|
return urnComponent;
|
|
3508
3693
|
}
|
|
3509
3694
|
const matches = urnComponent.path.match(URN_REG);
|
|
3510
|
-
if (matches) {
|
|
3695
|
+
if (matches && matches[0] === urnComponent.path) {
|
|
3511
3696
|
const scheme = options.scheme || urnComponent.scheme || "urn";
|
|
3512
3697
|
urnComponent.nid = matches[1].toLowerCase();
|
|
3513
3698
|
urnComponent.nss = matches[2];
|
|
@@ -3641,8 +3826,17 @@ var require_schemes = __commonJS({
|
|
|
3641
3826
|
var require_fast_uri = __commonJS({
|
|
3642
3827
|
"node_modules/fast-uri/index.js"(exports, module) {
|
|
3643
3828
|
"use strict";
|
|
3644
|
-
var { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizePercentEncoding, normalizePathEncoding,
|
|
3829
|
+
var { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizePercentEncoding, normalizePathEncoding, serializePathEncoding, normalizeQueryFragmentEncoding, encodeQuery, encodeFragment, reescapeHostDelimiters, isIPv4, nonSimpleDomain } = require_utils();
|
|
3645
3830
|
var { SCHEMES, getSchemeHandler } = require_schemes();
|
|
3831
|
+
var VALID_SCHEME = /^[A-Za-z][A-Za-z0-9+.-]*$/u;
|
|
3832
|
+
var MALFORMED_SCHEME_ERROR = "URI scheme is malformed.";
|
|
3833
|
+
function decodeValidScheme(scheme) {
|
|
3834
|
+
const decodedScheme = unescape(String(scheme));
|
|
3835
|
+
if (!VALID_SCHEME.test(decodedScheme)) {
|
|
3836
|
+
throw new TypeError(MALFORMED_SCHEME_ERROR);
|
|
3837
|
+
}
|
|
3838
|
+
return decodedScheme;
|
|
3839
|
+
}
|
|
3646
3840
|
function normalize(uri, options) {
|
|
3647
3841
|
if (typeof uri === "string") {
|
|
3648
3842
|
uri = /** @type {T} */
|
|
@@ -3655,7 +3849,34 @@ var require_fast_uri = __commonJS({
|
|
|
3655
3849
|
}
|
|
3656
3850
|
function resolve3(baseURI, relativeURI, options) {
|
|
3657
3851
|
const schemelessOptions = options ? Object.assign({ scheme: "null" }, options) : { scheme: "null" };
|
|
3658
|
-
const
|
|
3852
|
+
const {
|
|
3853
|
+
parsed: baseParsed,
|
|
3854
|
+
malformedAuthorityOrPort: baseMalformed,
|
|
3855
|
+
malformedPercentEncoding: baseMalformedPercentEncoding,
|
|
3856
|
+
malformedSchemeSpecific: baseMalformedSchemeSpecific,
|
|
3857
|
+
malformedHost: baseMalformedHost,
|
|
3858
|
+
malformedScheme: baseMalformedScheme
|
|
3859
|
+
} = parseWithStatus(baseURI, schemelessOptions);
|
|
3860
|
+
const {
|
|
3861
|
+
parsed: relativeParsed,
|
|
3862
|
+
malformedAuthorityOrPort: relativeMalformed,
|
|
3863
|
+
malformedPercentEncoding: relativeMalformedPercentEncoding,
|
|
3864
|
+
malformedSchemeSpecific: relativeMalformedSchemeSpecific,
|
|
3865
|
+
malformedHost: relativeMalformedHost,
|
|
3866
|
+
malformedScheme: relativeMalformedScheme
|
|
3867
|
+
} = parseWithStatus(relativeURI, schemelessOptions);
|
|
3868
|
+
if (baseMalformed || relativeMalformed || baseMalformedPercentEncoding || relativeMalformedPercentEncoding || baseMalformedSchemeSpecific || relativeMalformedSchemeSpecific || baseMalformedHost || relativeMalformedHost || baseMalformedScheme || relativeMalformedScheme) {
|
|
3869
|
+
throw new Error(baseParsed.error || relativeParsed.error || "URI is malformed.");
|
|
3870
|
+
}
|
|
3871
|
+
const resolved = resolveComponent(baseParsed, relativeParsed, schemelessOptions, true);
|
|
3872
|
+
const resolvedSchemeHandler = getSchemeHandler(options && options.scheme || resolved.scheme);
|
|
3873
|
+
const resolvedHost = resolved.host;
|
|
3874
|
+
const resolvedHostIsIP = resolvedHost !== void 0 && resolvedHost !== "" && (isIPv4(resolvedHost) || normalizeIPv6(resolvedHost).isIPV6);
|
|
3875
|
+
canonicalizeHost(resolved, options || {}, resolvedSchemeHandler, resolvedHostIsIP);
|
|
3876
|
+
const encodedASCIIHost = resolvedHost && resolvedHost.indexOf("%") !== -1 && !/\P{ASCII}/u.test(resolvedHost);
|
|
3877
|
+
if (resolved.error && !encodedASCIIHost) {
|
|
3878
|
+
throw new Error(resolved.error);
|
|
3879
|
+
}
|
|
3659
3880
|
schemelessOptions.skipEscape = true;
|
|
3660
3881
|
return serialize(resolved, schemelessOptions);
|
|
3661
3882
|
}
|
|
@@ -3715,7 +3936,7 @@ var require_fast_uri = __commonJS({
|
|
|
3715
3936
|
function equal(uriA, uriB, options) {
|
|
3716
3937
|
const normalizedA = normalizeComparableURI(uriA, options);
|
|
3717
3938
|
const normalizedB = normalizeComparableURI(uriB, options);
|
|
3718
|
-
return normalizedA !== void 0 && normalizedB !== void 0 && normalizedA
|
|
3939
|
+
return normalizedA !== void 0 && normalizedB !== void 0 && normalizedA === normalizedB;
|
|
3719
3940
|
}
|
|
3720
3941
|
function serialize(cmpts, opts) {
|
|
3721
3942
|
const component = {
|
|
@@ -3736,19 +3957,22 @@ var require_fast_uri = __commonJS({
|
|
|
3736
3957
|
};
|
|
3737
3958
|
const options = Object.assign({}, opts);
|
|
3738
3959
|
const uriTokens = [];
|
|
3960
|
+
if (component.scheme) {
|
|
3961
|
+
component.scheme = decodeValidScheme(component.scheme);
|
|
3962
|
+
}
|
|
3739
3963
|
const schemeHandler = getSchemeHandler(options.scheme || component.scheme);
|
|
3740
3964
|
if (schemeHandler && schemeHandler.serialize) schemeHandler.serialize(component, options);
|
|
3965
|
+
const hasAuthority = component.userinfo !== void 0 || component.host !== void 0 || component.port !== void 0;
|
|
3966
|
+
const pathNoScheme = !options.skipEscape && component.scheme === void 0 && !hasAuthority;
|
|
3741
3967
|
if (component.path !== void 0) {
|
|
3742
3968
|
if (!options.skipEscape) {
|
|
3743
|
-
component.path =
|
|
3744
|
-
if (component.scheme !== void 0) {
|
|
3745
|
-
component.path = component.path.split("%3A").join(":");
|
|
3746
|
-
}
|
|
3969
|
+
component.path = serializePathEncoding(component.path, pathNoScheme);
|
|
3747
3970
|
} else {
|
|
3748
3971
|
component.path = normalizePercentEncoding(component.path);
|
|
3749
3972
|
}
|
|
3750
3973
|
}
|
|
3751
3974
|
if (options.reference !== "suffix" && component.scheme) {
|
|
3975
|
+
component.scheme = decodeValidScheme(component.scheme);
|
|
3752
3976
|
uriTokens.push(component.scheme, ":");
|
|
3753
3977
|
}
|
|
3754
3978
|
const authority = recomposeAuthority(component);
|
|
@@ -3766,21 +3990,25 @@ var require_fast_uri = __commonJS({
|
|
|
3766
3990
|
if (!options.absolutePath && (!schemeHandler || !schemeHandler.absolutePath)) {
|
|
3767
3991
|
s2 = removeDotSegments(s2);
|
|
3768
3992
|
}
|
|
3993
|
+
if (pathNoScheme) {
|
|
3994
|
+
s2 = serializePathEncoding(s2, true);
|
|
3995
|
+
}
|
|
3769
3996
|
if (authority === void 0 && s2[0] === "/" && s2[1] === "/") {
|
|
3770
3997
|
s2 = "/%2F" + s2.slice(2);
|
|
3771
3998
|
}
|
|
3772
3999
|
uriTokens.push(s2);
|
|
3773
4000
|
}
|
|
3774
4001
|
if (component.query !== void 0) {
|
|
3775
|
-
uriTokens.push("?", component.query);
|
|
4002
|
+
uriTokens.push("?", encodeQuery(component.query));
|
|
3776
4003
|
}
|
|
3777
4004
|
if (component.fragment !== void 0) {
|
|
3778
|
-
uriTokens.push("#", component.fragment);
|
|
4005
|
+
uriTokens.push("#", encodeFragment(component.fragment));
|
|
3779
4006
|
}
|
|
3780
4007
|
return uriTokens.join("");
|
|
3781
4008
|
}
|
|
3782
4009
|
var URI_PARSE = /^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;
|
|
3783
4010
|
var AUTHORITY_PREFIX = /^(?:[^#/:?]+:)?\/\/([^/?#]*)/;
|
|
4011
|
+
var AUTHORITY_INTRODUCER_REGION = /^(?:[^#/:?]+:)?([/\\\t\n\r]*)/;
|
|
3784
4012
|
function getParseError(parsed, matches) {
|
|
3785
4013
|
if (matches[2] !== void 0 && parsed.path && parsed.path[0] !== "/") {
|
|
3786
4014
|
return 'URI path must start with "/" when authority is present.';
|
|
@@ -3790,6 +4018,32 @@ var require_fast_uri = __commonJS({
|
|
|
3790
4018
|
}
|
|
3791
4019
|
return void 0;
|
|
3792
4020
|
}
|
|
4021
|
+
function hasMalformedPercentEncoding(component) {
|
|
4022
|
+
if (component === void 0) return false;
|
|
4023
|
+
let percent = component.indexOf("%");
|
|
4024
|
+
while (percent !== -1) {
|
|
4025
|
+
if (percent + 2 >= component.length || !/^[\da-f]{2}$/iu.test(component.slice(percent + 1, percent + 3))) {
|
|
4026
|
+
return true;
|
|
4027
|
+
}
|
|
4028
|
+
percent = component.indexOf("%", percent + 3);
|
|
4029
|
+
}
|
|
4030
|
+
return false;
|
|
4031
|
+
}
|
|
4032
|
+
function hasMalformedComponentPercentEncoding(matches) {
|
|
4033
|
+
const host = matches[4];
|
|
4034
|
+
return hasMalformedPercentEncoding(matches[3]) || host !== void 0 && !(host[0] === "[" && host[host.length - 1] === "]") && hasMalformedPercentEncoding(host) || hasMalformedPercentEncoding(matches[6]) || hasMalformedPercentEncoding(matches[7]) || hasMalformedPercentEncoding(matches[8]);
|
|
4035
|
+
}
|
|
4036
|
+
function canonicalizeHost(parsed, options, schemeHandler, isIP2) {
|
|
4037
|
+
if (!options.unicodeSupport && (!schemeHandler || !schemeHandler.unicodeSupport) && parsed.host && parsed.host[0] !== "[" && (options.domainHost || schemeHandler && schemeHandler.domainHost) && isIP2 === false && nonSimpleDomain(parsed.host)) {
|
|
4038
|
+
try {
|
|
4039
|
+
parsed.host = new URL("http://" + parsed.host).hostname;
|
|
4040
|
+
} catch (e2) {
|
|
4041
|
+
parsed.error = parsed.error || "Host's domain name can not be converted to ASCII: " + e2;
|
|
4042
|
+
return true;
|
|
4043
|
+
}
|
|
4044
|
+
}
|
|
4045
|
+
return false;
|
|
4046
|
+
}
|
|
3793
4047
|
function parseWithStatus(uri, opts) {
|
|
3794
4048
|
const options = Object.assign({}, opts);
|
|
3795
4049
|
const parsed = {
|
|
@@ -3802,6 +4056,11 @@ var require_fast_uri = __commonJS({
|
|
|
3802
4056
|
fragment: void 0
|
|
3803
4057
|
};
|
|
3804
4058
|
let malformedAuthorityOrPort = false;
|
|
4059
|
+
let malformedPercentEncoding = false;
|
|
4060
|
+
let malformedSchemeSpecific = false;
|
|
4061
|
+
let malformedHost = false;
|
|
4062
|
+
let malformedIPLiteral = false;
|
|
4063
|
+
let malformedScheme = false;
|
|
3805
4064
|
let isIP2 = false;
|
|
3806
4065
|
if (options.reference === "suffix") {
|
|
3807
4066
|
if (options.scheme) {
|
|
@@ -3815,6 +4074,20 @@ var require_fast_uri = __commonJS({
|
|
|
3815
4074
|
parsed.error = "URI authority must not contain a literal backslash.";
|
|
3816
4075
|
malformedAuthorityOrPort = true;
|
|
3817
4076
|
}
|
|
4077
|
+
const introducerMatch = uri.match(AUTHORITY_INTRODUCER_REGION);
|
|
4078
|
+
if (introducerMatch !== null) {
|
|
4079
|
+
const region = introducerMatch[1];
|
|
4080
|
+
const normalizedRegion = region.replace(/[\t\n\r]/g, "");
|
|
4081
|
+
if (normalizedRegion.length >= 2) {
|
|
4082
|
+
if (normalizedRegion.slice(0, 2) !== "//") {
|
|
4083
|
+
parsed.error = parsed.error || "URI authority must not contain a literal backslash.";
|
|
4084
|
+
malformedAuthorityOrPort = true;
|
|
4085
|
+
} else if (region.length !== normalizedRegion.length) {
|
|
4086
|
+
parsed.error = parsed.error || "URI authority introducer must not contain whitespace.";
|
|
4087
|
+
malformedAuthorityOrPort = true;
|
|
4088
|
+
}
|
|
4089
|
+
}
|
|
4090
|
+
}
|
|
3818
4091
|
const matches = uri.match(URI_PARSE);
|
|
3819
4092
|
if (matches) {
|
|
3820
4093
|
parsed.scheme = matches[1];
|
|
@@ -3824,6 +4097,19 @@ var require_fast_uri = __commonJS({
|
|
|
3824
4097
|
parsed.path = matches[6] || "";
|
|
3825
4098
|
parsed.query = matches[7];
|
|
3826
4099
|
parsed.fragment = matches[8];
|
|
4100
|
+
if (parsed.scheme !== void 0) {
|
|
4101
|
+
const decodedScheme = unescape(parsed.scheme);
|
|
4102
|
+
if (VALID_SCHEME.test(decodedScheme)) {
|
|
4103
|
+
parsed.scheme = decodedScheme.toLowerCase();
|
|
4104
|
+
} else {
|
|
4105
|
+
parsed.error = parsed.error || MALFORMED_SCHEME_ERROR;
|
|
4106
|
+
malformedScheme = true;
|
|
4107
|
+
}
|
|
4108
|
+
}
|
|
4109
|
+
malformedPercentEncoding = hasMalformedComponentPercentEncoding(matches);
|
|
4110
|
+
if (malformedPercentEncoding) {
|
|
4111
|
+
parsed.error = parsed.error || "URI contains malformed percent-encoding.";
|
|
4112
|
+
}
|
|
3827
4113
|
if (isNaN(parsed.port)) {
|
|
3828
4114
|
parsed.port = matches[5];
|
|
3829
4115
|
}
|
|
@@ -3835,9 +4121,15 @@ var require_fast_uri = __commonJS({
|
|
|
3835
4121
|
if (parsed.host) {
|
|
3836
4122
|
const ipv4result = isIPv4(parsed.host);
|
|
3837
4123
|
if (ipv4result === false) {
|
|
4124
|
+
const bracketedIPLiteral = parsed.host[0] === "[" && parsed.host[parsed.host.length - 1] === "]";
|
|
3838
4125
|
const ipv6result = normalizeIPv6(parsed.host);
|
|
3839
|
-
|
|
3840
|
-
|
|
4126
|
+
isIP2 = ipv6result.isIPV6 || ipv6result.isIPVFuture === true;
|
|
4127
|
+
malformedIPLiteral = bracketedIPLiteral && ipv6result.error === true;
|
|
4128
|
+
parsed.host = isIP2 ? ipv6result.host : ipv6result.host.toLowerCase();
|
|
4129
|
+
if (malformedIPLiteral) {
|
|
4130
|
+
parsed.error = parsed.error || "URI host is malformed.";
|
|
4131
|
+
malformedAuthorityOrPort = true;
|
|
4132
|
+
}
|
|
3841
4133
|
} else {
|
|
3842
4134
|
isIP2 = true;
|
|
3843
4135
|
}
|
|
@@ -3855,42 +4147,34 @@ var require_fast_uri = __commonJS({
|
|
|
3855
4147
|
parsed.error = parsed.error || "URI is not a " + options.reference + " reference.";
|
|
3856
4148
|
}
|
|
3857
4149
|
const schemeHandler = getSchemeHandler(options.scheme || parsed.scheme);
|
|
3858
|
-
|
|
3859
|
-
if (parsed.host && (options.domainHost || schemeHandler && schemeHandler.domainHost) && isIP2 === false && nonSimpleDomain(parsed.host)) {
|
|
3860
|
-
try {
|
|
3861
|
-
parsed.host = new URL("http://" + parsed.host).hostname;
|
|
3862
|
-
} catch (e2) {
|
|
3863
|
-
parsed.error = parsed.error || "Host's domain name can not be converted to ASCII: " + e2;
|
|
3864
|
-
}
|
|
3865
|
-
}
|
|
3866
|
-
}
|
|
4150
|
+
malformedHost = canonicalizeHost(parsed, options, schemeHandler, isIP2);
|
|
3867
4151
|
if (!schemeHandler || schemeHandler && !schemeHandler.skipNormalize) {
|
|
3868
4152
|
if (uri.indexOf("%") !== -1) {
|
|
3869
|
-
if (parsed.
|
|
3870
|
-
parsed.
|
|
3871
|
-
|
|
3872
|
-
if (parsed.host !== void 0) {
|
|
3873
|
-
parsed.host = reescapeHostDelimiters(unescape(parsed.host), isIP2);
|
|
4153
|
+
if (parsed.host !== void 0 && !malformedIPLiteral) {
|
|
4154
|
+
const host = isIP2 ? parsed.host : normalizePercentEncoding(parsed.host, true);
|
|
4155
|
+
parsed.host = reescapeHostDelimiters(host, isIP2);
|
|
3874
4156
|
}
|
|
3875
4157
|
}
|
|
3876
4158
|
if (parsed.path) {
|
|
3877
4159
|
parsed.path = normalizePathEncoding(parsed.path);
|
|
3878
4160
|
}
|
|
4161
|
+
if (parsed.query) {
|
|
4162
|
+
parsed.query = normalizeQueryFragmentEncoding(parsed.query);
|
|
4163
|
+
}
|
|
3879
4164
|
if (parsed.fragment) {
|
|
3880
|
-
|
|
3881
|
-
parsed.fragment = encodeURI(decodeURIComponent(parsed.fragment));
|
|
3882
|
-
} catch {
|
|
3883
|
-
parsed.error = parsed.error || "URI malformed";
|
|
3884
|
-
}
|
|
4165
|
+
parsed.fragment = normalizeQueryFragmentEncoding(parsed.fragment);
|
|
3885
4166
|
}
|
|
3886
4167
|
}
|
|
3887
4168
|
if (schemeHandler && schemeHandler.parse) {
|
|
3888
4169
|
schemeHandler.parse(parsed, options);
|
|
4170
|
+
if (schemeHandler === SCHEMES.urn && parsed.nid === void 0) {
|
|
4171
|
+
malformedSchemeSpecific = true;
|
|
4172
|
+
}
|
|
3889
4173
|
}
|
|
3890
4174
|
} else {
|
|
3891
4175
|
parsed.error = parsed.error || "URI can not be parsed.";
|
|
3892
4176
|
}
|
|
3893
|
-
return { parsed, malformedAuthorityOrPort };
|
|
4177
|
+
return { parsed, malformedAuthorityOrPort, malformedPercentEncoding, malformedSchemeSpecific, malformedHost, malformedScheme };
|
|
3894
4178
|
}
|
|
3895
4179
|
function parse4(uri, opts) {
|
|
3896
4180
|
return parseWithStatus(uri, opts).parsed;
|
|
@@ -3899,20 +4183,28 @@ var require_fast_uri = __commonJS({
|
|
|
3899
4183
|
return normalizeStringWithStatus(uri, opts).normalized;
|
|
3900
4184
|
}
|
|
3901
4185
|
function normalizeStringWithStatus(uri, opts) {
|
|
3902
|
-
const { parsed, malformedAuthorityOrPort } = parseWithStatus(uri, opts);
|
|
4186
|
+
const { parsed, malformedAuthorityOrPort, malformedPercentEncoding, malformedSchemeSpecific, malformedHost, malformedScheme } = parseWithStatus(uri, opts);
|
|
3903
4187
|
return {
|
|
3904
|
-
normalized: malformedAuthorityOrPort ? uri : serialize(parsed, opts),
|
|
3905
|
-
malformedAuthorityOrPort
|
|
4188
|
+
normalized: malformedAuthorityOrPort || malformedPercentEncoding || malformedSchemeSpecific || malformedHost || malformedScheme ? uri : serialize(parsed, opts),
|
|
4189
|
+
malformedAuthorityOrPort,
|
|
4190
|
+
malformedPercentEncoding,
|
|
4191
|
+
malformedSchemeSpecific,
|
|
4192
|
+
malformedHost,
|
|
4193
|
+
malformedScheme
|
|
3906
4194
|
};
|
|
3907
4195
|
}
|
|
3908
4196
|
function normalizeComparableURI(uri, opts) {
|
|
3909
|
-
if (typeof uri
|
|
3910
|
-
|
|
3911
|
-
return malformedAuthorityOrPort ? void 0 : normalized;
|
|
4197
|
+
if (typeof uri !== "string" && typeof uri !== "object") {
|
|
4198
|
+
return void 0;
|
|
3912
4199
|
}
|
|
3913
|
-
|
|
3914
|
-
|
|
4200
|
+
let value;
|
|
4201
|
+
try {
|
|
4202
|
+
value = typeof uri === "string" ? uri : serialize(uri, opts);
|
|
4203
|
+
} catch {
|
|
4204
|
+
return void 0;
|
|
3915
4205
|
}
|
|
4206
|
+
const { normalized, malformedAuthorityOrPort, malformedPercentEncoding, malformedSchemeSpecific, malformedHost, malformedScheme } = normalizeStringWithStatus(value, opts);
|
|
4207
|
+
return malformedAuthorityOrPort || malformedPercentEncoding || malformedSchemeSpecific || malformedHost || malformedScheme ? void 0 : normalized;
|
|
3916
4208
|
}
|
|
3917
4209
|
var fastUri = {
|
|
3918
4210
|
SCHEMES,
|
|
@@ -4303,7 +4595,7 @@ var require_core = __commonJS({
|
|
|
4303
4595
|
type: (0, dataType_1.getJSONTypes)(def.type),
|
|
4304
4596
|
schemaType: (0, dataType_1.getJSONTypes)(def.schemaType)
|
|
4305
4597
|
};
|
|
4306
|
-
(0, util_1.eachItem)(keyword, definition.type.length === 0 ? (
|
|
4598
|
+
(0, util_1.eachItem)(keyword, definition.type.length === 0 ? (k2) => addRule.call(this, k2, definition) : (k2) => definition.type.forEach((t2) => addRule.call(this, k2, definition, t2)));
|
|
4307
4599
|
return this;
|
|
4308
4600
|
}
|
|
4309
4601
|
getKeyword(keyword) {
|
|
@@ -6888,17 +7180,17 @@ var require_dist = __commonJS({
|
|
|
6888
7180
|
};
|
|
6889
7181
|
formatsPlugin.get = (name, mode = "full") => {
|
|
6890
7182
|
const formats = mode === "fast" ? formats_1.fastFormats : formats_1.fullFormats;
|
|
6891
|
-
const
|
|
6892
|
-
if (!
|
|
7183
|
+
const f4 = formats[name];
|
|
7184
|
+
if (!f4)
|
|
6893
7185
|
throw new Error(`Unknown format "${name}"`);
|
|
6894
|
-
return
|
|
7186
|
+
return f4;
|
|
6895
7187
|
};
|
|
6896
7188
|
function addFormats(ajv, list, fs4, exportName) {
|
|
6897
7189
|
var _a;
|
|
6898
7190
|
var _b;
|
|
6899
7191
|
(_a = (_b = ajv.opts.code).formats) !== null && _a !== void 0 ? _a : _b.formats = (0, codegen_1._)`require("ajv-formats/dist/formats").${exportName}`;
|
|
6900
|
-
for (const
|
|
6901
|
-
ajv.addFormat(
|
|
7192
|
+
for (const f4 of list)
|
|
7193
|
+
ajv.addFormat(f4, fs4[f4]);
|
|
6902
7194
|
}
|
|
6903
7195
|
module.exports = exports = formatsPlugin;
|
|
6904
7196
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -7521,23 +7813,23 @@ var require_ponyfill_es2018 = __commonJS({
|
|
|
7521
7813
|
function CopyDataBlockBytes(dest, destOffset, src, srcOffset, n) {
|
|
7522
7814
|
new Uint8Array(dest).set(new Uint8Array(src, srcOffset, n), destOffset);
|
|
7523
7815
|
}
|
|
7524
|
-
let TransferArrayBuffer = (
|
|
7525
|
-
if (typeof
|
|
7816
|
+
let TransferArrayBuffer = (O) => {
|
|
7817
|
+
if (typeof O.transfer === "function") {
|
|
7526
7818
|
TransferArrayBuffer = (buffer) => buffer.transfer();
|
|
7527
7819
|
} else if (typeof structuredClone === "function") {
|
|
7528
7820
|
TransferArrayBuffer = (buffer) => structuredClone(buffer, { transfer: [buffer] });
|
|
7529
7821
|
} else {
|
|
7530
7822
|
TransferArrayBuffer = (buffer) => buffer;
|
|
7531
7823
|
}
|
|
7532
|
-
return TransferArrayBuffer(
|
|
7824
|
+
return TransferArrayBuffer(O);
|
|
7533
7825
|
};
|
|
7534
|
-
let IsDetachedBuffer = (
|
|
7535
|
-
if (typeof
|
|
7826
|
+
let IsDetachedBuffer = (O) => {
|
|
7827
|
+
if (typeof O.detached === "boolean") {
|
|
7536
7828
|
IsDetachedBuffer = (buffer) => buffer.detached;
|
|
7537
7829
|
} else {
|
|
7538
7830
|
IsDetachedBuffer = (buffer) => buffer.byteLength === 0;
|
|
7539
7831
|
}
|
|
7540
|
-
return IsDetachedBuffer(
|
|
7832
|
+
return IsDetachedBuffer(O);
|
|
7541
7833
|
};
|
|
7542
7834
|
function ArrayBufferSlice(buffer, begin, end) {
|
|
7543
7835
|
if (buffer.slice) {
|
|
@@ -7617,8 +7909,8 @@ var require_ponyfill_es2018 = __commonJS({
|
|
|
7617
7909
|
}
|
|
7618
7910
|
return true;
|
|
7619
7911
|
}
|
|
7620
|
-
function CloneAsUint8Array(
|
|
7621
|
-
const buffer = ArrayBufferSlice(
|
|
7912
|
+
function CloneAsUint8Array(O) {
|
|
7913
|
+
const buffer = ArrayBufferSlice(O.buffer, O.byteOffset, O.byteOffset + O.byteLength);
|
|
7622
7914
|
return new Uint8Array(buffer);
|
|
7623
7915
|
}
|
|
7624
7916
|
function DequeueValue(container) {
|
|
@@ -11548,7 +11840,7 @@ var init_esm_min = __esm({
|
|
|
11548
11840
|
r = Math.random;
|
|
11549
11841
|
m = "append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(",");
|
|
11550
11842
|
f = (a, b2, c) => (a += "", /^(Blob|File)$/.test(b2 && b2[t]) ? [(c = c !== void 0 ? c + "" : b2[t] == "File" ? b2.name : "blob", a), b2.name !== c || b2[t] == "blob" ? new file_default([b2], c, b2) : b2] : [a, b2 + ""]);
|
|
11551
|
-
e = (c,
|
|
11843
|
+
e = (c, f4) => (f4 ? c : c.replace(/\r?\n|\r/g, "\r\n")).replace(/\n/g, "%0A").replace(/\r/g, "%0D").replace(/"/g, "%22");
|
|
11552
11844
|
x = (n, a, e2) => {
|
|
11553
11845
|
if (a.length < e2) {
|
|
11554
11846
|
throw new TypeError(`Failed to execute '${n}' on 'FormData': ${e2} arguments required, but only ${a.length} present.`);
|
|
@@ -11597,14 +11889,14 @@ var init_esm_min = __esm({
|
|
|
11597
11889
|
}
|
|
11598
11890
|
forEach(a, b2) {
|
|
11599
11891
|
x("forEach", arguments, 1);
|
|
11600
|
-
for (var [c,
|
|
11892
|
+
for (var [c, d] of this) a.call(b2, d, c, this);
|
|
11601
11893
|
}
|
|
11602
11894
|
set(...a) {
|
|
11603
11895
|
x("set", arguments, 2);
|
|
11604
11896
|
var b2 = [], c = true;
|
|
11605
11897
|
a = f(...a);
|
|
11606
|
-
this.#d.forEach((
|
|
11607
|
-
|
|
11898
|
+
this.#d.forEach((d) => {
|
|
11899
|
+
d[0] === a[0] ? c && (c = !b2.push(a)) : b2.push(d);
|
|
11608
11900
|
});
|
|
11609
11901
|
c && b2.push(a);
|
|
11610
11902
|
this.#d = b2;
|
|
@@ -11742,11 +12034,11 @@ function _fileName(headerValue) {
|
|
|
11742
12034
|
});
|
|
11743
12035
|
return filename;
|
|
11744
12036
|
}
|
|
11745
|
-
async function toFormData(Body2,
|
|
11746
|
-
if (!/multipart/i.test(
|
|
12037
|
+
async function toFormData(Body2, ct2) {
|
|
12038
|
+
if (!/multipart/i.test(ct2)) {
|
|
11747
12039
|
throw new TypeError("Failed to fetch");
|
|
11748
12040
|
}
|
|
11749
|
-
const m3 =
|
|
12041
|
+
const m3 = ct2.match(/boundary=(?:"([^"]+)"|([^;]+))/i);
|
|
11750
12042
|
if (!m3) {
|
|
11751
12043
|
throw new TypeError("no or bad content-type header, no multipart boundary");
|
|
11752
12044
|
}
|
|
@@ -12205,8 +12497,8 @@ var init_body = __esm({
|
|
|
12205
12497
|
return buffer.slice(byteOffset, byteOffset + byteLength2);
|
|
12206
12498
|
}
|
|
12207
12499
|
async formData() {
|
|
12208
|
-
const
|
|
12209
|
-
if (
|
|
12500
|
+
const ct2 = this.headers.get("content-type");
|
|
12501
|
+
if (ct2.startsWith("application/x-www-form-urlencoded")) {
|
|
12210
12502
|
const formData = new FormData();
|
|
12211
12503
|
const parameters2 = new URLSearchParams(await this.text());
|
|
12212
12504
|
for (const [name, value] of parameters2) {
|
|
@@ -12215,7 +12507,7 @@ var init_body = __esm({
|
|
|
12215
12507
|
return formData;
|
|
12216
12508
|
}
|
|
12217
12509
|
const { toFormData: toFormData2 } = await Promise.resolve().then(() => (init_multipart_parser(), multipart_parser_exports));
|
|
12218
|
-
return toFormData2(this.body,
|
|
12510
|
+
return toFormData2(this.body, ct2);
|
|
12219
12511
|
}
|
|
12220
12512
|
/**
|
|
12221
12513
|
* Return raw response as Blob
|
|
@@ -12223,10 +12515,10 @@ var init_body = __esm({
|
|
|
12223
12515
|
* @return Promise
|
|
12224
12516
|
*/
|
|
12225
12517
|
async blob() {
|
|
12226
|
-
const
|
|
12518
|
+
const ct2 = this.headers && this.headers.get("content-type") || this[INTERNALS].body && this[INTERNALS].body.type || "";
|
|
12227
12519
|
const buf = await this.arrayBuffer();
|
|
12228
12520
|
return new fetch_blob_default([buf], {
|
|
12229
|
-
type:
|
|
12521
|
+
type: ct2
|
|
12230
12522
|
});
|
|
12231
12523
|
}
|
|
12232
12524
|
/**
|
|
@@ -13423,33 +13715,33 @@ var init_adf = __esm({
|
|
|
13423
13715
|
});
|
|
13424
13716
|
|
|
13425
13717
|
// node_modules/marked/lib/marked.esm.js
|
|
13426
|
-
function
|
|
13718
|
+
function A2() {
|
|
13427
13719
|
return { async: false, breaks: false, extensions: null, gfm: true, hooks: null, pedantic: false, renderer: null, silent: false, tokenizer: null, walkTokens: null };
|
|
13428
13720
|
}
|
|
13429
|
-
function
|
|
13430
|
-
|
|
13721
|
+
function j(l3) {
|
|
13722
|
+
R = l3;
|
|
13431
13723
|
}
|
|
13432
|
-
function
|
|
13724
|
+
function I(l3) {
|
|
13433
13725
|
let e2 = [];
|
|
13434
13726
|
return (t2) => {
|
|
13435
13727
|
let n = Math.max(0, Math.min(3, t2 - 1)), s2 = e2[n];
|
|
13436
13728
|
return s2 || (s2 = l3(n), e2[n] = s2), s2;
|
|
13437
13729
|
};
|
|
13438
13730
|
}
|
|
13439
|
-
function
|
|
13731
|
+
function k(l3, e2 = "") {
|
|
13440
13732
|
let t2 = typeof l3 == "string" ? l3 : l3.source, n = { replace: (s2, r2) => {
|
|
13441
13733
|
let i2 = typeof r2 == "string" ? r2 : r2.source;
|
|
13442
13734
|
return i2 = i2.replace(m2.caret, "$1"), t2 = t2.replace(s2, i2), n;
|
|
13443
13735
|
}, getRegex: () => new RegExp(t2, e2) };
|
|
13444
13736
|
return n;
|
|
13445
13737
|
}
|
|
13446
|
-
function
|
|
13738
|
+
function T(l3, e2) {
|
|
13447
13739
|
if (e2) {
|
|
13448
13740
|
if (m2.escapeTest.test(l3)) return l3.replace(m2.escapeReplace, ge);
|
|
13449
13741
|
} else if (m2.escapeTestNoEncode.test(l3)) return l3.replace(m2.escapeReplaceNoEncode, ge);
|
|
13450
13742
|
return l3;
|
|
13451
13743
|
}
|
|
13452
|
-
function
|
|
13744
|
+
function Y(l3) {
|
|
13453
13745
|
try {
|
|
13454
13746
|
l3 = encodeURI(l3).replace(m2.percentDecode, "%");
|
|
13455
13747
|
} catch {
|
|
@@ -13457,7 +13749,7 @@ function V(l3) {
|
|
|
13457
13749
|
}
|
|
13458
13750
|
return l3;
|
|
13459
13751
|
}
|
|
13460
|
-
function
|
|
13752
|
+
function ee(l3, e2) {
|
|
13461
13753
|
let t2 = l3.replace(m2.findPipe, (r2, i2, o) => {
|
|
13462
13754
|
let u = false, a = i2;
|
|
13463
13755
|
for (; --a >= 0 && o[a] === "\\"; ) u = !u;
|
|
@@ -13480,7 +13772,7 @@ function $(l3, e2, t2) {
|
|
|
13480
13772
|
}
|
|
13481
13773
|
return l3.slice(0, n - s2);
|
|
13482
13774
|
}
|
|
13483
|
-
function
|
|
13775
|
+
function te(l3) {
|
|
13484
13776
|
let e2 = l3.split(`
|
|
13485
13777
|
`), t2 = e2.length - 1;
|
|
13486
13778
|
for (; t2 >= 0 && m2.blankLine.test(e2[t2]); ) t2--;
|
|
@@ -13504,12 +13796,21 @@ function me(l3, e2 = 0) {
|
|
|
13504
13796
|
return n;
|
|
13505
13797
|
}
|
|
13506
13798
|
function xe(l3, e2, t2, n, s2) {
|
|
13507
|
-
let r2 = e2.href, i2 = e2.title || null, o = l3[1].replace(s2.other.outputLinkReplace, "$1");
|
|
13799
|
+
let r2 = e2.href, i2 = e2.title || null, o = l3[1].replace(s2.other.outputLinkReplace, "$1"), u = l3[0].charAt(0) === "!";
|
|
13508
13800
|
n.state.inLink = true;
|
|
13509
|
-
let
|
|
13510
|
-
|
|
13801
|
+
let a = n.state.linkEmitted, p = n.state.inRawBlock;
|
|
13802
|
+
n.state.linkEmitted = false;
|
|
13803
|
+
let c = n.inlineTokens(o), h2 = n.state.linkEmitted;
|
|
13804
|
+
if (n.state.linkEmitted = a, n.state.inLink = false, !u) {
|
|
13805
|
+
if (h2) {
|
|
13806
|
+
n.state.inRawBlock = p;
|
|
13807
|
+
return;
|
|
13808
|
+
}
|
|
13809
|
+
n.state.linkEmitted = true;
|
|
13810
|
+
}
|
|
13811
|
+
return { type: u ? "image" : "link", raw: t2, href: r2, title: i2, text: o, tokens: c };
|
|
13511
13812
|
}
|
|
13512
|
-
function
|
|
13813
|
+
function kt(l3, e2, t2) {
|
|
13513
13814
|
let n = l3.match(t2.other.indentCodeCompensation);
|
|
13514
13815
|
if (n === null) return e2;
|
|
13515
13816
|
let s2 = n[1];
|
|
@@ -13522,95 +13823,105 @@ function ot(l3, e2, t2) {
|
|
|
13522
13823
|
}).join(`
|
|
13523
13824
|
`);
|
|
13524
13825
|
}
|
|
13525
|
-
function
|
|
13826
|
+
function f3(l3, e2) {
|
|
13526
13827
|
return M.parse(l3, e2);
|
|
13527
13828
|
}
|
|
13528
|
-
|
|
13829
|
+
function dt(...l3) {
|
|
13830
|
+
return M.use(...l3), f3.defaults = M.defaults, j(f3.defaults), f3;
|
|
13831
|
+
}
|
|
13832
|
+
var R, z, Oe, m2, Te, we, ye, q, Pe, U, oe, ae, Se, K, _e, W, $e, Le, Q, X, Ee, le, ze, Me, Ae, J, se, Ie, Ce, Be, De, ue, qe, _, C, v, ve, He, pe, Ze, Ge, Qe, ce, Ne, je, Fe, Ue, he, Ke, We, Xe, Je, Ve, Ye, et, tt, nt, rt, st, it, ot, at, G, lt, ke, de, ut, ie, V, pt, F2, ct, H, B, ht, ge, y, x2, P, L, b, S2, Z2, M, nn, rn, sn, on, ln, un;
|
|
13529
13833
|
var init_marked_esm = __esm({
|
|
13530
13834
|
"node_modules/marked/lib/marked.esm.js"() {
|
|
13531
13835
|
"use strict";
|
|
13532
|
-
|
|
13533
|
-
|
|
13534
|
-
|
|
13836
|
+
R = A2();
|
|
13837
|
+
z = { exec: () => null };
|
|
13838
|
+
Oe = ((l3 = "") => {
|
|
13535
13839
|
try {
|
|
13536
13840
|
return !!new RegExp("(?<=1)(?<!1)" + l3);
|
|
13537
13841
|
} catch {
|
|
13538
13842
|
return false;
|
|
13539
13843
|
}
|
|
13540
13844
|
})();
|
|
13541
|
-
m2 = { codeRemoveIndent: /^(?: {1,4}| {0,3}\t)/gm, outputLinkReplace: /\\([\[\]])/g, indentCodeCompensation: /^(\s+)(?:```)/, beginningSpace: /^\s+/, endingHash: /#$/, startingSpaceChar: /^ /, endingSpaceChar: / $/, nonSpaceChar: /[^ ]/, newLineCharGlobal: /\n/g, tabCharGlobal: /\t/g, multipleSpaceGlobal: /\s+/g, blankLine: /^[ \t]*$/, doubleBlankLine: /\n[ \t]*\n[ \t]*$/, blockquoteStart: /^ {0,3}>/, blockquoteSetextReplace: /\n {0,3}((?:=+|-+) *)(?=\n|$)/g, blockquoteSetextReplace2: /^ {0,3}>[ \t]?/gm, listReplaceNesting: /^ {1,4}(?=( {4})*[^ ])/g, listIsTask: /^\[[ xX]\] +\S/, listReplaceTask: /^\[[ xX]\] +/, listTaskCheckbox: /\[[ xX]\]/, anyLine: /\n.*\n/, hrefBrackets: /^<(.*)>$/, tableDelimiter: /[:|]/, tableAlignChars: /^\||\| *$/g, tableRowBlankLine: /\n[ \t]*$/, tableAlignRight: /^ *-+: *$/, tableAlignCenter: /^ *:-+: *$/, tableAlignLeft: /^ *:-+ *$/, startATag: /^<a /i, endATag: /^<\/a>/i, startPreScriptTag: /^<(pre|code|kbd|script)(\s|>)/i, endPreScriptTag: /^<\/(pre|code|kbd|script)(\s|>)/i, startAngleBracket: /^</, endAngleBracket: />$/, pedanticHrefTitle: /^([^'"]*[^\s])\s+(['"])(.*)\2/, unicodeAlphaNumeric: /[\p{L}\p{N}]/u, escapeTest: /[&<>"']/, escapeReplace: /[&<>"']/g, escapeTestNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, escapeReplaceNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g, caret: /(^|[^\[])\^/g, percentDecode: /%25/g, findPipe: /\|/g, splitPipe: / \|/, slashPipe: /\\\|/g, carriageReturn: /\r\n|\r/g, spaceLine: /^ +$/gm, notSpaceStart: /^\S*/, endingNewline: /\n$/, listItemRegex: (l3) => new RegExp(`^( {0,3}${l3})((?:[ ][^\\n]*)?(?:\\n|$))`), nextBulletRegex:
|
|
13542
|
-
|
|
13845
|
+
m2 = { codeRemoveIndent: /^(?: {1,4}| {0,3}\t)/gm, outputLinkReplace: /\\([\[\]])/g, indentCodeCompensation: /^(\s+)(?:```)/, beginningSpace: /^\s+/, endingHash: /#$/, startingSpaceChar: /^ /, endingSpaceChar: / $/, nonSpaceChar: /[^ ]/, newLineCharGlobal: /\n/g, tabCharGlobal: /\t/g, multipleSpaceGlobal: /\s+/g, blankLine: /^[ \t]*$/, doubleBlankLine: /\n[ \t]*\n[ \t]*$/, blockquoteStart: /^ {0,3}>/, blockquoteSetextReplace: /\n {0,3}((?:=+|-+) *)(?=\n|$)/g, blockquoteSetextReplace2: /^ {0,3}>[ \t]?/gm, listReplaceNesting: /^ {1,4}(?=( {4})*[^ ])/g, listIsTask: /^\[[ xX]\] +\S/, listReplaceTask: /^\[[ xX]\] +/, listTaskCheckbox: /\[[ xX]\]/, anyLine: /\n.*\n/, hrefBrackets: /^<(.*)>$/, tableDelimiter: /[:|]/, tableAlignChars: /^\||\| *$/g, tableRowBlankLine: /\n[ \t]*$/, tableAlignRight: /^ *-+: *$/, tableAlignCenter: /^ *:-+: *$/, tableAlignLeft: /^ *:-+ *$/, startATag: /^<a /i, endATag: /^<\/a>/i, startPreScriptTag: /^<(pre|code|kbd|script)(\s|>)/i, endPreScriptTag: /^<\/(pre|code|kbd|script)(\s|>)/i, startAngleBracket: /^</, endAngleBracket: />$/, pedanticHrefTitle: /^([^'"]*[^\s])\s+(['"])(.*)\2/, unicodeAlphaNumeric: /[\p{L}\p{N}]/u, escapeTest: /[&<>"']/, escapeReplace: /[&<>"']/g, escapeTestNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, escapeReplaceNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g, caret: /(^|[^\[])\^/g, percentDecode: /%25/g, findPipe: /\|/g, splitPipe: / \|/, slashPipe: /\\\|/g, carriageReturn: /\r\n|\r/g, spaceLine: /^ +$/gm, notSpaceStart: /^\S*/, endingNewline: /\n$/, listItemRegex: (l3) => new RegExp(`^( {0,3}${l3})((?:[ ][^\\n]*)?(?:\\n|$))`), nextBulletRegex: I((l3) => new RegExp(`^ {0,${l3}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)), hrRegex: I((l3) => new RegExp(`^ {0,${l3}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)), fencesBeginRegex: I((l3) => new RegExp(`^ {0,${l3}}(?:\`\`\`|~~~)`)), headingBeginRegex: I((l3) => new RegExp(`^ {0,${l3}}#`)), htmlBeginRegex: I((l3) => new RegExp(`^ {0,${l3}}<(?:[a-z].*>|!--)`, "i")), blockquoteBeginRegex: I((l3) => new RegExp(`^ {0,${l3}}>`)) };
|
|
13846
|
+
Te = /^(?:[ \t]*(?:\n|$))+/;
|
|
13543
13847
|
we = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/;
|
|
13544
13848
|
ye = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/;
|
|
13545
|
-
|
|
13849
|
+
q = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/;
|
|
13546
13850
|
Pe = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/;
|
|
13547
|
-
|
|
13851
|
+
U = / {0,3}(?:[*+-]|\d{1,9}[.)])/;
|
|
13548
13852
|
oe = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/;
|
|
13549
|
-
ae =
|
|
13550
|
-
Se =
|
|
13551
|
-
|
|
13552
|
-
|
|
13553
|
-
|
|
13554
|
-
|
|
13555
|
-
|
|
13556
|
-
|
|
13557
|
-
|
|
13558
|
-
|
|
13559
|
-
le = (l3) =>
|
|
13853
|
+
ae = k(oe).replace(/bull/g, U).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}(?:\s|$)/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex();
|
|
13854
|
+
Se = k(oe).replace(/bull/g, U).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}(?:\s|$)/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex();
|
|
13855
|
+
K = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table|[ \t]+\n)[^\n]+)*)/;
|
|
13856
|
+
_e = /^[^\n]+/;
|
|
13857
|
+
W = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/;
|
|
13858
|
+
$e = k(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", W).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex();
|
|
13859
|
+
Le = k(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g, U).getRegex();
|
|
13860
|
+
Q = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul";
|
|
13861
|
+
X = /<!--(?:-?>|[\s\S]*?(?:-->|$))/;
|
|
13862
|
+
Ee = k("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n*|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>[^\\n]*\\n*|$)|<![A-Z][\\s\\S]*?(?:>[^\\n]*\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>[^\\n]*\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", X).replace("tag", Q).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex();
|
|
13863
|
+
le = (l3) => k(K).replace("hr", q).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", l3).replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Q).getRegex();
|
|
13560
13864
|
ze = le(/ {0,3}(?:[*+-]|1[.)])[ \t]+[^ \t\n]/);
|
|
13561
|
-
|
|
13562
|
-
|
|
13563
|
-
|
|
13564
|
-
se =
|
|
13565
|
-
|
|
13566
|
-
|
|
13865
|
+
Me = le(/ {0,3}(?:[*+-]|\d{1,9}[.)])(?:[ \t]|\n|$)/);
|
|
13866
|
+
Ae = k(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", Me).getRegex();
|
|
13867
|
+
J = { blockquote: Ae, code: we, def: $e, fences: ye, heading: Pe, hr: q, html: Ee, lheading: ae, list: Le, newline: Te, paragraph: ze, table: z, text: _e };
|
|
13868
|
+
se = k("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", q).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Q).getRegex();
|
|
13869
|
+
Ie = { ...J, lheading: Se, table: se, paragraph: k(K).replace("hr", q).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", se).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Q).getRegex() };
|
|
13870
|
+
Ce = { ...J, html: k(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment", X).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(), def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/, heading: /^(#{1,6})(.*)(?:\n+|$)/, fences: z, lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/, paragraph: k(K).replace("hr", q).replace("heading", ` *#{1,6} *[^
|
|
13567
13871
|
]`).replace("lheading", ae).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex() };
|
|
13568
13872
|
Be = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/;
|
|
13569
|
-
|
|
13873
|
+
De = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/;
|
|
13570
13874
|
ue = /^( {2,}|\\)\n(?!\s*$)/;
|
|
13571
|
-
|
|
13572
|
-
|
|
13573
|
-
|
|
13574
|
-
|
|
13575
|
-
ve =
|
|
13875
|
+
qe = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/;
|
|
13876
|
+
_ = /[\p{P}\p{S}]/u;
|
|
13877
|
+
C = /[\s\p{P}\p{S}]/u;
|
|
13878
|
+
v = /[^\s\p{P}\p{S}]/u;
|
|
13879
|
+
ve = k(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, C).getRegex();
|
|
13880
|
+
He = /[\p{Pi}\p{Ps}"']/u;
|
|
13576
13881
|
pe = /(?!~)[\p{P}\p{S}]/u;
|
|
13577
|
-
|
|
13578
|
-
|
|
13579
|
-
|
|
13882
|
+
Ze = /(?!~)[\s\p{P}\p{S}]/u;
|
|
13883
|
+
Ge = /(?:[^\s\p{P}\p{S}]|~)/u;
|
|
13884
|
+
Qe = k(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", Oe ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex();
|
|
13580
13885
|
ce = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/;
|
|
13581
|
-
Ne =
|
|
13582
|
-
|
|
13886
|
+
Ne = k(ce, "u").replace(/punct/g, _).getRegex();
|
|
13887
|
+
je = k(ce, "u").replace(/punct/g, pe).getRegex();
|
|
13888
|
+
Fe = /^(?:\*+(?:((?!\*)(?!openQuote)punct)|([^\s*]))?)|^_+(?:((?!_)(?!openQuote)punct)|([^\s_]))?/;
|
|
13889
|
+
Ue = k(Fe, "u").replace(/openQuote/g, He).replace(/punct/g, _).getRegex();
|
|
13583
13890
|
he = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)";
|
|
13584
|
-
|
|
13585
|
-
|
|
13586
|
-
|
|
13587
|
-
|
|
13588
|
-
|
|
13589
|
-
|
|
13590
|
-
|
|
13591
|
-
|
|
13592
|
-
|
|
13593
|
-
|
|
13594
|
-
|
|
13595
|
-
|
|
13596
|
-
|
|
13597
|
-
|
|
13598
|
-
|
|
13891
|
+
Ke = k(he, "gu").replace(/notPunctSpace/g, v).replace(/punctSpace/g, C).replace(/punct/g, _).getRegex();
|
|
13892
|
+
We = k(he, "gu").replace(/notPunctSpace/g, Ge).replace(/punctSpace/g, Ze).replace(/punct/g, pe).getRegex();
|
|
13893
|
+
Xe = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)[\\s](\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|(?:(?!\\*)punct|notPunctSpace)(\\*+)(?!\\*)(?=notPunctSpace)";
|
|
13894
|
+
Je = k(Xe, "gu").replace(/notPunctSpace/g, v).replace(/punctSpace/g, C).replace(/punct/g, _).getRegex();
|
|
13895
|
+
Ve = k("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, v).replace(/punctSpace/g, C).replace(/punct/g, _).getRegex();
|
|
13896
|
+
Ye = "^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)[\\s](_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)|(?:(?!_)punct|notPunctSpace)(_+)(?!_)(?=notPunctSpace)";
|
|
13897
|
+
et = k(Ye, "gu").replace(/notPunctSpace/g, v).replace(/punctSpace/g, C).replace(/punct/g, _).getRegex();
|
|
13898
|
+
tt = k(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, _).getRegex();
|
|
13899
|
+
nt = "^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)";
|
|
13900
|
+
rt = k(nt, "gu").replace(/notPunctSpace/g, v).replace(/punctSpace/g, C).replace(/punct/g, _).getRegex();
|
|
13901
|
+
st = k(/\\(punct)/, "gu").replace(/punct/g, _).getRegex();
|
|
13902
|
+
it = k(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex();
|
|
13903
|
+
ot = k(X).replace("(?:-->|$)", "-->").getRegex();
|
|
13904
|
+
at = k("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", ot).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex();
|
|
13905
|
+
G = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/;
|
|
13906
|
+
lt = k(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", G).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]+|(?=\))/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex();
|
|
13907
|
+
ke = k(/^!?\[(label)\]\[(ref)\]/).replace("label", G).replace("ref", W).getRegex();
|
|
13908
|
+
de = k(/^!?\[(ref)\](?:\[\])?/).replace("ref", W).getRegex();
|
|
13909
|
+
ut = k("reflink|nolink(?!\\()", "g").replace("reflink", ke).replace("nolink", de).getRegex();
|
|
13599
13910
|
ie = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/;
|
|
13600
|
-
|
|
13601
|
-
|
|
13602
|
-
|
|
13603
|
-
|
|
13604
|
-
|
|
13605
|
-
|
|
13606
|
-
|
|
13607
|
-
ge = (l3) =>
|
|
13608
|
-
|
|
13911
|
+
V = { _backpedal: z, anyPunctuation: st, autolink: it, blockSkip: Qe, br: ue, code: De, del: z, delLDelim: z, delRDelim: z, emStrongLDelim: Ne, emStrongRDelimAst: Ke, emStrongRDelimUnd: Ve, escape: Be, link: lt, nolink: de, punctuation: ve, reflink: ke, reflinkSearch: ut, tag: at, text: qe, url: z };
|
|
13912
|
+
pt = { ...V, emStrongLDelim: Ue, emStrongRDelimAst: Je, emStrongRDelimUnd: et, link: k(/^!?\[(label)\]\((.*?)\)/).replace("label", G).getRegex(), reflink: k(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", G).getRegex() };
|
|
13913
|
+
F2 = { ...V, emStrongRDelimAst: We, emStrongLDelim: je, delLDelim: tt, delRDelim: rt, url: k(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", ie).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(), _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/, del: /^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/, text: k(/^(`+|~+|[^`~])(?:(?=[`~])|(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", ie).getRegex() };
|
|
13914
|
+
ct = { ...F2, br: k(ue).replace("{2,}", "*").getRegex(), text: k(F2.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex() };
|
|
13915
|
+
H = { normal: J, gfm: Ie, pedantic: Ce };
|
|
13916
|
+
B = { normal: V, gfm: F2, breaks: ct, pedantic: pt };
|
|
13917
|
+
ht = { "&": "&", "<": "<", ">": ">", '"': """, "'": "'" };
|
|
13918
|
+
ge = (l3) => ht[l3];
|
|
13919
|
+
y = class {
|
|
13609
13920
|
options;
|
|
13610
13921
|
rules;
|
|
13611
13922
|
lexer;
|
|
13612
13923
|
constructor(e2) {
|
|
13613
|
-
this.options = e2 ||
|
|
13924
|
+
this.options = e2 || R;
|
|
13614
13925
|
}
|
|
13615
13926
|
space(e2) {
|
|
13616
13927
|
let t2 = this.rules.block.newline.exec(e2);
|
|
@@ -13619,14 +13930,14 @@ var init_marked_esm = __esm({
|
|
|
13619
13930
|
code(e2) {
|
|
13620
13931
|
let t2 = this.rules.block.code.exec(e2);
|
|
13621
13932
|
if (t2) {
|
|
13622
|
-
let n = this.options.pedantic ? t2[0] :
|
|
13933
|
+
let n = this.options.pedantic ? t2[0] : te(t2[0]), s2 = n.replace(this.rules.other.codeRemoveIndent, "");
|
|
13623
13934
|
return { type: "code", raw: n, codeBlockStyle: "indented", text: s2 };
|
|
13624
13935
|
}
|
|
13625
13936
|
}
|
|
13626
13937
|
fences(e2) {
|
|
13627
13938
|
let t2 = this.rules.block.fences.exec(e2);
|
|
13628
13939
|
if (t2) {
|
|
13629
|
-
let n = t2[0], s2 =
|
|
13940
|
+
let n = t2[0], s2 = kt(n, t2[3] || "", this.rules);
|
|
13630
13941
|
return { type: "code", raw: n, lang: t2[2] ? t2[2].trim().replace(this.rules.inline.anyPunctuation, "$1") : t2[2], text: s2 };
|
|
13631
13942
|
}
|
|
13632
13943
|
}
|
|
@@ -13667,19 +13978,20 @@ ${p}` : p, r2 = r2 ? `${r2}
|
|
|
13667
13978
|
${c}` : c;
|
|
13668
13979
|
let h2 = this.lexer.state.top;
|
|
13669
13980
|
if (this.lexer.state.top = true, this.lexer.blockTokens(c, i2, true), this.lexer.state.top = h2, n.length === 0) break;
|
|
13670
|
-
let
|
|
13671
|
-
if (
|
|
13672
|
-
if (
|
|
13673
|
-
let
|
|
13674
|
-
` +
|
|
13675
|
-
`),
|
|
13676
|
-
i2[i2.length - 1] =
|
|
13981
|
+
let d = i2.at(-1);
|
|
13982
|
+
if (d?.type === "code") break;
|
|
13983
|
+
if (d?.type === "blockquote") {
|
|
13984
|
+
let O = d, g = n.join(`
|
|
13985
|
+
`), w = O.raw + `
|
|
13986
|
+
` + g.replace(this.rules.other.blockquoteSetextReplace2, ""), E = this.blockquote(w);
|
|
13987
|
+
i2[i2.length - 1] = E, s2 = `${s2}
|
|
13988
|
+
${g}`, r2 = r2.substring(0, r2.length - O.text.length) + E.text;
|
|
13677
13989
|
break;
|
|
13678
|
-
} else if (
|
|
13679
|
-
let
|
|
13990
|
+
} else if (d?.type === "list") {
|
|
13991
|
+
let O = d, g = O.raw + `
|
|
13680
13992
|
` + n.join(`
|
|
13681
|
-
`),
|
|
13682
|
-
i2[i2.length - 1] =
|
|
13993
|
+
`), w = this.list(g);
|
|
13994
|
+
i2[i2.length - 1] = w, s2 = s2.substring(0, s2.length - d.raw.length) + w.raw, r2 = r2.substring(0, r2.length - O.raw.length) + w.raw, n = g.substring(i2.at(-1).raw.length).split(`
|
|
13683
13995
|
`);
|
|
13684
13996
|
continue;
|
|
13685
13997
|
}
|
|
@@ -13698,24 +14010,24 @@ ${c}` : c;
|
|
|
13698
14010
|
if (!(t2 = i2.exec(e2)) || this.rules.block.hr.test(e2)) break;
|
|
13699
14011
|
p = t2[0], e2 = e2.substring(p.length);
|
|
13700
14012
|
let h2 = me(t2[2].split(`
|
|
13701
|
-
`, 1)[0], t2[1].length),
|
|
13702
|
-
`, 1)[0],
|
|
13703
|
-
if (this.options.pedantic ? (
|
|
13704
|
-
`, e2 = e2.substring(
|
|
13705
|
-
let
|
|
14013
|
+
`, 1)[0], t2[1].length), d = e2.split(`
|
|
14014
|
+
`, 1)[0], O = !h2.trim(), g = 0;
|
|
14015
|
+
if (this.options.pedantic ? (g = 2, c = h2.trimStart()) : O ? g = t2[1].length + 1 : (g = h2.search(this.rules.other.nonSpaceChar), g = g > 4 ? 1 : g, c = h2.slice(g), g += t2[1].length), O && this.rules.other.blankLine.test(d) && (p += d + `
|
|
14016
|
+
`, e2 = e2.substring(d.length + 1), a = true), !a) {
|
|
14017
|
+
let w = this.rules.other.nextBulletRegex(g), E = this.rules.other.hrRegex(g), ne = this.rules.other.fencesBeginRegex(g), re = this.rules.other.headingBeginRegex(g), be = this.rules.other.htmlBeginRegex(g), Re = this.rules.other.blockquoteBeginRegex(g);
|
|
13706
14018
|
for (; e2; ) {
|
|
13707
|
-
let
|
|
13708
|
-
`, 1)[0],
|
|
13709
|
-
if (
|
|
13710
|
-
if (
|
|
13711
|
-
` +
|
|
14019
|
+
let N = e2.split(`
|
|
14020
|
+
`, 1)[0], D;
|
|
14021
|
+
if (d = N, this.options.pedantic ? (d = d.replace(this.rules.other.listReplaceNesting, " "), D = d) : D = d.replace(this.rules.other.tabCharGlobal, " "), ne.test(d) || re.test(d) || be.test(d) || Re.test(d) || w.test(d) || E.test(d)) break;
|
|
14022
|
+
if (D.search(this.rules.other.nonSpaceChar) >= g || !d.trim()) c += `
|
|
14023
|
+
` + D.slice(g);
|
|
13712
14024
|
else {
|
|
13713
|
-
if (
|
|
14025
|
+
if (O || h2.replace(this.rules.other.tabCharGlobal, " ").search(this.rules.other.nonSpaceChar) >= 4 || ne.test(h2) || re.test(h2) || E.test(h2)) break;
|
|
13714
14026
|
c += `
|
|
13715
|
-
` +
|
|
14027
|
+
` + d;
|
|
13716
14028
|
}
|
|
13717
|
-
|
|
13718
|
-
`, e2 = e2.substring(
|
|
14029
|
+
O = !d.trim(), p += N + `
|
|
14030
|
+
`, e2 = e2.substring(N.length + 1), h2 = D.slice(g);
|
|
13719
14031
|
}
|
|
13720
14032
|
}
|
|
13721
14033
|
r2.loose || (o ? r2.loose = true : this.rules.other.doubleBlankLine.test(p) && (o = true)), r2.items.push({ type: "list_item", raw: p, task: !!this.options.gfm && this.rules.other.listIsTask.test(c), loose: false, text: c, tokens: [] }), r2.raw += p;
|
|
@@ -13724,8 +14036,11 @@ ${c}` : c;
|
|
|
13724
14036
|
if (u) u.raw = u.raw.trimEnd(), u.text = u.text.trimEnd();
|
|
13725
14037
|
else return;
|
|
13726
14038
|
r2.raw = r2.raw.trimEnd();
|
|
14039
|
+
for (let a of r2.items) if (this.lexer.state.top = false, a.tokens = this.lexer.blockTokens(a.text, []), !r2.loose) {
|
|
14040
|
+
let p = a.tokens.filter((h2) => h2.type === "space"), c = p.length > 0 && p.some((h2) => this.rules.other.anyLine.test(h2.raw));
|
|
14041
|
+
r2.loose = c;
|
|
14042
|
+
}
|
|
13727
14043
|
for (let a of r2.items) {
|
|
13728
|
-
this.lexer.state.top = false, a.tokens = this.lexer.blockTokens(a.text, []);
|
|
13729
14044
|
let p = a.tokens[0];
|
|
13730
14045
|
if (a.task && (p?.type === "text" || p?.type === "paragraph")) {
|
|
13731
14046
|
a.text = a.text.replace(this.rules.other.listReplaceTask, ""), p.raw = p.raw.replace(this.rules.other.listReplaceTask, ""), p.text = p.text.replace(this.rules.other.listReplaceTask, "");
|
|
@@ -13739,10 +14054,6 @@ ${c}` : c;
|
|
|
13739
14054
|
a.checked = h2.checked, r2.loose ? a.tokens[0] && ["paragraph", "text"].includes(a.tokens[0].type) && "tokens" in a.tokens[0] && a.tokens[0].tokens ? (a.tokens[0].raw = h2.raw + a.tokens[0].raw, a.tokens[0].text = h2.raw + a.tokens[0].text, a.tokens[0].tokens.unshift(h2)) : a.tokens.unshift({ type: "paragraph", raw: h2.raw, text: h2.raw, tokens: [h2] }) : a.tokens.unshift(h2);
|
|
13740
14055
|
}
|
|
13741
14056
|
} else a.task && (a.task = false);
|
|
13742
|
-
if (!r2.loose) {
|
|
13743
|
-
let c = a.tokens.filter((k) => k.type === "space"), h2 = c.length > 0 && c.some((k) => this.rules.other.anyLine.test(k.raw));
|
|
13744
|
-
r2.loose = h2;
|
|
13745
|
-
}
|
|
13746
14057
|
}
|
|
13747
14058
|
if (r2.loose) for (let a of r2.items) {
|
|
13748
14059
|
a.loose = true;
|
|
@@ -13754,7 +14065,7 @@ ${c}` : c;
|
|
|
13754
14065
|
html(e2) {
|
|
13755
14066
|
let t2 = this.rules.block.html.exec(e2);
|
|
13756
14067
|
if (t2) {
|
|
13757
|
-
let n =
|
|
14068
|
+
let n = te(t2[0]);
|
|
13758
14069
|
return { type: "html", block: true, raw: n, pre: t2[1] === "pre" || t2[1] === "script" || t2[1] === "style", text: n };
|
|
13759
14070
|
}
|
|
13760
14071
|
}
|
|
@@ -13769,13 +14080,13 @@ ${c}` : c;
|
|
|
13769
14080
|
table(e2) {
|
|
13770
14081
|
let t2 = this.rules.block.table.exec(e2);
|
|
13771
14082
|
if (!t2 || !this.rules.other.tableDelimiter.test(t2[2])) return;
|
|
13772
|
-
let n =
|
|
14083
|
+
let n = ee(t2[1]), s2 = t2[2].replace(this.rules.other.tableAlignChars, "").split("|"), r2 = t2[3]?.trim() ? t2[3].replace(this.rules.other.tableRowBlankLine, "").split(`
|
|
13773
14084
|
`) : [], i2 = { type: "table", raw: $(t2[0], `
|
|
13774
14085
|
`), header: [], align: [], rows: [] };
|
|
13775
14086
|
if (n.length === s2.length) {
|
|
13776
14087
|
for (let o of s2) this.rules.other.tableAlignRight.test(o) ? i2.align.push("right") : this.rules.other.tableAlignCenter.test(o) ? i2.align.push("center") : this.rules.other.tableAlignLeft.test(o) ? i2.align.push("left") : i2.align.push(null);
|
|
13777
14088
|
for (let o = 0; o < n.length; o++) i2.header.push({ text: n[o], tokens: this.lexer.inline(n[o]), header: true, align: i2.align[o] });
|
|
13778
|
-
for (let o of r2) i2.rows.push(
|
|
14089
|
+
for (let o of r2) i2.rows.push(ee(o, i2.header.length).map((u, a) => ({ text: u, tokens: this.lexer.inline(u), header: false, align: i2.align[a] })));
|
|
13779
14090
|
return i2;
|
|
13780
14091
|
}
|
|
13781
14092
|
}
|
|
@@ -13846,25 +14157,28 @@ ${c}` : c;
|
|
|
13846
14157
|
let s2 = this.rules.inline.emStrongLDelim.exec(e2);
|
|
13847
14158
|
if (!s2 || !s2[1] && !s2[2] && !s2[3] && !s2[4] || s2[4] && n.match(this.rules.other.unicodeAlphaNumeric)) return;
|
|
13848
14159
|
if (!(s2[1] || s2[3] || "") || !n || this.rules.inline.punctuation.exec(n)) {
|
|
13849
|
-
let i2 = [...s2[0]].length - 1, o, u, a = i2, p = 0, c = s2[0][0] === "*" ? this.rules.inline.emStrongRDelimAst : this.rules.inline.emStrongRDelimUnd;
|
|
13850
|
-
for (
|
|
14160
|
+
let i2 = [...s2[0]].length - 1, o, u, a = i2, p = 0, c = s2[0][0], h2 = n === c, d = c === "*" ? this.rules.inline.emStrongRDelimAst : this.rules.inline.emStrongRDelimUnd;
|
|
14161
|
+
for (d.lastIndex = 0, t2 = t2.slice(-1 * e2.length + i2); (s2 = d.exec(t2)) !== null; ) {
|
|
13851
14162
|
if (o = s2[1] || s2[2] || s2[3] || s2[4] || s2[5] || s2[6], !o) continue;
|
|
13852
14163
|
if (u = [...o].length, s2[3] || s2[4]) {
|
|
13853
14164
|
a += u;
|
|
13854
14165
|
continue;
|
|
13855
|
-
} else if (
|
|
13856
|
-
|
|
13857
|
-
|
|
14166
|
+
} else if (s2[5] || s2[6]) {
|
|
14167
|
+
if (i2 % 3 && !((i2 + u) % 3)) {
|
|
14168
|
+
p += u;
|
|
14169
|
+
continue;
|
|
14170
|
+
}
|
|
14171
|
+
if (h2) break;
|
|
13858
14172
|
}
|
|
13859
14173
|
if (a -= u, a > 0) continue;
|
|
13860
14174
|
u = Math.min(u, u + a + p);
|
|
13861
|
-
let
|
|
14175
|
+
let O = [...s2[0]][0].length, g = e2.slice(0, i2 + s2.index + O + u);
|
|
13862
14176
|
if (Math.min(i2, u) % 2) {
|
|
13863
|
-
let
|
|
13864
|
-
return { type: "em", raw:
|
|
14177
|
+
let E = g.slice(1, -1);
|
|
14178
|
+
return { type: "em", raw: g, text: E, tokens: this.lexer.inlineTokens(E) };
|
|
13865
14179
|
}
|
|
13866
|
-
let
|
|
13867
|
-
return { type: "strong", raw:
|
|
14180
|
+
let w = g.slice(2, -2);
|
|
14181
|
+
return { type: "strong", raw: g, text: w, tokens: this.lexer.inlineTokens(w) };
|
|
13868
14182
|
}
|
|
13869
14183
|
}
|
|
13870
14184
|
}
|
|
@@ -13892,8 +14206,8 @@ ${c}` : c;
|
|
|
13892
14206
|
}
|
|
13893
14207
|
if (a -= u, a > 0) continue;
|
|
13894
14208
|
u = Math.min(u, u + a);
|
|
13895
|
-
let c = [...s2[0]][0].length, h2 = e2.slice(0, i2 + s2.index + c + u),
|
|
13896
|
-
return { type: "del", raw: h2, text:
|
|
14209
|
+
let c = [...s2[0]][0].length, h2 = e2.slice(0, i2 + s2.index + c + u), d = h2.slice(i2, -i2);
|
|
14210
|
+
return { type: "del", raw: h2, text: d, tokens: this.lexer.inlineTokens(d) };
|
|
13897
14211
|
}
|
|
13898
14212
|
}
|
|
13899
14213
|
}
|
|
@@ -13934,12 +14248,12 @@ ${c}` : c;
|
|
|
13934
14248
|
inlineQueue;
|
|
13935
14249
|
tokenizer;
|
|
13936
14250
|
constructor(e2) {
|
|
13937
|
-
this.tokens = [], this.tokens.links = /* @__PURE__ */ Object.create(null), this.options = e2 ||
|
|
13938
|
-
let t2 = { other: m2, block:
|
|
13939
|
-
this.options.pedantic ? (t2.block =
|
|
14251
|
+
this.tokens = [], this.tokens.links = /* @__PURE__ */ Object.create(null), this.options = e2 || R, this.options.tokenizer = this.options.tokenizer || new y(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = { inLink: false, inRawBlock: false, linkEmitted: false, top: true };
|
|
14252
|
+
let t2 = { other: m2, block: H.normal, inline: B.normal };
|
|
14253
|
+
this.options.pedantic ? (t2.block = H.pedantic, t2.inline = B.pedantic) : this.options.gfm && (t2.block = H.gfm, this.options.breaks ? t2.inline = B.breaks : t2.inline = B.gfm), this.tokenizer.rules = t2;
|
|
13940
14254
|
}
|
|
13941
14255
|
static get rules() {
|
|
13942
|
-
return { block:
|
|
14256
|
+
return { block: H, inline: B };
|
|
13943
14257
|
}
|
|
13944
14258
|
static lex(e2, t2) {
|
|
13945
14259
|
return new l(t2).lex(e2);
|
|
@@ -14058,14 +14372,32 @@ ${c}` : c;
|
|
|
14058
14372
|
inline(e2, t2 = []) {
|
|
14059
14373
|
return this.inlineQueue.push({ src: e2, tokens: t2 }), t2;
|
|
14060
14374
|
}
|
|
14375
|
+
linkInText(e2) {
|
|
14376
|
+
if (!e2.includes("[")) return false;
|
|
14377
|
+
let t2 = this.tokenizer.rules.inline.link;
|
|
14378
|
+
for (let n of e2.matchAll(this.tokenizer.rules.inline.blockSkip)) if (t2.test(n[0]) && e2.charAt(n.index - 1) !== "!") return true;
|
|
14379
|
+
for (let n of e2.matchAll(this.tokenizer.rules.inline.reflinkSearch)) {
|
|
14380
|
+
let s2 = n[0], r2 = s2.lastIndexOf("[");
|
|
14381
|
+
if (!(s2.charAt(0) === "!" || !Object.hasOwn(this.tokens.links, s2.slice(r2 + 1, -1))) && !(r2 > 1 && this.linkInText(s2.slice(1, r2 - 1)))) return true;
|
|
14382
|
+
}
|
|
14383
|
+
return false;
|
|
14384
|
+
}
|
|
14061
14385
|
inlineTokens(e2, t2 = []) {
|
|
14062
14386
|
this.tokenizer.lexer = this;
|
|
14063
14387
|
let n = e2;
|
|
14064
|
-
if (this.tokens.links) {
|
|
14065
|
-
let o =
|
|
14066
|
-
|
|
14388
|
+
if (this.tokens.links && e2.includes("[")) {
|
|
14389
|
+
let o = this.tokenizer.rules.inline.reflinkSearch, u = (a) => {
|
|
14390
|
+
let p = a.lastIndexOf("[");
|
|
14391
|
+
if (!Object.hasOwn(this.tokens.links, a.slice(p + 1, -1))) return a;
|
|
14392
|
+
if (p > 1 && a.charAt(0) !== "!") {
|
|
14393
|
+
let c = a.slice(1, p - 1);
|
|
14394
|
+
if (this.linkInText(c)) return "[" + c.replace(o, u) + "][" + "a".repeat(a.length - p - 2) + "]";
|
|
14395
|
+
}
|
|
14396
|
+
return "[" + "a".repeat(a.length - 2) + "]";
|
|
14397
|
+
};
|
|
14398
|
+
n = n.replace(o, u);
|
|
14067
14399
|
}
|
|
14068
|
-
n = n.replace(this.tokenizer.rules.inline.anyPunctuation, "
|
|
14400
|
+
n = n.replace(this.tokenizer.rules.inline.anyPunctuation, (o) => "+".repeat(o.length)), n = n.replace(this.tokenizer.rules.inline.blockSkip, (o, u, a) => {
|
|
14069
14401
|
let p = a ? a.length : 0;
|
|
14070
14402
|
return o.slice(0, p) + "[" + "a".repeat(o.length - p - 2) + "]";
|
|
14071
14403
|
}), n = this.options.hooks?.emStrongMask?.call({ lexer: this }, n) ?? n;
|
|
@@ -14147,11 +14479,11 @@ ${c}` : c;
|
|
|
14147
14479
|
else throw new Error(t2);
|
|
14148
14480
|
}
|
|
14149
14481
|
};
|
|
14150
|
-
|
|
14482
|
+
P = class {
|
|
14151
14483
|
options;
|
|
14152
14484
|
parser;
|
|
14153
14485
|
constructor(e2) {
|
|
14154
|
-
this.options = e2 ||
|
|
14486
|
+
this.options = e2 || R;
|
|
14155
14487
|
}
|
|
14156
14488
|
space(e2) {
|
|
14157
14489
|
return "";
|
|
@@ -14159,8 +14491,8 @@ ${c}` : c;
|
|
|
14159
14491
|
code({ text: e2, lang: t2, escaped: n }) {
|
|
14160
14492
|
let s2 = (t2 || "").match(m2.notSpaceStart)?.[0], r2 = e2.replace(m2.endingNewline, "") + `
|
|
14161
14493
|
`;
|
|
14162
|
-
return s2 ? '<pre><code class="language-' +
|
|
14163
|
-
` : "<pre><code>" + (n ? r2 :
|
|
14494
|
+
return s2 ? '<pre><code class="language-' + T(s2) + '">' + (n ? r2 : T(r2, true)) + `</code></pre>
|
|
14495
|
+
` : "<pre><code>" + (n ? r2 : T(r2, true)) + `</code></pre>
|
|
14164
14496
|
`;
|
|
14165
14497
|
}
|
|
14166
14498
|
blockquote({ tokens: e2 }) {
|
|
@@ -14238,7 +14570,7 @@ ${e2}</tr>
|
|
|
14238
14570
|
return `<em>${this.parser.parseInline(e2)}</em>`;
|
|
14239
14571
|
}
|
|
14240
14572
|
codespan({ text: e2 }) {
|
|
14241
|
-
return `<code>${
|
|
14573
|
+
return `<code>${T(e2, true)}</code>`;
|
|
14242
14574
|
}
|
|
14243
14575
|
br(e2) {
|
|
14244
14576
|
return "<br>";
|
|
@@ -14247,22 +14579,22 @@ ${e2}</tr>
|
|
|
14247
14579
|
return `<del>${this.parser.parseInline(e2)}</del>`;
|
|
14248
14580
|
}
|
|
14249
14581
|
link({ href: e2, title: t2, tokens: n }) {
|
|
14250
|
-
let s2 = this.parser.parseInline(n), r2 =
|
|
14582
|
+
let s2 = this.parser.parseInline(n), r2 = Y(e2);
|
|
14251
14583
|
if (r2 === null) return s2;
|
|
14252
14584
|
e2 = r2;
|
|
14253
14585
|
let i2 = '<a href="' + e2 + '"';
|
|
14254
|
-
return t2 && (i2 += ' title="' +
|
|
14586
|
+
return t2 && (i2 += ' title="' + T(t2) + '"'), i2 += ">" + s2 + "</a>", i2;
|
|
14255
14587
|
}
|
|
14256
14588
|
image({ href: e2, title: t2, text: n, tokens: s2 }) {
|
|
14257
14589
|
s2 && (n = this.parser.parseInline(s2, this.parser.textRenderer));
|
|
14258
|
-
let r2 =
|
|
14259
|
-
if (r2 === null) return
|
|
14590
|
+
let r2 = Y(e2);
|
|
14591
|
+
if (r2 === null) return T(n);
|
|
14260
14592
|
e2 = r2;
|
|
14261
|
-
let i2 = `<img src="${e2}" alt="${
|
|
14262
|
-
return t2 && (i2 += ` title="${
|
|
14593
|
+
let i2 = `<img src="${e2}" alt="${T(n)}"`;
|
|
14594
|
+
return t2 && (i2 += ` title="${T(t2)}"`), i2 += ">", i2;
|
|
14263
14595
|
}
|
|
14264
14596
|
text(e2) {
|
|
14265
|
-
return "tokens" in e2 && e2.tokens ? this.parser.parseInline(e2.tokens) : "escaped" in e2 && e2.escaped ? e2.text :
|
|
14597
|
+
return "tokens" in e2 && e2.tokens ? this.parser.parseInline(e2.tokens) : "escaped" in e2 && e2.escaped ? e2.text : T(e2.text);
|
|
14266
14598
|
}
|
|
14267
14599
|
};
|
|
14268
14600
|
L = class {
|
|
@@ -14302,7 +14634,7 @@ ${e2}</tr>
|
|
|
14302
14634
|
renderer;
|
|
14303
14635
|
textRenderer;
|
|
14304
14636
|
constructor(e2) {
|
|
14305
|
-
this.options = e2 ||
|
|
14637
|
+
this.options = e2 || R, this.options.renderer = this.options.renderer || new P(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new L();
|
|
14306
14638
|
}
|
|
14307
14639
|
static parse(e2, t2) {
|
|
14308
14640
|
return new l2(t2).parse(e2);
|
|
@@ -14317,7 +14649,7 @@ ${e2}</tr>
|
|
|
14317
14649
|
let s2 = e2[n];
|
|
14318
14650
|
if (this.options.extensions?.renderers?.[s2.type]) {
|
|
14319
14651
|
let i2 = s2, o = this.options.extensions.renderers[i2.type].call({ parser: this }, i2);
|
|
14320
|
-
if (o !== false || !["space", "hr", "heading", "code", "table", "blockquote", "list", "html", "def", "paragraph", "text"].includes(i2.type)) {
|
|
14652
|
+
if (o !== false || !["space", "hr", "heading", "code", "table", "blockquote", "list", "checkbox", "html", "def", "paragraph", "text"].includes(i2.type)) {
|
|
14321
14653
|
t2 += o || "";
|
|
14322
14654
|
continue;
|
|
14323
14655
|
}
|
|
@@ -14388,7 +14720,7 @@ ${e2}</tr>
|
|
|
14388
14720
|
let r2 = e2[s2];
|
|
14389
14721
|
if (this.options.extensions?.renderers?.[r2.type]) {
|
|
14390
14722
|
let o = this.options.extensions.renderers[r2.type].call({ parser: this }, r2);
|
|
14391
|
-
if (o !== false || !["escape", "html", "link", "image", "strong", "em", "codespan", "br", "del", "text"].includes(r2.type)) {
|
|
14723
|
+
if (o !== false || !["escape", "html", "link", "image", "checkbox", "strong", "em", "codespan", "br", "del", "text"].includes(r2.type)) {
|
|
14392
14724
|
n += o || "";
|
|
14393
14725
|
continue;
|
|
14394
14726
|
}
|
|
@@ -14449,11 +14781,11 @@ ${e2}</tr>
|
|
|
14449
14781
|
return n;
|
|
14450
14782
|
}
|
|
14451
14783
|
};
|
|
14452
|
-
|
|
14784
|
+
S2 = class {
|
|
14453
14785
|
options;
|
|
14454
14786
|
block;
|
|
14455
14787
|
constructor(e2) {
|
|
14456
|
-
this.options = e2 ||
|
|
14788
|
+
this.options = e2 || R;
|
|
14457
14789
|
}
|
|
14458
14790
|
static passThroughHooks = /* @__PURE__ */ new Set(["preprocess", "postprocess", "processAllTokens", "emStrongMask"]);
|
|
14459
14791
|
static passThroughHooksRespectAsync = /* @__PURE__ */ new Set(["preprocess", "postprocess", "processAllTokens"]);
|
|
@@ -14476,17 +14808,17 @@ ${e2}</tr>
|
|
|
14476
14808
|
return e2 ? b.parse : b.parseInline;
|
|
14477
14809
|
}
|
|
14478
14810
|
};
|
|
14479
|
-
|
|
14480
|
-
defaults =
|
|
14811
|
+
Z2 = class {
|
|
14812
|
+
defaults = A2();
|
|
14481
14813
|
options = this.setOptions;
|
|
14482
14814
|
parse = this.parseMarkdown(true);
|
|
14483
14815
|
parseInline = this.parseMarkdown(false);
|
|
14484
14816
|
Parser = b;
|
|
14485
|
-
Renderer =
|
|
14817
|
+
Renderer = P;
|
|
14486
14818
|
TextRenderer = L;
|
|
14487
14819
|
Lexer = x2;
|
|
14488
|
-
Tokenizer =
|
|
14489
|
-
Hooks =
|
|
14820
|
+
Tokenizer = y;
|
|
14821
|
+
Hooks = S2;
|
|
14490
14822
|
constructor(...e2) {
|
|
14491
14823
|
this.use(...e2);
|
|
14492
14824
|
}
|
|
@@ -14534,7 +14866,7 @@ ${e2}</tr>
|
|
|
14534
14866
|
}
|
|
14535
14867
|
"childTokens" in r2 && r2.childTokens && (t2.childTokens[r2.name] = r2.childTokens);
|
|
14536
14868
|
}), s2.extensions = t2), n.renderer) {
|
|
14537
|
-
let r2 = this.defaults.renderer || new
|
|
14869
|
+
let r2 = this.defaults.renderer || new P(this.defaults);
|
|
14538
14870
|
for (let i2 in n.renderer) {
|
|
14539
14871
|
if (!(i2 in r2)) throw new Error(`renderer '${i2}' does not exist`);
|
|
14540
14872
|
if (["options", "parser"].includes(i2)) continue;
|
|
@@ -14547,7 +14879,7 @@ ${e2}</tr>
|
|
|
14547
14879
|
s2.renderer = r2;
|
|
14548
14880
|
}
|
|
14549
14881
|
if (n.tokenizer) {
|
|
14550
|
-
let r2 = this.defaults.tokenizer || new
|
|
14882
|
+
let r2 = this.defaults.tokenizer || new y(this.defaults);
|
|
14551
14883
|
for (let i2 in n.tokenizer) {
|
|
14552
14884
|
if (!(i2 in r2)) throw new Error(`tokenizer '${i2}' does not exist`);
|
|
14553
14885
|
if (["options", "rules", "lexer"].includes(i2)) continue;
|
|
@@ -14560,13 +14892,13 @@ ${e2}</tr>
|
|
|
14560
14892
|
s2.tokenizer = r2;
|
|
14561
14893
|
}
|
|
14562
14894
|
if (n.hooks) {
|
|
14563
|
-
let r2 = this.defaults.hooks || new
|
|
14895
|
+
let r2 = this.defaults.hooks || new S2();
|
|
14564
14896
|
for (let i2 in n.hooks) {
|
|
14565
14897
|
if (!(i2 in r2)) throw new Error(`hook '${i2}' does not exist`);
|
|
14566
14898
|
if (["options", "block"].includes(i2)) continue;
|
|
14567
14899
|
let o = i2, u = n.hooks[o], a = r2[o];
|
|
14568
|
-
|
|
14569
|
-
if (this.defaults.async &&
|
|
14900
|
+
S2.passThroughHooks.has(i2) ? r2[o] = (p) => {
|
|
14901
|
+
if (this.defaults.async && S2.passThroughHooksRespectAsync.has(i2)) return (async () => {
|
|
14570
14902
|
let h2 = await u.call(r2, p);
|
|
14571
14903
|
return a.call(r2, h2);
|
|
14572
14904
|
})();
|
|
@@ -14611,8 +14943,8 @@ ${e2}</tr>
|
|
|
14611
14943
|
if (i2.hooks && (i2.hooks.options = i2, i2.hooks.block = e2), i2.async) return (async () => {
|
|
14612
14944
|
let u = i2.hooks ? await i2.hooks.preprocess(n) : n, p = await (i2.hooks ? await i2.hooks.provideLexer(e2) : e2 ? x2.lex : x2.lexInline)(u, i2), c = i2.hooks ? await i2.hooks.processAllTokens(p) : p;
|
|
14613
14945
|
i2.walkTokens && await Promise.all(this.walkTokens(c, i2.walkTokens));
|
|
14614
|
-
let
|
|
14615
|
-
return i2.hooks ? await i2.hooks.postprocess(
|
|
14946
|
+
let d = await (i2.hooks ? await i2.hooks.provideParser(e2) : e2 ? b.parse : b.parseInline)(c, i2);
|
|
14947
|
+
return i2.hooks ? await i2.hooks.postprocess(d) : d;
|
|
14616
14948
|
})().catch(o);
|
|
14617
14949
|
try {
|
|
14618
14950
|
i2.hooks && (n = i2.hooks.preprocess(n));
|
|
@@ -14629,7 +14961,7 @@ ${e2}</tr>
|
|
|
14629
14961
|
return (n) => {
|
|
14630
14962
|
if (n.message += `
|
|
14631
14963
|
Please report this to https://github.com/markedjs/marked.`, e2) {
|
|
14632
|
-
let s2 = "<p>An error occurred:</p><pre>" +
|
|
14964
|
+
let s2 = "<p>An error occurred:</p><pre>" + T(n.message + "", true) + "</pre>";
|
|
14633
14965
|
return t2 ? Promise.resolve(s2) : s2;
|
|
14634
14966
|
}
|
|
14635
14967
|
if (t2) return Promise.reject(n);
|
|
@@ -14637,35 +14969,32 @@ Please report this to https://github.com/markedjs/marked.`, e2) {
|
|
|
14637
14969
|
};
|
|
14638
14970
|
}
|
|
14639
14971
|
};
|
|
14640
|
-
M = new
|
|
14641
|
-
|
|
14642
|
-
return M.setOptions(l3),
|
|
14643
|
-
};
|
|
14644
|
-
g.getDefaults = z;
|
|
14645
|
-
g.defaults = T;
|
|
14646
|
-
g.use = function(...l3) {
|
|
14647
|
-
return M.use(...l3), g.defaults = M.defaults, N(g.defaults), g;
|
|
14972
|
+
M = new Z2();
|
|
14973
|
+
f3.options = f3.setOptions = function(l3) {
|
|
14974
|
+
return M.setOptions(l3), f3.defaults = M.defaults, j(f3.defaults), f3;
|
|
14648
14975
|
};
|
|
14649
|
-
|
|
14976
|
+
f3.getDefaults = A2;
|
|
14977
|
+
f3.defaults = R;
|
|
14978
|
+
f3.use = dt;
|
|
14979
|
+
f3.walkTokens = function(l3, e2) {
|
|
14650
14980
|
return M.walkTokens(l3, e2);
|
|
14651
14981
|
};
|
|
14652
|
-
|
|
14653
|
-
|
|
14654
|
-
|
|
14655
|
-
|
|
14656
|
-
|
|
14657
|
-
|
|
14658
|
-
|
|
14659
|
-
|
|
14660
|
-
|
|
14661
|
-
|
|
14662
|
-
|
|
14663
|
-
|
|
14664
|
-
|
|
14665
|
-
|
|
14666
|
-
|
|
14667
|
-
|
|
14668
|
-
tn = x2.lex;
|
|
14982
|
+
f3.parseInline = M.parseInline;
|
|
14983
|
+
f3.Parser = b;
|
|
14984
|
+
f3.parser = b.parse;
|
|
14985
|
+
f3.Renderer = P;
|
|
14986
|
+
f3.TextRenderer = L;
|
|
14987
|
+
f3.Lexer = x2;
|
|
14988
|
+
f3.lexer = x2.lex;
|
|
14989
|
+
f3.Tokenizer = y;
|
|
14990
|
+
f3.Hooks = S2;
|
|
14991
|
+
f3.parse = f3;
|
|
14992
|
+
nn = f3.options;
|
|
14993
|
+
rn = f3.setOptions;
|
|
14994
|
+
sn = f3.walkTokens;
|
|
14995
|
+
on = f3.parseInline;
|
|
14996
|
+
ln = b.parse;
|
|
14997
|
+
un = x2.lex;
|
|
14669
14998
|
}
|
|
14670
14999
|
});
|
|
14671
15000
|
|
|
@@ -14820,7 +15149,7 @@ function tokenToAdfBlock(tok) {
|
|
|
14820
15149
|
}
|
|
14821
15150
|
}
|
|
14822
15151
|
function markdownToAdf(md) {
|
|
14823
|
-
const tokens =
|
|
15152
|
+
const tokens = f3.lexer(stripFrontmatter(md ?? ""));
|
|
14824
15153
|
const content = [];
|
|
14825
15154
|
for (const tok of tokens) {
|
|
14826
15155
|
const block = tokenToAdfBlock(tok);
|
|
@@ -14836,7 +15165,7 @@ function stripLeftoverStarsFromHtml(html) {
|
|
|
14836
15165
|
return html.split(/(<code>[\s\S]*?<\/code>)/g).map((part, i2) => i2 % 2 === 1 ? part : part.replace(/\*\*/g, "")).join("");
|
|
14837
15166
|
}
|
|
14838
15167
|
function inlineToHtml(text) {
|
|
14839
|
-
const html =
|
|
15168
|
+
const html = f3.parseInline(text ?? "");
|
|
14840
15169
|
return stripLeftoverStarsFromHtml(typeof html === "string" ? html : "").replace(/<br\s*\/?>/gi, "<br/>");
|
|
14841
15170
|
}
|
|
14842
15171
|
function listItemToHtml(item) {
|
|
@@ -14883,7 +15212,7 @@ function tokenToStorageHtml(tok, nextPumlId, pumlRegistry) {
|
|
|
14883
15212
|
}
|
|
14884
15213
|
}
|
|
14885
15214
|
function markdownToStorageFormat(md) {
|
|
14886
|
-
const tokens =
|
|
15215
|
+
const tokens = f3.lexer(stripFrontmatter(md ?? ""));
|
|
14887
15216
|
const pumlRegistry = /* @__PURE__ */ new Map();
|
|
14888
15217
|
const parts = [];
|
|
14889
15218
|
let pumlCounter = 0;
|
|
@@ -14914,7 +15243,7 @@ function inferFieldFormat(type, custom3, hasAllowedValues = false) {
|
|
|
14914
15243
|
return type;
|
|
14915
15244
|
}
|
|
14916
15245
|
function inferAdfFields(fields, explicitKeys) {
|
|
14917
|
-
const fromSchema = fields.filter((
|
|
15246
|
+
const fromSchema = fields.filter((f4) => f4.inferredFormat === "adf" || f4.inferredFormat === "adf-suspect").map((f4) => f4.key);
|
|
14918
15247
|
const merged = explicitKeys?.length ? [...fromSchema, ...explicitKeys] : fromSchema;
|
|
14919
15248
|
return Array.from(new Set(merged));
|
|
14920
15249
|
}
|
|
@@ -15032,8 +15361,8 @@ var init_jira_client = __esm({
|
|
|
15032
15361
|
this.request("/field")
|
|
15033
15362
|
]);
|
|
15034
15363
|
const customFieldMap = /* @__PURE__ */ new Map();
|
|
15035
|
-
for (const
|
|
15036
|
-
customFieldMap.set(
|
|
15364
|
+
for (const f4 of fields) {
|
|
15365
|
+
customFieldMap.set(f4.id, { name: f4.name, type: f4.schema?.type || "unknown", custom: f4.schema?.custom });
|
|
15037
15366
|
}
|
|
15038
15367
|
const project = createmeta.projects?.[0];
|
|
15039
15368
|
if (!project) return { issueTypes: [] };
|
|
@@ -15396,7 +15725,7 @@ var require_errors2 = __commonJS({
|
|
|
15396
15725
|
// Comment can be max 65535 bytes long (NOTE: some non-US characters may take more space)
|
|
15397
15726
|
EXTRA_FIELD_PARSE_ERROR: "Extra field parsing error"
|
|
15398
15727
|
};
|
|
15399
|
-
function
|
|
15728
|
+
function E(message) {
|
|
15400
15729
|
return function(...args) {
|
|
15401
15730
|
if (args.length) {
|
|
15402
15731
|
message = message.replace(/\{(\d)\}/g, (_2, n) => args[n] || "");
|
|
@@ -15405,7 +15734,7 @@ var require_errors2 = __commonJS({
|
|
|
15405
15734
|
};
|
|
15406
15735
|
}
|
|
15407
15736
|
for (const msg of Object.keys(errors)) {
|
|
15408
|
-
exports[msg] =
|
|
15737
|
+
exports[msg] = E(errors[msg]);
|
|
15409
15738
|
}
|
|
15410
15739
|
}
|
|
15411
15740
|
});
|
|
@@ -15421,7 +15750,7 @@ var require_utils2 = __commonJS({
|
|
|
15421
15750
|
var isWin = typeof process === "object" && "win32" === process.platform;
|
|
15422
15751
|
var is_Obj = (obj) => typeof obj === "object" && obj !== null;
|
|
15423
15752
|
var crcTable = new Uint32Array(256).map((t2, c) => {
|
|
15424
|
-
for (let
|
|
15753
|
+
for (let k2 = 0; k2 < 8; k2++) {
|
|
15425
15754
|
if ((c & 1) !== 0) {
|
|
15426
15755
|
c = 3988292384 ^ c >>> 1;
|
|
15427
15756
|
} else {
|
|
@@ -16300,8 +16629,8 @@ var require_zipcrypto = __commonJS({
|
|
|
16300
16629
|
return byteValue;
|
|
16301
16630
|
};
|
|
16302
16631
|
Initkeys.prototype.next = function() {
|
|
16303
|
-
const
|
|
16304
|
-
return uMul(
|
|
16632
|
+
const k2 = (this.keys[2] | 2) >>> 0;
|
|
16633
|
+
return uMul(k2, k2 ^ 1) >> 8 & 255;
|
|
16305
16634
|
};
|
|
16306
16635
|
function make_decrypter(pwd) {
|
|
16307
16636
|
const keys = new Initkeys(pwd);
|
|
@@ -16319,8 +16648,8 @@ var require_zipcrypto = __commonJS({
|
|
|
16319
16648
|
return function(data, result, pos = 0) {
|
|
16320
16649
|
if (!result) result = Buffer.alloc(data.length);
|
|
16321
16650
|
for (let c of data) {
|
|
16322
|
-
const
|
|
16323
|
-
result[pos++] = c ^
|
|
16651
|
+
const k2 = keys.next();
|
|
16652
|
+
result[pos++] = c ^ k2;
|
|
16324
16653
|
keys.updateKeys(c);
|
|
16325
16654
|
}
|
|
16326
16655
|
return result;
|
|
@@ -18098,169 +18427,169 @@ var require_md5 = __commonJS({
|
|
|
18098
18427
|
this.hash();
|
|
18099
18428
|
};
|
|
18100
18429
|
Md5.prototype.hash = function() {
|
|
18101
|
-
var a, b2, c,
|
|
18430
|
+
var a, b2, c, d, bc, da, blocks2 = this.blocks;
|
|
18102
18431
|
if (this.first) {
|
|
18103
18432
|
a = blocks2[0] - 680876937;
|
|
18104
18433
|
a = (a << 7 | a >>> 25) - 271733879 << 0;
|
|
18105
|
-
|
|
18106
|
-
|
|
18107
|
-
c = (-271733879 ^
|
|
18108
|
-
c = (c << 17 | c >>> 15) +
|
|
18109
|
-
b2 = (a ^ c & (
|
|
18434
|
+
d = (-1732584194 ^ a & 2004318071) + blocks2[1] - 117830708;
|
|
18435
|
+
d = (d << 12 | d >>> 20) + a << 0;
|
|
18436
|
+
c = (-271733879 ^ d & (a ^ -271733879)) + blocks2[2] - 1126478375;
|
|
18437
|
+
c = (c << 17 | c >>> 15) + d << 0;
|
|
18438
|
+
b2 = (a ^ c & (d ^ a)) + blocks2[3] - 1316259209;
|
|
18110
18439
|
b2 = (b2 << 22 | b2 >>> 10) + c << 0;
|
|
18111
18440
|
} else {
|
|
18112
18441
|
a = this.h0;
|
|
18113
18442
|
b2 = this.h1;
|
|
18114
18443
|
c = this.h2;
|
|
18115
|
-
|
|
18116
|
-
a += (
|
|
18444
|
+
d = this.h3;
|
|
18445
|
+
a += (d ^ b2 & (c ^ d)) + blocks2[0] - 680876936;
|
|
18117
18446
|
a = (a << 7 | a >>> 25) + b2 << 0;
|
|
18118
|
-
|
|
18119
|
-
|
|
18120
|
-
c += (b2 ^
|
|
18121
|
-
c = (c << 17 | c >>> 15) +
|
|
18122
|
-
b2 += (a ^ c & (
|
|
18447
|
+
d += (c ^ a & (b2 ^ c)) + blocks2[1] - 389564586;
|
|
18448
|
+
d = (d << 12 | d >>> 20) + a << 0;
|
|
18449
|
+
c += (b2 ^ d & (a ^ b2)) + blocks2[2] + 606105819;
|
|
18450
|
+
c = (c << 17 | c >>> 15) + d << 0;
|
|
18451
|
+
b2 += (a ^ c & (d ^ a)) + blocks2[3] - 1044525330;
|
|
18123
18452
|
b2 = (b2 << 22 | b2 >>> 10) + c << 0;
|
|
18124
18453
|
}
|
|
18125
|
-
a += (
|
|
18454
|
+
a += (d ^ b2 & (c ^ d)) + blocks2[4] - 176418897;
|
|
18126
18455
|
a = (a << 7 | a >>> 25) + b2 << 0;
|
|
18127
|
-
|
|
18128
|
-
|
|
18129
|
-
c += (b2 ^
|
|
18130
|
-
c = (c << 17 | c >>> 15) +
|
|
18131
|
-
b2 += (a ^ c & (
|
|
18456
|
+
d += (c ^ a & (b2 ^ c)) + blocks2[5] + 1200080426;
|
|
18457
|
+
d = (d << 12 | d >>> 20) + a << 0;
|
|
18458
|
+
c += (b2 ^ d & (a ^ b2)) + blocks2[6] - 1473231341;
|
|
18459
|
+
c = (c << 17 | c >>> 15) + d << 0;
|
|
18460
|
+
b2 += (a ^ c & (d ^ a)) + blocks2[7] - 45705983;
|
|
18132
18461
|
b2 = (b2 << 22 | b2 >>> 10) + c << 0;
|
|
18133
|
-
a += (
|
|
18462
|
+
a += (d ^ b2 & (c ^ d)) + blocks2[8] + 1770035416;
|
|
18134
18463
|
a = (a << 7 | a >>> 25) + b2 << 0;
|
|
18135
|
-
|
|
18136
|
-
|
|
18137
|
-
c += (b2 ^
|
|
18138
|
-
c = (c << 17 | c >>> 15) +
|
|
18139
|
-
b2 += (a ^ c & (
|
|
18464
|
+
d += (c ^ a & (b2 ^ c)) + blocks2[9] - 1958414417;
|
|
18465
|
+
d = (d << 12 | d >>> 20) + a << 0;
|
|
18466
|
+
c += (b2 ^ d & (a ^ b2)) + blocks2[10] - 42063;
|
|
18467
|
+
c = (c << 17 | c >>> 15) + d << 0;
|
|
18468
|
+
b2 += (a ^ c & (d ^ a)) + blocks2[11] - 1990404162;
|
|
18140
18469
|
b2 = (b2 << 22 | b2 >>> 10) + c << 0;
|
|
18141
|
-
a += (
|
|
18470
|
+
a += (d ^ b2 & (c ^ d)) + blocks2[12] + 1804603682;
|
|
18142
18471
|
a = (a << 7 | a >>> 25) + b2 << 0;
|
|
18143
|
-
|
|
18144
|
-
|
|
18145
|
-
c += (b2 ^
|
|
18146
|
-
c = (c << 17 | c >>> 15) +
|
|
18147
|
-
b2 += (a ^ c & (
|
|
18472
|
+
d += (c ^ a & (b2 ^ c)) + blocks2[13] - 40341101;
|
|
18473
|
+
d = (d << 12 | d >>> 20) + a << 0;
|
|
18474
|
+
c += (b2 ^ d & (a ^ b2)) + blocks2[14] - 1502002290;
|
|
18475
|
+
c = (c << 17 | c >>> 15) + d << 0;
|
|
18476
|
+
b2 += (a ^ c & (d ^ a)) + blocks2[15] + 1236535329;
|
|
18148
18477
|
b2 = (b2 << 22 | b2 >>> 10) + c << 0;
|
|
18149
|
-
a += (c ^
|
|
18478
|
+
a += (c ^ d & (b2 ^ c)) + blocks2[1] - 165796510;
|
|
18150
18479
|
a = (a << 5 | a >>> 27) + b2 << 0;
|
|
18151
|
-
|
|
18152
|
-
|
|
18153
|
-
c += (a ^ b2 & (
|
|
18154
|
-
c = (c << 14 | c >>> 18) +
|
|
18155
|
-
b2 += (
|
|
18480
|
+
d += (b2 ^ c & (a ^ b2)) + blocks2[6] - 1069501632;
|
|
18481
|
+
d = (d << 9 | d >>> 23) + a << 0;
|
|
18482
|
+
c += (a ^ b2 & (d ^ a)) + blocks2[11] + 643717713;
|
|
18483
|
+
c = (c << 14 | c >>> 18) + d << 0;
|
|
18484
|
+
b2 += (d ^ a & (c ^ d)) + blocks2[0] - 373897302;
|
|
18156
18485
|
b2 = (b2 << 20 | b2 >>> 12) + c << 0;
|
|
18157
|
-
a += (c ^
|
|
18486
|
+
a += (c ^ d & (b2 ^ c)) + blocks2[5] - 701558691;
|
|
18158
18487
|
a = (a << 5 | a >>> 27) + b2 << 0;
|
|
18159
|
-
|
|
18160
|
-
|
|
18161
|
-
c += (a ^ b2 & (
|
|
18162
|
-
c = (c << 14 | c >>> 18) +
|
|
18163
|
-
b2 += (
|
|
18488
|
+
d += (b2 ^ c & (a ^ b2)) + blocks2[10] + 38016083;
|
|
18489
|
+
d = (d << 9 | d >>> 23) + a << 0;
|
|
18490
|
+
c += (a ^ b2 & (d ^ a)) + blocks2[15] - 660478335;
|
|
18491
|
+
c = (c << 14 | c >>> 18) + d << 0;
|
|
18492
|
+
b2 += (d ^ a & (c ^ d)) + blocks2[4] - 405537848;
|
|
18164
18493
|
b2 = (b2 << 20 | b2 >>> 12) + c << 0;
|
|
18165
|
-
a += (c ^
|
|
18494
|
+
a += (c ^ d & (b2 ^ c)) + blocks2[9] + 568446438;
|
|
18166
18495
|
a = (a << 5 | a >>> 27) + b2 << 0;
|
|
18167
|
-
|
|
18168
|
-
|
|
18169
|
-
c += (a ^ b2 & (
|
|
18170
|
-
c = (c << 14 | c >>> 18) +
|
|
18171
|
-
b2 += (
|
|
18496
|
+
d += (b2 ^ c & (a ^ b2)) + blocks2[14] - 1019803690;
|
|
18497
|
+
d = (d << 9 | d >>> 23) + a << 0;
|
|
18498
|
+
c += (a ^ b2 & (d ^ a)) + blocks2[3] - 187363961;
|
|
18499
|
+
c = (c << 14 | c >>> 18) + d << 0;
|
|
18500
|
+
b2 += (d ^ a & (c ^ d)) + blocks2[8] + 1163531501;
|
|
18172
18501
|
b2 = (b2 << 20 | b2 >>> 12) + c << 0;
|
|
18173
|
-
a += (c ^
|
|
18502
|
+
a += (c ^ d & (b2 ^ c)) + blocks2[13] - 1444681467;
|
|
18174
18503
|
a = (a << 5 | a >>> 27) + b2 << 0;
|
|
18175
|
-
|
|
18176
|
-
|
|
18177
|
-
c += (a ^ b2 & (
|
|
18178
|
-
c = (c << 14 | c >>> 18) +
|
|
18179
|
-
b2 += (
|
|
18504
|
+
d += (b2 ^ c & (a ^ b2)) + blocks2[2] - 51403784;
|
|
18505
|
+
d = (d << 9 | d >>> 23) + a << 0;
|
|
18506
|
+
c += (a ^ b2 & (d ^ a)) + blocks2[7] + 1735328473;
|
|
18507
|
+
c = (c << 14 | c >>> 18) + d << 0;
|
|
18508
|
+
b2 += (d ^ a & (c ^ d)) + blocks2[12] - 1926607734;
|
|
18180
18509
|
b2 = (b2 << 20 | b2 >>> 12) + c << 0;
|
|
18181
18510
|
bc = b2 ^ c;
|
|
18182
|
-
a += (bc ^
|
|
18511
|
+
a += (bc ^ d) + blocks2[5] - 378558;
|
|
18183
18512
|
a = (a << 4 | a >>> 28) + b2 << 0;
|
|
18184
|
-
|
|
18185
|
-
|
|
18186
|
-
da =
|
|
18513
|
+
d += (bc ^ a) + blocks2[8] - 2022574463;
|
|
18514
|
+
d = (d << 11 | d >>> 21) + a << 0;
|
|
18515
|
+
da = d ^ a;
|
|
18187
18516
|
c += (da ^ b2) + blocks2[11] + 1839030562;
|
|
18188
|
-
c = (c << 16 | c >>> 16) +
|
|
18517
|
+
c = (c << 16 | c >>> 16) + d << 0;
|
|
18189
18518
|
b2 += (da ^ c) + blocks2[14] - 35309556;
|
|
18190
18519
|
b2 = (b2 << 23 | b2 >>> 9) + c << 0;
|
|
18191
18520
|
bc = b2 ^ c;
|
|
18192
|
-
a += (bc ^
|
|
18521
|
+
a += (bc ^ d) + blocks2[1] - 1530992060;
|
|
18193
18522
|
a = (a << 4 | a >>> 28) + b2 << 0;
|
|
18194
|
-
|
|
18195
|
-
|
|
18196
|
-
da =
|
|
18523
|
+
d += (bc ^ a) + blocks2[4] + 1272893353;
|
|
18524
|
+
d = (d << 11 | d >>> 21) + a << 0;
|
|
18525
|
+
da = d ^ a;
|
|
18197
18526
|
c += (da ^ b2) + blocks2[7] - 155497632;
|
|
18198
|
-
c = (c << 16 | c >>> 16) +
|
|
18527
|
+
c = (c << 16 | c >>> 16) + d << 0;
|
|
18199
18528
|
b2 += (da ^ c) + blocks2[10] - 1094730640;
|
|
18200
18529
|
b2 = (b2 << 23 | b2 >>> 9) + c << 0;
|
|
18201
18530
|
bc = b2 ^ c;
|
|
18202
|
-
a += (bc ^
|
|
18531
|
+
a += (bc ^ d) + blocks2[13] + 681279174;
|
|
18203
18532
|
a = (a << 4 | a >>> 28) + b2 << 0;
|
|
18204
|
-
|
|
18205
|
-
|
|
18206
|
-
da =
|
|
18533
|
+
d += (bc ^ a) + blocks2[0] - 358537222;
|
|
18534
|
+
d = (d << 11 | d >>> 21) + a << 0;
|
|
18535
|
+
da = d ^ a;
|
|
18207
18536
|
c += (da ^ b2) + blocks2[3] - 722521979;
|
|
18208
|
-
c = (c << 16 | c >>> 16) +
|
|
18537
|
+
c = (c << 16 | c >>> 16) + d << 0;
|
|
18209
18538
|
b2 += (da ^ c) + blocks2[6] + 76029189;
|
|
18210
18539
|
b2 = (b2 << 23 | b2 >>> 9) + c << 0;
|
|
18211
18540
|
bc = b2 ^ c;
|
|
18212
|
-
a += (bc ^
|
|
18541
|
+
a += (bc ^ d) + blocks2[9] - 640364487;
|
|
18213
18542
|
a = (a << 4 | a >>> 28) + b2 << 0;
|
|
18214
|
-
|
|
18215
|
-
|
|
18216
|
-
da =
|
|
18543
|
+
d += (bc ^ a) + blocks2[12] - 421815835;
|
|
18544
|
+
d = (d << 11 | d >>> 21) + a << 0;
|
|
18545
|
+
da = d ^ a;
|
|
18217
18546
|
c += (da ^ b2) + blocks2[15] + 530742520;
|
|
18218
|
-
c = (c << 16 | c >>> 16) +
|
|
18547
|
+
c = (c << 16 | c >>> 16) + d << 0;
|
|
18219
18548
|
b2 += (da ^ c) + blocks2[2] - 995338651;
|
|
18220
18549
|
b2 = (b2 << 23 | b2 >>> 9) + c << 0;
|
|
18221
|
-
a += (c ^ (b2 | ~
|
|
18550
|
+
a += (c ^ (b2 | ~d)) + blocks2[0] - 198630844;
|
|
18222
18551
|
a = (a << 6 | a >>> 26) + b2 << 0;
|
|
18223
|
-
|
|
18224
|
-
|
|
18225
|
-
c += (a ^ (
|
|
18226
|
-
c = (c << 15 | c >>> 17) +
|
|
18227
|
-
b2 += (
|
|
18552
|
+
d += (b2 ^ (a | ~c)) + blocks2[7] + 1126891415;
|
|
18553
|
+
d = (d << 10 | d >>> 22) + a << 0;
|
|
18554
|
+
c += (a ^ (d | ~b2)) + blocks2[14] - 1416354905;
|
|
18555
|
+
c = (c << 15 | c >>> 17) + d << 0;
|
|
18556
|
+
b2 += (d ^ (c | ~a)) + blocks2[5] - 57434055;
|
|
18228
18557
|
b2 = (b2 << 21 | b2 >>> 11) + c << 0;
|
|
18229
|
-
a += (c ^ (b2 | ~
|
|
18558
|
+
a += (c ^ (b2 | ~d)) + blocks2[12] + 1700485571;
|
|
18230
18559
|
a = (a << 6 | a >>> 26) + b2 << 0;
|
|
18231
|
-
|
|
18232
|
-
|
|
18233
|
-
c += (a ^ (
|
|
18234
|
-
c = (c << 15 | c >>> 17) +
|
|
18235
|
-
b2 += (
|
|
18560
|
+
d += (b2 ^ (a | ~c)) + blocks2[3] - 1894986606;
|
|
18561
|
+
d = (d << 10 | d >>> 22) + a << 0;
|
|
18562
|
+
c += (a ^ (d | ~b2)) + blocks2[10] - 1051523;
|
|
18563
|
+
c = (c << 15 | c >>> 17) + d << 0;
|
|
18564
|
+
b2 += (d ^ (c | ~a)) + blocks2[1] - 2054922799;
|
|
18236
18565
|
b2 = (b2 << 21 | b2 >>> 11) + c << 0;
|
|
18237
|
-
a += (c ^ (b2 | ~
|
|
18566
|
+
a += (c ^ (b2 | ~d)) + blocks2[8] + 1873313359;
|
|
18238
18567
|
a = (a << 6 | a >>> 26) + b2 << 0;
|
|
18239
|
-
|
|
18240
|
-
|
|
18241
|
-
c += (a ^ (
|
|
18242
|
-
c = (c << 15 | c >>> 17) +
|
|
18243
|
-
b2 += (
|
|
18568
|
+
d += (b2 ^ (a | ~c)) + blocks2[15] - 30611744;
|
|
18569
|
+
d = (d << 10 | d >>> 22) + a << 0;
|
|
18570
|
+
c += (a ^ (d | ~b2)) + blocks2[6] - 1560198380;
|
|
18571
|
+
c = (c << 15 | c >>> 17) + d << 0;
|
|
18572
|
+
b2 += (d ^ (c | ~a)) + blocks2[13] + 1309151649;
|
|
18244
18573
|
b2 = (b2 << 21 | b2 >>> 11) + c << 0;
|
|
18245
|
-
a += (c ^ (b2 | ~
|
|
18574
|
+
a += (c ^ (b2 | ~d)) + blocks2[4] - 145523070;
|
|
18246
18575
|
a = (a << 6 | a >>> 26) + b2 << 0;
|
|
18247
|
-
|
|
18248
|
-
|
|
18249
|
-
c += (a ^ (
|
|
18250
|
-
c = (c << 15 | c >>> 17) +
|
|
18251
|
-
b2 += (
|
|
18576
|
+
d += (b2 ^ (a | ~c)) + blocks2[11] - 1120210379;
|
|
18577
|
+
d = (d << 10 | d >>> 22) + a << 0;
|
|
18578
|
+
c += (a ^ (d | ~b2)) + blocks2[2] + 718787259;
|
|
18579
|
+
c = (c << 15 | c >>> 17) + d << 0;
|
|
18580
|
+
b2 += (d ^ (c | ~a)) + blocks2[9] - 343485551;
|
|
18252
18581
|
b2 = (b2 << 21 | b2 >>> 11) + c << 0;
|
|
18253
18582
|
if (this.first) {
|
|
18254
18583
|
this.h0 = a + 1732584193 << 0;
|
|
18255
18584
|
this.h1 = b2 - 271733879 << 0;
|
|
18256
18585
|
this.h2 = c - 1732584194 << 0;
|
|
18257
|
-
this.h3 =
|
|
18586
|
+
this.h3 = d + 271733878 << 0;
|
|
18258
18587
|
this.first = false;
|
|
18259
18588
|
} else {
|
|
18260
18589
|
this.h0 = this.h0 + a << 0;
|
|
18261
18590
|
this.h1 = this.h1 + b2 << 0;
|
|
18262
18591
|
this.h2 = this.h2 + c << 0;
|
|
18263
|
-
this.h3 = this.h3 +
|
|
18592
|
+
this.h3 = this.h3 + d << 0;
|
|
18264
18593
|
}
|
|
18265
18594
|
};
|
|
18266
18595
|
Md5.prototype.hex = function() {
|
|
@@ -18544,19 +18873,19 @@ var require_tiny_inflate = __commonJS({
|
|
|
18544
18873
|
sum += 1 << bits[i2];
|
|
18545
18874
|
}
|
|
18546
18875
|
}
|
|
18547
|
-
function tinf_build_fixed_trees(
|
|
18876
|
+
function tinf_build_fixed_trees(lt2, dt2) {
|
|
18548
18877
|
var i2;
|
|
18549
|
-
for (i2 = 0; i2 < 7; ++i2)
|
|
18550
|
-
|
|
18551
|
-
|
|
18552
|
-
|
|
18553
|
-
for (i2 = 0; i2 < 24; ++i2)
|
|
18554
|
-
for (i2 = 0; i2 < 144; ++i2)
|
|
18555
|
-
for (i2 = 0; i2 < 8; ++i2)
|
|
18556
|
-
for (i2 = 0; i2 < 112; ++i2)
|
|
18557
|
-
for (i2 = 0; i2 < 5; ++i2)
|
|
18558
|
-
|
|
18559
|
-
for (i2 = 0; i2 < 32; ++i2)
|
|
18878
|
+
for (i2 = 0; i2 < 7; ++i2) lt2.table[i2] = 0;
|
|
18879
|
+
lt2.table[7] = 24;
|
|
18880
|
+
lt2.table[8] = 152;
|
|
18881
|
+
lt2.table[9] = 112;
|
|
18882
|
+
for (i2 = 0; i2 < 24; ++i2) lt2.trans[i2] = 256 + i2;
|
|
18883
|
+
for (i2 = 0; i2 < 144; ++i2) lt2.trans[24 + i2] = i2;
|
|
18884
|
+
for (i2 = 0; i2 < 8; ++i2) lt2.trans[24 + 144 + i2] = 280 + i2;
|
|
18885
|
+
for (i2 = 0; i2 < 112; ++i2) lt2.trans[24 + 144 + 8 + i2] = 144 + i2;
|
|
18886
|
+
for (i2 = 0; i2 < 5; ++i2) dt2.table[i2] = 0;
|
|
18887
|
+
dt2.table[5] = 32;
|
|
18888
|
+
for (i2 = 0; i2 < 32; ++i2) dt2.trans[i2] = i2;
|
|
18560
18889
|
}
|
|
18561
18890
|
var offs = new Uint16Array(16);
|
|
18562
18891
|
function tinf_build_tree(t2, lengths2, off, num) {
|
|
@@ -18572,34 +18901,34 @@ var require_tiny_inflate = __commonJS({
|
|
|
18572
18901
|
if (lengths2[off + i2]) t2.trans[offs[lengths2[off + i2]]++] = i2;
|
|
18573
18902
|
}
|
|
18574
18903
|
}
|
|
18575
|
-
function tinf_getbit(
|
|
18576
|
-
if (!
|
|
18577
|
-
|
|
18578
|
-
|
|
18904
|
+
function tinf_getbit(d) {
|
|
18905
|
+
if (!d.bitcount--) {
|
|
18906
|
+
d.tag = d.source[d.sourceIndex++];
|
|
18907
|
+
d.bitcount = 7;
|
|
18579
18908
|
}
|
|
18580
|
-
var bit =
|
|
18581
|
-
|
|
18909
|
+
var bit = d.tag & 1;
|
|
18910
|
+
d.tag >>>= 1;
|
|
18582
18911
|
return bit;
|
|
18583
18912
|
}
|
|
18584
|
-
function tinf_read_bits(
|
|
18913
|
+
function tinf_read_bits(d, num, base) {
|
|
18585
18914
|
if (!num)
|
|
18586
18915
|
return base;
|
|
18587
|
-
while (
|
|
18588
|
-
|
|
18589
|
-
|
|
18916
|
+
while (d.bitcount < 24) {
|
|
18917
|
+
d.tag |= d.source[d.sourceIndex++] << d.bitcount;
|
|
18918
|
+
d.bitcount += 8;
|
|
18590
18919
|
}
|
|
18591
|
-
var val =
|
|
18592
|
-
|
|
18593
|
-
|
|
18920
|
+
var val = d.tag & 65535 >>> 16 - num;
|
|
18921
|
+
d.tag >>>= num;
|
|
18922
|
+
d.bitcount -= num;
|
|
18594
18923
|
return val + base;
|
|
18595
18924
|
}
|
|
18596
|
-
function tinf_decode_symbol(
|
|
18597
|
-
while (
|
|
18598
|
-
|
|
18599
|
-
|
|
18925
|
+
function tinf_decode_symbol(d, t2) {
|
|
18926
|
+
while (d.bitcount < 24) {
|
|
18927
|
+
d.tag |= d.source[d.sourceIndex++] << d.bitcount;
|
|
18928
|
+
d.bitcount += 8;
|
|
18600
18929
|
}
|
|
18601
18930
|
var sum = 0, cur = 0, len = 0;
|
|
18602
|
-
var tag =
|
|
18931
|
+
var tag = d.tag;
|
|
18603
18932
|
do {
|
|
18604
18933
|
cur = 2 * cur + (tag & 1);
|
|
18605
18934
|
tag >>>= 1;
|
|
@@ -18607,38 +18936,38 @@ var require_tiny_inflate = __commonJS({
|
|
|
18607
18936
|
sum += t2.table[len];
|
|
18608
18937
|
cur -= t2.table[len];
|
|
18609
18938
|
} while (cur >= 0);
|
|
18610
|
-
|
|
18611
|
-
|
|
18939
|
+
d.tag = tag;
|
|
18940
|
+
d.bitcount -= len;
|
|
18612
18941
|
return t2.trans[sum + cur];
|
|
18613
18942
|
}
|
|
18614
|
-
function tinf_decode_trees(
|
|
18943
|
+
function tinf_decode_trees(d, lt2, dt2) {
|
|
18615
18944
|
var hlit, hdist, hclen;
|
|
18616
18945
|
var i2, num, length;
|
|
18617
|
-
hlit = tinf_read_bits(
|
|
18618
|
-
hdist = tinf_read_bits(
|
|
18619
|
-
hclen = tinf_read_bits(
|
|
18946
|
+
hlit = tinf_read_bits(d, 5, 257);
|
|
18947
|
+
hdist = tinf_read_bits(d, 5, 1);
|
|
18948
|
+
hclen = tinf_read_bits(d, 4, 4);
|
|
18620
18949
|
for (i2 = 0; i2 < 19; ++i2) lengths[i2] = 0;
|
|
18621
18950
|
for (i2 = 0; i2 < hclen; ++i2) {
|
|
18622
|
-
var clen = tinf_read_bits(
|
|
18951
|
+
var clen = tinf_read_bits(d, 3, 0);
|
|
18623
18952
|
lengths[clcidx[i2]] = clen;
|
|
18624
18953
|
}
|
|
18625
18954
|
tinf_build_tree(code_tree, lengths, 0, 19);
|
|
18626
18955
|
for (num = 0; num < hlit + hdist; ) {
|
|
18627
|
-
var sym = tinf_decode_symbol(
|
|
18956
|
+
var sym = tinf_decode_symbol(d, code_tree);
|
|
18628
18957
|
switch (sym) {
|
|
18629
18958
|
case 16:
|
|
18630
18959
|
var prev = lengths[num - 1];
|
|
18631
|
-
for (length = tinf_read_bits(
|
|
18960
|
+
for (length = tinf_read_bits(d, 2, 3); length; --length) {
|
|
18632
18961
|
lengths[num++] = prev;
|
|
18633
18962
|
}
|
|
18634
18963
|
break;
|
|
18635
18964
|
case 17:
|
|
18636
|
-
for (length = tinf_read_bits(
|
|
18965
|
+
for (length = tinf_read_bits(d, 3, 3); length; --length) {
|
|
18637
18966
|
lengths[num++] = 0;
|
|
18638
18967
|
}
|
|
18639
18968
|
break;
|
|
18640
18969
|
case 18:
|
|
18641
|
-
for (length = tinf_read_bits(
|
|
18970
|
+
for (length = tinf_read_bits(d, 7, 11); length; --length) {
|
|
18642
18971
|
lengths[num++] = 0;
|
|
18643
18972
|
}
|
|
18644
18973
|
break;
|
|
@@ -18647,65 +18976,65 @@ var require_tiny_inflate = __commonJS({
|
|
|
18647
18976
|
break;
|
|
18648
18977
|
}
|
|
18649
18978
|
}
|
|
18650
|
-
tinf_build_tree(
|
|
18651
|
-
tinf_build_tree(
|
|
18979
|
+
tinf_build_tree(lt2, lengths, 0, hlit);
|
|
18980
|
+
tinf_build_tree(dt2, lengths, hlit, hdist);
|
|
18652
18981
|
}
|
|
18653
|
-
function tinf_inflate_block_data(
|
|
18982
|
+
function tinf_inflate_block_data(d, lt2, dt2) {
|
|
18654
18983
|
while (1) {
|
|
18655
|
-
var sym = tinf_decode_symbol(
|
|
18984
|
+
var sym = tinf_decode_symbol(d, lt2);
|
|
18656
18985
|
if (sym === 256) {
|
|
18657
18986
|
return TINF_OK;
|
|
18658
18987
|
}
|
|
18659
18988
|
if (sym < 256) {
|
|
18660
|
-
|
|
18989
|
+
d.dest[d.destLen++] = sym;
|
|
18661
18990
|
} else {
|
|
18662
18991
|
var length, dist, offs2;
|
|
18663
18992
|
var i2;
|
|
18664
18993
|
sym -= 257;
|
|
18665
|
-
length = tinf_read_bits(
|
|
18666
|
-
dist = tinf_decode_symbol(
|
|
18667
|
-
offs2 =
|
|
18994
|
+
length = tinf_read_bits(d, length_bits[sym], length_base[sym]);
|
|
18995
|
+
dist = tinf_decode_symbol(d, dt2);
|
|
18996
|
+
offs2 = d.destLen - tinf_read_bits(d, dist_bits[dist], dist_base[dist]);
|
|
18668
18997
|
for (i2 = offs2; i2 < offs2 + length; ++i2) {
|
|
18669
|
-
|
|
18998
|
+
d.dest[d.destLen++] = d.dest[i2];
|
|
18670
18999
|
}
|
|
18671
19000
|
}
|
|
18672
19001
|
}
|
|
18673
19002
|
}
|
|
18674
|
-
function tinf_inflate_uncompressed_block(
|
|
19003
|
+
function tinf_inflate_uncompressed_block(d) {
|
|
18675
19004
|
var length, invlength;
|
|
18676
19005
|
var i2;
|
|
18677
|
-
while (
|
|
18678
|
-
|
|
18679
|
-
|
|
18680
|
-
}
|
|
18681
|
-
length =
|
|
18682
|
-
length = 256 * length +
|
|
18683
|
-
invlength =
|
|
18684
|
-
invlength = 256 * invlength +
|
|
19006
|
+
while (d.bitcount > 8) {
|
|
19007
|
+
d.sourceIndex--;
|
|
19008
|
+
d.bitcount -= 8;
|
|
19009
|
+
}
|
|
19010
|
+
length = d.source[d.sourceIndex + 1];
|
|
19011
|
+
length = 256 * length + d.source[d.sourceIndex];
|
|
19012
|
+
invlength = d.source[d.sourceIndex + 3];
|
|
19013
|
+
invlength = 256 * invlength + d.source[d.sourceIndex + 2];
|
|
18685
19014
|
if (length !== (~invlength & 65535))
|
|
18686
19015
|
return TINF_DATA_ERROR;
|
|
18687
|
-
|
|
19016
|
+
d.sourceIndex += 4;
|
|
18688
19017
|
for (i2 = length; i2; --i2)
|
|
18689
|
-
|
|
18690
|
-
|
|
19018
|
+
d.dest[d.destLen++] = d.source[d.sourceIndex++];
|
|
19019
|
+
d.bitcount = 0;
|
|
18691
19020
|
return TINF_OK;
|
|
18692
19021
|
}
|
|
18693
19022
|
function tinf_uncompress(source, dest) {
|
|
18694
|
-
var
|
|
19023
|
+
var d = new Data(source, dest);
|
|
18695
19024
|
var bfinal, btype, res;
|
|
18696
19025
|
do {
|
|
18697
|
-
bfinal = tinf_getbit(
|
|
18698
|
-
btype = tinf_read_bits(
|
|
19026
|
+
bfinal = tinf_getbit(d);
|
|
19027
|
+
btype = tinf_read_bits(d, 2, 0);
|
|
18699
19028
|
switch (btype) {
|
|
18700
19029
|
case 0:
|
|
18701
|
-
res = tinf_inflate_uncompressed_block(
|
|
19030
|
+
res = tinf_inflate_uncompressed_block(d);
|
|
18702
19031
|
break;
|
|
18703
19032
|
case 1:
|
|
18704
|
-
res = tinf_inflate_block_data(
|
|
19033
|
+
res = tinf_inflate_block_data(d, sltree, sdtree);
|
|
18705
19034
|
break;
|
|
18706
19035
|
case 2:
|
|
18707
|
-
tinf_decode_trees(
|
|
18708
|
-
res = tinf_inflate_block_data(
|
|
19036
|
+
tinf_decode_trees(d, d.ltree, d.dtree);
|
|
19037
|
+
res = tinf_inflate_block_data(d, d.ltree, d.dtree);
|
|
18709
19038
|
break;
|
|
18710
19039
|
default:
|
|
18711
19040
|
res = TINF_DATA_ERROR;
|
|
@@ -18713,13 +19042,13 @@ var require_tiny_inflate = __commonJS({
|
|
|
18713
19042
|
if (res !== TINF_OK)
|
|
18714
19043
|
throw new Error("Data error");
|
|
18715
19044
|
} while (!bfinal);
|
|
18716
|
-
if (
|
|
18717
|
-
if (typeof
|
|
18718
|
-
return
|
|
19045
|
+
if (d.destLen < d.dest.length) {
|
|
19046
|
+
if (typeof d.dest.slice === "function")
|
|
19047
|
+
return d.dest.slice(0, d.destLen);
|
|
18719
19048
|
else
|
|
18720
|
-
return
|
|
19049
|
+
return d.dest.subarray(0, d.destLen);
|
|
18721
19050
|
}
|
|
18722
|
-
return
|
|
19051
|
+
return d.dest;
|
|
18723
19052
|
}
|
|
18724
19053
|
tinf_build_fixed_trees(sltree, sdtree);
|
|
18725
19054
|
tinf_build_bits_base(length_bits, length_base, 4, 3);
|
|
@@ -145441,10 +145770,10 @@ var util;
|
|
|
145441
145770
|
return obj;
|
|
145442
145771
|
};
|
|
145443
145772
|
util2.getValidEnumValues = (obj) => {
|
|
145444
|
-
const validKeys = util2.objectKeys(obj).filter((
|
|
145773
|
+
const validKeys = util2.objectKeys(obj).filter((k2) => typeof obj[obj[k2]] !== "number");
|
|
145445
145774
|
const filtered = {};
|
|
145446
|
-
for (const
|
|
145447
|
-
filtered[
|
|
145775
|
+
for (const k2 of validKeys) {
|
|
145776
|
+
filtered[k2] = obj[k2];
|
|
145448
145777
|
}
|
|
145449
145778
|
return util2.objectValues(filtered);
|
|
145450
145779
|
};
|
|
@@ -149365,9 +149694,9 @@ function $constructor(name, initializer3, params) {
|
|
|
149365
149694
|
(_a = inst._zod).traits ?? (_a.traits = /* @__PURE__ */ new Set());
|
|
149366
149695
|
inst._zod.traits.add(name);
|
|
149367
149696
|
initializer3(inst, def);
|
|
149368
|
-
for (const
|
|
149369
|
-
if (!(
|
|
149370
|
-
Object.defineProperty(inst,
|
|
149697
|
+
for (const k2 in _2.prototype) {
|
|
149698
|
+
if (!(k2 in inst))
|
|
149699
|
+
Object.defineProperty(inst, k2, { value: _2.prototype[k2].bind(inst) });
|
|
149371
149700
|
}
|
|
149372
149701
|
inst._zod.constr = _2;
|
|
149373
149702
|
inst._zod.def = def;
|
|
@@ -149477,7 +149806,7 @@ function assert(_2) {
|
|
|
149477
149806
|
}
|
|
149478
149807
|
function getEnumValues(entries) {
|
|
149479
149808
|
const numericValues = Object.values(entries).filter((v2) => typeof v2 === "number");
|
|
149480
|
-
const values = Object.entries(entries).filter(([
|
|
149809
|
+
const values = Object.entries(entries).filter(([k2, _2]) => numericValues.indexOf(+k2) === -1).map(([_2, v2]) => v2);
|
|
149481
149810
|
return values;
|
|
149482
149811
|
}
|
|
149483
149812
|
function joinValues(array2, separator = "|") {
|
|
@@ -149724,8 +150053,8 @@ function stringifyPrimitive(value) {
|
|
|
149724
150053
|
return `${value}`;
|
|
149725
150054
|
}
|
|
149726
150055
|
function optionalKeys(shape) {
|
|
149727
|
-
return Object.keys(shape).filter((
|
|
149728
|
-
return shape[
|
|
150056
|
+
return Object.keys(shape).filter((k2) => {
|
|
150057
|
+
return shape[k2]._zod.optin === "optional" && shape[k2]._zod.optout === "optional";
|
|
149729
150058
|
});
|
|
149730
150059
|
}
|
|
149731
150060
|
var NUMBER_FORMAT_RANGES = {
|
|
@@ -149921,8 +150250,8 @@ function issue(...args) {
|
|
|
149921
150250
|
return { ...iss };
|
|
149922
150251
|
}
|
|
149923
150252
|
function cleanEnum(obj) {
|
|
149924
|
-
return Object.entries(obj).filter(([
|
|
149925
|
-
return Number.isNaN(Number.parseInt(
|
|
150253
|
+
return Object.entries(obj).filter(([k2, _2]) => {
|
|
150254
|
+
return Number.isNaN(Number.parseInt(k2, 10));
|
|
149926
150255
|
}).map((el) => el[1]);
|
|
149927
150256
|
}
|
|
149928
150257
|
var Class = class {
|
|
@@ -151076,9 +151405,9 @@ var $ZodObject = /* @__PURE__ */ $constructor("$ZodObject", (inst, def) => {
|
|
|
151076
151405
|
$ZodType.init(inst, def);
|
|
151077
151406
|
const _normalized = cached(() => {
|
|
151078
151407
|
const keys = Object.keys(def.shape);
|
|
151079
|
-
for (const
|
|
151080
|
-
if (!(def.shape[
|
|
151081
|
-
throw new Error(`Invalid element at key "${
|
|
151408
|
+
for (const k2 of keys) {
|
|
151409
|
+
if (!(def.shape[k2] instanceof $ZodType)) {
|
|
151410
|
+
throw new Error(`Invalid element at key "${k2}": expected a Zod schema`);
|
|
151082
151411
|
}
|
|
151083
151412
|
}
|
|
151084
151413
|
const okeys = optionalKeys(def.shape);
|
|
@@ -151107,8 +151436,8 @@ var $ZodObject = /* @__PURE__ */ $constructor("$ZodObject", (inst, def) => {
|
|
|
151107
151436
|
const doc = new Doc(["shape", "payload", "ctx"]);
|
|
151108
151437
|
const normalized = _normalized.value;
|
|
151109
151438
|
const parseStr = (key) => {
|
|
151110
|
-
const
|
|
151111
|
-
return `shape[${
|
|
151439
|
+
const k2 = esc(key);
|
|
151440
|
+
return `shape[${k2}]._zod.run({ value: input[${k2}], issues: [] }, ctx)`;
|
|
151112
151441
|
};
|
|
151113
151442
|
doc.write(`const input = payload.value;`);
|
|
151114
151443
|
const ids = /* @__PURE__ */ Object.create(null);
|
|
@@ -151121,25 +151450,25 @@ var $ZodObject = /* @__PURE__ */ $constructor("$ZodObject", (inst, def) => {
|
|
|
151121
151450
|
if (normalized.optionalKeys.has(key)) {
|
|
151122
151451
|
const id = ids[key];
|
|
151123
151452
|
doc.write(`const ${id} = ${parseStr(key)};`);
|
|
151124
|
-
const
|
|
151453
|
+
const k2 = esc(key);
|
|
151125
151454
|
doc.write(`
|
|
151126
151455
|
if (${id}.issues.length) {
|
|
151127
|
-
if (input[${
|
|
151128
|
-
if (${
|
|
151129
|
-
newResult[${
|
|
151456
|
+
if (input[${k2}] === undefined) {
|
|
151457
|
+
if (${k2} in input) {
|
|
151458
|
+
newResult[${k2}] = undefined;
|
|
151130
151459
|
}
|
|
151131
151460
|
} else {
|
|
151132
151461
|
payload.issues = payload.issues.concat(
|
|
151133
151462
|
${id}.issues.map((iss) => ({
|
|
151134
151463
|
...iss,
|
|
151135
|
-
path: iss.path ? [${
|
|
151464
|
+
path: iss.path ? [${k2}, ...iss.path] : [${k2}],
|
|
151136
151465
|
}))
|
|
151137
151466
|
);
|
|
151138
151467
|
}
|
|
151139
151468
|
} else if (${id}.value === undefined) {
|
|
151140
|
-
if (${
|
|
151469
|
+
if (${k2} in input) newResult[${k2}] = undefined;
|
|
151141
151470
|
} else {
|
|
151142
|
-
newResult[${
|
|
151471
|
+
newResult[${k2}] = ${id}.value;
|
|
151143
151472
|
}
|
|
151144
151473
|
`);
|
|
151145
151474
|
} else {
|
|
@@ -151299,11 +151628,11 @@ var $ZodDiscriminatedUnion = /* @__PURE__ */ $constructor("$ZodDiscriminatedUnio
|
|
|
151299
151628
|
const pv = option._zod.propValues;
|
|
151300
151629
|
if (!pv || Object.keys(pv).length === 0)
|
|
151301
151630
|
throw new Error(`Invalid discriminated union option at index "${def.options.indexOf(option)}"`);
|
|
151302
|
-
for (const [
|
|
151303
|
-
if (!propValues[
|
|
151304
|
-
propValues[
|
|
151631
|
+
for (const [k2, v2] of Object.entries(pv)) {
|
|
151632
|
+
if (!propValues[k2])
|
|
151633
|
+
propValues[k2] = /* @__PURE__ */ new Set();
|
|
151305
151634
|
for (const val of v2) {
|
|
151306
|
-
propValues[
|
|
151635
|
+
propValues[k2].add(val);
|
|
151307
151636
|
}
|
|
151308
151637
|
}
|
|
151309
151638
|
}
|
|
@@ -151526,7 +151855,7 @@ var $ZodEnum = /* @__PURE__ */ $constructor("$ZodEnum", (inst, def) => {
|
|
|
151526
151855
|
$ZodType.init(inst, def);
|
|
151527
151856
|
const values = getEnumValues(def.entries);
|
|
151528
151857
|
inst._zod.values = new Set(values);
|
|
151529
|
-
inst._zod.pattern = new RegExp(`^(${values.filter((
|
|
151858
|
+
inst._zod.pattern = new RegExp(`^(${values.filter((k2) => propertyKeyTypes.has(typeof k2)).map((o) => typeof o === "string" ? escapeRegex(o) : o.toString()).join("|")})$`);
|
|
151530
151859
|
inst._zod.parse = (payload, _ctx) => {
|
|
151531
151860
|
const input = payload.value;
|
|
151532
151861
|
if (inst._zod.values.has(input)) {
|
|
@@ -157856,15 +158185,15 @@ function isPlainObject2(value) {
|
|
|
157856
158185
|
function mergeCapabilities(base, additional) {
|
|
157857
158186
|
const result = { ...base };
|
|
157858
158187
|
for (const key in additional) {
|
|
157859
|
-
const
|
|
157860
|
-
const addValue = additional[
|
|
158188
|
+
const k2 = key;
|
|
158189
|
+
const addValue = additional[k2];
|
|
157861
158190
|
if (addValue === void 0)
|
|
157862
158191
|
continue;
|
|
157863
|
-
const baseValue = result[
|
|
158192
|
+
const baseValue = result[k2];
|
|
157864
158193
|
if (isPlainObject2(baseValue) && isPlainObject2(addValue)) {
|
|
157865
|
-
result[
|
|
158194
|
+
result[k2] = { ...baseValue, ...addValue };
|
|
157866
158195
|
} else {
|
|
157867
|
-
result[
|
|
158196
|
+
result[k2] = addValue;
|
|
157868
158197
|
}
|
|
157869
158198
|
}
|
|
157870
158199
|
return result;
|
|
@@ -159749,15 +160078,14 @@ true\r
|
|
|
159749
160078
|
return items.map((it2) => ({ id: String(it2.id), title: String(it2.title ?? "") }));
|
|
159750
160079
|
}
|
|
159751
160080
|
/**
|
|
159752
|
-
* 첨부 삭제.
|
|
159753
|
-
*
|
|
159754
|
-
*
|
|
159755
|
-
* DELETE /wiki/rest/api/content/{pageId}/child/attachment/{attachmentId}
|
|
160081
|
+
* 첨부 삭제. Confluence REST API는 attachment를 v1 endpoint의 POST .../remove action 형태로만
|
|
160082
|
+
* 삭제 허용 (DELETE method는 405 reject — Atlassian gateway 필터링).
|
|
160083
|
+
* POST /wiki/rest/api/content/{pageId}/child/attachment/{attachmentId}/remove
|
|
159756
160084
|
*/
|
|
159757
160085
|
async deleteAttachment(pageId, attachmentId) {
|
|
159758
160086
|
await this.request(
|
|
159759
|
-
`${this.baseUrl}/wiki/rest/api/content/${encodeURIComponent(pageId)}/child/attachment/${encodeURIComponent(attachmentId)}`,
|
|
159760
|
-
{ method: "
|
|
160087
|
+
`${this.baseUrl}/wiki/rest/api/content/${encodeURIComponent(pageId)}/child/attachment/${encodeURIComponent(attachmentId)}/remove`,
|
|
160088
|
+
{ method: "POST", label: "deleteAttachment" }
|
|
159761
160089
|
);
|
|
159762
160090
|
}
|
|
159763
160091
|
};
|
|
@@ -159948,7 +160276,7 @@ var XrayClient = class {
|
|
|
159948
160276
|
writeFileSync(zipPath, buffer);
|
|
159949
160277
|
const zip = new import_adm_zip.default(zipPath);
|
|
159950
160278
|
zip.extractAllTo(outputDir, true);
|
|
159951
|
-
const files = readdirSync(outputDir).filter((
|
|
160279
|
+
const files = readdirSync(outputDir).filter((f4) => f4.endsWith(".feature"));
|
|
159952
160280
|
return { zip_path: zipPath, feature_dir: outputDir, files, count: files.length };
|
|
159953
160281
|
}
|
|
159954
160282
|
async importResults(results) {
|
|
@@ -159992,7 +160320,7 @@ var registerJiraCrudTools = (ctx2) => {
|
|
|
159992
160320
|
issue_key: external_exports.string().describe("Issue key (e.g. PROJ-123)"),
|
|
159993
160321
|
fields: external_exports.string().optional().describe("Comma-separated list of fields to return")
|
|
159994
160322
|
}, async ({ issue_key, fields }) => {
|
|
159995
|
-
const fieldList = fields ? fields.split(",").map((
|
|
160323
|
+
const fieldList = fields ? fields.split(",").map((f4) => f4.trim()) : void 0;
|
|
159996
160324
|
const data = await jira2.getIssue(issue_key, fieldList);
|
|
159997
160325
|
return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
|
|
159998
160326
|
});
|
|
@@ -160140,7 +160468,7 @@ function resolveJar() {
|
|
|
160140
160468
|
`PlantUML jar directory not found at ${JAR_DIR}. Run 'npm run build' to copy the jar.`
|
|
160141
160469
|
);
|
|
160142
160470
|
}
|
|
160143
|
-
const jars = readdirSync2(JAR_DIR).filter((
|
|
160471
|
+
const jars = readdirSync2(JAR_DIR).filter((f4) => f4.endsWith(".jar"));
|
|
160144
160472
|
if (jars.length === 0) {
|
|
160145
160473
|
throw new Error(`No .jar files in ${JAR_DIR}. Run 'npm run build' to copy the jar.`);
|
|
160146
160474
|
}
|
|
@@ -160313,7 +160641,6 @@ var registerConfluenceTools = (ctx2) => {
|
|
|
160313
160641
|
md = markdown;
|
|
160314
160642
|
}
|
|
160315
160643
|
const { storage, pumlRegistry } = markdownToStorageFormat(md);
|
|
160316
|
-
console.error(`[confluence_publish_doc] pumlRegistry.size=${pumlRegistry.size}, render_diagrams=${render_diagrams}, md_len=${md.length}`);
|
|
160317
160644
|
const bodyBytes = Buffer.byteLength(storage, "utf8");
|
|
160318
160645
|
const warning = bodyBytes > STORAGE_BODY_WARN_BYTES ? `storage body is ${bodyBytes} bytes (> ${STORAGE_BODY_WARN_BYTES}). Confluence may reject or render slowly \u2014 consider splitting into child pages.` : void 0;
|
|
160319
160646
|
if (warning) console.error(`[confluence_publish_doc] ${warning}`);
|
|
@@ -160388,7 +160715,6 @@ var registerConfluenceTools = (ctx2) => {
|
|
|
160388
160715
|
renderTrace.push(`attach ${attIter}/${renderedDiagrams.size}: ${filename} OK`);
|
|
160389
160716
|
} catch (err) {
|
|
160390
160717
|
renderTrace.push(`attach ${attIter}/${renderedDiagrams.size}: ${filename} FAIL \u2014 ${err?.message ?? err}`);
|
|
160391
|
-
console.error(`[confluence_publish_doc] attachment upload failed for ${id}: ${err?.message ?? err}`);
|
|
160392
160718
|
renderedDiagrams.delete(id);
|
|
160393
160719
|
diagramStats.rendered--;
|
|
160394
160720
|
}
|
|
@@ -160765,7 +161091,7 @@ var registerRiskTools = (ctx2) => {
|
|
|
160765
161091
|
if (out.details.length === 0 && (out.skipped ?? []).length === 0) {
|
|
160766
161092
|
lines.push(`(no risk values specified for ${project_key})`);
|
|
160767
161093
|
}
|
|
160768
|
-
for (const
|
|
161094
|
+
for (const d of out.details) lines.push(formatSetDetail(d));
|
|
160769
161095
|
for (const s2 of out.skipped ?? []) lines.push(`SKIPPED ${s2.classifier} (${s2.reason})`);
|
|
160770
161096
|
return { content: [{ type: "text", text: lines.join("\n") }] };
|
|
160771
161097
|
}
|
|
@@ -160784,9 +161110,9 @@ var registerRiskTools = (ctx2) => {
|
|
|
160784
161110
|
token_present: tokenPresent,
|
|
160785
161111
|
diagnostic_note: "token\uC774 \uC5C6\uAC70\uB098 endpoint\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC73C\uBA74 setRiskValue \uD638\uCD9C\uC774 \uC2E4\uD328\uD569\uB2C8\uB2E4. /plugin configure \uB85C RISK_PLUGIN_ENDPOINT / RISK_PLUGIN_AUTH_TOKEN \uC744 \uC785\uB825.",
|
|
160786
161112
|
models: Object.fromEntries(
|
|
160787
|
-
Object.keys(RISK_MODELS).map((
|
|
160788
|
-
const m3 = RISK_MODELS[
|
|
160789
|
-
return [
|
|
161113
|
+
Object.keys(RISK_MODELS).map((k2) => {
|
|
161114
|
+
const m3 = RISK_MODELS[k2];
|
|
161115
|
+
return [k2, {
|
|
160790
161116
|
label: m3.label,
|
|
160791
161117
|
modelKey: m3.modelKey,
|
|
160792
161118
|
riskSets: m3.riskSets,
|
|
@@ -160838,7 +161164,7 @@ var registerRiskTools = (ctx2) => {
|
|
|
160838
161164
|
{ model: "cia", name: "CIA", res: planSetRisk("cia", "initial", h2.cia ?? {}, issueKey), issueKey }
|
|
160839
161165
|
];
|
|
160840
161166
|
const out = await runSetPlans(risk2, tasks);
|
|
160841
|
-
const riskOk = out.details.every((
|
|
161167
|
+
const riskOk = out.details.every((d) => d.result.ok);
|
|
160842
161168
|
const riskSkipped = out.skipped ?? [];
|
|
160843
161169
|
for (const srcKey of h2.source_keys) {
|
|
160844
161170
|
await jira2.createLink("Risk Source", issueKey, srcKey);
|
|
@@ -160960,9 +161286,9 @@ function parseCvssVector(vector) {
|
|
|
160960
161286
|
for (const part of vector.split("/")) {
|
|
160961
161287
|
const colonIdx = part.indexOf(":");
|
|
160962
161288
|
if (colonIdx > 0) {
|
|
160963
|
-
const
|
|
161289
|
+
const k2 = part.substring(0, colonIdx);
|
|
160964
161290
|
const v2 = part.substring(colonIdx + 1);
|
|
160965
|
-
if (
|
|
161291
|
+
if (k2 !== "CVSS") result[k2] = v2;
|
|
160966
161292
|
}
|
|
160967
161293
|
}
|
|
160968
161294
|
return result;
|
|
@@ -160994,10 +161320,10 @@ function calculateCvssScore(metrics) {
|
|
|
160994
161320
|
}
|
|
160995
161321
|
function validateMetrics(metrics) {
|
|
160996
161322
|
const errors = [];
|
|
160997
|
-
for (const [
|
|
160998
|
-
const valid = METRIC_VALUES[
|
|
160999
|
-
if (!valid) errors.push(`Unknown metric: ${
|
|
161000
|
-
else if (!valid.includes(v2)) errors.push(`Invalid value ${v2} for ${
|
|
161323
|
+
for (const [k2, v2] of Object.entries(metrics)) {
|
|
161324
|
+
const valid = METRIC_VALUES[k2];
|
|
161325
|
+
if (!valid) errors.push(`Unknown metric: ${k2}`);
|
|
161326
|
+
else if (!valid.includes(v2)) errors.push(`Invalid value ${v2} for ${k2}. Valid: ${valid.join(", ")}`);
|
|
161001
161327
|
}
|
|
161002
161328
|
return errors;
|
|
161003
161329
|
}
|
|
@@ -161015,7 +161341,7 @@ ${errors.join("\n")}` }] };
|
|
|
161015
161341
|
}
|
|
161016
161342
|
const vector = buildCvssVector(metrics);
|
|
161017
161343
|
const { score, severity } = calculateCvssScore(metrics);
|
|
161018
|
-
const details = Object.entries(metrics).map(([
|
|
161344
|
+
const details = Object.entries(metrics).map(([k2, v2]) => ` ${k2} = ${v2} (${METRIC_LABELS[k2] || k2})`).join("\n");
|
|
161019
161345
|
return { content: [{ type: "text", text: `CVSS Vector: ${vector}
|
|
161020
161346
|
Score: ${score} (${severity})
|
|
161021
161347
|
|
|
@@ -161053,15 +161379,15 @@ ${errors.join("\n")}` }] };
|
|
|
161053
161379
|
issue_key: external_exports.string().describe("Vulnerability issue key")
|
|
161054
161380
|
}, async ({ issue_key }) => {
|
|
161055
161381
|
const data = await jira2.getIssue(issue_key, ["summary", "customfield_10166", "customfield_10167"]);
|
|
161056
|
-
const
|
|
161057
|
-
const vector =
|
|
161058
|
-
const score =
|
|
161382
|
+
const f4 = data.fields;
|
|
161383
|
+
const vector = f4?.customfield_10166 || "";
|
|
161384
|
+
const score = f4?.customfield_10167 || "";
|
|
161059
161385
|
let details = "";
|
|
161060
161386
|
if (vector) {
|
|
161061
161387
|
const metrics = parseCvssVector(vector);
|
|
161062
|
-
details = "\n\nMetrics:\n" + Object.entries(metrics).map(([
|
|
161388
|
+
details = "\n\nMetrics:\n" + Object.entries(metrics).map(([k2, v2]) => ` ${k2} = ${v2} (${METRIC_LABELS[k2] || k2})`).join("\n");
|
|
161063
161389
|
}
|
|
161064
|
-
return { content: [{ type: "text", text: `${issue_key}: ${
|
|
161390
|
+
return { content: [{ type: "text", text: `${issue_key}: ${f4?.summary}
|
|
161065
161391
|
CVSS Vector: ${vector}
|
|
161066
161392
|
CVSS Score: ${score}${details}` }] };
|
|
161067
161393
|
});
|
|
@@ -161120,14 +161446,14 @@ var registerTraceabilityTools = (ctx2) => {
|
|
|
161120
161446
|
issue_key: external_exports.string().describe("Issue key to check")
|
|
161121
161447
|
}, async ({ issue_key }) => {
|
|
161122
161448
|
const data = await jira2.getIssue(issue_key, ["summary", "issuetype", "status", "issuelinks", "subtasks", "parent"]);
|
|
161123
|
-
const
|
|
161449
|
+
const f4 = data.fields;
|
|
161124
161450
|
const links = extractLinks(data);
|
|
161125
161451
|
const report = [
|
|
161126
|
-
`=== ${issue_key}: ${
|
|
161127
|
-
`Type: ${
|
|
161452
|
+
`=== ${issue_key}: ${f4.summary} ===`,
|
|
161453
|
+
`Type: ${f4.issuetype?.name} | Status: ${f4.status?.name}`,
|
|
161128
161454
|
"",
|
|
161129
|
-
`Parent: ${
|
|
161130
|
-
`Subtasks: ${(
|
|
161455
|
+
`Parent: ${f4.parent?.key || "(none)"}`,
|
|
161456
|
+
`Subtasks: ${(f4.subtasks || []).map((s2) => s2.key).join(", ") || "(none)"}`,
|
|
161131
161457
|
"",
|
|
161132
161458
|
`Links (${links.length}):`,
|
|
161133
161459
|
...links.map((l3) => ` ${l3.direction === "inward" ? "\u2190" : "\u2192"} [${l3.link_type}] ${l3.key}: ${l3.summary}`)
|
|
@@ -161199,7 +161525,7 @@ var EA_DOCUMENTS = [
|
|
|
161199
161525
|
"[Clinical Evaluation Plan]",
|
|
161200
161526
|
"[List of Hazard-Related Use Scenarios]"
|
|
161201
161527
|
];
|
|
161202
|
-
var LINK_GUIDE = '\n\nIMPORTANT - Link type rules:\n\u2022 Document \u2192 Gate: jira_create_link("Blocks", gateKey, documentKey) \u2014 Document blocks Gate\n\u2022 Sub-ticket \u2192 Document: jira_create_link("Relates", documentKey, subTicketKey) \u2014 Relates is bidirectional\n\u2022 Hazard \u2192 IU/SyRS: jira_create_link("Risk Source", hazardKey, syrsKey) \u2014 SyRS gives rise to Hazard\n\u2022 Requirement \u2192 Hazard: jira_create_link("Mitigates", requirementKey, hazardKey) \u2014 Requirement mitigates Hazard\n\u2022 Requirement \u2192 System Requirement: jira_create_link("Implements", requirementKey, syrsKey)\n\u2022 Architecture \u2192 Requirement: jira_create_link("Implements", architectureKey, requirementKey)\n\u2022 Detailed Design \u2192 Requirement/Architecture: jira_create_link("Implements", ddKey, targetKey)\n\u2022 Task \u2192 Detailed Design: jira_create_link("Implements", taskKey, ddKey)\n\u2022 \uC120\uD589 Task \u2192 \uD6C4\uD589 Task: jira_create_link("Blocks", \uD6C4\uD589taskKey, \uC120\uD589taskKey) \u2014 \uC120\uD589\uC774 \uD6C4\uD589\uC744 block\n\nIMPORTANT - Git commit message rules:\n\u2022 Every commit MUST start with the Jira ticket key: "
|
|
161528
|
+
var LINK_GUIDE = '\n\nIMPORTANT - Link type rules:\n\u2022 Document \u2192 Gate: jira_create_link("Blocks", gateKey, documentKey) \u2014 Document blocks Gate\n\u2022 Sub-ticket \u2192 Document: jira_create_link("Relates", documentKey, subTicketKey) \u2014 Relates is bidirectional\n\u2022 Hazard \u2192 IU/SyRS: jira_create_link("Risk Source", hazardKey, syrsKey) \u2014 SyRS gives rise to Hazard\n\u2022 Requirement \u2192 Hazard: jira_create_link("Mitigates", requirementKey, hazardKey) \u2014 Requirement mitigates Hazard\n\u2022 Requirement \u2192 System Requirement: jira_create_link("Implements", requirementKey, syrsKey)\n\u2022 Architecture \u2192 Requirement: jira_create_link("Implements", architectureKey, requirementKey)\n\u2022 Detailed Design \u2192 Requirement/Architecture: jira_create_link("Implements", ddKey, targetKey)\n\u2022 Task \u2192 Detailed Design: jira_create_link("Implements", taskKey, ddKey)\n\u2022 \uC120\uD589 Task \u2192 \uD6C4\uD589 Task: jira_create_link("Blocks", \uD6C4\uD589taskKey, \uC120\uD589taskKey) \u2014 \uC120\uD589\uC774 \uD6C4\uD589\uC744 block\n\nIMPORTANT - Git commit message rules:\n\u2022 Every commit MUST start with the Jira ticket key: "DYN-xxx type: message"\n\u2022 Example: "DYN-77 feat: set up project scaffold and dev environment"\n\u2022 Multiple tickets: "DYN-30 DYN-69 chore: add dental 3D scan test files"\n\u2022 This enables Jira to auto-link commits to tickets\n\u2022 Commit after each meaningful change (document written, task completed, bug fixed)\n\u2022 Push after each commit or group of related commits\n\nIMPORTANT - Scope of action rules:\n\u2022 "\uAC8C\uC774\uD2B8 \uB9CC\uB4E4\uC5B4" \u2192 ONLY create the Gate. Do NOT create Document tickets.\n\u2022 "\uBB38\uC11C \uB9CC\uB4E4\uC5B4" \u2192 ONLY create the specified Documents. Do NOT create sub-tickets.\n\u2022 Do NOT chain-create beyond what the user explicitly asked for.\n\u2022 When in doubt, ask the user before creating additional items.\n\nIMPORTANT - Ticket creation rules:\n\u2022 Before creating a ticket, search JQL for existing similar tickets to avoid duplicates.\n\u2022 Bug description format: \u{1F629} Problem \u2192 \u{1F50E} Root Cause \u2192 \u{1F527} Fix \u2192 \u{1F41B} Reproduction\n\u2022 Task/Feature description format: \u{1F3AF} Goal \u2192 \u{1F4CB} Tasks \u2192 \u2705 Acceptance Criteria\n\u2022 Do NOT auto-transition ticket status (e.g. In Progress \u2192 Done) unless explicitly asked.\n\u2022 When creating 3+ tickets at once, show the plan first and wait for user approval.\n\nIMPORTANT - Commit-ticket linking:\n\u2022 After pushing commits, verify the ticket has the commit linked (auto-linked via ticket key in message).\n\u2022 If commits are not linked, add a comment to the ticket with the commit details.';
|
|
161203
161529
|
var registerIecTools = (ctx2) => {
|
|
161204
161530
|
const { server: server2, jira: jira2 } = ctx2;
|
|
161205
161531
|
server2.tool("iec_create_gate", "Create a PA or EA Gate with all required Document tickets and Blocks links. Based on IEC 62304 lifecycle.", {
|
|
@@ -161240,9 +161566,9 @@ var registerIecTools = (ctx2) => {
|
|
|
161240
161566
|
issue_key: external_exports.string().describe("Current ticket key")
|
|
161241
161567
|
}, async ({ issue_key }) => {
|
|
161242
161568
|
const data = await jira2.getIssue(issue_key, ["summary", "issuetype", "status"]);
|
|
161243
|
-
const
|
|
161244
|
-
const type =
|
|
161245
|
-
const summary =
|
|
161569
|
+
const f4 = data.fields;
|
|
161570
|
+
const type = f4.issuetype?.name;
|
|
161571
|
+
const summary = f4.summary || "";
|
|
161246
161572
|
const steps = [];
|
|
161247
161573
|
if (type === "Gate") {
|
|
161248
161574
|
steps.push("Gate created. For each Document ticket, call iec_get_next_steps to see what sub-tickets to create.");
|
|
@@ -161585,15 +161911,15 @@ var WORKFLOWS = [
|
|
|
161585
161911
|
related: ["confluence_publish_doc", "markdown_to_pdf", "jira_attach_pdf_from_markdown"]
|
|
161586
161912
|
}
|
|
161587
161913
|
];
|
|
161588
|
-
function workflowToText(
|
|
161914
|
+
function workflowToText(w) {
|
|
161589
161915
|
const lines = [];
|
|
161590
|
-
lines.push(`=== ${
|
|
161916
|
+
lines.push(`=== ${w.title} ===`);
|
|
161591
161917
|
lines.push("");
|
|
161592
|
-
if (
|
|
161593
|
-
lines.push(
|
|
161918
|
+
if (w.description) {
|
|
161919
|
+
lines.push(w.description);
|
|
161594
161920
|
lines.push("");
|
|
161595
161921
|
}
|
|
161596
|
-
for (const step of
|
|
161922
|
+
for (const step of w.steps) {
|
|
161597
161923
|
lines.push(step);
|
|
161598
161924
|
}
|
|
161599
161925
|
return lines.join("\n");
|
|
@@ -161616,12 +161942,12 @@ var registerHelpTools = ({ server: server2 }) => {
|
|
|
161616
161942
|
}
|
|
161617
161943
|
lines.push("");
|
|
161618
161944
|
}
|
|
161619
|
-
const wfIds2 = WORKFLOWS.map((
|
|
161945
|
+
const wfIds2 = WORKFLOWS.map((w) => w.id).join(", ");
|
|
161620
161946
|
lines.push(`\uC6CC\uD06C\uD50C\uB85C\uC6B0 \uAC00\uC774\uB4DC: help(topic="workflows") \uB610\uB294 help(topic="<id>") \u2014 \uC0AC\uC6A9 \uAC00\uB2A5 id: ${wfIds2}`);
|
|
161621
161947
|
lines.push('\uD2B9\uC815 \uD234 \uC0C1\uC138: help(topic="\uD234\uC774\uB984")');
|
|
161622
161948
|
return { content: [{ type: "text", text: lines.join("\n") }] };
|
|
161623
161949
|
}
|
|
161624
|
-
const workflow = WORKFLOWS.find((
|
|
161950
|
+
const workflow = WORKFLOWS.find((w) => w.id === topic);
|
|
161625
161951
|
if (workflow) {
|
|
161626
161952
|
return { content: [{ type: "text", text: workflowToText(workflow) }] };
|
|
161627
161953
|
}
|
|
@@ -161640,7 +161966,7 @@ ${tool.description}
|
|
|
161640
161966
|
|
|
161641
161967
|
\uC790\uC138\uD55C \uD30C\uB77C\uBBF8\uD130\uB294 \uC774 \uD234\uC744 \uC9C1\uC811 \uD638\uCD9C\uD558\uC5EC \uD655\uC778\uD558\uC138\uC694.` }] };
|
|
161642
161968
|
}
|
|
161643
|
-
const wfIds = WORKFLOWS.map((
|
|
161969
|
+
const wfIds = WORKFLOWS.map((w) => w.id).join(", ");
|
|
161644
161970
|
return { content: [{ type: "text", text: `\uC54C \uC218 \uC5C6\uB294 \uD1A0\uD53D: "${topic}"
|
|
161645
161971
|
\uC0AC\uC6A9 \uAC00\uB2A5: tools, workflows, ${wfIds}, \uB610\uB294 \uD234 \uC774\uB984` }] };
|
|
161646
161972
|
});
|
|
@@ -162137,7 +162463,7 @@ var registerInitTools = ({ server: server2 }) => {
|
|
|
162137
162463
|
"jira_init_project",
|
|
162138
162464
|
"Initialize Jira project for the current workspace. Appends the project key to CLAUDE.md so Claude knows which Jira project to use. Run this once per project folder.",
|
|
162139
162465
|
{
|
|
162140
|
-
project_key: external_exports.string().describe("Jira project key (e.g.
|
|
162466
|
+
project_key: external_exports.string().describe("Jira project key (e.g. DYN, NEO)")
|
|
162141
162467
|
},
|
|
162142
162468
|
async ({ project_key }) => {
|
|
162143
162469
|
const cwd = process.cwd();
|
|
@@ -162614,18 +162940,18 @@ var SHA256 = class extends HashMD {
|
|
|
162614
162940
|
this.H = SHA256_IV[7] | 0;
|
|
162615
162941
|
}
|
|
162616
162942
|
get() {
|
|
162617
|
-
const { A: A3, B: B2, C: C2, D
|
|
162618
|
-
return [A3, B2, C2,
|
|
162943
|
+
const { A: A3, B: B2, C: C2, D, E, F: F3, G: G2, H: H2 } = this;
|
|
162944
|
+
return [A3, B2, C2, D, E, F3, G2, H2];
|
|
162619
162945
|
}
|
|
162620
162946
|
// prettier-ignore
|
|
162621
|
-
set(A3, B2, C2,
|
|
162947
|
+
set(A3, B2, C2, D, E, F3, G2, H2) {
|
|
162622
162948
|
this.A = A3 | 0;
|
|
162623
162949
|
this.B = B2 | 0;
|
|
162624
162950
|
this.C = C2 | 0;
|
|
162625
|
-
this.D =
|
|
162626
|
-
this.E =
|
|
162951
|
+
this.D = D | 0;
|
|
162952
|
+
this.E = E | 0;
|
|
162627
162953
|
this.F = F3 | 0;
|
|
162628
|
-
this.G =
|
|
162954
|
+
this.G = G2 | 0;
|
|
162629
162955
|
this.H = H2 | 0;
|
|
162630
162956
|
}
|
|
162631
162957
|
process(view, offset) {
|
|
@@ -162638,17 +162964,17 @@ var SHA256 = class extends HashMD {
|
|
|
162638
162964
|
const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ W2 >>> 10;
|
|
162639
162965
|
SHA256_W[i2] = s1 + SHA256_W[i2 - 7] + s0 + SHA256_W[i2 - 16] | 0;
|
|
162640
162966
|
}
|
|
162641
|
-
let { A: A3, B: B2, C: C2, D
|
|
162967
|
+
let { A: A3, B: B2, C: C2, D, E, F: F3, G: G2, H: H2 } = this;
|
|
162642
162968
|
for (let i2 = 0; i2 < 64; i2++) {
|
|
162643
|
-
const sigma1 = rotr(
|
|
162644
|
-
const T1 = H2 + sigma1 + Chi(
|
|
162969
|
+
const sigma1 = rotr(E, 6) ^ rotr(E, 11) ^ rotr(E, 25);
|
|
162970
|
+
const T1 = H2 + sigma1 + Chi(E, F3, G2) + SHA256_K[i2] + SHA256_W[i2] | 0;
|
|
162645
162971
|
const sigma0 = rotr(A3, 2) ^ rotr(A3, 13) ^ rotr(A3, 22);
|
|
162646
162972
|
const T2 = sigma0 + Maj(A3, B2, C2) | 0;
|
|
162647
|
-
H2 =
|
|
162648
|
-
|
|
162649
|
-
F3 =
|
|
162650
|
-
|
|
162651
|
-
|
|
162973
|
+
H2 = G2;
|
|
162974
|
+
G2 = F3;
|
|
162975
|
+
F3 = E;
|
|
162976
|
+
E = D + T1 | 0;
|
|
162977
|
+
D = C2;
|
|
162652
162978
|
C2 = B2;
|
|
162653
162979
|
B2 = A3;
|
|
162654
162980
|
A3 = T1 + T2 | 0;
|
|
@@ -162656,12 +162982,12 @@ var SHA256 = class extends HashMD {
|
|
|
162656
162982
|
A3 = A3 + this.A | 0;
|
|
162657
162983
|
B2 = B2 + this.B | 0;
|
|
162658
162984
|
C2 = C2 + this.C | 0;
|
|
162659
|
-
|
|
162660
|
-
|
|
162985
|
+
D = D + this.D | 0;
|
|
162986
|
+
E = E + this.E | 0;
|
|
162661
162987
|
F3 = F3 + this.F | 0;
|
|
162662
|
-
|
|
162988
|
+
G2 = G2 + this.G | 0;
|
|
162663
162989
|
H2 = H2 + this.H | 0;
|
|
162664
|
-
this.set(A3, B2, C2,
|
|
162990
|
+
this.set(A3, B2, C2, D, E, F3, G2, H2);
|
|
162665
162991
|
}
|
|
162666
162992
|
roundClean() {
|
|
162667
162993
|
clean(SHA256_W);
|
|
@@ -162863,8 +163189,8 @@ function expandKeyDecLE(key) {
|
|
|
162863
163189
|
clean2(encKey);
|
|
162864
163190
|
for (let i2 = 4; i2 < Nk - 4; i2++) {
|
|
162865
163191
|
const x3 = xk[i2];
|
|
162866
|
-
const
|
|
162867
|
-
xk[i2] = T0[
|
|
163192
|
+
const w = applySbox(sbox2, x3, x3, x3, x3);
|
|
163193
|
+
xk[i2] = T0[w & 255] ^ T1[w >>> 8 & 255] ^ T2[w >>> 16 & 255] ^ T3[w >>> 24];
|
|
162868
163194
|
}
|
|
162869
163195
|
return xk;
|
|
162870
163196
|
}
|
|
@@ -162876,38 +163202,38 @@ function applySbox(sbox2, s0, s1, s2, s3) {
|
|
|
162876
163202
|
}
|
|
162877
163203
|
function encrypt(xk, s0, s1, s2, s3) {
|
|
162878
163204
|
const { sbox2, T01, T23 } = tableEncoding;
|
|
162879
|
-
let
|
|
162880
|
-
s0 ^= xk[
|
|
163205
|
+
let k2 = 0;
|
|
163206
|
+
s0 ^= xk[k2++], s1 ^= xk[k2++], s2 ^= xk[k2++], s3 ^= xk[k2++];
|
|
162881
163207
|
const rounds = xk.length / 4 - 2;
|
|
162882
163208
|
for (let i2 = 0; i2 < rounds; i2++) {
|
|
162883
|
-
const t02 = xk[
|
|
162884
|
-
const t12 = xk[
|
|
162885
|
-
const t22 = xk[
|
|
162886
|
-
const t32 = xk[
|
|
163209
|
+
const t02 = xk[k2++] ^ apply0123(T01, T23, s0, s1, s2, s3);
|
|
163210
|
+
const t12 = xk[k2++] ^ apply0123(T01, T23, s1, s2, s3, s0);
|
|
163211
|
+
const t22 = xk[k2++] ^ apply0123(T01, T23, s2, s3, s0, s1);
|
|
163212
|
+
const t32 = xk[k2++] ^ apply0123(T01, T23, s3, s0, s1, s2);
|
|
162887
163213
|
s0 = t02, s1 = t12, s2 = t22, s3 = t32;
|
|
162888
163214
|
}
|
|
162889
|
-
const t0 = xk[
|
|
162890
|
-
const t1 = xk[
|
|
162891
|
-
const t2 = xk[
|
|
162892
|
-
const t3 = xk[
|
|
163215
|
+
const t0 = xk[k2++] ^ applySbox(sbox2, s0, s1, s2, s3);
|
|
163216
|
+
const t1 = xk[k2++] ^ applySbox(sbox2, s1, s2, s3, s0);
|
|
163217
|
+
const t2 = xk[k2++] ^ applySbox(sbox2, s2, s3, s0, s1);
|
|
163218
|
+
const t3 = xk[k2++] ^ applySbox(sbox2, s3, s0, s1, s2);
|
|
162893
163219
|
return { s0: t0, s1: t1, s2: t2, s3: t3 };
|
|
162894
163220
|
}
|
|
162895
163221
|
function decrypt(xk, s0, s1, s2, s3) {
|
|
162896
163222
|
const { sbox2, T01, T23 } = tableDecoding;
|
|
162897
|
-
let
|
|
162898
|
-
s0 ^= xk[
|
|
163223
|
+
let k2 = 0;
|
|
163224
|
+
s0 ^= xk[k2++], s1 ^= xk[k2++], s2 ^= xk[k2++], s3 ^= xk[k2++];
|
|
162899
163225
|
const rounds = xk.length / 4 - 2;
|
|
162900
163226
|
for (let i2 = 0; i2 < rounds; i2++) {
|
|
162901
|
-
const t02 = xk[
|
|
162902
|
-
const t12 = xk[
|
|
162903
|
-
const t22 = xk[
|
|
162904
|
-
const t32 = xk[
|
|
163227
|
+
const t02 = xk[k2++] ^ apply0123(T01, T23, s0, s3, s2, s1);
|
|
163228
|
+
const t12 = xk[k2++] ^ apply0123(T01, T23, s1, s0, s3, s2);
|
|
163229
|
+
const t22 = xk[k2++] ^ apply0123(T01, T23, s2, s1, s0, s3);
|
|
163230
|
+
const t32 = xk[k2++] ^ apply0123(T01, T23, s3, s2, s1, s0);
|
|
162905
163231
|
s0 = t02, s1 = t12, s2 = t22, s3 = t32;
|
|
162906
163232
|
}
|
|
162907
|
-
const t0 = xk[
|
|
162908
|
-
const t1 = xk[
|
|
162909
|
-
const t2 = xk[
|
|
162910
|
-
const t3 = xk[
|
|
163233
|
+
const t0 = xk[k2++] ^ applySbox(sbox2, s0, s3, s2, s1);
|
|
163234
|
+
const t1 = xk[k2++] ^ applySbox(sbox2, s1, s0, s3, s2);
|
|
163235
|
+
const t2 = xk[k2++] ^ applySbox(sbox2, s2, s1, s0, s3);
|
|
163236
|
+
const t3 = xk[k2++] ^ applySbox(sbox2, s3, s2, s1, s0);
|
|
162911
163237
|
return { s0: t0, s1: t1, s2: t2, s3: t3 };
|
|
162912
163238
|
}
|
|
162913
163239
|
function validateBlockDecrypt(data) {
|
|
@@ -164104,9 +164430,9 @@ function _define_property(obj, key, value) {
|
|
|
164104
164430
|
|
|
164105
164431
|
// node_modules/tslib/tslib.es6.mjs
|
|
164106
164432
|
function __decorate(decorators, target, key, desc) {
|
|
164107
|
-
var c = arguments.length, r2 = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc,
|
|
164433
|
+
var c = arguments.length, r2 = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
164108
164434
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r2 = Reflect.decorate(decorators, target, key, desc);
|
|
164109
|
-
else for (var i2 = decorators.length - 1; i2 >= 0; i2--) if (
|
|
164435
|
+
else for (var i2 = decorators.length - 1; i2 >= 0; i2--) if (d = decorators[i2]) r2 = (c < 3 ? d(r2) : c > 3 ? d(target, key, r2) : d(target, key)) || r2;
|
|
164110
164436
|
return c > 3 && r2 && Object.defineProperty(target, key, r2), r2;
|
|
164111
164437
|
}
|
|
164112
164438
|
|
|
@@ -165404,8 +165730,8 @@ var $61aa549f16d58b9b$export$2e2bcd8739ae039 = class {
|
|
|
165404
165730
|
startOffset: parent.startOffset || 0
|
|
165405
165731
|
};
|
|
165406
165732
|
let len = 0;
|
|
165407
|
-
for (let
|
|
165408
|
-
let field = this.fields[
|
|
165733
|
+
for (let k2 in this.fields) {
|
|
165734
|
+
let field = this.fields[k2];
|
|
165409
165735
|
let val = dict[field[1]];
|
|
165410
165736
|
if (val == null || (0, import_fast_deep_equal.default)(val, field[3])) continue;
|
|
165411
165737
|
let operands = this.encodeOperands(field[2], null, ctx2, val);
|
|
@@ -169431,14 +169757,14 @@ var $f08dd41ef10b694c$export$2e2bcd8739ae039 = class {
|
|
|
169431
169757
|
let rangeOffset = cmap.idRangeOffset.get(i2);
|
|
169432
169758
|
let delta = cmap.idDelta.get(i2);
|
|
169433
169759
|
for (var c = start; c <= end; c++) {
|
|
169434
|
-
let
|
|
169435
|
-
if (rangeOffset === 0)
|
|
169760
|
+
let g = 0;
|
|
169761
|
+
if (rangeOffset === 0) g = c + delta;
|
|
169436
169762
|
else {
|
|
169437
169763
|
let index = rangeOffset / 2 + (c - start) - (cmap.segCount - i2);
|
|
169438
|
-
|
|
169439
|
-
if (
|
|
169764
|
+
g = cmap.glyphIndexArray.get(index) || 0;
|
|
169765
|
+
if (g !== 0) g += delta;
|
|
169440
169766
|
}
|
|
169441
|
-
if (
|
|
169767
|
+
if (g === gid) res.push(c);
|
|
169442
169768
|
}
|
|
169443
169769
|
}
|
|
169444
169770
|
return res;
|
|
@@ -170519,17 +170845,17 @@ for (let ot2 in $3b6302b64eccc32c$var$OTMapping) {
|
|
|
170519
170845
|
}
|
|
170520
170846
|
function $3b6302b64eccc32c$export$b813f7d2a1677c16(features) {
|
|
170521
170847
|
let res = {};
|
|
170522
|
-
for (let
|
|
170848
|
+
for (let k2 in features) {
|
|
170523
170849
|
let r2;
|
|
170524
|
-
if (r2 = $3b6302b64eccc32c$var$OTMapping[
|
|
170850
|
+
if (r2 = $3b6302b64eccc32c$var$OTMapping[k2]) {
|
|
170525
170851
|
if (res[r2[0]] == null) res[r2[0]] = {};
|
|
170526
|
-
res[r2[0]][r2[1]] = features[
|
|
170852
|
+
res[r2[0]][r2[1]] = features[k2];
|
|
170527
170853
|
}
|
|
170528
170854
|
}
|
|
170529
170855
|
return res;
|
|
170530
170856
|
}
|
|
170531
|
-
function $3b6302b64eccc32c$var$mapFeatureStrings(
|
|
170532
|
-
let [type, setting] =
|
|
170857
|
+
function $3b6302b64eccc32c$var$mapFeatureStrings(f4) {
|
|
170858
|
+
let [type, setting] = f4;
|
|
170533
170859
|
if (isNaN(type)) var typeCode = $3b6302b64eccc32c$var$features[type] && $3b6302b64eccc32c$var$features[type].code;
|
|
170534
170860
|
else var typeCode = type;
|
|
170535
170861
|
if (isNaN(setting)) var settingCode = $3b6302b64eccc32c$var$features[type] && $3b6302b64eccc32c$var$features[type][setting];
|
|
@@ -170541,20 +170867,20 @@ function $3b6302b64eccc32c$var$mapFeatureStrings(f3) {
|
|
|
170541
170867
|
}
|
|
170542
170868
|
function $3b6302b64eccc32c$export$bd6df347a4f391c4(features) {
|
|
170543
170869
|
let res = {};
|
|
170544
|
-
if (Array.isArray(features)) for (let
|
|
170870
|
+
if (Array.isArray(features)) for (let k2 = 0; k2 < features.length; k2++) {
|
|
170545
170871
|
let r2;
|
|
170546
|
-
let
|
|
170547
|
-
if (r2 = $3b6302b64eccc32c$var$AATMapping[
|
|
170872
|
+
let f4 = $3b6302b64eccc32c$var$mapFeatureStrings(features[k2]);
|
|
170873
|
+
if (r2 = $3b6302b64eccc32c$var$AATMapping[f4[0]] && $3b6302b64eccc32c$var$AATMapping[f4[0]][f4[1]]) res[r2] = true;
|
|
170548
170874
|
}
|
|
170549
170875
|
else if (typeof features === "object") for (let type in features) {
|
|
170550
170876
|
let feature = features[type];
|
|
170551
170877
|
for (let setting in feature) {
|
|
170552
170878
|
let r2;
|
|
170553
|
-
let
|
|
170879
|
+
let f4 = $3b6302b64eccc32c$var$mapFeatureStrings([
|
|
170554
170880
|
type,
|
|
170555
170881
|
setting
|
|
170556
170882
|
]);
|
|
170557
|
-
if (feature[setting] && (r2 = $3b6302b64eccc32c$var$AATMapping[
|
|
170883
|
+
if (feature[setting] && (r2 = $3b6302b64eccc32c$var$AATMapping[f4[0]] && $3b6302b64eccc32c$var$AATMapping[f4[0]][f4[1]])) res[r2] = true;
|
|
170558
170884
|
}
|
|
170559
170885
|
}
|
|
170560
170886
|
return Object.keys(res);
|
|
@@ -170708,12 +171034,12 @@ var $55f71433a605c87d$export$2e2bcd8739ae039 = class {
|
|
|
170708
171034
|
for (let chain of this.morx.chains) {
|
|
170709
171035
|
let flags = chain.defaultFlags;
|
|
170710
171036
|
for (let feature of chain.features) {
|
|
170711
|
-
let
|
|
170712
|
-
if (
|
|
170713
|
-
if (
|
|
171037
|
+
let f4;
|
|
171038
|
+
if (f4 = features[feature.featureType]) {
|
|
171039
|
+
if (f4[feature.featureSetting]) {
|
|
170714
171040
|
flags &= feature.disableFlags;
|
|
170715
171041
|
flags |= feature.enableFlags;
|
|
170716
|
-
} else if (
|
|
171042
|
+
} else if (f4[feature.featureSetting] === false) {
|
|
170717
171043
|
flags |= ~feature.disableFlags;
|
|
170718
171044
|
flags &= ~feature.enableFlags;
|
|
170719
171045
|
}
|
|
@@ -170888,8 +171214,8 @@ var $55f71433a605c87d$export$2e2bcd8739ae039 = class {
|
|
|
170888
171214
|
glyphs: glyphs.slice(),
|
|
170889
171215
|
ligatureStack: this.ligatureStack.slice()
|
|
170890
171216
|
});
|
|
170891
|
-
let
|
|
170892
|
-
input.push(
|
|
171217
|
+
let g = this.font.getGlyph(glyph);
|
|
171218
|
+
input.push(g);
|
|
170893
171219
|
glyphs.push(input[input.length - 1]);
|
|
170894
171220
|
process3(glyphs[glyphs.length - 1], entry, glyphs.length - 1);
|
|
170895
171221
|
let count = 0;
|
|
@@ -170899,7 +171225,7 @@ var $55f71433a605c87d$export$2e2bcd8739ae039 = class {
|
|
|
170899
171225
|
found = glyphs[i2].id;
|
|
170900
171226
|
}
|
|
170901
171227
|
if (count === 1) {
|
|
170902
|
-
let result = input.map((
|
|
171228
|
+
let result = input.map((g2) => g2.id);
|
|
170903
171229
|
let cache2 = this.inputCache[found];
|
|
170904
171230
|
if (cache2) cache2.push(result);
|
|
170905
171231
|
else this.inputCache[found] = [
|
|
@@ -172435,11 +172761,11 @@ var $7826f90f6f0cecc9$export$2e2bcd8739ae039 = class extends (0, $649970d87335b3
|
|
|
172435
172761
|
static assignFeatures(plan, glyphs) {
|
|
172436
172762
|
for (let i2 = glyphs.length - 1; i2 >= 0; i2--) {
|
|
172437
172763
|
let codepoint = glyphs[i2].codePoints[0];
|
|
172438
|
-
let
|
|
172439
|
-
if (
|
|
172440
|
-
let decomposed =
|
|
172441
|
-
let
|
|
172442
|
-
return new (0, $10e7b257e1a9a756$export$2e2bcd8739ae039)(plan.font,
|
|
172764
|
+
let d = (0, $90a9d3398ee54fe5$export$f647c9cfdd77d95a)[codepoint] || $7826f90f6f0cecc9$var$decompositions[codepoint];
|
|
172765
|
+
if (d) {
|
|
172766
|
+
let decomposed = d.map((c) => {
|
|
172767
|
+
let g = plan.font.glyphForCodePoint(c);
|
|
172768
|
+
return new (0, $10e7b257e1a9a756$export$2e2bcd8739ae039)(plan.font, g.id, [
|
|
172443
172769
|
c
|
|
172444
172770
|
], glyphs[i2].features);
|
|
172445
172771
|
});
|
|
@@ -172525,25 +172851,25 @@ function $7826f90f6f0cecc9$var$initialReordering(font, glyphs, plan) {
|
|
|
172525
172851
|
let { category, syllableType } = glyphs[start].shaperInfo;
|
|
172526
172852
|
if (syllableType === "symbol_cluster" || syllableType === "non_indic_cluster") continue;
|
|
172527
172853
|
if (syllableType === "broken_cluster" && dottedCircle) {
|
|
172528
|
-
let
|
|
172854
|
+
let g = new (0, $10e7b257e1a9a756$export$2e2bcd8739ae039)(font, dottedCircle, [
|
|
172529
172855
|
9676
|
|
172530
172856
|
]);
|
|
172531
|
-
|
|
172857
|
+
g.shaperInfo = new $7826f90f6f0cecc9$var$IndicInfo(1 << $7826f90f6f0cecc9$var$indicCategory(g), $7826f90f6f0cecc9$var$indicPosition(g), glyphs[start].shaperInfo.syllableType, glyphs[start].shaperInfo.syllable);
|
|
172532
172858
|
let i2 = start;
|
|
172533
172859
|
while (i2 < end && glyphs[i2].shaperInfo.category === (0, $90a9d3398ee54fe5$export$a513ea61a7bee91c).Repha) i2++;
|
|
172534
|
-
glyphs.splice(i2++, 0,
|
|
172860
|
+
glyphs.splice(i2++, 0, g);
|
|
172535
172861
|
end++;
|
|
172536
172862
|
}
|
|
172537
172863
|
let base = end;
|
|
172538
172864
|
let limit = start;
|
|
172539
172865
|
let hasReph = false;
|
|
172540
172866
|
if (indicConfig.rephPos !== (0, $90a9d3398ee54fe5$export$1a1f61c9c4dd9df0).Ra_To_Become_Reph && features.rphf && start + 3 <= end && (indicConfig.rephMode === "Implicit" && !$7826f90f6f0cecc9$var$isJoiner(glyphs[start + 2]) || indicConfig.rephMode === "Explicit" && glyphs[start + 2].shaperInfo.category === (0, $90a9d3398ee54fe5$export$a513ea61a7bee91c).ZWJ)) {
|
|
172541
|
-
let
|
|
172867
|
+
let g = [
|
|
172542
172868
|
glyphs[start].copy(),
|
|
172543
172869
|
glyphs[start + 1].copy(),
|
|
172544
172870
|
glyphs[start + 2].copy()
|
|
172545
172871
|
];
|
|
172546
|
-
if ($7826f90f6f0cecc9$var$wouldSubstitute(
|
|
172872
|
+
if ($7826f90f6f0cecc9$var$wouldSubstitute(g.slice(0, 2), "rphf") || indicConfig.rephMode === "Explicit" && $7826f90f6f0cecc9$var$wouldSubstitute(g, "rphf")) {
|
|
172547
172873
|
limit += 2;
|
|
172548
172874
|
while (limit < end && $7826f90f6f0cecc9$var$isJoiner(glyphs[limit])) limit++;
|
|
172549
172875
|
base = start;
|
|
@@ -172652,11 +172978,11 @@ function $7826f90f6f0cecc9$var$initialReordering(font, glyphs, plan) {
|
|
|
172652
172978
|
let prefLen = 2;
|
|
172653
172979
|
if (features.pref && base + prefLen < end)
|
|
172654
172980
|
for (let i2 = base + 1; i2 + prefLen - 1 < end; i2++) {
|
|
172655
|
-
let
|
|
172981
|
+
let g = [
|
|
172656
172982
|
glyphs[i2].copy(),
|
|
172657
172983
|
glyphs[i2 + 1].copy()
|
|
172658
172984
|
];
|
|
172659
|
-
if ($7826f90f6f0cecc9$var$wouldSubstitute(
|
|
172985
|
+
if ($7826f90f6f0cecc9$var$wouldSubstitute(g, "pref")) {
|
|
172660
172986
|
for (let j2 = 0; j2 < prefLen; j2++) glyphs[i2++].features.pref = true;
|
|
172661
172987
|
if (features.cfar) for (; i2 < end; i2++) glyphs[i2].features.cfar = true;
|
|
172662
172988
|
break;
|
|
@@ -172848,8 +173174,8 @@ var $7ab494fe977143c6$export$2e2bcd8739ae039 = class extends (0, $649970d87335b3
|
|
|
172848
173174
|
let codepoint = glyphs[i2].codePoints[0];
|
|
172849
173175
|
if ($7ab494fe977143c6$var$decompositions[codepoint]) {
|
|
172850
173176
|
let decomposed = $7ab494fe977143c6$var$decompositions[codepoint].map((c) => {
|
|
172851
|
-
let
|
|
172852
|
-
return new (0, $10e7b257e1a9a756$export$2e2bcd8739ae039)(plan.font,
|
|
173177
|
+
let g = plan.font.glyphForCodePoint(c);
|
|
173178
|
+
return new (0, $10e7b257e1a9a756$export$2e2bcd8739ae039)(plan.font, g.id, [
|
|
172853
173179
|
c
|
|
172854
173180
|
], glyphs[i2].features);
|
|
172855
173181
|
});
|
|
@@ -172897,12 +173223,12 @@ function $7ab494fe977143c6$var$reorder(font, glyphs) {
|
|
|
172897
173223
|
let type = info.syllableType;
|
|
172898
173224
|
if (type !== "virama_terminated_cluster" && type !== "standard_cluster" && type !== "broken_cluster") continue;
|
|
172899
173225
|
if (type === "broken_cluster" && dottedCircle) {
|
|
172900
|
-
let
|
|
173226
|
+
let g = new (0, $10e7b257e1a9a756$export$2e2bcd8739ae039)(font, dottedCircle, [
|
|
172901
173227
|
9676
|
|
172902
173228
|
]);
|
|
172903
|
-
|
|
173229
|
+
g.shaperInfo = info;
|
|
172904
173230
|
for (i2 = start; i2 < end && glyphs[i2].shaperInfo.category === "R"; i2++) ;
|
|
172905
|
-
glyphs.splice(++i2, 0,
|
|
173231
|
+
glyphs.splice(++i2, 0, g);
|
|
172906
173232
|
end++;
|
|
172907
173233
|
}
|
|
172908
173234
|
if (info.category === "R" && end - start > 1)
|
|
@@ -173196,18 +173522,18 @@ var $c96c93587d49c14d$export$2e2bcd8739ae039 = class extends (0, $a83b9c36aaa94f
|
|
|
173196
173522
|
let exit = this.getAnchor(curRecord.exitAnchor);
|
|
173197
173523
|
let cur = this.positions[this.glyphIterator.index];
|
|
173198
173524
|
let next = this.positions[nextIndex];
|
|
173199
|
-
let
|
|
173525
|
+
let d;
|
|
173200
173526
|
switch (this.direction) {
|
|
173201
173527
|
case "ltr":
|
|
173202
173528
|
cur.xAdvance = exit.x + cur.xOffset;
|
|
173203
|
-
|
|
173204
|
-
next.xAdvance -=
|
|
173205
|
-
next.xOffset -=
|
|
173529
|
+
d = entry.x + next.xOffset;
|
|
173530
|
+
next.xAdvance -= d;
|
|
173531
|
+
next.xOffset -= d;
|
|
173206
173532
|
break;
|
|
173207
173533
|
case "rtl":
|
|
173208
|
-
|
|
173209
|
-
cur.xAdvance -=
|
|
173210
|
-
cur.xOffset -=
|
|
173534
|
+
d = exit.x + cur.xOffset;
|
|
173535
|
+
cur.xAdvance -= d;
|
|
173536
|
+
cur.xOffset -= d;
|
|
173211
173537
|
next.xAdvance = entry.x + next.xOffset;
|
|
173212
173538
|
break;
|
|
173213
173539
|
}
|
|
@@ -173324,13 +173650,13 @@ var $c96c93587d49c14d$export$2e2bcd8739ae039 = class extends (0, $a83b9c36aaa94f
|
|
|
173324
173650
|
let j2 = glyph.markAttachment;
|
|
173325
173651
|
this.positions[i2].xOffset += this.positions[j2].xOffset;
|
|
173326
173652
|
this.positions[i2].yOffset += this.positions[j2].yOffset;
|
|
173327
|
-
if (this.direction === "ltr") for (let
|
|
173328
|
-
this.positions[i2].xOffset -= this.positions[
|
|
173329
|
-
this.positions[i2].yOffset -= this.positions[
|
|
173653
|
+
if (this.direction === "ltr") for (let k2 = j2; k2 < i2; k2++) {
|
|
173654
|
+
this.positions[i2].xOffset -= this.positions[k2].xAdvance;
|
|
173655
|
+
this.positions[i2].yOffset -= this.positions[k2].yAdvance;
|
|
173330
173656
|
}
|
|
173331
|
-
else for (let
|
|
173332
|
-
this.positions[i2].xOffset += this.positions[
|
|
173333
|
-
this.positions[i2].yOffset += this.positions[
|
|
173657
|
+
else for (let k2 = j2 + 1; k2 < i2 + 1; k2++) {
|
|
173658
|
+
this.positions[i2].xOffset += this.positions[k2].xAdvance;
|
|
173659
|
+
this.positions[i2].yOffset += this.positions[k2].yAdvance;
|
|
173334
173660
|
}
|
|
173335
173661
|
}
|
|
173336
173662
|
}
|
|
@@ -173564,7 +173890,7 @@ var $f43aec954cdfdf21$export$2e2bcd8739ae039 = class _$f43aec954cdfdf21$export$2
|
|
|
173564
173890
|
if (this._bbox) return this._bbox;
|
|
173565
173891
|
let bbox = new (0, $f34600ab9d7f70d8$export$2e2bcd8739ae039)();
|
|
173566
173892
|
let cx2 = 0, cy2 = 0;
|
|
173567
|
-
let
|
|
173893
|
+
let f4 = (t2) => Math.pow(1 - t2, 3) * p0[i2] + 3 * Math.pow(1 - t2, 2) * t2 * p1[i2] + 3 * (1 - t2) * Math.pow(t2, 2) * p2[i2] + Math.pow(t2, 3) * p3[i2];
|
|
173568
173894
|
for (let c of this.commands) switch (c.command) {
|
|
173569
173895
|
case "moveTo":
|
|
173570
173896
|
case "lineTo":
|
|
@@ -173607,8 +173933,8 @@ var $f43aec954cdfdf21$export$2e2bcd8739ae039 = class _$f43aec954cdfdf21$export$2
|
|
|
173607
173933
|
if (b2 === 0) continue;
|
|
173608
173934
|
let t3 = -c / b2;
|
|
173609
173935
|
if (0 < t3 && t3 < 1) {
|
|
173610
|
-
if (i2 === 0) bbox.addPoint(
|
|
173611
|
-
else if (i2 === 1) bbox.addPoint(bbox.maxX,
|
|
173936
|
+
if (i2 === 0) bbox.addPoint(f4(t3), bbox.maxY);
|
|
173937
|
+
else if (i2 === 1) bbox.addPoint(bbox.maxX, f4(t3));
|
|
173612
173938
|
}
|
|
173613
173939
|
continue;
|
|
173614
173940
|
}
|
|
@@ -173616,13 +173942,13 @@ var $f43aec954cdfdf21$export$2e2bcd8739ae039 = class _$f43aec954cdfdf21$export$2
|
|
|
173616
173942
|
if (b2ac < 0) continue;
|
|
173617
173943
|
let t1 = (-b2 + Math.sqrt(b2ac)) / (2 * a);
|
|
173618
173944
|
if (0 < t1 && t1 < 1) {
|
|
173619
|
-
if (i2 === 0) bbox.addPoint(
|
|
173620
|
-
else if (i2 === 1) bbox.addPoint(bbox.maxX,
|
|
173945
|
+
if (i2 === 0) bbox.addPoint(f4(t1), bbox.maxY);
|
|
173946
|
+
else if (i2 === 1) bbox.addPoint(bbox.maxX, f4(t1));
|
|
173621
173947
|
}
|
|
173622
173948
|
let t2 = (-b2 - Math.sqrt(b2ac)) / (2 * a);
|
|
173623
173949
|
if (0 < t2 && t2 < 1) {
|
|
173624
|
-
if (i2 === 0) bbox.addPoint(
|
|
173625
|
-
else if (i2 === 1) bbox.addPoint(bbox.maxX,
|
|
173950
|
+
if (i2 === 0) bbox.addPoint(f4(t2), bbox.maxY);
|
|
173951
|
+
else if (i2 === 1) bbox.addPoint(bbox.maxX, f4(t2));
|
|
173626
173952
|
}
|
|
173627
173953
|
}
|
|
173628
173954
|
cx2 = p3x;
|
|
@@ -174318,8 +174644,8 @@ var $69aac16029968692$export$2e2bcd8739ae039 = class extends (0, $f92906be28e617
|
|
|
174318
174644
|
}
|
|
174319
174645
|
let contours = [];
|
|
174320
174646
|
let cur = [];
|
|
174321
|
-
for (let
|
|
174322
|
-
var point = points[
|
|
174647
|
+
for (let k2 = 0; k2 < points.length; k2++) {
|
|
174648
|
+
var point = points[k2];
|
|
174323
174649
|
cur.push(point);
|
|
174324
174650
|
if (point.endContour) {
|
|
174325
174651
|
contours.push(cur);
|
|
@@ -174357,17 +174683,17 @@ var $69aac16029968692$export$2e2bcd8739ae039 = class extends (0, $f92906be28e617
|
|
|
174357
174683
|
}
|
|
174358
174684
|
path3.moveTo(firstPt.x, firstPt.y);
|
|
174359
174685
|
for (let j2 = start; j2 < contour.length; j2++) {
|
|
174360
|
-
let
|
|
174686
|
+
let pt2 = contour[j2];
|
|
174361
174687
|
let prevPt = j2 === 0 ? firstPt : contour[j2 - 1];
|
|
174362
|
-
if (prevPt.onCurve &&
|
|
174363
|
-
else if (prevPt.onCurve && !
|
|
174364
|
-
else if (!prevPt.onCurve && !
|
|
174365
|
-
let midX = (prevPt.x +
|
|
174366
|
-
let midY = (prevPt.y +
|
|
174688
|
+
if (prevPt.onCurve && pt2.onCurve) path3.lineTo(pt2.x, pt2.y);
|
|
174689
|
+
else if (prevPt.onCurve && !pt2.onCurve) var curvePt = pt2;
|
|
174690
|
+
else if (!prevPt.onCurve && !pt2.onCurve) {
|
|
174691
|
+
let midX = (prevPt.x + pt2.x) / 2;
|
|
174692
|
+
let midY = (prevPt.y + pt2.y) / 2;
|
|
174367
174693
|
path3.quadraticCurveTo(prevPt.x, prevPt.y, midX, midY);
|
|
174368
|
-
var curvePt =
|
|
174369
|
-
} else if (!prevPt.onCurve &&
|
|
174370
|
-
path3.quadraticCurveTo(curvePt.x, curvePt.y,
|
|
174694
|
+
var curvePt = pt2;
|
|
174695
|
+
} else if (!prevPt.onCurve && pt2.onCurve) {
|
|
174696
|
+
path3.quadraticCurveTo(curvePt.x, curvePt.y, pt2.x, pt2.y);
|
|
174371
174697
|
var curvePt = null;
|
|
174372
174698
|
} else throw new Error("Unknown TTF path state");
|
|
174373
174699
|
}
|
|
@@ -174914,7 +175240,7 @@ var $0d411f0165859681$export$2e2bcd8739ae039 = class extends (0, $f92906be28e617
|
|
|
174914
175240
|
}
|
|
174915
175241
|
}
|
|
174916
175242
|
if (baseLayer == null) {
|
|
174917
|
-
var
|
|
175243
|
+
var g = this._font._getBaseGlyph(this.id);
|
|
174918
175244
|
var color = {
|
|
174919
175245
|
red: 0,
|
|
174920
175246
|
green: 0,
|
|
@@ -174922,15 +175248,15 @@ var $0d411f0165859681$export$2e2bcd8739ae039 = class extends (0, $f92906be28e617
|
|
|
174922
175248
|
alpha: 255
|
|
174923
175249
|
};
|
|
174924
175250
|
return [
|
|
174925
|
-
new $0d411f0165859681$var$COLRLayer(
|
|
175251
|
+
new $0d411f0165859681$var$COLRLayer(g, color)
|
|
174926
175252
|
];
|
|
174927
175253
|
}
|
|
174928
175254
|
let layers = [];
|
|
174929
175255
|
for (let i2 = baseLayer.firstLayerIndex; i2 < baseLayer.firstLayerIndex + baseLayer.numLayers; i2++) {
|
|
174930
175256
|
var rec = colr.layerRecords[i2];
|
|
174931
175257
|
var color = cpal.colorRecords[rec.paletteIndex];
|
|
174932
|
-
var
|
|
174933
|
-
layers.push(new $0d411f0165859681$var$COLRLayer(
|
|
175258
|
+
var g = this._font._getBaseGlyph(rec.gid);
|
|
175259
|
+
layers.push(new $0d411f0165859681$var$COLRLayer(g, color));
|
|
174934
175260
|
}
|
|
174935
175261
|
return layers;
|
|
174936
175262
|
}
|
|
@@ -175000,7 +175326,7 @@ var $0bb840cac04e911b$export$2e2bcd8739ae039 = class {
|
|
|
175000
175326
|
offsetToData = stream2.pos;
|
|
175001
175327
|
stream2.pos = here;
|
|
175002
175328
|
}
|
|
175003
|
-
let origPoints = glyphPoints.map((
|
|
175329
|
+
let origPoints = glyphPoints.map((pt2) => pt2.copy());
|
|
175004
175330
|
tupleCount &= $0bb840cac04e911b$var$TUPLE_COUNT_MASK;
|
|
175005
175331
|
for (let i2 = 0; i2 < tupleCount; i2++) {
|
|
175006
175332
|
let tupleDataSize = stream2.readUInt16BE();
|
|
@@ -175036,7 +175362,7 @@ var $0bb840cac04e911b$export$2e2bcd8739ae039 = class {
|
|
|
175036
175362
|
point.y += Math.round(yDeltas[i3] * factor);
|
|
175037
175363
|
}
|
|
175038
175364
|
else {
|
|
175039
|
-
let outPoints = origPoints.map((
|
|
175365
|
+
let outPoints = origPoints.map((pt2) => pt2.copy());
|
|
175040
175366
|
let hasDelta = glyphPoints.map(() => false);
|
|
175041
175367
|
for (let i3 = 0; i3 < points.length; i3++) {
|
|
175042
175368
|
let idx = points[i3];
|
|
@@ -175119,8 +175445,8 @@ var $0bb840cac04e911b$export$2e2bcd8739ae039 = class {
|
|
|
175119
175445
|
while (point < points.length) {
|
|
175120
175446
|
let firstPoint = point;
|
|
175121
175447
|
let endPoint = point;
|
|
175122
|
-
let
|
|
175123
|
-
while (!
|
|
175448
|
+
let pt2 = points[endPoint];
|
|
175449
|
+
while (!pt2.endContour) pt2 = points[++endPoint];
|
|
175124
175450
|
while (point <= endPoint && !hasDelta[point]) point++;
|
|
175125
175451
|
if (point > endPoint) continue;
|
|
175126
175452
|
let firstDelta = point;
|
|
@@ -175148,24 +175474,24 @@ var $0bb840cac04e911b$export$2e2bcd8739ae039 = class {
|
|
|
175148
175474
|
"y"
|
|
175149
175475
|
];
|
|
175150
175476
|
for (let i2 = 0; i2 < iterable.length; i2++) {
|
|
175151
|
-
let
|
|
175152
|
-
if (inPoints[ref1][
|
|
175477
|
+
let k2 = iterable[i2];
|
|
175478
|
+
if (inPoints[ref1][k2] > inPoints[ref2][k2]) {
|
|
175153
175479
|
var p = ref1;
|
|
175154
175480
|
ref1 = ref2;
|
|
175155
175481
|
ref2 = p;
|
|
175156
175482
|
}
|
|
175157
|
-
let in1 = inPoints[ref1][
|
|
175158
|
-
let in2 = inPoints[ref2][
|
|
175159
|
-
let out1 = outPoints[ref1][
|
|
175160
|
-
let out2 = outPoints[ref2][
|
|
175483
|
+
let in1 = inPoints[ref1][k2];
|
|
175484
|
+
let in2 = inPoints[ref2][k2];
|
|
175485
|
+
let out1 = outPoints[ref1][k2];
|
|
175486
|
+
let out2 = outPoints[ref2][k2];
|
|
175161
175487
|
if (in1 !== in2 || out1 === out2) {
|
|
175162
175488
|
let scale = in1 === in2 ? 0 : (out2 - out1) / (in2 - in1);
|
|
175163
175489
|
for (let p3 = p1; p3 <= p2; p3++) {
|
|
175164
|
-
let out = inPoints[p3][
|
|
175490
|
+
let out = inPoints[p3][k2];
|
|
175165
175491
|
if (out <= in1) out += out1 - in1;
|
|
175166
175492
|
else if (out >= in2) out += out2 - in2;
|
|
175167
175493
|
else out = out1 + (out - in1) * scale;
|
|
175168
|
-
outPoints[p3][
|
|
175494
|
+
outPoints[p3][k2] = out;
|
|
175169
175495
|
}
|
|
175170
175496
|
}
|
|
175171
175497
|
}
|
|
@@ -177935,9 +178261,9 @@ var PNG = class _PNG {
|
|
|
177935
178261
|
const { length } = data;
|
|
177936
178262
|
let pos = 0;
|
|
177937
178263
|
function pass(x0, y0, dx, dy, singlePass = false) {
|
|
177938
|
-
const
|
|
178264
|
+
const w = Math.ceil((width - x0) / dx);
|
|
177939
178265
|
const h2 = Math.ceil((height - y0) / dy);
|
|
177940
|
-
const scanlineLength = pixelBytes *
|
|
178266
|
+
const scanlineLength = pixelBytes * w;
|
|
177941
178267
|
const buffer = singlePass ? pixels : Buffer.alloc(scanlineLength * h2);
|
|
177942
178268
|
let row = 0;
|
|
177943
178269
|
let c = 0;
|
|
@@ -178005,7 +178331,7 @@ var PNG = class _PNG {
|
|
|
178005
178331
|
if (!singlePass) {
|
|
178006
178332
|
let pixelsPos = ((y0 + row * dy) * width + x0) * pixelBytes;
|
|
178007
178333
|
let bufferPos = row * scanlineLength;
|
|
178008
|
-
for (i2 = 0; i2 <
|
|
178334
|
+
for (i2 = 0; i2 < w; i2++) {
|
|
178009
178335
|
for (let j2 = 0; j2 < pixelBytes; j2++)
|
|
178010
178336
|
pixels[pixelsPos++] = buffer[bufferPos++];
|
|
178011
178337
|
pixelsPos += (dx - 1) * pixelBytes;
|
|
@@ -178045,7 +178371,7 @@ var PNG = class _PNG {
|
|
|
178045
178371
|
return ret;
|
|
178046
178372
|
}
|
|
178047
178373
|
copyToImageData(imageData, pixels) {
|
|
178048
|
-
let j2,
|
|
178374
|
+
let j2, k2;
|
|
178049
178375
|
let { colors } = this;
|
|
178050
178376
|
let palette = null;
|
|
178051
178377
|
let alpha = this.hasAlphaChannel;
|
|
@@ -178060,22 +178386,22 @@ var PNG = class _PNG {
|
|
|
178060
178386
|
let i2 = j2 = 0;
|
|
178061
178387
|
if (colors === 1) {
|
|
178062
178388
|
while (i2 < length) {
|
|
178063
|
-
|
|
178064
|
-
const v2 = input[
|
|
178389
|
+
k2 = palette ? pixels[i2 / 4] * 4 : j2;
|
|
178390
|
+
const v2 = input[k2++];
|
|
178065
178391
|
data[i2++] = v2;
|
|
178066
178392
|
data[i2++] = v2;
|
|
178067
178393
|
data[i2++] = v2;
|
|
178068
|
-
data[i2++] = alpha ? input[
|
|
178069
|
-
j2 =
|
|
178394
|
+
data[i2++] = alpha ? input[k2++] : 255;
|
|
178395
|
+
j2 = k2;
|
|
178070
178396
|
}
|
|
178071
178397
|
} else {
|
|
178072
178398
|
while (i2 < length) {
|
|
178073
|
-
|
|
178074
|
-
data[i2++] = input[
|
|
178075
|
-
data[i2++] = input[
|
|
178076
|
-
data[i2++] = input[
|
|
178077
|
-
data[i2++] = alpha ? input[
|
|
178078
|
-
j2 =
|
|
178399
|
+
k2 = palette ? pixels[i2 / 4] * 4 : j2;
|
|
178400
|
+
data[i2++] = input[k2++];
|
|
178401
|
+
data[i2++] = input[k2++];
|
|
178402
|
+
data[i2++] = input[k2++];
|
|
178403
|
+
data[i2++] = alpha ? input[k2++] : 255;
|
|
178404
|
+
j2 = k2;
|
|
178079
178405
|
}
|
|
178080
178406
|
}
|
|
178081
178407
|
}
|
|
@@ -178531,8 +178857,8 @@ var PDFNameTree = class extends PDFTree {
|
|
|
178531
178857
|
_keysName() {
|
|
178532
178858
|
return "Names";
|
|
178533
178859
|
}
|
|
178534
|
-
_dataForKey(
|
|
178535
|
-
return new String(
|
|
178860
|
+
_dataForKey(k2) {
|
|
178861
|
+
return new String(k2);
|
|
178536
178862
|
}
|
|
178537
178863
|
};
|
|
178538
178864
|
function md5Hash(data) {
|
|
@@ -178565,11 +178891,11 @@ function rc4(data, key) {
|
|
|
178565
178891
|
[s2[i2], s2[j2]] = [s2[j2], s2[i2]];
|
|
178566
178892
|
}
|
|
178567
178893
|
const output = new Uint8Array(data.length);
|
|
178568
|
-
for (let i2 = 0, j3 = 0,
|
|
178894
|
+
for (let i2 = 0, j3 = 0, k2 = 0; k2 < data.length; k2++) {
|
|
178569
178895
|
i2 = i2 + 1 & 255;
|
|
178570
178896
|
j3 = j3 + s2[i2] & 255;
|
|
178571
178897
|
[s2[i2], s2[j3]] = [s2[j3], s2[i2]];
|
|
178572
|
-
output[
|
|
178898
|
+
output[k2] = data[k2] ^ s2[s2[i2] + s2[j3] & 255];
|
|
178573
178899
|
}
|
|
178574
178900
|
return output;
|
|
178575
178901
|
}
|
|
@@ -179954,8 +180280,8 @@ var arcToSegments = function(x3, y2, rx, ry, large, sweep, rotateX, ox, oy) {
|
|
|
179954
180280
|
const y0 = a10 * ox + a11 * oy;
|
|
179955
180281
|
const x1 = a00 * x3 + a01 * y2;
|
|
179956
180282
|
const y1 = a10 * x3 + a11 * y2;
|
|
179957
|
-
const
|
|
179958
|
-
let sfactor_sq = 1 /
|
|
180283
|
+
const d = (x1 - x0) * (x1 - x0) + (y1 - y0) * (y1 - y0);
|
|
180284
|
+
let sfactor_sq = 1 / d - 0.25;
|
|
179959
180285
|
if (sfactor_sq < 0) {
|
|
179960
180286
|
sfactor_sq = 0;
|
|
179961
180287
|
}
|
|
@@ -180023,8 +180349,8 @@ var VectorMixin = {
|
|
|
180023
180349
|
closePath() {
|
|
180024
180350
|
return this.addContent("h");
|
|
180025
180351
|
},
|
|
180026
|
-
lineWidth(
|
|
180027
|
-
return this.addContent(`${number$1(
|
|
180352
|
+
lineWidth(w) {
|
|
180353
|
+
return this.addContent(`${number$1(w)} w`);
|
|
180028
180354
|
},
|
|
180029
180355
|
_CAP_STYLES: {
|
|
180030
180356
|
BUTT: 0,
|
|
@@ -180078,10 +180404,10 @@ var VectorMixin = {
|
|
|
180078
180404
|
quadraticCurveTo(cpx, cpy, x3, y2) {
|
|
180079
180405
|
return this.addContent(`${number$1(cpx)} ${number$1(cpy)} ${number$1(x3)} ${number$1(y2)} v`);
|
|
180080
180406
|
},
|
|
180081
|
-
rect(x3, y2,
|
|
180082
|
-
return this.addContent(`${number$1(x3)} ${number$1(y2)} ${number$1(
|
|
180407
|
+
rect(x3, y2, w, h2) {
|
|
180408
|
+
return this.addContent(`${number$1(x3)} ${number$1(y2)} ${number$1(w)} ${number$1(h2)} re`);
|
|
180083
180409
|
},
|
|
180084
|
-
roundedRect(x3, y2,
|
|
180410
|
+
roundedRect(x3, y2, w, h2, borderRadius) {
|
|
180085
180411
|
if (borderRadius == null) {
|
|
180086
180412
|
borderRadius = 0;
|
|
180087
180413
|
}
|
|
@@ -180091,7 +180417,7 @@ var VectorMixin = {
|
|
|
180091
180417
|
} else {
|
|
180092
180418
|
radii = [borderRadius, borderRadius, borderRadius, borderRadius];
|
|
180093
180419
|
}
|
|
180094
|
-
const limit = Math.min(0.5 *
|
|
180420
|
+
const limit = Math.min(0.5 * w, 0.5 * h2);
|
|
180095
180421
|
const rTL = Math.max(0, Math.min(radii[0] || 0, limit));
|
|
180096
180422
|
const rTR = Math.max(0, Math.min(radii[1] || 0, limit));
|
|
180097
180423
|
const rBR = Math.max(0, Math.min(radii[2] || 0, limit));
|
|
@@ -180101,13 +180427,13 @@ var VectorMixin = {
|
|
|
180101
180427
|
const cpBL = rBL * (1 - KAPPA);
|
|
180102
180428
|
const cpTL = rTL * (1 - KAPPA);
|
|
180103
180429
|
this.moveTo(x3 + rTL, y2);
|
|
180104
|
-
this.lineTo(x3 +
|
|
180430
|
+
this.lineTo(x3 + w - rTR, y2);
|
|
180105
180431
|
if (rTR > 0) {
|
|
180106
|
-
this.bezierCurveTo(x3 +
|
|
180432
|
+
this.bezierCurveTo(x3 + w - cpTR, y2, x3 + w, y2 + cpTR, x3 + w, y2 + rTR);
|
|
180107
180433
|
}
|
|
180108
|
-
this.lineTo(x3 +
|
|
180434
|
+
this.lineTo(x3 + w, y2 + h2 - rBR);
|
|
180109
180435
|
if (rBR > 0) {
|
|
180110
|
-
this.bezierCurveTo(x3 +
|
|
180436
|
+
this.bezierCurveTo(x3 + w, y2 + h2 - cpBR, x3 + w - cpBR, y2 + h2, x3 + w - rBR, y2 + h2);
|
|
180111
180437
|
}
|
|
180112
180438
|
this.lineTo(x3 + rBL, y2 + h2);
|
|
180113
180439
|
if (rBL > 0) {
|
|
@@ -181073,11 +181399,11 @@ var LineWrapper = class {
|
|
|
181073
181399
|
wordWidth(word) {
|
|
181074
181400
|
return PDFNumber(this.document.widthOfString(word, this) + this.characterSpacing + this.wordSpacing);
|
|
181075
181401
|
}
|
|
181076
|
-
canFit(word,
|
|
181402
|
+
canFit(word, w) {
|
|
181077
181403
|
if (word[word.length - 1] != SOFT_HYPHEN) {
|
|
181078
|
-
return
|
|
181404
|
+
return w <= this.spaceLeft;
|
|
181079
181405
|
}
|
|
181080
|
-
return
|
|
181406
|
+
return w + this.wordWidth(HYPHEN2) <= this.spaceLeft;
|
|
181081
181407
|
}
|
|
181082
181408
|
eachWord(text, fn) {
|
|
181083
181409
|
let bk;
|
|
@@ -181087,46 +181413,46 @@ var LineWrapper = class {
|
|
|
181087
181413
|
while (bk = breaker.nextBreak()) {
|
|
181088
181414
|
var shouldContinue;
|
|
181089
181415
|
let word = text.slice((last2 != null ? last2.position : void 0) || 0, bk.position);
|
|
181090
|
-
let
|
|
181091
|
-
if (
|
|
181416
|
+
let w = wordWidths[word] != null ? wordWidths[word] : wordWidths[word] = this.wordWidth(word);
|
|
181417
|
+
if (w > this.lineWidth + this.continuedX) {
|
|
181092
181418
|
let lbk = last2;
|
|
181093
181419
|
const fbk = {};
|
|
181094
181420
|
while (word.length) {
|
|
181095
181421
|
var l3, mightGrow;
|
|
181096
|
-
if (
|
|
181097
|
-
l3 = Math.ceil(this.spaceLeft / (
|
|
181098
|
-
|
|
181099
|
-
mightGrow =
|
|
181422
|
+
if (w > this.spaceLeft) {
|
|
181423
|
+
l3 = Math.ceil(this.spaceLeft / (w / word.length));
|
|
181424
|
+
w = this.wordWidth(word.slice(0, l3));
|
|
181425
|
+
mightGrow = w <= this.spaceLeft && l3 < word.length;
|
|
181100
181426
|
} else {
|
|
181101
181427
|
l3 = word.length;
|
|
181102
181428
|
}
|
|
181103
|
-
let mustShrink =
|
|
181429
|
+
let mustShrink = w > this.spaceLeft && l3 > 0;
|
|
181104
181430
|
while (mustShrink || mightGrow) {
|
|
181105
181431
|
if (mustShrink) {
|
|
181106
|
-
|
|
181107
|
-
mustShrink =
|
|
181432
|
+
w = this.wordWidth(word.slice(0, --l3));
|
|
181433
|
+
mustShrink = w > this.spaceLeft && l3 > 0;
|
|
181108
181434
|
} else {
|
|
181109
|
-
|
|
181110
|
-
mustShrink =
|
|
181111
|
-
mightGrow =
|
|
181435
|
+
w = this.wordWidth(word.slice(0, ++l3));
|
|
181436
|
+
mustShrink = w > this.spaceLeft && l3 > 0;
|
|
181437
|
+
mightGrow = w <= this.spaceLeft && l3 < word.length;
|
|
181112
181438
|
}
|
|
181113
181439
|
}
|
|
181114
181440
|
if (l3 === 0 && this.spaceLeft === this.lineWidth) {
|
|
181115
181441
|
l3 = 1;
|
|
181116
181442
|
}
|
|
181117
181443
|
fbk.required = bk.required || l3 < word.length;
|
|
181118
|
-
shouldContinue = fn(word.slice(0, l3),
|
|
181444
|
+
shouldContinue = fn(word.slice(0, l3), w, fbk, lbk);
|
|
181119
181445
|
lbk = {
|
|
181120
181446
|
required: false
|
|
181121
181447
|
};
|
|
181122
181448
|
word = word.slice(l3);
|
|
181123
|
-
|
|
181449
|
+
w = this.wordWidth(word);
|
|
181124
181450
|
if (shouldContinue === false) {
|
|
181125
181451
|
break;
|
|
181126
181452
|
}
|
|
181127
181453
|
}
|
|
181128
181454
|
} else {
|
|
181129
|
-
shouldContinue = fn(word,
|
|
181455
|
+
shouldContinue = fn(word, w, bk, last2);
|
|
181130
181456
|
}
|
|
181131
181457
|
if (shouldContinue === false) {
|
|
181132
181458
|
break;
|
|
@@ -181169,17 +181495,17 @@ var LineWrapper = class {
|
|
|
181169
181495
|
return lc++;
|
|
181170
181496
|
};
|
|
181171
181497
|
this.emit("sectionStart", options, this);
|
|
181172
|
-
this.eachWord(text, (word,
|
|
181498
|
+
this.eachWord(text, (word, w, bk, last2) => {
|
|
181173
181499
|
if (last2 == null || last2.required) {
|
|
181174
181500
|
this.emit("firstLine", options, this);
|
|
181175
181501
|
this.spaceLeft = this.lineWidth;
|
|
181176
181502
|
}
|
|
181177
|
-
if (this.canFit(word,
|
|
181503
|
+
if (this.canFit(word, w)) {
|
|
181178
181504
|
buffer += word;
|
|
181179
|
-
textWidth +=
|
|
181505
|
+
textWidth += w;
|
|
181180
181506
|
wc++;
|
|
181181
181507
|
}
|
|
181182
|
-
if (bk.required || !this.canFit(word,
|
|
181508
|
+
if (bk.required || !this.canFit(word, w)) {
|
|
181183
181509
|
const lh = document.currentLineHeight(true);
|
|
181184
181510
|
if (this.height != null && this.ellipsis && PDFNumber(document.y + lh * 2) > this.maxY && this.column >= this.columns) {
|
|
181185
181511
|
if (this.ellipsis === true) {
|
|
@@ -181197,10 +181523,10 @@ var LineWrapper = class {
|
|
|
181197
181523
|
textWidth = this.wordWidth(buffer);
|
|
181198
181524
|
}
|
|
181199
181525
|
if (bk.required) {
|
|
181200
|
-
if (
|
|
181526
|
+
if (w > this.spaceLeft) {
|
|
181201
181527
|
emitLine();
|
|
181202
181528
|
buffer = word;
|
|
181203
|
-
textWidth =
|
|
181529
|
+
textWidth = w;
|
|
181204
181530
|
wc = 1;
|
|
181205
181531
|
}
|
|
181206
181532
|
this.emit("lastLine", options, this);
|
|
@@ -181226,13 +181552,13 @@ var LineWrapper = class {
|
|
|
181226
181552
|
textWidth = 0;
|
|
181227
181553
|
return wc = 0;
|
|
181228
181554
|
} else {
|
|
181229
|
-
this.spaceLeft = this.lineWidth -
|
|
181555
|
+
this.spaceLeft = this.lineWidth - w;
|
|
181230
181556
|
buffer = word;
|
|
181231
|
-
textWidth =
|
|
181557
|
+
textWidth = w;
|
|
181232
181558
|
return wc = 1;
|
|
181233
181559
|
}
|
|
181234
181560
|
} else {
|
|
181235
|
-
return this.spaceLeft -=
|
|
181561
|
+
return this.spaceLeft -= w;
|
|
181236
181562
|
}
|
|
181237
181563
|
});
|
|
181238
181564
|
if (wc > 0) {
|
|
@@ -182111,29 +182437,29 @@ var ImagesMixin = {
|
|
|
182111
182437
|
if (!ignoreOrientation && image.orientation > 4) {
|
|
182112
182438
|
[width, height] = [height, width];
|
|
182113
182439
|
}
|
|
182114
|
-
let
|
|
182440
|
+
let w = options.width || width;
|
|
182115
182441
|
let h2 = options.height || height;
|
|
182116
182442
|
if (options.width && !options.height) {
|
|
182117
|
-
const wp =
|
|
182118
|
-
|
|
182443
|
+
const wp = w / width;
|
|
182444
|
+
w = width * wp;
|
|
182119
182445
|
h2 = height * wp;
|
|
182120
182446
|
} else if (options.height && !options.width) {
|
|
182121
182447
|
const hp = h2 / height;
|
|
182122
|
-
|
|
182448
|
+
w = width * hp;
|
|
182123
182449
|
h2 = height * hp;
|
|
182124
182450
|
} else if (options.scale) {
|
|
182125
|
-
|
|
182451
|
+
w = width * options.scale;
|
|
182126
182452
|
h2 = height * options.scale;
|
|
182127
182453
|
} else if (options.fit) {
|
|
182128
182454
|
[bw, bh] = options.fit;
|
|
182129
182455
|
bp = bw / bh;
|
|
182130
182456
|
ip = width / height;
|
|
182131
182457
|
if (ip > bp) {
|
|
182132
|
-
|
|
182458
|
+
w = bw;
|
|
182133
182459
|
h2 = bw / ip;
|
|
182134
182460
|
} else {
|
|
182135
182461
|
h2 = bh;
|
|
182136
|
-
|
|
182462
|
+
w = bh * ip;
|
|
182137
182463
|
}
|
|
182138
182464
|
} else if (options.cover) {
|
|
182139
182465
|
[bw, bh] = options.cover;
|
|
@@ -182141,17 +182467,17 @@ var ImagesMixin = {
|
|
|
182141
182467
|
ip = width / height;
|
|
182142
182468
|
if (ip > bp) {
|
|
182143
182469
|
h2 = bh;
|
|
182144
|
-
|
|
182470
|
+
w = bh * ip;
|
|
182145
182471
|
} else {
|
|
182146
|
-
|
|
182472
|
+
w = bw;
|
|
182147
182473
|
h2 = bw / ip;
|
|
182148
182474
|
}
|
|
182149
182475
|
}
|
|
182150
182476
|
if (options.fit || options.cover) {
|
|
182151
182477
|
if (options.align === "center") {
|
|
182152
|
-
x3 = x3 + bw / 2 -
|
|
182478
|
+
x3 = x3 + bw / 2 - w / 2;
|
|
182153
182479
|
} else if (options.align === "right") {
|
|
182154
|
-
x3 = x3 + bw -
|
|
182480
|
+
x3 = x3 + bw - w;
|
|
182155
182481
|
}
|
|
182156
182482
|
if (options.valign === "center") {
|
|
182157
182483
|
y2 = y2 + bh / 2 - h2 / 2;
|
|
@@ -182163,7 +182489,7 @@ var ImagesMixin = {
|
|
|
182163
182489
|
let xTransform = x3;
|
|
182164
182490
|
let yTransform = y2;
|
|
182165
182491
|
let hTransform = h2;
|
|
182166
|
-
let wTransform =
|
|
182492
|
+
let wTransform = w;
|
|
182167
182493
|
if (!ignoreOrientation) {
|
|
182168
182494
|
switch (image.orientation) {
|
|
182169
182495
|
default:
|
|
@@ -182172,16 +182498,16 @@ var ImagesMixin = {
|
|
|
182172
182498
|
yTransform += h2;
|
|
182173
182499
|
break;
|
|
182174
182500
|
case 2:
|
|
182175
|
-
wTransform = -
|
|
182501
|
+
wTransform = -w;
|
|
182176
182502
|
hTransform = -h2;
|
|
182177
|
-
xTransform +=
|
|
182503
|
+
xTransform += w;
|
|
182178
182504
|
yTransform += h2;
|
|
182179
182505
|
break;
|
|
182180
182506
|
case 3:
|
|
182181
182507
|
originX = x3;
|
|
182182
182508
|
originY = y2;
|
|
182183
182509
|
hTransform = -h2;
|
|
182184
|
-
xTransform -=
|
|
182510
|
+
xTransform -= w;
|
|
182185
182511
|
rotateAngle = 180;
|
|
182186
182512
|
break;
|
|
182187
182513
|
case 4:
|
|
@@ -182190,7 +182516,7 @@ var ImagesMixin = {
|
|
|
182190
182516
|
originX = x3;
|
|
182191
182517
|
originY = y2;
|
|
182192
182518
|
wTransform = h2;
|
|
182193
|
-
hTransform =
|
|
182519
|
+
hTransform = w;
|
|
182194
182520
|
yTransform -= hTransform;
|
|
182195
182521
|
rotateAngle = 90;
|
|
182196
182522
|
break;
|
|
@@ -182198,13 +182524,13 @@ var ImagesMixin = {
|
|
|
182198
182524
|
originX = x3;
|
|
182199
182525
|
originY = y2;
|
|
182200
182526
|
wTransform = h2;
|
|
182201
|
-
hTransform = -
|
|
182527
|
+
hTransform = -w;
|
|
182202
182528
|
rotateAngle = 90;
|
|
182203
182529
|
break;
|
|
182204
182530
|
case 7:
|
|
182205
182531
|
originX = x3;
|
|
182206
182532
|
originY = y2;
|
|
182207
|
-
hTransform = -
|
|
182533
|
+
hTransform = -w;
|
|
182208
182534
|
wTransform = -h2;
|
|
182209
182535
|
xTransform += h2;
|
|
182210
182536
|
rotateAngle = 90;
|
|
@@ -182213,9 +182539,9 @@ var ImagesMixin = {
|
|
|
182213
182539
|
originX = x3;
|
|
182214
182540
|
originY = y2;
|
|
182215
182541
|
wTransform = h2;
|
|
182216
|
-
hTransform = -
|
|
182542
|
+
hTransform = -w;
|
|
182217
182543
|
xTransform -= h2;
|
|
182218
|
-
yTransform +=
|
|
182544
|
+
yTransform += w;
|
|
182219
182545
|
rotateAngle = -90;
|
|
182220
182546
|
break;
|
|
182221
182547
|
}
|
|
@@ -182224,10 +182550,10 @@ var ImagesMixin = {
|
|
|
182224
182550
|
yTransform += h2;
|
|
182225
182551
|
}
|
|
182226
182552
|
if (options.link != null) {
|
|
182227
|
-
this.link(x3, y2,
|
|
182553
|
+
this.link(x3, y2, w, h2, options.link);
|
|
182228
182554
|
}
|
|
182229
182555
|
if (options.goTo != null) {
|
|
182230
|
-
this.goTo(x3, y2,
|
|
182556
|
+
this.goTo(x3, y2, w, h2, options.goTo);
|
|
182231
182557
|
}
|
|
182232
182558
|
if (options.destination != null) {
|
|
182233
182559
|
this.addNamedDestination(options.destination, "XYZ", x3, y2, null);
|
|
@@ -182269,9 +182595,9 @@ var PDFAnnotationReference = class {
|
|
|
182269
182595
|
}
|
|
182270
182596
|
};
|
|
182271
182597
|
var AnnotationsMixin = {
|
|
182272
|
-
annotate(x3, y2,
|
|
182598
|
+
annotate(x3, y2, w, h2, options) {
|
|
182273
182599
|
options.Type = "Annot";
|
|
182274
|
-
options.Rect = this._convertRect(x3, y2,
|
|
182600
|
+
options.Rect = this._convertRect(x3, y2, w, h2);
|
|
182275
182601
|
options.Border = [0, 0, 0];
|
|
182276
182602
|
if (options.Subtype === "Link" && typeof options.F === "undefined") {
|
|
182277
182603
|
options.F = 1 << 2;
|
|
@@ -182300,7 +182626,7 @@ var AnnotationsMixin = {
|
|
|
182300
182626
|
ref.end();
|
|
182301
182627
|
return this;
|
|
182302
182628
|
},
|
|
182303
|
-
note(x3, y2,
|
|
182629
|
+
note(x3, y2, w, h2, contents, options = {}) {
|
|
182304
182630
|
options.Subtype = "Text";
|
|
182305
182631
|
options.Contents = new String(contents);
|
|
182306
182632
|
if (options.Name == null) {
|
|
@@ -182309,18 +182635,18 @@ var AnnotationsMixin = {
|
|
|
182309
182635
|
if (options.color == null) {
|
|
182310
182636
|
options.color = [243, 223, 92];
|
|
182311
182637
|
}
|
|
182312
|
-
return this.annotate(x3, y2,
|
|
182638
|
+
return this.annotate(x3, y2, w, h2, options);
|
|
182313
182639
|
},
|
|
182314
|
-
goTo(x3, y2,
|
|
182640
|
+
goTo(x3, y2, w, h2, name, options = {}) {
|
|
182315
182641
|
options.Subtype = "Link";
|
|
182316
182642
|
options.A = this.ref({
|
|
182317
182643
|
S: "GoTo",
|
|
182318
182644
|
D: new String(name)
|
|
182319
182645
|
});
|
|
182320
182646
|
options.A.end();
|
|
182321
|
-
return this.annotate(x3, y2,
|
|
182647
|
+
return this.annotate(x3, y2, w, h2, options);
|
|
182322
182648
|
},
|
|
182323
|
-
link(x3, y2,
|
|
182649
|
+
link(x3, y2, w, h2, url, options = {}) {
|
|
182324
182650
|
options.Subtype = "Link";
|
|
182325
182651
|
if (typeof url === "number") {
|
|
182326
182652
|
const pages = this._root.data.Pages.data;
|
|
@@ -182343,28 +182669,28 @@ var AnnotationsMixin = {
|
|
|
182343
182669
|
if (options.structParent && !options.Contents) {
|
|
182344
182670
|
options.Contents = new String("");
|
|
182345
182671
|
}
|
|
182346
|
-
return this.annotate(x3, y2,
|
|
182672
|
+
return this.annotate(x3, y2, w, h2, options);
|
|
182347
182673
|
},
|
|
182348
|
-
_markup(x3, y2,
|
|
182349
|
-
const [x1, y1, x22, y22] = this._convertRect(x3, y2,
|
|
182674
|
+
_markup(x3, y2, w, h2, options = {}) {
|
|
182675
|
+
const [x1, y1, x22, y22] = this._convertRect(x3, y2, w, h2);
|
|
182350
182676
|
options.QuadPoints = [x1, y22, x22, y22, x1, y1, x22, y1];
|
|
182351
182677
|
options.Contents = new String();
|
|
182352
|
-
return this.annotate(x3, y2,
|
|
182678
|
+
return this.annotate(x3, y2, w, h2, options);
|
|
182353
182679
|
},
|
|
182354
|
-
highlight(x3, y2,
|
|
182680
|
+
highlight(x3, y2, w, h2, options = {}) {
|
|
182355
182681
|
options.Subtype = "Highlight";
|
|
182356
182682
|
if (options.color == null) {
|
|
182357
182683
|
options.color = [241, 238, 148];
|
|
182358
182684
|
}
|
|
182359
|
-
return this._markup(x3, y2,
|
|
182685
|
+
return this._markup(x3, y2, w, h2, options);
|
|
182360
182686
|
},
|
|
182361
|
-
underline(x3, y2,
|
|
182687
|
+
underline(x3, y2, w, h2, options = {}) {
|
|
182362
182688
|
options.Subtype = "Underline";
|
|
182363
|
-
return this._markup(x3, y2,
|
|
182689
|
+
return this._markup(x3, y2, w, h2, options);
|
|
182364
182690
|
},
|
|
182365
|
-
strike(x3, y2,
|
|
182691
|
+
strike(x3, y2, w, h2, options = {}) {
|
|
182366
182692
|
options.Subtype = "StrikeOut";
|
|
182367
|
-
return this._markup(x3, y2,
|
|
182693
|
+
return this._markup(x3, y2, w, h2, options);
|
|
182368
182694
|
},
|
|
182369
182695
|
lineAnnotation(x1, y1, x22, y2, options = {}) {
|
|
182370
182696
|
options.Subtype = "Line";
|
|
@@ -182372,23 +182698,23 @@ var AnnotationsMixin = {
|
|
|
182372
182698
|
options.L = [x1, this.page.height - y1, x22, this.page.height - y2];
|
|
182373
182699
|
return this.annotate(x1, y1, x22, y2, options);
|
|
182374
182700
|
},
|
|
182375
|
-
rectAnnotation(x3, y2,
|
|
182701
|
+
rectAnnotation(x3, y2, w, h2, options = {}) {
|
|
182376
182702
|
options.Subtype = "Square";
|
|
182377
182703
|
options.Contents = new String();
|
|
182378
|
-
return this.annotate(x3, y2,
|
|
182704
|
+
return this.annotate(x3, y2, w, h2, options);
|
|
182379
182705
|
},
|
|
182380
|
-
ellipseAnnotation(x3, y2,
|
|
182706
|
+
ellipseAnnotation(x3, y2, w, h2, options = {}) {
|
|
182381
182707
|
options.Subtype = "Circle";
|
|
182382
182708
|
options.Contents = new String();
|
|
182383
|
-
return this.annotate(x3, y2,
|
|
182709
|
+
return this.annotate(x3, y2, w, h2, options);
|
|
182384
182710
|
},
|
|
182385
|
-
textAnnotation(x3, y2,
|
|
182711
|
+
textAnnotation(x3, y2, w, h2, text, options = {}) {
|
|
182386
182712
|
options.Subtype = "FreeText";
|
|
182387
182713
|
options.Contents = new String(text);
|
|
182388
182714
|
options.DA = new String();
|
|
182389
|
-
return this.annotate(x3, y2,
|
|
182715
|
+
return this.annotate(x3, y2, w, h2, options);
|
|
182390
182716
|
},
|
|
182391
|
-
fileAnnotation(x3, y2,
|
|
182717
|
+
fileAnnotation(x3, y2, w, h2, file = {}, options = {}) {
|
|
182392
182718
|
const filespec = this.file(file.src, Object.assign({
|
|
182393
182719
|
hidden: true
|
|
182394
182720
|
}, file));
|
|
@@ -182399,12 +182725,12 @@ var AnnotationsMixin = {
|
|
|
182399
182725
|
} else if (filespec.data.Desc) {
|
|
182400
182726
|
options.Contents = filespec.data.Desc;
|
|
182401
182727
|
}
|
|
182402
|
-
return this.annotate(x3, y2,
|
|
182728
|
+
return this.annotate(x3, y2, w, h2, options);
|
|
182403
182729
|
},
|
|
182404
|
-
_convertRect(x1, y1,
|
|
182730
|
+
_convertRect(x1, y1, w, h2) {
|
|
182405
182731
|
let y2 = y1;
|
|
182406
182732
|
y1 += h2;
|
|
182407
|
-
let x22 = x1 +
|
|
182733
|
+
let x22 = x1 + w;
|
|
182408
182734
|
const [m0, m1, m22, m3, m4, m5] = this._ctm;
|
|
182409
182735
|
x1 = m0 * x1 + m22 * y1 + m4;
|
|
182410
182736
|
y1 = m1 * x1 + m3 * y1 + m5;
|
|
@@ -182705,8 +183031,8 @@ var PDFNumberTree = class extends PDFTree {
|
|
|
182705
183031
|
_keysName() {
|
|
182706
183032
|
return "Nums";
|
|
182707
183033
|
}
|
|
182708
|
-
_dataForKey(
|
|
182709
|
-
return parseInt(
|
|
183034
|
+
_dataForKey(k2) {
|
|
183035
|
+
return parseInt(k2);
|
|
182710
183036
|
}
|
|
182711
183037
|
};
|
|
182712
183038
|
var MarkingsMixin = {
|
|
@@ -182966,33 +183292,33 @@ var AcroFormMixin = {
|
|
|
182966
183292
|
this._addToParent(fieldRef);
|
|
182967
183293
|
return fieldRef;
|
|
182968
183294
|
},
|
|
182969
|
-
formAnnotation(name, type, x3, y2,
|
|
183295
|
+
formAnnotation(name, type, x3, y2, w, h2, options = {}) {
|
|
182970
183296
|
let fieldDict = this._fieldDict(name, type, options);
|
|
182971
183297
|
fieldDict.Subtype = "Widget";
|
|
182972
183298
|
if (fieldDict.F === void 0) {
|
|
182973
183299
|
fieldDict.F = 4;
|
|
182974
183300
|
}
|
|
182975
|
-
this.annotate(x3, y2,
|
|
183301
|
+
this.annotate(x3, y2, w, h2, fieldDict);
|
|
182976
183302
|
let annotRef = this.page.annotations[this.page.annotations.length - 1];
|
|
182977
183303
|
return this._addToParent(annotRef);
|
|
182978
183304
|
},
|
|
182979
|
-
formText(name, x3, y2,
|
|
182980
|
-
return this.formAnnotation(name, "text", x3, y2,
|
|
183305
|
+
formText(name, x3, y2, w, h2, options = {}) {
|
|
183306
|
+
return this.formAnnotation(name, "text", x3, y2, w, h2, options);
|
|
182981
183307
|
},
|
|
182982
|
-
formPushButton(name, x3, y2,
|
|
182983
|
-
return this.formAnnotation(name, "pushButton", x3, y2,
|
|
183308
|
+
formPushButton(name, x3, y2, w, h2, options = {}) {
|
|
183309
|
+
return this.formAnnotation(name, "pushButton", x3, y2, w, h2, options);
|
|
182984
183310
|
},
|
|
182985
|
-
formCombo(name, x3, y2,
|
|
182986
|
-
return this.formAnnotation(name, "combo", x3, y2,
|
|
183311
|
+
formCombo(name, x3, y2, w, h2, options = {}) {
|
|
183312
|
+
return this.formAnnotation(name, "combo", x3, y2, w, h2, options);
|
|
182987
183313
|
},
|
|
182988
|
-
formList(name, x3, y2,
|
|
182989
|
-
return this.formAnnotation(name, "list", x3, y2,
|
|
183314
|
+
formList(name, x3, y2, w, h2, options = {}) {
|
|
183315
|
+
return this.formAnnotation(name, "list", x3, y2, w, h2, options);
|
|
182990
183316
|
},
|
|
182991
|
-
formRadioButton(name, x3, y2,
|
|
182992
|
-
return this.formAnnotation(name, "radioButton", x3, y2,
|
|
183317
|
+
formRadioButton(name, x3, y2, w, h2, options = {}) {
|
|
183318
|
+
return this.formAnnotation(name, "radioButton", x3, y2, w, h2, options);
|
|
182993
183319
|
},
|
|
182994
|
-
formCheckbox(name, x3, y2,
|
|
182995
|
-
return this.formAnnotation(name, "checkbox", x3, y2,
|
|
183320
|
+
formCheckbox(name, x3, y2, w, h2, options = {}) {
|
|
183321
|
+
return this.formAnnotation(name, "checkbox", x3, y2, w, h2, options);
|
|
182996
183322
|
},
|
|
182997
183323
|
_addToParent(fieldRef) {
|
|
182998
183324
|
let parent = fieldRef.data.Parent;
|
|
@@ -183049,29 +183375,29 @@ var AcroFormMixin = {
|
|
|
183049
183375
|
return opts;
|
|
183050
183376
|
},
|
|
183051
183377
|
_resolveFormat(opts) {
|
|
183052
|
-
const
|
|
183053
|
-
if (
|
|
183378
|
+
const f4 = opts.format;
|
|
183379
|
+
if (f4 && f4.type) {
|
|
183054
183380
|
let fnKeystroke;
|
|
183055
183381
|
let fnFormat;
|
|
183056
183382
|
let params = "";
|
|
183057
|
-
if (FORMAT_SPECIAL[
|
|
183383
|
+
if (FORMAT_SPECIAL[f4.type] !== void 0) {
|
|
183058
183384
|
fnKeystroke = `AFSpecial_Keystroke`;
|
|
183059
183385
|
fnFormat = `AFSpecial_Format`;
|
|
183060
|
-
params = FORMAT_SPECIAL[
|
|
183386
|
+
params = FORMAT_SPECIAL[f4.type];
|
|
183061
183387
|
} else {
|
|
183062
|
-
let format =
|
|
183388
|
+
let format = f4.type.charAt(0).toUpperCase() + f4.type.slice(1);
|
|
183063
183389
|
fnKeystroke = `AF${format}_Keystroke`;
|
|
183064
183390
|
fnFormat = `AF${format}_Format`;
|
|
183065
|
-
if (
|
|
183391
|
+
if (f4.type === "date") {
|
|
183066
183392
|
fnKeystroke += "Ex";
|
|
183067
|
-
params = String(
|
|
183068
|
-
} else if (
|
|
183069
|
-
params = String(
|
|
183070
|
-
} else if (
|
|
183071
|
-
let p = Object.assign({}, FORMAT_DEFAULT.number,
|
|
183393
|
+
params = String(f4.param);
|
|
183394
|
+
} else if (f4.type === "time") {
|
|
183395
|
+
params = String(f4.param);
|
|
183396
|
+
} else if (f4.type === "number") {
|
|
183397
|
+
let p = Object.assign({}, FORMAT_DEFAULT.number, f4);
|
|
183072
183398
|
params = String([String(p.nDec), p.sepComma ? "0" : "1", '"' + p.negStyle + '"', "null", '"' + p.currency + '"', String(p.currencyPrepend)].join(","));
|
|
183073
|
-
} else if (
|
|
183074
|
-
let p = Object.assign({}, FORMAT_DEFAULT.percent,
|
|
183399
|
+
} else if (f4.type === "percent") {
|
|
183400
|
+
let p = Object.assign({}, FORMAT_DEFAULT.percent, f4);
|
|
183075
183401
|
params = String([String(p.nDec), p.sepComma ? "0" : "1"].join(","));
|
|
183076
183402
|
}
|
|
183077
183403
|
}
|
|
@@ -183415,8 +183741,8 @@ function normalizedDefaultStyle(defaultStyleInternal) {
|
|
|
183415
183741
|
if (typeof defaultStyle !== "object") defaultStyle = {
|
|
183416
183742
|
text: defaultStyle
|
|
183417
183743
|
};
|
|
183418
|
-
const defaultRowStyle = Object.fromEntries(Object.entries(defaultStyle).filter(([
|
|
183419
|
-
const defaultColStyle = Object.fromEntries(Object.entries(defaultStyle).filter(([
|
|
183744
|
+
const defaultRowStyle = Object.fromEntries(Object.entries(defaultStyle).filter(([k2]) => ROW_FIELDS.includes(k2)));
|
|
183745
|
+
const defaultColStyle = Object.fromEntries(Object.entries(defaultStyle).filter(([k2]) => COLUMN_FIELDS.includes(k2)));
|
|
183420
183746
|
defaultStyle.padding = normalizeSides(defaultStyle.padding);
|
|
183421
183747
|
defaultStyle.border = normalizeSides(defaultStyle.border);
|
|
183422
183748
|
defaultStyle.borderColor = normalizeSides(defaultStyle.borderColor);
|
|
@@ -183932,7 +184258,7 @@ function renderCellText(cell) {
|
|
|
183932
184258
|
if (cell.font) doc.font(rollbackFont, rollbackFontFamily, rollbackFontSize);
|
|
183933
184259
|
}
|
|
183934
184260
|
function renderBorder(border, borderColor, x3, y2, width, height, mask) {
|
|
183935
|
-
border = Object.fromEntries(Object.entries(border).map(([
|
|
184261
|
+
border = Object.fromEntries(Object.entries(border).map(([k2, v2]) => [k2, mask && !mask[k2] ? 0 : v2]));
|
|
183936
184262
|
const doc = this.document;
|
|
183937
184263
|
if ([border.right, border.bottom, border.left].every((val) => val === border.top)) {
|
|
183938
184264
|
if (border.top > 0) {
|
|
@@ -184394,7 +184720,7 @@ function bundledFontPaths() {
|
|
|
184394
184720
|
const rootFromSrc = join4(here, "..", "..");
|
|
184395
184721
|
const candidates = [join4(here, "fonts"), join4(rootFromSrc, "dist", "fonts")];
|
|
184396
184722
|
const fontsDir = candidates.find(
|
|
184397
|
-
(
|
|
184723
|
+
(d) => existsSync3(join4(d, "Pretendard-Regular.ttf")) && existsSync3(join4(d, "Pretendard-Bold.ttf"))
|
|
184398
184724
|
);
|
|
184399
184725
|
const dir = fontsDir || candidates[0];
|
|
184400
184726
|
return {
|
|
@@ -184435,7 +184761,7 @@ function stripFrontmatter2(md) {
|
|
|
184435
184761
|
return md.replace(FRONTMATTER_RE2, "");
|
|
184436
184762
|
}
|
|
184437
184763
|
function lexAndExtractPlantUml(body) {
|
|
184438
|
-
const tokens =
|
|
184764
|
+
const tokens = f3.lexer(stripFrontmatter2(body ?? ""));
|
|
184439
184765
|
const pumlRegistry = /* @__PURE__ */ new Map();
|
|
184440
184766
|
let counter = 0;
|
|
184441
184767
|
for (const tok of tokens) {
|
|
@@ -185610,7 +185936,7 @@ var xrayClientSecret = process.env.XRAY_CLIENT_SECRET || "";
|
|
|
185610
185936
|
var xray = xrayClientId && xrayClientSecret ? new XrayClient(xrayClientId, xrayClientSecret, jiraUrl, jiraEmail, jiraToken) : null;
|
|
185611
185937
|
var server = new McpServer({
|
|
185612
185938
|
name: "jira-confluence",
|
|
185613
|
-
version: "0.1.
|
|
185939
|
+
version: "0.1.39"
|
|
185614
185940
|
});
|
|
185615
185941
|
var ctx = { server, jira, confluence, risk, xray };
|
|
185616
185942
|
registerJiraCrudTools(ctx);
|