gps-plus-slam-app-framework 1.7.0 → 1.8.0

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 (233) hide show
  1. package/dist/{accuracy-circles-BtqOP_v1.d.ts → accuracy-circles-DkWBkF5g.d.ts} +16 -6
  2. package/dist/{app-selectors-ikTUQZpe.d.ts → app-selectors-JqydaUMN.d.ts} +1 -1
  3. package/dist/ar/bresenham3d.d.ts +1 -1
  4. package/dist/ar/camera-blit-capture.d.ts +1 -1
  5. package/dist/ar/capability-checker.d.ts +1 -1
  6. package/dist/ar/capture-failure-tracker.d.ts +1 -1
  7. package/dist/ar/chromium-camera-access-workaround.d.ts +1 -1
  8. package/dist/ar/depth-grid-lookup.d.ts +1 -1
  9. package/dist/ar/depth-occluder.d.ts +127 -0
  10. package/dist/ar/depth-occluder.js +299 -0
  11. package/dist/ar/depth-sampler.d.ts +2 -2
  12. package/dist/ar/depth-sampler.js +24 -4
  13. package/dist/ar/depth-unprojection.d.ts +1 -1
  14. package/dist/ar/depth-unprojection.js +52 -21
  15. package/dist/ar/enable-gps-ar.d.ts +1 -1
  16. package/dist/ar/enable-gps-ar.js +1 -1
  17. package/dist/ar/frame-loop.d.ts +1 -1
  18. package/dist/ar/frame-loop.js +12 -2
  19. package/dist/ar/image-capture.d.ts +1 -1
  20. package/dist/ar/image-capture.js +1 -1
  21. package/dist/ar/image-quality.d.ts +1 -1
  22. package/dist/ar/image-quality.js +2 -1
  23. package/dist/ar/index.d.ts +32 -31
  24. package/dist/ar/index.js +5 -4
  25. package/dist/ar/occlusion-mesh-worker.d.ts +58 -0
  26. package/dist/ar/occlusion-mesh-worker.js +129 -0
  27. package/dist/ar/occupancy-grid.d.ts +2 -2
  28. package/dist/ar/occupancy-grid.js +287 -31
  29. package/dist/ar/occupancy-mesher.d.ts +2 -0
  30. package/dist/ar/occupancy-mesher.js +638 -0
  31. package/dist/ar/planar-pnp.d.ts +1 -1
  32. package/dist/ar/qr-debug-view.d.ts +1 -1
  33. package/dist/ar/qr-derived-pose.d.ts +1 -1
  34. package/dist/ar/qr-detection-controller.d.ts +1 -1
  35. package/dist/ar/qr-frontend.d.ts +1 -1
  36. package/dist/ar/qr-pose.d.ts +1 -1
  37. package/dist/ar/qr-size-depth-context.d.ts +2 -2
  38. package/dist/ar/qr-size-measurer.d.ts +1 -1
  39. package/dist/ar/replay-scene.d.ts +1 -1
  40. package/dist/ar/replay-scene.js +1 -1
  41. package/dist/ar/scene-node-names.d.ts +1 -1
  42. package/dist/ar/webxr-nue-basis.d.ts +1 -1
  43. package/dist/ar/webxr-session.d.ts +4 -4
  44. package/dist/ar/webxr-session.js +2 -2
  45. package/dist/ar/xr-camera-texture.d.ts +1 -1
  46. package/dist/ar/xr-error-handler.d.ts +1 -1
  47. package/dist/ar/xr-frame-loop.d.ts +1 -1
  48. package/dist/ar/xr-frame-loop.js +12 -2
  49. package/dist/{ar-MFpFlV7j.js → ar-BqCudtqE.js} +3 -2
  50. package/dist/{ar-world-group-alignment-69fgnB39.d.ts → ar-world-group-alignment-BlvGcIAk.d.ts} +1 -1
  51. package/dist/{capture-motion-gate-4EscNZCw.js → capture-motion-gate-_NdTSwKi.js} +17 -5
  52. package/dist/cell-key-DIB4rOTV.js +51 -0
  53. package/dist/core/index.d.ts +1 -1
  54. package/dist/{create-slam-app-store-n_VF63D5.d.ts → create-slam-app-store-D3nzh9Wb.d.ts} +4 -4
  55. package/dist/{create-slam-app-store-DkCHOpvb.js → create-slam-app-store-DXiAnJwR.js} +9 -2
  56. package/dist/{depth-grid-lookup-DQ-IYhO3.d.ts → depth-grid-lookup-D5atpNZ3.d.ts} +1 -1
  57. package/dist/{depth-sampler-asc8exHt.d.ts → depth-sampler-CwObAwEA.d.ts} +33 -1
  58. package/dist/{depth-unprojection-DjsbJW9L.d.ts → depth-unprojection-DRdBU90S.d.ts} +1 -1
  59. package/dist/{enable-gps-ar-DkNhFv4Y.d.ts → enable-gps-ar-DvGzBOrp.d.ts} +4 -4
  60. package/dist/{frame-conversions-DObhj8Wf.d.ts → frame-conversions-C4bnNOEY.d.ts} +1 -1
  61. package/dist/{fused-path-v6eOmLl3.d.ts → fused-path-C5pp0PJU.d.ts} +1 -1
  62. package/dist/geo/h3-proximity.d.ts +1 -1
  63. package/dist/geo/index.d.ts +1 -1
  64. package/dist/{gps-anchor-BeFO2RYa.d.ts → gps-anchor-BjECcYnD.d.ts} +1 -1
  65. package/dist/{gps-ar-pose-sampler-DHMZmYAc.d.ts → gps-ar-pose-sampler-DEGNk2CI.d.ts} +1 -1
  66. package/dist/{gps-event-coordinator-CjWW636x.d.ts → gps-event-coordinator-CHtIkhb7.d.ts} +4 -4
  67. package/dist/{image-capture-CNZDrQXG.d.ts → image-capture-Bp6Pd4Md.d.ts} +3 -3
  68. package/dist/{image-capture-B2-b6tKK.js → image-capture-DVcuqMtX.js} +1 -1
  69. package/dist/{index-BODDUTvD.d.ts → index-DlsOo2IB.d.ts} +1 -1
  70. package/dist/{index-BneSj4_5.d.ts → index-cCQWuYqy.d.ts} +3 -3
  71. package/dist/index.d.ts +82 -80
  72. package/dist/index.js +10 -8
  73. package/dist/{leaflet-map-overlay-CmIyiE8n.d.ts → leaflet-map-overlay-BOZFW5kT.d.ts} +64 -10
  74. package/dist/leaflet-map-overlay-CBWPvaX9.js +452 -0
  75. package/dist/lerp-utils-Qs8OhumS.d.ts +42 -0
  76. package/dist/map-data-D7rpMC6f.js +120 -0
  77. package/dist/{map-data-B4oEehUh.d.ts → map-data-PNfGKGWx.d.ts} +22 -2
  78. package/dist/{map-overlay-draw-ymz1s7fG.d.ts → map-overlay-draw-DiroaJed.d.ts} +1 -1
  79. package/dist/{null-storage-backend-B9rtyDfG.d.ts → null-storage-backend-B1-jlpin.d.ts} +2 -2
  80. package/dist/occlusion-mesh-b28lRJ6S.d.ts +194 -0
  81. package/dist/occupancy-grid-BV7RhB7I.d.ts +194 -0
  82. package/dist/occupancy-mesher-C2ecWhNp.d.ts +100 -0
  83. package/dist/{opfs-storage-3VZh-qH6.d.ts → opfs-storage-CTkxvxN4.d.ts} +5 -0
  84. package/dist/{opfs-storage-backend-JJiUJo-3.d.ts → opfs-storage-backend-D6Z03fML.d.ts} +2 -2
  85. package/dist/{persistence-middleware-DAPTTwB2.d.ts → persistence-middleware-CG-t08X4.d.ts} +1 -1
  86. package/dist/{planar-pnp-my9bqULS.d.ts → planar-pnp-D7bc_rLX.d.ts} +1 -1
  87. package/dist/{qr-debug-view-Brl73HGO.d.ts → qr-debug-view-BJooqbiP.d.ts} +1 -1
  88. package/dist/{qr-derived-pose-CmxTP2m4.d.ts → qr-derived-pose-BwNWn8oV.d.ts} +2 -2
  89. package/dist/{qr-detected-slice-VQssZmQJ.d.ts → qr-detected-slice-TzVb8bij.d.ts} +4 -4
  90. package/dist/{qr-detection-controller-CDurHv8E.d.ts → qr-detection-controller-Bo4XfQTP.d.ts} +3 -3
  91. package/dist/{qr-frontend--fFX25mV.d.ts → qr-frontend-BPURlh3S.d.ts} +1 -1
  92. package/dist/{qr-pose-aggregation-B7tWJq7j.d.ts → qr-pose-aggregation-CypnmjA-.d.ts} +1 -1
  93. package/dist/{qr-size-depth-context-CeAG53fy.d.ts → qr-size-depth-context-apAOmbrZ.d.ts} +2 -2
  94. package/dist/{qr-size-measurer-DQdAsid1.d.ts → qr-size-measurer-DxiMqRUw.d.ts} +3 -3
  95. package/dist/{recording-options-BPCpMHLK.d.ts → recording-options-vASCFzc5.d.ts} +177 -24
  96. package/dist/{recording-replayer-DQKpAGyQ.d.ts → recording-replayer-D0V9WkmY.d.ts} +2 -2
  97. package/dist/{recording-slice-DaxHZvNu.d.ts → recording-slice-DTUtSVgd.d.ts} +2 -2
  98. package/dist/{replay-engine-CmKh_4wf.d.ts → replay-engine-xdrUgWJi.d.ts} +1 -1
  99. package/dist/{replay-scene-DBlDrV_x.d.ts → replay-scene-zJ8SFDjE.d.ts} +3 -3
  100. package/dist/sensors/absolute-orientation.d.ts +1 -1
  101. package/dist/sensors/absolute-orientation.js +23 -6
  102. package/dist/sensors/gps-error-handler.d.ts +1 -1
  103. package/dist/sensors/gps.d.ts +1 -1
  104. package/dist/sensors/index.d.ts +4 -4
  105. package/dist/sensors/permission-checker.d.ts +1 -1
  106. package/dist/state/app-selectors.d.ts +1 -1
  107. package/dist/state/combined-root-state.d.ts +1 -1
  108. package/dist/state/create-slam-app-store.d.ts +1 -1
  109. package/dist/state/create-slam-app-store.js +1 -1
  110. package/dist/state/gps-ar-pose-sampler.d.ts +3 -3
  111. package/dist/state/gps-event-coordinator.d.ts +1 -1
  112. package/dist/state/index.d.ts +19 -19
  113. package/dist/state/index.js +2 -2
  114. package/dist/state/persistence-middleware.d.ts +1 -1
  115. package/dist/state/qr-detected-slice.d.ts +3 -3
  116. package/dist/state/recording-options.d.ts +2 -2
  117. package/dist/state/recording-options.js +134 -15
  118. package/dist/state/recording-replayer.d.ts +2 -2
  119. package/dist/state/recording-replayer.js +1 -1
  120. package/dist/state/recording-slice.d.ts +1 -1
  121. package/dist/state/replay-engine.d.ts +1 -1
  122. package/dist/state/store-subscribers.d.ts +2 -2
  123. package/dist/state/store-subscribers.js +2 -1
  124. package/dist/state/subscribe-to-selector.d.ts +1 -1
  125. package/dist/state/tracking-quality.d.ts +1 -1
  126. package/dist/state/tracking-quality.js +10 -1
  127. package/dist/state/tracking-slice.d.ts +1 -1
  128. package/dist/{state-E51QT_-j.js → state-BeKvn4B-.js} +1 -1
  129. package/dist/storage/file-system-utils.d.ts +1 -1
  130. package/dist/storage/index.d.ts +8 -8
  131. package/dist/storage/null-storage-backend.d.ts +1 -1
  132. package/dist/storage/opfs-storage-backend.d.ts +1 -1
  133. package/dist/storage/opfs-storage.d.ts +1 -1
  134. package/dist/storage/opfs-storage.js +25 -1
  135. package/dist/storage/storage-backend.d.ts +1 -1
  136. package/dist/storage/zip-coverage-embed.d.ts +1 -1
  137. package/dist/storage/zip-export.d.ts +1 -1
  138. package/dist/storage/zip-reader.d.ts +1 -1
  139. package/dist/{storage-backend-BdVLD0dU.d.ts → storage-backend-sEtmM4yW.d.ts} +1 -1
  140. package/dist/{store-subscribers-CA6AJH_8.d.ts → store-subscribers-DScA7tdT.d.ts} +2 -2
  141. package/dist/{subscribe-to-selector-B6EUmQ3I.d.ts → subscribe-to-selector-B9ylM5Oh.d.ts} +1 -1
  142. package/dist/test-utils/browser-mocks.d.ts +1 -1
  143. package/dist/test-utils/zip-round-trip-helpers.d.ts +1 -1
  144. package/dist/{tracking-slice-BuAZxXZ5.d.ts → tracking-slice-DMkHlbny.d.ts} +1 -1
  145. package/dist/types/ar-types.d.ts +1 -1
  146. package/dist/types/geo-types.d.ts +1 -1
  147. package/dist/types/index.d.ts +2 -2
  148. package/dist/utils/concurrency.d.ts +1 -1
  149. package/dist/utils/failure-tracker.d.ts +1 -1
  150. package/dist/utils/format-file-size.d.ts +1 -1
  151. package/dist/utils/fused-path.d.ts +1 -1
  152. package/dist/utils/index.d.ts +7 -7
  153. package/dist/utils/list-formatter.d.ts +1 -1
  154. package/dist/utils/logger.d.ts +1 -1
  155. package/dist/visualization/accuracy-circles.d.ts +1 -1
  156. package/dist/visualization/accuracy-circles.js +17 -8
  157. package/dist/visualization/alignment-lerper.d.ts +1 -1
  158. package/dist/visualization/ar-world-group-alignment.d.ts +1 -1
  159. package/dist/visualization/ar-world-group-alignment.js +1 -1
  160. package/dist/visualization/camera-follower.d.ts +1 -1
  161. package/dist/visualization/css3d-renderer-manager.d.ts +1 -1
  162. package/dist/visualization/frame-conversions.d.ts +1 -1
  163. package/dist/visualization/frustum-visibility.d.ts +1 -1
  164. package/dist/visualization/gps-anchor.d.ts +1 -1
  165. package/dist/visualization/gps-compass-cubes.d.ts +1 -1
  166. package/dist/visualization/gps-event-markers.d.ts +1 -1
  167. package/dist/visualization/gps-event-markers.js +1 -1
  168. package/dist/visualization/hit-test-reticle.d.ts +1 -1
  169. package/dist/visualization/index.d.ts +20 -19
  170. package/dist/visualization/index.js +4 -3
  171. package/dist/visualization/leaflet-map-overlay.d.ts +1 -1
  172. package/dist/visualization/leaflet-map-overlay.js +1 -282
  173. package/dist/visualization/lerp-utils.d.ts +2 -2
  174. package/dist/visualization/lerp-utils.js +27 -3
  175. package/dist/visualization/map-data.d.ts +1 -1
  176. package/dist/visualization/map-data.js +1 -32
  177. package/dist/visualization/map-overlay-draw.d.ts +1 -1
  178. package/dist/visualization/map-overlay-draw.js +24 -2
  179. package/dist/visualization/map-overlay.d.ts +1 -1
  180. package/dist/visualization/occluder-mesh-driver.d.ts +130 -0
  181. package/dist/visualization/occluder-mesh-driver.js +219 -0
  182. package/dist/visualization/occlusion-mesh.d.ts +2 -0
  183. package/dist/visualization/occlusion-mesh.js +437 -0
  184. package/dist/visualization/three-dispose.d.ts +1 -1
  185. package/dist/visualization/vis-colors.d.ts +1 -1
  186. package/dist/{webxr-session-DG-eNfny.js → webxr-session-BCP2XK7k.js} +88 -13
  187. package/dist/{webxr-session-Do5L6G3B.d.ts → webxr-session-cRG2SYAQ.d.ts} +73 -10
  188. package/package.json +4 -4
  189. package/dist/lerp-utils-BLmHhkVe.d.ts +0 -20
  190. package/dist/occupancy-grid-DnOc-6PU.d.ts +0 -82
  191. /package/dist/{absolute-orientation-CAEh840t.d.ts → absolute-orientation-BAxc15J6.d.ts} +0 -0
  192. /package/dist/{alignment-lerper-Bil6vbVw.d.ts → alignment-lerper-gD70k7Fq.d.ts} +0 -0
  193. /package/dist/{ar-types-BFX2r1wk.d.ts → ar-types-Cc5yvBwn.d.ts} +0 -0
  194. /package/dist/{bresenham3d-CU1Gv2W4.d.ts → bresenham3d-DGc4nIb-.d.ts} +0 -0
  195. /package/dist/{camera-blit-capture-NKT9H5-e.d.ts → camera-blit-capture-BimSdyih.d.ts} +0 -0
  196. /package/dist/{camera-follower-CqJJ7zRj.d.ts → camera-follower-DfBm2J5i.d.ts} +0 -0
  197. /package/dist/{capability-checker-DUQLg6gq.d.ts → capability-checker-BTTpygvZ.d.ts} +0 -0
  198. /package/dist/{capture-failure-tracker-gsm8q7yi.d.ts → capture-failure-tracker-_BVfhpxv.d.ts} +0 -0
  199. /package/dist/{capture-motion-gate-0Yl2NpQG.d.ts → capture-motion-gate-BGoAMkmf.d.ts} +0 -0
  200. /package/dist/{chromium-camera-access-workaround-D4K2uwwQ.d.ts → chromium-camera-access-workaround-C6yJLXz9.d.ts} +0 -0
  201. /package/dist/{concurrency-By0oOTZt.d.ts → concurrency-DPeGBH0X.d.ts} +0 -0
  202. /package/dist/{css3d-renderer-manager-B3kGNtcn.d.ts → css3d-renderer-manager-CPpVtvgs.d.ts} +0 -0
  203. /package/dist/{failure-tracker-BO7M7jF_.d.ts → failure-tracker-CeKf5HIc.d.ts} +0 -0
  204. /package/dist/{file-system-utils-DOajnMm-.d.ts → file-system-utils-DueXHxo9.d.ts} +0 -0
  205. /package/dist/{format-file-size-Dc98ulzB.d.ts → format-file-size-DxN-EBLc.d.ts} +0 -0
  206. /package/dist/{frame-loop-CpVjQ1dH.d.ts → frame-loop-7GBMBu68.d.ts} +0 -0
  207. /package/dist/{frustum-visibility-CeoCZchO.d.ts → frustum-visibility-CokkgS_i.d.ts} +0 -0
  208. /package/dist/{geo-types-3Ip1NzVR.d.ts → geo-types-DrGVu8nS.d.ts} +0 -0
  209. /package/dist/{gps-BBO3hKfT.d.ts → gps-CDKDQokE.d.ts} +0 -0
  210. /package/dist/{gps-compass-cubes-DSN87L8p.d.ts → gps-compass-cubes-1mooS3BS.d.ts} +0 -0
  211. /package/dist/{gps-error-handler-BbPsfw-_.d.ts → gps-error-handler-C34GQuTu.d.ts} +0 -0
  212. /package/dist/{gps-event-markers-Cz9RMA2k.d.ts → gps-event-markers-Di2nBzx-.d.ts} +0 -0
  213. /package/dist/{h3-proximity-C-j0pw1j.d.ts → h3-proximity-D0GTHQmr.d.ts} +0 -0
  214. /package/dist/{hit-test-reticle-DV-2TpB9.d.ts → hit-test-reticle-CaQbrhbk.d.ts} +0 -0
  215. /package/dist/{image-quality-smCBoFj1.d.ts → image-quality-BMx2ko9-.d.ts} +0 -0
  216. /package/dist/{index-_Rhgoqkh.d.ts → index-D4vrgV4b.d.ts} +0 -0
  217. /package/dist/{index-BAPokxMb.d.ts → index-D74JTX4I.d.ts} +0 -0
  218. /package/dist/{list-formatter-KNMS0ay2.d.ts → list-formatter-DLFDnS70.d.ts} +0 -0
  219. /package/dist/{logger-CLnPrHiD.d.ts → logger-CqTd5Kpk.d.ts} +0 -0
  220. /package/dist/{map-overlay-Dh2B97MP.d.ts → map-overlay-BCQgvIgU.d.ts} +0 -0
  221. /package/dist/{permission-checker-CDuI8BwC.d.ts → permission-checker-B-VtjnBA.d.ts} +0 -0
  222. /package/dist/{qr-pose-D2rfu5DA.d.ts → qr-pose-y3vaEd6x.d.ts} +0 -0
  223. /package/dist/{scene-node-names-BiShOQDB.d.ts → scene-node-names-CGb-ylBd.d.ts} +0 -0
  224. /package/dist/{session-disposers-zv9OGXPB.js → session-disposers-BPrMplIC.js} +0 -0
  225. /package/dist/{three-dispose-Bt1k7WKh.d.ts → three-dispose-BMOAmPhb.d.ts} +0 -0
  226. /package/dist/{vis-colors-Obw2pLqT.d.ts → vis-colors-C7HI0u9_.d.ts} +0 -0
  227. /package/dist/{webxr-nue-basis-3nfjDJJp.d.ts → webxr-nue-basis-CaCnYxuq.d.ts} +0 -0
  228. /package/dist/{xr-camera-texture-Cva1q3Qj.d.ts → xr-camera-texture-q0eIDSRg.d.ts} +0 -0
  229. /package/dist/{xr-error-handler-CtvHpjfm.d.ts → xr-error-handler-uVGDu9IX.d.ts} +0 -0
  230. /package/dist/{xr-frame-loop-DIYtRcUa.d.ts → xr-frame-loop-DX3JPpAU.d.ts} +0 -0
  231. /package/dist/{zip-coverage-embed-DCAREVmw.d.ts → zip-coverage-embed-ncVbaZAz.d.ts} +0 -0
  232. /package/dist/{zip-export-ol0S_Ofd.d.ts → zip-export-CtiUnAlJ.d.ts} +0 -0
  233. /package/dist/{zip-reader-D9iPQwdQ.d.ts → zip-reader-CvruaGvD.d.ts} +0 -0
package/dist/index.d.ts CHANGED
@@ -1,81 +1,83 @@
1
- import { r as bresenham3d, t as GridCell } from "./bresenham3d-CU1Gv2W4.js";
2
- import { a as computeCaptureSize, i as computeAspectFitSize, n as CameraBlitCaptureConfig, r as DEFAULT_BLIT_CONFIG, t as CameraBlitCapture } from "./camera-blit-capture-NKT9H5-e.js";
3
- import { i as isFullySupported, n as CapabilitySupport, r as capabilityMessage, t as CapabilityMessageOptions } from "./capability-checker-DUQLg6gq.js";
4
- import { a as createCaptureFailureTracker, i as DEFAULT_CAPTURE_TRACKER_CONFIG, n as CaptureFailureTracker, r as CaptureFailureTrackerConfig, t as CAPTURE_FAILURE_WARNING } from "./capture-failure-tracker-gsm8q7yi.js";
5
- import { a as applyChromiumProjectionLayerWorkaround, i as ChromiumProjectionLayerWorkaroundResult, n as BASELAYER_WINDOW_MIN, o as needsBaseLayerPersistence, r as ChromeVersion, s as parseChromeVersion, t as BASELAYER_WINDOW_MAX } from "./chromium-camera-access-workaround-D4K2uwwQ.js";
6
- import { a as RgbTuple, i as DepthSample, n as ArPoseTuples, o as WebXRQuaternion, r as DepthPoint, s as WebXRVec3, t as ARPose } from "./ar-types-BFX2r1wk.js";
7
- import { n as createDepthGridLookup, t as DepthGridLookup } from "./depth-grid-lookup-DQ-IYhO3.js";
8
- import { a as wrapXRDepthInfo, i as DepthSamplerConfig, n as DepthSampler, r as DepthSamplerCallbacks, t as DepthInfo } from "./depth-sampler-asc8exHt.js";
9
- import { n as createDepthUnprojector, r as unprojectDepthPoint, t as DepthUnprojector } from "./depth-unprojection-DjsbJW9L.js";
10
- import { a as QualityFilterConfig, c as meanLuminance, i as ImageQualityGate, l as rgbaToGrayscale, n as DEFAULT_SHARPNESS_HISTORY_SIZE, o as QualityRejectReason, r as DEFAULT_SHARPNESS_MIN_SAMPLES, s as QualityVerdict, t as DEFAULT_QUALITY_FILTER, u as sharpnessScore } from "./image-quality-smCBoFj1.js";
11
- import { C as saveRecordingOptions, E as validateDepthOptions, N as validateRecordingOptions, O as validateImageOptions, S as resetRecordingOptions, _ as RecordingOptionsInput, a as DepthCaptureOptions, b as cloneRecordingOptions, c as IMAGE_CONSTRAINTS, i as DEPTH_CONSTRAINTS, l as ImageCaptureOptions, r as DEFAULT_RECORDING_OPTIONS, v as STORAGE_KEY, x as loadRecordingOptions } from "./recording-options-BPCpMHLK.js";
12
- import { a as startOrientationWatch, i as startGpsWatch, n as RawDeviceOrientation, o as stopGpsWatch, r as requestOrientationPermission, s as stopOrientationWatch, t as GpsPosition } from "./gps-BBO3hKfT.js";
13
- import { a as checkCameraPermission, c as checkOrientationPermission, d as requestCameraPermission, f as requestGeolocationPermission, g as setFileSystemState, h as resetFileSystemState, i as checkAllPermissions, l as checkWebXRSupport, m as requestWebXRWithDepthPermission, n as PermissionStatus, o as checkFileSystemPermission, p as requestOrientationPermission$1, s as checkGeolocationPermission, t as PermissionCheckResult, u as requestAllPermissions } from "./permission-checker-CDuI8BwC.js";
14
- import { a as ImageCaptureCallbacks, c as MIN_VALID_IMAGE_BYTES, i as FrameQualityVerdict, n as CapturedImage, o as ImageCaptureConfig, r as DEFAULT_CAPTURE_CONFIG, s as ImageCaptureManager, t as CapturedFrame } from "./image-capture-CNZDrQXG.js";
15
- import { a as TrackingSliceState, c as poseLost, d as selectLastRestartedPayload, f as selectLastSensorOrientation, g as trackingReducer, h as selectTrackingPhase, i as TrackingPhase, l as poseReceived, m as selectLostFrameCount, n as PoseReceivedPayload, o as clearLastRestartedPayload, p as selectLastValidPose, s as originReset, u as resetTracking } from "./tracking-slice-BuAZxXZ5.js";
16
- import { _ as solveQrPose, a as QrPoseSolution, c as SolveQrPoseInput, d as intrinsicsFromProjection, f as invertPose, g as signedQuadArea, h as reprojectionErrorPx, i as Pose, l as buildObjectPoints, m as qrInCameraFromOpenCv, n as OpenCvPnpResult, o as QuadValidation, p as projectViewPoint, r as Point2, s as SolvePnpSquare, t as CameraIntrinsics, u as composePose, v as transformPoint, y as validateQuad } from "./qr-pose-D2rfu5DA.js";
17
- import { a as QrFrontEnd, c as createBarcodeDetectorFrontEnd, i as QrDetection, n as BarcodeDetectorLike, o as RgbaImage, r as DetectedBarcodeLike, s as ToImageBitmapSource, t as BarcodeDetectorFrontEnd } from "./qr-frontend--fFX25mV.js";
18
- import { n as createCss3dRendererManager, t as Css3dRendererManager } from "./css3d-renderer-manager-B3kGNtcn.js";
19
- import { i as acquireCameraTexture, n as RendererLike, r as XRCameraLike, t as CameraTextureResult } from "./xr-camera-texture-Cva1q3Qj.js";
20
- import { B as setTrackingStore, F as setImageQualityAnalyzer, G as stopCameraFrameCapture, H as startCameraFrameCapture, K as stopDepthCapture, L as setTrackingCallbacks, M as setDepthCaptureCallback, N as setFrameCallback, P as setImageCaptureCallback, R as setTrackingLostCallback, S as initAR, U as startDepthCapture, W as startImageCapture, _ as getDepthSampleCount, b as getScene, c as endARSession, f as getArWorldGroup, g as getCurrentArPose, h as getCameraFrameCount, j as setCameraFrameCallback, p as getCamera, q as stopImageCapture, r as SessionFeatureOptions, t as CameraFrameCaptureConfig, v as getImageCaptureFrameCount, y as getLiveCss3dManager } from "./webxr-session-Do5L6G3B.js";
21
- import { a as EnableGpsArState, i as EnableGpsArResult, n as EnableGpsArController, o as EnableGpsArStatus, r as EnableGpsArDeps, s as createEnableGpsArController, t as EnableGpsArConfig } from "./enable-gps-ar-DkNhFv4Y.js";
22
- import { r as registerFrameUpdate, t as FrameUpdate } from "./frame-loop-CpVjQ1dH.js";
23
- import { c as QrSizeAccumulatorOptions, d as QrSizeStatus, f as createQrSizeAccumulator, i as QrSizeMeasurer, l as QrSizeEstimate, n as QrSizeDepthContext, o as createQrSizeMeasurer, p as estimateQrSizeFromDepth, r as QrSizeMeasurement, s as QrSizeAccumulator, t as ImageSize, u as QrSizeObservation } from "./qr-size-measurer-DQdAsid1.js";
24
- import { t as createQrSizeDepthContext } from "./qr-size-depth-context-CeAG53fy.js";
25
- import { a as createIncrementalQrPlacement, c as deriveSolvedQrPose, i as RawQrObservation, l as solveQrPoseFromObservation, n as DerivedQrPlacement, o as deriveQrPlacement, r as IncrementalQrPlacement, s as deriveQrSizeM, t as DeriveQrPoseDeps } from "./qr-derived-pose-CmxTP2m4.js";
26
- import { n as createQrDebugView, t as QrDebugView } from "./qr-debug-view-Brl73HGO.js";
27
- import { a as createQrDetectionController, i as RawObservationSink, n as QrDetectionControllerDeps, r as QrScanStatus, t as QrDetectionController } from "./qr-detection-controller-CDurHv8E.js";
28
- import { a as QrPoseStability, c as aggregateQrPose, i as DEFAULT_ROTATION_INLIER_ANGLE_DEG, l as averageRotation, n as AverageRotationOptions, o as QrPoseStabilityOptions, r as AverageRotationResult, s as QrPoseStabilityStatus, t as AggregateQrPoseResult, u as evaluateQrPoseStability } from "./qr-pose-aggregation-B7tWJq7j.js";
29
- import { A as QrGpsVoteInput, C as QrLevel, D as Enu, E as parseQrLevel, M as localPlaneToEnu, N as offsetGeo, O as METERS_PER_DEG_LAT, S as FetchQrLevelOptions, T as fetchQrLevel, _ as QrTrackingController, a as checkQrPlausibility, b as createQrTrackingController, c as QrDetectionScheduler, d as createQrDetectionScheduler, f as CameraFrameSource, g as QrSolvePoseInput, h as QrDetectionEvent, i as QrPlausibilityVerdict, j as buildQrGpsVotes, k as QrGeoPose, l as QrDetectionSchedulerConfig, m as CameraFrameSourceConfig, n as QrPlausibility, o as DetectionScheduler, p as CameraFrameSourceCallbacks, r as QrPlausibilityOptions, s as DetectionSchedulerConfig, t as OccupancySurface, u as createDetectionScheduler, v as QrTrackingControllerConfig, w as QrLevelValidationError, x as FetchLike, y as QrTrackingStatus } from "./index-BneSj4_5.js";
30
- import { a as homographyFromCorrespondences, c as rotationToRodrigues, i as PoseCandidate, l as solveLinear, n as Mat3, o as ippePoseCandidates, r as PlanarPnpSquare, s as nearestRotation3x3, t as Homography } from "./planar-pnp-my9bqULS.js";
31
- import { n as OccupancyGridOptions, t as OccupancyGrid } from "./occupancy-grid-DnOc-6PU.js";
32
- import { i as registerXrFrameUpdate, n as XrFrameUpdate, t as XrFrameContext } from "./xr-frame-loop-DIYtRcUa.js";
33
- import { n as createCameraFollower, t as CameraFollower } from "./camera-follower-CqJJ7zRj.js";
34
- import { n as createAlignmentLerper, t as AlignmentLerper } from "./alignment-lerper-Bil6vbVw.js";
35
- import { a as getCameraFollower, c as getReplayState, d as updateOrbitTarget, i as getAlignmentLerper, l as initReplayScene, n as ReplaySceneState, o as getCameraMode, r as disposeReplayScene, t as CameraMode, u as toggleCameraMode } from "./replay-scene-DBlDrV_x.js";
36
- import { t as SCENE_NODE } from "./scene-node-names-BiShOQDB.js";
37
- import { t as WEBXR_TO_NUE } from "./webxr-nue-basis-3nfjDJJp.js";
38
- import { n as XR_ERROR_MESSAGE_UNKNOWN, r as getXrErrorMessage, t as XR_ERROR_MESSAGES } from "./xr-error-handler-CtvHpjfm.js";
39
- import { a as findNearbyGeoAnchor, c as h3CellsMatch, i as clusterCellsByZoom, l as isH3Index, n as KnownGeoAnchor, o as gpsPathToCoverageCells, r as approxDistanceMetres, s as gpsToH3, t as H3_RESOLUTION } from "./h3-proximity-C-j0pw1j.js";
40
- import { a as startAbsoluteOrientationWatch, i as isAbsoluteOrientationAvailable, n as AbsoluteOrientationStatus, o as stopAbsoluteOrientationWatch, r as getLatestAbsoluteOrientation, t as AbsoluteOrientationReading } from "./absolute-orientation-CAEh840t.js";
41
- import { a as getGpsErrorMessage, i as createGpsErrorHandler, n as GPS_ERROR_MESSAGES, r as GPS_ERROR_MESSAGE_UNKNOWN, t as GPS_ERROR_CODES } from "./gps-error-handler-BbPsfw-_.js";
42
- import { a as createLogger, c as setGlobalLogLevel, i as clearLogBuffer, l as subscribeToLogs, n as LogLevel, o as getGlobalLogLevel, r as Logger, s as getLogBuffer, t as LogEntry } from "./logger-CLnPrHiD.js";
43
- import { n as RawGpsSample, r as RefPointMarker, t as GpsCoord } from "./geo-types-3Ip1NzVR.js";
44
- import { n as computeFusedPath, r as fusedGpsFromOdom, t as FusedPathInput } from "./fused-path-v6eOmLl3.js";
45
- import { n as FailureTrackerConfig, r as createFailureTracker, t as FailureTracker } from "./failure-tracker-BO7M7jF_.js";
46
- import { n as mapWithConcurrencyLimit } from "./concurrency-By0oOTZt.js";
47
- import { t as geodesicAngleRad } from "./index-BAPokxMb.js";
48
- import { t as formatFileSize } from "./format-file-size-Dc98ulzB.js";
49
- import { t as listFormatter } from "./list-formatter-KNMS0ay2.js";
50
- import { a as recordWriteFailure, i as recordDepthSample, o as recordingReducer, r as endSession, s as startSession, t as RecordingState } from "./recording-slice-DaxHZvNu.js";
51
- import { a as getAppRootHandle, c as initOpfsStorage, d as resetSessionHandles, i as createSession, l as listSessions, o as getSessionHandle, r as checkStorageQuota, s as getSessionsRootHandle, u as resetOpfsStorage } from "./opfs-storage-3VZh-qH6.js";
52
- import { n as StorageBackend, t as CreateSessionResult } from "./storage-backend-BdVLD0dU.js";
53
- import { A as snapshotPushed, C as createTrackingQualityListenerMiddleware, D as resetTrackingQuality, E as reportUpdated, M as trackingQualityReducer, O as selectRecentAlignments, S as computeTrackingQualityReport, T as matrixDelta, _ as computeConvergence, a as SlamAppStoreOptions, b as computeGpsVsFusedDivergence, g as TrackingQualityState, h as TrackingQualitySliceState, i as SlamAppStore, j as snapshotsTrimmed, k as selectTrackingQuality, m as TrackingQualityReport, n as SlamAppMiddleware, o as createSlamAppStore, p as TrackingQualityOptions, r as SlamAppRootState, s as AlignmentSnapshot, t as SlamAppCombinedState, u as DEFAULT_TRACKING_QUALITY_OPTIONS, v as computeCoverage, x as computeResidualConsensus, y as computeGpsAccuracy } from "./create-slam-app-store-n_VF63D5.js";
54
- import { a as eulerToQuaternion, c as getLastDeviceOrientation, d as updateDeviceOrientation, i as createGpsPositionHandler, l as resetCoordinatorState, n as buildRawGpsPoint, o as extractOdomPosition, r as buildRecordGpsEventPayload, s as extractOdomRotation, t as RecordingCoordinatorConfig } from "./gps-event-coordinator-CjWW636x.js";
55
- import { a as ZipActionEntry, d as loadSessionMetadataFromBlob, f as readZipEntries, i as RecordedAction, l as loadGpsPathFromBlob, n as GpsPathCoord, r as MAX_ACTION_FILE_SIZE, s as loadActionsFromZip } from "./zip-reader-D9iPQwdQ.js";
56
- import { n as replayRecording } from "./recording-replayer-DQKpAGyQ.js";
57
- import { a as ReplayAction, c as computeInterActionDelay, i as ProgressCallback, l as extractActionTimestamp, n as DEFAULT_MAX_DELAY_MS, o as ReplayEngine, r as ErrorCallback, s as ReplayState, t as CompleteCallback } from "./replay-engine-CmKh_4wf.js";
58
- import { n as MapDataInput, r as buildMapData, t as MapData } from "./map-data-B4oEehUh.js";
59
- import { t as SubscribableStore } from "./subscribe-to-selector-B6EUmQ3I.js";
60
- import { n as wireStoreSubscribers, t as StoreSubscriberDeps } from "./store-subscribers-CA6AJH_8.js";
61
- import { c as calcRelativeCoordsInMeters, d as OnboardingGuidance, f as OnboardingPhase, l as recordGpsEvent, m as selectOnboardingGuidance, p as computeOnboardingGuidance, s as add2dImage, u as setZeroPos } from "./index-BODDUTvD.js";
62
- import { t as NullStorageBackend } from "./null-storage-backend-B9rtyDfG.js";
63
- import { t as OpfsStorageBackend } from "./opfs-storage-backend-JJiUJo-3.js";
64
- import { a as formatTimestamp, i as formatFrameFilename, r as formatActionFilename } from "./file-system-utils-DOajnMm-.js";
65
- import { a as downloadZip, c as syncToExternalZip, i as ZipExportResult, n as ZipContributorAddFile, o as exportSessionAsZip, r as ZipExportContributor, s as exportSessionHandleAsZip, t as ExportSessionAsZipOptions } from "./zip-export-ol0S_Ofd.js";
66
- import { n as ArWorldGroupAlignmentOptions, r as enableArWorldGroupAlignment, t as ArWorldGroupAlignmentHandle } from "./ar-world-group-alignment-69fgnB39.js";
67
- import { i as createGpsCompassCubes, n as COMPASS_CUBE_SIZE, r as GpsCompassCubes, t as COMPASS_CUBE_DISTANCE } from "./gps-compass-cubes-DSN87L8p.js";
68
- import { i as isSphereInCameraFrustum, n as isObjectInCameraFrustum, r as isPointInCameraFrustum, t as buildCameraFrustum } from "./frustum-visibility-CeoCZchO.js";
69
- import { n as worldNueToGps, t as nueToArLocal } from "./frame-conversions-DObhj8Wf.js";
70
- import { n as createReticleMesh, r as updateReticle, t as HitMatrix } from "./hit-test-reticle-DV-2TpB9.js";
71
- import { a as GpsAnchorSamplePoint, i as GpsAnchorPhase, n as GpsAnchorMode, o as createGpsAnchor, r as GpsAnchorOptions, t as GpsAnchor } from "./gps-anchor-BeFO2RYa.js";
72
- import { n as GpsEventVisualizer, r as gpsEventVisualizer } from "./gps-event-markers-Cz9RMA2k.js";
73
- import { a as DEFAULT_Z_OFFSET, n as DEFAULT_LEAFLET_MAP_SIZE_PX, o as LeafletMapOverlay, r as DEFAULT_WORLD_SIZE, s as LeafletMapOverlayOptions } from "./leaflet-map-overlay-CmIyiE8n.js";
74
- import { n as clampedAlpha, t as DEFAULT_LERP_RATE } from "./lerp-utils-BLmHhkVe.js";
75
- import { a as addAccuracyCircles, i as AccuracyCircleSample, n as ACCURACY_CIRCLE_STROKE_OPACITY, r as ACCURACY_CIRCLE_WEIGHT, t as ACCURACY_CIRCLE_FILL_OPACITY } from "./accuracy-circles-BtqOP_v1.js";
76
- import { a as MAP_PATH_POLYLINE_OPACITY, c as USER_POSITION_COLOR, i as FUSED_PATH_COLOR, l as drawMapData, n as DrawMapDataOptions, o as MAP_PATH_POLYLINE_WEIGHT, r as DrawnMapData, s as RAW_GPS_COLOR, t as ALIGNMENT_SNAPSHOT_COLOR } from "./map-overlay-draw-ymz1s7fG.js";
77
- import { a as MapOverlayOptions, c as tileXYToLatLon, i as MapOverlay, n as DEFAULT_MAP_SIZE, o as TextureLoaderInterface, r as DEFAULT_ZOOM, s as latLonToTileXY, t as DEFAULT_HEIGHT_OFFSET } from "./map-overlay-Dh2B97MP.js";
78
- import { n as disposeMeshArray, r as disposeObject3D, t as DisposeOptions } from "./three-dispose-Bt1k7WKh.js";
79
- import { t as VIS_COLORS } from "./vis-colors-Obw2pLqT.js";
1
+ import { r as bresenham3d, t as GridCell } from "./bresenham3d-DGc4nIb-.js";
2
+ import { a as computeCaptureSize, i as computeAspectFitSize, n as CameraBlitCaptureConfig, r as DEFAULT_BLIT_CONFIG, t as CameraBlitCapture } from "./camera-blit-capture-BimSdyih.js";
3
+ import { i as isFullySupported, n as CapabilitySupport, r as capabilityMessage, t as CapabilityMessageOptions } from "./capability-checker-BTTpygvZ.js";
4
+ import { a as createCaptureFailureTracker, i as DEFAULT_CAPTURE_TRACKER_CONFIG, n as CaptureFailureTracker, r as CaptureFailureTrackerConfig, t as CAPTURE_FAILURE_WARNING } from "./capture-failure-tracker-_BVfhpxv.js";
5
+ import { a as applyChromiumProjectionLayerWorkaround, i as ChromiumProjectionLayerWorkaroundResult, n as BASELAYER_WINDOW_MIN, o as needsBaseLayerPersistence, r as ChromeVersion, s as parseChromeVersion, t as BASELAYER_WINDOW_MAX } from "./chromium-camera-access-workaround-C6yJLXz9.js";
6
+ import { a as RgbTuple, i as DepthSample, n as ArPoseTuples, o as WebXRQuaternion, r as DepthPoint, s as WebXRVec3, t as ARPose } from "./ar-types-Cc5yvBwn.js";
7
+ import { n as createDepthGridLookup, t as DepthGridLookup } from "./depth-grid-lookup-D5atpNZ3.js";
8
+ import { a as wrapXRDepthInfo, i as DepthSamplerConfig, n as DepthSampler, r as DepthSamplerCallbacks, t as DepthInfo } from "./depth-sampler-CwObAwEA.js";
9
+ import { n as createDepthUnprojector, r as unprojectDepthPoint, t as DepthUnprojector } from "./depth-unprojection-DRdBU90S.js";
10
+ import { a as QualityFilterConfig, c as meanLuminance, i as ImageQualityGate, l as rgbaToGrayscale, n as DEFAULT_SHARPNESS_HISTORY_SIZE, o as QualityRejectReason, r as DEFAULT_SHARPNESS_MIN_SAMPLES, s as QualityVerdict, t as DEFAULT_QUALITY_FILTER, u as sharpnessScore } from "./image-quality-BMx2ko9-.js";
11
+ import { A as validateImageOptions, C as loadRecordingOptions, F as validateRecordingOptions, O as validateDepthOptions, S as cloneRecordingOptions, T as saveRecordingOptions, a as DepthCaptureOptions, b as STORAGE_KEY, c as IMAGE_CONSTRAINTS, i as DEPTH_CONSTRAINTS, l as ImageCaptureOptions, r as DEFAULT_RECORDING_OPTIONS, w as resetRecordingOptions, y as RecordingOptionsInput } from "./recording-options-vASCFzc5.js";
12
+ import { a as startOrientationWatch, i as startGpsWatch, n as RawDeviceOrientation, o as stopGpsWatch, r as requestOrientationPermission, s as stopOrientationWatch, t as GpsPosition } from "./gps-CDKDQokE.js";
13
+ import { a as checkCameraPermission, c as checkOrientationPermission, d as requestCameraPermission, f as requestGeolocationPermission, g as setFileSystemState, h as resetFileSystemState, i as checkAllPermissions, l as checkWebXRSupport, m as requestWebXRWithDepthPermission, n as PermissionStatus, o as checkFileSystemPermission, p as requestOrientationPermission$1, s as checkGeolocationPermission, t as PermissionCheckResult, u as requestAllPermissions } from "./permission-checker-B-VtjnBA.js";
14
+ import { a as ImageCaptureCallbacks, c as MIN_VALID_IMAGE_BYTES, i as FrameQualityVerdict, n as CapturedImage, o as ImageCaptureConfig, r as DEFAULT_CAPTURE_CONFIG, s as ImageCaptureManager, t as CapturedFrame } from "./image-capture-Bp6Pd4Md.js";
15
+ import { a as TrackingSliceState, c as poseLost, d as selectLastRestartedPayload, f as selectLastSensorOrientation, g as trackingReducer, h as selectTrackingPhase, i as TrackingPhase, l as poseReceived, m as selectLostFrameCount, n as PoseReceivedPayload, o as clearLastRestartedPayload, p as selectLastValidPose, s as originReset, u as resetTracking } from "./tracking-slice-DMkHlbny.js";
16
+ import { _ as solveQrPose, a as QrPoseSolution, c as SolveQrPoseInput, d as intrinsicsFromProjection, f as invertPose, g as signedQuadArea, h as reprojectionErrorPx, i as Pose, l as buildObjectPoints, m as qrInCameraFromOpenCv, n as OpenCvPnpResult, o as QuadValidation, p as projectViewPoint, r as Point2, s as SolvePnpSquare, t as CameraIntrinsics, u as composePose, v as transformPoint, y as validateQuad } from "./qr-pose-y3vaEd6x.js";
17
+ import { a as QrFrontEnd, c as createBarcodeDetectorFrontEnd, i as QrDetection, n as BarcodeDetectorLike, o as RgbaImage, r as DetectedBarcodeLike, s as ToImageBitmapSource, t as BarcodeDetectorFrontEnd } from "./qr-frontend-BPURlh3S.js";
18
+ import { n as createCss3dRendererManager, t as Css3dRendererManager } from "./css3d-renderer-manager-CPpVtvgs.js";
19
+ import { i as acquireCameraTexture, n as RendererLike, r as XRCameraLike, t as CameraTextureResult } from "./xr-camera-texture-q0eIDSRg.js";
20
+ import { $ as stopImageCapture, B as setImageQualityAnalyzer, C as getImageCaptureFrameCount, D as initAR, H as setSessionEndCallback, I as setCameraFrameCallback, J as startCameraFrameCapture, K as setTrackingStore, L as setDepthCaptureCallback, Q as stopDepthCapture, R as setFrameCallback, S as getDepthSampleCount, T as getScene, U as setTrackingCallbacks, W as setTrackingLostCallback, X as startImageCapture, Y as startDepthCapture, Z as stopCameraFrameCapture, _ as getCamera, b as getCurrentArPose, f as endARSession, g as getArWorldGroup, i as CameraFrameCaptureConfig, o as SessionEndInfo, s as SessionFeatureOptions, w as getLiveCss3dManager, x as getDepthInfoFromFrame, y as getCameraFrameCount, z as setImageCaptureCallback } from "./webxr-session-cRG2SYAQ.js";
21
+ import { a as EnableGpsArState, i as EnableGpsArResult, n as EnableGpsArController, o as EnableGpsArStatus, r as EnableGpsArDeps, s as createEnableGpsArController, t as EnableGpsArConfig } from "./enable-gps-ar-DvGzBOrp.js";
22
+ import { r as registerFrameUpdate, t as FrameUpdate } from "./frame-loop-7GBMBu68.js";
23
+ import { c as QrSizeAccumulatorOptions, d as QrSizeStatus, f as createQrSizeAccumulator, i as QrSizeMeasurer, l as QrSizeEstimate, n as QrSizeDepthContext, o as createQrSizeMeasurer, p as estimateQrSizeFromDepth, r as QrSizeMeasurement, s as QrSizeAccumulator, t as ImageSize, u as QrSizeObservation } from "./qr-size-measurer-DxiMqRUw.js";
24
+ import { t as createQrSizeDepthContext } from "./qr-size-depth-context-apAOmbrZ.js";
25
+ import { a as createIncrementalQrPlacement, c as deriveSolvedQrPose, i as RawQrObservation, l as solveQrPoseFromObservation, n as DerivedQrPlacement, o as deriveQrPlacement, r as IncrementalQrPlacement, s as deriveQrSizeM, t as DeriveQrPoseDeps } from "./qr-derived-pose-BwNWn8oV.js";
26
+ import { n as createQrDebugView, t as QrDebugView } from "./qr-debug-view-BJooqbiP.js";
27
+ import { a as createQrDetectionController, i as RawObservationSink, n as QrDetectionControllerDeps, r as QrScanStatus, t as QrDetectionController } from "./qr-detection-controller-Bo4XfQTP.js";
28
+ import { a as QrPoseStability, c as aggregateQrPose, i as DEFAULT_ROTATION_INLIER_ANGLE_DEG, l as averageRotation, n as AverageRotationOptions, o as QrPoseStabilityOptions, r as AverageRotationResult, s as QrPoseStabilityStatus, t as AggregateQrPoseResult, u as evaluateQrPoseStability } from "./qr-pose-aggregation-CypnmjA-.js";
29
+ import { A as QrGpsVoteInput, C as QrLevel, D as Enu, E as parseQrLevel, M as localPlaneToEnu, N as offsetGeo, O as METERS_PER_DEG_LAT, S as FetchQrLevelOptions, T as fetchQrLevel, _ as QrTrackingController, a as checkQrPlausibility, b as createQrTrackingController, c as QrDetectionScheduler, d as createQrDetectionScheduler, f as CameraFrameSource, g as QrSolvePoseInput, h as QrDetectionEvent, i as QrPlausibilityVerdict, j as buildQrGpsVotes, k as QrGeoPose, l as QrDetectionSchedulerConfig, m as CameraFrameSourceConfig, n as QrPlausibility, o as DetectionScheduler, p as CameraFrameSourceCallbacks, r as QrPlausibilityOptions, s as DetectionSchedulerConfig, t as OccupancySurface, u as createDetectionScheduler, v as QrTrackingControllerConfig, w as QrLevelValidationError, x as FetchLike, y as QrTrackingStatus } from "./index-cCQWuYqy.js";
30
+ import { a as homographyFromCorrespondences, c as rotationToRodrigues, i as PoseCandidate, l as solveLinear, n as Mat3, o as ippePoseCandidates, r as PlanarPnpSquare, s as nearestRotation3x3, t as Homography } from "./planar-pnp-D7bc_rLX.js";
31
+ import { n as OccupancyGridOptions, t as OccupancyGrid } from "./occupancy-grid-BV7RhB7I.js";
32
+ import { a as meshOccupiedCells, i as OccupancyMeshResult, r as MeshOccupiedCellsOptions, t as Aabb } from "./occupancy-mesher-C2ecWhNp.js";
33
+ import { i as registerXrFrameUpdate, n as XrFrameUpdate, t as XrFrameContext } from "./xr-frame-loop-DX3JPpAU.js";
34
+ import { n as createCameraFollower, t as CameraFollower } from "./camera-follower-DfBm2J5i.js";
35
+ import { n as createAlignmentLerper, t as AlignmentLerper } from "./alignment-lerper-gD70k7Fq.js";
36
+ import { a as getCameraFollower, c as getReplayState, d as updateOrbitTarget, i as getAlignmentLerper, l as initReplayScene, n as ReplaySceneState, o as getCameraMode, r as disposeReplayScene, t as CameraMode, u as toggleCameraMode } from "./replay-scene-zJ8SFDjE.js";
37
+ import { t as SCENE_NODE } from "./scene-node-names-CGb-ylBd.js";
38
+ import { t as WEBXR_TO_NUE } from "./webxr-nue-basis-CaCnYxuq.js";
39
+ import { n as XR_ERROR_MESSAGE_UNKNOWN, r as getXrErrorMessage, t as XR_ERROR_MESSAGES } from "./xr-error-handler-uVGDu9IX.js";
40
+ import { a as findNearbyGeoAnchor, c as h3CellsMatch, i as clusterCellsByZoom, l as isH3Index, n as KnownGeoAnchor, o as gpsPathToCoverageCells, r as approxDistanceMetres, s as gpsToH3, t as H3_RESOLUTION } from "./h3-proximity-D0GTHQmr.js";
41
+ import { a as startAbsoluteOrientationWatch, i as isAbsoluteOrientationAvailable, n as AbsoluteOrientationStatus, o as stopAbsoluteOrientationWatch, r as getLatestAbsoluteOrientation, t as AbsoluteOrientationReading } from "./absolute-orientation-BAxc15J6.js";
42
+ import { a as getGpsErrorMessage, i as createGpsErrorHandler, n as GPS_ERROR_MESSAGES, r as GPS_ERROR_MESSAGE_UNKNOWN, t as GPS_ERROR_CODES } from "./gps-error-handler-C34GQuTu.js";
43
+ import { a as createLogger, c as setGlobalLogLevel, i as clearLogBuffer, l as subscribeToLogs, n as LogLevel, o as getGlobalLogLevel, r as Logger, s as getLogBuffer, t as LogEntry } from "./logger-CqTd5Kpk.js";
44
+ import { n as RawGpsSample, r as RefPointMarker, t as GpsCoord } from "./geo-types-DrGVu8nS.js";
45
+ import { n as computeFusedPath, r as fusedGpsFromOdom, t as FusedPathInput } from "./fused-path-C5pp0PJU.js";
46
+ import { n as FailureTrackerConfig, r as createFailureTracker, t as FailureTracker } from "./failure-tracker-CeKf5HIc.js";
47
+ import { n as mapWithConcurrencyLimit } from "./concurrency-DPeGBH0X.js";
48
+ import { t as geodesicAngleRad } from "./index-D74JTX4I.js";
49
+ import { t as formatFileSize } from "./format-file-size-DxN-EBLc.js";
50
+ import { t as listFormatter } from "./list-formatter-DLFDnS70.js";
51
+ import { a as recordWriteFailure, i as recordDepthSample, o as recordingReducer, r as endSession, s as startSession, t as RecordingState } from "./recording-slice-DTUtSVgd.js";
52
+ import { a as getAppRootHandle, c as initOpfsStorage, d as resetSessionHandles, i as createSession, l as listSessions, o as getSessionHandle, r as checkStorageQuota, s as getSessionsRootHandle, u as resetOpfsStorage } from "./opfs-storage-CTkxvxN4.js";
53
+ import { n as StorageBackend, t as CreateSessionResult } from "./storage-backend-sEtmM4yW.js";
54
+ import { A as snapshotPushed, C as createTrackingQualityListenerMiddleware, D as resetTrackingQuality, E as reportUpdated, M as trackingQualityReducer, O as selectRecentAlignments, S as computeTrackingQualityReport, T as matrixDelta, _ as computeConvergence, a as SlamAppStoreOptions, b as computeGpsVsFusedDivergence, g as TrackingQualityState, h as TrackingQualitySliceState, i as SlamAppStore, j as snapshotsTrimmed, k as selectTrackingQuality, m as TrackingQualityReport, n as SlamAppMiddleware, o as createSlamAppStore, p as TrackingQualityOptions, r as SlamAppRootState, s as AlignmentSnapshot, t as SlamAppCombinedState, u as DEFAULT_TRACKING_QUALITY_OPTIONS, v as computeCoverage, x as computeResidualConsensus, y as computeGpsAccuracy } from "./create-slam-app-store-D3nzh9Wb.js";
55
+ import { a as eulerToQuaternion, c as getLastDeviceOrientation, d as updateDeviceOrientation, i as createGpsPositionHandler, l as resetCoordinatorState, n as buildRawGpsPoint, o as extractOdomPosition, r as buildRecordGpsEventPayload, s as extractOdomRotation, t as RecordingCoordinatorConfig } from "./gps-event-coordinator-CHtIkhb7.js";
56
+ import { a as ZipActionEntry, d as loadSessionMetadataFromBlob, f as readZipEntries, i as RecordedAction, l as loadGpsPathFromBlob, n as GpsPathCoord, r as MAX_ACTION_FILE_SIZE, s as loadActionsFromZip } from "./zip-reader-CvruaGvD.js";
57
+ import { n as replayRecording } from "./recording-replayer-D0V9WkmY.js";
58
+ import { a as ReplayAction, c as computeInterActionDelay, i as ProgressCallback, l as extractActionTimestamp, n as DEFAULT_MAX_DELAY_MS, o as ReplayEngine, r as ErrorCallback, s as ReplayState, t as CompleteCallback } from "./replay-engine-xdrUgWJi.js";
59
+ import { n as MapDataInput, r as buildMapData, t as MapData } from "./map-data-PNfGKGWx.js";
60
+ import { t as SubscribableStore } from "./subscribe-to-selector-B9ylM5Oh.js";
61
+ import { n as wireStoreSubscribers, t as StoreSubscriberDeps } from "./store-subscribers-DScA7tdT.js";
62
+ import { c as calcRelativeCoordsInMeters, d as OnboardingGuidance, f as OnboardingPhase, l as recordGpsEvent, m as selectOnboardingGuidance, p as computeOnboardingGuidance, s as add2dImage, u as setZeroPos } from "./index-DlsOo2IB.js";
63
+ import { t as NullStorageBackend } from "./null-storage-backend-B1-jlpin.js";
64
+ import { t as OpfsStorageBackend } from "./opfs-storage-backend-D6Z03fML.js";
65
+ import { a as formatTimestamp, i as formatFrameFilename, r as formatActionFilename } from "./file-system-utils-DueXHxo9.js";
66
+ import { a as downloadZip, c as syncToExternalZip, i as ZipExportResult, n as ZipContributorAddFile, o as exportSessionAsZip, r as ZipExportContributor, s as exportSessionHandleAsZip, t as ExportSessionAsZipOptions } from "./zip-export-CtiUnAlJ.js";
67
+ import { n as ArWorldGroupAlignmentOptions, r as enableArWorldGroupAlignment, t as ArWorldGroupAlignmentHandle } from "./ar-world-group-alignment-BlvGcIAk.js";
68
+ import { i as createGpsCompassCubes, n as COMPASS_CUBE_SIZE, r as GpsCompassCubes, t as COMPASS_CUBE_DISTANCE } from "./gps-compass-cubes-1mooS3BS.js";
69
+ import { i as isSphereInCameraFrustum, n as isObjectInCameraFrustum, r as isPointInCameraFrustum, t as buildCameraFrustum } from "./frustum-visibility-CokkgS_i.js";
70
+ import { n as worldNueToGps, t as nueToArLocal } from "./frame-conversions-C4bnNOEY.js";
71
+ import { n as createReticleMesh, r as updateReticle, t as HitMatrix } from "./hit-test-reticle-CaQbrhbk.js";
72
+ import { a as GpsAnchorSamplePoint, i as GpsAnchorPhase, n as GpsAnchorMode, o as createGpsAnchor, r as GpsAnchorOptions, t as GpsAnchor } from "./gps-anchor-BjECcYnD.js";
73
+ import { n as GpsEventVisualizer, r as gpsEventVisualizer } from "./gps-event-markers-Di2nBzx-.js";
74
+ import { n as OcclusionMesh, r as OcclusionMeshOptions } from "./occlusion-mesh-b28lRJ6S.js";
75
+ import { a as DEFAULT_Z_OFFSET, n as DEFAULT_LEAFLET_MAP_SIZE_PX, o as LeafletMapOverlay, r as DEFAULT_WORLD_SIZE, s as LeafletMapOverlayOptions } from "./leaflet-map-overlay-BOZFW5kT.js";
76
+ import { n as clampedAlpha, t as DEFAULT_LERP_RATE } from "./lerp-utils-Qs8OhumS.js";
77
+ import { a as addAccuracyCircles, i as AccuracyCircleSample, n as ACCURACY_CIRCLE_STROKE_OPACITY, r as ACCURACY_CIRCLE_WEIGHT, t as ACCURACY_CIRCLE_FILL_OPACITY } from "./accuracy-circles-DkWBkF5g.js";
78
+ import { a as MAP_PATH_POLYLINE_OPACITY, c as USER_POSITION_COLOR, i as FUSED_PATH_COLOR, l as drawMapData, n as DrawMapDataOptions, o as MAP_PATH_POLYLINE_WEIGHT, r as DrawnMapData, s as RAW_GPS_COLOR, t as ALIGNMENT_SNAPSHOT_COLOR } from "./map-overlay-draw-DiroaJed.js";
79
+ import { a as MapOverlayOptions, c as tileXYToLatLon, i as MapOverlay, n as DEFAULT_MAP_SIZE, o as TextureLoaderInterface, r as DEFAULT_ZOOM, s as latLonToTileXY, t as DEFAULT_HEIGHT_OFFSET } from "./map-overlay-BCQgvIgU.js";
80
+ import { n as disposeMeshArray, r as disposeObject3D, t as DisposeOptions } from "./three-dispose-BMOAmPhb.js";
81
+ import { t as VIS_COLORS } from "./vis-colors-C7HI0u9_.js";
80
82
  import { COMMUNITY_LICENSE_KEY } from "./licensing/index.js";
81
- export { ACCURACY_CIRCLE_FILL_OPACITY, ACCURACY_CIRCLE_STROKE_OPACITY, ACCURACY_CIRCLE_WEIGHT, ALIGNMENT_SNAPSHOT_COLOR, ARPose, AbsoluteOrientationReading, AbsoluteOrientationStatus, AccuracyCircleSample, AggregateQrPoseResult, AlignmentLerper, type AlignmentSnapshot, ArPoseTuples, ArWorldGroupAlignmentHandle, ArWorldGroupAlignmentOptions, AverageRotationOptions, AverageRotationResult, BASELAYER_WINDOW_MAX, BASELAYER_WINDOW_MIN, BarcodeDetectorFrontEnd, BarcodeDetectorLike, CAPTURE_FAILURE_WARNING, COMMUNITY_LICENSE_KEY, COMPASS_CUBE_DISTANCE, COMPASS_CUBE_SIZE, CameraBlitCapture, CameraBlitCaptureConfig, CameraFollower, CameraFrameCaptureConfig, CameraFrameSource, CameraFrameSourceCallbacks, CameraFrameSourceConfig, CameraIntrinsics, CameraMode, CameraTextureResult, CapabilityMessageOptions, CapabilitySupport, CaptureFailureTracker, CaptureFailureTrackerConfig, CapturedFrame, CapturedImage, ChromeVersion, ChromiumProjectionLayerWorkaroundResult, type CompleteCallback, type CreateSessionResult, Css3dRendererManager, DEFAULT_BLIT_CONFIG, DEFAULT_CAPTURE_CONFIG, DEFAULT_CAPTURE_TRACKER_CONFIG, DEFAULT_HEIGHT_OFFSET, DEFAULT_LEAFLET_MAP_SIZE_PX, DEFAULT_LERP_RATE, DEFAULT_MAP_SIZE, DEFAULT_MAX_DELAY_MS, DEFAULT_QUALITY_FILTER, DEFAULT_RECORDING_OPTIONS, DEFAULT_ROTATION_INLIER_ANGLE_DEG, DEFAULT_SHARPNESS_HISTORY_SIZE, DEFAULT_SHARPNESS_MIN_SAMPLES, DEFAULT_TRACKING_QUALITY_OPTIONS, DEFAULT_WORLD_SIZE, DEFAULT_ZOOM, DEFAULT_Z_OFFSET, DEPTH_CONSTRAINTS, type DepthCaptureOptions, DepthGridLookup, DepthInfo, DepthPoint, DepthSample, DepthSampler, DepthSamplerCallbacks, DepthSamplerConfig, DepthUnprojector, DeriveQrPoseDeps, DerivedQrPlacement, DetectedBarcodeLike, DetectionScheduler, DetectionSchedulerConfig, DisposeOptions, DrawMapDataOptions, DrawnMapData, EnableGpsArConfig, EnableGpsArController, EnableGpsArDeps, EnableGpsArResult, EnableGpsArState, EnableGpsArStatus, Enu, type ErrorCallback, type ExportSessionAsZipOptions, FUSED_PATH_COLOR, FailureTracker, FailureTrackerConfig, FetchLike, FetchQrLevelOptions, FrameQualityVerdict, FrameUpdate, FusedPathInput, GPS_ERROR_CODES, GPS_ERROR_MESSAGES, GPS_ERROR_MESSAGE_UNKNOWN, GpsAnchor, GpsAnchorMode, GpsAnchorOptions, GpsAnchorPhase, GpsAnchorSamplePoint, GpsCompassCubes, GpsCoord, GpsEventVisualizer, type GpsPathCoord, GpsPosition, GridCell, H3_RESOLUTION, HitMatrix, Homography, IMAGE_CONSTRAINTS, ImageCaptureCallbacks, ImageCaptureConfig, ImageCaptureManager, type ImageCaptureOptions, ImageQualityGate, ImageSize, IncrementalQrPlacement, KnownGeoAnchor, LeafletMapOverlay, LeafletMapOverlayOptions, LogEntry, LogLevel, Logger, MAP_PATH_POLYLINE_OPACITY, MAP_PATH_POLYLINE_WEIGHT, MAX_ACTION_FILE_SIZE, METERS_PER_DEG_LAT, MIN_VALID_IMAGE_BYTES, MapData, MapDataInput, MapOverlay, MapOverlayOptions, Mat3, NullStorageBackend, OccupancyGrid, OccupancyGridOptions, OccupancySurface, type OnboardingGuidance, type OnboardingPhase, OpenCvPnpResult, OpfsStorageBackend, PermissionCheckResult, PermissionStatus, PlanarPnpSquare, Point2, Pose, PoseCandidate, type PoseReceivedPayload, type ProgressCallback, QrDebugView, QrDetection, QrDetectionController, QrDetectionControllerDeps, QrDetectionEvent, QrDetectionScheduler, QrDetectionSchedulerConfig, QrFrontEnd, QrGeoPose, QrGpsVoteInput, QrLevel, QrLevelValidationError, QrPlausibility, QrPlausibilityOptions, QrPlausibilityVerdict, QrPoseSolution, QrPoseStability, QrPoseStabilityOptions, QrPoseStabilityStatus, QrScanStatus, QrSizeAccumulator, QrSizeAccumulatorOptions, QrSizeDepthContext, QrSizeEstimate, QrSizeMeasurement, QrSizeMeasurer, QrSizeObservation, QrSizeStatus, QrSolvePoseInput, QrTrackingController, QrTrackingControllerConfig, QrTrackingStatus, QuadValidation, QualityFilterConfig, QualityRejectReason, QualityVerdict, RAW_GPS_COLOR, RawDeviceOrientation, RawGpsSample, RawObservationSink, RawQrObservation, type RecordedAction, type RecordingCoordinatorConfig, type RecordingOptionsInput, type RecordingState, RefPointMarker, RendererLike, type ReplayAction, ReplayEngine, ReplaySceneState, type ReplayState, RgbTuple, RgbaImage, SCENE_NODE, STORAGE_KEY, SessionFeatureOptions, type SlamAppCombinedState, type SlamAppMiddleware, type SlamAppRootState, type SlamAppStore, type SlamAppStoreOptions, SolvePnpSquare, SolveQrPoseInput, type StorageBackend, type StoreSubscriberDeps, type SubscribableStore, TextureLoaderInterface, ToImageBitmapSource, type TrackingPhase, type TrackingQualityOptions, type TrackingQualityReport, type TrackingQualitySliceState, type TrackingQualityState, type TrackingSliceState, USER_POSITION_COLOR, VIS_COLORS, WEBXR_TO_NUE, WebXRQuaternion, WebXRVec3, XRCameraLike, XR_ERROR_MESSAGES, XR_ERROR_MESSAGE_UNKNOWN, XrFrameContext, XrFrameUpdate, type ZipActionEntry, type ZipContributorAddFile, type ZipExportContributor, type ZipExportResult, acquireCameraTexture, add2dImage, addAccuracyCircles, aggregateQrPose, applyChromiumProjectionLayerWorkaround, approxDistanceMetres, averageRotation, bresenham3d, buildCameraFrustum, buildMapData, buildObjectPoints, buildQrGpsVotes, buildRawGpsPoint, buildRecordGpsEventPayload, calcRelativeCoordsInMeters, capabilityMessage, checkAllPermissions, checkCameraPermission, checkFileSystemPermission, checkGeolocationPermission, checkOrientationPermission, checkQrPlausibility, checkStorageQuota, checkWebXRSupport, clampedAlpha, clearLastRestartedPayload, clearLogBuffer, cloneRecordingOptions, clusterCellsByZoom, composePose, computeAspectFitSize, computeCaptureSize, computeConvergence, computeCoverage, computeFusedPath, computeGpsAccuracy, computeGpsVsFusedDivergence, computeInterActionDelay, computeOnboardingGuidance, computeResidualConsensus, computeTrackingQualityReport, createAlignmentLerper, createBarcodeDetectorFrontEnd, createCameraFollower, createCaptureFailureTracker, createCss3dRendererManager, createDepthGridLookup, createDepthUnprojector, createDetectionScheduler, createEnableGpsArController, createFailureTracker, createGpsAnchor, createGpsCompassCubes, createGpsErrorHandler, createGpsPositionHandler, createIncrementalQrPlacement, createLogger, createQrDebugView, createQrDetectionController, createQrDetectionScheduler, createQrSizeAccumulator, createQrSizeDepthContext, createQrSizeMeasurer, createQrTrackingController, createReticleMesh, createSession, createSlamAppStore, createTrackingQualityListenerMiddleware, deriveQrPlacement, deriveQrSizeM, deriveSolvedQrPose, disposeMeshArray, disposeObject3D, disposeReplayScene, downloadZip, drawMapData, enableArWorldGroupAlignment, endARSession, endSession, estimateQrSizeFromDepth, eulerToQuaternion, evaluateQrPoseStability, exportSessionAsZip, exportSessionHandleAsZip, extractActionTimestamp, extractOdomPosition, extractOdomRotation, fetchQrLevel, findNearbyGeoAnchor, formatActionFilename, formatFileSize, formatFrameFilename, formatTimestamp, fusedGpsFromOdom, geodesicAngleRad, getAlignmentLerper, getAppRootHandle, getArWorldGroup, getCamera, getCameraFollower, getCameraFrameCount, getCameraMode, getCurrentArPose, getDepthSampleCount, getGlobalLogLevel, getGpsErrorMessage, getImageCaptureFrameCount, getLastDeviceOrientation, getLatestAbsoluteOrientation, getLiveCss3dManager, getLogBuffer, getReplayState, getScene, getSessionHandle, getSessionsRootHandle, getXrErrorMessage, gpsEventVisualizer, gpsPathToCoverageCells, gpsToH3, h3CellsMatch, homographyFromCorrespondences, initAR, initOpfsStorage, initReplayScene, intrinsicsFromProjection, invertPose, ippePoseCandidates, isAbsoluteOrientationAvailable, isFullySupported, isH3Index, isObjectInCameraFrustum, isPointInCameraFrustum, isSphereInCameraFrustum, latLonToTileXY, listFormatter, listSessions, loadActionsFromZip, loadGpsPathFromBlob, loadRecordingOptions, loadSessionMetadataFromBlob, localPlaneToEnu, mapWithConcurrencyLimit, matrixDelta, meanLuminance, nearestRotation3x3, needsBaseLayerPersistence, nueToArLocal, offsetGeo, originReset, parseChromeVersion, parseQrLevel, poseLost, poseReceived, projectViewPoint, qrInCameraFromOpenCv, readZipEntries, recordDepthSample, recordGpsEvent, recordWriteFailure, recordingReducer, registerFrameUpdate, registerXrFrameUpdate, replayRecording, reportUpdated, reprojectionErrorPx, requestAllPermissions, requestCameraPermission, requestOrientationPermission as requestDeviceOrientationPermission, requestGeolocationPermission, requestOrientationPermission$1 as requestOrientationPermission, requestWebXRWithDepthPermission, resetCoordinatorState, resetFileSystemState, resetOpfsStorage, resetRecordingOptions, resetSessionHandles, resetTracking, resetTrackingQuality, rgbaToGrayscale, rotationToRodrigues, saveRecordingOptions, selectLastRestartedPayload, selectLastSensorOrientation, selectLastValidPose, selectLostFrameCount, selectOnboardingGuidance, selectRecentAlignments, selectTrackingPhase, selectTrackingQuality, setCameraFrameCallback, setDepthCaptureCallback, setFileSystemState, setFrameCallback, setGlobalLogLevel, setImageCaptureCallback, setImageQualityAnalyzer, setTrackingCallbacks, setTrackingLostCallback, setTrackingStore, setZeroPos, sharpnessScore, signedQuadArea, snapshotPushed, snapshotsTrimmed, solveLinear, solveQrPose, solveQrPoseFromObservation, startAbsoluteOrientationWatch, startCameraFrameCapture, startDepthCapture, startGpsWatch, startImageCapture, startOrientationWatch, startSession, stopAbsoluteOrientationWatch, stopCameraFrameCapture, stopDepthCapture, stopGpsWatch, stopImageCapture, stopOrientationWatch, subscribeToLogs, syncToExternalZip, tileXYToLatLon, toggleCameraMode, trackingQualityReducer, trackingReducer, transformPoint, unprojectDepthPoint, updateDeviceOrientation, updateOrbitTarget, updateReticle, validateDepthOptions, validateImageOptions, validateQuad, validateRecordingOptions, wireStoreSubscribers, worldNueToGps, wrapXRDepthInfo };
83
+ export { ACCURACY_CIRCLE_FILL_OPACITY, ACCURACY_CIRCLE_STROKE_OPACITY, ACCURACY_CIRCLE_WEIGHT, ALIGNMENT_SNAPSHOT_COLOR, ARPose, Aabb, AbsoluteOrientationReading, AbsoluteOrientationStatus, AccuracyCircleSample, AggregateQrPoseResult, AlignmentLerper, type AlignmentSnapshot, ArPoseTuples, ArWorldGroupAlignmentHandle, ArWorldGroupAlignmentOptions, AverageRotationOptions, AverageRotationResult, BASELAYER_WINDOW_MAX, BASELAYER_WINDOW_MIN, BarcodeDetectorFrontEnd, BarcodeDetectorLike, CAPTURE_FAILURE_WARNING, COMMUNITY_LICENSE_KEY, COMPASS_CUBE_DISTANCE, COMPASS_CUBE_SIZE, CameraBlitCapture, CameraBlitCaptureConfig, CameraFollower, CameraFrameCaptureConfig, CameraFrameSource, CameraFrameSourceCallbacks, CameraFrameSourceConfig, CameraIntrinsics, CameraMode, CameraTextureResult, CapabilityMessageOptions, CapabilitySupport, CaptureFailureTracker, CaptureFailureTrackerConfig, CapturedFrame, CapturedImage, ChromeVersion, ChromiumProjectionLayerWorkaroundResult, type CompleteCallback, type CreateSessionResult, Css3dRendererManager, DEFAULT_BLIT_CONFIG, DEFAULT_CAPTURE_CONFIG, DEFAULT_CAPTURE_TRACKER_CONFIG, DEFAULT_HEIGHT_OFFSET, DEFAULT_LEAFLET_MAP_SIZE_PX, DEFAULT_LERP_RATE, DEFAULT_MAP_SIZE, DEFAULT_MAX_DELAY_MS, DEFAULT_QUALITY_FILTER, DEFAULT_RECORDING_OPTIONS, DEFAULT_ROTATION_INLIER_ANGLE_DEG, DEFAULT_SHARPNESS_HISTORY_SIZE, DEFAULT_SHARPNESS_MIN_SAMPLES, DEFAULT_TRACKING_QUALITY_OPTIONS, DEFAULT_WORLD_SIZE, DEFAULT_ZOOM, DEFAULT_Z_OFFSET, DEPTH_CONSTRAINTS, type DepthCaptureOptions, DepthGridLookup, DepthInfo, DepthPoint, DepthSample, DepthSampler, DepthSamplerCallbacks, DepthSamplerConfig, DepthUnprojector, DeriveQrPoseDeps, DerivedQrPlacement, DetectedBarcodeLike, DetectionScheduler, DetectionSchedulerConfig, DisposeOptions, DrawMapDataOptions, DrawnMapData, EnableGpsArConfig, EnableGpsArController, EnableGpsArDeps, EnableGpsArResult, EnableGpsArState, EnableGpsArStatus, Enu, type ErrorCallback, type ExportSessionAsZipOptions, FUSED_PATH_COLOR, FailureTracker, FailureTrackerConfig, FetchLike, FetchQrLevelOptions, FrameQualityVerdict, FrameUpdate, FusedPathInput, GPS_ERROR_CODES, GPS_ERROR_MESSAGES, GPS_ERROR_MESSAGE_UNKNOWN, GpsAnchor, GpsAnchorMode, GpsAnchorOptions, GpsAnchorPhase, GpsAnchorSamplePoint, GpsCompassCubes, GpsCoord, GpsEventVisualizer, type GpsPathCoord, GpsPosition, GridCell, H3_RESOLUTION, HitMatrix, Homography, IMAGE_CONSTRAINTS, ImageCaptureCallbacks, ImageCaptureConfig, ImageCaptureManager, type ImageCaptureOptions, ImageQualityGate, ImageSize, IncrementalQrPlacement, KnownGeoAnchor, LeafletMapOverlay, LeafletMapOverlayOptions, LogEntry, LogLevel, Logger, MAP_PATH_POLYLINE_OPACITY, MAP_PATH_POLYLINE_WEIGHT, MAX_ACTION_FILE_SIZE, METERS_PER_DEG_LAT, MIN_VALID_IMAGE_BYTES, MapData, MapDataInput, MapOverlay, MapOverlayOptions, Mat3, MeshOccupiedCellsOptions, NullStorageBackend, OcclusionMesh, OcclusionMeshOptions, OccupancyGrid, OccupancyGridOptions, OccupancyMeshResult, OccupancySurface, type OnboardingGuidance, type OnboardingPhase, OpenCvPnpResult, OpfsStorageBackend, PermissionCheckResult, PermissionStatus, PlanarPnpSquare, Point2, Pose, PoseCandidate, type PoseReceivedPayload, type ProgressCallback, QrDebugView, QrDetection, QrDetectionController, QrDetectionControllerDeps, QrDetectionEvent, QrDetectionScheduler, QrDetectionSchedulerConfig, QrFrontEnd, QrGeoPose, QrGpsVoteInput, QrLevel, QrLevelValidationError, QrPlausibility, QrPlausibilityOptions, QrPlausibilityVerdict, QrPoseSolution, QrPoseStability, QrPoseStabilityOptions, QrPoseStabilityStatus, QrScanStatus, QrSizeAccumulator, QrSizeAccumulatorOptions, QrSizeDepthContext, QrSizeEstimate, QrSizeMeasurement, QrSizeMeasurer, QrSizeObservation, QrSizeStatus, QrSolvePoseInput, QrTrackingController, QrTrackingControllerConfig, QrTrackingStatus, QuadValidation, QualityFilterConfig, QualityRejectReason, QualityVerdict, RAW_GPS_COLOR, RawDeviceOrientation, RawGpsSample, RawObservationSink, RawQrObservation, type RecordedAction, type RecordingCoordinatorConfig, type RecordingOptionsInput, type RecordingState, RefPointMarker, RendererLike, type ReplayAction, ReplayEngine, ReplaySceneState, type ReplayState, RgbTuple, RgbaImage, SCENE_NODE, STORAGE_KEY, SessionEndInfo, SessionFeatureOptions, type SlamAppCombinedState, type SlamAppMiddleware, type SlamAppRootState, type SlamAppStore, type SlamAppStoreOptions, SolvePnpSquare, SolveQrPoseInput, type StorageBackend, type StoreSubscriberDeps, type SubscribableStore, TextureLoaderInterface, ToImageBitmapSource, type TrackingPhase, type TrackingQualityOptions, type TrackingQualityReport, type TrackingQualitySliceState, type TrackingQualityState, type TrackingSliceState, USER_POSITION_COLOR, VIS_COLORS, WEBXR_TO_NUE, WebXRQuaternion, WebXRVec3, XRCameraLike, XR_ERROR_MESSAGES, XR_ERROR_MESSAGE_UNKNOWN, XrFrameContext, XrFrameUpdate, type ZipActionEntry, type ZipContributorAddFile, type ZipExportContributor, type ZipExportResult, acquireCameraTexture, add2dImage, addAccuracyCircles, aggregateQrPose, applyChromiumProjectionLayerWorkaround, approxDistanceMetres, averageRotation, bresenham3d, buildCameraFrustum, buildMapData, buildObjectPoints, buildQrGpsVotes, buildRawGpsPoint, buildRecordGpsEventPayload, calcRelativeCoordsInMeters, capabilityMessage, checkAllPermissions, checkCameraPermission, checkFileSystemPermission, checkGeolocationPermission, checkOrientationPermission, checkQrPlausibility, checkStorageQuota, checkWebXRSupport, clampedAlpha, clearLastRestartedPayload, clearLogBuffer, cloneRecordingOptions, clusterCellsByZoom, composePose, computeAspectFitSize, computeCaptureSize, computeConvergence, computeCoverage, computeFusedPath, computeGpsAccuracy, computeGpsVsFusedDivergence, computeInterActionDelay, computeOnboardingGuidance, computeResidualConsensus, computeTrackingQualityReport, createAlignmentLerper, createBarcodeDetectorFrontEnd, createCameraFollower, createCaptureFailureTracker, createCss3dRendererManager, createDepthGridLookup, createDepthUnprojector, createDetectionScheduler, createEnableGpsArController, createFailureTracker, createGpsAnchor, createGpsCompassCubes, createGpsErrorHandler, createGpsPositionHandler, createIncrementalQrPlacement, createLogger, createQrDebugView, createQrDetectionController, createQrDetectionScheduler, createQrSizeAccumulator, createQrSizeDepthContext, createQrSizeMeasurer, createQrTrackingController, createReticleMesh, createSession, createSlamAppStore, createTrackingQualityListenerMiddleware, deriveQrPlacement, deriveQrSizeM, deriveSolvedQrPose, disposeMeshArray, disposeObject3D, disposeReplayScene, downloadZip, drawMapData, enableArWorldGroupAlignment, endARSession, endSession, estimateQrSizeFromDepth, eulerToQuaternion, evaluateQrPoseStability, exportSessionAsZip, exportSessionHandleAsZip, extractActionTimestamp, extractOdomPosition, extractOdomRotation, fetchQrLevel, findNearbyGeoAnchor, formatActionFilename, formatFileSize, formatFrameFilename, formatTimestamp, fusedGpsFromOdom, geodesicAngleRad, getAlignmentLerper, getAppRootHandle, getArWorldGroup, getCamera, getCameraFollower, getCameraFrameCount, getCameraMode, getCurrentArPose, getDepthInfoFromFrame, getDepthSampleCount, getGlobalLogLevel, getGpsErrorMessage, getImageCaptureFrameCount, getLastDeviceOrientation, getLatestAbsoluteOrientation, getLiveCss3dManager, getLogBuffer, getReplayState, getScene, getSessionHandle, getSessionsRootHandle, getXrErrorMessage, gpsEventVisualizer, gpsPathToCoverageCells, gpsToH3, h3CellsMatch, homographyFromCorrespondences, initAR, initOpfsStorage, initReplayScene, intrinsicsFromProjection, invertPose, ippePoseCandidates, isAbsoluteOrientationAvailable, isFullySupported, isH3Index, isObjectInCameraFrustum, isPointInCameraFrustum, isSphereInCameraFrustum, latLonToTileXY, listFormatter, listSessions, loadActionsFromZip, loadGpsPathFromBlob, loadRecordingOptions, loadSessionMetadataFromBlob, localPlaneToEnu, mapWithConcurrencyLimit, matrixDelta, meanLuminance, meshOccupiedCells, nearestRotation3x3, needsBaseLayerPersistence, nueToArLocal, offsetGeo, originReset, parseChromeVersion, parseQrLevel, poseLost, poseReceived, projectViewPoint, qrInCameraFromOpenCv, readZipEntries, recordDepthSample, recordGpsEvent, recordWriteFailure, recordingReducer, registerFrameUpdate, registerXrFrameUpdate, replayRecording, reportUpdated, reprojectionErrorPx, requestAllPermissions, requestCameraPermission, requestOrientationPermission as requestDeviceOrientationPermission, requestGeolocationPermission, requestOrientationPermission$1 as requestOrientationPermission, requestWebXRWithDepthPermission, resetCoordinatorState, resetFileSystemState, resetOpfsStorage, resetRecordingOptions, resetSessionHandles, resetTracking, resetTrackingQuality, rgbaToGrayscale, rotationToRodrigues, saveRecordingOptions, selectLastRestartedPayload, selectLastSensorOrientation, selectLastValidPose, selectLostFrameCount, selectOnboardingGuidance, selectRecentAlignments, selectTrackingPhase, selectTrackingQuality, setCameraFrameCallback, setDepthCaptureCallback, setFileSystemState, setFrameCallback, setGlobalLogLevel, setImageCaptureCallback, setImageQualityAnalyzer, setSessionEndCallback, setTrackingCallbacks, setTrackingLostCallback, setTrackingStore, setZeroPos, sharpnessScore, signedQuadArea, snapshotPushed, snapshotsTrimmed, solveLinear, solveQrPose, solveQrPoseFromObservation, startAbsoluteOrientationWatch, startCameraFrameCapture, startDepthCapture, startGpsWatch, startImageCapture, startOrientationWatch, startSession, stopAbsoluteOrientationWatch, stopCameraFrameCapture, stopDepthCapture, stopGpsWatch, stopImageCapture, stopOrientationWatch, subscribeToLogs, syncToExternalZip, tileXYToLatLon, toggleCameraMode, trackingQualityReducer, trackingReducer, transformPoint, unprojectDepthPoint, updateDeviceOrientation, updateOrbitTarget, updateReticle, validateDepthOptions, validateImageOptions, validateQuad, validateRecordingOptions, wireStoreSubscribers, worldNueToGps, wrapXRDepthInfo };
package/dist/index.js CHANGED
@@ -19,17 +19,18 @@ import { createQrDebugView } from "./ar/qr-debug-view.js";
19
19
  import { n as createDetectionScheduler, r as createQrDetectionScheduler, t as createQrDetectionController } from "./qr-detection-controller-B-tLVd-S.js";
20
20
  import { t as geodesicAngleRad } from "./geodesic-angle-BTldfFgs.js";
21
21
  import { i as evaluateQrPoseStability, n as aggregateQrPose, r as averageRotation, t as DEFAULT_ROTATION_INLIER_ANGLE_DEG } from "./qr-pose-aggregation-DBiaLW0O.js";
22
- import { a as localPlaneToEnu, c as fetchQrLevel, i as buildQrGpsVotes, l as parseQrLevel, n as createQrTrackingController, o as offsetGeo, r as METERS_PER_DEG_LAT, s as QrLevelValidationError, t as checkQrPlausibility } from "./ar-MFpFlV7j.js";
22
+ import { a as localPlaneToEnu, c as fetchQrLevel, i as buildQrGpsVotes, l as parseQrLevel, n as createQrTrackingController, o as offsetGeo, r as METERS_PER_DEG_LAT, s as QrLevelValidationError, t as checkQrPlausibility } from "./ar-BqCudtqE.js";
23
23
  import { BarcodeDetectorFrontEnd, createBarcodeDetectorFrontEnd } from "./ar/qr-frontend.js";
24
- import { A as setFrameCallback, B as startDepthCapture, F as setTrackingLostCallback, G as CameraFrameSource, H as stopCameraFrameCapture, L as setTrackingStore, M as setImageQualityAnalyzer, O as setCameraFrameCallback, P as setTrackingCallbacks, U as stopDepthCapture, V as startImageCapture, W as stopImageCapture, _ as getScene, a as endARSession, f as getCameraFrameCount, g as getLiveCss3dManager, h as getImageCaptureFrameCount, j as setImageCaptureCallback, k as setDepthCaptureCallback, l as getArWorldGroup, m as getDepthSampleCount, p as getCurrentArPose, u as getCamera, y as initAR, z as startCameraFrameCapture } from "./webxr-session-DG-eNfny.js";
24
+ import { B as setTrackingLostCallback, C as initAR, F as setImageCaptureCallback, G as startDepthCapture, H as setTrackingStore, I as setImageQualityAnalyzer, J as stopDepthCapture, K as startImageCapture, M as setCameraFrameCallback, N as setDepthCaptureCallback, P as setFrameCallback, R as setSessionEndCallback, W as startCameraFrameCapture, X as CameraFrameSource, Y as stopImageCapture, _ as getDepthInfoFromFrame, b as getLiveCss3dManager, c as endARSession, f as getArWorldGroup, g as getCurrentArPose, h as getCameraFrameCount, p as getCamera, q as stopCameraFrameCapture, v as getDepthSampleCount, x as getScene, y as getImageCaptureFrameCount, z as setTrackingCallbacks } from "./webxr-session-BCP2XK7k.js";
25
25
  import { PlanarPnpSquare, homographyFromCorrespondences, ippePoseCandidates, nearestRotation3x3, rotationToRodrigues, solveLinear } from "./ar/planar-pnp.js";
26
26
  import { bresenham3d } from "./ar/bresenham3d.js";
27
27
  import { OccupancyGrid } from "./ar/occupancy-grid.js";
28
+ import { meshOccupiedCells } from "./ar/occupancy-mesher.js";
28
29
  import { registerFrameUpdate } from "./ar/frame-loop.js";
29
30
  import { registerXrFrameUpdate } from "./ar/xr-frame-loop.js";
30
31
  import { checkAllPermissions, checkCameraPermission, checkFileSystemPermission, checkGeolocationPermission, checkOrientationPermission, checkWebXRSupport, requestAllPermissions, requestCameraPermission, requestGeolocationPermission, requestOrientationPermission as requestOrientationPermission$1, requestWebXRWithDepthPermission, resetFileSystemState, setFileSystemState } from "./sensors/permission-checker.js";
31
32
  import { requestOrientationPermission, startGpsWatch, startOrientationWatch, stopGpsWatch, stopOrientationWatch } from "./sensors/gps.js";
32
- import { n as ImageCaptureManager, r as MIN_VALID_IMAGE_BYTES, t as DEFAULT_CAPTURE_CONFIG } from "./image-capture-B2-b6tKK.js";
33
+ import { n as ImageCaptureManager, r as MIN_VALID_IMAGE_BYTES, t as DEFAULT_CAPTURE_CONFIG } from "./image-capture-DVcuqMtX.js";
33
34
  import { DEFAULT_QUALITY_FILTER, DEFAULT_SHARPNESS_HISTORY_SIZE, DEFAULT_SHARPNESS_MIN_SAMPLES, ImageQualityGate, meanLuminance, rgbaToGrayscale, sharpnessScore } from "./ar/image-quality.js";
34
35
  import { clearLastRestartedPayload, originReset, poseLost, poseReceived, resetTracking, selectLastRestartedPayload, selectLastSensorOrientation, selectLastValidPose, selectLostFrameCount, selectTrackingPhase, trackingReducer } from "./state/tracking-slice.js";
35
36
  import { acquireCameraTexture } from "./ar/xr-camera-texture.js";
@@ -59,12 +60,12 @@ import { MAX_ACTION_FILE_SIZE, loadActionsFromZip, loadGpsPathFromBlob, loadSess
59
60
  import { formatActionFilename, formatFrameFilename, formatTimestamp } from "./storage/file-system-utils.js";
60
61
  import { NullStorageBackend } from "./storage/null-storage-backend.js";
61
62
  import { DEFAULT_TRACKING_QUALITY_OPTIONS, computeConvergence, computeCoverage, computeGpsAccuracy, computeGpsVsFusedDivergence, computeResidualConsensus, computeTrackingQualityReport, createTrackingQualityListenerMiddleware, matrixDelta, reportUpdated, resetTrackingQuality, selectRecentAlignments, selectTrackingQuality, snapshotPushed, snapshotsTrimmed, trackingQualityReducer } from "./state/tracking-quality.js";
62
- import { t as createSlamAppStore } from "./create-slam-app-store-DkCHOpvb.js";
63
+ import { t as createSlamAppStore } from "./create-slam-app-store-DXiAnJwR.js";
63
64
  import { replayRecording } from "./state/recording-replayer.js";
64
65
  import { DEFAULT_MAX_DELAY_MS, ReplayEngine, computeInterActionDelay, extractActionTimestamp } from "./state/replay-engine.js";
65
- import { buildMapData } from "./visualization/map-data.js";
66
+ import { t as buildMapData } from "./map-data-D7rpMC6f.js";
66
67
  import { wireStoreSubscribers } from "./state/store-subscribers.js";
67
- import { a as computeOnboardingGuidance, i as setZeroPos, n as calcRelativeCoordsInMeters, o as selectOnboardingGuidance, r as recordGpsEvent, t as add2dImage } from "./state-E51QT_-j.js";
68
+ import { a as computeOnboardingGuidance, i as setZeroPos, n as calcRelativeCoordsInMeters, o as selectOnboardingGuidance, r as recordGpsEvent, t as add2dImage } from "./state-BeKvn4B-.js";
68
69
  import { checkStorageQuota, createSession, getAppRootHandle, getSessionHandle, getSessionsRootHandle, initOpfsStorage, listSessions, resetOpfsStorage, resetSessionHandles } from "./storage/opfs-storage.js";
69
70
  import { OpfsStorageBackend } from "./storage/opfs-storage-backend.js";
70
71
  import { downloadZip, exportSessionAsZip, exportSessionHandleAsZip, syncToExternalZip } from "./storage/zip-export.js";
@@ -75,10 +76,11 @@ import { nueToArLocal, worldNueToGps } from "./visualization/frame-conversions.j
75
76
  import { createReticleMesh, updateReticle } from "./visualization/hit-test-reticle.js";
76
77
  import { createGpsAnchor } from "./visualization/gps-anchor.js";
77
78
  import { GpsEventVisualizer, gpsEventVisualizer } from "./visualization/gps-event-markers.js";
79
+ import { OcclusionMesh } from "./visualization/occlusion-mesh.js";
78
80
  import { ACCURACY_CIRCLE_FILL_OPACITY, ACCURACY_CIRCLE_STROKE_OPACITY, ACCURACY_CIRCLE_WEIGHT, addAccuracyCircles } from "./visualization/accuracy-circles.js";
79
81
  import { ALIGNMENT_SNAPSHOT_COLOR, FUSED_PATH_COLOR, MAP_PATH_POLYLINE_OPACITY, MAP_PATH_POLYLINE_WEIGHT, RAW_GPS_COLOR, USER_POSITION_COLOR, drawMapData } from "./visualization/map-overlay-draw.js";
80
- import { DEFAULT_LEAFLET_MAP_SIZE_PX, DEFAULT_WORLD_SIZE, DEFAULT_Z_OFFSET, LeafletMapOverlay } from "./visualization/leaflet-map-overlay.js";
82
+ import { a as DEFAULT_Z_OFFSET, n as DEFAULT_LEAFLET_MAP_SIZE_PX, o as LeafletMapOverlay, r as DEFAULT_WORLD_SIZE } from "./leaflet-map-overlay-CBWPvaX9.js";
81
83
  import { DEFAULT_HEIGHT_OFFSET, DEFAULT_MAP_SIZE, DEFAULT_ZOOM, MapOverlay, latLonToTileXY, tileXYToLatLon } from "./visualization/map-overlay.js";
82
84
  import "./visualization/index.js";
83
85
  import { COMMUNITY_LICENSE_KEY } from "./licensing/index.js";
84
- export { ACCURACY_CIRCLE_FILL_OPACITY, ACCURACY_CIRCLE_STROKE_OPACITY, ACCURACY_CIRCLE_WEIGHT, ALIGNMENT_SNAPSHOT_COLOR, BASELAYER_WINDOW_MAX, BASELAYER_WINDOW_MIN, BarcodeDetectorFrontEnd, CAPTURE_FAILURE_WARNING, COMMUNITY_LICENSE_KEY, COMPASS_CUBE_DISTANCE, COMPASS_CUBE_SIZE, CameraBlitCapture, CameraFrameSource, DEFAULT_BLIT_CONFIG, DEFAULT_CAPTURE_CONFIG, DEFAULT_CAPTURE_TRACKER_CONFIG, DEFAULT_HEIGHT_OFFSET, DEFAULT_LEAFLET_MAP_SIZE_PX, DEFAULT_LERP_RATE, DEFAULT_MAP_SIZE, DEFAULT_MAX_DELAY_MS, DEFAULT_QUALITY_FILTER, DEFAULT_RECORDING_OPTIONS, DEFAULT_ROTATION_INLIER_ANGLE_DEG, DEFAULT_SHARPNESS_HISTORY_SIZE, DEFAULT_SHARPNESS_MIN_SAMPLES, DEFAULT_TRACKING_QUALITY_OPTIONS, DEFAULT_WORLD_SIZE, DEFAULT_ZOOM, DEFAULT_Z_OFFSET, DEPTH_CONSTRAINTS, DepthSampler, FUSED_PATH_COLOR, GPS_ERROR_CODES, GPS_ERROR_MESSAGES, GPS_ERROR_MESSAGE_UNKNOWN, GpsEventVisualizer, H3_RESOLUTION, IMAGE_CONSTRAINTS, ImageCaptureManager, ImageQualityGate, LeafletMapOverlay, LogLevel, MAP_PATH_POLYLINE_OPACITY, MAP_PATH_POLYLINE_WEIGHT, MAX_ACTION_FILE_SIZE, METERS_PER_DEG_LAT, MIN_VALID_IMAGE_BYTES, MapOverlay, NullStorageBackend, OccupancyGrid, OpfsStorageBackend, PlanarPnpSquare, QrLevelValidationError, RAW_GPS_COLOR, ReplayEngine, SCENE_NODE, STORAGE_KEY, USER_POSITION_COLOR, VIS_COLORS, WEBXR_TO_NUE, XR_ERROR_MESSAGES, XR_ERROR_MESSAGE_UNKNOWN, acquireCameraTexture, add2dImage, addAccuracyCircles, aggregateQrPose, applyChromiumProjectionLayerWorkaround, approxDistanceMetres, averageRotation, bresenham3d, buildCameraFrustum, buildMapData, buildObjectPoints, buildQrGpsVotes, buildRawGpsPoint, buildRecordGpsEventPayload, calcRelativeCoordsInMeters, capabilityMessage, checkAllPermissions, checkCameraPermission, checkFileSystemPermission, checkGeolocationPermission, checkOrientationPermission, checkQrPlausibility, checkStorageQuota, checkWebXRSupport, clampedAlpha, clearLastRestartedPayload, clearLogBuffer, cloneRecordingOptions, clusterCellsByZoom, composePose, computeAspectFitSize, computeCaptureSize, computeConvergence, computeCoverage, computeFusedPath, computeGpsAccuracy, computeGpsVsFusedDivergence, computeInterActionDelay, computeOnboardingGuidance, computeResidualConsensus, computeTrackingQualityReport, createAlignmentLerper, createBarcodeDetectorFrontEnd, createCameraFollower, createCaptureFailureTracker, createCss3dRendererManager, createDepthGridLookup, createDepthUnprojector, createDetectionScheduler, createEnableGpsArController, createFailureTracker, createGpsAnchor, createGpsCompassCubes, createGpsErrorHandler, createGpsPositionHandler, createIncrementalQrPlacement, createLogger, createQrDebugView, createQrDetectionController, createQrDetectionScheduler, createQrSizeAccumulator, createQrSizeDepthContext, createQrSizeMeasurer, createQrTrackingController, createReticleMesh, createSession, createSlamAppStore, createTrackingQualityListenerMiddleware, deriveQrPlacement, deriveQrSizeM, deriveSolvedQrPose, disposeMeshArray, disposeObject3D, disposeReplayScene, downloadZip, drawMapData, enableArWorldGroupAlignment, endARSession, endSession, estimateQrSizeFromDepth, eulerToQuaternion, evaluateQrPoseStability, exportSessionAsZip, exportSessionHandleAsZip, extractActionTimestamp, extractOdomPosition, extractOdomRotation, fetchQrLevel, findNearbyGeoAnchor, formatActionFilename, formatFileSize, formatFrameFilename, formatTimestamp, fusedGpsFromOdom, geodesicAngleRad, getAlignmentLerper, getAppRootHandle, getArWorldGroup, getCamera, getCameraFollower, getCameraFrameCount, getCameraMode, getCurrentArPose, getDepthSampleCount, getGlobalLogLevel, getGpsErrorMessage, getImageCaptureFrameCount, getLastDeviceOrientation, getLatestAbsoluteOrientation, getLiveCss3dManager, getLogBuffer, getReplayState, getScene, getSessionHandle, getSessionsRootHandle, getXrErrorMessage, gpsEventVisualizer, gpsPathToCoverageCells, gpsToH3, h3CellsMatch, homographyFromCorrespondences, initAR, initOpfsStorage, initReplayScene, intrinsicsFromProjection, invertPose, ippePoseCandidates, isAbsoluteOrientationAvailable, isFullySupported, isH3Index, isObjectInCameraFrustum, isPointInCameraFrustum, isSphereInCameraFrustum, latLonToTileXY, listFormatter, listSessions, loadActionsFromZip, loadGpsPathFromBlob, loadRecordingOptions, loadSessionMetadataFromBlob, localPlaneToEnu, mapWithConcurrencyLimit, matrixDelta, meanLuminance, nearestRotation3x3, needsBaseLayerPersistence, nueToArLocal, offsetGeo, originReset, parseChromeVersion, parseQrLevel, poseLost, poseReceived, projectViewPoint, qrInCameraFromOpenCv, readZipEntries, recordDepthSample, recordGpsEvent, recordWriteFailure, recordingReducer, registerFrameUpdate, registerXrFrameUpdate, replayRecording, reportUpdated, reprojectionErrorPx, requestAllPermissions, requestCameraPermission, requestOrientationPermission as requestDeviceOrientationPermission, requestGeolocationPermission, requestOrientationPermission$1 as requestOrientationPermission, requestWebXRWithDepthPermission, resetCoordinatorState, resetFileSystemState, resetOpfsStorage, resetRecordingOptions, resetSessionHandles, resetTracking, resetTrackingQuality, rgbaToGrayscale, rotationToRodrigues, saveRecordingOptions, selectLastRestartedPayload, selectLastSensorOrientation, selectLastValidPose, selectLostFrameCount, selectOnboardingGuidance, selectRecentAlignments, selectTrackingPhase, selectTrackingQuality, setCameraFrameCallback, setDepthCaptureCallback, setFileSystemState, setFrameCallback, setGlobalLogLevel, setImageCaptureCallback, setImageQualityAnalyzer, setTrackingCallbacks, setTrackingLostCallback, setTrackingStore, setZeroPos, sharpnessScore, signedQuadArea, snapshotPushed, snapshotsTrimmed, solveLinear, solveQrPose, solveQrPoseFromObservation, startAbsoluteOrientationWatch, startCameraFrameCapture, startDepthCapture, startGpsWatch, startImageCapture, startOrientationWatch, startSession, stopAbsoluteOrientationWatch, stopCameraFrameCapture, stopDepthCapture, stopGpsWatch, stopImageCapture, stopOrientationWatch, subscribeToLogs, syncToExternalZip, tileXYToLatLon, toggleCameraMode, trackingQualityReducer, trackingReducer, transformPoint, unprojectDepthPoint, updateDeviceOrientation, updateOrbitTarget, updateReticle, validateDepthOptions, validateImageOptions, validateQuad, validateRecordingOptions, wireStoreSubscribers, worldNueToGps, wrapXRDepthInfo };
86
+ export { ACCURACY_CIRCLE_FILL_OPACITY, ACCURACY_CIRCLE_STROKE_OPACITY, ACCURACY_CIRCLE_WEIGHT, ALIGNMENT_SNAPSHOT_COLOR, BASELAYER_WINDOW_MAX, BASELAYER_WINDOW_MIN, BarcodeDetectorFrontEnd, CAPTURE_FAILURE_WARNING, COMMUNITY_LICENSE_KEY, COMPASS_CUBE_DISTANCE, COMPASS_CUBE_SIZE, CameraBlitCapture, CameraFrameSource, DEFAULT_BLIT_CONFIG, DEFAULT_CAPTURE_CONFIG, DEFAULT_CAPTURE_TRACKER_CONFIG, DEFAULT_HEIGHT_OFFSET, DEFAULT_LEAFLET_MAP_SIZE_PX, DEFAULT_LERP_RATE, DEFAULT_MAP_SIZE, DEFAULT_MAX_DELAY_MS, DEFAULT_QUALITY_FILTER, DEFAULT_RECORDING_OPTIONS, DEFAULT_ROTATION_INLIER_ANGLE_DEG, DEFAULT_SHARPNESS_HISTORY_SIZE, DEFAULT_SHARPNESS_MIN_SAMPLES, DEFAULT_TRACKING_QUALITY_OPTIONS, DEFAULT_WORLD_SIZE, DEFAULT_ZOOM, DEFAULT_Z_OFFSET, DEPTH_CONSTRAINTS, DepthSampler, FUSED_PATH_COLOR, GPS_ERROR_CODES, GPS_ERROR_MESSAGES, GPS_ERROR_MESSAGE_UNKNOWN, GpsEventVisualizer, H3_RESOLUTION, IMAGE_CONSTRAINTS, ImageCaptureManager, ImageQualityGate, LeafletMapOverlay, LogLevel, MAP_PATH_POLYLINE_OPACITY, MAP_PATH_POLYLINE_WEIGHT, MAX_ACTION_FILE_SIZE, METERS_PER_DEG_LAT, MIN_VALID_IMAGE_BYTES, MapOverlay, NullStorageBackend, OcclusionMesh, OccupancyGrid, OpfsStorageBackend, PlanarPnpSquare, QrLevelValidationError, RAW_GPS_COLOR, ReplayEngine, SCENE_NODE, STORAGE_KEY, USER_POSITION_COLOR, VIS_COLORS, WEBXR_TO_NUE, XR_ERROR_MESSAGES, XR_ERROR_MESSAGE_UNKNOWN, acquireCameraTexture, add2dImage, addAccuracyCircles, aggregateQrPose, applyChromiumProjectionLayerWorkaround, approxDistanceMetres, averageRotation, bresenham3d, buildCameraFrustum, buildMapData, buildObjectPoints, buildQrGpsVotes, buildRawGpsPoint, buildRecordGpsEventPayload, calcRelativeCoordsInMeters, capabilityMessage, checkAllPermissions, checkCameraPermission, checkFileSystemPermission, checkGeolocationPermission, checkOrientationPermission, checkQrPlausibility, checkStorageQuota, checkWebXRSupport, clampedAlpha, clearLastRestartedPayload, clearLogBuffer, cloneRecordingOptions, clusterCellsByZoom, composePose, computeAspectFitSize, computeCaptureSize, computeConvergence, computeCoverage, computeFusedPath, computeGpsAccuracy, computeGpsVsFusedDivergence, computeInterActionDelay, computeOnboardingGuidance, computeResidualConsensus, computeTrackingQualityReport, createAlignmentLerper, createBarcodeDetectorFrontEnd, createCameraFollower, createCaptureFailureTracker, createCss3dRendererManager, createDepthGridLookup, createDepthUnprojector, createDetectionScheduler, createEnableGpsArController, createFailureTracker, createGpsAnchor, createGpsCompassCubes, createGpsErrorHandler, createGpsPositionHandler, createIncrementalQrPlacement, createLogger, createQrDebugView, createQrDetectionController, createQrDetectionScheduler, createQrSizeAccumulator, createQrSizeDepthContext, createQrSizeMeasurer, createQrTrackingController, createReticleMesh, createSession, createSlamAppStore, createTrackingQualityListenerMiddleware, deriveQrPlacement, deriveQrSizeM, deriveSolvedQrPose, disposeMeshArray, disposeObject3D, disposeReplayScene, downloadZip, drawMapData, enableArWorldGroupAlignment, endARSession, endSession, estimateQrSizeFromDepth, eulerToQuaternion, evaluateQrPoseStability, exportSessionAsZip, exportSessionHandleAsZip, extractActionTimestamp, extractOdomPosition, extractOdomRotation, fetchQrLevel, findNearbyGeoAnchor, formatActionFilename, formatFileSize, formatFrameFilename, formatTimestamp, fusedGpsFromOdom, geodesicAngleRad, getAlignmentLerper, getAppRootHandle, getArWorldGroup, getCamera, getCameraFollower, getCameraFrameCount, getCameraMode, getCurrentArPose, getDepthInfoFromFrame, getDepthSampleCount, getGlobalLogLevel, getGpsErrorMessage, getImageCaptureFrameCount, getLastDeviceOrientation, getLatestAbsoluteOrientation, getLiveCss3dManager, getLogBuffer, getReplayState, getScene, getSessionHandle, getSessionsRootHandle, getXrErrorMessage, gpsEventVisualizer, gpsPathToCoverageCells, gpsToH3, h3CellsMatch, homographyFromCorrespondences, initAR, initOpfsStorage, initReplayScene, intrinsicsFromProjection, invertPose, ippePoseCandidates, isAbsoluteOrientationAvailable, isFullySupported, isH3Index, isObjectInCameraFrustum, isPointInCameraFrustum, isSphereInCameraFrustum, latLonToTileXY, listFormatter, listSessions, loadActionsFromZip, loadGpsPathFromBlob, loadRecordingOptions, loadSessionMetadataFromBlob, localPlaneToEnu, mapWithConcurrencyLimit, matrixDelta, meanLuminance, meshOccupiedCells, nearestRotation3x3, needsBaseLayerPersistence, nueToArLocal, offsetGeo, originReset, parseChromeVersion, parseQrLevel, poseLost, poseReceived, projectViewPoint, qrInCameraFromOpenCv, readZipEntries, recordDepthSample, recordGpsEvent, recordWriteFailure, recordingReducer, registerFrameUpdate, registerXrFrameUpdate, replayRecording, reportUpdated, reprojectionErrorPx, requestAllPermissions, requestCameraPermission, requestOrientationPermission as requestDeviceOrientationPermission, requestGeolocationPermission, requestOrientationPermission$1 as requestOrientationPermission, requestWebXRWithDepthPermission, resetCoordinatorState, resetFileSystemState, resetOpfsStorage, resetRecordingOptions, resetSessionHandles, resetTracking, resetTrackingQuality, rgbaToGrayscale, rotationToRodrigues, saveRecordingOptions, selectLastRestartedPayload, selectLastSensorOrientation, selectLastValidPose, selectLostFrameCount, selectOnboardingGuidance, selectRecentAlignments, selectTrackingPhase, selectTrackingQuality, setCameraFrameCallback, setDepthCaptureCallback, setFileSystemState, setFrameCallback, setGlobalLogLevel, setImageCaptureCallback, setImageQualityAnalyzer, setSessionEndCallback, setTrackingCallbacks, setTrackingLostCallback, setTrackingStore, setZeroPos, sharpnessScore, signedQuadArea, snapshotPushed, snapshotsTrimmed, solveLinear, solveQrPose, solveQrPoseFromObservation, startAbsoluteOrientationWatch, startCameraFrameCapture, startDepthCapture, startGpsWatch, startImageCapture, startOrientationWatch, startSession, stopAbsoluteOrientationWatch, stopCameraFrameCapture, stopDepthCapture, stopGpsWatch, stopImageCapture, stopOrientationWatch, subscribeToLogs, syncToExternalZip, tileXYToLatLon, toggleCameraMode, trackingQualityReducer, trackingReducer, transformPoint, unprojectDepthPoint, updateDeviceOrientation, updateOrbitTarget, updateReticle, validateDepthOptions, validateImageOptions, validateQuad, validateRecordingOptions, wireStoreSubscribers, worldNueToGps, wrapXRDepthInfo };
@@ -1,4 +1,4 @@
1
- import { t as MapData } from "./map-data-B4oEehUh.js";
1
+ import { t as MapData } from "./map-data-PNfGKGWx.js";
2
2
  import * as THREE from "three";
3
3
  import { LatLong } from "gps-plus-slam-js";
4
4
  import L from "leaflet";
@@ -6,12 +6,30 @@ import L from "leaflet";
6
6
  //#region ../src/visualization/leaflet-map-overlay.d.ts
7
7
  /** Default pixel size of the Leaflet map container */
8
8
  declare const DEFAULT_LEAFLET_MAP_SIZE_PX = 600;
9
- /** Default world-space size in meters (matches old MapOverlay) */
10
- declare const DEFAULT_WORLD_SIZE = 10;
9
+ /**
10
+ * Map-plane placement defaults (re-fit 2026-07-04, F1 user feedback).
11
+ *
12
+ * The plane's parent is the CameraFollower — camera POSITION is followed,
13
+ * rotation stays IDENTITY (GPS-world-aligned). CSS3D content crossing the
14
+ * viewer plane (camera-space z ≥ 0) is cut off by the browser (an effective
15
+ * near plane at 0 that camera.near cannot move), so the defaults must keep
16
+ * every plane corner in front of the viewer plane for ALL camera yaws and
17
+ * heading-up rotations at map-viewing pitches. Invariant (tests pin it):
18
+ *
19
+ * |DEFAULT_Z_OFFSET| + DEFAULT_WORLD_SIZE/√2 + lag ≤ |h|·tan(θ*)
20
+ *
21
+ * with lag = 0.5 m (follower lerp) and design pitch θ* = 51°. Below θ* only
22
+ * the region farther than |h|·tan(pitch) behind the camera is cut, shrinking
23
+ * to nothing at θ*. Values 8 / −5 / 0 give θ* ≈ 51°; zOffset MUST stay 0 —
24
+ * with a world-yaw-locked parent a non-zero offset is a fixed compass
25
+ * direction, not "ahead of the user".
26
+ */
27
+ /** Default world-space size in meters */
28
+ declare const DEFAULT_WORLD_SIZE = 8;
11
29
  /** Default height offset below camera (negative = below) */
12
- declare const DEFAULT_HEIGHT_OFFSET = -4;
13
- /** Default forward offset from parent (negative = forward in parent-local Z) */
14
- declare const DEFAULT_Z_OFFSET = -1;
30
+ declare const DEFAULT_HEIGHT_OFFSET = -5;
31
+ /** Default offset from parent along world Z (keep 0 see block comment) */
32
+ declare const DEFAULT_Z_OFFSET = 0;
15
33
  /** Default zoom level for the Leaflet map */
16
34
  declare const DEFAULT_ZOOM = 17;
17
35
  /**
@@ -41,6 +59,14 @@ interface LeafletMapOverlayOptions {
41
59
  * pass a scoped element to avoid injecting nodes into `<body>`.
42
60
  */
43
61
  readonly offscreenRoot?: HTMLElement;
62
+ /**
63
+ * Start in heading-up mode: rotate the whole map so the user's view direction
64
+ * always points up/forward (car-navigation style) instead of the fixed
65
+ * north-up. Default `false` (north-up). Can be toggled later via
66
+ * {@link LeafletMapOverlay.setHeadingUpEnabled}. See the
67
+ * 2026-06-29 heading-up plan.
68
+ */
69
+ readonly headingUp?: boolean;
44
70
  }
45
71
  declare class LeafletMapOverlay {
46
72
  private scene;
@@ -55,6 +81,9 @@ declare class LeafletMapOverlay {
55
81
  private zoomLevel;
56
82
  private gpsPosition;
57
83
  private visible;
84
+ private headingUp;
85
+ private targetHeadingDeg;
86
+ private currentHeadingDeg;
58
87
  private mapContainer;
59
88
  private leafletMap;
60
89
  private tileLayer;
@@ -107,11 +136,36 @@ declare class LeafletMapOverlay {
107
136
  /** Expose the Leaflet map instance for testing and advanced usage. */
108
137
  getLeafletMap(): L.Map | null;
109
138
  /**
110
- * No-op kept for backward compatibility with the frame-loop call
111
- * in main.ts. The CSS3DObject is a child of the parent, so Three.js
112
- * scene graph propagation handles positioning automatically.
139
+ * Enable/disable heading-up rotation at runtime (e.g. from a settings flag
140
+ * read at Enter-AR). When disabled, the map snaps back to the north-up
141
+ * baseline immediately. Position follows the parent via the scene graph, so
142
+ * this only governs the in-plane yaw.
143
+ */
144
+ setHeadingUpEnabled(enabled: boolean): void;
145
+ /** Whether heading-up rotation is currently enabled. */
146
+ isHeadingUpEnabled(): boolean;
147
+ /**
148
+ * Per-frame update driving the heading-up rotation. Positioning is handled by
149
+ * Three.js scene-graph propagation (the CSS3DObject is a child of the parent),
150
+ * so this only sets the in-plane yaw.
151
+ *
152
+ * The minimap is world-locked but composited through the **live head-tracked
153
+ * camera**, so the camera already rotates the map's on-screen appearance as
154
+ * the user turns. The local yaw must therefore be expressed RELATIVE to the
155
+ * camera — `headingUpQuat(viewAzimuth − userHeading)` — otherwise the camera's
156
+ * rotation is double-counted and the GPS↔scene alignment offset leaks in (the
157
+ * map then only points forward at a single heading). `userHeading` is smoothed
158
+ * toward the latest ~1 Hz target; `viewAzimuth` is read live from the camera
159
+ * each frame so the projection cancels exactly (no lag).
160
+ *
161
+ * A no-op when heading-up is disabled, the map is not shown, the camera is
162
+ * absent, or the heading is undefined (the last orientation is held).
163
+ *
164
+ * @param dtSeconds Seconds since the previous frame (drives heading smoothing).
165
+ * @param camera The live render camera (the same one compositing the CSS3D
166
+ * overlay). Required for heading-up; omitted callers leave the map as-is.
113
167
  */
114
- updatePosition(): void;
168
+ updatePosition(dtSeconds?: number, camera?: THREE.Camera): void;
115
169
  dispose(): void;
116
170
  private createLeafletMap;
117
171
  private destroyLeafletMap;