@osmo.inc/cli 0.1.18 → 0.1.20

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 (943) hide show
  1. package/DEPLOY.md +62 -16
  2. package/README.md +31 -15
  3. package/SETUP.md +19 -7
  4. package/THIRD_PARTY_NOTICES.md +5 -16
  5. package/bin/osmo.mjs +12 -0
  6. package/dist/osmo.js +2500 -8905
  7. package/package.json +13 -26
  8. package/release.json +49 -84
  9. package/third-party/inventory.json +0 -3601
  10. package/node_modules/@esbuild/darwin-arm64/README.md +0 -3
  11. package/node_modules/@esbuild/darwin-arm64/bin/esbuild +0 -0
  12. package/node_modules/@esbuild/darwin-arm64/package.json +0 -20
  13. package/node_modules/esbuild/LICENSE.md +0 -21
  14. package/node_modules/esbuild/README.md +0 -3
  15. package/node_modules/esbuild/bin/esbuild +0 -223
  16. package/node_modules/esbuild/install.js +0 -289
  17. package/node_modules/esbuild/lib/main.d.ts +0 -716
  18. package/node_modules/esbuild/lib/main.js +0 -2532
  19. package/node_modules/esbuild/package.json +0 -49
  20. package/node_modules/typescript/LICENSE.txt +0 -55
  21. package/node_modules/typescript/ThirdPartyNoticeText.txt +0 -193
  22. package/node_modules/typescript/lib/lib.d.ts +0 -22
  23. package/node_modules/typescript/lib/lib.decorators.d.ts +0 -384
  24. package/node_modules/typescript/lib/lib.decorators.legacy.d.ts +0 -22
  25. package/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +0 -41
  26. package/node_modules/typescript/lib/lib.dom.d.ts +0 -39429
  27. package/node_modules/typescript/lib/lib.dom.iterable.d.ts +0 -571
  28. package/node_modules/typescript/lib/lib.es2015.collection.d.ts +0 -147
  29. package/node_modules/typescript/lib/lib.es2015.core.d.ts +0 -597
  30. package/node_modules/typescript/lib/lib.es2015.d.ts +0 -28
  31. package/node_modules/typescript/lib/lib.es2015.generator.d.ts +0 -77
  32. package/node_modules/typescript/lib/lib.es2015.iterable.d.ts +0 -605
  33. package/node_modules/typescript/lib/lib.es2015.promise.d.ts +0 -81
  34. package/node_modules/typescript/lib/lib.es2015.proxy.d.ts +0 -128
  35. package/node_modules/typescript/lib/lib.es2015.reflect.d.ts +0 -144
  36. package/node_modules/typescript/lib/lib.es2015.symbol.d.ts +0 -46
  37. package/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +0 -326
  38. package/node_modules/typescript/lib/lib.es2016.array.include.d.ts +0 -116
  39. package/node_modules/typescript/lib/lib.es2016.d.ts +0 -21
  40. package/node_modules/typescript/lib/lib.es2016.full.d.ts +0 -23
  41. package/node_modules/typescript/lib/lib.es2016.intl.d.ts +0 -31
  42. package/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +0 -21
  43. package/node_modules/typescript/lib/lib.es2017.d.ts +0 -26
  44. package/node_modules/typescript/lib/lib.es2017.date.d.ts +0 -31
  45. package/node_modules/typescript/lib/lib.es2017.full.d.ts +0 -23
  46. package/node_modules/typescript/lib/lib.es2017.intl.d.ts +0 -44
  47. package/node_modules/typescript/lib/lib.es2017.object.d.ts +0 -49
  48. package/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +0 -135
  49. package/node_modules/typescript/lib/lib.es2017.string.d.ts +0 -45
  50. package/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +0 -53
  51. package/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +0 -77
  52. package/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +0 -53
  53. package/node_modules/typescript/lib/lib.es2018.d.ts +0 -24
  54. package/node_modules/typescript/lib/lib.es2018.full.d.ts +0 -24
  55. package/node_modules/typescript/lib/lib.es2018.intl.d.ts +0 -83
  56. package/node_modules/typescript/lib/lib.es2018.promise.d.ts +0 -30
  57. package/node_modules/typescript/lib/lib.es2018.regexp.d.ts +0 -37
  58. package/node_modules/typescript/lib/lib.es2019.array.d.ts +0 -79
  59. package/node_modules/typescript/lib/lib.es2019.d.ts +0 -24
  60. package/node_modules/typescript/lib/lib.es2019.full.d.ts +0 -24
  61. package/node_modules/typescript/lib/lib.es2019.intl.d.ts +0 -23
  62. package/node_modules/typescript/lib/lib.es2019.object.d.ts +0 -33
  63. package/node_modules/typescript/lib/lib.es2019.string.d.ts +0 -37
  64. package/node_modules/typescript/lib/lib.es2019.symbol.d.ts +0 -24
  65. package/node_modules/typescript/lib/lib.es2020.bigint.d.ts +0 -765
  66. package/node_modules/typescript/lib/lib.es2020.d.ts +0 -27
  67. package/node_modules/typescript/lib/lib.es2020.date.d.ts +0 -42
  68. package/node_modules/typescript/lib/lib.es2020.full.d.ts +0 -24
  69. package/node_modules/typescript/lib/lib.es2020.intl.d.ts +0 -474
  70. package/node_modules/typescript/lib/lib.es2020.number.d.ts +0 -28
  71. package/node_modules/typescript/lib/lib.es2020.promise.d.ts +0 -47
  72. package/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +0 -99
  73. package/node_modules/typescript/lib/lib.es2020.string.d.ts +0 -44
  74. package/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +0 -41
  75. package/node_modules/typescript/lib/lib.es2021.d.ts +0 -23
  76. package/node_modules/typescript/lib/lib.es2021.full.d.ts +0 -24
  77. package/node_modules/typescript/lib/lib.es2021.intl.d.ts +0 -166
  78. package/node_modules/typescript/lib/lib.es2021.promise.d.ts +0 -48
  79. package/node_modules/typescript/lib/lib.es2021.string.d.ts +0 -33
  80. package/node_modules/typescript/lib/lib.es2021.weakref.d.ts +0 -78
  81. package/node_modules/typescript/lib/lib.es2022.array.d.ts +0 -121
  82. package/node_modules/typescript/lib/lib.es2022.d.ts +0 -25
  83. package/node_modules/typescript/lib/lib.es2022.error.d.ts +0 -75
  84. package/node_modules/typescript/lib/lib.es2022.full.d.ts +0 -24
  85. package/node_modules/typescript/lib/lib.es2022.intl.d.ts +0 -145
  86. package/node_modules/typescript/lib/lib.es2022.object.d.ts +0 -26
  87. package/node_modules/typescript/lib/lib.es2022.regexp.d.ts +0 -39
  88. package/node_modules/typescript/lib/lib.es2022.string.d.ts +0 -25
  89. package/node_modules/typescript/lib/lib.es2023.array.d.ts +0 -924
  90. package/node_modules/typescript/lib/lib.es2023.collection.d.ts +0 -21
  91. package/node_modules/typescript/lib/lib.es2023.d.ts +0 -22
  92. package/node_modules/typescript/lib/lib.es2023.full.d.ts +0 -24
  93. package/node_modules/typescript/lib/lib.es2023.intl.d.ts +0 -56
  94. package/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +0 -65
  95. package/node_modules/typescript/lib/lib.es2024.collection.d.ts +0 -29
  96. package/node_modules/typescript/lib/lib.es2024.d.ts +0 -26
  97. package/node_modules/typescript/lib/lib.es2024.full.d.ts +0 -24
  98. package/node_modules/typescript/lib/lib.es2024.object.d.ts +0 -29
  99. package/node_modules/typescript/lib/lib.es2024.promise.d.ts +0 -35
  100. package/node_modules/typescript/lib/lib.es2024.regexp.d.ts +0 -25
  101. package/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +0 -68
  102. package/node_modules/typescript/lib/lib.es2024.string.d.ts +0 -29
  103. package/node_modules/typescript/lib/lib.es5.d.ts +0 -4601
  104. package/node_modules/typescript/lib/lib.es6.d.ts +0 -23
  105. package/node_modules/typescript/lib/lib.esnext.array.d.ts +0 -35
  106. package/node_modules/typescript/lib/lib.esnext.collection.d.ts +0 -96
  107. package/node_modules/typescript/lib/lib.esnext.d.ts +0 -29
  108. package/node_modules/typescript/lib/lib.esnext.decorators.d.ts +0 -28
  109. package/node_modules/typescript/lib/lib.esnext.disposable.d.ts +0 -193
  110. package/node_modules/typescript/lib/lib.esnext.error.d.ts +0 -24
  111. package/node_modules/typescript/lib/lib.esnext.float16.d.ts +0 -445
  112. package/node_modules/typescript/lib/lib.esnext.full.d.ts +0 -24
  113. package/node_modules/typescript/lib/lib.esnext.intl.d.ts +0 -21
  114. package/node_modules/typescript/lib/lib.esnext.iterator.d.ts +0 -148
  115. package/node_modules/typescript/lib/lib.esnext.promise.d.ts +0 -34
  116. package/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +0 -25
  117. package/node_modules/typescript/lib/lib.scripthost.d.ts +0 -322
  118. package/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +0 -41
  119. package/node_modules/typescript/lib/lib.webworker.d.ts +0 -13150
  120. package/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +0 -23
  121. package/node_modules/typescript/lib/lib.webworker.iterable.d.ts +0 -340
  122. package/node_modules/typescript/lib/typescript.js +0 -382
  123. package/node_modules/typescript/package.json +0 -57
  124. package/runtime/apps/native/tools/compile.mjs +0 -217
  125. package/runtime/packages/scene/scripts/validate-strict.mjs +0 -246
  126. package/runtime/packages/scene/src/clip.d.mts +0 -14
  127. package/runtime/packages/scene/src/clip.mjs +0 -15
  128. package/runtime/packages/scene/src/color-value.d.mts +0 -5
  129. package/runtime/packages/scene/src/color-value.mjs +0 -19
  130. package/runtime/packages/scene/src/color.ts +0 -1
  131. package/runtime/packages/scene/src/effects.ts +0 -213
  132. package/runtime/packages/scene/src/elements.ts +0 -491
  133. package/runtime/packages/scene/src/evaluate.ts +0 -919
  134. package/runtime/packages/scene/src/index.ts +0 -69
  135. package/runtime/packages/scene/src/jsx-runtime.ts +0 -73
  136. package/runtime/packages/scene/src/knob-schema.ts +0 -115
  137. package/runtime/packages/scene/src/knobs.ts +0 -118
  138. package/runtime/packages/scene/src/mask.d.mts +0 -6
  139. package/runtime/packages/scene/src/mask.mjs +0 -17
  140. package/runtime/packages/scene/src/metadata.d.mts +0 -23
  141. package/runtime/packages/scene/src/metadata.mjs +0 -44
  142. package/runtime/packages/scene/src/motion-sampling.d.mts +0 -2
  143. package/runtime/packages/scene/src/motion-sampling.mjs +0 -50
  144. package/runtime/packages/scene/src/motion.ts +0 -121
  145. package/runtime/packages/scene/src/shader.ts +0 -57
  146. package/src/resource-examples/example-image/landscape.svg +0 -7
  147. package/src/resource-examples/example-image/resource.json +0 -8
  148. package/src/resource-examples/example-model/gem.glb +0 -0
  149. package/src/resource-examples/example-model/preview.svg +0 -1
  150. package/src/resource-examples/example-model/resource.json +0 -7
  151. package/src/resource-examples/example-scene/resource.json +0 -1
  152. package/src/resource-examples/example-scene/scene.tsx +0 -8
  153. package/src/resource-examples/example-shader/effect.wgsl +0 -7
  154. package/src/resource-examples/example-shader/preview.svg +0 -1
  155. package/src/resource-examples/example-shader/resource.json +0 -27
  156. package/src/resource-examples/example-shader/tint.wgsl +0 -7
  157. package/src/resource-examples/example-video/ambient.mp4 +0 -0
  158. package/src/resource-examples/example-video/resource.json +0 -9
  159. package/src/starter/scene.tsx +0 -20
  160. package/studio/index.html +0 -2
  161. package/studio/public/check-circle-filled.svg +0 -3
  162. package/studio/public/comment-cursor/active-outer.svg +0 -3
  163. package/studio/public/comment-cursor/default.svg +0 -6
  164. package/studio/public/osmo-studio-logo.svg +0 -12
  165. package/studio/public/pencil-simple.svg +0 -5
  166. package/studio/src/active-outer-TVYUEURE.svg +0 -3
  167. package/studio/src/app.css +0 -4
  168. package/studio/src/app.js +0 -714
  169. package/studio/src/default-6CTRH4V5.svg +0 -6
  170. package/studio/src/engine_bg.wasm +0 -0
  171. package/studio/src/inter-cyrillic-ext-wght-normal-IYF56FF6.woff2 +0 -0
  172. package/studio/src/inter-cyrillic-wght-normal-JEOLYBOO.woff2 +0 -0
  173. package/studio/src/inter-greek-ext-wght-normal-EOVOK2B5.woff2 +0 -0
  174. package/studio/src/inter-greek-wght-normal-IRE366VL.woff2 +0 -0
  175. package/studio/src/inter-latin-ext-wght-normal-HA22NDSG.woff2 +0 -0
  176. package/studio/src/inter-latin-wght-normal-NRMW37G5.woff2 +0 -0
  177. package/studio/src/inter-vietnamese-wght-normal-CE5GGD3W.woff2 +0 -0
  178. package/studio/src/osmo-studio-logo-D5R2V77B.svg +0 -12
  179. package/third-party/cargo/adler2@2.0.1/Cargo.toml +0 -91
  180. package/third-party/cargo/adler2@2.0.1/LICENSE-0BSD +0 -12
  181. package/third-party/cargo/adler2@2.0.1/LICENSE-APACHE +0 -201
  182. package/third-party/cargo/adler2@2.0.1/LICENSE-MIT +0 -23
  183. package/third-party/cargo/allocator-api2@0.2.21/Cargo.toml +0 -48
  184. package/third-party/cargo/allocator-api2@0.2.21/LICENSE-APACHE +0 -176
  185. package/third-party/cargo/allocator-api2@0.2.21/LICENSE-MIT +0 -23
  186. package/third-party/cargo/arrayref@0.3.9/Cargo.toml +0 -23
  187. package/third-party/cargo/arrayref@0.3.9/LICENSE +0 -26
  188. package/third-party/cargo/arrayvec@0.7.8/Cargo.toml +0 -112
  189. package/third-party/cargo/arrayvec@0.7.8/LICENSE-APACHE +0 -201
  190. package/third-party/cargo/arrayvec@0.7.8/LICENSE-MIT +0 -25
  191. package/third-party/cargo/ascii@1.1.0/Cargo.toml +0 -41
  192. package/third-party/cargo/ascii@1.1.0/LICENSE-APACHE +0 -201
  193. package/third-party/cargo/ascii@1.1.0/LICENSE-MIT +0 -22
  194. package/third-party/cargo/ash@0.38.0+1.3.281/Cargo.toml +0 -66
  195. package/third-party/cargo/ash@0.38.0+1.3.281/LICENSE-APACHE +0 -67
  196. package/third-party/cargo/ash@0.38.0+1.3.281/LICENSE-MIT +0 -25
  197. package/third-party/cargo/autocfg@1.5.1/Cargo.toml +0 -75
  198. package/third-party/cargo/autocfg@1.5.1/LICENSE-APACHE +0 -201
  199. package/third-party/cargo/autocfg@1.5.1/LICENSE-MIT +0 -25
  200. package/third-party/cargo/base64@0.13.1/Cargo.toml +0 -53
  201. package/third-party/cargo/base64@0.13.1/LICENSE-APACHE +0 -201
  202. package/third-party/cargo/base64@0.13.1/LICENSE-MIT +0 -21
  203. package/third-party/cargo/base64@0.22.1/Cargo.toml +0 -85
  204. package/third-party/cargo/base64@0.22.1/LICENSE-APACHE +0 -201
  205. package/third-party/cargo/base64@0.22.1/LICENSE-MIT +0 -21
  206. package/third-party/cargo/bit-set@0.10.0/Cargo.toml +0 -108
  207. package/third-party/cargo/bit-set@0.10.0/LICENSE-APACHE +0 -201
  208. package/third-party/cargo/bit-set@0.10.0/LICENSE-MIT +0 -25
  209. package/third-party/cargo/bit-vec@0.9.1/Cargo.toml +0 -94
  210. package/third-party/cargo/bit-vec@0.9.1/LICENSE-APACHE +0 -201
  211. package/third-party/cargo/bit-vec@0.9.1/LICENSE-MIT +0 -25
  212. package/third-party/cargo/bitflags@2.13.0/Cargo.toml +0 -120
  213. package/third-party/cargo/bitflags@2.13.0/LICENSE-APACHE +0 -201
  214. package/third-party/cargo/bitflags@2.13.0/LICENSE-MIT +0 -25
  215. package/third-party/cargo/block2@0.6.2/Cargo.toml +0 -115
  216. package/third-party/cargo/block2@0.6.2/MIT-terms.txt +0 -22
  217. package/third-party/cargo/block2@0.6.2/madsmtm-objc2-b4167b582b2f-LICENSE.md +0 -34
  218. package/third-party/cargo/bumpalo@3.20.3/Cargo.toml +0 -99
  219. package/third-party/cargo/bumpalo@3.20.3/LICENSE-APACHE +0 -201
  220. package/third-party/cargo/bumpalo@3.20.3/LICENSE-MIT +0 -25
  221. package/third-party/cargo/bytemuck@1.25.1/Cargo.toml +0 -153
  222. package/third-party/cargo/bytemuck@1.25.1/LICENSE-APACHE +0 -61
  223. package/third-party/cargo/bytemuck@1.25.1/LICENSE-MIT +0 -9
  224. package/third-party/cargo/bytemuck@1.25.1/LICENSE-ZLIB +0 -11
  225. package/third-party/cargo/bytemuck_derive@1.11.0/Cargo.toml +0 -60
  226. package/third-party/cargo/bytemuck_derive@1.11.0/LICENSE-APACHE +0 -61
  227. package/third-party/cargo/bytemuck_derive@1.11.0/LICENSE-MIT +0 -9
  228. package/third-party/cargo/bytemuck_derive@1.11.0/LICENSE-ZLIB +0 -11
  229. package/third-party/cargo/byteorder-lite@0.1.0/Cargo.toml +0 -57
  230. package/third-party/cargo/byteorder-lite@0.1.0/LICENSE-MIT +0 -21
  231. package/third-party/cargo/byteorder-lite@0.1.0/UNLICENSE +0 -24
  232. package/third-party/cargo/byteorder@1.5.0/COPYING +0 -3
  233. package/third-party/cargo/byteorder@1.5.0/Cargo.toml +0 -54
  234. package/third-party/cargo/byteorder@1.5.0/LICENSE-MIT +0 -21
  235. package/third-party/cargo/byteorder@1.5.0/UNLICENSE +0 -24
  236. package/third-party/cargo/cfg-if@1.0.4/Cargo.toml +0 -47
  237. package/third-party/cargo/cfg-if@1.0.4/LICENSE-APACHE +0 -201
  238. package/third-party/cargo/cfg-if@1.0.4/LICENSE-MIT +0 -25
  239. package/third-party/cargo/cfg_aliases@0.2.1/Cargo.toml +0 -43
  240. package/third-party/cargo/cfg_aliases@0.2.1/LICENSE +0 -9
  241. package/third-party/cargo/chunked_transfer@1.5.0/Cargo.toml +0 -27
  242. package/third-party/cargo/chunked_transfer@1.5.0/LICENSE-APACHE +0 -201
  243. package/third-party/cargo/chunked_transfer@1.5.0/LICENSE-MIT +0 -22
  244. package/third-party/cargo/codespan-reporting@0.13.1/Cargo.toml +0 -115
  245. package/third-party/cargo/codespan-reporting@0.13.1/LICENSE +0 -201
  246. package/third-party/cargo/color_quant@1.1.0/Cargo.toml +0 -20
  247. package/third-party/cargo/color_quant@1.1.0/LICENSE +0 -21
  248. package/third-party/cargo/console_error_panic_hook@0.1.7/Cargo.toml +0 -27
  249. package/third-party/cargo/console_error_panic_hook@0.1.7/LICENSE-APACHE +0 -201
  250. package/third-party/cargo/console_error_panic_hook@0.1.7/LICENSE-MIT +0 -25
  251. package/third-party/cargo/core_maths@0.1.1/Cargo.toml +0 -37
  252. package/third-party/cargo/core_maths@0.1.1/LICENSE +0 -21
  253. package/third-party/cargo/cosmic-text@0.19.0/Cargo.toml +0 -214
  254. package/third-party/cargo/cosmic-text@0.19.0/LICENSE-APACHE +0 -201
  255. package/third-party/cargo/cosmic-text@0.19.0/LICENSE-MIT +0 -21
  256. package/third-party/cargo/crc32fast@1.5.0/Cargo.toml +0 -68
  257. package/third-party/cargo/crc32fast@1.5.0/LICENSE-APACHE +0 -202
  258. package/third-party/cargo/crc32fast@1.5.0/LICENSE-MIT +0 -21
  259. package/third-party/cargo/data-url@0.3.2/Cargo.toml +0 -63
  260. package/third-party/cargo/data-url@0.3.2/LICENSE-APACHE +0 -201
  261. package/third-party/cargo/data-url@0.3.2/LICENSE-MIT +0 -25
  262. package/third-party/cargo/dispatch2@0.3.1/Cargo.toml +0 -122
  263. package/third-party/cargo/dispatch2@0.3.1/MIT-terms.txt +0 -22
  264. package/third-party/cargo/dispatch2@0.3.1/madsmtm-objc2-8852b424193c-LICENSE.md +0 -34
  265. package/third-party/cargo/dlib@0.5.3/Cargo.toml +0 -43
  266. package/third-party/cargo/dlib@0.5.3/LICENSE.txt +0 -19
  267. package/third-party/cargo/document-features@0.2.12/Cargo.toml +0 -51
  268. package/third-party/cargo/document-features@0.2.12/LICENSE-APACHE +0 -73
  269. package/third-party/cargo/document-features@0.2.12/LICENSE-MIT +0 -19
  270. package/third-party/cargo/equivalent@1.0.2/Cargo.toml +0 -37
  271. package/third-party/cargo/equivalent@1.0.2/LICENSE-APACHE +0 -201
  272. package/third-party/cargo/equivalent@1.0.2/LICENSE-MIT +0 -25
  273. package/third-party/cargo/errno@0.3.14/Cargo.toml +0 -67
  274. package/third-party/cargo/errno@0.3.14/LICENSE-APACHE +0 -201
  275. package/third-party/cargo/errno@0.3.14/LICENSE-MIT +0 -25
  276. package/third-party/cargo/etagere@0.3.0/Cargo.toml +0 -57
  277. package/third-party/cargo/etagere@0.3.0/LICENSE-APACHE +0 -13
  278. package/third-party/cargo/etagere@0.3.0/LICENSE-MIT +0 -20
  279. package/third-party/cargo/euclid@0.22.14/COPYRIGHT +0 -5
  280. package/third-party/cargo/euclid@0.22.14/Cargo.toml +0 -66
  281. package/third-party/cargo/euclid@0.22.14/LICENSE-APACHE +0 -201
  282. package/third-party/cargo/euclid@0.22.14/LICENSE-MIT +0 -25
  283. package/third-party/cargo/fastrand@2.5.0/Cargo.toml +0 -89
  284. package/third-party/cargo/fastrand@2.5.0/LICENSE-APACHE +0 -201
  285. package/third-party/cargo/fastrand@2.5.0/LICENSE-MIT +0 -23
  286. package/third-party/cargo/fdeflate@0.3.7/Cargo.toml +0 -55
  287. package/third-party/cargo/fdeflate@0.3.7/LICENSE-APACHE +0 -177
  288. package/third-party/cargo/fdeflate@0.3.7/LICENSE-MIT +0 -25
  289. package/third-party/cargo/flate2@1.1.9/Cargo.toml +0 -274
  290. package/third-party/cargo/flate2@1.1.9/LICENSE-APACHE +0 -201
  291. package/third-party/cargo/flate2@1.1.9/LICENSE-MIT +0 -25
  292. package/third-party/cargo/float-cmp@0.9.0/Cargo.toml +0 -39
  293. package/third-party/cargo/float-cmp@0.9.0/LICENSE +0 -19
  294. package/third-party/cargo/float_next_after@1.0.0/Cargo.toml +0 -43
  295. package/third-party/cargo/float_next_after@1.0.0/LICENSE +0 -23
  296. package/third-party/cargo/foldhash@0.2.0/Cargo.toml +0 -80
  297. package/third-party/cargo/foldhash@0.2.0/LICENSE +0 -19
  298. package/third-party/cargo/font-types@0.11.3/Cargo.toml +0 -55
  299. package/third-party/cargo/font-types@0.11.3/LICENSE-APACHE +0 -67
  300. package/third-party/cargo/font-types@0.11.3/LICENSE-MIT +0 -25
  301. package/third-party/cargo/fontdb@0.23.0/Cargo.toml +0 -83
  302. package/third-party/cargo/fontdb@0.23.0/LICENSE +0 -21
  303. package/third-party/cargo/futures-core@0.3.32/Cargo.toml +0 -66
  304. package/third-party/cargo/futures-core@0.3.32/LICENSE-APACHE +0 -202
  305. package/third-party/cargo/futures-core@0.3.32/LICENSE-MIT +0 -26
  306. package/third-party/cargo/futures-task@0.3.32/Cargo.toml +0 -58
  307. package/third-party/cargo/futures-task@0.3.32/LICENSE-APACHE +0 -202
  308. package/third-party/cargo/futures-task@0.3.32/LICENSE-MIT +0 -26
  309. package/third-party/cargo/futures-util@0.3.32/Cargo.toml +0 -181
  310. package/third-party/cargo/futures-util@0.3.32/LICENSE-APACHE +0 -202
  311. package/third-party/cargo/futures-util@0.3.32/LICENSE-MIT +0 -26
  312. package/third-party/cargo/getrandom@0.4.3/Cargo.toml +0 -165
  313. package/third-party/cargo/getrandom@0.4.3/LICENSE-APACHE +0 -201
  314. package/third-party/cargo/getrandom@0.4.3/LICENSE-MIT +0 -26
  315. package/third-party/cargo/gif@0.14.2/Cargo.toml +0 -84
  316. package/third-party/cargo/gif@0.14.2/LICENSE-APACHE +0 -201
  317. package/third-party/cargo/gif@0.14.2/LICENSE-MIT +0 -21
  318. package/third-party/cargo/glam@0.33.2/Cargo.toml +0 -354
  319. package/third-party/cargo/glam@0.33.2/LICENSE-APACHE +0 -201
  320. package/third-party/cargo/glam@0.33.2/LICENSE-MIT +0 -23
  321. package/third-party/cargo/glow@0.17.0/Cargo.toml +0 -122
  322. package/third-party/cargo/glow@0.17.0/LICENSE-APACHE +0 -201
  323. package/third-party/cargo/glow@0.17.0/LICENSE-MIT +0 -23
  324. package/third-party/cargo/glow@0.17.0/LICENSE-ZLIB +0 -15
  325. package/third-party/cargo/gltf-derive@1.4.1/Cargo.toml +0 -34
  326. package/third-party/cargo/gltf-derive@1.4.1/LICENSE-APACHE +0 -202
  327. package/third-party/cargo/gltf-derive@1.4.1/LICENSE-MIT +0 -26
  328. package/third-party/cargo/gltf-json@1.4.1/Cargo.toml +0 -50
  329. package/third-party/cargo/gltf-json@1.4.1/LICENSE-APACHE +0 -202
  330. package/third-party/cargo/gltf-json@1.4.1/LICENSE-MIT +0 -26
  331. package/third-party/cargo/gltf@1.4.1/Cargo.toml +0 -122
  332. package/third-party/cargo/gltf@1.4.1/LICENSE-APACHE +0 -202
  333. package/third-party/cargo/gltf@1.4.1/LICENSE-MIT +0 -26
  334. package/third-party/cargo/glyphon@0.12.0/Cargo.toml +0 -35
  335. package/third-party/cargo/glyphon@0.12.0/LICENSE-APACHE +0 -201
  336. package/third-party/cargo/glyphon@0.12.0/LICENSE-MIT +0 -23
  337. package/third-party/cargo/glyphon@0.12.0/LICENSE-ZLIB +0 -15
  338. package/third-party/cargo/gpu-allocator@0.28.0/Cargo.toml +0 -180
  339. package/third-party/cargo/gpu-allocator@0.28.0/LICENSE-APACHE +0 -201
  340. package/third-party/cargo/gpu-allocator@0.28.0/LICENSE-MIT +0 -7
  341. package/third-party/cargo/grid@1.0.1/Cargo.toml +0 -77
  342. package/third-party/cargo/grid@1.0.1/LICENSE +0 -21
  343. package/third-party/cargo/half@2.7.1/Cargo.toml +0 -137
  344. package/third-party/cargo/half@2.7.1/LICENSE-APACHE +0 -176
  345. package/third-party/cargo/half@2.7.1/LICENSE-MIT +0 -19
  346. package/third-party/cargo/harfrust@0.5.2/Cargo.toml +0 -115
  347. package/third-party/cargo/harfrust@0.5.2/harfbuzz-harfrust-efdae3142ab7-LICENSE +0 -22
  348. package/third-party/cargo/hashbrown@0.16.1/Cargo.toml +0 -180
  349. package/third-party/cargo/hashbrown@0.16.1/LICENSE-APACHE +0 -201
  350. package/third-party/cargo/hashbrown@0.16.1/LICENSE-MIT +0 -25
  351. package/third-party/cargo/hashbrown@0.17.1/Cargo.toml +0 -201
  352. package/third-party/cargo/hashbrown@0.17.1/LICENSE-APACHE +0 -201
  353. package/third-party/cargo/hashbrown@0.17.1/LICENSE-MIT +0 -25
  354. package/third-party/cargo/httpdate@1.0.3/Cargo.toml +0 -35
  355. package/third-party/cargo/httpdate@1.0.3/LICENSE-APACHE +0 -201
  356. package/third-party/cargo/httpdate@1.0.3/LICENSE-MIT +0 -19
  357. package/third-party/cargo/image-webp@0.2.4/Cargo.toml +0 -63
  358. package/third-party/cargo/image-webp@0.2.4/LICENSE-APACHE +0 -177
  359. package/third-party/cargo/image-webp@0.2.4/LICENSE-MIT +0 -25
  360. package/third-party/cargo/image@0.25.10/Cargo.toml +0 -248
  361. package/third-party/cargo/image@0.25.10/LICENSE-APACHE +0 -177
  362. package/third-party/cargo/image@0.25.10/LICENSE-MIT +0 -25
  363. package/third-party/cargo/imagesize@0.14.0/Cargo.toml +0 -104
  364. package/third-party/cargo/imagesize@0.14.0/LICENSE +0 -21
  365. package/third-party/cargo/indexmap@2.14.0/Cargo.toml +0 -167
  366. package/third-party/cargo/indexmap@2.14.0/LICENSE-APACHE +0 -201
  367. package/third-party/cargo/indexmap@2.14.0/LICENSE-MIT +0 -25
  368. package/third-party/cargo/inflections@1.1.1/Cargo.toml +0 -21
  369. package/third-party/cargo/inflections@1.1.1/LICENSE +0 -20
  370. package/third-party/cargo/itoa@1.0.18/Cargo.toml +0 -66
  371. package/third-party/cargo/itoa@1.0.18/LICENSE-APACHE +0 -176
  372. package/third-party/cargo/itoa@1.0.18/LICENSE-MIT +0 -23
  373. package/third-party/cargo/js-sys@0.3.103/Cargo.toml +0 -98
  374. package/third-party/cargo/js-sys@0.3.103/LICENSE-APACHE +0 -201
  375. package/third-party/cargo/js-sys@0.3.103/LICENSE-MIT +0 -25
  376. package/third-party/cargo/khronos-egl@6.0.0/Cargo.toml +0 -82
  377. package/third-party/cargo/khronos-egl@6.0.0/LICENSE-APACHE +0 -201
  378. package/third-party/cargo/khronos-egl@6.0.0/LICENSE-MIT +0 -23
  379. package/third-party/cargo/kurbo@0.13.1/Cargo.toml +0 -230
  380. package/third-party/cargo/kurbo@0.13.1/LICENSE-APACHE +0 -202
  381. package/third-party/cargo/kurbo@0.13.1/LICENSE-MIT +0 -25
  382. package/third-party/cargo/lazy_static@1.5.0/Cargo.toml +0 -46
  383. package/third-party/cargo/lazy_static@1.5.0/LICENSE-APACHE +0 -201
  384. package/third-party/cargo/lazy_static@1.5.0/LICENSE-MIT +0 -25
  385. package/third-party/cargo/libc@0.2.186/Cargo.toml +0 -229
  386. package/third-party/cargo/libc@0.2.186/LICENSE-APACHE +0 -176
  387. package/third-party/cargo/libc@0.2.186/LICENSE-MIT +0 -25
  388. package/third-party/cargo/libloading@0.8.9/Cargo.toml +0 -90
  389. package/third-party/cargo/libloading@0.8.9/LICENSE +0 -12
  390. package/third-party/cargo/libm@0.2.16/Cargo.toml +0 -61
  391. package/third-party/cargo/libm@0.2.16/LICENSE.txt +0 -258
  392. package/third-party/cargo/linebender_resource_handle@0.1.1/Cargo.toml +0 -107
  393. package/third-party/cargo/linebender_resource_handle@0.1.1/LICENSE-APACHE +0 -176
  394. package/third-party/cargo/linebender_resource_handle@0.1.1/LICENSE-MIT +0 -19
  395. package/third-party/cargo/litrs@1.0.0/Cargo.toml +0 -63
  396. package/third-party/cargo/litrs@1.0.0/LICENSE-APACHE +0 -176
  397. package/third-party/cargo/litrs@1.0.0/LICENSE-MIT +0 -25
  398. package/third-party/cargo/lock_api@0.4.14/Cargo.toml +0 -68
  399. package/third-party/cargo/lock_api@0.4.14/LICENSE-APACHE +0 -201
  400. package/third-party/cargo/lock_api@0.4.14/LICENSE-MIT +0 -25
  401. package/third-party/cargo/log@0.4.33/Cargo.toml +0 -152
  402. package/third-party/cargo/log@0.4.33/LICENSE-APACHE +0 -201
  403. package/third-party/cargo/log@0.4.33/LICENSE-MIT +0 -25
  404. package/third-party/cargo/lru@0.16.4/Cargo.toml +0 -47
  405. package/third-party/cargo/lru@0.16.4/LICENSE +0 -21
  406. package/third-party/cargo/lyon_geom@1.0.19/Cargo.toml +0 -69
  407. package/third-party/cargo/lyon_geom@1.0.19/nical-lyon-56219c95c658-LICENSE-APACHE +0 -13
  408. package/third-party/cargo/lyon_geom@1.0.19/nical-lyon-56219c95c658-LICENSE-MIT +0 -20
  409. package/third-party/cargo/lyon_path@1.0.19/Cargo.toml +0 -58
  410. package/third-party/cargo/lyon_path@1.0.19/nical-lyon-56219c95c658-LICENSE-APACHE +0 -13
  411. package/third-party/cargo/lyon_path@1.0.19/nical-lyon-56219c95c658-LICENSE-MIT +0 -20
  412. package/third-party/cargo/lyon_tessellation@1.0.20/Cargo.toml +0 -71
  413. package/third-party/cargo/lyon_tessellation@1.0.20/nical-lyon-7fa75ea8eea3-LICENSE-APACHE +0 -13
  414. package/third-party/cargo/lyon_tessellation@1.0.20/nical-lyon-7fa75ea8eea3-LICENSE-MIT +0 -20
  415. package/third-party/cargo/memchr@2.8.3/COPYING +0 -3
  416. package/third-party/cargo/memchr@2.8.3/Cargo.toml +0 -89
  417. package/third-party/cargo/memchr@2.8.3/LICENSE-MIT +0 -21
  418. package/third-party/cargo/memchr@2.8.3/UNLICENSE +0 -24
  419. package/third-party/cargo/memmap2@0.9.11/Cargo.toml +0 -59
  420. package/third-party/cargo/memmap2@0.9.11/LICENSE-APACHE +0 -201
  421. package/third-party/cargo/memmap2@0.9.11/LICENSE-MIT +0 -26
  422. package/third-party/cargo/miniz_oxide@0.8.9/Cargo.toml +0 -91
  423. package/third-party/cargo/miniz_oxide@0.8.9/LICENSE +0 -25
  424. package/third-party/cargo/miniz_oxide@0.8.9/LICENSE-APACHE.md +0 -177
  425. package/third-party/cargo/miniz_oxide@0.8.9/LICENSE-MIT.md +0 -24
  426. package/third-party/cargo/miniz_oxide@0.8.9/LICENSE-ZLIB.md +0 -14
  427. package/third-party/cargo/moxcms@0.8.1/Cargo.toml +0 -113
  428. package/third-party/cargo/moxcms@0.8.1/LICENSE-APACHE.md +0 -201
  429. package/third-party/cargo/moxcms@0.8.1/LICENSE.md +0 -26
  430. package/third-party/cargo/naga-types@30.0.0/Cargo.toml +0 -94
  431. package/third-party/cargo/naga-types@30.0.0/LICENSE.APACHE +0 -176
  432. package/third-party/cargo/naga-types@30.0.0/LICENSE.MIT +0 -21
  433. package/third-party/cargo/naga@30.0.0/Cargo.toml +0 -246
  434. package/third-party/cargo/naga@30.0.0/LICENSE.APACHE +0 -176
  435. package/third-party/cargo/naga@30.0.0/LICENSE.MIT +0 -21
  436. package/third-party/cargo/num-traits@0.2.19/Cargo.toml +0 -54
  437. package/third-party/cargo/num-traits@0.2.19/LICENSE-APACHE +0 -201
  438. package/third-party/cargo/num-traits@0.2.19/LICENSE-MIT +0 -25
  439. package/third-party/cargo/objc2-core-foundation@0.3.2/Cargo.toml +0 -221
  440. package/third-party/cargo/objc2-core-foundation@0.3.2/MIT-terms.txt +0 -22
  441. package/third-party/cargo/objc2-core-foundation@0.3.2/madsmtm-objc2-7b1abfd750a2-LICENSE.md +0 -34
  442. package/third-party/cargo/objc2-core-graphics@0.3.2/Cargo.toml +0 -331
  443. package/third-party/cargo/objc2-core-graphics@0.3.2/MIT-terms.txt +0 -22
  444. package/third-party/cargo/objc2-core-graphics@0.3.2/madsmtm-objc2-7b1abfd750a2-LICENSE.md +0 -34
  445. package/third-party/cargo/objc2-encode@4.1.0/Cargo.toml +0 -81
  446. package/third-party/cargo/objc2-encode@4.1.0/MIT-terms.txt +0 -22
  447. package/third-party/cargo/objc2-encode@4.1.0/madsmtm-objc2-8d214f547736-LICENSE.md +0 -34
  448. package/third-party/cargo/objc2-foundation@0.3.2/Cargo.toml +0 -529
  449. package/third-party/cargo/objc2-foundation@0.3.2/MIT-terms.txt +0 -22
  450. package/third-party/cargo/objc2-foundation@0.3.2/madsmtm-objc2-7b1abfd750a2-LICENSE.md +0 -34
  451. package/third-party/cargo/objc2-io-surface@0.3.2/Cargo.toml +0 -139
  452. package/third-party/cargo/objc2-io-surface@0.3.2/MIT-terms.txt +0 -22
  453. package/third-party/cargo/objc2-io-surface@0.3.2/madsmtm-objc2-7b1abfd750a2-LICENSE.md +0 -34
  454. package/third-party/cargo/objc2-metal@0.3.2/Cargo.toml +0 -601
  455. package/third-party/cargo/objc2-metal@0.3.2/MIT-terms.txt +0 -22
  456. package/third-party/cargo/objc2-metal@0.3.2/madsmtm-objc2-7b1abfd750a2-LICENSE.md +0 -34
  457. package/third-party/cargo/objc2-quartz-core@0.3.2/Cargo.toml +0 -302
  458. package/third-party/cargo/objc2-quartz-core@0.3.2/MIT-terms.txt +0 -22
  459. package/third-party/cargo/objc2-quartz-core@0.3.2/madsmtm-objc2-7b1abfd750a2-LICENSE.md +0 -34
  460. package/third-party/cargo/objc2@0.6.4/Cargo.toml +0 -232
  461. package/third-party/cargo/objc2@0.6.4/MIT-terms.txt +0 -22
  462. package/third-party/cargo/objc2@0.6.4/madsmtm-objc2-8852b424193c-LICENSE.md +0 -34
  463. package/third-party/cargo/once_cell@1.21.4/Cargo.toml +0 -119
  464. package/third-party/cargo/once_cell@1.21.4/LICENSE-APACHE +0 -201
  465. package/third-party/cargo/once_cell@1.21.4/LICENSE-MIT +0 -23
  466. package/third-party/cargo/ordered-float@5.3.0/Cargo.toml +0 -162
  467. package/third-party/cargo/ordered-float@5.3.0/LICENSE-MIT +0 -25
  468. package/third-party/cargo/parking_lot@0.12.5/Cargo.toml +0 -87
  469. package/third-party/cargo/parking_lot@0.12.5/LICENSE-APACHE +0 -201
  470. package/third-party/cargo/parking_lot@0.12.5/LICENSE-MIT +0 -25
  471. package/third-party/cargo/parking_lot_core@0.9.12/Cargo.toml +0 -72
  472. package/third-party/cargo/parking_lot_core@0.9.12/LICENSE-APACHE +0 -201
  473. package/third-party/cargo/parking_lot_core@0.9.12/LICENSE-MIT +0 -25
  474. package/third-party/cargo/pico-args@0.5.0/Cargo.toml +0 -32
  475. package/third-party/cargo/pico-args@0.5.0/LICENSE +0 -20
  476. package/third-party/cargo/pin-project-lite@0.2.17/Cargo.toml +0 -198
  477. package/third-party/cargo/pin-project-lite@0.2.17/LICENSE-APACHE +0 -177
  478. package/third-party/cargo/pin-project-lite@0.2.17/LICENSE-MIT +0 -23
  479. package/third-party/cargo/pkg-config@0.3.33/Cargo.toml +0 -43
  480. package/third-party/cargo/pkg-config@0.3.33/LICENSE-APACHE +0 -201
  481. package/third-party/cargo/pkg-config@0.3.33/LICENSE-MIT +0 -25
  482. package/third-party/cargo/png@0.18.1/Cargo.toml +0 -130
  483. package/third-party/cargo/png@0.18.1/LICENSE-APACHE +0 -201
  484. package/third-party/cargo/png@0.18.1/LICENSE-MIT +0 -25
  485. package/third-party/cargo/pollster@0.4.0/Cargo.toml +0 -53
  486. package/third-party/cargo/pollster@0.4.0/LICENSE-APACHE +0 -201
  487. package/third-party/cargo/pollster@0.4.0/LICENSE-MIT +0 -25
  488. package/third-party/cargo/polycool@0.4.0/Cargo.toml +0 -83
  489. package/third-party/cargo/polycool@0.4.0/LICENSE-APACHE +0 -202
  490. package/third-party/cargo/polycool@0.4.0/LICENSE-MIT +0 -25
  491. package/third-party/cargo/pp-rs@0.2.1/Cargo.toml +0 -23
  492. package/third-party/cargo/pp-rs@0.2.1/LICENSE +0 -29
  493. package/third-party/cargo/presser@0.3.1/Cargo.toml +0 -58
  494. package/third-party/cargo/presser@0.3.1/LICENSE-APACHE +0 -201
  495. package/third-party/cargo/presser@0.3.1/LICENSE-MIT +0 -25
  496. package/third-party/cargo/proc-macro2@1.0.106/Cargo.toml +0 -105
  497. package/third-party/cargo/proc-macro2@1.0.106/LICENSE-APACHE +0 -176
  498. package/third-party/cargo/proc-macro2@1.0.106/LICENSE-MIT +0 -23
  499. package/third-party/cargo/profiling@1.0.18/Cargo.toml +0 -96
  500. package/third-party/cargo/profiling@1.0.18/aclysma-profiling-8271551172eb-LICENSE-APACHE +0 -201
  501. package/third-party/cargo/profiling@1.0.18/aclysma-profiling-8271551172eb-LICENSE-MIT +0 -21
  502. package/third-party/cargo/pxfm@0.1.30/Cargo.toml +0 -53
  503. package/third-party/cargo/pxfm@0.1.30/LICENSE-APACHE.md +0 -201
  504. package/third-party/cargo/pxfm@0.1.30/LICENSE.md +0 -26
  505. package/third-party/cargo/quick-error@2.0.1/Cargo.toml +0 -24
  506. package/third-party/cargo/quick-error@2.0.1/LICENSE-APACHE +0 -202
  507. package/third-party/cargo/quick-error@2.0.1/LICENSE-MIT +0 -19
  508. package/third-party/cargo/quote@1.0.46/Cargo.toml +0 -70
  509. package/third-party/cargo/quote@1.0.46/LICENSE-APACHE +0 -176
  510. package/third-party/cargo/quote@1.0.46/LICENSE-MIT +0 -23
  511. package/third-party/cargo/rangemap@1.7.1/Cargo.toml +0 -91
  512. package/third-party/cargo/rangemap@1.7.1/LICENSE-APACHE +0 -191
  513. package/third-party/cargo/rangemap@1.7.1/LICENSE-MIT +0 -7
  514. package/third-party/cargo/raw-window-handle@0.6.2/Cargo.toml +0 -56
  515. package/third-party/cargo/raw-window-handle@0.6.2/LICENSE-APACHE.md +0 -177
  516. package/third-party/cargo/raw-window-handle@0.6.2/LICENSE-MIT.md +0 -21
  517. package/third-party/cargo/raw-window-handle@0.6.2/LICENSE-ZLIB.md +0 -11
  518. package/third-party/cargo/raw-window-metal@1.1.0/Cargo.toml +0 -111
  519. package/third-party/cargo/raw-window-metal@1.1.0/LICENSE-APACHE +0 -202
  520. package/third-party/cargo/raw-window-metal@1.1.0/LICENSE-MIT +0 -17
  521. package/third-party/cargo/read-fonts@0.37.0/Cargo.toml +0 -95
  522. package/third-party/cargo/read-fonts@0.37.0/LICENSE-APACHE +0 -67
  523. package/third-party/cargo/read-fonts@0.37.0/LICENSE-MIT +0 -25
  524. package/third-party/cargo/read-fonts@0.39.2/Cargo.toml +0 -96
  525. package/third-party/cargo/read-fonts@0.39.2/LICENSE-APACHE +0 -67
  526. package/third-party/cargo/read-fonts@0.39.2/LICENSE-MIT +0 -25
  527. package/third-party/cargo/renderdoc-sys@1.1.0/Cargo.toml +0 -39
  528. package/third-party/cargo/renderdoc-sys@1.1.0/LICENSE-APACHE +0 -201
  529. package/third-party/cargo/renderdoc-sys@1.1.0/LICENSE-MIT +0 -25
  530. package/third-party/cargo/resvg@0.47.0/Cargo.toml +0 -112
  531. package/third-party/cargo/resvg@0.47.0/LICENSE-APACHE +0 -176
  532. package/third-party/cargo/resvg@0.47.0/LICENSE-MIT +0 -25
  533. package/third-party/cargo/rgb@0.8.53/Cargo.toml +0 -110
  534. package/third-party/cargo/rgb@0.8.53/LICENSE +0 -21
  535. package/third-party/cargo/roxmltree@0.21.1/Cargo.toml +0 -75
  536. package/third-party/cargo/roxmltree@0.21.1/LICENSE-APACHE +0 -201
  537. package/third-party/cargo/roxmltree@0.21.1/LICENSE-MIT +0 -21
  538. package/third-party/cargo/rustc-hash@1.1.0/Cargo.toml +0 -25
  539. package/third-party/cargo/rustc-hash@1.1.0/LICENSE-APACHE +0 -201
  540. package/third-party/cargo/rustc-hash@1.1.0/LICENSE-MIT +0 -23
  541. package/third-party/cargo/rustc-hash@2.1.3/Cargo.toml +0 -50
  542. package/third-party/cargo/rustc-hash@2.1.3/LICENSE-APACHE +0 -176
  543. package/third-party/cargo/rustc-hash@2.1.3/LICENSE-MIT +0 -23
  544. package/third-party/cargo/rustix@1.1.4/COPYRIGHT +0 -29
  545. package/third-party/cargo/rustix@1.1.4/Cargo.toml +0 -292
  546. package/third-party/cargo/rustix@1.1.4/LICENSE-APACHE +0 -201
  547. package/third-party/cargo/rustix@1.1.4/LICENSE-Apache-2.0_WITH_LLVM-exception +0 -220
  548. package/third-party/cargo/rustix@1.1.4/LICENSE-MIT +0 -23
  549. package/third-party/cargo/rustversion@1.0.23/Cargo.toml +0 -69
  550. package/third-party/cargo/rustversion@1.0.23/LICENSE-APACHE +0 -176
  551. package/third-party/cargo/rustversion@1.0.23/LICENSE-MIT +0 -23
  552. package/third-party/cargo/rustybuzz@0.20.1/Cargo.toml +0 -110
  553. package/third-party/cargo/rustybuzz@0.20.1/LICENSE +0 -22
  554. package/third-party/cargo/scopeguard@1.2.0/Cargo.toml +0 -43
  555. package/third-party/cargo/scopeguard@1.2.0/LICENSE-APACHE +0 -201
  556. package/third-party/cargo/scopeguard@1.2.0/LICENSE-MIT +0 -25
  557. package/third-party/cargo/self_cell@1.2.2/Cargo.toml +0 -33
  558. package/third-party/cargo/self_cell@1.2.2/LICENSE-APACHE +0 -201
  559. package/third-party/cargo/self_cell@1.2.2/LICENSE-GPLv2 +0 -339
  560. package/third-party/cargo/self_cell@1.3.0/Cargo.toml +0 -33
  561. package/third-party/cargo/self_cell@1.3.0/LICENSE-APACHE +0 -201
  562. package/third-party/cargo/self_cell@1.3.0/LICENSE-GPLv2 +0 -339
  563. package/third-party/cargo/serde@1.0.228/Cargo.toml +0 -84
  564. package/third-party/cargo/serde@1.0.228/LICENSE-APACHE +0 -176
  565. package/third-party/cargo/serde@1.0.228/LICENSE-MIT +0 -23
  566. package/third-party/cargo/serde_core@1.0.228/Cargo.toml +0 -87
  567. package/third-party/cargo/serde_core@1.0.228/LICENSE-APACHE +0 -176
  568. package/third-party/cargo/serde_core@1.0.228/LICENSE-MIT +0 -23
  569. package/third-party/cargo/serde_derive@1.0.228/Cargo.toml +0 -87
  570. package/third-party/cargo/serde_derive@1.0.228/LICENSE-APACHE +0 -176
  571. package/third-party/cargo/serde_derive@1.0.228/LICENSE-MIT +0 -23
  572. package/third-party/cargo/serde_json@1.0.150/Cargo.toml +0 -162
  573. package/third-party/cargo/serde_json@1.0.150/LICENSE-APACHE +0 -176
  574. package/third-party/cargo/serde_json@1.0.150/LICENSE-MIT +0 -23
  575. package/third-party/cargo/simd-adler32@0.3.10/Cargo.toml +0 -68
  576. package/third-party/cargo/simd-adler32@0.3.10/LICENSE.md +0 -21
  577. package/third-party/cargo/simplecss@0.2.2/Cargo.toml +0 -146
  578. package/third-party/cargo/simplecss@0.2.2/LICENSE-APACHE +0 -201
  579. package/third-party/cargo/simplecss@0.2.2/LICENSE-MIT +0 -21
  580. package/third-party/cargo/siphasher@1.0.3/COPYING +0 -7
  581. package/third-party/cargo/siphasher@1.0.3/Cargo.toml +0 -64
  582. package/third-party/cargo/skrifa@0.40.0/Cargo.toml +0 -86
  583. package/third-party/cargo/skrifa@0.40.0/LICENSE-APACHE +0 -67
  584. package/third-party/cargo/skrifa@0.40.0/LICENSE-MIT +0 -25
  585. package/third-party/cargo/skrifa@0.42.1/Cargo.toml +0 -86
  586. package/third-party/cargo/skrifa@0.42.1/LICENSE-APACHE +0 -67
  587. package/third-party/cargo/skrifa@0.42.1/LICENSE-MIT +0 -25
  588. package/third-party/cargo/slab@0.4.12/Cargo.toml +0 -67
  589. package/third-party/cargo/slab@0.4.12/LICENSE +0 -25
  590. package/third-party/cargo/slotmap@1.1.1/Cargo.toml +0 -83
  591. package/third-party/cargo/slotmap@1.1.1/LICENSE +0 -19
  592. package/third-party/cargo/smallvec@1.15.2/Cargo.toml +0 -103
  593. package/third-party/cargo/smallvec@1.15.2/LICENSE-APACHE +0 -201
  594. package/third-party/cargo/smallvec@1.15.2/LICENSE-MIT +0 -25
  595. package/third-party/cargo/smol_str@0.3.6/Cargo.toml +0 -155
  596. package/third-party/cargo/smol_str@0.3.6/LICENSE-APACHE +0 -201
  597. package/third-party/cargo/smol_str@0.3.6/LICENSE-MIT +0 -23
  598. package/third-party/cargo/spirv@0.4.0+sdk-1.4.341.0/Cargo.toml +0 -56
  599. package/third-party/cargo/spirv@0.4.0+sdk-1.4.341.0/gfx-rs-rspirv-8afc3d0ac8e1-LICENSE +0 -202
  600. package/third-party/cargo/static_assertions@1.1.0/Cargo.toml +0 -39
  601. package/third-party/cargo/static_assertions@1.1.0/LICENSE-APACHE +0 -202
  602. package/third-party/cargo/static_assertions@1.1.0/LICENSE-MIT +0 -21
  603. package/third-party/cargo/strict-num@0.1.1/Cargo.toml +0 -35
  604. package/third-party/cargo/strict-num@0.1.1/LICENSE +0 -19
  605. package/third-party/cargo/svgtypes@0.16.1/Cargo.toml +0 -57
  606. package/third-party/cargo/svgtypes@0.16.1/LICENSE-APACHE +0 -201
  607. package/third-party/cargo/svgtypes@0.16.1/LICENSE-MIT +0 -20
  608. package/third-party/cargo/swash@0.2.9/Cargo.toml +0 -93
  609. package/third-party/cargo/swash@0.2.9/LICENSE-APACHE +0 -201
  610. package/third-party/cargo/swash@0.2.9/LICENSE-MIT +0 -25
  611. package/third-party/cargo/syn@2.0.118/Cargo.toml +0 -272
  612. package/third-party/cargo/syn@2.0.118/LICENSE-APACHE +0 -176
  613. package/third-party/cargo/syn@2.0.118/LICENSE-MIT +0 -23
  614. package/third-party/cargo/sys-locale@0.3.2/Cargo.toml +0 -73
  615. package/third-party/cargo/sys-locale@0.3.2/LICENSE-APACHE +0 -201
  616. package/third-party/cargo/sys-locale@0.3.2/LICENSE-MIT +0 -21
  617. package/third-party/cargo/taffy@0.12.1/Cargo.toml +0 -171
  618. package/third-party/cargo/taffy@0.12.1/DioxusLabs-taffy-1c9e37a0a1cf-LICENSE.md +0 -25
  619. package/third-party/cargo/tempfile@3.27.0/Cargo.toml +0 -105
  620. package/third-party/cargo/tempfile@3.27.0/LICENSE-APACHE +0 -201
  621. package/third-party/cargo/tempfile@3.27.0/LICENSE-MIT +0 -25
  622. package/third-party/cargo/termcolor@1.4.1/COPYING +0 -3
  623. package/third-party/cargo/termcolor@1.4.1/Cargo.toml +0 -40
  624. package/third-party/cargo/termcolor@1.4.1/LICENSE-MIT +0 -21
  625. package/third-party/cargo/termcolor@1.4.1/UNLICENSE +0 -24
  626. package/third-party/cargo/thiserror-impl@2.0.18/Cargo.toml +0 -52
  627. package/third-party/cargo/thiserror-impl@2.0.18/LICENSE-APACHE +0 -176
  628. package/third-party/cargo/thiserror-impl@2.0.18/LICENSE-MIT +0 -23
  629. package/third-party/cargo/thiserror@2.0.18/Cargo.toml +0 -119
  630. package/third-party/cargo/thiserror@2.0.18/LICENSE-APACHE +0 -176
  631. package/third-party/cargo/thiserror@2.0.18/LICENSE-MIT +0 -23
  632. package/third-party/cargo/tiny-skia-path@0.12.0/Cargo.toml +0 -58
  633. package/third-party/cargo/tiny-skia-path@0.12.0/LICENSE +0 -30
  634. package/third-party/cargo/tiny-skia@0.12.0/Cargo.toml +0 -116
  635. package/third-party/cargo/tiny-skia@0.12.0/LICENSE +0 -30
  636. package/third-party/cargo/tiny_http@0.12.0/Cargo.toml +0 -82
  637. package/third-party/cargo/tiny_http@0.12.0/LICENSE-APACHE +0 -201
  638. package/third-party/cargo/tiny_http@0.12.0/LICENSE-MIT +0 -25
  639. package/third-party/cargo/tinyvec@1.12.0/Cargo.toml +0 -184
  640. package/third-party/cargo/tinyvec@1.12.0/LICENSE-APACHE.md +0 -202
  641. package/third-party/cargo/tinyvec@1.12.0/LICENSE-MIT.md +0 -5
  642. package/third-party/cargo/tinyvec@1.12.0/LICENSE-ZLIB.md +0 -11
  643. package/third-party/cargo/tinyvec_macros@0.1.1/Cargo.toml +0 -19
  644. package/third-party/cargo/tinyvec_macros@0.1.1/LICENSE-APACHE.md +0 -202
  645. package/third-party/cargo/tinyvec_macros@0.1.1/LICENSE-MIT.md +0 -21
  646. package/third-party/cargo/tinyvec_macros@0.1.1/LICENSE-ZLIB.md +0 -20
  647. package/third-party/cargo/ttf-parser@0.25.1/Cargo.toml +0 -101
  648. package/third-party/cargo/ttf-parser@0.25.1/LICENSE-APACHE +0 -201
  649. package/third-party/cargo/ttf-parser@0.25.1/LICENSE-MIT +0 -20
  650. package/third-party/cargo/unicode-bidi-mirroring@0.4.0/Cargo.toml +0 -22
  651. package/third-party/cargo/unicode-bidi-mirroring@0.4.0/LICENSE-APACHE +0 -201
  652. package/third-party/cargo/unicode-bidi-mirroring@0.4.0/LICENSE-MIT +0 -21
  653. package/third-party/cargo/unicode-bidi@0.3.18/COPYRIGHT +0 -8
  654. package/third-party/cargo/unicode-bidi@0.3.18/Cargo.toml +0 -90
  655. package/third-party/cargo/unicode-bidi@0.3.18/LICENSE-APACHE +0 -201
  656. package/third-party/cargo/unicode-bidi@0.3.18/LICENSE-MIT +0 -25
  657. package/third-party/cargo/unicode-ccc@0.4.0/Cargo.toml +0 -22
  658. package/third-party/cargo/unicode-ccc@0.4.0/LICENSE-APACHE +0 -201
  659. package/third-party/cargo/unicode-ccc@0.4.0/LICENSE-MIT +0 -21
  660. package/third-party/cargo/unicode-ident@1.0.24/Cargo.toml +0 -84
  661. package/third-party/cargo/unicode-ident@1.0.24/LICENSE-APACHE +0 -176
  662. package/third-party/cargo/unicode-ident@1.0.24/LICENSE-MIT +0 -23
  663. package/third-party/cargo/unicode-ident@1.0.24/LICENSE-UNICODE +0 -39
  664. package/third-party/cargo/unicode-linebreak@0.1.5/Cargo.toml +0 -32
  665. package/third-party/cargo/unicode-linebreak@0.1.5/LICENSE +0 -201
  666. package/third-party/cargo/unicode-properties@0.1.4/COPYRIGHT +0 -7
  667. package/third-party/cargo/unicode-properties@0.1.4/Cargo.toml +0 -65
  668. package/third-party/cargo/unicode-properties@0.1.4/LICENSE-APACHE +0 -201
  669. package/third-party/cargo/unicode-properties@0.1.4/LICENSE-MIT +0 -25
  670. package/third-party/cargo/unicode-script@0.5.8/Cargo.toml +0 -63
  671. package/third-party/cargo/unicode-script@0.5.8/LICENSE-APACHE +0 -201
  672. package/third-party/cargo/unicode-script@0.5.8/LICENSE-MIT +0 -27
  673. package/third-party/cargo/unicode-segmentation@1.13.3/COPYRIGHT +0 -7
  674. package/third-party/cargo/unicode-segmentation@1.13.3/Cargo.toml +0 -91
  675. package/third-party/cargo/unicode-segmentation@1.13.3/LICENSE-APACHE +0 -201
  676. package/third-party/cargo/unicode-segmentation@1.13.3/LICENSE-MIT +0 -25
  677. package/third-party/cargo/unicode-vo@0.1.0/Cargo.toml +0 -22
  678. package/third-party/cargo/unicode-vo@0.1.0/LICENSE-APACHE +0 -201
  679. package/third-party/cargo/unicode-vo@0.1.0/LICENSE-MIT +0 -21
  680. package/third-party/cargo/unicode-width@0.2.2/COPYRIGHT +0 -7
  681. package/third-party/cargo/unicode-width@0.2.2/Cargo.toml +0 -77
  682. package/third-party/cargo/unicode-width@0.2.2/LICENSE-APACHE +0 -201
  683. package/third-party/cargo/unicode-width@0.2.2/LICENSE-MIT +0 -25
  684. package/third-party/cargo/unicode-xid@0.2.6/COPYRIGHT +0 -7
  685. package/third-party/cargo/unicode-xid@0.2.6/Cargo.toml +0 -65
  686. package/third-party/cargo/unicode-xid@0.2.6/LICENSE-APACHE +0 -201
  687. package/third-party/cargo/unicode-xid@0.2.6/LICENSE-MIT +0 -25
  688. package/third-party/cargo/urlencoding@2.1.3/Cargo.toml +0 -41
  689. package/third-party/cargo/urlencoding@2.1.3/LICENSE +0 -20
  690. package/third-party/cargo/usvg@0.47.0/Cargo.toml +0 -138
  691. package/third-party/cargo/usvg@0.47.0/LICENSE-APACHE +0 -176
  692. package/third-party/cargo/usvg@0.47.0/LICENSE-MIT +0 -25
  693. package/third-party/cargo/version_check@0.9.5/Cargo.toml +0 -38
  694. package/third-party/cargo/version_check@0.9.5/LICENSE-APACHE +0 -201
  695. package/third-party/cargo/version_check@0.9.5/LICENSE-MIT +0 -19
  696. package/third-party/cargo/wasm-bindgen-futures@0.4.76/Cargo.toml +0 -88
  697. package/third-party/cargo/wasm-bindgen-futures@0.4.76/LICENSE-APACHE +0 -201
  698. package/third-party/cargo/wasm-bindgen-futures@0.4.76/LICENSE-MIT +0 -25
  699. package/third-party/cargo/wasm-bindgen-macro-support@0.2.126/Cargo.toml +0 -83
  700. package/third-party/cargo/wasm-bindgen-macro-support@0.2.126/LICENSE-APACHE +0 -201
  701. package/third-party/cargo/wasm-bindgen-macro-support@0.2.126/LICENSE-MIT +0 -25
  702. package/third-party/cargo/wasm-bindgen-macro@0.2.126/Cargo.toml +0 -73
  703. package/third-party/cargo/wasm-bindgen-macro@0.2.126/LICENSE-APACHE +0 -201
  704. package/third-party/cargo/wasm-bindgen-macro@0.2.126/LICENSE-MIT +0 -25
  705. package/third-party/cargo/wasm-bindgen-shared@0.2.126/Cargo.toml +0 -66
  706. package/third-party/cargo/wasm-bindgen-shared@0.2.126/LICENSE-APACHE +0 -201
  707. package/third-party/cargo/wasm-bindgen-shared@0.2.126/LICENSE-MIT +0 -25
  708. package/third-party/cargo/wasm-bindgen@0.2.126/Cargo.toml +0 -122
  709. package/third-party/cargo/wasm-bindgen@0.2.126/LICENSE-APACHE +0 -201
  710. package/third-party/cargo/wasm-bindgen@0.2.126/LICENSE-MIT +0 -25
  711. package/third-party/cargo/wayland-sys@0.31.11/Cargo.toml +0 -81
  712. package/third-party/cargo/wayland-sys@0.31.11/LICENSE.txt +0 -19
  713. package/third-party/cargo/web-sys@0.3.103/Cargo.toml +0 -2823
  714. package/third-party/cargo/web-sys@0.3.103/LICENSE-APACHE +0 -201
  715. package/third-party/cargo/web-sys@0.3.103/LICENSE-MIT +0 -25
  716. package/third-party/cargo/weezl@0.1.12/Cargo.toml +0 -120
  717. package/third-party/cargo/weezl@0.1.12/LICENSE-APACHE +0 -201
  718. package/third-party/cargo/weezl@0.1.12/LICENSE-MIT +0 -22
  719. package/third-party/cargo/wgpu-core-deps-apple@30.0.0/Cargo.toml +0 -53
  720. package/third-party/cargo/wgpu-core-deps-apple@30.0.0/LICENSE.APACHE +0 -176
  721. package/third-party/cargo/wgpu-core-deps-apple@30.0.0/LICENSE.MIT +0 -21
  722. package/third-party/cargo/wgpu-core@30.0.0/Cargo.toml +0 -237
  723. package/third-party/cargo/wgpu-core@30.0.0/LICENSE.APACHE +0 -176
  724. package/third-party/cargo/wgpu-core@30.0.0/LICENSE.MIT +0 -21
  725. package/third-party/cargo/wgpu-hal@30.0.0/Cargo.toml +0 -541
  726. package/third-party/cargo/wgpu-hal@30.0.0/LICENSE.APACHE +0 -176
  727. package/third-party/cargo/wgpu-hal@30.0.0/LICENSE.MIT +0 -21
  728. package/third-party/cargo/wgpu-naga-bridge@30.0.0/Cargo.toml +0 -46
  729. package/third-party/cargo/wgpu-naga-bridge@30.0.0/LICENSE.APACHE +0 -176
  730. package/third-party/cargo/wgpu-naga-bridge@30.0.0/LICENSE.MIT +0 -21
  731. package/third-party/cargo/wgpu-types@30.0.0/Cargo.toml +0 -161
  732. package/third-party/cargo/wgpu-types@30.0.0/LICENSE.APACHE +0 -176
  733. package/third-party/cargo/wgpu-types@30.0.0/LICENSE.MIT +0 -21
  734. package/third-party/cargo/wgpu@30.0.0/Cargo.toml +0 -278
  735. package/third-party/cargo/wgpu@30.0.0/LICENSE.APACHE +0 -176
  736. package/third-party/cargo/wgpu@30.0.0/LICENSE.MIT +0 -21
  737. package/third-party/cargo/xmlwriter@0.1.0/Cargo.toml +0 -23
  738. package/third-party/cargo/xmlwriter@0.1.0/LICENSE +0 -21
  739. package/third-party/cargo/yazi@0.2.1/Cargo.toml +0 -45
  740. package/third-party/cargo/yazi@0.2.1/LICENSE-APACHE +0 -201
  741. package/third-party/cargo/yazi@0.2.1/LICENSE-MIT +0 -19
  742. package/third-party/cargo/zeno@0.3.3/Cargo.toml +0 -65
  743. package/third-party/cargo/zeno@0.3.3/LICENSE-APACHE +0 -201
  744. package/third-party/cargo/zeno@0.3.3/LICENSE-MIT +0 -25
  745. package/third-party/cargo/zerocopy-derive@0.8.54/Cargo.toml +0 -209
  746. package/third-party/cargo/zerocopy-derive@0.8.54/LICENSE-APACHE +0 -202
  747. package/third-party/cargo/zerocopy-derive@0.8.54/LICENSE-BSD +0 -24
  748. package/third-party/cargo/zerocopy-derive@0.8.54/LICENSE-MIT +0 -26
  749. package/third-party/cargo/zerocopy@0.8.54/Cargo.toml +0 -419
  750. package/third-party/cargo/zerocopy@0.8.54/LICENSE-APACHE +0 -202
  751. package/third-party/cargo/zerocopy@0.8.54/LICENSE-BSD +0 -24
  752. package/third-party/cargo/zerocopy@0.8.54/LICENSE-MIT +0 -26
  753. package/third-party/cargo/zmij@1.0.23/Cargo.toml +0 -90
  754. package/third-party/cargo/zmij@1.0.23/LICENSE-MIT +0 -23
  755. package/third-party/cargo/zune-core@0.5.1/Cargo.toml +0 -47
  756. package/third-party/cargo/zune-core@0.5.1/LICENSE-APACHE +0 -201
  757. package/third-party/cargo/zune-core@0.5.1/LICENSE-MIT +0 -21
  758. package/third-party/cargo/zune-core@0.5.1/LICENSE-ZLIB +0 -19
  759. package/third-party/cargo/zune-jpeg@0.5.15/Cargo.toml +0 -67
  760. package/third-party/cargo/zune-jpeg@0.5.15/LICENSE-APACHE +0 -201
  761. package/third-party/cargo/zune-jpeg@0.5.15/LICENSE-MIT +0 -21
  762. package/third-party/cargo/zune-jpeg@0.5.15/LICENSE-ZLIB +0 -19
  763. package/third-party/npm/@esbuild__darwin-arm64@0.27.4/esbuild-0.27.4-LICENSE.md +0 -21
  764. package/third-party/npm/@esbuild__darwin-arm64@0.27.4/go-LICENSE +0 -27
  765. package/third-party/npm/@esbuild__darwin-arm64@0.27.4/golang-x-sys-c0bba94af5f8-LICENSE +0 -27
  766. package/third-party/npm/@esbuild__darwin-arm64@0.27.4/package.json +0 -20
  767. package/third-party/npm/@floating-ui__core@1.7.5/LICENSE +0 -20
  768. package/third-party/npm/@floating-ui__core@1.7.5/package.json +0 -63
  769. package/third-party/npm/@floating-ui__dom@1.7.6/LICENSE +0 -20
  770. package/third-party/npm/@floating-ui__dom@1.7.6/package.json +0 -71
  771. package/third-party/npm/@floating-ui__react-dom@2.1.8/LICENSE +0 -20
  772. package/third-party/npm/@floating-ui__react-dom@2.1.8/package.json +0 -76
  773. package/third-party/npm/@floating-ui__utils@0.2.11/LICENSE +0 -20
  774. package/third-party/npm/@floating-ui__utils@0.2.11/package.json +0 -70
  775. package/third-party/npm/@radix-ui__primitive@1.1.7/LICENSE +0 -21
  776. package/third-party/npm/@radix-ui__primitive@1.1.7/package.json +0 -79
  777. package/third-party/npm/@radix-ui__react-arrow@1.1.15/LICENSE +0 -21
  778. package/third-party/npm/@radix-ui__react-arrow@1.1.15/package.json +0 -68
  779. package/third-party/npm/@radix-ui__react-collection@1.1.15/LICENSE +0 -21
  780. package/third-party/npm/@radix-ui__react-collection@1.1.15/package.json +0 -71
  781. package/third-party/npm/@radix-ui__react-compose-refs@1.1.5/LICENSE +0 -21
  782. package/third-party/npm/@radix-ui__react-compose-refs@1.1.5/package.json +0 -60
  783. package/third-party/npm/@radix-ui__react-context-menu@2.3.7/LICENSE +0 -21
  784. package/third-party/npm/@radix-ui__react-context-menu@2.3.7/package.json +0 -73
  785. package/third-party/npm/@radix-ui__react-context@1.2.2/LICENSE +0 -21
  786. package/third-party/npm/@radix-ui__react-context@1.2.2/package.json +0 -60
  787. package/third-party/npm/@radix-ui__react-direction@1.1.4/LICENSE +0 -21
  788. package/third-party/npm/@radix-ui__react-direction@1.1.4/package.json +0 -60
  789. package/third-party/npm/@radix-ui__react-dismissable-layer@1.1.19/LICENSE +0 -21
  790. package/third-party/npm/@radix-ui__react-dismissable-layer@1.1.19/package.json +0 -74
  791. package/third-party/npm/@radix-ui__react-focus-guards@1.1.6/LICENSE +0 -21
  792. package/third-party/npm/@radix-ui__react-focus-guards@1.1.6/package.json +0 -60
  793. package/third-party/npm/@radix-ui__react-focus-scope@1.1.16/LICENSE +0 -21
  794. package/third-party/npm/@radix-ui__react-focus-scope@1.1.16/package.json +0 -71
  795. package/third-party/npm/@radix-ui__react-id@1.1.4/LICENSE +0 -21
  796. package/third-party/npm/@radix-ui__react-id@1.1.4/package.json +0 -63
  797. package/third-party/npm/@radix-ui__react-menu@2.1.24/LICENSE +0 -21
  798. package/third-party/npm/@radix-ui__react-menu@2.1.24/package.json +0 -86
  799. package/third-party/npm/@radix-ui__react-popper@1.3.7/LICENSE +0 -21
  800. package/third-party/npm/@radix-ui__react-popper@1.3.7/package.json +0 -78
  801. package/third-party/npm/@radix-ui__react-portal@1.1.17/LICENSE +0 -21
  802. package/third-party/npm/@radix-ui__react-portal@1.1.17/package.json +0 -69
  803. package/third-party/npm/@radix-ui__react-presence@1.1.10/LICENSE +0 -21
  804. package/third-party/npm/@radix-ui__react-presence@1.1.10/package.json +0 -68
  805. package/third-party/npm/@radix-ui__react-primitive@2.1.10/LICENSE +0 -21
  806. package/third-party/npm/@radix-ui__react-primitive@2.1.10/package.json +0 -68
  807. package/third-party/npm/@radix-ui__react-roving-focus@1.1.19/LICENSE +0 -21
  808. package/third-party/npm/@radix-ui__react-roving-focus@1.1.19/package.json +0 -78
  809. package/third-party/npm/@radix-ui__react-slot@1.3.3/LICENSE +0 -21
  810. package/third-party/npm/@radix-ui__react-slot@1.3.3/package.json +0 -63
  811. package/third-party/npm/@radix-ui__react-use-callback-ref@1.1.4/LICENSE +0 -21
  812. package/third-party/npm/@radix-ui__react-use-callback-ref@1.1.4/package.json +0 -60
  813. package/third-party/npm/@radix-ui__react-use-controllable-state@1.2.6/LICENSE +0 -21
  814. package/third-party/npm/@radix-ui__react-use-controllable-state@1.2.6/package.json +0 -65
  815. package/third-party/npm/@radix-ui__react-use-effect-event@0.0.5/LICENSE +0 -21
  816. package/third-party/npm/@radix-ui__react-use-effect-event@0.0.5/package.json +0 -65
  817. package/third-party/npm/@radix-ui__react-use-is-hydrated@0.1.3/LICENSE +0 -21
  818. package/third-party/npm/@radix-ui__react-use-is-hydrated@0.1.3/package.json +0 -61
  819. package/third-party/npm/@radix-ui__react-use-layout-effect@1.1.4/LICENSE +0 -21
  820. package/third-party/npm/@radix-ui__react-use-layout-effect@1.1.4/package.json +0 -60
  821. package/third-party/npm/@radix-ui__react-use-size@1.1.4/LICENSE +0 -21
  822. package/third-party/npm/@radix-ui__react-use-size@1.1.4/package.json +0 -63
  823. package/third-party/npm/aria-hidden@1.2.6/LICENSE +0 -21
  824. package/third-party/npm/aria-hidden@1.2.6/package.json +0 -71
  825. package/third-party/npm/detect-node-es@1.1.0/LICENSE +0 -21
  826. package/third-party/npm/detect-node-es@1.1.0/package.json +0 -29
  827. package/third-party/npm/esbuild@0.27.4/LICENSE.md +0 -21
  828. package/third-party/npm/esbuild@0.27.4/package.json +0 -49
  829. package/third-party/npm/get-nonce@1.0.1/LICENSE +0 -21
  830. package/third-party/npm/get-nonce@1.0.1/package.json +0 -68
  831. package/third-party/npm/mediabunny@1.52.2/LICENSE +0 -373
  832. package/third-party/npm/mediabunny@1.52.2/package.json +0 -136
  833. package/third-party/npm/mediabunny@1.52.2/source/LICENSE +0 -373
  834. package/third-party/npm/mediabunny@1.52.2/source/package.json +0 -136
  835. package/third-party/npm/mediabunny@1.52.2/source/src/adts/adts-demuxer.ts +0 -400
  836. package/third-party/npm/mediabunny@1.52.2/source/src/adts/adts-muxer.ts +0 -124
  837. package/third-party/npm/mediabunny@1.52.2/source/src/adts/adts-reader.ts +0 -85
  838. package/third-party/npm/mediabunny@1.52.2/source/src/aes.ts +0 -307
  839. package/third-party/npm/mediabunny@1.52.2/source/src/codec-data.ts +0 -3178
  840. package/third-party/npm/mediabunny@1.52.2/source/src/codec.ts +0 -1154
  841. package/third-party/npm/mediabunny@1.52.2/source/src/conversion.ts +0 -2042
  842. package/third-party/npm/mediabunny@1.52.2/source/src/custom-coder.ts +0 -212
  843. package/third-party/npm/mediabunny@1.52.2/source/src/decode.ts +0 -263
  844. package/third-party/npm/mediabunny@1.52.2/source/src/demuxer.ts +0 -43
  845. package/third-party/npm/mediabunny@1.52.2/source/src/encode.ts +0 -1412
  846. package/third-party/npm/mediabunny@1.52.2/source/src/flac/flac-demuxer.ts +0 -813
  847. package/third-party/npm/mediabunny@1.52.2/source/src/flac/flac-misc.ts +0 -165
  848. package/third-party/npm/mediabunny@1.52.2/source/src/flac/flac-muxer.ts +0 -350
  849. package/third-party/npm/mediabunny@1.52.2/source/src/hls/hls-demuxer.ts +0 -995
  850. package/third-party/npm/mediabunny@1.52.2/source/src/hls/hls-misc.ts +0 -81
  851. package/third-party/npm/mediabunny@1.52.2/source/src/hls/hls-muxer.ts +0 -1529
  852. package/third-party/npm/mediabunny@1.52.2/source/src/hls/hls-segmented-input.ts +0 -772
  853. package/third-party/npm/mediabunny@1.52.2/source/src/id3.ts +0 -972
  854. package/third-party/npm/mediabunny@1.52.2/source/src/index.ts +0 -319
  855. package/third-party/npm/mediabunny@1.52.2/source/src/input-format.ts +0 -819
  856. package/third-party/npm/mediabunny@1.52.2/source/src/input-track.ts +0 -1141
  857. package/third-party/npm/mediabunny@1.52.2/source/src/input.ts +0 -571
  858. package/third-party/npm/mediabunny@1.52.2/source/src/isobmff/isobmff-boxes.ts +0 -1911
  859. package/third-party/npm/mediabunny@1.52.2/source/src/isobmff/isobmff-demuxer.ts +0 -3953
  860. package/third-party/npm/mediabunny@1.52.2/source/src/isobmff/isobmff-misc.ts +0 -90
  861. package/third-party/npm/mediabunny@1.52.2/source/src/isobmff/isobmff-muxer.ts +0 -1595
  862. package/third-party/npm/mediabunny@1.52.2/source/src/isobmff/isobmff-reader.ts +0 -91
  863. package/third-party/npm/mediabunny@1.52.2/source/src/logging.ts +0 -120
  864. package/third-party/npm/mediabunny@1.52.2/source/src/matroska/ebml.ts +0 -770
  865. package/third-party/npm/mediabunny@1.52.2/source/src/matroska/matroska-demuxer.ts +0 -2598
  866. package/third-party/npm/mediabunny@1.52.2/source/src/matroska/matroska-misc.ts +0 -29
  867. package/third-party/npm/mediabunny@1.52.2/source/src/matroska/matroska-muxer.ts +0 -1360
  868. package/third-party/npm/mediabunny@1.52.2/source/src/media-sink.ts +0 -2589
  869. package/third-party/npm/mediabunny@1.52.2/source/src/media-source.ts +0 -3041
  870. package/third-party/npm/mediabunny@1.52.2/source/src/metadata.ts +0 -335
  871. package/third-party/npm/mediabunny@1.52.2/source/src/misc.ts +0 -1336
  872. package/third-party/npm/mediabunny@1.52.2/source/src/mp3/mp3-demuxer.ts +0 -469
  873. package/third-party/npm/mediabunny@1.52.2/source/src/mp3/mp3-muxer.ts +0 -169
  874. package/third-party/npm/mediabunny@1.52.2/source/src/mp3/mp3-reader.ts +0 -61
  875. package/third-party/npm/mediabunny@1.52.2/source/src/mp3/mp3-writer.ts +0 -121
  876. package/third-party/npm/mediabunny@1.52.2/source/src/mpeg-ts/mpeg-ts-demuxer.ts +0 -2519
  877. package/third-party/npm/mediabunny@1.52.2/source/src/mpeg-ts/mpeg-ts-misc.ts +0 -32
  878. package/third-party/npm/mediabunny@1.52.2/source/src/mpeg-ts/mpeg-ts-muxer.ts +0 -842
  879. package/third-party/npm/mediabunny@1.52.2/source/src/muxer.ts +0 -80
  880. package/third-party/npm/mediabunny@1.52.2/source/src/node.ts +0 -11
  881. package/third-party/npm/mediabunny@1.52.2/source/src/ogg/ogg-demuxer.ts +0 -1087
  882. package/third-party/npm/mediabunny@1.52.2/source/src/ogg/ogg-misc.ts +0 -116
  883. package/third-party/npm/mediabunny@1.52.2/source/src/ogg/ogg-muxer.ts +0 -527
  884. package/third-party/npm/mediabunny@1.52.2/source/src/ogg/ogg-reader.ts +0 -93
  885. package/third-party/npm/mediabunny@1.52.2/source/src/output-format.ts +0 -1425
  886. package/third-party/npm/mediabunny@1.52.2/source/src/output.ts +0 -940
  887. package/third-party/npm/mediabunny@1.52.2/source/src/packet.ts +0 -287
  888. package/third-party/npm/mediabunny@1.52.2/source/src/pcm.ts +0 -112
  889. package/third-party/npm/mediabunny@1.52.2/source/src/reader.ts +0 -391
  890. package/third-party/npm/mediabunny@1.52.2/source/src/resample.ts +0 -287
  891. package/third-party/npm/mediabunny@1.52.2/source/src/sample.ts +0 -3231
  892. package/third-party/npm/mediabunny@1.52.2/source/src/segmented-input.ts +0 -575
  893. package/third-party/npm/mediabunny@1.52.2/source/src/source.ts +0 -2588
  894. package/third-party/npm/mediabunny@1.52.2/source/src/subtitles.ts +0 -131
  895. package/third-party/npm/mediabunny@1.52.2/source/src/target.ts +0 -871
  896. package/third-party/npm/mediabunny@1.52.2/source/src/tsconfig.json +0 -16
  897. package/third-party/npm/mediabunny@1.52.2/source/src/wave/riff-writer.ts +0 -36
  898. package/third-party/npm/mediabunny@1.52.2/source/src/wave/wave-demuxer.ts +0 -583
  899. package/third-party/npm/mediabunny@1.52.2/source/src/wave/wave-muxer.ts +0 -375
  900. package/third-party/npm/mediabunny@1.52.2/source/src/writer.ts +0 -128
  901. package/third-party/npm/react-dom@19.3.0/LICENSE +0 -21
  902. package/third-party/npm/react-dom@19.3.0/package.json +0 -117
  903. package/third-party/npm/react-remove-scroll-bar@2.3.8/package.json +0 -85
  904. package/third-party/npm/react-remove-scroll-bar@2.3.8/react-remove-scroll-bar-LICENSE +0 -21
  905. package/third-party/npm/react-remove-scroll@2.7.2/LICENSE +0 -21
  906. package/third-party/npm/react-remove-scroll@2.7.2/package.json +0 -98
  907. package/third-party/npm/react-style-singleton@2.2.3/LICENSE +0 -21
  908. package/third-party/npm/react-style-singleton@2.2.3/package.json +0 -90
  909. package/third-party/npm/react@19.3.0/LICENSE +0 -21
  910. package/third-party/npm/react@19.3.0/package.json +0 -51
  911. package/third-party/npm/scheduler@0.28.0/LICENSE +0 -21
  912. package/third-party/npm/scheduler@0.28.0/package.json +0 -27
  913. package/third-party/npm/tslib@2.8.1/LICENSE.txt +0 -12
  914. package/third-party/npm/tslib@2.8.1/package.json +0 -47
  915. package/third-party/npm/typescript@5.9.3/LICENSE.txt +0 -55
  916. package/third-party/npm/typescript@5.9.3/ThirdPartyNoticeText.txt +0 -193
  917. package/third-party/npm/typescript@5.9.3/package.json +0 -120
  918. package/third-party/npm/use-callback-ref@1.3.3/LICENSE +0 -21
  919. package/third-party/npm/use-callback-ref@1.3.3/package.json +0 -85
  920. package/third-party/npm/use-sidecar@1.1.3/LICENSE +0 -21
  921. package/third-party/npm/use-sidecar@1.1.3/package.json +0 -93
  922. package/third-party/packages/render-engine/assets/OFL.txt +0 -93
  923. package/third-party/packages/studio/public/fonts/OFL.txt +0 -93
  924. package/third-party/packages/studio/vendor/osmo-icons/LICENSE +0 -21
  925. package/third-party/packages/studio/vendor/shadcn/LICENSE +0 -21
  926. package/third-party/repository-notices.md +0 -41
  927. package/third-party/rust-standard-library/COPYRIGHT-library.html +0 -5556
  928. package/third-party/rust-standard-library/licenses/Apache-2.0.txt +0 -73
  929. package/third-party/rust-standard-library/licenses/BSD-2-Clause.txt +0 -9
  930. package/third-party/rust-standard-library/licenses/CC-BY-SA-4.0.txt +0 -427
  931. package/third-party/rust-standard-library/licenses/GCC-exception-3.1.txt +0 -30
  932. package/third-party/rust-standard-library/licenses/GPL-2.0-only.txt +0 -133
  933. package/third-party/rust-standard-library/licenses/GPL-3.0-or-later.txt +0 -202
  934. package/third-party/rust-standard-library/licenses/ISC.txt +0 -7
  935. package/third-party/rust-standard-library/licenses/LLVM-exception.txt +0 -15
  936. package/third-party/rust-standard-library/licenses/MIT.txt +0 -9
  937. package/third-party/rust-standard-library/licenses/NCSA.txt +0 -29
  938. package/third-party/rust-standard-library/licenses/OFL-1.1.txt +0 -43
  939. package/third-party/rust-standard-library/licenses/Unicode-3.0.txt +0 -39
  940. package/third-party/rust-standard-library/version.txt +0 -1
  941. package/vendor/osmo-lite +0 -0
  942. package/vendor/osmo-scene-0.1.0.tgz +0 -0
  943. package/vendor/platform.json +0 -1
@@ -1,1141 +0,0 @@
1
- /*!
2
- * Copyright (c) 2026-present, Vanilagy and contributors
3
- *
4
- * This Source Code Form is subject to the terms of the Mozilla Public
5
- * License, v. 2.0. If a copy of the MPL was not distributed with this
6
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
7
- */
8
-
9
- import { AudioCodec, MediaCodec, VideoCodec } from './codec';
10
- import { determineVideoPacketType } from './codec-data';
11
- import { customAudioDecoders, customVideoDecoders } from './custom-coder';
12
- import { Input } from './input';
13
- import { Logging } from './logging';
14
- import { EncodedPacketSink, PacketRetrievalOptions } from './media-sink';
15
- import { assert, MaybePromise, Rational, Rotation, roundToDivisor, simplifyRational } from './misc';
16
- import { TrackType } from './output';
17
- import { EncodedPacket, PacketType } from './packet';
18
- import { TrackDisposition } from './metadata';
19
- import { DurationMetadataRequestOptions } from './demuxer';
20
-
21
- /**
22
- * Contains aggregate statistics about the encoded packets of a track.
23
- * @group Input files & tracks
24
- * @public
25
- */
26
- export type PacketStats = {
27
- /** The total number of packets. */
28
- packetCount: number;
29
- /** The average number of packets per second. For video tracks, this will equal the average frame rate (FPS). */
30
- averagePacketRate: number;
31
- /** The average number of bits per second. */
32
- averageBitrate: number;
33
- };
34
-
35
- export interface InputTrackBacking {
36
- getType(): TrackType;
37
- getId(): number;
38
- getNumber(): number;
39
-
40
- getCodec(): MaybePromise<MediaCodec | null>;
41
- getInternalCodecId(): MaybePromise<string | number | Uint8Array | null>;
42
- getName(): MaybePromise<string | null>;
43
- getLanguageCode(): MaybePromise<string>;
44
- getTimeResolution(): MaybePromise<number>;
45
- isRelativeToUnixEpoch(): MaybePromise<boolean>;
46
- getUnixTimeForTimestamp(timestamp: number): MaybePromise<number | null>;
47
- getDisposition(): MaybePromise<TrackDisposition>;
48
- getPairingMask(): bigint;
49
- getBitrate(): MaybePromise<number | null>;
50
- getAverageBitrate(): MaybePromise<number | null>;
51
- getDurationFromMetadata(options: DurationMetadataRequestOptions): Promise<number | null>;
52
- getLiveRefreshInterval(): Promise<number | null>;
53
- getHasOnlyKeyPackets?(): MaybePromise<boolean | null>;
54
- getDecoderConfig(): Promise<VideoDecoderConfig | AudioDecoderConfig | null>;
55
- getMetadataCodecParameterString?(): MaybePromise<string | null>;
56
-
57
- getFirstPacket(options: PacketRetrievalOptions): Promise<EncodedPacket | null>;
58
- getPacket(timestamp: number, options: PacketRetrievalOptions): Promise<EncodedPacket | null>;
59
- getNextPacket(packet: EncodedPacket, options: PacketRetrievalOptions): Promise<EncodedPacket | null>;
60
- getKeyPacket(timestamp: number, options: PacketRetrievalOptions): Promise<EncodedPacket | null>;
61
- getNextKeyPacket(packet: EncodedPacket, options: PacketRetrievalOptions): Promise<EncodedPacket | null>;
62
- }
63
-
64
- /**
65
- * Represents a media track in an input file.
66
- * @group Input files & tracks
67
- * @public
68
- */
69
- export abstract class InputTrack {
70
- /** The input file this track belongs to. */
71
- readonly input: Input;
72
- /** @internal */
73
- _backing: InputTrackBacking;
74
- /** @internal */
75
- constructor(input: Input, backing: InputTrackBacking) {
76
- this.input = input;
77
- this._backing = backing;
78
- }
79
-
80
- /** The type of the track. */
81
- abstract get type(): TrackType;
82
- /** Returns the codec of the track's packets. */
83
- abstract getCodec(): Promise<MediaCodec | null>;
84
- /**
85
- * The codec of the track's packets.
86
- * @deprecated Use {@link InputTrack.getCodec} instead.
87
- */
88
- // eslint-disable-next-line @typescript-eslint/no-deprecated
89
- abstract get codec(): MediaCodec | null;
90
- /** Returns the full codec parameter string for this track. */
91
- abstract getCodecParameterString(): Promise<string | null>;
92
- /** Checks if this track's packets can be decoded by the browser. */
93
- abstract canDecode(): Promise<boolean>;
94
- /**
95
- * For a given packet of this track, this method determines the actual type of this packet (key/delta) by looking
96
- * into its bitstream. Returns null if the type couldn't be determined.
97
- */
98
- abstract determinePacketType(packet: EncodedPacket): Promise<PacketType | null>;
99
- /**
100
- * Returns whether the track metadata says that this track only contains key packets. The actual packets may
101
- * differ.
102
- */
103
- abstract hasOnlyKeyPackets(): Promise<boolean>;
104
-
105
- /** Returns true if and only if this track is a video track. */
106
- isVideoTrack(): this is InputVideoTrack {
107
- return this instanceof InputVideoTrack;
108
- }
109
-
110
- /** Returns true if and only if this track is an audio track. */
111
- isAudioTrack(): this is InputAudioTrack {
112
- return this instanceof InputAudioTrack;
113
- }
114
-
115
- /** The unique ID of this track in the input file. */
116
- get id() {
117
- return this._backing.getId();
118
- }
119
-
120
- /**
121
- * The 1-based index of this track among all tracks of the same type in the input file. For example, the first
122
- * video track has number 1, the second video track has number 2, and so on. The index refers to the order in
123
- * which the tracks are returned by {@link Input.getTracks}.
124
- */
125
- get number() {
126
- return this._backing.getNumber();
127
- }
128
-
129
- /**
130
- * Returns the identifier of the codec used internally by the container. It is not homogenized by Mediabunny
131
- * and depends entirely on the container format.
132
- *
133
- * This method can be used to determine the codec of a track in case Mediabunny doesn't know that codec.
134
- *
135
- * - For ISOBMFF files, this resolves to the name of the Sample Description Box (e.g. `'avc1'`).
136
- * - For Matroska files, this resolves to the value of the `CodecID` element.
137
- * - For WAVE files, this resolves to the value of the format tag in the `'fmt '` chunk.
138
- * - For ADTS files, this resolves to the `MPEG-4 Audio Object Type`.
139
- * - For MPEG-TS files, this resolves to the `streamType` value from the Program Map Table.
140
- * - In all other cases, this resolves to `null`.
141
- */
142
- async getInternalCodecId() {
143
- return this._backing.getInternalCodecId();
144
- }
145
-
146
- /**
147
- * See {@link InputTrack.getInternalCodecId}.
148
- * @deprecated Use {@link InputTrack.getInternalCodecId} instead.
149
- */
150
- get internalCodecId() {
151
- return requireSync(this._backing.getInternalCodecId(), 'internalCodecId', 'getInternalCodecId');
152
- }
153
-
154
- /**
155
- * Returns the ISO 639-2/T language code for this track. If the language is unknown, this resolves to `'und'`
156
- * (undetermined).
157
- */
158
- async getLanguageCode() {
159
- return this._backing.getLanguageCode();
160
- }
161
-
162
- /**
163
- * The ISO 639-2/T language code for this track. If the language is unknown, this field is `'und'` (undetermined).
164
- * @deprecated Use {@link InputTrack.getLanguageCode} instead.
165
- */
166
- get languageCode() {
167
- return requireSync(this._backing.getLanguageCode(), 'languageCode', 'getLanguageCode');
168
- }
169
-
170
- /** Returns the user-defined name for this track. */
171
- async getName() {
172
- return this._backing.getName();
173
- }
174
-
175
- /**
176
- * A user-defined name for this track.
177
- * @deprecated Use {@link InputTrack.getName} instead.
178
- */
179
- get name() {
180
- return requireSync(this._backing.getName(), 'name', 'getName');
181
- }
182
-
183
- /**
184
- * Returns a positive number x such that all timestamps and durations of all packets of this track are
185
- * integer multiples of 1/x.
186
- */
187
- async getTimeResolution() {
188
- return this._backing.getTimeResolution();
189
- }
190
-
191
- /**
192
- * A positive number x such that all timestamps and durations of all packets of this track are
193
- * integer multiples of 1/x.
194
- * @deprecated Use {@link InputTrack.getTimeResolution} instead.
195
- */
196
- get timeResolution() {
197
- return requireSync(this._backing.getTimeResolution(), 'timeResolution', 'getTimeResolution');
198
- }
199
-
200
- /**
201
- * Returns whether the timestamps of this track are relative to the Unix epoch (January 1, 1970 00:00:00 UTC).
202
- * When `true`, each timestamp maps to a definitive point in time.
203
- */
204
- async isRelativeToUnixEpoch() {
205
- return this._backing.isRelativeToUnixEpoch();
206
- }
207
-
208
- /**
209
- * Returns the Unix time (in seconds since January 1, 1970 00:00:00 UTC) that the given track timestamp (in seconds)
210
- * maps to, or `null` if there is no such mapping. This provides a piecewise-continuous mapping from this track's
211
- * timestamp space into wall-clock time. Such mapping exists, for example, for HLS playlists with
212
- * `#EXT-X-PROGRAM-DATE-TIME` tags present.
213
- *
214
- * This mapping can be available even when {@link InputTrack.isRelativeToUnixEpoch} is `false`, for example for HLS
215
- * streams with program date time information but with {@link HlsInputFormatOptions.offsetTimestampsByDateTime}
216
- * set to `false`.
217
- */
218
- async getUnixTimeForTimestamp(timestamp: number): Promise<number | null> {
219
- return this._backing.getUnixTimeForTimestamp(timestamp);
220
- }
221
-
222
- /**
223
- * Whether the track's timestamps can be mapped to Unix wall clock time via
224
- * {@link InputTrack.getUnixTimeForTimestamp}.
225
- */
226
- async hasUnixTimeMapping(): Promise<boolean> {
227
- return (await this._backing.getUnixTimeForTimestamp(await this.getFirstTimestamp())) !== null;
228
- }
229
-
230
- /** Returns the track's disposition, i.e. information about its intended usage. */
231
- async getDisposition() {
232
- return this._backing.getDisposition();
233
- }
234
-
235
- /**
236
- * The track's disposition, i.e. information about its intended usage.
237
- * @deprecated Use {@link InputTrack.getDisposition} instead.
238
- */
239
- get disposition() {
240
- return requireSync(this._backing.getDisposition(), 'disposition', 'getDisposition');
241
- }
242
-
243
- /**
244
- * Returns the peak bitrate of the track in bits per second, as specified in the track's metadata. This might not
245
- * match the actual media data's bitrate.
246
- */
247
- async getBitrate() {
248
- return this._backing.getBitrate();
249
- }
250
-
251
- /**
252
- * Returns the average bitrate of the track in bits per second, as specified in the track's metadata. This might
253
- * not match the actual media data's bitrate.
254
- */
255
- async getAverageBitrate() {
256
- return this._backing.getAverageBitrate();
257
- }
258
-
259
- /**
260
- * Returns the start timestamp of the first packet of this track, in seconds. While often near zero, this value
261
- * may be positive or even negative. A negative starting timestamp means the track's timing has been offset. Samples
262
- * with a negative timestamp should not be presented.
263
- */
264
- async getFirstTimestamp() {
265
- const firstPacket = await this._backing.getFirstPacket({ metadataOnly: true });
266
- return firstPacket?.timestamp ?? 0;
267
- }
268
-
269
- /**
270
- * Returns the end timestamp of the last packet of this track, in seconds.
271
- *
272
- * By default, when the underlying media is live, this method will only resolve once the live stream ends. If you
273
- * want to query the current end timestamp of the stream, set {@link PacketRetrievalOptions.skipLiveWait} to `true`
274
- * in the options.
275
- */
276
- async computeDuration(options?: PacketRetrievalOptions) {
277
- const lastPacket = await this._backing.getPacket(Infinity, { metadataOnly: true, ...options });
278
- const result = (lastPacket?.timestamp ?? 0) + (lastPacket?.duration ?? 0);
279
-
280
- return roundToDivisor(result, await this.getTimeResolution());
281
- }
282
-
283
- /**
284
- * Gets the duration (end timestamp) in seconds of this track from metadata stored in the file. This value may be
285
- * approximate or diverge from the actual, precise duration returned by `.computeDuration()`, but compared to that
286
- * method, this method is cheaper. When the duration cannot be determined from the file metadata, `null`
287
- * is returned.
288
- *
289
- * By default, when the underlying media is live, this method will only resolve once the live stream
290
- * ends. If you want to query the current duration of the media, set
291
- * {@link DurationMetadataRequestOptions.skipLiveWait} to `true` in the options.
292
- */
293
- async getDurationFromMetadata(options: DurationMetadataRequestOptions = {}) {
294
- return this._backing.getDurationFromMetadata(options);
295
- }
296
-
297
- /**
298
- * Computes aggregate packet statistics for this track, such as average packet rate or bitrate.
299
- *
300
- * @param targetPacketCount - This optional parameter sets a target for how many packets this method must have
301
- * looked at before it can return early; this means, you can use it to aggregate only a subset (prefix) of all
302
- * packets. This is very useful for getting a great estimate of video frame rate without having to scan through the
303
- * entire file.
304
- *
305
- * By default, when the underlying media is live and `targetPacketCount` is not set, this method will only resolve
306
- * once the live stream ends. If you want to query the current packet statistics of the stream, set
307
- * {@link PacketRetrievalOptions.skipLiveWait} to `true` in the options.
308
- */
309
- async computePacketStats(targetPacketCount = Infinity, options?: PacketRetrievalOptions): Promise<PacketStats> {
310
- const sink = new EncodedPacketSink(this);
311
-
312
- let startTimestamp = Infinity;
313
- let endTimestamp = -Infinity;
314
- let packetCount = 0;
315
- let totalPacketBytes = 0;
316
-
317
- for await (const packet of sink.packets(undefined, undefined, { metadataOnly: true, ...options })) {
318
- if (
319
- packetCount >= targetPacketCount
320
- // This additional condition is needed to produce correct results with out-of-presentation-order packets
321
- && packet.timestamp >= endTimestamp
322
- ) {
323
- break;
324
- }
325
-
326
- startTimestamp = Math.min(startTimestamp, packet.timestamp);
327
- endTimestamp = Math.max(endTimestamp, packet.timestamp + packet.duration);
328
-
329
- packetCount++;
330
- totalPacketBytes += packet.byteLength;
331
- }
332
-
333
- return {
334
- packetCount,
335
- averagePacketRate: packetCount
336
- ? Number((packetCount / (endTimestamp - startTimestamp)).toPrecision(16))
337
- : 0,
338
- averageBitrate: packetCount
339
- ? Number((8 * totalPacketBytes / (endTimestamp - startTimestamp)).toPrecision(16))
340
- : 0,
341
- };
342
- }
343
-
344
- /**
345
- * Whether or not this track is currently live, meaning the media's end is still unknown.
346
- *
347
- * The value returned by this method may change over time as the track stops being live. To keep track of the
348
- * track's live status, poll this method at the track's refresh interval
349
- * via {@link InputTrack.getLiveRefreshInterval}.
350
- */
351
- async isLive() {
352
- return (await this._backing.getLiveRefreshInterval()) !== null;
353
- }
354
-
355
- /**
356
- * Returns the track's live refresh interval in seconds, or `null` if the track is not live. This interval describes
357
- * the time it takes, on average, for new live media data to become available.
358
- */
359
- async getLiveRefreshInterval() {
360
- return this._backing.getLiveRefreshInterval();
361
- }
362
-
363
- /**
364
- * Returns `true` if this track can be paired with the given track. Two tracks being pairable means they can be
365
- * presented (displayed) together.
366
- *
367
- * Returns `false` if `other` equals `this`.
368
- */
369
- canBePairedWith(other: InputTrack) {
370
- if (!(other instanceof InputTrack)) {
371
- throw new TypeError('other must be an InputTrack.');
372
- }
373
-
374
- if (this.input !== other.input || this === other) {
375
- return false;
376
- }
377
-
378
- return (this._backing.getPairingMask() & other._backing.getPairingMask()) !== 0n;
379
- }
380
-
381
- /**
382
- * Gets the list of other tracks that can be paired with this track. An optional query can be provided to narrow
383
- * down the results.
384
- */
385
- async getPairableTracks(query?: InputTrackQuery<InputTrack>) {
386
- return this.input.getTracks(mergeInputTrackQueries({
387
- filter: t => t.canBePairedWith(this),
388
- }, query));
389
- }
390
-
391
- /**
392
- * Gets the list of other video tracks that can be paired with this track. An optional query can be provided to
393
- * narrow down the results.
394
- */
395
- async getPairableVideoTracks(query?: InputTrackQuery<InputVideoTrack>) {
396
- return this.input.getVideoTracks(mergeInputTrackQueries({
397
- filter: t => t.canBePairedWith(this),
398
- }, query));
399
- }
400
-
401
- /**
402
- * Gets the list of other audio tracks that can be paired with this track. An optional query can be provided to
403
- * narrow down the results.
404
- */
405
- async getPairableAudioTracks(query?: InputTrackQuery<InputAudioTrack>) {
406
- return this.input.getAudioTracks(mergeInputTrackQueries({
407
- filter: t => t.canBePairedWith(this),
408
- }, query));
409
- }
410
-
411
- /** Returns the primary track that can be paired with this track, optionally steered by the provided query. */
412
- async getPrimaryPairableVideoTrack(query?: InputTrackQuery<InputVideoTrack>) {
413
- return this.input.getPrimaryVideoTrack(mergeInputTrackQueries({
414
- filter: t => t.canBePairedWith(this),
415
- }, query));
416
- }
417
-
418
- /** Returns the primary track that can be paired with this track, optionally steered by the provided query. */
419
- async getPrimaryPairableAudioTrack(query?: InputTrackQuery<InputAudioTrack>) {
420
- return this.input.getPrimaryAudioTrack(mergeInputTrackQueries({
421
- filter: t => t.canBePairedWith(this),
422
- }, query));
423
- }
424
-
425
- /** Returns `true` if there is another track that can be paired with this track. */
426
- async hasPairableTrack(predicate?: (track: InputTrack) => MaybePromise<boolean>): Promise<boolean> {
427
- predicate &&= toValidatedPredicate(predicate);
428
-
429
- const tracks = await this.input.getTracks();
430
- for (const track of tracks) {
431
- if (!this.canBePairedWith(track)) {
432
- continue;
433
- }
434
- if (!predicate || await predicate(track)) {
435
- return true;
436
- }
437
- }
438
-
439
- return false;
440
- }
441
-
442
- /** Returns `true` if there is a video track that can be paired with this track. */
443
- hasPairableVideoTrack(predicate?: (track: InputVideoTrack) => MaybePromise<boolean>): Promise<boolean> {
444
- predicate &&= toValidatedPredicate(predicate);
445
-
446
- return this.hasPairableTrack(async x =>
447
- x.isVideoTrack() && (!predicate || await predicate(x)),
448
- );
449
- }
450
-
451
- /** Returns `true` if there is an audio track that can be paired with this track. */
452
- hasPairableAudioTrack(predicate?: (track: InputAudioTrack) => MaybePromise<boolean>): Promise<boolean> {
453
- predicate &&= toValidatedPredicate(predicate);
454
-
455
- return this.hasPairableTrack(async x =>
456
- x.isAudioTrack() && (!predicate || await predicate(x)),
457
- );
458
- }
459
- }
460
-
461
- const requireSync = <T>(value: MaybePromise<T>, getterName: string, asyncName: string): T => {
462
- if (value instanceof Promise) {
463
- throw new Error(
464
- `'${getterName}' is deprecated and not available synchronously for this track. Use the preferred`
465
- + ` '${asyncName}()' instead.`,
466
- );
467
- }
468
- return value;
469
- };
470
-
471
- const toValidatedPredicate = <T extends InputTrack>(
472
- predicate?: (track: T) => MaybePromise<boolean>,
473
- ) => {
474
- if (predicate !== undefined && typeof predicate !== 'function') {
475
- throw new TypeError('predicate, when provided, must be a function.');
476
- }
477
-
478
- return predicate
479
- ? (track: T) => {
480
- const handle = (result: boolean) => {
481
- if (typeof result !== 'boolean') {
482
- throw new TypeError('predicate must return or resolve to a boolean value.');
483
- }
484
- return result;
485
- };
486
-
487
- const result = predicate(track);
488
- if (result instanceof Promise) {
489
- return result.then(handle);
490
- }
491
- return handle(result);
492
- }
493
- : undefined;
494
- };
495
-
496
- export interface InputVideoTrackBacking extends InputTrackBacking {
497
- getType(): 'video';
498
- getCodec(): MaybePromise<VideoCodec | null>;
499
- getCodedWidth(): MaybePromise<number>;
500
- getCodedHeight(): MaybePromise<number>;
501
- getSquarePixelWidth(): MaybePromise<number>;
502
- getSquarePixelHeight(): MaybePromise<number>;
503
- getMetadataDisplayWidth?(): MaybePromise<number | null>;
504
- getMetadataDisplayHeight?(): MaybePromise<number | null>;
505
- getRotation(): MaybePromise<Rotation>;
506
- getColorSpace(): Promise<VideoColorSpaceInit>;
507
- canBeTransparent(): Promise<boolean>;
508
- getDecoderConfig(): Promise<VideoDecoderConfig | null>;
509
- }
510
-
511
- /**
512
- * Represents a video track in an input file.
513
- * @group Input files & tracks
514
- * @public
515
- */
516
- export class InputVideoTrack extends InputTrack {
517
- /** @internal */
518
- override _backing: InputVideoTrackBacking;
519
- /** @internal */
520
- _pixelAspectRatioCache: Rational | null = null;
521
-
522
- /** @internal */
523
- constructor(input: Input, backing: InputVideoTrackBacking) {
524
- super(input, backing);
525
-
526
- this._backing = backing;
527
- }
528
-
529
- get type(): TrackType {
530
- return 'video';
531
- }
532
-
533
- /** The codec of the track's packets. */
534
- async getCodec(): Promise<VideoCodec | null> {
535
- return this._backing.getCodec();
536
- }
537
-
538
- /**
539
- * The codec of the track's packets.
540
- * @deprecated Use {@link InputVideoTrack.getCodec} instead.
541
- */
542
- get codec(): VideoCodec | null {
543
- return requireSync(this._backing.getCodec(), 'codec', 'getCodec');
544
- }
545
-
546
- async hasOnlyKeyPackets() {
547
- return (await this._backing.getHasOnlyKeyPackets?.())
548
- ?? (await this._backing.getCodec() === 'prores'); // Only ProRes is fully intra-frame
549
- }
550
-
551
- /** Returns the width in pixels of the track's coded samples, before any transformations or rotations. */
552
- async getCodedWidth() {
553
- return this._backing.getCodedWidth();
554
- }
555
-
556
- /**
557
- * The width in pixels of the track's coded samples, before any transformations or rotations.
558
- * @deprecated Use {@link InputVideoTrack.getCodedWidth} instead.
559
- */
560
- get codedWidth() {
561
- return requireSync(this._backing.getCodedWidth(), 'codedWidth', 'getCodedWidth');
562
- }
563
-
564
- /** Returns the height in pixels of the track's coded samples, before any transformations or rotations. */
565
- async getCodedHeight() {
566
- return this._backing.getCodedHeight();
567
- }
568
-
569
- /**
570
- * The height in pixels of the track's coded samples, before any transformations or rotations.
571
- * @deprecated Use {@link InputVideoTrack.getCodedHeight} instead.
572
- */
573
- get codedHeight() {
574
- return requireSync(this._backing.getCodedHeight(), 'codedHeight', 'getCodedHeight');
575
- }
576
-
577
- /** Returns the angle in degrees by which the track's frames should be rotated (clockwise). */
578
- async getRotation() {
579
- return this._backing.getRotation();
580
- }
581
-
582
- /**
583
- * The angle in degrees by which the track's frames should be rotated (clockwise).
584
- * @deprecated Use {@link InputVideoTrack.getRotation} instead.
585
- */
586
- get rotation() {
587
- return requireSync(this._backing.getRotation(), 'rotation', 'getRotation');
588
- }
589
-
590
- /**
591
- * Returns the width of the track's frames in square pixels, adjusted for pixel aspect ratio but before rotation.
592
- */
593
- async getSquarePixelWidth() {
594
- return this._backing.getSquarePixelWidth();
595
- }
596
-
597
- /**
598
- * The width of the track's frames in square pixels, adjusted for pixel aspect ratio but before rotation.
599
- * @deprecated Use {@link InputVideoTrack.getSquarePixelWidth} instead.
600
- */
601
- get squarePixelWidth() {
602
- return requireSync(this._backing.getSquarePixelWidth(), 'squarePixelWidth', 'getSquarePixelWidth');
603
- }
604
-
605
- /**
606
- * Returns the height of the track's frames in square pixels, adjusted for pixel aspect ratio but before rotation.
607
- */
608
- async getSquarePixelHeight() {
609
- return this._backing.getSquarePixelHeight();
610
- }
611
-
612
- /**
613
- * The height of the track's frames in square pixels, adjusted for pixel aspect ratio but before rotation.
614
- * @deprecated Use {@link InputVideoTrack.getSquarePixelHeight} instead.
615
- */
616
- get squarePixelHeight() {
617
- return requireSync(this._backing.getSquarePixelHeight(), 'squarePixelHeight', 'getSquarePixelHeight');
618
- }
619
-
620
- /**
621
- * Returns the pixel aspect ratio of the track's frames as a rational number in its reduced form. Most videos use
622
- * square pixels (1:1).
623
- */
624
- async getPixelAspectRatio() {
625
- // Potential minor async race condition here if called twice, but doesn't matter since the computation is
626
- // so cheap
627
- return this._pixelAspectRatioCache ??= simplifyRational({
628
- num: (await this.getSquarePixelWidth()) * (await this.getCodedHeight()),
629
- den: (await this.getSquarePixelHeight()) * (await this.getCodedWidth()),
630
- });
631
- }
632
-
633
- /**
634
- * The pixel aspect ratio of the track's frames, as a rational number in its reduced form. Most videos use
635
- * square pixels (1:1).
636
- * @deprecated Use {@link InputVideoTrack.getPixelAspectRatio} instead.
637
- */
638
- get pixelAspectRatio() {
639
- return this._pixelAspectRatioCache ??= simplifyRational({
640
- num: requireSync(this._backing.getSquarePixelWidth(), 'pixelAspectRatio', 'getPixelAspectRatio')
641
- * requireSync(this._backing.getCodedHeight(), 'pixelAspectRatio', 'getPixelAspectRatio'),
642
- den: requireSync(this._backing.getSquarePixelHeight(), 'pixelAspectRatio', 'getPixelAspectRatio')
643
- * requireSync(this._backing.getCodedWidth(), 'pixelAspectRatio', 'getPixelAspectRatio'),
644
- });
645
- }
646
-
647
- /** Returns the display width of the track's frames in pixels, after aspect ratio adjustment and rotation. */
648
- async getDisplayWidth() {
649
- const metadata = await this._backing.getMetadataDisplayWidth?.();
650
- if (metadata != null) {
651
- return metadata;
652
- }
653
-
654
- const rotation = await this.getRotation();
655
- return rotation % 180 === 0 ? this.getSquarePixelWidth() : this.getSquarePixelHeight();
656
- }
657
-
658
- /**
659
- * The display width of the track's frames in pixels, after aspect ratio adjustment and rotation.
660
- * @deprecated Use {@link InputVideoTrack.getDisplayWidth} instead.
661
- */
662
- get displayWidth() {
663
- const metadataRaw = this._backing.getMetadataDisplayWidth?.();
664
- if (metadataRaw !== undefined) {
665
- const metadata = requireSync(metadataRaw, 'displayWidth', 'getDisplayWidth');
666
- if (metadata !== null) {
667
- return metadata;
668
- }
669
- }
670
-
671
- const rotation = requireSync(this._backing.getRotation(), 'displayWidth', 'getDisplayWidth');
672
- const value = rotation % 180 === 0
673
- ? this._backing.getSquarePixelWidth()
674
- : this._backing.getSquarePixelHeight();
675
- return requireSync(value, 'displayWidth', 'getDisplayWidth');
676
- }
677
-
678
- /** Returns the display height of the track's frames in pixels, after aspect ratio adjustment and rotation. */
679
- async getDisplayHeight() {
680
- const metadata = await this._backing.getMetadataDisplayHeight?.();
681
- if (metadata != null) {
682
- return metadata;
683
- }
684
-
685
- const rotation = await this.getRotation();
686
- return rotation % 180 === 0 ? this.getSquarePixelHeight() : this.getSquarePixelWidth();
687
- }
688
-
689
- /**
690
- * The display height of the track's frames in pixels, after aspect ratio adjustment and rotation.
691
- * @deprecated Use {@link InputVideoTrack.getDisplayHeight} instead.
692
- */
693
- get displayHeight() {
694
- const metadataRaw = this._backing.getMetadataDisplayHeight?.();
695
- if (metadataRaw !== undefined) {
696
- const metadata = requireSync(metadataRaw, 'displayHeight', 'getDisplayHeight');
697
- if (metadata !== null) {
698
- return metadata;
699
- }
700
- }
701
-
702
- const rotation = requireSync(this._backing.getRotation(), 'displayHeight', 'getDisplayHeight');
703
- const value = rotation % 180 === 0
704
- ? this._backing.getSquarePixelHeight()
705
- : this._backing.getSquarePixelWidth();
706
- return requireSync(value, 'displayHeight', 'getDisplayHeight');
707
- }
708
-
709
- /** Returns the color space of the track's samples. */
710
- async getColorSpace() {
711
- return this._backing.getColorSpace();
712
- }
713
-
714
- /** If this method returns true, the track's samples use a high dynamic range (HDR). */
715
- async hasHighDynamicRange() {
716
- const colorSpace = await this._backing.getColorSpace();
717
-
718
- return (colorSpace.primaries as string) === 'bt2020' || (colorSpace.primaries as string) === 'smpte432'
719
- || (colorSpace.transfer as string) === 'pq' || (colorSpace.transfer as string) === 'hlg'
720
- || (colorSpace.matrix as string) === 'bt2020-ncl';
721
- }
722
-
723
- /** Checks if this track may contain transparent samples with alpha data. */
724
- async canBeTransparent() {
725
- return this._backing.canBeTransparent();
726
- }
727
-
728
- /**
729
- * Returns the [decoder configuration](https://www.w3.org/TR/webcodecs/#video-decoder-config) for decoding the
730
- * track's packets using a [`VideoDecoder`](https://developer.mozilla.org/en-US/docs/Web/API/VideoDecoder). Returns
731
- * null if the track's codec is unknown.
732
- */
733
- async getDecoderConfig() {
734
- return this._backing.getDecoderConfig();
735
- }
736
-
737
- async getCodecParameterString() {
738
- const fromMetadata = await this._backing.getMetadataCodecParameterString?.();
739
- if (fromMetadata != null) {
740
- return fromMetadata;
741
- }
742
-
743
- const decoderConfig = await this._backing.getDecoderConfig();
744
- return decoderConfig?.codec ?? null;
745
- }
746
-
747
- async canDecode() {
748
- try {
749
- const decoderConfig = await this._backing.getDecoderConfig();
750
- if (!decoderConfig) {
751
- return false;
752
- }
753
-
754
- const codec = await this._backing.getCodec();
755
- assert(codec !== null);
756
-
757
- if (customVideoDecoders.some(x => x.supports(codec, decoderConfig))) {
758
- return true;
759
- }
760
-
761
- if (typeof VideoDecoder === 'undefined') {
762
- return false;
763
- }
764
-
765
- const support = await VideoDecoder.isConfigSupported(decoderConfig);
766
- return support.supported === true;
767
- } catch (error) {
768
- Logging._error('Error during decodability check:', error);
769
- return false;
770
- }
771
- }
772
-
773
- async determinePacketType(packet: EncodedPacket): Promise<PacketType | null> {
774
- if (!(packet instanceof EncodedPacket)) {
775
- throw new TypeError('packet must be an EncodedPacket.');
776
- }
777
- if (packet.isMetadataOnly) {
778
- throw new TypeError('packet must not be metadata-only to determine its type.');
779
- }
780
-
781
- const codec = await this.getCodec();
782
- if (codec === null) {
783
- return null;
784
- }
785
-
786
- const decoderConfig = await this.getDecoderConfig();
787
- assert(decoderConfig);
788
-
789
- return determineVideoPacketType(codec, decoderConfig, packet.data);
790
- }
791
- }
792
-
793
- export interface InputAudioTrackBacking extends InputTrackBacking {
794
- getType(): 'audio';
795
- getCodec(): MaybePromise<AudioCodec | null>;
796
- getNumberOfChannels(): MaybePromise<number>;
797
- getSampleRate(): MaybePromise<number>;
798
- getDecoderConfig(): Promise<AudioDecoderConfig | null>;
799
- }
800
-
801
- /**
802
- * Represents an audio track in an input file.
803
- * @group Input files & tracks
804
- * @public
805
- */
806
- export class InputAudioTrack extends InputTrack {
807
- /** @internal */
808
- override _backing: InputAudioTrackBacking;
809
-
810
- /** @internal */
811
- constructor(input: Input, backing: InputAudioTrackBacking) {
812
- super(input, backing);
813
-
814
- this._backing = backing;
815
- }
816
-
817
- get type(): TrackType {
818
- return 'audio';
819
- }
820
-
821
- /** The codec of the track's packets. */
822
- async getCodec(): Promise<AudioCodec | null> {
823
- return this._backing.getCodec();
824
- }
825
-
826
- /**
827
- * The codec of the track's packets.
828
- * @deprecated Use {@link InputAudioTrack.getCodec} instead.
829
- */
830
- get codec(): AudioCodec | null {
831
- return requireSync(this._backing.getCodec(), 'codec', 'getCodec');
832
- }
833
-
834
- async hasOnlyKeyPackets() {
835
- return (await this._backing.getHasOnlyKeyPackets?.()) ?? true;
836
- }
837
-
838
- /** Returns the number of audio channels in the track. */
839
- async getNumberOfChannels() {
840
- return this._backing.getNumberOfChannels();
841
- }
842
-
843
- /**
844
- * The number of audio channels in the track.
845
- * @deprecated Use {@link InputAudioTrack.getNumberOfChannels} instead.
846
- */
847
- get numberOfChannels() {
848
- return requireSync(this._backing.getNumberOfChannels(), 'numberOfChannels', 'getNumberOfChannels');
849
- }
850
-
851
- /** Returns the track's audio sample rate in hertz. */
852
- async getSampleRate() {
853
- return this._backing.getSampleRate();
854
- }
855
-
856
- /**
857
- * The track's audio sample rate in hertz.
858
- * @deprecated Use {@link InputAudioTrack.getSampleRate} instead.
859
- */
860
- get sampleRate() {
861
- return requireSync(this._backing.getSampleRate(), 'sampleRate', 'getSampleRate');
862
- }
863
-
864
- /**
865
- * Returns the [decoder configuration](https://www.w3.org/TR/webcodecs/#audio-decoder-config) for decoding the
866
- * track's packets using an [`AudioDecoder`](https://developer.mozilla.org/en-US/docs/Web/API/AudioDecoder). Returns
867
- * null if the track's codec is unknown.
868
- */
869
- async getDecoderConfig() {
870
- return this._backing.getDecoderConfig();
871
- }
872
-
873
- async getCodecParameterString() {
874
- const fromMetadata = await this._backing.getMetadataCodecParameterString?.();
875
- if (fromMetadata != null) {
876
- return fromMetadata;
877
- }
878
-
879
- const decoderConfig = await this._backing.getDecoderConfig();
880
- return decoderConfig?.codec ?? null;
881
- }
882
-
883
- async canDecode() {
884
- try {
885
- const decoderConfig = await this._backing.getDecoderConfig();
886
- if (!decoderConfig) {
887
- return false;
888
- }
889
-
890
- const codec = await this._backing.getCodec();
891
- assert(codec !== null);
892
-
893
- if (customAudioDecoders.some(x => x.supports(codec, decoderConfig))) {
894
- return true;
895
- }
896
-
897
- if (decoderConfig.codec.startsWith('pcm-')) {
898
- return true; // Since we decode it ourselves
899
- } else {
900
- if (typeof AudioDecoder === 'undefined') {
901
- return false;
902
- }
903
-
904
- const support = await AudioDecoder.isConfigSupported(decoderConfig);
905
- return support.supported === true;
906
- }
907
- } catch (error) {
908
- Logging._error('Error during decodability check:', error);
909
- return false;
910
- }
911
- }
912
-
913
- async determinePacketType(packet: EncodedPacket): Promise<PacketType | null> {
914
- if (!(packet instanceof EncodedPacket)) {
915
- throw new TypeError('packet must be an EncodedPacket.');
916
- }
917
-
918
- if ((await this.getCodec()) === null) {
919
- return null;
920
- }
921
-
922
- return 'key'; // No audio codec with delta packets
923
- }
924
- }
925
-
926
- /**
927
- * Defines a query for input tracks. Can be used to query tracks tersely and expressively, which is especially useful
928
- * for media inputs with many tracks, such as HLS manifests.
929
- *
930
- * @group Input files & tracks
931
- * @public
932
- */
933
- export type InputTrackQuery<T extends InputTrack> = {
934
- /**
935
- * A filter predicate function called for every track. Returning or resolving to `false` excludes the track from
936
- * the result.
937
- */
938
- filter?: (track: T) => MaybePromise<boolean>;
939
- /**
940
- * A function called for every track, used to define a track ordering. Tracks are ordered in ascending order using
941
- * the value returned by this function. When the function returns an array of numbers `arr`, tracks will be sorted
942
- * by `arr[0]` unless they have the same value, in which case they will be sorted by `arr[1]`, and so on. This
943
- * allows you to construct a list of ordering criteria, sorted by importance.
944
- *
945
- * To help construct complex ordering criteria, the {@link asc}, {@link desc}, and {@link prefer} helper functions
946
- * can be used.
947
- */
948
- sortBy?: (track: T) => MaybePromise<number | number[]>;
949
- };
950
-
951
- /**
952
- * Helper function for use in {@link InputTrackQuery.sortBy}, used to describe sorting tracks by a numeric property in
953
- * ascending order. `null` and `undefined` are accepted too and are last in the order (sorted to the end).
954
- *
955
- * @group Input files & tracks
956
- * @public
957
- */
958
- export const asc = (value: number | null | undefined) => {
959
- return value ?? Infinity; // nulls and undefined last
960
- };
961
-
962
- /**
963
- * Helper function for use in {@link InputTrackQuery.sortBy}, used to describe sorting tracks by a numeric property in
964
- * descending order. `null` and `undefined` are accepted too and are last in the order (sorted to the end).
965
- *
966
- * @group Input files & tracks
967
- * @public
968
- */
969
- export const desc = (value: number | null | undefined) => {
970
- return -(value ?? -Infinity); // nulls and undefined last
971
- };
972
-
973
- /**
974
- * Helper function for use in {@link InputTrackQuery.sortBy}, used to sort tracks by boolean properties. `true` is
975
- * sorted to the start, `false` to the end. Useful for expressing soft preferences (e.g., "I'd prefer 1080p, but other
976
- * resolutions are fine too") as opposed to {@link InputTrackQuery.filter} which expresses hard requirements for
977
- * tracks.
978
- *
979
- * @group Input files & tracks
980
- * @public
981
- */
982
- export const prefer = (value: boolean) => {
983
- return -value;
984
- };
985
-
986
- export const toValidatedInputTrackQuery = <T extends InputTrack>(
987
- query: InputTrackQuery<T>,
988
- ): InputTrackQuery<T> => {
989
- if (typeof query !== 'object' || !query) {
990
- throw new TypeError('query must be an object.');
991
- }
992
- if (query.filter !== undefined && typeof query.filter !== 'function') {
993
- throw new TypeError('query.filter, when provided, must be a function.');
994
- }
995
- if (query.sortBy !== undefined && typeof query.sortBy !== 'function') {
996
- throw new TypeError('query.sortBy, when provided, must be a function.');
997
- }
998
-
999
- // Instead of validating the return types of the functions everywhere the query is used, simply return a new query
1000
- // which wraps the old one while validating it.
1001
- return {
1002
- filter: query.filter
1003
- ? (track) => {
1004
- const handle = (bool: boolean) => {
1005
- if (typeof bool !== 'boolean') {
1006
- throw new TypeError('query.filter must return or resolve to a boolean.');
1007
- }
1008
-
1009
- return bool;
1010
- };
1011
-
1012
- const result = query.filter!(track);
1013
- if (result instanceof Promise) {
1014
- return result.then(handle);
1015
- } else {
1016
- return handle(result);
1017
- }
1018
- }
1019
- : undefined,
1020
- sortBy: query.sortBy
1021
- ? (track) => {
1022
- const handle = (value: number | number[]) => {
1023
- if (
1024
- typeof value !== 'number'
1025
- && (!Array.isArray(value) || !value.every(x => typeof x === 'number'))
1026
- ) {
1027
- throw new TypeError(
1028
- 'query.sortBy must return or resolve to a number or an array of numbers.',
1029
- );
1030
- }
1031
-
1032
- return value;
1033
- };
1034
-
1035
- const result = query.sortBy!(track);
1036
- if (result instanceof Promise) {
1037
- return result.then(handle);
1038
- } else {
1039
- return handle(result);
1040
- }
1041
- }
1042
- : undefined,
1043
- };
1044
- };
1045
-
1046
- export const mergeInputTrackQueries = <T extends InputTrack>(
1047
- queryA: InputTrackQuery<T> | undefined,
1048
- queryB: InputTrackQuery<T> | undefined,
1049
- ): InputTrackQuery<T> => {
1050
- return {
1051
- filter: queryA?.filter || queryB?.filter
1052
- ? (track) => {
1053
- const resultA = queryA?.filter?.(track) ?? true;
1054
- const handleResultA = (resultA: boolean) => {
1055
- if (resultA === false) {
1056
- return false;
1057
- }
1058
-
1059
- return queryB?.filter?.(track) ?? true;
1060
- };
1061
-
1062
- if (resultA instanceof Promise) {
1063
- return resultA.then(handleResultA);
1064
- } else {
1065
- return handleResultA(resultA);
1066
- }
1067
- }
1068
- : undefined,
1069
- sortBy: queryA?.sortBy || queryB?.sortBy
1070
- ? (track) => {
1071
- const resultA = queryA?.sortBy?.(track) ?? [];
1072
- const resultB = queryB?.sortBy?.(track) ?? [];
1073
-
1074
- type Result = Awaited<typeof resultA>;
1075
- const join = (resultA: Result, resultB: Result) => {
1076
- return [
1077
- ...(Array.isArray(resultA) ? resultA : [resultA]),
1078
- ...(Array.isArray(resultB) ? resultB : [resultB]),
1079
- ];
1080
- };
1081
-
1082
- if (resultA instanceof Promise || resultB instanceof Promise) {
1083
- return Promise.all([resultA, resultB]).then(([resultA, resultB]) => {
1084
- return join(resultA, resultB);
1085
- });
1086
- } else {
1087
- return join(resultA, resultB);
1088
- }
1089
- }
1090
- : undefined,
1091
- };
1092
- };
1093
-
1094
- export const queryInputTracks = async <T extends InputTrack>(
1095
- tracks: T[],
1096
- query?: InputTrackQuery<T>,
1097
- ): Promise<T[]> => {
1098
- let matched = tracks;
1099
- if (query?.filter) {
1100
- const filterMatches = tracks.map(t => query.filter!(t));
1101
- const hasAsyncFilter = filterMatches.some(x => x instanceof Promise);
1102
- if (hasAsyncFilter) {
1103
- // eslint-disable-next-line @typescript-eslint/await-thenable
1104
- const resolvedFilterMatches = await Promise.all(filterMatches);
1105
- matched = tracks.filter((_, i) => resolvedFilterMatches[i]);
1106
- } else {
1107
- matched = tracks.filter((_, i) => filterMatches[i] as boolean);
1108
- }
1109
- }
1110
-
1111
- if (!query?.sortBy) {
1112
- return matched;
1113
- }
1114
-
1115
- const sortValues = matched.map(t => query.sortBy!(t));
1116
- const hasAsyncSort = sortValues.some(x => x instanceof Promise);
1117
- const resolvedSortValues = hasAsyncSort
1118
- // eslint-disable-next-line @typescript-eslint/await-thenable
1119
- ? await Promise.all(sortValues)
1120
- : sortValues as (number | number[])[];
1121
-
1122
- return matched
1123
- .map((track, i) => ({ track, sortValue: resolvedSortValues[i] }))
1124
- .sort((a, b) => {
1125
- const aValues = Array.isArray(a.sortValue) ? a.sortValue : [a.sortValue];
1126
- const bValues = Array.isArray(b.sortValue) ? b.sortValue : [b.sortValue];
1127
- const maxLength = Math.max(aValues.length, bValues.length);
1128
-
1129
- for (let i = 0; i < maxLength; i++) {
1130
- const aValue = aValues[i] ?? 0;
1131
- const bValue = bValues[i] ?? 0;
1132
- if (aValue === bValue) {
1133
- continue;
1134
- }
1135
- return aValue - bValue;
1136
- }
1137
-
1138
- return 0;
1139
- })
1140
- .map(x => x.track);
1141
- };