securemark 0.240.1 → 0.240.2
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 +4 -0
- package/design.md +2 -2
- package/dist/securemark.js +84 -39
- package/gulpfile.js +1 -1
- package/package-lock.json +147 -87
- package/package.json +6 -6
- package/src/combinator/data/parser/some.ts +28 -6
- package/src/combinator/data/parser.ts +21 -16
- package/src/parser/api/parse.test.ts +6 -0
- package/src/parser/block/extension/figure.ts +1 -1
- package/src/parser/block/olist.ts +2 -2
- package/src/parser/inline/annotation.ts +1 -1
- package/src/parser/inline/comment.ts +1 -1
- package/src/parser/inline/reference.ts +1 -1
- package/src/parser/inline.test.ts +4 -0
package/CHANGELOG.md
CHANGED
package/design.md
CHANGED
|
@@ -102,14 +102,14 @@
|
|
|
102
102
|
##### インプットサイズ
|
|
103
103
|
|
|
104
104
|
パーサーは上限を超えるサイズの入力をパースしない。
|
|
105
|
-
|
|
105
|
+
また上限を超えない入力は1秒以下でセグメントに分割され非同期での逐次パースが可能である。
|
|
106
106
|
|
|
107
107
|
ゆえに入力はパーサーの実行環境を応答不能にすることはない。
|
|
108
108
|
|
|
109
109
|
##### セグメントサイズ
|
|
110
110
|
|
|
111
111
|
パーサーは上限を超えるサイズのセグメントをパースしない。
|
|
112
|
-
|
|
112
|
+
また上限を超えないセグメントのパースも規定のパースコストの上限を超えない。
|
|
113
113
|
|
|
114
114
|
ゆえに入力はパーサーの実行環境を応答不能にすることはない。
|
|
115
115
|
なお1セグメントは1ブロックに対応する。
|
package/dist/securemark.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! securemark v0.240.
|
|
1
|
+
/*! securemark v0.240.2 https://github.com/falsandtru/securemark | (c) 2017, falsandtru | UNLICENSED */
|
|
2
2
|
require = function () {
|
|
3
3
|
function r(e, n, t) {
|
|
4
4
|
function o(i, f) {
|
|
@@ -500,7 +500,7 @@ require = function () {
|
|
|
500
500
|
case LFU.length > this.capacity * this.ratio / 100:
|
|
501
501
|
target = LFU.last !== skip ? LFU.last : LFU.length >= 2 ? LFU.last.prev : skip;
|
|
502
502
|
if (target !== skip) {
|
|
503
|
-
if (this.ratio
|
|
503
|
+
if (this.ratio >= 50)
|
|
504
504
|
break;
|
|
505
505
|
LRU.unshiftNode(target);
|
|
506
506
|
LRU.head.value.node = LRU.head;
|
|
@@ -697,17 +697,16 @@ require = function () {
|
|
|
697
697
|
const global_1 = _dereq_('./global');
|
|
698
698
|
const alias_1 = _dereq_('./alias');
|
|
699
699
|
const exception_1 = _dereq_('./exception');
|
|
700
|
-
let
|
|
700
|
+
let mem;
|
|
701
701
|
let count = 0;
|
|
702
|
-
function now() {
|
|
703
|
-
if (
|
|
704
|
-
tick(() =>
|
|
705
|
-
} else {
|
|
706
|
-
|
|
707
|
-
return now_;
|
|
708
|
-
count = 0;
|
|
702
|
+
function now(nocache = false) {
|
|
703
|
+
if (mem === void 0) {
|
|
704
|
+
tick(() => mem = void 0);
|
|
705
|
+
} else if (!nocache && ++count !== 100) {
|
|
706
|
+
return mem;
|
|
709
707
|
}
|
|
710
|
-
|
|
708
|
+
count = 0;
|
|
709
|
+
return mem = global_1.Date.now();
|
|
711
710
|
}
|
|
712
711
|
exports.now = now;
|
|
713
712
|
exports.clock = Promise.resolve(void 0);
|
|
@@ -1112,12 +1111,29 @@ require = function () {
|
|
|
1112
1111
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
1113
1112
|
exports.reduce = exports.memoize = void 0;
|
|
1114
1113
|
const global_1 = _dereq_('./global');
|
|
1114
|
+
const alias_1 = _dereq_('./alias');
|
|
1115
1115
|
const compare_1 = _dereq_('./compare');
|
|
1116
1116
|
function memoize(f, identify = (...as) => as[0], memory) {
|
|
1117
1117
|
if (typeof identify === 'object')
|
|
1118
1118
|
return memoize(f, void 0, identify);
|
|
1119
1119
|
if (memory === void 0)
|
|
1120
1120
|
return memoize(f, identify, new global_1.Map());
|
|
1121
|
+
if ((0, alias_1.isArray)(memory))
|
|
1122
|
+
return memoize(f, identify, {
|
|
1123
|
+
has(key) {
|
|
1124
|
+
return memory[key] !== void 0;
|
|
1125
|
+
},
|
|
1126
|
+
get(key) {
|
|
1127
|
+
return memory[key];
|
|
1128
|
+
},
|
|
1129
|
+
set(key, value) {
|
|
1130
|
+
memory[key] = value;
|
|
1131
|
+
return this;
|
|
1132
|
+
},
|
|
1133
|
+
delete() {
|
|
1134
|
+
throw 0;
|
|
1135
|
+
}
|
|
1136
|
+
});
|
|
1121
1137
|
let nullish = false;
|
|
1122
1138
|
return (...as) => {
|
|
1123
1139
|
const b = identify(...as);
|
|
@@ -1146,6 +1162,7 @@ require = function () {
|
|
|
1146
1162
|
exports.reduce = reduce;
|
|
1147
1163
|
},
|
|
1148
1164
|
{
|
|
1165
|
+
'./alias': 5,
|
|
1149
1166
|
'./compare': 12,
|
|
1150
1167
|
'./global': 15
|
|
1151
1168
|
}
|
|
@@ -1196,12 +1213,14 @@ require = function () {
|
|
|
1196
1213
|
function (_dereq_, module, exports) {
|
|
1197
1214
|
'use strict';
|
|
1198
1215
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
1199
|
-
exports.unique = exports.rnd0Z = exports.rnd0z = exports.rnd0f = exports.rnd64 = exports.rnd62 = exports.rnd36 = exports.rnd32 = exports.rnd16 = void 0;
|
|
1216
|
+
exports.unique = exports.rnd0_ = exports.rnd0Z = exports.rnd0z = exports.rnd0f = exports.rnd64 = exports.rnd62 = exports.rnd36 = exports.rnd32 = exports.rnd16 = void 0;
|
|
1200
1217
|
const global_1 = _dereq_('./global');
|
|
1201
1218
|
const bases = [...Array(7)].map((_, i) => 1 << i);
|
|
1202
1219
|
const dict = [
|
|
1203
1220
|
...[...Array(36)].map((_, i) => i.toString(36)),
|
|
1204
|
-
...[...Array(36)].map((_, i) => i.toString(36).toUpperCase()).slice(-26)
|
|
1221
|
+
...[...Array(36)].map((_, i) => i.toString(36).toUpperCase()).slice(-26),
|
|
1222
|
+
'-',
|
|
1223
|
+
'_'
|
|
1205
1224
|
];
|
|
1206
1225
|
exports.rnd16 = cons(16);
|
|
1207
1226
|
exports.rnd32 = cons(32);
|
|
@@ -1211,6 +1230,7 @@ require = function () {
|
|
|
1211
1230
|
exports.rnd0f = conv(exports.rnd16);
|
|
1212
1231
|
exports.rnd0z = conv(exports.rnd36);
|
|
1213
1232
|
exports.rnd0Z = conv(exports.rnd62);
|
|
1233
|
+
exports.rnd0_ = conv(exports.rnd64);
|
|
1214
1234
|
function unique(rnd, len, mem) {
|
|
1215
1235
|
const clear = !mem;
|
|
1216
1236
|
mem !== null && mem !== void 0 ? mem : mem = new global_1.Set();
|
|
@@ -3830,29 +3850,30 @@ require = function () {
|
|
|
3830
3850
|
exports.check = exports.exec = exports.eval = exports.Delimiters = void 0;
|
|
3831
3851
|
class Delimiters {
|
|
3832
3852
|
constructor() {
|
|
3833
|
-
this.
|
|
3834
|
-
this.
|
|
3853
|
+
this.matchers = [];
|
|
3854
|
+
this.record = {};
|
|
3835
3855
|
}
|
|
3836
3856
|
push(delimiter) {
|
|
3837
|
-
|
|
3838
|
-
|
|
3839
|
-
|
|
3840
|
-
|
|
3841
|
-
|
|
3857
|
+
const {signature, matcher, escape} = delimiter;
|
|
3858
|
+
if (this.record[signature] === !escape) {
|
|
3859
|
+
this.matchers.unshift(() => undefined);
|
|
3860
|
+
} else {
|
|
3861
|
+
this.matchers.unshift(matcher);
|
|
3862
|
+
this.record[signature] = !escape;
|
|
3863
|
+
}
|
|
3842
3864
|
}
|
|
3843
3865
|
pop() {
|
|
3844
|
-
this.
|
|
3866
|
+
this.matchers.shift();
|
|
3845
3867
|
}
|
|
3846
3868
|
match(source) {
|
|
3847
|
-
const {
|
|
3848
|
-
|
|
3849
|
-
|
|
3850
|
-
|
|
3851
|
-
if (sig in log)
|
|
3852
|
-
continue;
|
|
3853
|
-
if (matchers[sig](source))
|
|
3869
|
+
const {matchers} = this;
|
|
3870
|
+
for (let i = 0; i < matchers.length; ++i) {
|
|
3871
|
+
switch (matchers[i](source)) {
|
|
3872
|
+
case true:
|
|
3854
3873
|
return true;
|
|
3855
|
-
|
|
3874
|
+
case false:
|
|
3875
|
+
return false;
|
|
3876
|
+
}
|
|
3856
3877
|
}
|
|
3857
3878
|
return false;
|
|
3858
3879
|
}
|
|
@@ -3953,7 +3974,7 @@ require = function () {
|
|
|
3953
3974
|
function (_dereq_, module, exports) {
|
|
3954
3975
|
'use strict';
|
|
3955
3976
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
3956
|
-
exports.some = void 0;
|
|
3977
|
+
exports.escape = exports.some = void 0;
|
|
3957
3978
|
const global_1 = _dereq_('spica/global');
|
|
3958
3979
|
const parser_1 = _dereq_('../parser');
|
|
3959
3980
|
const memoize_1 = _dereq_('spica/memoize');
|
|
@@ -3971,11 +3992,11 @@ require = function () {
|
|
|
3971
3992
|
const matcher = (0, memoize_1.memoize)(pattern => {
|
|
3972
3993
|
switch (typeof pattern) {
|
|
3973
3994
|
case 'undefined':
|
|
3974
|
-
return () =>
|
|
3995
|
+
return () => global_1.undefined;
|
|
3975
3996
|
case 'string':
|
|
3976
|
-
return source => source.slice(0, pattern.length) === pattern;
|
|
3997
|
+
return source => source.slice(0, pattern.length) === pattern || global_1.undefined;
|
|
3977
3998
|
case 'object':
|
|
3978
|
-
return (0, memoize_1.reduce)(source => pattern.test(source));
|
|
3999
|
+
return (0, memoize_1.reduce)(source => pattern.test(source) || global_1.undefined);
|
|
3979
4000
|
}
|
|
3980
4001
|
}, signature);
|
|
3981
4002
|
function some(parser, until, deep, limit = -1) {
|
|
@@ -4021,6 +4042,28 @@ require = function () {
|
|
|
4021
4042
|
};
|
|
4022
4043
|
}
|
|
4023
4044
|
exports.some = some;
|
|
4045
|
+
function escape(parser, delim) {
|
|
4046
|
+
const delimiter = {
|
|
4047
|
+
signature: signature(delim),
|
|
4048
|
+
matcher: source => source.slice(0, delim.length) !== delim && global_1.undefined,
|
|
4049
|
+
escape: true
|
|
4050
|
+
};
|
|
4051
|
+
return (source, context) => {
|
|
4052
|
+
var _a;
|
|
4053
|
+
if (source === '')
|
|
4054
|
+
return;
|
|
4055
|
+
if (context) {
|
|
4056
|
+
(_a = context.delimiters) !== null && _a !== void 0 ? _a : context.delimiters = new parser_1.Delimiters();
|
|
4057
|
+
context.delimiters.push(delimiter);
|
|
4058
|
+
}
|
|
4059
|
+
const result = parser(source, context);
|
|
4060
|
+
if (context.delimiters) {
|
|
4061
|
+
context.delimiters.pop();
|
|
4062
|
+
}
|
|
4063
|
+
return result;
|
|
4064
|
+
};
|
|
4065
|
+
}
|
|
4066
|
+
exports.escape = escape;
|
|
4024
4067
|
},
|
|
4025
4068
|
{
|
|
4026
4069
|
'../parser': 47,
|
|
@@ -5124,7 +5167,7 @@ require = function () {
|
|
|
5124
5167
|
(0, combinator_1.some)(source_1.contentline, closer)
|
|
5125
5168
|
])
|
|
5126
5169
|
])
|
|
5127
|
-
]), closer), ([, fence]) => fence.length)));
|
|
5170
|
+
]), closer), ([, fence]) => fence.length, [])));
|
|
5128
5171
|
exports.figure = (0, combinator_1.block)((0, combinator_1.rewrite)(exports.segment, (0, combinator_1.fmap)((0, combinator_1.convert)(source => source.slice(source.search(/[[$]/), source.trimEnd().lastIndexOf('\n')), (0, combinator_1.sequence)([
|
|
5129
5172
|
(0, combinator_1.line)((0, combinator_1.sequence)([
|
|
5130
5173
|
label_1.label,
|
|
@@ -5780,8 +5823,8 @@ require = function () {
|
|
|
5780
5823
|
/^\(([0-9]+|[a-z]+)\)(?:-[0-9]+)*(?=[^\S\n]|\n[^\S\n]*\S)/
|
|
5781
5824
|
], (0, combinator_1.context)({ syntax: { inline: { media: false } } }, exports.olist_))));
|
|
5782
5825
|
exports.olist_ = (0, combinator_1.lazy)(() => (0, combinator_1.block)((0, combinator_1.union)([
|
|
5783
|
-
(0, combinator_1.match)(new RegExp(`^(?=${ openers['.'].source.replace('?:', '') })`), (0, memoize_1.memoize)(ms => list(type(ms[1]), '.'), ms => type(ms[1]))),
|
|
5784
|
-
(0, combinator_1.match)(new RegExp(`^(?=${ openers['('].source.replace('?:', '') })`), (0, memoize_1.memoize)(ms => list(type(ms[1]), '('), ms => type(ms[1])))
|
|
5826
|
+
(0, combinator_1.match)(new RegExp(`^(?=${ openers['.'].source.replace('?:', '') })`), (0, memoize_1.memoize)(ms => list(type(ms[1]), '.'), ms => type(ms[1]).charCodeAt(0) || 0, [])),
|
|
5827
|
+
(0, combinator_1.match)(new RegExp(`^(?=${ openers['('].source.replace('?:', '') })`), (0, memoize_1.memoize)(ms => list(type(ms[1]), '('), ms => type(ms[1]).charCodeAt(0) || 0, []))
|
|
5785
5828
|
])));
|
|
5786
5829
|
const list = (type, delim) => (0, combinator_1.fmap)((0, combinator_1.some)((0, combinator_1.creator)((0, combinator_1.union)([(0, inline_1.indexee)((0, combinator_1.fmap)((0, combinator_1.fallback)((0, combinator_1.inits)([
|
|
5787
5830
|
(0, combinator_1.line)((0, combinator_1.open)(heads[delim], (0, combinator_1.trim)((0, combinator_1.subsequence)([
|
|
@@ -6395,7 +6438,8 @@ require = function () {
|
|
|
6395
6438
|
media: false
|
|
6396
6439
|
}
|
|
6397
6440
|
},
|
|
6398
|
-
state: global_1.undefined
|
|
6441
|
+
state: global_1.undefined,
|
|
6442
|
+
delimiters: global_1.undefined
|
|
6399
6443
|
}, (0, util_1.trimSpaceStart)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, ')', /^\\?\n/)]))))), '))'), ns => [(0, typed_dom_1.html)('sup', { class: 'annotation' }, (0, util_1.trimNodeEnd)((0, typed_dom_1.defrag)(ns)))]))));
|
|
6400
6444
|
},
|
|
6401
6445
|
{
|
|
@@ -6754,7 +6798,7 @@ require = function () {
|
|
|
6754
6798
|
], ([as, bs = []], rest) => [
|
|
6755
6799
|
(0, array_1.unshift)(as, bs),
|
|
6756
6800
|
rest
|
|
6757
|
-
]), ([, fence]) => fence.length)))));
|
|
6801
|
+
]), ([, fence]) => fence.length, [])))));
|
|
6758
6802
|
},
|
|
6759
6803
|
{
|
|
6760
6804
|
'../../combinator': 27,
|
|
@@ -7846,7 +7890,8 @@ require = function () {
|
|
|
7846
7890
|
media: false
|
|
7847
7891
|
}
|
|
7848
7892
|
},
|
|
7849
|
-
state: global_1.undefined
|
|
7893
|
+
state: global_1.undefined,
|
|
7894
|
+
delimiters: global_1.undefined
|
|
7850
7895
|
}, (0, combinator_1.subsequence)([
|
|
7851
7896
|
abbr,
|
|
7852
7897
|
(0, combinator_1.focus)(/^\^[^\S\n]*/, source => [
|
package/gulpfile.js
CHANGED
|
@@ -128,7 +128,7 @@ gulp.task('ts:dist', () =>
|
|
|
128
128
|
.pipe(gulp.dest(config.ts.dist.dest)));
|
|
129
129
|
|
|
130
130
|
gulp.task('ts:view', () =>
|
|
131
|
-
gulp.watch(config.ts.
|
|
131
|
+
gulp.watch(config.ts.test.src, { ignoreInitial: false }, () =>
|
|
132
132
|
compile(config.ts.dist.src, true)
|
|
133
133
|
.pipe($.unassert())
|
|
134
134
|
.pipe($.header(config.banner))
|
package/package-lock.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "securemark",
|
|
3
|
-
"version": "0.240.
|
|
3
|
+
"version": "0.240.2",
|
|
4
4
|
"lockfileVersion": 1,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"dependencies": {
|
|
@@ -376,9 +376,9 @@
|
|
|
376
376
|
"dev": true
|
|
377
377
|
},
|
|
378
378
|
"@jridgewell/trace-mapping": {
|
|
379
|
-
"version": "0.3.
|
|
380
|
-
"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.
|
|
381
|
-
"integrity": "sha512-
|
|
379
|
+
"version": "0.3.7",
|
|
380
|
+
"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.7.tgz",
|
|
381
|
+
"integrity": "sha512-8XC0l0PwCbdg2Uc8zIIf6djNX3lYiz9GqQlC1LJ9WQvTYvcfP8IA9K2IKRnPm5tAX6X/+orF+WwKZ0doGcgJlg==",
|
|
382
382
|
"dev": true,
|
|
383
383
|
"requires": {
|
|
384
384
|
"@jridgewell/resolve-uri": "^3.0.3",
|
|
@@ -602,9 +602,9 @@
|
|
|
602
602
|
"dev": true
|
|
603
603
|
},
|
|
604
604
|
"@types/node": {
|
|
605
|
-
"version": "17.0.
|
|
606
|
-
"resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.
|
|
607
|
-
"integrity": "sha512-
|
|
605
|
+
"version": "17.0.25",
|
|
606
|
+
"resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.25.tgz",
|
|
607
|
+
"integrity": "sha512-wANk6fBrUwdpY4isjWrKTufkrXdu1D2YHCot2fD/DfWxF5sMrVSA+KN7ydckvaTCh0HiqX9IVl0L5/ZoXg5M7w==",
|
|
608
608
|
"dev": true
|
|
609
609
|
},
|
|
610
610
|
"@types/power-assert": {
|
|
@@ -1752,9 +1752,9 @@
|
|
|
1752
1752
|
"dev": true
|
|
1753
1753
|
},
|
|
1754
1754
|
"builtins": {
|
|
1755
|
-
"version": "5.0.
|
|
1756
|
-
"resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.
|
|
1757
|
-
"integrity": "sha512-
|
|
1755
|
+
"version": "5.0.1",
|
|
1756
|
+
"resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz",
|
|
1757
|
+
"integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==",
|
|
1758
1758
|
"dev": true,
|
|
1759
1759
|
"requires": {
|
|
1760
1760
|
"semver": "^7.0.0"
|
|
@@ -1913,9 +1913,9 @@
|
|
|
1913
1913
|
"dev": true
|
|
1914
1914
|
},
|
|
1915
1915
|
"caniuse-lite": {
|
|
1916
|
-
"version": "1.0.
|
|
1917
|
-
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.
|
|
1918
|
-
"integrity": "sha512-
|
|
1916
|
+
"version": "1.0.30001332",
|
|
1917
|
+
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001332.tgz",
|
|
1918
|
+
"integrity": "sha512-10T30NYOEQtN6C11YGg411yebhvpnC6Z102+B95eAsN0oB6KUs01ivE8u+G6FMIRtIrVlYXhL+LUwQ3/hXwDWw==",
|
|
1919
1919
|
"dev": true
|
|
1920
1920
|
},
|
|
1921
1921
|
"chalk": {
|
|
@@ -2258,9 +2258,9 @@
|
|
|
2258
2258
|
}
|
|
2259
2259
|
},
|
|
2260
2260
|
"commander": {
|
|
2261
|
-
"version": "9.
|
|
2262
|
-
"resolved": "https://registry.npmjs.org/commander/-/commander-9.
|
|
2263
|
-
"integrity": "sha512-
|
|
2261
|
+
"version": "9.2.0",
|
|
2262
|
+
"resolved": "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz",
|
|
2263
|
+
"integrity": "sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==",
|
|
2264
2264
|
"dev": true
|
|
2265
2265
|
},
|
|
2266
2266
|
"component-emitter": {
|
|
@@ -2554,9 +2554,9 @@
|
|
|
2554
2554
|
"dev": true
|
|
2555
2555
|
},
|
|
2556
2556
|
"date-format": {
|
|
2557
|
-
"version": "4.0.
|
|
2558
|
-
"resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.
|
|
2559
|
-
"integrity": "sha512-
|
|
2557
|
+
"version": "4.0.7",
|
|
2558
|
+
"resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.7.tgz",
|
|
2559
|
+
"integrity": "sha512-k5xqlzDGIfv2N/DHR/BR8Kc4N9CRy9ReuDkmdxeX/jNfit94QXd36emWMm40ZOEDKNm/c91yV9EO3uGPkR7wWQ==",
|
|
2560
2560
|
"dev": true
|
|
2561
2561
|
},
|
|
2562
2562
|
"debug": {
|
|
@@ -2645,12 +2645,13 @@
|
|
|
2645
2645
|
"dev": true
|
|
2646
2646
|
},
|
|
2647
2647
|
"define-properties": {
|
|
2648
|
-
"version": "1.1.
|
|
2649
|
-
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.
|
|
2650
|
-
"integrity": "sha512-
|
|
2648
|
+
"version": "1.1.4",
|
|
2649
|
+
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz",
|
|
2650
|
+
"integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==",
|
|
2651
2651
|
"dev": true,
|
|
2652
2652
|
"requires": {
|
|
2653
|
-
"
|
|
2653
|
+
"has-property-descriptors": "^1.0.0",
|
|
2654
|
+
"object-keys": "^1.1.1"
|
|
2654
2655
|
}
|
|
2655
2656
|
},
|
|
2656
2657
|
"define-property": {
|
|
@@ -3025,9 +3026,9 @@
|
|
|
3025
3026
|
"dev": true
|
|
3026
3027
|
},
|
|
3027
3028
|
"electron-to-chromium": {
|
|
3028
|
-
"version": "1.4.
|
|
3029
|
-
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.
|
|
3030
|
-
"integrity": "sha512-
|
|
3029
|
+
"version": "1.4.114",
|
|
3030
|
+
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.114.tgz",
|
|
3031
|
+
"integrity": "sha512-gRwLpVYWHGbERPU6o8pKfR168V6enWEXzZc6zQNNXbgJ7UJna+9qzAIHY94+9KOv71D/CH+QebLA9pChD2q8zA==",
|
|
3031
3032
|
"dev": true
|
|
3032
3033
|
},
|
|
3033
3034
|
"elliptic": {
|
|
@@ -3205,9 +3206,9 @@
|
|
|
3205
3206
|
}
|
|
3206
3207
|
},
|
|
3207
3208
|
"es-abstract": {
|
|
3208
|
-
"version": "1.19.
|
|
3209
|
-
"resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.
|
|
3210
|
-
"integrity": "sha512-
|
|
3209
|
+
"version": "1.19.5",
|
|
3210
|
+
"resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.5.tgz",
|
|
3211
|
+
"integrity": "sha512-Aa2G2+Rd3b6kxEUKTF4TaW67czBLyAv3z7VOhYRU50YBx+bbsYZ9xQP4lMNazePuFlybXI0V4MruPos7qUo5fA==",
|
|
3211
3212
|
"dev": true,
|
|
3212
3213
|
"requires": {
|
|
3213
3214
|
"call-bind": "^1.0.2",
|
|
@@ -3221,7 +3222,7 @@
|
|
|
3221
3222
|
"is-callable": "^1.2.4",
|
|
3222
3223
|
"is-negative-zero": "^2.0.2",
|
|
3223
3224
|
"is-regex": "^1.1.4",
|
|
3224
|
-
"is-shared-array-buffer": "^1.0.
|
|
3225
|
+
"is-shared-array-buffer": "^1.0.2",
|
|
3225
3226
|
"is-string": "^1.0.7",
|
|
3226
3227
|
"is-weakref": "^1.0.2",
|
|
3227
3228
|
"object-inspect": "^1.12.0",
|
|
@@ -4561,9 +4562,9 @@
|
|
|
4561
4562
|
}
|
|
4562
4563
|
},
|
|
4563
4564
|
"fs-extra": {
|
|
4564
|
-
"version": "10.0
|
|
4565
|
-
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.
|
|
4566
|
-
"integrity": "sha512-
|
|
4565
|
+
"version": "10.1.0",
|
|
4566
|
+
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
|
|
4567
|
+
"integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
|
|
4567
4568
|
"dev": true,
|
|
4568
4569
|
"requires": {
|
|
4569
4570
|
"graceful-fs": "^4.2.0",
|
|
@@ -4619,6 +4620,12 @@
|
|
|
4619
4620
|
"integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
|
|
4620
4621
|
"dev": true
|
|
4621
4622
|
},
|
|
4623
|
+
"functions-have-names": {
|
|
4624
|
+
"version": "1.2.3",
|
|
4625
|
+
"resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
|
|
4626
|
+
"integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
|
|
4627
|
+
"dev": true
|
|
4628
|
+
},
|
|
4622
4629
|
"gauge": {
|
|
4623
4630
|
"version": "4.0.4",
|
|
4624
4631
|
"resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz",
|
|
@@ -5490,9 +5497,9 @@
|
|
|
5490
5497
|
}
|
|
5491
5498
|
},
|
|
5492
5499
|
"has-bigints": {
|
|
5493
|
-
"version": "1.0.
|
|
5494
|
-
"resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.
|
|
5495
|
-
"integrity": "sha512-
|
|
5500
|
+
"version": "1.0.2",
|
|
5501
|
+
"resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
|
|
5502
|
+
"integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
|
|
5496
5503
|
"dev": true
|
|
5497
5504
|
},
|
|
5498
5505
|
"has-flag": {
|
|
@@ -5510,6 +5517,15 @@
|
|
|
5510
5517
|
"sparkles": "^1.0.0"
|
|
5511
5518
|
}
|
|
5512
5519
|
},
|
|
5520
|
+
"has-property-descriptors": {
|
|
5521
|
+
"version": "1.0.0",
|
|
5522
|
+
"resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
|
|
5523
|
+
"integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
|
|
5524
|
+
"dev": true,
|
|
5525
|
+
"requires": {
|
|
5526
|
+
"get-intrinsic": "^1.1.1"
|
|
5527
|
+
}
|
|
5528
|
+
},
|
|
5513
5529
|
"has-require": {
|
|
5514
5530
|
"version": "1.2.2",
|
|
5515
5531
|
"resolved": "https://registry.npmjs.org/has-require/-/has-require-1.2.2.tgz",
|
|
@@ -5741,9 +5757,9 @@
|
|
|
5741
5757
|
"dev": true
|
|
5742
5758
|
},
|
|
5743
5759
|
"https-proxy-agent": {
|
|
5744
|
-
"version": "5.0.
|
|
5745
|
-
"resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.
|
|
5746
|
-
"integrity": "sha512-
|
|
5760
|
+
"version": "5.0.1",
|
|
5761
|
+
"resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
|
|
5762
|
+
"integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
|
|
5747
5763
|
"dev": true,
|
|
5748
5764
|
"requires": {
|
|
5749
5765
|
"agent-base": "6",
|
|
@@ -6067,9 +6083,9 @@
|
|
|
6067
6083
|
}
|
|
6068
6084
|
},
|
|
6069
6085
|
"is-core-module": {
|
|
6070
|
-
"version": "2.
|
|
6071
|
-
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.
|
|
6072
|
-
"integrity": "sha512
|
|
6086
|
+
"version": "2.9.0",
|
|
6087
|
+
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz",
|
|
6088
|
+
"integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==",
|
|
6073
6089
|
"dev": true,
|
|
6074
6090
|
"requires": {
|
|
6075
6091
|
"has": "^1.0.3"
|
|
@@ -6646,9 +6662,9 @@
|
|
|
6646
6662
|
"dev": true
|
|
6647
6663
|
},
|
|
6648
6664
|
"karma": {
|
|
6649
|
-
"version": "6.3.
|
|
6650
|
-
"resolved": "https://registry.npmjs.org/karma/-/karma-6.3.
|
|
6651
|
-
"integrity": "sha512-
|
|
6665
|
+
"version": "6.3.19",
|
|
6666
|
+
"resolved": "https://registry.npmjs.org/karma/-/karma-6.3.19.tgz",
|
|
6667
|
+
"integrity": "sha512-NDhWckzES/Y9xMiddyU1RzaKL76/scCsu8Mp0vR0Z3lQRvC3p72+Ab4ppoxs36S9tyPNX5V48yvaV++RNEBPZw==",
|
|
6652
6668
|
"dev": true,
|
|
6653
6669
|
"requires": {
|
|
6654
6670
|
"@colors/colors": "1.5.0",
|
|
@@ -6670,7 +6686,7 @@
|
|
|
6670
6686
|
"qjobs": "^1.2.0",
|
|
6671
6687
|
"range-parser": "^1.2.1",
|
|
6672
6688
|
"rimraf": "^3.0.2",
|
|
6673
|
-
"socket.io": "^4.
|
|
6689
|
+
"socket.io": "^4.4.1",
|
|
6674
6690
|
"source-map": "^0.6.1",
|
|
6675
6691
|
"tmp": "^0.2.1",
|
|
6676
6692
|
"ua-parser-js": "^0.7.30",
|
|
@@ -7059,16 +7075,16 @@
|
|
|
7059
7075
|
}
|
|
7060
7076
|
},
|
|
7061
7077
|
"log4js": {
|
|
7062
|
-
"version": "6.4.
|
|
7063
|
-
"resolved": "https://registry.npmjs.org/log4js/-/log4js-6.4.
|
|
7064
|
-
"integrity": "sha512-
|
|
7078
|
+
"version": "6.4.5",
|
|
7079
|
+
"resolved": "https://registry.npmjs.org/log4js/-/log4js-6.4.5.tgz",
|
|
7080
|
+
"integrity": "sha512-43RJcYZ7nfUxpPO2woTl8CJ0t5+gucLJZ43mtp2PlInT+LygCp/bl6hNJtKulCJ+++fQsjIv4EO3Mp611PfeLQ==",
|
|
7065
7081
|
"dev": true,
|
|
7066
7082
|
"requires": {
|
|
7067
|
-
"date-format": "^4.0.
|
|
7083
|
+
"date-format": "^4.0.7",
|
|
7068
7084
|
"debug": "^4.3.4",
|
|
7069
7085
|
"flatted": "^3.2.5",
|
|
7070
7086
|
"rfdc": "^1.3.0",
|
|
7071
|
-
"streamroller": "^3.0.
|
|
7087
|
+
"streamroller": "^3.0.7"
|
|
7072
7088
|
},
|
|
7073
7089
|
"dependencies": {
|
|
7074
7090
|
"debug": {
|
|
@@ -7101,9 +7117,9 @@
|
|
|
7101
7117
|
"dev": true
|
|
7102
7118
|
},
|
|
7103
7119
|
"lru-cache": {
|
|
7104
|
-
"version": "7.8.
|
|
7105
|
-
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.8.
|
|
7106
|
-
"integrity": "sha512-
|
|
7120
|
+
"version": "7.8.1",
|
|
7121
|
+
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.8.1.tgz",
|
|
7122
|
+
"integrity": "sha512-E1v547OCgJvbvevfjgK9sNKIVXO96NnsTsFPBlg4ZxjhsJSODoH9lk8Bm0OxvHNm6Vm5Yqkl/1fErDxhYL8Skg==",
|
|
7107
7123
|
"dev": true
|
|
7108
7124
|
},
|
|
7109
7125
|
"make-dir": {
|
|
@@ -7963,9 +7979,9 @@
|
|
|
7963
7979
|
}
|
|
7964
7980
|
},
|
|
7965
7981
|
"node-releases": {
|
|
7966
|
-
"version": "2.0.
|
|
7967
|
-
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.
|
|
7968
|
-
"integrity": "sha512-
|
|
7982
|
+
"version": "2.0.3",
|
|
7983
|
+
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.3.tgz",
|
|
7984
|
+
"integrity": "sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw==",
|
|
7969
7985
|
"dev": true
|
|
7970
7986
|
},
|
|
7971
7987
|
"nopt": {
|
|
@@ -8028,9 +8044,9 @@
|
|
|
8028
8044
|
}
|
|
8029
8045
|
},
|
|
8030
8046
|
"npm-check-updates": {
|
|
8031
|
-
"version": "12.5.
|
|
8032
|
-
"resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-12.5.
|
|
8033
|
-
"integrity": "sha512-
|
|
8047
|
+
"version": "12.5.9",
|
|
8048
|
+
"resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-12.5.9.tgz",
|
|
8049
|
+
"integrity": "sha512-l9iOvD7EsQb96gFJL45V01YG6bP8+dmobYnSguvehPuNwgdWNMrE8RC8bSfURX5iUmX4bkobN4T8XMHXN9GMHA==",
|
|
8034
8050
|
"dev": true,
|
|
8035
8051
|
"requires": {
|
|
8036
8052
|
"chalk": "^4.1.2",
|
|
@@ -8198,9 +8214,9 @@
|
|
|
8198
8214
|
}
|
|
8199
8215
|
},
|
|
8200
8216
|
"npm-registry-fetch": {
|
|
8201
|
-
"version": "13.1.
|
|
8202
|
-
"resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.1.
|
|
8203
|
-
"integrity": "sha512-
|
|
8217
|
+
"version": "13.1.1",
|
|
8218
|
+
"resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.1.1.tgz",
|
|
8219
|
+
"integrity": "sha512-5p8rwe6wQPLJ8dMqeTnA57Dp9Ox6GH9H60xkyJup07FmVlu3Mk7pf/kIIpl9gaN5bM8NM+UUx3emUWvDNTt39w==",
|
|
8204
8220
|
"dev": true,
|
|
8205
8221
|
"requires": {
|
|
8206
8222
|
"make-fetch-happen": "^10.0.6",
|
|
@@ -9187,17 +9203,40 @@
|
|
|
9187
9203
|
}
|
|
9188
9204
|
},
|
|
9189
9205
|
"read-package-json": {
|
|
9190
|
-
"version": "5.0.
|
|
9191
|
-
"resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.
|
|
9192
|
-
"integrity": "sha512-
|
|
9206
|
+
"version": "5.0.1",
|
|
9207
|
+
"resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.1.tgz",
|
|
9208
|
+
"integrity": "sha512-MALHuNgYWdGW3gKzuNMuYtcSSZbGQm94fAp16xt8VsYTLBjUSc55bLMKe6gzpWue0Tfi6CBgwCSdDAqutGDhMg==",
|
|
9193
9209
|
"dev": true,
|
|
9194
9210
|
"requires": {
|
|
9195
|
-
"glob": "^
|
|
9211
|
+
"glob": "^8.0.1",
|
|
9196
9212
|
"json-parse-even-better-errors": "^2.3.1",
|
|
9197
9213
|
"normalize-package-data": "^4.0.0",
|
|
9198
9214
|
"npm-normalize-package-bin": "^1.0.1"
|
|
9199
9215
|
},
|
|
9200
9216
|
"dependencies": {
|
|
9217
|
+
"brace-expansion": {
|
|
9218
|
+
"version": "2.0.1",
|
|
9219
|
+
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
|
|
9220
|
+
"integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
|
|
9221
|
+
"dev": true,
|
|
9222
|
+
"requires": {
|
|
9223
|
+
"balanced-match": "^1.0.0"
|
|
9224
|
+
}
|
|
9225
|
+
},
|
|
9226
|
+
"glob": {
|
|
9227
|
+
"version": "8.0.1",
|
|
9228
|
+
"resolved": "https://registry.npmjs.org/glob/-/glob-8.0.1.tgz",
|
|
9229
|
+
"integrity": "sha512-cF7FYZZ47YzmCu7dDy50xSRRfO3ErRfrXuLZcNIuyiJEco0XSrGtuilG19L5xp3NcwTx7Gn+X6Tv3fmsUPTbow==",
|
|
9230
|
+
"dev": true,
|
|
9231
|
+
"requires": {
|
|
9232
|
+
"fs.realpath": "^1.0.0",
|
|
9233
|
+
"inflight": "^1.0.4",
|
|
9234
|
+
"inherits": "2",
|
|
9235
|
+
"minimatch": "^5.0.1",
|
|
9236
|
+
"once": "^1.3.0",
|
|
9237
|
+
"path-is-absolute": "^1.0.0"
|
|
9238
|
+
}
|
|
9239
|
+
},
|
|
9201
9240
|
"hosted-git-info": {
|
|
9202
9241
|
"version": "5.0.0",
|
|
9203
9242
|
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.0.0.tgz",
|
|
@@ -9207,6 +9246,15 @@
|
|
|
9207
9246
|
"lru-cache": "^7.5.1"
|
|
9208
9247
|
}
|
|
9209
9248
|
},
|
|
9249
|
+
"minimatch": {
|
|
9250
|
+
"version": "5.0.1",
|
|
9251
|
+
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
|
|
9252
|
+
"integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
|
|
9253
|
+
"dev": true,
|
|
9254
|
+
"requires": {
|
|
9255
|
+
"brace-expansion": "^2.0.1"
|
|
9256
|
+
}
|
|
9257
|
+
},
|
|
9210
9258
|
"normalize-package-data": {
|
|
9211
9259
|
"version": "4.0.0",
|
|
9212
9260
|
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.0.tgz",
|
|
@@ -9473,13 +9521,14 @@
|
|
|
9473
9521
|
}
|
|
9474
9522
|
},
|
|
9475
9523
|
"regexp.prototype.flags": {
|
|
9476
|
-
"version": "1.4.
|
|
9477
|
-
"resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.
|
|
9478
|
-
"integrity": "sha512-
|
|
9524
|
+
"version": "1.4.3",
|
|
9525
|
+
"resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz",
|
|
9526
|
+
"integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==",
|
|
9479
9527
|
"dev": true,
|
|
9480
9528
|
"requires": {
|
|
9481
9529
|
"call-bind": "^1.0.2",
|
|
9482
|
-
"define-properties": "^1.1.3"
|
|
9530
|
+
"define-properties": "^1.1.3",
|
|
9531
|
+
"functions-have-names": "^1.2.2"
|
|
9483
9532
|
}
|
|
9484
9533
|
},
|
|
9485
9534
|
"regexpp": {
|
|
@@ -9793,12 +9842,23 @@
|
|
|
9793
9842
|
"dev": true
|
|
9794
9843
|
},
|
|
9795
9844
|
"semver": {
|
|
9796
|
-
"version": "7.3.
|
|
9797
|
-
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.
|
|
9798
|
-
"integrity": "sha512-
|
|
9845
|
+
"version": "7.3.7",
|
|
9846
|
+
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
|
|
9847
|
+
"integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
|
|
9799
9848
|
"dev": true,
|
|
9800
9849
|
"requires": {
|
|
9801
|
-
"lru-cache": "^
|
|
9850
|
+
"lru-cache": "^6.0.0"
|
|
9851
|
+
},
|
|
9852
|
+
"dependencies": {
|
|
9853
|
+
"lru-cache": {
|
|
9854
|
+
"version": "6.0.0",
|
|
9855
|
+
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
|
9856
|
+
"integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
|
|
9857
|
+
"dev": true,
|
|
9858
|
+
"requires": {
|
|
9859
|
+
"yallist": "^4.0.0"
|
|
9860
|
+
}
|
|
9861
|
+
}
|
|
9802
9862
|
}
|
|
9803
9863
|
},
|
|
9804
9864
|
"semver-diff": {
|
|
@@ -10184,14 +10244,14 @@
|
|
|
10184
10244
|
}
|
|
10185
10245
|
},
|
|
10186
10246
|
"socks-proxy-agent": {
|
|
10187
|
-
"version": "6.
|
|
10188
|
-
"resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.
|
|
10189
|
-
"integrity": "sha512-
|
|
10247
|
+
"version": "6.2.0",
|
|
10248
|
+
"resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.0.tgz",
|
|
10249
|
+
"integrity": "sha512-wWqJhjb32Q6GsrUqzuFkukxb/zzide5quXYcMVpIjxalDBBYy2nqKCFQ/9+Ie4dvOYSQdOk3hUlZSdzZOd3zMQ==",
|
|
10190
10250
|
"dev": true,
|
|
10191
10251
|
"requires": {
|
|
10192
10252
|
"agent-base": "^6.0.2",
|
|
10193
|
-
"debug": "^4.3.
|
|
10194
|
-
"socks": "^2.6.
|
|
10253
|
+
"debug": "^4.3.3",
|
|
10254
|
+
"socks": "^2.6.2"
|
|
10195
10255
|
},
|
|
10196
10256
|
"dependencies": {
|
|
10197
10257
|
"debug": {
|
|
@@ -10305,9 +10365,9 @@
|
|
|
10305
10365
|
"dev": true
|
|
10306
10366
|
},
|
|
10307
10367
|
"spica": {
|
|
10308
|
-
"version": "0.0.
|
|
10309
|
-
"resolved": "https://registry.npmjs.org/spica/-/spica-0.0.
|
|
10310
|
-
"integrity": "sha512-
|
|
10368
|
+
"version": "0.0.518",
|
|
10369
|
+
"resolved": "https://registry.npmjs.org/spica/-/spica-0.0.518.tgz",
|
|
10370
|
+
"integrity": "sha512-DOaGrLnzccxFTRaVqhBVENaDWvUTlD7ZTEERCc8vLsTqdnd63LuI53iJiXXq39NgYHnjBkihp2RvJymGymMlAw==",
|
|
10311
10371
|
"dev": true
|
|
10312
10372
|
},
|
|
10313
10373
|
"split-string": {
|
|
@@ -10448,12 +10508,12 @@
|
|
|
10448
10508
|
}
|
|
10449
10509
|
},
|
|
10450
10510
|
"streamroller": {
|
|
10451
|
-
"version": "3.0.
|
|
10452
|
-
"resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.0.
|
|
10453
|
-
"integrity": "sha512-
|
|
10511
|
+
"version": "3.0.7",
|
|
10512
|
+
"resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.0.7.tgz",
|
|
10513
|
+
"integrity": "sha512-kh68kwiDGuIPiPDWwRbEC5us+kfARP1e9AsQiaLaSqGrctOvMn0mtL8iNY3r4/o5nIoYi3gPI1jexguZsXDlxw==",
|
|
10454
10514
|
"dev": true,
|
|
10455
10515
|
"requires": {
|
|
10456
|
-
"date-format": "^4.0.
|
|
10516
|
+
"date-format": "^4.0.7",
|
|
10457
10517
|
"debug": "^4.3.4",
|
|
10458
10518
|
"fs-extra": "^10.0.1"
|
|
10459
10519
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "securemark",
|
|
3
|
-
"version": "0.240.
|
|
3
|
+
"version": "0.240.2",
|
|
4
4
|
"description": "Secure markdown renderer working on browsers for user input data.",
|
|
5
5
|
"private": false,
|
|
6
6
|
"homepage": "https://github.com/falsandtru/securemark",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"@types/prismjs": "1.26.0",
|
|
39
39
|
"browserify": "^17.0.0",
|
|
40
40
|
"browserify-shim": "^3.8.14",
|
|
41
|
-
"concurrently": "^7.
|
|
41
|
+
"concurrently": "^7.1.0",
|
|
42
42
|
"del": "^6.0.0",
|
|
43
43
|
"eslint-plugin-redos": "^4.3.0",
|
|
44
44
|
"gulp": "^4.0.2",
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"gulp-mocha": "^8.0.0",
|
|
51
51
|
"gulp-rename": "^2.0.0",
|
|
52
52
|
"gulp-unassert": "^2.0.0",
|
|
53
|
-
"karma": "^6.3.
|
|
53
|
+
"karma": "^6.3.19",
|
|
54
54
|
"karma-chrome-launcher": "^3.1.1",
|
|
55
55
|
"karma-coverage-istanbul-instrumenter": "^1.0.4",
|
|
56
56
|
"karma-coverage-istanbul-reporter": "^3.0.3",
|
|
@@ -58,10 +58,10 @@
|
|
|
58
58
|
"karma-firefox-launcher": "^2.1.2",
|
|
59
59
|
"karma-mocha": "^2.0.1",
|
|
60
60
|
"mocha": "^9.2.2",
|
|
61
|
-
"npm-check-updates": "^12.5.
|
|
61
|
+
"npm-check-updates": "^12.5.9",
|
|
62
62
|
"power-assert": "^1.6.1",
|
|
63
|
-
"semver": "^7.3.
|
|
64
|
-
"spica": "0.0.
|
|
63
|
+
"semver": "^7.3.7",
|
|
64
|
+
"spica": "0.0.518",
|
|
65
65
|
"tsify": "^5.0.4",
|
|
66
66
|
"typed-dom": "0.0.250",
|
|
67
67
|
"typescript": "4.6.3",
|
|
@@ -14,14 +14,14 @@ const signature = (pattern: string | RegExp | undefined): string => {
|
|
|
14
14
|
}
|
|
15
15
|
};
|
|
16
16
|
const matcher = memoize(
|
|
17
|
-
(pattern: string | RegExp | undefined): (source: string) =>
|
|
17
|
+
(pattern: string | RegExp | undefined): (source: string) => true | undefined => {
|
|
18
18
|
switch (typeof pattern) {
|
|
19
19
|
case 'undefined':
|
|
20
|
-
return () =>
|
|
20
|
+
return () => undefined;
|
|
21
21
|
case 'string':
|
|
22
|
-
return source => source.slice(0, pattern.length) === pattern;
|
|
22
|
+
return source => source.slice(0, pattern.length) === pattern || undefined;
|
|
23
23
|
case 'object':
|
|
24
|
-
return reduce(source => pattern.test(source));
|
|
24
|
+
return reduce(source => pattern.test(source) || undefined);
|
|
25
25
|
}
|
|
26
26
|
},
|
|
27
27
|
signature);
|
|
@@ -42,8 +42,8 @@ export function some<T>(parser: Parser<T>, until?: string | RegExp | number, dee
|
|
|
42
42
|
let rest = source;
|
|
43
43
|
let nodes: T[] | undefined;
|
|
44
44
|
if (deep && context) {
|
|
45
|
-
// bracket >
|
|
46
|
-
// bracket >
|
|
45
|
+
// bracket > link > media | bracket
|
|
46
|
+
// bracket > index > bracket
|
|
47
47
|
context.delimiters ??= new Delimiters();
|
|
48
48
|
context.delimiters.push(delimiter);
|
|
49
49
|
}
|
|
@@ -69,3 +69,25 @@ export function some<T>(parser: Parser<T>, until?: string | RegExp | number, dee
|
|
|
69
69
|
: undefined;
|
|
70
70
|
};
|
|
71
71
|
}
|
|
72
|
+
|
|
73
|
+
export function escape<P extends Parser<unknown>>(parser: P, delim: string): P;
|
|
74
|
+
export function escape<T>(parser: Parser<T>, delim: string): Parser<T> {
|
|
75
|
+
assert(parser);
|
|
76
|
+
const delimiter = {
|
|
77
|
+
signature: signature(delim),
|
|
78
|
+
matcher: (source: string) => source.slice(0, delim.length) !== delim && undefined,
|
|
79
|
+
escape: true,
|
|
80
|
+
} as const;
|
|
81
|
+
return (source, context) => {
|
|
82
|
+
if (source === '') return;
|
|
83
|
+
if (context) {
|
|
84
|
+
context.delimiters ??= new Delimiters();
|
|
85
|
+
context.delimiters.push(delimiter);
|
|
86
|
+
}
|
|
87
|
+
const result = parser(source, context);
|
|
88
|
+
if (context.delimiters) {
|
|
89
|
+
context.delimiters.pop();
|
|
90
|
+
}
|
|
91
|
+
return result;
|
|
92
|
+
};
|
|
93
|
+
}
|
|
@@ -20,26 +20,31 @@ type ExtractSubTree<D extends Parser<unknown>[]> = ExtractSubParser<D> extends i
|
|
|
20
20
|
type ExtractSubParser<D extends Parser<unknown>[]> = D extends (infer P)[] ? P extends Parser<unknown> ? P : never : never;
|
|
21
21
|
|
|
22
22
|
export class Delimiters {
|
|
23
|
-
private readonly
|
|
24
|
-
private readonly
|
|
25
|
-
public push(delimiter: { readonly signature: string; readonly matcher: (source: string) => boolean; }): void {
|
|
26
|
-
const { signature, matcher } = delimiter;
|
|
27
|
-
this.
|
|
28
|
-
|
|
29
|
-
|
|
23
|
+
private readonly matchers: ((source: string) => boolean | undefined)[] = [];
|
|
24
|
+
private readonly record: Record<string, boolean> = {};
|
|
25
|
+
public push(delimiter: { readonly signature: string; readonly matcher: (source: string) => boolean | undefined; readonly escape?: boolean; }): void {
|
|
26
|
+
const { signature, matcher, escape } = delimiter;
|
|
27
|
+
if (this.record[signature] === !escape) {
|
|
28
|
+
this.matchers.unshift(() => undefined);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
this.matchers.unshift(matcher);
|
|
32
|
+
this.record[signature] = !escape;
|
|
33
|
+
}
|
|
30
34
|
}
|
|
31
35
|
public pop(): void {
|
|
32
|
-
assert(this.
|
|
33
|
-
this.
|
|
36
|
+
assert(this.matchers.length > 0);
|
|
37
|
+
this.matchers.shift();
|
|
34
38
|
}
|
|
35
39
|
public match(source: string): boolean {
|
|
36
|
-
const {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
const { matchers } = this;
|
|
41
|
+
for (let i = 0; i < matchers.length; ++i) {
|
|
42
|
+
switch (matchers[i](source)) {
|
|
43
|
+
case true:
|
|
44
|
+
return true;
|
|
45
|
+
case false:
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
43
48
|
}
|
|
44
49
|
return false;
|
|
45
50
|
}
|
|
@@ -218,6 +218,12 @@ describe('Unit: parser/api/parse', () => {
|
|
|
218
218
|
['<p>a<span class="linebreak"> </span>b</p>']);
|
|
219
219
|
});
|
|
220
220
|
|
|
221
|
+
it('creation', () => {
|
|
222
|
+
assert.deepStrictEqual(
|
|
223
|
+
[...parse('"[# '.repeat(100)).children].map(el => el.outerHTML),
|
|
224
|
+
[`<p>${'"[# '.repeat(100).trim()}</p>`]);
|
|
225
|
+
});
|
|
226
|
+
|
|
221
227
|
it('recursion', () => {
|
|
222
228
|
assert.deepStrictEqual(
|
|
223
229
|
[...parse('('.repeat(199)).children].map(el => el.outerHTML),
|
|
@@ -46,7 +46,7 @@ export const segment: FigureParser.SegmentParser = block(match(
|
|
|
46
46
|
]),
|
|
47
47
|
]),
|
|
48
48
|
closer),
|
|
49
|
-
([, fence]) => fence.length)));
|
|
49
|
+
([, fence]) => fence.length, [])));
|
|
50
50
|
|
|
51
51
|
export const figure: FigureParser = block(rewrite(segment, fmap(
|
|
52
52
|
convert(source => source.slice(source.search(/[[$]/), source.trimEnd().lastIndexOf('\n')),
|
|
@@ -25,10 +25,10 @@ export const olist: OListParser = lazy(() => block(validate(
|
|
|
25
25
|
export const olist_: OListParser = lazy(() => block(union([
|
|
26
26
|
match(
|
|
27
27
|
new RegExp(`^(?=${openers['.'].source.replace('?:', '')})`),
|
|
28
|
-
memoize(ms => list(type(ms[1]), '.'), ms => type(ms[1]))),
|
|
28
|
+
memoize(ms => list(type(ms[1]), '.'), ms => type(ms[1]).charCodeAt(0) || 0, [])),
|
|
29
29
|
match(
|
|
30
30
|
new RegExp(`^(?=${openers['('].source.replace('?:', '')})`),
|
|
31
|
-
memoize(ms => list(type(ms[1]), '('), ms => type(ms[1]))),
|
|
31
|
+
memoize(ms => list(type(ms[1]), '('), ms => type(ms[1]).charCodeAt(0) || 0, [])),
|
|
32
32
|
])));
|
|
33
33
|
|
|
34
34
|
const list = (type: string, delim: string): OListParser.ListParser => fmap(
|
|
@@ -19,7 +19,7 @@ export const annotation: AnnotationParser = lazy(() => creator(validate('((', ')
|
|
|
19
19
|
//label: true,
|
|
20
20
|
//link: true,
|
|
21
21
|
//autolink: true,
|
|
22
|
-
}}, state: undefined },
|
|
22
|
+
}}, state: undefined, delimiters: undefined },
|
|
23
23
|
trimSpaceStart(union([some(inline, ')', /^\\?\n/)]))))),
|
|
24
24
|
'))'),
|
|
25
25
|
ns => [html('sup', { class: 'annotation' }, trimNodeEnd(defrag(ns)))]))));
|
|
@@ -19,7 +19,7 @@ export const reference: ReferenceParser = lazy(() => creator(validate('[[', ']]'
|
|
|
19
19
|
//label: true,
|
|
20
20
|
//link: true,
|
|
21
21
|
//autolink: true,
|
|
22
|
-
}}, state: undefined },
|
|
22
|
+
}}, state: undefined, delimiters: undefined },
|
|
23
23
|
subsequence([
|
|
24
24
|
abbr,
|
|
25
25
|
focus(/^\^[^\S\n]*/, source => [['', source], '']),
|
|
@@ -144,6 +144,7 @@ describe('Unit: parser/inline', () => {
|
|
|
144
144
|
assert.deepStrictEqual(inspect(parser('(((a))')), [['(', '<sup class="annotation">a</sup>'], '']);
|
|
145
145
|
assert.deepStrictEqual(inspect(parser('((((a))')), [['(', '(', '<sup class="annotation">a</sup>'], '']);
|
|
146
146
|
assert.deepStrictEqual(inspect(parser('((((a))))')), [['<sup class="annotation"><span class="paren">((a))</span></sup>'], '']);
|
|
147
|
+
assert.deepStrictEqual(inspect(parser('"((""))')), [['"', '<sup class="annotation">""</sup>'], '']);
|
|
147
148
|
assert.deepStrictEqual(inspect(parser('[[[a]]')), [['[', '<sup class="reference">a</sup>'], '']);
|
|
148
149
|
assert.deepStrictEqual(inspect(parser('[[[[a]]')), [['[', '[', '<sup class="reference">a</sup>'], '']);
|
|
149
150
|
assert.deepStrictEqual(inspect(parser('[[[[a]]]]')), [['<sup class="reference">[[a]]</sup>'], '']);
|
|
@@ -151,6 +152,7 @@ describe('Unit: parser/inline', () => {
|
|
|
151
152
|
assert.deepStrictEqual(inspect(parser('[[[]{a}]]')), [['<sup class="reference"><a href="a">a</a></sup>'], '']);
|
|
152
153
|
assert.deepStrictEqual(inspect(parser('[[[a]{b}]]')), [['<sup class="reference"><a href="b">a</a></sup>'], '']);
|
|
153
154
|
assert.deepStrictEqual(inspect(parser('[(([a]{#}))]{#}')), [['<a href="#"><span class="paren">(<span class="paren">([a]{#})</span>)</span></a>'], '']);
|
|
155
|
+
assert.deepStrictEqual(inspect(parser('"[[""]]')), [['"', '<sup class="reference">""</sup>'], '']);
|
|
154
156
|
assert.deepStrictEqual(inspect(parser('<http://host>')), [['<', '<a href="http://host" target="_blank">http://host</a>', '>'], '']);
|
|
155
157
|
assert.deepStrictEqual(inspect(parser('<<small>a<</small>')), [['<', '<small>a<</small>'], '']);
|
|
156
158
|
assert.deepStrictEqual(inspect(parser('<sup><sub>a</sub>')), [['<', 'sup', '>', '<sub>a</sub>'], '']);
|
|
@@ -162,6 +164,8 @@ describe('Unit: parser/inline', () => {
|
|
|
162
164
|
assert.deepStrictEqual(inspect(parser('[#a*b\nc*]')), [['[', '<a href="/hashtags/a" class="hashtag">#a</a>', '<em>b<br>c</em>', ']'], '']);
|
|
163
165
|
assert.deepStrictEqual(inspect(parser('[*a\nb*]{/}')), [['[', '<em>a<br>b</em>', ']', '<a href="/">/</a>'], '']);
|
|
164
166
|
assert.deepStrictEqual(inspect(parser('[[*a\nb*]]')), [['[', '[', '<em>a<br>b</em>', ']', ']'], '']);
|
|
167
|
+
assert.deepStrictEqual(inspect(parser('"[# *"*"*')), [['"', '[#', ' ', '*', '"', '*', '"', '*'], '']);
|
|
168
|
+
assert.deepStrictEqual(inspect(parser('"[# "*"* #]')), [['"', '[#', ' ', '"', '*', '"', '*', ' ', '#', ']'], '']);
|
|
165
169
|
});
|
|
166
170
|
|
|
167
171
|
it('uri', () => {
|