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.
- package/README.md +9 -4
- package/dist/Text-Lq0dmj8-.mjs +239 -0
- package/dist/Text-Lq0dmj8-.mjs.map +1 -0
- package/dist/UPNG-Bo33r8rA.mjs +3 -0
- package/dist/UPNG-DosRPdF4.mjs +5075 -0
- package/dist/UPNG-DosRPdF4.mjs.map +1 -0
- package/dist/__vite-browser-external-2447137e-D_JM6skp.mjs +6 -0
- package/dist/__vite-browser-external-2447137e-D_JM6skp.mjs.map +1 -0
- package/dist/{animation-Cn64yepo.mjs → animation-ZMN2_XKv.mjs} +2 -2
- package/dist/animation-ZMN2_XKv.mjs.map +1 -0
- package/dist/{ansi-Cc33mW54.d.mts → ansi-2Xn0yatP.d.mts} +1 -1
- package/dist/{ansi-Cc33mW54.d.mts.map → ansi-2Xn0yatP.d.mts.map} +1 -1
- package/dist/{ansi-CLOitHKx.mjs → ansi-D1KQMAbf.mjs} +1 -1
- package/dist/{ansi-CLOitHKx.mjs.map → ansi-D1KQMAbf.mjs.map} +1 -1
- package/dist/ansi-yC4RyBNY.mjs +22441 -0
- package/dist/ansi-yC4RyBNY.mjs.map +1 -0
- package/dist/apng-CR08rIaH.mjs +58 -0
- package/dist/apng-CR08rIaH.mjs.map +1 -0
- package/dist/apng-DaHfVaVI.mjs +3 -0
- package/dist/assets/resvgjs.darwin-arm64-BtufyGW1.node +0 -0
- package/dist/assets/skia.darwin-arm64-DQs5sT6N.node +0 -0
- package/dist/backend-B-WYLUib.mjs +13396 -0
- package/dist/backend-B-WYLUib.mjs.map +1 -0
- package/dist/backends-CUtan80W.mjs +3 -0
- package/dist/backends-DIVYzKqd.mjs +1083 -0
- package/dist/backends-DIVYzKqd.mjs.map +1 -0
- package/dist/bound-term-0sPrrzH1.d.mts +4640 -0
- package/dist/bound-term-0sPrrzH1.d.mts.map +1 -0
- package/dist/canvas-1v7dPT-_.mjs +3 -0
- package/dist/canvas-CSuPOMNt.mjs +1442 -0
- package/dist/canvas-CSuPOMNt.mjs.map +1 -0
- package/dist/{chunk-Vs_PY4HZ.mjs → chunk-BSw8zbkd.mjs} +1 -1
- package/dist/cli-dvo0r2fs.mjs +4 -0
- package/dist/compare-CQodSH4G.mjs +376 -0
- package/dist/compare-CQodSH4G.mjs.map +1 -0
- package/dist/compare-DHlcxEYA.mjs +3 -0
- package/dist/context-BU5LkkIy.mjs.map +1 -1
- package/dist/devtools-CJdt5H0X.mjs +2 -0
- package/dist/{devtools-DxkSLXDA.mjs → devtools-DcQjgyjL.mjs} +5 -4
- package/dist/{devtools-DxkSLXDA.mjs.map → devtools-DcQjgyjL.mjs.map} +1 -1
- package/dist/easing-BI-ASGMO.d.mts +24 -0
- package/dist/easing-BI-ASGMO.d.mts.map +1 -0
- package/dist/{eta-Bb3RH3wh.mjs → eta-CJlGH06n.mjs} +1 -1
- package/dist/{eta-Bb3RH3wh.mjs.map → eta-CJlGH06n.mjs.map} +1 -1
- package/dist/flexily-zero-adapter-C3Vj0fPt.mjs +306 -0
- package/dist/flexily-zero-adapter-C3Vj0fPt.mjs.map +1 -0
- package/dist/{flexily-zero-adapter-CMxXhdOL.mjs → flexily-zero-adapter-C4lW_Ov5.mjs} +1 -1
- package/dist/fonts-BFmhXDv7.mjs +88 -0
- package/dist/fonts-BFmhXDv7.mjs.map +1 -0
- package/dist/gif-C_AjaT9d.mjs +188 -0
- package/dist/gif-C_AjaT9d.mjs.map +1 -0
- package/dist/gif-DaC4XrxA.mjs +3 -0
- package/dist/gifenc-BOUT-KFB.mjs +730 -0
- package/dist/gifenc-BOUT-KFB.mjs.map +1 -0
- package/dist/image-C2Birh2x.mjs +1252 -0
- package/dist/image-C2Birh2x.mjs.map +1 -0
- package/dist/index-BUMxS65f.d.mts +453 -0
- package/dist/index-BUMxS65f.d.mts.map +1 -0
- package/dist/{index-D3saHouR.d.mts → index-CSQf13CI.d.mts} +1057 -1133
- package/dist/index-CSQf13CI.d.mts.map +1 -0
- package/dist/{index-BXslOebb.d.mts → index-Cl9KKjQ_.d.mts} +4919 -3921
- package/dist/index-Cl9KKjQ_.d.mts.map +1 -0
- package/dist/index-XbNrPhWl.d.mts +336 -0
- package/dist/index-XbNrPhWl.d.mts.map +1 -0
- package/dist/index.d.mts +8 -5
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +14 -12
- package/dist/index.mjs.map +1 -1
- package/dist/key-mapping-CS-YD_cD.mjs +132 -0
- package/dist/key-mapping-CS-YD_cD.mjs.map +1 -0
- package/dist/key-mapping-Yn-Jgrij.mjs +3 -0
- package/dist/{layout-engine-B6Cdz1yZ.mjs → layout-engine-C07LEXWT.mjs} +1 -1
- package/dist/layout-engine-C2px0RJE.mjs +67 -0
- package/dist/layout-engine-C2px0RJE.mjs.map +1 -0
- package/dist/layout-signals-Cnw6xk8Q.mjs +988 -0
- package/dist/layout-signals-Cnw6xk8Q.mjs.map +1 -0
- package/dist/mouse-events-Dki3ISIp.mjs +1044 -0
- package/dist/mouse-events-Dki3ISIp.mjs.map +1 -0
- package/dist/{multi-progress-Bq9Oi_WI.mjs → multi-progress-CIRjrzma.mjs} +3 -3
- package/dist/{multi-progress-Bq9Oi_WI.mjs.map → multi-progress-CIRjrzma.mjs.map} +1 -1
- package/dist/{multi-progress-DAQC7eap.d.mts → multi-progress-DHZ2xUT2.d.mts} +2 -2
- package/dist/{multi-progress-DAQC7eap.d.mts.map → multi-progress-DHZ2xUT2.d.mts.map} +1 -1
- package/dist/{node-BeWlnCPY.mjs → node-CjM5Rt-M.mjs} +4 -4
- package/dist/node-CjM5Rt-M.mjs.map +1 -0
- package/dist/playwright-D5YiZcNS.mjs +76397 -0
- package/dist/playwright-D5YiZcNS.mjs.map +1 -0
- package/dist/png-codec-Dp84742B.mjs +36 -0
- package/dist/png-codec-Dp84742B.mjs.map +1 -0
- package/dist/png-codec-QwOtJ8Zs.mjs +3 -0
- package/dist/progress-DB_Xo071.mjs +675 -0
- package/dist/progress-DB_Xo071.mjs.map +1 -0
- package/dist/{progress-bar-CXE5Qfkd.mjs → progress-bar-oJwq22CR.mjs} +4 -4
- package/dist/{progress-bar-CXE5Qfkd.mjs.map → progress-bar-oJwq22CR.mjs.map} +1 -1
- package/dist/rasterizer-BRXrDdWx.mjs +3 -0
- package/dist/rasterizer-CpEhJvdR.mjs +296 -0
- package/dist/rasterizer-CpEhJvdR.mjs.map +1 -0
- package/dist/reconciler-DldIJB93.mjs +2083 -0
- package/dist/reconciler-DldIJB93.mjs.map +1 -0
- package/dist/{render-string-CDCeYkS3.mjs → render-string-BcoCpjCB.mjs} +1 -1
- package/dist/{render-string-Darrg7ku.mjs → render-string-DkQacASz.mjs} +2707 -549
- package/dist/render-string-DkQacASz.mjs.map +1 -0
- package/dist/resvg-js-DkOndZI3.mjs +203 -0
- package/dist/resvg-js-DkOndZI3.mjs.map +1 -0
- package/dist/runtime.d.mts +3 -2
- package/dist/runtime.mjs +3 -3
- package/dist/schemes-JjNp4aSl.mjs +2611 -0
- package/dist/schemes-JjNp4aSl.mjs.map +1 -0
- package/dist/{spinner-CGo34vyR.d.mts → spinner-CZINHpkV.d.mts} +2 -2
- package/dist/{spinner-CGo34vyR.d.mts.map → spinner-CZINHpkV.d.mts.map} +1 -1
- package/dist/{spinner-CeOmcuw_.mjs → spinner-D9lrHr8s.mjs} +7 -7
- package/dist/spinner-D9lrHr8s.mjs.map +1 -0
- package/dist/src-5w9QR6_8.mjs +1071 -0
- package/dist/src-5w9QR6_8.mjs.map +1 -0
- package/dist/src-BNTToU7l.mjs +4387 -0
- package/dist/src-BNTToU7l.mjs.map +1 -0
- package/dist/{src-CF-6UN01.mjs → src-BR4xNwdG.mjs} +10436 -2622
- package/dist/src-BR4xNwdG.mjs.map +1 -0
- package/dist/{types-Bk2yw9Qj.mjs → src-DKp-_OFG.mjs} +34 -94
- package/dist/src-DKp-_OFG.mjs.map +1 -0
- package/dist/src-bt8wSrfJ.mjs +258 -0
- package/dist/src-bt8wSrfJ.mjs.map +1 -0
- package/dist/src-e33Y6kNJ.mjs +3 -0
- package/dist/src-iDwu25UD.mjs +1814 -0
- package/dist/src-iDwu25UD.mjs.map +1 -0
- package/dist/steps-Bp2uNqnn.d.mts +202 -0
- package/dist/steps-Bp2uNqnn.d.mts.map +1 -0
- package/dist/svg-15lZZzxq.mjs +486 -0
- package/dist/svg-15lZZzxq.mjs.map +1 -0
- package/dist/svg-Cz0UXcDj.mjs +255 -0
- package/dist/svg-Cz0UXcDj.mjs.map +1 -0
- package/dist/svg-DY72a4HK.mjs +3 -0
- package/dist/svg-g1D6ErwR.d.mts +82 -0
- package/dist/svg-g1D6ErwR.d.mts.map +1 -0
- package/dist/term.d.mts +3 -0
- package/dist/term.mjs +9 -0
- package/dist/term.mjs.map +1 -0
- package/dist/theme.d.mts +95 -2
- package/dist/theme.d.mts.map +1 -0
- package/dist/theme.mjs +9 -3
- package/dist/theme.mjs.map +1 -0
- package/dist/{types-BH_v3iMT.d.mts → types-kt_fKR37.d.mts} +2 -15
- package/dist/types-kt_fKR37.d.mts.map +1 -0
- package/dist/ui/animation.d.mts +2 -1
- package/dist/ui/animation.mjs +1 -1
- package/dist/ui/ansi.d.mts +1 -1
- package/dist/ui/ansi.mjs +1 -1
- package/dist/ui/cli.d.mts +3 -3
- package/dist/ui/cli.mjs +5 -5
- package/dist/ui/display.d.mts +1 -1
- package/dist/ui/image.d.mts +2 -2
- package/dist/ui/image.mjs +2 -2
- package/dist/ui/input.d.mts +1 -1
- package/dist/ui/input.mjs +4 -2
- package/dist/ui/input.mjs.map +1 -1
- package/dist/ui/progress.d.mts +5 -249
- package/dist/ui/progress.mjs +5 -858
- package/dist/ui/react.d.mts +1 -1
- package/dist/ui/react.mjs +2 -2
- package/dist/ui/recording-chrome-react.d.mts +21 -0
- package/dist/ui/recording-chrome-react.d.mts.map +1 -0
- package/dist/ui/recording-chrome-react.mjs +105 -0
- package/dist/ui/recording-chrome-react.mjs.map +1 -0
- package/dist/ui/recording-chrome.d.mts +2 -0
- package/dist/ui/recording-chrome.mjs +2 -0
- package/dist/ui/utils.mjs +1 -1
- package/dist/ui/wrappers.d.mts +3 -3
- package/dist/ui/wrappers.mjs +2 -2
- package/dist/ui.d.mts +7 -6
- package/dist/ui.mjs +8 -7
- package/dist/{useLatest-Bg2x4bfP.d.mts → useLatest-DRDDVwjh.d.mts} +5 -25
- package/dist/useLatest-DRDDVwjh.d.mts.map +1 -0
- package/dist/{with-text-input-CRfoiFFG.d.mts → with-text-input-YeohVLeo.d.mts} +4 -55
- package/dist/with-text-input-YeohVLeo.d.mts.map +1 -0
- package/dist/wrapper-C70ATkVv.mjs +3527 -0
- package/dist/wrapper-C70ATkVv.mjs.map +1 -0
- package/dist/{wrappers-UTADQkSY.mjs → wrappers-BCUYITrY.mjs} +5 -157
- package/dist/wrappers-BCUYITrY.mjs.map +1 -0
- package/dist/{yoga-adapter-8oRGRw8V.mjs → yoga-adapter-BnZX1PAY.mjs} +28 -2
- package/dist/yoga-adapter-BnZX1PAY.mjs.map +1 -0
- package/dist/yoga-adapter-DxgsQ_gg.mjs +2 -0
- package/dist/zipBundle-3nqeDRtm.mjs +3 -0
- package/dist/zipBundle-VNAYFmqJ.mjs +2003 -0
- package/dist/zipBundle-VNAYFmqJ.mjs.map +1 -0
- package/package.json +20 -9
- package/dist/animation-Cn64yepo.mjs.map +0 -1
- package/dist/cli-BKp0YtBD.mjs +0 -4
- package/dist/devtools-9QY4teqI.mjs +0 -2
- package/dist/flexily-zero-adapter-BlQa46nr.mjs +0 -3385
- package/dist/flexily-zero-adapter-BlQa46nr.mjs.map +0 -1
- package/dist/image-CTII5QWI.mjs +0 -477
- package/dist/image-CTII5QWI.mjs.map +0 -1
- package/dist/index-BXslOebb.d.mts.map +0 -1
- package/dist/index-BnA7mNpo.d.mts +0 -175
- package/dist/index-BnA7mNpo.d.mts.map +0 -1
- package/dist/index-D3saHouR.d.mts.map +0 -1
- package/dist/layout-engine-ClUgv6jB.mjs +0 -50
- package/dist/layout-engine-ClUgv6jB.mjs.map +0 -1
- package/dist/node-BeWlnCPY.mjs.map +0 -1
- package/dist/reconciler-Cwgm8hRR.mjs +0 -8459
- package/dist/reconciler-Cwgm8hRR.mjs.map +0 -1
- package/dist/render-string-Darrg7ku.mjs.map +0 -1
- package/dist/spinner-CeOmcuw_.mjs.map +0 -1
- package/dist/src-B5GjfG7g.mjs +0 -4305
- package/dist/src-B5GjfG7g.mjs.map +0 -1
- package/dist/src-CChwjk0Z.mjs +0 -738
- package/dist/src-CChwjk0Z.mjs.map +0 -1
- package/dist/src-CF-6UN01.mjs.map +0 -1
- package/dist/src-NCKb8kE5.mjs +0 -2660
- package/dist/src-NCKb8kE5.mjs.map +0 -1
- package/dist/types-BH_v3iMT.d.mts.map +0 -1
- package/dist/types-Bk2yw9Qj.mjs.map +0 -1
- package/dist/ui/progress.d.mts.map +0 -1
- package/dist/ui/progress.mjs.map +0 -1
- package/dist/useLatest-Bg2x4bfP.d.mts.map +0 -1
- package/dist/with-text-input-CRfoiFFG.d.mts.map +0 -1
- package/dist/wrappers-UTADQkSY.mjs.map +0 -1
- package/dist/yoga-adapter-8oRGRw8V.mjs.map +0 -1
- package/dist/yoga-adapter-D_CcxSt5.mjs +0 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gifenc-BOUT-KFB.mjs","names":[],"sources":["../../../node_modules/.bun/gifenc@1.0.3/node_modules/gifenc/dist/gifenc.js"],"sourcesContent":["var __defProp = Object.defineProperty;\nvar __markAsModule = (target) => __defProp(target, \"__esModule\", {value: true});\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, {get: all[name], enumerable: true});\n};\n\n// src/index.js\n__markAsModule(exports);\n__export(exports, {\n GIFEncoder: () => GIFEncoder,\n applyPalette: () => applyPalette,\n default: () => src_default,\n nearestColor: () => nearestColor,\n nearestColorIndex: () => nearestColorIndex,\n nearestColorIndexWithDistance: () => nearestColorIndexWithDistance,\n prequantize: () => prequantize,\n quantize: () => quantize,\n snapColorsToPalette: () => snapColorsToPalette\n});\n\n// src/constants.js\nvar constants_default = {\n signature: \"GIF\",\n version: \"89a\",\n trailer: 59,\n extensionIntroducer: 33,\n applicationExtensionLabel: 255,\n graphicControlExtensionLabel: 249,\n imageSeparator: 44,\n signatureSize: 3,\n versionSize: 3,\n globalColorTableFlagMask: 128,\n colorResolutionMask: 112,\n sortFlagMask: 8,\n globalColorTableSizeMask: 7,\n applicationIdentifierSize: 8,\n applicationAuthCodeSize: 3,\n disposalMethodMask: 28,\n userInputFlagMask: 2,\n transparentColorFlagMask: 1,\n localColorTableFlagMask: 128,\n interlaceFlagMask: 64,\n idSortFlagMask: 32,\n localColorTableSizeMask: 7\n};\n\n// src/stream.js\nfunction createStream(initialCapacity = 256) {\n let cursor = 0;\n let contents = new Uint8Array(initialCapacity);\n return {\n get buffer() {\n return contents.buffer;\n },\n reset() {\n cursor = 0;\n },\n bytesView() {\n return contents.subarray(0, cursor);\n },\n bytes() {\n return contents.slice(0, cursor);\n },\n writeByte(byte) {\n expand(cursor + 1);\n contents[cursor] = byte;\n cursor++;\n },\n writeBytes(data, offset = 0, byteLength = data.length) {\n expand(cursor + byteLength);\n for (let i = 0; i < byteLength; i++) {\n contents[cursor++] = data[i + offset];\n }\n },\n writeBytesView(data, offset = 0, byteLength = data.byteLength) {\n expand(cursor + byteLength);\n contents.set(data.subarray(offset, offset + byteLength), cursor);\n cursor += byteLength;\n }\n };\n function expand(newCapacity) {\n var prevCapacity = contents.length;\n if (prevCapacity >= newCapacity)\n return;\n var CAPACITY_DOUBLING_MAX = 1024 * 1024;\n newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) >>> 0);\n if (prevCapacity != 0)\n newCapacity = Math.max(newCapacity, 256);\n const oldContents = contents;\n contents = new Uint8Array(newCapacity);\n if (cursor > 0)\n contents.set(oldContents.subarray(0, cursor), 0);\n }\n}\n\n// src/lzwEncode.js\nvar BITS = 12;\nvar DEFAULT_HSIZE = 5003;\nvar MASKS = [\n 0,\n 1,\n 3,\n 7,\n 15,\n 31,\n 63,\n 127,\n 255,\n 511,\n 1023,\n 2047,\n 4095,\n 8191,\n 16383,\n 32767,\n 65535\n];\nfunction lzwEncode(width, height, pixels, colorDepth, outStream = createStream(512), accum = new Uint8Array(256), htab = new Int32Array(DEFAULT_HSIZE), codetab = new Int32Array(DEFAULT_HSIZE)) {\n const hsize = htab.length;\n const initCodeSize = Math.max(2, colorDepth);\n accum.fill(0);\n codetab.fill(0);\n htab.fill(-1);\n let cur_accum = 0;\n let cur_bits = 0;\n const init_bits = initCodeSize + 1;\n const g_init_bits = init_bits;\n let clear_flg = false;\n let n_bits = g_init_bits;\n let maxcode = (1 << n_bits) - 1;\n const ClearCode = 1 << init_bits - 1;\n const EOFCode = ClearCode + 1;\n let free_ent = ClearCode + 2;\n let a_count = 0;\n let ent = pixels[0];\n let hshift = 0;\n for (let fcode = hsize; fcode < 65536; fcode *= 2) {\n ++hshift;\n }\n hshift = 8 - hshift;\n outStream.writeByte(initCodeSize);\n output(ClearCode);\n const length = pixels.length;\n for (let idx = 1; idx < length; idx++) {\n next_block: {\n const c = pixels[idx];\n const fcode = (c << BITS) + ent;\n let i = c << hshift ^ ent;\n if (htab[i] === fcode) {\n ent = codetab[i];\n break next_block;\n }\n const disp = i === 0 ? 1 : hsize - i;\n while (htab[i] >= 0) {\n i -= disp;\n if (i < 0)\n i += hsize;\n if (htab[i] === fcode) {\n ent = codetab[i];\n break next_block;\n }\n }\n output(ent);\n ent = c;\n if (free_ent < 1 << BITS) {\n codetab[i] = free_ent++;\n htab[i] = fcode;\n } else {\n htab.fill(-1);\n free_ent = ClearCode + 2;\n clear_flg = true;\n output(ClearCode);\n }\n }\n }\n output(ent);\n output(EOFCode);\n outStream.writeByte(0);\n return outStream.bytesView();\n function output(code) {\n cur_accum &= MASKS[cur_bits];\n if (cur_bits > 0)\n cur_accum |= code << cur_bits;\n else\n cur_accum = code;\n cur_bits += n_bits;\n while (cur_bits >= 8) {\n accum[a_count++] = cur_accum & 255;\n if (a_count >= 254) {\n outStream.writeByte(a_count);\n outStream.writeBytesView(accum, 0, a_count);\n a_count = 0;\n }\n cur_accum >>= 8;\n cur_bits -= 8;\n }\n if (free_ent > maxcode || clear_flg) {\n if (clear_flg) {\n n_bits = g_init_bits;\n maxcode = (1 << n_bits) - 1;\n clear_flg = false;\n } else {\n ++n_bits;\n maxcode = n_bits === BITS ? 1 << n_bits : (1 << n_bits) - 1;\n }\n }\n if (code == EOFCode) {\n while (cur_bits > 0) {\n accum[a_count++] = cur_accum & 255;\n if (a_count >= 254) {\n outStream.writeByte(a_count);\n outStream.writeBytesView(accum, 0, a_count);\n a_count = 0;\n }\n cur_accum >>= 8;\n cur_bits -= 8;\n }\n if (a_count > 0) {\n outStream.writeByte(a_count);\n outStream.writeBytesView(accum, 0, a_count);\n a_count = 0;\n }\n }\n }\n}\nvar lzwEncode_default = lzwEncode;\n\n// src/rgb-packing.js\nfunction rgb888_to_rgb565(r, g, b) {\n return r << 8 & 63488 | g << 2 & 992 | b >> 3;\n}\nfunction rgba8888_to_rgba4444(r, g, b, a) {\n return r >> 4 | g & 240 | (b & 240) << 4 | (a & 240) << 8;\n}\nfunction rgb888_to_rgb444(r, g, b) {\n return r >> 4 << 8 | g & 240 | b >> 4;\n}\n\n// src/pnnquant2.js\nfunction clamp(value, min, max) {\n return value < min ? min : value > max ? max : value;\n}\nfunction sqr(value) {\n return value * value;\n}\nfunction find_nn(bins, idx, hasAlpha) {\n var nn = 0;\n var err = 1e100;\n const bin1 = bins[idx];\n const n1 = bin1.cnt;\n const wa = bin1.ac;\n const wr = bin1.rc;\n const wg = bin1.gc;\n const wb = bin1.bc;\n for (var i = bin1.fw; i != 0; i = bins[i].fw) {\n const bin = bins[i];\n const n2 = bin.cnt;\n const nerr2 = n1 * n2 / (n1 + n2);\n if (nerr2 >= err)\n continue;\n var nerr = 0;\n if (hasAlpha) {\n nerr += nerr2 * sqr(bin.ac - wa);\n if (nerr >= err)\n continue;\n }\n nerr += nerr2 * sqr(bin.rc - wr);\n if (nerr >= err)\n continue;\n nerr += nerr2 * sqr(bin.gc - wg);\n if (nerr >= err)\n continue;\n nerr += nerr2 * sqr(bin.bc - wb);\n if (nerr >= err)\n continue;\n err = nerr;\n nn = i;\n }\n bin1.err = err;\n bin1.nn = nn;\n}\nfunction create_bin() {\n return {\n ac: 0,\n rc: 0,\n gc: 0,\n bc: 0,\n cnt: 0,\n nn: 0,\n fw: 0,\n bk: 0,\n tm: 0,\n mtm: 0,\n err: 0\n };\n}\nfunction create_bin_list(data, format) {\n const bincount = format === \"rgb444\" ? 4096 : 65536;\n const bins = new Array(bincount);\n const size = data.length;\n if (format === \"rgba4444\") {\n for (let i = 0; i < size; ++i) {\n const color = data[i];\n const a = color >> 24 & 255;\n const b = color >> 16 & 255;\n const g = color >> 8 & 255;\n const r = color & 255;\n const index = rgba8888_to_rgba4444(r, g, b, a);\n let bin = index in bins ? bins[index] : bins[index] = create_bin();\n bin.rc += r;\n bin.gc += g;\n bin.bc += b;\n bin.ac += a;\n bin.cnt++;\n }\n } else if (format === \"rgb444\") {\n for (let i = 0; i < size; ++i) {\n const color = data[i];\n const b = color >> 16 & 255;\n const g = color >> 8 & 255;\n const r = color & 255;\n const index = rgb888_to_rgb444(r, g, b);\n let bin = index in bins ? bins[index] : bins[index] = create_bin();\n bin.rc += r;\n bin.gc += g;\n bin.bc += b;\n bin.cnt++;\n }\n } else {\n for (let i = 0; i < size; ++i) {\n const color = data[i];\n const b = color >> 16 & 255;\n const g = color >> 8 & 255;\n const r = color & 255;\n const index = rgb888_to_rgb565(r, g, b);\n let bin = index in bins ? bins[index] : bins[index] = create_bin();\n bin.rc += r;\n bin.gc += g;\n bin.bc += b;\n bin.cnt++;\n }\n }\n return bins;\n}\nfunction quantize(rgba, maxColors, opts = {}) {\n const {\n format = \"rgb565\",\n clearAlpha = true,\n clearAlphaColor = 0,\n clearAlphaThreshold = 0,\n oneBitAlpha = false\n } = opts;\n if (!rgba || !rgba.buffer) {\n throw new Error(\"quantize() expected RGBA Uint8Array data\");\n }\n if (!(rgba instanceof Uint8Array) && !(rgba instanceof Uint8ClampedArray)) {\n throw new Error(\"quantize() expected RGBA Uint8Array data\");\n }\n const data = new Uint32Array(rgba.buffer);\n let useSqrt = opts.useSqrt !== false;\n const hasAlpha = format === \"rgba4444\";\n const bins = create_bin_list(data, format);\n const bincount = bins.length;\n const bincountMinusOne = bincount - 1;\n const heap = new Uint32Array(bincount + 1);\n var maxbins = 0;\n for (var i = 0; i < bincount; ++i) {\n const bin = bins[i];\n if (bin != null) {\n var d = 1 / bin.cnt;\n if (hasAlpha)\n bin.ac *= d;\n bin.rc *= d;\n bin.gc *= d;\n bin.bc *= d;\n bins[maxbins++] = bin;\n }\n }\n if (sqr(maxColors) / maxbins < 0.022) {\n useSqrt = false;\n }\n var i = 0;\n for (; i < maxbins - 1; ++i) {\n bins[i].fw = i + 1;\n bins[i + 1].bk = i;\n if (useSqrt)\n bins[i].cnt = Math.sqrt(bins[i].cnt);\n }\n if (useSqrt)\n bins[i].cnt = Math.sqrt(bins[i].cnt);\n var h, l, l2;\n for (i = 0; i < maxbins; ++i) {\n find_nn(bins, i, false);\n var err = bins[i].err;\n for (l = ++heap[0]; l > 1; l = l2) {\n l2 = l >> 1;\n if (bins[h = heap[l2]].err <= err)\n break;\n heap[l] = h;\n }\n heap[l] = i;\n }\n var extbins = maxbins - maxColors;\n for (i = 0; i < extbins; ) {\n var tb;\n for (; ; ) {\n var b1 = heap[1];\n tb = bins[b1];\n if (tb.tm >= tb.mtm && bins[tb.nn].mtm <= tb.tm)\n break;\n if (tb.mtm == bincountMinusOne)\n b1 = heap[1] = heap[heap[0]--];\n else {\n find_nn(bins, b1, false);\n tb.tm = i;\n }\n var err = bins[b1].err;\n for (l = 1; (l2 = l + l) <= heap[0]; l = l2) {\n if (l2 < heap[0] && bins[heap[l2]].err > bins[heap[l2 + 1]].err)\n l2++;\n if (err <= bins[h = heap[l2]].err)\n break;\n heap[l] = h;\n }\n heap[l] = b1;\n }\n var nb = bins[tb.nn];\n var n1 = tb.cnt;\n var n2 = nb.cnt;\n var d = 1 / (n1 + n2);\n if (hasAlpha)\n tb.ac = d * (n1 * tb.ac + n2 * nb.ac);\n tb.rc = d * (n1 * tb.rc + n2 * nb.rc);\n tb.gc = d * (n1 * tb.gc + n2 * nb.gc);\n tb.bc = d * (n1 * tb.bc + n2 * nb.bc);\n tb.cnt += nb.cnt;\n tb.mtm = ++i;\n bins[nb.bk].fw = nb.fw;\n bins[nb.fw].bk = nb.bk;\n nb.mtm = bincountMinusOne;\n }\n let palette = [];\n var k = 0;\n for (i = 0; ; ++k) {\n let r = clamp(Math.round(bins[i].rc), 0, 255);\n let g = clamp(Math.round(bins[i].gc), 0, 255);\n let b = clamp(Math.round(bins[i].bc), 0, 255);\n let a = 255;\n if (hasAlpha) {\n a = clamp(Math.round(bins[i].ac), 0, 255);\n if (oneBitAlpha) {\n const threshold = typeof oneBitAlpha === \"number\" ? oneBitAlpha : 127;\n a = a <= threshold ? 0 : 255;\n }\n if (clearAlpha && a <= clearAlphaThreshold) {\n r = g = b = clearAlphaColor;\n a = 0;\n }\n }\n const color = hasAlpha ? [r, g, b, a] : [r, g, b];\n const exists = existsInPalette(palette, color);\n if (!exists)\n palette.push(color);\n if ((i = bins[i].fw) == 0)\n break;\n }\n return palette;\n}\nfunction existsInPalette(palette, color) {\n for (let i = 0; i < palette.length; i++) {\n const p = palette[i];\n let matchesRGB = p[0] === color[0] && p[1] === color[1] && p[2] === color[2];\n let matchesAlpha = p.length >= 4 && color.length >= 4 ? p[3] === color[3] : true;\n if (matchesRGB && matchesAlpha)\n return true;\n }\n return false;\n}\n\n// src/color.js\nfunction euclideanDistanceSquared(a, b) {\n var sum = 0;\n var n;\n for (n = 0; n < a.length; n++) {\n const dx = a[n] - b[n];\n sum += dx * dx;\n }\n return sum;\n}\n\n// src/palettize.js\nfunction roundStep(byte, step) {\n return step > 1 ? Math.round(byte / step) * step : byte;\n}\nfunction prequantize(rgba, {roundRGB = 5, roundAlpha = 10, oneBitAlpha = null} = {}) {\n const data = new Uint32Array(rgba.buffer);\n for (let i = 0; i < data.length; i++) {\n const color = data[i];\n let a = color >> 24 & 255;\n let b = color >> 16 & 255;\n let g = color >> 8 & 255;\n let r = color & 255;\n a = roundStep(a, roundAlpha);\n if (oneBitAlpha) {\n const threshold = typeof oneBitAlpha === \"number\" ? oneBitAlpha : 127;\n a = a <= threshold ? 0 : 255;\n }\n r = roundStep(r, roundRGB);\n g = roundStep(g, roundRGB);\n b = roundStep(b, roundRGB);\n data[i] = a << 24 | b << 16 | g << 8 | r << 0;\n }\n}\nfunction applyPalette(rgba, palette, format = \"rgb565\") {\n if (!rgba || !rgba.buffer) {\n throw new Error(\"quantize() expected RGBA Uint8Array data\");\n }\n if (!(rgba instanceof Uint8Array) && !(rgba instanceof Uint8ClampedArray)) {\n throw new Error(\"quantize() expected RGBA Uint8Array data\");\n }\n if (palette.length > 256) {\n throw new Error(\"applyPalette() only works with 256 colors or less\");\n }\n const data = new Uint32Array(rgba.buffer);\n const length = data.length;\n const bincount = format === \"rgb444\" ? 4096 : 65536;\n const index = new Uint8Array(length);\n const cache = new Array(bincount);\n const hasAlpha = format === \"rgba4444\";\n if (format === \"rgba4444\") {\n for (let i = 0; i < length; i++) {\n const color = data[i];\n const a = color >> 24 & 255;\n const b = color >> 16 & 255;\n const g = color >> 8 & 255;\n const r = color & 255;\n const key = rgba8888_to_rgba4444(r, g, b, a);\n const idx = key in cache ? cache[key] : cache[key] = nearestColorIndexRGBA(r, g, b, a, palette);\n index[i] = idx;\n }\n } else {\n const rgb888_to_key = format === \"rgb444\" ? rgb888_to_rgb444 : rgb888_to_rgb565;\n for (let i = 0; i < length; i++) {\n const color = data[i];\n const b = color >> 16 & 255;\n const g = color >> 8 & 255;\n const r = color & 255;\n const key = rgb888_to_key(r, g, b);\n const idx = key in cache ? cache[key] : cache[key] = nearestColorIndexRGB(r, g, b, palette);\n index[i] = idx;\n }\n }\n return index;\n}\nfunction nearestColorIndexRGBA(r, g, b, a, palette) {\n let k = 0;\n let mindist = 1e100;\n for (let i = 0; i < palette.length; i++) {\n const px2 = palette[i];\n const a2 = px2[3];\n let curdist = sqr2(a2 - a);\n if (curdist > mindist)\n continue;\n const r2 = px2[0];\n curdist += sqr2(r2 - r);\n if (curdist > mindist)\n continue;\n const g2 = px2[1];\n curdist += sqr2(g2 - g);\n if (curdist > mindist)\n continue;\n const b2 = px2[2];\n curdist += sqr2(b2 - b);\n if (curdist > mindist)\n continue;\n mindist = curdist;\n k = i;\n }\n return k;\n}\nfunction nearestColorIndexRGB(r, g, b, palette) {\n let k = 0;\n let mindist = 1e100;\n for (let i = 0; i < palette.length; i++) {\n const px2 = palette[i];\n const r2 = px2[0];\n let curdist = sqr2(r2 - r);\n if (curdist > mindist)\n continue;\n const g2 = px2[1];\n curdist += sqr2(g2 - g);\n if (curdist > mindist)\n continue;\n const b2 = px2[2];\n curdist += sqr2(b2 - b);\n if (curdist > mindist)\n continue;\n mindist = curdist;\n k = i;\n }\n return k;\n}\nfunction snapColorsToPalette(palette, knownColors, threshold = 5) {\n if (!palette.length || !knownColors.length)\n return;\n const paletteRGB = palette.map((p) => p.slice(0, 3));\n const thresholdSq = threshold * threshold;\n const dim = palette[0].length;\n for (let i = 0; i < knownColors.length; i++) {\n let color = knownColors[i];\n if (color.length < dim) {\n color = [color[0], color[1], color[2], 255];\n } else if (color.length > dim) {\n color = color.slice(0, 3);\n } else {\n color = color.slice();\n }\n const r = nearestColorIndexWithDistance(paletteRGB, color.slice(0, 3), euclideanDistanceSquared);\n const idx = r[0];\n const distanceSq = r[1];\n if (distanceSq > 0 && distanceSq <= thresholdSq) {\n palette[idx] = color;\n }\n }\n}\nfunction sqr2(a) {\n return a * a;\n}\nfunction nearestColorIndex(colors, pixel, distanceFn = euclideanDistanceSquared) {\n let minDist = Infinity;\n let minDistIndex = -1;\n for (let j = 0; j < colors.length; j++) {\n const paletteColor = colors[j];\n const dist = distanceFn(pixel, paletteColor);\n if (dist < minDist) {\n minDist = dist;\n minDistIndex = j;\n }\n }\n return minDistIndex;\n}\nfunction nearestColorIndexWithDistance(colors, pixel, distanceFn = euclideanDistanceSquared) {\n let minDist = Infinity;\n let minDistIndex = -1;\n for (let j = 0; j < colors.length; j++) {\n const paletteColor = colors[j];\n const dist = distanceFn(pixel, paletteColor);\n if (dist < minDist) {\n minDist = dist;\n minDistIndex = j;\n }\n }\n return [minDistIndex, minDist];\n}\nfunction nearestColor(colors, pixel, distanceFn = euclideanDistanceSquared) {\n return colors[nearestColorIndex(colors, pixel, distanceFn)];\n}\n\n// src/index.js\nfunction GIFEncoder(opt = {}) {\n const {initialCapacity = 4096, auto = true} = opt;\n const stream = createStream(initialCapacity);\n const HSIZE = 5003;\n const accum = new Uint8Array(256);\n const htab = new Int32Array(HSIZE);\n const codetab = new Int32Array(HSIZE);\n let hasInit = false;\n return {\n reset() {\n stream.reset();\n hasInit = false;\n },\n finish() {\n stream.writeByte(constants_default.trailer);\n },\n bytes() {\n return stream.bytes();\n },\n bytesView() {\n return stream.bytesView();\n },\n get buffer() {\n return stream.buffer;\n },\n get stream() {\n return stream;\n },\n writeHeader,\n writeFrame(index, width, height, opts = {}) {\n const {\n transparent = false,\n transparentIndex = 0,\n delay = 0,\n palette = null,\n repeat = 0,\n colorDepth = 8,\n dispose = -1\n } = opts;\n let first = false;\n if (auto) {\n if (!hasInit) {\n first = true;\n writeHeader();\n hasInit = true;\n }\n } else {\n first = Boolean(opts.first);\n }\n width = Math.max(0, Math.floor(width));\n height = Math.max(0, Math.floor(height));\n if (first) {\n if (!palette) {\n throw new Error(\"First frame must include a { palette } option\");\n }\n encodeLogicalScreenDescriptor(stream, width, height, palette, colorDepth);\n encodeColorTable(stream, palette);\n if (repeat >= 0) {\n encodeNetscapeExt(stream, repeat);\n }\n }\n const delayTime = Math.round(delay / 10);\n encodeGraphicControlExt(stream, dispose, delayTime, transparent, transparentIndex);\n const useLocalColorTable = Boolean(palette) && !first;\n encodeImageDescriptor(stream, width, height, useLocalColorTable ? palette : null);\n if (useLocalColorTable)\n encodeColorTable(stream, palette);\n encodePixels(stream, index, width, height, colorDepth, accum, htab, codetab);\n }\n };\n function writeHeader() {\n writeUTFBytes(stream, \"GIF89a\");\n }\n}\nfunction encodeGraphicControlExt(stream, dispose, delay, transparent, transparentIndex) {\n stream.writeByte(33);\n stream.writeByte(249);\n stream.writeByte(4);\n if (transparentIndex < 0) {\n transparentIndex = 0;\n transparent = false;\n }\n var transp, disp;\n if (!transparent) {\n transp = 0;\n disp = 0;\n } else {\n transp = 1;\n disp = 2;\n }\n if (dispose >= 0) {\n disp = dispose & 7;\n }\n disp <<= 2;\n const userInput = 0;\n stream.writeByte(0 | disp | userInput | transp);\n writeUInt16(stream, delay);\n stream.writeByte(transparentIndex || 0);\n stream.writeByte(0);\n}\nfunction encodeLogicalScreenDescriptor(stream, width, height, palette, colorDepth = 8) {\n const globalColorTableFlag = 1;\n const sortFlag = 0;\n const globalColorTableSize = colorTableSize(palette.length) - 1;\n const fields = globalColorTableFlag << 7 | colorDepth - 1 << 4 | sortFlag << 3 | globalColorTableSize;\n const backgroundColorIndex = 0;\n const pixelAspectRatio = 0;\n writeUInt16(stream, width);\n writeUInt16(stream, height);\n stream.writeBytes([fields, backgroundColorIndex, pixelAspectRatio]);\n}\nfunction encodeNetscapeExt(stream, repeat) {\n stream.writeByte(33);\n stream.writeByte(255);\n stream.writeByte(11);\n writeUTFBytes(stream, \"NETSCAPE2.0\");\n stream.writeByte(3);\n stream.writeByte(1);\n writeUInt16(stream, repeat);\n stream.writeByte(0);\n}\nfunction encodeColorTable(stream, palette) {\n const colorTableLength = 1 << colorTableSize(palette.length);\n for (let i = 0; i < colorTableLength; i++) {\n let color = [0, 0, 0];\n if (i < palette.length) {\n color = palette[i];\n }\n stream.writeByte(color[0]);\n stream.writeByte(color[1]);\n stream.writeByte(color[2]);\n }\n}\nfunction encodeImageDescriptor(stream, width, height, localPalette) {\n stream.writeByte(44);\n writeUInt16(stream, 0);\n writeUInt16(stream, 0);\n writeUInt16(stream, width);\n writeUInt16(stream, height);\n if (localPalette) {\n const interlace = 0;\n const sorted = 0;\n const palSize = colorTableSize(localPalette.length) - 1;\n stream.writeByte(128 | interlace | sorted | 0 | palSize);\n } else {\n stream.writeByte(0);\n }\n}\nfunction encodePixels(stream, index, width, height, colorDepth = 8, accum, htab, codetab) {\n lzwEncode_default(width, height, index, colorDepth, stream, accum, htab, codetab);\n}\nfunction writeUInt16(stream, short) {\n stream.writeByte(short & 255);\n stream.writeByte(short >> 8 & 255);\n}\nfunction writeUTFBytes(stream, text) {\n for (var i = 0; i < text.length; i++) {\n stream.writeByte(text.charCodeAt(i));\n }\n}\nfunction colorTableSize(length) {\n return Math.max(Math.ceil(Math.log2(length)), 1);\n}\nvar src_default = GIFEncoder;\n//# sourceMappingURL=gifenc.js.map\n"],"x_google_ignoreList":[0],"mappings":"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"}
|