@react-three/drei 10.7.7 → 10.8.0-alpha.1

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 (580) hide show
  1. package/README.md +49 -758
  2. package/_chunks/hls.mjs +3 -0
  3. package/_chunks/libs/@mediapipe/tasks-vision.mjs +4781 -0
  4. package/_chunks/libs/@monogrid/gainmap-js.mjs +1137 -0
  5. package/_chunks/libs/@use-gesture/core.mjs +1650 -0
  6. package/_chunks/libs/@use-gesture/react.mjs +207 -0
  7. package/_chunks/libs/camera-controls.mjs +2207 -0
  8. package/_chunks/libs/detect-gpu.mjs +515 -0
  9. package/_chunks/libs/hls.js.mjs +21925 -0
  10. package/_chunks/libs/maath.mjs +5200 -0
  11. package/_chunks/libs/stats-gl.mjs +301 -0
  12. package/_chunks/libs/stats.js.mjs +90 -0
  13. package/_chunks/libs/suspend-react.mjs +60 -0
  14. package/_chunks/libs/three.mjs +23169 -0
  15. package/_chunks/libs/tunnel-rat.mjs +458 -0
  16. package/_chunks/libs/zustand.mjs +104 -0
  17. package/_chunks/rolldown-runtime.mjs +47 -0
  18. package/_chunks/vision_bundle.mjs +3 -0
  19. package/core/_chunks/hls.mjs +3 -0
  20. package/core/_chunks/libs/@monogrid/gainmap-js.mjs +1137 -0
  21. package/core/_chunks/libs/@use-gesture/core.mjs +1650 -0
  22. package/core/_chunks/libs/@use-gesture/react.mjs +207 -0
  23. package/core/_chunks/libs/detect-gpu.mjs +515 -0
  24. package/core/_chunks/libs/hls.js.mjs +21925 -0
  25. package/core/_chunks/libs/maath.mjs +5200 -0
  26. package/core/_chunks/libs/stats-gl.mjs +301 -0
  27. package/core/_chunks/libs/stats.js.mjs +90 -0
  28. package/core/_chunks/libs/suspend-react.mjs +60 -0
  29. package/core/_chunks/libs/three.mjs +22457 -0
  30. package/core/_chunks/libs/tunnel-rat.mjs +458 -0
  31. package/core/_chunks/libs/zustand.mjs +104 -0
  32. package/core/_chunks/rolldown-runtime.mjs +47 -0
  33. package/core/core/index.d.mts +2232 -0
  34. package/core/core/index.mjs +11082 -0
  35. package/experimental/_chunks/libs/three.mjs +15386 -0
  36. package/experimental/experimental/index.d.mts +253 -0
  37. package/experimental/experimental/index.mjs +434 -0
  38. package/external/_chunks/hls.mjs +3 -0
  39. package/external/_chunks/libs/@mediapipe/tasks-vision.mjs +4781 -0
  40. package/external/_chunks/libs/camera-controls.mjs +2207 -0
  41. package/external/_chunks/libs/hls.js.mjs +21925 -0
  42. package/external/_chunks/libs/maath.mjs +5200 -0
  43. package/external/_chunks/libs/suspend-react.mjs +58 -0
  44. package/external/_chunks/libs/three.mjs +15387 -0
  45. package/external/_chunks/rolldown-runtime.mjs +32 -0
  46. package/external/_chunks/vision_bundle.mjs +3 -0
  47. package/external/external/index.d.mts +499 -0
  48. package/external/external/index.mjs +9422 -0
  49. package/index.d.mts +2567 -0
  50. package/index.mjs +20571 -0
  51. package/legacy/_chunks/hls.mjs +3 -0
  52. package/legacy/_chunks/libs/@monogrid/gainmap-js.mjs +1137 -0
  53. package/legacy/_chunks/libs/@use-gesture/core.mjs +1650 -0
  54. package/legacy/_chunks/libs/@use-gesture/react.mjs +207 -0
  55. package/legacy/_chunks/libs/bidi-js.mjs +675 -0
  56. package/legacy/_chunks/libs/detect-gpu.mjs +515 -0
  57. package/legacy/_chunks/libs/hls.js.mjs +21925 -0
  58. package/legacy/_chunks/libs/maath.mjs +5200 -0
  59. package/legacy/_chunks/libs/stats-gl.mjs +301 -0
  60. package/legacy/_chunks/libs/stats.js.mjs +90 -0
  61. package/legacy/_chunks/libs/suspend-react.mjs +60 -0
  62. package/legacy/_chunks/libs/three.mjs +26062 -0
  63. package/legacy/_chunks/libs/troika-three-text.mjs +6494 -0
  64. package/legacy/_chunks/libs/tunnel-rat.mjs +458 -0
  65. package/legacy/_chunks/libs/zustand.mjs +104 -0
  66. package/legacy/_chunks/rolldown-runtime.mjs +47 -0
  67. package/legacy/legacy/index.d.mts +2788 -0
  68. package/legacy/legacy/index.mjs +14984 -0
  69. package/native/_chunks/hls.mjs +3 -0
  70. package/native/_chunks/libs/@monogrid/gainmap-js.mjs +1137 -0
  71. package/native/_chunks/libs/@use-gesture/core.mjs +1650 -0
  72. package/native/_chunks/libs/@use-gesture/react.mjs +207 -0
  73. package/native/_chunks/libs/detect-gpu.mjs +515 -0
  74. package/native/_chunks/libs/hls.js.mjs +21925 -0
  75. package/native/_chunks/libs/maath.mjs +5200 -0
  76. package/native/_chunks/libs/stats-gl.mjs +301 -0
  77. package/native/_chunks/libs/stats.js.mjs +90 -0
  78. package/native/_chunks/libs/suspend-react.mjs +60 -0
  79. package/native/_chunks/libs/three.mjs +22592 -0
  80. package/native/_chunks/libs/tunnel-rat.mjs +458 -0
  81. package/native/_chunks/libs/zustand.mjs +104 -0
  82. package/native/_chunks/rolldown-runtime.mjs +47 -0
  83. package/native/native/index.d.mts +3168 -0
  84. package/native/native/index.mjs +14863 -0
  85. package/package.json +41 -10
  86. package/webgpu/_chunks/hls.mjs +3 -0
  87. package/webgpu/_chunks/libs/@monogrid/gainmap-js.mjs +1137 -0
  88. package/webgpu/_chunks/libs/@use-gesture/core.mjs +1650 -0
  89. package/webgpu/_chunks/libs/@use-gesture/react.mjs +207 -0
  90. package/webgpu/_chunks/libs/detect-gpu.mjs +515 -0
  91. package/webgpu/_chunks/libs/hls.js.mjs +21925 -0
  92. package/webgpu/_chunks/libs/maath.mjs +5200 -0
  93. package/webgpu/_chunks/libs/stats-gl.mjs +301 -0
  94. package/webgpu/_chunks/libs/stats.js.mjs +90 -0
  95. package/webgpu/_chunks/libs/suspend-react.mjs +60 -0
  96. package/webgpu/_chunks/libs/three.mjs +22592 -0
  97. package/webgpu/_chunks/libs/tunnel-rat.mjs +458 -0
  98. package/webgpu/_chunks/libs/zustand.mjs +104 -0
  99. package/webgpu/_chunks/rolldown-runtime.mjs +47 -0
  100. package/webgpu/webgpu/index.d.mts +3166 -0
  101. package/webgpu/webgpu/index.mjs +15015 -0
  102. package/core/AccumulativeShadows.cjs.js +0 -1
  103. package/core/AccumulativeShadows.d.ts +0 -59
  104. package/core/AccumulativeShadows.js +0 -310
  105. package/core/AdaptiveDpr.cjs.js +0 -1
  106. package/core/AdaptiveDpr.d.ts +0 -3
  107. package/core/AdaptiveDpr.js +0 -28
  108. package/core/AdaptiveEvents.cjs.js +0 -1
  109. package/core/AdaptiveEvents.d.ts +0 -1
  110. package/core/AdaptiveEvents.js +0 -20
  111. package/core/ArcballControls.cjs.js +0 -1
  112. package/core/ArcballControls.d.ts +0 -15
  113. package/core/ArcballControls.js +0 -67
  114. package/core/AsciiRenderer.cjs.js +0 -1
  115. package/core/AsciiRenderer.d.ts +0 -11
  116. package/core/AsciiRenderer.js +0 -66
  117. package/core/BBAnchor.cjs.js +0 -1
  118. package/core/BBAnchor.d.ts +0 -7
  119. package/core/BBAnchor.js +0 -37
  120. package/core/Backdrop.cjs.js +0 -1
  121. package/core/Backdrop.d.ts +0 -15
  122. package/core/Backdrop.js +0 -33
  123. package/core/BakeShadows.cjs.js +0 -1
  124. package/core/BakeShadows.d.ts +0 -1
  125. package/core/BakeShadows.js +0 -16
  126. package/core/Billboard.cjs.js +0 -1
  127. package/core/Billboard.d.ts +0 -10
  128. package/core/Billboard.js +0 -53
  129. package/core/Bounds.cjs.js +0 -1
  130. package/core/Bounds.d.ts +0 -36
  131. package/core/Bounds.js +0 -254
  132. package/core/Bvh.cjs.js +0 -1
  133. package/core/Bvh.d.ts +0 -19
  134. package/core/Bvh.js +0 -92
  135. package/core/CameraControls.cjs.js +0 -1
  136. package/core/CameraControls.d.ts +0 -48
  137. package/core/CameraControls.js +0 -151
  138. package/core/CameraShake.cjs.js +0 -1
  139. package/core/CameraShake.d.ts +0 -17
  140. package/core/CameraShake.js +0 -57
  141. package/core/CatmullRomLine.cjs.js +0 -1
  142. package/core/CatmullRomLine.d.ts +0 -10
  143. package/core/CatmullRomLine.js +0 -42
  144. package/core/Caustics.cjs.js +0 -1
  145. package/core/Caustics.d.ts +0 -32
  146. package/core/Caustics.js +0 -388
  147. package/core/Center.cjs.js +0 -1
  148. package/core/Center.d.ts +0 -33
  149. package/core/Center.js +0 -67
  150. package/core/Clone.cjs.js +0 -1
  151. package/core/Clone.d.ts +0 -15
  152. package/core/Clone.js +0 -100
  153. package/core/Cloud.cjs.js +0 -1
  154. package/core/Cloud.d.ts +0 -97
  155. package/core/Cloud.js +0 -231
  156. package/core/ComputedAttribute.cjs.js +0 -1
  157. package/core/ComputedAttribute.d.ts +0 -8
  158. package/core/ComputedAttribute.js +0 -33
  159. package/core/ContactShadows.cjs.js +0 -1
  160. package/core/ContactShadows.d.ts +0 -18
  161. package/core/ContactShadows.js +0 -114
  162. package/core/CubeCamera.cjs.js +0 -1
  163. package/core/CubeCamera.d.ts +0 -21
  164. package/core/CubeCamera.js +0 -86
  165. package/core/CubeTexture.cjs.js +0 -1
  166. package/core/CubeTexture.d.ts +0 -14
  167. package/core/CubeTexture.js +0 -25
  168. package/core/CubicBezierLine.cjs.js +0 -1
  169. package/core/CubicBezierLine.d.ts +0 -12
  170. package/core/CubicBezierLine.js +0 -28
  171. package/core/CurveModifier.cjs.js +0 -1
  172. package/core/CurveModifier.d.ts +0 -11
  173. package/core/CurveModifier.js +0 -27
  174. package/core/Decal.cjs.js +0 -1
  175. package/core/Decal.d.ts +0 -16
  176. package/core/Decal.js +0 -128
  177. package/core/Detailed.cjs.js +0 -1
  178. package/core/Detailed.d.ts +0 -10
  179. package/core/Detailed.js +0 -33
  180. package/core/DetectGPU.cjs.js +0 -1
  181. package/core/DetectGPU.d.ts +0 -7
  182. package/core/DetectGPU.js +0 -14
  183. package/core/DeviceOrientationControls.cjs.js +0 -1
  184. package/core/DeviceOrientationControls.d.ts +0 -10
  185. package/core/DeviceOrientationControls.js +0 -51
  186. package/core/Edges.cjs.js +0 -1
  187. package/core/Edges.d.ts +0 -13
  188. package/core/Edges.js +0 -38
  189. package/core/Effects.cjs.js +0 -1
  190. package/core/Effects.d.ts +0 -25
  191. package/core/Effects.js +0 -91
  192. package/core/Environment.cjs.js +0 -1
  193. package/core/Environment.d.ts +0 -37
  194. package/core/Environment.js +0 -189
  195. package/core/Example.cjs.js +0 -1
  196. package/core/Example.d.ts +0 -13
  197. package/core/Example.js +0 -46
  198. package/core/Fbo.cjs.js +0 -1
  199. package/core/Fbo.d.ts +0 -22
  200. package/core/Fbo.js +0 -63
  201. package/core/Fbx.cjs.js +0 -1
  202. package/core/Fbx.d.ts +0 -11
  203. package/core/Fbx.js +0 -23
  204. package/core/FirstPersonControls.cjs.js +0 -1
  205. package/core/FirstPersonControls.d.ts +0 -8
  206. package/core/FirstPersonControls.js +0 -38
  207. package/core/Fisheye.cjs.js +0 -1
  208. package/core/Fisheye.d.ts +0 -10
  209. package/core/Fisheye.js +0 -95
  210. package/core/Float.cjs.js +0 -1
  211. package/core/Float.d.ts +0 -14
  212. package/core/Float.js +0 -37
  213. package/core/FlyControls.cjs.js +0 -1
  214. package/core/FlyControls.d.ts +0 -10
  215. package/core/FlyControls.js +0 -55
  216. package/core/GizmoHelper.cjs.js +0 -1
  217. package/core/GizmoHelper.d.ts +0 -16
  218. package/core/GizmoHelper.js +0 -116
  219. package/core/GizmoViewcube.cjs.js +0 -1
  220. package/core/GizmoViewcube.d.ts +0 -14
  221. package/core/GizmoViewcube.js +0 -133
  222. package/core/GizmoViewport.cjs.js +0 -1
  223. package/core/GizmoViewport.d.ts +0 -16
  224. package/core/GizmoViewport.js +0 -140
  225. package/core/Gltf.cjs.js +0 -1
  226. package/core/Gltf.d.ts +0 -27
  227. package/core/Gltf.js +0 -52
  228. package/core/GradientTexture.cjs.js +0 -1
  229. package/core/GradientTexture.d.ts +0 -18
  230. package/core/GradientTexture.js +0 -54
  231. package/core/Grid.cjs.js +0 -1
  232. package/core/Grid.d.ts +0 -26
  233. package/core/Grid.js +0 -142
  234. package/core/Helper.cjs.js +0 -1
  235. package/core/Helper.d.ts +0 -16
  236. package/core/Helper.js +0 -47
  237. package/core/Hud.cjs.js +0 -1
  238. package/core/Hud.d.ts +0 -6
  239. package/core/Hud.js +0 -55
  240. package/core/Image.cjs.js +0 -1
  241. package/core/Image.d.ts +0 -38
  242. package/core/Image.js +0 -160
  243. package/core/Instances.cjs.js +0 -1
  244. package/core/Instances.d.ts +0 -64
  245. package/core/Instances.js +0 -313
  246. package/core/Ktx2.cjs.js +0 -1
  247. package/core/Ktx2.d.ts +0 -14
  248. package/core/Ktx2.js +0 -48
  249. package/core/Lightformer.cjs.js +0 -1
  250. package/core/Lightformer.d.ts +0 -15
  251. package/core/Lightformer.js +0 -63
  252. package/core/Line.cjs.js +0 -1
  253. package/core/Line.d.ts +0 -13
  254. package/core/Line.js +0 -73
  255. package/core/MapControls.cjs.js +0 -1
  256. package/core/MapControls.d.ts +0 -14
  257. package/core/MapControls.js +0 -63
  258. package/core/MarchingCubes.cjs.js +0 -1
  259. package/core/MarchingCubes.d.ts +0 -24
  260. package/core/MarchingCubes.js +0 -78
  261. package/core/Mask.cjs.js +0 -1
  262. package/core/Mask.d.ts +0 -17
  263. package/core/Mask.js +0 -42
  264. package/core/MatcapTexture.cjs.js +0 -1
  265. package/core/MatcapTexture.d.ts +0 -9
  266. package/core/MatcapTexture.js +0 -51
  267. package/core/MeshDiscardMaterial.cjs.js +0 -1
  268. package/core/MeshDiscardMaterial.d.ts +0 -10
  269. package/core/MeshDiscardMaterial.js +0 -15
  270. package/core/MeshDistortMaterial.cjs.js +0 -1
  271. package/core/MeshDistortMaterial.d.ts +0 -39
  272. package/core/MeshDistortMaterial.js +0 -72
  273. package/core/MeshPortalMaterial.cjs.js +0 -1
  274. package/core/MeshPortalMaterial.d.ts +0 -25
  275. package/core/MeshPortalMaterial.js +0 -467
  276. package/core/MeshReflectorMaterial.cjs.js +0 -1
  277. package/core/MeshReflectorMaterial.d.ts +0 -14
  278. package/core/MeshReflectorMaterial.js +0 -180
  279. package/core/MeshRefractionMaterial.cjs.js +0 -1
  280. package/core/MeshRefractionMaterial.d.ts +0 -19
  281. package/core/MeshRefractionMaterial.js +0 -73
  282. package/core/MeshTransmissionMaterial.cjs.js +0 -1
  283. package/core/MeshTransmissionMaterial.d.ts +0 -34
  284. package/core/MeshTransmissionMaterial.js +0 -402
  285. package/core/MeshWobbleMaterial.cjs.js +0 -1
  286. package/core/MeshWobbleMaterial.d.ts +0 -36
  287. package/core/MeshWobbleMaterial.js +0 -60
  288. package/core/MotionPathControls.cjs.js +0 -1
  289. package/core/MotionPathControls.d.ts +0 -33
  290. package/core/MotionPathControls.js +0 -121
  291. package/core/MultiMaterial.cjs.js +0 -1
  292. package/core/MultiMaterial.d.ts +0 -4
  293. package/core/MultiMaterial.js +0 -29
  294. package/core/NormalTexture.cjs.js +0 -1
  295. package/core/NormalTexture.d.ts +0 -14
  296. package/core/NormalTexture.js +0 -42
  297. package/core/OrbitControls.cjs.js +0 -1
  298. package/core/OrbitControls.d.ts +0 -22
  299. package/core/OrbitControls.js +0 -79
  300. package/core/OrthographicCamera.cjs.js +0 -1
  301. package/core/OrthographicCamera.d.ts +0 -14
  302. package/core/OrthographicCamera.js +0 -76
  303. package/core/Outlines.cjs.js +0 -1
  304. package/core/Outlines.d.ts +0 -17
  305. package/core/Outlines.js +0 -166
  306. package/core/PerformanceMonitor.cjs.js +0 -1
  307. package/core/PerformanceMonitor.d.ts +0 -36
  308. package/core/PerformanceMonitor.js +0 -116
  309. package/core/PerspectiveCamera.cjs.js +0 -1
  310. package/core/PerspectiveCamera.d.ts +0 -14
  311. package/core/PerspectiveCamera.js +0 -72
  312. package/core/PointMaterial.cjs.js +0 -1
  313. package/core/PointMaterial.d.ts +0 -8
  314. package/core/PointMaterial.js +0 -36
  315. package/core/PointerLockControls.cjs.js +0 -1
  316. package/core/PointerLockControls.d.ts +0 -15
  317. package/core/PointerLockControls.js +0 -89
  318. package/core/Points.cjs.js +0 -1
  319. package/core/Points.d.ts +0 -31
  320. package/core/Points.js +0 -202
  321. package/core/PositionalAudio.cjs.js +0 -1
  322. package/core/PositionalAudio.d.ts +0 -9
  323. package/core/PositionalAudio.js +0 -46
  324. package/core/Preload.cjs.js +0 -1
  325. package/core/Preload.d.ts +0 -7
  326. package/core/Preload.js +0 -44
  327. package/core/Progress.cjs.js +0 -1
  328. package/core/Progress.d.ts +0 -14
  329. package/core/Progress.js +0 -55
  330. package/core/QuadraticBezierLine.cjs.js +0 -1
  331. package/core/QuadraticBezierLine.d.ts +0 -14
  332. package/core/QuadraticBezierLine.js +0 -42
  333. package/core/RenderCubeTexture.cjs.js +0 -1
  334. package/core/RenderCubeTexture.d.ts +0 -30
  335. package/core/RenderCubeTexture.js +0 -96
  336. package/core/RenderTexture.cjs.js +0 -1
  337. package/core/RenderTexture.d.ts +0 -18
  338. package/core/RenderTexture.js +0 -105
  339. package/core/Resize.cjs.js +0 -1
  340. package/core/Resize.d.ts +0 -17
  341. package/core/Resize.js +0 -39
  342. package/core/RoundedBox.cjs.js +0 -1
  343. package/core/RoundedBox.d.ts +0 -14
  344. package/core/RoundedBox.js +0 -70
  345. package/core/Sampler.cjs.js +0 -1
  346. package/core/Sampler.d.ts +0 -28
  347. package/core/Sampler.js +0 -75
  348. package/core/ScreenQuad.cjs.js +0 -1
  349. package/core/ScreenQuad.d.ts +0 -5
  350. package/core/ScreenQuad.js +0 -25
  351. package/core/ScreenSizer.cjs.js +0 -1
  352. package/core/ScreenSizer.d.ts +0 -7
  353. package/core/ScreenSizer.js +0 -39
  354. package/core/ScreenSpace.cjs.js +0 -1
  355. package/core/ScreenSpace.d.ts +0 -7
  356. package/core/ScreenSpace.js +0 -25
  357. package/core/Segments.cjs.js +0 -1
  358. package/core/Segments.d.ts +0 -29
  359. package/core/Segments.js +0 -96
  360. package/core/Shadow.cjs.js +0 -1
  361. package/core/Shadow.d.ts +0 -12
  362. package/core/Shadow.js +0 -42
  363. package/core/ShadowAlpha.cjs.js +0 -1
  364. package/core/ShadowAlpha.d.ts +0 -7
  365. package/core/ShadowAlpha.js +0 -108
  366. package/core/Sky.cjs.js +0 -1
  367. package/core/Sky.d.ts +0 -16
  368. package/core/Sky.js +0 -39
  369. package/core/Sparkles.cjs.js +0 -1
  370. package/core/Sparkles.d.ts +0 -26
  371. package/core/Sparkles.js +0 -161
  372. package/core/Splat.cjs.js +0 -1
  373. package/core/Splat.d.ts +0 -56
  374. package/core/Splat.js +0 -506
  375. package/core/SpotLight.cjs.js +0 -1
  376. package/core/SpotLight.d.ts +0 -27
  377. package/core/SpotLight.js +0 -223
  378. package/core/SpriteAnimator.cjs.js +0 -1
  379. package/core/SpriteAnimator.d.ts +0 -88
  380. package/core/SpriteAnimator.js +0 -413
  381. package/core/Stage.cjs.js +0 -1
  382. package/core/Stage.d.ts +0 -27
  383. package/core/Stage.js +0 -133
  384. package/core/Stars.cjs.js +0 -1
  385. package/core/Stars.d.ts +0 -22
  386. package/core/Stars.js +0 -100
  387. package/core/Stats.cjs.js +0 -1
  388. package/core/Stats.d.ts +0 -7
  389. package/core/Stats.js +0 -32
  390. package/core/StatsGl.cjs.js +0 -1
  391. package/core/StatsGl.d.ts +0 -14
  392. package/core/StatsGl.js +0 -44
  393. package/core/Svg.cjs.js +0 -1
  394. package/core/Svg.d.ts +0 -13
  395. package/core/Svg.js +0 -62
  396. package/core/Text.cjs.js +0 -1
  397. package/core/Text.d.ts +0 -38
  398. package/core/Text.js +0 -57
  399. package/core/Text3D.cjs.js +0 -1
  400. package/core/Text3D.d.ts +0 -20
  401. package/core/Text3D.js +0 -74
  402. package/core/Texture.cjs.js +0 -1
  403. package/core/Texture.d.ts +0 -20
  404. package/core/Texture.js +0 -60
  405. package/core/TrackballControls.cjs.js +0 -1
  406. package/core/TrackballControls.d.ts +0 -15
  407. package/core/TrackballControls.js +0 -72
  408. package/core/Trail.cjs.js +0 -1
  409. package/core/Trail.d.ts +0 -21
  410. package/core/Trail.js +0 -150
  411. package/core/TrailTexture.cjs.js +0 -1
  412. package/core/TrailTexture.d.ts +0 -19
  413. package/core/TrailTexture.js +0 -159
  414. package/core/TransformControls.cjs.js +0 -1
  415. package/core/TransformControls.d.ts +0 -28
  416. package/core/TransformControls.js +0 -114
  417. package/core/VideoTexture.cjs.js +0 -1
  418. package/core/VideoTexture.d.ts +0 -26
  419. package/core/VideoTexture.js +0 -111
  420. package/core/Wireframe.cjs.js +0 -1
  421. package/core/Wireframe.d.ts +0 -15
  422. package/core/Wireframe.js +0 -157
  423. package/core/calculateScaleFactor.cjs.js +0 -1
  424. package/core/calculateScaleFactor.d.ts +0 -3
  425. package/core/calculateScaleFactor.js +0 -31
  426. package/core/index.cjs.js +0 -1
  427. package/core/index.d.ts +0 -122
  428. package/core/index.js +0 -150
  429. package/core/meshBounds.cjs.js +0 -1
  430. package/core/meshBounds.d.ts +0 -2
  431. package/core/meshBounds.js +0 -28
  432. package/core/shaderMaterial.cjs.js +0 -1
  433. package/core/shaderMaterial.d.ts +0 -9
  434. package/core/shaderMaterial.js +0 -29
  435. package/core/shapes.cjs.js +0 -1
  436. package/core/shapes.d.ts +0 -26
  437. package/core/shapes.js +0 -65
  438. package/core/softShadows.cjs.js +0 -1
  439. package/core/softShadows.d.ts +0 -6
  440. package/core/softShadows.js +0 -158
  441. package/core/useAnimations.cjs.js +0 -1
  442. package/core/useAnimations.d.ts +0 -13
  443. package/core/useAnimations.js +0 -52
  444. package/core/useAspect.cjs.js +0 -1
  445. package/core/useAspect.d.ts +0 -1
  446. package/core/useAspect.js +0 -10
  447. package/core/useBoxProjectedEnv.cjs.js +0 -1
  448. package/core/useBoxProjectedEnv.d.ts +0 -19
  449. package/core/useBoxProjectedEnv.js +0 -95
  450. package/core/useCamera.cjs.js +0 -1
  451. package/core/useCamera.d.ts +0 -3
  452. package/core/useCamera.js +0 -19
  453. package/core/useContextBridge.cjs.js +0 -1
  454. package/core/useContextBridge.d.ts +0 -4
  455. package/core/useContextBridge.js +0 -20
  456. package/core/useDepthBuffer.cjs.js +0 -1
  457. package/core/useDepthBuffer.d.ts +0 -6
  458. package/core/useDepthBuffer.js +0 -38
  459. package/core/useEnvironment.cjs.js +0 -1
  460. package/core/useEnvironment.d.ts +0 -17
  461. package/core/useEnvironment.js +0 -150
  462. package/core/useFont.cjs.js +0 -1
  463. package/core/useFont.d.ts +0 -24
  464. package/core/useFont.js +0 -24
  465. package/core/useIntersect.cjs.js +0 -1
  466. package/core/useIntersect.d.ts +0 -3
  467. package/core/useIntersect.js +0 -36
  468. package/core/useSpriteLoader.cjs.js +0 -1
  469. package/core/useSpriteLoader.d.ts +0 -57
  470. package/core/useSpriteLoader.js +0 -402
  471. package/helpers/constants.cjs.js +0 -1
  472. package/helpers/constants.d.ts +0 -1
  473. package/helpers/constants.js +0 -6
  474. package/helpers/deprecated.cjs.js +0 -1
  475. package/helpers/deprecated.d.ts +0 -5
  476. package/helpers/deprecated.js +0 -8
  477. package/helpers/environment-assets.cjs.js +0 -1
  478. package/helpers/environment-assets.d.ts +0 -13
  479. package/helpers/environment-assets.js +0 -14
  480. package/helpers/glsl/DefaultSpotlightShadowShadows.glsl.js +0 -3
  481. package/helpers/glsl/distort.vert.glsl.js +0 -3
  482. package/helpers/ts-utils.cjs.js +0 -1
  483. package/helpers/ts-utils.d.ts +0 -7
  484. package/helpers/ts-utils.js +0 -1
  485. package/helpers/useEffectfulState.cjs.js +0 -1
  486. package/helpers/useEffectfulState.d.ts +0 -4
  487. package/helpers/useEffectfulState.js +0 -17
  488. package/index.cjs.js +0 -1
  489. package/index.d.ts +0 -1
  490. package/index.js +0 -139
  491. package/materials/BlurPass.cjs.js +0 -1
  492. package/materials/BlurPass.d.ts +0 -23
  493. package/materials/BlurPass.js +0 -72
  494. package/materials/ConvolutionMaterial.cjs.js +0 -1
  495. package/materials/ConvolutionMaterial.d.ts +0 -7
  496. package/materials/ConvolutionMaterial.js +0 -97
  497. package/materials/DiscardMaterial.cjs.js +0 -1
  498. package/materials/DiscardMaterial.d.ts +0 -3
  499. package/materials/DiscardMaterial.js +0 -5
  500. package/materials/MeshReflectorMaterial.cjs.js +0 -1
  501. package/materials/MeshReflectorMaterial.d.ts +0 -50
  502. package/materials/MeshReflectorMaterial.js +0 -256
  503. package/materials/MeshRefractionMaterial.cjs.js +0 -1
  504. package/materials/MeshRefractionMaterial.d.ts +0 -18
  505. package/materials/MeshRefractionMaterial.js +0 -163
  506. package/materials/SpotLightMaterial.cjs.js +0 -1
  507. package/materials/SpotLightMaterial.d.ts +0 -4
  508. package/materials/SpotLightMaterial.js +0 -115
  509. package/materials/WireframeMaterial.cjs.js +0 -1
  510. package/materials/WireframeMaterial.d.ts +0 -64
  511. package/materials/WireframeMaterial.js +0 -217
  512. package/native/index.cjs.js +0 -1
  513. package/native/index.d.ts +0 -1
  514. package/native/index.js +0 -150
  515. package/web/CycleRaycast.cjs.js +0 -1
  516. package/web/CycleRaycast.d.ts +0 -10
  517. package/web/CycleRaycast.js +0 -93
  518. package/web/DragControls.cjs.js +0 -1
  519. package/web/DragControls.d.ts +0 -17
  520. package/web/DragControls.js +0 -127
  521. package/web/FaceControls.cjs.js +0 -1
  522. package/web/FaceControls.d.ts +0 -29
  523. package/web/FaceControls.js +0 -236
  524. package/web/FaceLandmarker.cjs.js +0 -1
  525. package/web/FaceLandmarker.d.ts +0 -14
  526. package/web/FaceLandmarker.js +0 -49
  527. package/web/Facemesh.cjs.js +0 -1
  528. package/web/Facemesh.d.ts +0 -118
  529. package/web/Facemesh.js +0 -4538
  530. package/web/Html.cjs.js +0 -1
  531. package/web/Html.d.ts +0 -34
  532. package/web/Html.js +0 -375
  533. package/web/KeyboardControls.cjs.js +0 -1
  534. package/web/KeyboardControls.d.ts +0 -37
  535. package/web/KeyboardControls.js +0 -104
  536. package/web/Loader.cjs.js +0 -1
  537. package/web/Loader.d.ts +0 -12
  538. package/web/Loader.js +0 -101
  539. package/web/PresentationControls.cjs.js +0 -1
  540. package/web/PresentationControls.d.ts +0 -16
  541. package/web/PresentationControls.js +0 -79
  542. package/web/ScreenVideoTexture.cjs.js +0 -1
  543. package/web/ScreenVideoTexture.d.ts +0 -17
  544. package/web/ScreenVideoTexture.js +0 -30
  545. package/web/ScrollControls.cjs.js +0 -1
  546. package/web/ScrollControls.d.ts +0 -45
  547. package/web/ScrollControls.js +0 -237
  548. package/web/Select.cjs.js +0 -1
  549. package/web/Select.d.ts +0 -14
  550. package/web/Select.js +0 -171
  551. package/web/View.cjs.js +0 -1
  552. package/web/View.d.ts +0 -34
  553. package/web/View.js +0 -259
  554. package/web/WebcamVideoTexture.cjs.js +0 -1
  555. package/web/WebcamVideoTexture.d.ts +0 -17
  556. package/web/WebcamVideoTexture.js +0 -33
  557. package/web/index.cjs.js +0 -1
  558. package/web/index.d.ts +0 -17
  559. package/web/index.js +0 -176
  560. package/web/pivotControls/AxisArrow.cjs.js +0 -1
  561. package/web/pivotControls/AxisArrow.d.ts +0 -7
  562. package/web/pivotControls/AxisArrow.js +0 -193
  563. package/web/pivotControls/AxisRotator.cjs.js +0 -1
  564. package/web/pivotControls/AxisRotator.d.ts +0 -7
  565. package/web/pivotControls/AxisRotator.js +0 -220
  566. package/web/pivotControls/PlaneSlider.cjs.js +0 -1
  567. package/web/pivotControls/PlaneSlider.d.ts +0 -7
  568. package/web/pivotControls/PlaneSlider.js +0 -202
  569. package/web/pivotControls/ScalingSphere.cjs.js +0 -1
  570. package/web/pivotControls/ScalingSphere.d.ts +0 -7
  571. package/web/pivotControls/ScalingSphere.js +0 -192
  572. package/web/pivotControls/context.cjs.js +0 -1
  573. package/web/pivotControls/context.d.ts +0 -33
  574. package/web/pivotControls/context.js +0 -5
  575. package/web/pivotControls/index.cjs.js +0 -1
  576. package/web/pivotControls/index.d.ts +0 -39
  577. package/web/pivotControls/index.js +0 -213
  578. package/web/useCursor.cjs.js +0 -1
  579. package/web/useCursor.d.ts +0 -1
  580. package/web/useCursor.js +0 -12
@@ -0,0 +1,675 @@
1
+ import { t as __commonJSMin } from "../rolldown-runtime.mjs";
2
+
3
+ //#region node_modules/bidi-js/dist/bidi.js
4
+ var require_bidi = /* @__PURE__ */ __commonJSMin(((exports, module) => {
5
+ (function(global, factory) {
6
+ typeof exports === "object" && typeof module !== "undefined" ? module.exports = factory() : typeof define === "function" && define.amd ? define(factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, global.bidi_js = factory());
7
+ })(exports, (function() {
8
+ "use strict";
9
+ function bidiFactory() {
10
+ return function(exports$1) {
11
+ var DATA = {
12
+ "R": "13k,1a,2,3,3,2+1j,ch+16,a+1,5+2,2+n,5,a,4,6+16,4+3,h+1b,4mo,179q,2+9,2+11,2i9+7y,2+68,4,3+4,5+13,4+3,2+4k,3+29,8+cf,1t+7z,w+17,3+3m,1t+3z,16o1+5r,8+30,8+mc,29+1r,29+4v,75+73",
13
+ "EN": "1c+9,3d+1,6,187+9,513,4+5,7+9,sf+j,175h+9,qw+q,161f+1d,4xt+a,25i+9",
14
+ "ES": "17,2,6dp+1,f+1,av,16vr,mx+1,4o,2",
15
+ "ET": "z+2,3h+3,b+1,ym,3e+1,2o,p4+1,8,6u,7c,g6,1wc,1n9+4,30+1b,2n,6d,qhx+1,h0m,a+1,49+2,63+1,4+1,6bb+3,12jj",
16
+ "AN": "16o+5,2j+9,2+1,35,ed,1ff2+9,87+u",
17
+ "CS": "18,2+1,b,2u,12k,55v,l,17v0,2,3,53,2+1,b",
18
+ "B": "a,3,f+2,2v,690",
19
+ "S": "9,2,k",
20
+ "WS": "c,k,4f4,1vk+a,u,1j,335",
21
+ "ON": "x+1,4+4,h+5,r+5,r+3,z,5+3,2+1,2+1,5,2+2,3+4,o,w,ci+1,8+d,3+d,6+8,2+g,39+1,9,6+1,2,33,b8,3+1,3c+1,7+1,5r,b,7h+3,sa+5,2,3i+6,jg+3,ur+9,2v,ij+1,9g+9,7+a,8m,4+1,49+x,14u,2+2,c+2,e+2,e+2,e+1,i+n,e+e,2+p,u+2,e+2,36+1,2+3,2+1,b,2+2,6+5,2,2,2,h+1,5+4,6+3,3+f,16+2,5+3l,3+81,1y+p,2+40,q+a,m+13,2r+ch,2+9e,75+hf,3+v,2+2w,6e+5,f+6,75+2a,1a+p,2+2g,d+5x,r+b,6+3,4+o,g,6+1,6+2,2k+1,4,2j,5h+z,1m+1,1e+f,t+2,1f+e,d+3,4o+3,2s+1,w,535+1r,h3l+1i,93+2,2s,b+1,3l+x,2v,4g+3,21+3,kz+1,g5v+1,5a,j+9,n+v,2,3,2+8,2+1,3+2,2,3,46+1,4+4,h+5,r+5,r+a,3h+2,4+6,b+4,78,1r+24,4+c,4,1hb,ey+6,103+j,16j+c,1ux+7,5+g,fsh,jdq+1t,4,57+2e,p1,1m,1m,1m,1m,4kt+1,7j+17,5+2r,d+e,3+e,2+e,2+10,m+4,w,1n+5,1q,4z+5,4b+rb,9+c,4+c,4+37,d+2g,8+b,l+b,5+1j,9+9,7+13,9+t,3+1,27+3c,2+29,2+3q,d+d,3+4,4+2,6+6,a+o,8+6,a+2,e+6,16+42,2+1i",
22
+ "BN": "0+8,6+d,2s+5,2+p,e,4m9,1kt+2,2b+5,5+5,17q9+v,7k,6p+8,6+1,119d+3,440+7,96s+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+75,6p+2rz,1ben+1,1ekf+1,1ekf+1",
23
+ "NSM": "lc+33,7o+6,7c+18,2,2+1,2+1,2,21+a,1d+k,h,2u+6,3+5,3+1,2+3,10,v+q,2k+a,1n+8,a,p+3,2+8,2+2,2+4,18+2,3c+e,2+v,1k,2,5+7,5,4+6,b+1,u,1n,5+3,9,l+1,r,3+1,1m,5+1,5+1,3+2,4,v+1,4,c+1,1m,5+4,2+1,5,l+1,n+5,2,1n,3,2+3,9,8+1,c+1,v,1q,d,1f,4,1m+2,6+2,2+3,8+1,c+1,u,1n,g+1,l+1,t+1,1m+1,5+3,9,l+1,u,21,8+2,2,2j,3+6,d+7,2r,3+8,c+5,23+1,s,2,2,1k+d,2+4,2+1,6+a,2+z,a,2v+3,2+5,2+1,3+1,q+1,5+2,h+3,e,3+1,7,g,jk+2,qb+2,u+2,u+1,v+1,1t+1,2+6,9,3+a,a,1a+2,3c+1,z,3b+2,5+1,a,7+2,64+1,3,1n,2+6,2,2,3+7,7+9,3,1d+g,1s+3,1d,2+4,2,6,15+8,d+1,x+3,3+1,2+2,1l,2+1,4,2+2,1n+7,3+1,49+2,2+c,2+6,5,7,4+1,5j+1l,2+4,k1+w,2db+2,3y,2p+v,ff+3,30+1,n9x+3,2+9,x+1,29+1,7l,4,5,q+1,6,48+1,r+h,e,13+7,q+a,1b+2,1d,3+3,3+1,14,1w+5,3+1,3+1,d,9,1c,1g,2+2,3+1,6+1,2,17+1,9,6n,3,5,fn5,ki+f,h+f,r2,6b,46+4,1af+2,2+1,6+3,15+2,5,4m+1,fy+3,as+1,4a+a,4x,1j+e,1l+2,1e+3,3+1,1y+2,11+4,2+7,1r,d+1,1h+8,b+3,3,2o+2,3,2+1,7,4h,4+7,m+1,1m+1,4,12+6,4+4,5g+7,3+2,2,o,2d+5,2,5+1,2+1,6n+3,7+1,2+1,s+1,2e+7,3,2+1,2z,2,3+5,2,2u+2,3+3,2+4,78+8,2+1,75+1,2,5,41+3,3+1,5,x+5,3+1,15+5,3+3,9,a+5,3+2,1b+c,2+1,bb+6,2+5,2d+l,3+6,2+1,2+1,3f+5,4,2+1,2+6,2,21+1,4,2,9o+1,f0c+4,1o+6,t5,1s+3,2a,f5l+1,43t+2,i+7,3+6,v+3,45+2,1j0+1i,5+1d,9,f,n+4,2+e,11t+6,2+g,3+6,2+1,2+4,7a+6,c6+3,15t+6,32+6,gzhy+6n",
24
+ "AL": "16w,3,2,e+1b,z+2,2+2s,g+1,8+1,b+m,2+t,s+2i,c+e,4h+f,1d+1e,1bwe+dp,3+3z,x+c,2+1,35+3y,2rm+z,5+7,b+5,dt+l,c+u,17nl+27,1t+27,4x+6n,3+d",
25
+ "LRO": "6ct",
26
+ "RLO": "6cu",
27
+ "LRE": "6cq",
28
+ "RLE": "6cr",
29
+ "PDF": "6cs",
30
+ "LRI": "6ee",
31
+ "RLI": "6ef",
32
+ "FSI": "6eg",
33
+ "PDI": "6eh"
34
+ };
35
+ var TYPES = {};
36
+ var TYPES_TO_NAMES = {};
37
+ TYPES.L = 1;
38
+ TYPES_TO_NAMES[1] = "L";
39
+ Object.keys(DATA).forEach(function(type, i) {
40
+ TYPES[type] = 1 << i + 1;
41
+ TYPES_TO_NAMES[TYPES[type]] = type;
42
+ });
43
+ Object.freeze(TYPES);
44
+ var ISOLATE_INIT_TYPES = TYPES.LRI | TYPES.RLI | TYPES.FSI;
45
+ var STRONG_TYPES = TYPES.L | TYPES.R | TYPES.AL;
46
+ var NEUTRAL_ISOLATE_TYPES = TYPES.B | TYPES.S | TYPES.WS | TYPES.ON | TYPES.FSI | TYPES.LRI | TYPES.RLI | TYPES.PDI;
47
+ var BN_LIKE_TYPES = TYPES.BN | TYPES.RLE | TYPES.LRE | TYPES.RLO | TYPES.LRO | TYPES.PDF;
48
+ var TRAILING_TYPES = TYPES.S | TYPES.WS | TYPES.B | ISOLATE_INIT_TYPES | TYPES.PDI | BN_LIKE_TYPES;
49
+ var map = null;
50
+ function parseData() {
51
+ if (!map) {
52
+ map = /* @__PURE__ */ new Map();
53
+ var loop = function(type$1) {
54
+ if (DATA.hasOwnProperty(type$1)) {
55
+ var lastCode = 0;
56
+ DATA[type$1].split(",").forEach(function(range) {
57
+ var ref = range.split("+");
58
+ var skip = ref[0];
59
+ var step = ref[1];
60
+ skip = parseInt(skip, 36);
61
+ step = step ? parseInt(step, 36) : 0;
62
+ map.set(lastCode += skip, TYPES[type$1]);
63
+ for (var i = 0; i < step; i++) map.set(++lastCode, TYPES[type$1]);
64
+ });
65
+ }
66
+ };
67
+ for (var type in DATA) loop(type);
68
+ }
69
+ }
70
+ /**
71
+ * @param {string} char
72
+ * @return {number}
73
+ */
74
+ function getBidiCharType(char) {
75
+ parseData();
76
+ return map.get(char.codePointAt(0)) || TYPES.L;
77
+ }
78
+ function getBidiCharTypeName(char) {
79
+ return TYPES_TO_NAMES[getBidiCharType(char)];
80
+ }
81
+ var data$1 = {
82
+ "pairs": "14>1,1e>2,u>2,2wt>1,1>1,1ge>1,1wp>1,1j>1,f>1,hm>1,1>1,u>1,u6>1,1>1,+5,28>1,w>1,1>1,+3,b8>1,1>1,+3,1>3,-1>-1,3>1,1>1,+2,1s>1,1>1,x>1,th>1,1>1,+2,db>1,1>1,+3,3>1,1>1,+2,14qm>1,1>1,+1,4q>1,1e>2,u>2,2>1,+1",
83
+ "canonical": "6f1>-6dx,6dy>-6dx,6ec>-6ed,6ee>-6ed,6ww>2jj,-2ji>2jj,14r4>-1e7l,1e7m>-1e7l,1e7m>-1e5c,1e5d>-1e5b,1e5c>-14qx,14qy>-14qx,14vn>-1ecg,1ech>-1ecg,1edu>-1ecg,1eci>-1ecg,1eda>-1ecg,1eci>-1ecg,1eci>-168q,168r>-168q,168s>-14ye,14yf>-14ye"
84
+ };
85
+ /**
86
+ * Parses an string that holds encoded codepoint mappings, e.g. for bracket pairs or
87
+ * mirroring characters, as encoded by scripts/generateBidiData.js. Returns an object
88
+ * holding the `map`, and optionally a `reverseMap` if `includeReverse:true`.
89
+ * @param {string} encodedString
90
+ * @param {boolean} includeReverse - true if you want reverseMap in the output
91
+ * @return {{map: Map<number, number>, reverseMap?: Map<number, number>}}
92
+ */
93
+ function parseCharacterMap(encodedString, includeReverse) {
94
+ var radix = 36;
95
+ var lastCode = 0;
96
+ var map$1 = /* @__PURE__ */ new Map();
97
+ var reverseMap = includeReverse && /* @__PURE__ */ new Map();
98
+ var prevPair;
99
+ encodedString.split(",").forEach(function visit(entry) {
100
+ if (entry.indexOf("+") !== -1) for (var i = +entry; i--;) visit(prevPair);
101
+ else {
102
+ prevPair = entry;
103
+ var ref = entry.split(">");
104
+ var a = ref[0];
105
+ var b = ref[1];
106
+ a = String.fromCodePoint(lastCode += parseInt(a, radix));
107
+ b = String.fromCodePoint(lastCode += parseInt(b, radix));
108
+ map$1.set(a, b);
109
+ includeReverse && reverseMap.set(b, a);
110
+ }
111
+ });
112
+ return {
113
+ map: map$1,
114
+ reverseMap
115
+ };
116
+ }
117
+ var openToClose, closeToOpen, canonical;
118
+ function parse$1() {
119
+ if (!openToClose) {
120
+ var ref = parseCharacterMap(data$1.pairs, true);
121
+ var map$1 = ref.map;
122
+ var reverseMap = ref.reverseMap;
123
+ openToClose = map$1;
124
+ closeToOpen = reverseMap;
125
+ canonical = parseCharacterMap(data$1.canonical, false).map;
126
+ }
127
+ }
128
+ function openingToClosingBracket(char) {
129
+ parse$1();
130
+ return openToClose.get(char) || null;
131
+ }
132
+ function closingToOpeningBracket(char) {
133
+ parse$1();
134
+ return closeToOpen.get(char) || null;
135
+ }
136
+ function getCanonicalBracket(char) {
137
+ parse$1();
138
+ return canonical.get(char) || null;
139
+ }
140
+ var TYPE_L = TYPES.L;
141
+ var TYPE_R = TYPES.R;
142
+ var TYPE_EN = TYPES.EN;
143
+ var TYPE_ES = TYPES.ES;
144
+ var TYPE_ET = TYPES.ET;
145
+ var TYPE_AN = TYPES.AN;
146
+ var TYPE_CS = TYPES.CS;
147
+ var TYPE_B = TYPES.B;
148
+ var TYPE_S = TYPES.S;
149
+ var TYPE_ON = TYPES.ON;
150
+ var TYPE_BN = TYPES.BN;
151
+ var TYPE_NSM = TYPES.NSM;
152
+ var TYPE_AL = TYPES.AL;
153
+ var TYPE_LRO = TYPES.LRO;
154
+ var TYPE_RLO = TYPES.RLO;
155
+ var TYPE_LRE = TYPES.LRE;
156
+ var TYPE_RLE = TYPES.RLE;
157
+ var TYPE_PDF = TYPES.PDF;
158
+ var TYPE_LRI = TYPES.LRI;
159
+ var TYPE_RLI = TYPES.RLI;
160
+ var TYPE_FSI = TYPES.FSI;
161
+ var TYPE_PDI = TYPES.PDI;
162
+ /**
163
+ * @typedef {object} GetEmbeddingLevelsResult
164
+ * @property {{start, end, level}[]} paragraphs
165
+ * @property {Uint8Array} levels
166
+ */
167
+ /**
168
+ * This function applies the Bidirectional Algorithm to a string, returning the resolved embedding levels
169
+ * in a single Uint8Array plus a list of objects holding each paragraph's start and end indices and resolved
170
+ * base embedding level.
171
+ *
172
+ * @param {string} string - The input string
173
+ * @param {"ltr"|"rtl"|"auto"} [baseDirection] - Use "ltr" or "rtl" to force a base paragraph direction,
174
+ * otherwise a direction will be chosen automatically from each paragraph's contents.
175
+ * @return {GetEmbeddingLevelsResult}
176
+ */
177
+ function getEmbeddingLevels(string, baseDirection) {
178
+ var MAX_DEPTH = 125;
179
+ var charTypes = new Uint32Array(string.length);
180
+ for (var i = 0; i < string.length; i++) charTypes[i] = getBidiCharType(string[i]);
181
+ var charTypeCounts = /* @__PURE__ */ new Map();
182
+ function changeCharType(i$12, type$2) {
183
+ var oldType = charTypes[i$12];
184
+ charTypes[i$12] = type$2;
185
+ charTypeCounts.set(oldType, charTypeCounts.get(oldType) - 1);
186
+ if (oldType & NEUTRAL_ISOLATE_TYPES) charTypeCounts.set(NEUTRAL_ISOLATE_TYPES, charTypeCounts.get(NEUTRAL_ISOLATE_TYPES) - 1);
187
+ charTypeCounts.set(type$2, (charTypeCounts.get(type$2) || 0) + 1);
188
+ if (type$2 & NEUTRAL_ISOLATE_TYPES) charTypeCounts.set(NEUTRAL_ISOLATE_TYPES, (charTypeCounts.get(NEUTRAL_ISOLATE_TYPES) || 0) + 1);
189
+ }
190
+ var embedLevels = new Uint8Array(string.length);
191
+ var isolationPairs = /* @__PURE__ */ new Map();
192
+ var paragraphs = [];
193
+ var paragraph = null;
194
+ for (var i$1 = 0; i$1 < string.length; i$1++) {
195
+ if (!paragraph) paragraphs.push(paragraph = {
196
+ start: i$1,
197
+ end: string.length - 1,
198
+ level: baseDirection === "rtl" ? 1 : baseDirection === "ltr" ? 0 : determineAutoEmbedLevel(i$1, false)
199
+ });
200
+ if (charTypes[i$1] & TYPE_B) {
201
+ paragraph.end = i$1;
202
+ paragraph = null;
203
+ }
204
+ }
205
+ var FORMATTING_TYPES = TYPE_RLE | TYPE_LRE | TYPE_RLO | TYPE_LRO | ISOLATE_INIT_TYPES | TYPE_PDI | TYPE_PDF | TYPE_B;
206
+ var nextEven = function(n) {
207
+ return n + (n & 1 ? 1 : 2);
208
+ };
209
+ var nextOdd = function(n) {
210
+ return n + (n & 1 ? 2 : 1);
211
+ };
212
+ for (var paraIdx = 0; paraIdx < paragraphs.length; paraIdx++) {
213
+ paragraph = paragraphs[paraIdx];
214
+ var statusStack = [{
215
+ _level: paragraph.level,
216
+ _override: 0,
217
+ _isolate: 0
218
+ }];
219
+ var stackTop = void 0;
220
+ var overflowIsolateCount = 0;
221
+ var overflowEmbeddingCount = 0;
222
+ var validIsolateCount = 0;
223
+ charTypeCounts.clear();
224
+ for (var i$2 = paragraph.start; i$2 <= paragraph.end; i$2++) {
225
+ var charType = charTypes[i$2];
226
+ stackTop = statusStack[statusStack.length - 1];
227
+ charTypeCounts.set(charType, (charTypeCounts.get(charType) || 0) + 1);
228
+ if (charType & NEUTRAL_ISOLATE_TYPES) charTypeCounts.set(NEUTRAL_ISOLATE_TYPES, (charTypeCounts.get(NEUTRAL_ISOLATE_TYPES) || 0) + 1);
229
+ if (charType & FORMATTING_TYPES) {
230
+ if (charType & (TYPE_RLE | TYPE_LRE)) {
231
+ embedLevels[i$2] = stackTop._level;
232
+ var level = (charType === TYPE_RLE ? nextOdd : nextEven)(stackTop._level);
233
+ if (level <= MAX_DEPTH && !overflowIsolateCount && !overflowEmbeddingCount) statusStack.push({
234
+ _level: level,
235
+ _override: 0,
236
+ _isolate: 0
237
+ });
238
+ else if (!overflowIsolateCount) overflowEmbeddingCount++;
239
+ } else if (charType & (TYPE_RLO | TYPE_LRO)) {
240
+ embedLevels[i$2] = stackTop._level;
241
+ var level$1 = (charType === TYPE_RLO ? nextOdd : nextEven)(stackTop._level);
242
+ if (level$1 <= MAX_DEPTH && !overflowIsolateCount && !overflowEmbeddingCount) statusStack.push({
243
+ _level: level$1,
244
+ _override: charType & TYPE_RLO ? TYPE_R : TYPE_L,
245
+ _isolate: 0
246
+ });
247
+ else if (!overflowIsolateCount) overflowEmbeddingCount++;
248
+ } else if (charType & ISOLATE_INIT_TYPES) {
249
+ if (charType & TYPE_FSI) charType = determineAutoEmbedLevel(i$2 + 1, true) === 1 ? TYPE_RLI : TYPE_LRI;
250
+ embedLevels[i$2] = stackTop._level;
251
+ if (stackTop._override) changeCharType(i$2, stackTop._override);
252
+ var level$2 = (charType === TYPE_RLI ? nextOdd : nextEven)(stackTop._level);
253
+ if (level$2 <= MAX_DEPTH && overflowIsolateCount === 0 && overflowEmbeddingCount === 0) {
254
+ validIsolateCount++;
255
+ statusStack.push({
256
+ _level: level$2,
257
+ _override: 0,
258
+ _isolate: 1,
259
+ _isolInitIndex: i$2
260
+ });
261
+ } else overflowIsolateCount++;
262
+ } else if (charType & TYPE_PDI) {
263
+ if (overflowIsolateCount > 0) overflowIsolateCount--;
264
+ else if (validIsolateCount > 0) {
265
+ overflowEmbeddingCount = 0;
266
+ while (!statusStack[statusStack.length - 1]._isolate) statusStack.pop();
267
+ var isolInitIndex = statusStack[statusStack.length - 1]._isolInitIndex;
268
+ if (isolInitIndex != null) {
269
+ isolationPairs.set(isolInitIndex, i$2);
270
+ isolationPairs.set(i$2, isolInitIndex);
271
+ }
272
+ statusStack.pop();
273
+ validIsolateCount--;
274
+ }
275
+ stackTop = statusStack[statusStack.length - 1];
276
+ embedLevels[i$2] = stackTop._level;
277
+ if (stackTop._override) changeCharType(i$2, stackTop._override);
278
+ } else if (charType & TYPE_PDF) {
279
+ if (overflowIsolateCount === 0) {
280
+ if (overflowEmbeddingCount > 0) overflowEmbeddingCount--;
281
+ else if (!stackTop._isolate && statusStack.length > 1) {
282
+ statusStack.pop();
283
+ stackTop = statusStack[statusStack.length - 1];
284
+ }
285
+ }
286
+ embedLevels[i$2] = stackTop._level;
287
+ } else if (charType & TYPE_B) embedLevels[i$2] = paragraph.level;
288
+ } else {
289
+ embedLevels[i$2] = stackTop._level;
290
+ if (stackTop._override && charType !== TYPE_BN) changeCharType(i$2, stackTop._override);
291
+ }
292
+ }
293
+ var levelRuns = [];
294
+ var currentRun = null;
295
+ for (var i$3 = paragraph.start; i$3 <= paragraph.end; i$3++) {
296
+ var charType$1 = charTypes[i$3];
297
+ if (!(charType$1 & BN_LIKE_TYPES)) {
298
+ var lvl = embedLevels[i$3];
299
+ var isIsolInit = charType$1 & ISOLATE_INIT_TYPES;
300
+ var isPDI = charType$1 === TYPE_PDI;
301
+ if (currentRun && lvl === currentRun._level) {
302
+ currentRun._end = i$3;
303
+ currentRun._endsWithIsolInit = isIsolInit;
304
+ } else levelRuns.push(currentRun = {
305
+ _start: i$3,
306
+ _end: i$3,
307
+ _level: lvl,
308
+ _startsWithPDI: isPDI,
309
+ _endsWithIsolInit: isIsolInit
310
+ });
311
+ }
312
+ }
313
+ var isolatingRunSeqs = [];
314
+ for (var runIdx = 0; runIdx < levelRuns.length; runIdx++) {
315
+ var run = levelRuns[runIdx];
316
+ if (!run._startsWithPDI || run._startsWithPDI && !isolationPairs.has(run._start)) {
317
+ var seqRuns = [currentRun = run];
318
+ for (var pdiIndex = void 0; currentRun && currentRun._endsWithIsolInit && (pdiIndex = isolationPairs.get(currentRun._end)) != null;) for (var i$4 = runIdx + 1; i$4 < levelRuns.length; i$4++) if (levelRuns[i$4]._start === pdiIndex) {
319
+ seqRuns.push(currentRun = levelRuns[i$4]);
320
+ break;
321
+ }
322
+ var seqIndices = [];
323
+ for (var i$5 = 0; i$5 < seqRuns.length; i$5++) {
324
+ var run$1 = seqRuns[i$5];
325
+ for (var j = run$1._start; j <= run$1._end; j++) seqIndices.push(j);
326
+ }
327
+ var firstLevel = embedLevels[seqIndices[0]];
328
+ var prevLevel = paragraph.level;
329
+ for (var i$6 = seqIndices[0] - 1; i$6 >= 0; i$6--) if (!(charTypes[i$6] & BN_LIKE_TYPES)) {
330
+ prevLevel = embedLevels[i$6];
331
+ break;
332
+ }
333
+ var lastIndex = seqIndices[seqIndices.length - 1];
334
+ var lastLevel = embedLevels[lastIndex];
335
+ var nextLevel = paragraph.level;
336
+ if (!(charTypes[lastIndex] & ISOLATE_INIT_TYPES)) {
337
+ for (var i$7 = lastIndex + 1; i$7 <= paragraph.end; i$7++) if (!(charTypes[i$7] & BN_LIKE_TYPES)) {
338
+ nextLevel = embedLevels[i$7];
339
+ break;
340
+ }
341
+ }
342
+ isolatingRunSeqs.push({
343
+ _seqIndices: seqIndices,
344
+ _sosType: Math.max(prevLevel, firstLevel) % 2 ? TYPE_R : TYPE_L,
345
+ _eosType: Math.max(nextLevel, lastLevel) % 2 ? TYPE_R : TYPE_L
346
+ });
347
+ }
348
+ }
349
+ for (var seqIdx = 0; seqIdx < isolatingRunSeqs.length; seqIdx++) {
350
+ var ref = isolatingRunSeqs[seqIdx];
351
+ var seqIndices$1 = ref._seqIndices;
352
+ var sosType = ref._sosType;
353
+ var eosType = ref._eosType;
354
+ /**
355
+ * All the level runs in an isolating run sequence have the same embedding level.
356
+ *
357
+ * DO NOT change any `embedLevels[i]` within the current scope.
358
+ */
359
+ var embedDirection = embedLevels[seqIndices$1[0]] & 1 ? TYPE_R : TYPE_L;
360
+ if (charTypeCounts.get(TYPE_NSM)) for (var si = 0; si < seqIndices$1.length; si++) {
361
+ var i$8 = seqIndices$1[si];
362
+ if (charTypes[i$8] & TYPE_NSM) {
363
+ var prevType = sosType;
364
+ for (var sj = si - 1; sj >= 0; sj--) if (!(charTypes[seqIndices$1[sj]] & BN_LIKE_TYPES)) {
365
+ prevType = charTypes[seqIndices$1[sj]];
366
+ break;
367
+ }
368
+ changeCharType(i$8, prevType & (ISOLATE_INIT_TYPES | TYPE_PDI) ? TYPE_ON : prevType);
369
+ }
370
+ }
371
+ if (charTypeCounts.get(TYPE_EN)) for (var si$1 = 0; si$1 < seqIndices$1.length; si$1++) {
372
+ var i$9 = seqIndices$1[si$1];
373
+ if (charTypes[i$9] & TYPE_EN) for (var sj$1 = si$1 - 1; sj$1 >= -1; sj$1--) {
374
+ var prevCharType = sj$1 === -1 ? sosType : charTypes[seqIndices$1[sj$1]];
375
+ if (prevCharType & STRONG_TYPES) {
376
+ if (prevCharType === TYPE_AL) changeCharType(i$9, TYPE_AN);
377
+ break;
378
+ }
379
+ }
380
+ }
381
+ if (charTypeCounts.get(TYPE_AL)) for (var si$2 = 0; si$2 < seqIndices$1.length; si$2++) {
382
+ var i$10 = seqIndices$1[si$2];
383
+ if (charTypes[i$10] & TYPE_AL) changeCharType(i$10, TYPE_R);
384
+ }
385
+ if (charTypeCounts.get(TYPE_ES) || charTypeCounts.get(TYPE_CS)) for (var si$3 = 1; si$3 < seqIndices$1.length - 1; si$3++) {
386
+ var i$11 = seqIndices$1[si$3];
387
+ if (charTypes[i$11] & (TYPE_ES | TYPE_CS)) {
388
+ var prevType$1 = 0, nextType = 0;
389
+ for (var sj$2 = si$3 - 1; sj$2 >= 0; sj$2--) {
390
+ prevType$1 = charTypes[seqIndices$1[sj$2]];
391
+ if (!(prevType$1 & BN_LIKE_TYPES)) break;
392
+ }
393
+ for (var sj$3 = si$3 + 1; sj$3 < seqIndices$1.length; sj$3++) {
394
+ nextType = charTypes[seqIndices$1[sj$3]];
395
+ if (!(nextType & BN_LIKE_TYPES)) break;
396
+ }
397
+ if (prevType$1 === nextType && (charTypes[i$11] === TYPE_ES ? prevType$1 === TYPE_EN : prevType$1 & (TYPE_EN | TYPE_AN))) changeCharType(i$11, prevType$1);
398
+ }
399
+ }
400
+ if (charTypeCounts.get(TYPE_EN)) {
401
+ for (var si$4 = 0; si$4 < seqIndices$1.length; si$4++) if (charTypes[seqIndices$1[si$4]] & TYPE_EN) {
402
+ for (var sj$4 = si$4 - 1; sj$4 >= 0 && charTypes[seqIndices$1[sj$4]] & (TYPE_ET | BN_LIKE_TYPES); sj$4--) changeCharType(seqIndices$1[sj$4], TYPE_EN);
403
+ for (si$4++; si$4 < seqIndices$1.length && charTypes[seqIndices$1[si$4]] & (TYPE_ET | BN_LIKE_TYPES | TYPE_EN); si$4++) if (charTypes[seqIndices$1[si$4]] !== TYPE_EN) changeCharType(seqIndices$1[si$4], TYPE_EN);
404
+ }
405
+ }
406
+ if (charTypeCounts.get(TYPE_ET) || charTypeCounts.get(TYPE_ES) || charTypeCounts.get(TYPE_CS)) for (var si$5 = 0; si$5 < seqIndices$1.length; si$5++) {
407
+ var i$13 = seqIndices$1[si$5];
408
+ if (charTypes[i$13] & (TYPE_ET | TYPE_ES | TYPE_CS)) {
409
+ changeCharType(i$13, TYPE_ON);
410
+ for (var sj$5 = si$5 - 1; sj$5 >= 0 && charTypes[seqIndices$1[sj$5]] & BN_LIKE_TYPES; sj$5--) changeCharType(seqIndices$1[sj$5], TYPE_ON);
411
+ for (var sj$6 = si$5 + 1; sj$6 < seqIndices$1.length && charTypes[seqIndices$1[sj$6]] & BN_LIKE_TYPES; sj$6++) changeCharType(seqIndices$1[sj$6], TYPE_ON);
412
+ }
413
+ }
414
+ if (charTypeCounts.get(TYPE_EN)) for (var si$6 = 0, prevStrongType = sosType; si$6 < seqIndices$1.length; si$6++) {
415
+ var i$14 = seqIndices$1[si$6];
416
+ var type = charTypes[i$14];
417
+ if (type & TYPE_EN) {
418
+ if (prevStrongType === TYPE_L) changeCharType(i$14, TYPE_L);
419
+ } else if (type & STRONG_TYPES) prevStrongType = type;
420
+ }
421
+ if (charTypeCounts.get(NEUTRAL_ISOLATE_TYPES)) {
422
+ var R_TYPES_FOR_N_STEPS = TYPE_R | TYPE_EN | TYPE_AN;
423
+ var STRONG_TYPES_FOR_N_STEPS = R_TYPES_FOR_N_STEPS | TYPE_L;
424
+ var bracketPairs = [];
425
+ var openerStack = [];
426
+ for (var si$7 = 0; si$7 < seqIndices$1.length; si$7++) if (charTypes[seqIndices$1[si$7]] & NEUTRAL_ISOLATE_TYPES) {
427
+ var char = string[seqIndices$1[si$7]];
428
+ var oppositeBracket = void 0;
429
+ if (openingToClosingBracket(char) !== null) if (openerStack.length < 63) openerStack.push({
430
+ char,
431
+ seqIndex: si$7
432
+ });
433
+ else break;
434
+ else if ((oppositeBracket = closingToOpeningBracket(char)) !== null) for (var stackIdx = openerStack.length - 1; stackIdx >= 0; stackIdx--) {
435
+ var stackChar = openerStack[stackIdx].char;
436
+ if (stackChar === oppositeBracket || stackChar === closingToOpeningBracket(getCanonicalBracket(char)) || openingToClosingBracket(getCanonicalBracket(stackChar)) === char) {
437
+ bracketPairs.push([openerStack[stackIdx].seqIndex, si$7]);
438
+ openerStack.length = stackIdx;
439
+ break;
440
+ }
441
+ }
442
+ }
443
+ bracketPairs.sort(function(a, b) {
444
+ return a[0] - b[0];
445
+ });
446
+ for (var pairIdx = 0; pairIdx < bracketPairs.length; pairIdx++) {
447
+ var ref$1 = bracketPairs[pairIdx];
448
+ var openSeqIdx = ref$1[0];
449
+ var closeSeqIdx = ref$1[1];
450
+ var foundStrongType = false;
451
+ var useStrongType = 0;
452
+ for (var si$8 = openSeqIdx + 1; si$8 < closeSeqIdx; si$8++) {
453
+ var i$15 = seqIndices$1[si$8];
454
+ if (charTypes[i$15] & STRONG_TYPES_FOR_N_STEPS) {
455
+ foundStrongType = true;
456
+ var lr = charTypes[i$15] & R_TYPES_FOR_N_STEPS ? TYPE_R : TYPE_L;
457
+ if (lr === embedDirection) {
458
+ useStrongType = lr;
459
+ break;
460
+ }
461
+ }
462
+ }
463
+ if (foundStrongType && !useStrongType) {
464
+ useStrongType = sosType;
465
+ for (var si$9 = openSeqIdx - 1; si$9 >= 0; si$9--) {
466
+ var i$16 = seqIndices$1[si$9];
467
+ if (charTypes[i$16] & STRONG_TYPES_FOR_N_STEPS) {
468
+ var lr$1 = charTypes[i$16] & R_TYPES_FOR_N_STEPS ? TYPE_R : TYPE_L;
469
+ if (lr$1 !== embedDirection) useStrongType = lr$1;
470
+ else useStrongType = embedDirection;
471
+ break;
472
+ }
473
+ }
474
+ }
475
+ if (useStrongType) {
476
+ charTypes[seqIndices$1[openSeqIdx]] = charTypes[seqIndices$1[closeSeqIdx]] = useStrongType;
477
+ if (useStrongType !== embedDirection) {
478
+ for (var si$10 = openSeqIdx + 1; si$10 < seqIndices$1.length; si$10++) if (!(charTypes[seqIndices$1[si$10]] & BN_LIKE_TYPES)) {
479
+ if (getBidiCharType(string[seqIndices$1[si$10]]) & TYPE_NSM) charTypes[seqIndices$1[si$10]] = useStrongType;
480
+ break;
481
+ }
482
+ }
483
+ if (useStrongType !== embedDirection) {
484
+ for (var si$11 = closeSeqIdx + 1; si$11 < seqIndices$1.length; si$11++) if (!(charTypes[seqIndices$1[si$11]] & BN_LIKE_TYPES)) {
485
+ if (getBidiCharType(string[seqIndices$1[si$11]]) & TYPE_NSM) charTypes[seqIndices$1[si$11]] = useStrongType;
486
+ break;
487
+ }
488
+ }
489
+ }
490
+ }
491
+ for (var si$12 = 0; si$12 < seqIndices$1.length; si$12++) if (charTypes[seqIndices$1[si$12]] & NEUTRAL_ISOLATE_TYPES) {
492
+ var niRunStart = si$12, niRunEnd = si$12;
493
+ var prevType$2 = sosType;
494
+ for (var si2 = si$12 - 1; si2 >= 0; si2--) if (charTypes[seqIndices$1[si2]] & BN_LIKE_TYPES) niRunStart = si2;
495
+ else {
496
+ prevType$2 = charTypes[seqIndices$1[si2]] & R_TYPES_FOR_N_STEPS ? TYPE_R : TYPE_L;
497
+ break;
498
+ }
499
+ var nextType$1 = eosType;
500
+ for (var si2$1 = si$12 + 1; si2$1 < seqIndices$1.length; si2$1++) if (charTypes[seqIndices$1[si2$1]] & (NEUTRAL_ISOLATE_TYPES | BN_LIKE_TYPES)) niRunEnd = si2$1;
501
+ else {
502
+ nextType$1 = charTypes[seqIndices$1[si2$1]] & R_TYPES_FOR_N_STEPS ? TYPE_R : TYPE_L;
503
+ break;
504
+ }
505
+ for (var sj$7 = niRunStart; sj$7 <= niRunEnd; sj$7++) charTypes[seqIndices$1[sj$7]] = prevType$2 === nextType$1 ? prevType$2 : embedDirection;
506
+ si$12 = niRunEnd;
507
+ }
508
+ }
509
+ }
510
+ for (var i$17 = paragraph.start; i$17 <= paragraph.end; i$17++) {
511
+ var level$3 = embedLevels[i$17];
512
+ var type$1 = charTypes[i$17];
513
+ if (level$3 & 1) {
514
+ if (type$1 & (TYPE_L | TYPE_EN | TYPE_AN)) embedLevels[i$17]++;
515
+ } else if (type$1 & TYPE_R) embedLevels[i$17]++;
516
+ else if (type$1 & (TYPE_AN | TYPE_EN)) embedLevels[i$17] += 2;
517
+ if (type$1 & BN_LIKE_TYPES) embedLevels[i$17] = i$17 === 0 ? paragraph.level : embedLevels[i$17 - 1];
518
+ if (i$17 === paragraph.end || getBidiCharType(string[i$17]) & (TYPE_S | TYPE_B)) for (var j$1 = i$17; j$1 >= 0 && getBidiCharType(string[j$1]) & TRAILING_TYPES; j$1--) embedLevels[j$1] = paragraph.level;
519
+ }
520
+ }
521
+ return {
522
+ levels: embedLevels,
523
+ paragraphs
524
+ };
525
+ function determineAutoEmbedLevel(start, isFSI) {
526
+ for (var i$12 = start; i$12 < string.length; i$12++) {
527
+ var charType$2 = charTypes[i$12];
528
+ if (charType$2 & (TYPE_R | TYPE_AL)) return 1;
529
+ if (charType$2 & (TYPE_B | TYPE_L) || isFSI && charType$2 === TYPE_PDI) return 0;
530
+ if (charType$2 & ISOLATE_INIT_TYPES) {
531
+ var pdi = indexOfMatchingPDI(i$12);
532
+ i$12 = pdi === -1 ? string.length : pdi;
533
+ }
534
+ }
535
+ return 0;
536
+ }
537
+ function indexOfMatchingPDI(isolateStart) {
538
+ var isolationLevel = 1;
539
+ for (var i$12 = isolateStart + 1; i$12 < string.length; i$12++) {
540
+ var charType$2 = charTypes[i$12];
541
+ if (charType$2 & TYPE_B) break;
542
+ if (charType$2 & TYPE_PDI) {
543
+ if (--isolationLevel === 0) return i$12;
544
+ } else if (charType$2 & ISOLATE_INIT_TYPES) isolationLevel++;
545
+ }
546
+ return -1;
547
+ }
548
+ }
549
+ var data = "14>1,j>2,t>2,u>2,1a>g,2v3>1,1>1,1ge>1,1wd>1,b>1,1j>1,f>1,ai>3,-2>3,+1,8>1k0,-1jq>1y7,-1y6>1hf,-1he>1h6,-1h5>1ha,-1h8>1qi,-1pu>1,6>3u,-3s>7,6>1,1>1,f>1,1>1,+2,3>1,1>1,+13,4>1,1>1,6>1eo,-1ee>1,3>1mg,-1me>1mk,-1mj>1mi,-1mg>1mi,-1md>1,1>1,+2,1>10k,-103>1,1>1,4>1,5>1,1>1,+10,3>1,1>8,-7>8,+1,-6>7,+1,a>1,1>1,u>1,u6>1,1>1,+5,26>1,1>1,2>1,2>2,8>1,7>1,4>1,1>1,+5,b8>1,1>1,+3,1>3,-2>1,2>1,1>1,+2,c>1,3>1,1>1,+2,h>1,3>1,a>1,1>1,2>1,3>1,1>1,d>1,f>1,3>1,1a>1,1>1,6>1,7>1,13>1,k>1,1>1,+19,4>1,1>1,+2,2>1,1>1,+18,m>1,a>1,1>1,lk>1,1>1,4>1,2>1,f>1,3>1,1>1,+3,db>1,1>1,+3,3>1,1>1,+2,14qm>1,1>1,+1,6>1,4j>1,j>2,t>2,u>2,2>1,+1";
550
+ var mirrorMap;
551
+ function parse() {
552
+ if (!mirrorMap) {
553
+ var ref = parseCharacterMap(data, true);
554
+ var map$1 = ref.map;
555
+ ref.reverseMap.forEach(function(value, key) {
556
+ map$1.set(key, value);
557
+ });
558
+ mirrorMap = map$1;
559
+ }
560
+ }
561
+ function getMirroredCharacter(char) {
562
+ parse();
563
+ return mirrorMap.get(char) || null;
564
+ }
565
+ /**
566
+ * Given a string and its resolved embedding levels, build a map of indices to replacement chars
567
+ * for any characters in right-to-left segments that have defined mirrored characters.
568
+ * @param string
569
+ * @param embeddingLevels
570
+ * @param [start]
571
+ * @param [end]
572
+ * @return {Map<number, string>}
573
+ */
574
+ function getMirroredCharactersMap(string, embeddingLevels, start, end) {
575
+ var strLen = string.length;
576
+ start = Math.max(0, start == null ? 0 : +start);
577
+ end = Math.min(strLen - 1, end == null ? strLen - 1 : +end);
578
+ var map$1 = /* @__PURE__ */ new Map();
579
+ for (var i = start; i <= end; i++) if (embeddingLevels[i] & 1) {
580
+ var mirror = getMirroredCharacter(string[i]);
581
+ if (mirror !== null) map$1.set(i, mirror);
582
+ }
583
+ return map$1;
584
+ }
585
+ /**
586
+ * Given a start and end denoting a single line within a string, and a set of precalculated
587
+ * bidi embedding levels, produce a list of segments whose ordering should be flipped, in sequence.
588
+ * @param {string} string - the full input string
589
+ * @param {GetEmbeddingLevelsResult} embeddingLevelsResult - the result object from getEmbeddingLevels
590
+ * @param {number} [start] - first character in a subset of the full string
591
+ * @param {number} [end] - last character in a subset of the full string
592
+ * @return {number[][]} - the list of start/end segments that should be flipped, in order.
593
+ */
594
+ function getReorderSegments(string, embeddingLevelsResult, start, end) {
595
+ var strLen = string.length;
596
+ start = Math.max(0, start == null ? 0 : +start);
597
+ end = Math.min(strLen - 1, end == null ? strLen - 1 : +end);
598
+ var segments = [];
599
+ embeddingLevelsResult.paragraphs.forEach(function(paragraph) {
600
+ var lineStart = Math.max(start, paragraph.start);
601
+ var lineEnd = Math.min(end, paragraph.end);
602
+ if (lineStart < lineEnd) {
603
+ var lineLevels = embeddingLevelsResult.levels.slice(lineStart, lineEnd + 1);
604
+ for (var i = lineEnd; i >= lineStart && getBidiCharType(string[i]) & TRAILING_TYPES; i--) lineLevels[i] = paragraph.level;
605
+ var maxLevel = paragraph.level;
606
+ var minOddLevel = Infinity;
607
+ for (var i$1 = 0; i$1 < lineLevels.length; i$1++) {
608
+ var level = lineLevels[i$1];
609
+ if (level > maxLevel) maxLevel = level;
610
+ if (level < minOddLevel) minOddLevel = level | 1;
611
+ }
612
+ for (var lvl = maxLevel; lvl >= minOddLevel; lvl--) for (var i$2 = 0; i$2 < lineLevels.length; i$2++) if (lineLevels[i$2] >= lvl) {
613
+ var segStart = i$2;
614
+ while (i$2 + 1 < lineLevels.length && lineLevels[i$2 + 1] >= lvl) i$2++;
615
+ if (i$2 > segStart) segments.push([segStart + lineStart, i$2 + lineStart]);
616
+ }
617
+ }
618
+ });
619
+ return segments;
620
+ }
621
+ /**
622
+ * @param {string} string
623
+ * @param {GetEmbeddingLevelsResult} embedLevelsResult
624
+ * @param {number} [start]
625
+ * @param {number} [end]
626
+ * @return {string} the new string with bidi segments reordered
627
+ */
628
+ function getReorderedString(string, embedLevelsResult, start, end) {
629
+ var indices = getReorderedIndices(string, embedLevelsResult, start, end);
630
+ var chars = [].concat(string);
631
+ indices.forEach(function(charIndex, i) {
632
+ chars[i] = (embedLevelsResult.levels[charIndex] & 1 ? getMirroredCharacter(string[charIndex]) : null) || string[charIndex];
633
+ });
634
+ return chars.join("");
635
+ }
636
+ /**
637
+ * @param {string} string
638
+ * @param {GetEmbeddingLevelsResult} embedLevelsResult
639
+ * @param {number} [start]
640
+ * @param {number} [end]
641
+ * @return {number[]} an array with character indices in their new bidi order
642
+ */
643
+ function getReorderedIndices(string, embedLevelsResult, start, end) {
644
+ var segments = getReorderSegments(string, embedLevelsResult, start, end);
645
+ var indices = [];
646
+ for (var i = 0; i < string.length; i++) indices[i] = i;
647
+ segments.forEach(function(ref) {
648
+ var start$1 = ref[0];
649
+ var end$1 = ref[1];
650
+ var slice = indices.slice(start$1, end$1 + 1);
651
+ for (var i$1 = slice.length; i$1--;) indices[end$1 - i$1] = slice[i$1];
652
+ });
653
+ return indices;
654
+ }
655
+ exports$1.closingToOpeningBracket = closingToOpeningBracket;
656
+ exports$1.getBidiCharType = getBidiCharType;
657
+ exports$1.getBidiCharTypeName = getBidiCharTypeName;
658
+ exports$1.getCanonicalBracket = getCanonicalBracket;
659
+ exports$1.getEmbeddingLevels = getEmbeddingLevels;
660
+ exports$1.getMirroredCharacter = getMirroredCharacter;
661
+ exports$1.getMirroredCharactersMap = getMirroredCharactersMap;
662
+ exports$1.getReorderSegments = getReorderSegments;
663
+ exports$1.getReorderedIndices = getReorderedIndices;
664
+ exports$1.getReorderedString = getReorderedString;
665
+ exports$1.openingToClosingBracket = openingToClosingBracket;
666
+ Object.defineProperty(exports$1, "__esModule", { value: true });
667
+ return exports$1;
668
+ }({});
669
+ }
670
+ return bidiFactory;
671
+ }));
672
+ }));
673
+
674
+ //#endregion
675
+ export { require_bidi as t };