ppt-dsl-renderer 1.1.8 → 1.1.9

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.
@@ -98,11 +98,14 @@ CLI 复用原 `dist/pptx/exporter.js`,没有修改 DSL、Vue/HTML 渲染或 PP
98
98
  - 视频封面会转成 PNG 后写入 PPTX;音视频实际内容嵌入文件,不仅保留链接或封面。
99
99
  - 渐变/特殊形状、图片填充形状和有路径的公式使用 SVG 图片导出,不能当作原生可编辑形状/公式。无公式路径时沿用当前预览,输出公式源码文字。
100
100
  - 标记为 `roundRect` 且路径为标准四角圆框或横向胶囊的普通形状导出为原生圆角矩形,按原路径半径设置 `rectRadius`,支持 Office/WPS 的黄色圆角调节手柄。仅顶部圆角、异形路径及拉伸后角弧为椭圆的形状保留自定义几何,不改变原形状。
101
- - 闭合直线路径为左右对称、上底较窄且下底铺满 viewBox 的规则梯形导出为原生 `trapezoid`,按缩放后的上底内缩量设置调整参数,支持黄色手柄调整上底宽度/斜边倾斜。不对称梯形、三角形和曲线路径仍保留自定义几何。
101
+ - 闭合直线路径为左右对称、较宽底边铺满 viewBox 的规则正梯形或倒梯形导出为原生 `trapezoid`,按缩放后的窄底内缩量设置调整参数,支持黄色手柄调整窄底宽度/斜边倾斜。倒梯形通过原生几何的垂直翻转保持方向,并与元素原有的垂直翻转叠加。不对称梯形、三角形和曲线路径仍保留自定义几何。
102
102
  - 渐变页面背景取首尾色的混合色,渐变文字取显式色标平均色;普通图表使用原生可编辑图表,`bar` 横向、`column` 竖向。表格禁止自动拆成额外页面,保持选定页数;合并区域使用包含占位单元格的完整行列网格,导出时跳过被覆盖的单元格。
103
+ - 表格 `outline` 仅表示整表外框,不生成内部单元格网格线。外框使用无填充的原生矩形保留 RGBA 透明度及实线、虚线、点线样式;表格本身仍为原生可编辑表格,外框是独立对象。
104
+ - HTML 表格按浏览器实际边框导出:仅设置外框时不补单元格网格线,显式单元格边框继续保留;同色但透明度不同的各边分别绘制,不统一成首条边框的透明度。
103
105
  - 默认母版背景取 `document.theme.backgroundColor`,省略时为白色;各页显式背景优先。不把主题字体、颜色自动下沉到所有元素。
104
106
  - 普通文本与形状文字的 `inset` 均按「上、右、下、左」解释,单位为 CSS 像素;默认分别为 0px、8px,与网页一致。两者均读取 `lineHeight`、`paragraphSpace`、`wordSpace`,默认行高 1.4、段距和字距为 0;富文本内显式的 `line-height`、`letter-spacing`、段落 `margin-top/bottom` 优先。行高按字号换算为 PPTX 点数,显式换行分别计算;Office 自动折行的混合字号段落仍可能与浏览器存在差异。
105
- - 字体栈取第一个字体名并进行 XML 属性转义,避免引号或 `&` 破坏 PPTX。图片背景按 `image.size` 导出:默认 `cover` 居中裁切,`contain` 等比完整显示,`stretch` 拉伸;背景图片作为最底层图片对象,留白使用页面背景色。
107
+ - 字体栈按 CSS 顺序选择导出浏览器中可用的具体字体,再进行 XML 属性转义,避免缺失的首选字体被 Office 随意替换。若所有具体候选均缺失,保留首选字体名;单个字体名保持不变。图片背景按 `image.size` 导出:默认 `cover` 居中裁切,`contain` 等比完整显示,`stretch` 拉伸;背景图片作为最底层图片对象,留白使用页面背景色。
108
+ - 图片元素按 `fit` 导出,与网页一致:默认 `cover` 等比居中裁切,`contain` 等比完整显示,只有 `fill` 拉伸。设置 `clip.range` 时先在裁剪前的图片框中应用 `fit`,再显示指定区域,保持元素的位置和尺寸。
106
109
  - 富文本里的粗体细对勾 `✓` 导出为可编辑的重对勾 `✔`,避免浏览器字体回退与 Office 固定字体产生明显不同的字形;非粗体细对勾保持原字符。
107
110
  - 普通文本、标题及 `fixedHeight` 文本均保持 DSL 的位置和宽高,不再额外扩宽或设置 Office 自动改框。字体不一致导致的换行差异应通过字体环境核对,不能靠修改原框掩盖。
108
111
  - 普通文本在网页中实际只有一行时关闭 Office 自动换行,避免大号章节数字被重新拆行;网页已折行、显式多行、列表和竖排保留自动换行。测量使用原字号、字体、字距和扣除左右内边距后的宽度,不改变输入 DSL 或导出文本框尺寸。
package/dist/cli.js CHANGED
@@ -439,9 +439,9 @@ https://github.com/nodeca/pako/blob/main/LICENSE
439
439
  var I = 0;
440
440
  b && (I |= 8), P || !O && !r || (I |= 2048);
441
441
  var E = 0, Q = 0;
442
- nt && (E |= 16), d === "UNIX" ? (Q = 798, E |= function(K, ot) {
442
+ nt && (E |= 16), d === "UNIX" ? (Q = 798, E |= function(K, lt) {
443
443
  var Y = K;
444
- return K || (Y = ot ? 16893 : 33204), (65535 & Y) << 16;
444
+ return K || (Y = lt ? 16893 : 33204), (65535 & Y) << 16;
445
445
  }(C.unixPermissions, nt)) : (Q = 20, E |= function(K) {
446
446
  return 63 & (K || 0);
447
447
  }(C.dosPermissions)), x = R.getUTCHours(), x <<= 6, x |= R.getUTCMinutes(), x <<= 5, x |= R.getUTCSeconds() / 2, z = R.getUTCFullYear() - 1980, z <<= 4, z |= R.getUTCMonth() + 1, z <<= 5, z |= R.getUTCDate(), O && (J = l(1, 1) + l(h(W), 4) + v, D += "up" + l(J.length, 2) + J), r && (U = l(1, 1) + l(h(F), 4) + u, D += "uc" + l(U.length, 2) + U);
@@ -1834,10 +1834,10 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1834
1834
  t.pending_buf[t.pending++] = j >>> 8 & 255, t.pending_buf[t.pending++] = 255 & j;
1835
1835
  }
1836
1836
  function K(t, j) {
1837
- var N, y, g = t.max_chain_length, A = t.strstart, $ = t.prev_length, Z = t.nice_match, B = t.strstart > t.w_size - F ? t.strstart - (t.w_size - F) : 0, G = t.window, tt = t.w_mask, X = t.prev, rt = t.strstart + T, st = G[A + $ - 1], it = G[A + $];
1837
+ var N, y, g = t.max_chain_length, A = t.strstart, $ = t.prev_length, Z = t.nice_match, B = t.strstart > t.w_size - F ? t.strstart - (t.w_size - F) : 0, G = t.window, tt = t.w_mask, X = t.prev, rt = t.strstart + T, ot = G[A + $ - 1], it = G[A + $];
1838
1838
  t.prev_length >= t.good_match && (g >>= 2), Z > t.lookahead && (Z = t.lookahead);
1839
1839
  do
1840
- if (G[(N = j) + $] === it && G[N + $ - 1] === st && G[N] === G[A] && G[++N] === G[A + 1]) {
1840
+ if (G[(N = j) + $] === it && G[N + $ - 1] === ot && G[N] === G[A] && G[++N] === G[A + 1]) {
1841
1841
  A += 2, N++;
1842
1842
  do
1843
1843
  ;
@@ -1845,13 +1845,13 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1845
1845
  if (y = T - (rt - A), A = rt - T, $ < y) {
1846
1846
  if (t.match_start = j, Z <= ($ = y))
1847
1847
  break;
1848
- st = G[A + $ - 1], it = G[A + $];
1848
+ ot = G[A + $ - 1], it = G[A + $];
1849
1849
  }
1850
1850
  }
1851
1851
  while ((j = X[j & tt]) > B && --g != 0);
1852
1852
  return $ <= t.lookahead ? $ : t.lookahead;
1853
1853
  }
1854
- function ot(t) {
1854
+ function lt(t) {
1855
1855
  var j, N, y, g, A, $, Z, B, G, tt, X = t.w_size;
1856
1856
  do {
1857
1857
  if (g = t.window_size - t.lookahead - t.strstart, t.strstart >= X + (X - F)) {
@@ -1871,7 +1871,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1871
1871
  function Y(t, j) {
1872
1872
  for (var N, y; ; ) {
1873
1873
  if (t.lookahead < F) {
1874
- if (ot(t), t.lookahead < F && j === m)
1874
+ if (lt(t), t.lookahead < F && j === m)
1875
1875
  return r;
1876
1876
  if (t.lookahead === 0)
1877
1877
  break;
@@ -1893,7 +1893,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1893
1893
  function V(t, j) {
1894
1894
  for (var N, y, g; ; ) {
1895
1895
  if (t.lookahead < F) {
1896
- if (ot(t), t.lookahead < F && j === m)
1896
+ if (lt(t), t.lookahead < F && j === m)
1897
1897
  return r;
1898
1898
  if (t.lookahead === 0)
1899
1899
  break;
@@ -1917,12 +1917,12 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1917
1917
  function at() {
1918
1918
  this.strm = null, this.status = 0, this.pending_buf = null, this.pending_buf_size = 0, this.pending_out = 0, this.pending = 0, this.wrap = 0, this.gzhead = null, this.gzindex = 0, this.method = _, this.last_flush = -1, this.w_size = 0, this.w_bits = 0, this.w_mask = 0, this.window = null, this.window_size = 0, this.prev = null, this.head = null, this.ins_h = 0, this.hash_size = 0, this.hash_bits = 0, this.hash_mask = 0, this.hash_shift = 0, this.block_start = 0, this.match_length = 0, this.prev_match = 0, this.match_available = 0, this.strstart = 0, this.match_start = 0, this.lookahead = 0, this.prev_length = 0, this.max_chain_length = 0, this.max_lazy_match = 0, this.level = 0, this.strategy = 0, this.good_match = 0, this.nice_match = 0, this.dyn_ltree = new s.Buf16(2 * P), this.dyn_dtree = new s.Buf16(2 * (2 * C + 1)), this.bl_tree = new s.Buf16(2 * (2 * L + 1)), H(this.dyn_ltree), H(this.dyn_dtree), H(this.bl_tree), this.l_desc = null, this.d_desc = null, this.bl_desc = null, this.bl_count = new s.Buf16(W + 1), this.heap = new s.Buf16(2 * z + 1), H(this.heap), this.heap_len = 0, this.heap_max = 0, this.depth = new s.Buf16(2 * z + 1), H(this.depth), this.l_buf = 0, this.lit_bufsize = 0, this.last_lit = 0, this.d_buf = 0, this.opt_len = 0, this.static_len = 0, this.matches = 0, this.insert = 0, this.bi_buf = 0, this.bi_valid = 0;
1919
1919
  }
1920
- function lt(t) {
1920
+ function st(t) {
1921
1921
  var j;
1922
1922
  return t && t.state ? (t.total_in = t.total_out = 0, t.data_type = d, (j = t.state).pending = 0, j.pending_out = 0, j.wrap < 0 && (j.wrap = -j.wrap), j.status = j.wrap ? u : O, t.adler = j.wrap === 2 ? 0 : 1, j.last_flush = m, e._tr_init(j), o) : nt(t, b);
1923
1923
  }
1924
1924
  function mt(t) {
1925
- var j = lt(t);
1925
+ var j = st(t);
1926
1926
  return j === o && function(N) {
1927
1927
  N.window_size = 2 * N.w_size, H(N.head), N.max_lazy_match = l[N.level].max_lazy, N.good_match = l[N.level].good_length, N.nice_match = l[N.level].nice_length, N.max_chain_length = l[N.level].max_chain, N.strstart = 0, N.block_start = 0, N.lookahead = 0, N.insert = 0, N.match_length = N.prev_length = v - 1, N.match_available = 0, N.ins_h = 0;
1928
1928
  }(t.state), j;
@@ -1941,7 +1941,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1941
1941
  var N = 65535;
1942
1942
  for (N > t.pending_buf_size - 5 && (N = t.pending_buf_size - 5); ; ) {
1943
1943
  if (t.lookahead <= 1) {
1944
- if (ot(t), t.lookahead === 0 && j === m)
1944
+ if (lt(t), t.lookahead === 0 && j === m)
1945
1945
  return r;
1946
1946
  if (t.lookahead === 0)
1947
1947
  break;
@@ -1954,7 +1954,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
1954
1954
  return t.insert = 0, j === w ? (E(t, !0), t.strm.avail_out === 0 ? J : U) : (t.strstart > t.block_start && (E(t, !1), t.strm.avail_out), r);
1955
1955
  }), new et(4, 4, 8, 4, Y), new et(4, 5, 16, 8, Y), new et(4, 6, 32, 32, Y), new et(4, 4, 16, 16, V), new et(8, 16, 32, 32, V), new et(8, 16, 128, 128, V), new et(8, 32, 128, 256, V), new et(32, 128, 258, 1024, V), new et(32, 258, 258, 4096, V)], p.deflateInit = function(t, j) {
1956
1956
  return dt(t, j, _, 15, 8, 0);
1957
- }, p.deflateInit2 = dt, p.deflateReset = mt, p.deflateResetKeep = lt, p.deflateSetHeader = function(t, j) {
1957
+ }, p.deflateInit2 = dt, p.deflateReset = mt, p.deflateResetKeep = st, p.deflateSetHeader = function(t, j) {
1958
1958
  return t && t.state ? t.state.wrap !== 2 ? b : (t.state.gzhead = j, o) : b;
1959
1959
  }, p.deflate = function(t, j) {
1960
1960
  var N, y, g, A;
@@ -2012,7 +2012,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2012
2012
  if (t.avail_in !== 0 || y.lookahead !== 0 || j !== m && y.status !== 666) {
2013
2013
  var Z = y.strategy === 2 ? function(B, G) {
2014
2014
  for (var tt; ; ) {
2015
- if (B.lookahead === 0 && (ot(B), B.lookahead === 0)) {
2015
+ if (B.lookahead === 0 && (lt(B), B.lookahead === 0)) {
2016
2016
  if (G === m)
2017
2017
  return r;
2018
2018
  break;
@@ -2022,19 +2022,19 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2022
2022
  }
2023
2023
  return B.insert = 0, G === w ? (E(B, !0), B.strm.avail_out === 0 ? J : U) : B.last_lit && (E(B, !1), B.strm.avail_out === 0) ? r : D;
2024
2024
  }(y, j) : y.strategy === 3 ? function(B, G) {
2025
- for (var tt, X, rt, st, it = B.window; ; ) {
2025
+ for (var tt, X, rt, ot, it = B.window; ; ) {
2026
2026
  if (B.lookahead <= T) {
2027
- if (ot(B), B.lookahead <= T && G === m)
2027
+ if (lt(B), B.lookahead <= T && G === m)
2028
2028
  return r;
2029
2029
  if (B.lookahead === 0)
2030
2030
  break;
2031
2031
  }
2032
2032
  if (B.match_length = 0, B.lookahead >= v && 0 < B.strstart && (X = it[rt = B.strstart - 1]) === it[++rt] && X === it[++rt] && X === it[++rt]) {
2033
- st = B.strstart + T;
2033
+ ot = B.strstart + T;
2034
2034
  do
2035
2035
  ;
2036
- while (X === it[++rt] && X === it[++rt] && X === it[++rt] && X === it[++rt] && X === it[++rt] && X === it[++rt] && X === it[++rt] && X === it[++rt] && rt < st);
2037
- B.match_length = T - (st - rt), B.match_length > B.lookahead && (B.match_length = B.lookahead);
2036
+ while (X === it[++rt] && X === it[++rt] && X === it[++rt] && X === it[++rt] && X === it[++rt] && X === it[++rt] && X === it[++rt] && X === it[++rt] && rt < ot);
2037
+ B.match_length = T - (ot - rt), B.match_length > B.lookahead && (B.match_length = B.lookahead);
2038
2038
  }
2039
2039
  if (B.match_length >= v ? (tt = e._tr_tally(B, 1, B.match_length - v), B.lookahead -= B.match_length, B.strstart += B.match_length, B.match_length = 0) : (tt = e._tr_tally(B, 0, B.window[B.strstart]), B.lookahead--, B.strstart++), tt && (E(B, !1), B.strm.avail_out === 0))
2040
2040
  return r;
@@ -2054,10 +2054,10 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2054
2054
  var N, y, g, A, $, Z, B, G, tt = j.length;
2055
2055
  if (!t || !t.state || (A = (N = t.state).wrap) === 2 || A === 1 && N.status !== u || N.lookahead)
2056
2056
  return b;
2057
- for (A === 1 && (t.adler = i(t.adler, j, tt, 0)), N.wrap = 0, tt >= N.w_size && (A === 0 && (H(N.head), N.strstart = 0, N.block_start = 0, N.insert = 0), G = new s.Buf8(N.w_size), s.arraySet(G, j, tt - N.w_size, N.w_size, 0), j = G, tt = N.w_size), $ = t.avail_in, Z = t.next_in, B = t.input, t.avail_in = tt, t.next_in = 0, t.input = j, ot(N); N.lookahead >= v; ) {
2057
+ for (A === 1 && (t.adler = i(t.adler, j, tt, 0)), N.wrap = 0, tt >= N.w_size && (A === 0 && (H(N.head), N.strstart = 0, N.block_start = 0, N.insert = 0), G = new s.Buf8(N.w_size), s.arraySet(G, j, tt - N.w_size, N.w_size, 0), j = G, tt = N.w_size), $ = t.avail_in, Z = t.next_in, B = t.input, t.avail_in = tt, t.next_in = 0, t.input = j, lt(N); N.lookahead >= v; ) {
2058
2058
  for (y = N.strstart, g = N.lookahead - (v - 1); N.ins_h = (N.ins_h << N.hash_shift ^ N.window[y + v - 1]) & N.hash_mask, N.prev[y & N.w_mask] = N.head[N.ins_h], N.head[N.ins_h] = y, y++, --g; )
2059
2059
  ;
2060
- N.strstart = y, N.lookahead = v - 1, ot(N);
2060
+ N.strstart = y, N.lookahead = v - 1, lt(N);
2061
2061
  }
2062
2062
  return N.strstart += N.lookahead, N.block_start = N.strstart, N.insert = N.lookahead, N.lookahead = 0, N.match_length = N.prev_length = v - 1, N.match_available = 0, t.next_in = Z, t.input = B, t.avail_in = $, N.wrap = A, o;
2063
2063
  }, p.deflateInfo = "pako deflate (from Nodeca project)";
@@ -2195,7 +2195,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2195
2195
  p.inflateReset = z, p.inflateReset2 = C, p.inflateResetKeep = x, p.inflateInit = function(u) {
2196
2196
  return L(u, 15);
2197
2197
  }, p.inflateInit2 = L, p.inflate = function(u, O) {
2198
- var r, D, J, U, nt, R, H, I, E, Q, q, K, ot, Y, V, et, at, lt, mt, dt, t, j, N, y, g = 0, A = new l.Buf8(4), $ = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
2198
+ var r, D, J, U, nt, R, H, I, E, Q, q, K, lt, Y, V, et, at, st, mt, dt, t, j, N, y, g = 0, A = new l.Buf8(4), $ = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
2199
2199
  if (!u || !u.state || !u.output || !u.input && u.avail_in !== 0)
2200
2200
  return o;
2201
2201
  (r = u.state).mode === 12 && (r.mode = 13), nt = u.next_out, J = u.output, H = u.avail_out, U = u.next_in, D = u.input, R = u.avail_in, I = r.hold, E = r.bits, Q = R, q = H, j = w;
@@ -2477,12 +2477,12 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2477
2477
  R--, I += D[U++] << E, E += 8;
2478
2478
  }
2479
2479
  if (et && !(240 & et)) {
2480
- for (lt = V, mt = et, dt = at; et = (g = r.lencode[dt + ((I & (1 << lt + mt) - 1) >> lt)]) >>> 16 & 255, at = 65535 & g, !(lt + (V = g >>> 24) <= E); ) {
2480
+ for (st = V, mt = et, dt = at; et = (g = r.lencode[dt + ((I & (1 << st + mt) - 1) >> st)]) >>> 16 & 255, at = 65535 & g, !(st + (V = g >>> 24) <= E); ) {
2481
2481
  if (R === 0)
2482
2482
  break t;
2483
2483
  R--, I += D[U++] << E, E += 8;
2484
2484
  }
2485
- I >>>= lt, E -= lt, r.back += lt;
2485
+ I >>>= st, E -= st, r.back += st;
2486
2486
  }
2487
2487
  if (I >>>= V, E -= V, r.back += V, r.length = at, et === 0) {
2488
2488
  r.mode = 26;
@@ -2514,12 +2514,12 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2514
2514
  R--, I += D[U++] << E, E += 8;
2515
2515
  }
2516
2516
  if (!(240 & et)) {
2517
- for (lt = V, mt = et, dt = at; et = (g = r.distcode[dt + ((I & (1 << lt + mt) - 1) >> lt)]) >>> 16 & 255, at = 65535 & g, !(lt + (V = g >>> 24) <= E); ) {
2517
+ for (st = V, mt = et, dt = at; et = (g = r.distcode[dt + ((I & (1 << st + mt) - 1) >> st)]) >>> 16 & 255, at = 65535 & g, !(st + (V = g >>> 24) <= E); ) {
2518
2518
  if (R === 0)
2519
2519
  break t;
2520
2520
  R--, I += D[U++] << E, E += 8;
2521
2521
  }
2522
- I >>>= lt, E -= lt, r.back += lt;
2522
+ I >>>= st, E -= st, r.back += st;
2523
2523
  }
2524
2524
  if (I >>>= V, E -= V, r.back += V, 64 & et) {
2525
2525
  u.msg = "invalid distance code", r.mode = 30;
@@ -2548,10 +2548,10 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2548
2548
  u.msg = "invalid distance too far back", r.mode = 30;
2549
2549
  break;
2550
2550
  }
2551
- ot = K > r.wnext ? (K -= r.wnext, r.wsize - K) : r.wnext - K, K > r.length && (K = r.length), Y = r.window;
2551
+ lt = K > r.wnext ? (K -= r.wnext, r.wsize - K) : r.wnext - K, K > r.length && (K = r.length), Y = r.window;
2552
2552
  } else
2553
- Y = J, ot = nt - r.offset, K = r.length;
2554
- for (H < K && (K = H), H -= K, r.length -= K; J[nt++] = Y[ot++], --K; )
2553
+ Y = J, lt = nt - r.offset, K = r.length;
2554
+ for (H < K && (K = H), H -= K, r.length -= K; J[nt++] = Y[lt++], --K; )
2555
2555
  ;
2556
2556
  r.length === 0 && (r.mode = 21);
2557
2557
  break;
@@ -2616,7 +2616,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2616
2616
  }, { "../utils/common": 41, "./adler32": 43, "./crc32": 45, "./inffast": 48, "./inftrees": 50 }], 50: [function(n, k, p) {
2617
2617
  var l = n("../utils/common"), s = [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], e = [16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78], i = [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, 0, 0], c = [16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64];
2618
2618
  k.exports = function(h, m, w, o, b, a, f, d) {
2619
- var _, x, z, C, L, P, W, v, T, F = d.bits, u = 0, O = 0, r = 0, D = 0, J = 0, U = 0, nt = 0, R = 0, H = 0, I = 0, E = null, Q = 0, q = new l.Buf16(16), K = new l.Buf16(16), ot = null, Y = 0;
2619
+ var _, x, z, C, L, P, W, v, T, F = d.bits, u = 0, O = 0, r = 0, D = 0, J = 0, U = 0, nt = 0, R = 0, H = 0, I = 0, E = null, Q = 0, q = new l.Buf16(16), K = new l.Buf16(16), lt = null, Y = 0;
2620
2620
  for (u = 0; u <= 15; u++)
2621
2621
  q[u] = 0;
2622
2622
  for (O = 0; O < o; O++)
@@ -2636,10 +2636,10 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2636
2636
  K[u + 1] = K[u] + q[u];
2637
2637
  for (O = 0; O < o; O++)
2638
2638
  m[w + O] !== 0 && (f[K[m[w + O]]++] = O);
2639
- if (P = h === 0 ? (E = ot = f, 19) : h === 1 ? (E = s, Q -= 257, ot = e, Y -= 257, 256) : (E = i, ot = c, -1), u = r, L = a, nt = O = I = 0, z = -1, C = (H = 1 << (U = J)) - 1, h === 1 && 852 < H || h === 2 && 592 < H)
2639
+ if (P = h === 0 ? (E = lt = f, 19) : h === 1 ? (E = s, Q -= 257, lt = e, Y -= 257, 256) : (E = i, lt = c, -1), u = r, L = a, nt = O = I = 0, z = -1, C = (H = 1 << (U = J)) - 1, h === 1 && 852 < H || h === 2 && 592 < H)
2640
2640
  return 1;
2641
2641
  for (; ; ) {
2642
- for (W = u - nt, T = f[O] < P ? (v = 0, f[O]) : f[O] > P ? (v = ot[Y + f[O]], E[Q + f[O]]) : (v = 96, 0), _ = 1 << u - nt, r = x = 1 << U; b[L + (I >> nt) + (x -= _)] = W << 24 | v << 16 | T | 0, x !== 0; )
2642
+ for (W = u - nt, T = f[O] < P ? (v = 0, f[O]) : f[O] > P ? (v = lt[Y + f[O]], E[Q + f[O]]) : (v = 96, 0), _ = 1 << u - nt, r = x = 1 << U; b[L + (I >> nt) + (x -= _)] = W << 24 | v << 16 | T | 0, x !== 0; )
2643
2643
  ;
2644
2644
  for (_ = 1 << u - 1; I & _; )
2645
2645
  _ >>= 1;
@@ -2695,7 +2695,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2695
2695
  function K(g, A, $) {
2696
2696
  q(g, $[2 * A], $[2 * A + 1]);
2697
2697
  }
2698
- function ot(g, A) {
2698
+ function lt(g, A) {
2699
2699
  for (var $ = 0; $ |= 1 & g, g >>>= 1, $ <<= 1, 0 < --A; )
2700
2700
  ;
2701
2701
  return $ >>> 1;
@@ -2706,7 +2706,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2706
2706
  G[Z] = tt = tt + $[Z - 1] << 1;
2707
2707
  for (B = 0; B <= A; B++) {
2708
2708
  var X = g[2 * B + 1];
2709
- X !== 0 && (g[2 * B] = ot(G[X]++, X));
2709
+ X !== 0 && (g[2 * B] = lt(G[X]++, X));
2710
2710
  }
2711
2711
  }
2712
2712
  function V(g) {
@@ -2726,7 +2726,7 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2726
2726
  var B = 2 * A, G = 2 * $;
2727
2727
  return g[B] < g[G] || g[B] === g[G] && Z[A] <= Z[$];
2728
2728
  }
2729
- function lt(g, A, $) {
2729
+ function st(g, A, $) {
2730
2730
  for (var Z = g.heap[$], B = $ << 1; B <= g.heap_len && (B < g.heap_len && at(A, g.heap[B + 1], g.heap[B], g.depth) && B++, !at(A, Z, g.heap[B], g.depth)); )
2731
2731
  g.heap[$] = g.heap[B], $ = B, B <<= 1;
2732
2732
  g.heap[$] = Z;
@@ -2739,14 +2739,14 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2739
2739
  K(g, x, A);
2740
2740
  }
2741
2741
  function dt(g, A) {
2742
- var $, Z, B, G = A.dyn_tree, tt = A.stat_desc.static_tree, X = A.stat_desc.has_stree, rt = A.stat_desc.elems, st = -1;
2742
+ var $, Z, B, G = A.dyn_tree, tt = A.stat_desc.static_tree, X = A.stat_desc.has_stree, rt = A.stat_desc.elems, ot = -1;
2743
2743
  for (g.heap_len = 0, g.heap_max = a, $ = 0; $ < rt; $++)
2744
- G[2 * $] !== 0 ? (g.heap[++g.heap_len] = st = $, g.depth[$] = 0) : G[2 * $ + 1] = 0;
2744
+ G[2 * $] !== 0 ? (g.heap[++g.heap_len] = ot = $, g.depth[$] = 0) : G[2 * $ + 1] = 0;
2745
2745
  for (; g.heap_len < 2; )
2746
- G[2 * (B = g.heap[++g.heap_len] = st < 2 ? ++st : 0)] = 1, g.depth[B] = 0, g.opt_len--, X && (g.static_len -= tt[2 * B + 1]);
2747
- for (A.max_code = st, $ = g.heap_len >> 1; 1 <= $; $--)
2748
- lt(g, G, $);
2749
- for (B = rt; $ = g.heap[1], g.heap[1] = g.heap[g.heap_len--], lt(g, G, 1), Z = g.heap[1], g.heap[--g.heap_max] = $, g.heap[--g.heap_max] = Z, G[2 * B] = G[2 * $] + G[2 * Z], g.depth[B] = (g.depth[$] >= g.depth[Z] ? g.depth[$] : g.depth[Z]) + 1, G[2 * $ + 1] = G[2 * Z + 1] = B, g.heap[1] = B++, lt(g, G, 1), 2 <= g.heap_len; )
2746
+ G[2 * (B = g.heap[++g.heap_len] = ot < 2 ? ++ot : 0)] = 1, g.depth[B] = 0, g.opt_len--, X && (g.static_len -= tt[2 * B + 1]);
2747
+ for (A.max_code = ot, $ = g.heap_len >> 1; 1 <= $; $--)
2748
+ st(g, G, $);
2749
+ for (B = rt; $ = g.heap[1], g.heap[1] = g.heap[g.heap_len--], st(g, G, 1), Z = g.heap[1], g.heap[--g.heap_max] = $, g.heap[--g.heap_max] = Z, G[2 * B] = G[2 * $] + G[2 * Z], g.depth[B] = (g.depth[$] >= g.depth[Z] ? g.depth[$] : g.depth[Z]) + 1, G[2 * $ + 1] = G[2 * Z + 1] = B, g.heap[1] = B++, st(g, G, 1), 2 <= g.heap_len; )
2750
2750
  ;
2751
2751
  g.heap[--g.heap_max] = g.heap[1], function(it, ft) {
2752
2752
  var bt, gt, yt, ct, Ct, Ot, _t = ft.dyn_tree, Ut = ft.max_code, ne = ft.stat_desc.static_tree, ie = ft.stat_desc.has_stree, ae = ft.stat_desc.extra_bits, jt = ft.stat_desc.extra_base, wt = ft.stat_desc.max_length, Et = 0;
@@ -2764,23 +2764,23 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2764
2764
  for (gt = it.bl_count[ct]; gt !== 0; )
2765
2765
  Ut < (yt = it.heap[--bt]) || (_t[2 * yt + 1] !== ct && (it.opt_len += (ct - _t[2 * yt + 1]) * _t[2 * yt], _t[2 * yt + 1] = ct), gt--);
2766
2766
  }
2767
- }(g, A), Y(G, st, g.bl_count);
2767
+ }(g, A), Y(G, ot, g.bl_count);
2768
2768
  }
2769
2769
  function t(g, A, $) {
2770
- var Z, B, G = -1, tt = A[1], X = 0, rt = 7, st = 4;
2771
- for (tt === 0 && (rt = 138, st = 3), A[2 * ($ + 1) + 1] = 65535, Z = 0; Z <= $; Z++)
2772
- B = tt, tt = A[2 * (Z + 1) + 1], ++X < rt && B === tt || (X < st ? g.bl_tree[2 * B] += X : B !== 0 ? (B !== G && g.bl_tree[2 * B]++, g.bl_tree[2 * z]++) : X <= 10 ? g.bl_tree[2 * C]++ : g.bl_tree[2 * L]++, G = B, st = (X = 0) === tt ? (rt = 138, 3) : B === tt ? (rt = 6, 3) : (rt = 7, 4));
2770
+ var Z, B, G = -1, tt = A[1], X = 0, rt = 7, ot = 4;
2771
+ for (tt === 0 && (rt = 138, ot = 3), A[2 * ($ + 1) + 1] = 65535, Z = 0; Z <= $; Z++)
2772
+ B = tt, tt = A[2 * (Z + 1) + 1], ++X < rt && B === tt || (X < ot ? g.bl_tree[2 * B] += X : B !== 0 ? (B !== G && g.bl_tree[2 * B]++, g.bl_tree[2 * z]++) : X <= 10 ? g.bl_tree[2 * C]++ : g.bl_tree[2 * L]++, G = B, ot = (X = 0) === tt ? (rt = 138, 3) : B === tt ? (rt = 6, 3) : (rt = 7, 4));
2773
2773
  }
2774
2774
  function j(g, A, $) {
2775
- var Z, B, G = -1, tt = A[1], X = 0, rt = 7, st = 4;
2776
- for (tt === 0 && (rt = 138, st = 3), Z = 0; Z <= $; Z++)
2775
+ var Z, B, G = -1, tt = A[1], X = 0, rt = 7, ot = 4;
2776
+ for (tt === 0 && (rt = 138, ot = 3), Z = 0; Z <= $; Z++)
2777
2777
  if (B = tt, tt = A[2 * (Z + 1) + 1], !(++X < rt && B === tt)) {
2778
- if (X < st)
2778
+ if (X < ot)
2779
2779
  for (; K(g, B, g.bl_tree), --X != 0; )
2780
2780
  ;
2781
2781
  else
2782
2782
  B !== 0 ? (B !== G && (K(g, B, g.bl_tree), X--), K(g, z, g.bl_tree), q(g, X - 3, 2)) : X <= 10 ? (K(g, C, g.bl_tree), q(g, X - 3, 3)) : (K(g, L, g.bl_tree), q(g, X - 11, 7));
2783
- G = B, st = (X = 0) === tt ? (rt = 138, 3) : B === tt ? (rt = 6, 3) : (rt = 7, 4);
2783
+ G = B, ot = (X = 0) === tt ? (rt = 138, 3) : B === tt ? (rt = 6, 3) : (rt = 7, 4);
2784
2784
  }
2785
2785
  }
2786
2786
  i(R);
@@ -2813,15 +2813,15 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2813
2813
  for (; A <= 287; )
2814
2814
  F[2 * A + 1] = 8, A++, tt[8]++;
2815
2815
  for (Y(F, w + 1, tt), A = 0; A < o; A++)
2816
- u[2 * A + 1] = 5, u[2 * A] = ot(A, 5);
2816
+ u[2 * A + 1] = 5, u[2 * A] = lt(A, 5);
2817
2817
  J = new H(F, P, m + 1, w, f), U = new H(u, W, 0, o, f), nt = new H(new Array(0), v, 0, b, _);
2818
2818
  }(), N = !0), g.l_desc = new I(g.dyn_ltree, J), g.d_desc = new I(g.dyn_dtree, U), g.bl_desc = new I(g.bl_tree, nt), g.bi_buf = 0, g.bi_valid = 0, V(g);
2819
2819
  }, p._tr_stored_block = y, p._tr_flush_block = function(g, A, $, Z) {
2820
2820
  var B, G, tt = 0;
2821
2821
  0 < g.level ? (g.strm.data_type === 2 && (g.strm.data_type = function(X) {
2822
- var rt, st = 4093624447;
2823
- for (rt = 0; rt <= 31; rt++, st >>>= 1)
2824
- if (1 & st && X.dyn_ltree[2 * rt] !== 0)
2822
+ var rt, ot = 4093624447;
2823
+ for (rt = 0; rt <= 31; rt++, ot >>>= 1)
2824
+ if (1 & ot && X.dyn_ltree[2 * rt] !== 0)
2825
2825
  return s;
2826
2826
  if (X.dyn_ltree[18] !== 0 || X.dyn_ltree[20] !== 0 || X.dyn_ltree[26] !== 0)
2827
2827
  return e;
@@ -2834,11 +2834,11 @@ https://github.com/nodeca/pako/blob/main/LICENSE
2834
2834
  for (t(X, X.dyn_ltree, X.l_desc.max_code), t(X, X.dyn_dtree, X.d_desc.max_code), dt(X, X.bl_desc), rt = b - 1; 3 <= rt && X.bl_tree[2 * T[rt] + 1] === 0; rt--)
2835
2835
  ;
2836
2836
  return X.opt_len += 3 * (rt + 1) + 5 + 5 + 4, rt;
2837
- }(g), B = g.opt_len + 3 + 7 >>> 3, (G = g.static_len + 3 + 7 >>> 3) <= B && (B = G)) : B = G = $ + 5, $ + 4 <= B && A !== -1 ? y(g, A, $, Z) : g.strategy === 4 || G === B ? (q(g, 2 + (Z ? 1 : 0), 3), mt(g, F, u)) : (q(g, 4 + (Z ? 1 : 0), 3), function(X, rt, st, it) {
2837
+ }(g), B = g.opt_len + 3 + 7 >>> 3, (G = g.static_len + 3 + 7 >>> 3) <= B && (B = G)) : B = G = $ + 5, $ + 4 <= B && A !== -1 ? y(g, A, $, Z) : g.strategy === 4 || G === B ? (q(g, 2 + (Z ? 1 : 0), 3), mt(g, F, u)) : (q(g, 4 + (Z ? 1 : 0), 3), function(X, rt, ot, it) {
2838
2838
  var ft;
2839
- for (q(X, rt - 257, 5), q(X, st - 1, 5), q(X, it - 4, 4), ft = 0; ft < it; ft++)
2839
+ for (q(X, rt - 257, 5), q(X, ot - 1, 5), q(X, it - 4, 4), ft = 0; ft < it; ft++)
2840
2840
  q(X, X.bl_tree[2 * T[ft] + 1], 3);
2841
- j(X, X.dyn_ltree, rt - 1), j(X, X.dyn_dtree, st - 1);
2841
+ j(X, X.dyn_ltree, rt - 1), j(X, X.dyn_dtree, ot - 1);
2842
2842
  }(g, g.l_desc.max_code + 1, g.d_desc.max_code + 1, tt + 1), mt(g, g.dyn_ltree, g.dyn_dtree)), V(g), Z && et(g);
2843
2843
  }, p._tr_tally = function(g, A, $) {
2844
2844
  return g.pending_buf[g.d_buf + 2 * g.last_lit] = A >>> 8 & 255, g.pending_buf[g.d_buf + 2 * g.last_lit + 1] = 255 & A, g.pending_buf[g.l_buf + g.last_lit] = 255 & $, g.last_lit++, A === 0 ? g.dyn_ltree[2 * $]++ : (g.matches++, A--, g.dyn_ltree[2 * (r[$] + m + 1)]++, g.dyn_dtree[2 * E(A)]++), g.last_lit === g.lit_bufsize - 1;
@@ -3130,9 +3130,9 @@ function Ht(S) {
3130
3130
  const u = i(v.color, T);
3131
3131
  return u || { hex: "000000", alpha: 1 };
3132
3132
  }, b = (v, T, F) => {
3133
- var ot;
3133
+ var lt;
3134
3134
  let u = F, O = 0;
3135
- const r = (ot = T.transform.match(/^matrix\(([^)]+)\)$/)) == null ? void 0 : ot[1].split(",").map(Number);
3135
+ const r = (lt = T.transform.match(/^matrix\(([^)]+)\)$/)) == null ? void 0 : lt[1].split(",").map(Number);
3136
3136
  (r == null ? void 0 : r.length) === 6 && Math.abs(Math.hypot(r[0], r[1]) - 1) < 0.01 && Math.abs(Math.hypot(r[2], r[3]) - 1) < 0.01 && (O = Math.atan2(r[1], r[0]) * 180 / Math.PI, Math.abs(O) > 0.1 && (u = {
3137
3137
  x: F.x + (F.w - v.offsetWidth) / 2,
3138
3138
  y: F.y + (F.h - v.offsetHeight) / 2,
@@ -3148,14 +3148,14 @@ function Ht(S) {
3148
3148
  const V = getComputedStyle(Y);
3149
3149
  if (V.overflow !== "hidden")
3150
3150
  continue;
3151
- const et = Y.getBoundingClientRect(), at = v.getBoundingClientRect(), lt = w(V, m(Y));
3151
+ const et = Y.getBoundingClientRect(), at = v.getBoundingClientRect(), st = w(V, m(Y));
3152
3152
  [
3153
3153
  Math.abs(at.left - et.left) < 3 && Math.abs(at.top - et.top) < 3,
3154
3154
  Math.abs(at.right - et.right) < 3 && Math.abs(at.top - et.top) < 3,
3155
3155
  Math.abs(at.right - et.right) < 3 && Math.abs(at.bottom - et.bottom) < 3,
3156
3156
  Math.abs(at.left - et.left) < 3 && Math.abs(at.bottom - et.bottom) < 3
3157
3157
  ].forEach((dt, t) => {
3158
- dt && (R[t] = Math.max(R[t], lt[t]));
3158
+ dt && (R[t] = Math.max(R[t], st[t]));
3159
3159
  });
3160
3160
  }
3161
3161
  const I = T.clipPath.match(/^polygon\((.*)\)$/), E = U.map((Y, V) => ({ ...Y, index: V })).filter((Y) => Y.width && Y.color);
@@ -3226,8 +3226,8 @@ function Ht(S) {
3226
3226
  }
3227
3227
  }
3228
3228
  const K = U.every((Y) => {
3229
- var V, et;
3230
- return Math.abs(Y.width - U[0].width) < 0.1 && (((V = Y.color) == null ? void 0 : V.hex) || "") === (((et = U[0].color) == null ? void 0 : et.hex) || "") && Y.style === U[0].style;
3229
+ var V, et, at, st;
3230
+ return Math.abs(Y.width - U[0].width) < 0.1 && (((V = Y.color) == null ? void 0 : V.hex) || "") === (((et = U[0].color) == null ? void 0 : et.hex) || "") && (((at = Y.color) == null ? void 0 : at.alpha) || 0) === (((st = U[0].color) == null ? void 0 : st.alpha) || 0) && Y.style === U[0].style;
3231
3231
  });
3232
3232
  p.push({
3233
3233
  type: "shape",