@reekon-tools/boldr-cad 0.1.0 → 1.0.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 (547) hide show
  1. package/README.md +81 -9
  2. package/dist/app/edit.d.ts +12 -1
  3. package/dist/app/edit.js +96 -11
  4. package/dist/app/edit.js.map +1 -1
  5. package/dist/app/state.d.ts +31 -4
  6. package/dist/app/state.js +31 -2
  7. package/dist/app/state.js.map +1 -1
  8. package/dist/data/memory.d.ts +5 -0
  9. package/dist/data/memory.js +2 -2
  10. package/dist/data/memory.js.map +1 -1
  11. package/dist/data/provider.d.ts +19 -7
  12. package/dist/data/sync.d.ts +7 -2
  13. package/dist/data/sync.js +115 -64
  14. package/dist/data/sync.js.map +1 -1
  15. package/dist/editor/actions.d.ts +1 -2
  16. package/dist/editor/actions.js +391 -113
  17. package/dist/editor/actions.js.map +1 -1
  18. package/dist/editor/confirm.d.ts +23 -0
  19. package/dist/editor/confirm.js +35 -0
  20. package/dist/editor/confirm.js.map +1 -0
  21. package/dist/editor/elevation.d.ts +191 -90
  22. package/dist/editor/elevation.js +812 -616
  23. package/dist/editor/elevation.js.map +1 -1
  24. package/dist/editor/face.d.ts +73 -0
  25. package/dist/editor/face.js +269 -0
  26. package/dist/editor/face.js.map +1 -0
  27. package/dist/editor/files.d.ts +6 -0
  28. package/dist/editor/files.js +50 -4
  29. package/dist/editor/files.js.map +1 -1
  30. package/dist/editor/gestures.d.ts +18 -3
  31. package/dist/editor/gestures.js +145 -30
  32. package/dist/editor/gestures.js.map +1 -1
  33. package/dist/editor/keypad.d.ts +19 -4
  34. package/dist/editor/keypad.js +39 -9
  35. package/dist/editor/keypad.js.map +1 -1
  36. package/dist/editor/keys.js +36 -4
  37. package/dist/editor/keys.js.map +1 -1
  38. package/dist/editor/laser.d.ts +20 -4
  39. package/dist/editor/laser.js +104 -21
  40. package/dist/editor/laser.js.map +1 -1
  41. package/dist/editor/linkActions.d.ts +49 -0
  42. package/dist/editor/linkActions.js +210 -0
  43. package/dist/editor/linkActions.js.map +1 -0
  44. package/dist/editor/linkFollow.d.ts +2 -0
  45. package/dist/editor/linkFollow.js +53 -0
  46. package/dist/editor/linkFollow.js.map +1 -0
  47. package/dist/editor/linkWrite.d.ts +13 -0
  48. package/dist/editor/linkWrite.js +84 -0
  49. package/dist/editor/linkWrite.js.map +1 -0
  50. package/dist/editor/links.d.ts +84 -0
  51. package/dist/editor/links.js +130 -0
  52. package/dist/editor/links.js.map +1 -0
  53. package/dist/editor/markup.d.ts +29 -3
  54. package/dist/editor/markup.js +95 -10
  55. package/dist/editor/markup.js.map +1 -1
  56. package/dist/editor/mode.d.ts +40 -2
  57. package/dist/editor/mode.js +71 -4
  58. package/dist/editor/mode.js.map +1 -1
  59. package/dist/editor/ports.d.ts +36 -6
  60. package/dist/editor/ports.js +10 -1
  61. package/dist/editor/ports.js.map +1 -1
  62. package/dist/editor/project.d.ts +38 -6
  63. package/dist/editor/project.js +167 -27
  64. package/dist/editor/project.js.map +1 -1
  65. package/dist/editor/selection.d.ts +10 -0
  66. package/dist/editor/selection.js +62 -8
  67. package/dist/editor/selection.js.map +1 -1
  68. package/dist/editor/status.js +3 -0
  69. package/dist/editor/status.js.map +1 -1
  70. package/dist/editor/tooltips.d.ts +5 -0
  71. package/dist/editor/tooltips.js +48 -0
  72. package/dist/editor/tooltips.js.map +1 -0
  73. package/dist/editor/view3d.d.ts +17 -0
  74. package/dist/editor/view3d.js +135 -0
  75. package/dist/editor/view3d.js.map +1 -0
  76. package/dist/editor/view3dState.d.ts +39 -0
  77. package/dist/editor/view3dState.js +44 -0
  78. package/dist/editor/view3dState.js.map +1 -0
  79. package/dist/export/dxf.js +1 -1
  80. package/dist/export/dxf.js.map +1 -1
  81. package/dist/export/pdf.js +17 -12
  82. package/dist/export/pdf.js.map +1 -1
  83. package/dist/export/plan.d.ts +23 -6
  84. package/dist/export/plan.js +127 -44
  85. package/dist/export/plan.js.map +1 -1
  86. package/dist/index.d.ts +5 -0
  87. package/dist/index.js +2 -0
  88. package/dist/index.js.map +1 -1
  89. package/dist/model/constraints.js +15 -4
  90. package/dist/model/constraints.js.map +1 -1
  91. package/dist/model/demo.js +3 -3
  92. package/dist/model/demo.js.map +1 -1
  93. package/dist/model/elevation.d.ts +6 -9
  94. package/dist/model/elevation.js +5 -13
  95. package/dist/model/elevation.js.map +1 -1
  96. package/dist/model/faces.d.ts +58 -0
  97. package/dist/model/faces.js +197 -0
  98. package/dist/model/faces.js.map +1 -0
  99. package/dist/model/facesolve.d.ts +72 -0
  100. package/dist/model/facesolve.js +369 -0
  101. package/dist/model/facesolve.js.map +1 -0
  102. package/dist/model/history.d.ts +3 -2
  103. package/dist/model/history.js +17 -11
  104. package/dist/model/history.js.map +1 -1
  105. package/dist/model/images.d.ts +18 -0
  106. package/dist/model/images.js +26 -0
  107. package/dist/model/images.js.map +1 -0
  108. package/dist/model/links.d.ts +46 -0
  109. package/dist/model/links.js +73 -0
  110. package/dist/model/links.js.map +1 -0
  111. package/dist/model/markup.d.ts +46 -0
  112. package/dist/model/markup.js +71 -0
  113. package/dist/model/markup.js.map +1 -0
  114. package/dist/model/measurement.d.ts +11 -0
  115. package/dist/model/measurement.js +24 -0
  116. package/dist/model/measurement.js.map +1 -0
  117. package/dist/model/openings.d.ts +4 -0
  118. package/dist/model/openings.js +4 -0
  119. package/dist/model/openings.js.map +1 -1
  120. package/dist/model/planGeom.d.ts +72 -2
  121. package/dist/model/planGeom.js +184 -10
  122. package/dist/model/planGeom.js.map +1 -1
  123. package/dist/model/project.js +3 -2
  124. package/dist/model/project.js.map +1 -1
  125. package/dist/model/projectfile.js +2 -1
  126. package/dist/model/projectfile.js.map +1 -1
  127. package/dist/model/rooms.js +2 -2
  128. package/dist/model/rooms.js.map +1 -1
  129. package/dist/model/settings.d.ts +6 -0
  130. package/dist/model/settings.js +2 -2
  131. package/dist/model/settings.js.map +1 -1
  132. package/dist/model/sketch.d.ts +14 -0
  133. package/dist/model/sketch.js +143 -24
  134. package/dist/model/sketch.js.map +1 -1
  135. package/dist/model/smooth.d.ts +6 -0
  136. package/dist/model/smooth.js +52 -0
  137. package/dist/model/smooth.js.map +1 -0
  138. package/dist/model/store.d.ts +12 -0
  139. package/dist/model/store.js +35 -3
  140. package/dist/model/store.js.map +1 -1
  141. package/dist/model/types.d.ts +173 -8
  142. package/dist/model/wallfaces.d.ts +32 -0
  143. package/dist/model/wallfaces.js +133 -20
  144. package/dist/model/wallfaces.js.map +1 -1
  145. package/dist/model/wallshape.d.ts +15 -0
  146. package/dist/model/wallshape.js +89 -0
  147. package/dist/model/wallshape.js.map +1 -0
  148. package/dist/react/BottomBar.d.ts +9 -5
  149. package/dist/react/BottomBar.js +213 -24
  150. package/dist/react/BottomBar.js.map +1 -1
  151. package/dist/react/Buttons.d.ts +13 -2
  152. package/dist/react/Buttons.js +37 -5
  153. package/dist/react/Buttons.js.map +1 -1
  154. package/dist/react/CadEditor.d.ts +46 -3
  155. package/dist/react/CadEditor.js +77 -20
  156. package/dist/react/CadEditor.js.map +1 -1
  157. package/dist/react/ConfirmSheet.d.ts +4 -0
  158. package/dist/react/ConfirmSheet.js +31 -0
  159. package/dist/react/ConfirmSheet.js.map +1 -0
  160. package/dist/react/ConflictSheet.d.ts +2 -1
  161. package/dist/react/ConflictSheet.js +16 -8
  162. package/dist/react/ConflictSheet.js.map +1 -1
  163. package/dist/react/Drawer.d.ts +8 -2
  164. package/dist/react/Drawer.js +167 -38
  165. package/dist/react/Drawer.js.map +1 -1
  166. package/dist/react/Duck.d.ts +13 -0
  167. package/dist/react/Duck.js +45 -0
  168. package/dist/react/Duck.js.map +1 -0
  169. package/dist/react/Empty3D.d.ts +2 -0
  170. package/dist/react/Empty3D.js +39 -0
  171. package/dist/react/Empty3D.js.map +1 -0
  172. package/dist/react/FitScroll.d.ts +6 -0
  173. package/dist/react/FitScroll.js +14 -0
  174. package/dist/react/FitScroll.js.map +1 -0
  175. package/dist/react/Icon.native.d.ts +6 -0
  176. package/dist/react/Icon.native.js +4 -0
  177. package/dist/react/Icon.native.js.map +1 -1
  178. package/dist/react/Icon.web.d.ts +6 -0
  179. package/dist/react/Icon.web.js +4 -0
  180. package/dist/react/Icon.web.js.map +1 -1
  181. package/dist/react/KeypadSheet.d.ts +9 -2
  182. package/dist/react/KeypadSheet.js +174 -42
  183. package/dist/react/KeypadSheet.js.map +1 -1
  184. package/dist/react/LaserTray.js +8 -5
  185. package/dist/react/LaserTray.js.map +1 -1
  186. package/dist/react/MarkupPanel.d.ts +8 -0
  187. package/dist/react/MarkupPanel.js +67 -0
  188. package/dist/react/MarkupPanel.js.map +1 -0
  189. package/dist/react/PageThumb.native.d.ts +7 -2
  190. package/dist/react/PageThumb.native.js +19 -7
  191. package/dist/react/PageThumb.native.js.map +1 -1
  192. package/dist/react/PageThumb.web.d.ts +3 -2
  193. package/dist/react/PageThumb.web.js +4 -4
  194. package/dist/react/PageThumb.web.js.map +1 -1
  195. package/dist/react/PlanCanvas.native.d.ts +1 -1
  196. package/dist/react/PlanCanvas.native.js +134 -36
  197. package/dist/react/PlanCanvas.native.js.map +1 -1
  198. package/dist/react/PlanCanvas.web.js +16 -5
  199. package/dist/react/PlanCanvas.web.js.map +1 -1
  200. package/dist/react/Popovers.d.ts +12 -6
  201. package/dist/react/Popovers.js +53 -26
  202. package/dist/react/Popovers.js.map +1 -1
  203. package/dist/react/Rail.d.ts +24 -0
  204. package/dist/react/Rail.js +324 -34
  205. package/dist/react/Rail.js.map +1 -1
  206. package/dist/react/ShapeMenu.d.ts +7 -0
  207. package/dist/react/ShapeMenu.js +58 -0
  208. package/dist/react/ShapeMenu.js.map +1 -0
  209. package/dist/react/Sheet.d.ts +14 -4
  210. package/dist/react/Sheet.js +54 -9
  211. package/dist/react/Sheet.js.map +1 -1
  212. package/dist/react/Slider.d.ts +18 -0
  213. package/dist/react/Slider.js +27 -0
  214. package/dist/react/Slider.js.map +1 -0
  215. package/dist/react/Toast.js +14 -6
  216. package/dist/react/Toast.js.map +1 -1
  217. package/dist/react/ToolTip.d.ts +7 -0
  218. package/dist/react/ToolTip.js +43 -0
  219. package/dist/react/ToolTip.js.map +1 -0
  220. package/dist/react/TopBar.d.ts +6 -3
  221. package/dist/react/TopBar.js +48 -17
  222. package/dist/react/TopBar.js.map +1 -1
  223. package/dist/react/Tween.d.ts +7 -0
  224. package/dist/react/Tween.js +26 -0
  225. package/dist/react/Tween.js.map +1 -0
  226. package/dist/react/Tween.native.d.ts +6 -0
  227. package/dist/react/Tween.native.js +43 -0
  228. package/dist/react/Tween.native.js.map +1 -0
  229. package/dist/react/View3D.native.d.ts +4 -0
  230. package/dist/react/View3D.native.js +103 -0
  231. package/dist/react/View3D.native.js.map +1 -0
  232. package/dist/react/View3D.web.d.ts +4 -0
  233. package/dist/react/View3D.web.js +151 -0
  234. package/dist/react/View3D.web.js.map +1 -0
  235. package/dist/react/View3DHost.d.ts +143 -0
  236. package/dist/react/View3DHost.js +377 -0
  237. package/dist/react/View3DHost.js.map +1 -0
  238. package/dist/react/corners.d.ts +7 -0
  239. package/dist/react/corners.js +51 -0
  240. package/dist/react/corners.js.map +1 -0
  241. package/dist/react/easing.d.ts +15 -0
  242. package/dist/react/easing.js +10 -0
  243. package/dist/react/easing.js.map +1 -0
  244. package/dist/react/host.d.ts +7 -2
  245. package/dist/react/host.js +8 -3
  246. package/dist/react/host.js.map +1 -1
  247. package/dist/react/hostKeypad.d.ts +56 -0
  248. package/dist/react/hostKeypad.js +5 -0
  249. package/dist/react/hostKeypad.js.map +1 -0
  250. package/dist/react/motion.d.ts +77 -0
  251. package/dist/react/motion.js +173 -0
  252. package/dist/react/motion.js.map +1 -0
  253. package/dist/react/ports.js +90 -8
  254. package/dist/react/ports.js.map +1 -1
  255. package/dist/react/saving.d.ts +15 -0
  256. package/dist/react/saving.js +76 -0
  257. package/dist/react/saving.js.map +1 -0
  258. package/dist/react/store.d.ts +38 -1
  259. package/dist/react/store.js +31 -1
  260. package/dist/react/store.js.map +1 -1
  261. package/dist/react/theme.d.ts +10 -0
  262. package/dist/react/theme.js +8 -0
  263. package/dist/react/theme.js.map +1 -1
  264. package/dist/react/topRow.d.ts +22 -0
  265. package/dist/react/topRow.js +61 -0
  266. package/dist/react/topRow.js.map +1 -0
  267. package/dist/react/touch.d.ts +6 -0
  268. package/dist/react/touch.js +9 -0
  269. package/dist/react/touch.js.map +1 -0
  270. package/dist/render/ctx.d.ts +8 -0
  271. package/dist/render/draw.d.ts +33 -1
  272. package/dist/render/draw.js +593 -215
  273. package/dist/render/draw.js.map +1 -1
  274. package/dist/render/elevation.d.ts +65 -43
  275. package/dist/render/elevation.js +414 -140
  276. package/dist/render/elevation.js.map +1 -1
  277. package/dist/render/figmaIcons.d.ts +12 -0
  278. package/dist/render/figmaIcons.js +21 -0
  279. package/dist/render/figmaIcons.js.map +1 -0
  280. package/dist/render/hit.d.ts +22 -2
  281. package/dist/render/hit.js +168 -25
  282. package/dist/render/hit.js.map +1 -1
  283. package/dist/render/icons.js +69 -10
  284. package/dist/render/icons.js.map +1 -1
  285. package/dist/render/linkTile.d.ts +15 -0
  286. package/dist/render/linkTile.js +369 -0
  287. package/dist/render/linkTile.js.map +1 -0
  288. package/dist/render/markup.d.ts +11 -0
  289. package/dist/render/markup.js +112 -0
  290. package/dist/render/markup.js.map +1 -0
  291. package/dist/render/navigate.d.ts +88 -0
  292. package/dist/render/navigate.js +100 -0
  293. package/dist/render/navigate.js.map +1 -0
  294. package/dist/render/snap.d.ts +20 -1
  295. package/dist/render/snap.js +118 -25
  296. package/dist/render/snap.js.map +1 -1
  297. package/dist/render/squircle.d.ts +8 -0
  298. package/dist/render/squircle.js +71 -0
  299. package/dist/render/squircle.js.map +1 -0
  300. package/dist/render/view.d.ts +115 -2
  301. package/dist/render/view.js +244 -19
  302. package/dist/render/view.js.map +1 -1
  303. package/dist/skia/SkiaDrawCtx.d.ts +30 -2
  304. package/dist/skia/SkiaDrawCtx.js +198 -43
  305. package/dist/skia/SkiaDrawCtx.js.map +1 -1
  306. package/dist/skia/host.d.ts +18 -2
  307. package/dist/skia/host.js +46 -1
  308. package/dist/skia/host.js.map +1 -1
  309. package/dist/solver/equations.js +37 -2
  310. package/dist/solver/equations.js.map +1 -1
  311. package/dist/solver/gauss-newton.d.ts +17 -0
  312. package/dist/solver/gauss-newton.js +144 -36
  313. package/dist/solver/gauss-newton.js.map +1 -1
  314. package/dist/solver/linalg.d.ts +45 -2
  315. package/dist/solver/linalg.js +164 -10
  316. package/dist/solver/linalg.js.map +1 -1
  317. package/dist/solver/types.d.ts +5 -0
  318. package/dist/tools/annotate.d.ts +57 -1
  319. package/dist/tools/annotate.js +64 -43
  320. package/dist/tools/annotate.js.map +1 -1
  321. package/dist/tools/chamfer.d.ts +12 -0
  322. package/dist/tools/chamfer.js +114 -0
  323. package/dist/tools/chamfer.js.map +1 -0
  324. package/dist/tools/corner.d.ts +38 -0
  325. package/dist/tools/corner.js +99 -0
  326. package/dist/tools/corner.js.map +1 -0
  327. package/dist/tools/dim.d.ts +86 -9
  328. package/dist/tools/dim.js +581 -96
  329. package/dist/tools/dim.js.map +1 -1
  330. package/dist/tools/elevation.js +1 -1
  331. package/dist/tools/elevation.js.map +1 -1
  332. package/dist/tools/fillet.d.ts +9 -0
  333. package/dist/tools/fillet.js +86 -0
  334. package/dist/tools/fillet.js.map +1 -0
  335. package/dist/tools/freehand.d.ts +3 -2
  336. package/dist/tools/freehand.js +19 -12
  337. package/dist/tools/freehand.js.map +1 -1
  338. package/dist/tools/index.js +14 -4
  339. package/dist/tools/index.js.map +1 -1
  340. package/dist/tools/line.d.ts +8 -3
  341. package/dist/tools/line.js +66 -30
  342. package/dist/tools/line.js.map +1 -1
  343. package/dist/tools/modify.d.ts +13 -0
  344. package/dist/tools/modify.js +105 -25
  345. package/dist/tools/modify.js.map +1 -1
  346. package/dist/tools/openings.js +22 -15
  347. package/dist/tools/openings.js.map +1 -1
  348. package/dist/tools/registry.d.ts +8 -0
  349. package/dist/tools/registry.js +42 -2
  350. package/dist/tools/registry.js.map +1 -1
  351. package/dist/tools/select.d.ts +77 -3
  352. package/dist/tools/select.js +560 -74
  353. package/dist/tools/select.js.map +1 -1
  354. package/dist/tools/shapes.d.ts +14 -0
  355. package/dist/tools/shapes.js +154 -75
  356. package/dist/tools/shapes.js.map +1 -1
  357. package/dist/units/format.d.ts +10 -2
  358. package/dist/units/format.js +18 -3
  359. package/dist/units/format.js.map +1 -1
  360. package/dist/view3d/build.d.ts +35 -0
  361. package/dist/view3d/build.js +630 -0
  362. package/dist/view3d/build.js.map +1 -0
  363. package/dist/view3d/camera.d.ts +60 -0
  364. package/dist/view3d/camera.js +84 -0
  365. package/dist/view3d/camera.js.map +1 -0
  366. package/dist/view3d/fatLines.d.ts +11 -0
  367. package/dist/view3d/fatLines.js +83 -0
  368. package/dist/view3d/fatLines.js.map +1 -0
  369. package/dist/view3d/lines.d.ts +17 -0
  370. package/dist/view3d/lines.js +271 -0
  371. package/dist/view3d/lines.js.map +1 -0
  372. package/dist/view3d/mesh.d.ts +51 -0
  373. package/dist/view3d/mesh.js +101 -0
  374. package/dist/view3d/mesh.js.map +1 -0
  375. package/dist/view3d/poly.d.ts +16 -0
  376. package/dist/view3d/poly.js +109 -0
  377. package/dist/view3d/poly.js.map +1 -0
  378. package/dist/view3d/viewer.d.ts +86 -0
  379. package/dist/view3d/viewer.js +350 -0
  380. package/dist/view3d/viewer.js.map +1 -0
  381. package/package.json +15 -2
  382. package/src/app/edit.ts +83 -12
  383. package/src/app/main.ts +11 -5
  384. package/src/app/state.ts +38 -5
  385. package/src/data/memory.ts +2 -2
  386. package/src/data/provider.ts +15 -7
  387. package/src/data/sync.ts +87 -50
  388. package/src/editor/actions.ts +292 -83
  389. package/src/editor/confirm.ts +58 -0
  390. package/src/editor/elevation.ts +698 -478
  391. package/src/editor/face.ts +227 -0
  392. package/src/editor/files.ts +40 -4
  393. package/src/editor/gestures.ts +147 -31
  394. package/src/editor/keypad.ts +43 -11
  395. package/src/editor/keys.ts +25 -5
  396. package/src/editor/laser.ts +98 -20
  397. package/src/editor/linkActions.ts +194 -0
  398. package/src/editor/linkFollow.ts +43 -0
  399. package/src/editor/linkWrite.ts +77 -0
  400. package/src/editor/links.ts +181 -0
  401. package/src/editor/markup.ts +92 -8
  402. package/src/editor/mode.ts +83 -7
  403. package/src/editor/ports.ts +37 -6
  404. package/src/editor/project.ts +155 -26
  405. package/src/editor/selection.ts +54 -8
  406. package/src/editor/status.ts +2 -0
  407. package/src/editor/tooltips.ts +47 -0
  408. package/src/editor/view3d.ts +119 -0
  409. package/src/editor/view3dState.ts +61 -0
  410. package/src/export/dxf.ts +1 -1
  411. package/src/export/pdf.ts +15 -7
  412. package/src/export/plan.ts +119 -35
  413. package/src/index.ts +5 -0
  414. package/src/input/keyboard.ts +2 -4
  415. package/src/model/constraints.ts +13 -4
  416. package/src/model/demo.ts +3 -3
  417. package/src/model/elevation.ts +6 -16
  418. package/src/model/faces.ts +153 -0
  419. package/src/model/facesolve.ts +322 -0
  420. package/src/model/history.ts +19 -11
  421. package/src/model/images.ts +35 -0
  422. package/src/model/links.ts +77 -0
  423. package/src/model/markup.ts +80 -0
  424. package/src/model/measurement.ts +26 -0
  425. package/src/model/openings.ts +6 -0
  426. package/src/model/planGeom.ts +174 -8
  427. package/src/model/project.ts +3 -2
  428. package/src/model/projectfile.ts +2 -1
  429. package/src/model/rooms.ts +1 -1
  430. package/src/model/settings.ts +8 -2
  431. package/src/model/sketch.ts +101 -14
  432. package/src/model/smooth.ts +51 -0
  433. package/src/model/store.ts +35 -4
  434. package/src/model/types.ts +170 -8
  435. package/src/model/wallfaces.ts +126 -17
  436. package/src/model/wallshape.ts +97 -0
  437. package/src/react/BottomBar.tsx +263 -46
  438. package/src/react/Buttons.tsx +50 -9
  439. package/src/react/CadEditor.tsx +133 -30
  440. package/src/react/ConfirmSheet.tsx +38 -0
  441. package/src/react/ConflictSheet.tsx +19 -12
  442. package/src/react/Drawer.tsx +213 -110
  443. package/src/react/Duck.tsx +50 -0
  444. package/src/react/Empty3D.tsx +32 -0
  445. package/src/react/FitScroll.tsx +19 -0
  446. package/src/react/Icon.native.tsx +5 -0
  447. package/src/react/Icon.web.tsx +5 -0
  448. package/src/react/KeypadSheet.tsx +253 -60
  449. package/src/react/LaserTray.tsx +12 -8
  450. package/src/react/MarkupPanel.tsx +150 -0
  451. package/src/react/PageThumb.native.tsx +18 -7
  452. package/src/react/PageThumb.web.tsx +4 -4
  453. package/src/react/PlanCanvas.native.tsx +151 -34
  454. package/src/react/PlanCanvas.web.tsx +15 -5
  455. package/src/react/Popovers.tsx +116 -51
  456. package/src/react/Rail.tsx +360 -27
  457. package/src/react/ShapeMenu.tsx +66 -0
  458. package/src/react/Sheet.tsx +56 -11
  459. package/src/react/Slider.tsx +48 -0
  460. package/src/react/Toast.tsx +16 -9
  461. package/src/react/ToolTip.tsx +49 -0
  462. package/src/react/TopBar.tsx +97 -39
  463. package/src/react/Tween.native.tsx +36 -0
  464. package/src/react/Tween.tsx +24 -0
  465. package/src/react/View3D.native.tsx +131 -0
  466. package/src/react/View3D.web.tsx +131 -0
  467. package/src/react/View3DHost.ts +367 -0
  468. package/src/react/corners.ts +52 -0
  469. package/src/react/easing.ts +14 -0
  470. package/src/react/host.ts +8 -3
  471. package/src/react/hostKeypad.ts +66 -0
  472. package/src/react/motion.tsx +239 -0
  473. package/src/react/ports.ts +78 -9
  474. package/src/react/saving.ts +80 -0
  475. package/src/react/store.ts +35 -3
  476. package/src/react/theme.ts +8 -0
  477. package/src/react/topRow.ts +71 -0
  478. package/src/react/touch.ts +10 -0
  479. package/src/render/ctx.ts +8 -0
  480. package/src/render/draw.ts +437 -175
  481. package/src/render/elevation.ts +349 -143
  482. package/src/render/figmaIcons.ts +22 -0
  483. package/src/render/hit.ts +140 -21
  484. package/src/render/icons.ts +69 -10
  485. package/src/render/linkTile.ts +297 -0
  486. package/src/render/markup.ts +91 -0
  487. package/src/render/navigate.ts +114 -0
  488. package/src/render/snap.ts +105 -22
  489. package/src/render/squircle.ts +73 -0
  490. package/src/render/view.ts +255 -19
  491. package/src/skia/SkiaDrawCtx.ts +163 -41
  492. package/src/skia/host.ts +46 -1
  493. package/src/solver/equations.ts +37 -2
  494. package/src/solver/gauss-newton.ts +125 -28
  495. package/src/solver/linalg.ts +141 -5
  496. package/src/solver/types.ts +5 -0
  497. package/src/styles.css +91 -42
  498. package/src/tools/annotate.ts +58 -29
  499. package/src/tools/chamfer.ts +103 -0
  500. package/src/tools/corner.ts +99 -0
  501. package/src/tools/dim.ts +524 -92
  502. package/src/tools/elevation.ts +1 -1
  503. package/src/tools/fillet.ts +82 -0
  504. package/src/tools/freehand.ts +20 -16
  505. package/src/tools/index.ts +17 -4
  506. package/src/tools/line.ts +59 -23
  507. package/src/tools/modify.ts +86 -24
  508. package/src/tools/openings.ts +8 -13
  509. package/src/tools/registry.ts +27 -2
  510. package/src/tools/select.ts +424 -75
  511. package/src/tools/shapes.ts +119 -58
  512. package/src/ui/ctx.ts +2 -1
  513. package/src/ui/domPorts.ts +23 -4
  514. package/src/ui/drawer.ts +6 -26
  515. package/src/ui/elevation.ts +10 -101
  516. package/src/ui/keypad.ts +8 -14
  517. package/src/ui/laser.ts +2 -2
  518. package/src/ui/menu.ts +63 -17
  519. package/src/ui/noteinput.ts +3 -3
  520. package/src/ui/opacity.ts +108 -0
  521. package/src/ui/palette.ts +67 -12
  522. package/src/ui/rail.ts +21 -7
  523. package/src/ui/topbar.ts +4 -14
  524. package/src/units/format.ts +18 -3
  525. package/src/view3d/build.ts +607 -0
  526. package/src/view3d/camera.ts +113 -0
  527. package/src/view3d/fatLines.ts +83 -0
  528. package/src/view3d/lines.ts +258 -0
  529. package/src/view3d/mesh.ts +111 -0
  530. package/src/view3d/poly.ts +104 -0
  531. package/src/view3d/viewer.ts +348 -0
  532. package/dist/react/ElevCanvas.native.d.ts +0 -3
  533. package/dist/react/ElevCanvas.native.js +0 -58
  534. package/dist/react/ElevCanvas.native.js.map +0 -1
  535. package/dist/react/ElevCanvas.web.d.ts +0 -4
  536. package/dist/react/ElevCanvas.web.js +0 -44
  537. package/dist/react/ElevCanvas.web.js.map +0 -1
  538. package/dist/react/ElevationSheet.d.ts +0 -2
  539. package/dist/react/ElevationSheet.js +0 -38
  540. package/dist/react/ElevationSheet.js.map +0 -1
  541. package/dist/render/elevationView.d.ts +0 -3
  542. package/dist/render/elevationView.js +0 -100
  543. package/dist/render/elevationView.js.map +0 -1
  544. package/src/react/ElevCanvas.native.tsx +0 -68
  545. package/src/react/ElevCanvas.web.tsx +0 -42
  546. package/src/react/ElevationSheet.tsx +0 -88
  547. package/src/render/elevationView.ts +0 -73
@@ -1 +1 @@
1
- {"version":3,"file":"Drawer.js","sourceRoot":"","sources":["../../src/react/Drawer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACrH,OAAO,EACL,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EACrH,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,kBAAkB,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,GACvH,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,IAAI,GAA0B,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;AACpG,MAAM,KAAK,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;AAE1E,gEAAgE;AAChE,MAAM,UAAU,MAAM;IACpB,MAAM,OAAO,GAAG,gBAAgB,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,mBAAmB,EAAE,CAAC;IACtE,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC;IACtB,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,CACL,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,kBAAkB,EAAC,eAAe,EAAC,MAAM,EAAC,QAAQ,aAC1G,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,IAAI,aACjB,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,iBAAiB,EAAC,SAAS,YAC7C,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CACxB,KAAC,SAAS,IAAS,iBAAiB,EAAC,KAAK,EAAC,kBAAkB,EAAE,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EACjI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,YACxD,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,YAAG,KAAK,GAAQ,IAF1D,CAAC,CAGL,CACb,CAAC,GACG,EACP,KAAC,SAAS,IAAC,iBAAiB,EAAC,QAAQ,EAAC,kBAAkB,EAAC,aAAa,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,YAAE,KAAC,IAAI,IAAC,IAAI,EAAC,OAAO,GAAG,GAAY,IACnI,EACP,MAAC,UAAU,IAAC,qBAAqB,EAAE,CAAC,CAAC,IAAI,aACtC,GAAG,KAAK,OAAO,IAAI,KAAC,KAAK,IAAC,OAAO,EAAE,OAAO,GAAI,EAC9C,GAAG,KAAK,QAAQ,IAAI,KAAC,MAAM,KAAG,EAC9B,GAAG,KAAK,OAAO,IAAI,KAAC,MAAM,KAAG,IACnB,IACR,CACR,CAAC;AACJ,CAAC;AAED,yFAAyF;AACzF,SAAS,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAErE;IACC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,GAAG,MAAM,CAAY,IAAI,CAAC,CAAC;IAChG,SAAS,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO;QAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACpE,SAAS,CAAC,GAAG,EAAE,GAAG,IAAI,SAAS;QAAE,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9F,OAAO,CACL,KAAC,SAAS,IAAC,GAAG,EAAE,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,iBAAiB,EAAE,SAAS,EACvI,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EACvD,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,IAAI,IAAI,KAAK,KAAK;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAC9E,eAAe,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAI,CACjD,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAA4D;IACvG,OAAO,CACL,KAAC,SAAS,IAAC,iBAAiB,EAAC,QAAQ,EAAC,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,YAC/F,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,YAAG,KAAK,GAAQ,GAChE,CACb,CAAC;AACJ,CAAC;AAED,SAAS,KAAK,CAAC,EAAE,OAAO,EAAuB;IAC7C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,EAAE,CAAC;IAC5C,OAAO,CACL,8BACE,KAAC,SAAS,IAAC,KAAK,EAAC,cAAc,EAAC,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAI,EACzG,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,GAAG,0BAAkB,EACpC,KAAC,SAAS,IAAC,KAAK,EAAC,WAAW,EAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAI,EAC/F,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,aACpB,KAAC,WAAW,IAAC,KAAK,EAAC,WAAW,EAAC,OAAO,EAAE,aAAa,GAAI,EACzD,KAAC,WAAW,IAAC,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAG,IACtG,EACP,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,KAAK,aAClB,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,SAAS,aACtB,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,sBAAc,EAC1D,KAAC,WAAW,IAAC,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAE,OAAO,GAAI,IAC3C,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,IAAI,YAChB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CACtB,MAAC,SAAS,IAAY,iBAAiB,EAAC,QAAQ,EAAC,kBAAkB,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAC1G,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,aAC7D,KAAC,SAAS,IAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,GAAI,EACxC,KAAC,IAAI,IAAC,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,QAAQ,YAAG,CAAC,CAAC,IAAI,GAAQ,KAH5C,CAAC,CAAC,EAAE,CAIR,CACb,CAAC,GACG,IACF,IACN,CACJ,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAyE;IACvH,OAAO,CACL,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,GAAG,aAChB,MAAC,IAAI,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,aACtB,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,YAAG,KAAK,GAAQ,EACrC,GAAG,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,MAAM,YAAG,GAAG,GAAQ,CAAC,CAAC,CAAC,IAAI,IAC5C,EACP,KAAC,MAAM,IAAC,kBAAkB,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,UAAU,EAAC,MAAM,GAAG,IACpI,CACR,CAAC;AACJ,CAAC;AAED,SAAS,MAAM;IACb,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,OAAO,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;IACxE,OAAO,CACL,8BACE,KAAC,SAAS,IAAC,KAAK,EAAC,wBAAwB,EAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,mBAAmB,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,GAAI,EACvL,EAAE,IAAI,CACL,8BACE,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,GAAG,aAChB,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,8BAAsB,EAC5C,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,aACpB,KAAC,WAAW,IAAC,KAAK,EAAC,QAAG,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,GAAI,EAC5F,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,aAAG,EAAE,SAAS,EAC1E,KAAC,WAAW,IAAC,KAAK,EAAC,GAAG,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,GAAI,IACrF,IACF,EACP,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,OAAO,aACpB,KAAC,WAAW,IAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,EAAE,OAAO,EAAE,kBAAkB,GAAI,EAC9F,KAAC,WAAW,IAAC,KAAK,EAAC,WAAW,EAAC,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,GAAI,EACnF,KAAC,WAAW,IAAC,KAAK,EAAC,cAAc,EAAC,OAAO,EAAE,cAAc,EAAE,MAAM,SAAG,IAC/D,IACN,CACJ,EACA,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,KAAC,SAAS,IAAS,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAA5E,CAAC,CAA+E,CAAC,IACrI,CACJ,CAAC;AACJ,CAAC;AAED,SAAS,MAAM;IACb,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;IAC9B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM;QAAE,OAAO,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,KAAK,kIAA0H,CAAC;IAC9K,OAAO,CACL,8BACG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CACnB,MAAC,IAAI,IAAY,KAAK,EAAE,CAAC,CAAC,OAAO,aAC/B,KAAC,SAAS,IAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,UAAU,KAAK,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAI,EACjL,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,IAAI,aACjB,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,GAAG,aAAE,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,IAAI,YAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAQ,cAAa,EAC9E,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,GAAG,aAAE,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,IAAI,YAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAQ,kBAAiB,IAC3E,KALE,CAAC,CAAC,EAAE,CAMR,CACR,CAAC,EACF,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,GAAG,aAChB,MAAC,IAAI,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,aACtB,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,sBAAc,EAC7D,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,MAAM,8CAAsC,IACtD,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,YAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAQ,IACzE,IACN,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC;IAC1B,MAAM,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,kCAAkC,EAAE;IAC/I,IAAI,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;IACpK,IAAI,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;IACrF,GAAG,EAAE,EAAE,eAAe,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE;IACpE,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE;IAC5E,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE;IACzH,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;IACjE,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE;IACpL,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE;IACvG,OAAO,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;IAC1E,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE;IACjH,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE;IAChF,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;IACjH,SAAS,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;IAClF,IAAI,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE;IACxD,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE;IAC7I,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,EAAE;IACrG,GAAG,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE;IACjK,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;IAC1D,MAAM,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE;IACrE,OAAO,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE;IAC/D,OAAO,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE;IAChH,IAAI,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE;IACrD,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE;IACrD,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE;IAC1C,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,EAAE;CAC3F,CAAC,CAAC"}
1
+ {"version":3,"file":"Drawer.js","sourceRoot":"","sources":["../../src/react/Drawer.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { type ReactNode } from 'react';
2
+ /** A gesture on the drawing is in motion, or not (the editor's `interacting` port). */
3
+ export declare function setInteracting(on: boolean): void;
4
+ /**
5
+ * The chrome inside steps aside while a gesture on the drawing moves, when `active` (a phone). `held`: it stays in
6
+ * view but out of reach — a sheet is up over the drawing (a tablet's or a computer's keypad): a tap on it reaches the
7
+ * drawing beneath, which closes the sheet, as a tap outside a sheet does.
8
+ */
9
+ export declare function Duck({ active, held, children }: {
10
+ active: boolean;
11
+ held?: boolean;
12
+ children: ReactNode;
13
+ }): import("react").JSX.Element;
@@ -0,0 +1,45 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useEffect, useRef, useSyncExternalStore } from 'react';
3
+ import { Animated, Platform, StyleSheet } from 'react-native';
4
+ /*
5
+ On a phone the floating chrome — the top bar, the tabs, the rail, the bottom bar and trash, the trays — steps aside
6
+ while a gesture on the drawing is in motion (a stroke, a drag, a pan or pinch that moved; never a tap: see
7
+ editor/gestures.ts), and comes back as the last finger lifts, so the drawing gets the whole of a small screen. As
8
+ BOLDR's annotation screen does it: out in 120 ms, back in 200 ms (a gesture that ends mid-fade turns round from
9
+ where it is), and untouchable while it's away. The fade runs on the native driver, so it stays smooth while the
10
+ JavaScript thread is busy redrawing the plan under a pinch.
11
+ */
12
+ let moving = false;
13
+ const listeners = new Set();
14
+ const subscribe = (fn) => { listeners.add(fn); return () => { listeners.delete(fn); }; };
15
+ const isMoving = () => moving;
16
+ /** A gesture on the drawing is in motion, or not (the editor's `interacting` port). */
17
+ export function setInteracting(on) {
18
+ if (on === moving)
19
+ return;
20
+ moving = on;
21
+ listeners.forEach(fn => fn());
22
+ }
23
+ const OUT_MS = 120, IN_MS = 200;
24
+ /**
25
+ * The chrome inside steps aside while a gesture on the drawing moves, when `active` (a phone). `held`: it stays in
26
+ * view but out of reach — a sheet is up over the drawing (a tablet's or a computer's keypad): a tap on it reaches the
27
+ * drawing beneath, which closes the sheet, as a tap outside a sheet does.
28
+ */
29
+ export function Duck({ active, held = false, children }) {
30
+ const away = useSyncExternalStore(subscribe, isMoving) && active, off = away || held;
31
+ const opacity = useRef(new Animated.Value(1)).current, ref = useRef(null);
32
+ useEffect(() => {
33
+ Animated.timing(opacity, { toValue: away ? 0 : 1, duration: away ? OUT_MS : IN_MS, useNativeDriver: Platform.OS !== 'web' }).start();
34
+ }, [away, opacity]);
35
+ useEffect(() => {
36
+ // in a browser the chrome's own pass-through containers (box-none) turn their children back on, whatever is set
37
+ // above them: `inert` takes the whole of it out of reach (a device's pointerEvents="none" already does)
38
+ if (Platform.OS === 'web' && ref.current)
39
+ ref.current.inert = off;
40
+ }, [off]);
41
+ // (an editor closed mid-gesture mustn't leave the next one's chrome away)
42
+ useEffect(() => () => setInteracting(false), []);
43
+ return (_jsx(Animated.View, { ref: ref, pointerEvents: off ? 'none' : 'box-none', "aria-hidden": away || undefined, testID: "chrome", style: [StyleSheet.absoluteFill, { opacity }], children: children }));
44
+ }
45
+ //# sourceMappingURL=Duck.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Duck.js","sourceRoot":"","sources":["../../src/react/Duck.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,oBAAoB,EAAkB,MAAM,OAAO,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAa,MAAM,cAAc,CAAC;AAEzE;;;;;;;EAOE;AAEF,IAAI,MAAM,GAAG,KAAK,CAAC;AACnB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAC;AACxC,MAAM,SAAS,GAAG,CAAC,EAAc,EAAE,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACrG,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC;AAE9B,uFAAuF;AACvF,MAAM,UAAU,cAAc,CAAC,EAAW;IACxC,IAAI,EAAE,KAAK,MAAM;QAAE,OAAO;IAC1B,MAAM,GAAG,EAAE,CAAC;IACZ,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,MAAM,GAAG,GAAG,EAAE,KAAK,GAAG,GAAG,CAAC;AAEhC;;;;GAIG;AACH,MAAM,UAAU,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,GAAG,KAAK,EAAE,QAAQ,EAA4D;IAC/G,MAAM,IAAI,GAAG,oBAAoB,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,MAAM,EAAE,GAAG,GAAG,IAAI,IAAI,IAAI,CAAC;IACrF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,CAAO,IAAI,CAAC,CAAC;IAChF,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IACvI,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACpB,SAAS,CAAC,GAAG,EAAE;QACb,gHAAgH;QAChH,wGAAwG;QACxG,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK,IAAI,GAAG,CAAC,OAAO;YAAG,GAAG,CAAC,OAAkC,CAAC,KAAK,GAAG,GAAG,CAAC;IAChG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACV,0EAA0E;IAC1E,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,OAAO,CACL,KAAC,QAAQ,CAAC,IAAI,IAAC,GAAG,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,iBAAe,IAAI,IAAI,SAAS,EAAE,MAAM,EAAC,QAAQ,EAAC,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,CAAC,YAC7J,QAAQ,GACK,CACjB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ /** Over an empty 3D view: what it shows, and how to get walls into it. */
2
+ export declare function Empty3D(): import("react").JSX.Element | null;
@@ -0,0 +1,39 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Text, View } from 'react-native';
3
+ import { planSK } from '../model/store';
4
+ import { useEditorKey } from './store';
5
+ import { C, FONT } from './theme';
6
+ import { createSheet } from './corners';
7
+ /** Whether the plan has a wall to stand up (lines and guides stay flat on the plan). */
8
+ function hasWalls() {
9
+ const sk = planSK();
10
+ for (const id in sk.lines) {
11
+ const l = sk.lines[id];
12
+ if (l.kind === 'wall' && !l.constr)
13
+ return true;
14
+ }
15
+ for (const id in sk.arcs) {
16
+ const a = sk.arcs[id];
17
+ if (a.kind === 'wall' && !a.constr)
18
+ return true;
19
+ }
20
+ for (const id in sk.circles) {
21
+ const c = sk.circles[id];
22
+ if (c.kind === 'wall' && !c.constr)
23
+ return true;
24
+ }
25
+ return false;
26
+ }
27
+ /** Over an empty 3D view: what it shows, and how to get walls into it. */
28
+ export function Empty3D() {
29
+ useEditorKey(() => String(hasWalls()));
30
+ if (hasWalls())
31
+ return null;
32
+ return (_jsxs(View, { pointerEvents: "none", style: s.wrap, testID: "empty3d", children: [_jsx(Text, { style: s.title, children: "No walls to stand up yet" }), _jsx(Text, { style: s.sub, children: "3D shows walls, with their doors, windows and cabinets. In Draft, draw with Walls on, or select lines and tap To wall." })] }));
33
+ }
34
+ const s = createSheet({
35
+ wrap: { position: 'absolute', left: 24, right: 24, top: 0, bottom: 0, alignItems: 'center', justifyContent: 'center' },
36
+ title: { fontFamily: FONT, fontSize: 16, fontWeight: '600', color: C.lg2, textAlign: 'center' },
37
+ sub: { fontFamily: FONT, fontSize: 13, color: C.g4, textAlign: 'center', marginTop: 6, maxWidth: 360 },
38
+ });
39
+ //# sourceMappingURL=Empty3D.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Empty3D.js","sourceRoot":"","sources":["../../src/react/Empty3D.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,wFAAwF;AACxF,SAAS,QAAQ;IACf,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;QAAC,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;IAAC,CAAC;IACvG,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;QAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;IAAC,CAAC;IACrG,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAAC,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;IAAC,CAAC;IAC3G,OAAO,KAAK,CAAC;AACf,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,OAAO;IACrB,YAAY,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACvC,IAAI,QAAQ,EAAE;QAAE,OAAO,IAAI,CAAC;IAC5B,OAAO,CACL,MAAC,IAAI,IAAC,aAAa,EAAC,MAAM,EAAC,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAC,SAAS,aACxD,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,KAAK,yCAAiC,EACrD,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,GAAG,uIAA+H,IAC5I,CACR,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,GAAG,WAAW,CAAC;IACpB,IAAI,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE;IACtH,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC/F,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE;CACvG,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { type ReactNode } from 'react';
2
+ import { type StyleProp, type ViewStyle } from 'react-native';
3
+ export declare function FitScroll({ children, contentContainerStyle }: {
4
+ children: ReactNode;
5
+ contentContainerStyle?: StyleProp<ViewStyle>;
6
+ }): import("react").JSX.Element;
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { ScrollView } from 'react-native';
4
+ /*
5
+ A menu's or panel's body: fixed in its box. It neither scrolls nor bounces while everything fits (an iOS ScrollView
6
+ drags and springs back even when there's nothing more to see); only when the screen is too short to hold it all —
7
+ a phone turned on its side — does it scroll, without the bounce.
8
+ */
9
+ export function FitScroll({ children, contentContainerStyle }) {
10
+ const [box, setBox] = useState(0), [content, setContent] = useState(0);
11
+ const over = content > box + 1;
12
+ return (_jsx(ScrollView, { scrollEnabled: over, bounces: false, alwaysBounceVertical: false, overScrollMode: "never", showsVerticalScrollIndicator: over, contentContainerStyle: contentContainerStyle, onLayout: e => setBox(e.nativeEvent.layout.height), onContentSizeChange: (_, h) => setContent(h), children: children }));
13
+ }
14
+ //# sourceMappingURL=FitScroll.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FitScroll.js","sourceRoot":"","sources":["../../src/react/FitScroll.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,UAAU,EAAkC,MAAM,cAAc,CAAC;AAE1E;;;;EAIE;AACF,MAAM,UAAU,SAAS,CAAC,EAAE,QAAQ,EAAE,qBAAqB,EAAyE;IAClI,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACvE,MAAM,IAAI,GAAG,OAAO,GAAG,GAAG,GAAG,CAAC,CAAC;IAC/B,OAAO,CACL,KAAC,UAAU,IAAC,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,cAAc,EAAC,OAAO,EAClG,4BAA4B,EAAE,IAAI,EAAE,qBAAqB,EAAE,qBAAqB,EAChF,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,YAC/F,QAAQ,GACE,CACd,CAAC;AACJ,CAAC"}
@@ -4,3 +4,9 @@ export declare function Icon({ name, size, color }: {
4
4
  size?: number;
5
5
  color?: string;
6
6
  }): import("react").JSX.Element;
7
+ /** An SVG as Figma exported it (render/figmaIcons.ts), shown at `width` × `height`. */
8
+ export declare function RawSvg({ xml, width, height }: {
9
+ xml: string;
10
+ width: number;
11
+ height: number;
12
+ }): import("react").JSX.Element;
@@ -5,4 +5,8 @@ import { icon } from '../render/icons';
5
5
  export function Icon({ name, size = 24, color = '#fff' }) {
6
6
  return _jsx(SvgXml, { xml: icon(name, size), width: size, height: size, color: color });
7
7
  }
8
+ /** An SVG as Figma exported it (render/figmaIcons.ts), shown at `width` × `height`. */
9
+ export function RawSvg({ xml, width, height }) {
10
+ return _jsx(SvgXml, { xml: xml, width: width, height: height });
11
+ }
8
12
  //# sourceMappingURL=Icon.native.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.native.js","sourceRoot":"","sources":["../../src/react/Icon.native.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,iEAAiE;AACjE,MAAM,UAAU,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,GAAG,MAAM,EAAmD;IACvG,OAAO,KAAC,MAAM,IAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAI,CAAC;AACpF,CAAC"}
1
+ {"version":3,"file":"Icon.native.js","sourceRoot":"","sources":["../../src/react/Icon.native.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,iEAAiE;AACjE,MAAM,UAAU,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,GAAG,MAAM,EAAmD;IACvG,OAAO,KAAC,MAAM,IAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAI,CAAC;AACpF,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAkD;IAC3F,OAAO,KAAC,MAAM,IAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,CAAC;AAC5D,CAAC"}
@@ -4,3 +4,9 @@ export declare function Icon({ name, size, color }: {
4
4
  size?: number;
5
5
  color?: string;
6
6
  }): import("react").JSX.Element;
7
+ /** An SVG as Figma exported it (render/figmaIcons.ts), shown at `width` × `height`. */
8
+ export declare function RawSvg({ xml, width, height }: {
9
+ xml: string;
10
+ width: number;
11
+ height: number;
12
+ }): import("react").JSX.Element;
@@ -4,4 +4,8 @@ import { icon } from '../render/icons';
4
4
  export function Icon({ name, size = 24, color = '#fff' }) {
5
5
  return _jsx("span", { "aria-hidden": true, style: { display: 'flex', color, lineHeight: 0 }, dangerouslySetInnerHTML: { __html: icon(name, size) } });
6
6
  }
7
+ /** An SVG as Figma exported it (render/figmaIcons.ts), shown at `width` × `height`. */
8
+ export function RawSvg({ xml, width, height }) {
9
+ return _jsx("span", { "aria-hidden": true, style: { display: 'flex', width, height, lineHeight: 0 }, dangerouslySetInnerHTML: { __html: xml.replace(/width="[^"]*" height="[^"]*"/, `width="${width}" height="${height}"`) } });
10
+ }
7
11
  //# sourceMappingURL=Icon.web.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.web.js","sourceRoot":"","sources":["../../src/react/Icon.web.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,iEAAiE;AACjE,MAAM,UAAU,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,GAAG,MAAM,EAAmD;IACvG,OAAO,oCAAkB,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,GAAI,CAAC;AACvI,CAAC"}
1
+ {"version":3,"file":"Icon.web.js","sourceRoot":"","sources":["../../src/react/Icon.web.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,iEAAiE;AACjE,MAAM,UAAU,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,GAAG,MAAM,EAAmD;IACvG,OAAO,oCAAkB,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,GAAI,CAAC;AACvI,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAkD;IAC3F,OAAO,oCAAkB,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,uBAAuB,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,8BAA8B,EAAE,UAAU,KAAK,aAAa,MAAM,GAAG,CAAC,EAAE,GAAI,CAAC;AACjN,CAAC"}
@@ -1,4 +1,11 @@
1
- /** The fraction keypad (Board Optimizer style): its state and rules are in editor/keypad.ts. No system keyboard. */
2
- export declare function KeypadSheet({ wide }: {
1
+ import type { MeasurementList } from './hostKeypad';
2
+ /**
3
+ * The fraction keypad (BOLDR's measurement keypad): the title with a close ✕, the value in a dark well, slate keys
4
+ * (digits; unit and symbol keys lighter; Del red), and a full-width Apply. Its state and rules are in editor/keypad.ts.
5
+ * No system keyboard.
6
+ */
7
+ export declare function KeypadSheet({ wide, open, measurementList }: {
3
8
  wide: boolean;
9
+ open: boolean;
10
+ measurementList?: MeasurementList;
4
11
  }): import("react").JSX.Element | null;
@@ -1,51 +1,183 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Pressable, StyleSheet, Text, View } from 'react-native';
3
- import { keypadLaserReading, laser } from '../editor/laser';
4
- import { FRACTIONS, fractionRowShown, fractionText, keyLayout, keypadApply, keypadBackspace, keypadFresh, keypadInsert, keypadPreview, keypadSetReading, keypadSpec, keypadText, parenText, } from '../editor/keypad';
5
- import { Pill } from './Buttons';
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { forwardRef, memo, useCallback, useEffect, useImperativeHandle, useRef, useState } from 'react';
3
+ import { FlatList, ScrollView, Text, View } from 'react-native';
4
+ import { hostPicksMeasurements, measurementFits, offersJobMeasurements, pickJobMeasurement, watchJobMeasurements, } from '../editor/links';
5
+ import { fromUm, linkKey } from '../model/links';
6
+ import { fmtAng, fmtLen } from '../units';
7
+ import { FRACTIONS, fractionRowShown, fractionText, keyLayout, keypadApply, keypadBackspace, keypadFresh, keypadInsert, keypadPreview, keypadSpec, keypadText, keySpan, parenText, } from '../editor/keypad';
8
+ import { FitScroll } from './FitScroll';
6
9
  import { Icon } from './Icon';
7
10
  import { reactPorts } from './ports';
8
- import { Sheet } from './Sheet';
11
+ import { editorVersion, useEditorKey } from './store';
12
+ import { Sheet, useSheetMotion } from './Sheet';
9
13
  import { C, FONT } from './theme';
14
+ import { Tap } from './motion';
15
+ import { createSheet } from './corners';
16
+ import { touchUI } from './touch';
10
17
  const refresh = () => reactPorts.refresh('keypad');
11
- /** The fraction keypad (Board Optimizer style): its state and rules are in editor/keypad.ts. No system keyboard. */
12
- export function KeypadSheet({ wide }) {
13
- const spec = keypadSpec();
14
- if (!spec)
15
- return null;
18
+ /** The keys in rows of four columns (a wide key takes more). */
19
+ function rows(keys, numeric) {
20
+ const out = [];
21
+ let row = [], n = 0;
22
+ for (const k of keys) {
23
+ row.push(k);
24
+ n += keySpan(k, numeric);
25
+ if (n >= 4) {
26
+ out.push(row);
27
+ row = [];
28
+ n = 0;
29
+ }
30
+ }
31
+ if (row.length)
32
+ out.push(row);
33
+ return out;
34
+ }
35
+ /**
36
+ * The fraction keypad (BOLDR's measurement keypad): the title with a close ✕, the value in a dark well, slate keys
37
+ * (digits; unit and symbol keys lighter; Del red), and a full-width Apply. Its state and rules are in editor/keypad.ts.
38
+ * No system keyboard.
39
+ */
40
+ export function KeypadSheet({ wide, open, measurementList }) {
41
+ // (it follows every change while a value is typed)
42
+ useEditorKey(() => (open ? String(editorVersion()) : ''));
43
+ const spec = open ? keypadSpec() : null, shown = !!spec;
44
+ // in from the side (a phone: up from the bottom), and out again; what it showed last stays on it as it goes
45
+ const last = useRef(null), { present, motion } = useSheetMotion(shown, wide);
46
+ if (!spec) {
47
+ if (!present || !last.current)
48
+ return null;
49
+ return _jsx(Sheet, { wide: wide, label: "Enter a value", motion: motion, live: false, children: last.current });
50
+ }
51
+ last.current = _jsx(KeypadBody, { spec: spec, wide: wide, measurementList: measurementList });
52
+ return _jsx(Sheet, { wide: wide, label: "Enter a value", testID: "kp", motion: motion, children: last.current });
53
+ }
54
+ /**
55
+ * What's in the keypad: the title and ✕, the value, the extras and fractions, the keys, Apply — and, for a line's length
56
+ * or a dimension's angle, the job's measurements: a page to its right on a touch screen (swiped to, as BOLDR's own keypads
57
+ * do), Select from list on a desktop (the host's side drawer, or that page). It scrolls only where the screen's too short
58
+ * to hold it all (a small phone, a short window).
59
+ */
60
+ function KeypadBody({ spec, wide, measurementList }) {
61
+ const list = spec.measurements && offersJobMeasurements() ? spec.measurements : null;
62
+ const pager = useRef(null);
63
+ // a touch screen swipes to the keypad's own page of them; a desktop has Select from list — the host's side drawer,
64
+ // or (a host without one) that page
65
+ const touch = touchUI(), hostList = hostPicksMeasurements();
66
+ // (only into this keypad, while it's the one open: a host's list may answer late. The same function for as long as
67
+ // it's open, so a list the host draws needn't be drawn again as keys are typed.)
68
+ const pick = useCallback((t) => { if (keypadSpec() === spec)
69
+ spec.measurements?.pick(t); }, [spec]);
70
+ const selectFromList = list && !touch ? () => {
71
+ if (!hostList) {
72
+ pager.current?.show(1);
73
+ return;
74
+ }
75
+ void pickJobMeasurement(list.kind).then(t => { if (t)
76
+ pick(t); });
77
+ } : undefined;
78
+ const keys = _jsx(Keys, { spec: spec, wide: wide, selectFromList: selectFromList });
79
+ return (_jsx(FitScroll, { children: list && (touch || !hostList) ? _jsx(Pager, { ref: pager, kind: list.kind, pick: pick, measurementList: measurementList, children: keys }) : keys }));
80
+ }
81
+ /** The keypad's own page: its title and ✕ (and Select from list), the value, the choices and fractions, the keys, Apply. */
82
+ function Keys({ spec, wide, selectFromList }) {
16
83
  const text = keypadText(), prev = keypadPreview(), fresh = keypadFresh();
17
84
  const type = (t) => { keypadInsert(t); refresh(); };
18
- return (_jsxs(Sheet, { wide: wide, label: "Enter a value", testID: "kp", children: [_jsxs(View, { style: s.title, children: [_jsx(Text, { style: s.titleText, testID: "kpTitle", children: spec.title }), spec.sub ? _jsx(Text, { style: s.sub, children: spec.sub }) : null] }), _jsxs(View, { style: s.display, children: [_jsx(Text, { style: [s.value, !text && { color: 'rgba(255,255,255,0.45)' }, fresh && !!text && s.selected], testID: "kpIn", numberOfLines: 1, children: text || '0' }), _jsx(Text, { style: [s.prev, prev.bad && { color: '#FFC9C4' }], testID: "kpPrev", children: prev.text })] }), spec.extras && (_jsx(View, { style: s.extras, children: spec.extras().map(x => (_jsx(Pressable, { accessibilityRole: "button", accessibilityLabel: x.ariaLabel ?? x.label, onPress: () => { x.onPress(); refresh(); }, style: [s.extra, x.on && { backgroundColor: '#fff' }], children: _jsx(Text, { style: [s.extraText, x.on && { color: C.dark }, x.danger && { color: C.softRed }], children: x.label }) }, x.label))) })), fractionRowShown() && (_jsx(View, { style: s.fr, children: FRACTIONS.map(f => (_jsx(Pressable, { accessibilityRole: "button", accessibilityLabel: f, onPress: () => type(fractionText(f)), style: s.frKey, children: _jsx(Text, { style: s.frText, children: f }) }, f))) })), _jsx(View, { style: s.keys, children: keyLayout(spec.numeric).map(k => {
19
- const alt = k === '⌫' || k === 'space' || k === '( )' || k === "'" || k === '"';
20
- if (k === 'laser') {
21
- const off = !laser.on || spec.laser === false;
22
- return (_jsxs(Pressable, { accessibilityRole: "button", accessibilityLabel: "Use laser reading", disabled: off, onPress: () => { const v = keypadLaserReading(); if (v != null) {
23
- keypadSetReading(v);
24
- refresh();
25
- } }, style: [s.key, s.laser, off && { opacity: 0.35 }], children: [_jsx(Icon, { name: "bt", size: 18 }), _jsx(Text, { style: [s.keyText, { fontSize: 13 }], children: "Laser" })] }, k));
26
- }
27
- const press = k === '⌫' ? () => { keypadBackspace(); refresh(); } : k === 'space' ? () => type(' ') : k === '( )' ? () => type(parenText()) : () => type(k);
28
- return (_jsx(Pressable, { accessibilityRole: "button", accessibilityLabel: k === '⌫' ? 'Backspace' : k, onPress: press, style: ({ pressed }) => [s.key, alt && { backgroundColor: C.g3 }, pressed && { backgroundColor: C.g3 }], children: _jsx(Text, { style: [s.keyText, alt && { fontSize: 16 }], children: k }) }, k));
29
- }) }), _jsxs(View, { style: s.actions, children: [_jsx(Pill, { kind: "grey", label: "Cancel", onPress: () => reactPorts.closeKeypad(), style: { minWidth: 0 } }), _jsx(Pill, { label: "Apply", onPress: keypadApply, style: { flex: 1 }, testID: "kpDone" })] })] }));
85
+ return (_jsxs(_Fragment, { children: [_jsxs(View, { style: s.head, children: [_jsx(Tap, { accessibilityRole: "button", accessibilityLabel: "Cancel", testID: "kpCancel", hitSlop: 10, onPress: () => reactPorts.closeKeypad(), style: s.close, children: _jsx(Icon, { name: "close", size: 16 }) }), _jsx(Text, { style: s.titleText, testID: "kpTitle", numberOfLines: 1, accessibilityHint: spec.sub || undefined, children: spec.title }), selectFromList && (_jsx(Tap, { accessibilityRole: "button", accessibilityLabel: "Select from list", testID: "kpSelectList", onPress: selectFromList, style: s.selectList, children: _jsx(Text, { style: s.selectListText, children: "Select from list" }) }))] }), _jsxs(View, { style: [s.display, !wide && s.displayPhone], children: [_jsx(Text, { style: [s.value, !wide && { fontSize: 30 }, !text && { color: 'rgba(255,255,255,0.4)' }, fresh && !!text && s.selected], testID: "kpIn", numberOfLines: 1, children: text || '0' }), _jsx(Text, { style: [s.prev, prev.bad && { color: C.softRed }], testID: "kpPrev", children: prev.text })] }), spec.extras && (_jsx(View, { style: s.extras, children: spec.extras().map(x => (_jsx(Tap, { accessibilityRole: "button", accessibilityLabel: x.ariaLabel ?? x.label, onPress: () => { x.onPress(); refresh(); }, style: [s.extra, x.on && { backgroundColor: '#fff', borderColor: '#fff' }], children: _jsx(Text, { style: [s.extraText, x.on && { color: C.dark }, x.danger && { color: C.mutedRed }], numberOfLines: 1, children: x.label }) }, x.label))) })), fractionRowShown() && (_jsx(View, { style: s.fr, children: FRACTIONS.map(f => (_jsx(Tap, { accessibilityRole: "button", accessibilityLabel: f, onPress: () => type(fractionText(f)), style: [s.frKey], children: _jsx(Text, { style: s.frText, children: f }) }, f))) })), _jsx(View, { style: s.keys, children: rows(keyLayout(spec.numeric), spec.numeric).map((row, r) => _jsx(View, { style: s.row, children: row.map(k => {
86
+ if (k === '⌫') {
87
+ return (_jsx(Tap, { accessibilityRole: "button", accessibilityLabel: "Backspace", onPress: () => { keypadBackspace(); refresh(); }, style: [s.key, !wide && s.keyPhone, s.del], children: _jsx(Text, { style: s.delText, children: "Del" }) }, k));
88
+ }
89
+ // digits slate; units and symbols a lighter slate
90
+ const sym = !/^\d$/.test(k), press = k === '( )' ? () => type(parenText()) : () => type(k);
91
+ return (_jsx(Tap, { accessibilityRole: "button", accessibilityLabel: k, onPress: press, style: [s.key, !wide && s.keyPhone, sym && s.sym, keySpan(k, spec.numeric) === 3 && s.wide], children: _jsx(Text, { style: [s.keyText, k === '.' && { fontWeight: '400' }], children: k }) }, k));
92
+ }) }, r)) }), _jsx(Tap, { accessibilityRole: "button", accessibilityLabel: "Apply", testID: "kpDone", onPress: keypadApply, style: [s.apply], children: _jsx(Text, { style: s.applyText, children: "Apply" }) })] }));
93
+ }
94
+ /**
95
+ * The keys, and the job's measurements a page to their right — as BOLDR's own keypads have them (Skia annotation's plane
96
+ * dimension, MeasurementEntry): swiped between, with dots under them for the page it's on. The list's page is the keys'
97
+ * height, and is made only once it's first swiped toward (or shown): a keypad opened just to type asks the host for nothing.
98
+ * It's the host's list when it draws one (measurementList), and the editor's grid when it doesn't.
99
+ */
100
+ const Pager = forwardRef(function Pager({ kind, pick, measurementList, children }, ref) {
101
+ const scroll = useRef(null);
102
+ const [w, setW] = useState(0), [h, setH] = useState(0), [page, setPage] = useState(0), [listed, setListed] = useState(false);
103
+ const show = (p) => { if (p)
104
+ setListed(true); scroll.current?.scrollTo({ x: p * w, animated: true }); };
105
+ useImperativeHandle(ref, () => ({ show }));
106
+ return (_jsx(View, { onLayout: e => setW(Math.round(e.nativeEvent.layout.width)), children: !w ? children : (_jsxs(_Fragment, { children: [_jsxs(ScrollView, { ref: scroll, horizontal: true, pagingEnabled: true, showsHorizontalScrollIndicator: false, bounces: false, scrollEventThrottle: 16, onScroll: e => {
107
+ const x = e.nativeEvent.contentOffset.x;
108
+ if (x > 1 && !listed)
109
+ setListed(true);
110
+ setPage(Math.round(x / w));
111
+ }, children: [_jsx(View, { style: { width: w }, onLayout: e => setH(e.nativeEvent.layout.height), children: children }), _jsx(View, { style: { width: w, height: h }, testID: "kpList", children: listed && (measurementList
112
+ ? _jsx(HostList, { render: measurementList, kind: kind, pick: pick, width: w, height: h })
113
+ : _jsx(MeasurementPage, { kind: kind, pick: pick, width: w })) })] }), _jsx(View, { style: s.dots, children: [0, 1].map(i => (_jsx(Tap, { accessibilityRole: "button", accessibilityLabel: i ? 'The job’s measurements' : 'The keys', accessibilityState: { selected: page === i }, "aria-selected": page === i, testID: 'kpPage' + i, hitSlop: 8, onPress: () => show(i), style: [s.dot, page === i && s.dotOn] }, i))) })] })) }));
114
+ });
115
+ /**
116
+ * The host's own list on that page (measurementList), as a component of its own: whatever hooks the host's function
117
+ * uses belong to it rather than to the Pager (which mounts it only once swiped toward), and it's drawn again only when
118
+ * what it's given changes — not with every key typed.
119
+ */
120
+ const HostList = memo(function HostList({ render, ...page }) {
121
+ return _jsx(_Fragment, { children: render(page) });
122
+ });
123
+ /** A measurement tile on the list's page: its width, the gap between, and how many to a row. */
124
+ const LIST_COLS = 3, LIST_GAP = 7, LIST_TILE_H = 70;
125
+ /**
126
+ * The job's measurements (as the host lists them: CadLinks.measurements), those of the keypad's kind to pick — one
127
+ * picked sets the value from it, linked to it — and the others greyed out (a tap on one says why). Only what's in
128
+ * view is made: a job can have hundreds. For a host that doesn't draw its own list (measurementList).
129
+ */
130
+ function MeasurementPage({ kind, pick, width }) {
131
+ const [list, setList] = useState(null);
132
+ useEffect(() => watchJobMeasurements(setList), []);
133
+ const tileW = Math.floor((width - (LIST_COLS - 1) * LIST_GAP) / LIST_COLS);
134
+ return (_jsxs(View, { style: { flex: 1 }, children: [_jsx(Text, { style: s.listTitle, children: "Measurements in the job" }), list?.length === 0 && _jsx(Text, { style: s.listNone, children: "None in the job yet. Measure one with a connected tool, or type a value in." }), !!list?.length && (_jsx(FlatList, { data: list, numColumns: LIST_COLS, keyExtractor: linkKey, showsVerticalScrollIndicator: false, initialNumToRender: 12, columnWrapperStyle: { gap: LIST_GAP }, contentContainerStyle: { gap: LIST_GAP, paddingBottom: 2 }, renderItem: ({ item: t }) => {
135
+ const ok = measurementFits(t, kind);
136
+ const value = t.text ?? (t.value == null ? '—' : t.mkind === 'angle' ? fmtAng(t.value) : fmtLen(fromUm(t.value)));
137
+ return (_jsxs(Tap, { accessibilityRole: "button", accessibilityState: { disabled: !ok }, accessibilityLabel: (t.name ?? 'Measurement') + ', ' + value + (t.groupName ? ', ' + t.groupName : ''), testID: 'kpMeasure-' + t.id, onPress: () => pick(t), style: [s.listTile, { width: tileW }, !ok && s.listTileOff], children: [_jsx(Text, { style: s.listValue, numberOfLines: 1, children: value }), _jsxs(View, { children: [_jsx(Text, { style: s.listName, numberOfLines: 1, children: t.name ?? 'Measurement' }), t.groupName ? _jsx(Text, { style: s.listGroup, numberOfLines: 1, children: t.groupName }) : null] })] }));
138
+ } }))] }));
30
139
  }
31
- const s = StyleSheet.create({
32
- title: { flexDirection: 'row', alignItems: 'center', justifyContent: 'space-between', marginBottom: 10, gap: 8 },
33
- titleText: { fontFamily: FONT, fontSize: 16, fontWeight: '600', color: '#fff' },
34
- sub: { fontFamily: FONT, fontSize: 12, color: C.g4, fontWeight: '500', flexShrink: 1, textAlign: 'right' },
35
- display: { backgroundColor: C.blue, borderRadius: 8, minHeight: 84, alignItems: 'center', justifyContent: 'center', paddingVertical: 8, paddingHorizontal: 10, marginBottom: 10 },
36
- value: { fontFamily: FONT, fontSize: 32, fontWeight: '700', color: '#fff', letterSpacing: -0.3, paddingHorizontal: 4, borderRadius: 4 },
37
- selected: { backgroundColor: 'rgba(255,255,255,0.22)' },
38
- prev: { fontFamily: FONT, fontSize: 13, color: C.lblue2, minHeight: 17, fontWeight: '500' },
39
- extras: { flexDirection: 'row', flexWrap: 'wrap', gap: 6, marginBottom: 10 },
40
- extra: { height: 36, paddingHorizontal: 12, borderRadius: 18, backgroundColor: C.g2, justifyContent: 'center' },
41
- extraText: { fontFamily: FONT, fontSize: 13, fontWeight: '600', color: C.lg2 },
42
- fr: { flexDirection: 'row', gap: 5, marginBottom: 8 },
43
- frKey: { flex: 1, height: 38, borderRadius: 7, backgroundColor: C.g3, alignItems: 'center', justifyContent: 'center' },
44
- frText: { fontFamily: FONT, fontSize: 13, fontWeight: '600', color: '#fff' },
45
- keys: { flexDirection: 'row', flexWrap: 'wrap', gap: 7, marginBottom: 12 },
46
- key: { width: '23%', flexGrow: 1, height: 52, borderRadius: 8, backgroundColor: C.g2, alignItems: 'center', justifyContent: 'center', flexDirection: 'row', gap: 4 },
47
- keyText: { fontFamily: FONT, fontSize: 21, fontWeight: '600', color: '#fff' },
48
- laser: { backgroundColor: C.blue },
49
- actions: { flexDirection: 'row', gap: 10 },
140
+ const s = createSheet({
141
+ head: { flexDirection: 'row', alignItems: 'center', gap: 12, marginBottom: 12, minHeight: 30 },
142
+ close: { width: 20, height: 20, alignItems: 'center', justifyContent: 'center' },
143
+ titleText: { fontFamily: FONT, fontSize: 16, fontWeight: '600', color: '#fff', flex: 1 },
144
+ // Select from list: a yellow chip in the header's corner (Figma 2639:93162)
145
+ selectList: { height: 30, paddingHorizontal: 10.5, borderRadius: 7, backgroundColor: C.yellow, justifyContent: 'center' },
146
+ selectListText: { fontFamily: FONT, fontSize: 13, fontWeight: '500', color: C.dark },
147
+ display: { backgroundColor: C.dark, borderRadius: 12, minHeight: 80, alignItems: 'center', justifyContent: 'center', paddingVertical: 8, paddingHorizontal: 12, marginBottom: 12 },
148
+ value: { fontFamily: FONT, fontSize: 34, fontWeight: '700', color: '#fff', letterSpacing: -0.3, paddingHorizontal: 6, borderRadius: 6 },
149
+ selected: { backgroundColor: 'rgba(255,255,255,0.18)' },
150
+ prev: { fontFamily: FONT, fontSize: 13, color: C.lg1, minHeight: 16, fontWeight: '500', marginTop: 2 },
151
+ extras: { flexDirection: 'row', gap: 6, marginBottom: 10 },
152
+ extra: { flex: 1, minWidth: 0, height: 30, paddingHorizontal: 6, borderRadius: 7, backgroundColor: C.dark, borderWidth: 0.5, borderColor: C.g3, alignItems: 'center', justifyContent: 'center' },
153
+ extraText: { fontFamily: FONT, fontSize: 13, fontWeight: '500', color: '#fff' },
154
+ fr: { flexDirection: 'row', gap: 5, marginBottom: 7 },
155
+ frKey: { flex: 1, height: 32, borderRadius: 7, backgroundColor: C.key2, alignItems: 'center', justifyContent: 'center' },
156
+ frText: { fontFamily: FONT, fontSize: 12, fontWeight: '600', color: '#fff' },
157
+ keys: { gap: 7, marginBottom: 12 },
158
+ row: { flexDirection: 'row', gap: 7 },
159
+ key: { flexGrow: 1, flexBasis: 0, height: 50, borderRadius: 8, backgroundColor: C.key, alignItems: 'center', justifyContent: 'center', flexDirection: 'row', gap: 5 },
160
+ wide: { flexGrow: 3, flexBasis: 14 }, // three columns and the two gaps between them
161
+ // a phone's bottom sheet: a little more compact, to fit small screens
162
+ displayPhone: { minHeight: 70, marginBottom: 10 },
163
+ keyPhone: { height: 46 },
164
+ sym: { backgroundColor: C.key2 },
165
+ del: { backgroundColor: C.mutedRed },
166
+ keyText: { fontFamily: FONT, fontSize: 22, fontWeight: '700', color: '#fff' },
167
+ delText: { fontFamily: FONT, fontSize: 17, fontWeight: '500', color: '#fff' },
168
+ apply: { height: 46, borderRadius: 12, backgroundColor: C.yellow, alignItems: 'center', justifyContent: 'center' },
169
+ applyText: { fontFamily: FONT, fontSize: 16, fontWeight: '600', color: C.dark },
170
+ // the pages' dots: the one it's on yellow
171
+ dots: { flexDirection: 'row', justifyContent: 'center', gap: 8, marginTop: 10 },
172
+ dot: { width: 8, height: 8, borderRadius: 4, backgroundColor: C.g3 },
173
+ dotOn: { backgroundColor: C.yellow },
174
+ // the job's measurements: BOLDR's blue measurement tiles, three to a row
175
+ listTitle: { fontFamily: FONT, fontSize: 13, fontWeight: '600', color: '#fff', marginBottom: 10 },
176
+ listNone: { fontFamily: FONT, fontSize: 13, color: C.g4 },
177
+ listTile: { height: LIST_TILE_H, borderRadius: 10, backgroundColor: C.tile, paddingHorizontal: 9, paddingVertical: 7, justifyContent: 'space-between' },
178
+ listTileOff: { opacity: 0.4 },
179
+ listValue: { fontFamily: FONT, fontSize: 17, fontWeight: '700', color: '#fff' },
180
+ listName: { fontFamily: FONT, fontSize: 11, fontWeight: '600', color: '#fff' },
181
+ listGroup: { fontFamily: FONT, fontSize: 10, fontWeight: '500', color: C.lblue2 },
50
182
  });
51
183
  //# sourceMappingURL=KeypadSheet.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KeypadSheet.js","sourceRoot":"","sources":["../../src/react/KeypadSheet.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"KeypadSheet.js","sourceRoot":"","sources":["../../src/react/KeypadSheet.tsx"],"names":[],"mappings":"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"}