silvery 0.19.2 → 0.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (218) hide show
  1. package/README.md +9 -4
  2. package/dist/Text-Lq0dmj8-.mjs +239 -0
  3. package/dist/Text-Lq0dmj8-.mjs.map +1 -0
  4. package/dist/UPNG-Bo33r8rA.mjs +3 -0
  5. package/dist/UPNG-DosRPdF4.mjs +5075 -0
  6. package/dist/UPNG-DosRPdF4.mjs.map +1 -0
  7. package/dist/__vite-browser-external-2447137e-D_JM6skp.mjs +6 -0
  8. package/dist/__vite-browser-external-2447137e-D_JM6skp.mjs.map +1 -0
  9. package/dist/{animation-Cn64yepo.mjs → animation-ZMN2_XKv.mjs} +2 -2
  10. package/dist/animation-ZMN2_XKv.mjs.map +1 -0
  11. package/dist/{ansi-Cc33mW54.d.mts → ansi-2Xn0yatP.d.mts} +1 -1
  12. package/dist/{ansi-Cc33mW54.d.mts.map → ansi-2Xn0yatP.d.mts.map} +1 -1
  13. package/dist/{ansi-CLOitHKx.mjs → ansi-D1KQMAbf.mjs} +1 -1
  14. package/dist/{ansi-CLOitHKx.mjs.map → ansi-D1KQMAbf.mjs.map} +1 -1
  15. package/dist/ansi-yC4RyBNY.mjs +22441 -0
  16. package/dist/ansi-yC4RyBNY.mjs.map +1 -0
  17. package/dist/apng-CR08rIaH.mjs +58 -0
  18. package/dist/apng-CR08rIaH.mjs.map +1 -0
  19. package/dist/apng-DaHfVaVI.mjs +3 -0
  20. package/dist/assets/resvgjs.darwin-arm64-BtufyGW1.node +0 -0
  21. package/dist/assets/skia.darwin-arm64-DQs5sT6N.node +0 -0
  22. package/dist/backend-B-WYLUib.mjs +13396 -0
  23. package/dist/backend-B-WYLUib.mjs.map +1 -0
  24. package/dist/backends-CUtan80W.mjs +3 -0
  25. package/dist/backends-DIVYzKqd.mjs +1083 -0
  26. package/dist/backends-DIVYzKqd.mjs.map +1 -0
  27. package/dist/bound-term-0sPrrzH1.d.mts +4640 -0
  28. package/dist/bound-term-0sPrrzH1.d.mts.map +1 -0
  29. package/dist/canvas-1v7dPT-_.mjs +3 -0
  30. package/dist/canvas-CSuPOMNt.mjs +1442 -0
  31. package/dist/canvas-CSuPOMNt.mjs.map +1 -0
  32. package/dist/{chunk-Vs_PY4HZ.mjs → chunk-BSw8zbkd.mjs} +1 -1
  33. package/dist/cli-dvo0r2fs.mjs +4 -0
  34. package/dist/compare-CQodSH4G.mjs +376 -0
  35. package/dist/compare-CQodSH4G.mjs.map +1 -0
  36. package/dist/compare-DHlcxEYA.mjs +3 -0
  37. package/dist/context-BU5LkkIy.mjs.map +1 -1
  38. package/dist/devtools-CJdt5H0X.mjs +2 -0
  39. package/dist/{devtools-DxkSLXDA.mjs → devtools-DcQjgyjL.mjs} +5 -4
  40. package/dist/{devtools-DxkSLXDA.mjs.map → devtools-DcQjgyjL.mjs.map} +1 -1
  41. package/dist/easing-BI-ASGMO.d.mts +24 -0
  42. package/dist/easing-BI-ASGMO.d.mts.map +1 -0
  43. package/dist/{eta-Bb3RH3wh.mjs → eta-CJlGH06n.mjs} +1 -1
  44. package/dist/{eta-Bb3RH3wh.mjs.map → eta-CJlGH06n.mjs.map} +1 -1
  45. package/dist/flexily-zero-adapter-C3Vj0fPt.mjs +306 -0
  46. package/dist/flexily-zero-adapter-C3Vj0fPt.mjs.map +1 -0
  47. package/dist/{flexily-zero-adapter-CMxXhdOL.mjs → flexily-zero-adapter-C4lW_Ov5.mjs} +1 -1
  48. package/dist/fonts-BFmhXDv7.mjs +88 -0
  49. package/dist/fonts-BFmhXDv7.mjs.map +1 -0
  50. package/dist/gif-C_AjaT9d.mjs +188 -0
  51. package/dist/gif-C_AjaT9d.mjs.map +1 -0
  52. package/dist/gif-DaC4XrxA.mjs +3 -0
  53. package/dist/gifenc-BOUT-KFB.mjs +730 -0
  54. package/dist/gifenc-BOUT-KFB.mjs.map +1 -0
  55. package/dist/image-C2Birh2x.mjs +1252 -0
  56. package/dist/image-C2Birh2x.mjs.map +1 -0
  57. package/dist/index-BUMxS65f.d.mts +453 -0
  58. package/dist/index-BUMxS65f.d.mts.map +1 -0
  59. package/dist/{index-D3saHouR.d.mts → index-CSQf13CI.d.mts} +1057 -1133
  60. package/dist/index-CSQf13CI.d.mts.map +1 -0
  61. package/dist/{index-BXslOebb.d.mts → index-Cl9KKjQ_.d.mts} +4919 -3921
  62. package/dist/index-Cl9KKjQ_.d.mts.map +1 -0
  63. package/dist/index-XbNrPhWl.d.mts +336 -0
  64. package/dist/index-XbNrPhWl.d.mts.map +1 -0
  65. package/dist/index.d.mts +8 -5
  66. package/dist/index.d.mts.map +1 -1
  67. package/dist/index.mjs +14 -12
  68. package/dist/index.mjs.map +1 -1
  69. package/dist/key-mapping-CS-YD_cD.mjs +132 -0
  70. package/dist/key-mapping-CS-YD_cD.mjs.map +1 -0
  71. package/dist/key-mapping-Yn-Jgrij.mjs +3 -0
  72. package/dist/{layout-engine-B6Cdz1yZ.mjs → layout-engine-C07LEXWT.mjs} +1 -1
  73. package/dist/layout-engine-C2px0RJE.mjs +67 -0
  74. package/dist/layout-engine-C2px0RJE.mjs.map +1 -0
  75. package/dist/layout-signals-Cnw6xk8Q.mjs +988 -0
  76. package/dist/layout-signals-Cnw6xk8Q.mjs.map +1 -0
  77. package/dist/mouse-events-Dki3ISIp.mjs +1044 -0
  78. package/dist/mouse-events-Dki3ISIp.mjs.map +1 -0
  79. package/dist/{multi-progress-Bq9Oi_WI.mjs → multi-progress-CIRjrzma.mjs} +3 -3
  80. package/dist/{multi-progress-Bq9Oi_WI.mjs.map → multi-progress-CIRjrzma.mjs.map} +1 -1
  81. package/dist/{multi-progress-DAQC7eap.d.mts → multi-progress-DHZ2xUT2.d.mts} +2 -2
  82. package/dist/{multi-progress-DAQC7eap.d.mts.map → multi-progress-DHZ2xUT2.d.mts.map} +1 -1
  83. package/dist/{node-BeWlnCPY.mjs → node-CjM5Rt-M.mjs} +4 -4
  84. package/dist/node-CjM5Rt-M.mjs.map +1 -0
  85. package/dist/playwright-D5YiZcNS.mjs +76397 -0
  86. package/dist/playwright-D5YiZcNS.mjs.map +1 -0
  87. package/dist/png-codec-Dp84742B.mjs +36 -0
  88. package/dist/png-codec-Dp84742B.mjs.map +1 -0
  89. package/dist/png-codec-QwOtJ8Zs.mjs +3 -0
  90. package/dist/progress-DB_Xo071.mjs +675 -0
  91. package/dist/progress-DB_Xo071.mjs.map +1 -0
  92. package/dist/{progress-bar-CXE5Qfkd.mjs → progress-bar-oJwq22CR.mjs} +4 -4
  93. package/dist/{progress-bar-CXE5Qfkd.mjs.map → progress-bar-oJwq22CR.mjs.map} +1 -1
  94. package/dist/rasterizer-BRXrDdWx.mjs +3 -0
  95. package/dist/rasterizer-CpEhJvdR.mjs +296 -0
  96. package/dist/rasterizer-CpEhJvdR.mjs.map +1 -0
  97. package/dist/reconciler-DldIJB93.mjs +2083 -0
  98. package/dist/reconciler-DldIJB93.mjs.map +1 -0
  99. package/dist/{render-string-CDCeYkS3.mjs → render-string-BcoCpjCB.mjs} +1 -1
  100. package/dist/{render-string-Darrg7ku.mjs → render-string-DkQacASz.mjs} +2707 -549
  101. package/dist/render-string-DkQacASz.mjs.map +1 -0
  102. package/dist/resvg-js-DkOndZI3.mjs +203 -0
  103. package/dist/resvg-js-DkOndZI3.mjs.map +1 -0
  104. package/dist/runtime.d.mts +3 -2
  105. package/dist/runtime.mjs +3 -3
  106. package/dist/schemes-JjNp4aSl.mjs +2611 -0
  107. package/dist/schemes-JjNp4aSl.mjs.map +1 -0
  108. package/dist/{spinner-CGo34vyR.d.mts → spinner-CZINHpkV.d.mts} +2 -2
  109. package/dist/{spinner-CGo34vyR.d.mts.map → spinner-CZINHpkV.d.mts.map} +1 -1
  110. package/dist/{spinner-CeOmcuw_.mjs → spinner-D9lrHr8s.mjs} +7 -7
  111. package/dist/spinner-D9lrHr8s.mjs.map +1 -0
  112. package/dist/src-5w9QR6_8.mjs +1071 -0
  113. package/dist/src-5w9QR6_8.mjs.map +1 -0
  114. package/dist/src-BNTToU7l.mjs +4387 -0
  115. package/dist/src-BNTToU7l.mjs.map +1 -0
  116. package/dist/{src-CF-6UN01.mjs → src-BR4xNwdG.mjs} +10436 -2622
  117. package/dist/src-BR4xNwdG.mjs.map +1 -0
  118. package/dist/{types-Bk2yw9Qj.mjs → src-DKp-_OFG.mjs} +34 -94
  119. package/dist/src-DKp-_OFG.mjs.map +1 -0
  120. package/dist/src-bt8wSrfJ.mjs +258 -0
  121. package/dist/src-bt8wSrfJ.mjs.map +1 -0
  122. package/dist/src-e33Y6kNJ.mjs +3 -0
  123. package/dist/src-iDwu25UD.mjs +1814 -0
  124. package/dist/src-iDwu25UD.mjs.map +1 -0
  125. package/dist/steps-Bp2uNqnn.d.mts +202 -0
  126. package/dist/steps-Bp2uNqnn.d.mts.map +1 -0
  127. package/dist/svg-15lZZzxq.mjs +486 -0
  128. package/dist/svg-15lZZzxq.mjs.map +1 -0
  129. package/dist/svg-Cz0UXcDj.mjs +255 -0
  130. package/dist/svg-Cz0UXcDj.mjs.map +1 -0
  131. package/dist/svg-DY72a4HK.mjs +3 -0
  132. package/dist/svg-g1D6ErwR.d.mts +82 -0
  133. package/dist/svg-g1D6ErwR.d.mts.map +1 -0
  134. package/dist/term.d.mts +3 -0
  135. package/dist/term.mjs +9 -0
  136. package/dist/term.mjs.map +1 -0
  137. package/dist/theme.d.mts +95 -2
  138. package/dist/theme.d.mts.map +1 -0
  139. package/dist/theme.mjs +9 -3
  140. package/dist/theme.mjs.map +1 -0
  141. package/dist/{types-BH_v3iMT.d.mts → types-kt_fKR37.d.mts} +2 -15
  142. package/dist/types-kt_fKR37.d.mts.map +1 -0
  143. package/dist/ui/animation.d.mts +2 -1
  144. package/dist/ui/animation.mjs +1 -1
  145. package/dist/ui/ansi.d.mts +1 -1
  146. package/dist/ui/ansi.mjs +1 -1
  147. package/dist/ui/cli.d.mts +3 -3
  148. package/dist/ui/cli.mjs +5 -5
  149. package/dist/ui/display.d.mts +1 -1
  150. package/dist/ui/image.d.mts +2 -2
  151. package/dist/ui/image.mjs +2 -2
  152. package/dist/ui/input.d.mts +1 -1
  153. package/dist/ui/input.mjs +4 -2
  154. package/dist/ui/input.mjs.map +1 -1
  155. package/dist/ui/progress.d.mts +5 -249
  156. package/dist/ui/progress.mjs +5 -858
  157. package/dist/ui/react.d.mts +1 -1
  158. package/dist/ui/react.mjs +2 -2
  159. package/dist/ui/recording-chrome-react.d.mts +21 -0
  160. package/dist/ui/recording-chrome-react.d.mts.map +1 -0
  161. package/dist/ui/recording-chrome-react.mjs +105 -0
  162. package/dist/ui/recording-chrome-react.mjs.map +1 -0
  163. package/dist/ui/recording-chrome.d.mts +2 -0
  164. package/dist/ui/recording-chrome.mjs +2 -0
  165. package/dist/ui/utils.mjs +1 -1
  166. package/dist/ui/wrappers.d.mts +3 -3
  167. package/dist/ui/wrappers.mjs +2 -2
  168. package/dist/ui.d.mts +7 -6
  169. package/dist/ui.mjs +8 -7
  170. package/dist/{useLatest-Bg2x4bfP.d.mts → useLatest-DRDDVwjh.d.mts} +5 -25
  171. package/dist/useLatest-DRDDVwjh.d.mts.map +1 -0
  172. package/dist/{with-text-input-CRfoiFFG.d.mts → with-text-input-YeohVLeo.d.mts} +4 -55
  173. package/dist/with-text-input-YeohVLeo.d.mts.map +1 -0
  174. package/dist/wrapper-C70ATkVv.mjs +3527 -0
  175. package/dist/wrapper-C70ATkVv.mjs.map +1 -0
  176. package/dist/{wrappers-UTADQkSY.mjs → wrappers-BCUYITrY.mjs} +5 -157
  177. package/dist/wrappers-BCUYITrY.mjs.map +1 -0
  178. package/dist/{yoga-adapter-8oRGRw8V.mjs → yoga-adapter-BnZX1PAY.mjs} +28 -2
  179. package/dist/yoga-adapter-BnZX1PAY.mjs.map +1 -0
  180. package/dist/yoga-adapter-DxgsQ_gg.mjs +2 -0
  181. package/dist/zipBundle-3nqeDRtm.mjs +3 -0
  182. package/dist/zipBundle-VNAYFmqJ.mjs +2003 -0
  183. package/dist/zipBundle-VNAYFmqJ.mjs.map +1 -0
  184. package/package.json +20 -9
  185. package/dist/animation-Cn64yepo.mjs.map +0 -1
  186. package/dist/cli-BKp0YtBD.mjs +0 -4
  187. package/dist/devtools-9QY4teqI.mjs +0 -2
  188. package/dist/flexily-zero-adapter-BlQa46nr.mjs +0 -3385
  189. package/dist/flexily-zero-adapter-BlQa46nr.mjs.map +0 -1
  190. package/dist/image-CTII5QWI.mjs +0 -477
  191. package/dist/image-CTII5QWI.mjs.map +0 -1
  192. package/dist/index-BXslOebb.d.mts.map +0 -1
  193. package/dist/index-BnA7mNpo.d.mts +0 -175
  194. package/dist/index-BnA7mNpo.d.mts.map +0 -1
  195. package/dist/index-D3saHouR.d.mts.map +0 -1
  196. package/dist/layout-engine-ClUgv6jB.mjs +0 -50
  197. package/dist/layout-engine-ClUgv6jB.mjs.map +0 -1
  198. package/dist/node-BeWlnCPY.mjs.map +0 -1
  199. package/dist/reconciler-Cwgm8hRR.mjs +0 -8459
  200. package/dist/reconciler-Cwgm8hRR.mjs.map +0 -1
  201. package/dist/render-string-Darrg7ku.mjs.map +0 -1
  202. package/dist/spinner-CeOmcuw_.mjs.map +0 -1
  203. package/dist/src-B5GjfG7g.mjs +0 -4305
  204. package/dist/src-B5GjfG7g.mjs.map +0 -1
  205. package/dist/src-CChwjk0Z.mjs +0 -738
  206. package/dist/src-CChwjk0Z.mjs.map +0 -1
  207. package/dist/src-CF-6UN01.mjs.map +0 -1
  208. package/dist/src-NCKb8kE5.mjs +0 -2660
  209. package/dist/src-NCKb8kE5.mjs.map +0 -1
  210. package/dist/types-BH_v3iMT.d.mts.map +0 -1
  211. package/dist/types-Bk2yw9Qj.mjs.map +0 -1
  212. package/dist/ui/progress.d.mts.map +0 -1
  213. package/dist/ui/progress.mjs.map +0 -1
  214. package/dist/useLatest-Bg2x4bfP.d.mts.map +0 -1
  215. package/dist/with-text-input-CRfoiFFG.d.mts.map +0 -1
  216. package/dist/wrappers-UTADQkSY.mjs.map +0 -1
  217. package/dist/yoga-adapter-8oRGRw8V.mjs.map +0 -1
  218. package/dist/yoga-adapter-D_CcxSt5.mjs +0 -2
@@ -0,0 +1,58 @@
1
+ import { n as __esmMin, o as __toESM } from "./chunk-BSw8zbkd.mjs";
2
+ import { n as selectRasterizer, t as init_rasterizer } from "./rasterizer-CpEhJvdR.mjs";
3
+ //#region ../termless/src/view/apng.ts
4
+ async function loadUpng() {
5
+ if (upngModule) return upngModule;
6
+ try {
7
+ upngModule = await import("./UPNG-Bo33r8rA.mjs").then((m) => /* @__PURE__ */ __toESM(m.default, 1));
8
+ return upngModule;
9
+ } catch {
10
+ throw new Error("createApng() requires upng-js. Install it:\n bun add upng-js");
11
+ }
12
+ }
13
+ /**
14
+ * Encode animation frames as an animated PNG (APNG).
15
+ *
16
+ * Each SVG frame is rasterized to RGBA pixels via the selected renderer
17
+ * (`options.renderer`, default `auto`), then combined into a single APNG file
18
+ * via upng-js.
19
+ *
20
+ * @param frames - SVG frames with durations
21
+ * @param options - Animation options plus optional `scale` and `renderer`
22
+ * @returns APNG file as Uint8Array
23
+ */
24
+ async function createApng(frames, options) {
25
+ if (frames.length === 0) throw new Error("createApng requires at least one frame");
26
+ const [UPNG, rasterizer] = await Promise.all([loadUpng(), selectRasterizer(options?.renderer ?? "auto")]);
27
+ const defaultDuration = options?.defaultDuration ?? 100;
28
+ const scale = options?.scale ?? 2;
29
+ const rgbaBuffers = [];
30
+ const delays = [];
31
+ let width = 0;
32
+ let height = 0;
33
+ try {
34
+ for (const frame of frames) {
35
+ const duration = frame.duration || defaultDuration;
36
+ const rendered = frame.snapshot && rasterizer.rasterizeCells ? await rasterizer.rasterizeCells(frame.snapshot, scale) : await rasterizer.rasterize(frame.svg, scale);
37
+ if (width === 0) {
38
+ width = rendered.width;
39
+ height = rendered.height;
40
+ }
41
+ rgbaBuffers.push(rendered.pixels.buffer);
42
+ delays.push(duration);
43
+ }
44
+ } finally {
45
+ await rasterizer.dispose?.();
46
+ }
47
+ const apng = UPNG.encode(rgbaBuffers, width, height, 0, delays);
48
+ return new Uint8Array(apng);
49
+ }
50
+ var upngModule;
51
+ var init_apng = __esmMin((() => {
52
+ init_rasterizer();
53
+ upngModule = null;
54
+ }));
55
+ //#endregion
56
+ export { init_apng as n, createApng as t };
57
+
58
+ //# sourceMappingURL=apng-CR08rIaH.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apng-CR08rIaH.mjs","names":[],"sources":["../../termless/src/view/apng.ts"],"sourcesContent":["/**\n * Animated PNG (APNG) encoder for termless.\n *\n * Converts SVG frames to an APNG using upng-js for APNG encoding. SVG → pixel\n * rasterization goes through the **renderer** (`./rasterizer.ts`): `canvas`\n * (`@napi-rs/canvas`) when its binding loads, `resvg` as the fallback.\n *\n * `upng-js` is an optional/lazy-loaded dependency — throws a clear error if\n * missing.\n */\n\n// Module declarations live in ./upng.d.ts (picked up via tsconfig `include` glob).\nimport type { AnimationFrame, AnimationOptions } from \"./animation-types.ts\"\nimport { selectRasterizer, type RendererKind } from \"./rasterizer.ts\"\n\n// Lazy-cached imports\nlet upngModule: typeof import(\"upng-js\") | null = null\n\nasync function loadUpng() {\n if (upngModule) return upngModule\n try {\n upngModule = await import(\"upng-js\")\n return upngModule\n } catch {\n throw new Error(\"createApng() requires upng-js. Install it:\\n bun add upng-js\")\n }\n}\n\n/**\n * Encode animation frames as an animated PNG (APNG).\n *\n * Each SVG frame is rasterized to RGBA pixels via the selected renderer\n * (`options.renderer`, default `auto`), then combined into a single APNG file\n * via upng-js.\n *\n * @param frames - SVG frames with durations\n * @param options - Animation options plus optional `scale` and `renderer`\n * @returns APNG file as Uint8Array\n */\nexport async function createApng(\n frames: AnimationFrame[],\n options?: AnimationOptions & { scale?: number; renderer?: RendererKind },\n): Promise<Uint8Array> {\n if (frames.length === 0) {\n throw new Error(\"createApng requires at least one frame\")\n }\n\n const [UPNG, rasterizer] = await Promise.all([loadUpng(), selectRasterizer(options?.renderer ?? \"auto\")])\n\n const defaultDuration = options?.defaultDuration ?? 100\n const scale = options?.scale ?? 2\n\n const rgbaBuffers: ArrayBuffer[] = []\n const delays: number[] = []\n let width = 0\n let height = 0\n\n try {\n for (const frame of frames) {\n const duration = frame.duration || defaultDuration\n\n // Cell-native path (swash): skip the SVG round-trip when a snapshot exists.\n const rendered =\n frame.snapshot && rasterizer.rasterizeCells\n ? await rasterizer.rasterizeCells(frame.snapshot, scale)\n : await rasterizer.rasterize(frame.svg, scale)\n\n // Use first frame's dimensions as the canvas size\n if (width === 0) {\n width = rendered.width\n height = rendered.height\n }\n\n rgbaBuffers.push(rendered.pixels.buffer as ArrayBuffer)\n delays.push(duration)\n }\n } finally {\n // Release the headless-Chromium instance the `browser` renderer holds.\n await rasterizer.dispose?.()\n }\n\n // upng-js encode: cnum=0 means lossless (full RGBA, no quantization)\n const apng = UPNG.encode(rgbaBuffers, width, height, 0, delays)\n return new Uint8Array(apng)\n}\n"],"mappings":";;;AAkBA,eAAe,WAAW;AACxB,KAAI,WAAY,QAAO;AACvB,KAAI;AACF,eAAa,MAAM,OAAO,uBAAA,MAAA,MAAA,wBAAA,EAAA,SAAA,EAAA,CAAA;AAC1B,SAAO;SACD;AACN,QAAM,IAAI,MAAM,gEAAgE;;;;;;;;;;;;;;AAepF,eAAsB,WACpB,QACA,SACqB;AACrB,KAAI,OAAO,WAAW,EACpB,OAAM,IAAI,MAAM,yCAAyC;CAG3D,MAAM,CAAC,MAAM,cAAc,MAAM,QAAQ,IAAI,CAAC,UAAU,EAAE,iBAAiB,SAAS,YAAY,OAAO,CAAC,CAAC;CAEzG,MAAM,kBAAkB,SAAS,mBAAmB;CACpD,MAAM,QAAQ,SAAS,SAAS;CAEhC,MAAM,cAA6B,EAAE;CACrC,MAAM,SAAmB,EAAE;CAC3B,IAAI,QAAQ;CACZ,IAAI,SAAS;AAEb,KAAI;AACF,OAAK,MAAM,SAAS,QAAQ;GAC1B,MAAM,WAAW,MAAM,YAAY;GAGnC,MAAM,WACJ,MAAM,YAAY,WAAW,iBACzB,MAAM,WAAW,eAAe,MAAM,UAAU,MAAM,GACtD,MAAM,WAAW,UAAU,MAAM,KAAK,MAAM;AAGlD,OAAI,UAAU,GAAG;AACf,YAAQ,SAAS;AACjB,aAAS,SAAS;;AAGpB,eAAY,KAAK,SAAS,OAAO,OAAsB;AACvD,UAAO,KAAK,SAAS;;WAEf;AAER,QAAM,WAAW,WAAW;;CAI9B,MAAM,OAAO,KAAK,OAAO,aAAa,OAAO,QAAQ,GAAG,OAAO;AAC/D,QAAO,IAAI,WAAW,KAAK;;;;kBAtEwC;AAGjE,cAA8C"}
@@ -0,0 +1,3 @@
1
+ import { n as init_apng, t as createApng } from "./apng-CR08rIaH.mjs";
2
+ init_apng();
3
+ export { createApng };