securemark 0.248.0 → 0.249.1

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.
Files changed (39) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/index.js +329 -271
  3. package/karma.conf.js +1 -1
  4. package/markdown.d.ts +10 -4
  5. package/package.json +12 -12
  6. package/src/combinator/control/manipulation/indent.ts +1 -2
  7. package/src/parser/inline/annotation.test.ts +2 -2
  8. package/src/parser/inline/annotation.ts +3 -4
  9. package/src/parser/inline/comment.ts +1 -1
  10. package/src/parser/inline/deletion.ts +3 -3
  11. package/src/parser/inline/emphasis.test.ts +5 -4
  12. package/src/parser/inline/emphasis.ts +8 -3
  13. package/src/parser/inline/emstrong.ts +14 -6
  14. package/src/parser/inline/extension/index.ts +1 -2
  15. package/src/parser/inline/extension/label.ts +1 -2
  16. package/src/parser/inline/html.test.ts +5 -2
  17. package/src/parser/inline/html.ts +12 -22
  18. package/src/parser/inline/insertion.ts +3 -3
  19. package/src/parser/inline/link.test.ts +2 -2
  20. package/src/parser/inline/link.ts +3 -4
  21. package/src/parser/inline/mark.test.ts +5 -4
  22. package/src/parser/inline/mark.ts +3 -3
  23. package/src/parser/inline/media.ts +3 -3
  24. package/src/parser/inline/reference.test.ts +5 -5
  25. package/src/parser/inline/reference.ts +7 -9
  26. package/src/parser/inline/ruby.ts +4 -4
  27. package/src/parser/inline/strong.test.ts +5 -4
  28. package/src/parser/inline/strong.ts +7 -3
  29. package/src/parser/inline.test.ts +1 -0
  30. package/src/parser/processor/figure.ts +18 -19
  31. package/src/parser/source/escapable.test.ts +4 -3
  32. package/src/parser/source/escapable.ts +3 -3
  33. package/src/parser/source/text.test.ts +4 -4
  34. package/src/parser/source/text.ts +3 -3
  35. package/src/parser/source/unescapable.test.ts +4 -3
  36. package/src/parser/source/unescapable.ts +3 -3
  37. package/src/parser/util.ts +26 -13
  38. package/src/renderer/render/media/image.ts +3 -3
  39. package/src/renderer/render/media/video.ts +2 -2
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! securemark v0.248.0 https://github.com/falsandtru/securemark | (c) 2017, falsandtru | UNLICENSED License */
1
+ /*! securemark v0.249.1 https://github.com/falsandtru/securemark | (c) 2017, falsandtru | UNLICENSED License */
2
2
  (function webpackUniversalModuleDefinition(root, factory) {
3
3
  if(typeof exports === 'object' && typeof module === 'object')
4
4
  module.exports = factory(require("DOMPurify"), require("Prism"));
@@ -64,50 +64,18 @@ __exportStar(__webpack_require__(256), exports);
64
64
  Object.defineProperty(exports, "__esModule", ({
65
65
  value: true
66
66
  }));
67
- exports.isArray = exports.ObjectValues = exports.ObjectSetPrototypeOf = exports.ObjectSeal = exports.ObjectPreventExtensions = exports.ObjectKeys = exports.isSealed = exports.isFrozen = exports.isExtensible = exports.ObjectIs = exports.ObjectGetPrototypeOf = exports.ObjectGetOwnPropertySymbols = exports.ObjectGetOwnPropertyNames = exports.ObjectGetOwnPropertyDescriptors = exports.ObjectGetOwnPropertyDescriptor = exports.ObjectFromEntries = exports.ObjectFreeze = exports.ObjectEntries = exports.ObjectDefineProperty = exports.ObjectDefineProperties = exports.ObjectCreate = exports.ObjectAssign = exports.toString = exports.isEnumerable = exports.isPrototypeOf = exports.hasOwnProperty = exports.SymbolKeyFor = exports.SymbolFor = exports.sign = exports.round = exports.random = exports.min = exports.max = exports.floor = exports.ceil = exports.abs = exports.parseInt = exports.parseFloat = exports.isSafeInteger = exports.isNaN = exports.isInteger = exports.isFinite = exports[NaN] = void 0;
67
+ exports.ObjectSetPrototypeOf = exports.ObjectGetPrototypeOf = exports.ObjectCreate = exports.ObjectAssign = exports.toString = exports.isEnumerable = exports.isPrototypeOf = exports.hasOwnProperty = exports.isArray = exports.sign = exports.round = exports.random = exports.min = exports.max = exports.floor = exports.ceil = exports.abs = exports.parseInt = exports.parseFloat = exports.isSafeInteger = exports.isNaN = exports.isInteger = exports.isFinite = exports[NaN] = void 0;
68
68
  exports[NaN] = Number.NaN, exports.isFinite = Number.isFinite, exports.isInteger = Number.isInteger, exports.isNaN = Number.isNaN, exports.isSafeInteger = Number.isSafeInteger, exports.parseFloat = Number.parseFloat, exports.parseInt = Number.parseInt;
69
- exports.abs = Math.abs, exports.ceil = Math.ceil, exports.floor = Math.floor, exports.max = Math.max, exports.min = Math.min, exports.random = Math.random, exports.round = Math.round, exports.sign = Math.sign; //export const SymbolAsyncIterator: typeof Symbol.asyncIterator = Symbol.asyncIterator;
70
-
71
- exports.SymbolFor = Symbol.for; //export const SymbolHasInstance: typeof Symbol.hasInstance = Symbol.hasInstance;
72
- //export const SymbolIsConcatSpreadable: typeof Symbol.isConcatSpreadable = Symbol.isConcatSpreadable;
73
- //export const SymbolIterator: typeof Symbol.iterator = Symbol.iterator;
74
-
75
- exports.SymbolKeyFor = Symbol.keyFor; //export const SymbolMatch: typeof Symbol.match = Symbol.match;
76
- //export const SymbolReplace: typeof Symbol.replace = Symbol.replace;
77
- //export const SymbolSearch: typeof Symbol.search = Symbol.search;
78
- //export const SymbolSpecies: typeof Symbol.species = Symbol.species;
79
- //export const SymbolSplit: typeof Symbol.split = Symbol.split;
80
- //export const SymbolToPrimitive: typeof Symbol.toPrimitive = Symbol.toPrimitive;
81
- //export const SymbolToStringTag: typeof Symbol.toStringTag = Symbol.toStringTag;
82
- //export const SymbolUnscopables: typeof Symbol.unscopables = Symbol.unscopables;
83
-
69
+ exports.abs = Math.abs, exports.ceil = Math.ceil, exports.floor = Math.floor, exports.max = Math.max, exports.min = Math.min, exports.random = Math.random, exports.round = Math.round, exports.sign = Math.sign;
70
+ exports.isArray = Array.isArray;
84
71
  exports.hasOwnProperty = Object.prototype.hasOwnProperty.call.bind(Object.prototype.hasOwnProperty);
85
72
  exports.isPrototypeOf = Object.prototype.isPrototypeOf.call.bind(Object.prototype.isPrototypeOf);
86
73
  exports.isEnumerable = Object.prototype.propertyIsEnumerable.call.bind(Object.prototype.propertyIsEnumerable);
87
74
  exports.toString = Object.prototype.toString.call.bind(Object.prototype.toString);
88
75
  exports.ObjectAssign = Object.assign;
89
76
  exports.ObjectCreate = Object.create;
90
- exports.ObjectDefineProperties = Object.defineProperties;
91
- exports.ObjectDefineProperty = Object.defineProperty;
92
- exports.ObjectEntries = Object.entries;
93
- exports.ObjectFreeze = Object.freeze; // @ts-ignore
94
-
95
- exports.ObjectFromEntries = Object.fromEntries;
96
- exports.ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
97
- exports.ObjectGetOwnPropertyDescriptors = Object.getOwnPropertyDescriptors;
98
- exports.ObjectGetOwnPropertyNames = Object.getOwnPropertyNames;
99
- exports.ObjectGetOwnPropertySymbols = Object.getOwnPropertySymbols;
100
77
  exports.ObjectGetPrototypeOf = Object.getPrototypeOf;
101
- exports.ObjectIs = Object.is;
102
- exports.isExtensible = Object.isExtensible;
103
- exports.isFrozen = Object.isFrozen;
104
- exports.isSealed = Object.isSealed;
105
- exports.ObjectKeys = Object.keys;
106
- exports.ObjectPreventExtensions = Object.preventExtensions;
107
- exports.ObjectSeal = Object.seal;
108
78
  exports.ObjectSetPrototypeOf = Object.setPrototypeOf;
109
- exports.ObjectValues = Object.values;
110
- exports.isArray = Array.isArray;
111
79
 
112
80
  /***/ }),
113
81
 
@@ -120,7 +88,7 @@ exports.isArray = Array.isArray;
120
88
  Object.defineProperty(exports, "__esModule", ({
121
89
  value: true
122
90
  }));
123
- exports.join = exports.splice = exports.pop = exports.push = exports.shift = exports.unshift = exports.indexOf = void 0;
91
+ exports.splice = exports.pop = exports.push = exports.shift = exports.unshift = exports.indexOf = void 0;
124
92
 
125
93
  const global_1 = __webpack_require__(4128);
126
94
 
@@ -218,18 +186,6 @@ function splice(as, index, count, ...inserts) {
218
186
 
219
187
  exports.splice = splice;
220
188
 
221
- function join(as, sep = '') {
222
- let acc = '';
223
-
224
- for (let i = 0; i < as.length; ++i) {
225
- acc += i === 0 ? as[i] : sep + as[i];
226
- }
227
-
228
- return acc;
229
- }
230
-
231
- exports.join = join;
232
-
233
189
  /***/ }),
234
190
 
235
191
  /***/ 4401:
@@ -368,7 +324,7 @@ function template(strategy) {
368
324
  const source = sources[i];
369
325
  if (source === target) continue;
370
326
  if ((0, type_1.isPrimitive)(source)) continue;
371
- const keys = (0, alias_1.ObjectKeys)(source);
327
+ const keys = global_1.Object.keys(source);
372
328
 
373
329
  for (let i = 0; i < keys.length; ++i) {
374
330
  strategy(keys[i], target, source);
@@ -404,6 +360,8 @@ const clock_1 = __webpack_require__(7681);
404
360
 
405
361
  const invlist_1 = __webpack_require__(7452);
406
362
 
363
+ const heap_1 = __webpack_require__(818);
364
+
407
365
  const assign_1 = __webpack_require__(4401);
408
366
 
409
367
  const tuple_1 = __webpack_require__(5341);
@@ -414,26 +372,21 @@ class Cache {
414
372
  capacity: 0,
415
373
  space: global_1.Infinity,
416
374
  age: global_1.Infinity,
417
- life: 10,
418
- limit: 95,
375
+ earlyExpiring: false,
376
+ limit: 950,
419
377
  capture: {
420
378
  delete: true,
421
379
  clear: true
422
380
  }
423
381
  };
424
- this.SIZE = 0; // 1041 days < 2 ** 53 / 100,000,000 / 3600 / 24.
425
- // Hit counter only for LFU.
426
-
427
- this.clock = global_1.Number.MIN_SAFE_INTEGER; // LRU access counter only for LRU.
428
-
429
- this.clockR = global_1.Number.MIN_SAFE_INTEGER;
382
+ this.overlap = 0;
383
+ this.SIZE = 0;
430
384
  this.memory = new global_1.Map();
431
385
  this.indexes = {
432
386
  LRU: new invlist_1.List(),
433
- LFU: new invlist_1.List(),
434
- // expiryとLFUのclockを消すなら消せる
435
- OVL: new invlist_1.List()
387
+ LFU: new invlist_1.List()
436
388
  };
389
+ this.expiries = new heap_1.Heap();
437
390
  this.stats = {
438
391
  LRU: (0, tuple_1.tuple)(0, 0),
439
392
  LFU: (0, tuple_1.tuple)(0, 0),
@@ -459,7 +412,7 @@ class Cache {
459
412
  }
460
413
 
461
414
  };
462
- this.ratio = 50;
415
+ this.ratio = 500;
463
416
 
464
417
  if (typeof capacity === 'object') {
465
418
  opts = capacity;
@@ -472,8 +425,9 @@ class Cache {
472
425
  this.capacity = this.settings.capacity;
473
426
  if (this.capacity >= 1 === false) throw new Error(`Spica: Cache: Capacity must be 1 or more.`);
474
427
  this.space = this.settings.space;
475
- this.life = this.capacity * this.settings.life;
476
428
  this.limit = this.settings.limit;
429
+ this.earlyExpiring = this.settings.earlyExpiring;
430
+ this.disposer = this.settings.disposer;
477
431
  }
478
432
 
479
433
  get length() {
@@ -487,41 +441,29 @@ class Cache {
487
441
 
488
442
  evict(node, record, callback) {
489
443
  const index = node.value;
490
- callback &&= !!this.settings.disposer;
444
+ callback &&= !!this.disposer;
491
445
  record = callback ? record ?? this.memory.get(index.key) : record;
446
+ this.overlap -= +(index.region === 'LFU' && node.list === this.indexes.LRU);
492
447
  node.delete();
493
- node.value.overlap?.delete();
494
448
  this.memory.delete(index.key);
495
449
  this.SIZE -= index.size;
496
- callback && this.settings.disposer?.(record.value, index.key);
450
+ callback && this.disposer?.(record.value, index.key);
497
451
  }
498
452
 
499
453
  ensure(margin, skip) {
500
- if (skip) {
501
- // Prevent wrong disposal of `skip`.
502
- skip.value.clock = this.clock;
503
- skip.value.expiry = global_1.Infinity;
504
- }
505
-
506
454
  let size = skip?.value.size ?? 0;
507
455
  if (margin - size <= 0) return;
508
456
  const {
509
457
  LRU,
510
- LFU,
511
- OVL
458
+ LFU
512
459
  } = this.indexes;
513
460
 
514
461
  while (this.length === this.capacity || this.size + margin - size > this.space) {
515
- const lastNode = OVL.last ?? LFU.last;
516
- const lastIndex = lastNode?.value;
517
462
  let target;
518
463
 
519
464
  switch (true) {
520
- // NOTE: The following conditions must be ensured that they won't be true if `lastNode` is `skip`.
521
- // LRUの下限を5%以上確保すればわずかな性能低下と引き換えにクロックを消せる
522
- case lastIndex && lastIndex.clock < this.clock - this.life:
523
- case lastIndex && lastIndex.expiry !== global_1.Infinity && lastIndex.expiry < (0, clock_1.now)():
524
- target = lastNode.list === OVL ? lastNode.value.node : lastNode;
465
+ case (target = this.expiries.peek()) && target !== skip && target.value.expiry < (0, clock_1.now)():
466
+ target = this.expiries.extract();
525
467
  break;
526
468
 
527
469
  case LRU.length === 0:
@@ -529,16 +471,17 @@ class Cache {
529
471
  break;
530
472
  // @ts-expect-error
531
473
 
532
- case LFU.length > this.capacity * this.ratio / 100:
474
+ case LFU.length > this.capacity * this.ratio / 1000:
533
475
  target = LFU.last !== skip ? LFU.last : LFU.length >= 2 ? LFU.last.prev : skip;
534
476
 
535
477
  if (target !== skip) {
536
- if (this.ratio >= 50) break;
478
+ if (this.ratio > 500) break;
537
479
  LRU.unshiftNode(target);
538
- LRU.head.value.node = LRU.head;
539
- LRU.head.value.overlap = OVL.unshift(LRU.head.value);
480
+ ++this.overlap;
540
481
  }
541
482
 
483
+ // fallthrough
484
+
542
485
  default:
543
486
  target = LRU.last !== skip ? LRU.last : LRU.length >= 2 ? LRU.last.prev : LFU.last;
544
487
  }
@@ -549,12 +492,12 @@ class Cache {
549
492
  }
550
493
  }
551
494
 
552
- put(key, value, size = 1, age = this.settings.age) {
553
- if (size >= 1 === false) throw new Error(`Spica: Cache: Size must be 1 or more.`);
554
- if (age >= 1 === false) throw new Error(`Spica: Cache: Age must be 1 or more.`);
555
-
495
+ put(key, value, {
496
+ size = 1,
497
+ age = this.settings.age
498
+ } = {}) {
556
499
  if (size > this.space || age <= 0) {
557
- this.settings.disposer?.(value, key);
500
+ this.disposer?.(value, key);
558
501
  return false;
559
502
  }
560
503
 
@@ -562,16 +505,23 @@ class Cache {
562
505
  const record = this.memory.get(key);
563
506
 
564
507
  if (record) {
565
- const node = record.index;
508
+ const node = record.inode;
566
509
  const val = record.value;
567
510
  const index = node.value;
568
511
  this.ensure(size, node);
569
- index.clock = index.region === 'LRU' ? ++this.clockR : ++this.clock;
570
- index.expiry = expiry;
571
512
  this.SIZE += size - index.size;
572
513
  index.size = size;
514
+ index.expiry = expiry;
515
+
516
+ if (this.earlyExpiring && expiry !== global_1.Infinity) {
517
+ index.enode ? this.expiries.update(index.enode, -expiry) : index.enode = this.expiries.insert(-expiry, node);
518
+ } else if (index.enode) {
519
+ this.expiries.delete(index.enode);
520
+ index.enode = void 0;
521
+ }
522
+
573
523
  record.value = value;
574
- this.settings.disposer?.(val, key);
524
+ this.disposer?.(val, key);
575
525
  return true;
576
526
  }
577
527
 
@@ -580,28 +530,33 @@ class Cache {
580
530
  LRU
581
531
  } = this.indexes;
582
532
  this.SIZE += size;
533
+ const node = LRU.unshift({
534
+ key,
535
+ size,
536
+ expiry,
537
+ region: 'LRU'
538
+ });
583
539
  this.memory.set(key, {
584
- index: LRU.unshift({
585
- key,
586
- size,
587
- clock: ++this.clockR,
588
- expiry,
589
- region: 'LRU'
590
- }),
540
+ inode: node,
591
541
  value
592
542
  });
543
+
544
+ if (this.earlyExpiring && expiry !== global_1.Infinity) {
545
+ node.value.enode = this.expiries.insert(-expiry, node);
546
+ }
547
+
593
548
  return false;
594
549
  }
595
550
 
596
- set(key, value, size, age) {
597
- this.put(key, value, size, age);
551
+ set(key, value, opts) {
552
+ this.put(key, value, opts);
598
553
  return this;
599
554
  }
600
555
 
601
556
  get(key) {
602
557
  const record = this.memory.get(key);
603
558
  if (!record) return;
604
- const node = record.index;
559
+ const node = record.inode;
605
560
  const expiry = node.value.expiry;
606
561
 
607
562
  if (expiry !== global_1.Infinity && expiry < (0, clock_1.now)()) {
@@ -610,7 +565,7 @@ class Cache {
610
565
  } // Optimization for memoize.
611
566
 
612
567
 
613
- if (this.capacity >= 10 && node === node.list.head) return record.value;
568
+ if (this.capacity > 3 && node === node.list.head) return record.value;
614
569
  this.access(node);
615
570
  this.slide();
616
571
  return record.value;
@@ -621,10 +576,10 @@ class Cache {
621
576
  //assert(this.memory.size === this.indexes.LFU.length + this.indexes.LRU.length);
622
577
  const record = this.memory.get(key);
623
578
  if (!record) return false;
624
- const expiry = record.index.value.expiry;
579
+ const expiry = record.inode.value.expiry;
625
580
 
626
581
  if (expiry !== global_1.Infinity && expiry < (0, clock_1.now)()) {
627
- this.evict(record.index, record, true);
582
+ this.evict(record.inode, record, true);
628
583
  return false;
629
584
  }
630
585
 
@@ -634,25 +589,26 @@ class Cache {
634
589
  delete(key) {
635
590
  const record = this.memory.get(key);
636
591
  if (!record) return false;
637
- this.evict(record.index, record, this.settings.capture.delete === true);
592
+ this.evict(record.inode, record, this.settings.capture.delete === true);
638
593
  return true;
639
594
  }
640
595
 
641
596
  clear() {
597
+ this.overlap = 0;
642
598
  this.SIZE = 0;
643
- this.ratio = 50;
599
+ this.ratio = 500;
644
600
  this.stats.clear();
645
601
  this.indexes.LRU.clear();
646
602
  this.indexes.LFU.clear();
647
- this.indexes.OVL.clear();
648
- if (!this.settings.disposer || !this.settings.capture.clear) return void this.memory.clear();
603
+ this.expiries.clear();
604
+ if (!this.disposer || !this.settings.capture.clear) return void this.memory.clear();
649
605
  const memory = this.memory;
650
606
  this.memory = new global_1.Map();
651
607
 
652
608
  for (const [key, {
653
609
  value
654
610
  }] of memory) {
655
- this.settings.disposer(value, key);
611
+ this.disposer(value, key);
656
612
  }
657
613
  }
658
614
 
@@ -679,24 +635,24 @@ class Cache {
679
635
  } = this;
680
636
  const window = capacity;
681
637
  LRU[0] + LFU[0] === window && this.stats.slide();
682
- if ((LRU[0] + LFU[0]) * 100 % capacity || LRU[1] + LFU[1] === 0) return;
638
+ if ((LRU[0] + LFU[0]) * 1000 % capacity || LRU[1] + LFU[1] === 0) return;
683
639
  const lenR = indexes.LRU.length;
684
640
  const lenF = indexes.LFU.length;
685
- const lenV = indexes.OVL.length;
686
- const r = (lenF + lenV) * 1000 / (lenR + lenF) | 0;
687
- const rateR0 = rate(window, LRU[0], LRU[0] + LFU[0], LRU[1], LRU[1] + LFU[1], 0) * (1 + r);
688
- const rateF0 = rate(window, LFU[0], LRU[0] + LFU[0], LFU[1], LRU[1] + LFU[1], 0) * (1001 - r);
689
- const rateF1 = rate(window, LFU[1], LRU[1] + LFU[1], LFU[0], LRU[0] + LFU[0], 5) * (1001 - r); // 操作頻度を超えてキャッシュ比率を増減させても余剰比率の消化が追いつかず無駄
641
+ const lenV = this.overlap;
642
+ const r = (lenF + lenV) * 1000 / (lenR + lenF || 1) | 0;
643
+ const rateR0 = rate(window, LRU[0], LRU[0] + LFU[0], LRU[1], LRU[1] + LFU[1], 0) * r;
644
+ const rateF0 = rate(window, LFU[0], LRU[0] + LFU[0], LFU[1], LRU[1] + LFU[1], 0) * (1000 - r);
645
+ const rateF1 = rate(window, LFU[1], LRU[1] + LFU[1], LFU[0], LRU[0] + LFU[0], 5) * (1000 - r); // 操作頻度を超えてキャッシュ比率を増減させても余剰比率の消化が追いつかず無駄
690
646
  // LRUの下限設定ではLRU拡大の要否を迅速に判定できないためLFUのヒット率低下の検出で代替する
691
647
 
692
648
  if (ratio > 0 && (rateR0 > rateF0 || rateF0 < rateF1 * 0.95)) {
693
- if (lenR >= capacity * (100 - ratio) / 100) {
694
- //ratio % 10 || ratio === 100 || console.debug('-', ratio, LRU, LFU);
649
+ if (lenR >= capacity * (1000 - ratio) / 1000) {
650
+ //ratio % 100 || ratio === 1000 || console.debug('-', ratio, LRU, LFU);
695
651
  --this.ratio;
696
652
  }
697
653
  } else if (ratio < limit && rateF0 > rateR0) {
698
- if (lenF >= capacity * ratio / 100) {
699
- //ratio % 10 || ratio === 0 || console.debug('+', ratio, LRU, LFU);
654
+ if (lenF >= capacity * ratio / 1000) {
655
+ //ratio % 100 || ratio === 0 || console.debug('+', ratio, LRU, LFU);
700
656
  ++this.ratio;
701
657
  }
702
658
  }
@@ -708,33 +664,17 @@ class Cache {
708
664
 
709
665
  accessLRU(node) {
710
666
  const index = node.value;
711
- const {
712
- LRU,
713
- LFU
714
- } = this.indexes;
715
- ++this.stats[index.region][0]; // Prevent LFU destruction.
716
-
717
- if (!index.overlap && index.clock >= this.clockR - LRU.length / 3 && this.capacity > 3) {
718
- index.clock = ++this.clockR;
719
- node.moveToHead();
720
- return true;
721
- }
722
-
723
- index.clock = ++this.clock;
667
+ ++this.stats[index.region][0];
668
+ this.overlap -= +(index.region === 'LFU');
724
669
  index.region = 'LFU';
725
- index.overlap?.delete();
726
- LFU.unshiftNode(node);
670
+ this.indexes.LFU.unshiftNode(node);
727
671
  return true;
728
672
  }
729
673
 
730
674
  accessLFU(node) {
675
+ if (node.list !== this.indexes.LFU) return false;
731
676
  const index = node.value;
732
- const {
733
- LFU
734
- } = this.indexes;
735
- if (node.list !== LFU) return false;
736
677
  ++this.stats[index.region][0];
737
- index.clock = ++this.clock;
738
678
  node.moveToHead();
739
679
  return true;
740
680
  }
@@ -991,6 +931,151 @@ var global = (/* unused pure expression or super */ null && (globalThis));
991
931
 
992
932
  /***/ }),
993
933
 
934
+ /***/ 818:
935
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
936
+
937
+ "use strict";
938
+
939
+
940
+ Object.defineProperty(exports, "__esModule", ({
941
+ value: true
942
+ }));
943
+ exports.Heap = void 0;
944
+
945
+ const alias_1 = __webpack_require__(5406); // Max heap
946
+
947
+
948
+ const undefined = void 0;
949
+
950
+ class Heap {
951
+ constructor(stable = false) {
952
+ this.stable = stable;
953
+ this.array = [];
954
+ this.$length = 0;
955
+ }
956
+
957
+ get length() {
958
+ return this.$length;
959
+ }
960
+
961
+ insert(priority, value) {
962
+ const array = this.array;
963
+ const node = array[this.$length] = [priority, value, this.$length++];
964
+ upHeapify(array, this.$length);
965
+ return node;
966
+ }
967
+
968
+ replace(priority, value) {
969
+ const array = this.array;
970
+ if (this.$length === 0) return void this.insert(priority, value);
971
+ const replaced = array[0][1];
972
+ array[0] = [priority, value, 0];
973
+ downHeapify(array, 1, this.$length, this.stable);
974
+ return replaced;
975
+ }
976
+
977
+ extract() {
978
+ if (this.$length === 0) return;
979
+ const node = this.array[0];
980
+ this.delete(node);
981
+ return node[1];
982
+ }
983
+
984
+ delete(node) {
985
+ const array = this.array;
986
+ const index = node[2];
987
+ if (array[index] !== node) throw new Error('Invalid node');
988
+ swap(array, index, --this.$length); // @ts-expect-error
989
+
990
+ array[this.$length] = undefined;
991
+ index < this.$length && this.sort(array[index]);
992
+
993
+ if (array.length > 2 ** 16 && array.length > this.$length * 2) {
994
+ array.splice(array.length / 2, array.length);
995
+ }
996
+
997
+ return node[1];
998
+ }
999
+
1000
+ update(node, priority, value = node[1]) {
1001
+ const array = this.array;
1002
+ if (array[node[2]] !== node) throw new Error('Invalid node');
1003
+ node[1] = value;
1004
+ if (node[0] === priority) return;
1005
+ node[0] = priority;
1006
+ this.sort(node);
1007
+ }
1008
+
1009
+ sort(node) {
1010
+ const array = this.array;
1011
+ return upHeapify(array, node[2] + 1) || downHeapify(array, node[2] + 1, this.$length, this.stable);
1012
+ }
1013
+
1014
+ peek() {
1015
+ return this.array[0]?.[1];
1016
+ }
1017
+
1018
+ clear() {
1019
+ this.array = [];
1020
+ this.$length = 0;
1021
+ }
1022
+
1023
+ }
1024
+
1025
+ exports.Heap = Heap;
1026
+
1027
+ function upHeapify(array, index) {
1028
+ const priority = array[index - 1][0];
1029
+ let changed = false;
1030
+
1031
+ while (index > 1) {
1032
+ const parent = (0, alias_1.floor)(index / 2);
1033
+ if (array[parent - 1][0] >= priority) break;
1034
+ swap(array, index - 1, parent - 1);
1035
+ index = parent;
1036
+ changed ||= true;
1037
+ }
1038
+
1039
+ return changed;
1040
+ }
1041
+
1042
+ function downHeapify(array, index, length, stable) {
1043
+ let changed = false;
1044
+
1045
+ while (index < length) {
1046
+ const left = index * 2;
1047
+ const right = index * 2 + 1;
1048
+ let max = index;
1049
+
1050
+ if (left <= length && (stable ? array[left - 1][0] >= array[max - 1][0] : array[left - 1][0] > array[max - 1][0])) {
1051
+ max = left;
1052
+ }
1053
+
1054
+ if (right <= length && (stable ? array[right - 1][0] >= array[max - 1][0] : array[right - 1][0] > array[max - 1][0])) {
1055
+ max = right;
1056
+ }
1057
+
1058
+ if (max === index) break;
1059
+ swap(array, index - 1, max - 1);
1060
+ index = max;
1061
+ changed ||= true;
1062
+ }
1063
+
1064
+ return changed;
1065
+ }
1066
+
1067
+ function swap(array, index1, index2) {
1068
+ if (index1 === index2) return;
1069
+ const node1 = array[index1];
1070
+ const node2 = array[index2];
1071
+ node1[2] = index2;
1072
+ node2[2] = index1;
1073
+ array[index1] = node2;
1074
+ array[index2] = node1;
1075
+ }
1076
+
1077
+ /***/ }),
1078
+
994
1079
  /***/ 7452:
995
1080
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
996
1081
 
@@ -1470,7 +1555,6 @@ const global_1 = __webpack_require__(4128);
1470
1555
 
1471
1556
  const alias_1 = __webpack_require__(5406);
1472
1557
 
1473
- const toString = Object.prototype.toString.call.bind(Object.prototype.toString);
1474
1558
  const ObjectPrototype = Object.prototype;
1475
1559
  const ArrayPrototype = Array.prototype;
1476
1560
 
@@ -1484,7 +1568,7 @@ function type(value) {
1484
1568
  const proto = (0, alias_1.ObjectGetPrototypeOf)(value);
1485
1569
  if (proto === ObjectPrototype) return 'Object';
1486
1570
  if (proto === ArrayPrototype) return 'Array';
1487
- return toString(value).slice(8, -1);
1571
+ return (0, alias_1.toString)(value).slice(8, -1);
1488
1572
  }
1489
1573
 
1490
1574
  if (type === 'function') return 'Function';
@@ -2254,11 +2338,9 @@ const surround_1 = __webpack_require__(7130);
2254
2338
 
2255
2339
  const memoize_1 = __webpack_require__(1808);
2256
2340
 
2257
- const array_1 = __webpack_require__(8112);
2258
-
2259
2341
  function indent(parser, separation = false) {
2260
2342
  return (0, bind_1.bind)((0, block_1.block)((0, match_1.match)(/^(?=(([ \t])\2*))/, (0, memoize_1.memoize)(([, indent]) => (0, some_1.some)((0, line_1.line)((0, surround_1.open)(indent, source => [[unline(source)], '']))), ([, indent]) => indent.length * 2 + +(indent[0] === ' '), [])), separation), (nodes, rest, context) => {
2261
- const result = parser((0, array_1.join)(nodes, '\n'), context);
2343
+ const result = parser(nodes.join('\n'), context);
2262
2344
  return result && (0, parser_1.exec)(result) === '' ? [(0, parser_1.eval)(result), rest] : global_1.undefined;
2263
2345
  });
2264
2346
  }
@@ -5353,7 +5435,7 @@ const util_1 = __webpack_require__(9437);
5353
5435
 
5354
5436
  const dom_1 = __webpack_require__(3252);
5355
5437
 
5356
- exports.annotation = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.validate)('((', '))', '\n', (0, combinator_1.fmap)((0, combinator_1.surround)('((', (0, combinator_1.guard)(context => context.syntax?.inline?.annotation ?? true, (0, util_1.startLoose)((0, combinator_1.context)({
5438
+ exports.annotation = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.validate)('((', '))', '\n', (0, combinator_1.fmap)((0, combinator_1.surround)('((', (0, combinator_1.guard)(context => context.syntax?.inline?.annotation ?? true, (0, combinator_1.context)({
5357
5439
  syntax: {
5358
5440
  inline: {
5359
5441
  annotation: false,
@@ -5368,9 +5450,9 @@ exports.annotation = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0,
5368
5450
  }
5369
5451
  },
5370
5452
  delimiters: global_1.undefined
5371
- }, (0, util_1.trimSpaceStart)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, ')', /^\\?\n/)]))))), '))'), ns => [(0, dom_1.html)('sup', {
5453
+ }, (0, util_1.trimBlankInline)((0, combinator_1.some)((0, combinator_1.union)([inline_1.inline]), ')', /^\\?\n/)))), '))'), ns => [(0, dom_1.html)('sup', {
5372
5454
  class: 'annotation'
5373
- }, (0, util_1.trimNodeEnd)((0, dom_1.defrag)(ns)))]))));
5455
+ }, (0, dom_1.defrag)(ns))]))));
5374
5456
 
5375
5457
  /***/ }),
5376
5458
 
@@ -5722,7 +5804,7 @@ const memoize_1 = __webpack_require__(1808);
5722
5804
 
5723
5805
  const array_1 = __webpack_require__(8112);
5724
5806
 
5725
- exports.comment = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.validate)('[#', (0, combinator_1.match)(/^(?=\[(#+)\s)/, (0, memoize_1.memoize)(([, fence]) => (0, combinator_1.surround)((0, combinator_1.open)((0, source_1.str)(`[${fence}`), (0, combinator_1.some)(source_1.text, new RegExp(String.raw`^\s+${fence}\]|^\S`)), true), (0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, new RegExp(String.raw`^\s+${fence}\]`))]), (0, combinator_1.close)((0, combinator_1.some)(source_1.text, /^\S/), (0, source_1.str)(`${fence}]`)), true, ([as, bs = [], cs], rest) => [[(0, dom_1.html)('span', {
5807
+ exports.comment = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.validate)('[#', (0, combinator_1.match)(/^(?=\[(#+)\s)/, (0, memoize_1.memoize)(([, fence]) => (0, combinator_1.surround)((0, combinator_1.open)((0, source_1.str)(`[${fence}`), (0, combinator_1.some)(source_1.text, new RegExp(String.raw`^\s+${fence}\]|^\S`)), true), (0, combinator_1.some)((0, combinator_1.union)([inline_1.inline]), new RegExp(String.raw`^\s+${fence}\]`)), (0, combinator_1.close)((0, combinator_1.some)(source_1.text, /^\S/), (0, source_1.str)(`${fence}]`)), true, ([as, bs = [], cs], rest) => [[(0, dom_1.html)('span', {
5726
5808
  class: 'comment'
5727
5809
  }, [(0, dom_1.html)('input', {
5728
5810
  type: 'checkbox'
@@ -5753,7 +5835,7 @@ const dom_1 = __webpack_require__(3252);
5753
5835
 
5754
5836
  const array_1 = __webpack_require__(8112);
5755
5837
 
5756
- exports.deletion = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('~~'), (0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blank)(/\n/, '~~')), (0, combinator_1.open)(/^\n/, (0, combinator_1.some)(inline_1.inline, '~'), true)])), (0, source_1.str)('~~'), false, ([, bs], rest) => [[(0, dom_1.html)('del', (0, dom_1.defrag)(bs))], rest], ([as, bs], rest) => [(0, array_1.unshift)(as, bs), rest])));
5838
+ exports.deletion = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('~~'), (0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blankWith)('\n', '~~')), (0, combinator_1.open)('\n', (0, combinator_1.some)(inline_1.inline, '~'), true)])), (0, source_1.str)('~~'), false, ([, bs], rest) => [[(0, dom_1.html)('del', (0, dom_1.defrag)(bs))], rest], ([as, bs], rest) => [(0, array_1.unshift)(as, bs), rest])));
5757
5839
 
5758
5840
  /***/ }),
5759
5841
 
@@ -5772,6 +5854,8 @@ const combinator_1 = __webpack_require__(2087);
5772
5854
 
5773
5855
  const inline_1 = __webpack_require__(1160);
5774
5856
 
5857
+ const emstrong_1 = __webpack_require__(6132);
5858
+
5775
5859
  const strong_1 = __webpack_require__(8072);
5776
5860
 
5777
5861
  const source_1 = __webpack_require__(6743);
@@ -5782,7 +5866,7 @@ const dom_1 = __webpack_require__(3252);
5782
5866
 
5783
5867
  const array_1 = __webpack_require__(8112);
5784
5868
 
5785
- exports.emphasis = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('*'), (0, util_1.startTight)((0, combinator_1.some)((0, combinator_1.union)([strong_1.strong, (0, combinator_1.some)(inline_1.inline, (0, util_1.blank)('', '*')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '*'), inline_1.inline)])), '*'), (0, source_1.str)('*'), false, ([, bs], rest) => [[(0, dom_1.html)('em', (0, dom_1.defrag)(bs))], rest], ([as, bs], rest) => [(0, array_1.unshift)(as, bs), rest])));
5869
+ exports.emphasis = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('*'), (0, util_1.startTight)((0, combinator_1.some)((0, combinator_1.union)([strong_1.strong, (0, combinator_1.some)(inline_1.inline, (0, util_1.blankWith)('*')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '*'), (0, combinator_1.union)([emstrong_1.emstrong, strong_1.strong, exports.emphasis]))])), '*'), (0, source_1.str)('*'), false, ([, bs], rest) => [[(0, dom_1.html)('em', (0, dom_1.defrag)(bs))], rest], ([as, bs], rest) => [(0, array_1.unshift)(as, bs), rest])));
5786
5870
 
5787
5871
  /***/ }),
5788
5872
 
@@ -5803,6 +5887,8 @@ const inline_1 = __webpack_require__(1160);
5803
5887
 
5804
5888
  const strong_1 = __webpack_require__(8072);
5805
5889
 
5890
+ const emphasis_1 = __webpack_require__(3867);
5891
+
5806
5892
  const source_1 = __webpack_require__(6743);
5807
5893
 
5808
5894
  const util_1 = __webpack_require__(9437);
@@ -5811,9 +5897,9 @@ const dom_1 = __webpack_require__(3252);
5811
5897
 
5812
5898
  const array_1 = __webpack_require__(8112);
5813
5899
 
5814
- const substrong = (0, combinator_1.lazy)(() => (0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blank)('', '**')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '*'), inline_1.inline)])));
5815
- const subemphasis = (0, combinator_1.lazy)(() => (0, combinator_1.some)((0, combinator_1.union)([strong_1.strong, (0, combinator_1.some)(inline_1.inline, (0, util_1.blank)('', '*')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '*'), inline_1.inline)])));
5816
- exports.emstrong = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('***'), (0, util_1.startTight)((0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blank)('', '*')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '*'), inline_1.inline)]))), (0, source_1.str)(/^\*{1,3}/), false, ([, bs, cs], rest, context) => {
5900
+ const substrong = (0, combinator_1.lazy)(() => (0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blankWith)('**')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '*'), (0, combinator_1.union)([exports.emstrong, strong_1.strong]))])));
5901
+ const subemphasis = (0, combinator_1.lazy)(() => (0, combinator_1.some)((0, combinator_1.union)([strong_1.strong, (0, combinator_1.some)(inline_1.inline, (0, util_1.blankWith)('*')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '*'), (0, combinator_1.union)([exports.emstrong, strong_1.strong, emphasis_1.emphasis]))])));
5902
+ exports.emstrong = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('***'), (0, util_1.startTight)((0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blankWith)('*')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '*'), inline_1.inline)]))), (0, source_1.str)(/^\*{1,3}/), false, ([, bs, cs], rest, context) => {
5817
5903
  switch (cs[0]) {
5818
5904
  case '***':
5819
5905
  return [[(0, dom_1.html)('em', [(0, dom_1.html)('strong', (0, dom_1.defrag)(bs))])], rest];
@@ -5914,8 +6000,6 @@ const util_1 = __webpack_require__(9437);
5914
6000
 
5915
6001
  const dom_1 = __webpack_require__(3252);
5916
6002
 
5917
- const array_1 = __webpack_require__(8112);
5918
-
5919
6003
  exports.index = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.validate)('[#', ']', '\n', (0, combinator_1.fmap)((0, indexee_1.indexee)((0, combinator_1.fmap)((0, combinator_1.surround)('[#', (0, combinator_1.guard)(context => context.syntax?.inline?.index ?? true, (0, util_1.startTight)((0, combinator_1.context)({
5920
6004
  syntax: {
5921
6005
  inline: {
@@ -5935,7 +6019,7 @@ exports.index = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combi
5935
6019
  }, el.childNodes)]))));
5936
6020
  const signature = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.fmap)((0, combinator_1.open)('|#', (0, util_1.startTight)((0, combinator_1.some)((0, combinator_1.union)([bracket, source_1.txt]), ']'))), ns => [(0, dom_1.html)('span', {
5937
6021
  class: 'indexer',
5938
- 'data-index': (0, indexee_1.identity)((0, array_1.join)(ns)).slice(6)
6022
+ 'data-index': (0, indexee_1.identity)(ns.join('')).slice(6)
5939
6023
  })])));
5940
6024
  const bracket = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.union)([(0, combinator_1.surround)((0, source_1.str)('('), (0, combinator_1.some)((0, combinator_1.union)([bracket, source_1.txt]), ')'), (0, source_1.str)(')'), true), (0, combinator_1.surround)((0, source_1.str)('['), (0, combinator_1.some)((0, combinator_1.union)([bracket, source_1.txt]), ']'), (0, source_1.str)(']'), true), (0, combinator_1.surround)((0, source_1.str)('{'), (0, combinator_1.some)((0, combinator_1.union)([bracket, source_1.txt]), '}'), (0, source_1.str)('}'), true), (0, combinator_1.surround)((0, source_1.str)('"'), (0, combinator_1.some)(source_1.txt, '"'), (0, source_1.str)('"'), true)])));
5941
6025
 
@@ -6075,8 +6159,6 @@ const source_1 = __webpack_require__(6743);
6075
6159
 
6076
6160
  const dom_1 = __webpack_require__(3252);
6077
6161
 
6078
- const array_1 = __webpack_require__(8112);
6079
-
6080
6162
  const body = (0, source_1.str)(/^\$[A-Za-z]*(?:(?:-[A-Za-z][0-9A-Za-z]*)+|-(?:(?:0|[1-9][0-9]*)\.)*(?:0|[1-9][0-9]*)(?![0-9A-Za-z]))/);
6081
6163
  exports.segment = (0, combinator_1.clear)((0, combinator_1.validate)(['[$', '$'], (0, combinator_1.union)([(0, combinator_1.surround)('[', body, ']'), body])));
6082
6164
  exports.label = (0, combinator_1.creator)((0, combinator_1.validate)(['[$', '$'], (0, combinator_1.fmap)((0, combinator_1.guard)(context => context.syntax?.inline?.label ?? true, (0, combinator_1.union)([(0, combinator_1.surround)('[', body, ']'), body])), ([text]) => [(0, dom_1.html)('a', {
@@ -6105,7 +6187,7 @@ function increment(number, position) {
6105
6187
  ms[i] = i < ns.length ? i + 1 < position ? +ns[i] : +ns[i] + 1 : i + 1 < position ? 0 : 1;
6106
6188
  }
6107
6189
 
6108
- return (0, array_1.join)(ms, '.');
6190
+ return ms.join('.');
6109
6191
  }
6110
6192
 
6111
6193
  /***/ }),
@@ -6157,8 +6239,6 @@ exports.attributes = exports.attribute = exports.html = void 0;
6157
6239
 
6158
6240
  const global_1 = __webpack_require__(4128);
6159
6241
 
6160
- const alias_1 = __webpack_require__(5406);
6161
-
6162
6242
  const combinator_1 = __webpack_require__(2087);
6163
6243
 
6164
6244
  const inline_1 = __webpack_require__(1160);
@@ -6175,21 +6255,21 @@ const cache_1 = __webpack_require__(9210);
6175
6255
 
6176
6256
  const array_1 = __webpack_require__(8112);
6177
6257
 
6178
- const tags = Object.freeze(['wbr', 'sup', 'sub', 'small', 'bdo', 'bdi']);
6258
+ const tags = global_1.Object.freeze(['wbr', 'sup', 'sub', 'small', 'bdo', 'bdi']);
6179
6259
  const attrspec = {
6180
6260
  bdo: {
6181
- dir: Object.freeze(['ltr', 'rtl'])
6261
+ dir: global_1.Object.freeze(['ltr', 'rtl'])
6182
6262
  }
6183
6263
  };
6184
- Object.setPrototypeOf(attrspec, null);
6185
- Object.values(attrspec).forEach(o => Object.setPrototypeOf(o, null));
6186
- exports.html = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.validate)('<', (0, combinator_1.validate)(/^<[a-z]+(?=[^\S\n]|>)/, (0, combinator_1.union)([(0, combinator_1.match)(/^(?=<(wbr)(?=[^\S\n]|>))/, (0, memoize_1.memoize)(([, tag]) => (0, combinator_1.surround)(`<${tag}`, (0, combinator_1.some)((0, combinator_1.union)([exports.attribute])), /^\s*>/, true, ([, bs = []], rest) => [[(0, dom_1.html)(tag, attributes('html', [], attrspec[tag], bs))], rest]), ([, tag]) => tags.indexOf(tag), [])), (0, combinator_1.match)(/^(?=<(sup|sub|small|bdo|bdi)(?=[^\S\n]|>))/, (0, memoize_1.memoize)(([, tag]) => (0, combinator_1.validate)(`<${tag}`, `</${tag}>`, (0, combinator_1.surround)((0, combinator_1.surround)((0, source_1.str)(`<${tag}`), (0, combinator_1.some)(exports.attribute), (0, source_1.str)(/^\s*>/), true), (0, util_1.startLoose)((0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blank)(/\n/, `</${tag}>`)), (0, combinator_1.open)(/^\n/, (0, combinator_1.some)(inline_1.inline, `</${tag}>`), true)]), `</${tag}>`), `</${tag}>`), (0, source_1.str)(`</${tag}>`), false, ([as, bs, cs], rest) => [[elem(tag, as, (0, dom_1.defrag)(bs), cs)], rest], ([as, bs], rest) => as.length === 1 ? [(0, array_1.unshift)(as, bs), rest] : global_1.undefined)), ([, tag]) => tags.indexOf(tag), [])), (0, combinator_1.match)(/^(?=<([a-z]+)(?=[^\S\n]|>))/, (0, memoize_1.memoize)(([, tag]) => (0, combinator_1.validate)(`<${tag}`, `</${tag}>`, (0, combinator_1.surround)((0, combinator_1.surround)((0, source_1.str)(`<${tag}`), (0, combinator_1.some)(exports.attribute), (0, source_1.str)(/^\s*>/), true), (0, util_1.startLoose)((0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blank)(/\n/, `</${tag}>`)), (0, combinator_1.open)(/^\n/, (0, combinator_1.some)(inline_1.inline, `</${tag}>`), true)]), `</${tag}>`), `</${tag}>`), (0, source_1.str)(`</${tag}>`), false, ([as, bs, cs], rest) => [[elem(tag, as, (0, dom_1.defrag)(bs), cs)], rest], ([as, bs], rest) => as.length === 1 ? [(0, array_1.unshift)(as, bs), rest] : global_1.undefined)), ([, tag]) => tag, new cache_1.Cache(10000)))])))));
6264
+ global_1.Object.setPrototypeOf(attrspec, null);
6265
+ global_1.Object.values(attrspec).forEach(o => global_1.Object.setPrototypeOf(o, null));
6266
+ exports.html = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.validate)('<', (0, combinator_1.validate)(/^<[a-z]+(?=[^\S\n]|>)/, (0, combinator_1.union)([(0, combinator_1.match)(/^(?=<(wbr)(?=[^\S\n]|>))/, (0, memoize_1.memoize)(([, tag]) => (0, combinator_1.surround)(`<${tag}`, (0, combinator_1.some)((0, combinator_1.union)([exports.attribute])), /^\s*>/, true, ([, bs = []], rest) => [[(0, dom_1.html)(tag, attributes('html', [], attrspec[tag], bs))], rest]), ([, tag]) => tags.indexOf(tag), [])), (0, combinator_1.match)(/^(?=<(sup|sub|small|bdo|bdi)(?=[^\S\n]|>))/, (0, memoize_1.memoize)(([, tag]) => (0, combinator_1.surround)((0, combinator_1.surround)((0, source_1.str)(`<${tag}`), (0, combinator_1.some)(exports.attribute), (0, source_1.str)(/^\s*>/), true), (0, util_1.startLoose)((0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.open)(/^\n?/, (0, combinator_1.some)(inline_1.inline, (0, util_1.blankWith)('\n', `</${tag}>`)), true)])), `</${tag}>`), (0, source_1.str)(`</${tag}>`), false, ([as, bs, cs], rest) => [[elem(tag, as, bs, cs)], rest]), ([, tag]) => tags.indexOf(tag), [])), (0, combinator_1.match)(/^(?=<([a-z]+)(?=[^\S\n]|>))/, (0, memoize_1.memoize)(([, tag]) => (0, combinator_1.surround)((0, combinator_1.surround)((0, source_1.str)(`<${tag}`), (0, combinator_1.some)(exports.attribute), (0, source_1.str)(/^\s*>/), true), (0, util_1.startLoose)((0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.open)(/^\n?/, (0, combinator_1.some)(inline_1.inline, (0, util_1.blankWith)('\n', `</${tag}>`)), true)])), `</${tag}>`), (0, source_1.str)(`</${tag}>`), false, ([as, bs, cs], rest) => [[elem(tag, as, bs, cs)], rest]), ([, tag]) => tag, new cache_1.Cache(10000)))])))));
6187
6267
  exports.attribute = (0, combinator_1.union)([(0, source_1.str)(/^[^\S\n]+[a-z]+(?:-[a-z]+)*(?:="(?:\\[^\n]|[^\\\n"])*")?(?=[^\S\n]|>)/)]);
6188
6268
 
6189
6269
  function elem(tag, as, bs, cs) {
6190
6270
  if (!tags.includes(tag)) return invalid('tag', `Invalid HTML tag <${tag}>`, as, bs, cs);
6191
6271
  const attrs = attributes('html', [], attrspec[tag], as.slice(1, -1));
6192
- return 'data-invalid-syntax' in attrs ? invalid('attribute', 'Invalid HTML attribute', as, bs, cs) : (0, dom_1.html)(tag, attrs, bs);
6272
+ return 'data-invalid-syntax' in attrs ? invalid('attribute', 'Invalid HTML attribute', as, bs, cs) : (0, dom_1.html)(tag, attrs, (0, dom_1.defrag)(bs));
6193
6273
  }
6194
6274
 
6195
6275
  function invalid(type, message, as, bs, cs) {
@@ -6201,7 +6281,7 @@ function invalid(type, message, as, bs, cs) {
6201
6281
  }, (0, dom_1.defrag)((0, array_1.push)((0, array_1.unshift)(as, bs), cs)));
6202
6282
  }
6203
6283
 
6204
- const requiredAttributes = (0, memoize_1.memoize)(spec => (0, alias_1.ObjectEntries)(spec).flatMap(([k, v]) => v && (0, alias_1.isFrozen)(v) ? [k] : []), new WeakMap());
6284
+ const requiredAttributes = (0, memoize_1.memoize)(spec => global_1.Object.entries(spec).flatMap(([k, v]) => v && global_1.Object.isFrozen(v) ? [k] : []), new WeakMap());
6205
6285
 
6206
6286
  function attributes(syntax, classes, spec, params) {
6207
6287
  let invalid = false;
@@ -6220,7 +6300,7 @@ function attributes(syntax, classes, spec, params) {
6220
6300
  invalid ||= !!spec && !requiredAttributes(spec).every(name => name in attrs);
6221
6301
 
6222
6302
  if (invalid) {
6223
- attrs['class'] = (0, array_1.join)(classes.includes('invalid') ? classes : (0, array_1.unshift)(classes, ['invalid']), ' ');
6303
+ attrs['class'] = (classes.includes('invalid') ? classes : (0, array_1.unshift)(classes, ['invalid'])).join(' ');
6224
6304
  attrs['data-invalid-syntax'] = syntax;
6225
6305
  attrs['data-invalid-type'] = 'argument';
6226
6306
  attrs['data-invalid-message'] = 'Invalid argument';
@@ -6291,7 +6371,7 @@ const dom_1 = __webpack_require__(3252);
6291
6371
 
6292
6372
  const array_1 = __webpack_require__(8112);
6293
6373
 
6294
- exports.insertion = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('++'), (0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blank)(/\n/, '++')), (0, combinator_1.open)(/^\n/, (0, combinator_1.some)(inline_1.inline, '+'), true)])), (0, source_1.str)('++'), false, ([, bs], rest) => [[(0, dom_1.html)('ins', (0, dom_1.defrag)(bs))], rest], ([as, bs], rest) => [(0, array_1.unshift)(as, bs), rest])));
6374
+ exports.insertion = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('++'), (0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blankWith)('\n', '++')), (0, combinator_1.open)('\n', (0, combinator_1.some)(inline_1.inline, '+'), true)])), (0, source_1.str)('++'), false, ([, bs], rest) => [[(0, dom_1.html)('ins', (0, dom_1.defrag)(bs))], rest], ([as, bs], rest) => [(0, array_1.unshift)(as, bs), rest])));
6295
6375
 
6296
6376
  /***/ }),
6297
6377
 
@@ -6336,7 +6416,7 @@ exports.link = (0, combinator_1.lazy)(() => (0, combinator_1.creator)(10, (0, co
6336
6416
  link: false
6337
6417
  }
6338
6418
  }
6339
- }, (0, combinator_1.dup)((0, combinator_1.union)([(0, combinator_1.surround)('[', inline_1.media, ']'), (0, combinator_1.surround)('[', inline_1.shortmedia, ']'), (0, combinator_1.surround)('[', (0, util_1.startLoose)((0, combinator_1.context)({
6419
+ }, (0, combinator_1.dup)((0, combinator_1.union)([(0, combinator_1.surround)('[', inline_1.media, ']'), (0, combinator_1.surround)('[', inline_1.shortmedia, ']'), (0, combinator_1.surround)('[', (0, combinator_1.context)({
6340
6420
  syntax: {
6341
6421
  inline: {
6342
6422
  annotation: false,
@@ -6349,10 +6429,10 @@ exports.link = (0, combinator_1.lazy)(() => (0, combinator_1.creator)(10, (0, co
6349
6429
  autolink: false
6350
6430
  }
6351
6431
  }
6352
- }, (0, util_1.trimSpaceStart)((0, combinator_1.some)(inline_1.inline, ']', /^\\?\n/)))), ']', true)]))), (0, combinator_1.dup)((0, combinator_1.surround)(/^{(?![{}])/, (0, combinator_1.inits)([exports.uri, (0, combinator_1.some)(exports.option)]), /^[^\S\n]*}/))]))), ([params, content = []], rest, context) => {
6432
+ }, (0, util_1.trimBlankInline)((0, combinator_1.some)(inline_1.inline, ']', /^\\?\n/))), ']', true)]))), (0, combinator_1.dup)((0, combinator_1.surround)(/^{(?![{}])/, (0, combinator_1.inits)([exports.uri, (0, combinator_1.some)(exports.option)]), /^[^\S\n]*}/))]))), ([params, content = []], rest, context) => {
6353
6433
  if ((0, parser_1.eval)((0, combinator_1.some)(autolink_1.autolink)((0, util_1.stringify)(content), context))?.some(node => typeof node === 'object')) return;
6354
6434
  const INSECURE_URI = params.shift();
6355
- const el = elem(INSECURE_URI, (0, util_1.trimNodeEnd)((0, dom_1.defrag)(content)), new url_1.ReadonlyURL(resolve(INSECURE_URI, context.host ?? global_1.location, context.url ?? context.host ?? global_1.location), context.host?.href || global_1.location.href), context.host?.origin || global_1.location.origin);
6435
+ const el = elem(INSECURE_URI, (0, dom_1.defrag)(content), new url_1.ReadonlyURL(resolve(INSECURE_URI, context.host ?? global_1.location, context.url ?? context.host ?? global_1.location), context.host?.href || global_1.location.href), context.host?.origin || global_1.location.origin);
6356
6436
  if (el.classList.contains('invalid')) return [[el], rest];
6357
6437
  return [[(0, dom_1.define)(el, (0, html_1.attributes)('link', [], optspec, params))], rest];
6358
6438
  }))));
@@ -6458,7 +6538,7 @@ const dom_1 = __webpack_require__(3252);
6458
6538
 
6459
6539
  const array_1 = __webpack_require__(8112);
6460
6540
 
6461
- exports.mark = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('=='), (0, util_1.startTight)((0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blank)('', '==')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '='), inline_1.inline)]))), (0, source_1.str)('=='), false, ([, bs], rest) => [[(0, dom_1.html)('mark', (0, dom_1.defrag)(bs))], rest], ([as, bs], rest) => [(0, array_1.unshift)(as, bs), rest])));
6541
+ exports.mark = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('=='), (0, util_1.startTight)((0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blankWith)('==')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '='), exports.mark)]))), (0, source_1.str)('=='), false, ([, bs], rest) => [[(0, dom_1.html)('mark', (0, dom_1.defrag)(bs))], rest], ([as, bs], rest) => [(0, array_1.unshift)(as, bs), rest])));
6462
6542
 
6463
6543
  /***/ }),
6464
6544
 
@@ -6537,7 +6617,7 @@ const optspec = {
6537
6617
  rel: global_1.undefined
6538
6618
  };
6539
6619
  Object.setPrototypeOf(optspec, null);
6540
- exports.media = (0, combinator_1.lazy)(() => (0, combinator_1.creator)(10, (0, combinator_1.validate)(['![', '!{'], '}', '\n', (0, combinator_1.bind)((0, combinator_1.verify)((0, combinator_1.fmap)((0, combinator_1.open)('!', (0, combinator_1.guard)(context => context.syntax?.inline?.media ?? true, (0, combinator_1.tails)([(0, combinator_1.dup)((0, combinator_1.surround)(/^\[(?!\s*\\\s)/, (0, combinator_1.some)((0, combinator_1.union)([htmlentity_1.unsafehtmlentity, bracket, source_1.txt]), ']', /^\\?\n/), ']', true)), (0, combinator_1.dup)((0, combinator_1.surround)(/^{(?![{}])/, (0, combinator_1.inits)([link_1.uri, (0, combinator_1.some)(option)]), /^[^\S\n]*}/))]))), ([as, bs]) => bs ? [[(0, array_1.join)(as).trim() || (0, array_1.join)(as)], bs] : [[''], as]), ([[text]]) => text === '' || text.trim() !== ''), ([[text], params], rest, context) => {
6620
+ exports.media = (0, combinator_1.lazy)(() => (0, combinator_1.creator)(10, (0, combinator_1.validate)(['![', '!{'], '}', '\n', (0, combinator_1.bind)((0, combinator_1.verify)((0, combinator_1.fmap)((0, combinator_1.open)('!', (0, combinator_1.guard)(context => context.syntax?.inline?.media ?? true, (0, combinator_1.tails)([(0, combinator_1.dup)((0, combinator_1.surround)(/^\[(?!\s*\\\s)/, (0, combinator_1.some)((0, combinator_1.union)([htmlentity_1.unsafehtmlentity, bracket, source_1.txt]), ']', /^\\?\n/), ']', true)), (0, combinator_1.dup)((0, combinator_1.surround)(/^{(?![{}])/, (0, combinator_1.inits)([link_1.uri, (0, combinator_1.some)(option)]), /^[^\S\n]*}/))]))), ([as, bs]) => bs ? [[as.join('').trim() || as.join('')], bs] : [[''], as]), ([[text]]) => text === '' || text.trim() !== ''), ([[text], params], rest, context) => {
6541
6621
  const INSECURE_URI = params.shift();
6542
6622
  const url = new url_1.ReadonlyURL((0, link_1.resolve)(INSECURE_URI, context.host ?? global_1.location, context.url ?? context.host ?? global_1.location), context.host?.href || global_1.location.href);
6543
6623
  let cache;
@@ -6552,7 +6632,7 @@ exports.media = (0, combinator_1.lazy)(() => (0, combinator_1.creator)(10, (0, c
6552
6632
  if (context.syntax?.inline?.link === false || cache && cache.tagName !== 'IMG') return [[el], rest];
6553
6633
  return (0, combinator_1.fmap)(link_1.link, ([link]) => [(0, dom_1.define)(link, {
6554
6634
  target: '_blank'
6555
- }, [el])])(`{ ${INSECURE_URI}${(0, array_1.join)(params)} }${rest}`, context);
6635
+ }, [el])])(`{ ${INSECURE_URI}${params.join('')} }${rest}`, context);
6556
6636
  }))));
6557
6637
  const bracket = (0, combinator_1.lazy)(() => (0, combinator_1.union)([(0, combinator_1.surround)((0, source_1.str)('('), (0, combinator_1.some)((0, combinator_1.union)([htmlentity_1.unsafehtmlentity, bracket, source_1.txt]), ')'), (0, source_1.str)(')'), true, global_1.undefined, ([as, bs = []], rest) => [(0, array_1.unshift)(as, bs), rest]), (0, combinator_1.surround)((0, source_1.str)('['), (0, combinator_1.some)((0, combinator_1.union)([htmlentity_1.unsafehtmlentity, bracket, source_1.txt]), ']'), (0, source_1.str)(']'), true, global_1.undefined, ([as, bs = []], rest) => [(0, array_1.unshift)(as, bs), rest]), (0, combinator_1.surround)((0, source_1.str)('{'), (0, combinator_1.some)((0, combinator_1.union)([htmlentity_1.unsafehtmlentity, bracket, source_1.txt]), '}'), (0, source_1.str)('}'), true, global_1.undefined, ([as, bs = []], rest) => [(0, array_1.unshift)(as, bs), rest]), (0, combinator_1.surround)((0, source_1.str)('"'), (0, combinator_1.some)((0, combinator_1.union)([htmlentity_1.unsafehtmlentity, source_1.txt]), '"'), (0, source_1.str)('"'), true)]));
6558
6638
  const option = (0, combinator_1.union)([(0, combinator_1.fmap)((0, source_1.str)(/^[^\S\n]+[1-9][0-9]*x[1-9][0-9]*(?=[^\S\n]|})/), ([opt]) => [` width="${opt.slice(1).split('x')[0]}"`, ` height="${opt.slice(1).split('x')[1]}"`]), (0, combinator_1.fmap)((0, source_1.str)(/^[^\S\n]+[1-9][0-9]*:[1-9][0-9]*(?=[^\S\n]|})/), ([opt]) => [` aspect-ratio="${opt.slice(1).split(':').join('/')}"`]), link_1.option]);
@@ -6622,7 +6702,7 @@ const util_1 = __webpack_require__(9437);
6622
6702
 
6623
6703
  const dom_1 = __webpack_require__(3252);
6624
6704
 
6625
- exports.reference = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.validate)('[[', ']]', '\n', (0, combinator_1.fmap)((0, combinator_1.surround)('[[', (0, combinator_1.guard)(context => context.syntax?.inline?.reference ?? true, (0, util_1.startLoose)((0, combinator_1.context)({
6705
+ exports.reference = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.validate)('[[', ']]', '\n', (0, combinator_1.fmap)((0, combinator_1.surround)('[[', (0, combinator_1.guard)(context => context.syntax?.inline?.reference ?? true, (0, combinator_1.context)({
6626
6706
  syntax: {
6627
6707
  inline: {
6628
6708
  annotation: false,
@@ -6636,8 +6716,8 @@ exports.reference = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, c
6636
6716
  }
6637
6717
  },
6638
6718
  delimiters: global_1.undefined
6639
- }, (0, combinator_1.subsequence)([abbr, (0, combinator_1.focus)(/^\^[^\S\n]*/, source => [['', source], '']), (0, util_1.trimSpaceStart)((0, combinator_1.some)(inline_1.inline, ']', /^\\?\n/))])))), ']]'), ns => [(0, dom_1.html)('sup', attributes(ns), (0, util_1.trimNodeEnd)((0, dom_1.defrag)(ns)))]))));
6640
- const abbr = (0, combinator_1.creator)((0, combinator_1.fmap)((0, combinator_1.verify)((0, combinator_1.surround)('^', (0, combinator_1.union)([(0, source_1.str)(/^(?![0-9]+\s?[|\]])[0-9A-Za-z]+(?:(?:-|(?=\W)(?!'\d)'?(?!\.\d)\.?(?!,\S),? ?)[0-9A-Za-z]+)*(?:-|'?\.?,? ?)?/)]), /^\|?(?=]])|^\|[^\S\n]*/), (_, rest, context) => (0, util_1.isStartLoose)(rest, context)), ([source]) => [(0, dom_1.html)('abbr', source)]));
6719
+ }, (0, combinator_1.subsequence)([abbr, (0, combinator_1.focus)(/^\^[^\S\n]*/, source => [['', source], '']), (0, util_1.trimBlankInline)((0, combinator_1.some)(inline_1.inline, ']', /^\\?\n/))]))), ']]'), ns => [(0, dom_1.html)('sup', attributes(ns), (0, dom_1.defrag)(ns))]))));
6720
+ const abbr = (0, combinator_1.creator)((0, combinator_1.bind)((0, combinator_1.surround)('^', (0, combinator_1.union)([(0, source_1.str)(/^(?![0-9]+\s?[|\]])[0-9A-Za-z]+(?:(?:-|(?=\W)(?!'\d)'?(?!\.\d)\.?(?!,\S),? ?)[0-9A-Za-z]+)*(?:-|'?\.?,? ?)?/)]), /^\|?(?=]])|^\|[^\S\n]*/), ([source], rest) => [[(0, dom_1.html)('abbr', source)], rest.replace(util_1.regBlankInlineStart, '')]));
6641
6721
 
6642
6722
  function attributes(ns) {
6643
6723
  return typeof ns[0] === 'object' && ns[0].tagName === 'ABBR' ? {
@@ -6694,7 +6774,7 @@ exports.ruby = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combin
6694
6774
  return [[(0, dom_1.html)('ruby', attributes(texts, rubies), (0, dom_1.defrag)((0, array_1.push)([...texts[0]].reduce((acc, _, i, texts) => (0, array_1.push)(acc, (0, array_1.unshift)([texts[i]], i < rubies.length && rubies[i] ? [(0, dom_1.html)('rp', '('), (0, dom_1.html)('rt', rubies[i]), (0, dom_1.html)('rp', ')')] : [(0, dom_1.html)('rt')])), []), tail)))], rest];
6695
6775
 
6696
6776
  default:
6697
- return [[(0, dom_1.html)('ruby', attributes(texts, rubies), (0, dom_1.defrag)((0, array_1.push)((0, array_1.unshift)([(0, array_1.join)(texts, ' ')], [(0, dom_1.html)('rp', '('), (0, dom_1.html)('rt', (0, array_1.join)(rubies, ' ').trim()), (0, dom_1.html)('rp', ')')]), tail)))], rest];
6777
+ return [[(0, dom_1.html)('ruby', attributes(texts, rubies), (0, dom_1.defrag)((0, array_1.push)((0, array_1.unshift)([texts.join(' ')], [(0, dom_1.html)('rp', '('), (0, dom_1.html)('rt', rubies.join(' ').trim()), (0, dom_1.html)('rp', ')')]), tail)))], rest];
6698
6778
  }
6699
6779
  }))));
6700
6780
  const text = (0, combinator_1.creator)((source, context) => {
@@ -6731,7 +6811,7 @@ const text = (0, combinator_1.creator)((source, context) => {
6731
6811
  }
6732
6812
  }
6733
6813
 
6734
- return (0, array_1.join)(acc).trimStart() ? [[acc], ''] : global_1.undefined;
6814
+ return acc.join('').trimStart() ? [[acc], ''] : global_1.undefined;
6735
6815
  });
6736
6816
 
6737
6817
  function attributes(texts, rubies) {
@@ -6791,6 +6871,8 @@ const combinator_1 = __webpack_require__(2087);
6791
6871
 
6792
6872
  const inline_1 = __webpack_require__(1160);
6793
6873
 
6874
+ const emstrong_1 = __webpack_require__(6132);
6875
+
6794
6876
  const source_1 = __webpack_require__(6743);
6795
6877
 
6796
6878
  const util_1 = __webpack_require__(9437);
@@ -6799,7 +6881,7 @@ const dom_1 = __webpack_require__(3252);
6799
6881
 
6800
6882
  const array_1 = __webpack_require__(8112);
6801
6883
 
6802
- exports.strong = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('**'), (0, util_1.startTight)((0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blank)('', '**')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '*'), inline_1.inline)])), '*'), (0, source_1.str)('**'), false, ([, bs], rest) => [[(0, dom_1.html)('strong', (0, dom_1.defrag)(bs))], rest], ([as, bs], rest) => [(0, array_1.unshift)(as, bs), rest])));
6884
+ exports.strong = (0, combinator_1.lazy)(() => (0, combinator_1.creator)((0, combinator_1.surround)((0, source_1.str)('**'), (0, util_1.startTight)((0, combinator_1.some)((0, combinator_1.union)([(0, combinator_1.some)(inline_1.inline, (0, util_1.blankWith)('**')), (0, combinator_1.open)((0, combinator_1.some)(inline_1.inline, '*'), (0, combinator_1.union)([emstrong_1.emstrong, exports.strong]))])), '*'), (0, source_1.str)('**'), false, ([, bs], rest) => [[(0, dom_1.html)('strong', (0, dom_1.defrag)(bs))], rest], ([as, bs], rest) => [(0, array_1.unshift)(as, bs), rest])));
6803
6885
 
6804
6886
  /***/ }),
6805
6887
 
@@ -7026,16 +7108,16 @@ function* figure(target, footnotes, opts = {}) {
7026
7108
  }
7027
7109
 
7028
7110
  const group = label.split('-', 1)[0];
7029
- let number = (0, label_1.number)(label, numbers.has(group) && !(0, label_1.isFixed)(label) ? (0, array_1.join)(numbers.get(group).split('.').slice(0, bases.length), '.') : base);
7111
+ let number = (0, label_1.number)(label, numbers.has(group) && !(0, label_1.isFixed)(label) ? numbers.get(group).split('.').slice(0, bases.length).join('.') : base);
7030
7112
 
7031
7113
  if (number.endsWith('.0')) {
7032
7114
  if (group !== '$' || tagName === 'FIGURE' && def.firstChild) continue;
7033
7115
 
7034
7116
  if (number.startsWith('0.')) {
7035
- number = (0, array_1.join)(index.slice(0).reduce((ns, _, i, xs) => {
7117
+ number = index.slice(0).reduce((ns, _, i, xs) => {
7036
7118
  i === ns.length ? xs.length = i : ns[i] = +ns[i] > +xs[i] ? ns[i] : +ns[i] === 0 ? xs[i] : `${+xs[i] + 1}`;
7037
7119
  return ns;
7038
- }, number.split('.')), '.');
7120
+ }, number.split('.')).join('.');
7039
7121
  }
7040
7122
 
7041
7123
  base = number;
@@ -7114,7 +7196,7 @@ const messages = {
7114
7196
 
7115
7197
  function increment(bases, el) {
7116
7198
  const index = (+el.tagName[1] - 1 || 1) - 1;
7117
- return index + 1 < bases.length ? (0, array_1.join)(bases.slice(0, index + 2).map((v, i) => {
7199
+ return index + 1 < bases.length ? bases.slice(0, index + 2).map((v, i) => {
7118
7200
  switch (true) {
7119
7201
  case i < index:
7120
7202
  return v;
@@ -7125,7 +7207,7 @@ function increment(bases, el) {
7125
7207
  default:
7126
7208
  return 0;
7127
7209
  }
7128
- }), '.') : '';
7210
+ }).join('.') : '';
7129
7211
  }
7130
7212
 
7131
7213
  function capitalize(label) {
@@ -7451,10 +7533,10 @@ const combinator_1 = __webpack_require__(2087);
7451
7533
 
7452
7534
  const text_1 = __webpack_require__(7763);
7453
7535
 
7454
- const separator = /[\s\x00-\x2F\x3A-\x40\x5B-\x60\x7B-\x7F]/;
7536
+ const delimiter = /[\s\x00-\x2F\x3A-\x40\x5B-\x60\x7B-\x7F]/;
7455
7537
  exports.escsource = (0, combinator_1.creator)(source => {
7456
7538
  if (source === '') return;
7457
- const i = source.search(separator);
7539
+ const i = source.search(delimiter);
7458
7540
 
7459
7541
  switch (i) {
7460
7542
  case -1:
@@ -7471,7 +7553,7 @@ exports.escsource = (0, combinator_1.creator)(source => {
7471
7553
  default:
7472
7554
  const b = source[0] !== '\n' && source[0].trimStart() === '';
7473
7555
  const i = b ? source.search(text_1.nonWhitespace) : 1;
7474
- return [[source.slice(0, i)], source.slice(i)];
7556
+ return [[source.slice(0, i - +b || 1)], source.slice(i - +b || 1)];
7475
7557
  }
7476
7558
 
7477
7559
  default:
@@ -7554,7 +7636,7 @@ exports.stropt = stropt;
7554
7636
  Object.defineProperty(exports, "__esModule", ({
7555
7637
  value: true
7556
7638
  }));
7557
- exports.isAlphanumeric = exports.linebreak = exports.txt = exports.text = exports.nonAlphanumeric = exports.nonWhitespace = exports.separator = void 0;
7639
+ exports.isAlphanumeric = exports.linebreak = exports.txt = exports.text = exports.nonAlphanumeric = exports.nonWhitespace = exports.delimiter = void 0;
7558
7640
 
7559
7641
  const global_1 = __webpack_require__(4128);
7560
7642
 
@@ -7564,13 +7646,13 @@ const str_1 = __webpack_require__(2790);
7564
7646
 
7565
7647
  const dom_1 = __webpack_require__(3252);
7566
7648
 
7567
- exports.separator = /[\s\x00-\x7F]|\S#|[、。!?][^\S\n]*(?=\\\n)/;
7649
+ exports.delimiter = /[\s\x00-\x7F]|\S#|[、。!?][^\S\n]*(?=\\\n)/;
7568
7650
  exports.nonWhitespace = /[\S\n]|$/;
7569
7651
  exports.nonAlphanumeric = /[^0-9A-Za-z]|\S#|$/;
7570
7652
  const repeat = (0, str_1.str)(/^(.)\1*/);
7571
7653
  exports.text = (0, combinator_1.creator)((source, context) => {
7572
7654
  if (source === '') return;
7573
- const i = source.search(exports.separator);
7655
+ const i = source.search(exports.delimiter);
7574
7656
 
7575
7657
  switch (i) {
7576
7658
  case -1:
@@ -7629,7 +7711,7 @@ exports.text = (0, combinator_1.creator)((source, context) => {
7629
7711
  default:
7630
7712
  const b = source[0].trimStart() === '';
7631
7713
  const i = b || isAlphanumeric(source[0]) ? source.search(b ? exports.nonWhitespace : exports.nonAlphanumeric) || 1 : 1;
7632
- return b && i === source.length || b && source[i] === '\n' || b && source[i] === '\\' && source[i + 1] === '\n' ? [[], source.slice(i)] : [[source.slice(0, i)], source.slice(i)];
7714
+ return b && i === source.length || b && source[i] === '\n' || b && source[i] === '\\' && source[i + 1] === '\n' ? [[], source.slice(i)] : [[source.slice(0, i - +b || 1)], source.slice(i - +b || 1)];
7633
7715
  }
7634
7716
 
7635
7717
  default:
@@ -7665,7 +7747,7 @@ const text_1 = __webpack_require__(7763);
7665
7747
 
7666
7748
  exports.unescsource = (0, combinator_1.creator)(source => {
7667
7749
  if (source === '') return;
7668
- const i = source.search(text_1.separator);
7750
+ const i = source.search(text_1.delimiter);
7669
7751
 
7670
7752
  switch (i) {
7671
7753
  case -1:
@@ -7675,7 +7757,7 @@ exports.unescsource = (0, combinator_1.creator)(source => {
7675
7757
  {
7676
7758
  const b = source[0] !== '\n' && source[0].trimStart() === '';
7677
7759
  const i = b || (0, text_1.isAlphanumeric)(source[0]) ? source.search(b ? text_1.nonWhitespace : text_1.nonAlphanumeric) || 1 : 1;
7678
- return [[source.slice(0, i)], source.slice(i)];
7760
+ return [[source.slice(0, i - +b || 1)], source.slice(i - +b || 1)];
7679
7761
  }
7680
7762
 
7681
7763
  default:
@@ -7694,7 +7776,7 @@ exports.unescsource = (0, combinator_1.creator)(source => {
7694
7776
  Object.defineProperty(exports, "__esModule", ({
7695
7777
  value: true
7696
7778
  }));
7697
- exports.stringify = exports.trimNodeEnd = exports.trimSpaceStart = exports.isStartTightNodes = exports.startTight = exports.isStartLoose = exports.startLoose = exports.visualize = exports.blank = void 0;
7779
+ exports.stringify = exports.trimNodeEnd = exports.trimBlankInline = exports.isStartTightNodes = exports.startTight = exports.startLoose = exports.visualize = exports.blankWith = exports.regBlankInlineStart = void 0;
7698
7780
 
7699
7781
  const global_1 = __webpack_require__(4128);
7700
7782
 
@@ -7712,11 +7794,14 @@ const memoize_1 = __webpack_require__(1808);
7712
7794
 
7713
7795
  const array_1 = __webpack_require__(8112);
7714
7796
 
7715
- function blank(prefix, suffix) {
7716
- return new RegExp(String.raw`^(?:${prefix && prefix.source}(?:\\\s|[^\S\n]|\n|&(?:${normalize_1.invisibleHTMLEntityNames.join('|')});|<wbr>)*)?${typeof suffix === 'string' ? suffix.replace(/[*+()\[\]]/g, '\\$&') : suffix.source}`);
7797
+ exports.regBlankInlineStart = new RegExp(String.raw`^(?:\\?[^\S\n]|&(?:${normalize_1.invisibleHTMLEntityNames.join('|')});|<wbr>)+`);
7798
+
7799
+ function blankWith(starting, delimiter) {
7800
+ if (delimiter === global_1.undefined) return blankWith('', starting);
7801
+ return new RegExp(String.raw`^(?:(?=${starting})(?:\\?\s|&(?:${normalize_1.invisibleHTMLEntityNames.join('|')});|<wbr>)${starting && '+'})?${typeof delimiter === 'string' ? delimiter.replace(/[*+()\[\]]/g, '\\$&') : delimiter.source}`);
7717
7802
  }
7718
7803
 
7719
- exports.blank = blank;
7804
+ exports.blankWith = blankWith;
7720
7805
 
7721
7806
  function visualize(parser) {
7722
7807
  const blankline = new RegExp(String.raw`^(?:\\$|\\?[^\S\n]|&(?:${normalize_1.invisibleHTMLEntityNames.join('|')});|<wbr>)+$`, 'gm');
@@ -7747,12 +7832,12 @@ function hasVisible(nodes, {
7747
7832
  }
7748
7833
 
7749
7834
  function startLoose(parser, except) {
7750
- return (source, context) => (0, exports.isStartLoose)(source, context, except) ? parser(source, context) : global_1.undefined;
7835
+ return (source, context) => isStartLoose(source, context, except) ? parser(source, context) : global_1.undefined;
7751
7836
  }
7752
7837
 
7753
7838
  exports.startLoose = startLoose;
7754
- exports.isStartLoose = (0, memoize_1.reduce)((source, context, except) => {
7755
- return isStartTight(source.replace(/^[^\S\n]+/, ''), context, except);
7839
+ const isStartLoose = (0, memoize_1.reduce)((source, context, except) => {
7840
+ return isStartTight(source.replace(exports.regBlankInlineStart, ''), context, except);
7756
7841
  }, (source, _, except = '') => `${source}\x1E${except}`);
7757
7842
 
7758
7843
  function startTight(parser, except) {
@@ -7837,11 +7922,15 @@ function isVisible(node, strpos) {
7837
7922
  }
7838
7923
  }
7839
7924
 
7840
- function trimSpaceStart(parser) {
7841
- return (0, combinator_1.convert)((0, memoize_1.reduce)(source => source.replace(/^[^\S\n]+/, '')), parser);
7925
+ function trimBlankInline(parser) {
7926
+ return (0, combinator_1.fmap)(trimBlankInlineStart(parser), trimNodeEnd);
7842
7927
  }
7843
7928
 
7844
- exports.trimSpaceStart = trimSpaceStart; //export function trimNode(nodes: (HTMLElement | string)[]): (HTMLElement | string)[] {
7929
+ exports.trimBlankInline = trimBlankInline;
7930
+
7931
+ function trimBlankInlineStart(parser) {
7932
+ return (0, combinator_1.convert)((0, memoize_1.reduce)(source => source.replace(exports.regBlankInlineStart, '')), parser);
7933
+ } //export function trimNode(nodes: (HTMLElement | string)[]): (HTMLElement | string)[] {
7845
7934
  // return trimNodeStart(trimNodeEnd(nodes));
7846
7935
  //}
7847
7936
  //function trimNodeStart(nodes: (HTMLElement | string)[]): (HTMLElement | string)[] {
@@ -7859,6 +7948,7 @@ exports.trimSpaceStart = trimSpaceStart; //export function trimNode(nodes: (HTML
7859
7948
  // return nodes;
7860
7949
  //}
7861
7950
 
7951
+
7862
7952
  function trimNodeEnd(nodes) {
7863
7953
  const skip = nodes.length > 0 && typeof nodes[nodes.length - 1] === 'object' && nodes[nodes.length - 1]['className'] === 'indexer' ? [nodes.pop()] : [];
7864
7954
 
@@ -8148,18 +8238,18 @@ Object.defineProperty(exports, "__esModule", ({
8148
8238
  }));
8149
8239
  exports.image = void 0;
8150
8240
 
8151
- const alias_1 = __webpack_require__(5406);
8241
+ const global_1 = __webpack_require__(4128);
8152
8242
 
8153
8243
  const dom_1 = __webpack_require__(3252);
8154
8244
 
8155
8245
  function image(source, url, cache) {
8156
- if (cache?.has(url.href)) return (0, dom_1.define)(cache.get(url.href).cloneNode(true), (0, alias_1.ObjectFromEntries)([...source.attributes].map(attr => [attr.name, attr.value])));
8246
+ if (cache?.has(url.href)) return (0, dom_1.define)(cache.get(url.href).cloneNode(true), global_1.Object.fromEntries([...source.attributes].map(attr => [attr.name, attr.value])));
8157
8247
  (0, dom_1.define)(source, {
8158
8248
  'data-type': 'image',
8159
8249
  src: source.getAttribute('data-src'),
8160
8250
  loading: 'lazy'
8161
8251
  });
8162
- cache?.set(url.href, (0, dom_1.define)(source.cloneNode(true), (0, alias_1.ObjectFromEntries)([...source.attributes].filter(attr => !['class', 'data-type', 'data-src', 'src', 'loading'].includes(attr.name)).map(attr => [attr.name, null]))));
8252
+ cache?.set(url.href, (0, dom_1.define)(source.cloneNode(true), global_1.Object.fromEntries([...source.attributes].filter(attr => !['class', 'data-type', 'data-src', 'src', 'loading'].includes(attr.name)).map(attr => [attr.name, null]))));
8163
8253
  return source;
8164
8254
  }
8165
8255
 
@@ -8280,7 +8370,7 @@ Object.defineProperty(exports, "__esModule", ({
8280
8370
  }));
8281
8371
  exports.video = void 0;
8282
8372
 
8283
- const alias_1 = __webpack_require__(5406);
8373
+ const global_1 = __webpack_require__(4128);
8284
8374
 
8285
8375
  const dom_1 = __webpack_require__(3252);
8286
8376
 
@@ -8291,7 +8381,7 @@ function video(source, url) {
8291
8381
  return (0, dom_1.html)('video', {
8292
8382
  src: source.getAttribute('data-src'),
8293
8383
  'data-type': 'video',
8294
- ...(0, alias_1.ObjectFromEntries)([...source.attributes].map(attr => [attr.name, attr.value])),
8384
+ ...global_1.Object.fromEntries([...source.attributes].map(attr => [attr.name, attr.value])),
8295
8385
  muted: '',
8296
8386
  controls: ''
8297
8387
  });
@@ -8666,7 +8756,7 @@ function fix(h) {
8666
8756
  /***/ 3252:
8667
8757
  /***/ (function(module) {
8668
8758
 
8669
- /*! typed-dom v0.0.295 https://github.com/falsandtru/typed-dom | (c) 2016, falsandtru | (Apache-2.0 AND MPL-2.0) License */
8759
+ /*! typed-dom v0.0.298 https://github.com/falsandtru/typed-dom | (c) 2016, falsandtru | (Apache-2.0 AND MPL-2.0) License */
8670
8760
  (function webpackUniversalModuleDefinition(root, factory) {
8671
8761
  if(true)
8672
8762
  module.exports = factory();
@@ -8684,50 +8774,18 @@ return /******/ (() => { // webpackBootstrap
8684
8774
  Object.defineProperty(exports, "__esModule", ({
8685
8775
  value: true
8686
8776
  }));
8687
- exports.isArray = exports.ObjectValues = exports.ObjectSetPrototypeOf = exports.ObjectSeal = exports.ObjectPreventExtensions = exports.ObjectKeys = exports.isSealed = exports.isFrozen = exports.isExtensible = exports.ObjectIs = exports.ObjectGetPrototypeOf = exports.ObjectGetOwnPropertySymbols = exports.ObjectGetOwnPropertyNames = exports.ObjectGetOwnPropertyDescriptors = exports.ObjectGetOwnPropertyDescriptor = exports.ObjectFromEntries = exports.ObjectFreeze = exports.ObjectEntries = exports.ObjectDefineProperty = exports.ObjectDefineProperties = exports.ObjectCreate = exports.ObjectAssign = exports.toString = exports.isEnumerable = exports.isPrototypeOf = exports.hasOwnProperty = exports.SymbolKeyFor = exports.SymbolFor = exports.sign = exports.round = exports.random = exports.min = exports.max = exports.floor = exports.ceil = exports.abs = exports.parseInt = exports.parseFloat = exports.isSafeInteger = exports.isNaN = exports.isInteger = exports.isFinite = exports[NaN] = void 0;
8777
+ exports.ObjectSetPrototypeOf = exports.ObjectGetPrototypeOf = exports.ObjectCreate = exports.ObjectAssign = exports.toString = exports.isEnumerable = exports.isPrototypeOf = exports.hasOwnProperty = exports.isArray = exports.sign = exports.round = exports.random = exports.min = exports.max = exports.floor = exports.ceil = exports.abs = exports.parseInt = exports.parseFloat = exports.isSafeInteger = exports.isNaN = exports.isInteger = exports.isFinite = exports[NaN] = void 0;
8688
8778
  exports[NaN] = Number.NaN, exports.isFinite = Number.isFinite, exports.isInteger = Number.isInteger, exports.isNaN = Number.isNaN, exports.isSafeInteger = Number.isSafeInteger, exports.parseFloat = Number.parseFloat, exports.parseInt = Number.parseInt;
8689
- exports.abs = Math.abs, exports.ceil = Math.ceil, exports.floor = Math.floor, exports.max = Math.max, exports.min = Math.min, exports.random = Math.random, exports.round = Math.round, exports.sign = Math.sign; //export const SymbolAsyncIterator: typeof Symbol.asyncIterator = Symbol.asyncIterator;
8690
-
8691
- exports.SymbolFor = Symbol.for; //export const SymbolHasInstance: typeof Symbol.hasInstance = Symbol.hasInstance;
8692
- //export const SymbolIsConcatSpreadable: typeof Symbol.isConcatSpreadable = Symbol.isConcatSpreadable;
8693
- //export const SymbolIterator: typeof Symbol.iterator = Symbol.iterator;
8694
-
8695
- exports.SymbolKeyFor = Symbol.keyFor; //export const SymbolMatch: typeof Symbol.match = Symbol.match;
8696
- //export const SymbolReplace: typeof Symbol.replace = Symbol.replace;
8697
- //export const SymbolSearch: typeof Symbol.search = Symbol.search;
8698
- //export const SymbolSpecies: typeof Symbol.species = Symbol.species;
8699
- //export const SymbolSplit: typeof Symbol.split = Symbol.split;
8700
- //export const SymbolToPrimitive: typeof Symbol.toPrimitive = Symbol.toPrimitive;
8701
- //export const SymbolToStringTag: typeof Symbol.toStringTag = Symbol.toStringTag;
8702
- //export const SymbolUnscopables: typeof Symbol.unscopables = Symbol.unscopables;
8703
-
8779
+ exports.abs = Math.abs, exports.ceil = Math.ceil, exports.floor = Math.floor, exports.max = Math.max, exports.min = Math.min, exports.random = Math.random, exports.round = Math.round, exports.sign = Math.sign;
8780
+ exports.isArray = Array.isArray;
8704
8781
  exports.hasOwnProperty = Object.prototype.hasOwnProperty.call.bind(Object.prototype.hasOwnProperty);
8705
8782
  exports.isPrototypeOf = Object.prototype.isPrototypeOf.call.bind(Object.prototype.isPrototypeOf);
8706
8783
  exports.isEnumerable = Object.prototype.propertyIsEnumerable.call.bind(Object.prototype.propertyIsEnumerable);
8707
8784
  exports.toString = Object.prototype.toString.call.bind(Object.prototype.toString);
8708
8785
  exports.ObjectAssign = Object.assign;
8709
8786
  exports.ObjectCreate = Object.create;
8710
- exports.ObjectDefineProperties = Object.defineProperties;
8711
- exports.ObjectDefineProperty = Object.defineProperty;
8712
- exports.ObjectEntries = Object.entries;
8713
- exports.ObjectFreeze = Object.freeze; // @ts-ignore
8714
-
8715
- exports.ObjectFromEntries = Object.fromEntries;
8716
- exports.ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
8717
- exports.ObjectGetOwnPropertyDescriptors = Object.getOwnPropertyDescriptors;
8718
- exports.ObjectGetOwnPropertyNames = Object.getOwnPropertyNames;
8719
- exports.ObjectGetOwnPropertySymbols = Object.getOwnPropertySymbols;
8720
8787
  exports.ObjectGetPrototypeOf = Object.getPrototypeOf;
8721
- exports.ObjectIs = Object.is;
8722
- exports.isExtensible = Object.isExtensible;
8723
- exports.isFrozen = Object.isFrozen;
8724
- exports.isSealed = Object.isSealed;
8725
- exports.ObjectKeys = Object.keys;
8726
- exports.ObjectPreventExtensions = Object.preventExtensions;
8727
- exports.ObjectSeal = Object.seal;
8728
8788
  exports.ObjectSetPrototypeOf = Object.setPrototypeOf;
8729
- exports.ObjectValues = Object.values;
8730
- exports.isArray = Array.isArray;
8731
8789
 
8732
8790
  /***/ }),
8733
8791
 
@@ -8750,11 +8808,11 @@ exports.equal = equal;
8750
8808
  /***/ }),
8751
8809
 
8752
8810
  /***/ 128:
8753
- /***/ ((module, __unused_webpack_exports, __nested_webpack_require_4955__) => {
8811
+ /***/ ((module, __unused_webpack_exports, __nested_webpack_require_2590__) => {
8754
8812
 
8755
8813
 
8756
8814
 
8757
- __nested_webpack_require_4955__(921);
8815
+ __nested_webpack_require_2590__(921);
8758
8816
 
8759
8817
  const global = void 0 || typeof globalThis !== 'undefined' && globalThis // @ts-ignore
8760
8818
  || typeof self !== 'undefined' && self || Function('return this')();
@@ -8775,7 +8833,7 @@ var global = (/* unused pure expression or super */ null && (0));
8775
8833
  /***/ }),
8776
8834
 
8777
8835
  /***/ 808:
8778
- /***/ ((__unused_webpack_module, exports, __nested_webpack_require_5442__) => {
8836
+ /***/ ((__unused_webpack_module, exports, __nested_webpack_require_3077__) => {
8779
8837
 
8780
8838
 
8781
8839
 
@@ -8784,11 +8842,11 @@ Object.defineProperty(exports, "__esModule", ({
8784
8842
  }));
8785
8843
  exports.reduce = exports.memoize = void 0;
8786
8844
 
8787
- const global_1 = __nested_webpack_require_5442__(128);
8845
+ const global_1 = __nested_webpack_require_3077__(128);
8788
8846
 
8789
- const alias_1 = __nested_webpack_require_5442__(406);
8847
+ const alias_1 = __nested_webpack_require_3077__(406);
8790
8848
 
8791
- const compare_1 = __nested_webpack_require_5442__(529);
8849
+ const compare_1 = __nested_webpack_require_3077__(529);
8792
8850
 
8793
8851
  function memoize(f, identify = (...as) => as[0], memory) {
8794
8852
  if (typeof identify === 'object') return memoize(f, void 0, identify);
@@ -8846,7 +8904,7 @@ exports.reduce = reduce;
8846
8904
  /***/ }),
8847
8905
 
8848
8906
  /***/ 521:
8849
- /***/ ((__unused_webpack_module, exports, __nested_webpack_require_6832__) => {
8907
+ /***/ ((__unused_webpack_module, exports, __nested_webpack_require_4467__) => {
8850
8908
 
8851
8909
 
8852
8910
 
@@ -8855,11 +8913,11 @@ Object.defineProperty(exports, "__esModule", ({
8855
8913
  }));
8856
8914
  exports.defrag = exports.prepend = exports.append = exports.isChildren = exports.define = exports.element = exports.text = exports.svg = exports.html = exports.frag = exports.shadow = void 0;
8857
8915
 
8858
- const global_1 = __nested_webpack_require_6832__(128);
8916
+ const global_1 = __nested_webpack_require_4467__(128);
8859
8917
 
8860
- const alias_1 = __nested_webpack_require_6832__(406);
8918
+ const alias_1 = __nested_webpack_require_4467__(406);
8861
8919
 
8862
- const memoize_1 = __nested_webpack_require_6832__(808);
8920
+ const memoize_1 = __nested_webpack_require_4467__(808);
8863
8921
 
8864
8922
  var caches;
8865
8923
 
@@ -8887,10 +8945,10 @@ function frag(children) {
8887
8945
 
8888
8946
  exports.frag = frag;
8889
8947
  exports.html = element(global_1.document, "HTML"
8890
- /* HTML */
8948
+ /* NS.HTML */
8891
8949
  );
8892
8950
  exports.svg = element(global_1.document, "SVG"
8893
- /* SVG */
8951
+ /* NS.SVG */
8894
8952
  );
8895
8953
 
8896
8954
  function text(source) {
@@ -8914,17 +8972,17 @@ function elem(context, ns, tag) {
8914
8972
 
8915
8973
  switch (ns) {
8916
8974
  case "HTML"
8917
- /* HTML */
8975
+ /* NS.HTML */
8918
8976
  :
8919
8977
  return context.createElement(tag);
8920
8978
 
8921
8979
  case "SVG"
8922
- /* SVG */
8980
+ /* NS.SVG */
8923
8981
  :
8924
8982
  return context.createElementNS('http://www.w3.org/2000/svg', tag);
8925
8983
 
8926
8984
  case "MathML"
8927
- /* MathML */
8985
+ /* NS.MathML */
8928
8986
  :
8929
8987
  return context.createElementNS('http://www.w3.org/1998/Math/MathML', tag);
8930
8988
  }
@@ -8960,7 +9018,7 @@ function defineAttrs(el, attrs) {
8960
9018
  case 'connect':
8961
9019
  case 'disconnect':
8962
9020
  const prop = `on${type}`;
8963
- el[prop] ?? (0, alias_1.ObjectDefineProperty)(el, prop, {
9021
+ el[prop] ?? global_1.Object.defineProperty(el, prop, {
8964
9022
  configurable: true,
8965
9023
  enumerable: false,
8966
9024
  writable: true,
@@ -8987,7 +9045,7 @@ function defineAttrs(el, attrs) {
8987
9045
  case 'connect':
8988
9046
  case 'disconnect':
8989
9047
  const prop = `on${type}`;
8990
- el[prop] ?? (0, alias_1.ObjectDefineProperty)(el, prop, {
9048
+ el[prop] ?? global_1.Object.defineProperty(el, prop, {
8991
9049
  configurable: true,
8992
9050
  enumerable: false,
8993
9051
  writable: true,
@@ -9095,7 +9153,7 @@ exports.defrag = defrag;
9095
9153
  /******/ var __webpack_module_cache__ = {};
9096
9154
  /******/
9097
9155
  /******/ // The require function
9098
- /******/ function __nested_webpack_require_13916__(moduleId) {
9156
+ /******/ function __nested_webpack_require_11560__(moduleId) {
9099
9157
  /******/ // Check if module is in cache
9100
9158
  /******/ var cachedModule = __webpack_module_cache__[moduleId];
9101
9159
  /******/ if (cachedModule !== undefined) {
@@ -9109,7 +9167,7 @@ exports.defrag = defrag;
9109
9167
  /******/ };
9110
9168
  /******/
9111
9169
  /******/ // Execute the module function
9112
- /******/ __webpack_modules__[moduleId](module, module.exports, __nested_webpack_require_13916__);
9170
+ /******/ __webpack_modules__[moduleId](module, module.exports, __nested_webpack_require_11560__);
9113
9171
  /******/
9114
9172
  /******/ // Return the exports of the module
9115
9173
  /******/ return module.exports;
@@ -9120,7 +9178,7 @@ exports.defrag = defrag;
9120
9178
  /******/ // startup
9121
9179
  /******/ // Load entry module and return exports
9122
9180
  /******/ // This entry module is referenced by other modules so it can't be inlined
9123
- /******/ var __webpack_exports__ = __nested_webpack_require_13916__(521);
9181
+ /******/ var __webpack_exports__ = __nested_webpack_require_11560__(521);
9124
9182
  /******/
9125
9183
  /******/ return __webpack_exports__;
9126
9184
  /******/ })()
@@ -9132,7 +9190,7 @@ exports.defrag = defrag;
9132
9190
  /***/ 6120:
9133
9191
  /***/ (function(module) {
9134
9192
 
9135
- /*! typed-dom v0.0.295 https://github.com/falsandtru/typed-dom | (c) 2016, falsandtru | (Apache-2.0 AND MPL-2.0) License */
9193
+ /*! typed-dom v0.0.298 https://github.com/falsandtru/typed-dom | (c) 2016, falsandtru | (Apache-2.0 AND MPL-2.0) License */
9136
9194
  (function webpackUniversalModuleDefinition(root, factory) {
9137
9195
  if(true)
9138
9196
  module.exports = factory();