@beeintel/batch-image 0.0.0-stage → 1.0.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 (241) hide show
  1. package/FONT-LICENSE.txt +93 -0
  2. package/README.md +181 -2
  3. package/dist/assets/11st-D7qGO5e4.webp +0 -0
  4. package/dist/assets/UPNG-CPfdwFSy.js +2298 -0
  5. package/dist/assets/adjust-card-B63b81iV.webp +0 -0
  6. package/dist/assets/adjust-final.worker-C2JbTvv5.js +6945 -0
  7. package/dist/assets/amazon-CjTtpZTq.webp +0 -0
  8. package/dist/assets/ascii_art-B4UGbtGs.webp +0 -0
  9. package/dist/assets/auction-j26eVUQO.webp +0 -0
  10. package/dist/assets/background-DGdZUdkL.webp +0 -0
  11. package/dist/assets/background-card-wK7DRpvM.png +0 -0
  12. package/dist/assets/body-CUFdRg8w.webp +0 -0
  13. package/dist/assets/bounded-cutout.worker-BZR6mbaI.js +9615 -0
  14. package/dist/assets/brand-mark-card-cFUeDeO2.webp +0 -0
  15. package/dist/assets/buyma-dAxYNjow.webp +0 -0
  16. package/dist/assets/codec.worker-7W6hmsm6.js +7349 -0
  17. package/dist/assets/contour_lines-C_CqrgV1.webp +0 -0
  18. package/dist/assets/creema-B1tWyCPx.webp +0 -0
  19. package/dist/assets/crop-final.worker-Owin7TvX.js +7035 -0
  20. package/dist/assets/cutout-CzMvV5An.webp +0 -0
  21. package/dist/assets/cutout-card-CN4gNFBz.png +0 -0
  22. package/dist/assets/cutout.worker-DyH6Prbn.js +3894 -0
  23. package/dist/assets/depop-CkVC5Fn1.webp +0 -0
  24. package/dist/assets/dewrinkle-kFzP6LqD.webp +0 -0
  25. package/dist/assets/dither-CcxmO2e6.webp +0 -0
  26. package/dist/assets/douyin-CP_HwBDF.webp +0 -0
  27. package/dist/assets/download.worker-DnGSB6P_.js +17779 -0
  28. package/dist/assets/duotone-Cdg_3fQf.webp +0 -0
  29. package/dist/assets/ebay-CxLfrRAf.webp +0 -0
  30. package/dist/assets/edit-Cv-txfZm.webp +0 -0
  31. package/dist/assets/effect.worker-qu1eCcII.js +9227 -0
  32. package/dist/assets/engraving-BENh1O2O.webp +0 -0
  33. package/dist/assets/etsy-CSvz9GpY.webp +0 -0
  34. package/dist/assets/expand-C60VE9nK.webp +0 -0
  35. package/dist/assets/facebook-Ca2nJJiQ.webp +0 -0
  36. package/dist/assets/film_stock-Bqauwcq4.webp +0 -0
  37. package/dist/assets/final.worker-BnzJ3N5C.js +7035 -0
  38. package/dist/assets/final.worker-Csc1zoYS.js +7054 -0
  39. package/dist/assets/final.worker-DzBFT9xk.js +6922 -0
  40. package/dist/assets/final.worker-XpgKnlaz.js +7217 -0
  41. package/dist/assets/flatlay-CPiVmlAa.webp +0 -0
  42. package/dist/assets/flatlay-fold-B-CRYy87.webp +0 -0
  43. package/dist/assets/flatlay-open-Dzas8okC.webp +0 -0
  44. package/dist/assets/g-market-DXuYK_JH.webp +0 -0
  45. package/dist/assets/ghost-BCEAx_Zx.webp +0 -0
  46. package/dist/assets/ghost-front-WFgA4sUo.webp +0 -0
  47. package/dist/assets/ghost-three-quarter-Rt8cXj34.webp +0 -0
  48. package/dist/assets/gif-CObOIITx.js +303 -0
  49. package/dist/assets/glass_tiles-3IXP-Hmg.webp +0 -0
  50. package/dist/assets/glitch_art-D1i3qben.webp +0 -0
  51. package/dist/assets/glitch_blur-C4q_9zyq.webp +0 -0
  52. package/dist/assets/glow-Bv9EHBU5.webp +0 -0
  53. package/dist/assets/gradient_map-BR-UVYMP.webp +0 -0
  54. package/dist/assets/halftone-CWdKu2_6.webp +0 -0
  55. package/dist/assets/holo_sticker-BQDikLg2.webp +0 -0
  56. package/dist/assets/idus-7diqRNPs.webp +0 -0
  57. package/dist/assets/imagetracer.worker-CgunQTPG.js +7096 -0
  58. package/dist/assets/instagram-Bf0IVidT.webp +0 -0
  59. package/dist/assets/kakao-talk-Df79L_Mv.webp +0 -0
  60. package/dist/assets/kaleidoscope-BxqMZuWo.webp +0 -0
  61. package/dist/assets/karrot-BXFPhDwt.webp +0 -0
  62. package/dist/assets/kaufland-BDDy6e0C.webp +0 -0
  63. package/dist/assets/lazada-ConR4e1O.webp +0 -0
  64. package/dist/assets/lens_flare-DgyiAv_j.webp +0 -0
  65. package/dist/assets/light_leak-kUdpoFuC.webp +0 -0
  66. package/dist/assets/line-Dr1j___B.webp +0 -0
  67. package/dist/assets/linkedin-4s_9Wh03.webp +0 -0
  68. package/dist/assets/lo_fi-DSdl3yY_.webp +0 -0
  69. package/dist/assets/logo-preparation.worker-D9oa7SME.js +420 -0
  70. package/dist/assets/mercado-libre-C8CskEiS.webp +0 -0
  71. package/dist/assets/mercari-jp-DHj7nz4O.webp +0 -0
  72. package/dist/assets/metadata.worker-B_9_BgN1.js +6456 -0
  73. package/dist/assets/mirror_collage-JtSKCeSh.webp +0 -0
  74. package/dist/assets/model-BbeF-fsf.webp +0 -0
  75. package/dist/assets/model-BjWhieit.webp +0 -0
  76. package/dist/assets/momo-BWXO_8Df.webp +0 -0
  77. package/dist/assets/motion_blur-B8YUHeSg.webp +0 -0
  78. package/dist/assets/naver-xQKL8lWg.webp +0 -0
  79. package/dist/assets/nuvemshop-DPt6rnA-.webp +0 -0
  80. package/dist/assets/olx-B87gp-Il.webp +0 -0
  81. package/dist/assets/orient-card-Da0ii6mX.webp +0 -0
  82. package/dist/assets/orient-final.worker-CdF5Y5zD.js +6909 -0
  83. package/dist/assets/orientation-preview.worker-B7uFzz3J.js +6865 -0
  84. package/dist/assets/ort.bundle.min-CreFV8V1.js +9311 -0
  85. package/dist/assets/ort.webgpu.bundle.min-CAudaHZO.js +9311 -0
  86. package/dist/assets/otto-market-DWZyNKJn.webp +0 -0
  87. package/dist/assets/paper_texture-CXphyIrs.webp +0 -0
  88. package/dist/assets/pinterest-ByZqih2J.webp +0 -0
  89. package/dist/assets/polish-DFy6LNG7.webp +0 -0
  90. package/dist/assets/poshmark-DnZi2vA1.webp +0 -0
  91. package/dist/assets/posterize-SpLVGq1s.webp +0 -0
  92. package/dist/assets/preview.worker-DcrCKKWl.js +380 -0
  93. package/dist/assets/qoo10-C1pq81Jx.webp +0 -0
  94. package/dist/assets/rakuten-ulYog1hL.webp +0 -0
  95. package/dist/assets/recolor-mBX7vdFT.webp +0 -0
  96. package/dist/assets/resize-DVEAl0Um.webp +0 -0
  97. package/dist/assets/runtime-0663b902fb3937883a34.wasm +0 -0
  98. package/dist/assets/runtime-355a5c80c7bfdf8737de.mjs +2817 -0
  99. package/dist/assets/runtime-49871f5a4409519797e1.wasm +0 -0
  100. package/dist/assets/runtime-74cf72f9a2b7befc115a.mjs +2817 -0
  101. package/dist/assets/shadow-card-DTZEH60r.png +0 -0
  102. package/dist/assets/shopee-Bxfei6sj.webp +0 -0
  103. package/dist/assets/shopify-wVaBafcF.webp +0 -0
  104. package/dist/assets/shopline-DMoaJ7Bh.webp +0 -0
  105. package/dist/assets/sparkle-CD5GSGip.webp +0 -0
  106. package/dist/assets/ssg-DQoFx5u5.webp +0 -0
  107. package/dist/assets/staging-CIc8pQJ6.webp +0 -0
  108. package/dist/assets/standard-cutout.worker-BYLzdpR-.js +1261 -0
  109. package/dist/assets/text-DQW2mBGp.webp +0 -0
  110. package/dist/assets/textured_glass-D2coxp7n.webp +0 -0
  111. package/dist/assets/tga-VGxWDes0.js +752 -0
  112. package/dist/assets/tilt_shift-BKs46yeX.webp +0 -0
  113. package/dist/assets/transformers.web-DB57cIO5.js +28891 -0
  114. package/dist/assets/tritone-CcR4qizk.webp +0 -0
  115. package/dist/assets/upscale-BrLadyUk.webp +0 -0
  116. package/dist/assets/upscale-creative-DnZnQufJ.webp +0 -0
  117. package/dist/assets/upscale-crisp-Ckdmbsnn.webp +0 -0
  118. package/dist/assets/vinted-1QDsxvC6.webp +0 -0
  119. package/dist/assets/watercolor-CV67zYNE.webp +0 -0
  120. package/dist/assets/watermark-CpPrxaT5.webp +0 -0
  121. package/dist/assets/wave_distortion-CV5jVfK4.webp +0 -0
  122. package/dist/assets/whatsapp-CWJxqzR6.webp +0 -0
  123. package/dist/assets/worker-DfrCFP3O.js +55 -0
  124. package/dist/assets/xerox_noise-CbbHY1S1.webp +0 -0
  125. package/dist/assets/youtube-DS12d5mi.webp +0 -0
  126. package/dist/assets/zalando-CenfWOwz.webp +0 -0
  127. package/dist/browser-adapter.d.ts +4 -0
  128. package/dist/browser-cutout-capability.d.ts +4 -0
  129. package/dist/browser-cutout-resources.d.ts +3 -0
  130. package/dist/browser-local-capabilities.d.ts +5 -0
  131. package/dist/capabilities.d.ts +18 -0
  132. package/dist/chunks/AdjustToolPanel-B6dtlFlj.js +195 -0
  133. package/dist/chunks/BackgroundToolPanel-C3Rr9d4S.js +41 -0
  134. package/dist/chunks/BatchMaterials-DDoJTaS5.js +806 -0
  135. package/dist/chunks/BatchModeChoices-DeBARgvY.js +111 -0
  136. package/dist/chunks/BatchOutputColorPicker-D7WIDS4_.js +75 -0
  137. package/dist/chunks/BatchReferenceFields-Cr5WgFRJ.js +316 -0
  138. package/dist/chunks/BeautifyToolPanel-DDZXDQKM.js +215 -0
  139. package/dist/chunks/BrandMarkToolPanel-vKobk_R3.js +1179 -0
  140. package/dist/chunks/ContentTrimControl-BKCJEst5.js +297 -0
  141. package/dist/chunks/CropToolPanel-C_sW5tWL.js +218 -0
  142. package/dist/chunks/CutoutToolPanel-B7ObmiWd.js +73 -0
  143. package/dist/chunks/DisclosureToolPanel-F3ccFJIF.js +76 -0
  144. package/dist/chunks/ExpandToolPanel-BKjj5UJA.js +67 -0
  145. package/dist/chunks/ImageEffectsToolPanel-CsDIBpT6.js +966 -0
  146. package/dist/chunks/IpAuditToolPanel-CduDfFh-.js +96 -0
  147. package/dist/chunks/ListingToolPanel-8pJ2_zvI.js +783 -0
  148. package/dist/chunks/MaterialSelectionPlate-CW7HaS6v.js +30 -0
  149. package/dist/chunks/MetadataToolPanel-C8XJOamN.js +104 -0
  150. package/dist/chunks/OrientToolPanel-C1AzQchm.js +161 -0
  151. package/dist/chunks/PluginActionFooter.vue_vue_type_script_setup_true_lang-BGe419qz.js +102 -0
  152. package/dist/chunks/ResizeToolPanel-DWikcj2G.js +1178 -0
  153. package/dist/chunks/RetouchToolPanel-B4eQKk2W.js +350 -0
  154. package/dist/chunks/ShadowToolPanel-Bbj76hQd.js +254 -0
  155. package/dist/chunks/SvgExportToolPanel-BRxpzd7q.js +219 -0
  156. package/dist/chunks/TranslationToolPanel-Bxv8U2WY.js +125 -0
  157. package/dist/chunks/UpscaleToolPanel-BRIgpszs.js +127 -0
  158. package/dist/chunks/engine-D-T-1RSx.js +69 -0
  159. package/dist/chunks/entry-CboOSe2r.js +42945 -0
  160. package/dist/chunks/gpu-CScw5MNG.js +231 -0
  161. package/dist/chunks/hosted-resources-COzZ7nZY.js +8196 -0
  162. package/dist/chunks/loader-circle-CylCgDqP.js +16 -0
  163. package/dist/chunks/motionFeatures-D67ghPG1.js +4405 -0
  164. package/dist/chunks/search-BwsDnulU.js +18 -0
  165. package/dist/chunks/standard-cutout-vPpP6xBc.js +45 -0
  166. package/dist/chunks/static-logo-2F9ORZWc.js +34 -0
  167. package/dist/config.d.ts +66 -0
  168. package/dist/contracts.d.ts +272 -0
  169. package/dist/index.d.ts +23 -0
  170. package/dist/index.js +13 -0
  171. package/dist/node/catalog.mjs +45 -0
  172. package/dist/node/cli.mjs +11 -0
  173. package/dist/node/index.d.mts +20 -0
  174. package/dist/node/index.mjs +2 -0
  175. package/dist/node/prepare.mjs +114 -0
  176. package/dist/node/vite.mjs +46 -0
  177. package/dist/processing.d.ts +1 -0
  178. package/dist/processing.js +12105 -0
  179. package/dist/remote-contracts.d.ts +114 -0
  180. package/dist/resource-contracts.d.ts +40 -0
  181. package/dist/resources/cutout/9ae2e5375a34fa413530954dc20d085d175faffc86108c13619220d0557f80bf.json +1 -0
  182. package/dist/resources/cutout/f119dabecc64bc436d3d08425dde96ec2598fd40541eba97d8d53a4e8bbdcaea.json +1 -0
  183. package/dist/resources/cutout/resources.json +195 -0
  184. package/dist/resources/cutout/sources.json +294 -0
  185. package/dist/resources.json +1191 -0
  186. package/dist/service-contracts.d.ts +43 -0
  187. package/dist/slots.d.ts +21 -0
  188. package/dist/style.css +1 -0
  189. package/dist/types/batch/api.d.ts +89 -0
  190. package/dist/types/batch/cutout-output.d.ts +2 -0
  191. package/dist/types/batch/features/background/engine.d.mts +12 -0
  192. package/dist/types/batch/features/basic-edit/contracts.d.ts +87 -0
  193. package/dist/types/batch/features/basic-edit/engine.d.mts +96 -0
  194. package/dist/types/batch/features/brand-mark/contracts.d.ts +84 -0
  195. package/dist/types/batch/features/brand-mark/engine.d.mts +68 -0
  196. package/dist/types/batch/features/export-compression/contracts.d.ts +44 -0
  197. package/dist/types/batch/features/export-compression/gifenc.d.ts +33 -0
  198. package/dist/types/batch/features/export-compression/plan.d.ts +45 -0
  199. package/dist/types/batch/features/export-compression/presentation.d.ts +70 -0
  200. package/dist/types/batch/features/export-compression/upng.d.ts +6 -0
  201. package/dist/types/batch/features/final-image/resize.d.mts +15 -0
  202. package/dist/types/batch/features/image-effects/contracts.d.ts +58 -0
  203. package/dist/types/batch/features/image-effects/gpu-pixel-runtime.d.ts +15 -0
  204. package/dist/types/batch/features/image-effects/photo-audit.d.ts +21 -0
  205. package/dist/types/batch/features/image-effects/photo-v7-cpu.d.ts +9 -0
  206. package/dist/types/batch/features/image-effects/profiles-v4.d.ts +157 -0
  207. package/dist/types/batch/features/image-effects/profiles-v5.d.ts +20 -0
  208. package/dist/types/batch/features/image-effects/profiles-v6.d.ts +14 -0
  209. package/dist/types/batch/features/image-effects/profiles-v7.d.ts +53 -0
  210. package/dist/types/batch/features/image-effects/profiles-v8.d.ts +113 -0
  211. package/dist/types/batch/features/image-effects/profiles-v9.d.ts +20 -0
  212. package/dist/types/batch/features/image-translation/params.d.ts +257 -0
  213. package/dist/types/batch/features/listing-remake/transport.d.ts +21 -0
  214. package/dist/types/batch/features/metadata/bytes.d.mts +13 -0
  215. package/dist/types/batch/features/metadata/containers.d.mts +20 -0
  216. package/dist/types/batch/features/metadata/declaration.d.mts +5 -0
  217. package/dist/types/batch/features/metadata/engine.d.mts +9 -0
  218. package/dist/types/batch/features/metadata/exchange.d.mts +48 -0
  219. package/dist/types/batch/features/shadow/contracts.d.ts +43 -0
  220. package/dist/types/batch/features/shadow/engine.d.mts +33 -0
  221. package/dist/types/batch/features/svg-export/download-contract.d.ts +33 -0
  222. package/dist/types/batch/features/svg-export/download-prepare.d.ts +2 -0
  223. package/dist/types/batch/features/svg-export/download.d.ts +7 -0
  224. package/dist/types/batch/features/svg-export/imagetracer.d.ts +6 -0
  225. package/dist/types/batch/features/svg-export/optimizer.d.ts +2 -0
  226. package/dist/types/batch/ids.d.ts +1 -0
  227. package/dist/types/batch/model.d.ts +317 -0
  228. package/dist/types/batch/public/config.d.ts +66 -0
  229. package/dist/types/batch/public/contracts.d.ts +272 -0
  230. package/dist/types/batch/public/remote-contracts.d.ts +114 -0
  231. package/dist/types/batch/public/resource-contracts.d.ts +40 -0
  232. package/dist/types/batch/public/service-contracts.d.ts +43 -0
  233. package/dist/types/batch/queue.d.ts +34 -0
  234. package/dist/types/batch/receipts.d.ts +85 -0
  235. package/dist/types/batch/retention.d.ts +13 -0
  236. package/dist/types/onnxruntime-web.d.ts +5 -0
  237. package/dist/types/plugins/cutout/core/hosted-resources.d.ts +11 -0
  238. package/dist/types/processing.d.ts +18 -0
  239. package/dist/types/shared/svg-security.d.mts +4 -0
  240. package/dist/types/workspace-worker.d.ts +2 -0
  241. package/package.json +91 -3
Binary file
@@ -0,0 +1,303 @@
1
+ var Y = { trailer: 59 };
2
+ function K(t = 256) {
3
+ let r = 0, f = new Uint8Array(t);
4
+ return { get buffer() {
5
+ return f.buffer;
6
+ }, reset() {
7
+ r = 0;
8
+ }, bytesView() {
9
+ return f.subarray(0, r);
10
+ }, bytes() {
11
+ return f.slice(0, r);
12
+ }, writeByte(n) {
13
+ a(r + 1), f[r] = n, r++;
14
+ }, writeBytes(n, l = 0, i = n.length) {
15
+ a(r + i);
16
+ for (let c = 0; c < i; c++) f[r++] = n[c + l];
17
+ }, writeBytesView(n, l = 0, i = n.byteLength) {
18
+ a(r + i), f.set(n.subarray(l, l + i), r), r += i;
19
+ } };
20
+ function a(n) {
21
+ var l = f.length;
22
+ if (l >= n) return;
23
+ var i = 1024 * 1024;
24
+ n = Math.max(n, l * (l < i ? 2 : 1.125) >>> 0), l != 0 && (n = Math.max(n, 256));
25
+ let c = f;
26
+ f = new Uint8Array(n), r > 0 && f.set(c.subarray(0, r), 0);
27
+ }
28
+ }
29
+ var P = 12, _ = 5003, Z = [0, 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8191, 16383, 32767, 65535];
30
+ function $(t, r, f, a, n = K(512), l = new Uint8Array(256), i = new Int32Array(_), c = new Int32Array(_)) {
31
+ let w = i.length, u = Math.max(2, a);
32
+ l.fill(0), c.fill(0), i.fill(-1);
33
+ let o = 0, e = 0, h = u + 1, B = h, y = !1, m = B, s = (1 << m) - 1, p = 1 << h - 1, k = p + 1, x = p + 2, b = 0, M = f[0], V = 0;
34
+ for (let A = w; A < 65536; A *= 2) ++V;
35
+ V = 8 - V, n.writeByte(u), U(p);
36
+ let g = f.length;
37
+ for (let A = 1; A < g; A++)
38
+ t: {
39
+ let q = f[A], C = (q << P) + M, v = q << V ^ M;
40
+ if (i[v] === C) {
41
+ M = c[v];
42
+ break t;
43
+ }
44
+ let R = v === 0 ? 1 : w - v;
45
+ for (; i[v] >= 0; ) if (v -= R, v < 0 && (v += w), i[v] === C) {
46
+ M = c[v];
47
+ break t;
48
+ }
49
+ U(M), M = q, x < 1 << P ? (c[v] = x++, i[v] = C) : (i.fill(-1), x = p + 2, y = !0, U(p));
50
+ }
51
+ return U(M), U(k), n.writeByte(0), n.bytesView();
52
+ function U(A) {
53
+ for (o &= Z[e], e > 0 ? o |= A << e : o = A, e += m; e >= 8; ) l[b++] = o & 255, b >= 254 && (n.writeByte(b), n.writeBytesView(l, 0, b), b = 0), o >>= 8, e -= 8;
54
+ if ((x > s || y) && (y ? (m = B, s = (1 << m) - 1, y = !1) : (++m, s = m === P ? 1 << m : (1 << m) - 1)), A == k) {
55
+ for (; e > 0; ) l[b++] = o & 255, b >= 254 && (n.writeByte(b), n.writeBytesView(l, 0, b), b = 0), o >>= 8, e -= 8;
56
+ b > 0 && (n.writeByte(b), n.writeBytesView(l, 0, b), b = 0);
57
+ }
58
+ }
59
+ }
60
+ var W = $;
61
+ function N(t, r, f) {
62
+ return t << 8 & 63488 | r << 2 & 992 | f >> 3;
63
+ }
64
+ function O(t, r, f, a) {
65
+ return t >> 4 | r & 240 | (f & 240) << 4 | (a & 240) << 8;
66
+ }
67
+ function Q(t, r, f) {
68
+ return t >> 4 << 8 | r & 240 | f >> 4;
69
+ }
70
+ function F(t, r, f) {
71
+ return t < r ? r : t > f ? f : t;
72
+ }
73
+ function I(t) {
74
+ return t * t;
75
+ }
76
+ function j(t, r, f) {
77
+ var a = 0, n = 1e100;
78
+ let l = t[r], i = l.cnt;
79
+ l.ac;
80
+ let c = l.rc, w = l.gc, u = l.bc;
81
+ for (var o = l.fw; o != 0; o = t[o].fw) {
82
+ let h = t[o], B = h.cnt, y = i * B / (i + B);
83
+ if (!(y >= n)) {
84
+ var e = 0;
85
+ e += y * I(h.rc - c), !(e >= n) && (e += y * I(h.gc - w), !(e >= n) && (e += y * I(h.bc - u), !(e >= n) && (n = e, a = o)));
86
+ }
87
+ }
88
+ l.err = n, l.nn = a;
89
+ }
90
+ function D() {
91
+ return { ac: 0, rc: 0, gc: 0, bc: 0, cnt: 0, nn: 0, fw: 0, bk: 0, tm: 0, mtm: 0, err: 0 };
92
+ }
93
+ function tt(t, r) {
94
+ let f = r === "rgb444" ? 4096 : 65536, a = new Array(f), n = t.length;
95
+ if (r === "rgba4444") for (let l = 0; l < n; ++l) {
96
+ let i = t[l], c = i >> 24 & 255, w = i >> 16 & 255, u = i >> 8 & 255, o = i & 255, e = O(o, u, w, c), h = e in a ? a[e] : a[e] = D();
97
+ h.rc += o, h.gc += u, h.bc += w, h.ac += c, h.cnt++;
98
+ }
99
+ else if (r === "rgb444") for (let l = 0; l < n; ++l) {
100
+ let i = t[l], c = i >> 16 & 255, w = i >> 8 & 255, u = i & 255, o = Q(u, w, c), e = o in a ? a[o] : a[o] = D();
101
+ e.rc += u, e.gc += w, e.bc += c, e.cnt++;
102
+ }
103
+ else for (let l = 0; l < n; ++l) {
104
+ let i = t[l], c = i >> 16 & 255, w = i >> 8 & 255, u = i & 255, o = N(u, w, c), e = o in a ? a[o] : a[o] = D();
105
+ e.rc += u, e.gc += w, e.bc += c, e.cnt++;
106
+ }
107
+ return a;
108
+ }
109
+ function et(t, r, f = {}) {
110
+ let { format: a = "rgb565", clearAlpha: n = !0, clearAlphaColor: l = 0, clearAlphaThreshold: i = 0, oneBitAlpha: c = !1 } = f;
111
+ if (!t || !t.buffer) throw new Error("quantize() expected RGBA Uint8Array data");
112
+ if (!(t instanceof Uint8Array) && !(t instanceof Uint8ClampedArray)) throw new Error("quantize() expected RGBA Uint8Array data");
113
+ let w = new Uint32Array(t.buffer), u = f.useSqrt !== !1, o = a === "rgba4444", e = tt(w, a), h = e.length, B = h - 1, y = new Uint32Array(h + 1);
114
+ for (var m = 0, s = 0; s < h; ++s) {
115
+ let d = e[s];
116
+ if (d != null) {
117
+ var p = 1 / d.cnt;
118
+ o && (d.ac *= p), d.rc *= p, d.gc *= p, d.bc *= p, e[m++] = d;
119
+ }
120
+ }
121
+ I(r) / m < 0.022 && (u = !1);
122
+ for (var s = 0; s < m - 1; ++s) e[s].fw = s + 1, e[s + 1].bk = s, u && (e[s].cnt = Math.sqrt(e[s].cnt));
123
+ u && (e[s].cnt = Math.sqrt(e[s].cnt));
124
+ var k, x, b;
125
+ for (s = 0; s < m; ++s) {
126
+ j(e, s);
127
+ var M = e[s].err;
128
+ for (x = ++y[0]; x > 1 && (b = x >> 1, !(e[k = y[b]].err <= M)); x = b) y[x] = k;
129
+ y[x] = s;
130
+ }
131
+ var V = m - r;
132
+ for (s = 0; s < V; ) {
133
+ for (var g; ; ) {
134
+ var U = y[1];
135
+ if (g = e[U], g.tm >= g.mtm && e[g.nn].mtm <= g.tm) break;
136
+ g.mtm == B ? U = y[1] = y[y[0]--] : (j(e, U), g.tm = s);
137
+ var M = e[U].err;
138
+ for (x = 1; (b = x + x) <= y[0] && (b < y[0] && e[y[b]].err > e[y[b + 1]].err && b++, !(M <= e[k = y[b]].err)); x = b) y[x] = k;
139
+ y[x] = U;
140
+ }
141
+ var A = e[g.nn], q = g.cnt, C = A.cnt, p = 1 / (q + C);
142
+ o && (g.ac = p * (q * g.ac + C * A.ac)), g.rc = p * (q * g.rc + C * A.rc), g.gc = p * (q * g.gc + C * A.gc), g.bc = p * (q * g.bc + C * A.bc), g.cnt += A.cnt, g.mtm = ++s, e[A.bk].fw = A.fw, e[A.fw].bk = A.bk, A.mtm = B;
143
+ }
144
+ let v = [];
145
+ var R = 0;
146
+ for (s = 0; ; ++R) {
147
+ let d = F(Math.round(e[s].rc), 0, 255), S = F(Math.round(e[s].gc), 0, 255), T = F(Math.round(e[s].bc), 0, 255), G = 255;
148
+ o && (G = F(Math.round(e[s].ac), 0, 255), c && (G = G <= (typeof c == "number" ? c : 127) ? 0 : 255), n && G <= i && (d = S = T = l, G = 0));
149
+ let L = o ? [d, S, T, G] : [d, S, T];
150
+ if (rt(v, L) || v.push(L), (s = e[s].fw) == 0) break;
151
+ }
152
+ return v;
153
+ }
154
+ function rt(t, r) {
155
+ for (let f = 0; f < t.length; f++) {
156
+ let a = t[f], n = a[0] === r[0] && a[1] === r[1] && a[2] === r[2], l = a.length >= 4 && r.length >= 4 ? a[3] === r[3] : !0;
157
+ if (n && l) return !0;
158
+ }
159
+ return !1;
160
+ }
161
+ function nt(t, r, f = "rgb565") {
162
+ if (!t || !t.buffer) throw new Error("quantize() expected RGBA Uint8Array data");
163
+ if (!(t instanceof Uint8Array) && !(t instanceof Uint8ClampedArray)) throw new Error("quantize() expected RGBA Uint8Array data");
164
+ if (r.length > 256) throw new Error("applyPalette() only works with 256 colors or less");
165
+ let a = new Uint32Array(t.buffer), n = a.length, l = f === "rgb444" ? 4096 : 65536, i = new Uint8Array(n), c = new Array(l);
166
+ if (f === "rgba4444") for (let w = 0; w < n; w++) {
167
+ let u = a[w], o = u >> 24 & 255, e = u >> 16 & 255, h = u >> 8 & 255, B = u & 255, y = O(B, h, e, o), m = y in c ? c[y] : c[y] = at(B, h, e, o, r);
168
+ i[w] = m;
169
+ }
170
+ else {
171
+ let w = f === "rgb444" ? Q : N;
172
+ for (let u = 0; u < n; u++) {
173
+ let o = a[u], e = o >> 16 & 255, h = o >> 8 & 255, B = o & 255, y = w(B, h, e), m = y in c ? c[y] : c[y] = it(B, h, e, r);
174
+ i[u] = m;
175
+ }
176
+ }
177
+ return i;
178
+ }
179
+ function at(t, r, f, a, n) {
180
+ let l = 0, i = 1e100;
181
+ for (let c = 0; c < n.length; c++) {
182
+ let w = n[c], u = w[3], o = z(u - a);
183
+ if (o > i) continue;
184
+ let e = w[0];
185
+ if (o += z(e - t), o > i) continue;
186
+ let h = w[1];
187
+ if (o += z(h - r), o > i) continue;
188
+ let B = w[2];
189
+ o += z(B - f), !(o > i) && (i = o, l = c);
190
+ }
191
+ return l;
192
+ }
193
+ function it(t, r, f, a) {
194
+ let n = 0, l = 1e100;
195
+ for (let i = 0; i < a.length; i++) {
196
+ let c = a[i], w = c[0], u = z(w - t);
197
+ if (u > l) continue;
198
+ let o = c[1];
199
+ if (u += z(o - r), u > l) continue;
200
+ let e = c[2];
201
+ u += z(e - f), !(u > l) && (l = u, n = i);
202
+ }
203
+ return n;
204
+ }
205
+ function z(t) {
206
+ return t * t;
207
+ }
208
+ function lt(t = {}) {
209
+ let { initialCapacity: r = 4096, auto: f = !0 } = t, a = K(r), n = 5003, l = new Uint8Array(256), i = new Int32Array(n), c = new Int32Array(n), w = !1;
210
+ return { reset() {
211
+ a.reset(), w = !1;
212
+ }, finish() {
213
+ a.writeByte(Y.trailer);
214
+ }, bytes() {
215
+ return a.bytes();
216
+ }, bytesView() {
217
+ return a.bytesView();
218
+ }, get buffer() {
219
+ return a.buffer;
220
+ }, get stream() {
221
+ return a;
222
+ }, writeHeader: u, writeFrame(o, e, h, B = {}) {
223
+ let { transparent: y = !1, transparentIndex: m = 0, delay: s = 0, palette: p = null, repeat: k = 0, colorDepth: x = 8, dispose: b = -1 } = B, M = !1;
224
+ if (f ? w || (M = !0, u(), w = !0) : M = !!B.first, e = Math.max(0, Math.floor(e)), h = Math.max(0, Math.floor(h)), M) {
225
+ if (!p) throw new Error("First frame must include a { palette } option");
226
+ ot(a, e, h, p, x), J(a, p), k >= 0 && ct(a, k);
227
+ }
228
+ let V = Math.round(s / 10);
229
+ ft(a, b, V, y, m);
230
+ let g = !!p && !M;
231
+ ut(a, e, h, g ? p : null), g && J(a, p), wt(a, o, e, h, x, l, i, c);
232
+ } };
233
+ function u() {
234
+ X(a, "GIF89a");
235
+ }
236
+ }
237
+ function ft(t, r, f, a, n) {
238
+ t.writeByte(33), t.writeByte(249), t.writeByte(4), n < 0 && (n = 0, a = !1);
239
+ var l, i;
240
+ a ? (l = 1, i = 2) : (l = 0, i = 0), r >= 0 && (i = r & 7), i <<= 2, t.writeByte(0 | i | 0 | l), E(t, f), t.writeByte(n || 0), t.writeByte(0);
241
+ }
242
+ function ot(t, r, f, a, n = 8) {
243
+ let l = 1, i = 0, c = H(a.length) - 1, w = l << 7 | n - 1 << 4 | i << 3 | c;
244
+ E(t, r), E(t, f), t.writeBytes([w, 0, 0]);
245
+ }
246
+ function ct(t, r) {
247
+ t.writeByte(33), t.writeByte(255), t.writeByte(11), X(t, "NETSCAPE2.0"), t.writeByte(3), t.writeByte(1), E(t, r), t.writeByte(0);
248
+ }
249
+ function J(t, r) {
250
+ let f = 1 << H(r.length);
251
+ for (let a = 0; a < f; a++) {
252
+ let n = [0, 0, 0];
253
+ a < r.length && (n = r[a]), t.writeByte(n[0]), t.writeByte(n[1]), t.writeByte(n[2]);
254
+ }
255
+ }
256
+ function ut(t, r, f, a) {
257
+ if (t.writeByte(44), E(t, 0), E(t, 0), E(t, r), E(t, f), a) {
258
+ let n = 0, l = 0, i = H(a.length) - 1;
259
+ t.writeByte(128 | n | l | 0 | i);
260
+ } else t.writeByte(0);
261
+ }
262
+ function wt(t, r, f, a, n = 8, l, i, c) {
263
+ W(f, a, r, n, t, l, i, c);
264
+ }
265
+ function E(t, r) {
266
+ t.writeByte(r & 255), t.writeByte(r >> 8 & 255);
267
+ }
268
+ function X(t, r) {
269
+ for (var f = 0; f < r.length; f++) t.writeByte(r.charCodeAt(f));
270
+ }
271
+ function H(t) {
272
+ return Math.max(Math.ceil(Math.log2(t)), 1);
273
+ }
274
+ function st(t) {
275
+ const r = Math.round(2 + t * 254);
276
+ return Math.max(2, Math.min(256, 2 ** Math.ceil(Math.log2(r))));
277
+ }
278
+ function ht(t, r, f, a) {
279
+ let n = 0;
280
+ for (let e = 3; e < t.length; e += 4) t[e] >= 128 && n++;
281
+ const l = n < r * f, i = new Uint8ClampedArray(n * 4);
282
+ let c = 0;
283
+ for (let e = 0; e < t.length; e += 4)
284
+ t[e + 3] >= 128 && (i.set(t.subarray(e, e + 4), c), c += 4);
285
+ const w = l ? [[0, 0, 0]] : [], u = new Uint8Array(r * f);
286
+ if (n) {
287
+ const e = et(i, st(a) - w.length, {
288
+ format: "rgb565"
289
+ }), h = nt(i, e, "rgb565");
290
+ c = 0;
291
+ for (let B = 0; B < u.length; B++)
292
+ t[B * 4 + 3] >= 128 && (u[B] = h[c++] + w.length);
293
+ w.push(...e);
294
+ }
295
+ const o = lt();
296
+ return o.writeFrame(u, r, f, {
297
+ palette: w,
298
+ ...l ? { transparent: !0, transparentIndex: 0 } : {}
299
+ }), o.finish(), o.bytes();
300
+ }
301
+ export {
302
+ ht as encodeGif
303
+ };
Binary file
Binary file