@vincentt-xr/sdk 2.0.0-alpha.7 → 2.0.0-alpha.9

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 (639) hide show
  1. package/GROUNDING.md +5651 -82
  2. package/README.md +1 -0
  3. package/dist/CanonicalHeadFrame-BHcWyaiK.js +1506 -0
  4. package/dist/CanonicalHeadFrame-D-_T1OMU.cjs +1 -0
  5. package/dist/DebuggerUI-7ngnJsBe.js +275 -0
  6. package/dist/DebuggerUI-CoglgKdO.cjs +1 -0
  7. package/dist/FaceRetouch-CLoTfrcs.js +1071 -0
  8. package/dist/FaceRetouch-J1lC1WbS.cjs +134 -0
  9. package/dist/FaceSurface-CHAMEeG1.cjs +1 -0
  10. package/dist/FaceSurface-DmP9AEeC.js +27 -0
  11. package/dist/SegmentationOverlay-D_FWkcyP.cjs +35 -0
  12. package/dist/SegmentationOverlay-vn5x_knv.js +6237 -0
  13. package/dist/SkeletonUtils-C2r90MtN.js +21 -0
  14. package/dist/SkeletonUtils-CddIup1F.cjs +1 -0
  15. package/dist/TextLabel-XE0rQSDn.cjs +2 -0
  16. package/dist/TextLabel-c9BCucOI.js +961 -0
  17. package/dist/assets/cache.d.ts +99 -0
  18. package/dist/assets/estimate.d.ts +11 -0
  19. package/dist/assets/gltfLoader.d.ts +16 -0
  20. package/dist/assets/index.d.ts +7 -0
  21. package/dist/assets/loaders.d.ts +43 -0
  22. package/dist/assets/react.d.ts +33 -0
  23. package/dist/body-pose/index.d.ts +521 -0
  24. package/dist/body-trigger/__fixtures__/syntheticBody.d.ts +83 -0
  25. package/dist/body-trigger/frame.d.ts +88 -0
  26. package/dist/body-trigger/index.d.ts +6 -0
  27. package/dist/body-trigger/moves.d.ts +235 -0
  28. package/dist/body-trigger/trigger.d.ts +75 -0
  29. package/dist/calibration/calibration.d.ts +75 -0
  30. package/dist/calibration/index.d.ts +6 -0
  31. package/dist/calibration/storage.d.ts +13 -0
  32. package/dist/calibration/types.d.ts +53 -0
  33. package/dist/calibration/useXRCalibration.d.ts +46 -0
  34. package/dist/camera/CameraPermissionGate.d.ts +26 -0
  35. package/dist/camera/devices.d.ts +26 -0
  36. package/dist/camera/index.d.ts +8 -0
  37. package/dist/camera/permission.d.ts +86 -0
  38. package/dist/camera/useCameraPermission.d.ts +35 -0
  39. package/dist/canonicalFace-BHwyCx1c.js +9 -0
  40. package/dist/canonicalFace-C83I225R.cjs +1 -0
  41. package/dist/capabilities/detect.d.ts +45 -0
  42. package/dist/capabilities/index.d.ts +5 -0
  43. package/dist/capabilities/types.d.ts +120 -0
  44. package/dist/capabilities/useXRCapabilities.d.ts +18 -0
  45. package/dist/compat/environment.d.ts +5 -0
  46. package/dist/compat/index.d.ts +4 -0
  47. package/dist/compat/run.d.ts +18 -0
  48. package/dist/compat/scenarios.d.ts +10 -0
  49. package/dist/compat/types.d.ts +101 -0
  50. package/dist/components/BodyInstruction/BodyPoseHint.d.ts +63 -0
  51. package/dist/components/BodyInstruction/index.d.ts +69 -0
  52. package/dist/components/BodyInstruction/useBodyPose.d.ts +23 -0
  53. package/dist/components/BodyTracker/index.d.ts +17 -0
  54. package/dist/components/BodyTrigger/index.d.ts +49 -0
  55. package/dist/components/Debugger/DebuggerProvider.d.ts +14 -1
  56. package/dist/components/Debugger/DebuggerUI.d.ts +3 -1
  57. package/dist/components/FaceAtlas/FaceAtlasLayer.d.ts +114 -0
  58. package/dist/components/FaceAtlas/MadeUpCamera.d.ts +80 -0
  59. package/dist/components/FaceAtlas/constants.d.ts +8 -0
  60. package/dist/components/FaceAtlas/index.d.ts +7 -0
  61. package/dist/components/FaceAtlas/useFaceAtlasSurface.d.ts +84 -0
  62. package/dist/components/FaceAtlas/useFaceSkin.d.ts +84 -0
  63. package/dist/components/FaceCharacter/ExternalFaceMesh.d.ts +109 -0
  64. package/dist/components/FaceCharacter/FaceExpressionController.d.ts +53 -0
  65. package/dist/components/FaceCharacter/FaceMorph.d.ts +71 -0
  66. package/dist/components/FaceCharacter/FacePiercing.d.ts +65 -0
  67. package/dist/components/FaceCharacter/FaceReprojection.d.ts +85 -0
  68. package/dist/components/FaceCharacter/FaceRig.d.ts +38 -0
  69. package/dist/components/FaceCharacter/FaceSurface.d.ts +49 -0
  70. package/dist/components/FaceCharacter/FaceSurfaceOccluder.d.ts +39 -0
  71. package/dist/components/FaceCharacter/PinToFaceMesh.d.ts +68 -0
  72. package/dist/components/FaceCharacter/index.d.ts +18 -0
  73. package/dist/components/FaceCharacter/useFaceReprojector.d.ts +10 -0
  74. package/dist/components/FaceInset/FaceInset.d.ts +68 -0
  75. package/dist/components/FaceInset/frame.d.ts +94 -0
  76. package/dist/components/FaceInset/index.d.ts +6 -0
  77. package/dist/components/FaceInset/material.d.ts +40 -0
  78. package/dist/components/FaceInset/useFaceInsetTexture.d.ts +37 -0
  79. package/dist/components/FaceInstruction/FaceExpressionHint.d.ts +43 -0
  80. package/dist/components/FaceInstruction/index.d.ts +56 -0
  81. package/dist/components/FaceInstruction/useFaceExpression.d.ts +20 -0
  82. package/dist/components/FaceLiquify/FaceLiquify.d.ts +49 -0
  83. package/dist/components/FaceLiquify/debug.d.ts +37 -0
  84. package/dist/components/FaceLiquify/frame.d.ts +55 -0
  85. package/dist/components/FaceLiquify/index.d.ts +10 -0
  86. package/dist/components/FaceLiquify/material.d.ts +39 -0
  87. package/dist/components/FaceLiquify/pass.d.ts +49 -0
  88. package/dist/components/FaceLiquify/presence.d.ts +25 -0
  89. package/dist/components/FaceLiquify/presets.d.ts +82 -0
  90. package/dist/components/FaceLiquify/selfTest.d.ts +66 -0
  91. package/dist/components/FaceLiquify/target.d.ts +85 -0
  92. package/dist/components/FaceLiquify/warp.d.ts +72 -0
  93. package/dist/components/FaceMesh/canonical/CanonicalFaceMeshRenderer.d.ts +37 -5
  94. package/dist/components/FaceMesh/canonical/geometryGroups.d.ts +21 -0
  95. package/dist/components/FaceMesh/canonical/parseCanonicalFaceModel.d.ts +21 -0
  96. package/dist/components/FaceMesh/canonical/shaders.d.ts +1 -1
  97. package/dist/components/FaceMesh/index.d.ts +2 -2
  98. package/dist/components/FaceRetouch/Background.d.ts +3 -1
  99. package/dist/components/FaceRetouch/FaceRetouch.d.ts +5 -0
  100. package/dist/components/FaceRetouch/renderState.d.ts +19 -0
  101. package/dist/components/FaceSwap/FaceMirror.d.ts +46 -0
  102. package/dist/components/FaceSwap/FaceSwap.d.ts +58 -0
  103. package/dist/components/FaceSwap/FaceTextureLayer.d.ts +72 -0
  104. package/dist/components/FaceSwap/faceSwapPlan.d.ts +91 -0
  105. package/dist/components/FaceSwap/index.d.ts +13 -0
  106. package/dist/components/FaceSwap/settings.d.ts +300 -0
  107. package/dist/components/FaceSwap/useFaceTexture.d.ts +35 -0
  108. package/dist/components/FaceSwap/useLiveFace.d.ts +38 -0
  109. package/dist/components/FaceSwap/useLiveFaceTexture.d.ts +31 -0
  110. package/dist/components/FaceWarp3D/FaceWarp3D.d.ts +50 -0
  111. package/dist/components/FaceWarp3D/index.d.ts +2 -3
  112. package/dist/components/Faceless/Faceless.d.ts +51 -0
  113. package/dist/components/Faceless/index.d.ts +2 -0
  114. package/dist/components/GestureListener/index.d.ts +11 -0
  115. package/dist/components/HairLock/HairLock.d.ts +39 -0
  116. package/dist/components/HairLock/index.d.ts +2 -0
  117. package/dist/components/HairLock/lockGeometry.d.ts +15 -0
  118. package/dist/components/HandCutout/index.d.ts +35 -0
  119. package/dist/components/HandInstruction/HandGestureHint.d.ts +70 -0
  120. package/dist/components/HandInstruction/index.d.ts +74 -0
  121. package/dist/components/HandInstruction/useHandGesture.d.ts +22 -0
  122. package/dist/components/HandRig/ForearmOccluder.d.ts +29 -0
  123. package/dist/components/HandRig/HandAttachment.d.ts +34 -0
  124. package/dist/components/HandRig/HandOccluder.d.ts +55 -0
  125. package/dist/components/HandRig/HandTattoo.d.ts +61 -0
  126. package/dist/components/HandRig/WristAttachment.d.ts +34 -0
  127. package/dist/components/HandRig/index.d.ts +101 -0
  128. package/dist/components/HandRig/useArmMask.d.ts +29 -0
  129. package/dist/components/HandRig/wristSolve.d.ts +69 -0
  130. package/dist/components/HandTouch/HandTouch.d.ts +62 -0
  131. package/dist/components/HandTouch/Touchable.d.ts +36 -0
  132. package/dist/components/HandTouch/index.d.ts +2 -0
  133. package/dist/components/HandTracker/index.d.ts +10 -0
  134. package/dist/components/HeadBinding/index.d.ts +14 -0
  135. package/dist/components/HeadOccluder/CanonicalHeadFrame.d.ts +22 -0
  136. package/dist/components/HeadOccluder/Earrings.d.ts +55 -0
  137. package/dist/components/HeadOccluder/HeadAttachment.d.ts +38 -0
  138. package/dist/components/HeadOccluder/NeckOccluder.d.ts +64 -0
  139. package/dist/components/HeadOccluder/earringPlacement.d.ts +31 -0
  140. package/dist/components/HeadOccluder/headAttachmentPoints.d.ts +69 -0
  141. package/dist/components/HeadOccluder/index.d.ts +57 -3
  142. package/dist/components/HeadOccluder/useCanonicalHeadFit.d.ts +36 -0
  143. package/dist/components/HeadOccluder/useLandmarkPoseFit.d.ts +80 -0
  144. package/dist/components/HolisticTracker/index.d.ts +69 -0
  145. package/dist/components/HolisticTracker/settings.d.ts +58 -0
  146. package/dist/components/HolisticTracker/signals.d.ts +49 -0
  147. package/dist/components/Instruction/HintStage.d.ts +29 -0
  148. package/dist/components/Instruction/InstructionCue.d.ts +126 -0
  149. package/dist/components/Instruction/gestureHold.d.ts +20 -0
  150. package/dist/components/Instruction/ghost.d.ts +129 -0
  151. package/dist/components/Instruction/hintBlend.d.ts +19 -0
  152. package/dist/components/Instruction/hintLook.d.ts +81 -0
  153. package/dist/components/Instruction/hintLoop.d.ts +36 -0
  154. package/dist/components/Instruction/index.d.ts +41 -0
  155. package/dist/components/Instruction/useGhostModel.d.ts +33 -0
  156. package/dist/components/Instruction/useInstructionHold.d.ts +72 -0
  157. package/dist/components/IrisEffect/IrisMaterial.d.ts +73 -0
  158. package/dist/components/IrisEffect/index.d.ts +51 -0
  159. package/dist/components/IrisEffect/settings.d.ts +117 -0
  160. package/dist/components/LipEffect/LipEffect.d.ts +27 -1
  161. package/dist/components/LipEffect/LipEffectMaterial.d.ts +95 -7
  162. package/dist/components/LipEffect/LipEffects.d.ts +12 -0
  163. package/dist/components/LipEffect/defaults.d.ts +46 -4
  164. package/dist/components/LipEffect/index.d.ts +11 -3
  165. package/dist/components/LipEffect/lipShading.d.ts +73 -0
  166. package/dist/components/LipEffect/settings.d.ts +375 -0
  167. package/dist/components/LipEffect/shader.d.ts +39 -0
  168. package/dist/components/LipEffect/types.d.ts +128 -9
  169. package/dist/components/LipEffect/useLipDesignTextures.d.ts +17 -0
  170. package/dist/components/LipEffect/uvGuide.d.ts +74 -0
  171. package/dist/components/Makeup/Blush.d.ts +18 -0
  172. package/dist/components/Makeup/Brows.d.ts +20 -0
  173. package/dist/components/Makeup/Contour.d.ts +17 -0
  174. package/dist/components/Makeup/Eyeliner.d.ts +20 -0
  175. package/dist/components/Makeup/Eyeshadow.d.ts +20 -0
  176. package/dist/components/Makeup/Highlighter.d.ts +18 -0
  177. package/dist/components/Makeup/MakeupDesign.d.ts +37 -0
  178. package/dist/components/Makeup/MakeupRegion.d.ts +132 -0
  179. package/dist/components/Makeup/constants.d.ts +44 -0
  180. package/dist/components/Makeup/design.d.ts +106 -0
  181. package/dist/components/Makeup/designSamples.d.ts +42 -0
  182. package/dist/components/Makeup/eyes.d.ts +114 -0
  183. package/dist/components/Makeup/fields.d.ts +10 -0
  184. package/dist/components/Makeup/geometry.d.ts +106 -0
  185. package/dist/components/Makeup/index.d.ts +26 -0
  186. package/dist/components/Makeup/looks.d.ts +28 -0
  187. package/dist/components/Makeup/material.d.ts +239 -0
  188. package/dist/components/Makeup/settings.d.ts +54 -0
  189. package/dist/components/Makeup/shades.d.ts +143 -0
  190. package/dist/components/Makeup/shapes.d.ts +27 -0
  191. package/dist/components/Makeup/skinTone.d.ts +135 -0
  192. package/dist/components/Makeup/types.d.ts +110 -0
  193. package/dist/components/Makeup/useMakeupSkinTone.d.ts +40 -0
  194. package/dist/components/Necklace/Necklace.d.ts +44 -0
  195. package/dist/components/Necklace/index.d.ts +1 -0
  196. package/dist/components/ParticleEmitter/ParticleEmitter.d.ts +69 -0
  197. package/dist/components/ParticleEmitter/index.d.ts +1 -0
  198. package/dist/components/PersonCutout/index.d.ts +50 -0
  199. package/dist/components/PersonCutout/personCutout.d.ts +16 -0
  200. package/dist/components/ScreenImage/components/ScreenImageBody.d.ts +1 -1
  201. package/dist/components/ScreenImage/index.d.ts +3 -1
  202. package/dist/components/ScreenImage/materials/ScreenImageBlendMaterial.d.ts +1 -1
  203. package/dist/components/ScreenImage/materials/ScreenImageMaskMaterial.d.ts +11 -0
  204. package/dist/components/ScreenImage/source.d.ts +6 -0
  205. package/dist/components/ScreenImage/types.d.ts +18 -0
  206. package/dist/components/SegmentationOverlay/SegmentationOverlay.d.ts +37 -0
  207. package/dist/components/SegmentationOverlay/SegmentationOverlayMaterial.d.ts +31 -0
  208. package/dist/components/SegmentationOverlay/index.d.ts +9 -0
  209. package/dist/components/SegmentationOverlay/maskTexture.d.ts +23 -0
  210. package/dist/components/SegmentationOverlay/providers.d.ts +72 -0
  211. package/dist/components/SegmentationOverlay/settings.d.ts +65 -0
  212. package/dist/components/ShoulderOccluder/index.d.ts +43 -0
  213. package/dist/components/ShoulderOccluder/useCanonicalTorsoFit.d.ts +24 -0
  214. package/dist/components/SpringSwing/SpringSwing.d.ts +22 -0
  215. package/dist/components/SpringSwing/index.d.ts +1 -0
  216. package/dist/components/XRProvider/index.d.ts +16 -2
  217. package/dist/components/XRScene/renderOutputTarget.d.ts +12 -0
  218. package/dist/components/XRViewport/hooks/useViewportExternalFaces.d.ts +1 -1
  219. package/dist/components/XRViewport/hooks/useViewportMediaSource.d.ts +1 -1
  220. package/dist/components/XRViewport/hooks/useViewportPipeline.d.ts +1 -1
  221. package/dist/components/index.d.ts +11 -0
  222. package/dist/config/index.d.ts +0 -1
  223. package/dist/constants/index.d.ts +4 -1
  224. package/dist/context-DTxSQvp4.js +13 -0
  225. package/dist/context-hA0Rb2Xa.cjs +1 -0
  226. package/dist/contexts-BH7PdKFS.cjs +1 -0
  227. package/dist/contexts-jak8-tND.js +667 -0
  228. package/dist/coordinates/feed.d.ts +52 -0
  229. package/dist/coordinates/index.d.ts +7 -0
  230. package/dist/coordinates/side.d.ts +40 -0
  231. package/dist/coordinates/spaces.d.ts +49 -0
  232. package/dist/coordinates/viewport.d.ts +22 -0
  233. package/dist/coordinates/world.d.ts +15 -0
  234. package/dist/debug-ui/default-setting.cjs +2 -2
  235. package/dist/debug-ui/face-swap-settings/index.d.ts +22 -0
  236. package/dist/debug-ui/gesture-settings/index.d.ts +14 -0
  237. package/dist/debug-ui/hierarchy-panel/index.d.ts +3 -2
  238. package/dist/debug-ui/holistic-tracker-settings/index.d.ts +16 -0
  239. package/dist/debug-ui/index.d.ts +18 -3
  240. package/dist/debug-ui/iris-effect-settings/index.d.ts +12 -0
  241. package/dist/debug-ui/lip-effect-settings/index.d.ts +15 -0
  242. package/dist/debug-ui/media-source/index.d.ts +1 -1
  243. package/dist/debug-ui/media-source/session.d.ts +30 -2
  244. package/dist/debug-ui/media-source.cjs +1 -1
  245. package/dist/debug-ui/media-source.js +1 -1
  246. package/dist/debug-ui/object-inspector-panel/index.d.ts +3 -2
  247. package/dist/debug-ui/product-hotspots/index.d.ts +25 -0
  248. package/dist/debug-ui/scene-editor/hierarchy-panel.d.ts +3 -1
  249. package/dist/debug-ui/scene-editor/inspector-panel.d.ts +3 -1
  250. package/dist/debug-ui/screen-image-settings/index.d.ts +3 -1
  251. package/dist/debug-ui/screen-text-settings/ScreenTextSettingsPanel.d.ts +1 -1
  252. package/dist/debug-ui/screen-text-settings/types.d.ts +2 -0
  253. package/dist/debug-ui/segmentation-overlay-settings/index.d.ts +12 -0
  254. package/dist/debug-ui/settings-panel/index.d.ts +6 -1
  255. package/dist/debug-ui/shared/debugWindow.d.ts +51 -0
  256. package/dist/debug-ui/xr-diagnostics/index.d.ts +26 -0
  257. package/dist/debug-ui.cjs +3 -3
  258. package/dist/debug-ui.js +2695 -2547
  259. package/dist/detector-K8aej4MB.js +59 -0
  260. package/dist/detector-ijypGtse.cjs +1 -0
  261. package/dist/entries/all.d.ts +3 -1
  262. package/dist/entries/core.d.ts +20 -2
  263. package/dist/entries/face-effects.d.ts +123 -9
  264. package/dist/entries/instructions.d.ts +48 -0
  265. package/dist/entries/internal.d.ts +2 -1
  266. package/dist/entries/low-level.d.ts +49 -3
  267. package/dist/entries/particles.d.ts +11 -0
  268. package/dist/entries/product.d.ts +11 -0
  269. package/dist/entries/tracking.d.ts +60 -2
  270. package/dist/face-atlas/attributes.d.ts +30 -0
  271. package/dist/face-atlas/eyes.d.ts +272 -0
  272. package/dist/face-atlas/faceAtlas.generated.d.ts +46 -0
  273. package/dist/face-atlas/glsl/atlasVertex.d.ts +46 -0
  274. package/dist/face-atlas/glsl/common.d.ts +55 -0
  275. package/dist/face-atlas/glsl/design.d.ts +49 -0
  276. package/dist/face-atlas/glsl/eyes.d.ts +73 -0
  277. package/dist/face-atlas/glsl/finish.d.ts +24 -0
  278. package/dist/face-atlas/glsl/format.d.ts +4 -0
  279. package/dist/face-atlas/glsl/index.d.ts +59 -0
  280. package/dist/face-atlas/glsl/shading.d.ts +15 -0
  281. package/dist/face-atlas/glsl/shapes.d.ts +66 -0
  282. package/dist/face-atlas/glsl/sparkle.d.ts +19 -0
  283. package/dist/face-atlas/glsl/uniforms.d.ts +106 -0
  284. package/dist/face-atlas/guide.d.ts +51 -0
  285. package/dist/face-atlas/index.d.ts +25 -0
  286. package/dist/face-atlas/lead.d.ts +117 -0
  287. package/dist/face-atlas/madeUpCamera.d.ts +125 -0
  288. package/dist/face-atlas/masks.d.ts +53 -0
  289. package/dist/face-atlas/obj.d.ts +69 -0
  290. package/dist/face-atlas/polylines.d.ts +63 -0
  291. package/dist/face-atlas/probe/FaceSkinProbe.d.ts +208 -0
  292. package/dist/face-atlas/probe/__fixtures__/emulate.d.ts +9 -0
  293. package/dist/face-atlas/probe/__fixtures__/face.d.ts +24 -0
  294. package/dist/face-atlas/probe/constants.d.ts +137 -0
  295. package/dist/face-atlas/probe/glsl.d.ts +43 -0
  296. package/dist/face-atlas/probe/lightFit.d.ts +108 -0
  297. package/dist/face-atlas/probe/schedule.d.ts +44 -0
  298. package/dist/face-atlas/probe/selfTest.d.ts +87 -0
  299. package/dist/face-atlas/probe/stats.d.ts +143 -0
  300. package/dist/face-atlas/probe/targets.d.ts +70 -0
  301. package/dist/face-atlas/probe/unwrap.d.ts +76 -0
  302. package/dist/face-atlas/quality.d.ts +28 -0
  303. package/dist/face-atlas/regions.d.ts +31 -0
  304. package/dist/face-atlas/registry.d.ts +252 -0
  305. package/dist/face-atlas/renderState.d.ts +86 -0
  306. package/dist/face-atlas/selfOcclusion.d.ts +62 -0
  307. package/dist/face-atlas/shading.d.ts +406 -0
  308. package/dist/face-atlas/shapes.d.ts +86 -0
  309. package/dist/face-atlas/sides.d.ts +41 -0
  310. package/dist/face-atlas/skinMask.d.ts +35 -0
  311. package/dist/face-atlas/surface.d.ts +155 -0
  312. package/dist/face-atlas/topology.d.ts +44 -0
  313. package/dist/face-character/__fixtures__/faceImageDetections.d.ts +25 -0
  314. package/dist/face-character/__fixtures__/faceNode.d.ts +22 -0
  315. package/dist/face-character/bindFaceModel.d.ts +106 -0
  316. package/dist/face-character/canonicalFace.d.ts +17 -0
  317. package/dist/face-character/canonicalFaceGeometry.d.ts +11 -0
  318. package/dist/face-character/canonicalFacePositions.d.ts +7 -0
  319. package/dist/face-character/driveFaceModel.d.ts +57 -0
  320. package/dist/face-character/expressionOutputs.d.ts +45 -0
  321. package/dist/face-character/faceExpressions.d.ts +104 -0
  322. package/dist/face-character/faceImageLandmarker.d.ts +93 -0
  323. package/dist/face-character/faceMeshBinding.d.ts +62 -0
  324. package/dist/face-character/faceMorph.d.ts +77 -0
  325. package/dist/face-character/faceMorphs.d.ts +46 -0
  326. package/dist/face-character/facePhoto.d.ts +138 -0
  327. package/dist/face-character/facePiercings.d.ts +116 -0
  328. package/dist/face-character/facePin.d.ts +131 -0
  329. package/dist/face-character/faceReprojection.d.ts +273 -0
  330. package/dist/face-character/faceReprojector.d.ts +171 -0
  331. package/dist/face-character/faceRig.d.ts +176 -0
  332. package/dist/face-character/faceSwapPresence.d.ts +85 -0
  333. package/dist/face-character/faceTexture.d.ts +169 -0
  334. package/dist/face-character/faceTextureBaker.d.ts +86 -0
  335. package/dist/face-character/faceTextureGuide.d.ts +106 -0
  336. package/dist/face-character/faceTextureStats.d.ts +298 -0
  337. package/dist/face-character/faceTransfer.d.ts +396 -0
  338. package/dist/face-character/faceTransferGeometry.d.ts +109 -0
  339. package/dist/face-character/faceTransferSelfTest.d.ts +94 -0
  340. package/dist/face-character/faceWarp3D.d.ts +101 -0
  341. package/dist/face-character/faceless.d.ts +79 -0
  342. package/dist/face-character/featureWarp.d.ts +28 -0
  343. package/dist/face-character/liveFaceRegistry.d.ts +370 -0
  344. package/dist/face-character/liveValue.d.ts +12 -0
  345. package/dist/face-character/memo.d.ts +15 -0
  346. package/dist/face-effects.cjs +2324 -1
  347. package/dist/face-effects.js +14208 -2268
  348. package/dist/face-expression/index.d.ts +182 -0
  349. package/dist/face-info/landmarks.d.ts +17 -3
  350. package/dist/face-info/types.d.ts +20 -3
  351. package/dist/gestures/definitions.d.ts +98 -0
  352. package/dist/gestures/detector.d.ts +87 -0
  353. package/dist/gestures/index.d.ts +8 -0
  354. package/dist/gestures/measures.d.ts +114 -0
  355. package/dist/gestures/settings.d.ts +49 -0
  356. package/dist/getFaceInfo-B1otSDMX.cjs +1 -0
  357. package/dist/getFaceInfo-Cu4xDWiL.js +62 -0
  358. package/dist/hand/armFit.d.ts +46 -0
  359. package/dist/hand/armMask.d.ts +178 -0
  360. package/dist/hand/handCutout.d.ts +23 -0
  361. package/dist/hand/handCutoutRegistry.d.ts +7 -0
  362. package/dist/hand/handGestures.d.ts +524 -0
  363. package/dist/hand/handPose.d.ts +98 -0
  364. package/dist/hand/handRigSolver.d.ts +159 -0
  365. package/dist/hand/handTattoo.d.ts +81 -0
  366. package/dist/hand/handTouch.d.ts +240 -0
  367. package/dist/hand/wrist.d.ts +44 -0
  368. package/dist/hand/wristFilter.d.ts +44 -0
  369. package/dist/hooks/selectors.d.ts +76 -1
  370. package/dist/hooks/useCalibrationFaceTracker.d.ts +1 -1
  371. package/dist/hooks/useFaceInfo.d.ts +13 -1
  372. package/dist/hooks/useFaceInfos.d.ts +1 -1
  373. package/dist/hooks/useFaceModelAcquisition.d.ts +38 -0
  374. package/dist/hooks/useGesture.d.ts +32 -0
  375. package/dist/hooks/useIrisTracking.d.ts +45 -0
  376. package/dist/hooks/useTrackerContext.d.ts +6 -0
  377. package/dist/hooks/useXRDiagnostics.d.ts +81 -0
  378. package/dist/hooks/useXRModel.d.ts +7 -0
  379. package/dist/hooks/useXRSession/facade.d.ts +42 -2
  380. package/dist/hooks/useXRSession/index.d.ts +2 -2
  381. package/dist/hooks/useXRSession/reason.d.ts +3 -1
  382. package/dist/hooks/useXRSession/registry.d.ts +14 -0
  383. package/dist/hooks/useXRSession/store.d.ts +52 -3
  384. package/dist/index-B1_TzJaI.js +1104 -0
  385. package/dist/index-BavF06C6.js +190 -0
  386. package/dist/index-BfFmpddl.cjs +21 -0
  387. package/dist/index-BuBzneeW.cjs +46 -0
  388. package/dist/index-CGsQWodV.cjs +1 -0
  389. package/dist/index-CIe7eCMH.js +3200 -0
  390. package/dist/index-CfSF8LXa.cjs +1 -0
  391. package/dist/index-D5GTzOzD.cjs +1 -0
  392. package/dist/index-DBhQzvVa.js +314 -0
  393. package/dist/index-DE17y0ZI.cjs +1 -0
  394. package/dist/index-JII7huPk.js +442 -0
  395. package/dist/index-tpCr9CLj.cjs +1 -0
  396. package/dist/index-w1S7fI2B.js +1432 -0
  397. package/dist/index-zGaqrz_K.js +188 -0
  398. package/dist/instructions.cjs +30 -0
  399. package/dist/instructions.js +1507 -0
  400. package/dist/{internal-Dmk1cTXq.js → internal-B90P-clC.js} +138 -119
  401. package/dist/internal-Cjinca64.cjs +1 -0
  402. package/dist/internal.cjs +1 -1
  403. package/dist/internal.js +15 -10
  404. package/dist/iris/compute.d.ts +27 -0
  405. package/dist/iris/index.d.ts +4 -0
  406. package/dist/iris/lead.d.ts +19 -0
  407. package/dist/iris/types.d.ts +89 -0
  408. package/dist/landmarkMask-BFDyBnKM.js +224 -0
  409. package/dist/landmarkMask-u7es2k4X.cjs +1 -0
  410. package/dist/landmarks-BlUqf5MZ.cjs +1 -0
  411. package/dist/landmarks-bftdwq6Z.js +76 -0
  412. package/dist/loaders-BGAUACsd.js +363 -0
  413. package/dist/loaders-BJ1_QCHt.cjs +1 -0
  414. package/dist/low-level.cjs +1 -1
  415. package/dist/low-level.js +1190 -675
  416. package/dist/main.cjs +1 -1
  417. package/dist/main.js +1190 -452
  418. package/dist/models/Base/index.d.ts +49 -0
  419. package/dist/models/Body/index.d.ts +3 -1
  420. package/dist/models/Face/constants.d.ts +8 -0
  421. package/dist/models/Face/index.d.ts +4 -12
  422. package/dist/models/Face/rotation.d.ts +18 -3
  423. package/dist/models/Hand/GestureTracking.d.ts +1 -1
  424. package/dist/models/Hand/HandTracking.d.ts +17 -1
  425. package/dist/models/Holistic/index.d.ts +49 -0
  426. package/dist/models/Holistic/result.d.ts +68 -0
  427. package/dist/models/Segmentation/index.d.ts +2 -0
  428. package/dist/models/SemanticSegmentation/index.d.ts +31 -0
  429. package/dist/models/SemanticSegmentation/presets.d.ts +28 -0
  430. package/dist/models/index.d.ts +2 -0
  431. package/dist/models/nodeSource.d.ts +9 -0
  432. package/dist/particles/emission.d.ts +24 -0
  433. package/dist/particles/eyes.d.ts +24 -0
  434. package/dist/particles/glsl.d.ts +14 -0
  435. package/dist/particles/index.d.ts +10 -0
  436. package/dist/particles/motion.d.ts +42 -0
  437. package/dist/particles/presets.d.ts +12 -0
  438. package/dist/particles/ring.d.ts +58 -0
  439. package/dist/particles/selfTest.d.ts +53 -0
  440. package/dist/particles/settings.d.ts +127 -0
  441. package/dist/particles/shapes.d.ts +29 -0
  442. package/dist/particles/spawner.d.ts +60 -0
  443. package/dist/particles/system.d.ts +64 -0
  444. package/dist/particles.cjs +122 -0
  445. package/dist/particles.js +774 -0
  446. package/dist/product/ProductDimensions.d.ts +16 -0
  447. package/dist/product/ProductHotspot.d.ts +16 -0
  448. package/dist/product/ProductViewer.d.ts +9 -0
  449. package/dist/product/details.d.ts +53 -0
  450. package/dist/product/index.d.ts +14 -0
  451. package/dist/product/loadModelViewer.d.ts +4 -0
  452. package/dist/product/types.d.ts +71 -0
  453. package/dist/product/useProductAr.d.ts +37 -0
  454. package/dist/product/useProductDetails.d.ts +60 -0
  455. package/dist/product.cjs +1 -0
  456. package/dist/product.js +414 -0
  457. package/dist/providers-C8rE26Uf.js +366 -0
  458. package/dist/providers-DHsrhDI2.cjs +62 -0
  459. package/dist/quality/XRQualityController.d.ts +25 -0
  460. package/dist/quality/controller.d.ts +33 -0
  461. package/dist/quality/index.d.ts +6 -0
  462. package/dist/quality/types.d.ts +100 -0
  463. package/dist/quality/useXRQuality.d.ts +28 -0
  464. package/dist/render/renderPasses.d.ts +8 -0
  465. package/dist/render/sceneBeforeRender.d.ts +12 -0
  466. package/dist/{renderGroups-KZk6eRiY.js → renderGroups-B38pUaX2.js} +1 -1
  467. package/dist/{renderGroups-80H3DpTl.cjs → renderGroups-Cb_4Ar1Q.cjs} +1 -1
  468. package/dist/renderPasses-B6l8IpJv.js +1290 -0
  469. package/dist/renderPasses-dqmkft4P.cjs +158 -0
  470. package/dist/renderState-CJNmj5jz.js +39 -0
  471. package/dist/renderState-apSfg4eR.cjs +1 -0
  472. package/dist/scene-object.cjs +1 -1
  473. package/dist/scene-object.js +2 -2
  474. package/dist/segmentation-Cb3ouK6Z.js +1758 -0
  475. package/dist/segmentation-D9pYO6aR.cjs +1 -0
  476. package/dist/segmentation2d/faceMemory.d.ts +28 -0
  477. package/dist/segmentation2d/faceRegions.d.ts +24 -0
  478. package/dist/segmentation2d/index.d.ts +9 -0
  479. package/dist/segmentation2d/maskUv.d.ts +23 -0
  480. package/dist/segmentation2d/rasterize.d.ts +14 -0
  481. package/dist/segmentation2d/types.d.ts +52 -0
  482. package/dist/select-Ck5LGz-J.cjs +1 -0
  483. package/dist/select-pYRo_win.js +233 -0
  484. package/dist/selectors-C4X71aoD.cjs +1 -0
  485. package/dist/selectors-DmNaKIwE.js +196 -0
  486. package/dist/session-BrH8G7iJ.cjs +31 -0
  487. package/dist/session-DgA_z6O1.js +418 -0
  488. package/dist/settings-BJ7FMBsO.js +111 -0
  489. package/dist/settings-C63FMBlF.cjs +1 -0
  490. package/dist/similarityFit-BFqHND2e.cjs +1 -0
  491. package/dist/similarityFit-Bbz-R8AY.js +91 -0
  492. package/dist/spring/index.d.ts +2 -0
  493. package/dist/spring/spring.d.ts +69 -0
  494. package/dist/spring/swing.d.ts +54 -0
  495. package/dist/subjects/index.d.ts +2 -0
  496. package/dist/subjects/select.d.ts +62 -0
  497. package/dist/subjects/types.d.ts +55 -0
  498. package/dist/tracking-config/apply.d.ts +57 -0
  499. package/dist/tracking-config/index.d.ts +7 -0
  500. package/dist/tracking-config/resolve.d.ts +25 -0
  501. package/dist/tracking-config/storage.d.ts +8 -0
  502. package/dist/tracking-config/types.d.ts +106 -0
  503. package/dist/tracking-config/useXRTrackingConfig.d.ts +38 -0
  504. package/dist/tracking.cjs +10 -1
  505. package/dist/tracking.js +1326 -506
  506. package/dist/trigger-D0Pm9noT.cjs +49 -0
  507. package/dist/trigger-IQeys0oS.js +2128 -0
  508. package/dist/types/compositor.d.ts +21 -0
  509. package/dist/types/face.d.ts +20 -1
  510. package/dist/types/hand-tracking.d.ts +9 -0
  511. package/dist/types/holistic.d.ts +121 -0
  512. package/dist/types/index.d.ts +1 -0
  513. package/dist/types/model.d.ts +22 -2
  514. package/dist/types/nodes.d.ts +47 -3
  515. package/dist/types/segmentation.d.ts +24 -0
  516. package/dist/types/session.d.ts +41 -3
  517. package/dist/updateThrottle-BseecYag.js +4 -0
  518. package/dist/updateThrottle-Of5Y4SVa.cjs +1 -0
  519. package/dist/useFaceInfo-BHDNCvsJ.cjs +1 -0
  520. package/dist/useFaceInfo-J4x7LsqL.js +76 -0
  521. package/dist/useFaceResultReader-BvEo5REG.js +61 -0
  522. package/dist/useFaceResultReader-DuaL1KJG.cjs +1 -0
  523. package/dist/useInstructionHold-DOu-RpCM.js +53 -0
  524. package/dist/useInstructionHold-DwJY1Alr.cjs +1 -0
  525. package/dist/useLandmarkPoseFit-Bg-h9BPb.cjs +1 -0
  526. package/dist/useLandmarkPoseFit-Bmb3h6Mw.js +87 -0
  527. package/dist/useXRCapabilities-Cr3RzuAW.cjs +1 -0
  528. package/dist/useXRCapabilities-Cxmlmpbd.js +30 -0
  529. package/dist/utils/canonicalRigidLandmarks.d.ts +8 -0
  530. package/dist/utils/fns.d.ts +6 -3
  531. package/dist/utils/headOccluderFit.d.ts +42 -0
  532. package/dist/utils/integrity.d.ts +21 -1
  533. package/dist/utils/resolveNumFaces.d.ts +13 -0
  534. package/dist/utils/shoulderOccluderFit.d.ts +38 -0
  535. package/dist/utils/similarityFit.d.ts +23 -0
  536. package/dist/utils/updateThrottle.d.ts +2 -0
  537. package/dist/utils/useStableUniforms.d.ts +18 -0
  538. package/dist/uv-BMFt19bg.cjs +1 -0
  539. package/dist/{index-ByoNj0QP.js → uv-DJU_XfmN.js} +15 -247
  540. package/docs/SDK_DOCUMENTATION.md +1 -2
  541. package/docs/api/adaptive-quality.mdx +104 -0
  542. package/docs/api/asset-lifecycle.mdx +78 -0
  543. package/docs/api/body-instructions.mdx +285 -0
  544. package/docs/api/body-triggers.mdx +234 -0
  545. package/docs/api/camera-permission.mdx +142 -0
  546. package/docs/api/coordinate-spaces.mdx +168 -0
  547. package/docs/api/cross-camera.mdx +89 -0
  548. package/docs/api/debug-ui-scene-editor.mdx +23 -2
  549. package/docs/api/diagnostics-calibration.mdx +97 -0
  550. package/docs/api/external-face-mesh.mdx +231 -0
  551. package/docs/api/face-actions.mdx +20 -16
  552. package/docs/api/face-attribute-expression.mdx +1 -1
  553. package/docs/api/face-binding-anchors.mdx +4 -2
  554. package/docs/api/face-character.mdx +157 -0
  555. package/docs/api/face-effects.mdx +9 -0
  556. package/docs/api/face-expression-controller.mdx +153 -0
  557. package/docs/api/face-info.mdx +17 -11
  558. package/docs/api/face-inset.mdx +204 -0
  559. package/docs/api/face-instructions.mdx +183 -0
  560. package/docs/api/face-liquify.mdx +196 -0
  561. package/docs/api/face-mesh.mdx +8 -9
  562. package/docs/api/face-morph.mdx +117 -0
  563. package/docs/api/face-painting.mdx +7 -0
  564. package/docs/api/face-reprojection.mdx +154 -0
  565. package/docs/api/face-retouching.mdx +18 -10
  566. package/docs/api/face-swap.mdx +350 -0
  567. package/docs/api/face-warp-3d.mdx +166 -0
  568. package/docs/api/faceless.mdx +143 -0
  569. package/docs/api/gestures.mdx +209 -0
  570. package/docs/api/hair.mdx +97 -0
  571. package/docs/api/hand-instructions.mdx +222 -0
  572. package/docs/api/hand-rig.mdx +535 -0
  573. package/docs/api/hand-touch.mdx +162 -0
  574. package/docs/api/head-occluder.mdx +563 -0
  575. package/docs/api/holistic-tracker.mdx +164 -0
  576. package/docs/api/instructions.mdx +323 -0
  577. package/docs/api/iris-tracking.mdx +247 -0
  578. package/docs/api/made-up-camera.mdx +131 -0
  579. package/docs/api/makeup-skin-tone.mdx +135 -0
  580. package/docs/api/makeup.mdx +353 -0
  581. package/docs/api/multi-subject.mdx +98 -0
  582. package/docs/api/particles.mdx +155 -0
  583. package/docs/api/person-cutout.mdx +136 -0
  584. package/docs/api/pin-to-face-mesh.mdx +274 -0
  585. package/docs/api/product-ar.mdx +114 -0
  586. package/docs/api/product-details.mdx +78 -0
  587. package/docs/api/screen-space-coordinates.mdx +4 -1
  588. package/docs/api/segmentation-overlay.mdx +301 -0
  589. package/docs/api/session-lifecycle.mdx +136 -0
  590. package/docs/api/trackers.mdx +5 -0
  591. package/docs/api/tracking-config.mdx +108 -0
  592. package/docs/docs.json +51 -1
  593. package/docs/examples/lip-shaders.mdx +273 -0
  594. package/docs/guides/face-atlas-template.svg +1 -0
  595. package/docs/guides/face-atlas-textures.mdx +186 -0
  596. package/docs/guides/face-texture-template.svg +1 -0
  597. package/docs/guides/harness-debug-ui.mdx +4 -4
  598. package/docs/guides/lip-effect-textures.mdx +368 -0
  599. package/docs/guides/lip-uv-template.png +0 -0
  600. package/docs/guides/lip-uv-template.svg +1 -0
  601. package/docs/guides/makeup-design-textures.mdx +109 -0
  602. package/docs/introduction.mdx +1 -2
  603. package/package.json +23 -1
  604. package/dist/DebuggerUI-B6bP6P9r.cjs +0 -1
  605. package/dist/DebuggerUI-BjOMr8q_.js +0 -269
  606. package/dist/FaceMeshRenderer-C5l6VLdO.cjs +0 -155
  607. package/dist/FaceMeshRenderer-wjAHrJzP.js +0 -1270
  608. package/dist/FaceRetouch-BkJzoA79.cjs +0 -134
  609. package/dist/FaceRetouch-DwbKQJAN.js +0 -551
  610. package/dist/components/FaceWarp3D/FaceWarp3DHead.d.ts +0 -15
  611. package/dist/components/FaceWarp3D/defaults.d.ts +0 -37
  612. package/dist/components/FaceWarp3D/warp.d.ts +0 -13
  613. package/dist/contexts-ByhzppYl.js +0 -663
  614. package/dist/contexts-Dr62It_K.cjs +0 -1
  615. package/dist/debug-ui/face-warp-3d/index.d.ts +0 -6
  616. package/dist/getFaceInfo-C4QpCQIY.js +0 -118
  617. package/dist/getFaceInfo-fA1bFBub.cjs +0 -1
  618. package/dist/index-9dlAQAhy.js +0 -1462
  619. package/dist/index-BjmTe9eM.cjs +0 -1
  620. package/dist/index-BpEf2BBb.cjs +0 -1
  621. package/dist/index-CyUUurQT.cjs +0 -1
  622. package/dist/index-DCiMbxC3.cjs +0 -1
  623. package/dist/index-DXT3WccE.js +0 -2089
  624. package/dist/index-DpI-qo5X.cjs +0 -17
  625. package/dist/index-DyVF4vEW.js +0 -111
  626. package/dist/index-VJ0SJwmG.js +0 -214
  627. package/dist/internal-Cq-TEQ5Y.cjs +0 -1
  628. package/dist/renderLayers-lDtL0_43.cjs +0 -1
  629. package/dist/renderLayers-zrK2pv5O.js +0 -13
  630. package/dist/renderPasses-BOoBSr8z.cjs +0 -21
  631. package/dist/renderPasses-BcquyVtu.js +0 -1500
  632. package/dist/selectors-B8H97CKA.js +0 -59
  633. package/dist/selectors-CZLKT2Iv.cjs +0 -1
  634. package/dist/session-CpkiK5YA.cjs +0 -31
  635. package/dist/session-DLFN_VII.js +0 -363
  636. package/dist/useFaceInfo-BJ8-_MOs.cjs +0 -1
  637. package/dist/useFaceInfo-Dk426LTu.js +0 -62
  638. package/dist/useFaceResults-CtetsO9M.js +0 -19
  639. package/dist/useFaceResults-wBJF3zyp.cjs +0 -1
@@ -0,0 +1,961 @@
1
+ import { jsx as B, jsxs as Te } from "react/jsx-runtime";
2
+ import { useMemo as p, forwardRef as xe, useEffect as be, useState as he, useRef as _ } from "react";
3
+ import { useThree as Ce } from "@react-three/fiber";
4
+ import { b as Fe } from "./context-DTxSQvp4.js";
5
+ import * as Le from "three";
6
+ const Qe = ({ children: t, depth: e = 0 }) => {
7
+ const { camera: n, size: i } = Ce(), a = p(() => {
8
+ if (!n.isPerspectiveCamera)
9
+ return { width: 10, height: 10 };
10
+ const r = n, l = Math.abs(r.position.z - e), f = r.fov * Math.PI / 180, s = 2 * Math.tan(f / 2) * l;
11
+ return { width: s * (i.width / i.height), height: s };
12
+ }, [n, i, e]);
13
+ return /* @__PURE__ */ B(Fe.Provider, { value: a, children: /* @__PURE__ */ B("group", { position: [0, 0, e], children: t }) });
14
+ }, me = xe(
15
+ ({ texture: t, name: e, overlay: n, opacity: i, position: a, rotation: r, scale: l, visible: f, renderOrder: s }, h) => /* @__PURE__ */ Te(
16
+ "mesh",
17
+ {
18
+ ref: h,
19
+ name: e,
20
+ position: a,
21
+ rotation: r,
22
+ scale: l,
23
+ visible: f,
24
+ renderOrder: s,
25
+ children: [
26
+ /* @__PURE__ */ B("planeGeometry", { args: [1, 1] }),
27
+ /* @__PURE__ */ B(
28
+ "meshBasicMaterial",
29
+ {
30
+ map: t,
31
+ transparent: !0,
32
+ opacity: i,
33
+ depthTest: !n,
34
+ depthWrite: !n
35
+ }
36
+ )
37
+ ]
38
+ }
39
+ )
40
+ );
41
+ me.displayName = "TextLabelMesh";
42
+ const We = {
43
+ color: "#ffffff",
44
+ strokeWidth: 0,
45
+ strokeOpacity: 1,
46
+ shadowBlur: 0,
47
+ shadowOffsetX: 0,
48
+ shadowOffsetY: 0,
49
+ shadowOpacity: 1,
50
+ fontWeight: "bold",
51
+ fontStyle: "normal",
52
+ fontFamily: "Arial, sans-serif",
53
+ fontSize: 48,
54
+ textAlign: "center",
55
+ verticalAlign: "center",
56
+ minFontSize: 12,
57
+ letterSpacing: 0,
58
+ lineSpacing: 0.3,
59
+ bgColor: "rgba(20,40,110,0.88)",
60
+ bgFillMode: "solid",
61
+ bgOpacity: 1,
62
+ bgFit: "full",
63
+ bgTextureFit: "cover",
64
+ bgTextureFlipX: !1,
65
+ bgTextureFlipY: !1,
66
+ borderWidth: 0,
67
+ borderRadius: 24,
68
+ padding: 32,
69
+ aspect: 2.5,
70
+ resolution: 512,
71
+ opacity: 1,
72
+ underline: !1,
73
+ strikethrough: !1,
74
+ bendPreset: "arc",
75
+ bendStrength: 0
76
+ }, Ye = (t) => {
77
+ be(
78
+ () => () => {
79
+ t == null || t.dispose();
80
+ },
81
+ [t]
82
+ );
83
+ };
84
+ function Oe(t, e, n) {
85
+ return n === "left" ? e : n === "right" ? t - e : t / 2;
86
+ }
87
+ function ke(t, e, n, i, a) {
88
+ return a === "top" ? e + n / 2 : a === "bottom" ? t - e - i + n / 2 : t / 2 - (i - n) / 2;
89
+ }
90
+ function Pe(t, e, n, i) {
91
+ return i === "full" || n === "left" ? 0 : n === "right" ? t - e : (t - e) / 2;
92
+ }
93
+ function Se(t, e, n, i) {
94
+ return `${t} ${e} ${n}px ${i}`;
95
+ }
96
+ function z(t, e) {
97
+ const n = Math.max(0, Math.min(e, 1));
98
+ return t * n * 0.08;
99
+ }
100
+ function we(t, e) {
101
+ const n = Math.max(0, Math.min(e, 1));
102
+ return t * (1.2 + n * 0.6);
103
+ }
104
+ function ye(t, e) {
105
+ "letterSpacing" in t && (t.letterSpacing = `${e}px`);
106
+ }
107
+ function ve(t) {
108
+ "letterSpacing" in t && (t.letterSpacing = "0px");
109
+ }
110
+ function P(t, e, n) {
111
+ ye(t, n);
112
+ const i = t.measureText(e).width;
113
+ return ve(t), i;
114
+ }
115
+ function K(t, e, n, i) {
116
+ return Math.max(1, Math.floor((t - e * 2) / we(n, i)));
117
+ }
118
+ function He(t, e, n, i, a) {
119
+ return e.length <= i && e.every((r) => P(t, r, a) <= n);
120
+ }
121
+ function Q(t, e, n, i, a, r, l, f) {
122
+ t.font = Se(i, a, r, l);
123
+ const s = e.split(" "), h = [];
124
+ let o = "";
125
+ for (const d of s) {
126
+ const g = o ? `${o} ${d}` : d;
127
+ P(t, g, f) > n && o ? (h.push(o), o = d) : o = g;
128
+ }
129
+ return o && h.push(o), h;
130
+ }
131
+ function ge(t, e, n, i, a, r, l, f) {
132
+ const h = e.split(/\r?\n/).flatMap((o) => o.trim().length === 0 ? [""] : Q(
133
+ t,
134
+ o,
135
+ n,
136
+ i,
137
+ a,
138
+ r,
139
+ l,
140
+ f
141
+ ));
142
+ return h.length > 0 ? h : [e];
143
+ }
144
+ function Me(t, e, n, i, a) {
145
+ const r = i ? "..." : "";
146
+ let l = e.trimEnd();
147
+ for (; l.length > 0 && P(t, `${l}${r}`, a) > n; )
148
+ l = l.slice(0, -1).trimEnd();
149
+ return `${l}${r}`;
150
+ }
151
+ function V(t, e, n, i, a) {
152
+ return e.map((r, l) => {
153
+ if (P(t, r, a) <= n) return r;
154
+ const f = l === e.length - 1;
155
+ return Me(
156
+ t,
157
+ r,
158
+ n,
159
+ i === "ellipsis" && f,
160
+ a
161
+ );
162
+ });
163
+ }
164
+ function ce(t, e, n, i, a, r) {
165
+ if (e.length <= n)
166
+ return V(
167
+ t,
168
+ e,
169
+ i,
170
+ a ? "ellipsis" : "clip",
171
+ r
172
+ );
173
+ const l = e.slice(0, n), f = l[n - 1];
174
+ return l[n - 1] = Me(
175
+ t,
176
+ f,
177
+ i,
178
+ a,
179
+ r
180
+ ), V(
181
+ t,
182
+ l,
183
+ i,
184
+ a ? "ellipsis" : "clip",
185
+ r
186
+ );
187
+ }
188
+ function Xe(t) {
189
+ const {
190
+ ctx: e,
191
+ text: n,
192
+ explicitLines: i,
193
+ maxWidth: a,
194
+ maxHeight: r,
195
+ padding: l,
196
+ fontStyle: f,
197
+ fontWeight: s,
198
+ fontSize: h,
199
+ fontFamily: o,
200
+ letterSpacing: d,
201
+ lineSpacing: g,
202
+ overflow: u,
203
+ resizeToFit: S,
204
+ minFontSize: c
205
+ } = t;
206
+ let b = h, m = z(b, d), w = i ?? ge(
207
+ e,
208
+ n,
209
+ a,
210
+ f,
211
+ s,
212
+ b,
213
+ o,
214
+ m
215
+ ), M = K(r, l, b, g);
216
+ const C = S === !0 || u === "shrink";
217
+ for (; C && !He(e, w, a, M, m) && b > c && (b = Math.max(c, b - 4), m = z(b, d), w = i ?? ge(
218
+ e,
219
+ n,
220
+ a,
221
+ f,
222
+ s,
223
+ b,
224
+ o,
225
+ m
226
+ ), M = K(r, l, b, g), b !== c); )
227
+ ;
228
+ return u === "ellipsis" ? w = ce(
229
+ e,
230
+ w,
231
+ M,
232
+ a,
233
+ !0,
234
+ m
235
+ ) : u === "clamp" || u === "shrink" ? w = ce(
236
+ e,
237
+ w,
238
+ M,
239
+ a,
240
+ !1,
241
+ m
242
+ ) : u !== "clip" && (w = V(e, w, a, void 0, m)), { fontSize: b, lines: w };
243
+ }
244
+ function Ae(t) {
245
+ const {
246
+ ctx: e,
247
+ text: n,
248
+ maxWidth: i,
249
+ maxHeight: a,
250
+ padding: r,
251
+ fontStyle: l,
252
+ fontWeight: f,
253
+ fontSize: s,
254
+ fontFamily: h,
255
+ letterSpacing: o,
256
+ lineSpacing: d
257
+ } = t;
258
+ let g = s, u = Q(
259
+ e,
260
+ n,
261
+ i,
262
+ l,
263
+ f,
264
+ g,
265
+ h,
266
+ z(g, o)
267
+ );
268
+ const S = K(a, r, g, d);
269
+ return u.length > S && (g = Math.max(12, Math.round(g * 0.75)), u = Q(
270
+ e,
271
+ n,
272
+ i,
273
+ l,
274
+ f,
275
+ g,
276
+ h,
277
+ z(g, o)
278
+ )), { fontSize: g, lines: u };
279
+ }
280
+ function Z(t, e) {
281
+ return typeof OffscreenCanvas < "u" ? new OffscreenCanvas(t, e) : (() => {
282
+ const n = document.createElement("canvas");
283
+ return n.width = t, n.height = e, n;
284
+ })();
285
+ }
286
+ function pe(t, e) {
287
+ const n = e.width - e.padding * 2, a = Array.isArray(e.lines) || e.text.includes(`
288
+ `) || e.overflow !== void 0 || e.resizeToFit !== void 0 ? Xe({
289
+ ctx: t,
290
+ text: e.text,
291
+ explicitLines: e.lines,
292
+ maxWidth: n,
293
+ maxHeight: e.height,
294
+ padding: e.padding,
295
+ fontStyle: e.fontStyle,
296
+ fontWeight: e.fontWeight,
297
+ fontSize: e.fontSize,
298
+ fontFamily: e.fontFamily,
299
+ overflow: e.overflow,
300
+ resizeToFit: e.resizeToFit,
301
+ minFontSize: e.minFontSize,
302
+ letterSpacing: e.letterSpacing,
303
+ lineSpacing: e.lineSpacing
304
+ }) : Ae({
305
+ ctx: t,
306
+ text: e.text,
307
+ maxWidth: n,
308
+ maxHeight: e.height,
309
+ padding: e.padding,
310
+ fontStyle: e.fontStyle,
311
+ fontWeight: e.fontWeight,
312
+ fontSize: e.fontSize,
313
+ fontFamily: e.fontFamily,
314
+ letterSpacing: e.letterSpacing,
315
+ lineSpacing: e.lineSpacing
316
+ }), r = a.fontSize, l = a.lines;
317
+ t.font = Se(e.fontStyle, e.fontWeight, r, e.fontFamily);
318
+ const f = z(r, e.letterSpacing), s = we(r, e.lineSpacing), h = Math.max(
319
+ r,
320
+ r + (l.length - 1) * s
321
+ ), o = ke(
322
+ e.height,
323
+ e.padding,
324
+ r,
325
+ h,
326
+ e.verticalAlign
327
+ ), d = l.map(
328
+ (g) => P(t, g, f)
329
+ );
330
+ return {
331
+ fontSize: r,
332
+ resolvedLines: l,
333
+ letterSpacingPx: f,
334
+ lineHeight: s,
335
+ startY: o,
336
+ textBlockWidth: Math.min(
337
+ e.width,
338
+ Math.max(0, Math.max(...d, 0)) + e.padding * 2
339
+ ),
340
+ textBlockHeight: Math.min(e.height, h + e.padding * 2),
341
+ textX: Oe(e.width, e.padding, e.textAlign)
342
+ };
343
+ }
344
+ function Be(t, e, n, i, a, r) {
345
+ t.beginPath(), t.moveTo(e + r, n), t.lineTo(e + i - r, n), t.quadraticCurveTo(e + i, n, e + i, n + r), t.lineTo(e + i, n + a - r), t.quadraticCurveTo(e + i, n + a, e + i - r, n + a), t.lineTo(e + r, n + a), t.quadraticCurveTo(e, n + a, e, n + a - r), t.lineTo(e, n + r), t.quadraticCurveTo(e, n, e + r, n), t.closePath();
346
+ }
347
+ function de(t, e, n) {
348
+ return typeof t != "number" || Number.isNaN(t) || t <= 0 ? e : Math.min(t, n);
349
+ }
350
+ function ze(t, e) {
351
+ const n = Pe(
352
+ e.canvasWidth,
353
+ e.panelWidth,
354
+ e.textAlign,
355
+ e.bgFit
356
+ ), i = (e.canvasHeight - e.panelHeight) / 2, a = Math.min(e.borderRadius, Math.min(e.panelWidth, e.panelHeight) / 2);
357
+ Be(t, n, i, e.panelWidth, e.panelHeight, a), Ie(t, {
358
+ panelX: n,
359
+ panelY: i,
360
+ panelWidth: e.panelWidth,
361
+ panelHeight: e.panelHeight,
362
+ bgColor: e.bgColor,
363
+ bgFillMode: e.bgFillMode,
364
+ bgOpacity: e.bgOpacity,
365
+ bgGradientStops: e.bgGradientStops,
366
+ bgTextureImage: e.bgTextureImage,
367
+ bgTextureFit: e.bgTextureFit,
368
+ bgTextureFlipX: e.bgTextureFlipX,
369
+ bgTextureFlipY: e.bgTextureFlipY
370
+ }), e.borderColor && e.borderWidth > 0 && (t.lineWidth = e.borderWidth, t.strokeStyle = e.borderColor, t.stroke());
371
+ }
372
+ function Ie(t, e) {
373
+ if (t.save(), t.globalAlpha = Math.max(0, Math.min(e.bgOpacity, 1)), e.bgFillMode === "gradient" && e.bgGradientStops && e.bgGradientStops.length > 1) {
374
+ const n = t.createLinearGradient(
375
+ e.panelX,
376
+ e.panelY,
377
+ e.panelX + e.panelWidth,
378
+ e.panelY + e.panelHeight
379
+ );
380
+ [...e.bgGradientStops].sort((i, a) => i.position - a.position).forEach(
381
+ (i) => n.addColorStop(Math.max(0, Math.min(i.position, 1)), i.color)
382
+ ), t.fillStyle = n, t.fill(), t.restore();
383
+ return;
384
+ }
385
+ if (e.bgTextureImage) {
386
+ t.clip(), Re(t, {
387
+ image: e.bgTextureImage,
388
+ x: e.panelX,
389
+ y: e.panelY,
390
+ width: e.panelWidth,
391
+ height: e.panelHeight,
392
+ fit: e.bgTextureFit,
393
+ flipX: e.bgTextureFlipX,
394
+ flipY: e.bgTextureFlipY
395
+ }), t.restore();
396
+ return;
397
+ }
398
+ t.fillStyle = e.bgColor, t.fill(), t.restore();
399
+ }
400
+ function Re(t, e) {
401
+ const { image: n, x: i, y: a, width: r, height: l, fit: f, flipX: s, flipY: h } = e, o = "naturalWidth" in n ? n.naturalWidth : "videoWidth" in n ? n.videoWidth : n.width, d = "naturalHeight" in n ? n.naturalHeight : "videoHeight" in n ? n.videoHeight : n.height;
402
+ let g = r, u = l, S = i, c = a;
403
+ if (f !== "stretch" && o > 0 && d > 0) {
404
+ const b = f === "cover" ? Math.max(r / o, l / d) : Math.min(r / o, l / d);
405
+ g = o * b, u = d * b, S = i + (r - g) / 2, c = a + (l - u) / 2;
406
+ }
407
+ t.save(), (s || h) && (t.translate(s ? i + r : 0, h ? a + l : 0), t.scale(s ? -1 : 1, h ? -1 : 1), S = s ? -(S - i) - g + i : S, c = h ? -(c - a) - u + a : c), t.drawImage(n, S, c, g, u), t.restore();
408
+ }
409
+ function Ee(t, e, n, i, a, r) {
410
+ const l = a / 72, f = Math.abs(l), s = 1 - Math.min(1, Math.abs(e)), h = Math.min(1, Math.abs(e)), o = i <= 1 ? 0.5 : n / (i - 1), d = Math.sin(o * Math.PI * 2 - Math.PI / 2), g = Math.sin(o * Math.PI * 2.7 - Math.PI / 2) * (0.65 + o * 0.35), u = a * e * e, S = 2 * a * e / r, c = {
411
+ xOffset: 0,
412
+ yOffset: 0,
413
+ rotation: 0,
414
+ scaleX: 1,
415
+ scaleY: 1
416
+ };
417
+ switch (t) {
418
+ case "arc":
419
+ return { ...c, yOffset: u, rotation: Math.atan(S) };
420
+ case "arc-lower":
421
+ return {
422
+ ...c,
423
+ yOffset: u * 0.55,
424
+ scaleY: Math.max(0.2, 1 + l * e * e * 0.45)
425
+ };
426
+ case "arc-upper":
427
+ return {
428
+ ...c,
429
+ yOffset: -u * 0.55,
430
+ scaleY: Math.max(0.2, 1 - l * e * e * 0.45)
431
+ };
432
+ case "arch":
433
+ return { ...c, yOffset: u };
434
+ case "bulge":
435
+ return { ...c, scaleY: Math.max(0.2, 1 + l * s * 0.75) };
436
+ case "shell-lower":
437
+ return {
438
+ ...c,
439
+ yOffset: a * 0.45 * o * s,
440
+ scaleY: Math.max(0.2, 1 + l * o * s)
441
+ };
442
+ case "shell-upper":
443
+ return {
444
+ ...c,
445
+ yOffset: -a * 0.45 * (1 - o) * s,
446
+ scaleY: Math.max(0.2, 1 + l * (1 - o) * s)
447
+ };
448
+ case "flag":
449
+ return {
450
+ ...c,
451
+ yOffset: a * 0.65 * g,
452
+ rotation: Math.atan(
453
+ a / Math.max(r, 1) * Math.cos(o * Math.PI * 2.7) * 1.6
454
+ )
455
+ };
456
+ case "wave":
457
+ return {
458
+ ...c,
459
+ yOffset: a * 0.6 * d,
460
+ rotation: Math.atan(a / Math.max(r, 1) * Math.cos(o * Math.PI * 2) * 1.4)
461
+ };
462
+ case "fish":
463
+ return {
464
+ ...c,
465
+ scaleX: Math.max(0.25, 1 - f * h * 0.55),
466
+ scaleY: Math.max(0.2, 1 + l * s)
467
+ };
468
+ case "rise":
469
+ return { ...c, yOffset: a * e };
470
+ case "fisheye":
471
+ return {
472
+ ...c,
473
+ yOffset: a * 0.18 * e * s,
474
+ scaleX: Math.max(0.25, 1 + l * s * 0.7),
475
+ scaleY: Math.max(0.2, 1 + l * s * 0.7)
476
+ };
477
+ case "inflate":
478
+ return {
479
+ ...c,
480
+ scaleX: Math.max(0.25, 1 + l * s * 0.6),
481
+ scaleY: Math.max(0.2, 1 + l * s * 0.6)
482
+ };
483
+ case "squeeze":
484
+ return { ...c, scaleY: Math.max(0.2, 1 - l * s * 0.8) };
485
+ case "twist":
486
+ return {
487
+ ...c,
488
+ yOffset: a * e,
489
+ rotation: l * e * 0.45,
490
+ scaleY: Math.max(0.2, 1 + l * e * 0.25)
491
+ };
492
+ default:
493
+ return c;
494
+ }
495
+ }
496
+ function k(t, e, n, i, a, r, l = "arc", f = 0) {
497
+ if (f !== 0) {
498
+ $e(t, e, n, i, a, r, l, f);
499
+ return;
500
+ }
501
+ ye(t, a), r === "fill" ? t.fillText(e, n, i) : t.strokeText(e, n, i), ve(t);
502
+ }
503
+ function $e(t, e, n, i, a, r, l, f) {
504
+ const s = Array.from(e);
505
+ if (s.length === 0) return;
506
+ const h = s.map((m) => t.measureText(m).width), o = h.reduce((m, w) => m + w, 0) + a * Math.max(0, s.length - 1), d = t.textAlign, g = d === "right" ? n - o : d === "center" ? n - o / 2 : n, S = Math.max(-100, Math.min(f, 100)) / 100 * 72, c = Math.max(o / 2, 1);
507
+ let b = g;
508
+ for (let m = 0; m < s.length; m++) {
509
+ const w = s[m], M = h[m], C = b + M / 2, F = (C - g - o / 2) / c, v = Ee(
510
+ l,
511
+ F,
512
+ m,
513
+ s.length,
514
+ S,
515
+ c
516
+ );
517
+ t.save(), t.translate(C + v.xOffset, i + v.yOffset), t.rotate(v.rotation), t.scale(v.scaleX, v.scaleY), t.textAlign = "center", r === "fill" ? t.fillText(w, 0, 0) : t.strokeText(w, 0, 0), t.restore(), b += M + a;
518
+ }
519
+ }
520
+ function ue(t, e, n, i, a, r, l, f, s) {
521
+ const h = P(t, e, f), o = a === "center" ? n - h / 2 : a === "right" ? n - h : n, d = s === "underline" ? l * 0.42 : -l * 0.08, g = i + d;
522
+ t.save(), t.strokeStyle = r, t.lineWidth = Math.max(2, l * 0.06), t.lineCap = "round", t.beginPath(), t.moveTo(o, g), t.lineTo(o + h, g), t.stroke(), t.restore();
523
+ }
524
+ function Ge(t, e) {
525
+ for (let n = 0; n < e.lines.length; n++) {
526
+ const i = e.lines[n], a = e.startY + n * e.lineHeight;
527
+ for (const r of e.shadowLayers)
528
+ t.save(), t.shadowColor = r.color, t.shadowBlur = r.blur, t.shadowOffsetX = r.offsetX ?? 0, t.shadowOffsetY = r.offsetY ?? 0, t.globalAlpha = r.opacity ?? 1, t.fillStyle = e.color, k(
529
+ t,
530
+ i,
531
+ e.textX,
532
+ a,
533
+ e.letterSpacingPx,
534
+ "fill",
535
+ e.bendPreset,
536
+ e.bendStrength
537
+ ), t.restore();
538
+ for (const r of e.strokeLayers)
539
+ t.save(), t.lineJoin = "round", t.miterLimit = 2, t.lineWidth = r.width, t.strokeStyle = r.color, t.globalAlpha = r.opacity ?? 1, k(
540
+ t,
541
+ i,
542
+ e.textX,
543
+ a,
544
+ e.letterSpacingPx,
545
+ "stroke",
546
+ e.bendPreset,
547
+ e.bendStrength
548
+ ), t.restore();
549
+ t.save(), t.fillStyle = e.color, t.globalAlpha = 1, k(
550
+ t,
551
+ i,
552
+ e.textX,
553
+ a,
554
+ e.letterSpacingPx,
555
+ "fill",
556
+ e.bendPreset,
557
+ e.bendStrength
558
+ ), t.restore(), e.underline && ue(
559
+ t,
560
+ i,
561
+ e.textX,
562
+ a,
563
+ e.textAlign,
564
+ e.color,
565
+ e.fontSize,
566
+ e.letterSpacingPx,
567
+ "underline"
568
+ ), e.strikethrough && ue(
569
+ t,
570
+ i,
571
+ e.textX,
572
+ a,
573
+ e.textAlign,
574
+ e.color,
575
+ e.fontSize,
576
+ e.letterSpacingPx,
577
+ "strikethrough"
578
+ );
579
+ }
580
+ }
581
+ function De(t, e) {
582
+ const n = Math.max(0, Math.min(e.intensity, 1));
583
+ if (n <= 0) return;
584
+ const i = Math.max(0, Math.min(e.range, 1)), a = i * 72, r = Math.max(-0.5, Math.min(e.horizontalAngle, 0.5)) * 80, l = Math.max(-0.5, Math.min(e.verticalAngle, 0.5)) * 80;
585
+ for (let f = 0; f < e.lines.length; f++) {
586
+ const s = e.startY + f * e.lineHeight;
587
+ t.save(), t.globalAlpha = n, t.shadowColor = e.color, t.shadowBlur = a, t.shadowOffsetX = r, t.shadowOffsetY = l, e.style === "contoured" ? (t.lineJoin = "round", t.miterLimit = 2, t.lineWidth = Math.max(2, i * 42), t.strokeStyle = e.color, k(
588
+ t,
589
+ e.lines[f],
590
+ e.textX,
591
+ s,
592
+ e.letterSpacingPx,
593
+ "stroke",
594
+ e.bendPreset,
595
+ e.bendStrength
596
+ )) : (t.fillStyle = e.color, k(
597
+ t,
598
+ e.lines[f],
599
+ e.textX,
600
+ s,
601
+ e.letterSpacingPx,
602
+ "fill",
603
+ e.bendPreset,
604
+ e.bendStrength
605
+ )), t.restore();
606
+ }
607
+ }
608
+ function qe(t, e) {
609
+ const n = Z(e.width, e.height), i = n.getContext("2d");
610
+ i.clearRect(0, 0, e.width, e.height), i.font = e.font, i.fillStyle = "#ffffff", i.textAlign = e.textAlign, i.textBaseline = "middle";
611
+ for (let l = 0; l < e.lines.length; l++)
612
+ k(
613
+ i,
614
+ e.lines[l],
615
+ e.textX,
616
+ e.startY + l * e.lineHeight,
617
+ e.letterSpacingPx,
618
+ "fill",
619
+ e.bendPreset,
620
+ e.bendStrength
621
+ );
622
+ const a = Z(e.width, e.height), r = a.getContext("2d");
623
+ r.clearRect(0, 0, e.width, e.height), r.save(), r.globalAlpha = e.opacity, r.filter = e.blur > 0 ? `blur(${e.blur}px)` : "none", r.drawImage(n, e.offsetX, e.offsetY), r.restore(), r.globalCompositeOperation = "destination-in", r.drawImage(n, 0, 0), r.globalCompositeOperation = "source-in", r.globalAlpha = e.opacity, r.fillStyle = e.color, r.fillRect(0, 0, e.width, e.height), t.drawImage(a, 0, 0);
624
+ }
625
+ function Ne(t) {
626
+ const {
627
+ width: e,
628
+ height: n,
629
+ color: i,
630
+ strokeLayers: a,
631
+ strokeColor: r,
632
+ strokeWidth: l,
633
+ strokeOpacity: f,
634
+ shadowLayers: s,
635
+ innerShadow: h,
636
+ glow: o,
637
+ shadowColor: d,
638
+ shadowBlur: g,
639
+ shadowOffsetX: u,
640
+ shadowOffsetY: S,
641
+ shadowOpacity: c,
642
+ textAlign: b,
643
+ bgFillMode: m,
644
+ bgOpacity: w,
645
+ bgFit: M,
646
+ bgAutoSize: C,
647
+ bgWidth: F,
648
+ bgHeight: v,
649
+ bgGradientStops: L,
650
+ bgTextureImage: I,
651
+ bgTextureFit: R,
652
+ bgTextureFlipX: E,
653
+ bgTextureFlipY: $,
654
+ underline: G,
655
+ strikethrough: D,
656
+ bendPreset: W,
657
+ bendStrength: Y
658
+ } = t;
659
+ let { fontSize: H, bgColor: X } = t;
660
+ const q = [
661
+ ...a ?? [],
662
+ ...r && l > 0 ? [{ color: r, width: l, opacity: f }] : []
663
+ ].filter((x) => x.width > 0), N = [
664
+ ...s ?? [],
665
+ ...d && (g > 0 || u !== 0 || S !== 0) ? [
666
+ {
667
+ color: d,
668
+ blur: g,
669
+ offsetX: u,
670
+ offsetY: S,
671
+ opacity: c
672
+ }
673
+ ] : []
674
+ ].filter((x) => x.blur > 0 || (x.offsetX ?? 0) !== 0 || (x.offsetY ?? 0) !== 0);
675
+ let O;
676
+ const A = Z(e, n), T = A.getContext("2d");
677
+ T.clearRect(0, 0, e, n), T.fillStyle = i, T.textAlign = b, T.textBaseline = "middle";
678
+ const y = pe(T, t);
679
+ if (H = y.fontSize, X !== "transparent") {
680
+ const x = C === !0, U = de(
681
+ x ? void 0 : F,
682
+ M === "text" || x ? y.textBlockWidth : e,
683
+ e
684
+ ), j = de(
685
+ x ? void 0 : v,
686
+ M === "text" || x ? y.textBlockHeight : n,
687
+ n
688
+ );
689
+ ze(T, {
690
+ canvasWidth: e,
691
+ canvasHeight: n,
692
+ textAlign: b,
693
+ bgFit: M,
694
+ panelWidth: U,
695
+ panelHeight: j,
696
+ bgColor: X,
697
+ bgFillMode: m,
698
+ bgOpacity: w,
699
+ bgGradientStops: L,
700
+ bgTextureImage: I,
701
+ bgTextureFit: R,
702
+ bgTextureFlipX: E,
703
+ bgTextureFlipY: $,
704
+ borderColor: t.borderColor,
705
+ borderWidth: t.borderWidth,
706
+ borderRadius: t.borderRadius
707
+ });
708
+ }
709
+ return o && De(T, {
710
+ lines: y.resolvedLines,
711
+ textX: y.textX,
712
+ startY: y.startY,
713
+ lineHeight: y.lineHeight,
714
+ letterSpacingPx: y.letterSpacingPx,
715
+ bendPreset: W,
716
+ bendStrength: Y,
717
+ color: o.color,
718
+ style: o.style,
719
+ intensity: o.intensity ?? 0.5,
720
+ range: o.range ?? 0.5,
721
+ horizontalAngle: o.horizontalAngle ?? 0,
722
+ verticalAngle: o.verticalAngle ?? 0
723
+ }), Ge(T, {
724
+ lines: y.resolvedLines,
725
+ textX: y.textX,
726
+ startY: y.startY,
727
+ lineHeight: y.lineHeight,
728
+ textAlign: b,
729
+ color: i,
730
+ fontSize: H,
731
+ letterSpacingPx: y.letterSpacingPx,
732
+ bendPreset: W,
733
+ bendStrength: Y,
734
+ shadowLayers: N,
735
+ strokeLayers: q,
736
+ underline: G,
737
+ strikethrough: D
738
+ }), h && qe(T, {
739
+ width: e,
740
+ height: n,
741
+ font: T.font,
742
+ lines: y.resolvedLines,
743
+ textX: y.textX,
744
+ startY: y.startY,
745
+ lineHeight: y.lineHeight,
746
+ letterSpacingPx: y.letterSpacingPx,
747
+ bendPreset: W,
748
+ bendStrength: Y,
749
+ textAlign: b,
750
+ color: h.color,
751
+ opacity: h.opacity ?? 1,
752
+ blur: h.blur,
753
+ offsetX: h.offsetX ?? 0,
754
+ offsetY: h.offsetY ?? 0
755
+ }), O = new Le.CanvasTexture(A), O.needsUpdate = !0, O;
756
+ }
757
+ function Ue(t, e) {
758
+ const {
759
+ lines: n,
760
+ color: i,
761
+ strokeLayers: a,
762
+ outlineEnabled: r,
763
+ strokeColor: l,
764
+ strokeWidth: f,
765
+ strokeOpacity: s,
766
+ shadowLayers: h,
767
+ shadowEnabled: o,
768
+ innerShadow: d,
769
+ glow: g,
770
+ shadowColor: u,
771
+ shadowBlur: S,
772
+ shadowOffsetX: c,
773
+ shadowOffsetY: b,
774
+ shadowOpacity: m,
775
+ fontWeight: w,
776
+ fontStyle: M,
777
+ fontFamily: C,
778
+ fontSize: F,
779
+ textAlign: v,
780
+ verticalAlign: L,
781
+ overflow: I,
782
+ resizeToFit: R,
783
+ minFontSize: E,
784
+ letterSpacing: $,
785
+ lineSpacing: G,
786
+ bgFillMode: D,
787
+ bgOpacity: W,
788
+ bgFit: Y,
789
+ bgAutoSize: H,
790
+ bgWidth: X,
791
+ bgHeight: q,
792
+ bgGradientStops: N,
793
+ bgTextureFit: O,
794
+ bgTextureFlipX: A,
795
+ bgTextureFlipY: T,
796
+ borderColor: y,
797
+ borderWidth: x,
798
+ borderRadius: U,
799
+ padding: j,
800
+ aspect: ee,
801
+ resolution: J,
802
+ underline: te,
803
+ strikethrough: ne,
804
+ bendPreset: re,
805
+ bendStrength: ie
806
+ } = t, ae = p(
807
+ () => r === !1 ? [] : a,
808
+ [r, a]
809
+ ), le = p(
810
+ () => o === !1 ? [] : h,
811
+ [o, h]
812
+ ), oe = void 0, se = p(
813
+ () => ({
814
+ text: e.text,
815
+ lines: n,
816
+ color: i,
817
+ strokeLayers: ae,
818
+ strokeColor: r === !1 ? void 0 : l,
819
+ strokeWidth: r === !1 ? 0 : f,
820
+ strokeOpacity: s,
821
+ shadowLayers: le,
822
+ innerShadow: d,
823
+ glow: g,
824
+ shadowColor: o === !1 ? void 0 : u,
825
+ shadowBlur: o === !1 ? 0 : S,
826
+ shadowOffsetX: o === !1 ? 0 : c,
827
+ shadowOffsetY: o === !1 ? 0 : b,
828
+ shadowOpacity: m,
829
+ fontWeight: w,
830
+ fontStyle: M,
831
+ fontFamily: C,
832
+ fontSize: F,
833
+ textAlign: v,
834
+ verticalAlign: L,
835
+ overflow: I,
836
+ resizeToFit: R,
837
+ minFontSize: E,
838
+ letterSpacing: $,
839
+ lineSpacing: G,
840
+ bgColor: e.bgColor,
841
+ bgFillMode: D,
842
+ bgOpacity: W,
843
+ bgFit: Y,
844
+ bgAutoSize: H,
845
+ bgWidth: X,
846
+ bgHeight: q,
847
+ bgGradientStops: N,
848
+ bgTextureImage: oe,
849
+ bgTextureFit: O,
850
+ bgTextureFlipX: A,
851
+ bgTextureFlipY: T,
852
+ borderColor: y,
853
+ borderWidth: x,
854
+ borderRadius: U,
855
+ padding: j,
856
+ height: J,
857
+ width: Math.round(J * Math.max(ee, 0.1)),
858
+ underline: te,
859
+ strikethrough: ne,
860
+ bendPreset: re,
861
+ bendStrength: ie
862
+ }),
863
+ [
864
+ e.text,
865
+ e.bgColor,
866
+ n,
867
+ i,
868
+ ae,
869
+ r,
870
+ l,
871
+ f,
872
+ s,
873
+ le,
874
+ d,
875
+ g,
876
+ o,
877
+ u,
878
+ S,
879
+ c,
880
+ b,
881
+ m,
882
+ w,
883
+ M,
884
+ C,
885
+ F,
886
+ v,
887
+ L,
888
+ I,
889
+ R,
890
+ E,
891
+ $,
892
+ G,
893
+ D,
894
+ W,
895
+ Y,
896
+ H,
897
+ X,
898
+ q,
899
+ N,
900
+ oe,
901
+ O,
902
+ A,
903
+ T,
904
+ y,
905
+ x,
906
+ U,
907
+ j,
908
+ ee,
909
+ J,
910
+ te,
911
+ ne,
912
+ re,
913
+ ie
914
+ ]
915
+ ), fe = p(() => Ne(se), [se]);
916
+ return Ye(fe), fe;
917
+ }
918
+ function Ve(t) {
919
+ const e = { ...We, ...t }, {
920
+ text: n,
921
+ bgColor: i,
922
+ opacity: a,
923
+ name: r,
924
+ overlay: l = !0,
925
+ position: f,
926
+ rotation: s,
927
+ scale: h,
928
+ visible: o,
929
+ renderOrder: d
930
+ } = e, [g, u] = he(null), [S, c] = he(null), b = _(n);
931
+ b.current !== n && (b.current = n, g !== null && u(null));
932
+ const m = _(i);
933
+ m.current !== i && (m.current = i, S !== null && c(null));
934
+ const w = _(null), F = Ue(e, { text: g ?? n, bgColor: S ?? i });
935
+ return be(() => {
936
+ const v = w.current;
937
+ if (v)
938
+ return v.userData.setText = (L) => u(L), v.userData.setBgColor = (L) => c(L), () => {
939
+ delete v.userData.setText, delete v.userData.setBgColor;
940
+ };
941
+ }, []), /* @__PURE__ */ B(
942
+ me,
943
+ {
944
+ ref: w,
945
+ name: r,
946
+ texture: F,
947
+ overlay: l,
948
+ opacity: a,
949
+ position: f,
950
+ rotation: s,
951
+ scale: h,
952
+ visible: o,
953
+ renderOrder: d
954
+ }
955
+ );
956
+ }
957
+ export {
958
+ Qe as S,
959
+ Ve as T,
960
+ Ye as u
961
+ };