@postman-cse/onboarding-bootstrap 2.9.5 → 2.9.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/action.yml +2 -2
- package/dist/action.cjs +214 -1158
- package/dist/cli.cjs +215 -1156
- package/dist/index.cjs +214 -1158
- package/package.json +5 -3
package/dist/action.cjs
CHANGED
|
@@ -259408,6 +259408,18 @@ async function retry(operation, options = {}) {
|
|
|
259408
259408
|
}
|
|
259409
259409
|
throw new Error("Retry exhausted without returning or throwing");
|
|
259410
259410
|
}
|
|
259411
|
+
function fullJitterDelayMs(attempt, baseMs, capMs, random = Math.random) {
|
|
259412
|
+
const ceiling = Math.min(capMs, baseMs * 2 ** Math.max(0, attempt));
|
|
259413
|
+
return Math.floor(random() * Math.max(0, ceiling));
|
|
259414
|
+
}
|
|
259415
|
+
function parseRetryAfterMs2(value) {
|
|
259416
|
+
if (!value) return void 0;
|
|
259417
|
+
const trimmed = value.trim();
|
|
259418
|
+
if (/^\d+$/.test(trimmed)) return Number(trimmed) * 1e3;
|
|
259419
|
+
const when = Date.parse(trimmed);
|
|
259420
|
+
if (!Number.isNaN(when)) return Math.max(0, when - Date.now());
|
|
259421
|
+
return void 0;
|
|
259422
|
+
}
|
|
259411
259423
|
|
|
259412
259424
|
// src/lib/postman/postman-ec-client.ts
|
|
259413
259425
|
var EC_WRITE_MAX_ATTEMPTS = 3;
|
|
@@ -264021,6 +264033,12 @@ var BOOTSTRAP_BARE_UUID_RE = /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9
|
|
|
264021
264033
|
function isMissingPatchValueError(error2) {
|
|
264022
264034
|
return error2 instanceof HttpError && error2.status === 400 && error2.responseBody.includes("Remove operation must point to an existing value");
|
|
264023
264035
|
}
|
|
264036
|
+
function isRejectedPatchError(error2) {
|
|
264037
|
+
return error2 instanceof HttpError && error2.status === 400 && /REJECTED_PATCH|must update at least one/i.test(
|
|
264038
|
+
`${error2.message}
|
|
264039
|
+
${error2.responseBody ?? ""}`
|
|
264040
|
+
);
|
|
264041
|
+
}
|
|
264024
264042
|
function canonicalize(value) {
|
|
264025
264043
|
if (Array.isArray(value)) return value.map(canonicalize);
|
|
264026
264044
|
if (value && typeof value === "object") {
|
|
@@ -264084,6 +264102,7 @@ var PostmanGatewayAssetsClient = class _PostmanGatewayAssetsClient {
|
|
|
264084
264102
|
static DEFAULT_GENERATION_POLL_DELAY_MS = 2e3;
|
|
264085
264103
|
gateway;
|
|
264086
264104
|
sleep;
|
|
264105
|
+
random;
|
|
264087
264106
|
generationPollAttempts;
|
|
264088
264107
|
generationPollDelayMs;
|
|
264089
264108
|
createIdentity;
|
|
@@ -264091,6 +264110,7 @@ var PostmanGatewayAssetsClient = class _PostmanGatewayAssetsClient {
|
|
|
264091
264110
|
this.gateway = options.gateway;
|
|
264092
264111
|
this.createIdentity = options.createIdentity ?? import_node_crypto2.randomUUID;
|
|
264093
264112
|
this.sleep = options.sleep ?? ((delayMs) => new Promise((resolve5) => setTimeout(resolve5, delayMs)));
|
|
264113
|
+
this.random = options.random ?? Math.random;
|
|
264094
264114
|
this.generationPollAttempts = resolvePollBudget(
|
|
264095
264115
|
options.generationPollAttempts,
|
|
264096
264116
|
process.env.POSTMAN_GENERATION_POLL_ATTEMPTS,
|
|
@@ -264865,7 +264885,7 @@ ${error2.responseBody ?? ""}`
|
|
|
264865
264885
|
if (!retriable || attempt === maxAttempts - 1) {
|
|
264866
264886
|
throw error2;
|
|
264867
264887
|
}
|
|
264868
|
-
await this.sleep(
|
|
264888
|
+
await this.sleep(fullJitterDelayMs(attempt, 300, 2e3, this.random));
|
|
264869
264889
|
}
|
|
264870
264890
|
}
|
|
264871
264891
|
}
|
|
@@ -265116,14 +265136,19 @@ ${error2.responseBody ?? ""}`
|
|
|
265116
265136
|
{ type: "afterResponse", code: exec2.join("\n"), language: "text/javascript" }
|
|
265117
265137
|
];
|
|
265118
265138
|
for (const script of plan.scripts) {
|
|
265119
|
-
|
|
265120
|
-
|
|
265121
|
-
|
|
265122
|
-
|
|
265123
|
-
|
|
265124
|
-
|
|
265125
|
-
|
|
265126
|
-
|
|
265139
|
+
try {
|
|
265140
|
+
await this.gateway.requestJson({
|
|
265141
|
+
service: "collection",
|
|
265142
|
+
method: "patch",
|
|
265143
|
+
path: `/v3/collections/${cid}/items/${script.itemId}`,
|
|
265144
|
+
retry: "safe",
|
|
265145
|
+
headers: { "X-Entity-Type": "http-request" },
|
|
265146
|
+
body: [{ op: "add", path: "/scripts", value: toV3Scripts(script.exec) }]
|
|
265147
|
+
});
|
|
265148
|
+
} catch (error2) {
|
|
265149
|
+
if (isRejectedPatchError(error2)) continue;
|
|
265150
|
+
throw error2;
|
|
265151
|
+
}
|
|
265127
265152
|
}
|
|
265128
265153
|
if (!items.some((i) => String(i.name ?? "") === "00 - Resolve Secrets")) {
|
|
265129
265154
|
const created = await this.gateway.requestJson({
|
|
@@ -265328,36 +265353,47 @@ ${error2.responseBody ?? ""}`
|
|
|
265328
265353
|
async createItemTree(cid, items, parentId) {
|
|
265329
265354
|
for (const item of items) {
|
|
265330
265355
|
const kind = String(item.$kind ?? "http-request");
|
|
265331
|
-
|
|
265332
|
-
|
|
265333
|
-
|
|
265334
|
-
|
|
265335
|
-
|
|
265336
|
-
|
|
265337
|
-
|
|
265338
|
-
|
|
265339
|
-
|
|
265340
|
-
|
|
265341
|
-
|
|
265342
|
-
|
|
265343
|
-
|
|
265344
|
-
|
|
265345
|
-
if (
|
|
265346
|
-
|
|
265347
|
-
const
|
|
265348
|
-
|
|
265349
|
-
|
|
265350
|
-
|
|
265351
|
-
|
|
265352
|
-
|
|
265353
|
-
|
|
265354
|
-
|
|
265355
|
-
|
|
265356
|
-
|
|
265357
|
-
|
|
265358
|
-
|
|
265356
|
+
const maxAttempts = 4;
|
|
265357
|
+
let newId = "";
|
|
265358
|
+
for (let attempt = 1; attempt <= maxAttempts; attempt += 1) {
|
|
265359
|
+
let created;
|
|
265360
|
+
try {
|
|
265361
|
+
created = await this.gateway.requestJson({
|
|
265362
|
+
service: "collection",
|
|
265363
|
+
method: "post",
|
|
265364
|
+
path: `/v3/collections/${cid}/items/`,
|
|
265365
|
+
retry: "none",
|
|
265366
|
+
headers: { "X-Entity-Type": kind },
|
|
265367
|
+
body: this.buildItemCreateBody(item, parentId)
|
|
265368
|
+
});
|
|
265369
|
+
} catch (error2) {
|
|
265370
|
+
if (!isAmbiguousTransportError(error2)) throw error2;
|
|
265371
|
+
const name = String(item.name ?? "Untitled");
|
|
265372
|
+
const matches = (await this.listCollectionItems(cid)).filter((candidate) => {
|
|
265373
|
+
if (String(candidate.name ?? candidate.title ?? "") !== name) return false;
|
|
265374
|
+
if (String(candidate.$kind ?? candidate.type ?? "http-request") !== kind) return false;
|
|
265375
|
+
const position = asRecord8(candidate.position);
|
|
265376
|
+
const parent = asRecord8(position?.parent);
|
|
265377
|
+
const candidateParent = String(parent?.id ?? position?.parent ?? candidate.parent ?? "").trim();
|
|
265378
|
+
return Boolean(candidateParent) && this.bareModelId(candidateParent) === this.bareModelId(parentId);
|
|
265379
|
+
});
|
|
265380
|
+
const match = adoptExactMatch(
|
|
265381
|
+
`collection-item:${cid}:${parentId}:${kind}:${name}`,
|
|
265382
|
+
matches,
|
|
265383
|
+
(candidate) => String(candidate.id ?? "")
|
|
265384
|
+
);
|
|
265385
|
+
if (match) {
|
|
265386
|
+
created = { data: { id: match.id } };
|
|
265387
|
+
} else {
|
|
265388
|
+
const retriable = error2 instanceof HttpError && error2.status >= 500;
|
|
265389
|
+
if (!retriable || attempt === maxAttempts) throw error2;
|
|
265390
|
+
await this.sleep(fullJitterDelayMs(attempt - 1, 300, 2e3, this.random));
|
|
265391
|
+
continue;
|
|
265392
|
+
}
|
|
265393
|
+
}
|
|
265394
|
+
newId = String(asRecord8(created?.data)?.id ?? "").trim();
|
|
265395
|
+
if (newId) break;
|
|
265359
265396
|
}
|
|
265360
|
-
const newId = String(asRecord8(created?.data)?.id ?? "").trim();
|
|
265361
265397
|
if (!newId) {
|
|
265362
265398
|
throw new Error(
|
|
265363
265399
|
`Item create did not return an id for ${String(item.name ?? "item")}`
|
|
@@ -265400,6 +265436,30 @@ ${error2.responseBody ?? ""}`
|
|
|
265400
265436
|
* - `remove` of /description always works (field exists as "")
|
|
265401
265437
|
* - on update, GET the root first and only remove fields that currently exist
|
|
265402
265438
|
*/
|
|
265439
|
+
/**
|
|
265440
|
+
* GET a collection root, retrying through the v3 surface's read-after-write
|
|
265441
|
+
* 404 lag. A freshly generated/renamed collection can transiently report
|
|
265442
|
+
* RESOURCE_NOT_FOUND for a few seconds (worse under concurrent runner load);
|
|
265443
|
+
* retrying absorbs that instead of hard-failing the run.
|
|
265444
|
+
*/
|
|
265445
|
+
async getCollectionRoot(cid) {
|
|
265446
|
+
const got = await retry(
|
|
265447
|
+
() => this.gateway.requestJson({
|
|
265448
|
+
service: "collection",
|
|
265449
|
+
method: "get",
|
|
265450
|
+
path: `/v3/collections/${cid}`,
|
|
265451
|
+
retry: "none"
|
|
265452
|
+
}),
|
|
265453
|
+
{
|
|
265454
|
+
maxAttempts: 6,
|
|
265455
|
+
delayMs: 1e3,
|
|
265456
|
+
backoffMultiplier: 2,
|
|
265457
|
+
maxDelayMs: 8e3,
|
|
265458
|
+
shouldRetry: (error2) => error2 instanceof HttpError && error2.status === 404
|
|
265459
|
+
}
|
|
265460
|
+
);
|
|
265461
|
+
return asRecord8(got?.data);
|
|
265462
|
+
}
|
|
265403
265463
|
async applyCollectionLevelSettings(cid, v3, options = {}) {
|
|
265404
265464
|
const ops = [];
|
|
265405
265465
|
if (options.rename && typeof v3.name === "string" && v3.name) {
|
|
@@ -265407,12 +265467,7 @@ ${error2.responseBody ?? ""}`
|
|
|
265407
265467
|
}
|
|
265408
265468
|
let current = null;
|
|
265409
265469
|
if (options.reconcileRemovals) {
|
|
265410
|
-
|
|
265411
|
-
service: "collection",
|
|
265412
|
-
method: "get",
|
|
265413
|
-
path: `/v3/collections/${cid}`
|
|
265414
|
-
});
|
|
265415
|
-
current = asRecord8(got?.data);
|
|
265470
|
+
current = await this.getCollectionRoot(cid);
|
|
265416
265471
|
}
|
|
265417
265472
|
const hasDescription = typeof v3.description === "string" && v3.description.length > 0;
|
|
265418
265473
|
if (hasDescription) {
|
|
@@ -265451,6 +265506,9 @@ ${error2.responseBody ?? ""}`
|
|
|
265451
265506
|
if (isMissingPatchValueError(error2) && ops.some((op) => op.op === "remove") && await this.verifyRootSettingsApplied(cid, ops)) {
|
|
265452
265507
|
return;
|
|
265453
265508
|
}
|
|
265509
|
+
if (isRejectedPatchError(error2) && await this.verifyRootSettingsApplied(cid, ops)) {
|
|
265510
|
+
return;
|
|
265511
|
+
}
|
|
265454
265512
|
throw error2;
|
|
265455
265513
|
}
|
|
265456
265514
|
}
|
|
@@ -265574,7 +265632,9 @@ ${error2.responseBody ?? ""}`
|
|
|
265574
265632
|
}
|
|
265575
265633
|
/** Patch only the durable collection description without reconciling its item tree. */
|
|
265576
265634
|
async updateCollectionDescription(collectionUid, description) {
|
|
265577
|
-
|
|
265635
|
+
const cid = this.bareModelId(collectionUid);
|
|
265636
|
+
await this.getCollectionRoot(cid);
|
|
265637
|
+
await this.applyCollectionLevelSettings(cid, { description });
|
|
265578
265638
|
}
|
|
265579
265639
|
/**
|
|
265580
265640
|
* Full-replace reconcile of a curated local v2.1.0 or collection v3 payload: delete every
|
|
@@ -265657,6 +265717,7 @@ function detectInnerError(body2) {
|
|
|
265657
265717
|
return typeof innerStatus === "number" && innerStatus >= 400 ? innerStatus : 502;
|
|
265658
265718
|
}
|
|
265659
265719
|
function isTransientGatewayError(status, body2) {
|
|
265720
|
+
if (status === 429) return true;
|
|
265660
265721
|
if (status === 502 || status === 503 || status === 504) return true;
|
|
265661
265722
|
if (status >= 500 && (body2.includes("ESOCKETTIMEDOUT") || body2.includes("ETIMEDOUT") || body2.includes("ECONNRESET") || body2.includes("serverError") || body2.includes("downstream"))) {
|
|
265662
265723
|
return true;
|
|
@@ -265675,8 +265736,10 @@ var AccessTokenGatewayClient = class {
|
|
|
265675
265736
|
secretMasker;
|
|
265676
265737
|
maxRetries;
|
|
265677
265738
|
retryBaseDelayMs;
|
|
265739
|
+
retryMaxDelayMs;
|
|
265678
265740
|
requestTimeoutMs;
|
|
265679
265741
|
sleepImpl;
|
|
265742
|
+
randomImpl;
|
|
265680
265743
|
constructor(options) {
|
|
265681
265744
|
this.tokenProvider = options.tokenProvider;
|
|
265682
265745
|
this.bifrostBaseUrl = String(
|
|
@@ -265688,8 +265751,10 @@ var AccessTokenGatewayClient = class {
|
|
|
265688
265751
|
this.secretMasker = options.secretMasker ?? createSecretMasker([this.tokenProvider.current()]);
|
|
265689
265752
|
this.maxRetries = options.maxRetries ?? 3;
|
|
265690
265753
|
this.retryBaseDelayMs = options.retryBaseDelayMs ?? 400;
|
|
265754
|
+
this.retryMaxDelayMs = options.retryMaxDelayMs ?? 5e3;
|
|
265691
265755
|
this.requestTimeoutMs = options.requestTimeoutMs ?? DEFAULT_REQUEST_TIMEOUT_MS;
|
|
265692
265756
|
this.sleepImpl = options.sleepImpl ?? defaultSleep;
|
|
265757
|
+
this.randomImpl = options.randomImpl ?? Math.random;
|
|
265693
265758
|
}
|
|
265694
265759
|
configureTeamContext(teamId, orgMode) {
|
|
265695
265760
|
this.teamId = String(teamId || "").trim();
|
|
@@ -265749,7 +265814,7 @@ var AccessTokenGatewayClient = class {
|
|
|
265749
265814
|
response = await this.send(request);
|
|
265750
265815
|
} catch (error2) {
|
|
265751
265816
|
if (retryMode === "safe" && attempt < this.maxRetries) {
|
|
265752
|
-
const delay = this.
|
|
265817
|
+
const delay = this.retryDelayMs(attempt);
|
|
265753
265818
|
attempt += 1;
|
|
265754
265819
|
await this.sleepImpl(delay);
|
|
265755
265820
|
continue;
|
|
@@ -265761,7 +265826,7 @@ var AccessTokenGatewayClient = class {
|
|
|
265761
265826
|
const innerStatus = detectInnerError(okBody);
|
|
265762
265827
|
if (innerStatus !== null) {
|
|
265763
265828
|
if (retryMode === "safe" && isTransientGatewayError(innerStatus, okBody) && attempt < this.maxRetries) {
|
|
265764
|
-
const delay = this.
|
|
265829
|
+
const delay = this.retryDelayMs(attempt);
|
|
265765
265830
|
attempt += 1;
|
|
265766
265831
|
await this.sleepImpl(delay);
|
|
265767
265832
|
continue;
|
|
@@ -265786,7 +265851,10 @@ var AccessTokenGatewayClient = class {
|
|
|
265786
265851
|
throw this.toHttpError(request, response, retryBody);
|
|
265787
265852
|
}
|
|
265788
265853
|
if (retryMode === "safe" && isTransientGatewayError(response.status, body2) && attempt < this.maxRetries) {
|
|
265789
|
-
const delay = this.
|
|
265854
|
+
const delay = this.retryDelayMs(
|
|
265855
|
+
attempt,
|
|
265856
|
+
parseRetryAfterMs2(response.headers.get("retry-after"))
|
|
265857
|
+
);
|
|
265790
265858
|
attempt += 1;
|
|
265791
265859
|
await this.sleepImpl(delay);
|
|
265792
265860
|
continue;
|
|
@@ -265794,6 +265862,18 @@ var AccessTokenGatewayClient = class {
|
|
|
265794
265862
|
throw this.toHttpError(request, response, body2);
|
|
265795
265863
|
}
|
|
265796
265864
|
}
|
|
265865
|
+
/**
|
|
265866
|
+
* Full-jitter backoff (uniform in [0, min(cap, base * 2^attempt))) so
|
|
265867
|
+
* concurrent CI runners that fail together never retry in lockstep against
|
|
265868
|
+
* the shared gateway. A server-sent Retry-After beats the heuristic: it is
|
|
265869
|
+
* authoritative backpressure, honored verbatim (capped by the ceiling).
|
|
265870
|
+
*/
|
|
265871
|
+
retryDelayMs(attempt, retryAfterMs) {
|
|
265872
|
+
if (retryAfterMs !== void 0) {
|
|
265873
|
+
return Math.min(this.retryMaxDelayMs, retryAfterMs);
|
|
265874
|
+
}
|
|
265875
|
+
return fullJitterDelayMs(attempt, this.retryBaseDelayMs, this.retryMaxDelayMs, this.randomImpl);
|
|
265876
|
+
}
|
|
265797
265877
|
/**
|
|
265798
265878
|
* The success path reads the body to inspect for an inner error, which
|
|
265799
265879
|
* consumes the stream. Hand callers a fresh Response over the buffered text so
|
|
@@ -266531,6 +266611,9 @@ function createTelemetryContext(options) {
|
|
|
266531
266611
|
var import_node_fs3 = require("node:fs");
|
|
266532
266612
|
var import_node_path3 = require("node:path");
|
|
266533
266613
|
function resolveActionVersion2() {
|
|
266614
|
+
if (false) {
|
|
266615
|
+
return void 0;
|
|
266616
|
+
}
|
|
266534
266617
|
try {
|
|
266535
266618
|
const raw = (0, import_node_fs3.readFileSync)((0, import_node_path3.join)(__dirname, "..", "package.json"), "utf8");
|
|
266536
266619
|
return JSON.parse(raw).version ?? "unknown";
|
|
@@ -299330,940 +299413,6 @@ function getPositionFromMatch(match) {
|
|
|
299330
299413
|
}
|
|
299331
299414
|
|
|
299332
299415
|
// node_modules/@nodable/entities/src/entities.js
|
|
299333
|
-
var BASIC_LATIN = {
|
|
299334
|
-
amp: "&",
|
|
299335
|
-
AMP: "&",
|
|
299336
|
-
lt: "<",
|
|
299337
|
-
LT: "<",
|
|
299338
|
-
gt: ">",
|
|
299339
|
-
GT: ">",
|
|
299340
|
-
quot: '"',
|
|
299341
|
-
QUOT: '"',
|
|
299342
|
-
apos: "'",
|
|
299343
|
-
lsquo: "\u2018",
|
|
299344
|
-
rsquo: "\u2019",
|
|
299345
|
-
ldquo: "\u201C",
|
|
299346
|
-
rdquo: "\u201D",
|
|
299347
|
-
lsquor: "\u201A",
|
|
299348
|
-
rsquor: "\u2019",
|
|
299349
|
-
ldquor: "\u201E",
|
|
299350
|
-
bdquo: "\u201E",
|
|
299351
|
-
comma: ",",
|
|
299352
|
-
period: ".",
|
|
299353
|
-
colon: ":",
|
|
299354
|
-
semi: ";",
|
|
299355
|
-
excl: "!",
|
|
299356
|
-
quest: "?",
|
|
299357
|
-
num: "#",
|
|
299358
|
-
dollar: "$",
|
|
299359
|
-
percent: "%",
|
|
299360
|
-
ast: "*",
|
|
299361
|
-
commat: "@",
|
|
299362
|
-
lowbar: "_",
|
|
299363
|
-
verbar: "|",
|
|
299364
|
-
vert: "|",
|
|
299365
|
-
sol: "/",
|
|
299366
|
-
bsol: "\\",
|
|
299367
|
-
lbrace: "{",
|
|
299368
|
-
rbrace: "}",
|
|
299369
|
-
lbrack: "[",
|
|
299370
|
-
rbrack: "]",
|
|
299371
|
-
lpar: "(",
|
|
299372
|
-
rpar: ")",
|
|
299373
|
-
nbsp: "\xA0",
|
|
299374
|
-
iexcl: "\xA1",
|
|
299375
|
-
cent: "\xA2",
|
|
299376
|
-
pound: "\xA3",
|
|
299377
|
-
curren: "\xA4",
|
|
299378
|
-
yen: "\xA5",
|
|
299379
|
-
brvbar: "\xA6",
|
|
299380
|
-
sect: "\xA7",
|
|
299381
|
-
uml: "\xA8",
|
|
299382
|
-
copy: "\xA9",
|
|
299383
|
-
COPY: "\xA9",
|
|
299384
|
-
ordf: "\xAA",
|
|
299385
|
-
laquo: "\xAB",
|
|
299386
|
-
not: "\xAC",
|
|
299387
|
-
shy: "\xAD",
|
|
299388
|
-
reg: "\xAE",
|
|
299389
|
-
REG: "\xAE",
|
|
299390
|
-
macr: "\xAF",
|
|
299391
|
-
deg: "\xB0",
|
|
299392
|
-
plusmn: "\xB1",
|
|
299393
|
-
sup2: "\xB2",
|
|
299394
|
-
sup3: "\xB3",
|
|
299395
|
-
acute: "\xB4",
|
|
299396
|
-
micro: "\xB5",
|
|
299397
|
-
para: "\xB6",
|
|
299398
|
-
middot: "\xB7",
|
|
299399
|
-
cedil: "\xB8",
|
|
299400
|
-
sup1: "\xB9",
|
|
299401
|
-
ordm: "\xBA",
|
|
299402
|
-
raquo: "\xBB",
|
|
299403
|
-
frac14: "\xBC",
|
|
299404
|
-
frac12: "\xBD",
|
|
299405
|
-
half: "\xBD",
|
|
299406
|
-
frac34: "\xBE",
|
|
299407
|
-
iquest: "\xBF",
|
|
299408
|
-
times: "\xD7",
|
|
299409
|
-
div: "\xF7",
|
|
299410
|
-
divide: "\xF7"
|
|
299411
|
-
};
|
|
299412
|
-
var LATIN_ACCENTS = {
|
|
299413
|
-
Agrave: "\xC0",
|
|
299414
|
-
agrave: "\xE0",
|
|
299415
|
-
Aacute: "\xC1",
|
|
299416
|
-
aacute: "\xE1",
|
|
299417
|
-
Acirc: "\xC2",
|
|
299418
|
-
acirc: "\xE2",
|
|
299419
|
-
Atilde: "\xC3",
|
|
299420
|
-
atilde: "\xE3",
|
|
299421
|
-
Auml: "\xC4",
|
|
299422
|
-
auml: "\xE4",
|
|
299423
|
-
Aring: "\xC5",
|
|
299424
|
-
aring: "\xE5",
|
|
299425
|
-
AElig: "\xC6",
|
|
299426
|
-
aelig: "\xE6",
|
|
299427
|
-
Ccedil: "\xC7",
|
|
299428
|
-
ccedil: "\xE7",
|
|
299429
|
-
Egrave: "\xC8",
|
|
299430
|
-
egrave: "\xE8",
|
|
299431
|
-
Eacute: "\xC9",
|
|
299432
|
-
eacute: "\xE9",
|
|
299433
|
-
Ecirc: "\xCA",
|
|
299434
|
-
ecirc: "\xEA",
|
|
299435
|
-
Euml: "\xCB",
|
|
299436
|
-
euml: "\xEB",
|
|
299437
|
-
Igrave: "\xCC",
|
|
299438
|
-
igrave: "\xEC",
|
|
299439
|
-
Iacute: "\xCD",
|
|
299440
|
-
iacute: "\xED",
|
|
299441
|
-
Icirc: "\xCE",
|
|
299442
|
-
icirc: "\xEE",
|
|
299443
|
-
Iuml: "\xCF",
|
|
299444
|
-
iuml: "\xEF",
|
|
299445
|
-
ETH: "\xD0",
|
|
299446
|
-
eth: "\xF0",
|
|
299447
|
-
Ntilde: "\xD1",
|
|
299448
|
-
ntilde: "\xF1",
|
|
299449
|
-
Ograve: "\xD2",
|
|
299450
|
-
ograve: "\xF2",
|
|
299451
|
-
Oacute: "\xD3",
|
|
299452
|
-
oacute: "\xF3",
|
|
299453
|
-
Ocirc: "\xD4",
|
|
299454
|
-
ocirc: "\xF4",
|
|
299455
|
-
Otilde: "\xD5",
|
|
299456
|
-
otilde: "\xF5",
|
|
299457
|
-
Ouml: "\xD6",
|
|
299458
|
-
ouml: "\xF6",
|
|
299459
|
-
Oslash: "\xD8",
|
|
299460
|
-
oslash: "\xF8",
|
|
299461
|
-
Ugrave: "\xD9",
|
|
299462
|
-
ugrave: "\xF9",
|
|
299463
|
-
Uacute: "\xDA",
|
|
299464
|
-
uacute: "\xFA",
|
|
299465
|
-
Ucirc: "\xDB",
|
|
299466
|
-
ucirc: "\xFB",
|
|
299467
|
-
Uuml: "\xDC",
|
|
299468
|
-
uuml: "\xFC",
|
|
299469
|
-
Yacute: "\xDD",
|
|
299470
|
-
yacute: "\xFD",
|
|
299471
|
-
THORN: "\xDE",
|
|
299472
|
-
thorn: "\xFE",
|
|
299473
|
-
szlig: "\xDF",
|
|
299474
|
-
yuml: "\xFF",
|
|
299475
|
-
Yuml: "\u0178"
|
|
299476
|
-
};
|
|
299477
|
-
var LATIN_EXTENDED = {
|
|
299478
|
-
Amacr: "\u0100",
|
|
299479
|
-
amacr: "\u0101",
|
|
299480
|
-
Abreve: "\u0102",
|
|
299481
|
-
abreve: "\u0103",
|
|
299482
|
-
Aogon: "\u0104",
|
|
299483
|
-
aogon: "\u0105",
|
|
299484
|
-
Cacute: "\u0106",
|
|
299485
|
-
cacute: "\u0107",
|
|
299486
|
-
Ccirc: "\u0108",
|
|
299487
|
-
ccirc: "\u0109",
|
|
299488
|
-
Cdot: "\u010A",
|
|
299489
|
-
cdot: "\u010B",
|
|
299490
|
-
Ccaron: "\u010C",
|
|
299491
|
-
ccaron: "\u010D",
|
|
299492
|
-
Dcaron: "\u010E",
|
|
299493
|
-
dcaron: "\u010F",
|
|
299494
|
-
Dstrok: "\u0110",
|
|
299495
|
-
dstrok: "\u0111",
|
|
299496
|
-
Emacr: "\u0112",
|
|
299497
|
-
emacr: "\u0113",
|
|
299498
|
-
Ecaron: "\u011A",
|
|
299499
|
-
ecaron: "\u011B",
|
|
299500
|
-
Edot: "\u0116",
|
|
299501
|
-
edot: "\u0117",
|
|
299502
|
-
Eogon: "\u0118",
|
|
299503
|
-
eogon: "\u0119",
|
|
299504
|
-
Gcirc: "\u011C",
|
|
299505
|
-
gcirc: "\u011D",
|
|
299506
|
-
Gbreve: "\u011E",
|
|
299507
|
-
gbreve: "\u011F",
|
|
299508
|
-
Gdot: "\u0120",
|
|
299509
|
-
gdot: "\u0121",
|
|
299510
|
-
Gcedil: "\u0122",
|
|
299511
|
-
Hcirc: "\u0124",
|
|
299512
|
-
hcirc: "\u0125",
|
|
299513
|
-
Hstrok: "\u0126",
|
|
299514
|
-
hstrok: "\u0127",
|
|
299515
|
-
Itilde: "\u0128",
|
|
299516
|
-
itilde: "\u0129",
|
|
299517
|
-
Imacr: "\u012A",
|
|
299518
|
-
imacr: "\u012B",
|
|
299519
|
-
Iogon: "\u012E",
|
|
299520
|
-
iogon: "\u012F",
|
|
299521
|
-
Idot: "\u0130",
|
|
299522
|
-
IJlig: "\u0132",
|
|
299523
|
-
ijlig: "\u0133",
|
|
299524
|
-
Jcirc: "\u0134",
|
|
299525
|
-
jcirc: "\u0135",
|
|
299526
|
-
Kcedil: "\u0136",
|
|
299527
|
-
kcedil: "\u0137",
|
|
299528
|
-
kgreen: "\u0138",
|
|
299529
|
-
Lacute: "\u0139",
|
|
299530
|
-
lacute: "\u013A",
|
|
299531
|
-
Lcedil: "\u013B",
|
|
299532
|
-
lcedil: "\u013C",
|
|
299533
|
-
Lcaron: "\u013D",
|
|
299534
|
-
lcaron: "\u013E",
|
|
299535
|
-
Lmidot: "\u013F",
|
|
299536
|
-
lmidot: "\u0140",
|
|
299537
|
-
Lstrok: "\u0141",
|
|
299538
|
-
lstrok: "\u0142",
|
|
299539
|
-
Nacute: "\u0143",
|
|
299540
|
-
nacute: "\u0144",
|
|
299541
|
-
Ncaron: "\u0147",
|
|
299542
|
-
ncaron: "\u0148",
|
|
299543
|
-
Ncedil: "\u0145",
|
|
299544
|
-
ncedil: "\u0146",
|
|
299545
|
-
ENG: "\u014A",
|
|
299546
|
-
eng: "\u014B",
|
|
299547
|
-
Omacr: "\u014C",
|
|
299548
|
-
omacr: "\u014D",
|
|
299549
|
-
Odblac: "\u0150",
|
|
299550
|
-
odblac: "\u0151",
|
|
299551
|
-
OElig: "\u0152",
|
|
299552
|
-
oelig: "\u0153",
|
|
299553
|
-
Racute: "\u0154",
|
|
299554
|
-
racute: "\u0155",
|
|
299555
|
-
Rcaron: "\u0158",
|
|
299556
|
-
rcaron: "\u0159",
|
|
299557
|
-
Rcedil: "\u0156",
|
|
299558
|
-
rcedil: "\u0157",
|
|
299559
|
-
Sacute: "\u015A",
|
|
299560
|
-
sacute: "\u015B",
|
|
299561
|
-
Scirc: "\u015C",
|
|
299562
|
-
scirc: "\u015D",
|
|
299563
|
-
Scedil: "\u015E",
|
|
299564
|
-
scedil: "\u015F",
|
|
299565
|
-
Scaron: "\u0160",
|
|
299566
|
-
scaron: "\u0161",
|
|
299567
|
-
Tcedil: "\u0162",
|
|
299568
|
-
tcedil: "\u0163",
|
|
299569
|
-
Tcaron: "\u0164",
|
|
299570
|
-
tcaron: "\u0165",
|
|
299571
|
-
Tstrok: "\u0166",
|
|
299572
|
-
tstrok: "\u0167",
|
|
299573
|
-
Utilde: "\u0168",
|
|
299574
|
-
utilde: "\u0169",
|
|
299575
|
-
Umacr: "\u016A",
|
|
299576
|
-
umacr: "\u016B",
|
|
299577
|
-
Ubreve: "\u016C",
|
|
299578
|
-
ubreve: "\u016D",
|
|
299579
|
-
Uring: "\u016E",
|
|
299580
|
-
uring: "\u016F",
|
|
299581
|
-
Udblac: "\u0170",
|
|
299582
|
-
udblac: "\u0171",
|
|
299583
|
-
Uogon: "\u0172",
|
|
299584
|
-
uogon: "\u0173",
|
|
299585
|
-
Wcirc: "\u0174",
|
|
299586
|
-
wcirc: "\u0175",
|
|
299587
|
-
Ycirc: "\u0176",
|
|
299588
|
-
ycirc: "\u0177",
|
|
299589
|
-
Zacute: "\u0179",
|
|
299590
|
-
zacute: "\u017A",
|
|
299591
|
-
Zdot: "\u017B",
|
|
299592
|
-
zdot: "\u017C",
|
|
299593
|
-
Zcaron: "\u017D",
|
|
299594
|
-
zcaron: "\u017E"
|
|
299595
|
-
};
|
|
299596
|
-
var GREEK = {
|
|
299597
|
-
Alpha: "\u0391",
|
|
299598
|
-
alpha: "\u03B1",
|
|
299599
|
-
Beta: "\u0392",
|
|
299600
|
-
beta: "\u03B2",
|
|
299601
|
-
Gamma: "\u0393",
|
|
299602
|
-
gamma: "\u03B3",
|
|
299603
|
-
Delta: "\u0394",
|
|
299604
|
-
delta: "\u03B4",
|
|
299605
|
-
Epsilon: "\u0395",
|
|
299606
|
-
epsilon: "\u03B5",
|
|
299607
|
-
epsiv: "\u03F5",
|
|
299608
|
-
varepsilon: "\u03F5",
|
|
299609
|
-
Zeta: "\u0396",
|
|
299610
|
-
zeta: "\u03B6",
|
|
299611
|
-
Eta: "\u0397",
|
|
299612
|
-
eta: "\u03B7",
|
|
299613
|
-
Theta: "\u0398",
|
|
299614
|
-
theta: "\u03B8",
|
|
299615
|
-
thetasym: "\u03D1",
|
|
299616
|
-
vartheta: "\u03D1",
|
|
299617
|
-
Iota: "\u0399",
|
|
299618
|
-
iota: "\u03B9",
|
|
299619
|
-
Kappa: "\u039A",
|
|
299620
|
-
kappa: "\u03BA",
|
|
299621
|
-
kappav: "\u03F0",
|
|
299622
|
-
varkappa: "\u03F0",
|
|
299623
|
-
Lambda: "\u039B",
|
|
299624
|
-
lambda: "\u03BB",
|
|
299625
|
-
Mu: "\u039C",
|
|
299626
|
-
mu: "\u03BC",
|
|
299627
|
-
Nu: "\u039D",
|
|
299628
|
-
nu: "\u03BD",
|
|
299629
|
-
Xi: "\u039E",
|
|
299630
|
-
xi: "\u03BE",
|
|
299631
|
-
Omicron: "\u039F",
|
|
299632
|
-
omicron: "\u03BF",
|
|
299633
|
-
Pi: "\u03A0",
|
|
299634
|
-
pi: "\u03C0",
|
|
299635
|
-
piv: "\u03D6",
|
|
299636
|
-
varpi: "\u03D6",
|
|
299637
|
-
Rho: "\u03A1",
|
|
299638
|
-
rho: "\u03C1",
|
|
299639
|
-
rhov: "\u03F1",
|
|
299640
|
-
varrho: "\u03F1",
|
|
299641
|
-
Sigma: "\u03A3",
|
|
299642
|
-
sigma: "\u03C3",
|
|
299643
|
-
sigmaf: "\u03C2",
|
|
299644
|
-
sigmav: "\u03C2",
|
|
299645
|
-
varsigma: "\u03C2",
|
|
299646
|
-
Tau: "\u03A4",
|
|
299647
|
-
tau: "\u03C4",
|
|
299648
|
-
Upsilon: "\u03A5",
|
|
299649
|
-
upsilon: "\u03C5",
|
|
299650
|
-
upsi: "\u03C5",
|
|
299651
|
-
Upsi: "\u03D2",
|
|
299652
|
-
upsih: "\u03D2",
|
|
299653
|
-
Phi: "\u03A6",
|
|
299654
|
-
phi: "\u03C6",
|
|
299655
|
-
phiv: "\u03D5",
|
|
299656
|
-
varphi: "\u03D5",
|
|
299657
|
-
Chi: "\u03A7",
|
|
299658
|
-
chi: "\u03C7",
|
|
299659
|
-
Psi: "\u03A8",
|
|
299660
|
-
psi: "\u03C8",
|
|
299661
|
-
Omega: "\u03A9",
|
|
299662
|
-
omega: "\u03C9",
|
|
299663
|
-
ohm: "\u03A9",
|
|
299664
|
-
Gammad: "\u03DC",
|
|
299665
|
-
gammad: "\u03DD",
|
|
299666
|
-
digamma: "\u03DD"
|
|
299667
|
-
};
|
|
299668
|
-
var CYRILLIC = {
|
|
299669
|
-
Afr: "\u{1D504}",
|
|
299670
|
-
afr: "\u{1D51E}",
|
|
299671
|
-
Acy: "\u0410",
|
|
299672
|
-
acy: "\u0430",
|
|
299673
|
-
Bcy: "\u0411",
|
|
299674
|
-
bcy: "\u0431",
|
|
299675
|
-
Vcy: "\u0412",
|
|
299676
|
-
vcy: "\u0432",
|
|
299677
|
-
Gcy: "\u0413",
|
|
299678
|
-
gcy: "\u0433",
|
|
299679
|
-
Dcy: "\u0414",
|
|
299680
|
-
dcy: "\u0434",
|
|
299681
|
-
IEcy: "\u0415",
|
|
299682
|
-
iecy: "\u0435",
|
|
299683
|
-
IOcy: "\u0401",
|
|
299684
|
-
iocy: "\u0451",
|
|
299685
|
-
ZHcy: "\u0416",
|
|
299686
|
-
zhcy: "\u0436",
|
|
299687
|
-
Zcy: "\u0417",
|
|
299688
|
-
zcy: "\u0437",
|
|
299689
|
-
Icy: "\u0418",
|
|
299690
|
-
icy: "\u0438",
|
|
299691
|
-
Jcy: "\u0419",
|
|
299692
|
-
jcy: "\u0439",
|
|
299693
|
-
Kcy: "\u041A",
|
|
299694
|
-
kcy: "\u043A",
|
|
299695
|
-
Lcy: "\u041B",
|
|
299696
|
-
lcy: "\u043B",
|
|
299697
|
-
Mcy: "\u041C",
|
|
299698
|
-
mcy: "\u043C",
|
|
299699
|
-
Ncy: "\u041D",
|
|
299700
|
-
ncy: "\u043D",
|
|
299701
|
-
Ocy: "\u041E",
|
|
299702
|
-
ocy: "\u043E",
|
|
299703
|
-
Pcy: "\u041F",
|
|
299704
|
-
pcy: "\u043F",
|
|
299705
|
-
Rcy: "\u0420",
|
|
299706
|
-
rcy: "\u0440",
|
|
299707
|
-
Scy: "\u0421",
|
|
299708
|
-
scy: "\u0441",
|
|
299709
|
-
Tcy: "\u0422",
|
|
299710
|
-
tcy: "\u0442",
|
|
299711
|
-
Ucy: "\u0423",
|
|
299712
|
-
ucy: "\u0443",
|
|
299713
|
-
Fcy: "\u0424",
|
|
299714
|
-
fcy: "\u0444",
|
|
299715
|
-
KHcy: "\u0425",
|
|
299716
|
-
khcy: "\u0445",
|
|
299717
|
-
TScy: "\u0426",
|
|
299718
|
-
tscy: "\u0446",
|
|
299719
|
-
CHcy: "\u0427",
|
|
299720
|
-
chcy: "\u0447",
|
|
299721
|
-
SHcy: "\u0428",
|
|
299722
|
-
shcy: "\u0448",
|
|
299723
|
-
SHCHcy: "\u0429",
|
|
299724
|
-
shchcy: "\u0449",
|
|
299725
|
-
HARDcy: "\u042A",
|
|
299726
|
-
hardcy: "\u044A",
|
|
299727
|
-
Ycy: "\u042B",
|
|
299728
|
-
ycy: "\u044B",
|
|
299729
|
-
SOFTcy: "\u042C",
|
|
299730
|
-
softcy: "\u044C",
|
|
299731
|
-
Ecy: "\u042D",
|
|
299732
|
-
ecy: "\u044D",
|
|
299733
|
-
YUcy: "\u042E",
|
|
299734
|
-
yucy: "\u044E",
|
|
299735
|
-
YAcy: "\u042F",
|
|
299736
|
-
yacy: "\u044F",
|
|
299737
|
-
DJcy: "\u0402",
|
|
299738
|
-
djcy: "\u0452",
|
|
299739
|
-
GJcy: "\u0403",
|
|
299740
|
-
gjcy: "\u0453",
|
|
299741
|
-
Jukcy: "\u0404",
|
|
299742
|
-
jukcy: "\u0454",
|
|
299743
|
-
DScy: "\u0405",
|
|
299744
|
-
dscy: "\u0455",
|
|
299745
|
-
Iukcy: "\u0406",
|
|
299746
|
-
iukcy: "\u0456",
|
|
299747
|
-
YIcy: "\u0407",
|
|
299748
|
-
yicy: "\u0457",
|
|
299749
|
-
Jsercy: "\u0408",
|
|
299750
|
-
jsercy: "\u0458",
|
|
299751
|
-
LJcy: "\u0409",
|
|
299752
|
-
ljcy: "\u0459",
|
|
299753
|
-
NJcy: "\u040A",
|
|
299754
|
-
njcy: "\u045A",
|
|
299755
|
-
TSHcy: "\u040B",
|
|
299756
|
-
tshcy: "\u045B",
|
|
299757
|
-
KJcy: "\u040C",
|
|
299758
|
-
kjcy: "\u045C",
|
|
299759
|
-
Ubrcy: "\u040E",
|
|
299760
|
-
ubrcy: "\u045E",
|
|
299761
|
-
DZcy: "\u040F",
|
|
299762
|
-
dzcy: "\u045F"
|
|
299763
|
-
};
|
|
299764
|
-
var MATH = {
|
|
299765
|
-
plus: "+",
|
|
299766
|
-
pm: "\xB1",
|
|
299767
|
-
times: "\xD7",
|
|
299768
|
-
div: "\xF7",
|
|
299769
|
-
divide: "\xF7",
|
|
299770
|
-
sdot: "\u22C5",
|
|
299771
|
-
star: "\u2606",
|
|
299772
|
-
starf: "\u2605",
|
|
299773
|
-
bigstar: "\u2605",
|
|
299774
|
-
lowast: "\u2217",
|
|
299775
|
-
ast: "*",
|
|
299776
|
-
midast: "*",
|
|
299777
|
-
compfn: "\u2218",
|
|
299778
|
-
smallcircle: "\u2218",
|
|
299779
|
-
bullet: "\u2022",
|
|
299780
|
-
bull: "\u2022",
|
|
299781
|
-
nbsp: "\xA0",
|
|
299782
|
-
hellip: "\u2026",
|
|
299783
|
-
mldr: "\u2026",
|
|
299784
|
-
prime: "\u2032",
|
|
299785
|
-
Prime: "\u2033",
|
|
299786
|
-
tprime: "\u2034",
|
|
299787
|
-
bprime: "\u2035",
|
|
299788
|
-
backprime: "\u2035",
|
|
299789
|
-
minus: "\u2212",
|
|
299790
|
-
minusd: "\u2238",
|
|
299791
|
-
dotminus: "\u2238",
|
|
299792
|
-
plusdo: "\u2214",
|
|
299793
|
-
dotplus: "\u2214",
|
|
299794
|
-
plusmn: "\xB1",
|
|
299795
|
-
minusplus: "\u2213",
|
|
299796
|
-
mnplus: "\u2213",
|
|
299797
|
-
mp: "\u2213",
|
|
299798
|
-
setminus: "\u2216",
|
|
299799
|
-
smallsetminus: "\u2216",
|
|
299800
|
-
Backslash: "\u2216",
|
|
299801
|
-
setmn: "\u2216",
|
|
299802
|
-
ssetmn: "\u2216",
|
|
299803
|
-
lowbar: "_",
|
|
299804
|
-
verbar: "|",
|
|
299805
|
-
vert: "|",
|
|
299806
|
-
VerticalLine: "|",
|
|
299807
|
-
colon: ":",
|
|
299808
|
-
Colon: "\u2237",
|
|
299809
|
-
Proportion: "\u2237",
|
|
299810
|
-
ratio: "\u2236",
|
|
299811
|
-
equals: "=",
|
|
299812
|
-
ne: "\u2260",
|
|
299813
|
-
nequiv: "\u2262",
|
|
299814
|
-
equiv: "\u2261",
|
|
299815
|
-
Congruent: "\u2261",
|
|
299816
|
-
sim: "\u223C",
|
|
299817
|
-
thicksim: "\u223C",
|
|
299818
|
-
thksim: "\u223C",
|
|
299819
|
-
sime: "\u2243",
|
|
299820
|
-
simeq: "\u2243",
|
|
299821
|
-
TildeEqual: "\u2243",
|
|
299822
|
-
asymp: "\u2248",
|
|
299823
|
-
approx: "\u2248",
|
|
299824
|
-
thickapprox: "\u2248",
|
|
299825
|
-
thkap: "\u2248",
|
|
299826
|
-
TildeTilde: "\u2248",
|
|
299827
|
-
ncong: "\u2247",
|
|
299828
|
-
cong: "\u2245",
|
|
299829
|
-
TildeFullEqual: "\u2245",
|
|
299830
|
-
asympeq: "\u224D",
|
|
299831
|
-
CupCap: "\u224D",
|
|
299832
|
-
bump: "\u224E",
|
|
299833
|
-
Bumpeq: "\u224E",
|
|
299834
|
-
HumpDownHump: "\u224E",
|
|
299835
|
-
bumpe: "\u224F",
|
|
299836
|
-
bumpeq: "\u224F",
|
|
299837
|
-
HumpEqual: "\u224F",
|
|
299838
|
-
le: "\u2264",
|
|
299839
|
-
LessEqual: "\u2264",
|
|
299840
|
-
ge: "\u2265",
|
|
299841
|
-
GreaterEqual: "\u2265",
|
|
299842
|
-
lesseqgtr: "\u22DA",
|
|
299843
|
-
lesseqqgtr: "\u2A8B",
|
|
299844
|
-
greater: ">",
|
|
299845
|
-
less: "<"
|
|
299846
|
-
};
|
|
299847
|
-
var MATH_ADVANCED = {
|
|
299848
|
-
alefsym: "\u2135",
|
|
299849
|
-
aleph: "\u2135",
|
|
299850
|
-
beth: "\u2136",
|
|
299851
|
-
gimel: "\u2137",
|
|
299852
|
-
daleth: "\u2138",
|
|
299853
|
-
forall: "\u2200",
|
|
299854
|
-
ForAll: "\u2200",
|
|
299855
|
-
part: "\u2202",
|
|
299856
|
-
PartialD: "\u2202",
|
|
299857
|
-
exist: "\u2203",
|
|
299858
|
-
Exists: "\u2203",
|
|
299859
|
-
nexist: "\u2204",
|
|
299860
|
-
nexists: "\u2204",
|
|
299861
|
-
empty: "\u2205",
|
|
299862
|
-
emptyset: "\u2205",
|
|
299863
|
-
emptyv: "\u2205",
|
|
299864
|
-
varnothing: "\u2205",
|
|
299865
|
-
nabla: "\u2207",
|
|
299866
|
-
Del: "\u2207",
|
|
299867
|
-
isin: "\u2208",
|
|
299868
|
-
isinv: "\u2208",
|
|
299869
|
-
in: "\u2208",
|
|
299870
|
-
Element: "\u2208",
|
|
299871
|
-
notin: "\u2209",
|
|
299872
|
-
notinva: "\u2209",
|
|
299873
|
-
ni: "\u220B",
|
|
299874
|
-
niv: "\u220B",
|
|
299875
|
-
SuchThat: "\u220B",
|
|
299876
|
-
ReverseElement: "\u220B",
|
|
299877
|
-
notni: "\u220C",
|
|
299878
|
-
notniva: "\u220C",
|
|
299879
|
-
prod: "\u220F",
|
|
299880
|
-
Product: "\u220F",
|
|
299881
|
-
coprod: "\u2210",
|
|
299882
|
-
Coproduct: "\u2210",
|
|
299883
|
-
sum: "\u2211",
|
|
299884
|
-
Sum: "\u2211",
|
|
299885
|
-
minus: "\u2212",
|
|
299886
|
-
mp: "\u2213",
|
|
299887
|
-
plusdo: "\u2214",
|
|
299888
|
-
dotplus: "\u2214",
|
|
299889
|
-
setminus: "\u2216",
|
|
299890
|
-
lowast: "\u2217",
|
|
299891
|
-
radic: "\u221A",
|
|
299892
|
-
Sqrt: "\u221A",
|
|
299893
|
-
prop: "\u221D",
|
|
299894
|
-
propto: "\u221D",
|
|
299895
|
-
Proportional: "\u221D",
|
|
299896
|
-
varpropto: "\u221D",
|
|
299897
|
-
infin: "\u221E",
|
|
299898
|
-
infintie: "\u29DD",
|
|
299899
|
-
ang: "\u2220",
|
|
299900
|
-
angle: "\u2220",
|
|
299901
|
-
angmsd: "\u2221",
|
|
299902
|
-
measuredangle: "\u2221",
|
|
299903
|
-
angsph: "\u2222",
|
|
299904
|
-
mid: "\u2223",
|
|
299905
|
-
VerticalBar: "\u2223",
|
|
299906
|
-
nmid: "\u2224",
|
|
299907
|
-
nsmid: "\u2224",
|
|
299908
|
-
npar: "\u2226",
|
|
299909
|
-
parallel: "\u2225",
|
|
299910
|
-
spar: "\u2225",
|
|
299911
|
-
nparallel: "\u2226",
|
|
299912
|
-
nspar: "\u2226",
|
|
299913
|
-
and: "\u2227",
|
|
299914
|
-
wedge: "\u2227",
|
|
299915
|
-
or: "\u2228",
|
|
299916
|
-
vee: "\u2228",
|
|
299917
|
-
cap: "\u2229",
|
|
299918
|
-
cup: "\u222A",
|
|
299919
|
-
int: "\u222B",
|
|
299920
|
-
Integral: "\u222B",
|
|
299921
|
-
conint: "\u222E",
|
|
299922
|
-
ContourIntegral: "\u222E",
|
|
299923
|
-
Conint: "\u222F",
|
|
299924
|
-
DoubleContourIntegral: "\u222F",
|
|
299925
|
-
Cconint: "\u2230",
|
|
299926
|
-
there4: "\u2234",
|
|
299927
|
-
therefore: "\u2234",
|
|
299928
|
-
Therefore: "\u2234",
|
|
299929
|
-
becaus: "\u2235",
|
|
299930
|
-
because: "\u2235",
|
|
299931
|
-
Because: "\u2235",
|
|
299932
|
-
ratio: "\u2236",
|
|
299933
|
-
Proportion: "\u2237",
|
|
299934
|
-
minusd: "\u2238",
|
|
299935
|
-
dotminus: "\u2238",
|
|
299936
|
-
mDDot: "\u223A",
|
|
299937
|
-
homtht: "\u223B",
|
|
299938
|
-
sim: "\u223C",
|
|
299939
|
-
bsimg: "\u223D",
|
|
299940
|
-
backsim: "\u223D",
|
|
299941
|
-
ac: "\u223E",
|
|
299942
|
-
mstpos: "\u223E",
|
|
299943
|
-
acd: "\u223F",
|
|
299944
|
-
VerticalTilde: "\u2240",
|
|
299945
|
-
wr: "\u2240",
|
|
299946
|
-
wreath: "\u2240",
|
|
299947
|
-
nsime: "\u2244",
|
|
299948
|
-
nsimeq: "\u2244",
|
|
299949
|
-
ncong: "\u2247",
|
|
299950
|
-
simne: "\u2246",
|
|
299951
|
-
ncongdot: "\u2A6D\u0338",
|
|
299952
|
-
ngsim: "\u2275",
|
|
299953
|
-
nsim: "\u2241",
|
|
299954
|
-
napprox: "\u2249",
|
|
299955
|
-
nap: "\u2249",
|
|
299956
|
-
ngeq: "\u2271",
|
|
299957
|
-
nge: "\u2271",
|
|
299958
|
-
nleq: "\u2270",
|
|
299959
|
-
nle: "\u2270",
|
|
299960
|
-
ngtr: "\u226F",
|
|
299961
|
-
ngt: "\u226F",
|
|
299962
|
-
nless: "\u226E",
|
|
299963
|
-
nlt: "\u226E",
|
|
299964
|
-
nprec: "\u2280",
|
|
299965
|
-
npr: "\u2280",
|
|
299966
|
-
nsucc: "\u2281",
|
|
299967
|
-
nsc: "\u2281"
|
|
299968
|
-
};
|
|
299969
|
-
var ARROWS = {
|
|
299970
|
-
larr: "\u2190",
|
|
299971
|
-
leftarrow: "\u2190",
|
|
299972
|
-
LeftArrow: "\u2190",
|
|
299973
|
-
uarr: "\u2191",
|
|
299974
|
-
uparrow: "\u2191",
|
|
299975
|
-
UpArrow: "\u2191",
|
|
299976
|
-
rarr: "\u2192",
|
|
299977
|
-
rightarrow: "\u2192",
|
|
299978
|
-
RightArrow: "\u2192",
|
|
299979
|
-
darr: "\u2193",
|
|
299980
|
-
downarrow: "\u2193",
|
|
299981
|
-
DownArrow: "\u2193",
|
|
299982
|
-
harr: "\u2194",
|
|
299983
|
-
leftrightarrow: "\u2194",
|
|
299984
|
-
LeftRightArrow: "\u2194",
|
|
299985
|
-
varr: "\u2195",
|
|
299986
|
-
updownarrow: "\u2195",
|
|
299987
|
-
UpDownArrow: "\u2195",
|
|
299988
|
-
nwarr: "\u2196",
|
|
299989
|
-
nwarrow: "\u2196",
|
|
299990
|
-
UpperLeftArrow: "\u2196",
|
|
299991
|
-
nearr: "\u2197",
|
|
299992
|
-
nearrow: "\u2197",
|
|
299993
|
-
UpperRightArrow: "\u2197",
|
|
299994
|
-
searr: "\u2198",
|
|
299995
|
-
searrow: "\u2198",
|
|
299996
|
-
LowerRightArrow: "\u2198",
|
|
299997
|
-
swarr: "\u2199",
|
|
299998
|
-
swarrow: "\u2199",
|
|
299999
|
-
LowerLeftArrow: "\u2199",
|
|
300000
|
-
lArr: "\u21D0",
|
|
300001
|
-
Leftarrow: "\u21D0",
|
|
300002
|
-
uArr: "\u21D1",
|
|
300003
|
-
Uparrow: "\u21D1",
|
|
300004
|
-
rArr: "\u21D2",
|
|
300005
|
-
Rightarrow: "\u21D2",
|
|
300006
|
-
dArr: "\u21D3",
|
|
300007
|
-
Downarrow: "\u21D3",
|
|
300008
|
-
hArr: "\u21D4",
|
|
300009
|
-
Leftrightarrow: "\u21D4",
|
|
300010
|
-
iff: "\u21D4",
|
|
300011
|
-
vArr: "\u21D5",
|
|
300012
|
-
Updownarrow: "\u21D5",
|
|
300013
|
-
lAarr: "\u21DA",
|
|
300014
|
-
Lleftarrow: "\u21DA",
|
|
300015
|
-
rAarr: "\u21DB",
|
|
300016
|
-
Rrightarrow: "\u21DB",
|
|
300017
|
-
lrarr: "\u21C6",
|
|
300018
|
-
leftrightarrows: "\u21C6",
|
|
300019
|
-
rlarr: "\u21C4",
|
|
300020
|
-
rightleftarrows: "\u21C4",
|
|
300021
|
-
lrhar: "\u21CB",
|
|
300022
|
-
leftrightharpoons: "\u21CB",
|
|
300023
|
-
ReverseEquilibrium: "\u21CB",
|
|
300024
|
-
rlhar: "\u21CC",
|
|
300025
|
-
rightleftharpoons: "\u21CC",
|
|
300026
|
-
Equilibrium: "\u21CC",
|
|
300027
|
-
udarr: "\u21C5",
|
|
300028
|
-
UpArrowDownArrow: "\u21C5",
|
|
300029
|
-
duarr: "\u21F5",
|
|
300030
|
-
DownArrowUpArrow: "\u21F5",
|
|
300031
|
-
llarr: "\u21C7",
|
|
300032
|
-
leftleftarrows: "\u21C7",
|
|
300033
|
-
rrarr: "\u21C9",
|
|
300034
|
-
rightrightarrows: "\u21C9",
|
|
300035
|
-
ddarr: "\u21CA",
|
|
300036
|
-
downdownarrows: "\u21CA",
|
|
300037
|
-
har: "\u21BD",
|
|
300038
|
-
lhard: "\u21BD",
|
|
300039
|
-
leftharpoondown: "\u21BD",
|
|
300040
|
-
lharu: "\u21BC",
|
|
300041
|
-
leftharpoonup: "\u21BC",
|
|
300042
|
-
rhard: "\u21C1",
|
|
300043
|
-
rightharpoondown: "\u21C1",
|
|
300044
|
-
rharu: "\u21C0",
|
|
300045
|
-
rightharpoonup: "\u21C0",
|
|
300046
|
-
lsh: "\u21B0",
|
|
300047
|
-
Lsh: "\u21B0",
|
|
300048
|
-
rsh: "\u21B1",
|
|
300049
|
-
Rsh: "\u21B1",
|
|
300050
|
-
ldsh: "\u21B2",
|
|
300051
|
-
rdsh: "\u21B3",
|
|
300052
|
-
hookleftarrow: "\u21A9",
|
|
300053
|
-
hookrightarrow: "\u21AA",
|
|
300054
|
-
mapstoleft: "\u21A4",
|
|
300055
|
-
mapstoup: "\u21A5",
|
|
300056
|
-
map: "\u21A6",
|
|
300057
|
-
mapsto: "\u21A6",
|
|
300058
|
-
mapstodown: "\u21A7",
|
|
300059
|
-
crarr: "\u21B5",
|
|
300060
|
-
nleftarrow: "\u219A",
|
|
300061
|
-
nleftrightarrow: "\u21AE",
|
|
300062
|
-
nrightarrow: "\u219B",
|
|
300063
|
-
nrarr: "\u219B",
|
|
300064
|
-
larrtl: "\u21A2",
|
|
300065
|
-
rarrtl: "\u21A3",
|
|
300066
|
-
leftarrowtail: "\u21A2",
|
|
300067
|
-
rightarrowtail: "\u21A3",
|
|
300068
|
-
twoheadleftarrow: "\u219E",
|
|
300069
|
-
twoheadrightarrow: "\u21A0",
|
|
300070
|
-
Larr: "\u219E",
|
|
300071
|
-
Rarr: "\u21A0",
|
|
300072
|
-
larrhk: "\u21A9",
|
|
300073
|
-
rarrhk: "\u21AA",
|
|
300074
|
-
larrlp: "\u21AB",
|
|
300075
|
-
looparrowleft: "\u21AB",
|
|
300076
|
-
rarrlp: "\u21AC",
|
|
300077
|
-
looparrowright: "\u21AC",
|
|
300078
|
-
harrw: "\u21AD",
|
|
300079
|
-
leftrightsquigarrow: "\u21AD",
|
|
300080
|
-
nrarrw: "\u219D\u0338",
|
|
300081
|
-
rarrw: "\u219D",
|
|
300082
|
-
rightsquigarrow: "\u219D",
|
|
300083
|
-
larrbfs: "\u291F",
|
|
300084
|
-
rarrbfs: "\u2920",
|
|
300085
|
-
nvHarr: "\u2904",
|
|
300086
|
-
nvlArr: "\u2902",
|
|
300087
|
-
nvrArr: "\u2903",
|
|
300088
|
-
larrfs: "\u291D",
|
|
300089
|
-
rarrfs: "\u291E",
|
|
300090
|
-
Map: "\u2905",
|
|
300091
|
-
larrsim: "\u2973",
|
|
300092
|
-
rarrsim: "\u2974",
|
|
300093
|
-
harrcir: "\u2948",
|
|
300094
|
-
Uarrocir: "\u2949",
|
|
300095
|
-
lurdshar: "\u294A",
|
|
300096
|
-
ldrdhar: "\u2967",
|
|
300097
|
-
ldrushar: "\u294B",
|
|
300098
|
-
rdldhar: "\u2969",
|
|
300099
|
-
lrhard: "\u296D",
|
|
300100
|
-
uharr: "\u21BE",
|
|
300101
|
-
uharl: "\u21BF",
|
|
300102
|
-
dharr: "\u21C2",
|
|
300103
|
-
dharl: "\u21C3",
|
|
300104
|
-
Uarr: "\u219F",
|
|
300105
|
-
Darr: "\u21A1",
|
|
300106
|
-
zigrarr: "\u21DD",
|
|
300107
|
-
nwArr: "\u21D6",
|
|
300108
|
-
neArr: "\u21D7",
|
|
300109
|
-
seArr: "\u21D8",
|
|
300110
|
-
swArr: "\u21D9",
|
|
300111
|
-
nharr: "\u21AE",
|
|
300112
|
-
nhArr: "\u21CE",
|
|
300113
|
-
nlarr: "\u219A",
|
|
300114
|
-
nlArr: "\u21CD",
|
|
300115
|
-
nrArr: "\u21CF",
|
|
300116
|
-
larrb: "\u21E4",
|
|
300117
|
-
LeftArrowBar: "\u21E4",
|
|
300118
|
-
rarrb: "\u21E5",
|
|
300119
|
-
RightArrowBar: "\u21E5"
|
|
300120
|
-
};
|
|
300121
|
-
var SHAPES = {
|
|
300122
|
-
square: "\u25A1",
|
|
300123
|
-
Square: "\u25A1",
|
|
300124
|
-
squ: "\u25A1",
|
|
300125
|
-
squf: "\u25AA",
|
|
300126
|
-
squarf: "\u25AA",
|
|
300127
|
-
blacksquar: "\u25AA",
|
|
300128
|
-
blacksquare: "\u25AA",
|
|
300129
|
-
FilledVerySmallSquare: "\u25AA",
|
|
300130
|
-
blk34: "\u2593",
|
|
300131
|
-
blk12: "\u2592",
|
|
300132
|
-
blk14: "\u2591",
|
|
300133
|
-
block: "\u2588",
|
|
300134
|
-
srect: "\u25AD",
|
|
300135
|
-
rect: "\u25AD",
|
|
300136
|
-
sdot: "\u22C5",
|
|
300137
|
-
sdotb: "\u22A1",
|
|
300138
|
-
dotsquare: "\u22A1",
|
|
300139
|
-
triangle: "\u25B5",
|
|
300140
|
-
tri: "\u25B5",
|
|
300141
|
-
trine: "\u25B5",
|
|
300142
|
-
utri: "\u25B5",
|
|
300143
|
-
triangledown: "\u25BF",
|
|
300144
|
-
dtri: "\u25BF",
|
|
300145
|
-
tridown: "\u25BF",
|
|
300146
|
-
triangleleft: "\u25C3",
|
|
300147
|
-
ltri: "\u25C3",
|
|
300148
|
-
triangleright: "\u25B9",
|
|
300149
|
-
rtri: "\u25B9",
|
|
300150
|
-
blacktriangle: "\u25B4",
|
|
300151
|
-
utrif: "\u25B4",
|
|
300152
|
-
blacktriangledown: "\u25BE",
|
|
300153
|
-
dtrif: "\u25BE",
|
|
300154
|
-
blacktriangleleft: "\u25C2",
|
|
300155
|
-
ltrif: "\u25C2",
|
|
300156
|
-
blacktriangleright: "\u25B8",
|
|
300157
|
-
rtrif: "\u25B8",
|
|
300158
|
-
loz: "\u25CA",
|
|
300159
|
-
lozenge: "\u25CA",
|
|
300160
|
-
blacklozenge: "\u29EB",
|
|
300161
|
-
lozf: "\u29EB",
|
|
300162
|
-
bigcirc: "\u25EF",
|
|
300163
|
-
xcirc: "\u25EF",
|
|
300164
|
-
circ: "\u02C6",
|
|
300165
|
-
Circle: "\u25CB",
|
|
300166
|
-
cir: "\u25CB",
|
|
300167
|
-
o: "\u25CB",
|
|
300168
|
-
bullet: "\u2022",
|
|
300169
|
-
bull: "\u2022",
|
|
300170
|
-
hellip: "\u2026",
|
|
300171
|
-
mldr: "\u2026",
|
|
300172
|
-
nldr: "\u2025",
|
|
300173
|
-
boxh: "\u2500",
|
|
300174
|
-
HorizontalLine: "\u2500",
|
|
300175
|
-
boxv: "\u2502",
|
|
300176
|
-
boxdr: "\u250C",
|
|
300177
|
-
boxdl: "\u2510",
|
|
300178
|
-
boxur: "\u2514",
|
|
300179
|
-
boxul: "\u2518",
|
|
300180
|
-
boxvr: "\u251C",
|
|
300181
|
-
boxvl: "\u2524",
|
|
300182
|
-
boxhd: "\u252C",
|
|
300183
|
-
boxhu: "\u2534",
|
|
300184
|
-
boxvh: "\u253C",
|
|
300185
|
-
boxH: "\u2550",
|
|
300186
|
-
boxV: "\u2551",
|
|
300187
|
-
boxdR: "\u2552",
|
|
300188
|
-
boxDr: "\u2553",
|
|
300189
|
-
boxDR: "\u2554",
|
|
300190
|
-
boxDl: "\u2555",
|
|
300191
|
-
boxdL: "\u2556",
|
|
300192
|
-
boxDL: "\u2557",
|
|
300193
|
-
boxuR: "\u2558",
|
|
300194
|
-
boxUr: "\u2559",
|
|
300195
|
-
boxUR: "\u255A",
|
|
300196
|
-
boxUl: "\u255C",
|
|
300197
|
-
boxuL: "\u255B",
|
|
300198
|
-
boxUL: "\u255D",
|
|
300199
|
-
boxvR: "\u255E",
|
|
300200
|
-
boxVr: "\u255F",
|
|
300201
|
-
boxVR: "\u2560",
|
|
300202
|
-
boxVl: "\u2562",
|
|
300203
|
-
boxvL: "\u2561",
|
|
300204
|
-
boxVL: "\u2563",
|
|
300205
|
-
boxHd: "\u2564",
|
|
300206
|
-
boxhD: "\u2565",
|
|
300207
|
-
boxHD: "\u2566",
|
|
300208
|
-
boxHu: "\u2567",
|
|
300209
|
-
boxhU: "\u2568",
|
|
300210
|
-
boxHU: "\u2569",
|
|
300211
|
-
boxvH: "\u256A",
|
|
300212
|
-
boxVh: "\u256B",
|
|
300213
|
-
boxVH: "\u256C"
|
|
300214
|
-
};
|
|
300215
|
-
var PUNCTUATION = {
|
|
300216
|
-
excl: "!",
|
|
300217
|
-
iexcl: "\xA1",
|
|
300218
|
-
brvbar: "\xA6",
|
|
300219
|
-
sect: "\xA7",
|
|
300220
|
-
uml: "\xA8",
|
|
300221
|
-
copy: "\xA9",
|
|
300222
|
-
ordf: "\xAA",
|
|
300223
|
-
laquo: "\xAB",
|
|
300224
|
-
not: "\xAC",
|
|
300225
|
-
shy: "\xAD",
|
|
300226
|
-
reg: "\xAE",
|
|
300227
|
-
macr: "\xAF",
|
|
300228
|
-
deg: "\xB0",
|
|
300229
|
-
plusmn: "\xB1",
|
|
300230
|
-
sup2: "\xB2",
|
|
300231
|
-
sup3: "\xB3",
|
|
300232
|
-
acute: "\xB4",
|
|
300233
|
-
micro: "\xB5",
|
|
300234
|
-
para: "\xB6",
|
|
300235
|
-
middot: "\xB7",
|
|
300236
|
-
cedil: "\xB8",
|
|
300237
|
-
sup1: "\xB9",
|
|
300238
|
-
ordm: "\xBA",
|
|
300239
|
-
raquo: "\xBB",
|
|
300240
|
-
frac14: "\xBC",
|
|
300241
|
-
frac12: "\xBD",
|
|
300242
|
-
frac34: "\xBE",
|
|
300243
|
-
iquest: "\xBF",
|
|
300244
|
-
nbsp: "\xA0",
|
|
300245
|
-
comma: ",",
|
|
300246
|
-
period: ".",
|
|
300247
|
-
colon: ":",
|
|
300248
|
-
semi: ";",
|
|
300249
|
-
vert: "|",
|
|
300250
|
-
Verbar: "\u2016",
|
|
300251
|
-
verbar: "|",
|
|
300252
|
-
dblac: "\u02DD",
|
|
300253
|
-
circ: "\u02C6",
|
|
300254
|
-
caron: "\u02C7",
|
|
300255
|
-
breve: "\u02D8",
|
|
300256
|
-
dot: "\u02D9",
|
|
300257
|
-
ring: "\u02DA",
|
|
300258
|
-
ogon: "\u02DB",
|
|
300259
|
-
tilde: "\u02DC",
|
|
300260
|
-
DiacriticalGrave: "`",
|
|
300261
|
-
DiacriticalAcute: "\xB4",
|
|
300262
|
-
DiacriticalTilde: "\u02DC",
|
|
300263
|
-
DiacriticalDot: "\u02D9",
|
|
300264
|
-
DiacriticalDoubleAcute: "\u02DD",
|
|
300265
|
-
grave: "`"
|
|
300266
|
-
};
|
|
300267
299416
|
var CURRENCY = {
|
|
300268
299417
|
cent: "\xA2",
|
|
300269
299418
|
pound: "\xA3",
|
|
@@ -300281,106 +299430,6 @@ var CURRENCY = {
|
|
|
300281
299430
|
yuan: "\xA5",
|
|
300282
299431
|
cedil: "\xB8"
|
|
300283
299432
|
};
|
|
300284
|
-
var FRACTIONS = {
|
|
300285
|
-
frac12: "\xBD",
|
|
300286
|
-
half: "\xBD",
|
|
300287
|
-
frac13: "\u2153",
|
|
300288
|
-
frac14: "\xBC",
|
|
300289
|
-
frac15: "\u2155",
|
|
300290
|
-
frac16: "\u2159",
|
|
300291
|
-
frac18: "\u215B",
|
|
300292
|
-
frac23: "\u2154",
|
|
300293
|
-
frac25: "\u2156",
|
|
300294
|
-
frac34: "\xBE",
|
|
300295
|
-
frac35: "\u2157",
|
|
300296
|
-
frac38: "\u215C",
|
|
300297
|
-
frac45: "\u2158",
|
|
300298
|
-
frac56: "\u215A",
|
|
300299
|
-
frac58: "\u215D",
|
|
300300
|
-
frac78: "\u215E",
|
|
300301
|
-
frasl: "\u2044"
|
|
300302
|
-
};
|
|
300303
|
-
var MISC_SYMBOLS = {
|
|
300304
|
-
trade: "\u2122",
|
|
300305
|
-
TRADE: "\u2122",
|
|
300306
|
-
telrec: "\u2315",
|
|
300307
|
-
target: "\u2316",
|
|
300308
|
-
ulcorn: "\u231C",
|
|
300309
|
-
ulcorner: "\u231C",
|
|
300310
|
-
urcorn: "\u231D",
|
|
300311
|
-
urcorner: "\u231D",
|
|
300312
|
-
dlcorn: "\u231E",
|
|
300313
|
-
llcorner: "\u231E",
|
|
300314
|
-
drcorn: "\u231F",
|
|
300315
|
-
lrcorner: "\u231F",
|
|
300316
|
-
intercal: "\u22BA",
|
|
300317
|
-
intcal: "\u22BA",
|
|
300318
|
-
oplus: "\u2295",
|
|
300319
|
-
CirclePlus: "\u2295",
|
|
300320
|
-
ominus: "\u2296",
|
|
300321
|
-
CircleMinus: "\u2296",
|
|
300322
|
-
otimes: "\u2297",
|
|
300323
|
-
CircleTimes: "\u2297",
|
|
300324
|
-
osol: "\u2298",
|
|
300325
|
-
odot: "\u2299",
|
|
300326
|
-
CircleDot: "\u2299",
|
|
300327
|
-
oast: "\u229B",
|
|
300328
|
-
circledast: "\u229B",
|
|
300329
|
-
odash: "\u229D",
|
|
300330
|
-
circleddash: "\u229D",
|
|
300331
|
-
ocirc: "\u229A",
|
|
300332
|
-
circledcirc: "\u229A",
|
|
300333
|
-
boxplus: "\u229E",
|
|
300334
|
-
plusb: "\u229E",
|
|
300335
|
-
boxminus: "\u229F",
|
|
300336
|
-
minusb: "\u229F",
|
|
300337
|
-
boxtimes: "\u22A0",
|
|
300338
|
-
timesb: "\u22A0",
|
|
300339
|
-
boxdot: "\u22A1",
|
|
300340
|
-
sdotb: "\u22A1",
|
|
300341
|
-
veebar: "\u22BB",
|
|
300342
|
-
vee: "\u2228",
|
|
300343
|
-
barvee: "\u22BD",
|
|
300344
|
-
and: "\u2227",
|
|
300345
|
-
wedge: "\u2227",
|
|
300346
|
-
Cap: "\u22D2",
|
|
300347
|
-
Cup: "\u22D3",
|
|
300348
|
-
Fork: "\u22D4",
|
|
300349
|
-
pitchfork: "\u22D4",
|
|
300350
|
-
epar: "\u22D5",
|
|
300351
|
-
ltlarr: "\u2976",
|
|
300352
|
-
nvap: "\u224D\u20D2",
|
|
300353
|
-
nvsim: "\u223C\u20D2",
|
|
300354
|
-
nvge: "\u2265\u20D2",
|
|
300355
|
-
nvle: "\u2264\u20D2",
|
|
300356
|
-
nvlt: "<\u20D2",
|
|
300357
|
-
nvgt: ">\u20D2",
|
|
300358
|
-
nvltrie: "\u22B4\u20D2",
|
|
300359
|
-
nvrtrie: "\u22B5\u20D2",
|
|
300360
|
-
Vdash: "\u22A9",
|
|
300361
|
-
dashv: "\u22A3",
|
|
300362
|
-
vDash: "\u22A8",
|
|
300363
|
-
Vvdash: "\u22AA",
|
|
300364
|
-
nvdash: "\u22AC",
|
|
300365
|
-
nvDash: "\u22AD",
|
|
300366
|
-
nVdash: "\u22AE",
|
|
300367
|
-
nVDash: "\u22AF"
|
|
300368
|
-
};
|
|
300369
|
-
var ALL_ENTITIES = {
|
|
300370
|
-
...BASIC_LATIN,
|
|
300371
|
-
...LATIN_ACCENTS,
|
|
300372
|
-
...LATIN_EXTENDED,
|
|
300373
|
-
...GREEK,
|
|
300374
|
-
...CYRILLIC,
|
|
300375
|
-
...MATH,
|
|
300376
|
-
...MATH_ADVANCED,
|
|
300377
|
-
...ARROWS,
|
|
300378
|
-
...SHAPES,
|
|
300379
|
-
...PUNCTUATION,
|
|
300380
|
-
...CURRENCY,
|
|
300381
|
-
...FRACTIONS,
|
|
300382
|
-
...MISC_SYMBOLS
|
|
300383
|
-
};
|
|
300384
299433
|
var XML = {
|
|
300385
299434
|
amp: "&",
|
|
300386
299435
|
apos: "'",
|
|
@@ -301024,7 +300073,7 @@ var XmlNode = class {
|
|
|
301024
300073
|
}
|
|
301025
300074
|
};
|
|
301026
300075
|
|
|
301027
|
-
// node_modules/xml-naming/src/index.js
|
|
300076
|
+
// node_modules/fast-xml-parser/node_modules/xml-naming/src/index.js
|
|
301028
300077
|
var nameStartChar10 = ":A-Za-z_\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u0486\u0488-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD";
|
|
301029
300078
|
var nameChar10 = nameStartChar10 + "\\-\\.\\d\xB7\u0300-\u036F\u203F-\u2040";
|
|
301030
300079
|
var nameStartChar11 = ":A-Za-z_\xC0-\u02FF\u0370-\u037D\u037F-\u0486\u0488-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}";
|
|
@@ -301043,8 +300092,14 @@ var buildRegexes = (startChar, char, flags = "") => {
|
|
|
301043
300092
|
};
|
|
301044
300093
|
var regexes10 = buildRegexes(nameStartChar10, nameChar10);
|
|
301045
300094
|
var regexes11 = buildRegexes(nameStartChar11, nameChar11, "u");
|
|
301046
|
-
var
|
|
301047
|
-
var
|
|
300095
|
+
var nameStartCharAscii = ":A-Za-z_";
|
|
300096
|
+
var nameCharAscii = nameStartCharAscii + "\\-\\.\\d";
|
|
300097
|
+
var regexesAscii = buildRegexes(nameStartCharAscii, nameCharAscii);
|
|
300098
|
+
var getRegexes = (xmlVersion = "1.0", asciiOnly = false) => {
|
|
300099
|
+
if (asciiOnly) return regexesAscii;
|
|
300100
|
+
return xmlVersion === "1.1" ? regexes11 : regexes10;
|
|
300101
|
+
};
|
|
300102
|
+
var qName = (str, { xmlVersion = "1.0", asciiOnly = false } = {}) => getRegexes(xmlVersion, asciiOnly).qName.test(str);
|
|
301048
300103
|
|
|
301049
300104
|
// node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js
|
|
301050
300105
|
var DocTypeReader = class {
|
|
@@ -302206,17 +301261,16 @@ var Matcher = class {
|
|
|
302206
301261
|
this.path[this.path.length - 1].values = void 0;
|
|
302207
301262
|
}
|
|
302208
301263
|
const currentLevel = this.path.length;
|
|
302209
|
-
|
|
302210
|
-
|
|
301264
|
+
let level = this.siblingStacks[currentLevel];
|
|
301265
|
+
if (!level) {
|
|
301266
|
+
level = { counts: /* @__PURE__ */ new Map(), total: 0 };
|
|
301267
|
+
this.siblingStacks[currentLevel] = level;
|
|
302211
301268
|
}
|
|
302212
|
-
const siblings = this.siblingStacks[currentLevel];
|
|
302213
301269
|
const siblingKey = namespace ? `${namespace}:${tagName}` : tagName;
|
|
302214
|
-
const counter =
|
|
302215
|
-
|
|
302216
|
-
|
|
302217
|
-
|
|
302218
|
-
}
|
|
302219
|
-
siblings.set(siblingKey, counter + 1);
|
|
301270
|
+
const counter = level.counts.get(siblingKey) || 0;
|
|
301271
|
+
const position = level.total;
|
|
301272
|
+
level.counts.set(siblingKey, counter + 1);
|
|
301273
|
+
level.total++;
|
|
302220
301274
|
const node = {
|
|
302221
301275
|
tag: tagName,
|
|
302222
301276
|
position,
|
|
@@ -302525,7 +301579,7 @@ var Matcher = class {
|
|
|
302525
301579
|
snapshot() {
|
|
302526
301580
|
return {
|
|
302527
301581
|
path: this.path.map((node) => ({ ...node })),
|
|
302528
|
-
siblingStacks: this.siblingStacks.map((
|
|
301582
|
+
siblingStacks: this.siblingStacks.map((level) => level ? { counts: new Map(level.counts), total: level.total } : level),
|
|
302529
301583
|
keptAttrs: this._keptAttrs.map((entry) => ({ ...entry }))
|
|
302530
301584
|
};
|
|
302531
301585
|
}
|
|
@@ -302536,7 +301590,7 @@ var Matcher = class {
|
|
|
302536
301590
|
restore(snapshot) {
|
|
302537
301591
|
this._pathStringCache = null;
|
|
302538
301592
|
this.path = snapshot.path.map((node) => ({ ...node }));
|
|
302539
|
-
this.siblingStacks = snapshot.siblingStacks.map((
|
|
301593
|
+
this.siblingStacks = snapshot.siblingStacks.map((level) => level ? { counts: new Map(level.counts), total: level.total } : level);
|
|
302540
301594
|
this._keptAttrs = (snapshot.keptAttrs || []).map((entry) => ({ ...entry }));
|
|
302541
301595
|
}
|
|
302542
301596
|
/**
|
|
@@ -302874,27 +301928,6 @@ var SQL_PATTERNS = [
|
|
|
302874
301928
|
];
|
|
302875
301929
|
var sql_default = SQL_PATTERNS;
|
|
302876
301930
|
|
|
302877
|
-
// node_modules/is-unsafe/src/contexts/sql-strict.js
|
|
302878
|
-
var SQL_STRICT_EXTRA = [
|
|
302879
|
-
{
|
|
302880
|
-
id: "sql-line-comment",
|
|
302881
|
-
description: "SQL line comment: -- followed by whitespace or end of string",
|
|
302882
|
-
pattern: /--(?:\s|$)/
|
|
302883
|
-
},
|
|
302884
|
-
{
|
|
302885
|
-
id: "sql-stacked-query",
|
|
302886
|
-
description: "Stacked queries: semicolon immediately followed by a SQL keyword",
|
|
302887
|
-
pattern: /;\s{0,10}(?:SELECT|INSERT|UPDATE|DELETE|DROP|CREATE|ALTER|EXEC)\b/i
|
|
302888
|
-
},
|
|
302889
|
-
{
|
|
302890
|
-
id: "sql-hex-encoding",
|
|
302891
|
-
description: "Hex-encoded string injection: 0x41414141 style (MySQL)",
|
|
302892
|
-
pattern: /\b0x[0-9a-f]{4,}/i
|
|
302893
|
-
}
|
|
302894
|
-
];
|
|
302895
|
-
var SQL_STRICT_PATTERNS = [...sql_default, ...SQL_STRICT_EXTRA];
|
|
302896
|
-
var sql_strict_default = SQL_STRICT_PATTERNS;
|
|
302897
|
-
|
|
302898
301931
|
// node_modules/is-unsafe/src/contexts/shell.js
|
|
302899
301932
|
var SHELL_PATTERNS = [
|
|
302900
301933
|
{
|
|
@@ -303206,8 +302239,38 @@ var LOG_PATTERNS = [
|
|
|
303206
302239
|
];
|
|
303207
302240
|
var log_default = LOG_PATTERNS;
|
|
303208
302241
|
|
|
303209
|
-
// node_modules/is-unsafe/src/
|
|
303210
|
-
var
|
|
302242
|
+
// node_modules/is-unsafe/src/contexts/sql-strict.js
|
|
302243
|
+
var SQL_STRICT_EXTRA = [
|
|
302244
|
+
{
|
|
302245
|
+
id: "sql-line-comment",
|
|
302246
|
+
description: "SQL line comment: -- followed by whitespace or end of string",
|
|
302247
|
+
pattern: /--(?:\s|$)/
|
|
302248
|
+
},
|
|
302249
|
+
{
|
|
302250
|
+
id: "sql-stacked-query",
|
|
302251
|
+
description: "Stacked queries: semicolon immediately followed by a SQL keyword",
|
|
302252
|
+
pattern: /;\s{0,10}(?:SELECT|INSERT|UPDATE|DELETE|DROP|CREATE|ALTER|EXEC)\b/i
|
|
302253
|
+
},
|
|
302254
|
+
{
|
|
302255
|
+
id: "sql-hex-encoding",
|
|
302256
|
+
description: "Hex-encoded string injection: 0x41414141 style (MySQL)",
|
|
302257
|
+
pattern: /\b0x[0-9a-f]{4,}/i
|
|
302258
|
+
}
|
|
302259
|
+
];
|
|
302260
|
+
var SQL_STRICT_PATTERNS = [...sql_default, ...SQL_STRICT_EXTRA];
|
|
302261
|
+
var sql_strict_default = SQL_STRICT_PATTERNS;
|
|
302262
|
+
|
|
302263
|
+
// node_modules/is-unsafe/src/index.js
|
|
302264
|
+
html_default.label = "HTML";
|
|
302265
|
+
xml_default.label = "XML";
|
|
302266
|
+
svg_default.label = "SVG";
|
|
302267
|
+
sql_default.label = "SQL";
|
|
302268
|
+
sql_strict_default.label = "SQL-STRICT";
|
|
302269
|
+
shell_default.label = "SHELL";
|
|
302270
|
+
redos_default.label = "REDOS";
|
|
302271
|
+
nosql_default.label = "NOSQL";
|
|
302272
|
+
log_default.label = "LOG";
|
|
302273
|
+
var VALID_CONTEXTS = Object.freeze({
|
|
303211
302274
|
HTML: html_default,
|
|
303212
302275
|
XML: xml_default,
|
|
303213
302276
|
SVG: svg_default,
|
|
@@ -303217,13 +302280,7 @@ var CONTEXT_REGISTRY = {
|
|
|
303217
302280
|
REDOS: redos_default,
|
|
303218
302281
|
NOSQL: nosql_default,
|
|
303219
302282
|
LOG: log_default
|
|
303220
|
-
};
|
|
303221
|
-
var registry_default = CONTEXT_REGISTRY;
|
|
303222
|
-
var VALID_CONTEXTS = Object.freeze(
|
|
303223
|
-
Object.fromEntries(Object.keys(CONTEXT_REGISTRY).map((k) => [k, k]))
|
|
303224
|
-
);
|
|
303225
|
-
|
|
303226
|
-
// node_modules/is-unsafe/src/index.js
|
|
302283
|
+
});
|
|
303227
302284
|
function assertString(value) {
|
|
303228
302285
|
if (typeof value !== "string") {
|
|
303229
302286
|
throw new TypeError(
|
|
@@ -303233,36 +302290,35 @@ function assertString(value) {
|
|
|
303233
302290
|
}
|
|
303234
302291
|
function assertContext(context) {
|
|
303235
302292
|
if (context instanceof RegExp) return;
|
|
303236
|
-
if (typeof context === "string") {
|
|
303237
|
-
if (!registry_default[context]) {
|
|
303238
|
-
throw new TypeError(
|
|
303239
|
-
`is-unsafe: unknown context "${context}". Valid contexts: ${Object.keys(VALID_CONTEXTS).join(", ")}`
|
|
303240
|
-
);
|
|
303241
|
-
}
|
|
303242
|
-
return;
|
|
303243
|
-
}
|
|
303244
302293
|
if (Array.isArray(context)) {
|
|
303245
302294
|
if (context.length === 0) {
|
|
303246
|
-
throw new TypeError("is-unsafe: context
|
|
302295
|
+
throw new TypeError("is-unsafe: context must not be an empty array");
|
|
303247
302296
|
}
|
|
303248
|
-
|
|
303249
|
-
|
|
303250
|
-
|
|
303251
|
-
|
|
303252
|
-
|
|
302297
|
+
if (Array.isArray(context[0])) {
|
|
302298
|
+
for (const list of context) {
|
|
302299
|
+
if (!Array.isArray(list) || list.length === 0) {
|
|
302300
|
+
throw new TypeError(
|
|
302301
|
+
"is-unsafe: each context in the array must be a non-empty pattern array (PatternList)"
|
|
302302
|
+
);
|
|
302303
|
+
}
|
|
303253
302304
|
}
|
|
303254
302305
|
}
|
|
303255
302306
|
return;
|
|
303256
302307
|
}
|
|
303257
302308
|
throw new TypeError(
|
|
303258
|
-
`is-unsafe: second argument must be a
|
|
302309
|
+
`is-unsafe: second argument must be a PatternList (e.g. HTML), an array of PatternLists (e.g. [HTML, XML]), or a RegExp. Got: ${typeof context}`
|
|
303259
302310
|
);
|
|
303260
302311
|
}
|
|
303261
|
-
function
|
|
303262
|
-
|
|
303263
|
-
|
|
302312
|
+
function normalise(context) {
|
|
302313
|
+
if (context instanceof RegExp) return { lists: null, regex: context };
|
|
302314
|
+
if (Array.isArray(context[0])) return { lists: context, regex: null };
|
|
302315
|
+
return { lists: [context], regex: null };
|
|
302316
|
+
}
|
|
302317
|
+
function matchList(value, list) {
|
|
302318
|
+
const label = list.label ?? "CUSTOM";
|
|
302319
|
+
for (const rule of list) {
|
|
303264
302320
|
if (rule.pattern.test(value)) {
|
|
303265
|
-
return { context:
|
|
302321
|
+
return { context: label, id: rule.id, description: rule.description, pattern: rule.pattern };
|
|
303266
302322
|
}
|
|
303267
302323
|
}
|
|
303268
302324
|
return null;
|
|
@@ -303270,14 +302326,10 @@ function matchContext(value, contextName) {
|
|
|
303270
302326
|
function isUnsafe(value, context) {
|
|
303271
302327
|
assertString(value);
|
|
303272
302328
|
assertContext(context);
|
|
303273
|
-
|
|
303274
|
-
|
|
303275
|
-
|
|
303276
|
-
|
|
303277
|
-
return matchContext(value, context) !== null;
|
|
303278
|
-
}
|
|
303279
|
-
for (const c of context) {
|
|
303280
|
-
if (matchContext(value, c) !== null) return true;
|
|
302329
|
+
const { lists, regex } = normalise(context);
|
|
302330
|
+
if (regex) return regex.test(value);
|
|
302331
|
+
for (const list of lists) {
|
|
302332
|
+
if (matchList(value, list) !== null) return true;
|
|
303281
302333
|
}
|
|
303282
302334
|
return false;
|
|
303283
302335
|
}
|
|
@@ -303326,6 +302378,7 @@ var OrderedObjParser = class {
|
|
|
303326
302378
|
this.ignoreAttributesFn = getIgnoreAttributesFn(this.options.ignoreAttributes);
|
|
303327
302379
|
this.entityExpansionCount = 0;
|
|
303328
302380
|
this.currentExpandedLength = 0;
|
|
302381
|
+
this.doctypefound = false;
|
|
303329
302382
|
let namedEntities = { ...XML };
|
|
303330
302383
|
if (this.options.entityDecoder) {
|
|
303331
302384
|
this.entityDecoder = this.options.entityDecoder;
|
|
@@ -303343,7 +302396,7 @@ var OrderedObjParser = class {
|
|
|
303343
302396
|
// onExternalEntity: (name, value) => isUnsafe(value) ? 'block' : 'allow',
|
|
303344
302397
|
onInputEntity: (name, value) => (
|
|
303345
302398
|
//TODO: VALID_CONTEXTS.HTML should be set only if this.options.htmlEntities
|
|
303346
|
-
isUnsafe(value, [
|
|
302399
|
+
isUnsafe(value, [html_default, xml_default]) ? ENTITY_ACTION.BLOCK : ENTITY_ACTION.ALLOW
|
|
303347
302400
|
)
|
|
303348
302401
|
//postCheck: resolved => resolved
|
|
303349
302402
|
});
|
|
@@ -303477,6 +302530,7 @@ var parseXml = function(xmlData) {
|
|
|
303477
302530
|
this.entityDecoder.reset();
|
|
303478
302531
|
this.entityExpansionCount = 0;
|
|
303479
302532
|
this.currentExpandedLength = 0;
|
|
302533
|
+
this.doctypefound = false;
|
|
303480
302534
|
const options = this.options;
|
|
303481
302535
|
const docTypeReader = new DocTypeReader(options.processEntities);
|
|
303482
302536
|
const xmlLen = xmlData.length;
|
|
@@ -303539,6 +302593,8 @@ var parseXml = function(xmlData) {
|
|
|
303539
302593
|
}
|
|
303540
302594
|
i = endIndex;
|
|
303541
302595
|
} else if (c1 === 33 && xmlData.charCodeAt(i + 2) === 68) {
|
|
302596
|
+
if (this.doctypefound) throw new Error("Multiple DOCTYPE declarations found.");
|
|
302597
|
+
this.doctypefound = true;
|
|
303542
302598
|
const result = docTypeReader.readDocType(xmlData, i);
|
|
303543
302599
|
this.entityDecoder.addInputEntities(result.entities);
|
|
303544
302600
|
i = result.i;
|
|
@@ -312913,8 +311969,8 @@ function resolveInputs(env = process.env) {
|
|
|
312913
311969
|
breakingSummaryPath: getInput2("breaking-summary-path", env),
|
|
312914
311970
|
breakingLogPath: getInput2("breaking-log-path", env),
|
|
312915
311971
|
governanceMappingJson: parseGovernanceMappingJson(getInput2("governance-mapping-json", env)),
|
|
312916
|
-
postmanApiKey: getInput2("postman-api-key", env)
|
|
312917
|
-
postmanAccessToken: getInput2("postman-access-token", env),
|
|
311972
|
+
postmanApiKey: getInput2("postman-api-key", env) || env.POSTMAN_API_KEY || "",
|
|
311973
|
+
postmanAccessToken: getInput2("postman-access-token", env) || env.POSTMAN_ACCESS_TOKEN,
|
|
312918
311974
|
credentialPreflight: parseEnumInput(
|
|
312919
311975
|
"credential-preflight",
|
|
312920
311976
|
getInput2("credential-preflight", env),
|
|
@@ -313073,8 +312129,8 @@ function readActionInputs(actionCore) {
|
|
|
313073
312129
|
if (specUrl && specPath) {
|
|
313074
312130
|
throw new Error("Provide either spec-url or spec-path, not both.");
|
|
313075
312131
|
}
|
|
313076
|
-
const postmanApiKey = optionalInput(actionCore, "postman-api-key")
|
|
313077
|
-
const postmanAccessToken = optionalInput(actionCore, "postman-access-token");
|
|
312132
|
+
const postmanApiKey = optionalInput(actionCore, "postman-api-key") || process.env.POSTMAN_API_KEY || "";
|
|
312133
|
+
const postmanAccessToken = optionalInput(actionCore, "postman-access-token") || process.env.POSTMAN_ACCESS_TOKEN;
|
|
313078
312134
|
const githubToken = optionalInput(actionCore, "github-token") || process.env.GITHUB_TOKEN;
|
|
313079
312135
|
const ghFallbackToken = optionalInput(actionCore, "gh-fallback-token") || process.env.GH_FALLBACK_TOKEN;
|
|
313080
312136
|
if (postmanApiKey) actionCore.setSecret(postmanApiKey);
|