vue-book-reader 1.2.5 → 1.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,8 +3,9 @@
3
3
  })(this, (function(exports2, vue) {
4
4
  "use strict";
5
5
  var __vite_style__ = document.createElement("style");
6
- __vite_style__.textContent = "\n.reader[data-v-cbfdb46e] {\r\n position: absolute;\r\n inset: 50px 50px 20px;\n}\n.viewHolder[data-v-cbfdb46e] {\r\n height: 100%;\r\n width: 100%;\r\n position: relative;\n}\n#viewer[data-v-cbfdb46e] {\r\n height: 100%;\n}\r\n\r\n/* ↓ */\n.tocAreaButton .expansion[data-v-56e71b55]::before {\r\n transform: rotate(-45deg) translateX(2.5px);\n}\n.tocAreaButton .expansion[data-v-56e71b55]::after {\r\n transform: rotate(45deg) translateX(-2.5px);\n}\r\n\r\n/* ↑ */\n.tocAreaButton .open[data-v-56e71b55]::before {\r\n transform: rotate(45deg) translateX(2.5px);\n}\n.tocAreaButton .open[data-v-56e71b55]::after {\r\n transform: rotate(-45deg) translateX(-2.5px);\n}\n.tocAreaButton[data-v-56e71b55] {\r\n user-select: none;\r\n appearance: none;\r\n background: none;\r\n border: none;\r\n display: block;\r\n font-family: sans-serif;\r\n width: 100%;\r\n font-size: 0.9em;\r\n text-align: left;\r\n padding: 0.9em 1em;\r\n border-bottom: 1px solid #ddd;\r\n color: #aaa;\r\n box-sizing: border-box;\r\n outline: none;\r\n cursor: pointer;\r\n position: relative;\n}\n.tocAreaButton[data-v-56e71b55]:hover {\r\n background: rgba(0, 0, 0, 0.05);\n}\n.tocAreaButton[data-v-56e71b55]:active {\r\n background: rgba(0, 0, 0, 0.1);\n}\n.active[data-v-56e71b55] {\r\n color: #1565c0;\r\n border-bottom: 2px solid #1565c0;\n}\r\n\r\n/* 二级目录 */\n.tocAreaButton .expansion[data-v-56e71b55] {\r\n cursor: pointer;\r\n transform: translateY(-50%);\r\n top: 50%;\r\n right: 12px;\r\n position: absolute;\r\n width: 10px;\r\n background-color: #a2a5b4;\r\n transition:\r\n transform 0.3s ease-in-out,\r\n top 0.3s ease-in-out;\n}\n.tocAreaButton .expansion[data-v-56e71b55]::after,\r\n.tocAreaButton .expansion[data-v-56e71b55]::before {\r\n content: '';\r\n position: absolute;\r\n width: 6px;\r\n height: 2px;\r\n background-color: currentcolor;\r\n border-radius: 2px;\r\n transition:\r\n transform 0.3s ease-in-out,\r\n top 0.3s ease-in-out;\n}\r\n\r\n/* container */\n.container[data-v-ce33d15c] {\r\n overflow: hidden;\r\n position: relative;\r\n height: 100%;\n}\n.containerExpanded[data-v-ce33d15c] {\r\n transform: translateX(256px);\n}\n.readerArea[data-v-ce33d15c] {\r\n position: relative;\r\n z-index: 1;\r\n height: 100%;\r\n width: 100%;\r\n background-color: #fff;\r\n transition: all 0.3s ease;\n}\n.container .titleArea[data-v-ce33d15c] {\r\n position: absolute;\r\n top: 20px;\r\n left: 50px;\r\n right: 50px;\r\n text-align: center;\r\n color: #999;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\r\n\r\n/* toc */\n.tocBackground[data-v-ce33d15c] {\r\n position: absolute;\r\n left: 256px;\r\n top: 0;\r\n bottom: 0;\r\n right: 0;\r\n z-index: 1;\n}\n.tocArea[data-v-ce33d15c] {\r\n position: absolute;\r\n left: 0;\r\n top: 0;\r\n bottom: 0;\r\n z-index: 0;\r\n width: 256px;\r\n overflow-y: auto;\r\n -webkit-overflow-scrolling: touch;\r\n background: #f2f2f2;\r\n padding: 10px 0;\n}\r\n\r\n/* 滚动条 */\n.tocArea[data-v-ce33d15c]::-webkit-scrollbar {\r\n width: 5px;\r\n height: 5px;\n}\n.tocArea[data-v-ce33d15c]::-webkit-scrollbar-thumb:vertical {\r\n height: 5px;\r\n background-color: rgba(0, 0, 0, 0.1);\r\n border-radius: 0.5rem;\n}\r\n\r\n/* tocButton */\n.tocButton[data-v-ce33d15c] {\r\n background: none;\r\n border: none;\r\n width: 32px;\r\n height: 32px;\r\n position: absolute;\r\n top: 10px;\r\n left: 10px;\r\n border-radius: 2px;\r\n outline: none;\r\n cursor: pointer;\n}\n.tocButtonBar[data-v-ce33d15c] {\r\n position: absolute;\r\n width: 60%;\r\n background: #ccc;\r\n height: 2px;\r\n left: 50%;\r\n margin: -1px -30%;\r\n top: 50%;\r\n transition: all 0.5s ease;\n}\n.tocButtonExpanded[data-v-ce33d15c] {\r\n background: #f2f2f2;\n}\r\n\r\n/* 翻页 */\n.arrow[data-v-ce33d15c] {\r\n outline: none;\r\n border: none;\r\n background: none;\r\n position: absolute;\r\n top: 50%;\r\n margin-top: -32px;\r\n font-size: 64px;\r\n padding: 0 10px;\r\n color: #e2e2e2;\r\n font-family: arial, sans-serif;\r\n cursor: pointer;\r\n user-select: none;\r\n appearance: none;\r\n font-weight: normal;\n}\n.arrow[data-v-ce33d15c]:hover {\r\n color: #777;\n}\n.arrow[data-v-ce33d15c]:disabled {\r\n cursor: not-allowed;\r\n color: #e2e2e2;\n}\n.prev[data-v-ce33d15c] {\r\n left: 1px;\n}\n.next[data-v-ce33d15c] {\r\n right: 1px;\n}\r\n\r\n/* loading */\n.loadingView[data-v-ce33d15c] {\r\n position: absolute;\r\n top: 50%;\r\n left: 10%;\r\n right: 10%;\r\n color: #ccc;\r\n text-align: center;\r\n margin-top: -0.5em;\n}\r\n\r\n/* errorView */\n.errorView[data-v-ce33d15c] {\r\n position: absolute;\r\n top: 50%;\r\n left: 10%;\r\n right: 10%;\r\n color: #c00;\r\n text-align: center;\r\n margin-top: -0.5em;\n}\r\n/*$vite$:1*/";
6
+ __vite_style__.textContent = "\n.reader[data-v-0c743b16] {\r\n position: absolute;\r\n inset: 50px 50px 20px;\n}\n.viewHolder[data-v-0c743b16] {\r\n height: 100%;\r\n width: 100%;\r\n position: relative;\n}\n#viewer[data-v-0c743b16] {\r\n height: 100%;\n}\r\n\r\n/* ↓ */\n.tocAreaButton .expansion[data-v-56e71b55]::before {\r\n transform: rotate(-45deg) translateX(2.5px);\n}\n.tocAreaButton .expansion[data-v-56e71b55]::after {\r\n transform: rotate(45deg) translateX(-2.5px);\n}\r\n\r\n/* ↑ */\n.tocAreaButton .open[data-v-56e71b55]::before {\r\n transform: rotate(45deg) translateX(2.5px);\n}\n.tocAreaButton .open[data-v-56e71b55]::after {\r\n transform: rotate(-45deg) translateX(-2.5px);\n}\n.tocAreaButton[data-v-56e71b55] {\r\n user-select: none;\r\n appearance: none;\r\n background: none;\r\n border: none;\r\n display: block;\r\n font-family: sans-serif;\r\n width: 100%;\r\n font-size: 0.9em;\r\n text-align: left;\r\n padding: 0.9em 1em;\r\n border-bottom: 1px solid #ddd;\r\n color: #aaa;\r\n box-sizing: border-box;\r\n outline: none;\r\n cursor: pointer;\r\n position: relative;\n}\n.tocAreaButton[data-v-56e71b55]:hover {\r\n background: rgba(0, 0, 0, 0.05);\n}\n.tocAreaButton[data-v-56e71b55]:active {\r\n background: rgba(0, 0, 0, 0.1);\n}\n.active[data-v-56e71b55] {\r\n color: #1565c0;\r\n border-bottom: 2px solid #1565c0;\n}\r\n\r\n/* 二级目录 */\n.tocAreaButton .expansion[data-v-56e71b55] {\r\n cursor: pointer;\r\n transform: translateY(-50%);\r\n top: 50%;\r\n right: 12px;\r\n position: absolute;\r\n width: 10px;\r\n background-color: #a2a5b4;\r\n transition:\r\n transform 0.3s ease-in-out,\r\n top 0.3s ease-in-out;\n}\n.tocAreaButton .expansion[data-v-56e71b55]::after,\r\n.tocAreaButton .expansion[data-v-56e71b55]::before {\r\n content: '';\r\n position: absolute;\r\n width: 6px;\r\n height: 2px;\r\n background-color: currentcolor;\r\n border-radius: 2px;\r\n transition:\r\n transform 0.3s ease-in-out,\r\n top 0.3s ease-in-out;\n}\r\n\r\n/* container */\n.container[data-v-ce33d15c] {\r\n overflow: hidden;\r\n position: relative;\r\n height: 100%;\n}\n.containerExpanded[data-v-ce33d15c] {\r\n transform: translateX(256px);\n}\n.readerArea[data-v-ce33d15c] {\r\n position: relative;\r\n z-index: 1;\r\n height: 100%;\r\n width: 100%;\r\n background-color: #fff;\r\n transition: all 0.3s ease;\n}\n.container .titleArea[data-v-ce33d15c] {\r\n position: absolute;\r\n top: 20px;\r\n left: 50px;\r\n right: 50px;\r\n text-align: center;\r\n color: #999;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\r\n\r\n/* toc */\n.tocBackground[data-v-ce33d15c] {\r\n position: absolute;\r\n left: 256px;\r\n top: 0;\r\n bottom: 0;\r\n right: 0;\r\n z-index: 1;\n}\n.tocArea[data-v-ce33d15c] {\r\n position: absolute;\r\n left: 0;\r\n top: 0;\r\n bottom: 0;\r\n z-index: 0;\r\n width: 256px;\r\n overflow-y: auto;\r\n -webkit-overflow-scrolling: touch;\r\n background: #f2f2f2;\r\n padding: 10px 0;\n}\r\n\r\n/* 滚动条 */\n.tocArea[data-v-ce33d15c]::-webkit-scrollbar {\r\n width: 5px;\r\n height: 5px;\n}\n.tocArea[data-v-ce33d15c]::-webkit-scrollbar-thumb:vertical {\r\n height: 5px;\r\n background-color: rgba(0, 0, 0, 0.1);\r\n border-radius: 0.5rem;\n}\r\n\r\n/* tocButton */\n.tocButton[data-v-ce33d15c] {\r\n background: none;\r\n border: none;\r\n width: 32px;\r\n height: 32px;\r\n position: absolute;\r\n top: 10px;\r\n left: 10px;\r\n border-radius: 2px;\r\n outline: none;\r\n cursor: pointer;\n}\n.tocButtonBar[data-v-ce33d15c] {\r\n position: absolute;\r\n width: 60%;\r\n background: #ccc;\r\n height: 2px;\r\n left: 50%;\r\n margin: -1px -30%;\r\n top: 50%;\r\n transition: all 0.5s ease;\n}\n.tocButtonExpanded[data-v-ce33d15c] {\r\n background: #f2f2f2;\n}\r\n\r\n/* 翻页 */\n.arrow[data-v-ce33d15c] {\r\n outline: none;\r\n border: none;\r\n background: none;\r\n position: absolute;\r\n top: 50%;\r\n margin-top: -32px;\r\n font-size: 64px;\r\n padding: 0 10px;\r\n color: #e2e2e2;\r\n font-family: arial, sans-serif;\r\n cursor: pointer;\r\n user-select: none;\r\n appearance: none;\r\n font-weight: normal;\n}\n.arrow[data-v-ce33d15c]:hover {\r\n color: #777;\n}\n.arrow[data-v-ce33d15c]:disabled {\r\n cursor: not-allowed;\r\n color: #e2e2e2;\n}\n.prev[data-v-ce33d15c] {\r\n left: 1px;\n}\n.next[data-v-ce33d15c] {\r\n right: 1px;\n}\r\n\r\n/* loading */\n.loadingView[data-v-ce33d15c] {\r\n position: absolute;\r\n top: 50%;\r\n left: 10%;\r\n right: 10%;\r\n color: #ccc;\r\n text-align: center;\r\n margin-top: -0.5em;\n}\r\n\r\n/* errorView */\n.errorView[data-v-ce33d15c] {\r\n position: absolute;\r\n top: 50%;\r\n left: 10%;\r\n right: 10%;\r\n color: #c00;\r\n text-align: center;\r\n margin-top: -0.5em;\n}\r\n/*$vite$:1*/";
7
7
  document.head.appendChild(__vite_style__);
8
+ var _documentCurrentScript = typeof document !== "undefined" ? document.currentScript : null;
8
9
  function keyListener(el, fn) {
9
10
  el.addEventListener(
10
11
  "keyup",
@@ -1619,6 +1620,9 @@
1619
1620
  location: {
1620
1621
  type: [String, Number]
1621
1622
  },
1623
+ initOption: {
1624
+ type: Object
1625
+ },
1622
1626
  tocChanged: Function,
1623
1627
  getRendition: Function
1624
1628
  },
@@ -1636,8 +1640,8 @@
1636
1640
  };
1637
1641
  }
1638
1642
  const props = __props;
1639
- const { tocChanged, getRendition } = props;
1640
- const { url, location } = vue.toRefs(props);
1643
+ const { tocChanged, getRendition, initOption } = props;
1644
+ const { url, location: location2 } = vue.toRefs(props);
1641
1645
  const emit = __emit;
1642
1646
  let view$1 = null;
1643
1647
  const viewer = vue.ref(null);
@@ -1654,20 +1658,20 @@
1654
1658
  }
1655
1659
  await view$1.open(url.value);
1656
1660
  getRendition && getRendition(view$1);
1657
- initReader();
1661
+ await initReader();
1658
1662
  }
1659
1663
  } catch (error) {
1660
1664
  console.error("Error opening book:", error);
1661
1665
  isError.value = true;
1662
1666
  }
1663
1667
  };
1664
- const initReader = () => {
1668
+ const initReader = async () => {
1665
1669
  isLoaded.value = true;
1666
1670
  const { book } = view$1;
1667
1671
  registerEvents();
1668
1672
  tocChanged && tocChanged(book.toc);
1669
- if (location && location.value) {
1670
- view$1 == null ? void 0 : view$1.goTo(location.value);
1673
+ if (initOption) {
1674
+ await view$1.init(initOption);
1671
1675
  } else {
1672
1676
  view$1.renderer.next();
1673
1677
  }
@@ -1734,7 +1738,7 @@
1734
1738
  }
1735
1739
  return target;
1736
1740
  };
1737
- const BookView = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-cbfdb46e"]]);
1741
+ const BookView = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-0c743b16"]]);
1738
1742
  const _hoisted_1$1 = ["onClick"];
1739
1743
  const _hoisted_2$1 = { key: 0 };
1740
1744
  const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
@@ -2127,7 +2131,9 @@
2127
2131
  }
2128
2132
  };
2129
2133
  const nodeToParts = (node, offset, filter2) => {
2130
- const { parentNode, id } = node;
2134
+ let { id, parentNode } = node;
2135
+ while (filter2)
2136
+ parentNode = parentNode.parentNode;
2131
2137
  const indexed = indexChildNodes(parentNode, filter2);
2132
2138
  const index = indexed.findIndex((x2) => Array.isArray(x2) ? x2.some((x3) => x3 === node) : x2 === node);
2133
2139
  const chunk = indexed[index];
@@ -2496,7 +2502,7 @@
2496
2502
  const walker = document.createTreeWalker(root, filter$1, { acceptNode: filterFunc || acceptNode });
2497
2503
  const walk = x2.commonAncestorContainer ? walkRange : walkDocument;
2498
2504
  const nodes = walk(x2, walker);
2499
- const strs = nodes.map((node) => node.nodeValue);
2505
+ const strs = nodes.map((node) => node.nodeValue ?? "");
2500
2506
  const makeRange2 = (startIndex, startOffset, endIndex, endOffset) => {
2501
2507
  const range = document.createRange();
2502
2508
  range.setStart(nodes[startIndex], startOffset);
@@ -2703,6 +2709,8 @@
2703
2709
  #tocProgress;
2704
2710
  #pageProgress;
2705
2711
  #searchResults = /* @__PURE__ */ new Map();
2712
+ #searchDraw;
2713
+ #searchDrawOptions;
2706
2714
  #cursorAutohider = new CursorAutohider(this, () => this.hasAttribute("autohide-cursor"));
2707
2715
  isFixedLayout = false;
2708
2716
  lastLocation;
@@ -2856,7 +2864,7 @@
2856
2864
  return;
2857
2865
  }
2858
2866
  const range = doc ? anchor2(doc) : anchor2;
2859
- overlayer.add(value, range, Overlayer.outline);
2867
+ overlayer.add(value, range, this.#searchDraw, this.#searchDrawOptions);
2860
2868
  }
2861
2869
  return;
2862
2870
  }
@@ -3017,6 +3025,8 @@
3017
3025
  async *search(opts) {
3018
3026
  var _a;
3019
3027
  this.clearSearch();
3028
+ this.#searchDraw = opts.draw ?? Overlayer.outline;
3029
+ this.#searchDrawOptions = opts.drawOptions;
3020
3030
  const { searchMatcher: searchMatcher2 } = await Promise.resolve().then(() => search$1);
3021
3031
  const { query, index } = opts;
3022
3032
  const matcher = searchMatcher2(
@@ -3071,511 +3081,81 @@
3071
3081
  View: View$1,
3072
3082
  makeBook
3073
3083
  }, Symbol.toStringTag, { value: "Module" }));
3074
- const e$1 = -2, t$1 = -3, n$1 = -5, i$1 = [0, 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8191, 16383, 32767, 65535], r$1 = [96, 7, 256, 0, 8, 80, 0, 8, 16, 84, 8, 115, 82, 7, 31, 0, 8, 112, 0, 8, 48, 0, 9, 192, 80, 7, 10, 0, 8, 96, 0, 8, 32, 0, 9, 160, 0, 8, 0, 0, 8, 128, 0, 8, 64, 0, 9, 224, 80, 7, 6, 0, 8, 88, 0, 8, 24, 0, 9, 144, 83, 7, 59, 0, 8, 120, 0, 8, 56, 0, 9, 208, 81, 7, 17, 0, 8, 104, 0, 8, 40, 0, 9, 176, 0, 8, 8, 0, 8, 136, 0, 8, 72, 0, 9, 240, 80, 7, 4, 0, 8, 84, 0, 8, 20, 85, 8, 227, 83, 7, 43, 0, 8, 116, 0, 8, 52, 0, 9, 200, 81, 7, 13, 0, 8, 100, 0, 8, 36, 0, 9, 168, 0, 8, 4, 0, 8, 132, 0, 8, 68, 0, 9, 232, 80, 7, 8, 0, 8, 92, 0, 8, 28, 0, 9, 152, 84, 7, 83, 0, 8, 124, 0, 8, 60, 0, 9, 216, 82, 7, 23, 0, 8, 108, 0, 8, 44, 0, 9, 184, 0, 8, 12, 0, 8, 140, 0, 8, 76, 0, 9, 248, 80, 7, 3, 0, 8, 82, 0, 8, 18, 85, 8, 163, 83, 7, 35, 0, 8, 114, 0, 8, 50, 0, 9, 196, 81, 7, 11, 0, 8, 98, 0, 8, 34, 0, 9, 164, 0, 8, 2, 0, 8, 130, 0, 8, 66, 0, 9, 228, 80, 7, 7, 0, 8, 90, 0, 8, 26, 0, 9, 148, 84, 7, 67, 0, 8, 122, 0, 8, 58, 0, 9, 212, 82, 7, 19, 0, 8, 106, 0, 8, 42, 0, 9, 180, 0, 8, 10, 0, 8, 138, 0, 8, 74, 0, 9, 244, 80, 7, 5, 0, 8, 86, 0, 8, 22, 192, 8, 0, 83, 7, 51, 0, 8, 118, 0, 8, 54, 0, 9, 204, 81, 7, 15, 0, 8, 102, 0, 8, 38, 0, 9, 172, 0, 8, 6, 0, 8, 134, 0, 8, 70, 0, 9, 236, 80, 7, 9, 0, 8, 94, 0, 8, 30, 0, 9, 156, 84, 7, 99, 0, 8, 126, 0, 8, 62, 0, 9, 220, 82, 7, 27, 0, 8, 110, 0, 8, 46, 0, 9, 188, 0, 8, 14, 0, 8, 142, 0, 8, 78, 0, 9, 252, 96, 7, 256, 0, 8, 81, 0, 8, 17, 85, 8, 131, 82, 7, 31, 0, 8, 113, 0, 8, 49, 0, 9, 194, 80, 7, 10, 0, 8, 97, 0, 8, 33, 0, 9, 162, 0, 8, 1, 0, 8, 129, 0, 8, 65, 0, 9, 226, 80, 7, 6, 0, 8, 89, 0, 8, 25, 0, 9, 146, 83, 7, 59, 0, 8, 121, 0, 8, 57, 0, 9, 210, 81, 7, 17, 0, 8, 105, 0, 8, 41, 0, 9, 178, 0, 8, 9, 0, 8, 137, 0, 8, 73, 0, 9, 242, 80, 7, 4, 0, 8, 85, 0, 8, 21, 80, 8, 258, 83, 7, 43, 0, 8, 117, 0, 8, 53, 0, 9, 202, 81, 7, 13, 0, 8, 101, 0, 8, 37, 0, 9, 170, 0, 8, 5, 0, 8, 133, 0, 8, 69, 0, 9, 234, 80, 7, 8, 0, 8, 93, 0, 8, 29, 0, 9, 154, 84, 7, 83, 0, 8, 125, 0, 8, 61, 0, 9, 218, 82, 7, 23, 0, 8, 109, 0, 8, 45, 0, 9, 186, 0, 8, 13, 0, 8, 141, 0, 8, 77, 0, 9, 250, 80, 7, 3, 0, 8, 83, 0, 8, 19, 85, 8, 195, 83, 7, 35, 0, 8, 115, 0, 8, 51, 0, 9, 198, 81, 7, 11, 0, 8, 99, 0, 8, 35, 0, 9, 166, 0, 8, 3, 0, 8, 131, 0, 8, 67, 0, 9, 230, 80, 7, 7, 0, 8, 91, 0, 8, 27, 0, 9, 150, 84, 7, 67, 0, 8, 123, 0, 8, 59, 0, 9, 214, 82, 7, 19, 0, 8, 107, 0, 8, 43, 0, 9, 182, 0, 8, 11, 0, 8, 139, 0, 8, 75, 0, 9, 246, 80, 7, 5, 0, 8, 87, 0, 8, 23, 192, 8, 0, 83, 7, 51, 0, 8, 119, 0, 8, 55, 0, 9, 206, 81, 7, 15, 0, 8, 103, 0, 8, 39, 0, 9, 174, 0, 8, 7, 0, 8, 135, 0, 8, 71, 0, 9, 238, 80, 7, 9, 0, 8, 95, 0, 8, 31, 0, 9, 158, 84, 7, 99, 0, 8, 127, 0, 8, 63, 0, 9, 222, 82, 7, 27, 0, 8, 111, 0, 8, 47, 0, 9, 190, 0, 8, 15, 0, 8, 143, 0, 8, 79, 0, 9, 254, 96, 7, 256, 0, 8, 80, 0, 8, 16, 84, 8, 115, 82, 7, 31, 0, 8, 112, 0, 8, 48, 0, 9, 193, 80, 7, 10, 0, 8, 96, 0, 8, 32, 0, 9, 161, 0, 8, 0, 0, 8, 128, 0, 8, 64, 0, 9, 225, 80, 7, 6, 0, 8, 88, 0, 8, 24, 0, 9, 145, 83, 7, 59, 0, 8, 120, 0, 8, 56, 0, 9, 209, 81, 7, 17, 0, 8, 104, 0, 8, 40, 0, 9, 177, 0, 8, 8, 0, 8, 136, 0, 8, 72, 0, 9, 241, 80, 7, 4, 0, 8, 84, 0, 8, 20, 85, 8, 227, 83, 7, 43, 0, 8, 116, 0, 8, 52, 0, 9, 201, 81, 7, 13, 0, 8, 100, 0, 8, 36, 0, 9, 169, 0, 8, 4, 0, 8, 132, 0, 8, 68, 0, 9, 233, 80, 7, 8, 0, 8, 92, 0, 8, 28, 0, 9, 153, 84, 7, 83, 0, 8, 124, 0, 8, 60, 0, 9, 217, 82, 7, 23, 0, 8, 108, 0, 8, 44, 0, 9, 185, 0, 8, 12, 0, 8, 140, 0, 8, 76, 0, 9, 249, 80, 7, 3, 0, 8, 82, 0, 8, 18, 85, 8, 163, 83, 7, 35, 0, 8, 114, 0, 8, 50, 0, 9, 197, 81, 7, 11, 0, 8, 98, 0, 8, 34, 0, 9, 165, 0, 8, 2, 0, 8, 130, 0, 8, 66, 0, 9, 229, 80, 7, 7, 0, 8, 90, 0, 8, 26, 0, 9, 149, 84, 7, 67, 0, 8, 122, 0, 8, 58, 0, 9, 213, 82, 7, 19, 0, 8, 106, 0, 8, 42, 0, 9, 181, 0, 8, 10, 0, 8, 138, 0, 8, 74, 0, 9, 245, 80, 7, 5, 0, 8, 86, 0, 8, 22, 192, 8, 0, 83, 7, 51, 0, 8, 118, 0, 8, 54, 0, 9, 205, 81, 7, 15, 0, 8, 102, 0, 8, 38, 0, 9, 173, 0, 8, 6, 0, 8, 134, 0, 8, 70, 0, 9, 237, 80, 7, 9, 0, 8, 94, 0, 8, 30, 0, 9, 157, 84, 7, 99, 0, 8, 126, 0, 8, 62, 0, 9, 221, 82, 7, 27, 0, 8, 110, 0, 8, 46, 0, 9, 189, 0, 8, 14, 0, 8, 142, 0, 8, 78, 0, 9, 253, 96, 7, 256, 0, 8, 81, 0, 8, 17, 85, 8, 131, 82, 7, 31, 0, 8, 113, 0, 8, 49, 0, 9, 195, 80, 7, 10, 0, 8, 97, 0, 8, 33, 0, 9, 163, 0, 8, 1, 0, 8, 129, 0, 8, 65, 0, 9, 227, 80, 7, 6, 0, 8, 89, 0, 8, 25, 0, 9, 147, 83, 7, 59, 0, 8, 121, 0, 8, 57, 0, 9, 211, 81, 7, 17, 0, 8, 105, 0, 8, 41, 0, 9, 179, 0, 8, 9, 0, 8, 137, 0, 8, 73, 0, 9, 243, 80, 7, 4, 0, 8, 85, 0, 8, 21, 80, 8, 258, 83, 7, 43, 0, 8, 117, 0, 8, 53, 0, 9, 203, 81, 7, 13, 0, 8, 101, 0, 8, 37, 0, 9, 171, 0, 8, 5, 0, 8, 133, 0, 8, 69, 0, 9, 235, 80, 7, 8, 0, 8, 93, 0, 8, 29, 0, 9, 155, 84, 7, 83, 0, 8, 125, 0, 8, 61, 0, 9, 219, 82, 7, 23, 0, 8, 109, 0, 8, 45, 0, 9, 187, 0, 8, 13, 0, 8, 141, 0, 8, 77, 0, 9, 251, 80, 7, 3, 0, 8, 83, 0, 8, 19, 85, 8, 195, 83, 7, 35, 0, 8, 115, 0, 8, 51, 0, 9, 199, 81, 7, 11, 0, 8, 99, 0, 8, 35, 0, 9, 167, 0, 8, 3, 0, 8, 131, 0, 8, 67, 0, 9, 231, 80, 7, 7, 0, 8, 91, 0, 8, 27, 0, 9, 151, 84, 7, 67, 0, 8, 123, 0, 8, 59, 0, 9, 215, 82, 7, 19, 0, 8, 107, 0, 8, 43, 0, 9, 183, 0, 8, 11, 0, 8, 139, 0, 8, 75, 0, 9, 247, 80, 7, 5, 0, 8, 87, 0, 8, 23, 192, 8, 0, 83, 7, 51, 0, 8, 119, 0, 8, 55, 0, 9, 207, 81, 7, 15, 0, 8, 103, 0, 8, 39, 0, 9, 175, 0, 8, 7, 0, 8, 135, 0, 8, 71, 0, 9, 239, 80, 7, 9, 0, 8, 95, 0, 8, 31, 0, 9, 159, 84, 7, 99, 0, 8, 127, 0, 8, 63, 0, 9, 223, 82, 7, 27, 0, 8, 111, 0, 8, 47, 0, 9, 191, 0, 8, 15, 0, 8, 143, 0, 8, 79, 0, 9, 255], a$1 = [80, 5, 1, 87, 5, 257, 83, 5, 17, 91, 5, 4097, 81, 5, 5, 89, 5, 1025, 85, 5, 65, 93, 5, 16385, 80, 5, 3, 88, 5, 513, 84, 5, 33, 92, 5, 8193, 82, 5, 9, 90, 5, 2049, 86, 5, 129, 192, 5, 24577, 80, 5, 2, 87, 5, 385, 83, 5, 25, 91, 5, 6145, 81, 5, 7, 89, 5, 1537, 85, 5, 97, 93, 5, 24577, 80, 5, 4, 88, 5, 769, 84, 5, 49, 92, 5, 12289, 82, 5, 13, 90, 5, 3073, 86, 5, 193, 192, 5, 24577], s$1 = [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0], o$1 = [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 112, 112], l$1 = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577], c$1 = [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13], u$1 = 15;
3075
- function d$1() {
3076
- let e2, i2, r2, a2, d2, f2;
3077
- function h2(e3, i3, s2, o2, l2, c2, h3, w3, _2, b2, p2) {
3078
- let m2, g2, y2, x2, k2, v2, S2, z2, A2, U2, D2, E2, T2, F2, O2;
3079
- U2 = 0, k2 = s2;
3080
- do {
3081
- r2[e3[i3 + U2]]++, U2++, k2--;
3082
- } while (0 !== k2);
3083
- if (r2[0] == s2) return h3[0] = -1, w3[0] = 0, 0;
3084
- for (z2 = w3[0], v2 = 1; v2 <= u$1 && 0 === r2[v2]; v2++) ;
3085
- for (S2 = v2, z2 < v2 && (z2 = v2), k2 = u$1; 0 !== k2 && 0 === r2[k2]; k2--) ;
3086
- for (y2 = k2, z2 > k2 && (z2 = k2), w3[0] = z2, F2 = 1 << v2; v2 < k2; v2++, F2 <<= 1) if ((F2 -= r2[v2]) < 0) return t$1;
3087
- if ((F2 -= r2[k2]) < 0) return t$1;
3088
- for (r2[k2] += F2, f2[1] = v2 = 0, U2 = 1, T2 = 2; 0 != --k2; ) f2[T2] = v2 += r2[U2], T2++, U2++;
3089
- k2 = 0, U2 = 0;
3090
- do {
3091
- 0 !== (v2 = e3[i3 + U2]) && (p2[f2[v2]++] = k2), U2++;
3092
- } while (++k2 < s2);
3093
- for (s2 = f2[y2], f2[0] = k2 = 0, U2 = 0, x2 = -1, E2 = -z2, d2[0] = 0, D2 = 0, O2 = 0; S2 <= y2; S2++) for (m2 = r2[S2]; 0 != m2--; ) {
3094
- for (; S2 > E2 + z2; ) {
3095
- if (x2++, E2 += z2, O2 = y2 - E2, O2 = O2 > z2 ? z2 : O2, (g2 = 1 << (v2 = S2 - E2)) > m2 + 1 && (g2 -= m2 + 1, T2 = S2, v2 < O2)) for (; ++v2 < O2 && !((g2 <<= 1) <= r2[++T2]); ) g2 -= r2[T2];
3096
- if (O2 = 1 << v2, b2[0] + O2 > 1440) return t$1;
3097
- d2[x2] = D2 = b2[0], b2[0] += O2, 0 !== x2 ? (f2[x2] = k2, a2[0] = v2, a2[1] = z2, v2 = k2 >>> E2 - z2, a2[2] = D2 - d2[x2 - 1] - v2, _2.set(a2, 3 * (d2[x2 - 1] + v2))) : h3[0] = D2;
3098
- }
3099
- for (a2[1] = S2 - E2, U2 >= s2 ? a2[0] = 192 : p2[U2] < o2 ? (a2[0] = p2[U2] < 256 ? 0 : 96, a2[2] = p2[U2++]) : (a2[0] = c2[p2[U2] - o2] + 16 + 64, a2[2] = l2[p2[U2++] - o2]), g2 = 1 << S2 - E2, v2 = k2 >>> E2; v2 < O2; v2 += g2) _2.set(a2, 3 * (D2 + v2));
3100
- for (v2 = 1 << S2 - 1; k2 & v2; v2 >>>= 1) k2 ^= v2;
3101
- for (k2 ^= v2, A2 = (1 << E2) - 1; (k2 & A2) != f2[x2]; ) x2--, E2 -= z2, A2 = (1 << E2) - 1;
3102
- }
3103
- return 0 !== F2 && 1 != y2 ? n$1 : 0;
3104
- }
3105
- function w2(t2) {
3106
- let n2;
3107
- for (e2 || (e2 = [], i2 = [], r2 = new Int32Array(16), a2 = [], d2 = new Int32Array(u$1), f2 = new Int32Array(16)), i2.length < t2 && (i2 = []), n2 = 0; n2 < t2; n2++) i2[n2] = 0;
3108
- for (n2 = 0; n2 < 16; n2++) r2[n2] = 0;
3109
- for (n2 = 0; n2 < 3; n2++) a2[n2] = 0;
3110
- d2.set(r2.subarray(0, u$1), 0), f2.set(r2.subarray(0, 16), 0);
3111
- }
3112
- this.inflate_trees_bits = function(r3, a3, s2, o2, l2) {
3113
- let c2;
3114
- return w2(19), e2[0] = 0, c2 = h2(r3, 0, 19, 19, null, null, s2, a3, o2, e2, i2), c2 == t$1 ? l2.msg = "oversubscribed dynamic bit lengths tree" : c2 != n$1 && 0 !== a3[0] || (l2.msg = "incomplete dynamic bit lengths tree", c2 = t$1), c2;
3115
- }, this.inflate_trees_dynamic = function(r3, a3, u2, d3, f3, _2, b2, p2, m2) {
3116
- let g2;
3117
- return w2(288), e2[0] = 0, g2 = h2(u2, 0, r3, 257, s$1, o$1, _2, d3, p2, e2, i2), 0 != g2 || 0 === d3[0] ? (g2 == t$1 ? m2.msg = "oversubscribed literal/length tree" : -4 != g2 && (m2.msg = "incomplete literal/length tree", g2 = t$1), g2) : (w2(288), g2 = h2(u2, r3, a3, 0, l$1, c$1, b2, f3, p2, e2, i2), 0 != g2 || 0 === f3[0] && r3 > 257 ? (g2 == t$1 ? m2.msg = "oversubscribed distance tree" : g2 == n$1 ? (m2.msg = "incomplete distance tree", g2 = t$1) : -4 != g2 && (m2.msg = "empty distance tree with lengths", g2 = t$1), g2) : 0);
3118
- };
3119
- }
3120
- d$1.inflate_trees_fixed = function(e2, t2, n2, i2) {
3121
- return e2[0] = 9, t2[0] = 5, n2[0] = r$1, i2[0] = a$1, 0;
3122
- };
3123
- function f$1() {
3124
- const n2 = this;
3125
- let r2, a2, s2, o2, l2 = 0, c2 = 0, u2 = 0, d2 = 0, f2 = 0, h2 = 0, w2 = 0, _2 = 0, b2 = 0, p2 = 0;
3126
- function m2(e2, n3, r3, a3, s3, o3, l3, c3) {
3127
- let u3, d3, f3, h3, w3, _3, b3, p3, m3, g2, y2, x2, k2, v2, S2, z2;
3128
- b3 = c3.next_in_index, p3 = c3.avail_in, w3 = l3.bitb, _3 = l3.bitk, m3 = l3.write, g2 = m3 < l3.read ? l3.read - m3 - 1 : l3.end - m3, y2 = i$1[e2], x2 = i$1[n3];
3129
- do {
3130
- for (; _3 < 20; ) p3--, w3 |= (255 & c3.read_byte(b3++)) << _3, _3 += 8;
3131
- if (u3 = w3 & y2, d3 = r3, f3 = a3, z2 = 3 * (f3 + u3), 0 !== (h3 = d3[z2])) for (; ; ) {
3132
- if (w3 >>= d3[z2 + 1], _3 -= d3[z2 + 1], 16 & h3) {
3133
- for (h3 &= 15, k2 = d3[z2 + 2] + (w3 & i$1[h3]), w3 >>= h3, _3 -= h3; _3 < 15; ) p3--, w3 |= (255 & c3.read_byte(b3++)) << _3, _3 += 8;
3134
- for (u3 = w3 & x2, d3 = s3, f3 = o3, z2 = 3 * (f3 + u3), h3 = d3[z2]; ; ) {
3135
- if (w3 >>= d3[z2 + 1], _3 -= d3[z2 + 1], 16 & h3) {
3136
- for (h3 &= 15; _3 < h3; ) p3--, w3 |= (255 & c3.read_byte(b3++)) << _3, _3 += 8;
3137
- if (v2 = d3[z2 + 2] + (w3 & i$1[h3]), w3 >>= h3, _3 -= h3, g2 -= k2, m3 >= v2) S2 = m3 - v2, m3 - S2 > 0 && 2 > m3 - S2 ? (l3.win[m3++] = l3.win[S2++], l3.win[m3++] = l3.win[S2++], k2 -= 2) : (l3.win.set(l3.win.subarray(S2, S2 + 2), m3), m3 += 2, S2 += 2, k2 -= 2);
3138
- else {
3139
- S2 = m3 - v2;
3140
- do {
3141
- S2 += l3.end;
3142
- } while (S2 < 0);
3143
- if (h3 = l3.end - S2, k2 > h3) {
3144
- if (k2 -= h3, m3 - S2 > 0 && h3 > m3 - S2) do {
3145
- l3.win[m3++] = l3.win[S2++];
3146
- } while (0 != --h3);
3147
- else l3.win.set(l3.win.subarray(S2, S2 + h3), m3), m3 += h3, S2 += h3, h3 = 0;
3148
- S2 = 0;
3149
- }
3150
- }
3151
- if (m3 - S2 > 0 && k2 > m3 - S2) do {
3152
- l3.win[m3++] = l3.win[S2++];
3153
- } while (0 != --k2);
3154
- else l3.win.set(l3.win.subarray(S2, S2 + k2), m3), m3 += k2, S2 += k2, k2 = 0;
3155
- break;
3156
- }
3157
- if (64 & h3) return c3.msg = "invalid distance code", k2 = c3.avail_in - p3, k2 = _3 >> 3 < k2 ? _3 >> 3 : k2, p3 += k2, b3 -= k2, _3 -= k2 << 3, l3.bitb = w3, l3.bitk = _3, c3.avail_in = p3, c3.total_in += b3 - c3.next_in_index, c3.next_in_index = b3, l3.write = m3, t$1;
3158
- u3 += d3[z2 + 2], u3 += w3 & i$1[h3], z2 = 3 * (f3 + u3), h3 = d3[z2];
3159
- }
3160
- break;
3161
- }
3162
- if (64 & h3) return 32 & h3 ? (k2 = c3.avail_in - p3, k2 = _3 >> 3 < k2 ? _3 >> 3 : k2, p3 += k2, b3 -= k2, _3 -= k2 << 3, l3.bitb = w3, l3.bitk = _3, c3.avail_in = p3, c3.total_in += b3 - c3.next_in_index, c3.next_in_index = b3, l3.write = m3, 1) : (c3.msg = "invalid literal/length code", k2 = c3.avail_in - p3, k2 = _3 >> 3 < k2 ? _3 >> 3 : k2, p3 += k2, b3 -= k2, _3 -= k2 << 3, l3.bitb = w3, l3.bitk = _3, c3.avail_in = p3, c3.total_in += b3 - c3.next_in_index, c3.next_in_index = b3, l3.write = m3, t$1);
3163
- if (u3 += d3[z2 + 2], u3 += w3 & i$1[h3], z2 = 3 * (f3 + u3), 0 === (h3 = d3[z2])) {
3164
- w3 >>= d3[z2 + 1], _3 -= d3[z2 + 1], l3.win[m3++] = d3[z2 + 2], g2--;
3165
- break;
3166
- }
3167
- }
3168
- else w3 >>= d3[z2 + 1], _3 -= d3[z2 + 1], l3.win[m3++] = d3[z2 + 2], g2--;
3169
- } while (g2 >= 258 && p3 >= 10);
3170
- return k2 = c3.avail_in - p3, k2 = _3 >> 3 < k2 ? _3 >> 3 : k2, p3 += k2, b3 -= k2, _3 -= k2 << 3, l3.bitb = w3, l3.bitk = _3, c3.avail_in = p3, c3.total_in += b3 - c3.next_in_index, c3.next_in_index = b3, l3.write = m3, 0;
3171
- }
3172
- n2.init = function(e2, t2, n3, i2, l3, c3) {
3173
- r2 = 0, w2 = e2, _2 = t2, s2 = n3, b2 = i2, o2 = l3, p2 = c3, a2 = null;
3174
- }, n2.proc = function(n3, g2, y2) {
3175
- let x2, k2, v2, S2, z2, A2, U2, D2 = 0, E2 = 0, T2 = 0;
3176
- for (T2 = g2.next_in_index, S2 = g2.avail_in, D2 = n3.bitb, E2 = n3.bitk, z2 = n3.write, A2 = z2 < n3.read ? n3.read - z2 - 1 : n3.end - z2; ; ) switch (r2) {
3177
- case 0:
3178
- if (A2 >= 258 && S2 >= 10 && (n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, y2 = m2(w2, _2, s2, b2, o2, p2, n3, g2), T2 = g2.next_in_index, S2 = g2.avail_in, D2 = n3.bitb, E2 = n3.bitk, z2 = n3.write, A2 = z2 < n3.read ? n3.read - z2 - 1 : n3.end - z2, 0 != y2)) {
3179
- r2 = 1 == y2 ? 7 : 9;
3180
- break;
3181
- }
3182
- u2 = w2, a2 = s2, c2 = b2, r2 = 1;
3183
- case 1:
3184
- for (x2 = u2; E2 < x2; ) {
3185
- if (0 === S2) return n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3186
- y2 = 0, S2--, D2 |= (255 & g2.read_byte(T2++)) << E2, E2 += 8;
3187
- }
3188
- if (k2 = 3 * (c2 + (D2 & i$1[x2])), D2 >>>= a2[k2 + 1], E2 -= a2[k2 + 1], v2 = a2[k2], 0 === v2) {
3189
- d2 = a2[k2 + 2], r2 = 6;
3190
- break;
3191
- }
3192
- if (16 & v2) {
3193
- f2 = 15 & v2, l2 = a2[k2 + 2], r2 = 2;
3194
- break;
3195
- }
3196
- if (!(64 & v2)) {
3197
- u2 = v2, c2 = k2 / 3 + a2[k2 + 2];
3198
- break;
3199
- }
3200
- if (32 & v2) {
3201
- r2 = 7;
3202
- break;
3203
- }
3204
- return r2 = 9, g2.msg = "invalid literal/length code", y2 = t$1, n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3205
- case 2:
3206
- for (x2 = f2; E2 < x2; ) {
3207
- if (0 === S2) return n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3208
- y2 = 0, S2--, D2 |= (255 & g2.read_byte(T2++)) << E2, E2 += 8;
3209
- }
3210
- l2 += D2 & i$1[x2], D2 >>= x2, E2 -= x2, u2 = _2, a2 = o2, c2 = p2, r2 = 3;
3211
- case 3:
3212
- for (x2 = u2; E2 < x2; ) {
3213
- if (0 === S2) return n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3214
- y2 = 0, S2--, D2 |= (255 & g2.read_byte(T2++)) << E2, E2 += 8;
3215
- }
3216
- if (k2 = 3 * (c2 + (D2 & i$1[x2])), D2 >>= a2[k2 + 1], E2 -= a2[k2 + 1], v2 = a2[k2], 16 & v2) {
3217
- f2 = 15 & v2, h2 = a2[k2 + 2], r2 = 4;
3218
- break;
3219
- }
3220
- if (!(64 & v2)) {
3221
- u2 = v2, c2 = k2 / 3 + a2[k2 + 2];
3222
- break;
3223
- }
3224
- return r2 = 9, g2.msg = "invalid distance code", y2 = t$1, n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3225
- case 4:
3226
- for (x2 = f2; E2 < x2; ) {
3227
- if (0 === S2) return n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3228
- y2 = 0, S2--, D2 |= (255 & g2.read_byte(T2++)) << E2, E2 += 8;
3229
- }
3230
- h2 += D2 & i$1[x2], D2 >>= x2, E2 -= x2, r2 = 5;
3231
- case 5:
3232
- for (U2 = z2 - h2; U2 < 0; ) U2 += n3.end;
3233
- for (; 0 !== l2; ) {
3234
- if (0 === A2 && (z2 == n3.end && 0 !== n3.read && (z2 = 0, A2 = z2 < n3.read ? n3.read - z2 - 1 : n3.end - z2), 0 === A2 && (n3.write = z2, y2 = n3.inflate_flush(g2, y2), z2 = n3.write, A2 = z2 < n3.read ? n3.read - z2 - 1 : n3.end - z2, z2 == n3.end && 0 !== n3.read && (z2 = 0, A2 = z2 < n3.read ? n3.read - z2 - 1 : n3.end - z2), 0 === A2))) return n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3235
- n3.win[z2++] = n3.win[U2++], A2--, U2 == n3.end && (U2 = 0), l2--;
3236
- }
3237
- r2 = 0;
3238
- break;
3239
- case 6:
3240
- if (0 === A2 && (z2 == n3.end && 0 !== n3.read && (z2 = 0, A2 = z2 < n3.read ? n3.read - z2 - 1 : n3.end - z2), 0 === A2 && (n3.write = z2, y2 = n3.inflate_flush(g2, y2), z2 = n3.write, A2 = z2 < n3.read ? n3.read - z2 - 1 : n3.end - z2, z2 == n3.end && 0 !== n3.read && (z2 = 0, A2 = z2 < n3.read ? n3.read - z2 - 1 : n3.end - z2), 0 === A2))) return n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3241
- y2 = 0, n3.win[z2++] = d2, A2--, r2 = 0;
3242
- break;
3243
- case 7:
3244
- if (E2 > 7 && (E2 -= 8, S2++, T2--), n3.write = z2, y2 = n3.inflate_flush(g2, y2), z2 = n3.write, A2 = z2 < n3.read ? n3.read - z2 - 1 : n3.end - z2, n3.read != n3.write) return n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3245
- r2 = 8;
3246
- case 8:
3247
- return y2 = 1, n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3248
- case 9:
3249
- return y2 = t$1, n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3250
- default:
3251
- return y2 = e$1, n3.bitb = D2, n3.bitk = E2, g2.avail_in = S2, g2.total_in += T2 - g2.next_in_index, g2.next_in_index = T2, n3.write = z2, n3.inflate_flush(g2, y2);
3252
- }
3253
- }, n2.free = function() {
3254
- };
3255
- }
3256
- const h$1 = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
3257
- function w$1(r2, a2) {
3258
- const s2 = this;
3259
- let o2, l2 = 0, c2 = 0, u2 = 0, w2 = 0;
3260
- const _2 = [0], b2 = [0], p2 = new f$1();
3261
- let m2 = 0, g2 = new Int32Array(4320);
3262
- const y2 = new d$1();
3263
- s2.bitk = 0, s2.bitb = 0, s2.win = new Uint8Array(a2), s2.end = a2, s2.read = 0, s2.write = 0, s2.reset = function(e2, t2) {
3264
- t2 && (t2[0] = 0), 6 == l2 && p2.free(e2), l2 = 0, s2.bitk = 0, s2.bitb = 0, s2.read = s2.write = 0;
3265
- }, s2.reset(r2, null), s2.inflate_flush = function(e2, t2) {
3266
- let i2, r3, a3;
3267
- return r3 = e2.next_out_index, a3 = s2.read, i2 = (a3 <= s2.write ? s2.write : s2.end) - a3, i2 > e2.avail_out && (i2 = e2.avail_out), 0 !== i2 && t2 == n$1 && (t2 = 0), e2.avail_out -= i2, e2.total_out += i2, e2.next_out.set(s2.win.subarray(a3, a3 + i2), r3), r3 += i2, a3 += i2, a3 == s2.end && (a3 = 0, s2.write == s2.end && (s2.write = 0), i2 = s2.write - a3, i2 > e2.avail_out && (i2 = e2.avail_out), 0 !== i2 && t2 == n$1 && (t2 = 0), e2.avail_out -= i2, e2.total_out += i2, e2.next_out.set(s2.win.subarray(a3, a3 + i2), r3), r3 += i2, a3 += i2), e2.next_out_index = r3, s2.read = a3, t2;
3268
- }, s2.proc = function(n2, r3) {
3269
- let a3, f2, x2, k2, v2, S2, z2, A2;
3270
- for (k2 = n2.next_in_index, v2 = n2.avail_in, f2 = s2.bitb, x2 = s2.bitk, S2 = s2.write, z2 = S2 < s2.read ? s2.read - S2 - 1 : s2.end - S2; ; ) {
3271
- let U2, D2, E2, T2, F2, O2, C2, W2;
3272
- switch (l2) {
3273
- case 0:
3274
- for (; x2 < 3; ) {
3275
- if (0 === v2) return s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3276
- r3 = 0, v2--, f2 |= (255 & n2.read_byte(k2++)) << x2, x2 += 8;
3277
- }
3278
- switch (a3 = 7 & f2, m2 = 1 & a3, a3 >>> 1) {
3279
- case 0:
3280
- f2 >>>= 3, x2 -= 3, a3 = 7 & x2, f2 >>>= a3, x2 -= a3, l2 = 1;
3281
- break;
3282
- case 1:
3283
- U2 = [], D2 = [], E2 = [[]], T2 = [[]], d$1.inflate_trees_fixed(U2, D2, E2, T2), p2.init(U2[0], D2[0], E2[0], 0, T2[0], 0), f2 >>>= 3, x2 -= 3, l2 = 6;
3284
- break;
3285
- case 2:
3286
- f2 >>>= 3, x2 -= 3, l2 = 3;
3287
- break;
3288
- case 3:
3289
- return f2 >>>= 3, x2 -= 3, l2 = 9, n2.msg = "invalid block type", r3 = t$1, s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3290
- }
3291
- break;
3292
- case 1:
3293
- for (; x2 < 32; ) {
3294
- if (0 === v2) return s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3295
- r3 = 0, v2--, f2 |= (255 & n2.read_byte(k2++)) << x2, x2 += 8;
3296
- }
3297
- if ((~f2 >>> 16 & 65535) != (65535 & f2)) return l2 = 9, n2.msg = "invalid stored block lengths", r3 = t$1, s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3298
- c2 = 65535 & f2, f2 = x2 = 0, l2 = 0 !== c2 ? 2 : 0 !== m2 ? 7 : 0;
3299
- break;
3300
- case 2:
3301
- if (0 === v2) return s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3302
- if (0 === z2 && (S2 == s2.end && 0 !== s2.read && (S2 = 0, z2 = S2 < s2.read ? s2.read - S2 - 1 : s2.end - S2), 0 === z2 && (s2.write = S2, r3 = s2.inflate_flush(n2, r3), S2 = s2.write, z2 = S2 < s2.read ? s2.read - S2 - 1 : s2.end - S2, S2 == s2.end && 0 !== s2.read && (S2 = 0, z2 = S2 < s2.read ? s2.read - S2 - 1 : s2.end - S2), 0 === z2))) return s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3303
- if (r3 = 0, a3 = c2, a3 > v2 && (a3 = v2), a3 > z2 && (a3 = z2), s2.win.set(n2.read_buf(k2, a3), S2), k2 += a3, v2 -= a3, S2 += a3, z2 -= a3, 0 != (c2 -= a3)) break;
3304
- l2 = 0 !== m2 ? 7 : 0;
3305
- break;
3306
- case 3:
3307
- for (; x2 < 14; ) {
3308
- if (0 === v2) return s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3309
- r3 = 0, v2--, f2 |= (255 & n2.read_byte(k2++)) << x2, x2 += 8;
3310
- }
3311
- if (u2 = a3 = 16383 & f2, (31 & a3) > 29 || (a3 >> 5 & 31) > 29) return l2 = 9, n2.msg = "too many length or distance symbols", r3 = t$1, s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3312
- if (a3 = 258 + (31 & a3) + (a3 >> 5 & 31), !o2 || o2.length < a3) o2 = [];
3313
- else for (A2 = 0; A2 < a3; A2++) o2[A2] = 0;
3314
- f2 >>>= 14, x2 -= 14, w2 = 0, l2 = 4;
3315
- case 4:
3316
- for (; w2 < 4 + (u2 >>> 10); ) {
3317
- for (; x2 < 3; ) {
3318
- if (0 === v2) return s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3319
- r3 = 0, v2--, f2 |= (255 & n2.read_byte(k2++)) << x2, x2 += 8;
3320
- }
3321
- o2[h$1[w2++]] = 7 & f2, f2 >>>= 3, x2 -= 3;
3322
- }
3323
- for (; w2 < 19; ) o2[h$1[w2++]] = 0;
3324
- if (_2[0] = 7, a3 = y2.inflate_trees_bits(o2, _2, b2, g2, n2), 0 != a3) return (r3 = a3) == t$1 && (o2 = null, l2 = 9), s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3325
- w2 = 0, l2 = 5;
3326
- case 5:
3327
- for (; a3 = u2, !(w2 >= 258 + (31 & a3) + (a3 >> 5 & 31)); ) {
3328
- let e2, c3;
3329
- for (a3 = _2[0]; x2 < a3; ) {
3330
- if (0 === v2) return s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3331
- r3 = 0, v2--, f2 |= (255 & n2.read_byte(k2++)) << x2, x2 += 8;
3332
- }
3333
- if (a3 = g2[3 * (b2[0] + (f2 & i$1[a3])) + 1], c3 = g2[3 * (b2[0] + (f2 & i$1[a3])) + 2], c3 < 16) f2 >>>= a3, x2 -= a3, o2[w2++] = c3;
3334
- else {
3335
- for (A2 = 18 == c3 ? 7 : c3 - 14, e2 = 18 == c3 ? 11 : 3; x2 < a3 + A2; ) {
3336
- if (0 === v2) return s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3337
- r3 = 0, v2--, f2 |= (255 & n2.read_byte(k2++)) << x2, x2 += 8;
3338
- }
3339
- if (f2 >>>= a3, x2 -= a3, e2 += f2 & i$1[A2], f2 >>>= A2, x2 -= A2, A2 = w2, a3 = u2, A2 + e2 > 258 + (31 & a3) + (a3 >> 5 & 31) || 16 == c3 && A2 < 1) return o2 = null, l2 = 9, n2.msg = "invalid bit length repeat", r3 = t$1, s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3340
- c3 = 16 == c3 ? o2[A2 - 1] : 0;
3341
- do {
3342
- o2[A2++] = c3;
3343
- } while (0 != --e2);
3344
- w2 = A2;
3345
- }
3346
- }
3347
- if (b2[0] = -1, F2 = [], O2 = [], C2 = [], W2 = [], F2[0] = 9, O2[0] = 6, a3 = u2, a3 = y2.inflate_trees_dynamic(257 + (31 & a3), 1 + (a3 >> 5 & 31), o2, F2, O2, C2, W2, g2, n2), 0 != a3) return a3 == t$1 && (o2 = null, l2 = 9), r3 = a3, s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3348
- p2.init(F2[0], O2[0], g2, C2[0], g2, W2[0]), l2 = 6;
3349
- case 6:
3350
- if (s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, 1 != (r3 = p2.proc(s2, n2, r3))) return s2.inflate_flush(n2, r3);
3351
- if (r3 = 0, p2.free(n2), k2 = n2.next_in_index, v2 = n2.avail_in, f2 = s2.bitb, x2 = s2.bitk, S2 = s2.write, z2 = S2 < s2.read ? s2.read - S2 - 1 : s2.end - S2, 0 === m2) {
3352
- l2 = 0;
3353
- break;
3354
- }
3355
- l2 = 7;
3356
- case 7:
3357
- if (s2.write = S2, r3 = s2.inflate_flush(n2, r3), S2 = s2.write, z2 = S2 < s2.read ? s2.read - S2 - 1 : s2.end - S2, s2.read != s2.write) return s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3358
- l2 = 8;
3359
- case 8:
3360
- return r3 = 1, s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3361
- case 9:
3362
- return r3 = t$1, s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3363
- default:
3364
- return r3 = e$1, s2.bitb = f2, s2.bitk = x2, n2.avail_in = v2, n2.total_in += k2 - n2.next_in_index, n2.next_in_index = k2, s2.write = S2, s2.inflate_flush(n2, r3);
3365
- }
3366
- }
3367
- }, s2.free = function(e2) {
3368
- s2.reset(e2, null), s2.win = null, g2 = null;
3369
- }, s2.set_dictionary = function(e2, t2, n2) {
3370
- s2.win.set(e2.subarray(t2, t2 + n2), 0), s2.read = s2.write = n2;
3371
- }, s2.sync_point = function() {
3372
- return 1 == l2 ? 1 : 0;
3373
- };
3374
- }
3375
- const _ = 13, b$1 = [0, 0, 255, 255];
3376
- function p$1() {
3377
- const i2 = this;
3378
- function r2(t2) {
3379
- return t2 && t2.istate ? (t2.total_in = t2.total_out = 0, t2.msg = null, t2.istate.mode = 7, t2.istate.blocks.reset(t2, null), 0) : e$1;
3380
- }
3381
- i2.mode = 0, i2.method = 0, i2.was = [0], i2.need = 0, i2.marker = 0, i2.wbits = 0, i2.inflateEnd = function(e2) {
3382
- return i2.blocks && i2.blocks.free(e2), i2.blocks = null, 0;
3383
- }, i2.inflateInit = function(t2, n2) {
3384
- return t2.msg = null, i2.blocks = null, n2 < 8 || n2 > 15 ? (i2.inflateEnd(t2), e$1) : (i2.wbits = n2, t2.istate.blocks = new w$1(t2, 1 << n2), r2(t2), 0);
3385
- }, i2.inflate = function(i3, r3) {
3386
- let a2, s2;
3387
- if (!i3 || !i3.istate || !i3.next_in) return e$1;
3388
- const o2 = i3.istate;
3389
- for (r3 = 4 == r3 ? n$1 : 0, a2 = n$1; ; ) switch (o2.mode) {
3390
- case 0:
3391
- if (0 === i3.avail_in) return a2;
3392
- if (a2 = r3, i3.avail_in--, i3.total_in++, 8 != (15 & (o2.method = i3.read_byte(i3.next_in_index++)))) {
3393
- o2.mode = _, i3.msg = "unknown compression method", o2.marker = 5;
3394
- break;
3395
- }
3396
- if (8 + (o2.method >> 4) > o2.wbits) {
3397
- o2.mode = _, i3.msg = "invalid win size", o2.marker = 5;
3398
- break;
3399
- }
3400
- o2.mode = 1;
3401
- case 1:
3402
- if (0 === i3.avail_in) return a2;
3403
- if (a2 = r3, i3.avail_in--, i3.total_in++, s2 = 255 & i3.read_byte(i3.next_in_index++), ((o2.method << 8) + s2) % 31 != 0) {
3404
- o2.mode = _, i3.msg = "incorrect header check", o2.marker = 5;
3405
- break;
3406
- }
3407
- if (!(32 & s2)) {
3408
- o2.mode = 7;
3409
- break;
3410
- }
3411
- o2.mode = 2;
3412
- case 2:
3413
- if (0 === i3.avail_in) return a2;
3414
- a2 = r3, i3.avail_in--, i3.total_in++, o2.need = (255 & i3.read_byte(i3.next_in_index++)) << 24 & 4278190080, o2.mode = 3;
3415
- case 3:
3416
- if (0 === i3.avail_in) return a2;
3417
- a2 = r3, i3.avail_in--, i3.total_in++, o2.need += (255 & i3.read_byte(i3.next_in_index++)) << 16 & 16711680, o2.mode = 4;
3418
- case 4:
3419
- if (0 === i3.avail_in) return a2;
3420
- a2 = r3, i3.avail_in--, i3.total_in++, o2.need += (255 & i3.read_byte(i3.next_in_index++)) << 8 & 65280, o2.mode = 5;
3421
- case 5:
3422
- return 0 === i3.avail_in ? a2 : (a2 = r3, i3.avail_in--, i3.total_in++, o2.need += 255 & i3.read_byte(i3.next_in_index++), o2.mode = 6, 2);
3423
- case 6:
3424
- return o2.mode = _, i3.msg = "need dictionary", o2.marker = 0, e$1;
3425
- case 7:
3426
- if (a2 = o2.blocks.proc(i3, a2), a2 == t$1) {
3427
- o2.mode = _, o2.marker = 0;
3428
- break;
3429
- }
3430
- if (0 == a2 && (a2 = r3), 1 != a2) return a2;
3431
- a2 = r3, o2.blocks.reset(i3, o2.was), o2.mode = 12;
3432
- case 12:
3433
- return i3.avail_in = 0, 1;
3434
- case _:
3435
- return t$1;
3436
- default:
3437
- return e$1;
3438
- }
3439
- }, i2.inflateSetDictionary = function(t2, n2, i3) {
3440
- let r3 = 0, a2 = i3;
3441
- if (!t2 || !t2.istate || 6 != t2.istate.mode) return e$1;
3442
- const s2 = t2.istate;
3443
- return a2 >= 1 << s2.wbits && (a2 = (1 << s2.wbits) - 1, r3 = i3 - a2), s2.blocks.set_dictionary(n2, r3, a2), s2.mode = 7, 0;
3444
- }, i2.inflateSync = function(i3) {
3445
- let a2, s2, o2, l2, c2;
3446
- if (!i3 || !i3.istate) return e$1;
3447
- const u2 = i3.istate;
3448
- if (u2.mode != _ && (u2.mode = _, u2.marker = 0), 0 === (a2 = i3.avail_in)) return n$1;
3449
- for (s2 = i3.next_in_index, o2 = u2.marker; 0 !== a2 && o2 < 4; ) i3.read_byte(s2) == b$1[o2] ? o2++ : o2 = 0 !== i3.read_byte(s2) ? 0 : 4 - o2, s2++, a2--;
3450
- return i3.total_in += s2 - i3.next_in_index, i3.next_in_index = s2, i3.avail_in = a2, u2.marker = o2, 4 != o2 ? t$1 : (l2 = i3.total_in, c2 = i3.total_out, r2(i3), i3.total_in = l2, i3.total_out = c2, u2.mode = 7, 0);
3451
- }, i2.inflateSyncPoint = function(t2) {
3452
- return t2 && t2.istate && t2.istate.blocks ? t2.istate.blocks.sync_point() : e$1;
3453
- };
3454
- }
3455
- function m$1() {
3456
- }
3457
- m$1.prototype = { inflateInit(e2) {
3458
- const t2 = this;
3459
- return t2.istate = new p$1(), e2 || (e2 = 15), t2.istate.inflateInit(t2, e2);
3460
- }, inflate(t2) {
3461
- const n2 = this;
3462
- return n2.istate ? n2.istate.inflate(n2, t2) : e$1;
3463
- }, inflateEnd() {
3464
- const t2 = this;
3465
- if (!t2.istate) return e$1;
3466
- const n2 = t2.istate.inflateEnd(t2);
3467
- return t2.istate = null, n2;
3468
- }, inflateSync() {
3469
- const t2 = this;
3470
- return t2.istate ? t2.istate.inflateSync(t2) : e$1;
3471
- }, inflateSetDictionary(t2, n2) {
3472
- const i2 = this;
3473
- return i2.istate ? i2.istate.inflateSetDictionary(i2, t2, n2) : e$1;
3474
- }, read_byte(e2) {
3475
- return this.next_in[e2];
3476
- }, read_buf(e2, t2) {
3477
- return this.next_in.subarray(e2, e2 + t2);
3478
- } };
3479
- const g$1 = 4294967295, y$1 = 65535, x$1 = 33639248, k$1 = 101075792, v$1 = 22, S = void 0, z$1 = "undefined", A$1 = "function";
3480
- let U$1 = class U {
3481
- constructor(e2) {
3482
- return class extends TransformStream {
3483
- constructor(t2, n2) {
3484
- const i2 = new e2(n2);
3485
- super({ transform(e3, t3) {
3486
- t3.enqueue(i2.append(e3));
3487
- }, flush(e3) {
3488
- const t3 = i2.flush();
3489
- t3 && e3.enqueue(t3);
3490
- } });
3491
- }
3492
- };
3493
- }
3494
- };
3495
- let D = 2;
3084
+ const e$1 = 4294967295, t$1 = 65535, r$1 = 134695760, n$1 = r$1, s$1 = 33639248, a$1 = 101075792, i$1 = 22, o$1 = 16384, c$1 = void 0, l$1 = 1 / 0, u$1 = "undefined", d$1 = "function";
3085
+ let f$1 = 2;
3496
3086
  try {
3497
- typeof navigator != z$1 && navigator.hardwareConcurrency && (D = navigator.hardwareConcurrency);
3498
- } catch (e2) {
3087
+ typeof navigator != u$1 && navigator.hardwareConcurrency && (f$1 = navigator.hardwareConcurrency);
3088
+ } catch {
3499
3089
  }
3500
- const E$1 = { chunkSize: 524288, maxWorkers: D, terminateWorkerTimeout: 5e3, useWebWorkers: true, useCompressionStream: true, workerScripts: S, CompressionStreamNative: typeof CompressionStream != z$1 && CompressionStream, DecompressionStreamNative: typeof DecompressionStream != z$1 && DecompressionStream }, T$1 = Object.assign({}, E$1);
3501
- function F(e2) {
3502
- const { baseURL: t2, chunkSize: n2, maxWorkers: i2, terminateWorkerTimeout: r2, useCompressionStream: a2, useWebWorkers: s2, Deflate: o2, Inflate: l2, CompressionStream: c2, DecompressionStream: u2, workerScripts: d2 } = e2;
3503
- if (O("baseURL", t2), O("chunkSize", n2), O("maxWorkers", i2), O("terminateWorkerTimeout", r2), O("useCompressionStream", a2), O("useWebWorkers", s2), o2 && (T$1.CompressionStream = new U$1(o2)), l2 && (T$1.DecompressionStream = new U$1(l2)), O("CompressionStream", c2), O("DecompressionStream", u2), d2 !== S) {
3504
- const { deflate: e3, inflate: t3 } = d2;
3505
- if ((e3 || t3) && (T$1.workerScripts || (T$1.workerScripts = {})), e3) {
3506
- if (!Array.isArray(e3)) throw new Error("workerScripts.deflate must be an array");
3507
- T$1.workerScripts.deflate = e3;
3508
- }
3509
- if (t3) {
3510
- if (!Array.isArray(t3)) throw new Error("workerScripts.inflate must be an array");
3511
- T$1.workerScripts.inflate = t3;
3512
- }
3513
- }
3090
+ const h$1 = { workerURI: "./core/web-worker-wasm.js", wasmURI: "./core/streams/zlib-wasm/zlib-streams.wasm", chunkSize: 65536, maxWorkers: f$1, terminateWorkerTimeout: 5e3, useWebWorkers: true, useCompressionStream: true, CompressionStream: typeof CompressionStream != u$1 && CompressionStream, DecompressionStream: typeof DecompressionStream != u$1 && DecompressionStream }, p$1 = Object.assign({}, h$1);
3091
+ function w$1(e2) {
3092
+ const { baseURI: t2, chunkSize: r2, maxWorkers: n2, terminateWorkerTimeout: s2, useCompressionStream: a2, useWebWorkers: i2, CompressionStream: o2, DecompressionStream: c2, CompressionStreamZlib: l2, DecompressionStreamZlib: u2, workerURI: d2, wasmURI: f2 } = e2;
3093
+ g$1("baseURI", t2), g$1("wasmURI", f2), g$1("workerURI", d2), g$1("chunkSize", r2), g$1("maxWorkers", n2), g$1("terminateWorkerTimeout", s2), g$1("useCompressionStream", a2), g$1("useWebWorkers", i2), g$1("CompressionStream", o2), g$1("DecompressionStream", c2), g$1("CompressionStreamZlib", l2), g$1("DecompressionStreamZlib", u2);
3514
3094
  }
3515
- function O(e2, t2) {
3516
- t2 !== S && (T$1[e2] = t2);
3095
+ function g$1(e2, t2) {
3096
+ t2 !== c$1 && (p$1[e2] = t2);
3517
3097
  }
3518
- const C = [];
3098
+ const m$1 = [];
3519
3099
  for (let e2 = 0; e2 < 256; e2++) {
3520
3100
  let t2 = e2;
3521
3101
  for (let e3 = 0; e3 < 8; e3++) 1 & t2 ? t2 = t2 >>> 1 ^ 3988292384 : t2 >>>= 1;
3522
- C[e2] = t2;
3102
+ m$1[e2] = t2;
3523
3103
  }
3524
- class W {
3104
+ let y$1 = class y {
3525
3105
  constructor(e2) {
3526
3106
  this.crc = e2 || -1;
3527
3107
  }
3528
3108
  append(e2) {
3529
3109
  let t2 = 0 | this.crc;
3530
- for (let n2 = 0, i2 = 0 | e2.length; n2 < i2; n2++) t2 = t2 >>> 8 ^ C[255 & (t2 ^ e2[n2])];
3110
+ for (let r2 = 0, n2 = 0 | e2.length; r2 < n2; r2++) t2 = t2 >>> 8 ^ m$1[255 & (t2 ^ e2[r2])];
3531
3111
  this.crc = t2;
3532
3112
  }
3533
3113
  get() {
3534
3114
  return ~this.crc;
3535
3115
  }
3536
- }
3537
- class j extends TransformStream {
3116
+ };
3117
+ let b$1 = class b extends TransformStream {
3538
3118
  constructor() {
3539
3119
  let e2;
3540
- const t2 = new W();
3541
- super({ transform(e3, n2) {
3542
- t2.append(e3), n2.enqueue(e3);
3120
+ const t2 = new y$1();
3121
+ super({ transform(e3, r2) {
3122
+ t2.append(e3), r2.enqueue(e3);
3543
3123
  }, flush() {
3544
- const n2 = new Uint8Array(4);
3545
- new DataView(n2.buffer).setUint32(0, t2.get()), e2.value = n2;
3124
+ const r2 = new Uint8Array(4);
3125
+ new DataView(r2.buffer).setUint32(0, t2.get()), e2.value = r2;
3546
3126
  } }), e2 = this;
3547
3127
  }
3548
- }
3549
- const M = { concat(e2, t2) {
3128
+ };
3129
+ const S = { concat(e2, t2) {
3550
3130
  if (0 === e2.length || 0 === t2.length) return e2.concat(t2);
3551
- const n2 = e2[e2.length - 1], i2 = M.getPartial(n2);
3552
- return 32 === i2 ? e2.concat(t2) : M._shiftRight(t2, i2, 0 | n2, e2.slice(0, e2.length - 1));
3131
+ const r2 = e2[e2.length - 1], n2 = S.getPartial(r2);
3132
+ return 32 === n2 ? e2.concat(t2) : S._shiftRight(t2, n2, 0 | r2, e2.slice(0, e2.length - 1));
3553
3133
  }, bitLength(e2) {
3554
3134
  const t2 = e2.length;
3555
3135
  if (0 === t2) return 0;
3556
- const n2 = e2[t2 - 1];
3557
- return 32 * (t2 - 1) + M.getPartial(n2);
3136
+ const r2 = e2[t2 - 1];
3137
+ return 32 * (t2 - 1) + S.getPartial(r2);
3558
3138
  }, clamp(e2, t2) {
3559
3139
  if (32 * e2.length < t2) return e2;
3560
- const n2 = (e2 = e2.slice(0, Math.ceil(t2 / 32))).length;
3561
- return t2 &= 31, n2 > 0 && t2 && (e2[n2 - 1] = M.partial(t2, e2[n2 - 1] & 2147483648 >> t2 - 1, 1)), e2;
3562
- }, partial: (e2, t2, n2) => 32 === e2 ? t2 : (n2 ? 0 | t2 : t2 << 32 - e2) + 1099511627776 * e2, getPartial: (e2) => Math.round(e2 / 1099511627776) || 32, _shiftRight(e2, t2, n2, i2) {
3563
- for (void 0 === i2 && (i2 = []); t2 >= 32; t2 -= 32) i2.push(n2), n2 = 0;
3564
- if (0 === t2) return i2.concat(e2);
3565
- for (let r3 = 0; r3 < e2.length; r3++) i2.push(n2 | e2[r3] >>> t2), n2 = e2[r3] << 32 - t2;
3566
- const r2 = e2.length ? e2[e2.length - 1] : 0, a2 = M.getPartial(r2);
3567
- return i2.push(M.partial(t2 + a2 & 31, t2 + a2 > 32 ? n2 : i2.pop(), 1)), i2;
3568
- } }, L = { bytes: { fromBits(e2) {
3569
- const t2 = M.bitLength(e2) / 8, n2 = new Uint8Array(t2);
3570
- let i2;
3571
- for (let r2 = 0; r2 < t2; r2++) 3 & r2 || (i2 = e2[r2 / 4]), n2[r2] = i2 >>> 24, i2 <<= 8;
3572
- return n2;
3140
+ const r2 = (e2 = e2.slice(0, Math.ceil(t2 / 32))).length;
3141
+ return t2 &= 31, r2 > 0 && t2 && (e2[r2 - 1] = S.partial(t2, e2[r2 - 1] & 2147483648 >> t2 - 1, 1)), e2;
3142
+ }, partial: (e2, t2, r2) => 32 === e2 ? t2 : (r2 ? 0 | t2 : t2 << 32 - e2) + 1099511627776 * e2, getPartial: (e2) => Math.round(e2 / 1099511627776) || 32, _shiftRight(e2, t2, r2, n2) {
3143
+ for (void 0 === n2 && (n2 = []); t2 >= 32; t2 -= 32) n2.push(r2), r2 = 0;
3144
+ if (0 === t2) return n2.concat(e2);
3145
+ for (let s3 = 0; s3 < e2.length; s3++) n2.push(r2 | e2[s3] >>> t2), r2 = e2[s3] << 32 - t2;
3146
+ const s2 = e2.length ? e2[e2.length - 1] : 0, a2 = S.getPartial(s2);
3147
+ return n2.push(S.partial(t2 + a2 & 31, t2 + a2 > 32 ? r2 : n2.pop(), 1)), n2;
3148
+ } }, k$1 = { bytes: { fromBits(e2) {
3149
+ const t2 = S.bitLength(e2) / 8, r2 = new Uint8Array(t2);
3150
+ let n2;
3151
+ for (let s2 = 0; s2 < t2; s2++) 3 & s2 || (n2 = e2[s2 / 4]), r2[s2] = n2 >>> 24, n2 <<= 8;
3152
+ return r2;
3573
3153
  }, toBits(e2) {
3574
3154
  const t2 = [];
3575
- let n2, i2 = 0;
3576
- for (n2 = 0; n2 < e2.length; n2++) i2 = i2 << 8 | e2[n2], 3 & ~n2 || (t2.push(i2), i2 = 0);
3577
- return 3 & n2 && t2.push(M.partial(8 * (3 & n2), i2)), t2;
3578
- } } }, P = { sha1: class {
3155
+ let r2, n2 = 0;
3156
+ for (r2 = 0; r2 < e2.length; r2++) n2 = n2 << 8 | e2[r2], 3 & ~r2 || (t2.push(n2), n2 = 0);
3157
+ return 3 & r2 && t2.push(S.partial(8 * (3 & r2), n2)), t2;
3158
+ } } }, z$1 = { sha1: class {
3579
3159
  constructor(e2) {
3580
3160
  const t2 = this;
3581
3161
  t2.blockSize = 512, t2._init = [1732584193, 4023233417, 2562383102, 271733878, 3285377520], t2._key = [1518500249, 1859775393, 2400959708, 3395469782], e2 ? (t2._h = e2._h.slice(0), t2._buffer = e2._buffer.slice(0), t2._length = e2._length) : t2.reset();
@@ -3586,54 +3166,54 @@
3586
3166
  }
3587
3167
  update(e2) {
3588
3168
  const t2 = this;
3589
- "string" == typeof e2 && (e2 = L.utf8String.toBits(e2));
3590
- const n2 = t2._buffer = M.concat(t2._buffer, e2), i2 = t2._length, r2 = t2._length = i2 + M.bitLength(e2);
3591
- if (r2 > 9007199254740991) throw new Error("Cannot hash more than 2^53 - 1 bits");
3592
- const a2 = new Uint32Array(n2);
3593
- let s2 = 0;
3594
- for (let e3 = t2.blockSize + i2 - (t2.blockSize + i2 & t2.blockSize - 1); e3 <= r2; e3 += t2.blockSize) t2._block(a2.subarray(16 * s2, 16 * (s2 + 1))), s2 += 1;
3595
- return n2.splice(0, 16 * s2), t2;
3169
+ "string" == typeof e2 && (e2 = k$1.utf8String.toBits(e2));
3170
+ const r2 = t2._buffer = S.concat(t2._buffer, e2), n2 = t2._length, s2 = t2._length = n2 + S.bitLength(e2);
3171
+ if (s2 > 9007199254740991) throw new Error("Cannot hash more than 2^53 - 1 bits");
3172
+ const a2 = new Uint32Array(r2);
3173
+ let i2 = 0;
3174
+ for (let e3 = t2.blockSize + n2 - (t2.blockSize + n2 & t2.blockSize - 1); e3 <= s2; e3 += t2.blockSize) t2._block(a2.subarray(16 * i2, 16 * (i2 + 1))), i2 += 1;
3175
+ return r2.splice(0, 16 * i2), t2;
3596
3176
  }
3597
3177
  finalize() {
3598
3178
  const e2 = this;
3599
3179
  let t2 = e2._buffer;
3600
- const n2 = e2._h;
3601
- t2 = M.concat(t2, [M.partial(1, 1)]);
3180
+ const r2 = e2._h;
3181
+ t2 = S.concat(t2, [S.partial(1, 1)]);
3602
3182
  for (let e3 = t2.length + 2; 15 & e3; e3++) t2.push(0);
3603
3183
  for (t2.push(Math.floor(e2._length / 4294967296)), t2.push(0 | e2._length); t2.length; ) e2._block(t2.splice(0, 16));
3604
- return e2.reset(), n2;
3184
+ return e2.reset(), r2;
3605
3185
  }
3606
- _f(e2, t2, n2, i2) {
3607
- return e2 <= 19 ? t2 & n2 | ~t2 & i2 : e2 <= 39 ? t2 ^ n2 ^ i2 : e2 <= 59 ? t2 & n2 | t2 & i2 | n2 & i2 : e2 <= 79 ? t2 ^ n2 ^ i2 : void 0;
3186
+ _f(e2, t2, r2, n2) {
3187
+ return e2 <= 19 ? t2 & r2 | ~t2 & n2 : e2 <= 39 ? t2 ^ r2 ^ n2 : e2 <= 59 ? t2 & r2 | t2 & n2 | r2 & n2 : e2 <= 79 ? t2 ^ r2 ^ n2 : void 0;
3608
3188
  }
3609
3189
  _S(e2, t2) {
3610
3190
  return t2 << e2 | t2 >>> 32 - e2;
3611
3191
  }
3612
3192
  _block(e2) {
3613
- const t2 = this, n2 = t2._h, i2 = Array(80);
3614
- for (let t3 = 0; t3 < 16; t3++) i2[t3] = e2[t3];
3615
- let r2 = n2[0], a2 = n2[1], s2 = n2[2], o2 = n2[3], l2 = n2[4];
3193
+ const t2 = this, r2 = t2._h, n2 = Array(80);
3194
+ for (let t3 = 0; t3 < 16; t3++) n2[t3] = e2[t3];
3195
+ let s2 = r2[0], a2 = r2[1], i2 = r2[2], o2 = r2[3], c2 = r2[4];
3616
3196
  for (let e3 = 0; e3 <= 79; e3++) {
3617
- e3 >= 16 && (i2[e3] = t2._S(1, i2[e3 - 3] ^ i2[e3 - 8] ^ i2[e3 - 14] ^ i2[e3 - 16]));
3618
- const n3 = t2._S(5, r2) + t2._f(e3, a2, s2, o2) + l2 + i2[e3] + t2._key[Math.floor(e3 / 20)] | 0;
3619
- l2 = o2, o2 = s2, s2 = t2._S(30, a2), a2 = r2, r2 = n3;
3197
+ e3 >= 16 && (n2[e3] = t2._S(1, n2[e3 - 3] ^ n2[e3 - 8] ^ n2[e3 - 14] ^ n2[e3 - 16]));
3198
+ const r3 = t2._S(5, s2) + t2._f(e3, a2, i2, o2) + c2 + n2[e3] + t2._key[Math.floor(e3 / 20)] | 0;
3199
+ c2 = o2, o2 = i2, i2 = t2._S(30, a2), a2 = s2, s2 = r3;
3620
3200
  }
3621
- n2[0] = n2[0] + r2 | 0, n2[1] = n2[1] + a2 | 0, n2[2] = n2[2] + s2 | 0, n2[3] = n2[3] + o2 | 0, n2[4] = n2[4] + l2 | 0;
3201
+ r2[0] = r2[0] + s2 | 0, r2[1] = r2[1] + a2 | 0, r2[2] = r2[2] + i2 | 0, r2[3] = r2[3] + o2 | 0, r2[4] = r2[4] + c2 | 0;
3622
3202
  }
3623
- } }, R = { aes: class {
3203
+ } }, x$1 = { aes: class {
3624
3204
  constructor(e2) {
3625
3205
  const t2 = this;
3626
3206
  t2._tables = [[[], [], [], [], []], [[], [], [], [], []]], t2._tables[0][0][0] || t2._precompute();
3627
- const n2 = t2._tables[0][4], i2 = t2._tables[1], r2 = e2.length;
3628
- let a2, s2, o2, l2 = 1;
3629
- if (4 !== r2 && 6 !== r2 && 8 !== r2) throw new Error("invalid aes key size");
3630
- for (t2._key = [s2 = e2.slice(0), o2 = []], a2 = r2; a2 < 4 * r2 + 28; a2++) {
3631
- let e3 = s2[a2 - 1];
3632
- (a2 % r2 == 0 || 8 === r2 && a2 % r2 == 4) && (e3 = n2[e3 >>> 24] << 24 ^ n2[e3 >> 16 & 255] << 16 ^ n2[e3 >> 8 & 255] << 8 ^ n2[255 & e3], a2 % r2 == 0 && (e3 = e3 << 8 ^ e3 >>> 24 ^ l2 << 24, l2 = l2 << 1 ^ 283 * (l2 >> 7))), s2[a2] = s2[a2 - r2] ^ e3;
3207
+ const r2 = t2._tables[0][4], n2 = t2._tables[1], s2 = e2.length;
3208
+ let a2, i2, o2, c2 = 1;
3209
+ if (4 !== s2 && 6 !== s2 && 8 !== s2) throw new Error("invalid aes key size");
3210
+ for (t2._key = [i2 = e2.slice(0), o2 = []], a2 = s2; a2 < 4 * s2 + 28; a2++) {
3211
+ let e3 = i2[a2 - 1];
3212
+ (a2 % s2 === 0 || 8 === s2 && a2 % s2 === 4) && (e3 = r2[e3 >>> 24] << 24 ^ r2[e3 >> 16 & 255] << 16 ^ r2[e3 >> 8 & 255] << 8 ^ r2[255 & e3], a2 % s2 === 0 && (e3 = e3 << 8 ^ e3 >>> 24 ^ c2 << 24, c2 = c2 << 1 ^ 283 * (c2 >> 7))), i2[a2] = i2[a2 - s2] ^ e3;
3633
3213
  }
3634
3214
  for (let e3 = 0; a2; e3++, a2--) {
3635
- const t3 = s2[3 & e3 ? a2 : a2 - 4];
3636
- o2[e3] = a2 <= 4 || e3 < 4 ? t3 : i2[0][n2[t3 >>> 24]] ^ i2[1][n2[t3 >> 16 & 255]] ^ i2[2][n2[t3 >> 8 & 255]] ^ i2[3][n2[255 & t3]];
3215
+ const t3 = i2[3 & e3 ? a2 : a2 - 4];
3216
+ o2[e3] = a2 <= 4 || e3 < 4 ? t3 : n2[0][r2[t3 >>> 24]] ^ n2[1][r2[t3 >> 16 & 255]] ^ n2[2][r2[t3 >> 8 & 255]] ^ n2[3][r2[255 & t3]];
3637
3217
  }
3638
3218
  }
3639
3219
  encrypt(e2) {
@@ -3643,40 +3223,40 @@
3643
3223
  return this._crypt(e2, 1);
3644
3224
  }
3645
3225
  _precompute() {
3646
- const e2 = this._tables[0], t2 = this._tables[1], n2 = e2[4], i2 = t2[4], r2 = [], a2 = [];
3647
- let s2, o2, l2, c2;
3648
- for (let e3 = 0; e3 < 256; e3++) a2[(r2[e3] = e3 << 1 ^ 283 * (e3 >> 7)) ^ e3] = e3;
3649
- for (let u2 = s2 = 0; !n2[u2]; u2 ^= o2 || 1, s2 = a2[s2] || 1) {
3650
- let a3 = s2 ^ s2 << 1 ^ s2 << 2 ^ s2 << 3 ^ s2 << 4;
3651
- a3 = a3 >> 8 ^ 255 & a3 ^ 99, n2[u2] = a3, i2[a3] = u2, c2 = r2[l2 = r2[o2 = r2[u2]]];
3652
- let d2 = 16843009 * c2 ^ 65537 * l2 ^ 257 * o2 ^ 16843008 * u2, f2 = 257 * r2[a3] ^ 16843008 * a3;
3653
- for (let n3 = 0; n3 < 4; n3++) e2[n3][u2] = f2 = f2 << 24 ^ f2 >>> 8, t2[n3][a3] = d2 = d2 << 24 ^ d2 >>> 8;
3226
+ const e2 = this._tables[0], t2 = this._tables[1], r2 = e2[4], n2 = t2[4], s2 = [], a2 = [];
3227
+ let i2, o2, c2, l2;
3228
+ for (let e3 = 0; e3 < 256; e3++) a2[(s2[e3] = e3 << 1 ^ 283 * (e3 >> 7)) ^ e3] = e3;
3229
+ for (let u2 = i2 = 0; !r2[u2]; u2 ^= o2 || 1, i2 = a2[i2] || 1) {
3230
+ let a3 = i2 ^ i2 << 1 ^ i2 << 2 ^ i2 << 3 ^ i2 << 4;
3231
+ a3 = a3 >> 8 ^ 255 & a3 ^ 99, r2[u2] = a3, n2[a3] = u2, l2 = s2[c2 = s2[o2 = s2[u2]]];
3232
+ let d2 = 16843009 * l2 ^ 65537 * c2 ^ 257 * o2 ^ 16843008 * u2, f2 = 257 * s2[a3] ^ 16843008 * a3;
3233
+ for (let r3 = 0; r3 < 4; r3++) e2[r3][u2] = f2 = f2 << 24 ^ f2 >>> 8, t2[r3][a3] = d2 = d2 << 24 ^ d2 >>> 8;
3654
3234
  }
3655
- for (let n3 = 0; n3 < 5; n3++) e2[n3] = e2[n3].slice(0), t2[n3] = t2[n3].slice(0);
3235
+ for (let r3 = 0; r3 < 5; r3++) e2[r3] = e2[r3].slice(0), t2[r3] = t2[r3].slice(0);
3656
3236
  }
3657
3237
  _crypt(e2, t2) {
3658
3238
  if (4 !== e2.length) throw new Error("invalid aes block size");
3659
- const n2 = this._key[t2], i2 = n2.length / 4 - 2, r2 = [0, 0, 0, 0], a2 = this._tables[t2], s2 = a2[0], o2 = a2[1], l2 = a2[2], c2 = a2[3], u2 = a2[4];
3660
- let d2, f2, h2, w2 = e2[0] ^ n2[0], _2 = e2[t2 ? 3 : 1] ^ n2[1], b2 = e2[2] ^ n2[2], p2 = e2[t2 ? 1 : 3] ^ n2[3], m2 = 4;
3661
- for (let e3 = 0; e3 < i2; e3++) d2 = s2[w2 >>> 24] ^ o2[_2 >> 16 & 255] ^ l2[b2 >> 8 & 255] ^ c2[255 & p2] ^ n2[m2], f2 = s2[_2 >>> 24] ^ o2[b2 >> 16 & 255] ^ l2[p2 >> 8 & 255] ^ c2[255 & w2] ^ n2[m2 + 1], h2 = s2[b2 >>> 24] ^ o2[p2 >> 16 & 255] ^ l2[w2 >> 8 & 255] ^ c2[255 & _2] ^ n2[m2 + 2], p2 = s2[p2 >>> 24] ^ o2[w2 >> 16 & 255] ^ l2[_2 >> 8 & 255] ^ c2[255 & b2] ^ n2[m2 + 3], m2 += 4, w2 = d2, _2 = f2, b2 = h2;
3662
- for (let e3 = 0; e3 < 4; e3++) r2[t2 ? 3 & -e3 : e3] = u2[w2 >>> 24] << 24 ^ u2[_2 >> 16 & 255] << 16 ^ u2[b2 >> 8 & 255] << 8 ^ u2[255 & p2] ^ n2[m2++], d2 = w2, w2 = _2, _2 = b2, b2 = p2, p2 = d2;
3663
- return r2;
3664
- }
3665
- } }, B = { getRandomValues(e2) {
3666
- const t2 = new Uint32Array(e2.buffer), n2 = (e3) => {
3239
+ const r2 = this._key[t2], n2 = r2.length / 4 - 2, s2 = [0, 0, 0, 0], a2 = this._tables[t2], i2 = a2[0], o2 = a2[1], c2 = a2[2], l2 = a2[3], u2 = a2[4];
3240
+ let d2, f2, h2, p2 = e2[0] ^ r2[0], w2 = e2[t2 ? 3 : 1] ^ r2[1], g2 = e2[2] ^ r2[2], m2 = e2[t2 ? 1 : 3] ^ r2[3], y2 = 4;
3241
+ for (let e3 = 0; e3 < n2; e3++) d2 = i2[p2 >>> 24] ^ o2[w2 >> 16 & 255] ^ c2[g2 >> 8 & 255] ^ l2[255 & m2] ^ r2[y2], f2 = i2[w2 >>> 24] ^ o2[g2 >> 16 & 255] ^ c2[m2 >> 8 & 255] ^ l2[255 & p2] ^ r2[y2 + 1], h2 = i2[g2 >>> 24] ^ o2[m2 >> 16 & 255] ^ c2[p2 >> 8 & 255] ^ l2[255 & w2] ^ r2[y2 + 2], m2 = i2[m2 >>> 24] ^ o2[p2 >> 16 & 255] ^ c2[w2 >> 8 & 255] ^ l2[255 & g2] ^ r2[y2 + 3], y2 += 4, p2 = d2, w2 = f2, g2 = h2;
3242
+ for (let e3 = 0; e3 < 4; e3++) s2[t2 ? 3 & -e3 : e3] = u2[p2 >>> 24] << 24 ^ u2[w2 >> 16 & 255] << 16 ^ u2[g2 >> 8 & 255] << 8 ^ u2[255 & m2] ^ r2[y2++], d2 = p2, p2 = w2, w2 = g2, g2 = m2, m2 = d2;
3243
+ return s2;
3244
+ }
3245
+ } }, U$1 = { getRandomValues(e2) {
3246
+ const t2 = new Uint32Array(e2.buffer), r2 = (e3) => {
3667
3247
  let t3 = 987654321;
3668
- const n3 = 4294967295;
3248
+ const r3 = 4294967295;
3669
3249
  return function() {
3670
- t3 = 36969 * (65535 & t3) + (t3 >> 16) & n3;
3671
- return (((t3 << 16) + (e3 = 18e3 * (65535 & e3) + (e3 >> 16) & n3) & n3) / 4294967296 + 0.5) * (Math.random() > 0.5 ? 1 : -1);
3250
+ t3 = 36969 * (65535 & t3) + (t3 >> 16) & r3;
3251
+ return (((t3 << 16) + (e3 = 18e3 * (65535 & e3) + (e3 >> 16) & r3) & r3) / 4294967296 + 0.5) * (Math.random() > 0.5 ? 1 : -1);
3672
3252
  };
3673
3253
  };
3674
- for (let i2, r2 = 0; r2 < e2.length; r2 += 4) {
3675
- const e3 = n2(4294967296 * (i2 || Math.random()));
3676
- i2 = 987654071 * e3(), t2[r2 / 4] = 4294967296 * e3() | 0;
3254
+ for (let n2, s2 = 0; s2 < e2.length; s2 += 4) {
3255
+ const e3 = r2(4294967296 * (n2 || Math.random()));
3256
+ n2 = 987654071 * e3(), t2[s2 / 4] = 4294967296 * e3() | 0;
3677
3257
  }
3678
3258
  return e2;
3679
- } }, I = { ctrGladman: class {
3259
+ } }, A$1 = { ctrGladman: class {
3680
3260
  constructor(e2, t2) {
3681
3261
  this._prf = e2, this._initIv = t2, this._iv = t2;
3682
3262
  }
@@ -3689,45 +3269,45 @@
3689
3269
  incWord(e2) {
3690
3270
  if (255 & ~(e2 >> 24)) e2 += 1 << 24;
3691
3271
  else {
3692
- let t2 = e2 >> 16 & 255, n2 = e2 >> 8 & 255, i2 = 255 & e2;
3693
- 255 === t2 ? (t2 = 0, 255 === n2 ? (n2 = 0, 255 === i2 ? i2 = 0 : ++i2) : ++n2) : ++t2, e2 = 0, e2 += t2 << 16, e2 += n2 << 8, e2 += i2;
3272
+ let t2 = e2 >> 16 & 255, r2 = e2 >> 8 & 255, n2 = 255 & e2;
3273
+ 255 === t2 ? (t2 = 0, 255 === r2 ? (r2 = 0, 255 === n2 ? n2 = 0 : ++n2) : ++r2) : ++t2, e2 = 0, e2 += t2 << 16, e2 += r2 << 8, e2 += n2;
3694
3274
  }
3695
3275
  return e2;
3696
3276
  }
3697
3277
  incCounter(e2) {
3698
3278
  0 === (e2[0] = this.incWord(e2[0])) && (e2[1] = this.incWord(e2[1]));
3699
3279
  }
3700
- calculate(e2, t2, n2) {
3701
- let i2;
3702
- if (!(i2 = t2.length)) return [];
3703
- const r2 = M.bitLength(t2);
3704
- for (let r3 = 0; r3 < i2; r3 += 4) {
3705
- this.incCounter(n2);
3706
- const i3 = e2.encrypt(n2);
3707
- t2[r3] ^= i3[0], t2[r3 + 1] ^= i3[1], t2[r3 + 2] ^= i3[2], t2[r3 + 3] ^= i3[3];
3708
- }
3709
- return M.clamp(t2, r2);
3710
- }
3711
- } }, N = { importKey: (e2) => new N.hmacSha1(L.bytes.toBits(e2)), pbkdf2(e2, t2, n2, i2) {
3712
- if (n2 = n2 || 1e4, i2 < 0 || n2 < 0) throw new Error("invalid params to pbkdf2");
3713
- const r2 = 1 + (i2 >> 5) << 2;
3714
- let a2, s2, o2, l2, c2;
3715
- const u2 = new ArrayBuffer(r2), d2 = new DataView(u2);
3280
+ calculate(e2, t2, r2) {
3281
+ let n2;
3282
+ if (!(n2 = t2.length)) return [];
3283
+ const s2 = S.bitLength(t2);
3284
+ for (let s3 = 0; s3 < n2; s3 += 4) {
3285
+ this.incCounter(r2);
3286
+ const n3 = e2.encrypt(r2);
3287
+ t2[s3] ^= n3[0], t2[s3 + 1] ^= n3[1], t2[s3 + 2] ^= n3[2], t2[s3 + 3] ^= n3[3];
3288
+ }
3289
+ return S.clamp(t2, s2);
3290
+ }
3291
+ } }, v$1 = { importKey: (e2) => new v$1.hmacSha1(k$1.bytes.toBits(e2)), pbkdf2(e2, t2, r2, n2) {
3292
+ if (r2 = r2 || 1e4, n2 < 0 || r2 < 0) throw new Error("invalid params to pbkdf2");
3293
+ const s2 = 1 + (n2 >> 5) << 2;
3294
+ let a2, i2, o2, c2, l2;
3295
+ const u2 = new ArrayBuffer(s2), d2 = new DataView(u2);
3716
3296
  let f2 = 0;
3717
- const h2 = M;
3718
- for (t2 = L.bytes.toBits(t2), c2 = 1; f2 < (r2 || 1); c2++) {
3719
- for (a2 = s2 = e2.encrypt(h2.concat(t2, [c2])), o2 = 1; o2 < n2; o2++) for (s2 = e2.encrypt(s2), l2 = 0; l2 < s2.length; l2++) a2[l2] ^= s2[l2];
3720
- for (o2 = 0; f2 < (r2 || 1) && o2 < a2.length; o2++) d2.setInt32(f2, a2[o2]), f2 += 4;
3297
+ const h2 = S;
3298
+ for (t2 = k$1.bytes.toBits(t2), l2 = 1; f2 < (s2 || 1); l2++) {
3299
+ for (a2 = i2 = e2.encrypt(h2.concat(t2, [l2])), o2 = 1; o2 < r2; o2++) for (i2 = e2.encrypt(i2), c2 = 0; c2 < i2.length; c2++) a2[c2] ^= i2[c2];
3300
+ for (o2 = 0; f2 < (s2 || 1) && o2 < a2.length; o2++) d2.setInt32(f2, a2[o2]), f2 += 4;
3721
3301
  }
3722
- return u2.slice(0, i2 / 8);
3302
+ return u2.slice(0, n2 / 8);
3723
3303
  }, hmacSha1: class {
3724
3304
  constructor(e2) {
3725
- const t2 = this, n2 = t2._hash = P.sha1, i2 = [[], []];
3726
- t2._baseHash = [new n2(), new n2()];
3727
- const r2 = t2._baseHash[0].blockSize / 32;
3728
- e2.length > r2 && (e2 = new n2().update(e2).finalize());
3729
- for (let t3 = 0; t3 < r2; t3++) i2[0][t3] = 909522486 ^ e2[t3], i2[1][t3] = 1549556828 ^ e2[t3];
3730
- t2._baseHash[0].update(i2[0]), t2._baseHash[1].update(i2[1]), t2._resultHash = new n2(t2._baseHash[0]);
3305
+ const t2 = this, r2 = t2._hash = z$1.sha1, n2 = [[], []];
3306
+ t2._baseHash = [new r2(), new r2()];
3307
+ const s2 = t2._baseHash[0].blockSize / 32;
3308
+ e2.length > s2 && (e2 = new r2().update(e2).finalize());
3309
+ for (let t3 = 0; t3 < s2; t3++) n2[0][t3] = 909522486 ^ e2[t3], n2[1][t3] = 1549556828 ^ e2[t3];
3310
+ t2._baseHash[0].update(n2[0]), t2._baseHash[1].update(n2[1]), t2._resultHash = new r2(t2._baseHash[0]);
3731
3311
  }
3732
3312
  reset() {
3733
3313
  const e2 = this;
@@ -3737,449 +3317,470 @@
3737
3317
  this._updated = true, this._resultHash.update(e2);
3738
3318
  }
3739
3319
  digest() {
3740
- const e2 = this, t2 = e2._resultHash.finalize(), n2 = new e2._hash(e2._baseHash[1]).update(t2).finalize();
3741
- return e2.reset(), n2;
3320
+ const e2 = this, t2 = e2._resultHash.finalize(), r2 = new e2._hash(e2._baseHash[1]).update(t2).finalize();
3321
+ return e2.reset(), r2;
3742
3322
  }
3743
3323
  encrypt(e2) {
3744
3324
  if (this._updated) throw new Error("encrypt on already updated hmac called!");
3745
3325
  return this.update(e2), this.digest(e2);
3746
3326
  }
3747
- } }, V = typeof crypto != z$1 && typeof crypto.getRandomValues == A$1, q = "Invalid password", H = "Invalid signature", K = "zipjs-abort-check-password";
3748
- function Z(e2) {
3749
- return V ? crypto.getRandomValues(e2) : B.getRandomValues(e2);
3327
+ } }, D$1 = typeof crypto != u$1 && typeof crypto.getRandomValues == d$1, _ = "Invalid password", F = "Invalid signature", O = "zipjs-abort-check-password";
3328
+ function E$1(e2) {
3329
+ return D$1 ? crypto.getRandomValues(e2) : U$1.getRandomValues(e2);
3750
3330
  }
3751
- const G = 16, J = { name: "PBKDF2" }, Q = Object.assign({ hash: { name: "HMAC" } }, J), X = Object.assign({ iterations: 1e3, hash: { name: "SHA-1" } }, J), Y = ["deriveBits"], $ = [8, 12, 16], ee = [16, 24, 32], te = 10, ne = [0, 0, 0, 0], ie = typeof crypto != z$1, re = ie && crypto.subtle, ae = ie && typeof re != z$1, se = L.bytes, oe = R.aes, le = I.ctrGladman, ce = N.hmacSha1;
3752
- let ue = ie && ae && typeof re.importKey == A$1, de = ie && ae && typeof re.deriveBits == A$1;
3753
- class fe extends TransformStream {
3754
- constructor({ password: e2, rawPassword: t2, signed: n2, encryptionStrength: i2, checkPasswordOnly: r2 }) {
3331
+ const T$1 = 16, C = { name: "PBKDF2" }, R = Object.assign({ hash: { name: "HMAC" } }, C), W = Object.assign({ iterations: 1e3, hash: { name: "SHA-1" } }, C), M = ["deriveBits"], j = [8, 12, 16], I = [16, 24, 32], B = 10, P = [0, 0, 0, 0], L = typeof crypto != u$1, V = L && crypto.subtle, N = L && typeof V != u$1, Z = k$1.bytes, q = x$1.aes, H = A$1.ctrGladman, K = v$1.hmacSha1;
3332
+ let G = L && N && typeof V.importKey == d$1, J = L && N && typeof V.deriveBits == d$1;
3333
+ class Q extends TransformStream {
3334
+ constructor({ password: e2, rawPassword: t2, signed: r2, encryptionStrength: n2, checkPasswordOnly: s2 }) {
3755
3335
  super({ start() {
3756
- Object.assign(this, { ready: new Promise(((e3) => this.resolveReady = e3)), password: be(e2, t2), signed: n2, strength: i2 - 1, pending: new Uint8Array() });
3336
+ Object.assign(this, { ready: new Promise((e3) => this.resolveReady = e3), password: ee(e2, t2), signed: r2, strength: n2 - 1, pending: new Uint8Array() });
3757
3337
  }, async transform(e3, t3) {
3758
- const n3 = this, { password: i3, strength: a2, resolveReady: s2, ready: o2 } = n3;
3759
- i3 ? (await (async function(e4, t4, n4, i4) {
3760
- const r3 = await _e(e4, t4, n4, me(i4, 0, $[t4])), a3 = me(i4, $[t4]);
3761
- if (r3[0] != a3[0] || r3[1] != a3[1]) throw new Error(q);
3762
- })(n3, a2, i3, me(e3, 0, $[a2] + 2)), e3 = me(e3, $[a2] + 2), r2 ? t3.error(new Error(K)) : s2()) : await o2;
3763
- const l2 = new Uint8Array(e3.length - te - (e3.length - te) % G);
3764
- t3.enqueue(we(n3, e3, l2, 0, te, true));
3338
+ const r3 = this, { password: n3, strength: a2, resolveReady: i2, ready: o2 } = r3;
3339
+ n3 ? (await (async function(e4, t4, r4, n4) {
3340
+ const s3 = await $(e4, t4, r4, re(n4, 0, j[t4])), a3 = re(n4, j[t4]);
3341
+ if (s3[0] != a3[0] || s3[1] != a3[1]) throw new Error(_);
3342
+ })(r3, a2, n3, re(e3, 0, j[a2] + 2)), e3 = re(e3, j[a2] + 2), s2 ? t3.error(new Error(O)) : i2()) : await o2;
3343
+ const c2 = new Uint8Array(e3.length - B - (e3.length - B) % T$1);
3344
+ t3.enqueue(Y(r3, e3, c2, 0, B, true));
3765
3345
  }, async flush(e3) {
3766
- const { signed: t3, ctr: n3, hmac: i3, pending: r3, ready: a2 } = this;
3767
- if (i3 && n3) {
3346
+ const { signed: t3, ctr: r3, hmac: n3, pending: s3, ready: a2 } = this;
3347
+ if (n3 && r3) {
3768
3348
  await a2;
3769
- const s2 = me(r3, 0, r3.length - te), o2 = me(r3, r3.length - te);
3770
- let l2 = new Uint8Array();
3771
- if (s2.length) {
3772
- const e4 = ye(se, s2);
3773
- i3.update(e4);
3774
- const t4 = n3.update(e4);
3775
- l2 = ge(se, t4);
3349
+ const i2 = re(s3, 0, s3.length - B), o2 = re(s3, s3.length - B);
3350
+ let c2 = new Uint8Array();
3351
+ if (i2.length) {
3352
+ const e4 = se(Z, i2);
3353
+ n3.update(e4);
3354
+ const t4 = r3.update(e4);
3355
+ c2 = ne(Z, t4);
3776
3356
  }
3777
3357
  if (t3) {
3778
- const e4 = me(ge(se, i3.digest()), 0, te);
3779
- for (let t4 = 0; t4 < te; t4++) if (e4[t4] != o2[t4]) throw new Error(H);
3358
+ const e4 = re(ne(Z, n3.digest()), 0, B);
3359
+ for (let t4 = 0; t4 < B; t4++) if (e4[t4] != o2[t4]) throw new Error(F);
3780
3360
  }
3781
- e3.enqueue(l2);
3361
+ e3.enqueue(c2);
3782
3362
  }
3783
3363
  } });
3784
3364
  }
3785
3365
  }
3786
- class he extends TransformStream {
3787
- constructor({ password: e2, rawPassword: t2, encryptionStrength: n2 }) {
3788
- let i2;
3366
+ class X extends TransformStream {
3367
+ constructor({ password: e2, rawPassword: t2, encryptionStrength: r2 }) {
3368
+ let n2;
3789
3369
  super({ start() {
3790
- Object.assign(this, { ready: new Promise(((e3) => this.resolveReady = e3)), password: be(e2, t2), strength: n2 - 1, pending: new Uint8Array() });
3370
+ Object.assign(this, { ready: new Promise((e3) => this.resolveReady = e3), password: ee(e2, t2), strength: r2 - 1, pending: new Uint8Array() });
3791
3371
  }, async transform(e3, t3) {
3792
- const n3 = this, { password: i3, strength: r2, resolveReady: a2, ready: s2 } = n3;
3372
+ const r3 = this, { password: n3, strength: s2, resolveReady: a2, ready: i2 } = r3;
3793
3373
  let o2 = new Uint8Array();
3794
- i3 ? (o2 = await (async function(e4, t4, n4) {
3795
- const i4 = Z(new Uint8Array($[t4])), r3 = await _e(e4, t4, n4, i4);
3796
- return pe(i4, r3);
3797
- })(n3, r2, i3), a2()) : await s2;
3798
- const l2 = new Uint8Array(o2.length + e3.length - e3.length % G);
3799
- l2.set(o2, 0), t3.enqueue(we(n3, e3, l2, o2.length, 0));
3374
+ n3 ? (o2 = await (async function(e4, t4, r4) {
3375
+ const n4 = E$1(new Uint8Array(j[t4])), s3 = await $(e4, t4, r4, n4);
3376
+ return te(n4, s3);
3377
+ })(r3, s2, n3), a2()) : await i2;
3378
+ const c2 = new Uint8Array(o2.length + e3.length - e3.length % T$1);
3379
+ c2.set(o2, 0), t3.enqueue(Y(r3, e3, c2, o2.length, 0));
3800
3380
  }, async flush(e3) {
3801
- const { ctr: t3, hmac: n3, pending: r2, ready: a2 } = this;
3802
- if (n3 && t3) {
3381
+ const { ctr: t3, hmac: r3, pending: s2, ready: a2 } = this;
3382
+ if (r3 && t3) {
3803
3383
  await a2;
3804
- let s2 = new Uint8Array();
3805
- if (r2.length) {
3806
- const e4 = t3.update(ye(se, r2));
3807
- n3.update(e4), s2 = ge(se, e4);
3384
+ let i2 = new Uint8Array();
3385
+ if (s2.length) {
3386
+ const e4 = t3.update(se(Z, s2));
3387
+ r3.update(e4), i2 = ne(Z, e4);
3808
3388
  }
3809
- i2.signature = ge(se, n3.digest()).slice(0, te), e3.enqueue(pe(s2, i2.signature));
3389
+ n2.signature = ne(Z, r3.digest()).slice(0, B), e3.enqueue(te(i2, n2.signature));
3810
3390
  }
3811
- } }), i2 = this;
3391
+ } }), n2 = this;
3812
3392
  }
3813
3393
  }
3814
- function we(e2, t2, n2, i2, r2, a2) {
3815
- const { ctr: s2, hmac: o2, pending: l2 } = e2, c2 = t2.length - r2;
3394
+ function Y(e2, t2, r2, n2, s2, a2) {
3395
+ const { ctr: i2, hmac: o2, pending: c2 } = e2, l2 = t2.length - s2;
3816
3396
  let u2;
3817
- for (l2.length && (t2 = pe(l2, t2), n2 = (function(e3, t3) {
3397
+ for (c2.length && (t2 = te(c2, t2), r2 = (function(e3, t3) {
3818
3398
  if (t3 && t3 > e3.length) {
3819
- const n3 = e3;
3820
- (e3 = new Uint8Array(t3)).set(n3, 0);
3399
+ const r3 = e3;
3400
+ (e3 = new Uint8Array(t3)).set(r3, 0);
3821
3401
  }
3822
3402
  return e3;
3823
- })(n2, c2 - c2 % G)), u2 = 0; u2 <= c2 - G; u2 += G) {
3824
- const e3 = ye(se, me(t2, u2, u2 + G));
3403
+ })(r2, l2 - l2 % T$1)), u2 = 0; u2 <= l2 - T$1; u2 += T$1) {
3404
+ const e3 = se(Z, re(t2, u2, u2 + T$1));
3825
3405
  a2 && o2.update(e3);
3826
- const r3 = s2.update(e3);
3827
- a2 || o2.update(r3), n2.set(ge(se, r3), u2 + i2);
3406
+ const s3 = i2.update(e3);
3407
+ a2 || o2.update(s3), r2.set(ne(Z, s3), u2 + n2);
3828
3408
  }
3829
- return e2.pending = me(t2, u2), n2;
3409
+ return e2.pending = re(t2, u2), r2;
3830
3410
  }
3831
- async function _e(e2, t2, n2, i2) {
3411
+ async function $(e2, t2, r2, n2) {
3832
3412
  e2.password = null;
3833
- const r2 = await (async function(e3, t3, n3, i3, r3) {
3834
- if (!ue) return N.importKey(t3);
3413
+ const s2 = await (async function(e3, t3, r3, n3, s3) {
3414
+ if (!G) return v$1.importKey(t3);
3835
3415
  try {
3836
- return await re.importKey(e3, t3, n3, i3, r3);
3837
- } catch (e4) {
3838
- return ue = false, N.importKey(t3);
3416
+ return await V.importKey(e3, t3, r3, n3, s3);
3417
+ } catch {
3418
+ return G = false, v$1.importKey(t3);
3839
3419
  }
3840
- })("raw", n2, Q, false, Y), a2 = await (async function(e3, t3, n3) {
3841
- if (!de) return N.pbkdf2(t3, e3.salt, X.iterations, n3);
3420
+ })("raw", r2, R, false, M), a2 = await (async function(e3, t3, r3) {
3421
+ if (!J) return v$1.pbkdf2(t3, e3.salt, W.iterations, r3);
3842
3422
  try {
3843
- return await re.deriveBits(e3, t3, n3);
3844
- } catch (i3) {
3845
- return de = false, N.pbkdf2(t3, e3.salt, X.iterations, n3);
3423
+ return await V.deriveBits(e3, t3, r3);
3424
+ } catch {
3425
+ return J = false, v$1.pbkdf2(t3, e3.salt, W.iterations, r3);
3846
3426
  }
3847
- })(Object.assign({ salt: i2 }, X), r2, 8 * (2 * ee[t2] + 2)), s2 = new Uint8Array(a2), o2 = ye(se, me(s2, 0, ee[t2])), l2 = ye(se, me(s2, ee[t2], 2 * ee[t2])), c2 = me(s2, 2 * ee[t2]);
3848
- return Object.assign(e2, { keys: { key: o2, authentication: l2, passwordVerification: c2 }, ctr: new le(new oe(o2), Array.from(ne)), hmac: new ce(l2) }), c2;
3427
+ })(Object.assign({ salt: n2 }, W), s2, 8 * (2 * I[t2] + 2)), i2 = new Uint8Array(a2), o2 = se(Z, re(i2, 0, I[t2])), c2 = se(Z, re(i2, I[t2], 2 * I[t2])), l2 = re(i2, 2 * I[t2]);
3428
+ return Object.assign(e2, { keys: { key: o2, authentication: c2, passwordVerification: l2 }, ctr: new H(new q(o2), Array.from(P)), hmac: new K(c2) }), l2;
3849
3429
  }
3850
- function be(e2, t2) {
3851
- return t2 === S ? (function(e3) {
3852
- if (typeof TextEncoder == z$1) {
3430
+ function ee(e2, t2) {
3431
+ return t2 === c$1 ? (function(e3) {
3432
+ if (typeof TextEncoder == u$1) {
3853
3433
  e3 = unescape(encodeURIComponent(e3));
3854
3434
  const t3 = new Uint8Array(e3.length);
3855
- for (let n2 = 0; n2 < t3.length; n2++) t3[n2] = e3.charCodeAt(n2);
3435
+ for (let r2 = 0; r2 < t3.length; r2++) t3[r2] = e3.charCodeAt(r2);
3856
3436
  return t3;
3857
3437
  }
3858
3438
  return new TextEncoder().encode(e3);
3859
3439
  })(e2) : t2;
3860
3440
  }
3861
- function pe(e2, t2) {
3862
- let n2 = e2;
3863
- return e2.length + t2.length && (n2 = new Uint8Array(e2.length + t2.length), n2.set(e2, 0), n2.set(t2, e2.length)), n2;
3441
+ function te(e2, t2) {
3442
+ let r2 = e2;
3443
+ return e2.length + t2.length && (r2 = new Uint8Array(e2.length + t2.length), r2.set(e2, 0), r2.set(t2, e2.length)), r2;
3864
3444
  }
3865
- function me(e2, t2, n2) {
3866
- return e2.subarray(t2, n2);
3445
+ function re(e2, t2, r2) {
3446
+ return e2.subarray(t2, r2);
3867
3447
  }
3868
- function ge(e2, t2) {
3448
+ function ne(e2, t2) {
3869
3449
  return e2.fromBits(t2);
3870
3450
  }
3871
- function ye(e2, t2) {
3451
+ function se(e2, t2) {
3872
3452
  return e2.toBits(t2);
3873
3453
  }
3874
- const xe = 12;
3875
- class ke extends TransformStream {
3876
- constructor({ password: e2, passwordVerification: t2, checkPasswordOnly: n2 }) {
3454
+ class ae extends TransformStream {
3455
+ constructor({ password: e2, passwordVerification: t2, checkPasswordOnly: r2 }) {
3877
3456
  super({ start() {
3878
- Object.assign(this, { password: e2, passwordVerification: t2 }), Ae(this, e2);
3457
+ Object.assign(this, { password: e2, passwordVerification: t2 }), le(this, e2);
3879
3458
  }, transform(e3, t3) {
3880
- const i2 = this;
3881
- if (i2.password) {
3882
- const t4 = Se(i2, e3.subarray(0, xe));
3883
- if (i2.password = null, t4[11] != i2.passwordVerification) throw new Error(q);
3884
- e3 = e3.subarray(xe);
3459
+ const n2 = this;
3460
+ if (n2.password) {
3461
+ const t4 = oe(n2, e3.subarray(0, 12));
3462
+ if (n2.password = null, t4.at(-1) != n2.passwordVerification) throw new Error(_);
3463
+ e3 = e3.subarray(12);
3885
3464
  }
3886
- n2 ? t3.error(new Error(K)) : t3.enqueue(Se(i2, e3));
3465
+ r2 ? t3.error(new Error(O)) : t3.enqueue(oe(n2, e3));
3887
3466
  } });
3888
3467
  }
3889
3468
  }
3890
- class ve extends TransformStream {
3469
+ class ie extends TransformStream {
3891
3470
  constructor({ password: e2, passwordVerification: t2 }) {
3892
3471
  super({ start() {
3893
- Object.assign(this, { password: e2, passwordVerification: t2 }), Ae(this, e2);
3472
+ Object.assign(this, { password: e2, passwordVerification: t2 }), le(this, e2);
3894
3473
  }, transform(e3, t3) {
3895
- const n2 = this;
3896
- let i2, r2;
3897
- if (n2.password) {
3898
- n2.password = null;
3899
- const t4 = Z(new Uint8Array(xe));
3900
- t4[11] = n2.passwordVerification, i2 = new Uint8Array(e3.length + t4.length), i2.set(ze(n2, t4), 0), r2 = xe;
3901
- } else i2 = new Uint8Array(e3.length), r2 = 0;
3902
- i2.set(ze(n2, e3), r2), t3.enqueue(i2);
3474
+ const r2 = this;
3475
+ let n2, s2;
3476
+ if (r2.password) {
3477
+ r2.password = null;
3478
+ const t4 = E$1(new Uint8Array(12));
3479
+ t4[11] = r2.passwordVerification, n2 = new Uint8Array(e3.length + t4.length), n2.set(ce(r2, t4), 0), s2 = 12;
3480
+ } else n2 = new Uint8Array(e3.length), s2 = 0;
3481
+ n2.set(ce(r2, e3), s2), t3.enqueue(n2);
3903
3482
  } });
3904
3483
  }
3905
3484
  }
3906
- function Se(e2, t2) {
3907
- const n2 = new Uint8Array(t2.length);
3908
- for (let i2 = 0; i2 < t2.length; i2++) n2[i2] = De(e2) ^ t2[i2], Ue(e2, n2[i2]);
3909
- return n2;
3485
+ function oe(e2, t2) {
3486
+ const r2 = new Uint8Array(t2.length);
3487
+ for (let n2 = 0; n2 < t2.length; n2++) r2[n2] = de(e2) ^ t2[n2], ue(e2, r2[n2]);
3488
+ return r2;
3910
3489
  }
3911
- function ze(e2, t2) {
3912
- const n2 = new Uint8Array(t2.length);
3913
- for (let i2 = 0; i2 < t2.length; i2++) n2[i2] = De(e2) ^ t2[i2], Ue(e2, t2[i2]);
3914
- return n2;
3490
+ function ce(e2, t2) {
3491
+ const r2 = new Uint8Array(t2.length);
3492
+ for (let n2 = 0; n2 < t2.length; n2++) r2[n2] = de(e2) ^ t2[n2], ue(e2, t2[n2]);
3493
+ return r2;
3915
3494
  }
3916
- function Ae(e2, t2) {
3917
- const n2 = [305419896, 591751049, 878082192];
3918
- Object.assign(e2, { keys: n2, crcKey0: new W(n2[0]), crcKey2: new W(n2[2]) });
3919
- for (let n3 = 0; n3 < t2.length; n3++) Ue(e2, t2.charCodeAt(n3));
3495
+ function le(e2, t2) {
3496
+ const r2 = [305419896, 591751049, 878082192];
3497
+ Object.assign(e2, { keys: r2, crcKey0: new y$1(r2[0]), crcKey2: new y$1(r2[2]) });
3498
+ for (let r3 = 0; r3 < t2.length; r3++) ue(e2, t2.charCodeAt(r3));
3920
3499
  }
3921
- function Ue(e2, t2) {
3922
- let [n2, i2, r2] = e2.keys;
3923
- e2.crcKey0.append([t2]), n2 = ~e2.crcKey0.get(), i2 = Te(Math.imul(Te(i2 + Ee(n2)), 134775813) + 1), e2.crcKey2.append([i2 >>> 24]), r2 = ~e2.crcKey2.get(), e2.keys = [n2, i2, r2];
3500
+ function ue(e2, t2) {
3501
+ let [r2, n2, s2] = e2.keys;
3502
+ e2.crcKey0.append([t2]), r2 = ~e2.crcKey0.get(), n2 = he(Math.imul(he(n2 + fe(r2)), 134775813) + 1), e2.crcKey2.append([n2 >>> 24]), s2 = ~e2.crcKey2.get(), e2.keys = [r2, n2, s2];
3924
3503
  }
3925
- function De(e2) {
3504
+ function de(e2) {
3926
3505
  const t2 = 2 | e2.keys[2];
3927
- return Ee(Math.imul(t2, 1 ^ t2) >>> 8);
3506
+ return fe(Math.imul(t2, 1 ^ t2) >>> 8);
3928
3507
  }
3929
- function Ee(e2) {
3508
+ function fe(e2) {
3930
3509
  return 255 & e2;
3931
3510
  }
3932
- function Te(e2) {
3511
+ function he(e2) {
3933
3512
  return 4294967295 & e2;
3934
3513
  }
3935
- const Fe = "deflate-raw";
3936
- class Oe extends TransformStream {
3937
- constructor(e2, { chunkSize: t2, CompressionStream: n2, CompressionStreamNative: i2 }) {
3514
+ const pe = "Invalid uncompressed size";
3515
+ class we extends TransformStream {
3516
+ constructor(e2, { chunkSize: t2, CompressionStreamZlib: r2, CompressionStream: n2 }) {
3938
3517
  super({});
3939
- const { compressed: r2, encrypted: a2, useCompressionStream: s2, zipCrypto: o2, signed: l2, level: c2 } = e2, u2 = this;
3940
- let d2, f2, h2 = We(super.readable);
3941
- a2 && !o2 || !l2 || (d2 = new j(), h2 = Le(h2, d2)), r2 && (h2 = Me(h2, s2, { level: c2, chunkSize: t2 }, i2, n2)), a2 && (o2 ? h2 = Le(h2, new ve(e2)) : (f2 = new he(e2), h2 = Le(h2, f2))), je(u2, h2, (() => {
3518
+ const { compressed: s2, encrypted: a2, useCompressionStream: i2, zipCrypto: o2, signed: c2, level: l2 } = e2, u2 = this;
3519
+ let d2, f2, h2 = super.readable;
3520
+ a2 && !o2 || !c2 || (d2 = new b$1(), h2 = be(h2, d2)), s2 && (h2 = ye(h2, i2, { level: l2, chunkSize: t2 }, n2, r2, n2)), a2 && (o2 ? h2 = be(h2, new ie(e2)) : (f2 = new X(e2), h2 = be(h2, f2))), me(u2, h2, () => {
3942
3521
  let e3;
3943
- a2 && !o2 && (e3 = f2.signature), a2 && !o2 || !l2 || (e3 = new DataView(d2.value.buffer).getUint32(0)), u2.signature = e3;
3944
- }));
3522
+ a2 && !o2 && (e3 = f2.signature), a2 && !o2 || !c2 || (e3 = new DataView(d2.value.buffer).getUint32(0)), u2.signature = e3;
3523
+ });
3945
3524
  }
3946
3525
  }
3947
- class Ce extends TransformStream {
3948
- constructor(e2, { chunkSize: t2, DecompressionStream: n2, DecompressionStreamNative: i2 }) {
3526
+ class ge extends TransformStream {
3527
+ constructor(e2, { chunkSize: t2, DecompressionStreamZlib: r2, DecompressionStream: n2 }) {
3949
3528
  super({});
3950
- const { zipCrypto: r2, encrypted: a2, signed: s2, signature: o2, compressed: l2, useCompressionStream: c2 } = e2;
3951
- let u2, d2, f2 = We(super.readable);
3952
- a2 && (r2 ? f2 = Le(f2, new ke(e2)) : (d2 = new fe(e2), f2 = Le(f2, d2))), l2 && (f2 = Me(f2, c2, { chunkSize: t2 }, i2, n2)), a2 && !r2 || !s2 || (u2 = new j(), f2 = Le(f2, u2)), je(this, f2, (() => {
3953
- if ((!a2 || r2) && s2) {
3954
- const e3 = new DataView(u2.value.buffer);
3955
- if (o2 != e3.getUint32(0, false)) throw new Error(H);
3529
+ const { zipCrypto: s2, encrypted: a2, signed: i2, signature: o2, compressed: c2, useCompressionStream: l2, deflate64: u2 } = e2;
3530
+ let d2, f2, h2 = super.readable;
3531
+ a2 && (s2 ? h2 = be(h2, new ae(e2)) : (f2 = new Q(e2), h2 = be(h2, f2))), c2 && (h2 = ye(h2, l2, { chunkSize: t2, deflate64: u2 }, n2, r2, n2)), a2 && !s2 || !i2 || (d2 = new b$1(), h2 = be(h2, d2)), me(this, h2, () => {
3532
+ if ((!a2 || s2) && i2) {
3533
+ const e3 = new DataView(d2.value.buffer);
3534
+ if (o2 != e3.getUint32(0, false)) throw new Error(F);
3956
3535
  }
3957
- }));
3536
+ });
3958
3537
  }
3959
3538
  }
3960
- function We(e2) {
3961
- return Le(e2, new TransformStream({ transform(e3, t2) {
3962
- e3 && e3.length && t2.enqueue(e3);
3963
- } }));
3539
+ function me(e2, t2, r2) {
3540
+ t2 = be(t2, new TransformStream({ flush: r2 })), Object.defineProperty(e2, "readable", { get: () => t2 });
3964
3541
  }
3965
- function je(e2, t2, n2) {
3966
- t2 = Le(t2, new TransformStream({ flush: n2 })), Object.defineProperty(e2, "readable", { get: () => t2 });
3967
- }
3968
- function Me(e2, t2, n2, i2, r2) {
3542
+ function ye(e2, t2, r2, n2, s2, a2) {
3543
+ const i2 = t2 && n2 ? n2 : s2 || a2, o2 = r2.deflate64 ? "deflate64-raw" : "deflate-raw";
3969
3544
  try {
3970
- e2 = Le(e2, new (t2 && i2 ? i2 : r2)(Fe, n2));
3971
- } catch (i3) {
3972
- if (!t2) return e2;
3973
- try {
3974
- e2 = Le(e2, new r2(Fe, n2));
3975
- } catch (t3) {
3976
- return e2;
3545
+ e2 = be(e2, new i2(o2, r2));
3546
+ } catch (n3) {
3547
+ if (!t2) throw n3;
3548
+ if (s2) e2 = be(e2, new s2(o2, r2));
3549
+ else {
3550
+ if (!a2) throw n3;
3551
+ e2 = be(e2, new a2(o2, r2));
3977
3552
  }
3978
3553
  }
3979
3554
  return e2;
3980
3555
  }
3981
- function Le(e2, t2) {
3556
+ function be(e2, t2) {
3982
3557
  return e2.pipeThrough(t2);
3983
3558
  }
3984
- const Pe = "message", Re = "start", Be = "pull", Ie = "data", Ne = "close", Ve = "inflate";
3985
- class qe extends TransformStream {
3559
+ const Se = "start", ke = "pull", ze = "data", xe = "close", Ue = "inflate";
3560
+ class Ae extends TransformStream {
3986
3561
  constructor(e2, t2) {
3987
3562
  super({});
3988
- const n2 = this, { codecType: i2 } = e2;
3989
- let r2;
3990
- i2.startsWith("deflate") ? r2 = Oe : i2.startsWith(Ve) && (r2 = Ce);
3991
- let a2 = 0, s2 = 0;
3992
- const o2 = new r2(e2, t2), l2 = super.readable, c2 = new TransformStream({ transform(e3, t3) {
3993
- e3 && e3.length && (s2 += e3.length, t3.enqueue(e3));
3994
- }, flush() {
3995
- Object.assign(n2, { inputSize: s2 });
3996
- } }), u2 = new TransformStream({ transform(e3, t3) {
3563
+ const r2 = this, { codecType: n2 } = e2;
3564
+ let s2;
3565
+ n2.startsWith("deflate") ? s2 = we : n2.startsWith(Ue) && (s2 = ge), r2.outputSize = 0;
3566
+ let a2 = 0;
3567
+ const i2 = new s2(e2, t2), o2 = super.readable, l2 = new TransformStream({ transform(e3, t3) {
3997
3568
  e3 && e3.length && (a2 += e3.length, t3.enqueue(e3));
3998
3569
  }, flush() {
3999
- const { signature: e3 } = o2;
4000
- Object.assign(n2, { signature: e3, outputSize: a2, inputSize: s2 });
3570
+ Object.assign(r2, { inputSize: a2 });
3571
+ } }), u2 = new TransformStream({ transform(t3, n3) {
3572
+ if (t3 && t3.length && (n3.enqueue(t3), r2.outputSize += t3.length, e2.outputSize !== c$1 && r2.outputSize > e2.outputSize)) throw new Error(pe);
3573
+ }, flush() {
3574
+ const { signature: e3 } = i2;
3575
+ Object.assign(r2, { signature: e3, inputSize: a2 });
4001
3576
  } });
4002
- Object.defineProperty(n2, "readable", { get: () => l2.pipeThrough(c2).pipeThrough(o2).pipeThrough(u2) });
3577
+ Object.defineProperty(r2, "readable", { get: () => o2.pipeThrough(l2).pipeThrough(i2).pipeThrough(u2) });
4003
3578
  }
4004
3579
  }
4005
- class He extends TransformStream {
3580
+ class ve extends TransformStream {
4006
3581
  constructor(e2) {
4007
3582
  let t2;
4008
- super({ transform: function n2(i2, r2) {
3583
+ super({ transform: function r2(n2, s2) {
4009
3584
  if (t2) {
4010
- const e3 = new Uint8Array(t2.length + i2.length);
4011
- e3.set(t2), e3.set(i2, t2.length), i2 = e3, t2 = null;
3585
+ const e3 = new Uint8Array(t2.length + n2.length);
3586
+ e3.set(t2), e3.set(n2, t2.length), n2 = e3, t2 = null;
4012
3587
  }
4013
- i2.length > e2 ? (r2.enqueue(i2.slice(0, e2)), n2(i2.slice(e2), r2)) : t2 = i2;
3588
+ n2.length > e2 ? (s2.enqueue(n2.slice(0, e2)), r2(n2.slice(e2), s2)) : t2 = n2;
4014
3589
  }, flush(e3) {
4015
3590
  t2 && t2.length && e3.enqueue(t2);
4016
3591
  } });
4017
3592
  }
4018
3593
  }
4019
- let Ke = typeof Worker != z$1;
4020
- class Ze {
4021
- constructor(e2, { readable: t2, writable: n2 }, { options: i2, config: r2, streamOptions: a2, useWebWorkers: s2, transferStreams: o2, scripts: l2 }, c2) {
4022
- const { signal: u2 } = a2;
4023
- return Object.assign(e2, { busy: true, readable: t2.pipeThrough(new He(r2.chunkSize)).pipeThrough(new Ge(t2, a2), { signal: u2 }), writable: n2, options: Object.assign({}, i2), scripts: l2, transferStreams: o2, terminate: () => new Promise(((t3) => {
4024
- const { worker: n3, busy: i3 } = e2;
4025
- n3 ? (i3 ? e2.resolveTerminated = t3 : (n3.terminate(), t3()), e2.interface = null) : t3();
4026
- })), onTaskFinished() {
3594
+ const De = { type: "module" };
3595
+ let _e, Fe, Oe, Ee = true;
3596
+ try {
3597
+ Ee = typeof structuredClone == d$1 && structuredClone(new DOMException("", "AbortError")).code !== c$1;
3598
+ } catch {
3599
+ }
3600
+ class Te {
3601
+ constructor(e2, { readable: t2, writable: r2 }, { options: n2, config: s2, streamOptions: a2, useWebWorkers: i2, transferStreams: o2, workerURI: l2 }, d2) {
3602
+ const { signal: f2 } = a2;
3603
+ return Object.assign(e2, { busy: true, readable: t2.pipeThrough(new ve(s2.chunkSize)).pipeThrough(new Ce(a2), { signal: f2 }), writable: r2, options: Object.assign({}, n2), workerURI: l2, transferStreams: o2, terminate: () => new Promise((t3) => {
3604
+ const { worker: r3, busy: n3 } = e2;
3605
+ r3 ? (n3 ? e2.resolveTerminated = t3 : (r3.terminate(), t3()), e2.interface = null) : t3();
3606
+ }), onTaskFinished() {
4027
3607
  const { resolveTerminated: t3 } = e2;
4028
- t3 && (e2.resolveTerminated = null, e2.terminated = true, e2.worker.terminate(), t3()), e2.busy = false, c2(e2);
4029
- } }), (s2 && Ke ? Xe : Qe)(e2, r2);
3608
+ t3 && (e2.resolveTerminated = null, e2.terminated = true, e2.worker.terminate(), t3()), e2.busy = false, d2(e2);
3609
+ } }), _e === c$1 && (_e = typeof Worker != u$1), (i2 && _e ? Me : We)(e2, s2);
4030
3610
  }
4031
3611
  }
4032
- class Ge extends TransformStream {
4033
- constructor(e2, { onstart: t2, onprogress: n2, size: i2, onend: r2 }) {
4034
- let a2 = 0;
3612
+ class Ce extends TransformStream {
3613
+ constructor({ onstart: e2, onprogress: t2, size: r2, onend: n2 }) {
3614
+ let s2 = 0;
4035
3615
  super({ async start() {
4036
- t2 && await Je(t2, i2);
4037
- }, async transform(e3, t3) {
4038
- a2 += e3.length, n2 && await Je(n2, a2, i2), t3.enqueue(e3);
3616
+ e2 && await Re(e2, r2);
3617
+ }, async transform(e3, n3) {
3618
+ s2 += e3.length, t2 && await Re(t2, s2, r2), n3.enqueue(e3);
4039
3619
  }, async flush() {
4040
- e2.size = a2, r2 && await Je(r2, a2);
3620
+ n2 && await Re(n2, s2);
4041
3621
  } });
4042
3622
  }
4043
3623
  }
4044
- async function Je(e2, ...t2) {
3624
+ async function Re(e2, ...t2) {
4045
3625
  try {
4046
3626
  await e2(...t2);
4047
- } catch (e3) {
3627
+ } catch {
4048
3628
  }
4049
3629
  }
4050
- function Qe(e2, t2) {
4051
- return { run: () => (async function({ options: e3, readable: t3, writable: n2, onTaskFinished: i2 }, r2) {
3630
+ function We(e2, t2) {
3631
+ return { run: () => (async function({ options: e3, readable: t3, writable: r2, onTaskFinished: n2 }, s2) {
3632
+ let a2;
4052
3633
  try {
4053
- const i3 = new qe(e3, r2);
4054
- await t3.pipeThrough(i3).pipeTo(n2, { preventClose: true, preventAbort: true });
4055
- const { signature: a2, inputSize: s2, outputSize: o2 } = i3;
4056
- return { signature: a2, inputSize: s2, outputSize: o2 };
3634
+ if (!e3.useCompressionStream) try {
3635
+ await void 0;
3636
+ } catch {
3637
+ e3.useCompressionStream = true;
3638
+ }
3639
+ a2 = new Ae(e3, s2), await t3.pipeThrough(a2).pipeTo(r2, { preventClose: true, preventAbort: true });
3640
+ const { signature: n3, inputSize: i2, outputSize: o2 } = a2;
3641
+ return { signature: n3, inputSize: i2, outputSize: o2 };
3642
+ } catch (e4) {
3643
+ throw a2 && (e4.outputSize = a2.outputSize), e4;
4057
3644
  } finally {
4058
- i2();
3645
+ n2();
4059
3646
  }
4060
3647
  })(e2, t2) };
4061
3648
  }
4062
- function Xe(e2, t2) {
4063
- const { baseURL: n2, chunkSize: i2 } = t2;
3649
+ function Me(e2, t2) {
3650
+ const { baseURI: r2, chunkSize: n2 } = t2;
3651
+ let { wasmURI: s2 } = t2;
4064
3652
  if (!e2.interface) {
4065
- let r2;
3653
+ let a2;
3654
+ typeof s2 == d$1 && (s2 = s2());
4066
3655
  try {
4067
- r2 = (function(e3, t3, n3) {
4068
- const i3 = { type: "module" };
4069
- let r3, a2;
4070
- typeof e3 == A$1 && (e3 = e3());
4071
- try {
4072
- r3 = new URL(e3, t3);
4073
- } catch (t4) {
4074
- r3 = e3;
4075
- }
4076
- if (Ye) try {
4077
- a2 = new Worker(r3);
4078
- } catch (e4) {
4079
- Ye = false, a2 = new Worker(r3, i3);
4080
- }
4081
- else a2 = new Worker(r3, i3);
4082
- return a2.addEventListener(Pe, ((e4) => (async function({ data: e5 }, t4) {
4083
- const { type: n4, value: i4, messageId: r4, result: a3, error: s2 } = e5, { reader: o2, writer: l2, resolveResult: c2, rejectResult: u2, onTaskFinished: d2 } = t4;
4084
- try {
4085
- if (s2) {
4086
- const { message: e6, stack: t5, code: n5, name: i5 } = s2, r5 = new Error(e6);
4087
- Object.assign(r5, { stack: t5, code: n5, name: i5 }), f2(r5);
4088
- } else {
4089
- if (n4 == Be) {
4090
- const { value: e6, done: n5 } = await o2.read();
4091
- et({ type: Ie, value: e6, done: n5, messageId: r4 }, t4);
4092
- }
4093
- n4 == Ie && (await l2.ready, await l2.write(new Uint8Array(i4)), et({ type: "ack", messageId: r4 }, t4)), n4 == Ne && f2(null, a3);
4094
- }
4095
- } catch (s3) {
4096
- et({ type: Ne, messageId: r4 }, t4), f2(s3);
4097
- }
4098
- function f2(e6, t5) {
4099
- e6 ? u2(e6) : c2(t5), l2 && l2.releaseLock(), d2();
4100
- }
4101
- })(e4, n3))), a2;
4102
- })(e2.scripts[0], n2, e2);
4103
- } catch (n3) {
4104
- return Ke = false, Qe(e2, t2);
4105
- }
4106
- Object.assign(e2, { worker: r2, interface: { run: () => (async function(e3, t3) {
4107
- let n3, i3;
4108
- const r3 = new Promise(((e4, t4) => {
4109
- n3 = e4, i3 = t4;
4110
- }));
4111
- Object.assign(e3, { reader: null, writer: null, resolveResult: n3, rejectResult: i3, result: r3 });
4112
- const { readable: a2, options: s2, scripts: o2 } = e3, { writable: l2, closed: c2 } = (function(e4) {
4113
- let t4;
4114
- const n4 = new Promise(((e5) => t4 = e5)), i4 = new WritableStream({ async write(t5) {
4115
- const n5 = e4.getWriter();
4116
- await n5.ready, await n5.write(t5), n5.releaseLock();
4117
- }, close() {
4118
- t4();
4119
- }, abort: (t5) => e4.getWriter().abort(t5) });
4120
- return { writable: i4, closed: n4 };
4121
- })(e3.writable), u2 = et({ type: Re, scripts: o2.slice(1), options: s2, config: t3, readable: a2, writable: l2 }, e3);
4122
- u2 || Object.assign(e3, { reader: a2.getReader(), writer: l2.getWriter() });
4123
- const d2 = await r3;
4124
- u2 || await l2.getWriter().close();
4125
- return await c2, d2;
4126
- })(e2, { chunkSize: i2 }) } });
3656
+ a2 = je(e2.workerURI, r2, e2);
3657
+ } catch {
3658
+ return _e = false, We(e2, t2);
3659
+ }
3660
+ Object.assign(e2, { worker: a2, interface: { run: () => (async function(e3, t3) {
3661
+ let r3, n3;
3662
+ const s3 = new Promise((e4, t4) => {
3663
+ r3 = e4, n3 = t4;
3664
+ });
3665
+ Object.assign(e3, { reader: null, writer: null, resolveResult: r3, rejectResult: n3, result: s3 });
3666
+ const { readable: a3, options: i2 } = e3, { writable: o2, closed: c2 } = (function(e4) {
3667
+ const { writable: t4, readable: r4 } = new TransformStream(), n4 = r4.pipeTo(e4, { preventClose: true });
3668
+ return { writable: t4, closed: n4 };
3669
+ })(e3.writable), l2 = Ie({ type: Se, options: i2, config: t3, readable: a3, writable: o2 }, e3);
3670
+ l2 || Object.assign(e3, { reader: a3.getReader(), writer: o2.getWriter() });
3671
+ const u2 = await s3;
3672
+ l2 || await o2.getWriter().close();
3673
+ return await c2, u2;
3674
+ })(e2, { chunkSize: n2, wasmURI: s2, baseURI: r2 }) } });
4127
3675
  }
4128
3676
  return e2.interface;
4129
3677
  }
4130
- let Ye = true, $e = true;
4131
- function et(e2, { worker: t2, writer: n2, onTaskFinished: i2, transferStreams: r2 }) {
3678
+ function je(e2, t2, r2, n2, s2 = true) {
3679
+ let a2, i2, o2;
3680
+ if (Fe === c$1) {
3681
+ const l2 = typeof e2 == d$1;
3682
+ i2 = l2 ? e2(s2) : e2;
3683
+ const u2 = i2.startsWith("data:"), f2 = i2.startsWith("blob:");
3684
+ if (u2 || f2) {
3685
+ n2 === c$1 && (n2 = false), n2 && (o2 = De);
3686
+ try {
3687
+ a2 = new Worker(i2, o2);
3688
+ } catch (s3) {
3689
+ if (f2) try {
3690
+ URL.revokeObjectURL(i2);
3691
+ } catch {
3692
+ }
3693
+ if (l2 && f2) return je(e2, t2, r2, n2, false);
3694
+ if (n2) throw s3;
3695
+ return je(e2, t2, r2, true, false);
3696
+ }
3697
+ } else {
3698
+ n2 === c$1 && (n2 = true), n2 && (o2 = De);
3699
+ try {
3700
+ i2 = new URL(i2, t2);
3701
+ } catch {
3702
+ }
3703
+ try {
3704
+ a2 = new Worker(i2, o2);
3705
+ } catch (a3) {
3706
+ if (n2) throw a3;
3707
+ return je(e2, t2, r2, false, s2);
3708
+ }
3709
+ }
3710
+ Fe = i2, Oe = o2;
3711
+ } else a2 = new Worker(Fe, Oe);
3712
+ return a2.addEventListener("message", (e3) => (async function({ data: e4 }, t3) {
3713
+ const { type: r3, value: n3, messageId: s3, result: a3, error: i3 } = e4, { reader: o3, writer: c2, resolveResult: l2, rejectResult: u2, onTaskFinished: d2 } = t3;
3714
+ try {
3715
+ if (i3) {
3716
+ const { message: e5, stack: t4, code: r4, name: n4, outputSize: s4 } = i3, a4 = new Error(e5);
3717
+ Object.assign(a4, { stack: t4, code: r4, name: n4, outputSize: s4 }), f2(a4);
3718
+ } else {
3719
+ if (r3 == ke) {
3720
+ const { value: e5, done: r4 } = await o3.read();
3721
+ Ie({ type: ze, value: e5, done: r4, messageId: s3 }, t3);
3722
+ }
3723
+ r3 == ze && (await c2.ready, await c2.write(new Uint8Array(n3)), Ie({ type: "ack", messageId: s3 }, t3)), r3 == xe && f2(null, a3);
3724
+ }
3725
+ } catch (i4) {
3726
+ Ie({ type: xe, messageId: s3 }, t3), f2(i4);
3727
+ }
3728
+ function f2(e5, t4) {
3729
+ e5 ? u2(e5) : l2(t4), c2 && c2.releaseLock(), d2();
3730
+ }
3731
+ })(e3, r2)), a2;
3732
+ }
3733
+ function Ie(e2, { worker: t2, writer: r2, onTaskFinished: n2, transferStreams: s2 }) {
4132
3734
  try {
4133
- let { value: n3, readable: i3, writable: a2 } = e2;
4134
- const s2 = [];
4135
- if (n3 && (n3.byteLength < n3.buffer.byteLength ? e2.value = n3.buffer.slice(0, n3.byteLength) : e2.value = n3.buffer, s2.push(e2.value)), r2 && $e ? (i3 && s2.push(i3), a2 && s2.push(a2)) : e2.readable = e2.writable = null, s2.length) try {
4136
- return t2.postMessage(e2, s2), true;
4137
- } catch (n4) {
4138
- $e = false, e2.readable = e2.writable = null, t2.postMessage(e2);
3735
+ const { value: r3, readable: n3, writable: a2 } = e2, i2 = [];
3736
+ if (r3 && (e2.value = r3, i2.push(e2.value.buffer)), s2 && Ee ? (n3 && i2.push(n3), a2 && i2.push(a2)) : e2.readable = e2.writable = null, i2.length) try {
3737
+ return t2.postMessage(e2, i2), true;
3738
+ } catch {
3739
+ Ee = false, e2.readable = e2.writable = null, t2.postMessage(e2);
4139
3740
  }
4140
3741
  else t2.postMessage(e2);
4141
3742
  } catch (e3) {
4142
- throw n2 && n2.releaseLock(), i2(), e3;
4143
- }
4144
- }
4145
- let tt = [];
4146
- const nt = [];
4147
- let it = 0;
4148
- async function rt(e2, t2) {
4149
- const { options: n2, config: i2 } = t2, { transferStreams: r2, useWebWorkers: a2, useCompressionStream: s2, codecType: o2, compressed: l2, signed: c2, encrypted: u2 } = n2, { workerScripts: d2, maxWorkers: f2 } = i2;
4150
- t2.transferStreams = r2 || r2 === S;
4151
- const h2 = !(l2 || c2 || u2 || t2.transferStreams);
4152
- return t2.useWebWorkers = !h2 && (a2 || a2 === S && i2.useWebWorkers), t2.scripts = t2.useWebWorkers && d2 ? d2[o2] : [], n2.useCompressionStream = s2 || s2 === S && i2.useCompressionStream, (await (async function() {
4153
- const n3 = tt.find(((e3) => !e3.busy));
4154
- if (n3) return at(n3), new Ze(n3, e2, t2, w2);
4155
- if (tt.length < f2) {
4156
- const n4 = { indexWorker: it };
4157
- return it++, tt.push(n4), new Ze(n4, e2, t2, w2);
4158
- }
4159
- return new Promise(((n4) => nt.push({ resolve: n4, stream: e2, workerOptions: t2 })));
3743
+ throw r2 && r2.releaseLock(), n2(), e3;
3744
+ }
3745
+ }
3746
+ let Be = [];
3747
+ const Pe = [];
3748
+ let Le = 0;
3749
+ async function Ve(e2, t2) {
3750
+ const { options: r2, config: n2 } = t2, { transferStreams: s2, useWebWorkers: a2, useCompressionStream: i2, compressed: o2, signed: l2, encrypted: u2 } = r2, { workerURI: d2, maxWorkers: f2 } = n2;
3751
+ t2.transferStreams = s2 || s2 === c$1;
3752
+ const h2 = !(o2 || l2 || u2 || t2.transferStreams);
3753
+ return t2.useWebWorkers = !h2 && (a2 || a2 === c$1 && n2.useWebWorkers), t2.workerURI = t2.useWebWorkers && d2 ? d2 : c$1, r2.useCompressionStream = i2 || i2 === c$1 && n2.useCompressionStream, (await (async function() {
3754
+ const r3 = Be.find((e3) => !e3.busy);
3755
+ if (r3) return Ne(r3), new Te(r3, e2, t2, p2);
3756
+ if (Be.length < f2) {
3757
+ const r4 = { indexWorker: Le };
3758
+ return Le++, Be.push(r4), new Te(r4, e2, t2, p2);
3759
+ }
3760
+ return new Promise((r4) => Pe.push({ resolve: r4, stream: e2, workerOptions: t2 }));
4160
3761
  })()).run();
4161
- function w2(e3) {
4162
- if (nt.length) {
4163
- const [{ resolve: t3, stream: n3, workerOptions: i3 }] = nt.splice(0, 1);
4164
- t3(new Ze(e3, n3, i3, w2));
4165
- } else e3.worker ? (at(e3), (function(e4, t3) {
4166
- const { config: n3 } = t3, { terminateWorkerTimeout: i3 } = n3;
4167
- Number.isFinite(i3) && i3 >= 0 && (e4.terminated ? e4.terminated = false : e4.terminateTimeout = setTimeout((async () => {
4168
- tt = tt.filter(((t4) => t4 != e4));
3762
+ function p2(e3) {
3763
+ if (Pe.length) {
3764
+ const [{ resolve: t3, stream: r3, workerOptions: n3 }] = Pe.splice(0, 1);
3765
+ t3(new Te(e3, r3, n3, p2));
3766
+ } else e3.worker ? (Ne(e3), (function(e4, t3) {
3767
+ const { config: r3 } = t3, { terminateWorkerTimeout: n3 } = r3;
3768
+ Number.isFinite(n3) && n3 >= 0 && (e4.terminated ? e4.terminated = false : e4.terminateTimeout = setTimeout(async () => {
3769
+ Be = Be.filter((t4) => t4 != e4);
4169
3770
  try {
4170
3771
  await e4.terminate();
4171
- } catch (e5) {
3772
+ } catch {
4172
3773
  }
4173
- }), i3));
4174
- })(e3, t2)) : tt = tt.filter(((t3) => t3 != e3));
3774
+ }, n3));
3775
+ })(e3, t2)) : Be = Be.filter((t3) => t3 != e3);
4175
3776
  }
4176
3777
  }
4177
- function at(e2) {
3778
+ function Ne(e2) {
4178
3779
  const { terminateTimeout: t2 } = e2;
4179
3780
  t2 && (clearTimeout(t2), e2.terminateTimeout = null);
4180
3781
  }
4181
- const st = 65536, ot = "writable";
4182
- class lt {
3782
+ const Ze = 65536, qe = "writable";
3783
+ class He {
4183
3784
  constructor() {
4184
3785
  this.size = 0;
4185
3786
  }
@@ -4187,403 +3788,461 @@
4187
3788
  this.initialized = true;
4188
3789
  }
4189
3790
  }
4190
- class ct extends lt {
3791
+ class Ke extends He {
4191
3792
  get readable() {
4192
- const e2 = this, { chunkSize: t2 = st } = e2, n2 = new ReadableStream({ start() {
3793
+ const e2 = this, { chunkSize: t2 = Ze } = e2, r2 = new ReadableStream({ start() {
4193
3794
  this.chunkOffset = 0;
4194
- }, async pull(i2) {
4195
- const { offset: r2 = 0, size: a2, diskNumberStart: s2 } = n2, { chunkOffset: o2 } = this;
4196
- i2.enqueue(await pt(e2, r2 + o2, Math.min(t2, a2 - o2), s2)), o2 + t2 > a2 ? i2.close() : this.chunkOffset += t2;
3795
+ }, async pull(n2) {
3796
+ const { offset: s2 = 0, size: a2, diskNumberStart: i2 } = r2, { chunkOffset: o2 } = this, l2 = a2 === c$1 ? t2 : Math.min(t2, a2 - o2), u2 = await rt(e2, s2 + o2, l2, i2);
3797
+ n2.enqueue(u2), o2 + t2 > a2 || a2 === c$1 && !u2.length && l2 ? n2.close() : this.chunkOffset += t2;
4197
3798
  } });
4198
- return n2;
3799
+ return r2;
4199
3800
  }
4200
3801
  }
4201
- class ut extends ct {
3802
+ class Ge extends Ke {
4202
3803
  constructor(e2) {
4203
3804
  super(), Object.assign(this, { blob: e2, size: e2.size });
4204
3805
  }
4205
3806
  async readUint8Array(e2, t2) {
4206
- const n2 = this, i2 = e2 + t2, r2 = e2 || i2 < n2.size ? n2.blob.slice(e2, i2) : n2.blob;
4207
- let a2 = await r2.arrayBuffer();
4208
- return a2.byteLength > t2 && (a2 = a2.slice(e2, i2)), new Uint8Array(a2);
3807
+ const r2 = this, n2 = e2 + t2, s2 = e2 || n2 < r2.size ? r2.blob.slice(e2, n2) : r2.blob;
3808
+ let a2 = await s2.arrayBuffer();
3809
+ return a2.byteLength > t2 && (a2 = a2.slice(e2, n2)), new Uint8Array(a2);
4209
3810
  }
4210
3811
  }
4211
- class dt extends lt {
3812
+ class Je extends He {
4212
3813
  constructor(e2) {
4213
3814
  super();
4214
- const t2 = new TransformStream(), n2 = [];
4215
- e2 && n2.push(["Content-Type", e2]), Object.defineProperty(this, ot, { get: () => t2.writable }), this.blob = new Response(t2.readable, { headers: n2 }).blob();
3815
+ const t2 = new TransformStream(), r2 = [];
3816
+ e2 && r2.push(["Content-Type", e2]), Object.defineProperty(this, qe, { get: () => t2.writable }), this.blob = new Response(t2.readable, { headers: r2 }).blob();
4216
3817
  }
4217
3818
  getData() {
4218
3819
  return this.blob;
4219
3820
  }
4220
3821
  }
4221
- class ft extends dt {
3822
+ class Qe extends Je {
4222
3823
  constructor(e2) {
4223
3824
  super(e2), Object.assign(this, { encoding: e2, utf8: !e2 || "utf-8" == e2.toLowerCase() });
4224
3825
  }
4225
3826
  async getData() {
4226
- const { encoding: e2, utf8: t2 } = this, n2 = await super.getData();
4227
- if (n2.text && t2) return n2.text();
3827
+ const { encoding: e2, utf8: t2 } = this, r2 = await super.getData();
3828
+ if (r2.text && t2) return r2.text();
4228
3829
  {
4229
3830
  const t3 = new FileReader();
4230
- return new Promise(((i2, r2) => {
4231
- Object.assign(t3, { onload: ({ target: e3 }) => i2(e3.result), onerror: () => r2(t3.error) }), t3.readAsText(n2, e2);
4232
- }));
3831
+ return new Promise((n2, s2) => {
3832
+ Object.assign(t3, { onload: ({ target: e3 }) => n2(e3.result), onerror: () => s2(t3.error) }), t3.readAsText(r2, e2);
3833
+ });
4233
3834
  }
4234
3835
  }
4235
3836
  }
4236
- class ht extends ct {
3837
+ class Xe extends Ke {
4237
3838
  constructor(e2) {
4238
3839
  super(), this.readers = e2;
4239
3840
  }
4240
3841
  async init() {
4241
3842
  const e2 = this, { readers: t2 } = e2;
4242
- e2.lastDiskNumber = 0, e2.lastDiskOffset = 0, await Promise.all(t2.map((async (n2, i2) => {
4243
- await n2.init(), i2 != t2.length - 1 && (e2.lastDiskOffset += n2.size), e2.size += n2.size;
4244
- }))), super.init();
4245
- }
4246
- async readUint8Array(e2, t2, n2 = 0) {
4247
- const i2 = this, { readers: r2 } = this;
4248
- let a2, s2 = n2;
4249
- -1 == s2 && (s2 = r2.length - 1);
3843
+ e2.lastDiskNumber = 0, e2.lastDiskOffset = 0, await Promise.all(t2.map(async (r2, n2) => {
3844
+ await r2.init(), n2 != t2.length - 1 && (e2.lastDiskOffset += r2.size), e2.size += r2.size;
3845
+ })), super.init();
3846
+ }
3847
+ async readUint8Array(e2, t2, r2 = 0) {
3848
+ const n2 = this, { readers: s2 } = this;
3849
+ let a2, i2 = r2;
3850
+ -1 == i2 && (i2 = s2.length - 1);
4250
3851
  let o2 = e2;
4251
- for (; o2 >= r2[s2].size; ) o2 -= r2[s2].size, s2++;
4252
- const l2 = r2[s2], c2 = l2.size;
4253
- if (o2 + t2 <= c2) a2 = await pt(l2, o2, t2);
4254
- else {
4255
- const r3 = c2 - o2;
4256
- a2 = new Uint8Array(t2), a2.set(await pt(l2, o2, r3)), a2.set(await i2.readUint8Array(e2 + r3, t2 - r3, n2), r3);
4257
- }
4258
- return i2.lastDiskNumber = Math.max(s2, i2.lastDiskNumber), a2;
3852
+ for (; s2[i2] && o2 >= s2[i2].size; ) o2 -= s2[i2].size, i2++;
3853
+ const c2 = s2[i2];
3854
+ if (c2) {
3855
+ const s3 = c2.size;
3856
+ if (o2 + t2 <= s3) a2 = await rt(c2, o2, t2);
3857
+ else {
3858
+ const i3 = s3 - o2;
3859
+ a2 = new Uint8Array(t2);
3860
+ const l2 = await rt(c2, o2, i3);
3861
+ a2.set(l2, 0);
3862
+ const u2 = await n2.readUint8Array(e2 + i3, t2 - i3, r2);
3863
+ a2.set(u2, i3), l2.length + u2.length < t2 && (a2 = a2.subarray(0, l2.length + u2.length));
3864
+ }
3865
+ } else a2 = new Uint8Array();
3866
+ return n2.lastDiskNumber = Math.max(i2, n2.lastDiskNumber), a2;
4259
3867
  }
4260
3868
  }
4261
- class wt extends lt {
3869
+ class Ye extends He {
4262
3870
  constructor(e2, t2 = 4294967295) {
4263
3871
  super();
4264
- const n2 = this;
4265
- let i2, r2, a2;
4266
- Object.assign(n2, { diskNumber: 0, diskOffset: 0, size: 0, maxSize: t2, availableSize: t2 });
4267
- const s2 = new WritableStream({ async write(t3) {
4268
- const { availableSize: s3 } = n2;
4269
- if (a2) t3.length >= s3 ? (await o2(t3.slice(0, s3)), await l2(), n2.diskOffset += i2.size, n2.diskNumber++, a2 = null, await this.write(t3.slice(s3))) : await o2(t3);
3872
+ const r2 = this;
3873
+ let n2, s2, a2;
3874
+ Object.assign(r2, { diskNumber: 0, diskOffset: 0, size: 0, maxSize: t2, availableSize: t2 });
3875
+ const i2 = new WritableStream({ async write(t3) {
3876
+ const { availableSize: i3 } = r2;
3877
+ if (a2) t3.length >= i3 ? (await o2(t3.subarray(0, i3)), await c2(), r2.diskOffset += n2.size, r2.diskNumber++, a2 = null, await this.write(t3.subarray(i3))) : await o2(t3);
4270
3878
  else {
4271
- const { value: s4, done: o3 } = await e2.next();
4272
- if (o3 && !s4) throw new Error("Writer iterator completed too soon");
4273
- i2 = s4, i2.size = 0, i2.maxSize && (n2.maxSize = i2.maxSize), n2.availableSize = n2.maxSize, await _t(i2), r2 = s4.writable, a2 = r2.getWriter(), await this.write(t3);
3879
+ const { value: i4, done: o3 } = await e2.next();
3880
+ if (o3 && !i4) throw new Error("Writer iterator completed too soon");
3881
+ n2 = i4, n2.size = 0, n2.maxSize && (r2.maxSize = n2.maxSize), r2.availableSize = r2.maxSize, await tt(n2), s2 = i4.writable, a2 = s2.getWriter(), await this.write(t3);
4274
3882
  }
4275
3883
  }, async close() {
4276
- await a2.ready, await l2();
3884
+ await a2.ready, await c2();
4277
3885
  } });
4278
3886
  async function o2(e3) {
4279
3887
  const t3 = e3.length;
4280
- t3 && (await a2.ready, await a2.write(e3), i2.size += t3, n2.size += t3, n2.availableSize -= t3);
3888
+ t3 && (await a2.ready, await a2.write(e3), n2.size += t3, r2.size += t3, r2.availableSize -= t3);
4281
3889
  }
4282
- async function l2() {
4283
- r2.size = i2.size, await a2.close();
3890
+ async function c2() {
3891
+ await a2.close();
4284
3892
  }
4285
- Object.defineProperty(n2, ot, { get: () => s2 });
3893
+ Object.defineProperty(r2, qe, { get: () => i2 });
4286
3894
  }
4287
3895
  }
4288
- async function _t(e2, t2) {
3896
+ class $e {
3897
+ constructor(e2) {
3898
+ return Array.isArray(e2) && (e2 = new Xe(e2)), e2 instanceof ReadableStream && (e2 = { readable: e2 }), e2;
3899
+ }
3900
+ }
3901
+ class et {
3902
+ constructor(e2) {
3903
+ return e2.writable === c$1 && typeof e2.next == d$1 && (e2 = new Ye(e2)), e2 instanceof WritableStream && (e2 = { writable: e2 }), e2.size === c$1 && (e2.size = 0), e2 instanceof Ye || Object.assign(e2, { diskNumber: 0, diskOffset: 0, availableSize: l$1, maxSize: l$1 }), e2;
3904
+ }
3905
+ }
3906
+ async function tt(e2, t2) {
4289
3907
  if (!e2.init || e2.initialized) return Promise.resolve();
4290
3908
  await e2.init(t2);
4291
3909
  }
4292
- function bt(e2) {
4293
- return Array.isArray(e2) && (e2 = new ht(e2)), e2 instanceof ReadableStream && (e2 = { readable: e2 }), e2;
4294
- }
4295
- function pt(e2, t2, n2, i2) {
4296
- return e2.readUint8Array(t2, n2, i2);
3910
+ function rt(e2, t2, r2, n2) {
3911
+ return e2.readUint8Array(t2, r2, n2);
4297
3912
  }
4298
- const mt = "\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split(""), gt = 256 == mt.length;
4299
- function yt(e2, t2) {
3913
+ const nt = "\0☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄↕‼¶§▬↨↑↓→←∟↔▲▼ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ".split(""), st = 256 == nt.length;
3914
+ function at(e2, t2) {
4300
3915
  return t2 && "cp437" == t2.trim().toLowerCase() ? (function(e3) {
4301
- if (gt) {
3916
+ if (st) {
4302
3917
  let t3 = "";
4303
- for (let n2 = 0; n2 < e3.length; n2++) t3 += mt[e3[n2]];
3918
+ for (let r2 = 0; r2 < e3.length; r2++) t3 += nt[e3[r2]];
4304
3919
  return t3;
4305
3920
  }
4306
3921
  return new TextDecoder().decode(e3);
4307
3922
  })(e2) : new TextDecoder(t2).decode(e2);
4308
3923
  }
4309
- const xt = "filename", kt = "rawFilename", vt = "comment", St = "rawComment", zt = "uncompressedSize", At = "compressedSize", Ut = "offset", Dt = "diskNumberStart", Et = "lastModDate", Tt = "rawLastModDate", Ft = "lastAccessDate", Ot = "rawLastAccessDate", Ct = "creationDate", Wt = "rawCreationDate", jt = [xt, kt, At, zt, Et, Tt, vt, St, Ft, Ct, Ut, Dt, Dt, "internalFileAttribute", "externalFileAttribute", "msDosCompatible", "zip64", "encrypted", "version", "versionMadeBy", "zipCrypto", "directory", "bitFlag", "signature", "filenameUTF8", "commentUTF8", "compressionMethod", "extraField", "rawExtraField", "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"];
4310
- class Mt {
3924
+ const it = "filename", ot = "rawFilename", ct = "comment", lt = "rawComment", ut = "uncompressedSize", dt = "compressedSize", ft = "offset", ht = "diskNumberStart", pt = "lastModDate", wt = "rawLastModDate", gt = "lastAccessDate", mt = "rawLastAccessDate", yt = "creationDate", bt = "rawCreationDate", St = [it, ot, ut, dt, pt, wt, ct, lt, gt, yt, bt, ft, ht, "internalFileAttributes", "externalFileAttributes", "msdosAttributesRaw", "msdosAttributes", "msDosCompatible", "zip64", "encrypted", "version", "versionMadeBy", "zipCrypto", "directory", "executable", "compressionMethod", "signature", "extraField", "extraFieldUnix", "extraFieldInfoZip", "uid", "gid", "unixMode", "setuid", "setgid", "sticky", "bitFlag", "filenameUTF8", "commentUTF8", "rawExtraField", "extraFieldZip64", "extraFieldUnicodePath", "extraFieldUnicodeComment", "extraFieldAES", "extraFieldNTFS", "extraFieldExtendedTimestamp"];
3925
+ class kt {
4311
3926
  constructor(e2) {
4312
- jt.forEach(((t2) => this[t2] = e2[t2]));
3927
+ St.forEach((t2) => this[t2] = e2[t2]);
4313
3928
  }
4314
3929
  }
4315
- const Lt = "File format is not recognized", Pt = "Zip64 extra field not found", Rt = "Compression method not supported", Bt = "Split zip file", It = "utf-8", Nt = "cp437", Vt = [[zt, g$1], [At, g$1], [Ut, g$1], [Dt, y$1]], qt = { [y$1]: { getValue: tn, bytes: 4 }, [g$1]: { getValue: nn, bytes: 8 } };
4316
- class Ht {
3930
+ const zt = "File format is not recognized", xt = "Zip64 extra field not found", Ut = "Compression method not supported", At = "Split zip file", vt = "Overlapping entry found", Dt = "utf-8", _t = "cp437", Ft = [[ut, e$1], [dt, e$1], [ft, e$1], [ht, t$1]], Ot = { [t$1]: { getValue: Nt, bytes: 4 }, [e$1]: { getValue: Zt, bytes: 8 } };
3931
+ class Et {
4317
3932
  constructor(e2, t2 = {}) {
4318
- Object.assign(this, { reader: bt(e2), options: t2, config: T$1 });
4319
- }
4320
- async *getEntriesGenerator(e2 = {}) {
4321
- const t2 = this;
4322
- let { reader: n2 } = t2;
4323
- const { config: i2 } = t2;
4324
- if (await _t(n2), n2.size !== S && n2.readUint8Array || (n2 = new ut(await new Response(n2.readable).blob()), await _t(n2)), n2.size < v$1) throw new Error(Lt);
4325
- n2.chunkSize = (function(e3) {
4326
- return Math.max(e3.chunkSize, 64);
4327
- })(i2);
4328
- const r2 = await (async function(e3, t3, n3, i3, r3) {
4329
- const a3 = new Uint8Array(4);
4330
- !(function(e4, t4, n4) {
4331
- e4.setUint32(t4, n4, true);
4332
- })(rn(a3), 0, t3);
4333
- const s3 = i3 + r3;
4334
- return await o3(i3) || await o3(Math.min(s3, n3));
4335
- async function o3(t4) {
4336
- const r4 = n3 - t4, s4 = await pt(e3, r4, t4);
4337
- for (let e4 = s4.length - i3; e4 >= 0; e4--) if (s4[e4] == a3[0] && s4[e4 + 1] == a3[1] && s4[e4 + 2] == a3[2] && s4[e4 + 3] == a3[3]) return { offset: r4 + e4, buffer: s4.slice(e4, e4 + i3).buffer };
3933
+ Object.assign(this, { reader: new $e(e2), options: t2, config: p$1, readRanges: [] });
3934
+ }
3935
+ async *getEntriesGenerator(n2 = {}) {
3936
+ const l2 = this;
3937
+ let { reader: u2 } = l2;
3938
+ const { config: d2 } = l2;
3939
+ if (await tt(u2), u2.size !== c$1 && u2.readUint8Array || (u2 = new Ge(await new Response(u2.readable).blob()), await tt(u2)), u2.size < i$1) throw new Error(zt);
3940
+ u2.chunkSize = (function(e2) {
3941
+ return Math.max(e2.chunkSize, 64);
3942
+ })(d2);
3943
+ const f2 = await (async function(e2, t2, r2, n3, s2) {
3944
+ const a2 = new Uint8Array(4);
3945
+ !(function(e3, t3, r3) {
3946
+ e3.setUint32(t3, r3, true);
3947
+ })(qt(a2), 0, t2);
3948
+ const i2 = n3 + s2;
3949
+ return await o2(n3) || await o2(Math.min(i2, r2));
3950
+ async function o2(t3) {
3951
+ const s3 = r2 - t3, i3 = await rt(e2, s3, t3);
3952
+ for (let e3 = i3.length - n3; e3 >= 0; e3--) if (i3[e3] == a2[0] && i3[e3 + 1] == a2[1] && i3[e3 + 2] == a2[2] && i3[e3 + 3] == a2[3]) return { offset: s3 + e3, buffer: i3.slice(e3, e3 + n3).buffer };
4338
3953
  }
4339
- })(n2, 101010256, n2.size, v$1, 1048560);
4340
- if (!r2) {
4341
- throw 134695760 == tn(rn(await pt(n2, 0, 4))) ? new Error(Bt) : new Error("End of central directory not found");
4342
- }
4343
- const a2 = rn(r2);
4344
- let s2 = tn(a2, 12), o2 = tn(a2, 16);
4345
- const l2 = r2.offset, c2 = en(a2, 20), u2 = l2 + v$1 + c2;
4346
- let d2 = en(a2, 4);
4347
- const f2 = n2.lastDiskNumber || 0;
4348
- let h2 = en(a2, 6), w2 = en(a2, 8), _2 = 0, b2 = 0;
4349
- if (o2 == g$1 || s2 == g$1 || w2 == y$1 || h2 == y$1) {
4350
- const e3 = rn(await pt(n2, r2.offset - 20, 20));
4351
- if (117853008 == tn(e3, 0)) {
4352
- o2 = nn(e3, 8);
4353
- let t3 = await pt(n2, o2, 56, -1), i3 = rn(t3);
4354
- const a3 = r2.offset - 20 - 56;
4355
- if (tn(i3, 0) != k$1 && o2 != a3) {
4356
- const e4 = o2;
4357
- o2 = a3, _2 = o2 - e4, t3 = await pt(n2, o2, 56, -1), i3 = rn(t3);
3954
+ })(u2, 101010256, u2.size, i$1, 1048560);
3955
+ if (!f2) {
3956
+ throw Nt(qt(await rt(u2, 0, 4))) == r$1 ? new Error(At) : new Error("End of central directory not found");
3957
+ }
3958
+ const h2 = qt(f2);
3959
+ let p2 = Nt(h2, 12), w2 = Nt(h2, 16);
3960
+ const g2 = f2.offset, m2 = Vt(h2, 20), y2 = g2 + i$1 + m2;
3961
+ let b2 = Vt(h2, 4);
3962
+ const S2 = u2.lastDiskNumber || 0;
3963
+ let k2 = Vt(h2, 6), z2 = Vt(h2, 8), x2 = 0, U2 = 0;
3964
+ if (w2 == e$1 || p2 == e$1 || z2 == t$1 || k2 == t$1) {
3965
+ const r2 = qt(await rt(u2, f2.offset - 20, 20));
3966
+ if (117853008 == Nt(r2, 0)) {
3967
+ w2 = Zt(r2, 8);
3968
+ let n3 = await rt(u2, w2, 56, -1), s2 = qt(n3);
3969
+ const i2 = f2.offset - 20 - 56;
3970
+ if (Nt(s2, 0) != a$1 && w2 != i2) {
3971
+ const e2 = w2;
3972
+ w2 = i2, w2 > e2 && (x2 = w2 - e2), n3 = await rt(u2, w2, 56, -1), s2 = qt(n3);
4358
3973
  }
4359
- if (tn(i3, 0) != k$1) throw new Error("End of Zip64 central directory locator not found");
4360
- d2 == y$1 && (d2 = tn(i3, 16)), h2 == y$1 && (h2 = tn(i3, 20)), w2 == y$1 && (w2 = nn(i3, 32)), s2 == g$1 && (s2 = nn(i3, 40)), o2 -= s2;
3974
+ if (Nt(s2, 0) != a$1) throw new Error("End of Zip64 central directory locator not found");
3975
+ b2 == t$1 && (b2 = Nt(s2, 16)), k2 == t$1 && (k2 = Nt(s2, 20)), z2 == t$1 && (z2 = Zt(s2, 32)), p2 == e$1 && (p2 = Zt(s2, 40)), w2 -= p2;
4361
3976
  }
4362
3977
  }
4363
- if (o2 >= n2.size && (_2 = n2.size - o2 - s2 - v$1, o2 = n2.size - s2 - v$1), f2 != d2) throw new Error(Bt);
4364
- if (o2 < 0) throw new Error(Lt);
4365
- let p2 = 0, m2 = await pt(n2, o2, s2, h2), z2 = rn(m2);
4366
- if (s2) {
4367
- const e3 = r2.offset - s2;
4368
- if (tn(z2, p2) != x$1 && o2 != e3) {
4369
- const t3 = o2;
4370
- o2 = e3, _2 += o2 - t3, m2 = await pt(n2, o2, s2, h2), z2 = rn(m2);
3978
+ if (w2 >= u2.size && (x2 = u2.size - w2 - p2 - i$1, w2 = u2.size - p2 - i$1), S2 != b2) throw new Error(At);
3979
+ if (w2 < 0) throw new Error(zt);
3980
+ let A2 = 0, v2 = await rt(u2, w2, p2, k2), D2 = qt(v2);
3981
+ if (p2) {
3982
+ const e2 = f2.offset - p2;
3983
+ if (Nt(D2, A2) != s$1 && w2 != e2) {
3984
+ const t2 = w2;
3985
+ w2 = e2, w2 > t2 && (x2 += w2 - t2), v2 = await rt(u2, w2, p2, k2), D2 = qt(v2);
4371
3986
  }
4372
3987
  }
4373
- const A2 = r2.offset - o2 - (n2.lastDiskOffset || 0);
4374
- if (s2 != A2 && A2 >= 0 && (s2 = A2, m2 = await pt(n2, o2, s2, h2), z2 = rn(m2)), o2 < 0 || o2 >= n2.size) throw new Error(Lt);
4375
- const U2 = Qt(t2, e2, "filenameEncoding"), D2 = Qt(t2, e2, "commentEncoding");
4376
- for (let r3 = 0; r3 < w2; r3++) {
4377
- const a3 = new Kt(n2, i2, t2.options);
4378
- if (tn(z2, p2) != x$1) throw new Error("Central directory header not found");
4379
- Zt(a3, z2, p2 + 6);
4380
- const s3 = Boolean(a3.bitFlag.languageEncodingFlag), o3 = p2 + 46, l3 = o3 + a3.filenameLength, c3 = l3 + a3.extraFieldLength, u3 = en(z2, p2 + 4), d3 = true, f3 = m2.subarray(o3, l3), h3 = en(z2, p2 + 32), g2 = c3 + h3, y2 = m2.subarray(c3, g2), k2 = s3, v2 = s3, A3 = !(16 & ~$t(z2, p2 + 38)), E3 = tn(z2, p2 + 42) + _2;
4381
- Object.assign(a3, { versionMadeBy: u3, msDosCompatible: d3, compressedSize: 0, uncompressedSize: 0, commentLength: h3, directory: A3, offset: E3, diskNumberStart: en(z2, p2 + 34), internalFileAttribute: en(z2, p2 + 36), externalFileAttribute: tn(z2, p2 + 38), rawFilename: f3, filenameUTF8: k2, commentUTF8: v2, rawExtraField: m2.subarray(l3, c3) });
4382
- const T3 = Qt(t2, e2, "decodeText") || yt, F2 = k2 ? It : U2 || Nt, O2 = v2 ? It : D2 || Nt;
4383
- let C2 = T3(f3, F2);
4384
- C2 === S && (C2 = yt(f3, F2));
4385
- let W2 = T3(y2, O2);
4386
- W2 === S && (W2 = yt(y2, O2)), Object.assign(a3, { rawComment: y2, filename: C2, comment: W2, directory: A3 || C2.endsWith("/") }), b2 = Math.max(E3, b2), await Gt(a3, a3, z2, p2 + 6), a3.zipCrypto = a3.encrypted && !a3.extraFieldAES;
4387
- const j2 = new Mt(a3);
4388
- j2.getData = (e3, t3) => a3.getData(e3, j2, t3), p2 = g2;
4389
- const { onprogress: M2 } = e2;
4390
- if (M2) try {
4391
- await M2(r3 + 1, w2, new Mt(a3));
4392
- } catch (e3) {
3988
+ const _2 = f2.offset - w2 - (u2.lastDiskOffset || 0);
3989
+ if (p2 != _2 && _2 >= 0 && (p2 = _2, v2 = await rt(u2, w2, p2, k2), D2 = qt(v2)), w2 < 0 || w2 >= u2.size) throw new Error(zt);
3990
+ const F2 = It(l2, n2, "filenameEncoding"), O2 = It(l2, n2, "commentEncoding");
3991
+ for (let e2 = 0; e2 < z2; e2++) {
3992
+ const r2 = new Tt(u2, d2, l2.options);
3993
+ if (Nt(D2, A2) != s$1) throw new Error("Central directory header not found");
3994
+ Ct(r2, D2, A2 + 6);
3995
+ const a2 = Boolean(r2.bitFlag.languageEncodingFlag), i2 = A2 + 46, f3 = i2 + r2.filenameLength, h3 = f3 + r2.extraFieldLength, p3 = Vt(D2, A2 + 4), w3 = !(p3 >> 8), g3 = p3 >> 8 == 3, m3 = v2.subarray(i2, f3), y3 = Vt(D2, A2 + 32), b3 = h3 + y3, S3 = v2.subarray(h3, b3), k3 = a2, _3 = a2, E3 = Nt(D2, A2 + 38), T3 = 255 & E3, C2 = { readOnly: Boolean(1 & T3), hidden: Boolean(2 & T3), system: Boolean(4 & T3), directory: Boolean(16 & T3), archive: Boolean(32 & T3) }, R2 = Nt(D2, A2 + 42) + x2, W2 = It(l2, n2, "decodeText") || at, M2 = k3 ? Dt : F2 || _t, j2 = _3 ? Dt : O2 || _t;
3996
+ let I2 = W2(m3, M2);
3997
+ I2 === c$1 && (I2 = at(m3, M2));
3998
+ let B2 = W2(S3, j2);
3999
+ B2 === c$1 && (B2 = at(S3, j2)), Object.assign(r2, { versionMadeBy: p3, msDosCompatible: w3, compressedSize: 0, uncompressedSize: 0, commentLength: y3, offset: R2, diskNumberStart: Vt(D2, A2 + 34), internalFileAttributes: Vt(D2, A2 + 36), externalFileAttributes: E3, msdosAttributesRaw: T3, msdosAttributes: C2, rawFilename: m3, filenameUTF8: k3, commentUTF8: _3, rawExtraField: v2.subarray(f3, h3), rawComment: S3, filename: I2, comment: B2 }), U2 = Math.max(R2, U2), Rt(r2, r2, D2, A2 + 6);
4000
+ const P2 = r2.externalFileAttributes >> 16 & t$1;
4001
+ r2.unixMode === c$1 && 16877 & P2 && (r2.unixMode = P2);
4002
+ const L2 = Boolean(2048 & r2.unixMode), V2 = Boolean(1024 & r2.unixMode), N2 = Boolean(512 & r2.unixMode), Z2 = r2.unixMode !== c$1 ? !!(73 & r2.unixMode) : g3 && !!(73 & P2), q2 = r2.unixMode !== c$1 && (61440 & r2.unixMode) == o$1, H2 = (61440 & P2) == o$1;
4003
+ Object.assign(r2, { setuid: L2, setgid: V2, sticky: N2, unixExternalUpper: P2, internalFileAttribute: r2.internalFileAttributes, externalFileAttribute: r2.externalFileAttributes, executable: Z2, directory: q2 || H2 || w3 && C2.directory || I2.endsWith("/") && !r2.uncompressedSize, zipCrypto: r2.encrypted && !r2.extraFieldAES });
4004
+ const K2 = new kt(r2);
4005
+ K2.getData = (e3, t2) => r2.getData(e3, K2, l2.readRanges, t2), K2.arrayBuffer = async (e3) => {
4006
+ const t2 = new TransformStream(), [n3] = await Promise.all([new Response(t2.readable).arrayBuffer(), r2.getData(t2, K2, l2.readRanges, e3)]);
4007
+ return n3;
4008
+ }, A2 = b3;
4009
+ const { onprogress: G2 } = n2;
4010
+ if (G2) try {
4011
+ await G2(e2 + 1, z2, new kt(r2));
4012
+ } catch {
4393
4013
  }
4394
- yield j2;
4014
+ yield K2;
4395
4015
  }
4396
- const E2 = Qt(t2, e2, "extractPrependedData"), T2 = Qt(t2, e2, "extractAppendedData");
4397
- return E2 && (t2.prependedData = b2 > 0 ? await pt(n2, 0, b2) : new Uint8Array()), t2.comment = c2 ? await pt(n2, l2 + v$1, c2) : new Uint8Array(), T2 && (t2.appendedData = u2 < n2.size ? await pt(n2, u2, n2.size - u2) : new Uint8Array()), true;
4016
+ const E2 = It(l2, n2, "extractPrependedData"), T2 = It(l2, n2, "extractAppendedData");
4017
+ return E2 && (l2.prependedData = U2 > 0 ? await rt(u2, 0, U2) : new Uint8Array()), l2.comment = m2 ? await rt(u2, g2 + i$1, m2) : new Uint8Array(), T2 && (l2.appendedData = y2 < u2.size ? await rt(u2, y2, u2.size - y2) : new Uint8Array()), true;
4398
4018
  }
4399
4019
  async getEntries(e2 = {}) {
4400
4020
  const t2 = [];
4401
- for await (const n2 of this.getEntriesGenerator(e2)) t2.push(n2);
4021
+ for await (const r2 of this.getEntriesGenerator(e2)) t2.push(r2);
4402
4022
  return t2;
4403
4023
  }
4404
4024
  async close() {
4405
4025
  }
4406
4026
  }
4407
- class Kt {
4408
- constructor(e2, t2, n2) {
4409
- Object.assign(this, { reader: e2, config: t2, options: n2 });
4410
- }
4411
- async getData(e2, t2, n2 = {}) {
4412
- const i2 = this, { reader: r2, offset: a2, diskNumberStart: s2, extraFieldAES: o2, compressionMethod: l2, config: c2, bitFlag: u2, signature: d2, rawLastModDate: f2, uncompressedSize: h2, compressedSize: w2 } = i2, _2 = t2.localDirectory = {}, b2 = rn(await pt(r2, a2, 30, s2));
4413
- let p2 = Qt(i2, n2, "password"), m2 = Qt(i2, n2, "rawPassword");
4414
- const g2 = Qt(i2, n2, "passThrough");
4415
- if (p2 = p2 && p2.length && p2, m2 = m2 && m2.length && m2, o2 && 99 != o2.originalCompressionMethod) throw new Error(Rt);
4416
- if (0 != l2 && 8 != l2 && !g2) throw new Error(Rt);
4417
- if (67324752 != tn(b2, 0)) throw new Error("Local file header not found");
4418
- Zt(_2, b2, 4), _2.rawExtraField = _2.extraFieldLength ? await pt(r2, a2 + 30 + _2.filenameLength, _2.extraFieldLength, s2) : new Uint8Array(), await Gt(i2, _2, b2, 4, true), Object.assign(t2, { lastAccessDate: _2.lastAccessDate, creationDate: _2.creationDate });
4419
- const y2 = i2.encrypted && _2.encrypted && !g2, x2 = y2 && !o2;
4420
- if (g2 || (t2.zipCrypto = x2), y2) {
4421
- if (!x2 && o2.strength === S) throw new Error("Encryption method not supported");
4422
- if (!p2 && !m2) throw new Error("File contains encrypted entry");
4423
- }
4424
- const k2 = a2 + 30 + _2.filenameLength + _2.extraFieldLength, v2 = w2, z2 = r2.readable;
4425
- Object.assign(z2, { diskNumberStart: s2, offset: k2, size: v2 });
4426
- const U2 = Qt(i2, n2, "signal"), D2 = Qt(i2, n2, "checkPasswordOnly");
4427
- D2 && (e2 = new WritableStream()), e2 = (function(e3) {
4428
- e3.writable === S && typeof e3.next == A$1 && (e3 = new wt(e3)), e3 instanceof WritableStream && (e3 = { writable: e3 });
4429
- const { writable: t3 } = e3;
4430
- return t3.size === S && (t3.size = 0), e3 instanceof wt || Object.assign(e3, { diskNumber: 0, diskOffset: 0, availableSize: 1 / 0, maxSize: 1 / 0 }), e3;
4431
- })(e2), await _t(e2, g2 ? w2 : h2);
4432
- const { writable: E2 } = e2, { onstart: T2, onprogress: F2, onend: O2 } = n2, C2 = { options: { codecType: Ve, password: p2, rawPassword: m2, zipCrypto: x2, encryptionStrength: o2 && o2.strength, signed: Qt(i2, n2, "checkSignature") && !g2, passwordVerification: x2 && (u2.dataDescriptor ? f2 >>> 8 & 255 : d2 >>> 24 & 255), signature: d2, compressed: 0 != l2 && !g2, encrypted: i2.encrypted && !g2, useWebWorkers: Qt(i2, n2, "useWebWorkers"), useCompressionStream: Qt(i2, n2, "useCompressionStream"), transferStreams: Qt(i2, n2, "transferStreams"), checkPasswordOnly: D2 }, config: c2, streamOptions: { signal: U2, size: v2, onstart: T2, onprogress: F2, onend: O2 } };
4433
- let W2 = 0;
4027
+ class Tt {
4028
+ constructor(e2, t2, r2) {
4029
+ Object.assign(this, { reader: e2, config: t2, options: r2 });
4030
+ }
4031
+ async getData(e2, t2, r2, s2 = {}) {
4032
+ const a2 = this, { reader: i2, offset: o2, diskNumberStart: l2, extraFieldAES: u2, extraFieldZip64: d2, compressionMethod: f2, config: h2, bitFlag: p2, signature: w2, rawLastModDate: g2, uncompressedSize: m2, compressedSize: y2 } = a2, { dataDescriptor: b2 } = p2, S2 = t2.localDirectory = {}, k2 = qt(await rt(i2, o2, 30, l2));
4033
+ let z2 = It(a2, s2, "password"), x2 = It(a2, s2, "rawPassword");
4034
+ const U2 = It(a2, s2, "passThrough");
4035
+ if (z2 = z2 && z2.length && z2, x2 = x2 && x2.length && x2, u2 && 99 != u2.originalCompressionMethod) throw new Error(Ut);
4036
+ if (0 != f2 && 8 != f2 && 9 != f2 && !U2) throw new Error(Ut);
4037
+ if (67324752 != Nt(k2, 0)) throw new Error("Local file header not found");
4038
+ Ct(S2, k2, 4);
4039
+ const { extraFieldLength: A2, filenameLength: v2, lastAccessDate: D2, creationDate: _2 } = S2;
4040
+ S2.rawExtraField = A2 ? await rt(i2, o2 + 30 + v2, A2, l2) : new Uint8Array(), Rt(a2, S2, k2, 4, true), Object.assign(t2, { lastAccessDate: D2, creationDate: _2 });
4041
+ const F2 = a2.encrypted && S2.encrypted && !U2, E2 = F2 && !u2;
4042
+ if (U2 || (t2.zipCrypto = E2), F2) {
4043
+ if (!E2 && u2.strength === c$1) throw new Error("Encryption method not supported");
4044
+ if (!z2 && !x2) throw new Error("File contains encrypted entry");
4045
+ }
4046
+ const T2 = o2 + 30 + v2 + A2, C2 = y2, R2 = i2.readable;
4047
+ Object.assign(R2, { diskNumberStart: l2, offset: T2, size: C2 });
4048
+ const W2 = It(a2, s2, "signal"), M2 = It(a2, s2, "checkPasswordOnly");
4049
+ let j2 = It(a2, s2, "checkOverlappingEntry");
4050
+ const I2 = It(a2, s2, "checkOverlappingEntryOnly");
4051
+ I2 && (j2 = true);
4052
+ const { onstart: B2, onprogress: P2, onend: L2 } = s2, V2 = 9 == f2;
4053
+ let N2 = It(a2, s2, "useCompressionStream");
4054
+ V2 && (N2 = false);
4055
+ const Z2 = { options: { codecType: Ue, password: z2, rawPassword: x2, zipCrypto: E2, encryptionStrength: u2 && u2.strength, signed: It(a2, s2, "checkSignature") && !U2, passwordVerification: E2 && (b2 ? g2 >>> 8 & 255 : w2 >>> 24 & 255), outputSize: U2 ? y2 : m2, signature: w2, compressed: 0 != f2 && !U2, encrypted: a2.encrypted && !U2, useWebWorkers: It(a2, s2, "useWebWorkers"), useCompressionStream: N2, transferStreams: It(a2, s2, "transferStreams"), deflate64: V2, checkPasswordOnly: M2 }, config: h2, streamOptions: { signal: W2, size: C2, onstart: B2, onprogress: P2, onend: L2 } };
4056
+ let q2;
4057
+ j2 && await (async function({ reader: e3, fileEntry: t3, offset: r3, diskNumberStart: s3, signature: a3, compressedSize: i3, uncompressedSize: o3, dataOffset: c2, dataDescriptor: l3, extraFieldZip64: u3, readRanges: d3 }) {
4058
+ let f3 = 0;
4059
+ if (s3) for (let t4 = 0; t4 < s3; t4++) {
4060
+ f3 += e3.readers[t4].size;
4061
+ }
4062
+ let h3 = 0;
4063
+ l3 && (h3 = u3 ? 20 : 12);
4064
+ if (h3) {
4065
+ const r4 = await rt(e3, c2 + i3, h3 + 4, s3);
4066
+ if (Nt(qt(r4), 0) == n$1) {
4067
+ const e4 = Nt(qt(r4), 4);
4068
+ let n2, s4;
4069
+ u3 ? (n2 = Zt(qt(r4), 8), s4 = Zt(qt(r4), 16)) : (n2 = Nt(qt(r4), 8), s4 = Nt(qt(r4), 12));
4070
+ (t3.encrypted && !t3.zipCrypto || e4 == a3) && n2 == i3 && s4 == o3 && (h3 += 4);
4071
+ }
4072
+ }
4073
+ const p3 = { start: f3 + r3, end: f3 + c2 + i3 + h3, fileEntry: t3 };
4074
+ for (const e4 of d3) if (e4.fileEntry != t3 && p3.start >= e4.start && p3.start < e4.end) {
4075
+ const t4 = new Error(vt);
4076
+ throw t4.overlappingEntry = e4.fileEntry, t4;
4077
+ }
4078
+ d3.push(p3);
4079
+ })({ reader: i2, fileEntry: t2, offset: o2, diskNumberStart: l2, signature: w2, compressedSize: y2, uncompressedSize: m2, dataOffset: T2, dataDescriptor: b2 || S2.bitFlag.dataDescriptor, extraFieldZip64: d2 || S2.extraFieldZip64, readRanges: r2 });
4434
4080
  try {
4435
- ({ outputSize: W2 } = await rt({ readable: z2, writable: E2 }, C2));
4436
- } catch (e3) {
4437
- if (!D2 || e3.message != K) throw e3;
4081
+ if (!I2) {
4082
+ M2 && (e2 = new WritableStream()), e2 = new et(e2), await tt(e2, U2 ? y2 : m2), { writable: q2 } = e2;
4083
+ const { outputSize: t3 } = await Ve({ readable: R2, writable: q2 }, Z2);
4084
+ if (e2.size += t3, t3 != (U2 ? y2 : m2)) throw new Error(pe);
4085
+ }
4086
+ } catch (t3) {
4087
+ if (t3.outputSize !== c$1 && (e2.size += t3.outputSize), !M2 || t3.message != O) throw t3;
4438
4088
  } finally {
4439
- const e3 = Qt(i2, n2, "preventClose");
4440
- E2.size += W2, e3 || E2.locked || await E2.getWriter().close();
4089
+ It(a2, s2, "preventClose") || !q2 || q2.locked || await q2.getWriter().close();
4441
4090
  }
4442
- return D2 ? S : e2.getData ? e2.getData() : E2;
4091
+ return M2 || I2 ? c$1 : e2.getData ? e2.getData() : q2;
4443
4092
  }
4444
4093
  }
4445
- function Zt(e2, t2, n2) {
4446
- const i2 = e2.rawBitFlag = en(t2, n2 + 2), r2 = !(1 & ~i2), a2 = tn(t2, n2 + 6);
4447
- Object.assign(e2, { encrypted: r2, version: en(t2, n2), bitFlag: { level: (6 & i2) >> 1, dataDescriptor: !(8 & ~i2), languageEncodingFlag: !(2048 & ~i2) }, rawLastModDate: a2, lastModDate: Xt(a2), filenameLength: en(t2, n2 + 22), extraFieldLength: en(t2, n2 + 24) });
4094
+ function Ct(e2, t2, r2) {
4095
+ const n2 = e2.rawBitFlag = Vt(t2, r2 + 2), s2 = !(1 & ~n2), a2 = Nt(t2, r2 + 6);
4096
+ Object.assign(e2, { encrypted: s2, version: Vt(t2, r2), bitFlag: { level: (6 & n2) >> 1, dataDescriptor: !(8 & ~n2), languageEncodingFlag: !(2048 & ~n2) }, rawLastModDate: a2, lastModDate: Bt(a2), filenameLength: Vt(t2, r2 + 22), extraFieldLength: Vt(t2, r2 + 24) });
4448
4097
  }
4449
- async function Gt(e2, t2, n2, i2, r2) {
4450
- const { rawExtraField: a2 } = t2, s2 = t2.extraField = /* @__PURE__ */ new Map(), o2 = rn(new Uint8Array(a2));
4451
- let l2 = 0;
4098
+ function Rt(e2, t2, r2, n2, s2) {
4099
+ const { rawExtraField: a2 } = t2, i2 = t2.extraField = /* @__PURE__ */ new Map(), o2 = qt(new Uint8Array(a2));
4100
+ let c2 = 0;
4452
4101
  try {
4453
- for (; l2 < a2.length; ) {
4454
- const e3 = en(o2, l2), t3 = en(o2, l2 + 2);
4455
- s2.set(e3, { type: e3, data: a2.slice(l2 + 4, l2 + 4 + t3) }), l2 += 4 + t3;
4102
+ for (; c2 < a2.length; ) {
4103
+ const e3 = Vt(o2, c2), t3 = Vt(o2, c2 + 2);
4104
+ i2.set(e3, { type: e3, data: a2.slice(c2 + 4, c2 + 4 + t3) }), c2 += 4 + t3;
4456
4105
  }
4457
- } catch (e3) {
4106
+ } catch {
4458
4107
  }
4459
- const c2 = en(n2, i2 + 4);
4460
- Object.assign(t2, { signature: tn(n2, i2 + 10), uncompressedSize: tn(n2, i2 + 18), compressedSize: tn(n2, i2 + 14) });
4461
- const u2 = s2.get(1);
4108
+ const l2 = Vt(r2, n2 + 4);
4109
+ Object.assign(t2, { signature: Nt(r2, n2 + 10), compressedSize: Nt(r2, n2 + 14), uncompressedSize: Nt(r2, n2 + 18) });
4110
+ const u2 = i2.get(1);
4462
4111
  u2 && (!(function(e3, t3) {
4463
4112
  t3.zip64 = true;
4464
- const n3 = rn(e3.data), i3 = Vt.filter((([e4, n4]) => t3[e4] == n4));
4465
- for (let r3 = 0, a3 = 0; r3 < i3.length; r3++) {
4466
- const [s3, o3] = i3[r3];
4467
- if (t3[s3] == o3) {
4468
- const i4 = qt[o3];
4469
- t3[s3] = e3[s3] = i4.getValue(n3, a3), a3 += i4.bytes;
4470
- } else if (e3[s3]) throw new Error(Pt);
4113
+ const r3 = qt(e3.data), n3 = Ft.filter(([e4, r4]) => t3[e4] == r4);
4114
+ for (let s3 = 0, a3 = 0; s3 < n3.length; s3++) {
4115
+ const [i3, o3] = n3[s3];
4116
+ if (t3[i3] == o3) {
4117
+ const n4 = Ot[o3];
4118
+ t3[i3] = e3[i3] = n4.getValue(r3, a3), a3 += n4.bytes;
4119
+ } else if (e3[i3]) throw new Error(xt);
4471
4120
  }
4472
4121
  })(u2, t2), t2.extraFieldZip64 = u2);
4473
- const d2 = s2.get(28789);
4474
- d2 && (await Jt(d2, xt, kt, t2, e2), t2.extraFieldUnicodePath = d2);
4475
- const f2 = s2.get(25461);
4476
- f2 && (await Jt(f2, vt, St, t2, e2), t2.extraFieldUnicodeComment = f2);
4477
- const h2 = s2.get(39169);
4478
- h2 ? (!(function(e3, t3, n3) {
4479
- const i3 = rn(e3.data), r3 = $t(i3, 4);
4480
- Object.assign(e3, { vendorVersion: $t(i3, 0), vendorId: $t(i3, 2), strength: r3, originalCompressionMethod: n3, compressionMethod: en(i3, 5) }), t3.compressionMethod = e3.compressionMethod;
4481
- })(h2, t2, c2), t2.extraFieldAES = h2) : t2.compressionMethod = c2;
4482
- const w2 = s2.get(10);
4483
- w2 && (!(function(e3, t3) {
4484
- const n3 = rn(e3.data);
4485
- let i3, r3 = 4;
4122
+ const d2 = i2.get(28789);
4123
+ d2 && (Wt(d2, it, ot, t2, e2), t2.extraFieldUnicodePath = d2);
4124
+ const f2 = i2.get(25461);
4125
+ f2 && (Wt(f2, ct, lt, t2, e2), t2.extraFieldUnicodeComment = f2);
4126
+ const h2 = i2.get(39169);
4127
+ h2 ? (!(function(e3, t3, r3) {
4128
+ const n3 = qt(e3.data), s3 = Lt(n3, 4);
4129
+ Object.assign(e3, { vendorVersion: Lt(n3, 0), vendorId: Lt(n3, 2), strength: s3, originalCompressionMethod: r3, compressionMethod: Vt(n3, 5) }), t3.compressionMethod = e3.compressionMethod;
4130
+ })(h2, t2, l2), t2.extraFieldAES = h2) : t2.compressionMethod = l2;
4131
+ const p2 = i2.get(10);
4132
+ p2 && (!(function(e3, t3) {
4133
+ const r3 = qt(e3.data);
4134
+ let n3, s3 = 4;
4486
4135
  try {
4487
- for (; r3 < e3.data.length && !i3; ) {
4488
- const t4 = en(n3, r3), a3 = en(n3, r3 + 2);
4489
- 1 == t4 && (i3 = e3.data.slice(r3 + 4, r3 + 4 + a3)), r3 += 4 + a3;
4136
+ for (; s3 < e3.data.length && !n3; ) {
4137
+ const t4 = Vt(r3, s3), a3 = Vt(r3, s3 + 2);
4138
+ 1 == t4 && (n3 = e3.data.slice(s3 + 4, s3 + 4 + a3)), s3 += 4 + a3;
4490
4139
  }
4491
- } catch (e4) {
4140
+ } catch {
4492
4141
  }
4493
4142
  try {
4494
- if (i3 && 24 == i3.length) {
4495
- const n4 = rn(i3), r4 = n4.getBigUint64(0, true), a3 = n4.getBigUint64(8, true), s3 = n4.getBigUint64(16, true);
4496
- Object.assign(e3, { rawLastModDate: r4, rawLastAccessDate: a3, rawCreationDate: s3 });
4497
- const o3 = Yt(r4), l3 = Yt(a3), c3 = { lastModDate: o3, lastAccessDate: l3, creationDate: Yt(s3) };
4498
- Object.assign(e3, c3), Object.assign(t3, c3);
4143
+ if (n3 && 24 == n3.length) {
4144
+ const r4 = qt(n3), s4 = r4.getBigUint64(0, true), a3 = r4.getBigUint64(8, true), i3 = r4.getBigUint64(16, true);
4145
+ Object.assign(e3, { rawLastModDate: s4, rawLastAccessDate: a3, rawCreationDate: i3 });
4146
+ const o3 = Pt(s4), c3 = Pt(a3), l3 = { lastModDate: o3, lastAccessDate: c3, creationDate: Pt(i3) };
4147
+ Object.assign(e3, l3), Object.assign(t3, l3);
4499
4148
  }
4500
- } catch (e4) {
4149
+ } catch {
4501
4150
  }
4502
- })(w2, t2), t2.extraFieldNTFS = w2);
4503
- const _2 = s2.get(21589);
4504
- _2 && (!(function(e3, t3, n3) {
4505
- const i3 = rn(e3.data), r3 = $t(i3, 0), a3 = [], s3 = [];
4506
- n3 ? (1 & ~r3 || (a3.push(Et), s3.push(Tt)), 2 & ~r3 || (a3.push(Ft), s3.push(Ot)), 4 & ~r3 || (a3.push(Ct), s3.push(Wt))) : e3.data.length >= 5 && (a3.push(Et), s3.push(Tt));
4151
+ })(p2, t2), t2.extraFieldNTFS = p2);
4152
+ const w2 = i2.get(30805);
4153
+ if (w2) Mt(w2, t2, false), t2.extraFieldUnix = w2;
4154
+ else {
4155
+ const e3 = i2.get(30837);
4156
+ e3 && (Mt(e3, t2, true), t2.extraFieldInfoZip = e3);
4157
+ }
4158
+ const g2 = i2.get(21589);
4159
+ g2 && (!(function(e3, t3, r3) {
4160
+ const n3 = qt(e3.data), s3 = Lt(n3, 0), a3 = [], i3 = [];
4161
+ r3 ? (1 & ~s3 || (a3.push(pt), i3.push(wt)), 2 & ~s3 || (a3.push(gt), i3.push(mt)), 4 & ~s3 || (a3.push(yt), i3.push(bt))) : e3.data.length >= 5 && (a3.push(pt), i3.push(wt));
4507
4162
  let o3 = 1;
4508
- a3.forEach(((n4, r4) => {
4163
+ a3.forEach((r4, s4) => {
4509
4164
  if (e3.data.length >= o3 + 4) {
4510
- const a4 = tn(i3, o3);
4511
- t3[n4] = e3[n4] = new Date(1e3 * a4);
4512
- const l3 = s3[r4];
4513
- e3[l3] = a4;
4165
+ const a4 = Nt(n3, o3);
4166
+ t3[r4] = e3[r4] = new Date(1e3 * a4);
4167
+ const c3 = i3[s4];
4168
+ e3[c3] = a4;
4514
4169
  }
4515
4170
  o3 += 4;
4516
- }));
4517
- })(_2, t2, r2), t2.extraFieldExtendedTimestamp = _2);
4518
- const b2 = s2.get(6534);
4519
- b2 && (t2.extraFieldUSDZ = b2);
4520
- }
4521
- async function Jt(e2, t2, n2, i2, r2) {
4522
- const a2 = rn(e2.data), s2 = new W();
4523
- s2.append(r2[n2]);
4524
- const o2 = rn(new Uint8Array(4));
4525
- o2.setUint32(0, s2.get(), true);
4526
- const l2 = tn(a2, 1);
4527
- Object.assign(e2, { version: $t(a2, 0), [t2]: yt(e2.data.subarray(5)), valid: !r2.bitFlag.languageEncodingFlag && l2 == tn(o2, 0) }), e2.valid && (i2[t2] = e2[t2], i2[t2 + "UTF8"] = true);
4528
- }
4529
- function Qt(e2, t2, n2) {
4530
- return t2[n2] === S ? e2.options[n2] : t2[n2];
4531
- }
4532
- function Xt(e2) {
4533
- const t2 = (4294901760 & e2) >> 16, n2 = 65535 & e2;
4171
+ });
4172
+ })(g2, t2, s2), t2.extraFieldExtendedTimestamp = g2);
4173
+ const m2 = i2.get(6534);
4174
+ m2 && (t2.extraFieldUSDZ = m2);
4175
+ }
4176
+ function Wt(e2, t2, r2, n2, s2) {
4177
+ const a2 = qt(e2.data), i2 = new y$1();
4178
+ i2.append(s2[r2]);
4179
+ const o2 = qt(new Uint8Array(4));
4180
+ o2.setUint32(0, i2.get(), true);
4181
+ const c2 = Nt(a2, 1);
4182
+ Object.assign(e2, { version: Lt(a2, 0), [t2]: at(e2.data.subarray(5)), valid: !s2.bitFlag.languageEncodingFlag && c2 == Nt(o2, 0) }), e2.valid && (n2[t2] = e2[t2], n2[t2 + "UTF8"] = true);
4183
+ }
4184
+ function Mt(e2, t2, r2) {
4534
4185
  try {
4535
- return new Date(1980 + ((65024 & t2) >> 9), ((480 & t2) >> 5) - 1, 31 & t2, (63488 & n2) >> 11, (2016 & n2) >> 5, 2 * (31 & n2), 0);
4536
- } catch (e3) {
4186
+ const n2 = qt(new Uint8Array(e2.data));
4187
+ let s2 = 0;
4188
+ const a2 = Lt(n2, s2++), i2 = Lt(n2, s2++), o2 = e2.data.subarray(s2, s2 + i2);
4189
+ s2 += i2;
4190
+ const l2 = jt(o2), u2 = Lt(n2, s2++), d2 = e2.data.subarray(s2, s2 + u2);
4191
+ s2 += u2;
4192
+ const f2 = jt(d2);
4193
+ let h2 = c$1;
4194
+ if (!r2 && s2 + 2 <= e2.data.length) {
4195
+ const t3 = e2.data;
4196
+ h2 = new DataView(t3.buffer, t3.byteOffset + s2, 2).getUint16(0, true);
4197
+ }
4198
+ Object.assign(e2, { version: a2, uid: l2, gid: f2, unixMode: h2 }), l2 !== c$1 && (t2.uid = l2), f2 !== c$1 && (t2.gid = f2), h2 !== c$1 && (t2.unixMode = h2);
4199
+ } catch {
4200
+ }
4201
+ }
4202
+ function jt(e2) {
4203
+ const t2 = new Uint8Array(4);
4204
+ t2.set(e2, 0);
4205
+ return new DataView(t2.buffer, t2.byteOffset, 4).getUint32(0, true);
4206
+ }
4207
+ function It(e2, t2, r2) {
4208
+ return t2[r2] === c$1 ? e2.options[r2] : t2[r2];
4209
+ }
4210
+ function Bt(e2) {
4211
+ const r2 = (4294901760 & e2) >> 16, n2 = e2 & t$1;
4212
+ try {
4213
+ return new Date(1980 + ((65024 & r2) >> 9), ((480 & r2) >> 5) - 1, 31 & r2, (63488 & n2) >> 11, (2016 & n2) >> 5, 2 * (31 & n2), 0);
4214
+ } catch {
4537
4215
  }
4538
4216
  }
4539
- function Yt(e2) {
4217
+ function Pt(e2) {
4540
4218
  return new Date(Number(e2 / BigInt(1e4) - BigInt(116444736e5)));
4541
4219
  }
4542
- function $t(e2, t2) {
4220
+ function Lt(e2, t2) {
4543
4221
  return e2.getUint8(t2);
4544
4222
  }
4545
- function en(e2, t2) {
4223
+ function Vt(e2, t2) {
4546
4224
  return e2.getUint16(t2, true);
4547
4225
  }
4548
- function tn(e2, t2) {
4226
+ function Nt(e2, t2) {
4549
4227
  return e2.getUint32(t2, true);
4550
4228
  }
4551
- function nn(e2, t2) {
4229
+ function Zt(e2, t2) {
4552
4230
  return Number(e2.getBigUint64(t2, true));
4553
4231
  }
4554
- function rn(e2) {
4232
+ function qt(e2) {
4555
4233
  return new DataView(e2.buffer);
4556
4234
  }
4557
- F({ Inflate: function(e2) {
4558
- const t2 = new m$1(), i2 = e2 && e2.chunkSize ? Math.floor(2 * e2.chunkSize) : 131072, r2 = new Uint8Array(i2);
4559
- let a2 = false;
4560
- t2.inflateInit(), t2.next_out = r2, this.append = function(e3, s2) {
4561
- const o2 = [];
4562
- let l2, c2, u2 = 0, d2 = 0, f2 = 0;
4563
- if (0 !== e3.length) {
4564
- t2.next_in_index = 0, t2.next_in = e3, t2.avail_in = e3.length;
4565
- do {
4566
- if (t2.next_out_index = 0, t2.avail_out = i2, 0 !== t2.avail_in || a2 || (t2.next_in_index = 0, a2 = true), l2 = t2.inflate(0), a2 && l2 === n$1) {
4567
- if (0 !== t2.avail_in) throw new Error("inflating: bad input");
4568
- } else if (0 !== l2 && 1 !== l2) throw new Error("inflating: " + t2.msg);
4569
- if ((a2 || 1 === l2) && t2.avail_in === e3.length) throw new Error("inflating: bad input");
4570
- t2.next_out_index && (t2.next_out_index === i2 ? o2.push(new Uint8Array(r2)) : o2.push(r2.subarray(0, t2.next_out_index))), f2 += t2.next_out_index, s2 && t2.next_in_index > 0 && t2.next_in_index != u2 && (s2(t2.next_in_index), u2 = t2.next_in_index);
4571
- } while (t2.avail_in > 0 || 0 === t2.avail_out);
4572
- return o2.length > 1 ? (c2 = new Uint8Array(f2), o2.forEach((function(e4) {
4573
- c2.set(e4, d2), d2 += e4.length;
4574
- }))) : c2 = o2[0] ? new Uint8Array(o2[0]) : new Uint8Array(), c2;
4575
- }
4576
- }, this.flush = function() {
4577
- t2.inflateEnd();
4578
- };
4579
- } });
4235
+ try {
4236
+ w$1({ baseURI: typeof document === "undefined" && typeof location === "undefined" ? require("url").pathToFileURL(__filename).href : typeof document === "undefined" ? location.href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("vue-book-reader.umd.js", document.baseURI).href });
4237
+ } catch {
4238
+ }
4580
4239
  const zip = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
4581
4240
  __proto__: null,
4582
- BlobReader: ut,
4583
- BlobWriter: dt,
4584
- TextWriter: ft,
4585
- ZipReader: Ht,
4586
- configure: F
4241
+ BlobReader: Ge,
4242
+ BlobWriter: Je,
4243
+ TextWriter: Qe,
4244
+ ZipReader: Et,
4245
+ configure: w$1
4587
4246
  }, Symbol.toStringTag, { value: "Module" }));
4588
4247
  const NS$2 = {
4589
4248
  CONTAINER: "urn:oasis:names:tc:opendocument:xmlns:container",
@@ -4805,7 +4464,7 @@
4805
4464
  subtitle: (_h = (_g = dc.title) == null ? void 0 : _g.find((x2) => prop(x2, "title-type") === "subtitle")) == null ? void 0 : _h.value,
4806
4465
  language: (_i = dc.language) == null ? void 0 : _i.map((x2) => x2.value),
4807
4466
  description: one(dc.description),
4808
- publisher: makeContributor((_j = dc.publisher) == null ? void 0 : _j[0]),
4467
+ publisher: (_j = dc.publisher) == null ? void 0 : _j.map(makeContributor),
4809
4468
  published: ((_l = (_k = dc.date) == null ? void 0 : _k.find((x2) => x2.attrs.event === "publication")) == null ? void 0 : _l.value) ?? one(dc.date),
4810
4469
  modified: one(properties[PREFIX.dcterms + "modified"]) ?? ((_n = (_m = dc.date) == null ? void 0 : _m.find((x2) => x2.attrs.event === "modification")) == null ? void 0 : _n.value),
4811
4470
  subject: (_o = dc.subject) == null ? void 0 : _o.map(makeContributor),
@@ -4819,7 +4478,9 @@
4819
4478
  altIdentifier: (_r = dc.identifier) == null ? void 0 : _r.map(makeAltIdentifier),
4820
4479
  source: (_s = dc.source) == null ? void 0 : _s.map(makeAltIdentifier),
4821
4480
  // NOTE: not in webpub schema
4822
- rights: one(dc.rights)
4481
+ rights: one(dc.rights),
4482
+ // NOTE: not in webpub schema
4483
+ pageBreakSource: one(properties["pageBreakSource"])
4823
4484
  // NOTE: not in webpub schema
4824
4485
  };
4825
4486
  const remapContributor = (defaultKey) => (x2) => {
@@ -5574,7 +5235,7 @@ ${doc.querySelector("parsererror").innerText}`);
5574
5235
  cache.delete(name);
5575
5236
  };
5576
5237
  const exts = [".jpg", ".jpeg", ".png", ".gif", ".bmp", ".webp", ".svg", ".jxl", ".avif"];
5577
- const files = entries.map((entry) => entry.filename).filter((name) => exts.some((ext) => name.endsWith(ext))).sort();
5238
+ const files = entries.map((entry) => entry.filename).filter((name) => exts.some((ext) => name.endsWith(ext))).sort(new Intl.Collator([], { numeric: true }).compare);
5578
5239
  if (!files.length) throw new Error("No supported image files in archive");
5579
5240
  const book = {};
5580
5241
  book.getCover = () => loadBlob(files[0]);
@@ -5924,6 +5585,415 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph {
5924
5585
  __proto__: null,
5925
5586
  makeFB2
5926
5587
  }, Symbol.toStringTag, { value: "Module" }));
5588
+ const textLayerBuilderCSS = '/* Copyright 2014 Mozilla Foundation\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the "License");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an "AS IS" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\n.textLayer {\r\n color-scheme: only light;\r\n\r\n position: absolute;\r\n text-align: initial;\r\n inset: 0;\r\n overflow: clip;\r\n opacity: 1;\r\n line-height: 1;\r\n text-size-adjust: none;\r\n forced-color-adjust: none;\r\n transform-origin: 0 0;\r\n caret-color: CanvasText;\r\n z-index: 0;\r\n\r\n &.highlighting {\r\n touch-action: none;\r\n }\r\n\r\n :is(span, br) {\r\n color: transparent;\r\n position: absolute;\r\n white-space: pre;\r\n cursor: text;\r\n transform-origin: 0% 0%;\r\n }\r\n\r\n /* We multiply the font size by --min-font-size, and then scale the text\r\n * elements by 1/--min-font-size. This allows us to effectively ignore the\r\n * minimum font size enforced by the browser, so that the text layer <span>s\r\n * can always match the size of the text in the canvas. */\r\n --min-font-size: 1;\r\n --text-scale-factor: calc(var(--total-scale-factor) * var(--min-font-size));\r\n --min-font-size-inv: calc(1 / var(--min-font-size));\r\n\r\n > :not(.markedContent),\r\n .markedContent span:not(.markedContent) {\r\n z-index: 1;\r\n\r\n --font-height: 0; /* set by text_layer.js */\r\n font-size: calc(var(--text-scale-factor) * var(--font-height));\r\n\r\n --scale-x: 1;\r\n --rotate: 0deg;\r\n transform: rotate(var(--rotate)) scaleX(var(--scale-x))\r\n scale(var(--min-font-size-inv));\r\n }\r\n\r\n .markedContent {\r\n display: contents;\r\n }\r\n\r\n span[role="img"] {\r\n user-select: none;\r\n cursor: default;\r\n }\r\n\r\n .highlight {\r\n --highlight-bg-color: rgb(180 0 170 / 0.25);\r\n --highlight-selected-bg-color: rgb(0 100 0 / 0.25);\r\n --highlight-backdrop-filter: none;\r\n --highlight-selected-backdrop-filter: none;\r\n\r\n @media screen and (forced-colors: active) {\r\n --highlight-bg-color: transparent;\r\n --highlight-selected-bg-color: transparent;\r\n --highlight-backdrop-filter: var(--hcm-highlight-filter);\r\n --highlight-selected-backdrop-filter: var(\r\n --hcm-highlight-selected-filter\r\n );\r\n }\r\n\r\n margin: -1px;\r\n padding: 1px;\r\n background-color: var(--highlight-bg-color);\r\n backdrop-filter: var(--highlight-backdrop-filter);\r\n border-radius: 4px;\r\n\r\n &.appended {\r\n position: initial;\r\n }\r\n\r\n &.begin {\r\n border-radius: 4px 0 0 4px;\r\n }\r\n\r\n &.end {\r\n border-radius: 0 4px 4px 0;\r\n }\r\n\r\n &.middle {\r\n border-radius: 0;\r\n }\r\n\r\n &.selected {\r\n background-color: var(--highlight-selected-bg-color);\r\n backdrop-filter: var(--highlight-selected-backdrop-filter);\r\n }\r\n }\r\n\r\n ::selection {\r\n /* stylelint-disable declaration-block-no-duplicate-properties */\r\n /*#if !MOZCENTRAL*/\r\n background: rgba(0 0 255 / 0.25);\r\n /*#endif*/\r\n /* stylelint-enable declaration-block-no-duplicate-properties */\r\n background: color-mix(in srgb, AccentColor, transparent 75%);\r\n }\r\n\r\n /* Avoids https://github.com/mozilla/pdf.js/issues/13840 in Chrome */\r\n /*#if !MOZCENTRAL*/\r\n br::selection {\r\n background: transparent;\r\n }\r\n /*#endif*/\r\n\r\n .endOfContent {\r\n display: block;\r\n position: absolute;\r\n inset: 100% 0 0;\r\n z-index: 0;\r\n cursor: default;\r\n user-select: none;\r\n }\r\n\r\n &.selecting .endOfContent {\r\n top: 0;\r\n }\r\n}\r\n';
5589
+ const annotationLayerBuilderCSS = `/* Copyright 2014 Mozilla Foundation\r
5590
+ *\r
5591
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
5592
+ * you may not use this file except in compliance with the License.\r
5593
+ * You may obtain a copy of the License at\r
5594
+ *\r
5595
+ * http://www.apache.org/licenses/LICENSE-2.0\r
5596
+ *\r
5597
+ * Unless required by applicable law or agreed to in writing, software\r
5598
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
5599
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
5600
+ * See the License for the specific language governing permissions and\r
5601
+ * limitations under the License.\r
5602
+ */\r
5603
+ \r
5604
+ .annotationLayer {\r
5605
+ color-scheme: only light;\r
5606
+ \r
5607
+ --annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");\r
5608
+ --input-focus-border-color: Highlight;\r
5609
+ --input-focus-outline: 1px solid Canvas;\r
5610
+ --input-unfocused-border-color: transparent;\r
5611
+ --input-disabled-border-color: transparent;\r
5612
+ --input-hover-border-color: black;\r
5613
+ --link-outline: none;\r
5614
+ \r
5615
+ @media screen and (forced-colors: active) {\r
5616
+ --input-focus-border-color: CanvasText;\r
5617
+ --input-unfocused-border-color: ActiveText;\r
5618
+ --input-disabled-border-color: GrayText;\r
5619
+ --input-hover-border-color: Highlight;\r
5620
+ --link-outline: 1.5px solid LinkText;\r
5621
+ \r
5622
+ .textWidgetAnnotation :is(input, textarea):required,\r
5623
+ .choiceWidgetAnnotation select:required,\r
5624
+ .buttonWidgetAnnotation:is(.checkBox, .radioButton) input:required {\r
5625
+ outline: 1.5px solid selectedItem;\r
5626
+ }\r
5627
+ \r
5628
+ .linkAnnotation {\r
5629
+ outline: var(--link-outline);\r
5630
+ \r
5631
+ &:hover {\r
5632
+ backdrop-filter: var(--hcm-highlight-filter);\r
5633
+ }\r
5634
+ \r
5635
+ & > a:hover {\r
5636
+ opacity: 0 !important;\r
5637
+ background: none !important;\r
5638
+ box-shadow: none;\r
5639
+ }\r
5640
+ }\r
5641
+ \r
5642
+ .popupAnnotation .popup {\r
5643
+ outline: calc(1.5px * var(--total-scale-factor)) solid CanvasText !important;\r
5644
+ background-color: ButtonFace !important;\r
5645
+ color: ButtonText !important;\r
5646
+ }\r
5647
+ \r
5648
+ .highlightArea:hover::after {\r
5649
+ position: absolute;\r
5650
+ top: 0;\r
5651
+ left: 0;\r
5652
+ width: 100%;\r
5653
+ height: 100%;\r
5654
+ backdrop-filter: var(--hcm-highlight-filter);\r
5655
+ content: "";\r
5656
+ pointer-events: none;\r
5657
+ }\r
5658
+ \r
5659
+ .popupAnnotation.focused .popup {\r
5660
+ outline: calc(3px * var(--total-scale-factor)) solid Highlight !important;\r
5661
+ }\r
5662
+ }\r
5663
+ \r
5664
+ position: absolute;\r
5665
+ top: 0;\r
5666
+ left: 0;\r
5667
+ pointer-events: none;\r
5668
+ transform-origin: 0 0;\r
5669
+ \r
5670
+ &[data-main-rotation="90"] .norotate {\r
5671
+ transform: rotate(270deg) translateX(-100%);\r
5672
+ }\r
5673
+ &[data-main-rotation="180"] .norotate {\r
5674
+ transform: rotate(180deg) translate(-100%, -100%);\r
5675
+ }\r
5676
+ &[data-main-rotation="270"] .norotate {\r
5677
+ transform: rotate(90deg) translateY(-100%);\r
5678
+ }\r
5679
+ \r
5680
+ &.disabled {\r
5681
+ section,\r
5682
+ .popup {\r
5683
+ pointer-events: none;\r
5684
+ }\r
5685
+ }\r
5686
+ \r
5687
+ .annotationContent {\r
5688
+ position: absolute;\r
5689
+ width: 100%;\r
5690
+ height: 100%;\r
5691
+ pointer-events: none;\r
5692
+ \r
5693
+ &.freetext {\r
5694
+ background: transparent;\r
5695
+ border: none;\r
5696
+ inset: 0;\r
5697
+ overflow: visible;\r
5698
+ white-space: nowrap;\r
5699
+ font: 10px sans-serif;\r
5700
+ line-height: 1.35;\r
5701
+ }\r
5702
+ }\r
5703
+ \r
5704
+ section {\r
5705
+ position: absolute;\r
5706
+ text-align: initial;\r
5707
+ pointer-events: auto;\r
5708
+ box-sizing: border-box;\r
5709
+ transform-origin: 0 0;\r
5710
+ user-select: none;\r
5711
+ \r
5712
+ &:has(div.annotationContent) {\r
5713
+ canvas.annotationContent {\r
5714
+ display: none;\r
5715
+ }\r
5716
+ }\r
5717
+ \r
5718
+ .overlaidText {\r
5719
+ position: absolute;\r
5720
+ top: 0;\r
5721
+ left: 0;\r
5722
+ width: 0;\r
5723
+ height: 0;\r
5724
+ display: inline-block;\r
5725
+ overflow: hidden;\r
5726
+ }\r
5727
+ }\r
5728
+ \r
5729
+ .textLayer.selecting ~ & section {\r
5730
+ pointer-events: none;\r
5731
+ }\r
5732
+ \r
5733
+ :is(.linkAnnotation, .buttonWidgetAnnotation.pushButton) > a {\r
5734
+ position: absolute;\r
5735
+ font-size: 1em;\r
5736
+ top: 0;\r
5737
+ left: 0;\r
5738
+ width: 100%;\r
5739
+ height: 100%;\r
5740
+ }\r
5741
+ \r
5742
+ :is(.linkAnnotation, .buttonWidgetAnnotation.pushButton):not(.hasBorder)\r
5743
+ > a:hover {\r
5744
+ opacity: 0.2;\r
5745
+ background-color: rgb(255 255 0);\r
5746
+ }\r
5747
+ \r
5748
+ .linkAnnotation.hasBorder:hover {\r
5749
+ background-color: rgb(255 255 0 / 0.2);\r
5750
+ }\r
5751
+ \r
5752
+ .hasBorder {\r
5753
+ background-size: 100% 100%;\r
5754
+ }\r
5755
+ \r
5756
+ .textAnnotation img {\r
5757
+ position: absolute;\r
5758
+ cursor: pointer;\r
5759
+ width: 100%;\r
5760
+ height: 100%;\r
5761
+ top: 0;\r
5762
+ left: 0;\r
5763
+ }\r
5764
+ \r
5765
+ .textWidgetAnnotation :is(input, textarea),\r
5766
+ .choiceWidgetAnnotation select,\r
5767
+ .buttonWidgetAnnotation:is(.checkBox, .radioButton) input {\r
5768
+ background-image: var(--annotation-unfocused-field-background);\r
5769
+ border: 2px solid var(--input-unfocused-border-color);\r
5770
+ box-sizing: border-box;\r
5771
+ font: calc(9px * var(--total-scale-factor)) sans-serif;\r
5772
+ height: 100%;\r
5773
+ margin: 0;\r
5774
+ vertical-align: top;\r
5775
+ width: 100%;\r
5776
+ }\r
5777
+ \r
5778
+ .textWidgetAnnotation :is(input, textarea):required,\r
5779
+ .choiceWidgetAnnotation select:required,\r
5780
+ .buttonWidgetAnnotation:is(.checkBox, .radioButton) input:required {\r
5781
+ outline: 1.5px solid red;\r
5782
+ }\r
5783
+ \r
5784
+ .choiceWidgetAnnotation select option {\r
5785
+ padding: 0;\r
5786
+ }\r
5787
+ \r
5788
+ .buttonWidgetAnnotation.radioButton input {\r
5789
+ border-radius: 50%;\r
5790
+ }\r
5791
+ \r
5792
+ .textWidgetAnnotation textarea {\r
5793
+ resize: none;\r
5794
+ }\r
5795
+ \r
5796
+ .textWidgetAnnotation :is(input, textarea)[disabled],\r
5797
+ .choiceWidgetAnnotation select[disabled],\r
5798
+ .buttonWidgetAnnotation:is(.checkBox, .radioButton) input[disabled] {\r
5799
+ background: none;\r
5800
+ border: 2px solid var(--input-disabled-border-color);\r
5801
+ cursor: not-allowed;\r
5802
+ }\r
5803
+ \r
5804
+ .textWidgetAnnotation :is(input, textarea):hover,\r
5805
+ .choiceWidgetAnnotation select:hover,\r
5806
+ .buttonWidgetAnnotation:is(.checkBox, .radioButton) input:hover {\r
5807
+ border: 2px solid var(--input-hover-border-color);\r
5808
+ }\r
5809
+ .textWidgetAnnotation :is(input, textarea):hover,\r
5810
+ .choiceWidgetAnnotation select:hover,\r
5811
+ .buttonWidgetAnnotation.checkBox input:hover {\r
5812
+ border-radius: 2px;\r
5813
+ }\r
5814
+ \r
5815
+ .textWidgetAnnotation :is(input, textarea):focus,\r
5816
+ .choiceWidgetAnnotation select:focus {\r
5817
+ background: none;\r
5818
+ border: 2px solid var(--input-focus-border-color);\r
5819
+ border-radius: 2px;\r
5820
+ outline: var(--input-focus-outline);\r
5821
+ }\r
5822
+ \r
5823
+ .buttonWidgetAnnotation:is(.checkBox, .radioButton) :focus {\r
5824
+ background-image: none;\r
5825
+ background-color: transparent;\r
5826
+ }\r
5827
+ \r
5828
+ .buttonWidgetAnnotation.checkBox :focus {\r
5829
+ border: 2px solid var(--input-focus-border-color);\r
5830
+ border-radius: 2px;\r
5831
+ outline: var(--input-focus-outline);\r
5832
+ }\r
5833
+ \r
5834
+ .buttonWidgetAnnotation.radioButton :focus {\r
5835
+ border: 2px solid var(--input-focus-border-color);\r
5836
+ outline: var(--input-focus-outline);\r
5837
+ }\r
5838
+ \r
5839
+ .buttonWidgetAnnotation.checkBox input:checked::before,\r
5840
+ .buttonWidgetAnnotation.checkBox input:checked::after,\r
5841
+ .buttonWidgetAnnotation.radioButton input:checked::before {\r
5842
+ background-color: CanvasText;\r
5843
+ content: "";\r
5844
+ display: block;\r
5845
+ position: absolute;\r
5846
+ }\r
5847
+ \r
5848
+ .buttonWidgetAnnotation.checkBox input:checked::before,\r
5849
+ .buttonWidgetAnnotation.checkBox input:checked::after {\r
5850
+ height: 80%;\r
5851
+ left: 45%;\r
5852
+ width: 1px;\r
5853
+ }\r
5854
+ \r
5855
+ .buttonWidgetAnnotation.checkBox input:checked::before {\r
5856
+ transform: rotate(45deg);\r
5857
+ }\r
5858
+ \r
5859
+ .buttonWidgetAnnotation.checkBox input:checked::after {\r
5860
+ transform: rotate(-45deg);\r
5861
+ }\r
5862
+ \r
5863
+ .buttonWidgetAnnotation.radioButton input:checked::before {\r
5864
+ border-radius: 50%;\r
5865
+ height: 50%;\r
5866
+ left: 25%;\r
5867
+ top: 25%;\r
5868
+ width: 50%;\r
5869
+ }\r
5870
+ \r
5871
+ .textWidgetAnnotation input.comb {\r
5872
+ font-family: monospace;\r
5873
+ padding-left: 2px;\r
5874
+ padding-right: 0;\r
5875
+ }\r
5876
+ \r
5877
+ .textWidgetAnnotation input.comb:focus {\r
5878
+ /*\r
5879
+ * Letter spacing is placed on the right side of each character. Hence, the\r
5880
+ * letter spacing of the last character may be placed outside the visible\r
5881
+ * area, causing horizontal scrolling. We avoid this by extending the width\r
5882
+ * when the element has focus and revert this when it loses focus.\r
5883
+ */\r
5884
+ width: 103%;\r
5885
+ }\r
5886
+ \r
5887
+ .buttonWidgetAnnotation:is(.checkBox, .radioButton) input {\r
5888
+ appearance: none;\r
5889
+ }\r
5890
+ \r
5891
+ .fileAttachmentAnnotation .popupTriggerArea {\r
5892
+ height: 100%;\r
5893
+ width: 100%;\r
5894
+ }\r
5895
+ \r
5896
+ .popupAnnotation {\r
5897
+ position: absolute;\r
5898
+ font-size: calc(9px * var(--total-scale-factor));\r
5899
+ pointer-events: none;\r
5900
+ width: max-content;\r
5901
+ max-width: 45%;\r
5902
+ height: auto;\r
5903
+ }\r
5904
+ \r
5905
+ .popup {\r
5906
+ background-color: rgb(255 255 153);\r
5907
+ color: black;\r
5908
+ box-shadow: 0 calc(2px * var(--total-scale-factor))\r
5909
+ calc(5px * var(--total-scale-factor)) rgb(136 136 136);\r
5910
+ border-radius: calc(2px * var(--total-scale-factor));\r
5911
+ outline: 1.5px solid rgb(255 255 74);\r
5912
+ padding: calc(6px * var(--total-scale-factor));\r
5913
+ cursor: pointer;\r
5914
+ font: message-box;\r
5915
+ white-space: normal;\r
5916
+ word-wrap: break-word;\r
5917
+ pointer-events: auto;\r
5918
+ user-select: text;\r
5919
+ }\r
5920
+ \r
5921
+ .popupAnnotation.focused .popup {\r
5922
+ outline-width: 3px;\r
5923
+ }\r
5924
+ \r
5925
+ .popup * {\r
5926
+ font-size: calc(9px * var(--total-scale-factor));\r
5927
+ }\r
5928
+ \r
5929
+ .popup > .header {\r
5930
+ display: inline-block;\r
5931
+ }\r
5932
+ \r
5933
+ .popup > .header > .title {\r
5934
+ display: inline;\r
5935
+ font-weight: bold;\r
5936
+ }\r
5937
+ \r
5938
+ .popup > .header .popupDate {\r
5939
+ display: inline-block;\r
5940
+ margin-left: calc(5px * var(--total-scale-factor));\r
5941
+ width: fit-content;\r
5942
+ }\r
5943
+ \r
5944
+ .popupContent {\r
5945
+ border-top: 1px solid rgb(51 51 51);\r
5946
+ margin-top: calc(2px * var(--total-scale-factor));\r
5947
+ padding-top: calc(2px * var(--total-scale-factor));\r
5948
+ }\r
5949
+ \r
5950
+ .richText > * {\r
5951
+ white-space: pre-wrap;\r
5952
+ font-size: calc(9px * var(--total-scale-factor));\r
5953
+ }\r
5954
+ \r
5955
+ .popupTriggerArea {\r
5956
+ cursor: pointer;\r
5957
+ \r
5958
+ &:hover {\r
5959
+ backdrop-filter: var(--hcm-highlight-filter);\r
5960
+ }\r
5961
+ }\r
5962
+ \r
5963
+ section svg {\r
5964
+ position: absolute;\r
5965
+ width: 100%;\r
5966
+ height: 100%;\r
5967
+ top: 0;\r
5968
+ left: 0;\r
5969
+ }\r
5970
+ \r
5971
+ .annotationTextContent {\r
5972
+ position: absolute;\r
5973
+ width: 100%;\r
5974
+ height: 100%;\r
5975
+ opacity: 0;\r
5976
+ color: transparent;\r
5977
+ user-select: none;\r
5978
+ pointer-events: none;\r
5979
+ \r
5980
+ span {\r
5981
+ width: 100%;\r
5982
+ display: inline-block;\r
5983
+ }\r
5984
+ }\r
5985
+ \r
5986
+ svg.quadrilateralsContainer {\r
5987
+ contain: strict;\r
5988
+ width: 0;\r
5989
+ height: 0;\r
5990
+ position: absolute;\r
5991
+ top: 0;\r
5992
+ left: 0;\r
5993
+ z-index: -1;\r
5994
+ }\r
5995
+ }\r
5996
+ `;
5927
5997
  const render = async (page, doc, zoom) => {
5928
5998
  const scale = zoom * devicePixelRatio;
5929
5999
  doc.documentElement.style.transform = `scale(${1 / devicePixelRatio})`;
@@ -5958,15 +6028,13 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph {
5958
6028
  container.onpointerdown = () => container.classList.add("selecting");
5959
6029
  container.onpointerup = () => container.classList.remove("selecting");
5960
6030
  const div = doc.querySelector(".annotationLayer");
5961
- await new pdfjsLib.AnnotationLayer({ page, viewport, div }).render({
5962
- annotations: await page.getAnnotations(),
5963
- linkService: {
5964
- goToDestination: () => {
5965
- },
5966
- getDestinationHash: (dest) => JSON.stringify(dest),
5967
- addLinkAttributes: (link, url) => link.href = url
5968
- }
5969
- });
6031
+ const linkService = {
6032
+ goToDestination: () => {
6033
+ },
6034
+ getDestinationHash: (dest) => JSON.stringify(dest),
6035
+ addLinkAttributes: (link, url) => link.href = url
6036
+ };
6037
+ await new pdfjsLib.AnnotationLayer({ page, viewport, div, linkService }).render({ annotations: await page.getAnnotations() });
5970
6038
  };
5971
6039
  const renderPage = async (page, getImageBlob) => {
5972
6040
  const viewport = page.getViewport({ scale: 1 });
@@ -5988,6 +6056,17 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph {
5988
6056
  margin: 0;
5989
6057
  padding: 0;
5990
6058
  }
6059
+ /*
6060
+ https://github.com/mozilla/pdf.js/commit/bd05b255fabfc313b194bfe9a17ccded4d90fb5a
6061
+ */
6062
+ :root {
6063
+ --user-unit: 1;
6064
+ --total-scale-factor: calc(var(--scale-factor) * var(--user-unit));
6065
+ --scale-round-x: 1px;
6066
+ --scale-round-y: 1px;
6067
+ }
6068
+ ${textLayerBuilderCSS}
6069
+ ${annotationLayerBuilderCSS}
5991
6070
  </style>
5992
6071
  <div id="canvas"></div>
5993
6072
  <div class="textLayer"></div>
@@ -6010,8 +6089,8 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph {
6010
6089
  };
6011
6090
  const pdf2 = await pdfjsLib.getDocument({
6012
6091
  range: transport,
6013
- // cMapUrl: pdfjsPath('cmaps/'),
6014
- // standardFontDataUrl: pdfjsPath('standard_fonts/'),
6092
+ cMapUrl: pdfjsPath("cmaps/"),
6093
+ standardFontDataUrl: pdfjsPath("standard_fonts/"),
6015
6094
  isEvalSupported: false
6016
6095
  }).promise;
6017
6096
  const book = { rendition: { layout: "pre-paginated" } };
@@ -6807,6 +6886,9 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph {
6807
6886
  createDocument: () => this.createDocument(section),
6808
6887
  size: section.end - section.start
6809
6888
  }));
6889
+ this.#fileposList = [...new Set(
6890
+ Array.from(str.matchAll(fileposRegex), (m2) => m2[1])
6891
+ )].map((filepos) => ({ filepos, number: Number(filepos) })).sort((a2, b2) => a2.number - b2.number);
6810
6892
  try {
6811
6893
  this.landmarks = await this.getGuide();
6812
6894
  const tocHref = (_a = this.landmarks.find(({ type }) => type == null ? void 0 : type.includes("toc"))) == null ? void 0 : _a.href;
@@ -6847,9 +6929,6 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph {
6847
6929
  } catch (e2) {
6848
6930
  console.warn(e2);
6849
6931
  }
6850
- this.#fileposList = [...new Set(
6851
- Array.from(str.matchAll(fileposRegex), (m2) => m2[1])
6852
- )].map((filepos) => ({ filepos, number: Number(filepos) })).sort((a2, b2) => a2.number - b2.number);
6853
6932
  this.metadata = this.mobi.getMetadata();
6854
6933
  this.getCover = this.mobi.getCover.bind(this.mobi);
6855
6934
  return this;
@@ -7287,25 +7366,25 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph {
7287
7366
  MOBI,
7288
7367
  isMOBI
7289
7368
  }, Symbol.toStringTag, { value: "Module" }));
7290
- var r = Uint8Array, a = Uint16Array, e = Int32Array, n = new r([0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 0, 0, 0]), i = new r([0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 0, 0]), t = new r([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]), f = function(r2, n2) {
7291
- for (var i2 = new a(31), t2 = 0; t2 < 31; ++t2) i2[t2] = n2 += 1 << r2[t2 - 1];
7292
- var f2 = new e(i2[30]);
7369
+ var r = Uint8Array, n = Uint16Array, a = Int32Array, e = new r([0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 0, 0, 0]), i = new r([0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 0, 0]), t = new r([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]), f = function(r2, e2) {
7370
+ for (var i2 = new n(31), t2 = 0; t2 < 31; ++t2) i2[t2] = e2 += 1 << r2[t2 - 1];
7371
+ var f2 = new a(i2[30]);
7293
7372
  for (t2 = 1; t2 < 30; ++t2) for (var o2 = i2[t2]; o2 < i2[t2 + 1]; ++o2) f2[o2] = o2 - i2[t2] << 5 | t2;
7294
7373
  return { b: i2, r: f2 };
7295
- }, o = f(n, 2), v = o.b, l = o.r;
7374
+ }, o = f(e, 2), v = o.b, l = o.r;
7296
7375
  v[28] = 258, l[258] = 28;
7297
- for (var u = f(i, 0).b, c = new a(32768), d = 0; d < 32768; ++d) {
7376
+ for (var u = f(i, 0).b, c = new n(32768), d = 0; d < 32768; ++d) {
7298
7377
  var w = (43690 & d) >> 1 | (21845 & d) << 1;
7299
7378
  w = (61680 & (w = (52428 & w) >> 2 | (13107 & w) << 2)) >> 4 | (3855 & w) << 4, c[d] = ((65280 & w) >> 8 | (255 & w) << 8) >> 1;
7300
7379
  }
7301
- var b = function(r2, e2, n2) {
7302
- for (var i2 = r2.length, t2 = 0, f2 = new a(e2); t2 < i2; ++t2) r2[t2] && ++f2[r2[t2] - 1];
7303
- var o2, v2 = new a(e2);
7304
- for (t2 = 1; t2 < e2; ++t2) v2[t2] = v2[t2 - 1] + f2[t2 - 1] << 1;
7380
+ var b = function(r2, a2, e2) {
7381
+ for (var i2 = r2.length, t2 = 0, f2 = new n(a2); t2 < i2; ++t2) r2[t2] && ++f2[r2[t2] - 1];
7382
+ var o2, v2 = new n(a2);
7383
+ for (t2 = 1; t2 < a2; ++t2) v2[t2] = v2[t2 - 1] + f2[t2 - 1] << 1;
7305
7384
  {
7306
- o2 = new a(1 << e2);
7307
- var l2 = 15 - e2;
7308
- for (t2 = 0; t2 < i2; ++t2) if (r2[t2]) for (var u2 = t2 << 4 | r2[t2], d2 = e2 - r2[t2], w2 = v2[r2[t2] - 1]++ << d2, b2 = w2 | (1 << d2) - 1; w2 <= b2; ++w2) o2[c[w2] >> l2] = u2;
7385
+ o2 = new n(1 << a2);
7386
+ var l2 = 15 - a2;
7387
+ for (t2 = 0; t2 < i2; ++t2) if (r2[t2]) for (var u2 = t2 << 4 | r2[t2], d2 = a2 - r2[t2], w2 = v2[r2[t2] - 1]++ << d2, b2 = w2 | (1 << d2) - 1; w2 <= b2; ++w2) o2[c[w2] >> l2] = u2;
7309
7388
  }
7310
7389
  return o2;
7311
7390
  }, s = new r(288);
@@ -7316,122 +7395,124 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph {
7316
7395
  var h = new r(32);
7317
7396
  for (d = 0; d < 32; ++d) h[d] = 5;
7318
7397
  var y = b(s, 9), g = b(h, 5), p = function(r2) {
7319
- for (var a2 = r2[0], e2 = 1; e2 < r2.length; ++e2) r2[e2] > a2 && (a2 = r2[e2]);
7320
- return a2;
7321
- }, k = function(r2, a2, e2) {
7322
- var n2 = a2 / 8 | 0;
7323
- return (r2[n2] | r2[n2 + 1] << 8) >> (7 & a2) & e2;
7324
- }, m = function(r2, a2) {
7325
- var e2 = a2 / 8 | 0;
7326
- return (r2[e2] | r2[e2 + 1] << 8 | r2[e2 + 2] << 16) >> (7 & a2);
7327
- }, x = ["unexpected EOF", "invalid block type", "invalid length/literal", "invalid distance", "stream finished", "no stream handler", , "no callback", "invalid UTF-8 data", "extra field too long", "date not in range 1980-2099", "filename too long", "stream finishing", "invalid zip data"], T = function(r2, a2, e2) {
7328
- var n2 = new Error(a2 || x[r2]);
7329
- if (n2.code = r2, Error.captureStackTrace && Error.captureStackTrace(n2, T), !e2) throw n2;
7398
+ for (var n2 = r2[0], a2 = 1; a2 < r2.length; ++a2) r2[a2] > n2 && (n2 = r2[a2]);
7330
7399
  return n2;
7331
- }, E = function(a2, e2, f2, o2) {
7332
- var l2 = a2.length, c2 = o2 ? o2.length : 0;
7333
- if (!l2 || e2.f && !e2.l) return f2 || new r(0);
7334
- var d2 = !f2, w2 = d2 || 2 != e2.i, s2 = e2.i;
7400
+ }, k = function(r2, n2, a2) {
7401
+ var e2 = n2 / 8 | 0;
7402
+ return (r2[e2] | r2[e2 + 1] << 8) >> (7 & n2) & a2;
7403
+ }, m = function(r2, n2) {
7404
+ var a2 = n2 / 8 | 0;
7405
+ return (r2[a2] | r2[a2 + 1] << 8 | r2[a2 + 2] << 16) >> (7 & n2);
7406
+ }, x = function(r2) {
7407
+ return (r2 + 7) / 8 | 0;
7408
+ }, T = ["unexpected EOF", "invalid block type", "invalid length/literal", "invalid distance", "stream finished", "no stream handler", , "no callback", "invalid UTF-8 data", "extra field too long", "date not in range 1980-2099", "filename too long", "stream finishing", "invalid zip data"], E = function(r2, n2, a2) {
7409
+ var e2 = new Error(n2 || T[r2]);
7410
+ if (e2.code = r2, Error.captureStackTrace && Error.captureStackTrace(e2, E), !a2) throw e2;
7411
+ return e2;
7412
+ }, z = function(n2, a2, f2, o2) {
7413
+ var l2 = n2.length, c2 = o2 ? o2.length : 0;
7414
+ if (!l2 || a2.f && !a2.l) return f2 || new r(0);
7415
+ var d2 = !f2, w2 = d2 || 2 != a2.i, s2 = a2.i;
7335
7416
  d2 && (f2 = new r(3 * l2));
7336
- var h2 = function(a3) {
7337
- var e3 = f2.length;
7338
- if (a3 > e3) {
7339
- var n2 = new r(Math.max(2 * e3, a3));
7340
- n2.set(f2), f2 = n2;
7417
+ var h2 = function(n3) {
7418
+ var a3 = f2.length;
7419
+ if (n3 > a3) {
7420
+ var e2 = new r(Math.max(2 * a3, n3));
7421
+ e2.set(f2), f2 = e2;
7341
7422
  }
7342
- }, x2 = e2.f || 0, E2 = e2.p || 0, z2 = e2.b || 0, A2 = e2.l, U2 = e2.d, D2 = e2.m, F2 = e2.n, M2 = 8 * l2;
7423
+ }, T2 = a2.f || 0, z2 = a2.p || 0, A2 = a2.b || 0, U2 = a2.l, D2 = a2.d, F2 = a2.m, M2 = a2.n, S2 = 8 * l2;
7343
7424
  do {
7344
- if (!A2) {
7345
- x2 = k(a2, E2, 1);
7346
- var S2 = k(a2, E2 + 1, 3);
7347
- if (E2 += 3, !S2) {
7348
- var I2 = a2[(N2 = 4 + ((E2 + 7) / 8 | 0)) - 4] | a2[N2 - 3] << 8, O2 = N2 + I2;
7349
- if (O2 > l2) {
7350
- s2 && T(0);
7425
+ if (!U2) {
7426
+ T2 = k(n2, z2, 1);
7427
+ var I2 = k(n2, z2 + 1, 3);
7428
+ if (z2 += 3, !I2) {
7429
+ var O2 = n2[(P2 = x(z2) + 4) - 4] | n2[P2 - 3] << 8, j2 = P2 + O2;
7430
+ if (j2 > l2) {
7431
+ s2 && E(0);
7351
7432
  break;
7352
7433
  }
7353
- w2 && h2(z2 + I2), f2.set(a2.subarray(N2, O2), z2), e2.b = z2 += I2, e2.p = E2 = 8 * O2, e2.f = x2;
7434
+ w2 && h2(A2 + O2), f2.set(n2.subarray(P2, j2), A2), a2.b = A2 += O2, a2.p = z2 = 8 * j2, a2.f = T2;
7354
7435
  continue;
7355
7436
  }
7356
- if (1 == S2) A2 = y, U2 = g, D2 = 9, F2 = 5;
7357
- else if (2 == S2) {
7358
- var j2 = k(a2, E2, 31) + 257, q2 = k(a2, E2 + 10, 15) + 4, B2 = j2 + k(a2, E2 + 5, 31) + 1;
7359
- E2 += 14;
7360
- for (var C2 = new r(B2), G2 = new r(19), H2 = 0; H2 < q2; ++H2) G2[t[H2]] = k(a2, E2 + 3 * H2, 7);
7361
- E2 += 3 * q2;
7362
- var J2 = p(G2), K2 = (1 << J2) - 1, L2 = b(G2, J2);
7363
- for (H2 = 0; H2 < B2; ) {
7364
- var N2, P2 = L2[k(a2, E2, K2)];
7365
- if (E2 += 15 & P2, (N2 = P2 >> 4) < 16) C2[H2++] = N2;
7437
+ if (1 == I2) U2 = y, D2 = g, F2 = 9, M2 = 5;
7438
+ else if (2 == I2) {
7439
+ var q2 = k(n2, z2, 31) + 257, B2 = k(n2, z2 + 10, 15) + 4, C2 = q2 + k(n2, z2 + 5, 31) + 1;
7440
+ z2 += 14;
7441
+ for (var G2 = new r(C2), H2 = new r(19), J2 = 0; J2 < B2; ++J2) H2[t[J2]] = k(n2, z2 + 3 * J2, 7);
7442
+ z2 += 3 * B2;
7443
+ var K2 = p(H2), L2 = (1 << K2) - 1, N2 = b(H2, K2);
7444
+ for (J2 = 0; J2 < C2; ) {
7445
+ var P2, Q2 = N2[k(n2, z2, L2)];
7446
+ if (z2 += 15 & Q2, (P2 = Q2 >> 4) < 16) G2[J2++] = P2;
7366
7447
  else {
7367
- var Q2 = 0, R2 = 0;
7368
- for (16 == N2 ? (R2 = 3 + k(a2, E2, 3), E2 += 2, Q2 = C2[H2 - 1]) : 17 == N2 ? (R2 = 3 + k(a2, E2, 7), E2 += 3) : 18 == N2 && (R2 = 11 + k(a2, E2, 127), E2 += 7); R2--; ) C2[H2++] = Q2;
7448
+ var R2 = 0, V2 = 0;
7449
+ for (16 == P2 ? (V2 = 3 + k(n2, z2, 3), z2 += 2, R2 = G2[J2 - 1]) : 17 == P2 ? (V2 = 3 + k(n2, z2, 7), z2 += 3) : 18 == P2 && (V2 = 11 + k(n2, z2, 127), z2 += 7); V2--; ) G2[J2++] = R2;
7369
7450
  }
7370
7451
  }
7371
- var V2 = C2.subarray(0, j2), W2 = C2.subarray(j2);
7372
- D2 = p(V2), F2 = p(W2), A2 = b(V2, D2), U2 = b(W2, F2);
7373
- } else T(1);
7374
- if (E2 > M2) {
7375
- s2 && T(0);
7452
+ var W2 = G2.subarray(0, q2), X2 = G2.subarray(q2);
7453
+ F2 = p(W2), M2 = p(X2), U2 = b(W2, F2), D2 = b(X2, M2);
7454
+ } else E(1);
7455
+ if (z2 > S2) {
7456
+ s2 && E(0);
7376
7457
  break;
7377
7458
  }
7378
7459
  }
7379
- w2 && h2(z2 + 131072);
7380
- for (var X2 = (1 << D2) - 1, Y2 = (1 << F2) - 1, Z2 = E2; ; Z2 = E2) {
7381
- var $2 = (Q2 = A2[m(a2, E2) & X2]) >> 4;
7382
- if ((E2 += 15 & Q2) > M2) {
7383
- s2 && T(0);
7460
+ w2 && h2(A2 + 131072);
7461
+ for (var Y2 = (1 << F2) - 1, Z2 = (1 << M2) - 1, $2 = z2; ; $2 = z2) {
7462
+ var _2 = (R2 = U2[m(n2, z2) & Y2]) >> 4;
7463
+ if ((z2 += 15 & R2) > S2) {
7464
+ s2 && E(0);
7384
7465
  break;
7385
7466
  }
7386
- if (Q2 || T(2), $2 < 256) f2[z2++] = $2;
7467
+ if (R2 || E(2), _2 < 256) f2[A2++] = _2;
7387
7468
  else {
7388
- if (256 == $2) {
7389
- Z2 = E2, A2 = null;
7469
+ if (256 == _2) {
7470
+ $2 = z2, U2 = null;
7390
7471
  break;
7391
7472
  }
7392
- var _2 = $2 - 254;
7393
- if ($2 > 264) {
7394
- var rr = n[H2 = $2 - 257];
7395
- _2 = k(a2, E2, (1 << rr) - 1) + v[H2], E2 += rr;
7473
+ var rr = _2 - 254;
7474
+ if (_2 > 264) {
7475
+ var nr = e[J2 = _2 - 257];
7476
+ rr = k(n2, z2, (1 << nr) - 1) + v[J2], z2 += nr;
7396
7477
  }
7397
- var ar = U2[m(a2, E2) & Y2], er = ar >> 4;
7398
- ar || T(3), E2 += 15 & ar;
7399
- W2 = u[er];
7478
+ var ar = D2[m(n2, z2) & Z2], er = ar >> 4;
7479
+ ar || E(3), z2 += 15 & ar;
7480
+ X2 = u[er];
7400
7481
  if (er > 3) {
7401
- rr = i[er];
7402
- W2 += m(a2, E2) & (1 << rr) - 1, E2 += rr;
7482
+ nr = i[er];
7483
+ X2 += m(n2, z2) & (1 << nr) - 1, z2 += nr;
7403
7484
  }
7404
- if (E2 > M2) {
7405
- s2 && T(0);
7485
+ if (z2 > S2) {
7486
+ s2 && E(0);
7406
7487
  break;
7407
7488
  }
7408
- w2 && h2(z2 + 131072);
7409
- var nr = z2 + _2;
7410
- if (z2 < W2) {
7411
- var ir = c2 - W2, tr = Math.min(W2, nr);
7412
- for (ir + z2 < 0 && T(3); z2 < tr; ++z2) f2[z2] = o2[ir + z2];
7489
+ w2 && h2(A2 + 131072);
7490
+ var ir = A2 + rr;
7491
+ if (A2 < X2) {
7492
+ var tr = c2 - X2, fr = Math.min(X2, ir);
7493
+ for (tr + A2 < 0 && E(3); A2 < fr; ++A2) f2[A2] = o2[tr + A2];
7413
7494
  }
7414
- for (; z2 < nr; ++z2) f2[z2] = f2[z2 - W2];
7495
+ for (; A2 < ir; ++A2) f2[A2] = f2[A2 - X2];
7415
7496
  }
7416
7497
  }
7417
- e2.l = A2, e2.p = Z2, e2.b = z2, e2.f = x2, A2 && (x2 = 1, e2.m = D2, e2.d = U2, e2.n = F2);
7418
- } while (!x2);
7419
- return z2 != f2.length && d2 ? (function(a3, e3, n2) {
7420
- return (null == n2 || n2 > a3.length) && (n2 = a3.length), new r(a3.subarray(e3, n2));
7421
- })(f2, 0, z2) : f2.subarray(0, z2);
7422
- }, z = new r(0);
7423
- function A(r2, a2) {
7424
- return E(r2.subarray((e2 = r2, n2 = a2 && a2.dictionary, (8 != (15 & e2[0]) || e2[0] >> 4 > 7 || (e2[0] << 8 | e2[1]) % 31) && T(6, "invalid zlib data"), (e2[1] >> 5 & 1) == +!n2 && T(6, "invalid zlib data: " + (32 & e2[1] ? "need" : "unexpected") + " dictionary"), 2 + (e2[1] >> 3 & 4)), -4), { i: 2 }, a2 && a2.out, a2 && a2.dictionary);
7425
- var e2, n2;
7426
- }
7427
- var U = "undefined" != typeof TextDecoder && new TextDecoder();
7498
+ a2.l = U2, a2.p = $2, a2.b = A2, a2.f = T2, U2 && (T2 = 1, a2.m = F2, a2.d = D2, a2.n = M2);
7499
+ } while (!T2);
7500
+ return A2 != f2.length && d2 ? (function(n3, a3, e2) {
7501
+ return (null == e2 || e2 > n3.length) && (e2 = n3.length), new r(n3.subarray(a3, e2));
7502
+ })(f2, 0, A2) : f2.subarray(0, A2);
7503
+ }, A = new r(0);
7504
+ function U(r2, n2) {
7505
+ return z(r2.subarray((a2 = r2, e2 = n2 && n2.dictionary, (8 != (15 & a2[0]) || a2[0] >> 4 > 7 || (a2[0] << 8 | a2[1]) % 31) && E(6, "invalid zlib data"), (a2[1] >> 5 & 1) == +!e2 && E(6, "invalid zlib data: " + (32 & a2[1] ? "need" : "unexpected") + " dictionary"), 2 + (a2[1] >> 3 & 4)), -4), { i: 2 }, n2 && n2.out, n2 && n2.dictionary);
7506
+ var a2, e2;
7507
+ }
7508
+ var D = "undefined" != typeof TextDecoder && new TextDecoder();
7428
7509
  try {
7429
- U.decode(z, { stream: true });
7510
+ D.decode(A, { stream: true });
7430
7511
  } catch (r2) {
7431
7512
  }
7432
7513
  const fflate = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
7433
7514
  __proto__: null,
7434
- unzlibSync: A
7515
+ unzlibSync: U
7435
7516
  }, Symbol.toStringTag, { value: "Module" }));
7436
7517
  const parseViewport = (str) => {
7437
7518
  var _a, _b;
@@ -8946,10 +9027,11 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph {
8946
9027
  const { lang } = inherited;
8947
9028
  if (lang) ssml.documentElement.setAttributeNS(NS.XML, "lang", lang);
8948
9029
  const convert = (node, parent, inheritedAlphabet) => {
9030
+ var _a, _b, _c;
8949
9031
  if (!node) return;
8950
9032
  if (node.nodeType === 3) return ssml.createTextNode(node.textContent);
8951
9033
  if (node.nodeType === 4) return ssml.createCDATASection(node.textContent);
8952
- if (node.nodeType !== 1) return;
9034
+ if (node.nodeType !== 1 && node.nodeType !== 11) return;
8953
9035
  let el;
8954
9036
  const nodeName = node.nodeName.toLowerCase();
8955
9037
  if (nodeName === "foliate-mark") {
@@ -8959,14 +9041,14 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph {
8959
9041
  el = ssml.createElementNS(NS.SSML, "break");
8960
9042
  else if (nodeName === "em" || nodeName === "strong")
8961
9043
  el = ssml.createElementNS(NS.SSML, "emphasis");
8962
- const lang2 = node.lang || node.getAttributeNS(NS.XML, "lang");
9044
+ const lang2 = node.lang || ((_a = node.getAttributeNS) == null ? void 0 : _a.call(node, NS.XML, "lang"));
8963
9045
  if (lang2) {
8964
9046
  if (!el) el = ssml.createElementNS(NS.SSML, "lang");
8965
9047
  el.setAttributeNS(NS.XML, "lang", lang2);
8966
9048
  }
8967
- const alphabet = node.getAttributeNS(NS.SSML, "alphabet") || inheritedAlphabet;
9049
+ const alphabet = ((_b = node.getAttributeNS) == null ? void 0 : _b.call(node, NS.SSML, "alphabet")) || inheritedAlphabet;
8968
9050
  if (!el) {
8969
- const ph = node.getAttributeNS(NS.SSML, "ph");
9051
+ const ph = (_c = node.getAttributeNS) == null ? void 0 : _c.call(node, NS.SSML, "ph");
8970
9052
  if (ph) {
8971
9053
  el = ssml.createElementNS(NS.SSML, "phoneme");
8972
9054
  if (alphabet) el.setAttribute("alphabet", alphabet);
@@ -8982,7 +9064,7 @@ body:not(.notesBodyType) > .title, body:not(.notesBodyType) > .epigraph {
8982
9064
  }
8983
9065
  return el;
8984
9066
  };
8985
- convert(fragment.firstChild, ssml.documentElement, inherited.alphabet);
9067
+ convert(fragment, ssml.documentElement, inherited.alphabet);
8986
9068
  return ssml;
8987
9069
  };
8988
9070
  const getFragmentWithMarks = (range, textWalker2, granularity) => {