@jitl/opentui-core 0.1.97-next.c8a3f05

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 (180) hide show
  1. package/3d/SpriteResourceManager.d.ts +74 -0
  2. package/3d/SpriteUtils.d.ts +13 -0
  3. package/3d/TextureUtils.d.ts +24 -0
  4. package/3d/ThreeRenderable.d.ts +40 -0
  5. package/3d/WGPURenderer.d.ts +61 -0
  6. package/3d/animation/ExplodingSpriteEffect.d.ts +71 -0
  7. package/3d/animation/PhysicsExplodingSpriteEffect.d.ts +76 -0
  8. package/3d/animation/SpriteAnimator.d.ts +124 -0
  9. package/3d/animation/SpriteParticleGenerator.d.ts +62 -0
  10. package/3d/canvas.d.ts +44 -0
  11. package/3d/index.d.ts +12 -0
  12. package/3d/physics/PlanckPhysicsAdapter.d.ts +19 -0
  13. package/3d/physics/RapierPhysicsAdapter.d.ts +19 -0
  14. package/3d/physics/physics-interface.d.ts +27 -0
  15. package/3d.d.ts +2 -0
  16. package/3d.js +33843 -0
  17. package/3d.js.map +155 -0
  18. package/LICENSE +21 -0
  19. package/NativeSpanFeed.d.ts +41 -0
  20. package/README.md +65 -0
  21. package/Renderable.d.ts +334 -0
  22. package/Worker-vajwjk0s.js +94 -0
  23. package/Worker-vajwjk0s.js.map +10 -0
  24. package/animation/Timeline.d.ts +126 -0
  25. package/ansi.d.ts +13 -0
  26. package/assets/javascript/highlights.scm +205 -0
  27. package/assets/javascript/tree-sitter-javascript.wasm +0 -0
  28. package/assets/markdown/highlights.scm +150 -0
  29. package/assets/markdown/injections.scm +27 -0
  30. package/assets/markdown/tree-sitter-markdown.wasm +0 -0
  31. package/assets/markdown_inline/highlights.scm +115 -0
  32. package/assets/markdown_inline/tree-sitter-markdown_inline.wasm +0 -0
  33. package/assets/typescript/highlights.scm +604 -0
  34. package/assets/typescript/tree-sitter-typescript.wasm +0 -0
  35. package/assets/zig/highlights.scm +284 -0
  36. package/assets/zig/tree-sitter-zig.wasm +0 -0
  37. package/buffer.d.ts +111 -0
  38. package/compat/FFIType.d.ts +304 -0
  39. package/compat/Worker.d.ts +1 -0
  40. package/compat/bun-ffi-structs.d.ts +2 -0
  41. package/compat/ffi.d.ts +86 -0
  42. package/compat/nodejs/Worker.d.ts +16 -0
  43. package/compat/nodejs/bun-ffi-structs/index.d.ts +46 -0
  44. package/compat/nodejs/ffi.d.ts +21 -0
  45. package/compat/nodejs/registerBun.d.ts +1 -0
  46. package/compat/nodejs/registerResolveJs.d.ts +1 -0
  47. package/compat/nodejs/runtime.d.ts +7 -0
  48. package/compat/nodejs/test.d.ts +4 -0
  49. package/compat/nodejs/trampoline.worker.d.ts +1 -0
  50. package/compat/runtime.d.ts +8 -0
  51. package/compat/test.d.ts +1 -0
  52. package/compat/testHelpers.d.ts +18 -0
  53. package/console.d.ts +144 -0
  54. package/edit-buffer.d.ts +98 -0
  55. package/editor-view.d.ts +73 -0
  56. package/ffi-x3zvcksd.js +25 -0
  57. package/ffi-x3zvcksd.js.map +9 -0
  58. package/index-5yqvbmcz.js +220 -0
  59. package/index-5yqvbmcz.js.map +10 -0
  60. package/index-bnfz2g63.js +654 -0
  61. package/index-bnfz2g63.js.map +10 -0
  62. package/index-cbvybypy.js +43 -0
  63. package/index-cbvybypy.js.map +10 -0
  64. package/index-hjna9d1h.js +12074 -0
  65. package/index-hjna9d1h.js.map +42 -0
  66. package/index-jjp8mmgk.js +19991 -0
  67. package/index-jjp8mmgk.js.map +70 -0
  68. package/index-re3ntm60.js +51 -0
  69. package/index-re3ntm60.js.map +9 -0
  70. package/index-t16hn6zn.js +411 -0
  71. package/index-t16hn6zn.js.map +10 -0
  72. package/index-tkk6cmr2.js +650 -0
  73. package/index-tkk6cmr2.js.map +10 -0
  74. package/index.d.ts +23 -0
  75. package/index.js +480 -0
  76. package/index.js.map +9 -0
  77. package/lib/KeyHandler.d.ts +61 -0
  78. package/lib/RGBA.d.ts +26 -0
  79. package/lib/ascii.font.d.ts +508 -0
  80. package/lib/border.d.ts +51 -0
  81. package/lib/bunfs.d.ts +7 -0
  82. package/lib/clipboard.d.ts +17 -0
  83. package/lib/clock.d.ts +15 -0
  84. package/lib/data-paths.d.ts +26 -0
  85. package/lib/debounce.d.ts +42 -0
  86. package/lib/detect-links.d.ts +6 -0
  87. package/lib/env.d.ts +42 -0
  88. package/lib/extmarks-history.d.ts +17 -0
  89. package/lib/extmarks.d.ts +89 -0
  90. package/lib/hast-styled-text.d.ts +17 -0
  91. package/lib/index.d.ts +21 -0
  92. package/lib/keymapping.d.ts +25 -0
  93. package/lib/objects-in-viewport.d.ts +24 -0
  94. package/lib/output.capture.d.ts +24 -0
  95. package/lib/parse.keypress-kitty.d.ts +2 -0
  96. package/lib/parse.keypress.d.ts +26 -0
  97. package/lib/parse.mouse.d.ts +30 -0
  98. package/lib/paste.d.ts +7 -0
  99. package/lib/queue.d.ts +15 -0
  100. package/lib/renderable.validations.d.ts +12 -0
  101. package/lib/scroll-acceleration.d.ts +43 -0
  102. package/lib/selection.d.ts +64 -0
  103. package/lib/singleton.d.ts +7 -0
  104. package/lib/stdin-parser.d.ts +87 -0
  105. package/lib/styled-text.d.ts +63 -0
  106. package/lib/terminal-capability-detection.d.ts +30 -0
  107. package/lib/terminal-palette.d.ts +50 -0
  108. package/lib/tree-sitter/assets/update.d.ts +11 -0
  109. package/lib/tree-sitter/client.d.ts +47 -0
  110. package/lib/tree-sitter/default-parsers.d.ts +2 -0
  111. package/lib/tree-sitter/download-utils.d.ts +21 -0
  112. package/lib/tree-sitter/index.d.ts +8 -0
  113. package/lib/tree-sitter/parser.worker.d.ts +1 -0
  114. package/lib/tree-sitter/parsers-config.d.ts +53 -0
  115. package/lib/tree-sitter/resolve-ft.d.ts +5 -0
  116. package/lib/tree-sitter/types.d.ts +82 -0
  117. package/lib/tree-sitter-styled-text.d.ts +14 -0
  118. package/lib/validate-dir-name.d.ts +1 -0
  119. package/lib/yoga.options.d.ts +32 -0
  120. package/package.json +80 -0
  121. package/parser.worker.js +888 -0
  122. package/parser.worker.js.map +12 -0
  123. package/plugins/core-slot.d.ts +72 -0
  124. package/plugins/registry.d.ts +42 -0
  125. package/plugins/types.d.ts +34 -0
  126. package/post/effects.d.ts +147 -0
  127. package/post/filters.d.ts +65 -0
  128. package/post/matrices.d.ts +20 -0
  129. package/renderables/ASCIIFont.d.ts +52 -0
  130. package/renderables/Box.d.ts +81 -0
  131. package/renderables/Code.d.ts +78 -0
  132. package/renderables/Diff.d.ts +142 -0
  133. package/renderables/EditBufferRenderable.d.ts +237 -0
  134. package/renderables/FrameBuffer.d.ts +16 -0
  135. package/renderables/Input.d.ts +67 -0
  136. package/renderables/LineNumberRenderable.d.ts +78 -0
  137. package/renderables/Markdown.d.ts +181 -0
  138. package/renderables/ScrollBar.d.ts +77 -0
  139. package/renderables/ScrollBox.d.ts +124 -0
  140. package/renderables/Select.d.ts +115 -0
  141. package/renderables/Slider.d.ts +47 -0
  142. package/renderables/TabSelect.d.ts +96 -0
  143. package/renderables/Text.d.ts +36 -0
  144. package/renderables/TextBufferRenderable.d.ts +105 -0
  145. package/renderables/TextNode.d.ts +91 -0
  146. package/renderables/TextTable.d.ts +140 -0
  147. package/renderables/Textarea.d.ts +63 -0
  148. package/renderables/TimeToFirstDraw.d.ts +24 -0
  149. package/renderables/__tests__/renderable-test-utils.d.ts +12 -0
  150. package/renderables/composition/VRenderable.d.ts +16 -0
  151. package/renderables/composition/constructs.d.ts +35 -0
  152. package/renderables/composition/vnode.d.ts +46 -0
  153. package/renderables/index.d.ts +23 -0
  154. package/renderables/markdown-parser.d.ts +10 -0
  155. package/renderer.d.ts +419 -0
  156. package/runtime-hdpkc6qf.js +220 -0
  157. package/runtime-hdpkc6qf.js.map +17 -0
  158. package/runtime-plugin-support.d.ts +3 -0
  159. package/runtime-plugin-support.js +31 -0
  160. package/runtime-plugin-support.js.map +10 -0
  161. package/runtime-plugin.d.ts +19 -0
  162. package/runtime-plugin.js +18 -0
  163. package/runtime-plugin.js.map +9 -0
  164. package/syntax-style.d.ts +54 -0
  165. package/testing/manual-clock.d.ts +17 -0
  166. package/testing/mock-keys.d.ts +81 -0
  167. package/testing/mock-mouse.d.ts +38 -0
  168. package/testing/mock-tree-sitter-client.d.ts +23 -0
  169. package/testing/spy.d.ts +7 -0
  170. package/testing/test-recorder.d.ts +61 -0
  171. package/testing/test-renderer.d.ts +23 -0
  172. package/testing.d.ts +6 -0
  173. package/testing.js +699 -0
  174. package/testing.js.map +15 -0
  175. package/text-buffer-view.d.ts +42 -0
  176. package/text-buffer.d.ts +67 -0
  177. package/types.d.ts +139 -0
  178. package/utils.d.ts +14 -0
  179. package/zig-structs.d.ts +155 -0
  180. package/zig.d.ts +353 -0
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../node_modules/.bun/bun-ffi-structs@0.1.2+1fb4c65d43e298b9/node_modules/bun-ffi-structs/index.js"],
4
+ "sourcesContent": [
5
+ "// src/structs_ffi.ts\nimport { ptr, toArrayBuffer } from \"bun:ffi\";\nfunction fatalError(...args) {\n const message = args.join(\" \");\n console.error(\"FATAL ERROR:\", message);\n throw new Error(message);\n}\nvar pointerSize = process.arch === \"x64\" || process.arch === \"arm64\" ? 8 : 4;\nvar typeSizes = {\n u8: 1,\n bool_u8: 1,\n bool_u32: 4,\n u16: 2,\n i16: 2,\n u32: 4,\n u64: 8,\n f32: 4,\n f64: 8,\n pointer: pointerSize,\n i32: 4\n};\nvar primitiveKeys = Object.keys(typeSizes);\nfunction isPrimitiveType(type) {\n return typeof type === \"string\" && primitiveKeys.includes(type);\n}\nvar typeAlignments = { ...typeSizes };\nvar typeGetters = {\n u8: (view, offset) => view.getUint8(offset),\n bool_u8: (view, offset) => Boolean(view.getUint8(offset)),\n bool_u32: (view, offset) => Boolean(view.getUint32(offset, true)),\n u16: (view, offset) => view.getUint16(offset, true),\n i16: (view, offset) => view.getInt16(offset, true),\n u32: (view, offset) => view.getUint32(offset, true),\n u64: (view, offset) => view.getBigUint64(offset, true),\n f32: (view, offset) => view.getFloat32(offset, true),\n f64: (view, offset) => view.getFloat64(offset, true),\n i32: (view, offset) => view.getInt32(offset, true),\n pointer: (view, offset) => pointerSize === 8 ? view.getBigUint64(offset, true) : BigInt(view.getUint32(offset, true))\n};\nfunction objectPtr() {\n return {\n __type: \"objectPointer\"\n };\n}\nfunction isObjectPointerDef(type) {\n return typeof type === \"object\" && type !== null && type.__type === \"objectPointer\";\n}\nfunction allocStruct(structDef, options) {\n const buffer = new ArrayBuffer(structDef.size);\n const view = new DataView(buffer);\n const result = { buffer, view };\n const { pack: pointerPacker } = primitivePackers(\"pointer\");\n if (options?.lengths) {\n const subBuffers = {};\n for (const [arrayFieldName, length] of Object.entries(options.lengths)) {\n const arrayMeta = structDef.arrayFields.get(arrayFieldName);\n if (!arrayMeta) {\n throw new Error(`Field '${arrayFieldName}' is not an array field with a lengthOf field`);\n }\n const subBuffer = new ArrayBuffer(length * arrayMeta.elementSize);\n subBuffers[arrayFieldName] = subBuffer;\n const pointer = length > 0 ? ptr(subBuffer) : null;\n pointerPacker(view, arrayMeta.arrayOffset, pointer);\n arrayMeta.lengthPack(view, arrayMeta.lengthOffset, length);\n }\n if (Object.keys(subBuffers).length > 0) {\n result.subBuffers = subBuffers;\n }\n }\n return result;\n}\nfunction alignOffset(offset, align) {\n return offset + (align - 1) & ~(align - 1);\n}\nfunction enumTypeError(value) {\n throw new TypeError(`Invalid enum value: ${value}`);\n}\nfunction defineEnum(mapping, base = \"u32\") {\n const reverse = Object.fromEntries(Object.entries(mapping).map(([k, v]) => [v, k]));\n return {\n __type: \"enum\",\n type: base,\n to(value) {\n return typeof value === \"number\" ? value : mapping[value] ?? enumTypeError(String(value));\n },\n from(value) {\n return reverse[value] ?? enumTypeError(String(value));\n },\n enum: mapping\n };\n}\nfunction isEnum(type) {\n return typeof type === \"object\" && type.__type === \"enum\";\n}\nfunction isStruct(type) {\n return typeof type === \"object\" && type.__type === \"struct\";\n}\nfunction primitivePackers(type) {\n let pack;\n let unpack;\n switch (type) {\n case \"u8\":\n pack = (view, off, val) => view.setUint8(off, val);\n unpack = (view, off) => view.getUint8(off);\n break;\n case \"bool_u8\":\n pack = (view, off, val) => view.setUint8(off, val ? 1 : 0);\n unpack = (view, off) => Boolean(view.getUint8(off));\n break;\n case \"bool_u32\":\n pack = (view, off, val) => view.setUint32(off, val ? 1 : 0, true);\n unpack = (view, off) => Boolean(view.getUint32(off, true));\n break;\n case \"u16\":\n pack = (view, off, val) => view.setUint16(off, val, true);\n unpack = (view, off) => view.getUint16(off, true);\n break;\n case \"i16\":\n pack = (view, off, val) => view.setInt16(off, val, true);\n unpack = (view, off) => view.getInt16(off, true);\n break;\n case \"u32\":\n pack = (view, off, val) => view.setUint32(off, val, true);\n unpack = (view, off) => view.getUint32(off, true);\n break;\n case \"i32\":\n pack = (view, off, val) => view.setInt32(off, val, true);\n unpack = (view, off) => view.getInt32(off, true);\n break;\n case \"u64\":\n pack = (view, off, val) => view.setBigUint64(off, BigInt(val), true);\n unpack = (view, off) => view.getBigUint64(off, true);\n break;\n case \"f32\":\n pack = (view, off, val) => view.setFloat32(off, val, true);\n unpack = (view, off) => view.getFloat32(off, true);\n break;\n case \"f64\":\n pack = (view, off, val) => view.setFloat64(off, val, true);\n unpack = (view, off) => view.getFloat64(off, true);\n break;\n case \"pointer\":\n pack = (view, off, val) => {\n pointerSize === 8 ? view.setBigUint64(off, val ? BigInt(val) : 0n, true) : view.setUint32(off, val ? Number(val) : 0, true);\n };\n unpack = (view, off) => {\n const bint = pointerSize === 8 ? view.getBigUint64(off, true) : BigInt(view.getUint32(off, true));\n return Number(bint);\n };\n break;\n default:\n fatalError(`Unsupported primitive type: ${type}`);\n }\n return { pack, unpack };\n}\nvar { pack: pointerPacker, unpack: pointerUnpacker } = primitivePackers(\"pointer\");\nfunction packObjectArray(val) {\n const buffer = new ArrayBuffer(val.length * pointerSize);\n const bufferView = new DataView(buffer);\n for (let i = 0;i < val.length; i++) {\n const instance = val[i];\n const ptrValue = instance?.ptr ?? null;\n pointerPacker(bufferView, i * pointerSize, ptrValue);\n }\n return bufferView;\n}\nvar encoder = new TextEncoder;\nvar decoder = new TextDecoder;\nfunction defineStruct(fields, structDefOptions) {\n let offset = 0;\n let maxAlign = 1;\n const layout = [];\n const lengthOfFields = {};\n const lengthOfRequested = [];\n const arrayFieldsMetadata = {};\n for (const [name, typeOrStruct, options = {}] of fields) {\n if (options.condition && !options.condition()) {\n continue;\n }\n let size = 0, align = 0;\n let pack;\n let unpack;\n let needsLengthOf = false;\n let lengthOfDef = null;\n if (isPrimitiveType(typeOrStruct)) {\n size = typeSizes[typeOrStruct];\n align = typeAlignments[typeOrStruct];\n ({ pack, unpack } = primitivePackers(typeOrStruct));\n } else if (typeof typeOrStruct === \"string\" && typeOrStruct === \"cstring\") {\n size = pointerSize;\n align = pointerSize;\n pack = (view, off, val) => {\n const bufPtr = val ? ptr(encoder.encode(val + \"\\x00\")) : null;\n pointerPacker(view, off, bufPtr);\n };\n unpack = (view, off) => {\n const ptrVal = pointerUnpacker(view, off);\n return ptrVal;\n };\n } else if (typeof typeOrStruct === \"string\" && typeOrStruct === \"char*\") {\n size = pointerSize;\n align = pointerSize;\n pack = (view, off, val) => {\n const bufPtr = val ? ptr(encoder.encode(val)) : null;\n pointerPacker(view, off, bufPtr);\n };\n unpack = (view, off) => {\n const ptrVal = pointerUnpacker(view, off);\n return ptrVal;\n };\n needsLengthOf = true;\n } else if (isEnum(typeOrStruct)) {\n const base = typeOrStruct.type;\n size = typeSizes[base];\n align = typeAlignments[base];\n const { pack: packEnum } = primitivePackers(base);\n pack = (view, off, val) => {\n const num = typeOrStruct.to(val);\n packEnum(view, off, num);\n };\n unpack = (view, off) => {\n const raw = typeGetters[base](view, off);\n return typeOrStruct.from(raw);\n };\n } else if (isStruct(typeOrStruct)) {\n if (options.asPointer === true) {\n size = pointerSize;\n align = pointerSize;\n pack = (view, off, val, obj, options2) => {\n if (!val) {\n pointerPacker(view, off, null);\n return;\n }\n const nestedBuf = typeOrStruct.pack(val, options2);\n pointerPacker(view, off, ptr(nestedBuf));\n };\n unpack = (view, off) => {\n throw new Error(\"Not implemented yet\");\n };\n } else {\n size = typeOrStruct.size;\n align = typeOrStruct.align;\n pack = (view, off, val, obj, options2) => {\n const nestedBuf = typeOrStruct.pack(val, options2);\n const nestedView = new Uint8Array(nestedBuf);\n const dView = new Uint8Array(view.buffer);\n dView.set(nestedView, off);\n };\n unpack = (view, off) => {\n const slice = view.buffer.slice(off, off + size);\n return typeOrStruct.unpack(slice);\n };\n }\n } else if (isObjectPointerDef(typeOrStruct)) {\n size = pointerSize;\n align = pointerSize;\n pack = (view, off, value) => {\n const ptrValue = value?.ptr ?? null;\n if (ptrValue === undefined) {\n console.warn(`Field '${name}' expected object with '.ptr' property, but got undefined pointer value from:`, value);\n pointerPacker(view, off, null);\n } else {\n pointerPacker(view, off, ptrValue);\n }\n };\n unpack = (view, off) => {\n return pointerUnpacker(view, off);\n };\n } else if (Array.isArray(typeOrStruct) && typeOrStruct.length === 1 && typeOrStruct[0] !== undefined) {\n const [def] = typeOrStruct;\n size = pointerSize;\n align = pointerSize;\n let arrayElementSize;\n if (isEnum(def)) {\n arrayElementSize = typeSizes[def.type];\n pack = (view, off, val, obj) => {\n if (!val || val.length === 0) {\n pointerPacker(view, off, null);\n return;\n }\n const buffer = new ArrayBuffer(val.length * arrayElementSize);\n const bufferView = new DataView(buffer);\n for (let i = 0;i < val.length; i++) {\n const num = def.to(val[i]);\n bufferView.setUint32(i * arrayElementSize, num, true);\n }\n pointerPacker(view, off, ptr(buffer));\n };\n unpack = null;\n needsLengthOf = true;\n lengthOfDef = def;\n } else if (isStruct(def)) {\n arrayElementSize = def.size;\n pack = (view, off, val, obj, options2) => {\n if (!val || val.length === 0) {\n pointerPacker(view, off, null);\n return;\n }\n const buffer = new ArrayBuffer(val.length * arrayElementSize);\n const bufferView = new DataView(buffer);\n for (let i = 0;i < val.length; i++) {\n def.packInto(val[i], bufferView, i * arrayElementSize, options2);\n }\n pointerPacker(view, off, ptr(buffer));\n };\n unpack = (view, off) => {\n throw new Error(\"Not implemented yet\");\n };\n } else if (isPrimitiveType(def)) {\n arrayElementSize = typeSizes[def];\n const { pack: primitivePack } = primitivePackers(def);\n pack = (view, off, val) => {\n if (!val || val.length === 0) {\n pointerPacker(view, off, null);\n return;\n }\n const buffer = new ArrayBuffer(val.length * arrayElementSize);\n const bufferView = new DataView(buffer);\n for (let i = 0;i < val.length; i++) {\n primitivePack(bufferView, i * arrayElementSize, val[i]);\n }\n pointerPacker(view, off, ptr(buffer));\n };\n unpack = null;\n needsLengthOf = true;\n lengthOfDef = def;\n } else if (isObjectPointerDef(def)) {\n arrayElementSize = pointerSize;\n pack = (view, off, val) => {\n if (!val || val.length === 0) {\n pointerPacker(view, off, null);\n return;\n }\n const packedView = packObjectArray(val);\n pointerPacker(view, off, ptr(packedView.buffer));\n };\n unpack = () => {\n throw new Error(\"not implemented yet\");\n };\n } else {\n throw new Error(`Unsupported array element type for ${name}: ${JSON.stringify(def)}`);\n }\n const lengthOfField = Object.values(lengthOfFields).find((f) => f.lengthOf === name);\n if (lengthOfField && isPrimitiveType(lengthOfField.type)) {\n const { pack: lengthPack } = primitivePackers(lengthOfField.type);\n arrayFieldsMetadata[name] = {\n elementSize: arrayElementSize,\n arrayOffset: offset,\n lengthOffset: lengthOfField.offset,\n lengthPack\n };\n }\n } else {\n throw new Error(`Unsupported field type for ${name}: ${JSON.stringify(typeOrStruct)}`);\n }\n offset = alignOffset(offset, align);\n if (options.unpackTransform) {\n const originalUnpack = unpack;\n unpack = (view, off) => options.unpackTransform(originalUnpack(view, off));\n }\n if (options.packTransform) {\n const originalPack = pack;\n pack = (view, off, val, obj, packOptions) => originalPack(view, off, options.packTransform(val), obj, packOptions);\n }\n if (options.optional) {\n const originalPack = pack;\n if (isStruct(typeOrStruct) && !options.asPointer) {\n pack = (view, off, val, obj, packOptions) => {\n if (val || options.mapOptionalInline) {\n originalPack(view, off, val, obj, packOptions);\n }\n };\n } else {\n pack = (view, off, val, obj, packOptions) => originalPack(view, off, val ?? 0, obj, packOptions);\n }\n }\n if (options.lengthOf) {\n const originalPack = pack;\n pack = (view, off, val, obj, packOptions) => {\n const targetValue = obj[options.lengthOf];\n let length = 0;\n if (targetValue) {\n if (typeof targetValue === \"string\") {\n length = Buffer.byteLength(targetValue);\n } else {\n length = targetValue.length;\n }\n }\n return originalPack(view, off, length, obj, packOptions);\n };\n }\n let validateFunctions;\n if (options.validate) {\n validateFunctions = Array.isArray(options.validate) ? options.validate : [options.validate];\n }\n const layoutField = {\n name,\n offset,\n size,\n align,\n validate: validateFunctions,\n optional: !!options.optional || !!options.lengthOf || options.default !== undefined,\n default: options.default,\n pack,\n unpack,\n type: typeOrStruct,\n lengthOf: options.lengthOf\n };\n layout.push(layoutField);\n if (options.lengthOf) {\n lengthOfFields[options.lengthOf] = layoutField;\n }\n if (needsLengthOf) {\n const def = typeof typeOrStruct === \"string\" && typeOrStruct === \"char*\" ? \"char*\" : lengthOfDef;\n if (!def)\n fatalError(`Internal error: needsLengthOf=true but def is null for ${name}`);\n lengthOfRequested.push({ requester: layoutField, def });\n }\n offset += size;\n maxAlign = Math.max(maxAlign, align);\n }\n for (const { requester, def } of lengthOfRequested) {\n const lengthOfField = lengthOfFields[requester.name];\n if (!lengthOfField) {\n if (def === \"char*\") {\n continue;\n }\n throw new Error(`lengthOf field not found for array field ${requester.name}`);\n }\n if (def === \"char*\") {\n requester.unpack = (view, off) => {\n const ptrAddress = pointerUnpacker(view, off);\n const length = lengthOfField.unpack(view, lengthOfField.offset);\n if (ptrAddress === 0) {\n return null;\n }\n const byteLength = typeof length === \"bigint\" ? Number(length) : length;\n if (byteLength === 0) {\n return \"\";\n }\n const buffer = toArrayBuffer(ptrAddress, 0, byteLength);\n return decoder.decode(buffer);\n };\n } else if (isPrimitiveType(def)) {\n const elemSize = typeSizes[def];\n const { unpack: primitiveUnpack } = primitivePackers(def);\n requester.unpack = (view, off) => {\n const result = [];\n const length = lengthOfField.unpack(view, lengthOfField.offset);\n const ptrAddress = pointerUnpacker(view, off);\n if (ptrAddress === 0n && length > 0) {\n throw new Error(`Array field ${requester.name} has null pointer but length ${length}.`);\n }\n if (ptrAddress === 0n || length === 0) {\n return [];\n }\n const buffer = toArrayBuffer(ptrAddress, 0, length * elemSize);\n const bufferView = new DataView(buffer);\n for (let i = 0;i < length; i++) {\n result.push(primitiveUnpack(bufferView, i * elemSize));\n }\n return result;\n };\n } else {\n const elemSize = def.type === \"u32\" ? 4 : 8;\n requester.unpack = (view, off) => {\n const result = [];\n const length = lengthOfField.unpack(view, lengthOfField.offset);\n const ptrAddress = pointerUnpacker(view, off);\n if (ptrAddress === 0n && length > 0) {\n throw new Error(`Array field ${requester.name} has null pointer but length ${length}.`);\n }\n if (ptrAddress === 0n || length === 0) {\n return [];\n }\n const buffer = toArrayBuffer(ptrAddress, 0, length * elemSize);\n const bufferView = new DataView(buffer);\n for (let i = 0;i < length; i++) {\n result.push(def.from(bufferView.getUint32(i * elemSize, true)));\n }\n return result;\n };\n }\n }\n const totalSize = alignOffset(offset, maxAlign);\n const description = layout.map((f) => ({\n name: f.name,\n offset: f.offset,\n size: f.size,\n align: f.align,\n optional: f.optional,\n type: f.type,\n lengthOf: f.lengthOf\n }));\n const layoutByName = new Map(description.map((f) => [f.name, f]));\n const arrayFields = new Map(Object.entries(arrayFieldsMetadata));\n return {\n __type: \"struct\",\n size: totalSize,\n align: maxAlign,\n hasMapValue: !!structDefOptions?.mapValue,\n layoutByName,\n arrayFields,\n pack(obj, options) {\n const buf = new ArrayBuffer(totalSize);\n const view = new DataView(buf);\n let mappedObj = obj;\n if (structDefOptions?.mapValue) {\n mappedObj = structDefOptions.mapValue(obj);\n }\n for (const field of layout) {\n const value = mappedObj[field.name] ?? field.default;\n if (!field.optional && value === undefined) {\n fatalError(`Packing non-optional field '${field.name}' but value is undefined (and no default provided)`);\n }\n if (field.validate) {\n for (const validateFn of field.validate) {\n validateFn(value, field.name, {\n hints: options?.validationHints,\n input: mappedObj\n });\n }\n }\n field.pack(view, field.offset, value, mappedObj, options);\n }\n return view.buffer;\n },\n packInto(obj, view, offset2, options) {\n let mappedObj = obj;\n if (structDefOptions?.mapValue) {\n mappedObj = structDefOptions.mapValue(obj);\n }\n for (const field of layout) {\n const value = mappedObj[field.name] ?? field.default;\n if (!field.optional && value === undefined) {\n console.warn(`packInto missing value for non-optional field '${field.name}' at offset ${offset2 + field.offset}. Writing default or zero.`);\n }\n if (field.validate) {\n for (const validateFn of field.validate) {\n validateFn(value, field.name, {\n hints: options?.validationHints,\n input: mappedObj\n });\n }\n }\n field.pack(view, offset2 + field.offset, value, mappedObj, options);\n }\n },\n unpack(buf) {\n if (buf.byteLength < totalSize) {\n fatalError(`Buffer size (${buf.byteLength}) is smaller than struct size (${totalSize}) for unpacking.`);\n }\n const view = new DataView(buf);\n const result = structDefOptions?.default ? { ...structDefOptions.default } : {};\n for (const field of layout) {\n if (!field.unpack) {\n continue;\n }\n try {\n result[field.name] = field.unpack(view, field.offset);\n } catch (e) {\n console.error(`Error unpacking field '${field.name}' at offset ${field.offset}:`, e);\n throw e;\n }\n }\n if (structDefOptions?.reduceValue) {\n return structDefOptions.reduceValue(result);\n }\n return result;\n },\n packList(objects, options) {\n if (objects.length === 0) {\n return new ArrayBuffer(0);\n }\n const buffer = new ArrayBuffer(totalSize * objects.length);\n const view = new DataView(buffer);\n for (let i = 0;i < objects.length; i++) {\n let mappedObj = objects[i];\n if (structDefOptions?.mapValue) {\n mappedObj = structDefOptions.mapValue(objects[i]);\n }\n for (const field of layout) {\n const value = mappedObj[field.name] ?? field.default;\n if (!field.optional && value === undefined) {\n fatalError(`Packing non-optional field '${field.name}' at index ${i} but value is undefined (and no default provided)`);\n }\n if (field.validate) {\n for (const validateFn of field.validate) {\n validateFn(value, field.name, {\n hints: options?.validationHints,\n input: mappedObj\n });\n }\n }\n field.pack(view, i * totalSize + field.offset, value, mappedObj, options);\n }\n }\n return buffer;\n },\n unpackList(buf, count) {\n if (count === 0) {\n return [];\n }\n const expectedSize = totalSize * count;\n if (buf.byteLength < expectedSize) {\n fatalError(`Buffer size (${buf.byteLength}) is smaller than expected size (${expectedSize}) for unpacking ${count} structs.`);\n }\n const view = new DataView(buf);\n const results = [];\n for (let i = 0;i < count; i++) {\n const offset2 = i * totalSize;\n const result = structDefOptions?.default ? { ...structDefOptions.default } : {};\n for (const field of layout) {\n if (!field.unpack) {\n continue;\n }\n try {\n result[field.name] = field.unpack(view, offset2 + field.offset);\n } catch (e) {\n console.error(`Error unpacking field '${field.name}' at index ${i}, offset ${offset2 + field.offset}:`, e);\n throw e;\n }\n }\n if (structDefOptions?.reduceValue) {\n results.push(structDefOptions.reduceValue(result));\n } else {\n results.push(result);\n }\n }\n return results;\n },\n describe() {\n return description;\n }\n };\n}\nexport {\n pointerSize,\n packObjectArray,\n objectPtr,\n defineStruct,\n defineEnum,\n allocStruct\n};\n"
6
+ ],
7
+ "mappings": ";;;;AACA;AACA,SAAS,UAAU,IAAI,MAAM;AAAA,EAC3B,MAAM,UAAU,KAAK,KAAK,GAAG;AAAA,EAC7B,QAAQ,MAAM,gBAAgB,OAAO;AAAA,EACrC,MAAM,IAAI,MAAM,OAAO;AAAA;AAEzB,IAAI,cAAc,QAAQ,SAAS,SAAS,QAAQ,SAAS,UAAU,IAAI;AAC3E,IAAI,YAAY;AAAA,EACd,IAAI;AAAA,EACJ,SAAS;AAAA,EACT,UAAU;AAAA,EACV,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,SAAS;AAAA,EACT,KAAK;AACP;AACA,IAAI,gBAAgB,OAAO,KAAK,SAAS;AACzC,SAAS,eAAe,CAAC,MAAM;AAAA,EAC7B,OAAO,OAAO,SAAS,YAAY,cAAc,SAAS,IAAI;AAAA;AAEhE,IAAI,iBAAiB,KAAK,UAAU;AACpC,IAAI,cAAc;AAAA,EAChB,IAAI,CAAC,MAAM,WAAW,KAAK,SAAS,MAAM;AAAA,EAC1C,SAAS,CAAC,MAAM,WAAW,QAAQ,KAAK,SAAS,MAAM,CAAC;AAAA,EACxD,UAAU,CAAC,MAAM,WAAW,QAAQ,KAAK,UAAU,QAAQ,IAAI,CAAC;AAAA,EAChE,KAAK,CAAC,MAAM,WAAW,KAAK,UAAU,QAAQ,IAAI;AAAA,EAClD,KAAK,CAAC,MAAM,WAAW,KAAK,SAAS,QAAQ,IAAI;AAAA,EACjD,KAAK,CAAC,MAAM,WAAW,KAAK,UAAU,QAAQ,IAAI;AAAA,EAClD,KAAK,CAAC,MAAM,WAAW,KAAK,aAAa,QAAQ,IAAI;AAAA,EACrD,KAAK,CAAC,MAAM,WAAW,KAAK,WAAW,QAAQ,IAAI;AAAA,EACnD,KAAK,CAAC,MAAM,WAAW,KAAK,WAAW,QAAQ,IAAI;AAAA,EACnD,KAAK,CAAC,MAAM,WAAW,KAAK,SAAS,QAAQ,IAAI;AAAA,EACjD,SAAS,CAAC,MAAM,WAAW,gBAAgB,IAAI,KAAK,aAAa,QAAQ,IAAI,IAAI,OAAO,KAAK,UAAU,QAAQ,IAAI,CAAC;AACtH;AACA,SAAS,SAAS,GAAG;AAAA,EACnB,OAAO;AAAA,IACL,QAAQ;AAAA,EACV;AAAA;AAEF,SAAS,kBAAkB,CAAC,MAAM;AAAA,EAChC,OAAO,OAAO,SAAS,YAAY,SAAS,QAAQ,KAAK,WAAW;AAAA;AAEtE,SAAS,WAAW,CAAC,WAAW,SAAS;AAAA,EACvC,MAAM,SAAS,IAAI,YAAY,UAAU,IAAI;AAAA,EAC7C,MAAM,OAAO,IAAI,SAAS,MAAM;AAAA,EAChC,MAAM,SAAS,EAAE,QAAQ,KAAK;AAAA,EAC9B,QAAQ,MAAM,kBAAkB,iBAAiB,SAAS;AAAA,EAC1D,IAAI,SAAS,SAAS;AAAA,IACpB,MAAM,aAAa,CAAC;AAAA,IACpB,YAAY,gBAAgB,WAAW,OAAO,QAAQ,QAAQ,OAAO,GAAG;AAAA,MACtE,MAAM,YAAY,UAAU,YAAY,IAAI,cAAc;AAAA,MAC1D,IAAI,CAAC,WAAW;AAAA,QACd,MAAM,IAAI,MAAM,UAAU,6DAA6D;AAAA,MACzF;AAAA,MACA,MAAM,YAAY,IAAI,YAAY,SAAS,UAAU,WAAW;AAAA,MAChE,WAAW,kBAAkB;AAAA,MAC7B,MAAM,UAAU,SAAS,IAAI,IAAI,SAAS,IAAI;AAAA,MAC9C,cAAc,MAAM,UAAU,aAAa,OAAO;AAAA,MAClD,UAAU,WAAW,MAAM,UAAU,cAAc,MAAM;AAAA,IAC3D;AAAA,IACA,IAAI,OAAO,KAAK,UAAU,EAAE,SAAS,GAAG;AAAA,MACtC,OAAO,aAAa;AAAA,IACtB;AAAA,EACF;AAAA,EACA,OAAO;AAAA;AAET,SAAS,WAAW,CAAC,QAAQ,OAAO;AAAA,EAClC,OAAO,UAAU,QAAQ,KAAK,EAAE,QAAQ;AAAA;AAE1C,SAAS,aAAa,CAAC,OAAO;AAAA,EAC5B,MAAM,IAAI,UAAU,uBAAuB,OAAO;AAAA;AAEpD,SAAS,UAAU,CAAC,SAAS,OAAO,OAAO;AAAA,EACzC,MAAM,UAAU,OAAO,YAAY,OAAO,QAAQ,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;AAAA,EAClF,OAAO;AAAA,IACL,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,EAAE,CAAC,OAAO;AAAA,MACR,OAAO,OAAO,UAAU,WAAW,QAAQ,QAAQ,UAAU,cAAc,OAAO,KAAK,CAAC;AAAA;AAAA,IAE1F,IAAI,CAAC,OAAO;AAAA,MACV,OAAO,QAAQ,UAAU,cAAc,OAAO,KAAK,CAAC;AAAA;AAAA,IAEtD,MAAM;AAAA,EACR;AAAA;AAEF,SAAS,MAAM,CAAC,MAAM;AAAA,EACpB,OAAO,OAAO,SAAS,YAAY,KAAK,WAAW;AAAA;AAErD,SAAS,QAAQ,CAAC,MAAM;AAAA,EACtB,OAAO,OAAO,SAAS,YAAY,KAAK,WAAW;AAAA;AAErD,SAAS,gBAAgB,CAAC,MAAM;AAAA,EAC9B,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,QAAQ;AAAA,SACD;AAAA,MACH,OAAO,CAAC,MAAM,KAAK,QAAQ,KAAK,SAAS,KAAK,GAAG;AAAA,MACjD,SAAS,CAAC,MAAM,QAAQ,KAAK,SAAS,GAAG;AAAA,MACzC;AAAA,SACG;AAAA,MACH,OAAO,CAAC,MAAM,KAAK,QAAQ,KAAK,SAAS,KAAK,MAAM,IAAI,CAAC;AAAA,MACzD,SAAS,CAAC,MAAM,QAAQ,QAAQ,KAAK,SAAS,GAAG,CAAC;AAAA,MAClD;AAAA,SACG;AAAA,MACH,OAAO,CAAC,MAAM,KAAK,QAAQ,KAAK,UAAU,KAAK,MAAM,IAAI,GAAG,IAAI;AAAA,MAChE,SAAS,CAAC,MAAM,QAAQ,QAAQ,KAAK,UAAU,KAAK,IAAI,CAAC;AAAA,MACzD;AAAA,SACG;AAAA,MACH,OAAO,CAAC,MAAM,KAAK,QAAQ,KAAK,UAAU,KAAK,KAAK,IAAI;AAAA,MACxD,SAAS,CAAC,MAAM,QAAQ,KAAK,UAAU,KAAK,IAAI;AAAA,MAChD;AAAA,SACG;AAAA,MACH,OAAO,CAAC,MAAM,KAAK,QAAQ,KAAK,SAAS,KAAK,KAAK,IAAI;AAAA,MACvD,SAAS,CAAC,MAAM,QAAQ,KAAK,SAAS,KAAK,IAAI;AAAA,MAC/C;AAAA,SACG;AAAA,MACH,OAAO,CAAC,MAAM,KAAK,QAAQ,KAAK,UAAU,KAAK,KAAK,IAAI;AAAA,MACxD,SAAS,CAAC,MAAM,QAAQ,KAAK,UAAU,KAAK,IAAI;AAAA,MAChD;AAAA,SACG;AAAA,MACH,OAAO,CAAC,MAAM,KAAK,QAAQ,KAAK,SAAS,KAAK,KAAK,IAAI;AAAA,MACvD,SAAS,CAAC,MAAM,QAAQ,KAAK,SAAS,KAAK,IAAI;AAAA,MAC/C;AAAA,SACG;AAAA,MACH,OAAO,CAAC,MAAM,KAAK,QAAQ,KAAK,aAAa,KAAK,OAAO,GAAG,GAAG,IAAI;AAAA,MACnE,SAAS,CAAC,MAAM,QAAQ,KAAK,aAAa,KAAK,IAAI;AAAA,MACnD;AAAA,SACG;AAAA,MACH,OAAO,CAAC,MAAM,KAAK,QAAQ,KAAK,WAAW,KAAK,KAAK,IAAI;AAAA,MACzD,SAAS,CAAC,MAAM,QAAQ,KAAK,WAAW,KAAK,IAAI;AAAA,MACjD;AAAA,SACG;AAAA,MACH,OAAO,CAAC,MAAM,KAAK,QAAQ,KAAK,WAAW,KAAK,KAAK,IAAI;AAAA,MACzD,SAAS,CAAC,MAAM,QAAQ,KAAK,WAAW,KAAK,IAAI;AAAA,MACjD;AAAA,SACG;AAAA,MACH,OAAO,CAAC,MAAM,KAAK,QAAQ;AAAA,QACzB,gBAAgB,IAAI,KAAK,aAAa,KAAK,MAAM,OAAO,GAAG,IAAI,IAAI,IAAI,IAAI,KAAK,UAAU,KAAK,MAAM,OAAO,GAAG,IAAI,GAAG,IAAI;AAAA;AAAA,MAE5H,SAAS,CAAC,MAAM,QAAQ;AAAA,QACtB,MAAM,OAAO,gBAAgB,IAAI,KAAK,aAAa,KAAK,IAAI,IAAI,OAAO,KAAK,UAAU,KAAK,IAAI,CAAC;AAAA,QAChG,OAAO,OAAO,IAAI;AAAA;AAAA,MAEpB;AAAA;AAAA,MAEA,WAAW,+BAA+B,MAAM;AAAA;AAAA,EAEpD,OAAO,EAAE,MAAM,OAAO;AAAA;AAExB,MAAM,MAAM,eAAe,QAAQ,oBAAoB,iBAAiB,SAAS;AACjF,SAAS,eAAe,CAAC,KAAK;AAAA,EAC5B,MAAM,SAAS,IAAI,YAAY,IAAI,SAAS,WAAW;AAAA,EACvD,MAAM,aAAa,IAAI,SAAS,MAAM;AAAA,EACtC,SAAS,IAAI,EAAE,IAAI,IAAI,QAAQ,KAAK;AAAA,IAClC,MAAM,WAAW,IAAI;AAAA,IACrB,MAAM,WAAW,UAAU,OAAO;AAAA,IAClC,cAAc,YAAY,IAAI,aAAa,QAAQ;AAAA,EACrD;AAAA,EACA,OAAO;AAAA;AAET,IAAI,UAAU,IAAI;AAClB,IAAI,UAAU,IAAI;AAClB,SAAS,YAAY,CAAC,QAAQ,kBAAkB;AAAA,EAC9C,IAAI,SAAS;AAAA,EACb,IAAI,WAAW;AAAA,EACf,MAAM,SAAS,CAAC;AAAA,EAChB,MAAM,iBAAiB,CAAC;AAAA,EACxB,MAAM,oBAAoB,CAAC;AAAA,EAC3B,MAAM,sBAAsB,CAAC;AAAA,EAC7B,YAAY,MAAM,cAAc,UAAU,CAAC,MAAM,QAAQ;AAAA,IACvD,IAAI,QAAQ,aAAa,CAAC,QAAQ,UAAU,GAAG;AAAA,MAC7C;AAAA,IACF;AAAA,IACA,IAAI,OAAO,GAAG,QAAQ;AAAA,IACtB,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI,gBAAgB;AAAA,IACpB,IAAI,cAAc;AAAA,IAClB,IAAI,gBAAgB,YAAY,GAAG;AAAA,MACjC,OAAO,UAAU;AAAA,MACjB,QAAQ,eAAe;AAAA,OACtB,EAAE,MAAM,OAAO,IAAI,iBAAiB,YAAY;AAAA,IACnD,EAAO,SAAI,OAAO,iBAAiB,YAAY,iBAAiB,WAAW;AAAA,MACzE,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO,CAAC,MAAM,KAAK,QAAQ;AAAA,QACzB,MAAM,SAAS,MAAM,IAAI,QAAQ,OAAO,MAAM,MAAM,CAAC,IAAI;AAAA,QACzD,cAAc,MAAM,KAAK,MAAM;AAAA;AAAA,MAEjC,SAAS,CAAC,MAAM,QAAQ;AAAA,QACtB,MAAM,SAAS,gBAAgB,MAAM,GAAG;AAAA,QACxC,OAAO;AAAA;AAAA,IAEX,EAAO,SAAI,OAAO,iBAAiB,YAAY,iBAAiB,SAAS;AAAA,MACvE,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO,CAAC,MAAM,KAAK,QAAQ;AAAA,QACzB,MAAM,SAAS,MAAM,IAAI,QAAQ,OAAO,GAAG,CAAC,IAAI;AAAA,QAChD,cAAc,MAAM,KAAK,MAAM;AAAA;AAAA,MAEjC,SAAS,CAAC,MAAM,QAAQ;AAAA,QACtB,MAAM,SAAS,gBAAgB,MAAM,GAAG;AAAA,QACxC,OAAO;AAAA;AAAA,MAET,gBAAgB;AAAA,IAClB,EAAO,SAAI,OAAO,YAAY,GAAG;AAAA,MAC/B,MAAM,OAAO,aAAa;AAAA,MAC1B,OAAO,UAAU;AAAA,MACjB,QAAQ,eAAe;AAAA,MACvB,QAAQ,MAAM,aAAa,iBAAiB,IAAI;AAAA,MAChD,OAAO,CAAC,MAAM,KAAK,QAAQ;AAAA,QACzB,MAAM,MAAM,aAAa,GAAG,GAAG;AAAA,QAC/B,SAAS,MAAM,KAAK,GAAG;AAAA;AAAA,MAEzB,SAAS,CAAC,MAAM,QAAQ;AAAA,QACtB,MAAM,MAAM,YAAY,MAAM,MAAM,GAAG;AAAA,QACvC,OAAO,aAAa,KAAK,GAAG;AAAA;AAAA,IAEhC,EAAO,SAAI,SAAS,YAAY,GAAG;AAAA,MACjC,IAAI,QAAQ,cAAc,MAAM;AAAA,QAC9B,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,OAAO,CAAC,MAAM,KAAK,KAAK,KAAK,aAAa;AAAA,UACxC,IAAI,CAAC,KAAK;AAAA,YACR,cAAc,MAAM,KAAK,IAAI;AAAA,YAC7B;AAAA,UACF;AAAA,UACA,MAAM,YAAY,aAAa,KAAK,KAAK,QAAQ;AAAA,UACjD,cAAc,MAAM,KAAK,IAAI,SAAS,CAAC;AAAA;AAAA,QAEzC,SAAS,CAAC,MAAM,QAAQ;AAAA,UACtB,MAAM,IAAI,MAAM,qBAAqB;AAAA;AAAA,MAEzC,EAAO;AAAA,QACL,OAAO,aAAa;AAAA,QACpB,QAAQ,aAAa;AAAA,QACrB,OAAO,CAAC,MAAM,KAAK,KAAK,KAAK,aAAa;AAAA,UACxC,MAAM,YAAY,aAAa,KAAK,KAAK,QAAQ;AAAA,UACjD,MAAM,aAAa,IAAI,WAAW,SAAS;AAAA,UAC3C,MAAM,QAAQ,IAAI,WAAW,KAAK,MAAM;AAAA,UACxC,MAAM,IAAI,YAAY,GAAG;AAAA;AAAA,QAE3B,SAAS,CAAC,MAAM,QAAQ;AAAA,UACtB,MAAM,QAAQ,KAAK,OAAO,MAAM,KAAK,MAAM,IAAI;AAAA,UAC/C,OAAO,aAAa,OAAO,KAAK;AAAA;AAAA;AAAA,IAGtC,EAAO,SAAI,mBAAmB,YAAY,GAAG;AAAA,MAC3C,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO,CAAC,MAAM,KAAK,UAAU;AAAA,QAC3B,MAAM,WAAW,OAAO,OAAO;AAAA,QAC/B,IAAI,aAAa,WAAW;AAAA,UAC1B,QAAQ,KAAK,UAAU,qFAAqF,KAAK;AAAA,UACjH,cAAc,MAAM,KAAK,IAAI;AAAA,QAC/B,EAAO;AAAA,UACL,cAAc,MAAM,KAAK,QAAQ;AAAA;AAAA;AAAA,MAGrC,SAAS,CAAC,MAAM,QAAQ;AAAA,QACtB,OAAO,gBAAgB,MAAM,GAAG;AAAA;AAAA,IAEpC,EAAO,SAAI,MAAM,QAAQ,YAAY,KAAK,aAAa,WAAW,KAAK,aAAa,OAAO,WAAW;AAAA,MACpG,OAAO,OAAO;AAAA,MACd,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,IAAI;AAAA,MACJ,IAAI,OAAO,GAAG,GAAG;AAAA,QACf,mBAAmB,UAAU,IAAI;AAAA,QACjC,OAAO,CAAC,MAAM,KAAK,KAAK,QAAQ;AAAA,UAC9B,IAAI,CAAC,OAAO,IAAI,WAAW,GAAG;AAAA,YAC5B,cAAc,MAAM,KAAK,IAAI;AAAA,YAC7B;AAAA,UACF;AAAA,UACA,MAAM,SAAS,IAAI,YAAY,IAAI,SAAS,gBAAgB;AAAA,UAC5D,MAAM,aAAa,IAAI,SAAS,MAAM;AAAA,UACtC,SAAS,IAAI,EAAE,IAAI,IAAI,QAAQ,KAAK;AAAA,YAClC,MAAM,MAAM,IAAI,GAAG,IAAI,EAAE;AAAA,YACzB,WAAW,UAAU,IAAI,kBAAkB,KAAK,IAAI;AAAA,UACtD;AAAA,UACA,cAAc,MAAM,KAAK,IAAI,MAAM,CAAC;AAAA;AAAA,QAEtC,SAAS;AAAA,QACT,gBAAgB;AAAA,QAChB,cAAc;AAAA,MAChB,EAAO,SAAI,SAAS,GAAG,GAAG;AAAA,QACxB,mBAAmB,IAAI;AAAA,QACvB,OAAO,CAAC,MAAM,KAAK,KAAK,KAAK,aAAa;AAAA,UACxC,IAAI,CAAC,OAAO,IAAI,WAAW,GAAG;AAAA,YAC5B,cAAc,MAAM,KAAK,IAAI;AAAA,YAC7B;AAAA,UACF;AAAA,UACA,MAAM,SAAS,IAAI,YAAY,IAAI,SAAS,gBAAgB;AAAA,UAC5D,MAAM,aAAa,IAAI,SAAS,MAAM;AAAA,UACtC,SAAS,IAAI,EAAE,IAAI,IAAI,QAAQ,KAAK;AAAA,YAClC,IAAI,SAAS,IAAI,IAAI,YAAY,IAAI,kBAAkB,QAAQ;AAAA,UACjE;AAAA,UACA,cAAc,MAAM,KAAK,IAAI,MAAM,CAAC;AAAA;AAAA,QAEtC,SAAS,CAAC,MAAM,QAAQ;AAAA,UACtB,MAAM,IAAI,MAAM,qBAAqB;AAAA;AAAA,MAEzC,EAAO,SAAI,gBAAgB,GAAG,GAAG;AAAA,QAC/B,mBAAmB,UAAU;AAAA,QAC7B,QAAQ,MAAM,kBAAkB,iBAAiB,GAAG;AAAA,QACpD,OAAO,CAAC,MAAM,KAAK,QAAQ;AAAA,UACzB,IAAI,CAAC,OAAO,IAAI,WAAW,GAAG;AAAA,YAC5B,cAAc,MAAM,KAAK,IAAI;AAAA,YAC7B;AAAA,UACF;AAAA,UACA,MAAM,SAAS,IAAI,YAAY,IAAI,SAAS,gBAAgB;AAAA,UAC5D,MAAM,aAAa,IAAI,SAAS,MAAM;AAAA,UACtC,SAAS,IAAI,EAAE,IAAI,IAAI,QAAQ,KAAK;AAAA,YAClC,cAAc,YAAY,IAAI,kBAAkB,IAAI,EAAE;AAAA,UACxD;AAAA,UACA,cAAc,MAAM,KAAK,IAAI,MAAM,CAAC;AAAA;AAAA,QAEtC,SAAS;AAAA,QACT,gBAAgB;AAAA,QAChB,cAAc;AAAA,MAChB,EAAO,SAAI,mBAAmB,GAAG,GAAG;AAAA,QAClC,mBAAmB;AAAA,QACnB,OAAO,CAAC,MAAM,KAAK,QAAQ;AAAA,UACzB,IAAI,CAAC,OAAO,IAAI,WAAW,GAAG;AAAA,YAC5B,cAAc,MAAM,KAAK,IAAI;AAAA,YAC7B;AAAA,UACF;AAAA,UACA,MAAM,aAAa,gBAAgB,GAAG;AAAA,UACtC,cAAc,MAAM,KAAK,IAAI,WAAW,MAAM,CAAC;AAAA;AAAA,QAEjD,SAAS,MAAM;AAAA,UACb,MAAM,IAAI,MAAM,qBAAqB;AAAA;AAAA,MAEzC,EAAO;AAAA,QACL,MAAM,IAAI,MAAM,sCAAsC,SAAS,KAAK,UAAU,GAAG,GAAG;AAAA;AAAA,MAEtF,MAAM,gBAAgB,OAAO,OAAO,cAAc,EAAE,KAAK,CAAC,MAAM,EAAE,aAAa,IAAI;AAAA,MACnF,IAAI,iBAAiB,gBAAgB,cAAc,IAAI,GAAG;AAAA,QACxD,QAAQ,MAAM,eAAe,iBAAiB,cAAc,IAAI;AAAA,QAChE,oBAAoB,QAAQ;AAAA,UAC1B,aAAa;AAAA,UACb,aAAa;AAAA,UACb,cAAc,cAAc;AAAA,UAC5B;AAAA,QACF;AAAA,MACF;AAAA,IACF,EAAO;AAAA,MACL,MAAM,IAAI,MAAM,8BAA8B,SAAS,KAAK,UAAU,YAAY,GAAG;AAAA;AAAA,IAEvF,SAAS,YAAY,QAAQ,KAAK;AAAA,IAClC,IAAI,QAAQ,iBAAiB;AAAA,MAC3B,MAAM,iBAAiB;AAAA,MACvB,SAAS,CAAC,MAAM,QAAQ,QAAQ,gBAAgB,eAAe,MAAM,GAAG,CAAC;AAAA,IAC3E;AAAA,IACA,IAAI,QAAQ,eAAe;AAAA,MACzB,MAAM,eAAe;AAAA,MACrB,OAAO,CAAC,MAAM,KAAK,KAAK,KAAK,gBAAgB,aAAa,MAAM,KAAK,QAAQ,cAAc,GAAG,GAAG,KAAK,WAAW;AAAA,IACnH;AAAA,IACA,IAAI,QAAQ,UAAU;AAAA,MACpB,MAAM,eAAe;AAAA,MACrB,IAAI,SAAS,YAAY,KAAK,CAAC,QAAQ,WAAW;AAAA,QAChD,OAAO,CAAC,MAAM,KAAK,KAAK,KAAK,gBAAgB;AAAA,UAC3C,IAAI,OAAO,QAAQ,mBAAmB;AAAA,YACpC,aAAa,MAAM,KAAK,KAAK,KAAK,WAAW;AAAA,UAC/C;AAAA;AAAA,MAEJ,EAAO;AAAA,QACL,OAAO,CAAC,MAAM,KAAK,KAAK,KAAK,gBAAgB,aAAa,MAAM,KAAK,OAAO,GAAG,KAAK,WAAW;AAAA;AAAA,IAEnG;AAAA,IACA,IAAI,QAAQ,UAAU;AAAA,MACpB,MAAM,eAAe;AAAA,MACrB,OAAO,CAAC,MAAM,KAAK,KAAK,KAAK,gBAAgB;AAAA,QAC3C,MAAM,cAAc,IAAI,QAAQ;AAAA,QAChC,IAAI,SAAS;AAAA,QACb,IAAI,aAAa;AAAA,UACf,IAAI,OAAO,gBAAgB,UAAU;AAAA,YACnC,SAAS,OAAO,WAAW,WAAW;AAAA,UACxC,EAAO;AAAA,YACL,SAAS,YAAY;AAAA;AAAA,QAEzB;AAAA,QACA,OAAO,aAAa,MAAM,KAAK,QAAQ,KAAK,WAAW;AAAA;AAAA,IAE3D;AAAA,IACA,IAAI;AAAA,IACJ,IAAI,QAAQ,UAAU;AAAA,MACpB,oBAAoB,MAAM,QAAQ,QAAQ,QAAQ,IAAI,QAAQ,WAAW,CAAC,QAAQ,QAAQ;AAAA,IAC5F;AAAA,IACA,MAAM,cAAc;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAU;AAAA,MACV,UAAU,CAAC,CAAC,QAAQ,YAAY,CAAC,CAAC,QAAQ,YAAY,QAAQ,YAAY;AAAA,MAC1E,SAAS,QAAQ;AAAA,MACjB;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,UAAU,QAAQ;AAAA,IACpB;AAAA,IACA,OAAO,KAAK,WAAW;AAAA,IACvB,IAAI,QAAQ,UAAU;AAAA,MACpB,eAAe,QAAQ,YAAY;AAAA,IACrC;AAAA,IACA,IAAI,eAAe;AAAA,MACjB,MAAM,MAAM,OAAO,iBAAiB,YAAY,iBAAiB,UAAU,UAAU;AAAA,MACrF,IAAI,CAAC;AAAA,QACH,WAAW,0DAA0D,MAAM;AAAA,MAC7E,kBAAkB,KAAK,EAAE,WAAW,aAAa,IAAI,CAAC;AAAA,IACxD;AAAA,IACA,UAAU;AAAA,IACV,WAAW,KAAK,IAAI,UAAU,KAAK;AAAA,EACrC;AAAA,EACA,aAAa,WAAW,SAAS,mBAAmB;AAAA,IAClD,MAAM,gBAAgB,eAAe,UAAU;AAAA,IAC/C,IAAI,CAAC,eAAe;AAAA,MAClB,IAAI,QAAQ,SAAS;AAAA,QACnB;AAAA,MACF;AAAA,MACA,MAAM,IAAI,MAAM,4CAA4C,UAAU,MAAM;AAAA,IAC9E;AAAA,IACA,IAAI,QAAQ,SAAS;AAAA,MACnB,UAAU,SAAS,CAAC,MAAM,QAAQ;AAAA,QAChC,MAAM,aAAa,gBAAgB,MAAM,GAAG;AAAA,QAC5C,MAAM,SAAS,cAAc,OAAO,MAAM,cAAc,MAAM;AAAA,QAC9D,IAAI,eAAe,GAAG;AAAA,UACpB,OAAO;AAAA,QACT;AAAA,QACA,MAAM,aAAa,OAAO,WAAW,WAAW,OAAO,MAAM,IAAI;AAAA,QACjE,IAAI,eAAe,GAAG;AAAA,UACpB,OAAO;AAAA,QACT;AAAA,QACA,MAAM,SAAS,cAAc,YAAY,GAAG,UAAU;AAAA,QACtD,OAAO,QAAQ,OAAO,MAAM;AAAA;AAAA,IAEhC,EAAO,SAAI,gBAAgB,GAAG,GAAG;AAAA,MAC/B,MAAM,WAAW,UAAU;AAAA,MAC3B,QAAQ,QAAQ,oBAAoB,iBAAiB,GAAG;AAAA,MACxD,UAAU,SAAS,CAAC,MAAM,QAAQ;AAAA,QAChC,MAAM,SAAS,CAAC;AAAA,QAChB,MAAM,SAAS,cAAc,OAAO,MAAM,cAAc,MAAM;AAAA,QAC9D,MAAM,aAAa,gBAAgB,MAAM,GAAG;AAAA,QAC5C,IAAI,eAAe,MAAM,SAAS,GAAG;AAAA,UACnC,MAAM,IAAI,MAAM,eAAe,UAAU,oCAAoC,SAAS;AAAA,QACxF;AAAA,QACA,IAAI,eAAe,MAAM,WAAW,GAAG;AAAA,UACrC,OAAO,CAAC;AAAA,QACV;AAAA,QACA,MAAM,SAAS,cAAc,YAAY,GAAG,SAAS,QAAQ;AAAA,QAC7D,MAAM,aAAa,IAAI,SAAS,MAAM;AAAA,QACtC,SAAS,IAAI,EAAE,IAAI,QAAQ,KAAK;AAAA,UAC9B,OAAO,KAAK,gBAAgB,YAAY,IAAI,QAAQ,CAAC;AAAA,QACvD;AAAA,QACA,OAAO;AAAA;AAAA,IAEX,EAAO;AAAA,MACL,MAAM,WAAW,IAAI,SAAS,QAAQ,IAAI;AAAA,MAC1C,UAAU,SAAS,CAAC,MAAM,QAAQ;AAAA,QAChC,MAAM,SAAS,CAAC;AAAA,QAChB,MAAM,SAAS,cAAc,OAAO,MAAM,cAAc,MAAM;AAAA,QAC9D,MAAM,aAAa,gBAAgB,MAAM,GAAG;AAAA,QAC5C,IAAI,eAAe,MAAM,SAAS,GAAG;AAAA,UACnC,MAAM,IAAI,MAAM,eAAe,UAAU,oCAAoC,SAAS;AAAA,QACxF;AAAA,QACA,IAAI,eAAe,MAAM,WAAW,GAAG;AAAA,UACrC,OAAO,CAAC;AAAA,QACV;AAAA,QACA,MAAM,SAAS,cAAc,YAAY,GAAG,SAAS,QAAQ;AAAA,QAC7D,MAAM,aAAa,IAAI,SAAS,MAAM;AAAA,QACtC,SAAS,IAAI,EAAE,IAAI,QAAQ,KAAK;AAAA,UAC9B,OAAO,KAAK,IAAI,KAAK,WAAW,UAAU,IAAI,UAAU,IAAI,CAAC,CAAC;AAAA,QAChE;AAAA,QACA,OAAO;AAAA;AAAA;AAAA,EAGb;AAAA,EACA,MAAM,YAAY,YAAY,QAAQ,QAAQ;AAAA,EAC9C,MAAM,cAAc,OAAO,IAAI,CAAC,OAAO;AAAA,IACrC,MAAM,EAAE;AAAA,IACR,QAAQ,EAAE;AAAA,IACV,MAAM,EAAE;AAAA,IACR,OAAO,EAAE;AAAA,IACT,UAAU,EAAE;AAAA,IACZ,MAAM,EAAE;AAAA,IACR,UAAU,EAAE;AAAA,EACd,EAAE;AAAA,EACF,MAAM,eAAe,IAAI,IAAI,YAAY,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAAA,EAChE,MAAM,cAAc,IAAI,IAAI,OAAO,QAAQ,mBAAmB,CAAC;AAAA,EAC/D,OAAO;AAAA,IACL,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,OAAO;AAAA,IACP,aAAa,CAAC,CAAC,kBAAkB;AAAA,IACjC;AAAA,IACA;AAAA,IACA,IAAI,CAAC,KAAK,SAAS;AAAA,MACjB,MAAM,MAAM,IAAI,YAAY,SAAS;AAAA,MACrC,MAAM,OAAO,IAAI,SAAS,GAAG;AAAA,MAC7B,IAAI,YAAY;AAAA,MAChB,IAAI,kBAAkB,UAAU;AAAA,QAC9B,YAAY,iBAAiB,SAAS,GAAG;AAAA,MAC3C;AAAA,MACA,WAAW,SAAS,QAAQ;AAAA,QAC1B,MAAM,QAAQ,UAAU,MAAM,SAAS,MAAM;AAAA,QAC7C,IAAI,CAAC,MAAM,YAAY,UAAU,WAAW;AAAA,UAC1C,WAAW,+BAA+B,MAAM,wDAAwD;AAAA,QAC1G;AAAA,QACA,IAAI,MAAM,UAAU;AAAA,UAClB,WAAW,cAAc,MAAM,UAAU;AAAA,YACvC,WAAW,OAAO,MAAM,MAAM;AAAA,cAC5B,OAAO,SAAS;AAAA,cAChB,OAAO;AAAA,YACT,CAAC;AAAA,UACH;AAAA,QACF;AAAA,QACA,MAAM,KAAK,MAAM,MAAM,QAAQ,OAAO,WAAW,OAAO;AAAA,MAC1D;AAAA,MACA,OAAO,KAAK;AAAA;AAAA,IAEd,QAAQ,CAAC,KAAK,MAAM,SAAS,SAAS;AAAA,MACpC,IAAI,YAAY;AAAA,MAChB,IAAI,kBAAkB,UAAU;AAAA,QAC9B,YAAY,iBAAiB,SAAS,GAAG;AAAA,MAC3C;AAAA,MACA,WAAW,SAAS,QAAQ;AAAA,QAC1B,MAAM,QAAQ,UAAU,MAAM,SAAS,MAAM;AAAA,QAC7C,IAAI,CAAC,MAAM,YAAY,UAAU,WAAW;AAAA,UAC1C,QAAQ,KAAK,kDAAkD,MAAM,mBAAmB,UAAU,MAAM,kCAAkC;AAAA,QAC5I;AAAA,QACA,IAAI,MAAM,UAAU;AAAA,UAClB,WAAW,cAAc,MAAM,UAAU;AAAA,YACvC,WAAW,OAAO,MAAM,MAAM;AAAA,cAC5B,OAAO,SAAS;AAAA,cAChB,OAAO;AAAA,YACT,CAAC;AAAA,UACH;AAAA,QACF;AAAA,QACA,MAAM,KAAK,MAAM,UAAU,MAAM,QAAQ,OAAO,WAAW,OAAO;AAAA,MACpE;AAAA;AAAA,IAEF,MAAM,CAAC,KAAK;AAAA,MACV,IAAI,IAAI,aAAa,WAAW;AAAA,QAC9B,WAAW,gBAAgB,IAAI,4CAA4C,2BAA2B;AAAA,MACxG;AAAA,MACA,MAAM,OAAO,IAAI,SAAS,GAAG;AAAA,MAC7B,MAAM,SAAS,kBAAkB,UAAU,KAAK,iBAAiB,QAAQ,IAAI,CAAC;AAAA,MAC9E,WAAW,SAAS,QAAQ;AAAA,QAC1B,IAAI,CAAC,MAAM,QAAQ;AAAA,UACjB;AAAA,QACF;AAAA,QACA,IAAI;AAAA,UACF,OAAO,MAAM,QAAQ,MAAM,OAAO,MAAM,MAAM,MAAM;AAAA,UACpD,OAAO,GAAG;AAAA,UACV,QAAQ,MAAM,0BAA0B,MAAM,mBAAmB,MAAM,WAAW,CAAC;AAAA,UACnF,MAAM;AAAA;AAAA,MAEV;AAAA,MACA,IAAI,kBAAkB,aAAa;AAAA,QACjC,OAAO,iBAAiB,YAAY,MAAM;AAAA,MAC5C;AAAA,MACA,OAAO;AAAA;AAAA,IAET,QAAQ,CAAC,SAAS,SAAS;AAAA,MACzB,IAAI,QAAQ,WAAW,GAAG;AAAA,QACxB,OAAO,IAAI,YAAY,CAAC;AAAA,MAC1B;AAAA,MACA,MAAM,SAAS,IAAI,YAAY,YAAY,QAAQ,MAAM;AAAA,MACzD,MAAM,OAAO,IAAI,SAAS,MAAM;AAAA,MAChC,SAAS,IAAI,EAAE,IAAI,QAAQ,QAAQ,KAAK;AAAA,QACtC,IAAI,YAAY,QAAQ;AAAA,QACxB,IAAI,kBAAkB,UAAU;AAAA,UAC9B,YAAY,iBAAiB,SAAS,QAAQ,EAAE;AAAA,QAClD;AAAA,QACA,WAAW,SAAS,QAAQ;AAAA,UAC1B,MAAM,QAAQ,UAAU,MAAM,SAAS,MAAM;AAAA,UAC7C,IAAI,CAAC,MAAM,YAAY,UAAU,WAAW;AAAA,YAC1C,WAAW,+BAA+B,MAAM,kBAAkB,oDAAoD;AAAA,UACxH;AAAA,UACA,IAAI,MAAM,UAAU;AAAA,YAClB,WAAW,cAAc,MAAM,UAAU;AAAA,cACvC,WAAW,OAAO,MAAM,MAAM;AAAA,gBAC5B,OAAO,SAAS;AAAA,gBAChB,OAAO;AAAA,cACT,CAAC;AAAA,YACH;AAAA,UACF;AAAA,UACA,MAAM,KAAK,MAAM,IAAI,YAAY,MAAM,QAAQ,OAAO,WAAW,OAAO;AAAA,QAC1E;AAAA,MACF;AAAA,MACA,OAAO;AAAA;AAAA,IAET,UAAU,CAAC,KAAK,OAAO;AAAA,MACrB,IAAI,UAAU,GAAG;AAAA,QACf,OAAO,CAAC;AAAA,MACV;AAAA,MACA,MAAM,eAAe,YAAY;AAAA,MACjC,IAAI,IAAI,aAAa,cAAc;AAAA,QACjC,WAAW,gBAAgB,IAAI,8CAA8C,+BAA+B,gBAAgB;AAAA,MAC9H;AAAA,MACA,MAAM,OAAO,IAAI,SAAS,GAAG;AAAA,MAC7B,MAAM,UAAU,CAAC;AAAA,MACjB,SAAS,IAAI,EAAE,IAAI,OAAO,KAAK;AAAA,QAC7B,MAAM,UAAU,IAAI;AAAA,QACpB,MAAM,SAAS,kBAAkB,UAAU,KAAK,iBAAiB,QAAQ,IAAI,CAAC;AAAA,QAC9E,WAAW,SAAS,QAAQ;AAAA,UAC1B,IAAI,CAAC,MAAM,QAAQ;AAAA,YACjB;AAAA,UACF;AAAA,UACA,IAAI;AAAA,YACF,OAAO,MAAM,QAAQ,MAAM,OAAO,MAAM,UAAU,MAAM,MAAM;AAAA,YAC9D,OAAO,GAAG;AAAA,YACV,QAAQ,MAAM,0BAA0B,MAAM,kBAAkB,aAAa,UAAU,MAAM,WAAW,CAAC;AAAA,YACzG,MAAM;AAAA;AAAA,QAEV;AAAA,QACA,IAAI,kBAAkB,aAAa;AAAA,UACjC,QAAQ,KAAK,iBAAiB,YAAY,MAAM,CAAC;AAAA,QACnD,EAAO;AAAA,UACL,QAAQ,KAAK,MAAM;AAAA;AAAA,MAEvB;AAAA,MACA,OAAO;AAAA;AAAA,IAET,QAAQ,GAAG;AAAA,MACT,OAAO;AAAA;AAAA,EAEX;AAAA;",
8
+ "debugId": "E25F830A52E9C00D64756E2164756E21",
9
+ "names": []
10
+ }
package/index.d.ts ADDED
@@ -0,0 +1,23 @@
1
+ export * from "./Renderable.js";
2
+ export * from "./types.js";
3
+ export * from "./utils.js";
4
+ export * from "./buffer.js";
5
+ export * from "./text-buffer.js";
6
+ export * from "./text-buffer-view.js";
7
+ export * from "./edit-buffer.js";
8
+ export * from "./editor-view.js";
9
+ export * from "./syntax-style.js";
10
+ export * from "./post/effects.js";
11
+ export * from "./post/filters.js";
12
+ export * from "./post/matrices.js";
13
+ export * from "./animation/Timeline.js";
14
+ export * from "./lib/index.js";
15
+ export * from "./renderer.js";
16
+ export * from "./plugins/types.js";
17
+ export * from "./plugins/registry.js";
18
+ export * from "./plugins/core-slot.js";
19
+ export * from "./NativeSpanFeed.js";
20
+ export * from "./renderables/index.js";
21
+ export * from "./zig.js";
22
+ export * from "./console.js";
23
+ export * as Yoga from "yoga-layout";
package/index.js ADDED
@@ -0,0 +1,480 @@
1
+ // @bun
2
+ import {
3
+ ACHROMATOPSIA_MATRIX,
4
+ ASCIIFont,
5
+ ASCIIFontRenderable,
6
+ ArrowRenderable,
7
+ BloomEffect,
8
+ Box,
9
+ BoxRenderable,
10
+ CRTRollingBarEffect,
11
+ CloudsEffect,
12
+ Code,
13
+ CodeRenderable,
14
+ DEUTERANOPIA_COMP_MATRIX,
15
+ DEUTERANOPIA_SIM_MATRIX,
16
+ DiffRenderable,
17
+ DistortionEffect,
18
+ FlamesEffect,
19
+ FrameBuffer,
20
+ FrameBufferRenderable,
21
+ GRAYSCALE_MATRIX,
22
+ GREENSCALE_MATRIX,
23
+ Generic,
24
+ INVERT_MATRIX,
25
+ Input,
26
+ InputRenderable,
27
+ InputRenderableEvents,
28
+ LineNumberRenderable,
29
+ MarkdownRenderable,
30
+ NativeSpanFeed,
31
+ PROTANOPIA_COMP_MATRIX,
32
+ PROTANOPIA_SIM_MATRIX,
33
+ RainbowTextEffect,
34
+ RootTextNodeRenderable,
35
+ SEPIA_MATRIX,
36
+ SOLARIZATION_MATRIX,
37
+ SYNTHWAVE_MATRIX,
38
+ ScrollBarRenderable,
39
+ ScrollBox,
40
+ ScrollBoxRenderable,
41
+ Select,
42
+ SelectRenderable,
43
+ SelectRenderableEvents,
44
+ SliderRenderable,
45
+ SlotRegistry,
46
+ SlotRenderable,
47
+ SyntaxStyle,
48
+ TECHNICOLOR_MATRIX,
49
+ TRITANOPIA_COMP_MATRIX,
50
+ TRITANOPIA_SIM_MATRIX,
51
+ TabSelect,
52
+ TabSelectRenderable,
53
+ TabSelectRenderableEvents,
54
+ Text,
55
+ TextBufferRenderable,
56
+ TextBufferView,
57
+ TextNodeRenderable,
58
+ TextRenderable,
59
+ TextTableRenderable,
60
+ TextareaRenderable,
61
+ TimeToFirstDrawRenderable,
62
+ Timeline,
63
+ VRenderable,
64
+ VignetteEffect,
65
+ applyAsciiArt,
66
+ applyBrightness,
67
+ applyChromaticAberration,
68
+ applyGain,
69
+ applyInvert,
70
+ applyNoise,
71
+ applySaturation,
72
+ applyScanlines,
73
+ convertThemeToStyles,
74
+ createCoreSlotRegistry,
75
+ createSlotRegistry,
76
+ createTimeline,
77
+ engine,
78
+ isTextNodeRenderable,
79
+ registerCorePlugin,
80
+ resolveCoreSlot,
81
+ vstyles
82
+ } from "./index-hjna9d1h.js";
83
+ import {
84
+ ASCIIFontSelectionHelper,
85
+ ATTRIBUTE_BASE_BITS,
86
+ ATTRIBUTE_BASE_MASK,
87
+ BaseRenderable,
88
+ BorderCharArrays,
89
+ BorderChars,
90
+ CliRenderEvents,
91
+ CliRenderer,
92
+ ConsolePosition,
93
+ DataPathsManager,
94
+ DebugOverlayCorner,
95
+ EditBuffer,
96
+ EditBufferRenderable,
97
+ EditBufferRenderableEvents,
98
+ EditorView,
99
+ ExtmarksController,
100
+ InternalKeyHandler,
101
+ KeyEvent,
102
+ KeyHandler,
103
+ LayoutEvents,
104
+ LinearScrollAccel,
105
+ LogLevel,
106
+ MacOSScrollAccel,
107
+ MouseButton,
108
+ MouseEvent,
109
+ MouseParser,
110
+ OptimizedBuffer,
111
+ PasteEvent,
112
+ RGBA,
113
+ Renderable,
114
+ RenderableEvents,
115
+ RendererControlState,
116
+ RootRenderable,
117
+ Selection,
118
+ StdinParser,
119
+ StyledText,
120
+ SystemClock,
121
+ TargetChannel,
122
+ TerminalConsole,
123
+ TerminalPalette,
124
+ TextAttributes,
125
+ TextBuffer,
126
+ TreeSitterClient,
127
+ addDefaultParsers,
128
+ attributesWithLink,
129
+ basenameToFiletype,
130
+ bg,
131
+ bgBlack,
132
+ bgBlue,
133
+ bgCyan,
134
+ bgGreen,
135
+ bgMagenta,
136
+ bgRed,
137
+ bgWhite,
138
+ bgYellow,
139
+ black,
140
+ blink,
141
+ blue,
142
+ bold,
143
+ borderCharsToArray,
144
+ brightBlack,
145
+ brightBlue,
146
+ brightCyan,
147
+ brightGreen,
148
+ brightMagenta,
149
+ brightRed,
150
+ brightWhite,
151
+ brightYellow,
152
+ buildKittyKeyboardFlags,
153
+ capture,
154
+ clearEnvCache,
155
+ convertGlobalToLocalSelection,
156
+ coordinateToCharacterIndex,
157
+ createCliRenderer,
158
+ createExtmarksController,
159
+ createTerminalPalette,
160
+ createTextAttributes,
161
+ cyan,
162
+ decodePasteBytes,
163
+ delegate,
164
+ detectLinks,
165
+ dim,
166
+ env,
167
+ envRegistry,
168
+ exports_src,
169
+ extToFiletype,
170
+ extensionToFiletype,
171
+ fg,
172
+ fonts,
173
+ generateEnvColored,
174
+ generateEnvMarkdown,
175
+ getBaseAttributes,
176
+ getBorderFromSides,
177
+ getBorderSides,
178
+ getCharacterPositions,
179
+ getDataPaths,
180
+ getLinkId,
181
+ getTreeSitterClient,
182
+ green,
183
+ h,
184
+ hastToStyledText,
185
+ hexToRgb,
186
+ hsvToRgb,
187
+ infoStringToFiletype,
188
+ instantiate,
189
+ isEditBufferRenderable,
190
+ isRenderable,
191
+ isStyledText,
192
+ isVNode,
193
+ isValidBorderStyle,
194
+ italic,
195
+ link,
196
+ magenta,
197
+ main,
198
+ maybeMakeRenderable,
199
+ measureText,
200
+ nonAlphanumericKeys,
201
+ parseAlign,
202
+ parseAlignItems,
203
+ parseBorderStyle,
204
+ parseBoxSizing,
205
+ parseColor,
206
+ parseDimension,
207
+ parseDirection,
208
+ parseDisplay,
209
+ parseEdge,
210
+ parseFlexDirection,
211
+ parseGutter,
212
+ parseJustify,
213
+ parseKeypress,
214
+ parseLogLevel,
215
+ parseMeasureMode,
216
+ parseOverflow,
217
+ parsePositionType,
218
+ parseUnit,
219
+ parseWrap,
220
+ pathToFiletype,
221
+ red,
222
+ registerEnvVar,
223
+ renderFontToFrameBuffer,
224
+ resolveRenderLib,
225
+ reverse,
226
+ rgbToHex,
227
+ setRenderLibPath,
228
+ strikethrough,
229
+ stringToStyledText,
230
+ stripAnsiSequences,
231
+ t,
232
+ treeSitterToStyledText,
233
+ treeSitterToTextChunks,
234
+ underline,
235
+ visualizeRenderableTree,
236
+ white,
237
+ wrapWithDelegates,
238
+ yellow
239
+ } from "./index-jjp8mmgk.js";
240
+ import"./index-cbvybypy.js";
241
+ import"./index-re3ntm60.js";
242
+ export {
243
+ yellow,
244
+ wrapWithDelegates,
245
+ white,
246
+ vstyles,
247
+ visualizeRenderableTree,
248
+ main as updateAssets,
249
+ underline,
250
+ treeSitterToTextChunks,
251
+ treeSitterToStyledText,
252
+ t,
253
+ stripAnsiSequences,
254
+ stringToStyledText,
255
+ strikethrough,
256
+ setRenderLibPath,
257
+ rgbToHex,
258
+ reverse,
259
+ resolveRenderLib,
260
+ resolveCoreSlot,
261
+ renderFontToFrameBuffer,
262
+ registerEnvVar,
263
+ registerCorePlugin,
264
+ red,
265
+ pathToFiletype,
266
+ parseWrap,
267
+ parseUnit,
268
+ parsePositionType,
269
+ parseOverflow,
270
+ parseMeasureMode,
271
+ parseLogLevel,
272
+ parseKeypress,
273
+ parseJustify,
274
+ parseGutter,
275
+ parseFlexDirection,
276
+ parseEdge,
277
+ parseDisplay,
278
+ parseDirection,
279
+ parseDimension,
280
+ parseColor,
281
+ parseBoxSizing,
282
+ parseBorderStyle,
283
+ parseAlignItems,
284
+ parseAlign,
285
+ nonAlphanumericKeys,
286
+ measureText,
287
+ maybeMakeRenderable,
288
+ magenta,
289
+ link,
290
+ italic,
291
+ isValidBorderStyle,
292
+ isVNode,
293
+ isTextNodeRenderable,
294
+ isStyledText,
295
+ isRenderable,
296
+ isEditBufferRenderable,
297
+ instantiate,
298
+ infoStringToFiletype,
299
+ hsvToRgb,
300
+ hexToRgb,
301
+ hastToStyledText,
302
+ h,
303
+ green,
304
+ getTreeSitterClient,
305
+ getLinkId,
306
+ getDataPaths,
307
+ getCharacterPositions,
308
+ getBorderSides,
309
+ getBorderFromSides,
310
+ getBaseAttributes,
311
+ generateEnvMarkdown,
312
+ generateEnvColored,
313
+ fonts,
314
+ fg,
315
+ extensionToFiletype,
316
+ extToFiletype,
317
+ envRegistry,
318
+ env,
319
+ engine,
320
+ dim,
321
+ detectLinks,
322
+ delegate,
323
+ decodePasteBytes,
324
+ cyan,
325
+ createTimeline,
326
+ createTextAttributes,
327
+ createTerminalPalette,
328
+ createSlotRegistry,
329
+ createExtmarksController,
330
+ createCoreSlotRegistry,
331
+ createCliRenderer,
332
+ coordinateToCharacterIndex,
333
+ convertThemeToStyles,
334
+ convertGlobalToLocalSelection,
335
+ clearEnvCache,
336
+ capture,
337
+ buildKittyKeyboardFlags,
338
+ brightYellow,
339
+ brightWhite,
340
+ brightRed,
341
+ brightMagenta,
342
+ brightGreen,
343
+ brightCyan,
344
+ brightBlue,
345
+ brightBlack,
346
+ borderCharsToArray,
347
+ bold,
348
+ blue,
349
+ blink,
350
+ black,
351
+ bgYellow,
352
+ bgWhite,
353
+ bgRed,
354
+ bgMagenta,
355
+ bgGreen,
356
+ bgCyan,
357
+ bgBlue,
358
+ bgBlack,
359
+ bg,
360
+ basenameToFiletype,
361
+ attributesWithLink,
362
+ applyScanlines,
363
+ applySaturation,
364
+ applyNoise,
365
+ applyInvert,
366
+ applyGain,
367
+ applyChromaticAberration,
368
+ applyBrightness,
369
+ applyAsciiArt,
370
+ addDefaultParsers,
371
+ exports_src as Yoga,
372
+ VignetteEffect,
373
+ VRenderable,
374
+ TreeSitterClient,
375
+ Timeline,
376
+ TimeToFirstDrawRenderable,
377
+ TextareaRenderable,
378
+ TextTableRenderable,
379
+ TextRenderable,
380
+ TextNodeRenderable,
381
+ TextBufferView,
382
+ TextBufferRenderable,
383
+ TextBuffer,
384
+ TextAttributes,
385
+ Text,
386
+ TerminalPalette,
387
+ TerminalConsole,
388
+ TargetChannel,
389
+ TabSelectRenderableEvents,
390
+ TabSelectRenderable,
391
+ TabSelect,
392
+ TRITANOPIA_SIM_MATRIX,
393
+ TRITANOPIA_COMP_MATRIX,
394
+ TECHNICOLOR_MATRIX,
395
+ SystemClock,
396
+ SyntaxStyle,
397
+ StyledText,
398
+ StdinParser,
399
+ SlotRenderable,
400
+ SlotRegistry,
401
+ SliderRenderable,
402
+ Selection,
403
+ SelectRenderableEvents,
404
+ SelectRenderable,
405
+ Select,
406
+ ScrollBoxRenderable,
407
+ ScrollBox,
408
+ ScrollBarRenderable,
409
+ SYNTHWAVE_MATRIX,
410
+ SOLARIZATION_MATRIX,
411
+ SEPIA_MATRIX,
412
+ RootTextNodeRenderable,
413
+ RootRenderable,
414
+ RendererControlState,
415
+ RenderableEvents,
416
+ Renderable,
417
+ RainbowTextEffect,
418
+ RGBA,
419
+ PasteEvent,
420
+ PROTANOPIA_SIM_MATRIX,
421
+ PROTANOPIA_COMP_MATRIX,
422
+ OptimizedBuffer,
423
+ NativeSpanFeed,
424
+ MouseParser,
425
+ MouseEvent,
426
+ MouseButton,
427
+ MarkdownRenderable,
428
+ MacOSScrollAccel,
429
+ LogLevel,
430
+ LinearScrollAccel,
431
+ LineNumberRenderable,
432
+ LayoutEvents,
433
+ KeyHandler,
434
+ KeyEvent,
435
+ InternalKeyHandler,
436
+ InputRenderableEvents,
437
+ InputRenderable,
438
+ Input,
439
+ INVERT_MATRIX,
440
+ Generic,
441
+ GREENSCALE_MATRIX,
442
+ GRAYSCALE_MATRIX,
443
+ FrameBufferRenderable,
444
+ FrameBuffer,
445
+ FlamesEffect,
446
+ ExtmarksController,
447
+ EditorView,
448
+ EditBufferRenderableEvents,
449
+ EditBufferRenderable,
450
+ EditBuffer,
451
+ DistortionEffect,
452
+ DiffRenderable,
453
+ DebugOverlayCorner,
454
+ DataPathsManager,
455
+ DEUTERANOPIA_SIM_MATRIX,
456
+ DEUTERANOPIA_COMP_MATRIX,
457
+ ConsolePosition,
458
+ CodeRenderable,
459
+ Code,
460
+ CloudsEffect,
461
+ CliRenderer,
462
+ CliRenderEvents,
463
+ CRTRollingBarEffect,
464
+ BoxRenderable,
465
+ Box,
466
+ BorderChars,
467
+ BorderCharArrays,
468
+ BloomEffect,
469
+ BaseRenderable,
470
+ ArrowRenderable,
471
+ ATTRIBUTE_BASE_MASK,
472
+ ATTRIBUTE_BASE_BITS,
473
+ ASCIIFontSelectionHelper,
474
+ ASCIIFontRenderable,
475
+ ASCIIFont,
476
+ ACHROMATOPSIA_MATRIX
477
+ };
478
+
479
+ //# debugId=AE4840697A2ED81E64756E2164756E21
480
+ //# sourceMappingURL=index.js.map
package/index.js.map ADDED
@@ -0,0 +1,9 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [
5
+ ],
6
+ "mappings": "",
7
+ "debugId": "AE4840697A2ED81E64756E2164756E21",
8
+ "names": []
9
+ }
@@ -0,0 +1,61 @@
1
+ import { EventEmitter } from "events";
2
+ import { type KeyEventType, type ParsedKey } from "./parse.keypress.js";
3
+ import type { PasteMetadata } from "./paste.js";
4
+ export declare class KeyEvent implements ParsedKey {
5
+ name: string;
6
+ ctrl: boolean;
7
+ meta: boolean;
8
+ shift: boolean;
9
+ option: boolean;
10
+ sequence: string;
11
+ number: boolean;
12
+ raw: string;
13
+ eventType: KeyEventType;
14
+ source: "raw" | "kitty";
15
+ code?: string;
16
+ super?: boolean;
17
+ hyper?: boolean;
18
+ capsLock?: boolean;
19
+ numLock?: boolean;
20
+ baseCode?: number;
21
+ repeated?: boolean;
22
+ private _defaultPrevented;
23
+ private _propagationStopped;
24
+ constructor(key: ParsedKey);
25
+ get defaultPrevented(): boolean;
26
+ get propagationStopped(): boolean;
27
+ preventDefault(): void;
28
+ stopPropagation(): void;
29
+ }
30
+ export declare class PasteEvent {
31
+ type: "paste";
32
+ bytes: Uint8Array;
33
+ metadata?: PasteMetadata;
34
+ private _defaultPrevented;
35
+ private _propagationStopped;
36
+ constructor(bytes: Uint8Array, metadata?: PasteMetadata);
37
+ get defaultPrevented(): boolean;
38
+ get propagationStopped(): boolean;
39
+ preventDefault(): void;
40
+ stopPropagation(): void;
41
+ }
42
+ export type KeyHandlerEventMap = {
43
+ keypress: [KeyEvent];
44
+ keyrelease: [KeyEvent];
45
+ paste: [PasteEvent];
46
+ };
47
+ export declare class KeyHandler extends EventEmitter<KeyHandlerEventMap> {
48
+ processParsedKey(parsedKey: ParsedKey): boolean;
49
+ processPaste(bytes: Uint8Array, metadata?: PasteMetadata): void;
50
+ }
51
+ /**
52
+ * This class is used internally by the renderer to ensure global handlers
53
+ * can preventDefault before renderable handlers process events.
54
+ */
55
+ export declare class InternalKeyHandler extends KeyHandler {
56
+ private renderableHandlers;
57
+ emit<K extends keyof KeyHandlerEventMap>(event: K, ...args: KeyHandlerEventMap[K]): boolean;
58
+ private emitWithPriority;
59
+ onInternal<K extends keyof KeyHandlerEventMap>(event: K, handler: (...args: KeyHandlerEventMap[K]) => void): void;
60
+ offInternal<K extends keyof KeyHandlerEventMap>(event: K, handler: (...args: KeyHandlerEventMap[K]) => void): void;
61
+ }
package/lib/RGBA.d.ts ADDED
@@ -0,0 +1,26 @@
1
+ export declare class RGBA {
2
+ static readonly BYTE_LENGTH = 16;
3
+ buffer: Float32Array;
4
+ constructor(buffer: Float32Array);
5
+ static fromArray(array: Float32Array): RGBA;
6
+ static fromValues(r: number, g: number, b: number, a?: number): RGBA;
7
+ static fromInts(r: number, g: number, b: number, a?: number): RGBA;
8
+ static fromHex(hex: string): RGBA;
9
+ toInts(): [number, number, number, number];
10
+ get r(): number;
11
+ set r(value: number);
12
+ get g(): number;
13
+ set g(value: number);
14
+ get b(): number;
15
+ set b(value: number);
16
+ get a(): number;
17
+ set a(value: number);
18
+ map<R>(fn: (value: number) => R): R[];
19
+ toString(): string;
20
+ equals(other?: RGBA): boolean;
21
+ }
22
+ export type ColorInput = string | RGBA;
23
+ export declare function hexToRgb(hex: string): RGBA;
24
+ export declare function rgbToHex(rgb: RGBA): string;
25
+ export declare function hsvToRgb(h: number, s: number, v: number): RGBA;
26
+ export declare function parseColor(color: ColorInput): RGBA;