@xincli/opentui-core 0.4.6 → 0.4.7

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 (619) hide show
  1. package/LICENSE +21 -0
  2. package/NativeSpanFeed.d.ts +52 -0
  3. package/README.md +0 -0
  4. package/Renderable.d.ts +346 -0
  5. package/animation/Timeline.d.ts +126 -0
  6. package/ansi.d.ts +17 -0
  7. package/audio.d.ts +89 -0
  8. package/buffer.d.ts +113 -0
  9. package/console.d.ts +146 -0
  10. package/edit-buffer.d.ts +97 -0
  11. package/editor-view.d.ts +72 -0
  12. package/index-m1y9e40w.js +10045 -0
  13. package/index-m1y9e40w.js.map +32 -0
  14. package/index-sqk4ajdf.js +16121 -0
  15. package/index-sqk4ajdf.js.map +58 -0
  16. package/index.d.ts +24 -0
  17. package/index.js +11709 -0
  18. package/index.js.map +35 -0
  19. package/lib/KeyHandler.d.ts +61 -0
  20. package/lib/RGBA.d.ts +42 -0
  21. package/lib/ascii.font.d.ts +508 -0
  22. package/lib/border.d.ts +51 -0
  23. package/lib/bunfs.d.ts +7 -0
  24. package/lib/clipboard.d.ts +15 -0
  25. package/lib/clock.d.ts +15 -0
  26. package/lib/data-paths.d.ts +26 -0
  27. package/lib/debounce.d.ts +42 -0
  28. package/lib/detect-links.d.ts +6 -0
  29. package/lib/env.d.ts +42 -0
  30. package/lib/extmarks-history.d.ts +17 -0
  31. package/lib/extmarks.d.ts +90 -0
  32. package/lib/hast-styled-text.d.ts +17 -0
  33. package/lib/index.d.ts +22 -0
  34. package/lib/keybinding.internal.d.ts +33 -0
  35. package/lib/objects-in-viewport.d.ts +24 -0
  36. package/lib/output.capture.d.ts +24 -0
  37. package/lib/parse.keypress-kitty.d.ts +3 -0
  38. package/lib/parse.keypress.d.ts +27 -0
  39. package/lib/parse.mouse.d.ts +30 -0
  40. package/lib/paste.d.ts +7 -0
  41. package/lib/queue.d.ts +15 -0
  42. package/lib/render-geometry.d.ts +8 -0
  43. package/lib/renderable.validations.d.ts +12 -0
  44. package/lib/scroll-acceleration.d.ts +43 -0
  45. package/lib/selection.d.ts +64 -0
  46. package/lib/singleton.d.ts +8 -0
  47. package/lib/stdin-parser.d.ts +90 -0
  48. package/lib/styled-text.d.ts +63 -0
  49. package/lib/terminal-capability-detection.d.ts +32 -0
  50. package/lib/terminal-palette.d.ts +65 -0
  51. package/lib/tree-sitter/assets/update.d.ts +12 -0
  52. package/lib/tree-sitter/client.d.ts +65 -0
  53. package/lib/tree-sitter/default-parsers.d.ts +2 -0
  54. package/lib/tree-sitter/download-utils.d.ts +21 -0
  55. package/lib/tree-sitter/index.d.ts +7 -0
  56. package/lib/tree-sitter/parser.worker.d.ts +1 -0
  57. package/lib/tree-sitter/parsers-config.d.ts +53 -0
  58. package/lib/tree-sitter/resolve-ft.d.ts +5 -0
  59. package/lib/tree-sitter/types.d.ts +185 -0
  60. package/lib/tree-sitter/update-assets.d.ts +3 -0
  61. package/lib/tree-sitter/update-assets.js +379 -0
  62. package/lib/tree-sitter/update-assets.js.map +12 -0
  63. package/lib/tree-sitter-styled-text.d.ts +16 -0
  64. package/lib/validate-dir-name.d.ts +1 -0
  65. package/lib/yoga.options.d.ts +32 -0
  66. package/native-event-worker-repro.worker.d.ts +1 -0
  67. package/package.json +52 -74
  68. package/parser.worker.js +1399 -0
  69. package/parser.worker.js.map +20 -0
  70. package/platform/ffi.d.ts +129 -0
  71. package/platform/runtime.d.ts +14 -0
  72. package/platform/test.d.ts +12 -0
  73. package/platform/worker.d.ts +26 -0
  74. package/platform/worker.node-test.d.ts +1 -0
  75. package/plugins/core-slot.d.ts +72 -0
  76. package/plugins/registry.d.ts +42 -0
  77. package/plugins/types.d.ts +34 -0
  78. package/post/effects.d.ts +147 -0
  79. package/post/filters.d.ts +65 -0
  80. package/post/matrices.d.ts +20 -0
  81. package/renderables/ASCIIFont.d.ts +52 -0
  82. package/renderables/Box.d.ts +85 -0
  83. package/renderables/Code.d.ts +97 -0
  84. package/renderables/Diff.d.ts +147 -0
  85. package/renderables/EditBufferRenderable.d.ts +238 -0
  86. package/renderables/FrameBuffer.d.ts +16 -0
  87. package/renderables/Input.d.ts +72 -0
  88. package/renderables/LineNumberRenderable.d.ts +78 -0
  89. package/renderables/Markdown.d.ts +255 -0
  90. package/renderables/ScrollBar.d.ts +77 -0
  91. package/renderables/ScrollBox.d.ts +128 -0
  92. package/renderables/Select.d.ts +122 -0
  93. package/renderables/Slider.d.ts +47 -0
  94. package/renderables/TabSelect.d.ts +98 -0
  95. package/renderables/Text.d.ts +36 -0
  96. package/renderables/TextBufferRenderable.d.ts +107 -0
  97. package/renderables/TextNode.d.ts +92 -0
  98. package/renderables/TextTable.d.ts +154 -0
  99. package/renderables/Textarea.d.ts +65 -0
  100. package/renderables/TimeToFirstDraw.d.ts +24 -0
  101. package/renderables/__tests__/renderable-test-utils.d.ts +12 -0
  102. package/renderables/composition/VRenderable.d.ts +16 -0
  103. package/renderables/composition/constructs.d.ts +35 -0
  104. package/renderables/composition/vnode.d.ts +46 -0
  105. package/renderables/index.d.ts +23 -0
  106. package/renderables/markdown-parser.d.ts +11 -0
  107. package/renderer-theme-mode.d.ts +29 -0
  108. package/renderer.d.ts +601 -0
  109. package/runtime-plugin-support-configure.d.ts +4 -0
  110. package/runtime-plugin-support-configure.js +36 -0
  111. package/runtime-plugin-support-configure.js.map +1 -0
  112. package/runtime-plugin-support-configure.node.js +15 -0
  113. package/runtime-plugin-support.d.ts +3 -0
  114. package/runtime-plugin-support.js +5 -0
  115. package/runtime-plugin-support.js.map +1 -0
  116. package/runtime-plugin-support.node.js +15 -0
  117. package/runtime-plugin.d.ts +16 -0
  118. package/runtime-plugin.js +473 -0
  119. package/runtime-plugin.js.map +1 -0
  120. package/runtime-plugin.node.js +15 -0
  121. package/syntax-style.d.ts +61 -0
  122. package/testing/bun-test-node.d.ts +87 -0
  123. package/testing/manual-clock.d.ts +17 -0
  124. package/testing/mock-keys.d.ts +81 -0
  125. package/testing/mock-mouse.d.ts +38 -0
  126. package/testing/mock-tree-sitter-client.d.ts +27 -0
  127. package/testing/spy.d.ts +7 -0
  128. package/testing/terminal-capabilities.d.ts +7 -0
  129. package/testing/test-recorder.d.ts +61 -0
  130. package/testing/test-renderer.d.ts +54 -0
  131. package/testing/test-streams.d.ts +12 -0
  132. package/testing.d.ts +8 -0
  133. package/testing.js +1004 -0
  134. package/testing.js.map +18 -0
  135. package/tests/yoga-upstream/tools/MeasureCounter.d.ts +16 -0
  136. package/tests/yoga-upstream/tools/utils.d.ts +11 -0
  137. package/text-buffer-view.d.ts +42 -0
  138. package/text-buffer.d.ts +66 -0
  139. package/types.d.ts +175 -0
  140. package/utils.d.ts +14 -0
  141. package/yoga.d.ts +437 -0
  142. package/yoga.js +193 -0
  143. package/yoga.js.map +9 -0
  144. package/zig-structs.d.ts +256 -0
  145. package/zig.d.ts +496 -0
  146. package/dev/keypress-debug-renderer.ts +0 -148
  147. package/dev/keypress-debug.ts +0 -43
  148. package/dev/print-env-vars.ts +0 -32
  149. package/dev/test-tmux-graphics-334.sh +0 -68
  150. package/dev/test-tmux-theme-queries.sh +0 -151
  151. package/dev/thai-debug-test.ts +0 -68
  152. package/dev/theme-mode.ts +0 -290
  153. package/docs/development.md +0 -144
  154. package/prebuilt/aarch64-android/libopentui.so +0 -0
  155. package/scripts/build-android.ts +0 -226
  156. package/scripts/build-native-termux.sh +0 -525
  157. package/scripts/build.ts +0 -530
  158. package/scripts/dist-test.ts +0 -312
  159. package/scripts/package-prebuilt.ts +0 -110
  160. package/scripts/publish.ts +0 -60
  161. package/scripts/test-node-hook.mjs +0 -16
  162. package/scripts/test-node.ts +0 -241
  163. package/scripts/vendor-deps.sh +0 -73
  164. package/src/NativeSpanFeed.ts +0 -375
  165. package/src/Renderable.ts +0 -1878
  166. package/src/__snapshots__/buffer.test.ts.snap +0 -28
  167. package/src/animation/Timeline.test.ts +0 -2709
  168. package/src/animation/Timeline.ts +0 -598
  169. package/src/ansi.ts +0 -22
  170. package/src/audio.ts +0 -479
  171. package/src/benchmark/attenuation-benchmark.ts +0 -81
  172. package/src/benchmark/audio-playback-benchmark.ts +0 -344
  173. package/src/benchmark/box-draw-benchmark.ts +0 -1042
  174. package/src/benchmark/colormatrix-benchmark.ts +0 -123
  175. package/src/benchmark/gain-benchmark.ts +0 -80
  176. package/src/benchmark/latest-all-bench-run.json +0 -707
  177. package/src/benchmark/latest-async-bench-run.json +0 -336
  178. package/src/benchmark/latest-default-bench-run.json +0 -657
  179. package/src/benchmark/latest-large-bench-run.json +0 -707
  180. package/src/benchmark/latest-quick-bench-run.json +0 -207
  181. package/src/benchmark/layout-benchmark.ts +0 -2547
  182. package/src/benchmark/markdown-benchmark.ts +0 -1796
  183. package/src/benchmark/native-span-feed-async-benchmark.ts +0 -355
  184. package/src/benchmark/native-span-feed-benchmark.md +0 -56
  185. package/src/benchmark/native-span-feed-benchmark.ts +0 -596
  186. package/src/benchmark/native-span-feed-compare.ts +0 -280
  187. package/src/benchmark/render-traversal-benchmark.ts +0 -928
  188. package/src/benchmark/text-buffer-render-benchmark.ts +0 -874
  189. package/src/benchmark/text-table-benchmark.ts +0 -948
  190. package/src/buffer.test.ts +0 -292
  191. package/src/buffer.ts +0 -564
  192. package/src/console.test.ts +0 -629
  193. package/src/console.ts +0 -1253
  194. package/src/edit-buffer.test.ts +0 -1852
  195. package/src/edit-buffer.ts +0 -417
  196. package/src/editor-view.test.ts +0 -1056
  197. package/src/editor-view.ts +0 -290
  198. package/src/index.ts +0 -25
  199. package/src/lib/KeyHandler.integration.test.ts +0 -292
  200. package/src/lib/KeyHandler.stopPropagation.test.ts +0 -289
  201. package/src/lib/KeyHandler.test.ts +0 -662
  202. package/src/lib/KeyHandler.ts +0 -222
  203. package/src/lib/RGBA.test.ts +0 -60
  204. package/src/lib/RGBA.ts +0 -343
  205. package/src/lib/ascii.font.ts +0 -330
  206. package/src/lib/border.test.ts +0 -83
  207. package/src/lib/border.ts +0 -170
  208. package/src/lib/bunfs.test.ts +0 -27
  209. package/src/lib/bunfs.ts +0 -18
  210. package/src/lib/clipboard.test.ts +0 -63
  211. package/src/lib/clipboard.ts +0 -41
  212. package/src/lib/clock.ts +0 -35
  213. package/src/lib/data-paths.test.ts +0 -133
  214. package/src/lib/data-paths.ts +0 -109
  215. package/src/lib/debounce.ts +0 -106
  216. package/src/lib/detect-links.test.ts +0 -98
  217. package/src/lib/detect-links.ts +0 -56
  218. package/src/lib/env.test.ts +0 -228
  219. package/src/lib/env.ts +0 -209
  220. package/src/lib/extmarks-history.ts +0 -51
  221. package/src/lib/extmarks-multiwidth.test.ts +0 -324
  222. package/src/lib/extmarks.test.ts +0 -3547
  223. package/src/lib/extmarks.ts +0 -861
  224. package/src/lib/fonts/block.json +0 -405
  225. package/src/lib/fonts/grid.json +0 -265
  226. package/src/lib/fonts/huge.json +0 -741
  227. package/src/lib/fonts/pallet.json +0 -314
  228. package/src/lib/fonts/shade.json +0 -591
  229. package/src/lib/fonts/slick.json +0 -321
  230. package/src/lib/fonts/tiny.json +0 -69
  231. package/src/lib/hast-styled-text.ts +0 -59
  232. package/src/lib/index.ts +0 -22
  233. package/src/lib/keybinding.internal.test.ts +0 -342
  234. package/src/lib/keybinding.internal.ts +0 -182
  235. package/src/lib/objects-in-viewport.test.ts +0 -789
  236. package/src/lib/objects-in-viewport.ts +0 -153
  237. package/src/lib/output.capture.ts +0 -58
  238. package/src/lib/parse.keypress-kitty.protocol.test.ts +0 -347
  239. package/src/lib/parse.keypress-kitty.test.ts +0 -712
  240. package/src/lib/parse.keypress-kitty.ts +0 -470
  241. package/src/lib/parse.keypress.test.ts +0 -2020
  242. package/src/lib/parse.keypress.ts +0 -480
  243. package/src/lib/parse.mouse.test.ts +0 -552
  244. package/src/lib/parse.mouse.ts +0 -232
  245. package/src/lib/paste.ts +0 -18
  246. package/src/lib/queue.ts +0 -65
  247. package/src/lib/render-geometry.ts +0 -36
  248. package/src/lib/renderable.validations.test.ts +0 -87
  249. package/src/lib/renderable.validations.ts +0 -83
  250. package/src/lib/scroll-acceleration.ts +0 -98
  251. package/src/lib/selection.ts +0 -261
  252. package/src/lib/singleton.ts +0 -34
  253. package/src/lib/stdin-parser.test.ts +0 -2439
  254. package/src/lib/stdin-parser.ts +0 -2007
  255. package/src/lib/styled-text.ts +0 -178
  256. package/src/lib/terminal-capability-detection.test.ts +0 -226
  257. package/src/lib/terminal-capability-detection.ts +0 -98
  258. package/src/lib/terminal-palette.test.ts +0 -954
  259. package/src/lib/terminal-palette.ts +0 -441
  260. package/src/lib/tree-sitter/assets/README.md +0 -119
  261. package/src/lib/tree-sitter/assets/update.ts +0 -360
  262. package/src/lib/tree-sitter/assets.d.ts +0 -9
  263. package/src/lib/tree-sitter/cache.test.ts +0 -291
  264. package/src/lib/tree-sitter/client.test.ts +0 -1434
  265. package/src/lib/tree-sitter/client.ts +0 -847
  266. package/src/lib/tree-sitter/default-parsers.ts +0 -133
  267. package/src/lib/tree-sitter/download-utils.ts +0 -148
  268. package/src/lib/tree-sitter/index.ts +0 -75
  269. package/src/lib/tree-sitter/parser.worker.ts +0 -1098
  270. package/src/lib/tree-sitter/parsers-config.ts +0 -81
  271. package/src/lib/tree-sitter/resolve-ft.test.ts +0 -55
  272. package/src/lib/tree-sitter/resolve-ft.ts +0 -189
  273. package/src/lib/tree-sitter/types.ts +0 -132
  274. package/src/lib/tree-sitter/update-assets.ts +0 -10
  275. package/src/lib/tree-sitter-styled-text.test.ts +0 -1253
  276. package/src/lib/tree-sitter-styled-text.ts +0 -314
  277. package/src/lib/validate-dir-name.ts +0 -55
  278. package/src/lib/yoga.options.test.ts +0 -628
  279. package/src/lib/yoga.options.ts +0 -346
  280. package/src/native-event-worker-repro.test.ts +0 -48
  281. package/src/native-event-worker-repro.worker.ts +0 -9
  282. package/src/native-handle.test.ts +0 -221
  283. package/src/platform/ffi.test.ts +0 -516
  284. package/src/platform/ffi.ts +0 -653
  285. package/src/platform/runtime.test.ts +0 -52
  286. package/src/platform/runtime.ts +0 -121
  287. package/src/platform/test.ts +0 -45
  288. package/src/platform/worker-handler-cleanup.fixture.ts +0 -12
  289. package/src/platform/worker-onmessage-startup.fixture.ts +0 -10
  290. package/src/platform/worker-startup.fixture.ts +0 -9
  291. package/src/platform/worker.node-test.ts +0 -153
  292. package/src/platform/worker.ts +0 -425
  293. package/src/plugins/core-slot.ts +0 -579
  294. package/src/plugins/registry.ts +0 -402
  295. package/src/plugins/types.ts +0 -46
  296. package/src/post/effects.ts +0 -948
  297. package/src/post/filters.ts +0 -512
  298. package/src/post/matrices.ts +0 -288
  299. package/src/renderables/ASCIIFont.ts +0 -219
  300. package/src/renderables/Box.test.ts +0 -474
  301. package/src/renderables/Box.ts +0 -353
  302. package/src/renderables/Code.test.ts +0 -2388
  303. package/src/renderables/Code.ts +0 -555
  304. package/src/renderables/Diff.regression.test.ts +0 -381
  305. package/src/renderables/Diff.test.ts +0 -3212
  306. package/src/renderables/Diff.ts +0 -1278
  307. package/src/renderables/EditBufferRenderable.test.ts +0 -288
  308. package/src/renderables/EditBufferRenderable.ts +0 -1152
  309. package/src/renderables/FrameBuffer.ts +0 -47
  310. package/src/renderables/Input.test.ts +0 -1310
  311. package/src/renderables/Input.ts +0 -273
  312. package/src/renderables/LineNumberRenderable.ts +0 -725
  313. package/src/renderables/Markdown.ts +0 -2144
  314. package/src/renderables/ScrollBar.ts +0 -423
  315. package/src/renderables/ScrollBox.ts +0 -903
  316. package/src/renderables/Select.test.ts +0 -1134
  317. package/src/renderables/Select.ts +0 -535
  318. package/src/renderables/Slider.test.ts +0 -456
  319. package/src/renderables/Slider.ts +0 -342
  320. package/src/renderables/TabSelect.test.ts +0 -238
  321. package/src/renderables/TabSelect.ts +0 -447
  322. package/src/renderables/Text.selection-buffer.test.ts +0 -118
  323. package/src/renderables/Text.test.ts +0 -2662
  324. package/src/renderables/Text.ts +0 -147
  325. package/src/renderables/TextBufferRenderable.ts +0 -504
  326. package/src/renderables/TextNode.test.ts +0 -1137
  327. package/src/renderables/TextNode.ts +0 -379
  328. package/src/renderables/TextTable.test.ts +0 -1411
  329. package/src/renderables/TextTable.ts +0 -1434
  330. package/src/renderables/Textarea.ts +0 -425
  331. package/src/renderables/TimeToFirstDraw.ts +0 -89
  332. package/src/renderables/__snapshots__/Code.test.ts.snap +0 -13
  333. package/src/renderables/__snapshots__/Diff.test.ts.snap +0 -785
  334. package/src/renderables/__snapshots__/Text.test.ts.snap +0 -421
  335. package/src/renderables/__snapshots__/TextTable.test.ts.snap +0 -215
  336. package/src/renderables/__tests__/Code.test.ts +0 -55
  337. package/src/renderables/__tests__/LineNumberRenderable.scrollbox-simple.test.ts +0 -144
  338. package/src/renderables/__tests__/LineNumberRenderable.scrollbox.test.ts +0 -827
  339. package/src/renderables/__tests__/LineNumberRenderable.test.ts +0 -1906
  340. package/src/renderables/__tests__/LineNumberRenderable.wrapping.test.ts +0 -85
  341. package/src/renderables/__tests__/Markdown.code-colors.test.ts +0 -288
  342. package/src/renderables/__tests__/Markdown.test.ts +0 -4175
  343. package/src/renderables/__tests__/MultiRenderable.selection.test.ts +0 -87
  344. package/src/renderables/__tests__/Textarea.buffer.test.ts +0 -683
  345. package/src/renderables/__tests__/Textarea.destroyed-events.test.ts +0 -675
  346. package/src/renderables/__tests__/Textarea.editing.test.ts +0 -2120
  347. package/src/renderables/__tests__/Textarea.error-handling.test.ts +0 -35
  348. package/src/renderables/__tests__/Textarea.events.test.ts +0 -738
  349. package/src/renderables/__tests__/Textarea.highlights.test.ts +0 -590
  350. package/src/renderables/__tests__/Textarea.keybinding.test.ts +0 -3275
  351. package/src/renderables/__tests__/Textarea.paste.test.ts +0 -357
  352. package/src/renderables/__tests__/Textarea.rendering.test.ts +0 -1927
  353. package/src/renderables/__tests__/Textarea.scroll.test.ts +0 -733
  354. package/src/renderables/__tests__/Textarea.selection.test.ts +0 -1589
  355. package/src/renderables/__tests__/Textarea.stress.test.ts +0 -670
  356. package/src/renderables/__tests__/Textarea.undo-redo.test.ts +0 -383
  357. package/src/renderables/__tests__/Textarea.visual-lines.test.ts +0 -310
  358. package/src/renderables/__tests__/__snapshots__/LineNumberRenderable.code.test.ts.snap +0 -221
  359. package/src/renderables/__tests__/__snapshots__/LineNumberRenderable.scrollbox-simple.test.ts.snap +0 -89
  360. package/src/renderables/__tests__/__snapshots__/LineNumberRenderable.scrollbox.test.ts.snap +0 -457
  361. package/src/renderables/__tests__/__snapshots__/LineNumberRenderable.test.ts.snap +0 -158
  362. package/src/renderables/__tests__/__snapshots__/Textarea.rendering.test.ts.snap +0 -387
  363. package/src/renderables/__tests__/markdown-parser.test.ts +0 -241
  364. package/src/renderables/__tests__/renderable-test-utils.ts +0 -60
  365. package/src/renderables/composition/README.md +0 -8
  366. package/src/renderables/composition/VRenderable.ts +0 -32
  367. package/src/renderables/composition/constructs.ts +0 -127
  368. package/src/renderables/composition/vnode.ts +0 -277
  369. package/src/renderables/index.ts +0 -23
  370. package/src/renderables/markdown-parser.ts +0 -79
  371. package/src/renderer-theme-mode.ts +0 -199
  372. package/src/renderer.ts +0 -4975
  373. package/src/runtime-plugin-support-configure.ts +0 -63
  374. package/src/runtime-plugin-support.ts +0 -13
  375. package/src/runtime-plugin.ts +0 -626
  376. package/src/specs/terminal-startup.md +0 -64
  377. package/src/syntax-style.test.ts +0 -841
  378. package/src/syntax-style.ts +0 -274
  379. package/src/testing/README.md +0 -219
  380. package/src/testing/bun-test-node.ts +0 -880
  381. package/src/testing/capture-spans.test.ts +0 -216
  382. package/src/testing/integration.test.ts +0 -276
  383. package/src/testing/manual-clock.ts +0 -117
  384. package/src/testing/mock-keys.test.ts +0 -1378
  385. package/src/testing/mock-keys.ts +0 -457
  386. package/src/testing/mock-mouse.test.ts +0 -218
  387. package/src/testing/mock-mouse.ts +0 -247
  388. package/src/testing/mock-tree-sitter-client.ts +0 -81
  389. package/src/testing/spy.ts +0 -13
  390. package/src/testing/terminal-capabilities.ts +0 -47
  391. package/src/testing/test-recorder.test.ts +0 -410
  392. package/src/testing/test-recorder.ts +0 -133
  393. package/src/testing/test-renderer.ts +0 -375
  394. package/src/testing/test-renderer.wait.test.ts +0 -278
  395. package/src/testing/test-streams.ts +0 -31
  396. package/src/testing.ts +0 -9
  397. package/src/tests/__snapshots__/absolute-positioning.snapshot.test.ts.snap +0 -481
  398. package/src/tests/__snapshots__/renderable.snapshot.test.ts.snap +0 -19
  399. package/src/tests/__snapshots__/scrollbox.test.ts.snap +0 -29
  400. package/src/tests/absolute-positioning.snapshot.test.ts +0 -638
  401. package/src/tests/allocator-stats.test.ts +0 -53
  402. package/src/tests/audio.test.ts +0 -303
  403. package/src/tests/destroy-during-render.test.ts +0 -200
  404. package/src/tests/destroy-on-exit.fixture.ts +0 -36
  405. package/src/tests/destroy-on-exit.test.ts +0 -62
  406. package/src/tests/ffi-borrowed-pointer-callsites.test.ts +0 -153
  407. package/src/tests/hover-cursor.test.ts +0 -98
  408. package/src/tests/native-backed-measurement-lifecycle.test.ts +0 -133
  409. package/src/tests/native-backed-measurement-parity.test.ts +0 -322
  410. package/src/tests/native-span-feed-async.test.ts +0 -173
  411. package/src/tests/native-span-feed-close.test.ts +0 -120
  412. package/src/tests/native-span-feed-coverage.test.ts +0 -227
  413. package/src/tests/native-span-feed-edge-cases.test.ts +0 -384
  414. package/src/tests/native-span-feed-use-after-free.test.ts +0 -45
  415. package/src/tests/opacity.test.ts +0 -123
  416. package/src/tests/renderable.snapshot.test.ts +0 -524
  417. package/src/tests/renderable.test.ts +0 -1851
  418. package/src/tests/renderer.clock.test.ts +0 -270
  419. package/src/tests/renderer.console-startup.test.ts +0 -2151
  420. package/src/tests/renderer.control.test.ts +0 -458
  421. package/src/tests/renderer.core-slot-binding.test.ts +0 -962
  422. package/src/tests/renderer.cursor.test.ts +0 -26
  423. package/src/tests/renderer.custom-stdout.test.ts +0 -1112
  424. package/src/tests/renderer.destroy-during-render.test.ts +0 -147
  425. package/src/tests/renderer.focus-restore.test.ts +0 -257
  426. package/src/tests/renderer.focus.test.ts +0 -329
  427. package/src/tests/renderer.idle.test.ts +0 -219
  428. package/src/tests/renderer.input.test.ts +0 -2615
  429. package/src/tests/renderer.kitty-flags.test.ts +0 -195
  430. package/src/tests/renderer.lifecycle.test.ts +0 -34
  431. package/src/tests/renderer.mouse.test.ts +0 -1315
  432. package/src/tests/renderer.notifications.test.ts +0 -27
  433. package/src/tests/renderer.palette.test.ts +0 -1199
  434. package/src/tests/renderer.remote.test.ts +0 -247
  435. package/src/tests/renderer.render-stats.test.ts +0 -146
  436. package/src/tests/renderer.scrollback-surface.test.ts +0 -474
  437. package/src/tests/renderer.selection.test.ts +0 -138
  438. package/src/tests/renderer.slot-registry.test.ts +0 -684
  439. package/src/tests/renderer.tracker.test.ts +0 -202
  440. package/src/tests/renderer.useMouse.test.ts +0 -83
  441. package/src/tests/runtime-plugin-node-modules-cycle.fixture.ts +0 -76
  442. package/src/tests/runtime-plugin-node-modules-import-like-string.fixture.ts +0 -48
  443. package/src/tests/runtime-plugin-node-modules-mjs.fixture.ts +0 -43
  444. package/src/tests/runtime-plugin-node-modules-no-bare-rewrite.fixture.ts +0 -67
  445. package/src/tests/runtime-plugin-node-modules-package-type-cache.fixture.ts +0 -72
  446. package/src/tests/runtime-plugin-node-modules-runtime-specifier.fixture.ts +0 -44
  447. package/src/tests/runtime-plugin-node-modules-scoped-package-bare-rewrite.fixture.ts +0 -85
  448. package/src/tests/runtime-plugin-path-alias.fixture.ts +0 -43
  449. package/src/tests/runtime-plugin-resolve-roots.fixture.ts +0 -65
  450. package/src/tests/runtime-plugin-support-configure.fixture.ts +0 -31
  451. package/src/tests/runtime-plugin-support-late-addition.fixture.ts +0 -17
  452. package/src/tests/runtime-plugin-support.fixture.ts +0 -11
  453. package/src/tests/runtime-plugin-support.test.ts +0 -54
  454. package/src/tests/runtime-plugin-windows-file-url.fixture.ts +0 -30
  455. package/src/tests/runtime-plugin.fixture.ts +0 -40
  456. package/src/tests/runtime-plugin.test.ts +0 -369
  457. package/src/tests/scrollbox-culling-bug.test.ts +0 -114
  458. package/src/tests/scrollbox-hitgrid-resize.test.ts +0 -136
  459. package/src/tests/scrollbox-hitgrid.test.ts +0 -909
  460. package/src/tests/scrollbox.test.ts +0 -1895
  461. package/src/tests/wrap-resize-perf.test.ts +0 -276
  462. package/src/tests/yoga-api-coverage.test.ts +0 -409
  463. package/src/tests/yoga-callback-stress.test.ts +0 -122
  464. package/src/tests/yoga-ffi.test.ts +0 -117
  465. package/src/tests/yoga-setters.test.ts +0 -921
  466. package/src/tests/yoga-upstream/YGAlignBaselineTest.test.ts +0 -124
  467. package/src/tests/yoga-upstream/YGComputedBorderTest.test.ts +0 -27
  468. package/src/tests/yoga-upstream/YGComputedMarginTest.test.ts +0 -27
  469. package/src/tests/yoga-upstream/YGComputedPaddingTest.test.ts +0 -27
  470. package/src/tests/yoga-upstream/YGDirtiedTest.test.ts +0 -157
  471. package/src/tests/yoga-upstream/YGErrataTest.test.ts +0 -40
  472. package/src/tests/yoga-upstream/YGFlexBasisAuto.test.ts +0 -23
  473. package/src/tests/yoga-upstream/YGHasNewLayout.test.ts +0 -81
  474. package/src/tests/yoga-upstream/YGMeasureCacheTest.test.ts +0 -31
  475. package/src/tests/yoga-upstream/YGMeasureTest.test.ts +0 -70
  476. package/src/tests/yoga-upstream/generated/YGAbsolutePositionTest.test.ts +0 -1864
  477. package/src/tests/yoga-upstream/generated/YGAlignContentTest.test.ts +0 -5829
  478. package/src/tests/yoga-upstream/generated/YGAlignItemsTest.test.ts +0 -2444
  479. package/src/tests/yoga-upstream/generated/YGAlignSelfTest.test.ts +0 -293
  480. package/src/tests/yoga-upstream/generated/YGAndroidNewsFeed.test.ts +0 -315
  481. package/src/tests/yoga-upstream/generated/YGAspectRatioTest.test.ts +0 -231
  482. package/src/tests/yoga-upstream/generated/YGAutoTest.test.ts +0 -347
  483. package/src/tests/yoga-upstream/generated/YGBorderTest.test.ts +0 -256
  484. package/src/tests/yoga-upstream/generated/YGBoxSizingTest.test.ts +0 -2747
  485. package/src/tests/yoga-upstream/generated/YGDimensionTest.test.ts +0 -129
  486. package/src/tests/yoga-upstream/generated/YGDisplayContentsTest.test.ts +0 -109
  487. package/src/tests/yoga-upstream/generated/YGDisplayTest.test.ts +0 -1097
  488. package/src/tests/yoga-upstream/generated/YGFlexDirectionTest.test.ts +0 -4562
  489. package/src/tests/yoga-upstream/generated/YGFlexTest.test.ts +0 -677
  490. package/src/tests/yoga-upstream/generated/YGFlexWrapTest.test.ts +0 -2071
  491. package/src/tests/yoga-upstream/generated/YGGapTest.test.ts +0 -3303
  492. package/src/tests/yoga-upstream/generated/YGIntrinsicSizeTest.test.ts +0 -582
  493. package/src/tests/yoga-upstream/generated/YGJustifyContentTest.test.ts +0 -2150
  494. package/src/tests/yoga-upstream/generated/YGMarginTest.test.ts +0 -1963
  495. package/src/tests/yoga-upstream/generated/YGMinMaxDimensionTest.test.ts +0 -1446
  496. package/src/tests/yoga-upstream/generated/YGPaddingTest.test.ts +0 -354
  497. package/src/tests/yoga-upstream/generated/YGPercentageTest.test.ts +0 -1760
  498. package/src/tests/yoga-upstream/generated/YGRoundingTest.test.ts +0 -1161
  499. package/src/tests/yoga-upstream/generated/YGSizeOverflowTest.test.ts +0 -207
  500. package/src/tests/yoga-upstream/generated/YGStaticPositionTest.test.ts +0 -6338
  501. package/src/tests/yoga-upstream/tools/MeasureCounter.ts +0 -54
  502. package/src/tests/yoga-upstream/tools/utils.ts +0 -81
  503. package/src/text-buffer-view.test.ts +0 -722
  504. package/src/text-buffer-view.ts +0 -193
  505. package/src/text-buffer.test.ts +0 -512
  506. package/src/text-buffer.ts +0 -250
  507. package/src/types.ts +0 -199
  508. package/src/utils.ts +0 -88
  509. package/src/yoga.ts +0 -1146
  510. package/src/zig/ansi.zig +0 -502
  511. package/src/zig/audio.zig +0 -1206
  512. package/src/zig/bench/README.md +0 -50
  513. package/src/zig/bench/buffer-color-blending_bench.zig +0 -350
  514. package/src/zig/bench/buffer-draw-box_bench.zig +0 -786
  515. package/src/zig/bench/buffer-draw-text-buffer_bench.zig +0 -894
  516. package/src/zig/bench/edit-buffer_bench.zig +0 -476
  517. package/src/zig/bench/editor-view_bench.zig +0 -169
  518. package/src/zig/bench/native-span-feed_bench.zig +0 -107
  519. package/src/zig/bench/rope-markers_bench.zig +0 -713
  520. package/src/zig/bench/rope_bench.zig +0 -514
  521. package/src/zig/bench/styled-text_bench.zig +0 -476
  522. package/src/zig/bench/text-buffer-coords_bench.zig +0 -362
  523. package/src/zig/bench/text-buffer-view_bench.zig +0 -459
  524. package/src/zig/bench/text-chunk-graphemes_bench.zig +0 -272
  525. package/src/zig/bench/utf8_bench.zig +0 -799
  526. package/src/zig/bench-utils.zig +0 -431
  527. package/src/zig/bench.zig +0 -223
  528. package/src/zig/buffer-methods.zig +0 -215
  529. package/src/zig/buffer.zig +0 -2515
  530. package/src/zig/build.zig +0 -700
  531. package/src/zig/build.zig.zon +0 -19
  532. package/src/zig/edit-buffer.zig +0 -900
  533. package/src/zig/editor-view.zig +0 -812
  534. package/src/zig/event-bus.zig +0 -28
  535. package/src/zig/event-emitter.zig +0 -65
  536. package/src/zig/file-logger.zig +0 -92
  537. package/src/zig/grapheme.zig +0 -838
  538. package/src/zig/handles.zig +0 -267
  539. package/src/zig/lib.zig +0 -2813
  540. package/src/zig/link.zig +0 -349
  541. package/src/zig/logger.zig +0 -43
  542. package/src/zig/mem-registry.zig +0 -126
  543. package/src/zig/miniaudio_shim.c +0 -21
  544. package/src/zig/native-renderable.zig +0 -112
  545. package/src/zig/native-span-feed-bench-lib.zig +0 -7
  546. package/src/zig/native-span-feed.zig +0 -747
  547. package/src/zig/renderer-output.zig +0 -677
  548. package/src/zig/renderer.zig +0 -2106
  549. package/src/zig/rope.zig +0 -1220
  550. package/src/zig/split-scrollback.zig +0 -88
  551. package/src/zig/syntax-style.zig +0 -174
  552. package/src/zig/terminal.zig +0 -1652
  553. package/src/zig/test.zig +0 -82
  554. package/src/zig/tests/README.md +0 -18
  555. package/src/zig/tests/ansi_test.zig +0 -18
  556. package/src/zig/tests/audio_test.zig +0 -439
  557. package/src/zig/tests/buffer-methods_test.zig +0 -1111
  558. package/src/zig/tests/buffer_test.zig +0 -2926
  559. package/src/zig/tests/edit-buffer-history_test.zig +0 -299
  560. package/src/zig/tests/edit-buffer_test.zig +0 -1688
  561. package/src/zig/tests/editor-view_test.zig +0 -3454
  562. package/src/zig/tests/event-emitter_test.zig +0 -249
  563. package/src/zig/tests/grapheme_test.zig +0 -1329
  564. package/src/zig/tests/handles_test.zig +0 -123
  565. package/src/zig/tests/link_test.zig +0 -220
  566. package/src/zig/tests/mem-registry_test.zig +0 -473
  567. package/src/zig/tests/memory_leak_regression_test.zig +0 -234
  568. package/src/zig/tests/native-renderable_test.zig +0 -16
  569. package/src/zig/tests/native-span-feed_test.zig +0 -1266
  570. package/src/zig/tests/renderer_test.zig +0 -2604
  571. package/src/zig/tests/rope-nested_test.zig +0 -712
  572. package/src/zig/tests/rope_fuzz_test.zig +0 -238
  573. package/src/zig/tests/rope_test.zig +0 -2362
  574. package/src/zig/tests/segment-merge.test.zig +0 -148
  575. package/src/zig/tests/split-scrollback_test.zig +0 -70
  576. package/src/zig/tests/syntax-style_test.zig +0 -558
  577. package/src/zig/tests/terminal_test.zig +0 -1489
  578. package/src/zig/tests/test-renderer.zig +0 -126
  579. package/src/zig/tests/text-buffer-drawing_test.zig +0 -3291
  580. package/src/zig/tests/text-buffer-highlights_test.zig +0 -706
  581. package/src/zig/tests/text-buffer-iterators_test.zig +0 -776
  582. package/src/zig/tests/text-buffer-segment_test.zig +0 -320
  583. package/src/zig/tests/text-buffer-selection_test.zig +0 -1056
  584. package/src/zig/tests/text-buffer-selection_viewport_test.zig +0 -358
  585. package/src/zig/tests/text-buffer-view_test.zig +0 -3672
  586. package/src/zig/tests/text-buffer_test.zig +0 -2191
  587. package/src/zig/tests/unicode-width-map.zon +0 -3909
  588. package/src/zig/tests/utf8_no_zwj_test.zig +0 -260
  589. package/src/zig/tests/utf8_test.zig +0 -4060
  590. package/src/zig/tests/utf8_wcwidth_cursor_test.zig +0 -267
  591. package/src/zig/tests/utf8_wcwidth_test.zig +0 -357
  592. package/src/zig/tests/word-wrap-editing_test.zig +0 -498
  593. package/src/zig/tests/wrap-cache-perf_test.zig +0 -113
  594. package/src/zig/tests/yoga_test.zig +0 -65
  595. package/src/zig/text-buffer-iterators.zig +0 -496
  596. package/src/zig/text-buffer-segment.zig +0 -403
  597. package/src/zig/text-buffer-view.zig +0 -1428
  598. package/src/zig/text-buffer.zig +0 -1272
  599. package/src/zig/utf8.zig +0 -1954
  600. package/src/zig/utils.zig +0 -12
  601. package/src/zig/uucode-stub.zig +0 -76
  602. package/src/zig/vendor/miniaudio/miniaudio.h +0 -93468
  603. package/src/zig/yoga.zig +0 -658
  604. package/src/zig-structs.ts +0 -381
  605. package/src/zig.ts +0 -5260
  606. package/tsconfig.build.json +0 -17
  607. package/tsconfig.json +0 -27
  608. package/tsconfig.node-test.json +0 -138
  609. /package/{src/lib/tree-sitter/assets → assets}/javascript/highlights.scm +0 -0
  610. /package/{src/lib/tree-sitter/assets → assets}/javascript/tree-sitter-javascript.wasm +0 -0
  611. /package/{src/lib/tree-sitter/assets → assets}/markdown/highlights.scm +0 -0
  612. /package/{src/lib/tree-sitter/assets → assets}/markdown/injections.scm +0 -0
  613. /package/{src/lib/tree-sitter/assets → assets}/markdown/tree-sitter-markdown.wasm +0 -0
  614. /package/{src/lib/tree-sitter/assets → assets}/markdown_inline/highlights.scm +0 -0
  615. /package/{src/lib/tree-sitter/assets → assets}/markdown_inline/tree-sitter-markdown_inline.wasm +0 -0
  616. /package/{src/lib/tree-sitter/assets → assets}/typescript/highlights.scm +0 -0
  617. /package/{src/lib/tree-sitter/assets → assets}/typescript/tree-sitter-typescript.wasm +0 -0
  618. /package/{src/lib/tree-sitter/assets → assets}/zig/highlights.scm +0 -0
  619. /package/{src/lib/tree-sitter/assets → assets}/zig/tree-sitter-zig.wasm +0 -0
@@ -1,1161 +0,0 @@
1
- /**
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- * @generated SignedSource<<8119d2703019b25513720167cb4dea4e>>
8
- * generated by gentest/gentest-driver.ts from gentest/fixtures/YGRoundingTest.html
9
- */
10
-
11
- import { instrinsicSizeMeasureFunc } from "../tools/utils.ts"
12
- import Yoga from "../../../yoga.js"
13
- import {
14
- Align,
15
- BoxSizing,
16
- Direction,
17
- Display,
18
- Edge,
19
- Errata,
20
- ExperimentalFeature,
21
- FlexDirection,
22
- Gutter,
23
- Justify,
24
- MeasureMode,
25
- Overflow,
26
- PositionType,
27
- Unit,
28
- Wrap,
29
- } from "../../../yoga.js"
30
-
31
- test("rounding_flex_basis_flex_grow_row_width_of_100", () => {
32
- const config = Yoga.Config.create()
33
- let root
34
-
35
- try {
36
- root = Yoga.Node.create(config)
37
- root.setFlexDirection(FlexDirection.Row)
38
- root.setPositionType(PositionType.Absolute)
39
- root.setWidth(100)
40
- root.setHeight(100)
41
-
42
- const root_child0 = Yoga.Node.create(config)
43
- root_child0.setFlexGrow(1)
44
- root.insertChild(root_child0, 0)
45
-
46
- const root_child1 = Yoga.Node.create(config)
47
- root_child1.setFlexGrow(1)
48
- root.insertChild(root_child1, 1)
49
-
50
- const root_child2 = Yoga.Node.create(config)
51
- root_child2.setFlexGrow(1)
52
- root.insertChild(root_child2, 2)
53
- root.calculateLayout(undefined, undefined, Direction.LTR)
54
-
55
- expect(root.getComputedLeft()).toBe(0)
56
- expect(root.getComputedTop()).toBe(0)
57
- expect(root.getComputedWidth()).toBe(100)
58
- expect(root.getComputedHeight()).toBe(100)
59
-
60
- expect(root_child0.getComputedLeft()).toBe(0)
61
- expect(root_child0.getComputedTop()).toBe(0)
62
- expect(root_child0.getComputedWidth()).toBe(33)
63
- expect(root_child0.getComputedHeight()).toBe(100)
64
-
65
- expect(root_child1.getComputedLeft()).toBe(33)
66
- expect(root_child1.getComputedTop()).toBe(0)
67
- expect(root_child1.getComputedWidth()).toBe(34)
68
- expect(root_child1.getComputedHeight()).toBe(100)
69
-
70
- expect(root_child2.getComputedLeft()).toBe(67)
71
- expect(root_child2.getComputedTop()).toBe(0)
72
- expect(root_child2.getComputedWidth()).toBe(33)
73
- expect(root_child2.getComputedHeight()).toBe(100)
74
-
75
- root.calculateLayout(undefined, undefined, Direction.RTL)
76
-
77
- expect(root.getComputedLeft()).toBe(0)
78
- expect(root.getComputedTop()).toBe(0)
79
- expect(root.getComputedWidth()).toBe(100)
80
- expect(root.getComputedHeight()).toBe(100)
81
-
82
- expect(root_child0.getComputedLeft()).toBe(67)
83
- expect(root_child0.getComputedTop()).toBe(0)
84
- expect(root_child0.getComputedWidth()).toBe(33)
85
- expect(root_child0.getComputedHeight()).toBe(100)
86
-
87
- expect(root_child1.getComputedLeft()).toBe(33)
88
- expect(root_child1.getComputedTop()).toBe(0)
89
- expect(root_child1.getComputedWidth()).toBe(34)
90
- expect(root_child1.getComputedHeight()).toBe(100)
91
-
92
- expect(root_child2.getComputedLeft()).toBe(0)
93
- expect(root_child2.getComputedTop()).toBe(0)
94
- expect(root_child2.getComputedWidth()).toBe(33)
95
- expect(root_child2.getComputedHeight()).toBe(100)
96
- } finally {
97
- if (typeof root !== "undefined") {
98
- root.freeRecursive()
99
- }
100
-
101
- config.free()
102
- }
103
- })
104
- test("rounding_flex_basis_flex_grow_row_prime_number_width", () => {
105
- const config = Yoga.Config.create()
106
- let root
107
-
108
- try {
109
- root = Yoga.Node.create(config)
110
- root.setFlexDirection(FlexDirection.Row)
111
- root.setPositionType(PositionType.Absolute)
112
- root.setWidth(113)
113
- root.setHeight(100)
114
-
115
- const root_child0 = Yoga.Node.create(config)
116
- root_child0.setFlexGrow(1)
117
- root.insertChild(root_child0, 0)
118
-
119
- const root_child1 = Yoga.Node.create(config)
120
- root_child1.setFlexGrow(1)
121
- root.insertChild(root_child1, 1)
122
-
123
- const root_child2 = Yoga.Node.create(config)
124
- root_child2.setFlexGrow(1)
125
- root.insertChild(root_child2, 2)
126
-
127
- const root_child3 = Yoga.Node.create(config)
128
- root_child3.setFlexGrow(1)
129
- root.insertChild(root_child3, 3)
130
-
131
- const root_child4 = Yoga.Node.create(config)
132
- root_child4.setFlexGrow(1)
133
- root.insertChild(root_child4, 4)
134
- root.calculateLayout(undefined, undefined, Direction.LTR)
135
-
136
- expect(root.getComputedLeft()).toBe(0)
137
- expect(root.getComputedTop()).toBe(0)
138
- expect(root.getComputedWidth()).toBe(113)
139
- expect(root.getComputedHeight()).toBe(100)
140
-
141
- expect(root_child0.getComputedLeft()).toBe(0)
142
- expect(root_child0.getComputedTop()).toBe(0)
143
- expect(root_child0.getComputedWidth()).toBe(23)
144
- expect(root_child0.getComputedHeight()).toBe(100)
145
-
146
- expect(root_child1.getComputedLeft()).toBe(23)
147
- expect(root_child1.getComputedTop()).toBe(0)
148
- expect(root_child1.getComputedWidth()).toBe(22)
149
- expect(root_child1.getComputedHeight()).toBe(100)
150
-
151
- expect(root_child2.getComputedLeft()).toBe(45)
152
- expect(root_child2.getComputedTop()).toBe(0)
153
- expect(root_child2.getComputedWidth()).toBe(23)
154
- expect(root_child2.getComputedHeight()).toBe(100)
155
-
156
- expect(root_child3.getComputedLeft()).toBe(68)
157
- expect(root_child3.getComputedTop()).toBe(0)
158
- expect(root_child3.getComputedWidth()).toBe(22)
159
- expect(root_child3.getComputedHeight()).toBe(100)
160
-
161
- expect(root_child4.getComputedLeft()).toBe(90)
162
- expect(root_child4.getComputedTop()).toBe(0)
163
- expect(root_child4.getComputedWidth()).toBe(23)
164
- expect(root_child4.getComputedHeight()).toBe(100)
165
-
166
- root.calculateLayout(undefined, undefined, Direction.RTL)
167
-
168
- expect(root.getComputedLeft()).toBe(0)
169
- expect(root.getComputedTop()).toBe(0)
170
- expect(root.getComputedWidth()).toBe(113)
171
- expect(root.getComputedHeight()).toBe(100)
172
-
173
- expect(root_child0.getComputedLeft()).toBe(90)
174
- expect(root_child0.getComputedTop()).toBe(0)
175
- expect(root_child0.getComputedWidth()).toBe(23)
176
- expect(root_child0.getComputedHeight()).toBe(100)
177
-
178
- expect(root_child1.getComputedLeft()).toBe(68)
179
- expect(root_child1.getComputedTop()).toBe(0)
180
- expect(root_child1.getComputedWidth()).toBe(22)
181
- expect(root_child1.getComputedHeight()).toBe(100)
182
-
183
- expect(root_child2.getComputedLeft()).toBe(45)
184
- expect(root_child2.getComputedTop()).toBe(0)
185
- expect(root_child2.getComputedWidth()).toBe(23)
186
- expect(root_child2.getComputedHeight()).toBe(100)
187
-
188
- expect(root_child3.getComputedLeft()).toBe(23)
189
- expect(root_child3.getComputedTop()).toBe(0)
190
- expect(root_child3.getComputedWidth()).toBe(22)
191
- expect(root_child3.getComputedHeight()).toBe(100)
192
-
193
- expect(root_child4.getComputedLeft()).toBe(0)
194
- expect(root_child4.getComputedTop()).toBe(0)
195
- expect(root_child4.getComputedWidth()).toBe(23)
196
- expect(root_child4.getComputedHeight()).toBe(100)
197
- } finally {
198
- if (typeof root !== "undefined") {
199
- root.freeRecursive()
200
- }
201
-
202
- config.free()
203
- }
204
- })
205
- test("rounding_flex_basis_flex_shrink_row", () => {
206
- const config = Yoga.Config.create()
207
- let root
208
-
209
- try {
210
- root = Yoga.Node.create(config)
211
- root.setFlexDirection(FlexDirection.Row)
212
- root.setPositionType(PositionType.Absolute)
213
- root.setWidth(101)
214
- root.setHeight(100)
215
-
216
- const root_child0 = Yoga.Node.create(config)
217
- root_child0.setFlexShrink(1)
218
- root_child0.setFlexBasis(100)
219
- root.insertChild(root_child0, 0)
220
-
221
- const root_child1 = Yoga.Node.create(config)
222
- root_child1.setFlexBasis(25)
223
- root.insertChild(root_child1, 1)
224
-
225
- const root_child2 = Yoga.Node.create(config)
226
- root_child2.setFlexBasis(25)
227
- root.insertChild(root_child2, 2)
228
- root.calculateLayout(undefined, undefined, Direction.LTR)
229
-
230
- expect(root.getComputedLeft()).toBe(0)
231
- expect(root.getComputedTop()).toBe(0)
232
- expect(root.getComputedWidth()).toBe(101)
233
- expect(root.getComputedHeight()).toBe(100)
234
-
235
- expect(root_child0.getComputedLeft()).toBe(0)
236
- expect(root_child0.getComputedTop()).toBe(0)
237
- expect(root_child0.getComputedWidth()).toBe(51)
238
- expect(root_child0.getComputedHeight()).toBe(100)
239
-
240
- expect(root_child1.getComputedLeft()).toBe(51)
241
- expect(root_child1.getComputedTop()).toBe(0)
242
- expect(root_child1.getComputedWidth()).toBe(25)
243
- expect(root_child1.getComputedHeight()).toBe(100)
244
-
245
- expect(root_child2.getComputedLeft()).toBe(76)
246
- expect(root_child2.getComputedTop()).toBe(0)
247
- expect(root_child2.getComputedWidth()).toBe(25)
248
- expect(root_child2.getComputedHeight()).toBe(100)
249
-
250
- root.calculateLayout(undefined, undefined, Direction.RTL)
251
-
252
- expect(root.getComputedLeft()).toBe(0)
253
- expect(root.getComputedTop()).toBe(0)
254
- expect(root.getComputedWidth()).toBe(101)
255
- expect(root.getComputedHeight()).toBe(100)
256
-
257
- expect(root_child0.getComputedLeft()).toBe(50)
258
- expect(root_child0.getComputedTop()).toBe(0)
259
- expect(root_child0.getComputedWidth()).toBe(51)
260
- expect(root_child0.getComputedHeight()).toBe(100)
261
-
262
- expect(root_child1.getComputedLeft()).toBe(25)
263
- expect(root_child1.getComputedTop()).toBe(0)
264
- expect(root_child1.getComputedWidth()).toBe(25)
265
- expect(root_child1.getComputedHeight()).toBe(100)
266
-
267
- expect(root_child2.getComputedLeft()).toBe(0)
268
- expect(root_child2.getComputedTop()).toBe(0)
269
- expect(root_child2.getComputedWidth()).toBe(25)
270
- expect(root_child2.getComputedHeight()).toBe(100)
271
- } finally {
272
- if (typeof root !== "undefined") {
273
- root.freeRecursive()
274
- }
275
-
276
- config.free()
277
- }
278
- })
279
- test("rounding_flex_basis_overrides_main_size", () => {
280
- const config = Yoga.Config.create()
281
- let root
282
-
283
- try {
284
- root = Yoga.Node.create(config)
285
- root.setPositionType(PositionType.Absolute)
286
- root.setWidth(100)
287
- root.setHeight(113)
288
-
289
- const root_child0 = Yoga.Node.create(config)
290
- root_child0.setFlexGrow(1)
291
- root_child0.setFlexBasis(50)
292
- root_child0.setHeight(20)
293
- root.insertChild(root_child0, 0)
294
-
295
- const root_child1 = Yoga.Node.create(config)
296
- root_child1.setFlexGrow(1)
297
- root_child1.setHeight(10)
298
- root.insertChild(root_child1, 1)
299
-
300
- const root_child2 = Yoga.Node.create(config)
301
- root_child2.setFlexGrow(1)
302
- root_child2.setHeight(10)
303
- root.insertChild(root_child2, 2)
304
- root.calculateLayout(undefined, undefined, Direction.LTR)
305
-
306
- expect(root.getComputedLeft()).toBe(0)
307
- expect(root.getComputedTop()).toBe(0)
308
- expect(root.getComputedWidth()).toBe(100)
309
- expect(root.getComputedHeight()).toBe(113)
310
-
311
- expect(root_child0.getComputedLeft()).toBe(0)
312
- expect(root_child0.getComputedTop()).toBe(0)
313
- expect(root_child0.getComputedWidth()).toBe(100)
314
- expect(root_child0.getComputedHeight()).toBe(64)
315
-
316
- expect(root_child1.getComputedLeft()).toBe(0)
317
- expect(root_child1.getComputedTop()).toBe(64)
318
- expect(root_child1.getComputedWidth()).toBe(100)
319
- expect(root_child1.getComputedHeight()).toBe(25)
320
-
321
- expect(root_child2.getComputedLeft()).toBe(0)
322
- expect(root_child2.getComputedTop()).toBe(89)
323
- expect(root_child2.getComputedWidth()).toBe(100)
324
- expect(root_child2.getComputedHeight()).toBe(24)
325
-
326
- root.calculateLayout(undefined, undefined, Direction.RTL)
327
-
328
- expect(root.getComputedLeft()).toBe(0)
329
- expect(root.getComputedTop()).toBe(0)
330
- expect(root.getComputedWidth()).toBe(100)
331
- expect(root.getComputedHeight()).toBe(113)
332
-
333
- expect(root_child0.getComputedLeft()).toBe(0)
334
- expect(root_child0.getComputedTop()).toBe(0)
335
- expect(root_child0.getComputedWidth()).toBe(100)
336
- expect(root_child0.getComputedHeight()).toBe(64)
337
-
338
- expect(root_child1.getComputedLeft()).toBe(0)
339
- expect(root_child1.getComputedTop()).toBe(64)
340
- expect(root_child1.getComputedWidth()).toBe(100)
341
- expect(root_child1.getComputedHeight()).toBe(25)
342
-
343
- expect(root_child2.getComputedLeft()).toBe(0)
344
- expect(root_child2.getComputedTop()).toBe(89)
345
- expect(root_child2.getComputedWidth()).toBe(100)
346
- expect(root_child2.getComputedHeight()).toBe(24)
347
- } finally {
348
- if (typeof root !== "undefined") {
349
- root.freeRecursive()
350
- }
351
-
352
- config.free()
353
- }
354
- })
355
- test("rounding_total_fractial", () => {
356
- const config = Yoga.Config.create()
357
- let root
358
-
359
- try {
360
- root = Yoga.Node.create(config)
361
- root.setPositionType(PositionType.Absolute)
362
- root.setWidth(87.4)
363
- root.setHeight(113.4)
364
-
365
- const root_child0 = Yoga.Node.create(config)
366
- root_child0.setFlexGrow(0.7)
367
- root_child0.setFlexBasis(50.3)
368
- root_child0.setHeight(20.3)
369
- root.insertChild(root_child0, 0)
370
-
371
- const root_child1 = Yoga.Node.create(config)
372
- root_child1.setFlexGrow(1.6)
373
- root_child1.setHeight(10)
374
- root.insertChild(root_child1, 1)
375
-
376
- const root_child2 = Yoga.Node.create(config)
377
- root_child2.setFlexGrow(1.1)
378
- root_child2.setHeight(10.7)
379
- root.insertChild(root_child2, 2)
380
- root.calculateLayout(undefined, undefined, Direction.LTR)
381
-
382
- expect(root.getComputedLeft()).toBe(0)
383
- expect(root.getComputedTop()).toBe(0)
384
- expect(root.getComputedWidth()).toBe(87)
385
- expect(root.getComputedHeight()).toBe(113)
386
-
387
- expect(root_child0.getComputedLeft()).toBe(0)
388
- expect(root_child0.getComputedTop()).toBe(0)
389
- expect(root_child0.getComputedWidth()).toBe(87)
390
- expect(root_child0.getComputedHeight()).toBe(59)
391
-
392
- expect(root_child1.getComputedLeft()).toBe(0)
393
- expect(root_child1.getComputedTop()).toBe(59)
394
- expect(root_child1.getComputedWidth()).toBe(87)
395
- expect(root_child1.getComputedHeight()).toBe(30)
396
-
397
- expect(root_child2.getComputedLeft()).toBe(0)
398
- expect(root_child2.getComputedTop()).toBe(89)
399
- expect(root_child2.getComputedWidth()).toBe(87)
400
- expect(root_child2.getComputedHeight()).toBe(24)
401
-
402
- root.calculateLayout(undefined, undefined, Direction.RTL)
403
-
404
- expect(root.getComputedLeft()).toBe(0)
405
- expect(root.getComputedTop()).toBe(0)
406
- expect(root.getComputedWidth()).toBe(87)
407
- expect(root.getComputedHeight()).toBe(113)
408
-
409
- expect(root_child0.getComputedLeft()).toBe(0)
410
- expect(root_child0.getComputedTop()).toBe(0)
411
- expect(root_child0.getComputedWidth()).toBe(87)
412
- expect(root_child0.getComputedHeight()).toBe(59)
413
-
414
- expect(root_child1.getComputedLeft()).toBe(0)
415
- expect(root_child1.getComputedTop()).toBe(59)
416
- expect(root_child1.getComputedWidth()).toBe(87)
417
- expect(root_child1.getComputedHeight()).toBe(30)
418
-
419
- expect(root_child2.getComputedLeft()).toBe(0)
420
- expect(root_child2.getComputedTop()).toBe(89)
421
- expect(root_child2.getComputedWidth()).toBe(87)
422
- expect(root_child2.getComputedHeight()).toBe(24)
423
- } finally {
424
- if (typeof root !== "undefined") {
425
- root.freeRecursive()
426
- }
427
-
428
- config.free()
429
- }
430
- })
431
- test("rounding_total_fractial_nested", () => {
432
- const config = Yoga.Config.create()
433
- let root
434
-
435
- try {
436
- root = Yoga.Node.create(config)
437
- root.setPositionType(PositionType.Absolute)
438
- root.setWidth(87.4)
439
- root.setHeight(113.4)
440
-
441
- const root_child0 = Yoga.Node.create(config)
442
- root_child0.setFlexGrow(0.7)
443
- root_child0.setFlexBasis(50.3)
444
- root_child0.setHeight(20.3)
445
- root.insertChild(root_child0, 0)
446
-
447
- const root_child0_child0 = Yoga.Node.create(config)
448
- root_child0_child0.setFlexGrow(1)
449
- root_child0_child0.setFlexBasis(0.3)
450
- root_child0_child0.setPosition(Edge.Bottom, 13.3)
451
- root_child0_child0.setHeight(9.9)
452
- root_child0.insertChild(root_child0_child0, 0)
453
-
454
- const root_child0_child1 = Yoga.Node.create(config)
455
- root_child0_child1.setFlexGrow(4)
456
- root_child0_child1.setFlexBasis(0.3)
457
- root_child0_child1.setPosition(Edge.Top, 13.3)
458
- root_child0_child1.setHeight(1.1)
459
- root_child0.insertChild(root_child0_child1, 1)
460
-
461
- const root_child1 = Yoga.Node.create(config)
462
- root_child1.setFlexGrow(1.6)
463
- root_child1.setHeight(10)
464
- root.insertChild(root_child1, 1)
465
-
466
- const root_child2 = Yoga.Node.create(config)
467
- root_child2.setFlexGrow(1.1)
468
- root_child2.setHeight(10.7)
469
- root.insertChild(root_child2, 2)
470
- root.calculateLayout(undefined, undefined, Direction.LTR)
471
-
472
- expect(root.getComputedLeft()).toBe(0)
473
- expect(root.getComputedTop()).toBe(0)
474
- expect(root.getComputedWidth()).toBe(87)
475
- expect(root.getComputedHeight()).toBe(113)
476
-
477
- expect(root_child0.getComputedLeft()).toBe(0)
478
- expect(root_child0.getComputedTop()).toBe(0)
479
- expect(root_child0.getComputedWidth()).toBe(87)
480
- expect(root_child0.getComputedHeight()).toBe(59)
481
-
482
- expect(root_child0_child0.getComputedLeft()).toBe(0)
483
- expect(root_child0_child0.getComputedTop()).toBe(-13)
484
- expect(root_child0_child0.getComputedWidth()).toBe(87)
485
- expect(root_child0_child0.getComputedHeight()).toBe(12)
486
-
487
- expect(root_child0_child1.getComputedLeft()).toBe(0)
488
- expect(root_child0_child1.getComputedTop()).toBe(25)
489
- expect(root_child0_child1.getComputedWidth()).toBe(87)
490
- expect(root_child0_child1.getComputedHeight()).toBe(47)
491
-
492
- expect(root_child1.getComputedLeft()).toBe(0)
493
- expect(root_child1.getComputedTop()).toBe(59)
494
- expect(root_child1.getComputedWidth()).toBe(87)
495
- expect(root_child1.getComputedHeight()).toBe(30)
496
-
497
- expect(root_child2.getComputedLeft()).toBe(0)
498
- expect(root_child2.getComputedTop()).toBe(89)
499
- expect(root_child2.getComputedWidth()).toBe(87)
500
- expect(root_child2.getComputedHeight()).toBe(24)
501
-
502
- root.calculateLayout(undefined, undefined, Direction.RTL)
503
-
504
- expect(root.getComputedLeft()).toBe(0)
505
- expect(root.getComputedTop()).toBe(0)
506
- expect(root.getComputedWidth()).toBe(87)
507
- expect(root.getComputedHeight()).toBe(113)
508
-
509
- expect(root_child0.getComputedLeft()).toBe(0)
510
- expect(root_child0.getComputedTop()).toBe(0)
511
- expect(root_child0.getComputedWidth()).toBe(87)
512
- expect(root_child0.getComputedHeight()).toBe(59)
513
-
514
- expect(root_child0_child0.getComputedLeft()).toBe(0)
515
- expect(root_child0_child0.getComputedTop()).toBe(-13)
516
- expect(root_child0_child0.getComputedWidth()).toBe(87)
517
- expect(root_child0_child0.getComputedHeight()).toBe(12)
518
-
519
- expect(root_child0_child1.getComputedLeft()).toBe(0)
520
- expect(root_child0_child1.getComputedTop()).toBe(25)
521
- expect(root_child0_child1.getComputedWidth()).toBe(87)
522
- expect(root_child0_child1.getComputedHeight()).toBe(47)
523
-
524
- expect(root_child1.getComputedLeft()).toBe(0)
525
- expect(root_child1.getComputedTop()).toBe(59)
526
- expect(root_child1.getComputedWidth()).toBe(87)
527
- expect(root_child1.getComputedHeight()).toBe(30)
528
-
529
- expect(root_child2.getComputedLeft()).toBe(0)
530
- expect(root_child2.getComputedTop()).toBe(89)
531
- expect(root_child2.getComputedWidth()).toBe(87)
532
- expect(root_child2.getComputedHeight()).toBe(24)
533
- } finally {
534
- if (typeof root !== "undefined") {
535
- root.freeRecursive()
536
- }
537
-
538
- config.free()
539
- }
540
- })
541
- test("rounding_fractial_input_1", () => {
542
- const config = Yoga.Config.create()
543
- let root
544
-
545
- try {
546
- root = Yoga.Node.create(config)
547
- root.setPositionType(PositionType.Absolute)
548
- root.setWidth(100)
549
- root.setHeight(113.4)
550
-
551
- const root_child0 = Yoga.Node.create(config)
552
- root_child0.setFlexGrow(1)
553
- root_child0.setFlexBasis(50)
554
- root_child0.setHeight(20)
555
- root.insertChild(root_child0, 0)
556
-
557
- const root_child1 = Yoga.Node.create(config)
558
- root_child1.setFlexGrow(1)
559
- root_child1.setHeight(10)
560
- root.insertChild(root_child1, 1)
561
-
562
- const root_child2 = Yoga.Node.create(config)
563
- root_child2.setFlexGrow(1)
564
- root_child2.setHeight(10)
565
- root.insertChild(root_child2, 2)
566
- root.calculateLayout(undefined, undefined, Direction.LTR)
567
-
568
- expect(root.getComputedLeft()).toBe(0)
569
- expect(root.getComputedTop()).toBe(0)
570
- expect(root.getComputedWidth()).toBe(100)
571
- expect(root.getComputedHeight()).toBe(113)
572
-
573
- expect(root_child0.getComputedLeft()).toBe(0)
574
- expect(root_child0.getComputedTop()).toBe(0)
575
- expect(root_child0.getComputedWidth()).toBe(100)
576
- expect(root_child0.getComputedHeight()).toBe(64)
577
-
578
- expect(root_child1.getComputedLeft()).toBe(0)
579
- expect(root_child1.getComputedTop()).toBe(64)
580
- expect(root_child1.getComputedWidth()).toBe(100)
581
- expect(root_child1.getComputedHeight()).toBe(25)
582
-
583
- expect(root_child2.getComputedLeft()).toBe(0)
584
- expect(root_child2.getComputedTop()).toBe(89)
585
- expect(root_child2.getComputedWidth()).toBe(100)
586
- expect(root_child2.getComputedHeight()).toBe(24)
587
-
588
- root.calculateLayout(undefined, undefined, Direction.RTL)
589
-
590
- expect(root.getComputedLeft()).toBe(0)
591
- expect(root.getComputedTop()).toBe(0)
592
- expect(root.getComputedWidth()).toBe(100)
593
- expect(root.getComputedHeight()).toBe(113)
594
-
595
- expect(root_child0.getComputedLeft()).toBe(0)
596
- expect(root_child0.getComputedTop()).toBe(0)
597
- expect(root_child0.getComputedWidth()).toBe(100)
598
- expect(root_child0.getComputedHeight()).toBe(64)
599
-
600
- expect(root_child1.getComputedLeft()).toBe(0)
601
- expect(root_child1.getComputedTop()).toBe(64)
602
- expect(root_child1.getComputedWidth()).toBe(100)
603
- expect(root_child1.getComputedHeight()).toBe(25)
604
-
605
- expect(root_child2.getComputedLeft()).toBe(0)
606
- expect(root_child2.getComputedTop()).toBe(89)
607
- expect(root_child2.getComputedWidth()).toBe(100)
608
- expect(root_child2.getComputedHeight()).toBe(24)
609
- } finally {
610
- if (typeof root !== "undefined") {
611
- root.freeRecursive()
612
- }
613
-
614
- config.free()
615
- }
616
- })
617
- test("rounding_fractial_input_2", () => {
618
- const config = Yoga.Config.create()
619
- let root
620
-
621
- try {
622
- root = Yoga.Node.create(config)
623
- root.setPositionType(PositionType.Absolute)
624
- root.setWidth(100)
625
- root.setHeight(113.6)
626
-
627
- const root_child0 = Yoga.Node.create(config)
628
- root_child0.setFlexGrow(1)
629
- root_child0.setFlexBasis(50)
630
- root_child0.setHeight(20)
631
- root.insertChild(root_child0, 0)
632
-
633
- const root_child1 = Yoga.Node.create(config)
634
- root_child1.setFlexGrow(1)
635
- root_child1.setHeight(10)
636
- root.insertChild(root_child1, 1)
637
-
638
- const root_child2 = Yoga.Node.create(config)
639
- root_child2.setFlexGrow(1)
640
- root_child2.setHeight(10)
641
- root.insertChild(root_child2, 2)
642
- root.calculateLayout(undefined, undefined, Direction.LTR)
643
-
644
- expect(root.getComputedLeft()).toBe(0)
645
- expect(root.getComputedTop()).toBe(0)
646
- expect(root.getComputedWidth()).toBe(100)
647
- expect(root.getComputedHeight()).toBe(114)
648
-
649
- expect(root_child0.getComputedLeft()).toBe(0)
650
- expect(root_child0.getComputedTop()).toBe(0)
651
- expect(root_child0.getComputedWidth()).toBe(100)
652
- expect(root_child0.getComputedHeight()).toBe(65)
653
-
654
- expect(root_child1.getComputedLeft()).toBe(0)
655
- expect(root_child1.getComputedTop()).toBe(65)
656
- expect(root_child1.getComputedWidth()).toBe(100)
657
- expect(root_child1.getComputedHeight()).toBe(24)
658
-
659
- expect(root_child2.getComputedLeft()).toBe(0)
660
- expect(root_child2.getComputedTop()).toBe(89)
661
- expect(root_child2.getComputedWidth()).toBe(100)
662
- expect(root_child2.getComputedHeight()).toBe(25)
663
-
664
- root.calculateLayout(undefined, undefined, Direction.RTL)
665
-
666
- expect(root.getComputedLeft()).toBe(0)
667
- expect(root.getComputedTop()).toBe(0)
668
- expect(root.getComputedWidth()).toBe(100)
669
- expect(root.getComputedHeight()).toBe(114)
670
-
671
- expect(root_child0.getComputedLeft()).toBe(0)
672
- expect(root_child0.getComputedTop()).toBe(0)
673
- expect(root_child0.getComputedWidth()).toBe(100)
674
- expect(root_child0.getComputedHeight()).toBe(65)
675
-
676
- expect(root_child1.getComputedLeft()).toBe(0)
677
- expect(root_child1.getComputedTop()).toBe(65)
678
- expect(root_child1.getComputedWidth()).toBe(100)
679
- expect(root_child1.getComputedHeight()).toBe(24)
680
-
681
- expect(root_child2.getComputedLeft()).toBe(0)
682
- expect(root_child2.getComputedTop()).toBe(89)
683
- expect(root_child2.getComputedWidth()).toBe(100)
684
- expect(root_child2.getComputedHeight()).toBe(25)
685
- } finally {
686
- if (typeof root !== "undefined") {
687
- root.freeRecursive()
688
- }
689
-
690
- config.free()
691
- }
692
- })
693
- test("rounding_fractial_input_3", () => {
694
- const config = Yoga.Config.create()
695
- let root
696
-
697
- try {
698
- root = Yoga.Node.create(config)
699
- root.setPositionType(PositionType.Absolute)
700
- root.setPosition(Edge.Top, 0.3)
701
- root.setWidth(100)
702
- root.setHeight(113.4)
703
-
704
- const root_child0 = Yoga.Node.create(config)
705
- root_child0.setFlexGrow(1)
706
- root_child0.setFlexBasis(50)
707
- root_child0.setHeight(20)
708
- root.insertChild(root_child0, 0)
709
-
710
- const root_child1 = Yoga.Node.create(config)
711
- root_child1.setFlexGrow(1)
712
- root_child1.setHeight(10)
713
- root.insertChild(root_child1, 1)
714
-
715
- const root_child2 = Yoga.Node.create(config)
716
- root_child2.setFlexGrow(1)
717
- root_child2.setHeight(10)
718
- root.insertChild(root_child2, 2)
719
- root.calculateLayout(undefined, undefined, Direction.LTR)
720
-
721
- expect(root.getComputedLeft()).toBe(0)
722
- expect(root.getComputedTop()).toBe(0)
723
- expect(root.getComputedWidth()).toBe(100)
724
- expect(root.getComputedHeight()).toBe(114)
725
-
726
- expect(root_child0.getComputedLeft()).toBe(0)
727
- expect(root_child0.getComputedTop()).toBe(0)
728
- expect(root_child0.getComputedWidth()).toBe(100)
729
- expect(root_child0.getComputedHeight()).toBe(65)
730
-
731
- expect(root_child1.getComputedLeft()).toBe(0)
732
- expect(root_child1.getComputedTop()).toBe(64)
733
- expect(root_child1.getComputedWidth()).toBe(100)
734
- expect(root_child1.getComputedHeight()).toBe(24)
735
-
736
- expect(root_child2.getComputedLeft()).toBe(0)
737
- expect(root_child2.getComputedTop()).toBe(89)
738
- expect(root_child2.getComputedWidth()).toBe(100)
739
- expect(root_child2.getComputedHeight()).toBe(25)
740
-
741
- root.calculateLayout(undefined, undefined, Direction.RTL)
742
-
743
- expect(root.getComputedLeft()).toBe(0)
744
- expect(root.getComputedTop()).toBe(0)
745
- expect(root.getComputedWidth()).toBe(100)
746
- expect(root.getComputedHeight()).toBe(114)
747
-
748
- expect(root_child0.getComputedLeft()).toBe(0)
749
- expect(root_child0.getComputedTop()).toBe(0)
750
- expect(root_child0.getComputedWidth()).toBe(100)
751
- expect(root_child0.getComputedHeight()).toBe(65)
752
-
753
- expect(root_child1.getComputedLeft()).toBe(0)
754
- expect(root_child1.getComputedTop()).toBe(64)
755
- expect(root_child1.getComputedWidth()).toBe(100)
756
- expect(root_child1.getComputedHeight()).toBe(24)
757
-
758
- expect(root_child2.getComputedLeft()).toBe(0)
759
- expect(root_child2.getComputedTop()).toBe(89)
760
- expect(root_child2.getComputedWidth()).toBe(100)
761
- expect(root_child2.getComputedHeight()).toBe(25)
762
- } finally {
763
- if (typeof root !== "undefined") {
764
- root.freeRecursive()
765
- }
766
-
767
- config.free()
768
- }
769
- })
770
- test("rounding_fractial_input_4", () => {
771
- const config = Yoga.Config.create()
772
- let root
773
-
774
- try {
775
- root = Yoga.Node.create(config)
776
- root.setPositionType(PositionType.Absolute)
777
- root.setPosition(Edge.Top, 0.7)
778
- root.setWidth(100)
779
- root.setHeight(113.4)
780
-
781
- const root_child0 = Yoga.Node.create(config)
782
- root_child0.setFlexGrow(1)
783
- root_child0.setFlexBasis(50)
784
- root_child0.setHeight(20)
785
- root.insertChild(root_child0, 0)
786
-
787
- const root_child1 = Yoga.Node.create(config)
788
- root_child1.setFlexGrow(1)
789
- root_child1.setHeight(10)
790
- root.insertChild(root_child1, 1)
791
-
792
- const root_child2 = Yoga.Node.create(config)
793
- root_child2.setFlexGrow(1)
794
- root_child2.setHeight(10)
795
- root.insertChild(root_child2, 2)
796
- root.calculateLayout(undefined, undefined, Direction.LTR)
797
-
798
- expect(root.getComputedLeft()).toBe(0)
799
- expect(root.getComputedTop()).toBe(1)
800
- expect(root.getComputedWidth()).toBe(100)
801
- expect(root.getComputedHeight()).toBe(113)
802
-
803
- expect(root_child0.getComputedLeft()).toBe(0)
804
- expect(root_child0.getComputedTop()).toBe(0)
805
- expect(root_child0.getComputedWidth()).toBe(100)
806
- expect(root_child0.getComputedHeight()).toBe(64)
807
-
808
- expect(root_child1.getComputedLeft()).toBe(0)
809
- expect(root_child1.getComputedTop()).toBe(64)
810
- expect(root_child1.getComputedWidth()).toBe(100)
811
- expect(root_child1.getComputedHeight()).toBe(25)
812
-
813
- expect(root_child2.getComputedLeft()).toBe(0)
814
- expect(root_child2.getComputedTop()).toBe(89)
815
- expect(root_child2.getComputedWidth()).toBe(100)
816
- expect(root_child2.getComputedHeight()).toBe(24)
817
-
818
- root.calculateLayout(undefined, undefined, Direction.RTL)
819
-
820
- expect(root.getComputedLeft()).toBe(0)
821
- expect(root.getComputedTop()).toBe(1)
822
- expect(root.getComputedWidth()).toBe(100)
823
- expect(root.getComputedHeight()).toBe(113)
824
-
825
- expect(root_child0.getComputedLeft()).toBe(0)
826
- expect(root_child0.getComputedTop()).toBe(0)
827
- expect(root_child0.getComputedWidth()).toBe(100)
828
- expect(root_child0.getComputedHeight()).toBe(64)
829
-
830
- expect(root_child1.getComputedLeft()).toBe(0)
831
- expect(root_child1.getComputedTop()).toBe(64)
832
- expect(root_child1.getComputedWidth()).toBe(100)
833
- expect(root_child1.getComputedHeight()).toBe(25)
834
-
835
- expect(root_child2.getComputedLeft()).toBe(0)
836
- expect(root_child2.getComputedTop()).toBe(89)
837
- expect(root_child2.getComputedWidth()).toBe(100)
838
- expect(root_child2.getComputedHeight()).toBe(24)
839
- } finally {
840
- if (typeof root !== "undefined") {
841
- root.freeRecursive()
842
- }
843
-
844
- config.free()
845
- }
846
- })
847
- test("rounding_inner_node_controversy_horizontal", () => {
848
- const config = Yoga.Config.create()
849
- let root
850
-
851
- try {
852
- root = Yoga.Node.create(config)
853
- root.setFlexDirection(FlexDirection.Row)
854
- root.setPositionType(PositionType.Absolute)
855
- root.setWidth(320)
856
-
857
- const root_child0 = Yoga.Node.create(config)
858
- root_child0.setFlexGrow(1)
859
- root_child0.setHeight(10)
860
- root.insertChild(root_child0, 0)
861
-
862
- const root_child1 = Yoga.Node.create(config)
863
- root_child1.setFlexGrow(1)
864
- root_child1.setHeight(10)
865
- root.insertChild(root_child1, 1)
866
-
867
- const root_child1_child0 = Yoga.Node.create(config)
868
- root_child1_child0.setFlexGrow(1)
869
- root_child1_child0.setHeight(10)
870
- root_child1.insertChild(root_child1_child0, 0)
871
-
872
- const root_child2 = Yoga.Node.create(config)
873
- root_child2.setFlexGrow(1)
874
- root_child2.setHeight(10)
875
- root.insertChild(root_child2, 2)
876
- root.calculateLayout(undefined, undefined, Direction.LTR)
877
-
878
- expect(root.getComputedLeft()).toBe(0)
879
- expect(root.getComputedTop()).toBe(0)
880
- expect(root.getComputedWidth()).toBe(320)
881
- expect(root.getComputedHeight()).toBe(10)
882
-
883
- expect(root_child0.getComputedLeft()).toBe(0)
884
- expect(root_child0.getComputedTop()).toBe(0)
885
- expect(root_child0.getComputedWidth()).toBe(107)
886
- expect(root_child0.getComputedHeight()).toBe(10)
887
-
888
- expect(root_child1.getComputedLeft()).toBe(107)
889
- expect(root_child1.getComputedTop()).toBe(0)
890
- expect(root_child1.getComputedWidth()).toBe(106)
891
- expect(root_child1.getComputedHeight()).toBe(10)
892
-
893
- expect(root_child1_child0.getComputedLeft()).toBe(0)
894
- expect(root_child1_child0.getComputedTop()).toBe(0)
895
- expect(root_child1_child0.getComputedWidth()).toBe(106)
896
- expect(root_child1_child0.getComputedHeight()).toBe(10)
897
-
898
- expect(root_child2.getComputedLeft()).toBe(213)
899
- expect(root_child2.getComputedTop()).toBe(0)
900
- expect(root_child2.getComputedWidth()).toBe(107)
901
- expect(root_child2.getComputedHeight()).toBe(10)
902
-
903
- root.calculateLayout(undefined, undefined, Direction.RTL)
904
-
905
- expect(root.getComputedLeft()).toBe(0)
906
- expect(root.getComputedTop()).toBe(0)
907
- expect(root.getComputedWidth()).toBe(320)
908
- expect(root.getComputedHeight()).toBe(10)
909
-
910
- expect(root_child0.getComputedLeft()).toBe(213)
911
- expect(root_child0.getComputedTop()).toBe(0)
912
- expect(root_child0.getComputedWidth()).toBe(107)
913
- expect(root_child0.getComputedHeight()).toBe(10)
914
-
915
- expect(root_child1.getComputedLeft()).toBe(107)
916
- expect(root_child1.getComputedTop()).toBe(0)
917
- expect(root_child1.getComputedWidth()).toBe(106)
918
- expect(root_child1.getComputedHeight()).toBe(10)
919
-
920
- expect(root_child1_child0.getComputedLeft()).toBe(0)
921
- expect(root_child1_child0.getComputedTop()).toBe(0)
922
- expect(root_child1_child0.getComputedWidth()).toBe(106)
923
- expect(root_child1_child0.getComputedHeight()).toBe(10)
924
-
925
- expect(root_child2.getComputedLeft()).toBe(0)
926
- expect(root_child2.getComputedTop()).toBe(0)
927
- expect(root_child2.getComputedWidth()).toBe(107)
928
- expect(root_child2.getComputedHeight()).toBe(10)
929
- } finally {
930
- if (typeof root !== "undefined") {
931
- root.freeRecursive()
932
- }
933
-
934
- config.free()
935
- }
936
- })
937
- test("rounding_inner_node_controversy_vertical", () => {
938
- const config = Yoga.Config.create()
939
- let root
940
-
941
- try {
942
- root = Yoga.Node.create(config)
943
- root.setPositionType(PositionType.Absolute)
944
- root.setHeight(320)
945
-
946
- const root_child0 = Yoga.Node.create(config)
947
- root_child0.setFlexGrow(1)
948
- root_child0.setWidth(10)
949
- root.insertChild(root_child0, 0)
950
-
951
- const root_child1 = Yoga.Node.create(config)
952
- root_child1.setFlexGrow(1)
953
- root_child1.setWidth(10)
954
- root.insertChild(root_child1, 1)
955
-
956
- const root_child1_child0 = Yoga.Node.create(config)
957
- root_child1_child0.setFlexGrow(1)
958
- root_child1_child0.setWidth(10)
959
- root_child1.insertChild(root_child1_child0, 0)
960
-
961
- const root_child2 = Yoga.Node.create(config)
962
- root_child2.setFlexGrow(1)
963
- root_child2.setWidth(10)
964
- root.insertChild(root_child2, 2)
965
- root.calculateLayout(undefined, undefined, Direction.LTR)
966
-
967
- expect(root.getComputedLeft()).toBe(0)
968
- expect(root.getComputedTop()).toBe(0)
969
- expect(root.getComputedWidth()).toBe(10)
970
- expect(root.getComputedHeight()).toBe(320)
971
-
972
- expect(root_child0.getComputedLeft()).toBe(0)
973
- expect(root_child0.getComputedTop()).toBe(0)
974
- expect(root_child0.getComputedWidth()).toBe(10)
975
- expect(root_child0.getComputedHeight()).toBe(107)
976
-
977
- expect(root_child1.getComputedLeft()).toBe(0)
978
- expect(root_child1.getComputedTop()).toBe(107)
979
- expect(root_child1.getComputedWidth()).toBe(10)
980
- expect(root_child1.getComputedHeight()).toBe(106)
981
-
982
- expect(root_child1_child0.getComputedLeft()).toBe(0)
983
- expect(root_child1_child0.getComputedTop()).toBe(0)
984
- expect(root_child1_child0.getComputedWidth()).toBe(10)
985
- expect(root_child1_child0.getComputedHeight()).toBe(106)
986
-
987
- expect(root_child2.getComputedLeft()).toBe(0)
988
- expect(root_child2.getComputedTop()).toBe(213)
989
- expect(root_child2.getComputedWidth()).toBe(10)
990
- expect(root_child2.getComputedHeight()).toBe(107)
991
-
992
- root.calculateLayout(undefined, undefined, Direction.RTL)
993
-
994
- expect(root.getComputedLeft()).toBe(0)
995
- expect(root.getComputedTop()).toBe(0)
996
- expect(root.getComputedWidth()).toBe(10)
997
- expect(root.getComputedHeight()).toBe(320)
998
-
999
- expect(root_child0.getComputedLeft()).toBe(0)
1000
- expect(root_child0.getComputedTop()).toBe(0)
1001
- expect(root_child0.getComputedWidth()).toBe(10)
1002
- expect(root_child0.getComputedHeight()).toBe(107)
1003
-
1004
- expect(root_child1.getComputedLeft()).toBe(0)
1005
- expect(root_child1.getComputedTop()).toBe(107)
1006
- expect(root_child1.getComputedWidth()).toBe(10)
1007
- expect(root_child1.getComputedHeight()).toBe(106)
1008
-
1009
- expect(root_child1_child0.getComputedLeft()).toBe(0)
1010
- expect(root_child1_child0.getComputedTop()).toBe(0)
1011
- expect(root_child1_child0.getComputedWidth()).toBe(10)
1012
- expect(root_child1_child0.getComputedHeight()).toBe(106)
1013
-
1014
- expect(root_child2.getComputedLeft()).toBe(0)
1015
- expect(root_child2.getComputedTop()).toBe(213)
1016
- expect(root_child2.getComputedWidth()).toBe(10)
1017
- expect(root_child2.getComputedHeight()).toBe(107)
1018
- } finally {
1019
- if (typeof root !== "undefined") {
1020
- root.freeRecursive()
1021
- }
1022
-
1023
- config.free()
1024
- }
1025
- })
1026
- test("rounding_inner_node_controversy_combined", () => {
1027
- const config = Yoga.Config.create()
1028
- let root
1029
-
1030
- try {
1031
- root = Yoga.Node.create(config)
1032
- root.setFlexDirection(FlexDirection.Row)
1033
- root.setPositionType(PositionType.Absolute)
1034
- root.setWidth(640)
1035
- root.setHeight(320)
1036
-
1037
- const root_child0 = Yoga.Node.create(config)
1038
- root_child0.setFlexGrow(1)
1039
- root_child0.setHeight("100%")
1040
- root.insertChild(root_child0, 0)
1041
-
1042
- const root_child1 = Yoga.Node.create(config)
1043
- root_child1.setFlexGrow(1)
1044
- root_child1.setHeight("100%")
1045
- root.insertChild(root_child1, 1)
1046
-
1047
- const root_child1_child0 = Yoga.Node.create(config)
1048
- root_child1_child0.setFlexGrow(1)
1049
- root_child1_child0.setWidth("100%")
1050
- root_child1.insertChild(root_child1_child0, 0)
1051
-
1052
- const root_child1_child1 = Yoga.Node.create(config)
1053
- root_child1_child1.setFlexGrow(1)
1054
- root_child1_child1.setWidth("100%")
1055
- root_child1.insertChild(root_child1_child1, 1)
1056
-
1057
- const root_child1_child1_child0 = Yoga.Node.create(config)
1058
- root_child1_child1_child0.setFlexGrow(1)
1059
- root_child1_child1_child0.setWidth("100%")
1060
- root_child1_child1.insertChild(root_child1_child1_child0, 0)
1061
-
1062
- const root_child1_child2 = Yoga.Node.create(config)
1063
- root_child1_child2.setFlexGrow(1)
1064
- root_child1_child2.setWidth("100%")
1065
- root_child1.insertChild(root_child1_child2, 2)
1066
-
1067
- const root_child2 = Yoga.Node.create(config)
1068
- root_child2.setFlexGrow(1)
1069
- root_child2.setHeight("100%")
1070
- root.insertChild(root_child2, 2)
1071
- root.calculateLayout(undefined, undefined, Direction.LTR)
1072
-
1073
- expect(root.getComputedLeft()).toBe(0)
1074
- expect(root.getComputedTop()).toBe(0)
1075
- expect(root.getComputedWidth()).toBe(640)
1076
- expect(root.getComputedHeight()).toBe(320)
1077
-
1078
- expect(root_child0.getComputedLeft()).toBe(0)
1079
- expect(root_child0.getComputedTop()).toBe(0)
1080
- expect(root_child0.getComputedWidth()).toBe(213)
1081
- expect(root_child0.getComputedHeight()).toBe(320)
1082
-
1083
- expect(root_child1.getComputedLeft()).toBe(213)
1084
- expect(root_child1.getComputedTop()).toBe(0)
1085
- expect(root_child1.getComputedWidth()).toBe(214)
1086
- expect(root_child1.getComputedHeight()).toBe(320)
1087
-
1088
- expect(root_child1_child0.getComputedLeft()).toBe(0)
1089
- expect(root_child1_child0.getComputedTop()).toBe(0)
1090
- expect(root_child1_child0.getComputedWidth()).toBe(214)
1091
- expect(root_child1_child0.getComputedHeight()).toBe(107)
1092
-
1093
- expect(root_child1_child1.getComputedLeft()).toBe(0)
1094
- expect(root_child1_child1.getComputedTop()).toBe(107)
1095
- expect(root_child1_child1.getComputedWidth()).toBe(214)
1096
- expect(root_child1_child1.getComputedHeight()).toBe(106)
1097
-
1098
- expect(root_child1_child1_child0.getComputedLeft()).toBe(0)
1099
- expect(root_child1_child1_child0.getComputedTop()).toBe(0)
1100
- expect(root_child1_child1_child0.getComputedWidth()).toBe(214)
1101
- expect(root_child1_child1_child0.getComputedHeight()).toBe(106)
1102
-
1103
- expect(root_child1_child2.getComputedLeft()).toBe(0)
1104
- expect(root_child1_child2.getComputedTop()).toBe(213)
1105
- expect(root_child1_child2.getComputedWidth()).toBe(214)
1106
- expect(root_child1_child2.getComputedHeight()).toBe(107)
1107
-
1108
- expect(root_child2.getComputedLeft()).toBe(427)
1109
- expect(root_child2.getComputedTop()).toBe(0)
1110
- expect(root_child2.getComputedWidth()).toBe(213)
1111
- expect(root_child2.getComputedHeight()).toBe(320)
1112
-
1113
- root.calculateLayout(undefined, undefined, Direction.RTL)
1114
-
1115
- expect(root.getComputedLeft()).toBe(0)
1116
- expect(root.getComputedTop()).toBe(0)
1117
- expect(root.getComputedWidth()).toBe(640)
1118
- expect(root.getComputedHeight()).toBe(320)
1119
-
1120
- expect(root_child0.getComputedLeft()).toBe(427)
1121
- expect(root_child0.getComputedTop()).toBe(0)
1122
- expect(root_child0.getComputedWidth()).toBe(213)
1123
- expect(root_child0.getComputedHeight()).toBe(320)
1124
-
1125
- expect(root_child1.getComputedLeft()).toBe(213)
1126
- expect(root_child1.getComputedTop()).toBe(0)
1127
- expect(root_child1.getComputedWidth()).toBe(214)
1128
- expect(root_child1.getComputedHeight()).toBe(320)
1129
-
1130
- expect(root_child1_child0.getComputedLeft()).toBe(0)
1131
- expect(root_child1_child0.getComputedTop()).toBe(0)
1132
- expect(root_child1_child0.getComputedWidth()).toBe(214)
1133
- expect(root_child1_child0.getComputedHeight()).toBe(107)
1134
-
1135
- expect(root_child1_child1.getComputedLeft()).toBe(0)
1136
- expect(root_child1_child1.getComputedTop()).toBe(107)
1137
- expect(root_child1_child1.getComputedWidth()).toBe(214)
1138
- expect(root_child1_child1.getComputedHeight()).toBe(106)
1139
-
1140
- expect(root_child1_child1_child0.getComputedLeft()).toBe(0)
1141
- expect(root_child1_child1_child0.getComputedTop()).toBe(0)
1142
- expect(root_child1_child1_child0.getComputedWidth()).toBe(214)
1143
- expect(root_child1_child1_child0.getComputedHeight()).toBe(106)
1144
-
1145
- expect(root_child1_child2.getComputedLeft()).toBe(0)
1146
- expect(root_child1_child2.getComputedTop()).toBe(213)
1147
- expect(root_child1_child2.getComputedWidth()).toBe(214)
1148
- expect(root_child1_child2.getComputedHeight()).toBe(107)
1149
-
1150
- expect(root_child2.getComputedLeft()).toBe(0)
1151
- expect(root_child2.getComputedTop()).toBe(0)
1152
- expect(root_child2.getComputedWidth()).toBe(213)
1153
- expect(root_child2.getComputedHeight()).toBe(320)
1154
- } finally {
1155
- if (typeof root !== "undefined") {
1156
- root.freeRecursive()
1157
- }
1158
-
1159
- config.free()
1160
- }
1161
- })