@kernelift/ai-chat 3.0.2 → 3.0.4
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/CHANGELOG.md +16 -0
- package/README.md +121 -38
- package/dist/ai-chat.css +1 -1
- package/dist/index.d.ts +10 -2
- package/dist/index.js +638 -634
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent as Vt, createElementBlock as fe, openBlock as ue, createElementVNode as Y, mergeModels as Tt, defineAsyncComponent as Xa, useModel as mt, withDirectives as ct, renderSlot as me, createVNode as It, toDisplayString as Ue, createTextVNode as jt, createBlock as Rt, resolveDynamicComponent as zr, unref as tt, normalizeClass as
|
|
1
|
+
import { defineComponent as Vt, createElementBlock as fe, openBlock as ue, createElementVNode as Y, mergeModels as Tt, defineAsyncComponent as Xa, useModel as mt, withDirectives as ct, renderSlot as me, createVNode as It, toDisplayString as Ue, createTextVNode as jt, createBlock as Rt, resolveDynamicComponent as zr, unref as tt, normalizeClass as Oe, vShow as gt, ref as Te, computed as we, createCommentVNode as Ae, withCtx as Ge, Fragment as Bt, renderList as Lt, normalizeStyle as At, Teleport as Za, withModifiers as _t, onMounted as qr, nextTick as Qr, toValue as at, readonly as _a, watch as vt, getCurrentScope as Dn, onScopeDispose as Vn, getCurrentInstance as Pn, toRef as On, customRef as Kn, shallowRef as Mn, useCssVars as Hr, onUnmounted as $a, Transition as $t, vModelText as xn, isRef as $r } from "vue";
|
|
2
2
|
const Fn = {
|
|
3
3
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4
4
|
viewBox: "0 0 24 24"
|
|
@@ -282,7 +282,7 @@ const Fn = {
|
|
|
282
282
|
]),
|
|
283
283
|
ct(Y("main", si, [
|
|
284
284
|
(ue(), Rt(zr(t.markdownRender || tt(e)), {
|
|
285
|
-
class:
|
|
285
|
+
class: Oe(["kernelift-thinking-process__markdown", t.markdownClass || ""]),
|
|
286
286
|
"model-value": t.data,
|
|
287
287
|
"on-copy": t.onCopy,
|
|
288
288
|
"copy-text": t.i18n?.chat?.button?.copyCode ?? "复制代码",
|
|
@@ -324,7 +324,8 @@ const Fn = {
|
|
|
324
324
|
afterRender: { type: Function },
|
|
325
325
|
markdownRender: {},
|
|
326
326
|
themeMode: {},
|
|
327
|
-
iconColor: {}
|
|
327
|
+
iconColor: {},
|
|
328
|
+
disabledMarkdownIncremental: { type: Boolean }
|
|
328
329
|
}, {
|
|
329
330
|
modelValue: {
|
|
330
331
|
required: !0
|
|
@@ -423,7 +424,7 @@ const Fn = {
|
|
|
423
424
|
b.value.thoughtProcess ? (ue(), fe("div", fi, [
|
|
424
425
|
It(li, {
|
|
425
426
|
collapse: b.value.thoughtCollapse,
|
|
426
|
-
"onUpdate:collapse": n[0] || (n[0] = (
|
|
427
|
+
"onUpdate:collapse": n[0] || (n[0] = (A) => b.value.thoughtCollapse = A),
|
|
427
428
|
loading: b.value.isThinking,
|
|
428
429
|
data: b.value.thoughtProcess,
|
|
429
430
|
"markdown-class": t.markdownClass,
|
|
@@ -434,10 +435,10 @@ const Fn = {
|
|
|
434
435
|
"markdown-render": t.markdownRender,
|
|
435
436
|
"after-render": t.afterRender,
|
|
436
437
|
"theme-mode": t.themeMode,
|
|
437
|
-
incremental: b.value.loading,
|
|
438
|
+
incremental: t.disabledMarkdownIncremental ? !1 : b.value.loading,
|
|
438
439
|
"icon-color": t.iconColor
|
|
439
440
|
}, {
|
|
440
|
-
header:
|
|
441
|
+
header: Ge(() => [
|
|
441
442
|
me(i.$slots, "thinking-header", {}, void 0, !0)
|
|
442
443
|
]),
|
|
443
444
|
_: 3
|
|
@@ -445,7 +446,7 @@ const Fn = {
|
|
|
445
446
|
])) : Ae("", !0),
|
|
446
447
|
(b.value.role === "assistant" || b.value.role === "system") && !b.value.isThinking ? (ue(), fe("div", {
|
|
447
448
|
key: 1,
|
|
448
|
-
class:
|
|
449
|
+
class: Oe(["kernelift-chat-bubble__assistant", {
|
|
449
450
|
"kernelift-chat-bubble__assistant--pressing": g.value && t.isMobile,
|
|
450
451
|
"kernelift-chat-bubble__assistant--mobile": t.isMobile
|
|
451
452
|
}]),
|
|
@@ -459,15 +460,16 @@ const Fn = {
|
|
|
459
460
|
(ue(), Rt(zr(t.markdownRender || tt(a)), {
|
|
460
461
|
"model-value": b.value.content,
|
|
461
462
|
"on-copy": t.onCopy,
|
|
462
|
-
class:
|
|
463
|
+
class: Oe(t.markdownClass || ""),
|
|
463
464
|
"copy-text": t.i18n?.chat?.button?.copyCode ?? "复制代码",
|
|
464
465
|
"collapse-text": t.i18n?.chat?.button?.collapse ?? "收起代码",
|
|
465
466
|
"expand-text": t.i18n?.chat?.button?.expand ?? "展开代码",
|
|
466
467
|
plugins: t.plugins,
|
|
467
468
|
options: t.options,
|
|
468
|
-
incremental: b.value.loading,
|
|
469
|
+
incremental: t.disabledMarkdownIncremental ? !1 : b.value.loading,
|
|
469
470
|
"after-render": t.afterRender,
|
|
470
|
-
"theme-mode": t.themeMode
|
|
471
|
+
"theme-mode": t.themeMode,
|
|
472
|
+
onRendered: n[1] || (n[1] = (A) => S("bubble-event", "rendered", b.value, A))
|
|
471
473
|
}, null, 40, ["model-value", "on-copy", "class", "copy-text", "collapse-text", "expand-text", "plugins", "options", "incremental", "after-render", "theme-mode"]))
|
|
472
474
|
], !0),
|
|
473
475
|
me(i.$slots, "content-footer", {}, void 0, !0)
|
|
@@ -477,21 +479,21 @@ const Fn = {
|
|
|
477
479
|
me(i.$slots, "footer", {}, () => [
|
|
478
480
|
!b.value.loading && !b.value.hideFooterTools ? (ue(), fe("footer", {
|
|
479
481
|
key: 0,
|
|
480
|
-
class:
|
|
482
|
+
class: Oe(["kernelift-chat-bubble__footer", { "kernelift-chat-bubble__footer--user": b.value.role === "user" }])
|
|
481
483
|
}, [
|
|
482
484
|
Y("section", {
|
|
483
|
-
class:
|
|
485
|
+
class: Oe(["kernelift-chat-bubble__actions", {
|
|
484
486
|
"kernelift-chat-bubble__actions--hover": !t.isLast && !b.value.isLiked && !t.isMobile && b.value.role !== "user"
|
|
485
487
|
}])
|
|
486
488
|
}, [
|
|
487
|
-
(ue(!0), fe(Bt, null, Lt(E.value, (
|
|
488
|
-
key:
|
|
489
|
+
(ue(!0), fe(Bt, null, Lt(E.value, (A) => (ue(), fe("div", {
|
|
490
|
+
key: A.key,
|
|
489
491
|
class: "kernelift-chat-bubble__action-item",
|
|
490
|
-
onClick: (V) => T(
|
|
492
|
+
onClick: (V) => T(A.key)
|
|
491
493
|
}, [
|
|
492
494
|
Y("i", {
|
|
493
|
-
class:
|
|
494
|
-
style: At(h(
|
|
495
|
+
class: Oe(R(A)),
|
|
496
|
+
style: At(h(A))
|
|
495
497
|
}, null, 6)
|
|
496
498
|
], 8, pi))), 128)),
|
|
497
499
|
me(i.$slots, "bubble-event", {}, void 0, !0)
|
|
@@ -505,32 +507,32 @@ const Fn = {
|
|
|
505
507
|
onClick: v
|
|
506
508
|
}, [
|
|
507
509
|
Y("div", {
|
|
508
|
-
class: "kernelift-chat-bubble__context-menu",
|
|
510
|
+
class: Oe(["kernelift-chat-bubble__context-menu", { "kernelift-chat-bubble__context-menu--dark": t.themeMode === "dark" }]),
|
|
509
511
|
style: At({
|
|
510
512
|
left: r.value.x + "px",
|
|
511
513
|
top: r.value.y + "px"
|
|
512
514
|
}),
|
|
513
|
-
onClick: n[
|
|
515
|
+
onClick: n[2] || (n[2] = _t(() => {
|
|
514
516
|
}, ["stop"]))
|
|
515
517
|
}, [
|
|
516
|
-
(ue(!0), fe(Bt, null, Lt(l.value, (
|
|
517
|
-
key:
|
|
518
|
+
(ue(!0), fe(Bt, null, Lt(l.value, (A) => (ue(), fe("div", {
|
|
519
|
+
key: A.key,
|
|
518
520
|
class: "kernelift-chat-bubble__context-item",
|
|
519
|
-
onClick: (V) => p(
|
|
521
|
+
onClick: (V) => p(A.key)
|
|
520
522
|
}, [
|
|
521
523
|
Y("i", {
|
|
522
|
-
class:
|
|
523
|
-
style: At(h(
|
|
524
|
+
class: Oe(R(A)),
|
|
525
|
+
style: At(h(A))
|
|
524
526
|
}, null, 6),
|
|
525
|
-
Y("span", null, Ue(
|
|
527
|
+
Y("span", null, Ue(A.label), 1)
|
|
526
528
|
], 8, gi))), 128))
|
|
527
|
-
],
|
|
529
|
+
], 6)
|
|
528
530
|
])) : Ae("", !0)
|
|
529
531
|
]))
|
|
530
532
|
])
|
|
531
533
|
]));
|
|
532
534
|
}
|
|
533
|
-
}), ea = /* @__PURE__ */ xt(yi, [["__scopeId", "data-v-53aa56cd"]]), jr = "data:image/png;base64,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";
|
|
535
|
+
}), ea = /* @__PURE__ */ xt(yi, [["__scopeId", "data-v-0a785a6a"]]), jr = "data:image/png;base64,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";
|
|
534
536
|
function vi(t, e) {
|
|
535
537
|
return Dn() ? (Vn(t, e), !0) : !1;
|
|
536
538
|
}
|
|
@@ -770,7 +772,7 @@ function Nt(t, e, a, d = {}) {
|
|
|
770
772
|
L && r && (a instanceof Storage ? ra(L, "storage", i, { passive: !0 }) : ra(L, aa, n)), y ? Ni(() => {
|
|
771
773
|
h = !0, D();
|
|
772
774
|
}) : D();
|
|
773
|
-
function
|
|
775
|
+
function A(K, F) {
|
|
774
776
|
if (L) {
|
|
775
777
|
const q = {
|
|
776
778
|
key: m.value,
|
|
@@ -785,10 +787,10 @@ function Nt(t, e, a, d = {}) {
|
|
|
785
787
|
try {
|
|
786
788
|
const F = a.getItem(m.value);
|
|
787
789
|
if (K == null)
|
|
788
|
-
|
|
790
|
+
A(F, null), a.removeItem(m.value);
|
|
789
791
|
else {
|
|
790
792
|
const q = v.write(K);
|
|
791
|
-
F !== q && (a.setItem(m.value, q),
|
|
793
|
+
F !== q && (a.setItem(m.value, q), A(F, q));
|
|
792
794
|
}
|
|
793
795
|
} catch (F) {
|
|
794
796
|
l(F);
|
|
@@ -859,8 +861,8 @@ const xi = { class: "kernelift-chat-sidebar__new-chat" }, Fi = ["disabled"], Gi
|
|
|
859
861
|
emits: /* @__PURE__ */ Tt(["change", "clear", "change-collapse", "change-theme", "click-logo", "scroll-bottom"], ["update:modelValue"]),
|
|
860
862
|
setup(t, { emit: e }) {
|
|
861
863
|
Hr((O) => ({
|
|
862
|
-
|
|
863
|
-
|
|
864
|
+
v31b40649: O.actionHeight,
|
|
865
|
+
v719c845e: n.value
|
|
864
866
|
}));
|
|
865
867
|
const a = t, d = mt(t, "modelValue"), b = e, S = Te(null), c = Te(null), r = Te(null);
|
|
866
868
|
let g = null;
|
|
@@ -971,16 +973,16 @@ const xi = { class: "kernelift-chat-sidebar__new-chat" }, Fi = ["disabled"], Gi
|
|
|
971
973
|
collapsed: v.value[K] ?? !1
|
|
972
974
|
}));
|
|
973
975
|
}), n = we(() => D.value > 0 ? `${D.value}px` : "6.5rem");
|
|
974
|
-
let
|
|
976
|
+
let A = null;
|
|
975
977
|
const V = Te(null), x = Te(null), D = Te(0);
|
|
976
978
|
return qr(() => {
|
|
977
|
-
|
|
979
|
+
A = new IntersectionObserver((O) => {
|
|
978
980
|
O[0]?.isIntersecting && b("scroll-bottom");
|
|
979
|
-
}), V.value &&
|
|
981
|
+
}), V.value && A?.observe(V.value), x.value && (D.value = x.value.offsetHeight), document.addEventListener("click", l, !0), document.addEventListener("contextmenu", l, !0);
|
|
980
982
|
}), $a(() => {
|
|
981
|
-
|
|
983
|
+
A && A?.disconnect(), document.removeEventListener("click", l, !0), document.removeEventListener("contextmenu", l, !0), g && (clearTimeout(g), g = null);
|
|
982
984
|
}), (O, K) => (ue(), fe("div", {
|
|
983
|
-
class:
|
|
985
|
+
class: Oe(["kernelift-chat-sidebar", {
|
|
984
986
|
"mobile-width": t.isMobile
|
|
985
987
|
}])
|
|
986
988
|
}, [
|
|
@@ -1050,7 +1052,7 @@ const xi = { class: "kernelift-chat-sidebar__new-chat" }, Fi = ["disabled"], Gi
|
|
|
1050
1052
|
onClick: (q) => h(F.category)
|
|
1051
1053
|
}, [
|
|
1052
1054
|
Y("i", {
|
|
1053
|
-
class:
|
|
1055
|
+
class: Oe(["kernelift-chat-sidebar__category-icon", {
|
|
1054
1056
|
"material-symbols--expand-more": !F.collapsed,
|
|
1055
1057
|
"material-symbols--chevron-right": F.collapsed
|
|
1056
1058
|
}])
|
|
@@ -1059,11 +1061,11 @@ const xi = { class: "kernelift-chat-sidebar__new-chat" }, Fi = ["disabled"], Gi
|
|
|
1059
1061
|
Y("span", Yi, "(" + Ue(F.records.length) + ")", 1)
|
|
1060
1062
|
], 8, Ji),
|
|
1061
1063
|
It($t, { name: "category-fade" }, {
|
|
1062
|
-
default:
|
|
1064
|
+
default: Ge(() => [
|
|
1063
1065
|
F.collapsed ? Ae("", !0) : (ue(), fe("div", Xi, [
|
|
1064
1066
|
(ue(!0), fe(Bt, null, Lt(F.records, (q) => (ue(), fe("div", {
|
|
1065
1067
|
key: q.id,
|
|
1066
|
-
class:
|
|
1068
|
+
class: Oe(["kernelift-chat-sidebar__record-item", {
|
|
1067
1069
|
"kernelift-chat-sidebar__record-item--active": d.value?.id === q.id
|
|
1068
1070
|
}]),
|
|
1069
1071
|
onClick: (H) => b("change", q),
|
|
@@ -1095,7 +1097,7 @@ const xi = { class: "kernelift-chat-sidebar__new-chat" }, Fi = ["disabled"], Gi
|
|
|
1095
1097
|
key: 0,
|
|
1096
1098
|
ref_key: "dropdownRef",
|
|
1097
1099
|
ref: c,
|
|
1098
|
-
class: "kernelift-chat-sidebar__context-menu",
|
|
1100
|
+
class: Oe(["kernelift-chat-sidebar__context-menu", { "kernelift-chat-sidebar__context-menu--dark": t.themeMode === "dark" }]),
|
|
1099
1101
|
style: At({
|
|
1100
1102
|
left: `${r.value.x}px`,
|
|
1101
1103
|
top: `${r.value.y}px`
|
|
@@ -1104,14 +1106,14 @@ const xi = { class: "kernelift-chat-sidebar__new-chat" }, Fi = ["disabled"], Gi
|
|
|
1104
1106
|
}, ["stop"]))
|
|
1105
1107
|
}, [
|
|
1106
1108
|
It($t, { name: "dropdown-fade" }, {
|
|
1107
|
-
default:
|
|
1109
|
+
default: Ge(() => [
|
|
1108
1110
|
s(p.value).length > 0 ? (ue(), fe("div", rs, [
|
|
1109
1111
|
(ue(!0), fe(Bt, null, Lt(s(p.value), (F) => (ue(), fe(Bt, {
|
|
1110
1112
|
key: F.key
|
|
1111
1113
|
}, [
|
|
1112
1114
|
F.divided ? (ue(), fe("div", as)) : Ae("", !0),
|
|
1113
1115
|
Y("div", {
|
|
1114
|
-
class:
|
|
1116
|
+
class: Oe(["kernelift-chat-sidebar__dropdown-item", {
|
|
1115
1117
|
"kernelift-chat-sidebar__dropdown-item--disabled": m(
|
|
1116
1118
|
F,
|
|
1117
1119
|
p.value
|
|
@@ -1124,7 +1126,7 @@ const xi = { class: "kernelift-chat-sidebar__new-chat" }, Fi = ["disabled"], Gi
|
|
|
1124
1126
|
class: "kernelift-chat-sidebar__dropdown-icon"
|
|
1125
1127
|
})) : F.icon ? (ue(), fe("i", {
|
|
1126
1128
|
key: 1,
|
|
1127
|
-
class:
|
|
1129
|
+
class: Oe([F.icon, "kernelift-chat-sidebar__dropdown-icon"])
|
|
1128
1130
|
}, null, 2)) : Ae("", !0),
|
|
1129
1131
|
Y("span", null, Ue(F.label), 1)
|
|
1130
1132
|
], 10, ns)
|
|
@@ -1133,11 +1135,11 @@ const xi = { class: "kernelift-chat-sidebar__new-chat" }, Fi = ["disabled"], Gi
|
|
|
1133
1135
|
]),
|
|
1134
1136
|
_: 1
|
|
1135
1137
|
})
|
|
1136
|
-
],
|
|
1138
|
+
], 6)) : Ae("", !0)
|
|
1137
1139
|
]))
|
|
1138
1140
|
], 2));
|
|
1139
1141
|
}
|
|
1140
|
-
}), os = /* @__PURE__ */ xt(ss, [["__scopeId", "data-v-
|
|
1142
|
+
}), os = /* @__PURE__ */ xt(ss, [["__scopeId", "data-v-b9544356"]]), ls = { class: "kernelift-chat-sender" }, us = { class: "kernelift-chat-sender__container" }, cs = { class: "kernelift-chat-sender__toolbar" }, fs = { class: "kernelift-chat-sender__tools" }, ds = {
|
|
1141
1143
|
class: "material-symbols--genetics thinking-button__icon",
|
|
1142
1144
|
style: { width: "1rem", height: "1rem" }
|
|
1143
1145
|
}, hs = {
|
|
@@ -1216,7 +1218,7 @@ const xi = { class: "kernelift-chat-sidebar__new-chat" }, Fi = ["disabled"], Gi
|
|
|
1216
1218
|
}, () => [
|
|
1217
1219
|
t.hasThinking ? (ue(), fe("button", {
|
|
1218
1220
|
key: 0,
|
|
1219
|
-
class:
|
|
1221
|
+
class: Oe(["kernelift-chat-sender__tool-btn", {
|
|
1220
1222
|
active: S.value
|
|
1221
1223
|
}]),
|
|
1222
1224
|
onClick: E
|
|
@@ -1233,7 +1235,7 @@ const xi = { class: "kernelift-chat-sidebar__new-chat" }, Fi = ["disabled"], Gi
|
|
|
1233
1235
|
}, () => [
|
|
1234
1236
|
t.hasNetSearch ? (ue(), fe("button", {
|
|
1235
1237
|
key: 0,
|
|
1236
|
-
class:
|
|
1238
|
+
class: Oe(["kernelift-chat-sender__tool-btn", {
|
|
1237
1239
|
active: c.value
|
|
1238
1240
|
}]),
|
|
1239
1241
|
onClick: l
|
|
@@ -1459,8 +1461,8 @@ function Se() {
|
|
|
1459
1461
|
let i = function(n) {
|
|
1460
1462
|
if (n.source === window && n.data === s) {
|
|
1461
1463
|
n.stopPropagation();
|
|
1462
|
-
var
|
|
1463
|
-
p.length = 0,
|
|
1464
|
+
var A = p.slice();
|
|
1465
|
+
p.length = 0, A.forEach(function(V) {
|
|
1464
1466
|
V();
|
|
1465
1467
|
});
|
|
1466
1468
|
}
|
|
@@ -1474,8 +1476,8 @@ function Se() {
|
|
|
1474
1476
|
var v = Date.now(), T = !0, R = document.createElement("div"), p = [];
|
|
1475
1477
|
new MutationObserver(function() {
|
|
1476
1478
|
var n = p.slice();
|
|
1477
|
-
p.length = 0, n.forEach(function(
|
|
1478
|
-
|
|
1479
|
+
p.length = 0, n.forEach(function(A) {
|
|
1480
|
+
A();
|
|
1479
1481
|
});
|
|
1480
1482
|
}).observe(R, { attributes: !0 });
|
|
1481
1483
|
var h = a.setImmediate;
|
|
@@ -1948,8 +1950,8 @@ function Se() {
|
|
|
1948
1950
|
}, a.binary.base64.decode = function(s, p, v) {
|
|
1949
1951
|
var T = p;
|
|
1950
1952
|
T || (T = new Uint8Array(Math.ceil(s.length / 4) * 3)), s = s.replace(/[^A-Za-z0-9\+\/\=]/g, ""), v = v || 0;
|
|
1951
|
-
for (var R, h, i, n,
|
|
1952
|
-
R = g[s.charCodeAt(
|
|
1953
|
+
for (var R, h, i, n, A = 0, V = v; A < s.length; )
|
|
1954
|
+
R = g[s.charCodeAt(A++) - 43], h = g[s.charCodeAt(A++) - 43], i = g[s.charCodeAt(A++) - 43], n = g[s.charCodeAt(A++) - 43], T[V++] = R << 2 | h >> 4, i !== 64 && (T[V++] = (h & 15) << 4 | i >> 2, n !== 64 && (T[V++] = (i & 3) << 6 | n));
|
|
1953
1955
|
return p ? V - v : T.subarray(0, V);
|
|
1954
1956
|
}, a.binary.base58.encode = function(s, p) {
|
|
1955
1957
|
return a.binary.baseN.encode(s, u, p);
|
|
@@ -2041,8 +2043,8 @@ function Se() {
|
|
|
2041
2043
|
T = s.apply(this, p), h = R === "flash";
|
|
2042
2044
|
}
|
|
2043
2045
|
(R === "web" || R === "both") && (p[0] = localStorage, T = s.apply(this, p), h = !0);
|
|
2044
|
-
} catch (
|
|
2045
|
-
i =
|
|
2046
|
+
} catch (A) {
|
|
2047
|
+
i = A;
|
|
2046
2048
|
}
|
|
2047
2049
|
if (h)
|
|
2048
2050
|
break;
|
|
@@ -2085,8 +2087,8 @@ function Se() {
|
|
|
2085
2087
|
}
|
|
2086
2088
|
return h.push(s.substring(i)), h.join("");
|
|
2087
2089
|
}, a.formatNumber = function(s, p, v, T) {
|
|
2088
|
-
var R = s, h = isNaN(p = Math.abs(p)) ? 2 : p, i = v === void 0 ? "," : v, n = T === void 0 ? "." : T,
|
|
2089
|
-
return
|
|
2090
|
+
var R = s, h = isNaN(p = Math.abs(p)) ? 2 : p, i = v === void 0 ? "," : v, n = T === void 0 ? "." : T, A = R < 0 ? "-" : "", V = parseInt(R = Math.abs(+R || 0).toFixed(h), 10) + "", x = V.length > 3 ? V.length % 3 : 0;
|
|
2091
|
+
return A + (x ? V.substr(0, x) + n : "") + V.substr(x).replace(/(\d{3})(?=\d)/g, "$1" + n) + (h ? i + Math.abs(R - V).toFixed(h).slice(2) : "");
|
|
2090
2092
|
}, a.formatSize = function(s) {
|
|
2091
2093
|
return s >= 1073741824 ? s = a.formatNumber(s / 1073741824, 2, ".", "") + " GiB" : s >= 1048576 ? s = a.formatNumber(s / 1048576, 2, ".", "") + " MiB" : s >= 1024 ? s = a.formatNumber(s / 1024, 0) + " KiB" : s = a.formatNumber(s, 0) + " bytes", s;
|
|
2092
2094
|
}, a.bytesFromIP = function(s) {
|
|
@@ -2136,8 +2138,8 @@ function Se() {
|
|
|
2136
2138
|
p.push(h);
|
|
2137
2139
|
}
|
|
2138
2140
|
if (v.length > 0) {
|
|
2139
|
-
var
|
|
2140
|
-
|
|
2141
|
+
var A = v[T];
|
|
2142
|
+
A.end - A.start > 0 && (p.splice(A.start, A.end - A.start + 1, ""), A.start === 0 && p.unshift(""), A.end === 7 && p.push(""));
|
|
2141
2143
|
}
|
|
2142
2144
|
return p.join(":");
|
|
2143
2145
|
}, a.estimateCores = function(s, p) {
|
|
@@ -2153,46 +2155,46 @@ function Se() {
|
|
|
2153
2155
|
"(",
|
|
2154
2156
|
(function() {
|
|
2155
2157
|
self.addEventListener("message", function(i) {
|
|
2156
|
-
var n = Date.now(),
|
|
2157
|
-
self.postMessage({ st: n, et:
|
|
2158
|
+
var n = Date.now(), A = n + 4;
|
|
2159
|
+
self.postMessage({ st: n, et: A });
|
|
2158
2160
|
});
|
|
2159
2161
|
}).toString(),
|
|
2160
2162
|
")()"
|
|
2161
2163
|
], { type: "application/javascript" }));
|
|
2162
2164
|
T([], 5, 16);
|
|
2163
|
-
function T(i, n,
|
|
2165
|
+
function T(i, n, A) {
|
|
2164
2166
|
if (n === 0) {
|
|
2165
2167
|
var V = Math.floor(i.reduce(function(x, D) {
|
|
2166
2168
|
return x + D;
|
|
2167
2169
|
}, 0) / i.length);
|
|
2168
2170
|
return a.cores = Math.max(1, V), URL.revokeObjectURL(v), p(null, a.cores);
|
|
2169
2171
|
}
|
|
2170
|
-
R(
|
|
2171
|
-
i.push(h(
|
|
2172
|
+
R(A, function(x, D) {
|
|
2173
|
+
i.push(h(A, D)), T(i, n - 1, A);
|
|
2172
2174
|
});
|
|
2173
2175
|
}
|
|
2174
2176
|
function R(i, n) {
|
|
2175
|
-
for (var
|
|
2177
|
+
for (var A = [], V = [], x = 0; x < i; ++x) {
|
|
2176
2178
|
var D = new Worker(v);
|
|
2177
2179
|
D.addEventListener("message", function(O) {
|
|
2178
2180
|
if (V.push(O.data), V.length === i) {
|
|
2179
2181
|
for (var K = 0; K < i; ++K)
|
|
2180
|
-
|
|
2182
|
+
A[K].terminate();
|
|
2181
2183
|
n(null, V);
|
|
2182
2184
|
}
|
|
2183
|
-
}),
|
|
2185
|
+
}), A.push(D);
|
|
2184
2186
|
}
|
|
2185
2187
|
for (var x = 0; x < i; ++x)
|
|
2186
|
-
|
|
2188
|
+
A[x].postMessage(x);
|
|
2187
2189
|
}
|
|
2188
2190
|
function h(i, n) {
|
|
2189
|
-
for (var
|
|
2190
|
-
for (var x = n[V], D =
|
|
2191
|
+
for (var A = [], V = 0; V < i; ++V)
|
|
2192
|
+
for (var x = n[V], D = A[V] = [], O = 0; O < i; ++O)
|
|
2191
2193
|
if (V !== O) {
|
|
2192
2194
|
var K = n[O];
|
|
2193
2195
|
(x.st > K.st && x.st < K.et || K.st > x.st && K.st < x.et) && D.push(O);
|
|
2194
2196
|
}
|
|
2195
|
-
return
|
|
2197
|
+
return A.reduce(function(F, q) {
|
|
2196
2198
|
return Math.max(F, q.length);
|
|
2197
2199
|
}, 0);
|
|
2198
2200
|
}
|
|
@@ -2700,14 +2702,14 @@ function Pt() {
|
|
|
2700
2702
|
for (var C = l.slice(0), m, s = 1, p = C.length, v = p + 6 + 1, T = d * v, R = p; R < T; ++R)
|
|
2701
2703
|
m = C[R - 1], R % p === 0 ? (m = b[m >>> 16 & 255] << 24 ^ b[m >>> 8 & 255] << 16 ^ b[m & 255] << 8 ^ b[m >>> 24] ^ c[s] << 24, s++) : p > 6 && R % p === 4 && (m = b[m >>> 24] << 24 ^ b[m >>> 16 & 255] << 16 ^ b[m >>> 8 & 255] << 8 ^ b[m & 255]), C[R] = C[R - p] ^ m;
|
|
2702
2704
|
if (y) {
|
|
2703
|
-
var h, i = g[0], n = g[1],
|
|
2705
|
+
var h, i = g[0], n = g[1], A = g[2], V = g[3], x = C.slice(0);
|
|
2704
2706
|
T = C.length;
|
|
2705
2707
|
for (var R = 0, D = T - d; R < T; R += d, D -= d)
|
|
2706
2708
|
if (R === 0 || R === T - d)
|
|
2707
2709
|
x[R] = C[D], x[R + 1] = C[D + 3], x[R + 2] = C[D + 2], x[R + 3] = C[D + 1];
|
|
2708
2710
|
else
|
|
2709
2711
|
for (var O = 0; O < d; ++O)
|
|
2710
|
-
h = C[D + O], x[R + (3 & -O)] = i[b[h >>> 24]] ^ n[b[h >>> 16 & 255]] ^
|
|
2712
|
+
h = C[D + O], x[R + (3 & -O)] = i[b[h >>> 24]] ^ n[b[h >>> 16 & 255]] ^ A[b[h >>> 8 & 255]] ^ V[b[h & 255]];
|
|
2711
2713
|
C = x;
|
|
2712
2714
|
}
|
|
2713
2715
|
return C;
|
|
@@ -2715,11 +2717,11 @@ function Pt() {
|
|
|
2715
2717
|
function L(l, y, C, m) {
|
|
2716
2718
|
var s = l.length / 4 - 1, p, v, T, R, h;
|
|
2717
2719
|
m ? (p = g[0], v = g[1], T = g[2], R = g[3], h = S) : (p = r[0], v = r[1], T = r[2], R = r[3], h = b);
|
|
2718
|
-
var i, n,
|
|
2719
|
-
i = y[0] ^ l[0], n = y[m ? 3 : 1] ^ l[1],
|
|
2720
|
+
var i, n, A, V, x, D, O;
|
|
2721
|
+
i = y[0] ^ l[0], n = y[m ? 3 : 1] ^ l[1], A = y[2] ^ l[2], V = y[m ? 1 : 3] ^ l[3];
|
|
2720
2722
|
for (var K = 3, F = 1; F < s; ++F)
|
|
2721
|
-
x = p[i >>> 24] ^ v[n >>> 16 & 255] ^ T[
|
|
2722
|
-
C[0] = h[i >>> 24] << 24 ^ h[n >>> 16 & 255] << 16 ^ h[
|
|
2723
|
+
x = p[i >>> 24] ^ v[n >>> 16 & 255] ^ T[A >>> 8 & 255] ^ R[V & 255] ^ l[++K], D = p[n >>> 24] ^ v[A >>> 16 & 255] ^ T[V >>> 8 & 255] ^ R[i & 255] ^ l[++K], O = p[A >>> 24] ^ v[V >>> 16 & 255] ^ T[i >>> 8 & 255] ^ R[n & 255] ^ l[++K], V = p[V >>> 24] ^ v[i >>> 16 & 255] ^ T[n >>> 8 & 255] ^ R[A & 255] ^ l[++K], i = x, n = D, A = O;
|
|
2724
|
+
C[0] = h[i >>> 24] << 24 ^ h[n >>> 16 & 255] << 16 ^ h[A >>> 8 & 255] << 8 ^ h[V & 255] ^ l[++K], C[m ? 3 : 1] = h[n >>> 24] << 24 ^ h[A >>> 16 & 255] << 16 ^ h[V >>> 8 & 255] << 8 ^ h[i & 255] ^ l[++K], C[2] = h[A >>> 24] << 24 ^ h[V >>> 16 & 255] << 16 ^ h[i >>> 8 & 255] << 8 ^ h[n & 255] ^ l[++K], C[m ? 1 : 3] = h[V >>> 24] << 24 ^ h[i >>> 16 & 255] << 16 ^ h[n >>> 8 & 255] << 8 ^ h[A & 255] ^ l[++K];
|
|
2723
2725
|
}
|
|
2724
2726
|
function E(l) {
|
|
2725
2727
|
l = l || {};
|
|
@@ -2912,8 +2914,8 @@ function Ct() {
|
|
|
2912
2914
|
decodeBitStrings: !0
|
|
2913
2915
|
}, i = b(c, r, g + 1, h), n = I - c.length();
|
|
2914
2916
|
r -= n, l == e.Type.BITSTRING && n++;
|
|
2915
|
-
var
|
|
2916
|
-
n === y && (
|
|
2917
|
+
var A = i.tagClass;
|
|
2918
|
+
n === y && (A === e.Class.UNIVERSAL || A === e.Class.CONTEXT_SPECIFIC) && (m = [i]);
|
|
2917
2919
|
} catch {
|
|
2918
2920
|
}
|
|
2919
2921
|
m === void 0 && (c.read = v, r = T);
|
|
@@ -3614,12 +3616,12 @@ function er() {
|
|
|
3614
3616
|
}
|
|
3615
3617
|
var a = [16843776, 0, 65536, 16843780, 16842756, 66564, 4, 65536, 1024, 16843776, 16843780, 1024, 16778244, 16842756, 16777216, 4, 1028, 16778240, 16778240, 66560, 66560, 16842752, 16842752, 16778244, 65540, 16777220, 16777220, 65540, 0, 1028, 66564, 16777216, 65536, 16843780, 4, 16842752, 16843776, 16777216, 16777216, 1024, 16842756, 65536, 66560, 16777220, 1024, 4, 16778244, 66564, 16843780, 65540, 16842752, 16778244, 16777220, 1028, 66564, 16843776, 1028, 16778240, 16778240, 0, 65540, 66560, 0, 16842756], d = [-2146402272, -2147450880, 32768, 1081376, 1048576, 32, -2146435040, -2147450848, -2147483616, -2146402272, -2146402304, -2147483648, -2147450880, 1048576, 32, -2146435040, 1081344, 1048608, -2147450848, 0, -2147483648, 32768, 1081376, -2146435072, 1048608, -2147483616, 0, 1081344, 32800, -2146402304, -2146435072, 32800, 0, 1081376, -2146435040, 1048576, -2147450848, -2146435072, -2146402304, 32768, -2146435072, -2147450880, 32, -2146402272, 1081376, 32, 32768, -2147483648, 32800, -2146402304, 1048576, -2147483616, 1048608, -2147450848, -2147483616, 1048608, 1081344, 0, -2147450880, 32800, -2147483648, -2146435040, -2146402272, 1081344], b = [520, 134349312, 0, 134348808, 134218240, 0, 131592, 134218240, 131080, 134217736, 134217736, 131072, 134349320, 131080, 134348800, 520, 134217728, 8, 134349312, 512, 131584, 134348800, 134348808, 131592, 134218248, 131584, 131072, 134218248, 8, 134349320, 512, 134217728, 134349312, 134217728, 131080, 520, 131072, 134349312, 134218240, 0, 512, 131080, 134349320, 134218240, 134217736, 512, 0, 134348808, 134218248, 131072, 134217728, 134349320, 8, 131592, 131584, 134217736, 134348800, 134218248, 520, 134348800, 131592, 8, 134348808, 131584], S = [8396801, 8321, 8321, 128, 8396928, 8388737, 8388609, 8193, 0, 8396800, 8396800, 8396929, 129, 0, 8388736, 8388609, 1, 8192, 8388608, 8396801, 128, 8388608, 8193, 8320, 8388737, 1, 8320, 8388736, 8192, 8396928, 8396929, 129, 8388736, 8388609, 8396800, 8396929, 129, 0, 0, 8396800, 8320, 8388736, 8388737, 1, 8396801, 8321, 8321, 128, 8396929, 129, 1, 8192, 8388609, 8193, 8396928, 8388737, 8193, 8320, 8388608, 8396801, 128, 8388608, 8192, 8396928], c = [256, 34078976, 34078720, 1107296512, 524288, 256, 1073741824, 34078720, 1074266368, 524288, 33554688, 1074266368, 1107296512, 1107820544, 524544, 1073741824, 33554432, 1074266112, 1074266112, 0, 1073742080, 1107820800, 1107820800, 33554688, 1107820544, 1073742080, 0, 1107296256, 34078976, 33554432, 1107296256, 524544, 524288, 1107296512, 256, 33554432, 1073741824, 34078720, 1107296512, 1074266368, 33554688, 1073741824, 1107820544, 34078976, 1074266368, 256, 33554432, 1107820544, 1107820800, 524544, 1107296256, 1107820800, 34078720, 0, 1074266112, 1107296256, 524544, 33554688, 1073742080, 524288, 0, 1074266112, 34078976, 1073742080], r = [536870928, 541065216, 16384, 541081616, 541065216, 16, 541081616, 4194304, 536887296, 4210704, 4194304, 536870928, 4194320, 536887296, 536870912, 16400, 0, 4194320, 536887312, 16384, 4210688, 536887312, 16, 541065232, 541065232, 0, 4210704, 541081600, 16400, 4210688, 541081600, 536870912, 536887296, 16, 541065232, 4210688, 541081616, 4194304, 16400, 536870928, 4194304, 536887296, 536870912, 16400, 536870928, 541081616, 4210688, 541065216, 4210704, 541081600, 0, 541065232, 16, 16384, 541065216, 4210704, 16384, 4194320, 536887312, 0, 541081600, 536870912, 4194320, 536887312], g = [2097152, 69206018, 67110914, 0, 2048, 67110914, 2099202, 69208064, 69208066, 2097152, 0, 67108866, 2, 67108864, 69206018, 2050, 67110912, 2099202, 2097154, 67110912, 67108866, 69206016, 69208064, 2097154, 69206016, 2048, 2050, 69208066, 2099200, 2, 67108864, 2099200, 67108864, 2099200, 2097152, 67110914, 67110914, 69206018, 69206018, 2, 2097154, 67108864, 67110912, 2097152, 69208064, 2050, 2099202, 69208064, 2050, 67108866, 69208066, 69206016, 2099200, 0, 2, 69208066, 0, 2099202, 69206016, 2048, 67108866, 67110912, 2048, 2097154], u = [268439616, 4096, 262144, 268701760, 268435456, 268439616, 64, 268435456, 262208, 268697600, 268701760, 266240, 268701696, 266304, 4096, 64, 268697600, 268435520, 268439552, 4160, 266240, 262208, 268697664, 268701696, 4160, 0, 0, 268697664, 268435520, 268439552, 266304, 262144, 266304, 262144, 268701696, 4096, 64, 268697664, 4096, 266304, 268439552, 64, 268435520, 268697600, 268697664, 268435456, 262144, 268439616, 0, 268701760, 262208, 268435520, 268697600, 268439552, 268439616, 0, 268701760, 266240, 266240, 4160, 4160, 262208, 268435456, 268701696];
|
|
3616
3618
|
function I(l) {
|
|
3617
|
-
for (var y = [0, 4, 536870912, 536870916, 65536, 65540, 536936448, 536936452, 512, 516, 536871424, 536871428, 66048, 66052, 536936960, 536936964], C = [0, 1, 1048576, 1048577, 67108864, 67108865, 68157440, 68157441, 256, 257, 1048832, 1048833, 67109120, 67109121, 68157696, 68157697], m = [0, 8, 2048, 2056, 16777216, 16777224, 16779264, 16779272, 0, 8, 2048, 2056, 16777216, 16777224, 16779264, 16779272], s = [0, 2097152, 134217728, 136314880, 8192, 2105344, 134225920, 136323072, 131072, 2228224, 134348800, 136445952, 139264, 2236416, 134356992, 136454144], p = [0, 262144, 16, 262160, 0, 262144, 16, 262160, 4096, 266240, 4112, 266256, 4096, 266240, 4112, 266256], v = [0, 1024, 32, 1056, 0, 1024, 32, 1056, 33554432, 33555456, 33554464, 33555488, 33554432, 33555456, 33554464, 33555488], T = [0, 268435456, 524288, 268959744, 2, 268435458, 524290, 268959746, 0, 268435456, 524288, 268959744, 2, 268435458, 524290, 268959746], R = [0, 65536, 2048, 67584, 536870912, 536936448, 536872960, 536938496, 131072, 196608, 133120, 198656, 537001984, 537067520, 537004032, 537069568], h = [0, 262144, 0, 262144, 2, 262146, 2, 262146, 33554432, 33816576, 33554432, 33816576, 33554434, 33816578, 33554434, 33816578], i = [0, 268435456, 8, 268435464, 0, 268435456, 8, 268435464, 1024, 268436480, 1032, 268436488, 1024, 268436480, 1032, 268436488], n = [0, 32, 0, 32, 1048576, 1048608, 1048576, 1048608, 8192, 8224, 8192, 8224, 1056768, 1056800, 1056768, 1056800],
|
|
3619
|
+
for (var y = [0, 4, 536870912, 536870916, 65536, 65540, 536936448, 536936452, 512, 516, 536871424, 536871428, 66048, 66052, 536936960, 536936964], C = [0, 1, 1048576, 1048577, 67108864, 67108865, 68157440, 68157441, 256, 257, 1048832, 1048833, 67109120, 67109121, 68157696, 68157697], m = [0, 8, 2048, 2056, 16777216, 16777224, 16779264, 16779272, 0, 8, 2048, 2056, 16777216, 16777224, 16779264, 16779272], s = [0, 2097152, 134217728, 136314880, 8192, 2105344, 134225920, 136323072, 131072, 2228224, 134348800, 136445952, 139264, 2236416, 134356992, 136454144], p = [0, 262144, 16, 262160, 0, 262144, 16, 262160, 4096, 266240, 4112, 266256, 4096, 266240, 4112, 266256], v = [0, 1024, 32, 1056, 0, 1024, 32, 1056, 33554432, 33555456, 33554464, 33555488, 33554432, 33555456, 33554464, 33555488], T = [0, 268435456, 524288, 268959744, 2, 268435458, 524290, 268959746, 0, 268435456, 524288, 268959744, 2, 268435458, 524290, 268959746], R = [0, 65536, 2048, 67584, 536870912, 536936448, 536872960, 536938496, 131072, 196608, 133120, 198656, 537001984, 537067520, 537004032, 537069568], h = [0, 262144, 0, 262144, 2, 262146, 2, 262146, 33554432, 33816576, 33554432, 33816576, 33554434, 33816578, 33554434, 33816578], i = [0, 268435456, 8, 268435464, 0, 268435456, 8, 268435464, 1024, 268436480, 1032, 268436488, 1024, 268436480, 1032, 268436488], n = [0, 32, 0, 32, 1048576, 1048608, 1048576, 1048608, 8192, 8224, 8192, 8224, 1056768, 1056800, 1056768, 1056800], A = [0, 16777216, 512, 16777728, 2097152, 18874368, 2097664, 18874880, 67108864, 83886080, 67109376, 83886592, 69206016, 85983232, 69206528, 85983744], V = [0, 4096, 134217728, 134221824, 524288, 528384, 134742016, 134746112, 16, 4112, 134217744, 134221840, 524304, 528400, 134742032, 134746128], x = [0, 4, 256, 260, 0, 4, 256, 260, 1, 5, 257, 261, 1, 5, 257, 261], D = l.length() > 8 ? 3 : 1, O = [], K = [0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0], F = 0, q, H = 0; H < D; H++) {
|
|
3618
3620
|
var X = l.getInt32(), $ = l.getInt32();
|
|
3619
3621
|
q = (X >>> 4 ^ $) & 252645135, $ ^= q, X ^= q << 4, q = ($ >>> -16 ^ X) & 65535, X ^= q, $ ^= q << -16, q = (X >>> 2 ^ $) & 858993459, $ ^= q, X ^= q << 2, q = ($ >>> -16 ^ X) & 65535, X ^= q, $ ^= q << -16, q = (X >>> 1 ^ $) & 1431655765, $ ^= q, X ^= q << 1, q = ($ >>> 8 ^ X) & 16711935, X ^= q, $ ^= q << 8, q = (X >>> 1 ^ $) & 1431655765, $ ^= q, X ^= q << 1, q = X << 8 | $ >>> 20 & 240, X = $ << 24 | $ << 8 & 16711680 | $ >>> 8 & 65280 | $ >>> 24 & 240, $ = q;
|
|
3620
3622
|
for (var ne = 0; ne < K.length; ++ne) {
|
|
3621
3623
|
K[ne] ? (X = X << 2 | X >>> 26, $ = $ << 2 | $ >>> 26) : (X = X << 1 | X >>> 27, $ = $ << 1 | $ >>> 27), X &= -15, $ &= -15;
|
|
3622
|
-
var ce = y[X >>> 28] | C[X >>> 24 & 15] | m[X >>> 20 & 15] | s[X >>> 16 & 15] | p[X >>> 12 & 15] | v[X >>> 8 & 15] | T[X >>> 4 & 15], de = R[$ >>> 28] | h[$ >>> 24 & 15] | i[$ >>> 20 & 15] | n[$ >>> 16 & 15] |
|
|
3624
|
+
var ce = y[X >>> 28] | C[X >>> 24 & 15] | m[X >>> 20 & 15] | s[X >>> 16 & 15] | p[X >>> 12 & 15] | v[X >>> 8 & 15] | T[X >>> 4 & 15], de = R[$ >>> 28] | h[$ >>> 24 & 15] | i[$ >>> 20 & 15] | n[$ >>> 16 & 15] | A[$ >>> 12 & 15] | V[$ >>> 8 & 15] | x[$ >>> 4 & 15];
|
|
3623
3625
|
q = (de >>> 16 ^ ce) & 65535, O[F++] = ce ^ q, O[F++] = de ^ q << 16;
|
|
3624
3626
|
}
|
|
3625
3627
|
}
|
|
@@ -3631,8 +3633,8 @@ function er() {
|
|
|
3631
3633
|
var v, T = y[0], R = y[1];
|
|
3632
3634
|
v = (T >>> 4 ^ R) & 252645135, R ^= v, T ^= v << 4, v = (T >>> 16 ^ R) & 65535, R ^= v, T ^= v << 16, v = (R >>> 2 ^ T) & 858993459, T ^= v, R ^= v << 2, v = (R >>> 8 ^ T) & 16711935, T ^= v, R ^= v << 8, v = (T >>> 1 ^ R) & 1431655765, R ^= v, T ^= v << 1, T = T << 1 | T >>> 31, R = R << 1 | R >>> 31;
|
|
3633
3635
|
for (var h = 0; h < s; h += 3) {
|
|
3634
|
-
for (var i = p[h + 1], n = p[h + 2],
|
|
3635
|
-
var V = R ^ l[
|
|
3636
|
+
for (var i = p[h + 1], n = p[h + 2], A = p[h]; A != i; A += n) {
|
|
3637
|
+
var V = R ^ l[A], x = (R >>> 4 | R << 28) ^ l[A + 1];
|
|
3636
3638
|
v = T, T = R, R = v ^ (d[V >>> 24 & 63] | S[V >>> 16 & 63] | r[V >>> 8 & 63] | u[V & 63] | a[x >>> 24 & 63] | b[x >>> 16 & 63] | c[x >>> 8 & 63] | g[x & 63]);
|
|
3637
3639
|
}
|
|
3638
3640
|
v = T, T = R, R = v;
|
|
@@ -3845,14 +3847,14 @@ function an() {
|
|
|
3845
3847
|
], d = !0;
|
|
3846
3848
|
}
|
|
3847
3849
|
function c(r, g, u) {
|
|
3848
|
-
for (var I, L, E, l, y, C, m, s, p, v, T, R, h, i, n,
|
|
3850
|
+
for (var I, L, E, l, y, C, m, s, p, v, T, R, h, i, n, A = u.length(); A >= 64; ) {
|
|
3849
3851
|
for (m = 0; m < 16; ++m)
|
|
3850
3852
|
g[m] = u.getInt32();
|
|
3851
3853
|
for (; m < 64; ++m)
|
|
3852
3854
|
I = g[m - 2], I = (I >>> 17 | I << 15) ^ (I >>> 19 | I << 13) ^ I >>> 10, L = g[m - 15], L = (L >>> 7 | L << 25) ^ (L >>> 18 | L << 14) ^ L >>> 3, g[m] = I + g[m - 7] + L + g[m - 16] | 0;
|
|
3853
3855
|
for (s = r.h0, p = r.h1, v = r.h2, T = r.h3, R = r.h4, h = r.h5, i = r.h6, n = r.h7, m = 0; m < 64; ++m)
|
|
3854
3856
|
l = (R >>> 6 | R << 26) ^ (R >>> 11 | R << 21) ^ (R >>> 25 | R << 7), y = i ^ R & (h ^ i), E = (s >>> 2 | s << 30) ^ (s >>> 13 | s << 19) ^ (s >>> 22 | s << 10), C = s & p | v & (s ^ p), I = n + l + y + b[m] + g[m], L = E + C, n = i, i = h, h = R, R = T + I >>> 0, T = v, v = p, p = s, s = I + L >>> 0;
|
|
3855
|
-
r.h0 = r.h0 + s | 0, r.h1 = r.h1 + p | 0, r.h2 = r.h2 + v | 0, r.h3 = r.h3 + T | 0, r.h4 = r.h4 + R | 0, r.h5 = r.h5 + h | 0, r.h6 = r.h6 + i | 0, r.h7 = r.h7 + n | 0,
|
|
3857
|
+
r.h0 = r.h0 + s | 0, r.h1 = r.h1 + p | 0, r.h2 = r.h2 + v | 0, r.h3 = r.h3 + T | 0, r.h4 = r.h4 + R | 0, r.h5 = r.h5 + h | 0, r.h6 = r.h6 + i | 0, r.h7 = r.h7 + n | 0, A -= 64;
|
|
3856
3858
|
}
|
|
3857
3859
|
}
|
|
3858
3860
|
return Sr.exports;
|
|
@@ -4443,30 +4445,30 @@ function tr() {
|
|
|
4443
4445
|
var t = Ee();
|
|
4444
4446
|
Ar = t.jsbn = t.jsbn || {};
|
|
4445
4447
|
var e;
|
|
4446
|
-
function a(
|
|
4447
|
-
this.data = [],
|
|
4448
|
+
function a(B, w, P) {
|
|
4449
|
+
this.data = [], B != null && (typeof B == "number" ? this.fromNumber(B, w, P) : w == null && typeof B != "string" ? this.fromString(B, 256) : this.fromString(B, w));
|
|
4448
4450
|
}
|
|
4449
4451
|
t.jsbn.BigInteger = a;
|
|
4450
4452
|
function d() {
|
|
4451
4453
|
return new a(null);
|
|
4452
4454
|
}
|
|
4453
|
-
function b(
|
|
4455
|
+
function b(B, w, P, j, W, Z) {
|
|
4454
4456
|
for (; --Z >= 0; ) {
|
|
4455
|
-
var oe = w * this.data[
|
|
4457
|
+
var oe = w * this.data[B++] + P.data[j] + W;
|
|
4456
4458
|
W = Math.floor(oe / 67108864), P.data[j++] = oe & 67108863;
|
|
4457
4459
|
}
|
|
4458
4460
|
return W;
|
|
4459
4461
|
}
|
|
4460
|
-
function S(
|
|
4462
|
+
function S(B, w, P, j, W, Z) {
|
|
4461
4463
|
for (var oe = w & 32767, ie = w >> 15; --Z >= 0; ) {
|
|
4462
|
-
var ke = this.data[
|
|
4464
|
+
var ke = this.data[B] & 32767, $e = this.data[B++] >> 15, ut = ie * ke + $e * oe;
|
|
4463
4465
|
ke = oe * ke + ((ut & 32767) << 15) + P.data[j] + (W & 1073741823), W = (ke >>> 30) + (ut >>> 15) + ie * $e + (W >>> 30), P.data[j++] = ke & 1073741823;
|
|
4464
4466
|
}
|
|
4465
4467
|
return W;
|
|
4466
4468
|
}
|
|
4467
|
-
function c(
|
|
4469
|
+
function c(B, w, P, j, W, Z) {
|
|
4468
4470
|
for (var oe = w & 16383, ie = w >> 14; --Z >= 0; ) {
|
|
4469
|
-
var ke = this.data[
|
|
4471
|
+
var ke = this.data[B] & 16383, $e = this.data[B++] >> 14, ut = ie * ke + $e * oe;
|
|
4470
4472
|
ke = oe * ke + ((ut & 16383) << 14) + P.data[j] + W, W = (ke >> 28) + (ut >> 14) + ie * $e, P.data[j++] = ke & 268435455;
|
|
4471
4473
|
}
|
|
4472
4474
|
return W;
|
|
@@ -4478,25 +4480,25 @@ function tr() {
|
|
|
4478
4480
|
for (I = 48, L = 0; L <= 9; ++L) u[I++] = L;
|
|
4479
4481
|
for (I = 97, L = 10; L < 36; ++L) u[I++] = L;
|
|
4480
4482
|
for (I = 65, L = 10; L < 36; ++L) u[I++] = L;
|
|
4481
|
-
function E(
|
|
4482
|
-
return g.charAt(
|
|
4483
|
+
function E(B) {
|
|
4484
|
+
return g.charAt(B);
|
|
4483
4485
|
}
|
|
4484
|
-
function l(
|
|
4485
|
-
var P = u[
|
|
4486
|
+
function l(B, w) {
|
|
4487
|
+
var P = u[B.charCodeAt(w)];
|
|
4486
4488
|
return P ?? -1;
|
|
4487
4489
|
}
|
|
4488
|
-
function y(
|
|
4489
|
-
for (var w = this.t - 1; w >= 0; --w)
|
|
4490
|
-
|
|
4490
|
+
function y(B) {
|
|
4491
|
+
for (var w = this.t - 1; w >= 0; --w) B.data[w] = this.data[w];
|
|
4492
|
+
B.t = this.t, B.s = this.s;
|
|
4491
4493
|
}
|
|
4492
|
-
function C(
|
|
4493
|
-
this.t = 1, this.s =
|
|
4494
|
+
function C(B) {
|
|
4495
|
+
this.t = 1, this.s = B < 0 ? -1 : 0, B > 0 ? this.data[0] = B : B < -1 ? this.data[0] = B + this.DV : this.t = 0;
|
|
4494
4496
|
}
|
|
4495
|
-
function m(
|
|
4497
|
+
function m(B) {
|
|
4496
4498
|
var w = d();
|
|
4497
|
-
return w.fromInt(
|
|
4499
|
+
return w.fromInt(B), w;
|
|
4498
4500
|
}
|
|
4499
|
-
function s(
|
|
4501
|
+
function s(B, w) {
|
|
4500
4502
|
var P;
|
|
4501
4503
|
if (w == 16) P = 4;
|
|
4502
4504
|
else if (w == 8) P = 3;
|
|
@@ -4505,32 +4507,32 @@ function tr() {
|
|
|
4505
4507
|
else if (w == 32) P = 5;
|
|
4506
4508
|
else if (w == 4) P = 2;
|
|
4507
4509
|
else {
|
|
4508
|
-
this.fromRadix(
|
|
4510
|
+
this.fromRadix(B, w);
|
|
4509
4511
|
return;
|
|
4510
4512
|
}
|
|
4511
4513
|
this.t = 0, this.s = 0;
|
|
4512
|
-
for (var j =
|
|
4513
|
-
var oe = P == 8 ?
|
|
4514
|
+
for (var j = B.length, W = !1, Z = 0; --j >= 0; ) {
|
|
4515
|
+
var oe = P == 8 ? B[j] & 255 : l(B, j);
|
|
4514
4516
|
if (oe < 0) {
|
|
4515
|
-
|
|
4517
|
+
B.charAt(j) == "-" && (W = !0);
|
|
4516
4518
|
continue;
|
|
4517
4519
|
}
|
|
4518
4520
|
W = !1, Z == 0 ? this.data[this.t++] = oe : Z + P > this.DB ? (this.data[this.t - 1] |= (oe & (1 << this.DB - Z) - 1) << Z, this.data[this.t++] = oe >> this.DB - Z) : this.data[this.t - 1] |= oe << Z, Z += P, Z >= this.DB && (Z -= this.DB);
|
|
4519
4521
|
}
|
|
4520
|
-
P == 8 && (
|
|
4522
|
+
P == 8 && (B[0] & 128) != 0 && (this.s = -1, Z > 0 && (this.data[this.t - 1] |= (1 << this.DB - Z) - 1 << Z)), this.clamp(), W && a.ZERO.subTo(this, this);
|
|
4521
4523
|
}
|
|
4522
4524
|
function p() {
|
|
4523
|
-
for (var
|
|
4525
|
+
for (var B = this.s & this.DM; this.t > 0 && this.data[this.t - 1] == B; ) --this.t;
|
|
4524
4526
|
}
|
|
4525
|
-
function v(
|
|
4526
|
-
if (this.s < 0) return "-" + this.negate().toString(
|
|
4527
|
+
function v(B) {
|
|
4528
|
+
if (this.s < 0) return "-" + this.negate().toString(B);
|
|
4527
4529
|
var w;
|
|
4528
|
-
if (
|
|
4529
|
-
else if (
|
|
4530
|
-
else if (
|
|
4531
|
-
else if (
|
|
4532
|
-
else if (
|
|
4533
|
-
else return this.toRadix(
|
|
4530
|
+
if (B == 16) w = 4;
|
|
4531
|
+
else if (B == 8) w = 3;
|
|
4532
|
+
else if (B == 2) w = 1;
|
|
4533
|
+
else if (B == 32) w = 5;
|
|
4534
|
+
else if (B == 4) w = 2;
|
|
4535
|
+
else return this.toRadix(B);
|
|
4534
4536
|
var P = (1 << w) - 1, j, W = !1, Z = "", oe = this.t, ie = this.DB - oe * this.DB % w;
|
|
4535
4537
|
if (oe-- > 0)
|
|
4536
4538
|
for (ie < this.DB && (j = this.data[oe] >> ie) > 0 && (W = !0, Z = E(j)); oe >= 0; )
|
|
@@ -4538,87 +4540,87 @@ function tr() {
|
|
|
4538
4540
|
return W ? Z : "0";
|
|
4539
4541
|
}
|
|
4540
4542
|
function T() {
|
|
4541
|
-
var
|
|
4542
|
-
return a.ZERO.subTo(this,
|
|
4543
|
+
var B = d();
|
|
4544
|
+
return a.ZERO.subTo(this, B), B;
|
|
4543
4545
|
}
|
|
4544
4546
|
function R() {
|
|
4545
4547
|
return this.s < 0 ? this.negate() : this;
|
|
4546
4548
|
}
|
|
4547
|
-
function h(
|
|
4548
|
-
var w = this.s -
|
|
4549
|
+
function h(B) {
|
|
4550
|
+
var w = this.s - B.s;
|
|
4549
4551
|
if (w != 0) return w;
|
|
4550
4552
|
var P = this.t;
|
|
4551
|
-
if (w = P -
|
|
4552
|
-
for (; --P >= 0; ) if ((w = this.data[P] -
|
|
4553
|
+
if (w = P - B.t, w != 0) return this.s < 0 ? -w : w;
|
|
4554
|
+
for (; --P >= 0; ) if ((w = this.data[P] - B.data[P]) != 0) return w;
|
|
4553
4555
|
return 0;
|
|
4554
4556
|
}
|
|
4555
|
-
function i(
|
|
4557
|
+
function i(B) {
|
|
4556
4558
|
var w = 1, P;
|
|
4557
|
-
return (P =
|
|
4559
|
+
return (P = B >>> 16) != 0 && (B = P, w += 16), (P = B >> 8) != 0 && (B = P, w += 8), (P = B >> 4) != 0 && (B = P, w += 4), (P = B >> 2) != 0 && (B = P, w += 2), (P = B >> 1) != 0 && (B = P, w += 1), w;
|
|
4558
4560
|
}
|
|
4559
4561
|
function n() {
|
|
4560
4562
|
return this.t <= 0 ? 0 : this.DB * (this.t - 1) + i(this.data[this.t - 1] ^ this.s & this.DM);
|
|
4561
4563
|
}
|
|
4562
|
-
function B
|
|
4564
|
+
function A(B, w) {
|
|
4563
4565
|
var P;
|
|
4564
|
-
for (P = this.t - 1; P >= 0; --P) w.data[P +
|
|
4565
|
-
for (P =
|
|
4566
|
-
w.t = this.t +
|
|
4566
|
+
for (P = this.t - 1; P >= 0; --P) w.data[P + B] = this.data[P];
|
|
4567
|
+
for (P = B - 1; P >= 0; --P) w.data[P] = 0;
|
|
4568
|
+
w.t = this.t + B, w.s = this.s;
|
|
4567
4569
|
}
|
|
4568
|
-
function V(
|
|
4569
|
-
for (var P =
|
|
4570
|
-
w.t = Math.max(this.t -
|
|
4570
|
+
function V(B, w) {
|
|
4571
|
+
for (var P = B; P < this.t; ++P) w.data[P - B] = this.data[P];
|
|
4572
|
+
w.t = Math.max(this.t - B, 0), w.s = this.s;
|
|
4571
4573
|
}
|
|
4572
|
-
function x(
|
|
4573
|
-
var P =
|
|
4574
|
+
function x(B, w) {
|
|
4575
|
+
var P = B % this.DB, j = this.DB - P, W = (1 << j) - 1, Z = Math.floor(B / this.DB), oe = this.s << P & this.DM, ie;
|
|
4574
4576
|
for (ie = this.t - 1; ie >= 0; --ie)
|
|
4575
4577
|
w.data[ie + Z + 1] = this.data[ie] >> j | oe, oe = (this.data[ie] & W) << P;
|
|
4576
4578
|
for (ie = Z - 1; ie >= 0; --ie) w.data[ie] = 0;
|
|
4577
4579
|
w.data[Z] = oe, w.t = this.t + Z + 1, w.s = this.s, w.clamp();
|
|
4578
4580
|
}
|
|
4579
|
-
function D(
|
|
4581
|
+
function D(B, w) {
|
|
4580
4582
|
w.s = this.s;
|
|
4581
|
-
var P = Math.floor(
|
|
4583
|
+
var P = Math.floor(B / this.DB);
|
|
4582
4584
|
if (P >= this.t) {
|
|
4583
4585
|
w.t = 0;
|
|
4584
4586
|
return;
|
|
4585
4587
|
}
|
|
4586
|
-
var j =
|
|
4588
|
+
var j = B % this.DB, W = this.DB - j, Z = (1 << j) - 1;
|
|
4587
4589
|
w.data[0] = this.data[P] >> j;
|
|
4588
4590
|
for (var oe = P + 1; oe < this.t; ++oe)
|
|
4589
4591
|
w.data[oe - P - 1] |= (this.data[oe] & Z) << W, w.data[oe - P] = this.data[oe] >> j;
|
|
4590
4592
|
j > 0 && (w.data[this.t - P - 1] |= (this.s & Z) << W), w.t = this.t - P, w.clamp();
|
|
4591
4593
|
}
|
|
4592
|
-
function O(
|
|
4593
|
-
for (var P = 0, j = 0, W = Math.min(
|
|
4594
|
-
j += this.data[P] -
|
|
4595
|
-
if (
|
|
4596
|
-
for (j -=
|
|
4594
|
+
function O(B, w) {
|
|
4595
|
+
for (var P = 0, j = 0, W = Math.min(B.t, this.t); P < W; )
|
|
4596
|
+
j += this.data[P] - B.data[P], w.data[P++] = j & this.DM, j >>= this.DB;
|
|
4597
|
+
if (B.t < this.t) {
|
|
4598
|
+
for (j -= B.s; P < this.t; )
|
|
4597
4599
|
j += this.data[P], w.data[P++] = j & this.DM, j >>= this.DB;
|
|
4598
4600
|
j += this.s;
|
|
4599
4601
|
} else {
|
|
4600
|
-
for (j += this.s; P <
|
|
4601
|
-
j -=
|
|
4602
|
-
j -=
|
|
4602
|
+
for (j += this.s; P < B.t; )
|
|
4603
|
+
j -= B.data[P], w.data[P++] = j & this.DM, j >>= this.DB;
|
|
4604
|
+
j -= B.s;
|
|
4603
4605
|
}
|
|
4604
4606
|
w.s = j < 0 ? -1 : 0, j < -1 ? w.data[P++] = this.DV + j : j > 0 && (w.data[P++] = j), w.t = P, w.clamp();
|
|
4605
4607
|
}
|
|
4606
|
-
function K(
|
|
4607
|
-
var P = this.abs(), j =
|
|
4608
|
+
function K(B, w) {
|
|
4609
|
+
var P = this.abs(), j = B.abs(), W = P.t;
|
|
4608
4610
|
for (w.t = W + j.t; --W >= 0; ) w.data[W] = 0;
|
|
4609
4611
|
for (W = 0; W < j.t; ++W) w.data[W + P.t] = P.am(0, j.data[W], w, W, 0, P.t);
|
|
4610
|
-
w.s = 0, w.clamp(), this.s !=
|
|
4612
|
+
w.s = 0, w.clamp(), this.s != B.s && a.ZERO.subTo(w, w);
|
|
4611
4613
|
}
|
|
4612
|
-
function F(
|
|
4613
|
-
for (var w = this.abs(), P =
|
|
4614
|
+
function F(B) {
|
|
4615
|
+
for (var w = this.abs(), P = B.t = 2 * w.t; --P >= 0; ) B.data[P] = 0;
|
|
4614
4616
|
for (P = 0; P < w.t - 1; ++P) {
|
|
4615
|
-
var j = w.am(P, w.data[P],
|
|
4616
|
-
(
|
|
4617
|
+
var j = w.am(P, w.data[P], B, 2 * P, 0, 1);
|
|
4618
|
+
(B.data[P + w.t] += w.am(P + 1, 2 * w.data[P], B, 2 * P + 1, j, w.t - P - 1)) >= w.DV && (B.data[P + w.t] -= w.DV, B.data[P + w.t + 1] = 1);
|
|
4617
4619
|
}
|
|
4618
|
-
|
|
4620
|
+
B.t > 0 && (B.data[B.t - 1] += w.am(P, w.data[P], B, 2 * P, 0, 1)), B.s = 0, B.clamp();
|
|
4619
4621
|
}
|
|
4620
|
-
function q(
|
|
4621
|
-
var j =
|
|
4622
|
+
function q(B, w, P) {
|
|
4623
|
+
var j = B.abs();
|
|
4622
4624
|
if (!(j.t <= 0)) {
|
|
4623
4625
|
var W = this.abs();
|
|
4624
4626
|
if (W.t < j.t) {
|
|
@@ -4626,7 +4628,7 @@ function tr() {
|
|
|
4626
4628
|
return;
|
|
4627
4629
|
}
|
|
4628
4630
|
P == null && (P = d());
|
|
4629
|
-
var Z = d(), oe = this.s, ie =
|
|
4631
|
+
var Z = d(), oe = this.s, ie = B.s, ke = this.DB - i(j.data[j.t - 1]);
|
|
4630
4632
|
ke > 0 ? (j.lShiftTo(ke, Z), W.lShiftTo(ke, P)) : (j.copyTo(Z), W.copyTo(P));
|
|
4631
4633
|
var $e = Z.t, ut = Z.data[$e - 1];
|
|
4632
4634
|
if (ut != 0) {
|
|
@@ -4641,86 +4643,86 @@ function tr() {
|
|
|
4641
4643
|
}
|
|
4642
4644
|
}
|
|
4643
4645
|
}
|
|
4644
|
-
function H(
|
|
4646
|
+
function H(B) {
|
|
4645
4647
|
var w = d();
|
|
4646
|
-
return this.abs().divRemTo(
|
|
4648
|
+
return this.abs().divRemTo(B, null, w), this.s < 0 && w.compareTo(a.ZERO) > 0 && B.subTo(w, w), w;
|
|
4647
4649
|
}
|
|
4648
|
-
function X(
|
|
4649
|
-
this.m =
|
|
4650
|
+
function X(B) {
|
|
4651
|
+
this.m = B;
|
|
4650
4652
|
}
|
|
4651
|
-
function $(
|
|
4652
|
-
return
|
|
4653
|
+
function $(B) {
|
|
4654
|
+
return B.s < 0 || B.compareTo(this.m) >= 0 ? B.mod(this.m) : B;
|
|
4653
4655
|
}
|
|
4654
|
-
function ne(
|
|
4655
|
-
return
|
|
4656
|
+
function ne(B) {
|
|
4657
|
+
return B;
|
|
4656
4658
|
}
|
|
4657
|
-
function ce(
|
|
4658
|
-
|
|
4659
|
+
function ce(B) {
|
|
4660
|
+
B.divRemTo(this.m, null, B);
|
|
4659
4661
|
}
|
|
4660
|
-
function de(
|
|
4661
|
-
|
|
4662
|
+
function de(B, w, P) {
|
|
4663
|
+
B.multiplyTo(w, P), this.reduce(P);
|
|
4662
4664
|
}
|
|
4663
|
-
function be(
|
|
4664
|
-
|
|
4665
|
+
function be(B, w) {
|
|
4666
|
+
B.squareTo(w), this.reduce(w);
|
|
4665
4667
|
}
|
|
4666
4668
|
X.prototype.convert = $, X.prototype.revert = ne, X.prototype.reduce = ce, X.prototype.mulTo = de, X.prototype.sqrTo = be;
|
|
4667
4669
|
function ee() {
|
|
4668
4670
|
if (this.t < 1) return 0;
|
|
4669
|
-
var
|
|
4670
|
-
if ((
|
|
4671
|
-
var w =
|
|
4672
|
-
return w = w * (2 - (
|
|
4671
|
+
var B = this.data[0];
|
|
4672
|
+
if ((B & 1) == 0) return 0;
|
|
4673
|
+
var w = B & 3;
|
|
4674
|
+
return w = w * (2 - (B & 15) * w) & 15, w = w * (2 - (B & 255) * w) & 255, w = w * (2 - ((B & 65535) * w & 65535)) & 65535, w = w * (2 - B * w % this.DV) % this.DV, w > 0 ? this.DV - w : -w;
|
|
4673
4675
|
}
|
|
4674
|
-
function Ce(
|
|
4675
|
-
this.m =
|
|
4676
|
+
function Ce(B) {
|
|
4677
|
+
this.m = B, this.mp = B.invDigit(), this.mpl = this.mp & 32767, this.mph = this.mp >> 15, this.um = (1 << B.DB - 15) - 1, this.mt2 = 2 * B.t;
|
|
4676
4678
|
}
|
|
4677
|
-
function re(
|
|
4679
|
+
function re(B) {
|
|
4678
4680
|
var w = d();
|
|
4679
|
-
return
|
|
4681
|
+
return B.abs().dlShiftTo(this.m.t, w), w.divRemTo(this.m, null, w), B.s < 0 && w.compareTo(a.ZERO) > 0 && this.m.subTo(w, w), w;
|
|
4680
4682
|
}
|
|
4681
|
-
function
|
|
4683
|
+
function Ke(B) {
|
|
4682
4684
|
var w = d();
|
|
4683
|
-
return
|
|
4685
|
+
return B.copyTo(w), this.reduce(w), w;
|
|
4684
4686
|
}
|
|
4685
|
-
function ve(
|
|
4686
|
-
for (;
|
|
4687
|
-
|
|
4687
|
+
function ve(B) {
|
|
4688
|
+
for (; B.t <= this.mt2; )
|
|
4689
|
+
B.data[B.t++] = 0;
|
|
4688
4690
|
for (var w = 0; w < this.m.t; ++w) {
|
|
4689
|
-
var P =
|
|
4690
|
-
for (P = w + this.m.t,
|
|
4691
|
-
|
|
4691
|
+
var P = B.data[w] & 32767, j = P * this.mpl + ((P * this.mph + (B.data[w] >> 15) * this.mpl & this.um) << 15) & B.DM;
|
|
4692
|
+
for (P = w + this.m.t, B.data[P] += this.m.am(0, j, B, w, 0, this.m.t); B.data[P] >= B.DV; )
|
|
4693
|
+
B.data[P] -= B.DV, B.data[++P]++;
|
|
4692
4694
|
}
|
|
4693
|
-
|
|
4695
|
+
B.clamp(), B.drShiftTo(this.m.t, B), B.compareTo(this.m) >= 0 && B.subTo(this.m, B);
|
|
4694
4696
|
}
|
|
4695
|
-
function f(
|
|
4696
|
-
|
|
4697
|
+
function f(B, w) {
|
|
4698
|
+
B.squareTo(w), this.reduce(w);
|
|
4697
4699
|
}
|
|
4698
|
-
function U(
|
|
4699
|
-
|
|
4700
|
+
function U(B, w, P) {
|
|
4701
|
+
B.multiplyTo(w, P), this.reduce(P);
|
|
4700
4702
|
}
|
|
4701
|
-
Ce.prototype.convert = re, Ce.prototype.revert =
|
|
4703
|
+
Ce.prototype.convert = re, Ce.prototype.revert = Ke, Ce.prototype.reduce = ve, Ce.prototype.mulTo = U, Ce.prototype.sqrTo = f;
|
|
4702
4704
|
function N() {
|
|
4703
4705
|
return (this.t > 0 ? this.data[0] & 1 : this.s) == 0;
|
|
4704
4706
|
}
|
|
4705
|
-
function o(
|
|
4706
|
-
if (
|
|
4707
|
-
var P = d(), j = d(), W = w.convert(this), Z = i(
|
|
4707
|
+
function o(B, w) {
|
|
4708
|
+
if (B > 4294967295 || B < 1) return a.ONE;
|
|
4709
|
+
var P = d(), j = d(), W = w.convert(this), Z = i(B) - 1;
|
|
4708
4710
|
for (W.copyTo(P); --Z >= 0; )
|
|
4709
|
-
if (w.sqrTo(P, j), (
|
|
4711
|
+
if (w.sqrTo(P, j), (B & 1 << Z) > 0) w.mulTo(j, W, P);
|
|
4710
4712
|
else {
|
|
4711
4713
|
var oe = P;
|
|
4712
4714
|
P = j, j = oe;
|
|
4713
4715
|
}
|
|
4714
4716
|
return w.revert(P);
|
|
4715
4717
|
}
|
|
4716
|
-
function k(
|
|
4718
|
+
function k(B, w) {
|
|
4717
4719
|
var P;
|
|
4718
|
-
return
|
|
4720
|
+
return B < 256 || w.isEven() ? P = new X(w) : P = new Ce(w), this.exp(B, P);
|
|
4719
4721
|
}
|
|
4720
|
-
a.prototype.copyTo = y, a.prototype.fromInt = C, a.prototype.fromString = s, a.prototype.clamp = p, a.prototype.dlShiftTo =
|
|
4722
|
+
a.prototype.copyTo = y, a.prototype.fromInt = C, a.prototype.fromString = s, a.prototype.clamp = p, a.prototype.dlShiftTo = A, a.prototype.drShiftTo = V, a.prototype.lShiftTo = x, a.prototype.rShiftTo = D, a.prototype.subTo = O, a.prototype.multiplyTo = K, a.prototype.squareTo = F, a.prototype.divRemTo = q, a.prototype.invDigit = ee, a.prototype.isEven = N, a.prototype.exp = o, a.prototype.toString = v, a.prototype.negate = T, a.prototype.abs = R, a.prototype.compareTo = h, a.prototype.bitLength = n, a.prototype.mod = H, a.prototype.modPowInt = k, a.ZERO = m(0), a.ONE = m(1);
|
|
4721
4723
|
function G() {
|
|
4722
|
-
var
|
|
4723
|
-
return this.copyTo(
|
|
4724
|
+
var B = d();
|
|
4725
|
+
return this.copyTo(B), B;
|
|
4724
4726
|
}
|
|
4725
4727
|
function M() {
|
|
4726
4728
|
if (this.s < 0) {
|
|
@@ -4738,252 +4740,252 @@ function tr() {
|
|
|
4738
4740
|
function se() {
|
|
4739
4741
|
return this.t == 0 ? this.s : this.data[0] << 16 >> 16;
|
|
4740
4742
|
}
|
|
4741
|
-
function le(
|
|
4742
|
-
return Math.floor(Math.LN2 * this.DB / Math.log(
|
|
4743
|
+
function le(B) {
|
|
4744
|
+
return Math.floor(Math.LN2 * this.DB / Math.log(B));
|
|
4743
4745
|
}
|
|
4744
4746
|
function z() {
|
|
4745
4747
|
return this.s < 0 ? -1 : this.t <= 0 || this.t == 1 && this.data[0] <= 0 ? 0 : 1;
|
|
4746
4748
|
}
|
|
4747
|
-
function te(
|
|
4748
|
-
if (
|
|
4749
|
-
var w = this.chunkSize(
|
|
4749
|
+
function te(B) {
|
|
4750
|
+
if (B == null && (B = 10), this.signum() == 0 || B < 2 || B > 36) return "0";
|
|
4751
|
+
var w = this.chunkSize(B), P = Math.pow(B, w), j = m(P), W = d(), Z = d(), oe = "";
|
|
4750
4752
|
for (this.divRemTo(j, W, Z); W.signum() > 0; )
|
|
4751
|
-
oe = (P + Z.intValue()).toString(
|
|
4752
|
-
return Z.intValue().toString(
|
|
4753
|
+
oe = (P + Z.intValue()).toString(B).substr(1) + oe, W.divRemTo(j, W, Z);
|
|
4754
|
+
return Z.intValue().toString(B) + oe;
|
|
4753
4755
|
}
|
|
4754
|
-
function he(
|
|
4756
|
+
function he(B, w) {
|
|
4755
4757
|
this.fromInt(0), w == null && (w = 10);
|
|
4756
|
-
for (var P = this.chunkSize(w), j = Math.pow(w, P), W = !1, Z = 0, oe = 0, ie = 0; ie <
|
|
4757
|
-
var ke = l(
|
|
4758
|
+
for (var P = this.chunkSize(w), j = Math.pow(w, P), W = !1, Z = 0, oe = 0, ie = 0; ie < B.length; ++ie) {
|
|
4759
|
+
var ke = l(B, ie);
|
|
4758
4760
|
if (ke < 0) {
|
|
4759
|
-
|
|
4761
|
+
B.charAt(ie) == "-" && this.signum() == 0 && (W = !0);
|
|
4760
4762
|
continue;
|
|
4761
4763
|
}
|
|
4762
4764
|
oe = w * oe + ke, ++Z >= P && (this.dMultiply(j), this.dAddOffset(oe, 0), Z = 0, oe = 0);
|
|
4763
4765
|
}
|
|
4764
4766
|
Z > 0 && (this.dMultiply(Math.pow(w, Z)), this.dAddOffset(oe, 0)), W && a.ZERO.subTo(this, this);
|
|
4765
4767
|
}
|
|
4766
|
-
function ye(
|
|
4768
|
+
function ye(B, w, P) {
|
|
4767
4769
|
if (typeof w == "number")
|
|
4768
|
-
if (
|
|
4770
|
+
if (B < 2) this.fromInt(1);
|
|
4769
4771
|
else
|
|
4770
|
-
for (this.fromNumber(
|
|
4771
|
-
this.dAddOffset(2, 0), this.bitLength() >
|
|
4772
|
+
for (this.fromNumber(B, P), this.testBit(B - 1) || this.bitwiseTo(a.ONE.shiftLeft(B - 1), Pe, this), this.isEven() && this.dAddOffset(1, 0); !this.isProbablePrime(w); )
|
|
4773
|
+
this.dAddOffset(2, 0), this.bitLength() > B && this.subTo(a.ONE.shiftLeft(B - 1), this);
|
|
4772
4774
|
else {
|
|
4773
|
-
var j = new Array(), W =
|
|
4774
|
-
j.length = (
|
|
4775
|
+
var j = new Array(), W = B & 7;
|
|
4776
|
+
j.length = (B >> 3) + 1, w.nextBytes(j), W > 0 ? j[0] &= (1 << W) - 1 : j[0] = 0, this.fromString(j, 256);
|
|
4775
4777
|
}
|
|
4776
4778
|
}
|
|
4777
4779
|
function pe() {
|
|
4778
|
-
var
|
|
4780
|
+
var B = this.t, w = new Array();
|
|
4779
4781
|
w[0] = this.s;
|
|
4780
|
-
var P = this.DB -
|
|
4781
|
-
if (
|
|
4782
|
-
for (P < this.DB && (j = this.data[
|
|
4783
|
-
P < 8 ? (j = (this.data[
|
|
4782
|
+
var P = this.DB - B * this.DB % 8, j, W = 0;
|
|
4783
|
+
if (B-- > 0)
|
|
4784
|
+
for (P < this.DB && (j = this.data[B] >> P) != (this.s & this.DM) >> P && (w[W++] = j | this.s << this.DB - P); B >= 0; )
|
|
4785
|
+
P < 8 ? (j = (this.data[B] & (1 << P) - 1) << 8 - P, j |= this.data[--B] >> (P += this.DB - 8)) : (j = this.data[B] >> (P -= 8) & 255, P <= 0 && (P += this.DB, --B)), (j & 128) != 0 && (j |= -256), W == 0 && (this.s & 128) != (j & 128) && ++W, (W > 0 || j != this.s) && (w[W++] = j);
|
|
4784
4786
|
return w;
|
|
4785
4787
|
}
|
|
4786
|
-
function Be(
|
|
4787
|
-
return this.compareTo(
|
|
4788
|
+
function Be(B) {
|
|
4789
|
+
return this.compareTo(B) == 0;
|
|
4788
4790
|
}
|
|
4789
|
-
function De(
|
|
4790
|
-
return this.compareTo(
|
|
4791
|
+
function De(B) {
|
|
4792
|
+
return this.compareTo(B) < 0 ? this : B;
|
|
4791
4793
|
}
|
|
4792
|
-
function Ve(
|
|
4793
|
-
return this.compareTo(
|
|
4794
|
+
function Ve(B) {
|
|
4795
|
+
return this.compareTo(B) > 0 ? this : B;
|
|
4794
4796
|
}
|
|
4795
|
-
function Le(
|
|
4796
|
-
var j, W, Z = Math.min(
|
|
4797
|
-
for (j = 0; j < Z; ++j) P.data[j] = w(this.data[j],
|
|
4798
|
-
if (
|
|
4799
|
-
for (W =
|
|
4797
|
+
function Le(B, w, P) {
|
|
4798
|
+
var j, W, Z = Math.min(B.t, this.t);
|
|
4799
|
+
for (j = 0; j < Z; ++j) P.data[j] = w(this.data[j], B.data[j]);
|
|
4800
|
+
if (B.t < this.t) {
|
|
4801
|
+
for (W = B.s & this.DM, j = Z; j < this.t; ++j) P.data[j] = w(this.data[j], W);
|
|
4800
4802
|
P.t = this.t;
|
|
4801
4803
|
} else {
|
|
4802
|
-
for (W = this.s & this.DM, j = Z; j <
|
|
4803
|
-
P.t =
|
|
4804
|
+
for (W = this.s & this.DM, j = Z; j < B.t; ++j) P.data[j] = w(W, B.data[j]);
|
|
4805
|
+
P.t = B.t;
|
|
4804
4806
|
}
|
|
4805
|
-
P.s = w(this.s,
|
|
4807
|
+
P.s = w(this.s, B.s), P.clamp();
|
|
4806
4808
|
}
|
|
4807
|
-
function Ne(
|
|
4808
|
-
return
|
|
4809
|
+
function Ne(B, w) {
|
|
4810
|
+
return B & w;
|
|
4809
4811
|
}
|
|
4810
|
-
function Re(
|
|
4812
|
+
function Re(B) {
|
|
4811
4813
|
var w = d();
|
|
4812
|
-
return this.bitwiseTo(
|
|
4814
|
+
return this.bitwiseTo(B, Ne, w), w;
|
|
4813
4815
|
}
|
|
4814
|
-
function Pe(
|
|
4815
|
-
return
|
|
4816
|
+
function Pe(B, w) {
|
|
4817
|
+
return B | w;
|
|
4816
4818
|
}
|
|
4817
|
-
function He(
|
|
4819
|
+
function He(B) {
|
|
4818
4820
|
var w = d();
|
|
4819
|
-
return this.bitwiseTo(
|
|
4821
|
+
return this.bitwiseTo(B, Pe, w), w;
|
|
4820
4822
|
}
|
|
4821
|
-
function Je(
|
|
4822
|
-
return
|
|
4823
|
+
function Je(B, w) {
|
|
4824
|
+
return B ^ w;
|
|
4823
4825
|
}
|
|
4824
|
-
function et(
|
|
4826
|
+
function et(B) {
|
|
4825
4827
|
var w = d();
|
|
4826
|
-
return this.bitwiseTo(
|
|
4828
|
+
return this.bitwiseTo(B, Je, w), w;
|
|
4827
4829
|
}
|
|
4828
|
-
function Ye(
|
|
4829
|
-
return
|
|
4830
|
+
function Ye(B, w) {
|
|
4831
|
+
return B & ~w;
|
|
4830
4832
|
}
|
|
4831
|
-
function rt(
|
|
4833
|
+
function rt(B) {
|
|
4832
4834
|
var w = d();
|
|
4833
|
-
return this.bitwiseTo(
|
|
4835
|
+
return this.bitwiseTo(B, Ye, w), w;
|
|
4834
4836
|
}
|
|
4835
4837
|
function nt() {
|
|
4836
|
-
for (var
|
|
4837
|
-
return
|
|
4838
|
+
for (var B = d(), w = 0; w < this.t; ++w) B.data[w] = this.DM & ~this.data[w];
|
|
4839
|
+
return B.t = this.t, B.s = ~this.s, B;
|
|
4838
4840
|
}
|
|
4839
|
-
function it(
|
|
4841
|
+
function it(B) {
|
|
4840
4842
|
var w = d();
|
|
4841
|
-
return
|
|
4843
|
+
return B < 0 ? this.rShiftTo(-B, w) : this.lShiftTo(B, w), w;
|
|
4842
4844
|
}
|
|
4843
|
-
function ot(
|
|
4845
|
+
function ot(B) {
|
|
4844
4846
|
var w = d();
|
|
4845
|
-
return
|
|
4847
|
+
return B < 0 ? this.lShiftTo(-B, w) : this.rShiftTo(B, w), w;
|
|
4846
4848
|
}
|
|
4847
|
-
function ft(
|
|
4848
|
-
if (
|
|
4849
|
+
function ft(B) {
|
|
4850
|
+
if (B == 0) return -1;
|
|
4849
4851
|
var w = 0;
|
|
4850
|
-
return (
|
|
4852
|
+
return (B & 65535) == 0 && (B >>= 16, w += 16), (B & 255) == 0 && (B >>= 8, w += 8), (B & 15) == 0 && (B >>= 4, w += 4), (B & 3) == 0 && (B >>= 2, w += 2), (B & 1) == 0 && ++w, w;
|
|
4851
4853
|
}
|
|
4852
4854
|
function lt() {
|
|
4853
|
-
for (var
|
|
4854
|
-
if (this.data[
|
|
4855
|
+
for (var B = 0; B < this.t; ++B)
|
|
4856
|
+
if (this.data[B] != 0) return B * this.DB + ft(this.data[B]);
|
|
4855
4857
|
return this.s < 0 ? this.t * this.DB : -1;
|
|
4856
4858
|
}
|
|
4857
|
-
function Et(
|
|
4858
|
-
for (var w = 0;
|
|
4859
|
-
|
|
4859
|
+
function Et(B) {
|
|
4860
|
+
for (var w = 0; B != 0; )
|
|
4861
|
+
B &= B - 1, ++w;
|
|
4860
4862
|
return w;
|
|
4861
4863
|
}
|
|
4862
4864
|
function St() {
|
|
4863
|
-
for (var
|
|
4864
|
-
return
|
|
4865
|
+
for (var B = 0, w = this.s & this.DM, P = 0; P < this.t; ++P) B += Et(this.data[P] ^ w);
|
|
4866
|
+
return B;
|
|
4865
4867
|
}
|
|
4866
|
-
function Ut(
|
|
4867
|
-
var w = Math.floor(
|
|
4868
|
-
return w >= this.t ? this.s != 0 : (this.data[w] & 1 <<
|
|
4868
|
+
function Ut(B) {
|
|
4869
|
+
var w = Math.floor(B / this.DB);
|
|
4870
|
+
return w >= this.t ? this.s != 0 : (this.data[w] & 1 << B % this.DB) != 0;
|
|
4869
4871
|
}
|
|
4870
|
-
function Kt(
|
|
4871
|
-
var P = a.ONE.shiftLeft(
|
|
4872
|
+
function Kt(B, w) {
|
|
4873
|
+
var P = a.ONE.shiftLeft(B);
|
|
4872
4874
|
return this.bitwiseTo(P, w, P), P;
|
|
4873
4875
|
}
|
|
4874
|
-
function
|
|
4875
|
-
return this.changeBit(
|
|
4876
|
+
function Me(B) {
|
|
4877
|
+
return this.changeBit(B, Pe);
|
|
4876
4878
|
}
|
|
4877
|
-
function je(
|
|
4878
|
-
return this.changeBit(
|
|
4879
|
+
function je(B) {
|
|
4880
|
+
return this.changeBit(B, Ye);
|
|
4879
4881
|
}
|
|
4880
|
-
function ze(
|
|
4881
|
-
return this.changeBit(
|
|
4882
|
+
function ze(B) {
|
|
4883
|
+
return this.changeBit(B, Je);
|
|
4882
4884
|
}
|
|
4883
|
-
function qe(
|
|
4884
|
-
for (var P = 0, j = 0, W = Math.min(
|
|
4885
|
-
j += this.data[P] +
|
|
4886
|
-
if (
|
|
4887
|
-
for (j +=
|
|
4885
|
+
function qe(B, w) {
|
|
4886
|
+
for (var P = 0, j = 0, W = Math.min(B.t, this.t); P < W; )
|
|
4887
|
+
j += this.data[P] + B.data[P], w.data[P++] = j & this.DM, j >>= this.DB;
|
|
4888
|
+
if (B.t < this.t) {
|
|
4889
|
+
for (j += B.s; P < this.t; )
|
|
4888
4890
|
j += this.data[P], w.data[P++] = j & this.DM, j >>= this.DB;
|
|
4889
4891
|
j += this.s;
|
|
4890
4892
|
} else {
|
|
4891
|
-
for (j += this.s; P <
|
|
4892
|
-
j +=
|
|
4893
|
-
j +=
|
|
4893
|
+
for (j += this.s; P < B.t; )
|
|
4894
|
+
j += B.data[P], w.data[P++] = j & this.DM, j >>= this.DB;
|
|
4895
|
+
j += B.s;
|
|
4894
4896
|
}
|
|
4895
4897
|
w.s = j < 0 ? -1 : 0, j > 0 ? w.data[P++] = j : j < -1 && (w.data[P++] = this.DV + j), w.t = P, w.clamp();
|
|
4896
4898
|
}
|
|
4897
|
-
function Q(
|
|
4899
|
+
function Q(B) {
|
|
4898
4900
|
var w = d();
|
|
4899
|
-
return this.addTo(
|
|
4901
|
+
return this.addTo(B, w), w;
|
|
4900
4902
|
}
|
|
4901
|
-
function _(
|
|
4903
|
+
function _(B) {
|
|
4902
4904
|
var w = d();
|
|
4903
|
-
return this.subTo(
|
|
4905
|
+
return this.subTo(B, w), w;
|
|
4904
4906
|
}
|
|
4905
|
-
function ae(
|
|
4907
|
+
function ae(B) {
|
|
4906
4908
|
var w = d();
|
|
4907
|
-
return this.multiplyTo(
|
|
4909
|
+
return this.multiplyTo(B, w), w;
|
|
4908
4910
|
}
|
|
4909
|
-
function ge(
|
|
4911
|
+
function ge(B) {
|
|
4910
4912
|
var w = d();
|
|
4911
|
-
return this.divRemTo(
|
|
4913
|
+
return this.divRemTo(B, w, null), w;
|
|
4912
4914
|
}
|
|
4913
|
-
function Ie(
|
|
4915
|
+
function Ie(B) {
|
|
4914
4916
|
var w = d();
|
|
4915
|
-
return this.divRemTo(
|
|
4917
|
+
return this.divRemTo(B, null, w), w;
|
|
4916
4918
|
}
|
|
4917
|
-
function
|
|
4919
|
+
function Fe(B) {
|
|
4918
4920
|
var w = d(), P = d();
|
|
4919
|
-
return this.divRemTo(
|
|
4921
|
+
return this.divRemTo(B, w, P), new Array(w, P);
|
|
4920
4922
|
}
|
|
4921
|
-
function Qe(
|
|
4922
|
-
this.data[this.t] = this.am(0,
|
|
4923
|
+
function Qe(B) {
|
|
4924
|
+
this.data[this.t] = this.am(0, B - 1, this, 0, 0, this.t), ++this.t, this.clamp();
|
|
4923
4925
|
}
|
|
4924
|
-
function Xe(
|
|
4925
|
-
if (
|
|
4926
|
+
function Xe(B, w) {
|
|
4927
|
+
if (B != 0) {
|
|
4926
4928
|
for (; this.t <= w; ) this.data[this.t++] = 0;
|
|
4927
|
-
for (this.data[w] +=
|
|
4929
|
+
for (this.data[w] += B; this.data[w] >= this.DV; )
|
|
4928
4930
|
this.data[w] -= this.DV, ++w >= this.t && (this.data[this.t++] = 0), ++this.data[w];
|
|
4929
4931
|
}
|
|
4930
4932
|
}
|
|
4931
|
-
function
|
|
4933
|
+
function xe() {
|
|
4932
4934
|
}
|
|
4933
|
-
function We(
|
|
4934
|
-
return
|
|
4935
|
+
function We(B) {
|
|
4936
|
+
return B;
|
|
4935
4937
|
}
|
|
4936
|
-
function Ze(
|
|
4937
|
-
|
|
4938
|
+
function Ze(B, w, P) {
|
|
4939
|
+
B.multiplyTo(w, P);
|
|
4938
4940
|
}
|
|
4939
|
-
function _e(
|
|
4940
|
-
|
|
4941
|
+
function _e(B, w) {
|
|
4942
|
+
B.squareTo(w);
|
|
4941
4943
|
}
|
|
4942
|
-
|
|
4943
|
-
function vn(
|
|
4944
|
-
return this.exp(
|
|
4944
|
+
xe.prototype.convert = We, xe.prototype.revert = We, xe.prototype.mulTo = Ze, xe.prototype.sqrTo = _e;
|
|
4945
|
+
function vn(B) {
|
|
4946
|
+
return this.exp(B, new xe());
|
|
4945
4947
|
}
|
|
4946
|
-
function mn(
|
|
4947
|
-
var j = Math.min(this.t +
|
|
4948
|
+
function mn(B, w, P) {
|
|
4949
|
+
var j = Math.min(this.t + B.t, w);
|
|
4948
4950
|
for (P.s = 0, P.t = j; j > 0; ) P.data[--j] = 0;
|
|
4949
4951
|
var W;
|
|
4950
|
-
for (W = P.t - this.t; j < W; ++j) P.data[j + this.t] = this.am(0,
|
|
4951
|
-
for (W = Math.min(
|
|
4952
|
+
for (W = P.t - this.t; j < W; ++j) P.data[j + this.t] = this.am(0, B.data[j], P, j, 0, this.t);
|
|
4953
|
+
for (W = Math.min(B.t, w); j < W; ++j) this.am(0, B.data[j], P, j, 0, w - j);
|
|
4952
4954
|
P.clamp();
|
|
4953
4955
|
}
|
|
4954
|
-
function Cn(
|
|
4956
|
+
function Cn(B, w, P) {
|
|
4955
4957
|
--w;
|
|
4956
|
-
var j = P.t = this.t +
|
|
4958
|
+
var j = P.t = this.t + B.t - w;
|
|
4957
4959
|
for (P.s = 0; --j >= 0; ) P.data[j] = 0;
|
|
4958
|
-
for (j = Math.max(w - this.t, 0); j <
|
|
4959
|
-
P.data[this.t + j - w] = this.am(w - j,
|
|
4960
|
+
for (j = Math.max(w - this.t, 0); j < B.t; ++j)
|
|
4961
|
+
P.data[this.t + j - w] = this.am(w - j, B.data[j], P, 0, 0, this.t + j - w);
|
|
4960
4962
|
P.clamp(), P.drShiftTo(1, P);
|
|
4961
4963
|
}
|
|
4962
|
-
function Mt(
|
|
4963
|
-
this.r2 = d(), this.q3 = d(), a.ONE.dlShiftTo(2 *
|
|
4964
|
+
function Mt(B) {
|
|
4965
|
+
this.r2 = d(), this.q3 = d(), a.ONE.dlShiftTo(2 * B.t, this.r2), this.mu = this.r2.divide(B), this.m = B;
|
|
4964
4966
|
}
|
|
4965
|
-
function En(
|
|
4966
|
-
if (
|
|
4967
|
-
if (
|
|
4967
|
+
function En(B) {
|
|
4968
|
+
if (B.s < 0 || B.t > 2 * this.m.t) return B.mod(this.m);
|
|
4969
|
+
if (B.compareTo(this.m) < 0) return B;
|
|
4968
4970
|
var w = d();
|
|
4969
|
-
return
|
|
4971
|
+
return B.copyTo(w), this.reduce(w), w;
|
|
4970
4972
|
}
|
|
4971
|
-
function Sn(
|
|
4972
|
-
return
|
|
4973
|
+
function Sn(B) {
|
|
4974
|
+
return B;
|
|
4973
4975
|
}
|
|
4974
|
-
function bn(
|
|
4975
|
-
for (
|
|
4976
|
-
for (
|
|
4976
|
+
function bn(B) {
|
|
4977
|
+
for (B.drShiftTo(this.m.t - 1, this.r2), B.t > this.m.t + 1 && (B.t = this.m.t + 1, B.clamp()), this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3), this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2); B.compareTo(this.r2) < 0; ) B.dAddOffset(1, this.m.t + 1);
|
|
4978
|
+
for (B.subTo(this.r2, B); B.compareTo(this.m) >= 0; ) B.subTo(this.m, B);
|
|
4977
4979
|
}
|
|
4978
|
-
function In(
|
|
4979
|
-
|
|
4980
|
+
function In(B, w) {
|
|
4981
|
+
B.squareTo(w), this.reduce(w);
|
|
4980
4982
|
}
|
|
4981
|
-
function An(
|
|
4982
|
-
|
|
4983
|
+
function An(B, w, P) {
|
|
4984
|
+
B.multiplyTo(w, P), this.reduce(P);
|
|
4983
4985
|
}
|
|
4984
4986
|
Mt.prototype.convert = En, Mt.prototype.revert = Sn, Mt.prototype.reduce = bn, Mt.prototype.mulTo = An, Mt.prototype.sqrTo = In;
|
|
4985
|
-
function Bn(
|
|
4986
|
-
var P =
|
|
4987
|
+
function Bn(B, w) {
|
|
4988
|
+
var P = B.bitLength(), j, W = m(1), Z;
|
|
4987
4989
|
if (P <= 0) return W;
|
|
4988
4990
|
P < 18 ? j = 1 : P < 48 ? j = 3 : P < 144 ? j = 4 : P < 768 ? j = 5 : j = 6, P < 8 ? Z = new X(w) : w.isEven() ? Z = new Mt(w) : Z = new Ce(w);
|
|
4989
4991
|
var oe = new Array(), ie = 3, ke = j - 1, $e = (1 << j) - 1;
|
|
@@ -4992,9 +4994,9 @@ function tr() {
|
|
|
4992
4994
|
for (Z.sqrTo(oe[1], ut); ie <= $e; )
|
|
4993
4995
|
oe[ie] = d(), Z.mulTo(ut, oe[ie - 2], oe[ie]), ie += 2;
|
|
4994
4996
|
}
|
|
4995
|
-
var st =
|
|
4996
|
-
for (P = i(
|
|
4997
|
-
for (P >= ke ? bt =
|
|
4997
|
+
var st = B.t - 1, bt, Qt = !0, ht = d(), pt;
|
|
4998
|
+
for (P = i(B.data[st]) - 1; st >= 0; ) {
|
|
4999
|
+
for (P >= ke ? bt = B.data[st] >> P - ke & $e : (bt = (B.data[st] & (1 << P + 1) - 1) << ke - P, st > 0 && (bt |= B.data[st - 1] >> this.DB + P - ke)), ie = j; (bt & 1) == 0; )
|
|
4998
5000
|
bt >>= 1, --ie;
|
|
4999
5001
|
if ((P -= ie) < 0 && (P += this.DB, --st), Qt)
|
|
5000
5002
|
oe[bt].copyTo(W), Qt = !1;
|
|
@@ -5003,13 +5005,13 @@ function tr() {
|
|
|
5003
5005
|
Z.sqrTo(W, ht), Z.sqrTo(ht, W), ie -= 2;
|
|
5004
5006
|
ie > 0 ? Z.sqrTo(W, ht) : (pt = W, W = ht, ht = pt), Z.mulTo(ht, oe[bt], W);
|
|
5005
5007
|
}
|
|
5006
|
-
for (; st >= 0 && (
|
|
5008
|
+
for (; st >= 0 && (B.data[st] & 1 << P) == 0; )
|
|
5007
5009
|
Z.sqrTo(W, ht), pt = W, W = ht, ht = pt, --P < 0 && (P = this.DB - 1, --st);
|
|
5008
5010
|
}
|
|
5009
5011
|
return Z.revert(W);
|
|
5010
5012
|
}
|
|
5011
|
-
function Tn(
|
|
5012
|
-
var w = this.s < 0 ? this.negate() : this.clone(), P =
|
|
5013
|
+
function Tn(B) {
|
|
5014
|
+
var w = this.s < 0 ? this.negate() : this.clone(), P = B.s < 0 ? B.negate() : B.clone();
|
|
5013
5015
|
if (w.compareTo(P) < 0) {
|
|
5014
5016
|
var j = w;
|
|
5015
5017
|
w = P, P = j;
|
|
@@ -5020,32 +5022,32 @@ function tr() {
|
|
|
5020
5022
|
(W = w.getLowestSetBit()) > 0 && w.rShiftTo(W, w), (W = P.getLowestSetBit()) > 0 && P.rShiftTo(W, P), w.compareTo(P) >= 0 ? (w.subTo(P, w), w.rShiftTo(1, w)) : (P.subTo(w, P), P.rShiftTo(1, P));
|
|
5021
5023
|
return Z > 0 && P.lShiftTo(Z, P), P;
|
|
5022
5024
|
}
|
|
5023
|
-
function kn(
|
|
5024
|
-
if (
|
|
5025
|
-
var w = this.DV %
|
|
5025
|
+
function kn(B) {
|
|
5026
|
+
if (B <= 0) return 0;
|
|
5027
|
+
var w = this.DV % B, P = this.s < 0 ? B - 1 : 0;
|
|
5026
5028
|
if (this.t > 0)
|
|
5027
|
-
if (w == 0) P = this.data[0] %
|
|
5028
|
-
else for (var j = this.t - 1; j >= 0; --j) P = (w * P + this.data[j]) %
|
|
5029
|
+
if (w == 0) P = this.data[0] % B;
|
|
5030
|
+
else for (var j = this.t - 1; j >= 0; --j) P = (w * P + this.data[j]) % B;
|
|
5029
5031
|
return P;
|
|
5030
5032
|
}
|
|
5031
|
-
function wn(
|
|
5032
|
-
var w =
|
|
5033
|
-
if (this.isEven() && w ||
|
|
5034
|
-
for (var P =
|
|
5033
|
+
function wn(B) {
|
|
5034
|
+
var w = B.isEven();
|
|
5035
|
+
if (this.isEven() && w || B.signum() == 0) return a.ZERO;
|
|
5036
|
+
for (var P = B.clone(), j = this.clone(), W = m(1), Z = m(0), oe = m(0), ie = m(1); P.signum() != 0; ) {
|
|
5035
5037
|
for (; P.isEven(); )
|
|
5036
|
-
P.rShiftTo(1, P), w ? ((!W.isEven() || !Z.isEven()) && (W.addTo(this, W), Z.subTo(
|
|
5038
|
+
P.rShiftTo(1, P), w ? ((!W.isEven() || !Z.isEven()) && (W.addTo(this, W), Z.subTo(B, Z)), W.rShiftTo(1, W)) : Z.isEven() || Z.subTo(B, Z), Z.rShiftTo(1, Z);
|
|
5037
5039
|
for (; j.isEven(); )
|
|
5038
|
-
j.rShiftTo(1, j), w ? ((!oe.isEven() || !ie.isEven()) && (oe.addTo(this, oe), ie.subTo(
|
|
5040
|
+
j.rShiftTo(1, j), w ? ((!oe.isEven() || !ie.isEven()) && (oe.addTo(this, oe), ie.subTo(B, ie)), oe.rShiftTo(1, oe)) : ie.isEven() || ie.subTo(B, ie), ie.rShiftTo(1, ie);
|
|
5039
5041
|
P.compareTo(j) >= 0 ? (P.subTo(j, P), w && W.subTo(oe, W), Z.subTo(ie, Z)) : (j.subTo(P, j), w && oe.subTo(W, oe), ie.subTo(Z, ie));
|
|
5040
5042
|
}
|
|
5041
5043
|
if (j.compareTo(a.ONE) != 0) return a.ZERO;
|
|
5042
|
-
if (ie.compareTo(
|
|
5043
|
-
if (ie.signum() < 0) ie.addTo(
|
|
5044
|
+
if (ie.compareTo(B) >= 0) return ie.subtract(B);
|
|
5045
|
+
if (ie.signum() < 0) ie.addTo(B, ie);
|
|
5044
5046
|
else return ie;
|
|
5045
|
-
return ie.signum() < 0 ? ie.add(
|
|
5047
|
+
return ie.signum() < 0 ? ie.add(B) : ie;
|
|
5046
5048
|
}
|
|
5047
5049
|
var dt = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509], Nn = (1 << 26) / dt[dt.length - 1];
|
|
5048
|
-
function Rn(
|
|
5050
|
+
function Rn(B) {
|
|
5049
5051
|
var w, P = this.abs();
|
|
5050
5052
|
if (P.t == 1 && P.data[0] <= dt[dt.length - 1]) {
|
|
5051
5053
|
for (w = 0; w < dt.length; ++w)
|
|
@@ -5057,12 +5059,12 @@ function tr() {
|
|
|
5057
5059
|
for (var j = dt[w], W = w + 1; W < dt.length && j < Nn; ) j *= dt[W++];
|
|
5058
5060
|
for (j = P.modInt(j); w < W; ) if (j % dt[w++] == 0) return !1;
|
|
5059
5061
|
}
|
|
5060
|
-
return P.millerRabin(
|
|
5062
|
+
return P.millerRabin(B);
|
|
5061
5063
|
}
|
|
5062
|
-
function Ln(
|
|
5064
|
+
function Ln(B) {
|
|
5063
5065
|
var w = this.subtract(a.ONE), P = w.getLowestSetBit();
|
|
5064
5066
|
if (P <= 0) return !1;
|
|
5065
|
-
for (var j = w.shiftRight(P), W = Un(), Z, oe = 0; oe <
|
|
5067
|
+
for (var j = w.shiftRight(P), W = Un(), Z, oe = 0; oe < B; ++oe) {
|
|
5066
5068
|
do
|
|
5067
5069
|
Z = new a(this.bitLength(), W);
|
|
5068
5070
|
while (Z.compareTo(a.ONE) <= 0 || Z.compareTo(w) >= 0);
|
|
@@ -5078,13 +5080,13 @@ function tr() {
|
|
|
5078
5080
|
function Un() {
|
|
5079
5081
|
return {
|
|
5080
5082
|
// x is an array to fill with bytes
|
|
5081
|
-
nextBytes: function(
|
|
5082
|
-
for (var w = 0; w <
|
|
5083
|
-
|
|
5083
|
+
nextBytes: function(B) {
|
|
5084
|
+
for (var w = 0; w < B.length; ++w)
|
|
5085
|
+
B[w] = Math.floor(Math.random() * 256);
|
|
5084
5086
|
}
|
|
5085
5087
|
};
|
|
5086
5088
|
}
|
|
5087
|
-
return a.prototype.chunkSize = le, a.prototype.toRadix = te, a.prototype.fromRadix = he, a.prototype.fromNumber = ye, a.prototype.bitwiseTo = Le, a.prototype.changeBit = Kt, a.prototype.addTo = qe, a.prototype.dMultiply = Qe, a.prototype.dAddOffset = Xe, a.prototype.multiplyLowerTo = mn, a.prototype.multiplyUpperTo = Cn, a.prototype.modInt = kn, a.prototype.millerRabin = Ln, a.prototype.clone = G, a.prototype.intValue = M, a.prototype.byteValue = J, a.prototype.shortValue = se, a.prototype.signum = z, a.prototype.toByteArray = pe, a.prototype.equals = Be, a.prototype.min = De, a.prototype.max = Ve, a.prototype.and = Re, a.prototype.or = He, a.prototype.xor = et, a.prototype.andNot = rt, a.prototype.not = nt, a.prototype.shiftLeft = it, a.prototype.shiftRight = ot, a.prototype.getLowestSetBit = lt, a.prototype.bitCount = St, a.prototype.testBit = Ut, a.prototype.setBit =
|
|
5089
|
+
return a.prototype.chunkSize = le, a.prototype.toRadix = te, a.prototype.fromRadix = he, a.prototype.fromNumber = ye, a.prototype.bitwiseTo = Le, a.prototype.changeBit = Kt, a.prototype.addTo = qe, a.prototype.dMultiply = Qe, a.prototype.dAddOffset = Xe, a.prototype.multiplyLowerTo = mn, a.prototype.multiplyUpperTo = Cn, a.prototype.modInt = kn, a.prototype.millerRabin = Ln, a.prototype.clone = G, a.prototype.intValue = M, a.prototype.byteValue = J, a.prototype.shortValue = se, a.prototype.signum = z, a.prototype.toByteArray = pe, a.prototype.equals = Be, a.prototype.min = De, a.prototype.max = Ve, a.prototype.and = Re, a.prototype.or = He, a.prototype.xor = et, a.prototype.andNot = rt, a.prototype.not = nt, a.prototype.shiftLeft = it, a.prototype.shiftRight = ot, a.prototype.getLowestSetBit = lt, a.prototype.bitCount = St, a.prototype.testBit = Ut, a.prototype.setBit = Me, a.prototype.clearBit = je, a.prototype.flipBit = ze, a.prototype.add = Q, a.prototype.subtract = _, a.prototype.multiply = ae, a.prototype.divide = ge, a.prototype.remainder = Ie, a.prototype.divideAndRemainder = Fe, a.prototype.modPow = Bn, a.prototype.modInverse = wn, a.prototype.pow = vn, a.prototype.gcd = Tn, a.prototype.isProbablePrime = Rn, Ar;
|
|
5088
5090
|
}
|
|
5089
5091
|
var Br = { exports: {} }, Tr = { exports: {} }, Aa;
|
|
5090
5092
|
function qt() {
|
|
@@ -5208,8 +5210,8 @@ function on() {
|
|
|
5208
5210
|
for (var L = r.digest().getBytes(), E = b.charAt(0), l = b.substring(1, r.digestLength + 1), y = b.substring(1 + r.digestLength), C = a(y, r.digestLength, g), m = t.util.xorBytes(l, C, l.length), s = a(m, u - r.digestLength - 1, g), p = t.util.xorBytes(y, s, y.length), v = p.substring(0, r.digestLength), I = E !== "\0", T = 0; T < r.digestLength; ++T)
|
|
5209
5211
|
I |= L.charAt(T) !== v.charAt(T);
|
|
5210
5212
|
for (var R = 1, h = r.digestLength, i = r.digestLength; i < p.length; i++) {
|
|
5211
|
-
var n = p.charCodeAt(i),
|
|
5212
|
-
I |= n & V, R = R &
|
|
5213
|
+
var n = p.charCodeAt(i), A = n & 1 ^ 1, V = R ? 65534 : 0;
|
|
5214
|
+
I |= n & V, R = R & A, h += R;
|
|
5213
5215
|
}
|
|
5214
5216
|
if (I || p.charCodeAt(h) !== 1)
|
|
5215
5217
|
throw new Error("Invalid RSAES-OAEP padding.");
|
|
@@ -5294,9 +5296,9 @@ function ln() {
|
|
|
5294
5296
|
for (var h = [], i = 0; i < s; ++i)
|
|
5295
5297
|
h[i] = new Worker(T);
|
|
5296
5298
|
for (var i = 0; i < s; ++i)
|
|
5297
|
-
h[i].addEventListener("message",
|
|
5299
|
+
h[i].addEventListener("message", A);
|
|
5298
5300
|
var n = !1;
|
|
5299
|
-
function
|
|
5301
|
+
function A(V) {
|
|
5300
5302
|
if (!n) {
|
|
5301
5303
|
var x = V.data;
|
|
5302
5304
|
if (x.found) {
|
|
@@ -5530,8 +5532,8 @@ function rr() {
|
|
|
5530
5532
|
if (i.algorithm in S.oids)
|
|
5531
5533
|
n = S.oids[i.algorithm];
|
|
5532
5534
|
else {
|
|
5533
|
-
var
|
|
5534
|
-
throw
|
|
5535
|
+
var A = new Error("Unknown message digest algorithm.");
|
|
5536
|
+
throw A.algorithm = i.algorithm, A;
|
|
5535
5537
|
}
|
|
5536
5538
|
var V = d.oidToDer(n).getBytes(), x = d.create(
|
|
5537
5539
|
d.Class.UNIVERSAL,
|
|
@@ -5562,8 +5564,8 @@ function rr() {
|
|
|
5562
5564
|
i.digest().getBytes()
|
|
5563
5565
|
);
|
|
5564
5566
|
return x.value.push(D), x.value.push(O), d.toDer(x).getBytes();
|
|
5565
|
-
}, l = function(i, n,
|
|
5566
|
-
if (
|
|
5567
|
+
}, l = function(i, n, A) {
|
|
5568
|
+
if (A)
|
|
5567
5569
|
return i.modPow(n.e, n.n);
|
|
5568
5570
|
if (!n.p || !n.q)
|
|
5569
5571
|
return i.modPow(n.d, n.n);
|
|
@@ -5581,13 +5583,13 @@ function rr() {
|
|
|
5581
5583
|
var O = x.subtract(D).multiply(n.qInv).mod(n.p).multiply(n.q).add(D);
|
|
5582
5584
|
return O = O.multiply(V.modInverse(n.n)).mod(n.n), O;
|
|
5583
5585
|
};
|
|
5584
|
-
S.rsa.encrypt = function(i, n,
|
|
5585
|
-
var V =
|
|
5586
|
-
|
|
5586
|
+
S.rsa.encrypt = function(i, n, A) {
|
|
5587
|
+
var V = A, x, D = Math.ceil(n.n.bitLength() / 8);
|
|
5588
|
+
A !== !1 && A !== !0 ? (V = A === 2, x = y(i, n, A)) : (x = t.util.createBuffer(), x.putBytes(i));
|
|
5587
5589
|
for (var O = new e(x.toHex(), 16), K = l(O, n, V), F = K.toString(16), q = t.util.createBuffer(), H = D - Math.ceil(F.length / 2); H > 0; )
|
|
5588
5590
|
q.putByte(0), --H;
|
|
5589
5591
|
return q.putBytes(t.util.hexToBytes(F)), q.getBytes();
|
|
5590
|
-
}, S.rsa.decrypt = function(i, n,
|
|
5592
|
+
}, S.rsa.decrypt = function(i, n, A, V) {
|
|
5591
5593
|
var x = Math.ceil(n.n.bitLength() / 8);
|
|
5592
5594
|
if (i.length !== x) {
|
|
5593
5595
|
var D = new Error("Encrypted message length is invalid.");
|
|
@@ -5596,18 +5598,18 @@ function rr() {
|
|
|
5596
5598
|
var O = new e(t.util.createBuffer(i).toHex(), 16);
|
|
5597
5599
|
if (O.compareTo(n.n) >= 0)
|
|
5598
5600
|
throw new Error("Encrypted message is invalid.");
|
|
5599
|
-
for (var K = l(O, n,
|
|
5601
|
+
for (var K = l(O, n, A), F = K.toString(16), q = t.util.createBuffer(), H = x - Math.ceil(F.length / 2); H > 0; )
|
|
5600
5602
|
q.putByte(0), --H;
|
|
5601
|
-
return q.putBytes(t.util.hexToBytes(F)), V !== !1 ? C(q.getBytes(), n,
|
|
5602
|
-
}, S.rsa.createKeyPairGenerationState = function(i, n,
|
|
5603
|
-
typeof i == "string" && (i = parseInt(i, 10)), i = i || 2048,
|
|
5604
|
-
var V =
|
|
5603
|
+
return q.putBytes(t.util.hexToBytes(F)), V !== !1 ? C(q.getBytes(), n, A) : q.getBytes();
|
|
5604
|
+
}, S.rsa.createKeyPairGenerationState = function(i, n, A) {
|
|
5605
|
+
typeof i == "string" && (i = parseInt(i, 10)), i = i || 2048, A = A || {};
|
|
5606
|
+
var V = A.prng || t.random, x = {
|
|
5605
5607
|
// x is an array to fill with bytes
|
|
5606
5608
|
nextBytes: function(K) {
|
|
5607
5609
|
for (var F = V.getBytesSync(K.length), q = 0; q < K.length; ++q)
|
|
5608
5610
|
K[q] = F.charCodeAt(q);
|
|
5609
5611
|
}
|
|
5610
|
-
}, D =
|
|
5612
|
+
}, D = A.algorithm || "PRIMEINC", O;
|
|
5611
5613
|
if (D === "PRIMEINC")
|
|
5612
5614
|
O = {
|
|
5613
5615
|
algorithm: D,
|
|
@@ -5629,8 +5631,8 @@ function rr() {
|
|
|
5629
5631
|
return O;
|
|
5630
5632
|
}, S.rsa.stepKeyPairGenerationState = function(i, n) {
|
|
5631
5633
|
"algorithm" in i || (i.algorithm = "PRIMEINC");
|
|
5632
|
-
var
|
|
5633
|
-
|
|
5634
|
+
var A = new e(null);
|
|
5635
|
+
A.fromInt(30);
|
|
5634
5636
|
for (var V = 0, x = function(X, $) {
|
|
5635
5637
|
return X | $;
|
|
5636
5638
|
}, D = +/* @__PURE__ */ new Date(), O, K = 0; i.keys === null && (n <= 0 || K < n); ) {
|
|
@@ -5640,7 +5642,7 @@ function rr() {
|
|
|
5640
5642
|
e.ONE.shiftLeft(q),
|
|
5641
5643
|
x,
|
|
5642
5644
|
i.num
|
|
5643
|
-
), i.num.dAddOffset(31 - i.num.mod(
|
|
5645
|
+
), i.num.dAddOffset(31 - i.num.mod(A).byteValue(), 0), V = 0, ++i.pqState) : i.pqState === 1 ? i.num.bitLength() > F ? i.pqState = 0 : i.num.isProbablePrime(
|
|
5644
5646
|
p(i.num.bitLength())
|
|
5645
5647
|
) ? ++i.pqState : i.num.dAddOffset(c[V++ % 8], 0) : i.pqState === 2 ? i.pqState = i.num.subtract(e.ONE).gcd(i.e).compareTo(e.ONE) === 0 ? 3 : 0 : i.pqState === 3 && (i.pqState = 0, i.p === null ? i.p = i.num : i.q = i.num, i.p !== null && i.q !== null && ++i.state, i.num = null);
|
|
5646
5648
|
} else if (i.state === 1)
|
|
@@ -5670,8 +5672,8 @@ function rr() {
|
|
|
5670
5672
|
O = +/* @__PURE__ */ new Date(), K += O - D, D = O;
|
|
5671
5673
|
}
|
|
5672
5674
|
return i.keys !== null;
|
|
5673
|
-
}, S.rsa.generateKeyPair = function(i, n,
|
|
5674
|
-
if (arguments.length === 1 ? typeof i == "object" ? (
|
|
5675
|
+
}, S.rsa.generateKeyPair = function(i, n, A, V) {
|
|
5676
|
+
if (arguments.length === 1 ? typeof i == "object" ? (A = i, i = void 0) : typeof i == "function" && (V = i, i = void 0) : arguments.length === 2 ? typeof i == "number" ? typeof n == "function" ? (V = n, n = void 0) : typeof n != "number" && (A = n, n = void 0) : (A = i, V = n, i = void 0, n = void 0) : arguments.length === 3 && (typeof n == "number" ? typeof A == "function" && (V = A, A = void 0) : (V = A, A = n, n = void 0)), A = A || {}, i === void 0 && (i = A.bits || 2048), n === void 0 && (n = A.e || 65537), !t.options.usePureJavaScript && !A.prng && i >= 256 && i <= 16384 && (n === 65537 || n === 3)) {
|
|
5675
5677
|
if (V) {
|
|
5676
5678
|
if (v("generateKeyPair"))
|
|
5677
5679
|
return a.generateKeyPair("rsa", {
|
|
@@ -5764,16 +5766,16 @@ function rr() {
|
|
|
5764
5766
|
};
|
|
5765
5767
|
}
|
|
5766
5768
|
}
|
|
5767
|
-
var O = S.rsa.createKeyPairGenerationState(i, n,
|
|
5769
|
+
var O = S.rsa.createKeyPairGenerationState(i, n, A);
|
|
5768
5770
|
if (!V)
|
|
5769
5771
|
return S.rsa.stepKeyPairGenerationState(O, 0), O.keys;
|
|
5770
|
-
m(O,
|
|
5772
|
+
m(O, A, V);
|
|
5771
5773
|
}, S.setRsaPublicKey = S.rsa.setPublicKey = function(i, n) {
|
|
5772
|
-
var
|
|
5774
|
+
var A = {
|
|
5773
5775
|
n: i,
|
|
5774
5776
|
e: n
|
|
5775
5777
|
};
|
|
5776
|
-
return
|
|
5778
|
+
return A.encrypt = function(V, x, D) {
|
|
5777
5779
|
if (typeof x == "string" ? x = x.toUpperCase() : x === void 0 && (x = "RSAES-PKCS1-V1_5"), x === "RSAES-PKCS1-V1_5")
|
|
5778
5780
|
x = {
|
|
5779
5781
|
encode: function(K, F, q) {
|
|
@@ -5792,14 +5794,14 @@ function rr() {
|
|
|
5792
5794
|
} };
|
|
5793
5795
|
else if (typeof x == "string")
|
|
5794
5796
|
throw new Error('Unsupported encryption scheme: "' + x + '".');
|
|
5795
|
-
var O = x.encode(V,
|
|
5796
|
-
return S.rsa.encrypt(O,
|
|
5797
|
-
},
|
|
5797
|
+
var O = x.encode(V, A, !0);
|
|
5798
|
+
return S.rsa.encrypt(O, A, !0);
|
|
5799
|
+
}, A.verify = function(V, x, D, O) {
|
|
5798
5800
|
typeof D == "string" ? D = D.toUpperCase() : D === void 0 && (D = "RSASSA-PKCS1-V1_5"), O === void 0 && (O = {
|
|
5799
5801
|
_parseAllDigestBytes: !0
|
|
5800
5802
|
}), "_parseAllDigestBytes" in O || (O._parseAllDigestBytes = !0), D === "RSASSA-PKCS1-V1_5" ? D = {
|
|
5801
5803
|
verify: function(F, q) {
|
|
5802
|
-
q = C(q,
|
|
5804
|
+
q = C(q, A, !0);
|
|
5803
5805
|
var H = d.fromDer(q, {
|
|
5804
5806
|
parseAllBytes: O._parseAllDigestBytes
|
|
5805
5807
|
}), X = {}, $ = [];
|
|
@@ -5824,17 +5826,17 @@ function rr() {
|
|
|
5824
5826
|
}
|
|
5825
5827
|
} : (D === "NONE" || D === "NULL" || D === null) && (D = {
|
|
5826
5828
|
verify: function(F, q) {
|
|
5827
|
-
return q = C(q,
|
|
5829
|
+
return q = C(q, A, !0), F === q;
|
|
5828
5830
|
}
|
|
5829
5831
|
});
|
|
5830
|
-
var K = S.rsa.decrypt(x,
|
|
5831
|
-
return D.verify(V, K,
|
|
5832
|
-
},
|
|
5833
|
-
}, S.setRsaPrivateKey = S.rsa.setPrivateKey = function(i, n,
|
|
5832
|
+
var K = S.rsa.decrypt(x, A, !0, !1);
|
|
5833
|
+
return D.verify(V, K, A.n.bitLength());
|
|
5834
|
+
}, A;
|
|
5835
|
+
}, S.setRsaPrivateKey = S.rsa.setPrivateKey = function(i, n, A, V, x, D, O, K) {
|
|
5834
5836
|
var F = {
|
|
5835
5837
|
n: i,
|
|
5836
5838
|
e: n,
|
|
5837
|
-
d:
|
|
5839
|
+
d: A,
|
|
5838
5840
|
p: V,
|
|
5839
5841
|
q: x,
|
|
5840
5842
|
dP: D,
|
|
@@ -5895,10 +5897,10 @@ function rr() {
|
|
|
5895
5897
|
)
|
|
5896
5898
|
]);
|
|
5897
5899
|
}, S.privateKeyFromAsn1 = function(i) {
|
|
5898
|
-
var n = {},
|
|
5899
|
-
if (d.validate(i, r, n,
|
|
5900
|
+
var n = {}, A = [];
|
|
5901
|
+
if (d.validate(i, r, n, A) && (i = d.fromDer(t.util.createBuffer(n.privateKey))), n = {}, A = [], !d.validate(i, g, n, A)) {
|
|
5900
5902
|
var V = new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");
|
|
5901
|
-
throw V.errors =
|
|
5903
|
+
throw V.errors = A, V;
|
|
5902
5904
|
}
|
|
5903
5905
|
var x, D, O, K, F, q, H, X;
|
|
5904
5906
|
return x = t.util.createBuffer(n.privateKeyModulus).toHex(), D = t.util.createBuffer(n.privateKeyPublicExponent).toHex(), O = t.util.createBuffer(n.privateKeyPrivateExponent).toHex(), K = t.util.createBuffer(n.privateKeyPrime1).toHex(), F = t.util.createBuffer(n.privateKeyPrime2).toHex(), q = t.util.createBuffer(n.privateKeyExponent1).toHex(), H = t.util.createBuffer(n.privateKeyExponent2).toHex(), X = t.util.createBuffer(n.privateKeyCoefficient).toHex(), S.setRsaPrivateKey(
|
|
@@ -5978,8 +5980,8 @@ function rr() {
|
|
|
5978
5980
|
)
|
|
5979
5981
|
]);
|
|
5980
5982
|
}, S.publicKeyFromAsn1 = function(i) {
|
|
5981
|
-
var n = {},
|
|
5982
|
-
if (d.validate(i, I, n,
|
|
5983
|
+
var n = {}, A = [];
|
|
5984
|
+
if (d.validate(i, I, n, A)) {
|
|
5983
5985
|
var V = d.derToOid(n.publicKeyOid);
|
|
5984
5986
|
if (V !== S.oids.rsaEncryption) {
|
|
5985
5987
|
var x = new Error("Cannot read public key. Unknown OID.");
|
|
@@ -5987,9 +5989,9 @@ function rr() {
|
|
|
5987
5989
|
}
|
|
5988
5990
|
i = n.rsaPublicKey;
|
|
5989
5991
|
}
|
|
5990
|
-
if (
|
|
5992
|
+
if (A = [], !d.validate(i, u, n, A)) {
|
|
5991
5993
|
var x = new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");
|
|
5992
|
-
throw x.errors =
|
|
5994
|
+
throw x.errors = A, x;
|
|
5993
5995
|
}
|
|
5994
5996
|
var D = t.util.createBuffer(n.publicKeyModulus).toHex(), O = t.util.createBuffer(n.publicKeyExponent).toHex();
|
|
5995
5997
|
return S.setRsaPublicKey(
|
|
@@ -6033,16 +6035,16 @@ function rr() {
|
|
|
6033
6035
|
)
|
|
6034
6036
|
]);
|
|
6035
6037
|
};
|
|
6036
|
-
function y(i, n,
|
|
6038
|
+
function y(i, n, A) {
|
|
6037
6039
|
var V = t.util.createBuffer(), x = Math.ceil(n.n.bitLength() / 8);
|
|
6038
6040
|
if (i.length > x - 11) {
|
|
6039
6041
|
var D = new Error("Message is too long for PKCS#1 v1.5 padding.");
|
|
6040
6042
|
throw D.length = i.length, D.max = x - 11, D;
|
|
6041
6043
|
}
|
|
6042
|
-
V.putByte(0), V.putByte(
|
|
6044
|
+
V.putByte(0), V.putByte(A);
|
|
6043
6045
|
var O = x - 3 - i.length, K;
|
|
6044
|
-
if (
|
|
6045
|
-
K =
|
|
6046
|
+
if (A === 0 || A === 1) {
|
|
6047
|
+
K = A === 0 ? 0 : 255;
|
|
6046
6048
|
for (var F = 0; F < O; ++F)
|
|
6047
6049
|
V.putByte(K);
|
|
6048
6050
|
} else
|
|
@@ -6053,9 +6055,9 @@ function rr() {
|
|
|
6053
6055
|
}
|
|
6054
6056
|
return V.putByte(0), V.putBytes(i), V;
|
|
6055
6057
|
}
|
|
6056
|
-
function C(i, n,
|
|
6058
|
+
function C(i, n, A, V) {
|
|
6057
6059
|
var x = Math.ceil(n.n.bitLength() / 8), D = t.util.createBuffer(i), O = D.getByte(), K = D.getByte();
|
|
6058
|
-
if (O !== 0 ||
|
|
6060
|
+
if (O !== 0 || A && K !== 0 && K !== 1 || !A && K != 2 || A && K === 0 && typeof V > "u")
|
|
6059
6061
|
throw new Error("Encryption block is invalid.");
|
|
6060
6062
|
var F = 0;
|
|
6061
6063
|
if (K === 0) {
|
|
@@ -6084,8 +6086,8 @@ function rr() {
|
|
|
6084
6086
|
throw new Error("Encryption block is invalid.");
|
|
6085
6087
|
return D.getBytes();
|
|
6086
6088
|
}
|
|
6087
|
-
function m(i, n,
|
|
6088
|
-
typeof n == "function" && (
|
|
6089
|
+
function m(i, n, A) {
|
|
6090
|
+
typeof n == "function" && (A = n, n = {}), n = n || {};
|
|
6089
6091
|
var V = {
|
|
6090
6092
|
algorithm: {
|
|
6091
6093
|
name: n.algorithm || "PRIMEINC",
|
|
@@ -6100,7 +6102,7 @@ function rr() {
|
|
|
6100
6102
|
function x() {
|
|
6101
6103
|
D(i.pBits, function(K, F) {
|
|
6102
6104
|
if (K)
|
|
6103
|
-
return
|
|
6105
|
+
return A(K);
|
|
6104
6106
|
if (i.p = F, i.q !== null)
|
|
6105
6107
|
return O(K, i.q);
|
|
6106
6108
|
D(i.qBits, O);
|
|
@@ -6111,7 +6113,7 @@ function rr() {
|
|
|
6111
6113
|
}
|
|
6112
6114
|
function O(K, F) {
|
|
6113
6115
|
if (K)
|
|
6114
|
-
return
|
|
6116
|
+
return A(K);
|
|
6115
6117
|
if (i.q = F, i.p.compareTo(i.q) < 0) {
|
|
6116
6118
|
var q = i.p;
|
|
6117
6119
|
i.p = i.q, i.q = q;
|
|
@@ -6145,16 +6147,16 @@ function rr() {
|
|
|
6145
6147
|
i.q.modInverse(i.p)
|
|
6146
6148
|
),
|
|
6147
6149
|
publicKey: S.rsa.setPublicKey(i.n, i.e)
|
|
6148
|
-
},
|
|
6150
|
+
}, A(null, i.keys);
|
|
6149
6151
|
}
|
|
6150
6152
|
}
|
|
6151
6153
|
function s(i) {
|
|
6152
6154
|
var n = i.toString(16);
|
|
6153
6155
|
n[0] >= "8" && (n = "00" + n);
|
|
6154
|
-
var
|
|
6155
|
-
return
|
|
6156
|
-
(
|
|
6157
|
-
|
|
6156
|
+
var A = t.util.hexToBytes(n);
|
|
6157
|
+
return A.length > 1 && // leading 0x00 for positive integer
|
|
6158
|
+
(A.charCodeAt(0) === 0 && (A.charCodeAt(1) & 128) === 0 || // leading 0xFF for negative integer
|
|
6159
|
+
A.charCodeAt(0) === 255 && (A.charCodeAt(1) & 128) === 128) ? A.substr(1) : A;
|
|
6158
6160
|
}
|
|
6159
6161
|
function p(i) {
|
|
6160
6162
|
return i <= 100 ? 27 : i <= 150 ? 18 : i <= 200 ? 15 : i <= 250 ? 12 : i <= 300 ? 9 : i <= 350 ? 8 : i <= 400 ? 7 : i <= 500 ? 6 : i <= 600 ? 5 : i <= 800 ? 4 : i <= 1250 ? 3 : 2;
|
|
@@ -6169,9 +6171,9 @@ function rr() {
|
|
|
6169
6171
|
return typeof b.globalScope < "u" && typeof b.globalScope.msCrypto == "object" && typeof b.globalScope.msCrypto.subtle == "object" && typeof b.globalScope.msCrypto.subtle[i] == "function";
|
|
6170
6172
|
}
|
|
6171
6173
|
function h(i) {
|
|
6172
|
-
for (var n = t.util.hexToBytes(i.toString(16)),
|
|
6173
|
-
|
|
6174
|
-
return
|
|
6174
|
+
for (var n = t.util.hexToBytes(i.toString(16)), A = new Uint8Array(n.length), V = 0; V < n.length; ++V)
|
|
6175
|
+
A[V] = n.charCodeAt(V);
|
|
6176
|
+
return A;
|
|
6175
6177
|
}
|
|
6176
6178
|
return kr;
|
|
6177
6179
|
}
|
|
@@ -6331,9 +6333,9 @@ function un() {
|
|
|
6331
6333
|
var n = new Error("Cannot encrypt private key. Unknown encryption algorithm.");
|
|
6332
6334
|
throw n.algorithm = y.algorithm, n;
|
|
6333
6335
|
}
|
|
6334
|
-
var
|
|
6336
|
+
var A = "hmacWith" + y.prfAlgorithm.toUpperCase(), V = I(A), x = t.pkcs5.pbkdf2(l, C, m, p, V), D = t.random.getBytesSync(R), O = i(x);
|
|
6335
6337
|
O.start(D), O.update(a.toDer(E)), O.finish(), T = O.output.getBytes();
|
|
6336
|
-
var K = L(C, s, p,
|
|
6338
|
+
var K = L(C, s, p, A);
|
|
6337
6339
|
v = a.create(
|
|
6338
6340
|
a.Class.UNIVERSAL,
|
|
6339
6341
|
a.Type.SEQUENCE,
|
|
@@ -6548,11 +6550,11 @@ function un() {
|
|
|
6548
6550
|
i.putInt16(E.charCodeAt(v));
|
|
6549
6551
|
i.putInt16(0);
|
|
6550
6552
|
}
|
|
6551
|
-
var n = i.length(),
|
|
6553
|
+
var n = i.length(), A = l.length(), V = new t.util.ByteBuffer();
|
|
6552
6554
|
V.fillWithByte(y, R);
|
|
6553
|
-
var x = R * Math.ceil(
|
|
6555
|
+
var x = R * Math.ceil(A / R), D = new t.util.ByteBuffer();
|
|
6554
6556
|
for (v = 0; v < x; v++)
|
|
6555
|
-
D.putByte(l.at(v %
|
|
6557
|
+
D.putByte(l.at(v % A));
|
|
6556
6558
|
var O = R * Math.ceil(n / R), K = new t.util.ByteBuffer();
|
|
6557
6559
|
for (v = 0; v < O; v++)
|
|
6558
6560
|
K.putByte(i.at(v % n));
|
|
@@ -6566,7 +6568,7 @@ function un() {
|
|
|
6566
6568
|
var ne = new t.util.ByteBuffer();
|
|
6567
6569
|
for (v = 0; v < R; v++)
|
|
6568
6570
|
ne.putByte(X.at(v % T));
|
|
6569
|
-
var ce = Math.ceil(
|
|
6571
|
+
var ce = Math.ceil(A / R) + Math.ceil(n / R), de = new t.util.ByteBuffer();
|
|
6570
6572
|
for (p = 0; p < ce; p++) {
|
|
6571
6573
|
var be = new t.util.ByteBuffer(F.getBytes(R)), ee = 511;
|
|
6572
6574
|
for (v = ne.length() - 1; v >= 0; v--)
|
|
@@ -6631,8 +6633,8 @@ function un() {
|
|
|
6631
6633
|
T = 8, R = t.des.createDecryptionCipher;
|
|
6632
6634
|
break;
|
|
6633
6635
|
}
|
|
6634
|
-
var h = u(C.prfOid), i = t.pkcs5.pbkdf2(y, p, v, T, h), n = C.encIv,
|
|
6635
|
-
return
|
|
6636
|
+
var h = u(C.prfOid), i = t.pkcs5.pbkdf2(y, p, v, T, h), n = C.encIv, A = R(i);
|
|
6637
|
+
return A.start(n), A;
|
|
6636
6638
|
}, d.pbe.getCipherForPKCS12PBE = function(E, l, y) {
|
|
6637
6639
|
var C = {}, m = [];
|
|
6638
6640
|
if (!a.validate(l, r, C, m)) {
|
|
@@ -6658,8 +6660,8 @@ function un() {
|
|
|
6658
6660
|
}
|
|
6659
6661
|
var i = u(C.prfOid), n = d.pbe.generatePkcs12Key(y, p, 1, v, T, i);
|
|
6660
6662
|
i.start();
|
|
6661
|
-
var
|
|
6662
|
-
return h(n,
|
|
6663
|
+
var A = d.pbe.generatePkcs12Key(y, p, 2, v, R, i);
|
|
6664
|
+
return h(n, A);
|
|
6663
6665
|
}, d.pbe.opensslDeriveBytes = function(E, l, y, C) {
|
|
6664
6666
|
if (typeof C > "u" || C === null) {
|
|
6665
6667
|
if (!("md5" in t.md))
|
|
@@ -7146,8 +7148,8 @@ function Zr() {
|
|
|
7146
7148
|
throw new Error("Inconsistent PSS signature, 0x01 marker not found");
|
|
7147
7149
|
var i = R.substr(-r), n = new t.util.ByteBuffer();
|
|
7148
7150
|
n.fillWithByte(0, 8), n.putBytes(I), n.putBytes(i), d.start(), d.update(n.getBytes());
|
|
7149
|
-
var
|
|
7150
|
-
return p ===
|
|
7151
|
+
var A = d.digest().getBytes();
|
|
7152
|
+
return p === A;
|
|
7151
7153
|
}, u;
|
|
7152
7154
|
}, Vr.exports;
|
|
7153
7155
|
}
|
|
@@ -7510,15 +7512,15 @@ function _r() {
|
|
|
7510
7512
|
]
|
|
7511
7513
|
};
|
|
7512
7514
|
a.RDNAttributesAsArray = function(h, i) {
|
|
7513
|
-
for (var n = [],
|
|
7514
|
-
|
|
7515
|
-
for (var O = 0; O <
|
|
7516
|
-
x = {}, V =
|
|
7515
|
+
for (var n = [], A, V, x, D = 0; D < h.value.length; ++D) {
|
|
7516
|
+
A = h.value[D];
|
|
7517
|
+
for (var O = 0; O < A.value.length; ++O)
|
|
7518
|
+
x = {}, V = A.value[O], x.type = e.derToOid(V.value[0].value), x.value = V.value[1].value, x.valueTagClass = V.value[1].type, x.type in d && (x.name = d[x.type], x.name in b && (x.shortName = b[x.name])), i && (i.update(x.type), i.update(x.value)), n.push(x);
|
|
7517
7519
|
}
|
|
7518
7520
|
return n;
|
|
7519
7521
|
}, a.CRIAttributesAsArray = function(h) {
|
|
7520
7522
|
for (var i = [], n = 0; n < h.length; ++n)
|
|
7521
|
-
for (var
|
|
7523
|
+
for (var A = h[n], V = e.derToOid(A.value[0].value), x = A.value[1].value, D = 0; D < x.length; ++D) {
|
|
7522
7524
|
var O = {};
|
|
7523
7525
|
if (O.type = V, O.value = x[D].value, O.valueTagClass = x[D].type, O.type in d && (O.name = d[O.type], O.name in b && (O.shortName = b[O.name])), O.type === d.extensionRequest) {
|
|
7524
7526
|
O.extensions = [];
|
|
@@ -7531,15 +7533,15 @@ function _r() {
|
|
|
7531
7533
|
};
|
|
7532
7534
|
function I(h, i) {
|
|
7533
7535
|
typeof i == "string" && (i = { shortName: i });
|
|
7534
|
-
for (var n = null,
|
|
7535
|
-
|
|
7536
|
+
for (var n = null, A, V = 0; n === null && V < h.attributes.length; ++V)
|
|
7537
|
+
A = h.attributes[V], (i.type && i.type === A.type || i.name && i.name === A.name || i.shortName && i.shortName === A.shortName) && (n = A);
|
|
7536
7538
|
return n;
|
|
7537
7539
|
}
|
|
7538
7540
|
var L = function(h, i, n) {
|
|
7539
|
-
var
|
|
7541
|
+
var A = {};
|
|
7540
7542
|
if (h !== d["RSASSA-PSS"])
|
|
7541
|
-
return
|
|
7542
|
-
n && (
|
|
7543
|
+
return A;
|
|
7544
|
+
n && (A = {
|
|
7543
7545
|
hash: {
|
|
7544
7546
|
algorithmOid: d.sha1
|
|
7545
7547
|
},
|
|
@@ -7556,7 +7558,7 @@ function _r() {
|
|
|
7556
7558
|
var D = new Error("Cannot read RSASSA-PSS parameter block.");
|
|
7557
7559
|
throw D.errors = x, D;
|
|
7558
7560
|
}
|
|
7559
|
-
return V.hashOid !== void 0 && (
|
|
7561
|
+
return V.hashOid !== void 0 && (A.hash = A.hash || {}, A.hash.algorithmOid = e.derToOid(V.hashOid)), V.maskGenOid !== void 0 && (A.mgf = A.mgf || {}, A.mgf.algorithmOid = e.derToOid(V.maskGenOid), A.mgf.hash = A.mgf.hash || {}, A.mgf.hash.algorithmOid = e.derToOid(V.maskGenHashOid)), V.saltLength !== void 0 && (A.saltLength = V.saltLength.charCodeAt(0)), A;
|
|
7560
7562
|
}, E = function(h) {
|
|
7561
7563
|
switch (d[h.signatureOid]) {
|
|
7562
7564
|
case "sha1WithRSAEncryption":
|
|
@@ -7587,21 +7589,21 @@ function _r() {
|
|
|
7587
7589
|
case d.sha1WithRSASignature:
|
|
7588
7590
|
break;
|
|
7589
7591
|
case d["RSASSA-PSS"]:
|
|
7590
|
-
var
|
|
7591
|
-
if (
|
|
7592
|
+
var A, V;
|
|
7593
|
+
if (A = d[i.signatureParameters.mgf.hash.algorithmOid], A === void 0 || t.md[A] === void 0) {
|
|
7592
7594
|
var x = new Error("Unsupported MGF hash function.");
|
|
7593
|
-
throw x.oid = i.signatureParameters.mgf.hash.algorithmOid, x.name =
|
|
7595
|
+
throw x.oid = i.signatureParameters.mgf.hash.algorithmOid, x.name = A, x;
|
|
7594
7596
|
}
|
|
7595
7597
|
if (V = d[i.signatureParameters.mgf.algorithmOid], V === void 0 || t.mgf[V] === void 0) {
|
|
7596
7598
|
var x = new Error("Unsupported MGF function.");
|
|
7597
7599
|
throw x.oid = i.signatureParameters.mgf.algorithmOid, x.name = V, x;
|
|
7598
7600
|
}
|
|
7599
|
-
if (V = t.mgf[V].create(t.md[
|
|
7601
|
+
if (V = t.mgf[V].create(t.md[A].create()), A = d[i.signatureParameters.hash.algorithmOid], A === void 0 || t.md[A] === void 0) {
|
|
7600
7602
|
var x = new Error("Unsupported RSASSA-PSS hash function.");
|
|
7601
|
-
throw x.oid = i.signatureParameters.hash.algorithmOid, x.name =
|
|
7603
|
+
throw x.oid = i.signatureParameters.hash.algorithmOid, x.name = A, x;
|
|
7602
7604
|
}
|
|
7603
7605
|
n = t.pss.create(
|
|
7604
|
-
t.md[
|
|
7606
|
+
t.md[A].create(),
|
|
7605
7607
|
V,
|
|
7606
7608
|
i.signatureParameters.saltLength
|
|
7607
7609
|
);
|
|
@@ -7614,18 +7616,18 @@ function _r() {
|
|
|
7614
7616
|
);
|
|
7615
7617
|
};
|
|
7616
7618
|
a.certificateFromPem = function(h, i, n) {
|
|
7617
|
-
var
|
|
7618
|
-
if (
|
|
7619
|
+
var A = t.pem.decode(h)[0];
|
|
7620
|
+
if (A.type !== "CERTIFICATE" && A.type !== "X509 CERTIFICATE" && A.type !== "TRUSTED CERTIFICATE") {
|
|
7619
7621
|
var V = new Error(
|
|
7620
7622
|
'Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'
|
|
7621
7623
|
);
|
|
7622
|
-
throw V.headerType =
|
|
7624
|
+
throw V.headerType = A.type, V;
|
|
7623
7625
|
}
|
|
7624
|
-
if (
|
|
7626
|
+
if (A.procType && A.procType.type === "ENCRYPTED")
|
|
7625
7627
|
throw new Error(
|
|
7626
7628
|
"Could not convert certificate from PEM; PEM is encrypted."
|
|
7627
7629
|
);
|
|
7628
|
-
var x = e.fromDer(
|
|
7630
|
+
var x = e.fromDer(A.body, n);
|
|
7629
7631
|
return a.certificateFromAsn1(x, i);
|
|
7630
7632
|
}, a.certificateToPem = function(h, i) {
|
|
7631
7633
|
var n = {
|
|
@@ -7641,8 +7643,8 @@ function _r() {
|
|
|
7641
7643
|
}
|
|
7642
7644
|
if (i.procType && i.procType.type === "ENCRYPTED")
|
|
7643
7645
|
throw new Error("Could not convert public key from PEM; PEM is encrypted.");
|
|
7644
|
-
var
|
|
7645
|
-
return a.publicKeyFromAsn1(
|
|
7646
|
+
var A = e.fromDer(i.body);
|
|
7647
|
+
return a.publicKeyFromAsn1(A);
|
|
7646
7648
|
}, a.publicKeyToPem = function(h, i) {
|
|
7647
7649
|
var n = {
|
|
7648
7650
|
type: "PUBLIC KEY",
|
|
@@ -7657,8 +7659,8 @@ function _r() {
|
|
|
7657
7659
|
return t.pem.encode(n, { maxline: i });
|
|
7658
7660
|
}, a.getPublicKeyFingerprint = function(h, i) {
|
|
7659
7661
|
i = i || {};
|
|
7660
|
-
var n = i.md || t.md.sha1.create(),
|
|
7661
|
-
switch (
|
|
7662
|
+
var n = i.md || t.md.sha1.create(), A = i.type || "RSAPublicKey", V;
|
|
7663
|
+
switch (A) {
|
|
7662
7664
|
case "RSAPublicKey":
|
|
7663
7665
|
V = e.toDer(a.publicKeyToRSAPublicKey(h)).getBytes();
|
|
7664
7666
|
break;
|
|
@@ -7681,14 +7683,14 @@ function _r() {
|
|
|
7681
7683
|
}
|
|
7682
7684
|
return x;
|
|
7683
7685
|
}, a.certificationRequestFromPem = function(h, i, n) {
|
|
7684
|
-
var
|
|
7685
|
-
if (
|
|
7686
|
+
var A = t.pem.decode(h)[0];
|
|
7687
|
+
if (A.type !== "CERTIFICATE REQUEST") {
|
|
7686
7688
|
var V = new Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".');
|
|
7687
|
-
throw V.headerType =
|
|
7689
|
+
throw V.headerType = A.type, V;
|
|
7688
7690
|
}
|
|
7689
|
-
if (
|
|
7691
|
+
if (A.procType && A.procType.type === "ENCRYPTED")
|
|
7690
7692
|
throw new Error("Could not convert certification request from PEM; PEM is encrypted.");
|
|
7691
|
-
var x = e.fromDer(
|
|
7693
|
+
var x = e.fromDer(A.body, n);
|
|
7692
7694
|
return a.certificationRequestFromAsn1(x, i);
|
|
7693
7695
|
}, a.certificationRequestToPem = function(h, i) {
|
|
7694
7696
|
var n = {
|
|
@@ -7716,26 +7718,26 @@ function _r() {
|
|
|
7716
7718
|
h.extensions = i;
|
|
7717
7719
|
}, h.getExtension = function(i) {
|
|
7718
7720
|
typeof i == "string" && (i = { name: i });
|
|
7719
|
-
for (var n = null,
|
|
7720
|
-
|
|
7721
|
+
for (var n = null, A, V = 0; n === null && V < h.extensions.length; ++V)
|
|
7722
|
+
A = h.extensions[V], (i.id && A.id === i.id || i.name && A.name === i.name) && (n = A);
|
|
7721
7723
|
return n;
|
|
7722
7724
|
}, h.sign = function(i, n) {
|
|
7723
7725
|
h.md = n || t.md.sha1.create();
|
|
7724
|
-
var
|
|
7725
|
-
if (!
|
|
7726
|
+
var A = d[h.md.algorithm + "WithRSAEncryption"];
|
|
7727
|
+
if (!A) {
|
|
7726
7728
|
var V = new Error("Could not compute certificate digest. Unknown message digest algorithm OID.");
|
|
7727
7729
|
throw V.algorithm = h.md.algorithm, V;
|
|
7728
7730
|
}
|
|
7729
|
-
h.signatureOid = h.siginfo.algorithmOid =
|
|
7731
|
+
h.signatureOid = h.siginfo.algorithmOid = A, h.tbsCertificate = a.getTBSCertificate(h);
|
|
7730
7732
|
var x = e.toDer(h.tbsCertificate);
|
|
7731
7733
|
h.md.update(x.getBytes()), h.signature = i.sign(h.md);
|
|
7732
7734
|
}, h.verify = function(i) {
|
|
7733
7735
|
var n = !1;
|
|
7734
7736
|
if (!h.issued(i)) {
|
|
7735
|
-
var
|
|
7737
|
+
var A = i.issuer, V = h.subject, x = new Error(
|
|
7736
7738
|
"The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject."
|
|
7737
7739
|
);
|
|
7738
|
-
throw x.expectedIssuer = V.attributes, x.actualIssuer =
|
|
7740
|
+
throw x.expectedIssuer = V.attributes, x.actualIssuer = A.attributes, x;
|
|
7739
7741
|
}
|
|
7740
7742
|
var D = i.md;
|
|
7741
7743
|
if (D === null) {
|
|
@@ -7752,13 +7754,13 @@ function _r() {
|
|
|
7752
7754
|
signature: i.signature
|
|
7753
7755
|
})), n;
|
|
7754
7756
|
}, h.isIssuer = function(i) {
|
|
7755
|
-
var n = !1,
|
|
7756
|
-
if (
|
|
7757
|
-
n =
|
|
7758
|
-
else if (
|
|
7757
|
+
var n = !1, A = h.issuer, V = i.subject;
|
|
7758
|
+
if (A.hash && V.hash)
|
|
7759
|
+
n = A.hash === V.hash;
|
|
7760
|
+
else if (A.attributes.length === V.attributes.length) {
|
|
7759
7761
|
n = !0;
|
|
7760
|
-
for (var x, D, O = 0; n && O <
|
|
7761
|
-
x =
|
|
7762
|
+
for (var x, D, O = 0; n && O < A.attributes.length; ++O)
|
|
7763
|
+
x = A.attributes[O], D = V.attributes[O], (x.type !== D.type || x.value !== D.value) && (n = !1);
|
|
7762
7764
|
}
|
|
7763
7765
|
return n;
|
|
7764
7766
|
}, h.issued = function(i) {
|
|
@@ -7767,19 +7769,19 @@ function _r() {
|
|
|
7767
7769
|
return a.getPublicKeyFingerprint(h.publicKey, { type: "RSAPublicKey" });
|
|
7768
7770
|
}, h.verifySubjectKeyIdentifier = function() {
|
|
7769
7771
|
for (var i = d.subjectKeyIdentifier, n = 0; n < h.extensions.length; ++n) {
|
|
7770
|
-
var
|
|
7771
|
-
if (
|
|
7772
|
+
var A = h.extensions[n];
|
|
7773
|
+
if (A.id === i) {
|
|
7772
7774
|
var V = h.generateSubjectKeyIdentifier().getBytes();
|
|
7773
|
-
return t.util.hexToBytes(
|
|
7775
|
+
return t.util.hexToBytes(A.subjectKeyIdentifier) === V;
|
|
7774
7776
|
}
|
|
7775
7777
|
}
|
|
7776
7778
|
return !1;
|
|
7777
7779
|
}, h;
|
|
7778
7780
|
}, a.certificateFromAsn1 = function(h, i) {
|
|
7779
|
-
var n = {},
|
|
7780
|
-
if (!e.validate(h, c, n,
|
|
7781
|
+
var n = {}, A = [];
|
|
7782
|
+
if (!e.validate(h, c, n, A)) {
|
|
7781
7783
|
var V = new Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate.");
|
|
7782
|
-
throw V.errors =
|
|
7784
|
+
throw V.errors = A, V;
|
|
7783
7785
|
}
|
|
7784
7786
|
var x = e.derToOid(n.publicKeyOid);
|
|
7785
7787
|
if (x !== a.oids.rsaEncryption)
|
|
@@ -7827,15 +7829,15 @@ function _r() {
|
|
|
7827
7829
|
}, D.subject.attributes = a.RDNAttributesAsArray(n.certSubject), n.certSubjectUniqueId && (D.subject.uniqueId = n.certSubjectUniqueId), D.subject.hash = X.digest().toHex(), n.certExtensions ? D.extensions = a.certificateExtensionsFromAsn1(n.certExtensions) : D.extensions = [], D.publicKey = a.publicKeyFromAsn1(n.subjectPublicKeyInfo), D;
|
|
7828
7830
|
}, a.certificateExtensionsFromAsn1 = function(h) {
|
|
7829
7831
|
for (var i = [], n = 0; n < h.value.length; ++n)
|
|
7830
|
-
for (var
|
|
7831
|
-
i.push(a.certificateExtensionFromAsn1(
|
|
7832
|
+
for (var A = h.value[n], V = 0; V < A.value.length; ++V)
|
|
7833
|
+
i.push(a.certificateExtensionFromAsn1(A.value[V]));
|
|
7832
7834
|
return i;
|
|
7833
7835
|
}, a.certificateExtensionFromAsn1 = function(h) {
|
|
7834
7836
|
var i = {};
|
|
7835
7837
|
if (i.id = e.derToOid(h.value[0].value), i.critical = !1, h.value[1].type === e.Type.BOOLEAN ? (i.critical = h.value[1].value.charCodeAt(0) !== 0, i.value = h.value[2].value) : i.value = h.value[1].value, i.id in d) {
|
|
7836
7838
|
if (i.name = d[i.id], i.name === "keyUsage") {
|
|
7837
|
-
var n = e.fromDer(i.value),
|
|
7838
|
-
n.value.length > 1 && (
|
|
7839
|
+
var n = e.fromDer(i.value), A = 0, V = 0;
|
|
7840
|
+
n.value.length > 1 && (A = n.value.charCodeAt(1), V = n.value.length > 2 ? n.value.charCodeAt(2) : 0), i.digitalSignature = (A & 128) === 128, i.nonRepudiation = (A & 64) === 64, i.keyEncipherment = (A & 32) === 32, i.dataEncipherment = (A & 16) === 16, i.keyAgreement = (A & 8) === 8, i.keyCertSign = (A & 4) === 4, i.cRLSign = (A & 2) === 2, i.encipherOnly = (A & 1) === 1, i.decipherOnly = (V & 128) === 128;
|
|
7839
7841
|
} else if (i.name === "basicConstraints") {
|
|
7840
7842
|
var n = e.fromDer(i.value);
|
|
7841
7843
|
n.value.length > 0 && n.value[0].type === e.Type.BOOLEAN ? i.cA = n.value[0].value.charCodeAt(0) !== 0 : i.cA = !1;
|
|
@@ -7847,8 +7849,8 @@ function _r() {
|
|
|
7847
7849
|
O in d ? i[d[O]] = !0 : i[O] = !0;
|
|
7848
7850
|
}
|
|
7849
7851
|
else if (i.name === "nsCertType") {
|
|
7850
|
-
var n = e.fromDer(i.value),
|
|
7851
|
-
n.value.length > 1 && (
|
|
7852
|
+
var n = e.fromDer(i.value), A = 0;
|
|
7853
|
+
n.value.length > 1 && (A = n.value.charCodeAt(1)), i.client = (A & 128) === 128, i.server = (A & 64) === 64, i.email = (A & 32) === 32, i.objsign = (A & 16) === 16, i.reserved = (A & 8) === 8, i.sslCA = (A & 4) === 4, i.emailCA = (A & 2) === 2, i.objCA = (A & 1) === 1;
|
|
7852
7854
|
} else if (i.name === "subjectAltName" || i.name === "issuerAltName") {
|
|
7853
7855
|
i.altNames = [];
|
|
7854
7856
|
for (var K, n = e.fromDer(i.value), F = 0; F < n.value.length; ++F) {
|
|
@@ -7882,10 +7884,10 @@ function _r() {
|
|
|
7882
7884
|
}
|
|
7883
7885
|
return i;
|
|
7884
7886
|
}, a.certificationRequestFromAsn1 = function(h, i) {
|
|
7885
|
-
var n = {},
|
|
7886
|
-
if (!e.validate(h, u, n,
|
|
7887
|
+
var n = {}, A = [];
|
|
7888
|
+
if (!e.validate(h, u, n, A)) {
|
|
7887
7889
|
var V = new Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest.");
|
|
7888
|
-
throw V.errors =
|
|
7890
|
+
throw V.errors = A, V;
|
|
7889
7891
|
}
|
|
7890
7892
|
var x = e.derToOid(n.publicKeyOid);
|
|
7891
7893
|
if (x !== a.oids.rsaEncryption)
|
|
@@ -7938,12 +7940,12 @@ function _r() {
|
|
|
7938
7940
|
C(i), h.attributes = i;
|
|
7939
7941
|
}, h.sign = function(i, n) {
|
|
7940
7942
|
h.md = n || t.md.sha1.create();
|
|
7941
|
-
var
|
|
7942
|
-
if (!
|
|
7943
|
+
var A = d[h.md.algorithm + "WithRSAEncryption"];
|
|
7944
|
+
if (!A) {
|
|
7943
7945
|
var V = new Error("Could not compute certification request digest. Unknown message digest algorithm OID.");
|
|
7944
7946
|
throw V.algorithm = h.md.algorithm, V;
|
|
7945
7947
|
}
|
|
7946
|
-
h.signatureOid = h.siginfo.algorithmOid =
|
|
7948
|
+
h.signatureOid = h.siginfo.algorithmOid = A, h.certificationRequestInfo = a.getCertificationRequestInfo(h);
|
|
7947
7949
|
var x = e.toDer(h.certificationRequestInfo);
|
|
7948
7950
|
h.md.update(x.getBytes()), h.signature = i.sign(h.md);
|
|
7949
7951
|
}, h.verify = function() {
|
|
@@ -7953,7 +7955,7 @@ function _r() {
|
|
|
7953
7955
|
signatureOid: h.signatureOid,
|
|
7954
7956
|
type: "certification request"
|
|
7955
7957
|
});
|
|
7956
|
-
var
|
|
7958
|
+
var A = h.certificationRequestInfo || a.getCertificationRequestInfo(h), V = e.toDer(A);
|
|
7957
7959
|
n.update(V.getBytes());
|
|
7958
7960
|
}
|
|
7959
7961
|
return n !== null && (i = l({
|
|
@@ -7969,10 +7971,10 @@ function _r() {
|
|
|
7969
7971
|
e.Type.SEQUENCE,
|
|
7970
7972
|
!0,
|
|
7971
7973
|
[]
|
|
7972
|
-
), n,
|
|
7974
|
+
), n, A, V = h.attributes, x = 0; x < V.length; ++x) {
|
|
7973
7975
|
n = V[x];
|
|
7974
7976
|
var D = n.value, O = e.Type.PRINTABLESTRING;
|
|
7975
|
-
"valueTagClass" in n && (O = n.valueTagClass, O === e.Type.UTF8 && (D = t.util.encodeUtf8(D))),
|
|
7977
|
+
"valueTagClass" in n && (O = n.valueTagClass, O === e.Type.UTF8 && (D = t.util.encodeUtf8(D))), A = e.create(e.Class.UNIVERSAL, e.Type.SET, !0, [
|
|
7976
7978
|
e.create(e.Class.UNIVERSAL, e.Type.SEQUENCE, !0, [
|
|
7977
7979
|
// AttributeType
|
|
7978
7980
|
e.create(
|
|
@@ -7984,7 +7986,7 @@ function _r() {
|
|
|
7984
7986
|
// AttributeValue
|
|
7985
7987
|
e.create(e.Class.UNIVERSAL, O, !1, D)
|
|
7986
7988
|
])
|
|
7987
|
-
]), i.value.push(
|
|
7989
|
+
]), i.value.push(A);
|
|
7988
7990
|
}
|
|
7989
7991
|
return i;
|
|
7990
7992
|
}
|
|
@@ -7994,8 +7996,8 @@ function _r() {
|
|
|
7994
7996
|
if (i.name && i.name in a.oids)
|
|
7995
7997
|
i.type = a.oids[i.name];
|
|
7996
7998
|
else {
|
|
7997
|
-
var
|
|
7998
|
-
throw
|
|
7999
|
+
var A = new Error("Attribute type not specified.");
|
|
8000
|
+
throw A.attribute = i, A;
|
|
7999
8001
|
}
|
|
8000
8002
|
if (typeof i.shortName > "u" && i.name && i.name in b && (i.shortName = b[i.name]), i.type === d.extensionRequest && (i.valueConstructed = !0, i.valueTagClass = e.Type.SEQUENCE, !i.value && i.extensions)) {
|
|
8001
8003
|
i.value = [];
|
|
@@ -8005,8 +8007,8 @@ function _r() {
|
|
|
8005
8007
|
));
|
|
8006
8008
|
}
|
|
8007
8009
|
if (typeof i.value > "u") {
|
|
8008
|
-
var
|
|
8009
|
-
throw
|
|
8010
|
+
var A = new Error("Attribute value not specified.");
|
|
8011
|
+
throw A.attribute = i, A;
|
|
8010
8012
|
}
|
|
8011
8013
|
}
|
|
8012
8014
|
}
|
|
@@ -8021,9 +8023,9 @@ function _r() {
|
|
|
8021
8023
|
if (typeof h.value < "u")
|
|
8022
8024
|
return h;
|
|
8023
8025
|
if (h.name === "keyUsage") {
|
|
8024
|
-
var
|
|
8025
|
-
h.digitalSignature && (V |= 128,
|
|
8026
|
-
var D = String.fromCharCode(
|
|
8026
|
+
var A = 0, V = 0, x = 0;
|
|
8027
|
+
h.digitalSignature && (V |= 128, A = 7), h.nonRepudiation && (V |= 64, A = 6), h.keyEncipherment && (V |= 32, A = 5), h.dataEncipherment && (V |= 16, A = 4), h.keyAgreement && (V |= 8, A = 3), h.keyCertSign && (V |= 4, A = 2), h.cRLSign && (V |= 2, A = 1), h.encipherOnly && (V |= 1, A = 0), h.decipherOnly && (x |= 128, A = 7);
|
|
8028
|
+
var D = String.fromCharCode(A);
|
|
8027
8029
|
x !== 0 ? D += String.fromCharCode(V) + String.fromCharCode(x) : V !== 0 && (D += String.fromCharCode(V)), h.value = e.create(
|
|
8028
8030
|
e.Class.UNIVERSAL,
|
|
8029
8031
|
e.Type.BITSTRING,
|
|
@@ -8068,9 +8070,9 @@ function _r() {
|
|
|
8068
8070
|
e.oidToDer(K).getBytes()
|
|
8069
8071
|
)));
|
|
8070
8072
|
} else if (h.name === "nsCertType") {
|
|
8071
|
-
var
|
|
8072
|
-
h.client && (V |= 128,
|
|
8073
|
-
var D = String.fromCharCode(
|
|
8073
|
+
var A = 0, V = 0;
|
|
8074
|
+
h.client && (V |= 128, A = 7), h.server && (V |= 64, A = 6), h.email && (V |= 32, A = 5), h.objsign && (V |= 16, A = 4), h.reserved && (V |= 8, A = 3), h.sslCA && (V |= 4, A = 2), h.emailCA && (V |= 2, A = 1), h.objCA && (V |= 1, A = 0);
|
|
8075
|
+
var D = String.fromCharCode(A);
|
|
8074
8076
|
V !== 0 && (D += String.fromCharCode(V)), h.value = e.create(
|
|
8075
8077
|
e.Class.UNIVERSAL,
|
|
8076
8078
|
e.Type.BITSTRING,
|
|
@@ -8230,8 +8232,8 @@ function _r() {
|
|
|
8230
8232
|
var i = e.create(e.Class.CONTEXT_SPECIFIC, 0, !0, []);
|
|
8231
8233
|
if (h.attributes.length === 0)
|
|
8232
8234
|
return i;
|
|
8233
|
-
for (var n = h.attributes,
|
|
8234
|
-
var V = n[
|
|
8235
|
+
for (var n = h.attributes, A = 0; A < n.length; ++A) {
|
|
8236
|
+
var V = n[A], x = V.value, D = e.Type.UTF8;
|
|
8235
8237
|
"valueTagClass" in V && (D = V.valueTagClass), D === e.Type.UTF8 && (x = t.util.encodeUtf8(x));
|
|
8236
8238
|
var O = !1;
|
|
8237
8239
|
"valueConstructed" in V && (O = V.valueConstructed);
|
|
@@ -8272,7 +8274,7 @@ function _r() {
|
|
|
8272
8274
|
);
|
|
8273
8275
|
}
|
|
8274
8276
|
return a.getTBSCertificate = function(h) {
|
|
8275
|
-
var i = R(h.validity.notBefore), n = R(h.validity.notAfter),
|
|
8277
|
+
var i = R(h.validity.notBefore), n = R(h.validity.notAfter), A = e.create(e.Class.UNIVERSAL, e.Type.SEQUENCE, !0, [
|
|
8276
8278
|
// version
|
|
8277
8279
|
e.create(e.Class.CONTEXT_SPECIFIC, 0, !0, [
|
|
8278
8280
|
// integer
|
|
@@ -8317,7 +8319,7 @@ function _r() {
|
|
|
8317
8319
|
// SubjectPublicKeyInfo
|
|
8318
8320
|
a.publicKeyToAsn1(h.publicKey)
|
|
8319
8321
|
]);
|
|
8320
|
-
return h.issuer.uniqueId &&
|
|
8322
|
+
return h.issuer.uniqueId && A.value.push(
|
|
8321
8323
|
e.create(e.Class.CONTEXT_SPECIFIC, 1, !0, [
|
|
8322
8324
|
e.create(
|
|
8323
8325
|
e.Class.UNIVERSAL,
|
|
@@ -8327,7 +8329,7 @@ function _r() {
|
|
|
8327
8329
|
"\0" + h.issuer.uniqueId
|
|
8328
8330
|
)
|
|
8329
8331
|
])
|
|
8330
|
-
), h.subject.uniqueId &&
|
|
8332
|
+
), h.subject.uniqueId && A.value.push(
|
|
8331
8333
|
e.create(e.Class.CONTEXT_SPECIFIC, 2, !0, [
|
|
8332
8334
|
e.create(
|
|
8333
8335
|
e.Class.UNIVERSAL,
|
|
@@ -8337,7 +8339,7 @@ function _r() {
|
|
|
8337
8339
|
"\0" + h.subject.uniqueId
|
|
8338
8340
|
)
|
|
8339
8341
|
])
|
|
8340
|
-
), h.extensions.length > 0 &&
|
|
8342
|
+
), h.extensions.length > 0 && A.value.push(a.certificateExtensionsToAsn1(h.extensions)), A;
|
|
8341
8343
|
}, a.getCertificationRequestInfo = function(h) {
|
|
8342
8344
|
var i = e.create(e.Class.UNIVERSAL, e.Type.SEQUENCE, !0, [
|
|
8343
8345
|
// version
|
|
@@ -8385,8 +8387,8 @@ function _r() {
|
|
|
8385
8387
|
}, a.certificateExtensionsToAsn1 = function(h) {
|
|
8386
8388
|
var i = e.create(e.Class.CONTEXT_SPECIFIC, 3, !0, []), n = e.create(e.Class.UNIVERSAL, e.Type.SEQUENCE, !0, []);
|
|
8387
8389
|
i.value.push(n);
|
|
8388
|
-
for (var
|
|
8389
|
-
n.value.push(a.certificateExtensionToAsn1(h[
|
|
8390
|
+
for (var A = 0; A < h.length; ++A)
|
|
8391
|
+
n.value.push(a.certificateExtensionToAsn1(h[A]));
|
|
8390
8392
|
return i;
|
|
8391
8393
|
}, a.certificateExtensionToAsn1 = function(h) {
|
|
8392
8394
|
var i = e.create(e.Class.UNIVERSAL, e.Type.SEQUENCE, !0, []);
|
|
@@ -8442,7 +8444,7 @@ function _r() {
|
|
|
8442
8444
|
var O = n(D.issuer);
|
|
8443
8445
|
return O;
|
|
8444
8446
|
}, i.addCertificate = function(D) {
|
|
8445
|
-
if (typeof D == "string" && (D = t.pki.certificateFromPem(D)),
|
|
8447
|
+
if (typeof D == "string" && (D = t.pki.certificateFromPem(D)), A(D.subject), !i.hasCertificate(D))
|
|
8446
8448
|
if (D.subject.hash in i.certs) {
|
|
8447
8449
|
var O = i.certs[D.subject.hash];
|
|
8448
8450
|
t.util.isArray(O) || (O = [O]), O.push(D), i.certs[D.subject.hash] = O;
|
|
@@ -8474,7 +8476,7 @@ function _r() {
|
|
|
8474
8476
|
return D;
|
|
8475
8477
|
}, i.removeCertificate = function(D) {
|
|
8476
8478
|
var O;
|
|
8477
|
-
if (typeof D == "string" && (D = t.pki.certificateFromPem(D)),
|
|
8479
|
+
if (typeof D == "string" && (D = t.pki.certificateFromPem(D)), A(D.subject), !i.hasCertificate(D))
|
|
8478
8480
|
return null;
|
|
8479
8481
|
var K = n(D.subject);
|
|
8480
8482
|
if (!t.util.isArray(K))
|
|
@@ -8486,9 +8488,9 @@ function _r() {
|
|
|
8486
8488
|
return K.length === 0 && delete i.certs[D.subject.hash], O;
|
|
8487
8489
|
};
|
|
8488
8490
|
function n(D) {
|
|
8489
|
-
return
|
|
8491
|
+
return A(D), i.certs[D.hash] || null;
|
|
8490
8492
|
}
|
|
8491
|
-
function
|
|
8493
|
+
function A(D) {
|
|
8492
8494
|
if (!D.hash) {
|
|
8493
8495
|
var O = t.md.sha1.create();
|
|
8494
8496
|
D.attributes = a.RDNAttributesAsArray(y(D), O), D.hash = O.digest().toHex();
|
|
@@ -8509,7 +8511,7 @@ function _r() {
|
|
|
8509
8511
|
unknown_ca: "forge.pki.UnknownCertificateAuthority"
|
|
8510
8512
|
}, a.verifyCertificateChain = function(h, i, n) {
|
|
8511
8513
|
typeof n == "function" && (n = { verify: n }), n = n || {}, i = i.slice(0);
|
|
8512
|
-
var
|
|
8514
|
+
var A = i.slice(0), V = n.validityCheckDate;
|
|
8513
8515
|
typeof V > "u" && (V = /* @__PURE__ */ new Date());
|
|
8514
8516
|
var x = !0, D = null, O = 0;
|
|
8515
8517
|
do {
|
|
@@ -8573,7 +8575,7 @@ function _r() {
|
|
|
8573
8575
|
});
|
|
8574
8576
|
}
|
|
8575
8577
|
}
|
|
8576
|
-
var Ce = D === null ? !0 : D.error, re = n.verify ? n.verify(Ce, O,
|
|
8578
|
+
var Ce = D === null ? !0 : D.error, re = n.verify ? n.verify(Ce, O, A) : Ce;
|
|
8577
8579
|
if (re === !0)
|
|
8578
8580
|
D = null;
|
|
8579
8581
|
else
|
|
@@ -8850,8 +8852,8 @@ function dn() {
|
|
|
8850
8852
|
if (h.tagClass !== e.Class.UNIVERSAL || h.type !== e.Type.OCTETSTRING)
|
|
8851
8853
|
throw new Error("PKCS#12 authSafe content data is not an OCTET STRING.");
|
|
8852
8854
|
if (h = I(h), p.mac) {
|
|
8853
|
-
var i = null, n = 0,
|
|
8854
|
-
switch (
|
|
8855
|
+
var i = null, n = 0, A = e.derToOid(p.macAlgorithm);
|
|
8856
|
+
switch (A) {
|
|
8855
8857
|
case a.oids.sha1:
|
|
8856
8858
|
i = t.md.sha1.create(), n = 20;
|
|
8857
8859
|
break;
|
|
@@ -8869,7 +8871,7 @@ function dn() {
|
|
|
8869
8871
|
break;
|
|
8870
8872
|
}
|
|
8871
8873
|
if (i === null)
|
|
8872
|
-
throw new Error("PKCS#12 uses unsupported MAC algorithm: " +
|
|
8874
|
+
throw new Error("PKCS#12 uses unsupported MAC algorithm: " + A);
|
|
8873
8875
|
var V = new t.util.ByteBuffer(p.macSalt), x = "macIterations" in p ? parseInt(t.util.bytesToHex(p.macIterations), 16) : 1, D = d.generateKey(
|
|
8874
8876
|
s,
|
|
8875
8877
|
V,
|
|
@@ -8904,21 +8906,21 @@ function dn() {
|
|
|
8904
8906
|
}
|
|
8905
8907
|
var n = {
|
|
8906
8908
|
encrypted: !1
|
|
8907
|
-
},
|
|
8909
|
+
}, A = null, V = R.content.value[0];
|
|
8908
8910
|
switch (e.derToOid(R.contentType)) {
|
|
8909
8911
|
case a.oids.data:
|
|
8910
8912
|
if (V.tagClass !== e.Class.UNIVERSAL || V.type !== e.Type.OCTETSTRING)
|
|
8911
8913
|
throw new Error("PKCS#12 SafeContents Data is not an OCTET STRING.");
|
|
8912
|
-
|
|
8914
|
+
A = I(V).value;
|
|
8913
8915
|
break;
|
|
8914
8916
|
case a.oids.encryptedData:
|
|
8915
|
-
|
|
8917
|
+
A = E(V, p), n.encrypted = !0;
|
|
8916
8918
|
break;
|
|
8917
8919
|
default:
|
|
8918
8920
|
var i = new Error("Unsupported PKCS#12 contentType.");
|
|
8919
8921
|
throw i.contentType = e.derToOid(R.contentType), i;
|
|
8920
8922
|
}
|
|
8921
|
-
n.safeBags = l(
|
|
8923
|
+
n.safeBags = l(A, s, p), C.safeContents.push(n);
|
|
8922
8924
|
}
|
|
8923
8925
|
}
|
|
8924
8926
|
function E(C, m) {
|
|
@@ -8963,7 +8965,7 @@ function dn() {
|
|
|
8963
8965
|
attributes: y(R.bagAttributes)
|
|
8964
8966
|
};
|
|
8965
8967
|
p.push(n);
|
|
8966
|
-
var
|
|
8968
|
+
var A, V, x = R.bagValue.value[0];
|
|
8967
8969
|
switch (n.type) {
|
|
8968
8970
|
case a.oids.pkcs8ShroudedKeyBag:
|
|
8969
8971
|
if (x = a.decryptPrivateKeyInfo(x, s), x === null)
|
|
@@ -8980,7 +8982,7 @@ function dn() {
|
|
|
8980
8982
|
continue;
|
|
8981
8983
|
/* Nothing more to do. */
|
|
8982
8984
|
case a.oids.certBag:
|
|
8983
|
-
|
|
8985
|
+
A = g, V = function() {
|
|
8984
8986
|
if (e.derToOid(R.certId) !== a.oids.x509Certificate) {
|
|
8985
8987
|
var O = new Error(
|
|
8986
8988
|
"Unsupported certificate type, only X.509 supported."
|
|
@@ -8999,8 +9001,8 @@ function dn() {
|
|
|
8999
9001
|
var i = new Error("Unsupported PKCS#12 SafeBag type.");
|
|
9000
9002
|
throw i.oid = n.type, i;
|
|
9001
9003
|
}
|
|
9002
|
-
if (
|
|
9003
|
-
var i = new Error("Cannot read PKCS#12 " +
|
|
9004
|
+
if (A !== void 0 && !e.validate(x, A, R, h)) {
|
|
9005
|
+
var i = new Error("Cannot read PKCS#12 " + A.name);
|
|
9004
9006
|
throw i.errors = h, i;
|
|
9005
9007
|
}
|
|
9006
9008
|
V();
|
|
@@ -9080,10 +9082,10 @@ function dn() {
|
|
|
9080
9082
|
])
|
|
9081
9083
|
])
|
|
9082
9084
|
), i.length > 0 && (T = e.create(e.Class.UNIVERSAL, e.Type.SET, !0, i));
|
|
9083
|
-
var n = [],
|
|
9084
|
-
m !== null && (t.util.isArray(m) ?
|
|
9085
|
-
for (var V = [], x = 0; x <
|
|
9086
|
-
m =
|
|
9085
|
+
var n = [], A = [];
|
|
9086
|
+
m !== null && (t.util.isArray(m) ? A = m : A = [m]);
|
|
9087
|
+
for (var V = [], x = 0; x < A.length; ++x) {
|
|
9088
|
+
m = A[x], typeof m == "string" && (m = a.certificateFromPem(m));
|
|
9087
9089
|
var D = x === 0 ? T : void 0, O = a.certificateToAsn1(m), K = e.create(e.Class.UNIVERSAL, e.Type.SEQUENCE, !0, [
|
|
9088
9090
|
// bagId
|
|
9089
9091
|
e.create(
|
|
@@ -9986,7 +9988,7 @@ function pn() {
|
|
|
9986
9988
|
}
|
|
9987
9989
|
f.process();
|
|
9988
9990
|
};
|
|
9989
|
-
var g = 0, u = 1, I = 2, L = 3, E = 4, l = 5, y = 6, C = 7, m = 8, s = 0, p = 1, v = 2, T = 3, R = 4, h = 5, i = 6, n = r.handleUnexpected,
|
|
9991
|
+
var g = 0, u = 1, I = 2, L = 3, E = 4, l = 5, y = 6, C = 7, m = 8, s = 0, p = 1, v = 2, T = 3, R = 4, h = 5, i = 6, n = r.handleUnexpected, A = r.handleChangeCipherSpec, V = r.handleAlert, x = r.handleHandshake, D = r.handleApplicationData, O = r.handleHeartbeat, K = [];
|
|
9990
9992
|
K[r.ConnectionEnd.client] = [
|
|
9991
9993
|
// CC,AL,HS,AD,HB
|
|
9992
9994
|
/*SHE*/
|
|
@@ -10000,7 +10002,7 @@ function pn() {
|
|
|
10000
10002
|
/*SHD*/
|
|
10001
10003
|
[n, V, x, n, O],
|
|
10002
10004
|
/*SCC*/
|
|
10003
|
-
[
|
|
10005
|
+
[A, V, n, n, O],
|
|
10004
10006
|
/*SFI*/
|
|
10005
10007
|
[n, V, x, n, O],
|
|
10006
10008
|
/*SAD*/
|
|
@@ -10018,7 +10020,7 @@ function pn() {
|
|
|
10018
10020
|
/*CCV*/
|
|
10019
10021
|
[n, V, x, n, O],
|
|
10020
10022
|
/*CCC*/
|
|
10021
|
-
[
|
|
10023
|
+
[A, V, n, n, O],
|
|
10022
10024
|
/*CFI*/
|
|
10023
10025
|
[n, V, x, n, O],
|
|
10024
10026
|
/*CAD*/
|
|
@@ -10375,7 +10377,7 @@ function pn() {
|
|
|
10375
10377
|
default:
|
|
10376
10378
|
return r.Alert.Description.bad_certificate;
|
|
10377
10379
|
}
|
|
10378
|
-
},
|
|
10380
|
+
}, Ke = function(f) {
|
|
10379
10381
|
switch (f) {
|
|
10380
10382
|
case !0:
|
|
10381
10383
|
return !0;
|
|
@@ -10410,7 +10412,7 @@ function pn() {
|
|
|
10410
10412
|
description: r.Alert.Description.bad_certificate
|
|
10411
10413
|
}, le.message && (z.message = le.message), le.alert && (z.alert.description = le.alert), z;
|
|
10412
10414
|
}
|
|
10413
|
-
le !== G && (le =
|
|
10415
|
+
le !== G && (le = Ke(le));
|
|
10414
10416
|
}
|
|
10415
10417
|
return le;
|
|
10416
10418
|
}, t.pki.verifyCertificateChain(f.caStore, U, N);
|
|
@@ -10765,11 +10767,11 @@ function gn() {
|
|
|
10765
10767
|
for (var n = new Array(L.length), i = 0; i < L.length; ++i)
|
|
10766
10768
|
n[i] = L[i].slice(0);
|
|
10767
10769
|
g(n, l, s);
|
|
10768
|
-
var
|
|
10770
|
+
var A = t.util.createBuffer(), V;
|
|
10769
10771
|
u === "SHA-512" ? V = n.length : u === "SHA-384" ? V = n.length - 2 : V = n.length - 4;
|
|
10770
10772
|
for (var i = 0; i < V; ++i)
|
|
10771
|
-
|
|
10772
|
-
return
|
|
10773
|
+
A.putInt32(n[i][0]), (i !== V - 1 || u !== "SHA-512/224") && A.putInt32(n[i][1]);
|
|
10774
|
+
return A;
|
|
10773
10775
|
}, m;
|
|
10774
10776
|
};
|
|
10775
10777
|
var d = null, b = !1, S = null, c = null;
|
|
@@ -10894,11 +10896,11 @@ function gn() {
|
|
|
10894
10896
|
], b = !0;
|
|
10895
10897
|
}
|
|
10896
10898
|
function g(u, I, L) {
|
|
10897
|
-
for (var E, l, y, C, m, s, p, v, T, R, h, i, n,
|
|
10899
|
+
for (var E, l, y, C, m, s, p, v, T, R, h, i, n, A, V, x, D, O, K, F, q, H, X, $, ne, ce, de, be, ee, Ce, re, Ke, ve, f, U, N = L.length(); N >= 128; ) {
|
|
10898
10900
|
for (ee = 0; ee < 16; ++ee)
|
|
10899
10901
|
I[ee][0] = L.getInt32() >>> 0, I[ee][1] = L.getInt32() >>> 0;
|
|
10900
10902
|
for (; ee < 80; ++ee)
|
|
10901
|
-
|
|
10903
|
+
Ke = I[ee - 2], Ce = Ke[0], re = Ke[1], E = ((Ce >>> 19 | re << 13) ^ // ROTR 19
|
|
10902
10904
|
(re >>> 29 | Ce << 3) ^ // ROTR 61/(swap + ROTR 29)
|
|
10903
10905
|
Ce >>> 6) >>> 0, l = ((Ce << 13 | re >>> 19) ^ // ROTR 19
|
|
10904
10906
|
(re << 3 | Ce >>> 29) ^ // ROTR 61/(swap + ROTR 29)
|
|
@@ -10907,17 +10909,17 @@ function gn() {
|
|
|
10907
10909
|
Ce >>> 7) >>> 0, C = ((Ce << 31 | re >>> 1) ^ // ROTR 1
|
|
10908
10910
|
(Ce << 24 | re >>> 8) ^ // ROTR 8
|
|
10909
10911
|
(Ce << 25 | re >>> 7)) >>> 0, ve = I[ee - 7], U = I[ee - 16], re = l + ve[1] + C + U[1], I[ee][0] = E + ve[0] + y + U[0] + (re / 4294967296 >>> 0) >>> 0, I[ee][1] = re >>> 0;
|
|
10910
|
-
for (n = u[0][0],
|
|
10912
|
+
for (n = u[0][0], A = u[0][1], V = u[1][0], x = u[1][1], D = u[2][0], O = u[2][1], K = u[3][0], F = u[3][1], q = u[4][0], H = u[4][1], X = u[5][0], $ = u[5][1], ne = u[6][0], ce = u[6][1], de = u[7][0], be = u[7][1], ee = 0; ee < 80; ++ee)
|
|
10911
10913
|
p = ((q >>> 14 | H << 18) ^ // ROTR 14
|
|
10912
10914
|
(q >>> 18 | H << 14) ^ // ROTR 18
|
|
10913
10915
|
(H >>> 9 | q << 23)) >>> 0, v = ((q << 18 | H >>> 14) ^ // ROTR 14
|
|
10914
10916
|
(q << 14 | H >>> 18) ^ // ROTR 18
|
|
10915
|
-
(H << 23 | q >>> 9)) >>> 0, T = (ne ^ q & (X ^ ne)) >>> 0, R = (ce ^ H & ($ ^ ce)) >>> 0, m = ((n >>> 28 |
|
|
10916
|
-
(
|
|
10917
|
-
(
|
|
10918
|
-
(
|
|
10919
|
-
(
|
|
10920
|
-
re = u[0][1] +
|
|
10917
|
+
(H << 23 | q >>> 9)) >>> 0, T = (ne ^ q & (X ^ ne)) >>> 0, R = (ce ^ H & ($ ^ ce)) >>> 0, m = ((n >>> 28 | A << 4) ^ // ROTR 28
|
|
10918
|
+
(A >>> 2 | n << 30) ^ // ROTR 34/(swap + ROTR 2)
|
|
10919
|
+
(A >>> 7 | n << 25)) >>> 0, s = ((n << 4 | A >>> 28) ^ // ROTR 28
|
|
10920
|
+
(A << 30 | n >>> 2) ^ // ROTR 34/(swap + ROTR 2)
|
|
10921
|
+
(A << 25 | n >>> 7)) >>> 0, h = (n & V | D & (n ^ V)) >>> 0, i = (A & x | O & (A ^ x)) >>> 0, re = be + v + R + S[ee][1] + I[ee][1], E = de + p + T + S[ee][0] + I[ee][0] + (re / 4294967296 >>> 0) >>> 0, l = re >>> 0, re = s + i, y = m + h + (re / 4294967296 >>> 0) >>> 0, C = re >>> 0, de = ne, be = ce, ne = X, ce = $, X = q, $ = H, re = F + l, q = K + E + (re / 4294967296 >>> 0) >>> 0, H = re >>> 0, K = D, F = O, D = V, O = x, V = n, x = A, re = l + C, n = E + y + (re / 4294967296 >>> 0) >>> 0, A = re >>> 0;
|
|
10922
|
+
re = u[0][1] + A, u[0][0] = u[0][0] + n + (re / 4294967296 >>> 0) >>> 0, u[0][1] = re >>> 0, re = u[1][1] + x, u[1][0] = u[1][0] + V + (re / 4294967296 >>> 0) >>> 0, u[1][1] = re >>> 0, re = u[2][1] + O, u[2][0] = u[2][0] + D + (re / 4294967296 >>> 0) >>> 0, u[2][1] = re >>> 0, re = u[3][1] + F, u[3][0] = u[3][0] + K + (re / 4294967296 >>> 0) >>> 0, u[3][1] = re >>> 0, re = u[4][1] + H, u[4][0] = u[4][0] + q + (re / 4294967296 >>> 0) >>> 0, u[4][1] = re >>> 0, re = u[5][1] + $, u[5][0] = u[5][0] + X + (re / 4294967296 >>> 0) >>> 0, u[5][1] = re >>> 0, re = u[6][1] + ce, u[6][0] = u[6][0] + ne + (re / 4294967296 >>> 0) >>> 0, u[6][1] = re >>> 0, re = u[7][1] + be, u[7][0] = u[7][0] + de + (re / 4294967296 >>> 0) >>> 0, u[7][1] = re >>> 0, N -= 128;
|
|
10921
10923
|
}
|
|
10922
10924
|
}
|
|
10923
10925
|
return Or.exports;
|
|
@@ -11290,7 +11292,7 @@ function Ds() {
|
|
|
11290
11292
|
}
|
|
11291
11293
|
function p(f, U) {
|
|
11292
11294
|
var N = [ee(), ee(), ee(), ee()], o, k = s(U, 32);
|
|
11293
|
-
for (k[0] &= 248, k[31] &= 127, k[31] |= 64, $(N, k),
|
|
11295
|
+
for (k[0] &= 248, k[31] &= 127, k[31] |= 64, $(N, k), A(f, N), o = 0; o < 32; ++o)
|
|
11294
11296
|
U[o + 32] = f[o];
|
|
11295
11297
|
return 0;
|
|
11296
11298
|
}
|
|
@@ -11303,7 +11305,7 @@ function Ds() {
|
|
|
11303
11305
|
for (k = 0; k < 32; ++k)
|
|
11304
11306
|
f[32 + k] = se[32 + k];
|
|
11305
11307
|
var z = s(f.subarray(32), N + 32);
|
|
11306
|
-
for (h(z), $(J, z),
|
|
11308
|
+
for (h(z), $(J, z), A(f, J), k = 32; k < 64; ++k)
|
|
11307
11309
|
f[k] = o[k];
|
|
11308
11310
|
var te = s(f, N + 64);
|
|
11309
11311
|
for (h(te), k = 32; k < 64; ++k)
|
|
@@ -11324,7 +11326,7 @@ function Ds() {
|
|
|
11324
11326
|
for (k = 0; k < 32; ++k)
|
|
11325
11327
|
f[k + 32] = o[k];
|
|
11326
11328
|
var le = s(f, N);
|
|
11327
|
-
if (h(le), X(J, se, le), $(se, U.subarray(32)), i(J, se),
|
|
11329
|
+
if (h(le), X(J, se, le), $(se, U.subarray(32)), i(J, se), A(M, J), N -= 64, F(U, 0, M, 0)) {
|
|
11328
11330
|
for (k = 0; k < N; ++k)
|
|
11329
11331
|
f[k] = 0;
|
|
11330
11332
|
return -1;
|
|
@@ -11360,7 +11362,7 @@ function Ds() {
|
|
|
11360
11362
|
for (var o = 0; o < 4; ++o)
|
|
11361
11363
|
be(f[o], U[o], N);
|
|
11362
11364
|
}
|
|
11363
|
-
function
|
|
11365
|
+
function A(f, U) {
|
|
11364
11366
|
var N = ee(), o = ee(), k = ee();
|
|
11365
11367
|
ce(k, U[2]), ve(N, U[0], k), ve(o, U[1], k), V(f, o), f[31] ^= H(N) << 7;
|
|
11366
11368
|
}
|
|
@@ -11378,7 +11380,7 @@ function Ds() {
|
|
|
11378
11380
|
}
|
|
11379
11381
|
function x(f, U) {
|
|
11380
11382
|
var N = ee(), o = ee(), k = ee(), G = ee(), M = ee(), J = ee(), se = ee();
|
|
11381
|
-
return ne(f[2], I), D(f[1], U),
|
|
11383
|
+
return ne(f[2], I), D(f[1], U), Ke(k, f[1]), ve(G, k, L), re(k, k, f[2]), Ce(G, f[2], G), Ke(M, G), Ke(J, M), ve(se, J, M), ve(N, se, k), ve(N, N, G), O(N, N), ve(N, N, k), ve(N, N, G), ve(N, N, G), ve(f[0], N, G), Ke(o, f[0]), ve(o, o, G), K(o, k) && ve(f[0], f[0], m), Ke(o, f[0]), ve(o, o, G), K(o, k) ? -1 : (H(f[0]) === U[31] >> 7 && re(f[0], u, f[0]), ve(f[3], f[0], f[1]), 0);
|
|
11382
11384
|
}
|
|
11383
11385
|
function D(f, U) {
|
|
11384
11386
|
var N;
|
|
@@ -11391,7 +11393,7 @@ function Ds() {
|
|
|
11391
11393
|
for (o = 0; o < 16; ++o)
|
|
11392
11394
|
N[o] = U[o];
|
|
11393
11395
|
for (o = 250; o >= 0; --o)
|
|
11394
|
-
|
|
11396
|
+
Ke(N, N), o !== 1 && ve(N, N, U);
|
|
11395
11397
|
for (o = 0; o < 16; ++o)
|
|
11396
11398
|
f[o] = N[o];
|
|
11397
11399
|
}
|
|
@@ -11431,7 +11433,7 @@ function Ds() {
|
|
|
11431
11433
|
for (o = 0; o < 16; ++o)
|
|
11432
11434
|
N[o] = U[o];
|
|
11433
11435
|
for (o = 253; o >= 0; --o)
|
|
11434
|
-
|
|
11436
|
+
Ke(N, N), o !== 2 && o !== 4 && ve(N, N, U);
|
|
11435
11437
|
for (o = 0; o < 16; ++o)
|
|
11436
11438
|
f[o] = N[o];
|
|
11437
11439
|
}
|
|
@@ -11460,12 +11462,12 @@ function Ds() {
|
|
|
11460
11462
|
for (var o = 0; o < 16; ++o)
|
|
11461
11463
|
f[o] = U[o] - N[o];
|
|
11462
11464
|
}
|
|
11463
|
-
function
|
|
11465
|
+
function Ke(f, U) {
|
|
11464
11466
|
ve(f, U, U);
|
|
11465
11467
|
}
|
|
11466
11468
|
function ve(f, U, N) {
|
|
11467
|
-
var o, k, G = 0, M = 0, J = 0, se = 0, le = 0, z = 0, te = 0, he = 0, ye = 0, pe = 0, Be = 0, De = 0, Ve = 0, Le = 0, Ne = 0, Re = 0, Pe = 0, He = 0, Je = 0, et = 0, Ye = 0, rt = 0, nt = 0, it = 0, ot = 0, ft = 0, lt = 0, Et = 0, St = 0, Ut = 0, Kt = 0,
|
|
11468
|
-
o = U[0], G += o *
|
|
11469
|
+
var o, k, G = 0, M = 0, J = 0, se = 0, le = 0, z = 0, te = 0, he = 0, ye = 0, pe = 0, Be = 0, De = 0, Ve = 0, Le = 0, Ne = 0, Re = 0, Pe = 0, He = 0, Je = 0, et = 0, Ye = 0, rt = 0, nt = 0, it = 0, ot = 0, ft = 0, lt = 0, Et = 0, St = 0, Ut = 0, Kt = 0, Me = N[0], je = N[1], ze = N[2], qe = N[3], Q = N[4], _ = N[5], ae = N[6], ge = N[7], Ie = N[8], Fe = N[9], Qe = N[10], Xe = N[11], xe = N[12], We = N[13], Ze = N[14], _e = N[15];
|
|
11470
|
+
o = U[0], G += o * Me, M += o * je, J += o * ze, se += o * qe, le += o * Q, z += o * _, te += o * ae, he += o * ge, ye += o * Ie, pe += o * Fe, Be += o * Qe, De += o * Xe, Ve += o * xe, Le += o * We, Ne += o * Ze, Re += o * _e, o = U[1], M += o * Me, J += o * je, se += o * ze, le += o * qe, z += o * Q, te += o * _, he += o * ae, ye += o * ge, pe += o * Ie, Be += o * Fe, De += o * Qe, Ve += o * Xe, Le += o * xe, Ne += o * We, Re += o * Ze, Pe += o * _e, o = U[2], J += o * Me, se += o * je, le += o * ze, z += o * qe, te += o * Q, he += o * _, ye += o * ae, pe += o * ge, Be += o * Ie, De += o * Fe, Ve += o * Qe, Le += o * Xe, Ne += o * xe, Re += o * We, Pe += o * Ze, He += o * _e, o = U[3], se += o * Me, le += o * je, z += o * ze, te += o * qe, he += o * Q, ye += o * _, pe += o * ae, Be += o * ge, De += o * Ie, Ve += o * Fe, Le += o * Qe, Ne += o * Xe, Re += o * xe, Pe += o * We, He += o * Ze, Je += o * _e, o = U[4], le += o * Me, z += o * je, te += o * ze, he += o * qe, ye += o * Q, pe += o * _, Be += o * ae, De += o * ge, Ve += o * Ie, Le += o * Fe, Ne += o * Qe, Re += o * Xe, Pe += o * xe, He += o * We, Je += o * Ze, et += o * _e, o = U[5], z += o * Me, te += o * je, he += o * ze, ye += o * qe, pe += o * Q, Be += o * _, De += o * ae, Ve += o * ge, Le += o * Ie, Ne += o * Fe, Re += o * Qe, Pe += o * Xe, He += o * xe, Je += o * We, et += o * Ze, Ye += o * _e, o = U[6], te += o * Me, he += o * je, ye += o * ze, pe += o * qe, Be += o * Q, De += o * _, Ve += o * ae, Le += o * ge, Ne += o * Ie, Re += o * Fe, Pe += o * Qe, He += o * Xe, Je += o * xe, et += o * We, Ye += o * Ze, rt += o * _e, o = U[7], he += o * Me, ye += o * je, pe += o * ze, Be += o * qe, De += o * Q, Ve += o * _, Le += o * ae, Ne += o * ge, Re += o * Ie, Pe += o * Fe, He += o * Qe, Je += o * Xe, et += o * xe, Ye += o * We, rt += o * Ze, nt += o * _e, o = U[8], ye += o * Me, pe += o * je, Be += o * ze, De += o * qe, Ve += o * Q, Le += o * _, Ne += o * ae, Re += o * ge, Pe += o * Ie, He += o * Fe, Je += o * Qe, et += o * Xe, Ye += o * xe, rt += o * We, nt += o * Ze, it += o * _e, o = U[9], pe += o * Me, Be += o * je, De += o * ze, Ve += o * qe, Le += o * Q, Ne += o * _, Re += o * ae, Pe += o * ge, He += o * Ie, Je += o * Fe, et += o * Qe, Ye += o * Xe, rt += o * xe, nt += o * We, it += o * Ze, ot += o * _e, o = U[10], Be += o * Me, De += o * je, Ve += o * ze, Le += o * qe, Ne += o * Q, Re += o * _, Pe += o * ae, He += o * ge, Je += o * Ie, et += o * Fe, Ye += o * Qe, rt += o * Xe, nt += o * xe, it += o * We, ot += o * Ze, ft += o * _e, o = U[11], De += o * Me, Ve += o * je, Le += o * ze, Ne += o * qe, Re += o * Q, Pe += o * _, He += o * ae, Je += o * ge, et += o * Ie, Ye += o * Fe, rt += o * Qe, nt += o * Xe, it += o * xe, ot += o * We, ft += o * Ze, lt += o * _e, o = U[12], Ve += o * Me, Le += o * je, Ne += o * ze, Re += o * qe, Pe += o * Q, He += o * _, Je += o * ae, et += o * ge, Ye += o * Ie, rt += o * Fe, nt += o * Qe, it += o * Xe, ot += o * xe, ft += o * We, lt += o * Ze, Et += o * _e, o = U[13], Le += o * Me, Ne += o * je, Re += o * ze, Pe += o * qe, He += o * Q, Je += o * _, et += o * ae, Ye += o * ge, rt += o * Ie, nt += o * Fe, it += o * Qe, ot += o * Xe, ft += o * xe, lt += o * We, Et += o * Ze, St += o * _e, o = U[14], Ne += o * Me, Re += o * je, Pe += o * ze, He += o * qe, Je += o * Q, et += o * _, Ye += o * ae, rt += o * ge, nt += o * Ie, it += o * Fe, ot += o * Qe, ft += o * Xe, lt += o * xe, Et += o * We, St += o * Ze, Ut += o * _e, o = U[15], Re += o * Me, Pe += o * je, He += o * ze, Je += o * qe, et += o * Q, Ye += o * _, rt += o * ae, nt += o * ge, it += o * Ie, ot += o * Fe, ft += o * Qe, lt += o * Xe, Et += o * xe, St += o * We, Ut += o * Ze, Kt += o * _e, G += 38 * Pe, M += 38 * He, J += 38 * Je, se += 38 * et, le += 38 * Ye, z += 38 * rt, te += 38 * nt, he += 38 * it, ye += 38 * ot, pe += 38 * ft, Be += 38 * lt, De += 38 * Et, Ve += 38 * St, Le += 38 * Ut, Ne += 38 * Kt, k = 1, o = G + k + 65535, k = Math.floor(o / 65536), G = o - k * 65536, o = M + k + 65535, k = Math.floor(o / 65536), M = o - k * 65536, o = J + k + 65535, k = Math.floor(o / 65536), J = o - k * 65536, o = se + k + 65535, k = Math.floor(o / 65536), se = o - k * 65536, o = le + k + 65535, k = Math.floor(o / 65536), le = o - k * 65536, o = z + k + 65535, k = Math.floor(o / 65536), z = o - k * 65536, o = te + k + 65535, k = Math.floor(o / 65536), te = o - k * 65536, o = he + k + 65535, k = Math.floor(o / 65536), he = o - k * 65536, o = ye + k + 65535, k = Math.floor(o / 65536), ye = o - k * 65536, o = pe + k + 65535, k = Math.floor(o / 65536), pe = o - k * 65536, o = Be + k + 65535, k = Math.floor(o / 65536), Be = o - k * 65536, o = De + k + 65535, k = Math.floor(o / 65536), De = o - k * 65536, o = Ve + k + 65535, k = Math.floor(o / 65536), Ve = o - k * 65536, o = Le + k + 65535, k = Math.floor(o / 65536), Le = o - k * 65536, o = Ne + k + 65535, k = Math.floor(o / 65536), Ne = o - k * 65536, o = Re + k + 65535, k = Math.floor(o / 65536), Re = o - k * 65536, G += k - 1 + 37 * (k - 1), k = 1, o = G + k + 65535, k = Math.floor(o / 65536), G = o - k * 65536, o = M + k + 65535, k = Math.floor(o / 65536), M = o - k * 65536, o = J + k + 65535, k = Math.floor(o / 65536), J = o - k * 65536, o = se + k + 65535, k = Math.floor(o / 65536), se = o - k * 65536, o = le + k + 65535, k = Math.floor(o / 65536), le = o - k * 65536, o = z + k + 65535, k = Math.floor(o / 65536), z = o - k * 65536, o = te + k + 65535, k = Math.floor(o / 65536), te = o - k * 65536, o = he + k + 65535, k = Math.floor(o / 65536), he = o - k * 65536, o = ye + k + 65535, k = Math.floor(o / 65536), ye = o - k * 65536, o = pe + k + 65535, k = Math.floor(o / 65536), pe = o - k * 65536, o = Be + k + 65535, k = Math.floor(o / 65536), Be = o - k * 65536, o = De + k + 65535, k = Math.floor(o / 65536), De = o - k * 65536, o = Ve + k + 65535, k = Math.floor(o / 65536), Ve = o - k * 65536, o = Le + k + 65535, k = Math.floor(o / 65536), Le = o - k * 65536, o = Ne + k + 65535, k = Math.floor(o / 65536), Ne = o - k * 65536, o = Re + k + 65535, k = Math.floor(o / 65536), Re = o - k * 65536, G += k - 1 + 37 * (k - 1), f[0] = G, f[1] = M, f[2] = J, f[3] = se, f[4] = le, f[5] = z, f[6] = te, f[7] = he, f[8] = ye, f[9] = pe, f[10] = Be, f[11] = De, f[12] = Ve, f[13] = Le, f[14] = Ne, f[15] = Re;
|
|
11469
11471
|
}
|
|
11470
11472
|
return Kr;
|
|
11471
11473
|
}
|
|
@@ -11818,8 +11820,8 @@ function Ks() {
|
|
|
11818
11820
|
}
|
|
11819
11821
|
var h = m.authenticatedAttributes || [];
|
|
11820
11822
|
if (h.length > 0) {
|
|
11821
|
-
for (var i = !1, n = !1,
|
|
11822
|
-
var V = h[
|
|
11823
|
+
for (var i = !1, n = !1, A = 0; A < h.length; ++A) {
|
|
11824
|
+
var V = h[A];
|
|
11823
11825
|
if (!i && V.type === t.pki.oids.contentType) {
|
|
11824
11826
|
if (i = !0, n)
|
|
11825
11827
|
break;
|
|
@@ -11956,8 +11958,8 @@ function Ks() {
|
|
|
11956
11958
|
e.Type.SET,
|
|
11957
11959
|
!0,
|
|
11958
11960
|
[]
|
|
11959
|
-
),
|
|
11960
|
-
var V = i.authenticatedAttributes[
|
|
11961
|
+
), A = 0; A < i.authenticatedAttributes.length; ++A) {
|
|
11962
|
+
var V = i.authenticatedAttributes[A];
|
|
11961
11963
|
V.type === t.pki.oids.messageDigest ? V.value = m[i.digestAlgorithm].digest() : V.type === t.pki.oids.signingTime && (V.value || (V.value = R)), n.value.push(u(V)), i.authenticatedAttributesAsn1.value.push(u(V));
|
|
11962
11964
|
}
|
|
11963
11965
|
v = e.toDer(n).getBytes(), i.md.start().update(v);
|
|
@@ -12596,7 +12598,8 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
12596
12598
|
markdownPlugins: {},
|
|
12597
12599
|
markdownOptions: {},
|
|
12598
12600
|
markdownRender: {},
|
|
12599
|
-
onMarkdownAfterRender: {}
|
|
12601
|
+
onMarkdownAfterRender: {},
|
|
12602
|
+
disabledMarkdownIncremental: { type: Boolean }
|
|
12600
12603
|
}, {
|
|
12601
12604
|
messages: {
|
|
12602
12605
|
required: !0,
|
|
@@ -12613,16 +12616,16 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
12613
12616
|
emits: /* @__PURE__ */ Tt(["send", "cancel", "clear", "change-record", "change-collapse", "change-theme", "change-aside-width", "change-workspace-width", "click-logo", "bubble-event", "close-workspace", "scroll-bottom"], ["update:messages", "update:modelValue", "update:loading", "update:record-id"]),
|
|
12614
12617
|
setup(t, { expose: e, emit: a }) {
|
|
12615
12618
|
Hr((Q) => ({
|
|
12616
|
-
|
|
12617
|
-
|
|
12618
|
-
|
|
12619
|
-
|
|
12620
|
-
|
|
12621
|
-
|
|
12622
|
-
|
|
12623
|
-
|
|
12624
|
-
|
|
12625
|
-
|
|
12619
|
+
v4f3065fc: Q.primaryColor,
|
|
12620
|
+
v89899ba8: u.value,
|
|
12621
|
+
v61ef8bba: r.value[0],
|
|
12622
|
+
v61ef8b7c: r.value[1],
|
|
12623
|
+
v61ef8b3e: r.value[2],
|
|
12624
|
+
v61ef8b00: r.value[3],
|
|
12625
|
+
v61ef8ac2: r.value[4],
|
|
12626
|
+
v2c68161c: St.value,
|
|
12627
|
+
v76987bb1: Ut.value,
|
|
12628
|
+
dd363858: Et.value
|
|
12626
12629
|
}));
|
|
12627
12630
|
const d = t, b = parseFloat(getComputedStyle(document.documentElement).fontSize), S = d.defaultInputHeight ?? 62, c = Te(S), r = we(() => As(d.primaryColor, 5, 0.8, 4));
|
|
12628
12631
|
function g(Q) {
|
|
@@ -12651,7 +12654,7 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
12651
12654
|
const h = we(() => {
|
|
12652
12655
|
if (L.value[L.value.length - 1]?.nextTips)
|
|
12653
12656
|
return L.value[L.value.length - 1].nextTips;
|
|
12654
|
-
}), i = we(() => L.value.filter((Q) => Q.role === "user")), n = Te(),
|
|
12657
|
+
}), i = we(() => L.value.filter((Q) => Q.role === "user")), n = Te(), A = Te(), V = Te(0), x = Te(!1), D = Te(!1), O = Te(!1);
|
|
12655
12658
|
let K = null, F = !1, q = 0;
|
|
12656
12659
|
const H = () => {
|
|
12657
12660
|
!d.autoScroll || x.value || Qr(() => {
|
|
@@ -12715,21 +12718,21 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
12715
12718
|
ae = Math.max(ge, Math.min(700, window.innerWidth - ge, ae)), ne.value = ae;
|
|
12716
12719
|
}, re = () => {
|
|
12717
12720
|
ce.value = !1, document.body.style.userSelect = "";
|
|
12718
|
-
},
|
|
12721
|
+
}, Ke = Nt(d.uuid + "__kl-ai-chat_workspace-width", 50), ve = Te(!1), f = Te(0), U = Te(0), N = Te(null);
|
|
12719
12722
|
vt(
|
|
12720
|
-
() =>
|
|
12723
|
+
() => Ke.value,
|
|
12721
12724
|
(Q) => {
|
|
12722
12725
|
p("change-workspace-width", Q);
|
|
12723
12726
|
}
|
|
12724
12727
|
);
|
|
12725
12728
|
const o = (Q) => {
|
|
12726
|
-
ve.value = !0, f.value = Q.clientX, U.value =
|
|
12729
|
+
ve.value = !0, f.value = Q.clientX, U.value = Ke.value, document.body.style.userSelect = "none";
|
|
12727
12730
|
}, k = (Q) => {
|
|
12728
12731
|
if (!ve.value || !N.value) return;
|
|
12729
12732
|
const _ = N.value.offsetWidth, ge = (f.value - Q.clientX) / _ * 100;
|
|
12730
12733
|
let Ie = U.value + ge;
|
|
12731
|
-
const
|
|
12732
|
-
Ie = Math.max(20, Math.min(
|
|
12734
|
+
const Fe = (_ - Ya) / _ * 100;
|
|
12735
|
+
Ie = Math.max(20, Math.min(Fe, Ie)), Ke.value = Ie;
|
|
12733
12736
|
}, G = () => {
|
|
12734
12737
|
ve.value = !1, document.body.style.userSelect = "";
|
|
12735
12738
|
};
|
|
@@ -12746,10 +12749,10 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
12746
12749
|
qr(() => {
|
|
12747
12750
|
d.defaultRecordId && R(
|
|
12748
12751
|
I.value.find((Q) => Q.id === d.defaultRecordId)
|
|
12749
|
-
), M(), document.addEventListener("mousemove", J), document.addEventListener("mouseup", se), window.addEventListener("resize", M),
|
|
12752
|
+
), M(), document.addEventListener("mousemove", J), document.addEventListener("mouseup", se), window.addEventListener("resize", M), A.value && (V.value = A.value.offsetWidth, le = new ResizeObserver((Q) => {
|
|
12750
12753
|
for (const _ of Q)
|
|
12751
12754
|
V.value = _.contentRect.width;
|
|
12752
|
-
}), le.observe(
|
|
12755
|
+
}), le.observe(A.value));
|
|
12753
12756
|
}), $a(() => {
|
|
12754
12757
|
document.removeEventListener("mousemove", J), document.removeEventListener("mouseup", se), window.removeEventListener("resize", M), K && (clearTimeout(K), K = null), le && (le.disconnect(), le = null);
|
|
12755
12758
|
});
|
|
@@ -12822,29 +12825,29 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
12822
12825
|
backgroundColor: "var(--kl-background-color, #fff)"
|
|
12823
12826
|
};
|
|
12824
12827
|
return z.value && (Q.transition = "all 0.2s ease"), Q;
|
|
12825
|
-
}), lt = we(() => d.hasSenderTools ? ye.value && d.showSender || d.alwaysShowSenderTools : !1), Et = we(() => `calc(100% - ${(d.showSender && ye.value ? c.value + 52 : 0) / b}rem - ${(lt.value ? 40 : 0) / b}rem - 2rem)`), St = we(() => `${d.headerHeight / b}rem`), Ut = we(() => `${(d.headerHeight + 6) / b}rem`), Kt = we(() => ((d.showSender && ye.value ? c.value + 52 : 0) + (lt.value ? 40 : 0)) / b + "rem"),
|
|
12828
|
+
}), lt = we(() => d.hasSenderTools ? ye.value && d.showSender || d.alwaysShowSenderTools : !1), Et = we(() => `calc(100% - ${(d.showSender && ye.value ? c.value + 52 : 0) / b}rem - ${(lt.value ? 40 : 0) / b}rem - 2rem)`), St = we(() => `${d.headerHeight / b}rem`), Ut = we(() => `${(d.headerHeight + 6) / b}rem`), Kt = we(() => ((d.showSender && ye.value ? c.value + 52 : 0) + (lt.value ? 40 : 0)) / b + "rem"), Me = we(() => (d.markdownClassName || "") + (d.themeMode === "dark" ? " dark" : "")), je = we(
|
|
12826
12829
|
() => V.value > 0 && V.value < Eo
|
|
12827
12830
|
), ze = we(() => !d.showWorkspace || z.value ? { width: "100%" } : {
|
|
12828
|
-
width: `${100 -
|
|
12831
|
+
width: `${100 - Ke.value}%`,
|
|
12829
12832
|
minWidth: `${Ya}px`
|
|
12830
12833
|
}), qe = we(() => z.value ? {} : {
|
|
12831
|
-
width: `${
|
|
12834
|
+
width: `${Ke.value}%`
|
|
12832
12835
|
});
|
|
12833
12836
|
return e({
|
|
12834
12837
|
isMobile: z,
|
|
12835
12838
|
collapse: te,
|
|
12836
12839
|
asideWidth: ne,
|
|
12837
|
-
workspaceWidth:
|
|
12840
|
+
workspaceWidth: Ke,
|
|
12838
12841
|
scrollToBottom: X
|
|
12839
12842
|
}), (Q, _) => (ue(), fe("div", {
|
|
12840
|
-
class:
|
|
12843
|
+
class: Oe(["kernelift-chat-container", {
|
|
12841
12844
|
dark: t.themeMode === "dark"
|
|
12842
12845
|
}])
|
|
12843
12846
|
}, [
|
|
12844
12847
|
me(Q.$slots, "left-aside", { mobile: z.value }, void 0, !0),
|
|
12845
12848
|
Y("div", Gs, [
|
|
12846
12849
|
It($t, { name: "user-messages-fade" }, {
|
|
12847
|
-
default:
|
|
12850
|
+
default: Ge(() => [
|
|
12848
12851
|
O.value ? (ue(), fe("div", {
|
|
12849
12852
|
key: 0,
|
|
12850
12853
|
class: "kernelift-chat-container__user-messages-overlay",
|
|
@@ -12875,7 +12878,7 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
12875
12878
|
_: 1
|
|
12876
12879
|
}),
|
|
12877
12880
|
Y("aside", {
|
|
12878
|
-
class:
|
|
12881
|
+
class: Oe(["kernelift-chat-container__aside", it.value]),
|
|
12879
12882
|
style: At(ot.value),
|
|
12880
12883
|
onClick: _t(nt, ["self"])
|
|
12881
12884
|
}, [
|
|
@@ -12904,23 +12907,23 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
12904
12907
|
onChangeCollapse: Be,
|
|
12905
12908
|
onChangeTheme: De
|
|
12906
12909
|
}, {
|
|
12907
|
-
logo:
|
|
12910
|
+
logo: Ge(() => [
|
|
12908
12911
|
me(Q.$slots, "logo", { mobile: z.value }, void 0, !0)
|
|
12909
12912
|
]),
|
|
12910
|
-
footer:
|
|
12913
|
+
footer: Ge(() => [
|
|
12911
12914
|
me(Q.$slots, "record-footer", {
|
|
12912
12915
|
record: C.value,
|
|
12913
12916
|
mobile: z.value
|
|
12914
12917
|
}, void 0, !0)
|
|
12915
12918
|
]),
|
|
12916
|
-
"new-chat-button":
|
|
12919
|
+
"new-chat-button": Ge(({ execute: ae }) => [
|
|
12917
12920
|
me(Q.$slots, "new-chat-button", {
|
|
12918
12921
|
mobile: z.value,
|
|
12919
12922
|
execute: ae,
|
|
12920
12923
|
disabled: t.disabledCreateRecord
|
|
12921
12924
|
}, void 0, !0)
|
|
12922
12925
|
]),
|
|
12923
|
-
"record-dropdown":
|
|
12926
|
+
"record-dropdown": Ge(() => [
|
|
12924
12927
|
me(Q.$slots, "record-dropdown", { mobile: z.value }, void 0, !0)
|
|
12925
12928
|
]),
|
|
12926
12929
|
_: 3
|
|
@@ -12929,7 +12932,7 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
12929
12932
|
], 6),
|
|
12930
12933
|
!tt(te) && !z.value ? (ue(), fe("div", {
|
|
12931
12934
|
key: 0,
|
|
12932
|
-
class:
|
|
12935
|
+
class: Oe(["kernelift-chat-container__resize-handle", {
|
|
12933
12936
|
"kernelift-chat-container__resize-handle--dragging": ce.value
|
|
12934
12937
|
}]),
|
|
12935
12938
|
onMousedown: ee
|
|
@@ -12937,13 +12940,13 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
12937
12940
|
Y("main", {
|
|
12938
12941
|
ref_key: "mainAreaRef",
|
|
12939
12942
|
ref: N,
|
|
12940
|
-
class:
|
|
12943
|
+
class: Oe(["kernelift-chat-container__main", {
|
|
12941
12944
|
"kernelift-chat-container__main--flex": t.showWorkspace
|
|
12942
12945
|
}])
|
|
12943
12946
|
}, [
|
|
12944
12947
|
Y("div", {
|
|
12945
12948
|
ref_key: "chatAreaRef",
|
|
12946
|
-
ref:
|
|
12949
|
+
ref: A,
|
|
12947
12950
|
class: "kernelift-chat-container__chat-area",
|
|
12948
12951
|
style: At(ze.value)
|
|
12949
12952
|
}, [
|
|
@@ -13038,7 +13041,7 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
13038
13041
|
modelValue: L.value[ge],
|
|
13039
13042
|
"onUpdate:modelValue": (Ie) => L.value[ge] = Ie,
|
|
13040
13043
|
key: ae.id,
|
|
13041
|
-
"markdown-class":
|
|
13044
|
+
"markdown-class": Me.value,
|
|
13042
13045
|
"is-last": ge === L.value.length - 1,
|
|
13043
13046
|
"on-copy": t.onCopy,
|
|
13044
13047
|
i18n: t.i18n,
|
|
@@ -13051,47 +13054,48 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
13051
13054
|
"theme-mode": t.themeMode,
|
|
13052
13055
|
"icon-color": t.primaryColor,
|
|
13053
13056
|
"markdown-render": t.markdownRender,
|
|
13057
|
+
"disabled-markdown-incremental": t.disabledMarkdownIncremental,
|
|
13054
13058
|
class: "kernelift-chat-bubble",
|
|
13055
13059
|
onBubbleEvent: Ve
|
|
13056
13060
|
}, {
|
|
13057
|
-
header:
|
|
13061
|
+
header: Ge(() => [
|
|
13058
13062
|
me(Q.$slots, "bubble-header", {
|
|
13059
13063
|
data: ae,
|
|
13060
13064
|
mobile: z.value
|
|
13061
13065
|
}, void 0, !0)
|
|
13062
13066
|
]),
|
|
13063
|
-
footer:
|
|
13067
|
+
footer: Ge(() => [
|
|
13064
13068
|
me(Q.$slots, "bubble-footer", {
|
|
13065
13069
|
data: ae,
|
|
13066
13070
|
mobile: z.value
|
|
13067
13071
|
}, void 0, !0)
|
|
13068
13072
|
]),
|
|
13069
|
-
"bubble-event":
|
|
13073
|
+
"bubble-event": Ge(() => [
|
|
13070
13074
|
me(Q.$slots, "bubble-event", {
|
|
13071
13075
|
data: ae,
|
|
13072
13076
|
mobile: z.value
|
|
13073
13077
|
}, void 0, !0)
|
|
13074
13078
|
]),
|
|
13075
|
-
"content-header":
|
|
13079
|
+
"content-header": Ge(() => [
|
|
13076
13080
|
me(Q.$slots, "bubble-content-header", {
|
|
13077
13081
|
data: ae,
|
|
13078
13082
|
mobile: z.value
|
|
13079
13083
|
}, void 0, !0)
|
|
13080
13084
|
]),
|
|
13081
|
-
"content-footer":
|
|
13085
|
+
"content-footer": Ge(() => [
|
|
13082
13086
|
me(Q.$slots, "bubble-content-footer", {
|
|
13083
13087
|
data: ae,
|
|
13084
13088
|
mobile: z.value
|
|
13085
13089
|
}, void 0, !0)
|
|
13086
13090
|
]),
|
|
13087
|
-
"thinking-header":
|
|
13091
|
+
"thinking-header": Ge(() => [
|
|
13088
13092
|
me(Q.$slots, "bubble-thinking-header", {
|
|
13089
13093
|
data: ae,
|
|
13090
13094
|
mobile: z.value
|
|
13091
13095
|
}, void 0, !0)
|
|
13092
13096
|
]),
|
|
13093
13097
|
_: 2
|
|
13094
|
-
}, 1032, ["modelValue", "onUpdate:modelValue", "markdown-class", "is-last", "on-copy", "i18n", "is-mobile", "plugins", "options", "ext-events", "after-render", "data-message-id", "theme-mode", "icon-color", "markdown-render"]))), 128)),
|
|
13098
|
+
}, 1032, ["modelValue", "onUpdate:modelValue", "markdown-class", "is-last", "on-copy", "i18n", "is-mobile", "plugins", "options", "ext-events", "after-render", "data-message-id", "theme-mode", "icon-color", "markdown-render", "disabled-markdown-incremental"]))), 128)),
|
|
13095
13099
|
t.isGenerateLoading ? (ue(), Rt(ea, {
|
|
13096
13100
|
key: 0,
|
|
13097
13101
|
"model-value": {
|
|
@@ -13102,7 +13106,7 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
13102
13106
|
},
|
|
13103
13107
|
i18n: t.i18n,
|
|
13104
13108
|
"theme-mode": t.themeMode,
|
|
13105
|
-
"markdown-class":
|
|
13109
|
+
"markdown-class": Me.value,
|
|
13106
13110
|
"is-mobile": z.value,
|
|
13107
13111
|
plugins: t.markdownPlugins,
|
|
13108
13112
|
options: t.markdownOptions,
|
|
@@ -13111,10 +13115,10 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
13111
13115
|
"icon-color": t.primaryColor,
|
|
13112
13116
|
"after-render": t.onMarkdownAfterRender
|
|
13113
13117
|
}, {
|
|
13114
|
-
content:
|
|
13118
|
+
content: Ge(() => [
|
|
13115
13119
|
me(Q.$slots, "bubble-loading-content", { mobile: z.value }, () => [
|
|
13116
13120
|
Y("div", {
|
|
13117
|
-
class:
|
|
13121
|
+
class: Oe(["kernelift-chat-container__loading-text", Me.value])
|
|
13118
13122
|
}, [
|
|
13119
13123
|
It(en, {
|
|
13120
13124
|
style: { width: "1.125rem", height: "1.125rem", "margin-right": "0.5rem" },
|
|
@@ -13149,7 +13153,7 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
13149
13153
|
}, Ue(ae), 9, ho))), 128))
|
|
13150
13154
|
])) : Ae("", !0),
|
|
13151
13155
|
It($t, { name: "scroll-to-bottom-fade" }, {
|
|
13152
|
-
default:
|
|
13156
|
+
default: Ge(() => [
|
|
13153
13157
|
D.value ? (ue(), fe("div", {
|
|
13154
13158
|
key: 0,
|
|
13155
13159
|
class: "kernelift-chat-container__scroll-to-bottom",
|
|
@@ -13190,7 +13194,7 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
13190
13194
|
onSend: v,
|
|
13191
13195
|
onCancel: T
|
|
13192
13196
|
}, {
|
|
13193
|
-
tools:
|
|
13197
|
+
tools: Ge(({ value: ae, loading: ge }) => [
|
|
13194
13198
|
me(Q.$slots, "sender-footer-tools", {
|
|
13195
13199
|
value: ae,
|
|
13196
13200
|
loading: ge,
|
|
@@ -13199,28 +13203,28 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
13199
13203
|
mobile: z.value
|
|
13200
13204
|
}, void 0, !0)
|
|
13201
13205
|
]),
|
|
13202
|
-
"send-button":
|
|
13206
|
+
"send-button": Ge(({ execute: ae, state: ge }) => [
|
|
13203
13207
|
me(Q.$slots, "send-button", {
|
|
13204
13208
|
execute: ae,
|
|
13205
13209
|
state: ge,
|
|
13206
13210
|
mobile: z.value
|
|
13207
13211
|
}, void 0, !0)
|
|
13208
13212
|
]),
|
|
13209
|
-
"think-button":
|
|
13213
|
+
"think-button": Ge(({ execute: ae, state: ge }) => [
|
|
13210
13214
|
me(Q.$slots, "think-button", {
|
|
13211
13215
|
state: ge,
|
|
13212
13216
|
execute: ae,
|
|
13213
13217
|
mobile: z.value
|
|
13214
13218
|
}, void 0, !0)
|
|
13215
13219
|
]),
|
|
13216
|
-
"net-button":
|
|
13220
|
+
"net-button": Ge(({ execute: ae, state: ge }) => [
|
|
13217
13221
|
me(Q.$slots, "net-button", {
|
|
13218
13222
|
state: ge,
|
|
13219
13223
|
execute: ae,
|
|
13220
13224
|
mobile: z.value
|
|
13221
13225
|
}, void 0, !0)
|
|
13222
13226
|
]),
|
|
13223
|
-
textarea:
|
|
13227
|
+
textarea: Ge(({ execute: ae, state: ge, height: Ie }) => [
|
|
13224
13228
|
me(Q.$slots, "sender-textarea", {
|
|
13225
13229
|
execute: ae,
|
|
13226
13230
|
state: ge,
|
|
@@ -13240,14 +13244,14 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
13240
13244
|
], 4),
|
|
13241
13245
|
t.showWorkspace && !z.value ? (ue(), fe("div", {
|
|
13242
13246
|
key: 0,
|
|
13243
|
-
class:
|
|
13247
|
+
class: Oe(["kernelift-chat-container__workspace-resize-handle", {
|
|
13244
13248
|
"kernelift-chat-container__workspace-resize-handle--dragging": ve.value
|
|
13245
13249
|
}]),
|
|
13246
13250
|
onMousedown: o
|
|
13247
13251
|
}, null, 34)) : Ae("", !0),
|
|
13248
13252
|
t.showWorkspace ? (ue(), fe("div", {
|
|
13249
13253
|
key: 1,
|
|
13250
|
-
class:
|
|
13254
|
+
class: Oe(["kernelift-chat-container__workspace", {
|
|
13251
13255
|
"mobile-workspace": z.value
|
|
13252
13256
|
}]),
|
|
13253
13257
|
style: At(qe.value)
|
|
@@ -13267,7 +13271,7 @@ const Fs = { button: { think: "深度思考", net: "联网搜索", copyCode: "
|
|
|
13267
13271
|
])
|
|
13268
13272
|
], 2));
|
|
13269
13273
|
}
|
|
13270
|
-
}), Bo = /* @__PURE__ */ xt(So, [["__scopeId", "data-v-
|
|
13274
|
+
}), Bo = /* @__PURE__ */ xt(So, [["__scopeId", "data-v-9a4e2bac"]]);
|
|
13271
13275
|
class To {
|
|
13272
13276
|
controller;
|
|
13273
13277
|
buffer;
|