@macrostrat/column-views 2.1.2 → 2.1.4

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 (230) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/esm/{column-views.813d5bba.js → column-views.02f3732a.js} +9 -5
  3. package/dist/esm/column-views.02f3732a.js.map +1 -0
  4. package/dist/esm/{column-views.c8e2983a.js → column-views.0a159282.js} +4 -4
  5. package/dist/esm/{column-views.c8e2983a.js.map → column-views.0a159282.js.map} +1 -1
  6. package/dist/esm/{column-views.c25e8b32.js → column-views.1f7fb650.js} +3 -3
  7. package/dist/esm/{column-views.c25e8b32.js.map → column-views.1f7fb650.js.map} +1 -1
  8. package/dist/esm/{column-views.bcffe6e5.js → column-views.243da806.js} +3 -3
  9. package/dist/esm/{column-views.bcffe6e5.js.map → column-views.243da806.js.map} +1 -1
  10. package/dist/esm/{column-views.e20f6a4b.js → column-views.2ff3dd8b.js} +2 -2
  11. package/dist/esm/{column-views.e20f6a4b.js.map → column-views.2ff3dd8b.js.map} +1 -1
  12. package/dist/esm/column-views.38a305a0.js +13 -0
  13. package/dist/esm/{column-views.10eba967.js.map → column-views.38a305a0.js.map} +1 -1
  14. package/dist/esm/{column-views.5cc09c1d.js → column-views.3f246167.js} +9 -2
  15. package/dist/esm/column-views.3f246167.js.map +1 -0
  16. package/dist/esm/{column-views.892ce22f.js → column-views.42b89c52.js} +35 -10
  17. package/dist/esm/column-views.42b89c52.js.map +1 -0
  18. package/dist/esm/{column-views.57636733.css → column-views.448c0687.css} +5 -5
  19. package/dist/esm/column-views.448c0687.css.map +1 -0
  20. package/dist/esm/{column-views.afb48e8c.js → column-views.547b2730.js} +8 -8
  21. package/dist/esm/{column-views.afb48e8c.js.map → column-views.547b2730.js.map} +1 -1
  22. package/dist/esm/{column-views.1af9761e.js → column-views.64a84c43.js} +1 -2
  23. package/dist/esm/column-views.64a84c43.js.map +1 -0
  24. package/dist/esm/{column-views.7e350ae2.js → column-views.676cb1d3.js} +3 -3
  25. package/dist/esm/{column-views.7e350ae2.js.map → column-views.676cb1d3.js.map} +1 -1
  26. package/dist/esm/{column-views.28b3eaa0.js → column-views.75ea6dbe.js} +3 -3
  27. package/dist/esm/{column-views.28b3eaa0.js.map → column-views.75ea6dbe.js.map} +1 -1
  28. package/dist/esm/{column-views.b40b2bf6.js → column-views.769fa0ee.js} +2 -2
  29. package/dist/esm/{column-views.b40b2bf6.js.map → column-views.769fa0ee.js.map} +1 -1
  30. package/dist/esm/{column-views.d2037465.js → column-views.775846c9.js} +3 -3
  31. package/dist/esm/{column-views.d2037465.js.map → column-views.775846c9.js.map} +1 -1
  32. package/dist/esm/{column-views.32a83292.js → column-views.77b49a43.js} +7 -7
  33. package/dist/esm/{column-views.32a83292.js.map → column-views.77b49a43.js.map} +1 -1
  34. package/dist/esm/{column-views.89b9e542.js → column-views.78bd3f09.js} +2 -2
  35. package/dist/esm/{column-views.89b9e542.js.map → column-views.78bd3f09.js.map} +1 -1
  36. package/dist/esm/{column-views.3ba9213d.js → column-views.7ca9e1cd.js} +34 -6
  37. package/dist/esm/column-views.7ca9e1cd.js.map +1 -0
  38. package/dist/esm/column-views.8703a35b.js +163 -0
  39. package/dist/esm/column-views.8703a35b.js.map +1 -0
  40. package/dist/esm/{column-views.217078ab.css → column-views.8d4ce558.css} +13 -1
  41. package/dist/esm/column-views.8d4ce558.css.map +1 -0
  42. package/dist/esm/{column-views.85c6a716.js → column-views.8e3dec90.js} +2 -2
  43. package/dist/esm/{column-views.85c6a716.js.map → column-views.8e3dec90.js.map} +1 -1
  44. package/dist/esm/{column-views.52a6eb47.js → column-views.935ef6f7.js} +2 -2
  45. package/dist/esm/{column-views.52a6eb47.js.map → column-views.935ef6f7.js.map} +1 -1
  46. package/dist/esm/column-views.97d542eb.js +37 -0
  47. package/dist/esm/column-views.97d542eb.js.map +1 -0
  48. package/dist/esm/{column-views.6549388a.js → column-views.9e1c82fe.js} +2 -2
  49. package/dist/esm/{column-views.6549388a.js.map → column-views.9e1c82fe.js.map} +1 -1
  50. package/dist/esm/column-views.a195109e.js +60 -0
  51. package/dist/esm/column-views.a195109e.js.map +1 -0
  52. package/dist/esm/{column-views.2ca34210.js → column-views.a6301a41.js} +5 -5
  53. package/dist/esm/{column-views.2ca34210.js.map → column-views.a6301a41.js.map} +1 -1
  54. package/dist/esm/{column-views.2d8e0e0f.js → column-views.ab0380ed.js} +3 -3
  55. package/dist/esm/{column-views.2d8e0e0f.js.map → column-views.ab0380ed.js.map} +1 -1
  56. package/dist/esm/{column-views.1c92b88f.js → column-views.b3c1eb9e.js} +4 -4
  57. package/dist/esm/column-views.b3c1eb9e.js.map +1 -0
  58. package/dist/esm/{column-views.439a26db.css → column-views.b72918ce.css} +45 -20
  59. package/dist/esm/column-views.b72918ce.css.map +1 -0
  60. package/dist/esm/{column-views.0f2121e4.js → column-views.cc5244c4.js} +75 -29
  61. package/dist/esm/column-views.cc5244c4.js.map +1 -0
  62. package/dist/esm/{column-views.4637f4ce.js → column-views.cdadc5c2.js} +4 -1
  63. package/dist/esm/column-views.cdadc5c2.js.map +1 -0
  64. package/dist/esm/{column-views.fef7389f.js → column-views.d48cb0d8.js} +10 -1
  65. package/dist/esm/column-views.d48cb0d8.js.map +1 -0
  66. package/dist/esm/{column-views.b9fe5176.js → column-views.e3b9a317.js} +2 -2
  67. package/dist/esm/{column-views.b9fe5176.js.map → column-views.e3b9a317.js.map} +1 -1
  68. package/dist/esm/{column-views.f13a1d6e.js → column-views.e7ab5af0.js} +2 -2
  69. package/dist/esm/{column-views.f13a1d6e.js.map → column-views.e7ab5af0.js.map} +1 -1
  70. package/dist/esm/{column-views.a91dde4a.js → column-views.f20eb583.js} +5 -56
  71. package/dist/esm/column-views.f20eb583.js.map +1 -0
  72. package/dist/esm/{column-views.59bb0cba.js → column-views.f7523c1d.js} +2 -2
  73. package/dist/esm/{column-views.59bb0cba.js.map → column-views.f7523c1d.js.map} +1 -1
  74. package/dist/esm/column-views.fbc7401f.js +11 -0
  75. package/dist/esm/{column-views.c322a5e7.js.map → column-views.fbc7401f.js.map} +1 -1
  76. package/dist/esm/index.d.ts +77 -13
  77. package/dist/esm/index.d.ts.map +1 -1
  78. package/dist/esm/index.js +10 -10
  79. package/dist/node/column-views.085f4a51.js +2 -0
  80. package/dist/node/column-views.085f4a51.js.map +1 -0
  81. package/dist/node/{column-views.2877f398.js → column-views.0cbd4a3f.js} +2 -2
  82. package/dist/node/{column-views.2877f398.js.map → column-views.0cbd4a3f.js.map} +1 -1
  83. package/dist/node/{column-views.45defa84.js → column-views.0dfc7ef7.js} +2 -2
  84. package/dist/node/{column-views.45defa84.js.map → column-views.0dfc7ef7.js.map} +1 -1
  85. package/dist/node/column-views.2926f656.css +2 -0
  86. package/dist/node/column-views.2926f656.css.map +1 -0
  87. package/dist/node/column-views.2a6b842d.js +2 -0
  88. package/dist/node/column-views.2a6b842d.js.map +1 -0
  89. package/dist/node/{column-views.2a70b9a2.js → column-views.2ca669bc.js} +2 -2
  90. package/dist/node/{column-views.2a70b9a2.js.map → column-views.2ca669bc.js.map} +1 -1
  91. package/dist/node/column-views.2d957a97.js +2 -0
  92. package/dist/node/column-views.2d957a97.js.map +1 -0
  93. package/dist/node/column-views.307661d1.css +2 -0
  94. package/dist/node/column-views.307661d1.css.map +1 -0
  95. package/dist/node/column-views.38357d4a.js +2 -0
  96. package/dist/node/column-views.38357d4a.js.map +1 -0
  97. package/dist/node/column-views.3eeac38d.js +2 -0
  98. package/dist/node/column-views.3eeac38d.js.map +1 -0
  99. package/dist/node/{column-views.7350ac73.js → column-views.42db0bb8.js} +2 -2
  100. package/dist/node/{column-views.7350ac73.js.map → column-views.42db0bb8.js.map} +1 -1
  101. package/dist/node/{column-views.6b6b756b.js → column-views.45fab61b.js} +2 -2
  102. package/dist/node/{column-views.6b6b756b.js.map → column-views.45fab61b.js.map} +1 -1
  103. package/dist/node/{column-views.0220026c.js → column-views.492b4917.js} +2 -2
  104. package/dist/node/{column-views.0220026c.js.map → column-views.492b4917.js.map} +1 -1
  105. package/dist/node/column-views.4ca62e5d.js +2 -0
  106. package/dist/node/column-views.4ca62e5d.js.map +1 -0
  107. package/dist/node/{column-views.3bd09ad6.js → column-views.51bc87ca.js} +2 -2
  108. package/dist/node/{column-views.3bd09ad6.js.map → column-views.51bc87ca.js.map} +1 -1
  109. package/dist/node/{column-views.cf90f63d.js → column-views.58d2f993.js} +2 -2
  110. package/dist/node/{column-views.cf90f63d.js.map → column-views.58d2f993.js.map} +1 -1
  111. package/dist/node/{column-views.5b6833f0.js → column-views.65f091ea.js} +2 -2
  112. package/dist/node/{column-views.5b6833f0.js.map → column-views.65f091ea.js.map} +1 -1
  113. package/dist/node/column-views.6ae7bb69.js +2 -0
  114. package/dist/node/column-views.6ae7bb69.js.map +1 -0
  115. package/dist/node/column-views.6f7a432f.js +2 -0
  116. package/dist/node/column-views.6f7a432f.js.map +1 -0
  117. package/dist/node/{column-views.664dc6c9.js → column-views.7010a03b.js} +2 -2
  118. package/dist/node/{column-views.664dc6c9.js.map → column-views.7010a03b.js.map} +1 -1
  119. package/dist/node/column-views.758b9bc1.js +2 -0
  120. package/dist/node/column-views.758b9bc1.js.map +1 -0
  121. package/dist/node/column-views.80fcf105.js +2 -0
  122. package/dist/node/column-views.80fcf105.js.map +1 -0
  123. package/dist/node/{column-views.ce6808fe.js → column-views.858b5cf4.js} +2 -2
  124. package/dist/node/{column-views.ce6808fe.js.map → column-views.858b5cf4.js.map} +1 -1
  125. package/dist/node/{column-views.f76ba19f.js → column-views.91043465.js} +2 -2
  126. package/dist/node/{column-views.f76ba19f.js.map → column-views.91043465.js.map} +1 -1
  127. package/dist/node/{column-views.770d2c95.js → column-views.976a829b.js} +2 -2
  128. package/dist/node/{column-views.770d2c95.js.map → column-views.976a829b.js.map} +1 -1
  129. package/dist/node/column-views.99fb74c0.js +2 -0
  130. package/dist/node/column-views.99fb74c0.js.map +1 -0
  131. package/dist/node/column-views.9b7a9ae1.js +2 -0
  132. package/dist/node/column-views.9b7a9ae1.js.map +1 -0
  133. package/dist/node/column-views.9de31cdb.js +2 -0
  134. package/dist/node/column-views.9de31cdb.js.map +1 -0
  135. package/dist/node/column-views.a2274834.js +2 -0
  136. package/dist/node/column-views.a2274834.js.map +1 -0
  137. package/dist/node/{column-views.4e2bdf9b.js → column-views.a372c943.js} +2 -2
  138. package/dist/node/{column-views.4e2bdf9b.js.map → column-views.a372c943.js.map} +1 -1
  139. package/dist/node/column-views.a4e6d4ad.js +2 -0
  140. package/dist/node/column-views.a4e6d4ad.js.map +1 -0
  141. package/dist/node/{column-views.39c07f5f.js → column-views.a7256aa7.js} +2 -2
  142. package/dist/node/{column-views.39c07f5f.js.map → column-views.a7256aa7.js.map} +1 -1
  143. package/dist/node/column-views.c4b409e1.css +2 -0
  144. package/dist/node/column-views.c4b409e1.css.map +1 -0
  145. package/dist/node/{column-views.0859f5d2.js → column-views.c7f6fc0a.js} +2 -2
  146. package/dist/node/{column-views.0859f5d2.js.map → column-views.c7f6fc0a.js.map} +1 -1
  147. package/dist/node/column-views.cef1b814.js +2 -0
  148. package/dist/node/column-views.cef1b814.js.map +1 -0
  149. package/dist/node/{column-views.12a70e9d.js → column-views.d9add589.js} +2 -2
  150. package/dist/node/{column-views.12a70e9d.js.map → column-views.d9add589.js.map} +1 -1
  151. package/dist/node/{column-views.39d3a0be.js → column-views.df97f28e.js} +2 -2
  152. package/dist/node/{column-views.39d3a0be.js.map → column-views.df97f28e.js.map} +1 -1
  153. package/dist/node/{column-views.6f0c1134.js → column-views.dfb2361a.js} +2 -2
  154. package/dist/node/{column-views.6f0c1134.js.map → column-views.dfb2361a.js.map} +1 -1
  155. package/dist/node/{column-views.6b441349.js → column-views.e3ba0594.js} +2 -2
  156. package/dist/node/{column-views.6b441349.js.map → column-views.e3ba0594.js.map} +1 -1
  157. package/dist/node/column-views.eeca917f.js +2 -0
  158. package/dist/node/column-views.eeca917f.js.map +1 -0
  159. package/dist/node/index.js +1 -1
  160. package/dist/node/index.js.map +1 -1
  161. package/package.json +10 -10
  162. package/src/age-axis.ts +11 -6
  163. package/src/column.module.sass +9 -0
  164. package/src/column.ts +23 -1
  165. package/src/data-provider/base.ts +50 -3
  166. package/src/data-provider/fetch.ts +15 -0
  167. package/src/facets/fossils/index.module.sass +1 -1
  168. package/src/facets/fossils/index.ts +104 -12
  169. package/src/facets/index.ts +1 -0
  170. package/src/facets/measurements/index.ts +39 -0
  171. package/src/facets/measurements/provider.ts +80 -0
  172. package/src/unit-details/index.ts +1 -0
  173. package/src/unit-details/modal-panel.ts +61 -0
  174. package/src/unit-details/panel.module.sass +41 -17
  175. package/src/unit-details/panel.ts +114 -36
  176. package/src/units/boxes.ts +1 -64
  177. package/src/units/selection.ts +0 -1
  178. package/dist/esm/column-views.0f2121e4.js.map +0 -1
  179. package/dist/esm/column-views.10eba967.js +0 -11
  180. package/dist/esm/column-views.1af9761e.js.map +0 -1
  181. package/dist/esm/column-views.1c92b88f.js.map +0 -1
  182. package/dist/esm/column-views.217078ab.css.map +0 -1
  183. package/dist/esm/column-views.3ba9213d.js.map +0 -1
  184. package/dist/esm/column-views.439a26db.css.map +0 -1
  185. package/dist/esm/column-views.4637f4ce.js.map +0 -1
  186. package/dist/esm/column-views.57636733.css.map +0 -1
  187. package/dist/esm/column-views.5cc09c1d.js.map +0 -1
  188. package/dist/esm/column-views.813d5bba.js.map +0 -1
  189. package/dist/esm/column-views.892ce22f.js.map +0 -1
  190. package/dist/esm/column-views.a91dde4a.js.map +0 -1
  191. package/dist/esm/column-views.c322a5e7.js +0 -9
  192. package/dist/esm/column-views.fa19cea0.js +0 -108
  193. package/dist/esm/column-views.fa19cea0.js.map +0 -1
  194. package/dist/esm/column-views.fef7389f.js.map +0 -1
  195. package/dist/node/column-views.04407342.js +0 -2
  196. package/dist/node/column-views.04407342.js.map +0 -1
  197. package/dist/node/column-views.059a41c1.js +0 -2
  198. package/dist/node/column-views.059a41c1.js.map +0 -1
  199. package/dist/node/column-views.10a2bad6.js +0 -2
  200. package/dist/node/column-views.10a2bad6.js.map +0 -1
  201. package/dist/node/column-views.12414005.js +0 -2
  202. package/dist/node/column-views.12414005.js.map +0 -1
  203. package/dist/node/column-views.1de87649.js +0 -2
  204. package/dist/node/column-views.1de87649.js.map +0 -1
  205. package/dist/node/column-views.3345cd7a.js +0 -2
  206. package/dist/node/column-views.3345cd7a.js.map +0 -1
  207. package/dist/node/column-views.3cb3345e.js +0 -2
  208. package/dist/node/column-views.3cb3345e.js.map +0 -1
  209. package/dist/node/column-views.6da49480.js +0 -2
  210. package/dist/node/column-views.6da49480.js.map +0 -1
  211. package/dist/node/column-views.7f951eeb.js +0 -2
  212. package/dist/node/column-views.7f951eeb.js.map +0 -1
  213. package/dist/node/column-views.9771eb09.css +0 -2
  214. package/dist/node/column-views.9771eb09.css.map +0 -1
  215. package/dist/node/column-views.9f796135.js +0 -2
  216. package/dist/node/column-views.9f796135.js.map +0 -1
  217. package/dist/node/column-views.a0aac838.js +0 -2
  218. package/dist/node/column-views.a0aac838.js.map +0 -1
  219. package/dist/node/column-views.a8ffe072.js +0 -2
  220. package/dist/node/column-views.a8ffe072.js.map +0 -1
  221. package/dist/node/column-views.aa50c532.js +0 -2
  222. package/dist/node/column-views.aa50c532.js.map +0 -1
  223. package/dist/node/column-views.b773edb8.js +0 -2
  224. package/dist/node/column-views.b773edb8.js.map +0 -1
  225. package/dist/node/column-views.cd3c430b.js +0 -2
  226. package/dist/node/column-views.cd3c430b.js.map +0 -1
  227. package/dist/node/column-views.cd468adb.css +0 -2
  228. package/dist/node/column-views.cd468adb.css.map +0 -1
  229. package/dist/node/column-views.d9bbd6fb.css +0 -2
  230. package/dist/node/column-views.d9bbd6fb.css.map +0 -1
@@ -0,0 +1 @@
1
+ {"mappings":"A,O,M,mB,A,Q,iB,C,K,2B,A,Q,iB,C,C,c,C,C,Y,C,C,a,C,C,U,C,C,e,C,K,O,A,Q,Y,C,C,e,C,K,S,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,C,E,E,E,2B,I,G,E,E,wB,I,G,E,E,kB,I,G,E,E,wB,I,G,E,E,yB,I,G,E,E,yB,I,GC2BA,IAAM,EAAuB,AAAA,EAA4C,MAElE,SAAS,IACd,IAAM,EAAQ,AAAA,EAAW,UACzB,AAAI,AAAS,MAAT,EACK,KAAO,EAET,AAAA,EAAS,EAAO,AAAC,GAAU,EAAM,cAAc,CACxD,CAEO,SAAS,EACd,CAA0C,EAE1C,IAAM,EAAQ,AAAA,EAAW,UACzB,AAAI,AAAS,MAAT,EACK,KAEF,AAAA,EAAS,EAAO,EACzB,CAEO,SAAS,IACd,OAAO,EAAsB,AAAC,GAAU,EAAM,gBAAgB,CAChE,CAkBO,SAAS,EAA0C,CAOzD,EACC,GAAM,CAAC,EAAM,CAAG,AAAA,EAAS,IACvB,AAAA,EAAgC,AAAC,GAAS,CAAA,CACxC,aAAc,KACd,iBAAkB,KAClB,gBAAiB,KACjB,gBAAgB,CAAsC,EACpD,GAAI,AAAgB,MAAhB,EAAsB,YACxB,EAAI,CAAE,aAAc,KAAM,iBAAkB,IAAK,EAGxC,AAAwB,CAAA,UAAxB,OAAO,EAChB,EAAI,CAAE,aAAA,EAAc,iBAAkB,IAAK,GAClC,YAAa,GACtB,EAAI,CACF,aAAc,EAAa,OAAO,CAClC,iBAAkB,CACpB,EAEJ,EACA,eAAgB,CAAC,EAAS,EAAqB,KAC7C,IAAM,EAAK,EAAM,SAAS,EAAE,QACxB,EAAkB,KAKtB,GAAI,EAAM,eAAe,CAAE,CAOzB,IAAM,EAAmC,CACvC,OAAQ,GAAM,QACd,KAAA,EACA,OAAA,EACA,OAAQ,GAAI,wBAAwB,QAAU,CAChD,EACA,EAAM,eAAe,CAAC,EAAiB,EACzC,CAEA,GAAI,AAAQ,MAAR,GAAgB,AAAM,MAAN,GAAc,AAAU,MAAV,EAAgB,CAChD,IAAM,EAAO,EAAG,qBAAqB,GAC/B,EAAa,EAAO,qBAAqB,GAE/C,EAAkB,CAChB,EAAG,EAAW,IAAI,CAAG,EAAK,IAAI,CAC9B,EAAG,EAAW,GAAG,CAAG,EAAK,GAAG,CAC5B,MAAO,EAAW,KAAK,CACvB,OAAQ,EAAW,MAAM,AAC3B,CACF,CAGA,OAFA,EAAM,cAAc,GAAG,GAAM,QAAS,GAE/B,EAAI,CACT,aAAc,GAAM,QACpB,iBAAkB,EAClB,gBAAA,CACF,EACF,CACF,CAAA,IAGI,CAAA,MAAE,CAAK,CAAA,aAAE,CAAY,CAAE,CAAG,EAYhC,OAVA,AAAA,EAAU,KAER,GAAI,AAAgB,MAAhB,EAAsB,CACxB,IAAM,EAAW,GAAO,KAAK,AAAC,GAAM,EAAE,OAAO,GAAK,GAClD,EAAM,QAAQ,CAAC,CAAE,aAAA,EAAc,iBAAkB,CAAS,EAC5D,MACE,EAAM,QAAQ,CAAC,CAAE,aAAc,KAAM,iBAAkB,IAAK,EAEhE,EAAG,CAAC,EAAc,EAAM,EAEjB,AAAA,EAAE,EAAqB,QAAQ,CAAE,CAAE,MAAO,CAAM,EAAG,EAAM,QAAQ,CAC1E,CAEO,SAAS,EACd,CAAW,EAEX,IAAM,EAAM,AAAA,IACN,EAAe,IACf,EAAe,EAAsB,AAAC,GAAU,EAAM,cAAc,EACpE,EAAW,GAAc,SAAW,EAAK,OAAO,CAEhD,EAAU,AAAA,EACd,AAAC,IACqB,MAAhB,IACJ,EAAa,EAAM,EAAI,OAAO,CAAE,GAChC,EAAI,eAAe,GACrB,EACA,CAAC,EAAM,EAAa,EAgBtB,OAbA,AAAA,EAAU,KACH,GAAY,AAAgB,MAAhB,IAEjB,EAAa,EAAM,EAAI,OAAO,CAAE,MAGhC,EAAI,OAAO,EAAE,eAAe,CAC1B,SAAU,SACV,MAAO,SACP,OAAQ,SACV,GACF,EAAG,CAAC,EAAU,EAAa,EAEpB,CAAC,EAAK,EAAU,EAAQ,AACjC,CAEO,SAAS,EAA2C,CAAA,MACzD,CAAK,CAGN,EACC,IAAM,EAAe,IACf,EAAa,IAEb,EAAK,EAAM,SAAS,CAAC,AAAC,GAAS,EAAK,OAAO,GAAK,GAAc,SAE9D,EAAS,CACb,GAAI,EAAK,EACT,GAAI,EAAK,CACX,EAWA,OATA,AAAA,EACE,AAAC,IACC,IAAM,EAAS,CAAM,CAAC,EAAM,OAAO,CAAC,AACtB,OAAV,GAAkB,EAAS,GAAK,GAAU,EAAM,MAAM,GAC1D,EAAW,CAAK,CAAC,EAAO,CAAE,KAAM,MAChC,EAAM,eAAe,GACvB,EACA,CAAC,EAAO,EAAG,EAEN,IACT,Q,K,wB,C,K,qB,C,K,e,C,K,qB,C,K,sB,C,K,sB","sources":["<anon>","packages/column-views/src/units/selection.ts"],"sourcesContent":["import $TyplV$macrostrathyper from \"@macrostrat/hyper\";\nimport {useKeyHandler as $TyplV$useKeyHandler} from \"@macrostrat/ui-components\";\nimport {createContext as $TyplV$createContext, useContext as $TyplV$useContext, useState as $TyplV$useState, useEffect as $TyplV$useEffect, useRef as $TyplV$useRef, useCallback as $TyplV$useCallback} from \"react\";\nimport {useStore as $TyplV$useStore, createStore as $TyplV$createStore} from \"zustand\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $f7d31510668965d8$exports = {};\n\n$parcel$export($f7d31510668965d8$exports, \"useUnitSelectionDispatch\", () => $f7d31510668965d8$export$77a278d5ca56e309);\n$parcel$export($f7d31510668965d8$exports, \"useUnitSelectionStore\", () => $f7d31510668965d8$export$b220b1d3591dc9e5);\n$parcel$export($f7d31510668965d8$exports, \"useSelectedUnit\", () => $f7d31510668965d8$export$f0dd93f90aa8e5da);\n$parcel$export($f7d31510668965d8$exports, \"UnitSelectionProvider\", () => $f7d31510668965d8$export$f19d75b1d4b676a4);\n$parcel$export($f7d31510668965d8$exports, \"useUnitSelectionTarget\", () => $f7d31510668965d8$export$cbbec12b1451fe7d);\n$parcel$export($f7d31510668965d8$exports, \"UnitKeyboardNavigation\", () => $f7d31510668965d8$export$70f5ee19650fc7d1);\n\n\n\n\nconst $f7d31510668965d8$var$UnitSelectionContext = (0, $TyplV$createContext)(null);\nfunction $f7d31510668965d8$export$77a278d5ca56e309() {\n const store = (0, $TyplV$useContext)($f7d31510668965d8$var$UnitSelectionContext);\n if (store == null) return ()=>{};\n return (0, $TyplV$useStore)(store, (state)=>state.onUnitSelected);\n}\nfunction $f7d31510668965d8$export$b220b1d3591dc9e5(selector) {\n const store = (0, $TyplV$useContext)($f7d31510668965d8$var$UnitSelectionContext);\n if (store == null) return null;\n return (0, $TyplV$useStore)(store, selector);\n}\nfunction $f7d31510668965d8$export$f0dd93f90aa8e5da() {\n return $f7d31510668965d8$export$b220b1d3591dc9e5((state)=>state.selectedUnitData);\n}\nfunction $f7d31510668965d8$export$f19d75b1d4b676a4(props) {\n const [store] = (0, $TyplV$useState)(()=>(0, $TyplV$createStore)((set)=>({\n selectedUnit: null,\n selectedUnitData: null,\n overlayPosition: null,\n setSelectedUnit (selectedUnit) {\n if (selectedUnit == null) {\n set({\n selectedUnit: null,\n selectedUnitData: null\n });\n return;\n // If it's a number, set the selected unit\n } else if (typeof selectedUnit === \"number\") set({\n selectedUnit: selectedUnit,\n selectedUnitData: null\n });\n else if (\"unit_id\" in selectedUnit) set({\n selectedUnit: selectedUnit.unit_id,\n selectedUnitData: selectedUnit\n });\n },\n onUnitSelected: (unit, target, event)=>{\n const el = props.columnRef?.current;\n let overlayPosition = null;\n /** This is not the natural place to get positions within the column,\n * but it will work for now.\n */ if (props.onClickedColumn) {\n // Infer height from top and bottom height of unit (because that's passed back with the call)\n //const py = event.y;\n //const [bottom, top] = getUnitHeightRange(unit, axisType);\n //const height = Math.abs(bottom - top);\n /** Ideally this would be defined at the column level */ const columnClickData = {\n unitID: unit?.unit_id,\n unit: unit,\n target: target,\n height: el?.getBoundingClientRect().height || 0\n };\n props.onClickedColumn(columnClickData, event);\n }\n if (unit != null && el != null && target != null) {\n const rect = el.getBoundingClientRect();\n const targetRect = target.getBoundingClientRect();\n overlayPosition = {\n x: targetRect.left - rect.left,\n y: targetRect.top - rect.top,\n width: targetRect.width,\n height: targetRect.height\n };\n }\n props.onUnitSelected?.(unit?.unit_id, unit);\n return set({\n selectedUnit: unit?.unit_id,\n selectedUnitData: unit,\n overlayPosition: overlayPosition\n });\n }\n })));\n const { units: units, selectedUnit: selectedUnit } = props;\n (0, $TyplV$useEffect)(()=>{\n // Synchronize store with provided props\n if (selectedUnit != null) {\n const unitData = units?.find((u)=>u.unit_id === selectedUnit);\n store.setState({\n selectedUnit: selectedUnit,\n selectedUnitData: unitData\n });\n } else store.setState({\n selectedUnit: null,\n selectedUnitData: null\n });\n }, [\n selectedUnit,\n units\n ]);\n return (0, $TyplV$macrostrathyper)($f7d31510668965d8$var$UnitSelectionContext.Provider, {\n value: store\n }, props.children);\n}\nfunction $f7d31510668965d8$export$cbbec12b1451fe7d(unit) {\n const ref = (0, $TyplV$useRef)();\n const selectedUnit = $f7d31510668965d8$export$f0dd93f90aa8e5da();\n const onSelectUnit = $f7d31510668965d8$export$b220b1d3591dc9e5((state)=>state.onUnitSelected);\n const selected = selectedUnit?.unit_id == unit.unit_id;\n const onClick = (0, $TyplV$useCallback)((evt)=>{\n if (onSelectUnit == null) return;\n onSelectUnit(unit, ref.current, evt);\n evt.stopPropagation();\n }, [\n unit,\n onSelectUnit\n ]);\n (0, $TyplV$useEffect)(()=>{\n if (!selected || onSelectUnit == null) return;\n // In case we haven't set the position of the unit (if we don't have a target), set the selected unit\n onSelectUnit(unit, ref.current, null);\n // Scroll the unit into view\n ref.current?.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n inline: \"nearest\"\n });\n }, [\n selected,\n onSelectUnit\n ]);\n return [\n ref,\n selected,\n onClick\n ];\n}\nfunction $f7d31510668965d8$export$70f5ee19650fc7d1({ units: units }) {\n const selectedUnit = $f7d31510668965d8$export$f0dd93f90aa8e5da();\n const selectUnit = $f7d31510668965d8$export$77a278d5ca56e309();\n const ix = units.findIndex((unit)=>unit.unit_id === selectedUnit?.unit_id);\n const keyMap = {\n 38: ix - 1,\n 40: ix + 1\n };\n (0, $TyplV$useKeyHandler)((event)=>{\n const nextIx = keyMap[event.keyCode];\n if (nextIx == null || nextIx < 0 || nextIx >= units.length) return;\n selectUnit(units[nextIx], null, null);\n event.stopPropagation();\n }, [\n units,\n ix\n ]);\n return null;\n}\n\n\nexport {$f7d31510668965d8$export$77a278d5ca56e309 as useUnitSelectionDispatch, $f7d31510668965d8$export$b220b1d3591dc9e5 as useUnitSelectionStore, $f7d31510668965d8$export$f0dd93f90aa8e5da as useSelectedUnit, $f7d31510668965d8$export$f19d75b1d4b676a4 as UnitSelectionProvider, $f7d31510668965d8$export$cbbec12b1451fe7d as useUnitSelectionTarget, $f7d31510668965d8$export$70f5ee19650fc7d1 as UnitKeyboardNavigation};\n//# sourceMappingURL=column-views.3eeac38d.js.map\n","import { BaseUnit } from \"@macrostrat/api-types\";\nimport h from \"@macrostrat/hyper\";\nimport { useKeyHandler } from \"@macrostrat/ui-components\";\nimport {\n createContext,\n useContext,\n useEffect,\n useState,\n ReactNode,\n RefObject,\n useRef,\n useCallback,\n MouseEvent,\n} from \"react\";\nimport { createStore, StoreApi, useStore } from \"zustand\";\nimport type { RectBounds, IUnit } from \"./types\";\nimport {\n getUnitHeightRange,\n useMacrostratColumnData,\n} from \"@macrostrat/column-views\";\n\ntype UnitSelectDispatch = (\n unit: BaseUnit | null,\n target: HTMLElement | null,\n event: Event | null,\n) => void;\n\nconst UnitSelectionContext = createContext<StoreApi<UnitSelectionStore>>(null);\n\nexport function useUnitSelectionDispatch(): UnitSelectDispatch {\n const store = useContext(UnitSelectionContext);\n if (store == null) {\n return () => {};\n }\n return useStore(store, (state) => state.onUnitSelected);\n}\n\nexport function useUnitSelectionStore<T>(\n selector: (state: UnitSelectionStore) => T,\n): T {\n const store = useContext(UnitSelectionContext);\n if (store == null) {\n return null;\n }\n return useStore(store, selector);\n}\n\nexport function useSelectedUnit() {\n return useUnitSelectionStore((state) => state.selectedUnitData);\n}\n\ninterface UnitSelectionStore {\n selectedUnit: number | null;\n selectedUnitData: BaseUnit | null;\n overlayPosition: RectBounds | null;\n onUnitSelected: UnitSelectDispatch;\n setSelectedUnit: (unit: number | null) => void;\n}\n\nexport interface ColumnClickData {\n unitID: number | null;\n unit: BaseUnit | null;\n target: HTMLElement | null;\n height: number;\n // Room for boundary IDs eventually\n}\n\nexport function UnitSelectionProvider<T extends BaseUnit>(props: {\n children: ReactNode;\n columnRef?: RefObject<HTMLElement>;\n units: T[];\n selectedUnit: number | null;\n onClickedColumn?: (columnClickData: ColumnClickData, event: Event) => void;\n onUnitSelected?: (unitID: number | null, unit: T | null) => void;\n}) {\n const [store] = useState(() =>\n createStore<UnitSelectionStore>((set) => ({\n selectedUnit: null,\n selectedUnitData: null,\n overlayPosition: null,\n setSelectedUnit(selectedUnit: number | null | BaseUnit) {\n if (selectedUnit == null) {\n set({ selectedUnit: null, selectedUnitData: null });\n return;\n // If it's a number, set the selected unit\n } else if (typeof selectedUnit === \"number\") {\n set({ selectedUnit, selectedUnitData: null });\n } else if (\"unit_id\" in selectedUnit) {\n set({\n selectedUnit: selectedUnit.unit_id,\n selectedUnitData: selectedUnit,\n });\n }\n },\n onUnitSelected: (unit: T, target: HTMLElement, event: PointerEvent) => {\n const el = props.columnRef?.current;\n let overlayPosition = null;\n\n /** This is not the natural place to get positions within the column,\n * but it will work for now.\n */\n if (props.onClickedColumn) {\n // Infer height from top and bottom height of unit (because that's passed back with the call)\n //const py = event.y;\n //const [bottom, top] = getUnitHeightRange(unit, axisType);\n //const height = Math.abs(bottom - top);\n\n /** Ideally this would be defined at the column level */\n const columnClickData: ColumnClickData = {\n unitID: unit?.unit_id,\n unit,\n target,\n height: el?.getBoundingClientRect().height || 0,\n };\n props.onClickedColumn(columnClickData, event);\n }\n\n if (unit != null && el != null && target != null) {\n const rect = el.getBoundingClientRect();\n const targetRect = target.getBoundingClientRect();\n\n overlayPosition = {\n x: targetRect.left - rect.left,\n y: targetRect.top - rect.top,\n width: targetRect.width,\n height: targetRect.height,\n };\n }\n props.onUnitSelected?.(unit?.unit_id, unit);\n\n return set({\n selectedUnit: unit?.unit_id,\n selectedUnitData: unit,\n overlayPosition,\n });\n },\n })),\n );\n\n const { units, selectedUnit } = props;\n\n useEffect(() => {\n // Synchronize store with provided props\n if (selectedUnit != null) {\n const unitData = units?.find((u) => u.unit_id === selectedUnit);\n store.setState({ selectedUnit, selectedUnitData: unitData });\n } else {\n store.setState({ selectedUnit: null, selectedUnitData: null });\n }\n }, [selectedUnit, units]);\n\n return h(UnitSelectionContext.Provider, { value: store }, props.children);\n}\n\nexport function useUnitSelectionTarget(\n unit: IUnit,\n): [React.RefObject<HTMLElement>, boolean, (evt: Event) => void] {\n const ref = useRef<HTMLElement>();\n const selectedUnit = useSelectedUnit();\n const onSelectUnit = useUnitSelectionStore((state) => state.onUnitSelected);\n const selected = selectedUnit?.unit_id == unit.unit_id;\n\n const onClick = useCallback(\n (evt: Event) => {\n if (onSelectUnit == null) return;\n onSelectUnit(unit, ref.current, evt);\n evt.stopPropagation();\n },\n [unit, onSelectUnit],\n );\n\n useEffect(() => {\n if (!selected || onSelectUnit == null) return;\n // In case we haven't set the position of the unit (if we don't have a target), set the selected unit\n onSelectUnit(unit, ref.current, null);\n\n // Scroll the unit into view\n ref.current?.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n inline: \"nearest\",\n });\n }, [selected, onSelectUnit]);\n\n return [ref, selected, onClick];\n}\n\nexport function UnitKeyboardNavigation<T extends BaseUnit>({\n units,\n}: {\n units: T[];\n}) {\n const selectedUnit = useSelectedUnit();\n const selectUnit = useUnitSelectionDispatch();\n\n const ix = units.findIndex((unit) => unit.unit_id === selectedUnit?.unit_id);\n\n const keyMap = {\n 38: ix - 1,\n 40: ix + 1,\n };\n\n useKeyHandler(\n (event) => {\n const nextIx = keyMap[event.keyCode];\n if (nextIx == null || nextIx < 0 || nextIx >= units.length) return;\n selectUnit(units[nextIx], null, null);\n event.stopPropagation();\n },\n [units, ix],\n );\n return null;\n}\n"],"names":["$TyplV$macrostrathyper","useKeyHandler","$TyplV$useKeyHandler","createContext","$TyplV$createContext","useContext","$TyplV$useContext","useState","$TyplV$useState","useEffect","$TyplV$useEffect","useRef","$TyplV$useRef","useCallback","$TyplV$useCallback","useStore","$TyplV$useStore","createStore","$TyplV$createStore","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$f7d31510668965d8$exports","$f7d31510668965d8$export$77a278d5ca56e309","$f7d31510668965d8$export$b220b1d3591dc9e5","$f7d31510668965d8$export$f0dd93f90aa8e5da","$f7d31510668965d8$export$f19d75b1d4b676a4","$f7d31510668965d8$export$cbbec12b1451fe7d","$f7d31510668965d8$export$70f5ee19650fc7d1","$f7d31510668965d8$var$UnitSelectionContext","store","state","onUnitSelected","selector","selectedUnitData","props","selectedUnit","overlayPosition","setSelectedUnit","unit_id","unit","target","event","el","columnRef","current","onClickedColumn","columnClickData","unitID","height","getBoundingClientRect","rect","targetRect","x","left","y","top","width","units","unitData","find","u","setState","Provider","value","children","ref","onSelectUnit","selected","onClick","evt","stopPropagation","scrollIntoView","behavior","block","inline","selectUnit","ix","findIndex","keyMap","nextIx","keyCode","length","useUnitSelectionDispatch","useUnitSelectionStore","useSelectedUnit","UnitSelectionProvider","useUnitSelectionTarget","UnitKeyboardNavigation"],"version":3,"file":"column-views.3eeac38d.js.map","sourceRoot":"../../../../"}
@@ -1,2 +1,2 @@
1
- import"./column-views.82cf7c0d.js";import"./column-views.04407342.js";import"./column-views.78d3f3c5.js";import"./column-views.eea80478.js";import{useMemo as e}from"react";import t from"@macrostrat/hyper";import a from"classnames";import{AxisBottom as r}from"@visx/axis";import{referenceMeasuresToColumn as o}from"@macrostrat/stratigraphy-utils";import{useColumnLayout as s,SVG as l,ColumnLayoutProvider as i}from"@macrostrat/column-components";import{scaleLinear as n}from"d3-scale";function c(e,t,a,r){Object.defineProperty(e,t,{get:a,set:r,enumerable:!0,configurable:!0})}var u=globalThis,m={},p={},d=u.parcelRequirea149;null==d&&((d=function(e){if(e in m)return m[e].exports;if(e in p){var t=p[e];delete p[e];var a={id:e,exports:{}};return m[e]=a,t.call(a.exports,a,a.exports),a.exports}var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r}).register=function(e,t){p[e]=t},u.parcelRequirea149=d),d.register;var f={};c(f,"IsotopesDataset",()=>_),c(f,"IsotopesColumn",()=>H);var g=d("62IHc"),h=d("l5EV6"),v=d("wtIgl"),x=d("6nrRo");let k=t.styled(x&&x.__esModule?x.default:x);function b(e){let{value:t,className:r,labelBottom:o,labelOffset:l,...i}=e,{sections:n}=(0,v.useMacrostratColumnData)(),{xScale:c}=s(),u=c(t);return k("g.tick",{transform:`translate(${u})`,className:r=a(r,{zero:0===t}),key:t},[k("g.tick-lines",n.map(t=>{let{scaleInfo:a}=t,r=a.offset,o=r+a.pixelHeight;return k("line",{y1:r,y2:o,strokeDasharray:e.strokeDasharray,strokeWidth:1})}))])}function _(t){let{parameter:a,color:r="dodgerblue"}=t,s=(0,v.useMacrostratUnits)(),l=(0,g.useMeasurementData)()??[],i=e(()=>{var e=o(s,l.filter(e=>e.measurement===a));let t=[];for(let a of e){let e=a.measure_value.map((e,t)=>({value:e,age:a.measure_age[t],position:a.measure_position[t],unit_id:a.unit_id,sample_id:a.sample_no[t],measurement:a.measurement}));Array.prototype.push.apply(t,e)}return t},[l,a,s]);return k(h.IsotopesDataArea,{getHeight:e=>e.age},k("g.data-points",i.map(e=>k(h.IsotopeDataPoint,{datum:e,fill:r}))))}function H(t){let{width:a=120,domain:r=[-14,6],parameter:o,label:s,color:c="dodgerblue",children:u=null,transform:m,getHeight:p,showAxis:d=!0,tickValues:f,nTicks:g=6,...h}=t,{totalHeight:x}=(0,v.useMacrostratColumnData)(),b=u;null==u&&null!=o&&(b=k(_,{parameter:o,color:c,getHeight:p}));let H=e(()=>n().domain(r).range([0,a]),[r,a]),S=f??H.ticks(g);return k("div.isotopes-column",[k(l,{height:x,innerWidth:a,paddingH:15},k(i,{width:a,xScale:H},k("g.isotopes-column",{className:o,transform:m},[k(w,{xScale:H,tickValues:S,width:a,...h}),b]))),k.if(d)(y,{width:a,label:s??o,xScale:H,tickValues:S,...h})])}function y(e){let{label:t,xScale:a,width:o,showAxis:s=!0,tickValues:i,...n}=e;return k("div.isotopes-scale-axis",[k(l,{innerWidth:o,height:45,paddingH:15},[k(r,{scale:a,tickLength:5,tickValues:i,stroke:"var(--column-stroke-color)",tickStroke:"var(--column-stroke-color)",...n,label:t})])])}function w(e){let{tickValues:t,xScale:a}=e;return k("g.scale-lines",t.map(e=>k(b,{value:e})))}export{_ as IsotopesDataset,H as IsotopesColumn};
2
- //# sourceMappingURL=column-views.7350ac73.js.map
1
+ import"./column-views.82cf7c0d.js";import"./column-views.a2274834.js";import"./column-views.78d3f3c5.js";import"./column-views.eea80478.js";import{useMemo as e}from"react";import t from"@macrostrat/hyper";import a from"classnames";import{AxisBottom as r}from"@visx/axis";import{referenceMeasuresToColumn as o}from"@macrostrat/stratigraphy-utils";import{useColumnLayout as s,SVG as l,ColumnLayoutProvider as i}from"@macrostrat/column-components";import{scaleLinear as n}from"d3-scale";function c(e,t,a,r){Object.defineProperty(e,t,{get:a,set:r,enumerable:!0,configurable:!0})}var u=globalThis,m={},p={},d=u.parcelRequirea149;null==d&&((d=function(e){if(e in m)return m[e].exports;if(e in p){var t=p[e];delete p[e];var a={id:e,exports:{}};return m[e]=a,t.call(a.exports,a,a.exports),a.exports}var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r}).register=function(e,t){p[e]=t},u.parcelRequirea149=d),d.register;var f={};c(f,"IsotopesDataset",()=>_),c(f,"IsotopesColumn",()=>H);var g=d("62IHc"),h=d("l5EV6"),v=d("wtIgl"),x=d("6nrRo");let k=t.styled(x&&x.__esModule?x.default:x);function b(e){let{value:t,className:r,labelBottom:o,labelOffset:l,...i}=e,{sections:n}=(0,v.useMacrostratColumnData)(),{xScale:c}=s(),u=c(t);return k("g.tick",{transform:`translate(${u})`,className:r=a(r,{zero:0===t}),key:t},[k("g.tick-lines",n.map(t=>{let{scaleInfo:a}=t,r=a.offset,o=r+a.pixelHeight;return k("line",{y1:r,y2:o,strokeDasharray:e.strokeDasharray,strokeWidth:1})}))])}function _(t){let{parameter:a,color:r="dodgerblue"}=t,s=(0,v.useMacrostratUnits)(),l=(0,g.useMeasurementData)()??[],i=e(()=>{var e=o(s,l.filter(e=>e.measurement===a));let t=[];for(let a of e){let e=a.measure_value.map((e,t)=>({value:e,age:a.measure_age[t],position:a.measure_position[t],unit_id:a.unit_id,sample_id:a.sample_no[t],measurement:a.measurement}));Array.prototype.push.apply(t,e)}return t},[l,a,s]);return k(h.IsotopesDataArea,{getHeight:e=>e.age},k("g.data-points",i.map(e=>k(h.IsotopeDataPoint,{datum:e,fill:r}))))}function H(t){let{width:a=120,domain:r=[-14,6],parameter:o,label:s,color:c="dodgerblue",children:u=null,transform:m,getHeight:p,showAxis:d=!0,tickValues:f,nTicks:g=6,...h}=t,{totalHeight:x}=(0,v.useMacrostratColumnData)(),b=u;null==u&&null!=o&&(b=k(_,{parameter:o,color:c,getHeight:p}));let H=e(()=>n().domain(r).range([0,a]),[r,a]),S=f??H.ticks(g);return k("div.isotopes-column",[k(l,{height:x,innerWidth:a,paddingH:15},k(i,{width:a,xScale:H},k("g.isotopes-column",{className:o,transform:m},[k(w,{xScale:H,tickValues:S,width:a,...h}),b]))),k.if(d)(y,{width:a,label:s??o,xScale:H,tickValues:S,...h})])}function y(e){let{label:t,xScale:a,width:o,showAxis:s=!0,tickValues:i,...n}=e;return k("div.isotopes-scale-axis",[k(l,{innerWidth:o,height:45,paddingH:15},[k(r,{scale:a,tickLength:5,tickValues:i,stroke:"var(--column-stroke-color)",tickStroke:"var(--column-stroke-color)",...n,label:t})])])}function w(e){let{tickValues:t,xScale:a}=e;return k("g.scale-lines",t.map(e=>k(b,{value:e})))}export{_ as IsotopesDataset,H as IsotopesColumn};
2
+ //# sourceMappingURL=column-views.42db0bb8.js.map
@@ -1 +1 @@
1
- {"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,W,C,K,O,A,Q,M,mB,A,Q,M,Y,A,Q,c,C,K,Y,A,Q,6B,C,K,gC,A,Q,mB,C,C,O,C,C,wB,C,K,+B,A,Q,e,C,K,U,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,kB,I,G,E,E,iB,I,G,I,E,E,S,E,E,S,E,E,S,E,E,SCwBA,IAAM,EAAI,AAAA,EAAM,MAAM,C,AAAC,G,AAAA,E,U,C,AAAA,E,O,CAAA,GA8BvB,SAAS,EAAU,CAAqB,EACtC,GAAI,CAAA,MAAE,CAAK,CAAA,UAAE,CAAS,CAAA,YAAE,CAAW,CAAA,YAAE,CAAW,CAAE,GAAG,EAAM,CAAG,EACxD,CAAA,SAAE,CAAQ,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,IAEf,CAAA,OAAE,CAAM,CAAE,CAAG,AAAA,IACb,EAAI,EAAO,GAGjB,OAAO,EAAE,SAAU,CAAE,UAFH,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAEH,UADhC,EAAY,AAAA,EAAW,EAAW,CAAE,KAAM,AAAU,IAAV,CAAY,GACX,IAAK,CAAM,EAAG,CACvD,EACE,eACA,EAAS,GAAG,CAAC,AAAC,IACZ,GAAM,CAAA,UAAE,CAAS,CAAE,CAAG,EAChB,EAAK,EAAU,MAAM,CACrB,EAAK,EAAK,EAAU,WAAW,CACrC,OAAO,EAAE,OAAQ,CACf,GAAA,EACA,GAAA,EACA,gBAAiB,EAAM,eAAe,CACtC,YAAa,CACf,EACF,IAEH,CACH,CAoCA,SAAS,EAAgB,CAAK,EAC5B,GAAM,CAAA,UAAE,CAAS,CAAA,MAAE,EAAQ,YAAA,CAAc,CAAG,EACtC,EAAQ,AAAA,CAAA,E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","sources":["<anon>","packages/column-views/src/facets/carbon-isotopes/isotopes-column.ts"],"sourcesContent":["import \"./column-views.82cf7c0d.js\";\nimport \"./column-views.04407342.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport \"./column-views.eea80478.js\";\nimport {useMemo as $2wsb4$useMemo} from \"react\";\nimport $2wsb4$macrostrathyper from \"@macrostrat/hyper\";\nimport $2wsb4$classnames from \"classnames\";\nimport {AxisBottom as $2wsb4$AxisBottom} from \"@visx/axis\";\nimport {referenceMeasuresToColumn as $2wsb4$referenceMeasuresToColumn} from \"@macrostrat/stratigraphy-utils\";\nimport {useColumnLayout as $2wsb4$useColumnLayout, SVG as $2wsb4$SVG, ColumnLayoutProvider as $2wsb4$ColumnLayoutProvider} from \"@macrostrat/column-components\";\nimport {scaleLinear as $2wsb4$scaleLinear} from \"d3-scale\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $5ccf8f2b270f7458$exports = {};\n\n$parcel$export($5ccf8f2b270f7458$exports, \"IsotopesDataset\", () => $5ccf8f2b270f7458$export$c69bd0285aa5d775);\n$parcel$export($5ccf8f2b270f7458$exports, \"IsotopesColumn\", () => $5ccf8f2b270f7458$export$5d8aa8022c284748);\n\n\n\n\n\nvar $62IHc = parcelRequire(\"62IHc\");\n\nvar $l5EV6 = parcelRequire(\"l5EV6\");\n\n\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\nvar $6nrRo = parcelRequire(\"6nrRo\");\n\nconst $5ccf8f2b270f7458$var$h = (0, $2wsb4$macrostrathyper).styled((0, (/*@__PURE__*/$parcel$interopDefault($6nrRo))));\nfunction $5ccf8f2b270f7458$var$IsotopeText({ datum: datum, text: text, ...rest }) {\n const { pointLocator: pointLocator } = (0, $l5EV6.useDataLocator)();\n const [x, y] = pointLocator(datum);\n return $5ccf8f2b270f7458$var$h(\"text\", {\n x: x,\n y: y,\n ...rest\n }, text);\n}\nfunction $5ccf8f2b270f7458$var$ScaleLine(props) {\n let { value: value, className: className, labelBottom: labelBottom, labelOffset: labelOffset, ...rest } = props;\n const { sections: sections } = (0, $wtIgl.useMacrostratColumnData)();\n const { xScale: xScale } = (0, $2wsb4$useColumnLayout)();\n const x = xScale(value);\n const transform = `translate(${x})`;\n className = (0, $2wsb4$classnames)(className, {\n zero: value === 0\n });\n return $5ccf8f2b270f7458$var$h(\"g.tick\", {\n transform: transform,\n className: className,\n key: value\n }, [\n $5ccf8f2b270f7458$var$h(\"g.tick-lines\", sections.map((d)=>{\n const { scaleInfo: scaleInfo } = d;\n const y1 = scaleInfo.offset;\n const y2 = y1 + scaleInfo.pixelHeight;\n return $5ccf8f2b270f7458$var$h(\"line\", {\n y1: y1,\n y2: y2,\n strokeDasharray: props.strokeDasharray,\n strokeWidth: 1\n });\n }))\n ]);\n}\nfunction $5ccf8f2b270f7458$var$unnestPoints(measures) {\n let points = [];\n for (const meas of measures){\n const vals = meas.measure_value.map((d, i)=>{\n return {\n value: d,\n age: meas.measure_age[i],\n position: meas.measure_position[i],\n unit_id: meas.unit_id,\n sample_id: meas.sample_no[i],\n measurement: meas.measurement\n };\n });\n Array.prototype.push.apply(points, vals);\n }\n return points;\n}\nfunction $5ccf8f2b270f7458$export$c69bd0285aa5d775(props) {\n const { parameter: parameter, color: color = \"dodgerblue\" } = props;\n const units = (0, $wtIgl.useMacrostratUnits)();\n const measures = (0, $62IHc.useMeasurementData)() ?? [];\n const points = (0, $2wsb4$useMemo)(()=>{\n const data = measures.filter((d)=>d.measurement === parameter);\n const refMeasures = (0, $2wsb4$referenceMeasuresToColumn)(units, data);\n return $5ccf8f2b270f7458$var$unnestPoints(refMeasures);\n }, [\n measures,\n parameter,\n units\n ]);\n return $5ccf8f2b270f7458$var$h((0, $l5EV6.IsotopesDataArea), {\n getHeight (d) {\n return d.age;\n }\n }, $5ccf8f2b270f7458$var$h(\"g.data-points\", points.map((d)=>{\n return $5ccf8f2b270f7458$var$h((0, $l5EV6.IsotopeDataPoint), {\n datum: d,\n fill: color\n });\n })));\n}\nfunction $5ccf8f2b270f7458$export$5d8aa8022c284748(props) {\n const { width: width = 120, domain: domain = [\n -14,\n 6\n ], parameter: parameter, label: label, color: color = \"dodgerblue\", children: children = null, transform: transform, getHeight: getHeight, showAxis: showAxis = true, tickValues: _tickVals, nTicks: nTicks = 6, ...rest } = props;\n const { totalHeight: totalHeight } = (0, $wtIgl.useMacrostratColumnData)();\n let _children = children;\n if (children == null && parameter != null) _children = $5ccf8f2b270f7458$var$h($5ccf8f2b270f7458$export$c69bd0285aa5d775, {\n parameter: parameter,\n color: color,\n getHeight: getHeight\n });\n const xScale = (0, $2wsb4$useMemo)(()=>(0, $2wsb4$scaleLinear)().domain(domain).range([\n 0,\n width\n ]), [\n domain,\n width\n ]);\n const tickValues = _tickVals ?? xScale.ticks(nTicks);\n return $5ccf8f2b270f7458$var$h(\"div.isotopes-column\", [\n $5ccf8f2b270f7458$var$h((0, $2wsb4$SVG), {\n height: totalHeight,\n innerWidth: width,\n paddingH: 15\n }, $5ccf8f2b270f7458$var$h((0, $2wsb4$ColumnLayoutProvider), {\n width: width,\n xScale: xScale\n }, $5ccf8f2b270f7458$var$h(\"g.isotopes-column\", {\n className: parameter,\n transform: transform\n }, [\n $5ccf8f2b270f7458$var$h($5ccf8f2b270f7458$var$ColumnScaleLines, {\n xScale: xScale,\n tickValues: tickValues,\n width: width,\n ...rest\n }),\n _children\n ]))),\n $5ccf8f2b270f7458$var$h.if(showAxis)($5ccf8f2b270f7458$var$ColumnScaleAxis, {\n width: width,\n label: label ?? parameter,\n xScale: xScale,\n tickValues: tickValues,\n ...rest\n })\n ]);\n}\nfunction $5ccf8f2b270f7458$var$ColumnScaleAxis(props) {\n const { label: label, xScale: xScale, width: width, showAxis: showAxis = true, tickValues: tickValues, ...rest } = props;\n return $5ccf8f2b270f7458$var$h(\"div.isotopes-scale-axis\", [\n $5ccf8f2b270f7458$var$h((0, $2wsb4$SVG), {\n innerWidth: width,\n height: 45,\n paddingH: 15\n }, [\n $5ccf8f2b270f7458$var$h((0, $2wsb4$AxisBottom), {\n scale: xScale,\n tickLength: 5,\n tickValues: tickValues,\n stroke: \"var(--column-stroke-color)\",\n tickStroke: \"var(--column-stroke-color)\",\n ...rest,\n label: label\n })\n ])\n ]);\n}\nfunction $5ccf8f2b270f7458$var$ColumnScaleLines(props) {\n const { tickValues: tickValues, xScale: xScale } = props;\n return $5ccf8f2b270f7458$var$h(\"g.scale-lines\", tickValues.map((value)=>{\n return $5ccf8f2b270f7458$var$h($5ccf8f2b270f7458$var$ScaleLine, {\n value: value\n });\n }));\n}\n\n\nexport {$5ccf8f2b270f7458$export$c69bd0285aa5d775 as IsotopesDataset, $5ccf8f2b270f7458$export$5d8aa8022c284748 as IsotopesColumn};\n//# sourceMappingURL=column-views.7350ac73.js.map\n","import { useMemo } from \"react\";\nimport hyper from \"@macrostrat/hyper\";\nimport classNames from \"classnames\";\nimport { AxisBottom } from \"@visx/axis\";\nimport { useMeasurementData } from \"./data-provider\";\n\nimport {\n IsotopesDataArea,\n useDataLocator,\n IsotopeDataPoint,\n} from \"./data-area\";\nimport { referenceMeasuresToColumn } from \"@macrostrat/stratigraphy-utils\";\nimport {\n SVG,\n ColumnLayoutProvider,\n useColumnLayout,\n} from \"@macrostrat/column-components\";\nimport {\n useMacrostratColumnData,\n useMacrostratUnits,\n} from \"../../data-provider\";\nimport styles from \"./isotopes-column.module.sass\";\nimport { scaleLinear } from \"d3-scale\";\n\nconst h = hyper.styled(styles);\n\ntype IsotopesTextProps = {\n datum: any;\n text: string;\n};\n\nfunction IsotopeText({ datum, text, ...rest }: IsotopesTextProps) {\n const { pointLocator } = useDataLocator();\n const [x, y] = pointLocator(datum);\n return h(\n \"text\",\n {\n x,\n y,\n ...rest,\n },\n text,\n );\n}\n\ninterface ScaleLineProps {\n value: number;\n className?: string;\n labelBottom?: boolean;\n labelOffset?: number;\n strokeDasharray?: string;\n stroke?: string | number;\n}\n\nfunction ScaleLine(props: ScaleLineProps) {\n let { value, className, labelBottom, labelOffset, ...rest } = props;\n const { sections } = useMacrostratColumnData();\n\n const { xScale } = useColumnLayout();\n const x = xScale(value);\n const transform = `translate(${x})`;\n className = classNames(className, { zero: value === 0 });\n return h(\"g.tick\", { transform, className, key: value }, [\n h(\n \"g.tick-lines\",\n sections.map((d) => {\n const { scaleInfo } = d;\n const y1 = scaleInfo.offset;\n const y2 = y1 + scaleInfo.pixelHeight;\n return h(\"line\", {\n y1,\n y2,\n strokeDasharray: props.strokeDasharray,\n strokeWidth: 1,\n });\n }),\n ),\n ]);\n}\n\nfunction unnestPoints(measures) {\n let points = [];\n for (const meas of measures) {\n const vals = meas.measure_value.map((d, i) => {\n return {\n value: d,\n age: meas.measure_age[i],\n position: meas.measure_position[i],\n unit_id: meas.unit_id,\n sample_id: meas.sample_no[i],\n measurement: meas.measurement,\n };\n });\n Array.prototype.push.apply(points, vals);\n }\n return points;\n}\n\ninterface IsotopesDatasetProps {\n color: string;\n parameter: string;\n}\n\ninterface IsotopeColumnProps extends IsotopesDatasetProps {\n width: number;\n tickValues?: number[];\n label: string;\n domain: [number, number];\n transform?: string;\n getHeight?: Function;\n nTicks?: number;\n showAxis?: boolean;\n}\n\nfunction IsotopesDataset(props) {\n const { parameter, color = \"dodgerblue\" } = props;\n const units = useMacrostratUnits();\n const measures = useMeasurementData() ?? [];\n\n const points = useMemo(() => {\n const data = measures.filter((d) => d.measurement === parameter);\n const refMeasures = referenceMeasuresToColumn(units, data);\n return unnestPoints(refMeasures);\n }, [measures, parameter, units]);\n\n return h(\n IsotopesDataArea,\n {\n getHeight(d) {\n return d.age;\n },\n } as any,\n h(\n \"g.data-points\",\n points.map((d) => {\n return h(IsotopeDataPoint, {\n datum: d,\n fill: color,\n });\n }),\n ),\n );\n}\n\nfunction IsotopesColumn(\n props: IsotopeColumnProps & { children?: React.ReactNode },\n) {\n const {\n width = 120,\n domain = [-14, 6],\n parameter,\n label,\n color = \"dodgerblue\",\n children = null,\n transform,\n getHeight,\n showAxis = true,\n tickValues: _tickVals,\n nTicks = 6,\n ...rest\n } = props;\n\n const { totalHeight } = useMacrostratColumnData();\n\n let _children: any = children;\n if (children == null && parameter != null) {\n _children = h(IsotopesDataset, { parameter, color, getHeight });\n }\n\n const xScale = useMemo(\n () => scaleLinear().domain(domain).range([0, width]),\n [domain, width],\n );\n\n const tickValues = _tickVals ?? xScale.ticks(nTicks);\n\n return h(\"div.isotopes-column\", [\n h(\n SVG,\n {\n height: totalHeight,\n innerWidth: width,\n paddingH: 15,\n },\n h(\n ColumnLayoutProvider,\n { width, xScale },\n h(\"g.isotopes-column\", { className: parameter, transform }, [\n h(ColumnScaleLines, {\n xScale,\n tickValues,\n width,\n ...rest,\n }),\n _children,\n ]),\n ),\n ),\n h.if(showAxis)(ColumnScaleAxis, {\n width,\n label: label ?? parameter,\n xScale,\n tickValues,\n ...rest,\n }),\n ]);\n}\n\nfunction ColumnScaleAxis(props) {\n const { label, xScale, width, showAxis = true, tickValues, ...rest } = props;\n\n return h(\"div.isotopes-scale-axis\", [\n h(\n SVG,\n {\n innerWidth: width,\n height: 45,\n paddingH: 15,\n },\n [\n h(AxisBottom, {\n scale: xScale,\n tickLength: 5,\n tickValues,\n stroke: \"var(--column-stroke-color)\",\n tickStroke: \"var(--column-stroke-color)\",\n ...rest,\n label,\n }),\n ],\n ),\n ]);\n}\n\nfunction ColumnScaleLines(props) {\n const { tickValues, xScale } = props;\n\n return h(\n \"g.scale-lines\",\n tickValues.map((value) => {\n return h(ScaleLine, { value });\n }),\n );\n}\n\nexport { IsotopesColumn, IsotopesDataset };\n"],"names":["useMemo","$2wsb4$useMemo","$2wsb4$macrostrathyper","$2wsb4$classnames","AxisBottom","$2wsb4$AxisBottom","referenceMeasuresToColumn","$2wsb4$referenceMeasuresToColumn","useColumnLayout","$2wsb4$useColumnLayout","SVG","$2wsb4$SVG","ColumnLayoutProvider","$2wsb4$ColumnLayoutProvider","scaleLinear","$2wsb4$scaleLinear","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$5ccf8f2b270f7458$exports","$5ccf8f2b270f7458$export$c69bd0285aa5d775","$5ccf8f2b270f7458$export$5d8aa8022c284748","$62IHc","$l5EV6","$wtIgl","$6nrRo","$5ccf8f2b270f7458$var$h","styled","a","__esModule","default","$5ccf8f2b270f7458$var$ScaleLine","props","value","className","labelBottom","labelOffset","rest","sections","useMacrostratColumnData","xScale","x","transform","zero","key","map","d","scaleInfo","y1","offset","y2","pixelHeight","strokeDasharray","strokeWidth","parameter","color","units","useMacrostratUnits","measures","useMeasurementData","points","filter","measurement","meas","vals","measure_value","i","age","measure_age","position","measure_position","unit_id","sample_id","sample_no","Array","prototype","push","apply","IsotopesDataArea","getHeight","IsotopeDataPoint","datum","fill","width","domain","label","children","showAxis","tickValues","_tickVals","nTicks","totalHeight","_children","range","ticks","height","innerWidth","paddingH","$5ccf8f2b270f7458$var$ColumnScaleLines","if","$5ccf8f2b270f7458$var$ColumnScaleAxis","scale","tickLength","stroke","tickStroke","IsotopesDataset","IsotopesColumn"],"version":3,"file":"column-views.7350ac73.js.map","sourceRoot":"../../../../"}
1
+ {"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,W,C,K,O,A,Q,M,mB,A,Q,M,Y,A,Q,c,C,K,Y,A,Q,6B,C,K,gC,A,Q,mB,C,C,O,C,C,wB,C,K,+B,A,Q,e,C,K,U,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,kB,I,G,E,E,iB,I,G,I,E,E,S,E,E,S,E,E,S,E,E,SCwBA,IAAM,EAAI,AAAA,EAAM,MAAM,C,AAAC,G,AAAA,E,U,C,AAAA,E,O,CAAA,GA8BvB,SAAS,EAAU,CAAqB,EACtC,GAAI,CAAA,MAAE,CAAK,CAAA,UAAE,CAAS,CAAA,YAAE,CAAW,CAAA,YAAE,CAAW,CAAE,GAAG,EAAM,CAAG,EACxD,CAAA,SAAE,CAAQ,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,IAEf,CAAA,OAAE,CAAM,CAAE,CAAG,AAAA,IACb,EAAI,EAAO,GAGjB,OAAO,EAAE,SAAU,CAAE,UAFH,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAEH,UADhC,EAAY,AAAA,EAAW,EAAW,CAAE,KAAM,AAAU,IAAV,CAAY,GACX,IAAK,CAAM,EAAG,CACvD,EACE,eACA,EAAS,GAAG,CAAC,AAAC,IACZ,GAAM,CAAA,UAAE,CAAS,CAAE,CAAG,EAChB,EAAK,EAAU,MAAM,CACrB,EAAK,EAAK,EAAU,WAAW,CACrC,OAAO,EAAE,OAAQ,CACf,GAAA,EACA,GAAA,EACA,gBAAiB,EAAM,eAAe,CACtC,YAAa,CACf,EACF,IAEH,CACH,CAoCA,SAAS,EAAgB,CAAK,EAC5B,GAAM,CAAA,UAAE,CAAS,CAAA,MAAE,EAAQ,YAAA,CAAc,CAAG,EACtC,EAAQ,AAAA,CAAA,E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","sources":["<anon>","packages/column-views/src/facets/carbon-isotopes/isotopes-column.ts"],"sourcesContent":["import \"./column-views.82cf7c0d.js\";\nimport \"./column-views.a2274834.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport \"./column-views.eea80478.js\";\nimport {useMemo as $2wsb4$useMemo} from \"react\";\nimport $2wsb4$macrostrathyper from \"@macrostrat/hyper\";\nimport $2wsb4$classnames from \"classnames\";\nimport {AxisBottom as $2wsb4$AxisBottom} from \"@visx/axis\";\nimport {referenceMeasuresToColumn as $2wsb4$referenceMeasuresToColumn} from \"@macrostrat/stratigraphy-utils\";\nimport {useColumnLayout as $2wsb4$useColumnLayout, SVG as $2wsb4$SVG, ColumnLayoutProvider as $2wsb4$ColumnLayoutProvider} from \"@macrostrat/column-components\";\nimport {scaleLinear as $2wsb4$scaleLinear} from \"d3-scale\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $5ccf8f2b270f7458$exports = {};\n\n$parcel$export($5ccf8f2b270f7458$exports, \"IsotopesDataset\", () => $5ccf8f2b270f7458$export$c69bd0285aa5d775);\n$parcel$export($5ccf8f2b270f7458$exports, \"IsotopesColumn\", () => $5ccf8f2b270f7458$export$5d8aa8022c284748);\n\n\n\n\n\nvar $62IHc = parcelRequire(\"62IHc\");\n\nvar $l5EV6 = parcelRequire(\"l5EV6\");\n\n\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\nvar $6nrRo = parcelRequire(\"6nrRo\");\n\nconst $5ccf8f2b270f7458$var$h = (0, $2wsb4$macrostrathyper).styled((0, (/*@__PURE__*/$parcel$interopDefault($6nrRo))));\nfunction $5ccf8f2b270f7458$var$IsotopeText({ datum: datum, text: text, ...rest }) {\n const { pointLocator: pointLocator } = (0, $l5EV6.useDataLocator)();\n const [x, y] = pointLocator(datum);\n return $5ccf8f2b270f7458$var$h(\"text\", {\n x: x,\n y: y,\n ...rest\n }, text);\n}\nfunction $5ccf8f2b270f7458$var$ScaleLine(props) {\n let { value: value, className: className, labelBottom: labelBottom, labelOffset: labelOffset, ...rest } = props;\n const { sections: sections } = (0, $wtIgl.useMacrostratColumnData)();\n const { xScale: xScale } = (0, $2wsb4$useColumnLayout)();\n const x = xScale(value);\n const transform = `translate(${x})`;\n className = (0, $2wsb4$classnames)(className, {\n zero: value === 0\n });\n return $5ccf8f2b270f7458$var$h(\"g.tick\", {\n transform: transform,\n className: className,\n key: value\n }, [\n $5ccf8f2b270f7458$var$h(\"g.tick-lines\", sections.map((d)=>{\n const { scaleInfo: scaleInfo } = d;\n const y1 = scaleInfo.offset;\n const y2 = y1 + scaleInfo.pixelHeight;\n return $5ccf8f2b270f7458$var$h(\"line\", {\n y1: y1,\n y2: y2,\n strokeDasharray: props.strokeDasharray,\n strokeWidth: 1\n });\n }))\n ]);\n}\nfunction $5ccf8f2b270f7458$var$unnestPoints(measures) {\n let points = [];\n for (const meas of measures){\n const vals = meas.measure_value.map((d, i)=>{\n return {\n value: d,\n age: meas.measure_age[i],\n position: meas.measure_position[i],\n unit_id: meas.unit_id,\n sample_id: meas.sample_no[i],\n measurement: meas.measurement\n };\n });\n Array.prototype.push.apply(points, vals);\n }\n return points;\n}\nfunction $5ccf8f2b270f7458$export$c69bd0285aa5d775(props) {\n const { parameter: parameter, color: color = \"dodgerblue\" } = props;\n const units = (0, $wtIgl.useMacrostratUnits)();\n const measures = (0, $62IHc.useMeasurementData)() ?? [];\n const points = (0, $2wsb4$useMemo)(()=>{\n const data = measures.filter((d)=>d.measurement === parameter);\n const refMeasures = (0, $2wsb4$referenceMeasuresToColumn)(units, data);\n return $5ccf8f2b270f7458$var$unnestPoints(refMeasures);\n }, [\n measures,\n parameter,\n units\n ]);\n return $5ccf8f2b270f7458$var$h((0, $l5EV6.IsotopesDataArea), {\n getHeight (d) {\n return d.age;\n }\n }, $5ccf8f2b270f7458$var$h(\"g.data-points\", points.map((d)=>{\n return $5ccf8f2b270f7458$var$h((0, $l5EV6.IsotopeDataPoint), {\n datum: d,\n fill: color\n });\n })));\n}\nfunction $5ccf8f2b270f7458$export$5d8aa8022c284748(props) {\n const { width: width = 120, domain: domain = [\n -14,\n 6\n ], parameter: parameter, label: label, color: color = \"dodgerblue\", children: children = null, transform: transform, getHeight: getHeight, showAxis: showAxis = true, tickValues: _tickVals, nTicks: nTicks = 6, ...rest } = props;\n const { totalHeight: totalHeight } = (0, $wtIgl.useMacrostratColumnData)();\n let _children = children;\n if (children == null && parameter != null) _children = $5ccf8f2b270f7458$var$h($5ccf8f2b270f7458$export$c69bd0285aa5d775, {\n parameter: parameter,\n color: color,\n getHeight: getHeight\n });\n const xScale = (0, $2wsb4$useMemo)(()=>(0, $2wsb4$scaleLinear)().domain(domain).range([\n 0,\n width\n ]), [\n domain,\n width\n ]);\n const tickValues = _tickVals ?? xScale.ticks(nTicks);\n return $5ccf8f2b270f7458$var$h(\"div.isotopes-column\", [\n $5ccf8f2b270f7458$var$h((0, $2wsb4$SVG), {\n height: totalHeight,\n innerWidth: width,\n paddingH: 15\n }, $5ccf8f2b270f7458$var$h((0, $2wsb4$ColumnLayoutProvider), {\n width: width,\n xScale: xScale\n }, $5ccf8f2b270f7458$var$h(\"g.isotopes-column\", {\n className: parameter,\n transform: transform\n }, [\n $5ccf8f2b270f7458$var$h($5ccf8f2b270f7458$var$ColumnScaleLines, {\n xScale: xScale,\n tickValues: tickValues,\n width: width,\n ...rest\n }),\n _children\n ]))),\n $5ccf8f2b270f7458$var$h.if(showAxis)($5ccf8f2b270f7458$var$ColumnScaleAxis, {\n width: width,\n label: label ?? parameter,\n xScale: xScale,\n tickValues: tickValues,\n ...rest\n })\n ]);\n}\nfunction $5ccf8f2b270f7458$var$ColumnScaleAxis(props) {\n const { label: label, xScale: xScale, width: width, showAxis: showAxis = true, tickValues: tickValues, ...rest } = props;\n return $5ccf8f2b270f7458$var$h(\"div.isotopes-scale-axis\", [\n $5ccf8f2b270f7458$var$h((0, $2wsb4$SVG), {\n innerWidth: width,\n height: 45,\n paddingH: 15\n }, [\n $5ccf8f2b270f7458$var$h((0, $2wsb4$AxisBottom), {\n scale: xScale,\n tickLength: 5,\n tickValues: tickValues,\n stroke: \"var(--column-stroke-color)\",\n tickStroke: \"var(--column-stroke-color)\",\n ...rest,\n label: label\n })\n ])\n ]);\n}\nfunction $5ccf8f2b270f7458$var$ColumnScaleLines(props) {\n const { tickValues: tickValues, xScale: xScale } = props;\n return $5ccf8f2b270f7458$var$h(\"g.scale-lines\", tickValues.map((value)=>{\n return $5ccf8f2b270f7458$var$h($5ccf8f2b270f7458$var$ScaleLine, {\n value: value\n });\n }));\n}\n\n\nexport {$5ccf8f2b270f7458$export$c69bd0285aa5d775 as IsotopesDataset, $5ccf8f2b270f7458$export$5d8aa8022c284748 as IsotopesColumn};\n//# sourceMappingURL=column-views.42db0bb8.js.map\n","import { useMemo } from \"react\";\nimport hyper from \"@macrostrat/hyper\";\nimport classNames from \"classnames\";\nimport { AxisBottom } from \"@visx/axis\";\nimport { useMeasurementData } from \"./data-provider\";\n\nimport {\n IsotopesDataArea,\n useDataLocator,\n IsotopeDataPoint,\n} from \"./data-area\";\nimport { referenceMeasuresToColumn } from \"@macrostrat/stratigraphy-utils\";\nimport {\n SVG,\n ColumnLayoutProvider,\n useColumnLayout,\n} from \"@macrostrat/column-components\";\nimport {\n useMacrostratColumnData,\n useMacrostratUnits,\n} from \"../../data-provider\";\nimport styles from \"./isotopes-column.module.sass\";\nimport { scaleLinear } from \"d3-scale\";\n\nconst h = hyper.styled(styles);\n\ntype IsotopesTextProps = {\n datum: any;\n text: string;\n};\n\nfunction IsotopeText({ datum, text, ...rest }: IsotopesTextProps) {\n const { pointLocator } = useDataLocator();\n const [x, y] = pointLocator(datum);\n return h(\n \"text\",\n {\n x,\n y,\n ...rest,\n },\n text,\n );\n}\n\ninterface ScaleLineProps {\n value: number;\n className?: string;\n labelBottom?: boolean;\n labelOffset?: number;\n strokeDasharray?: string;\n stroke?: string | number;\n}\n\nfunction ScaleLine(props: ScaleLineProps) {\n let { value, className, labelBottom, labelOffset, ...rest } = props;\n const { sections } = useMacrostratColumnData();\n\n const { xScale } = useColumnLayout();\n const x = xScale(value);\n const transform = `translate(${x})`;\n className = classNames(className, { zero: value === 0 });\n return h(\"g.tick\", { transform, className, key: value }, [\n h(\n \"g.tick-lines\",\n sections.map((d) => {\n const { scaleInfo } = d;\n const y1 = scaleInfo.offset;\n const y2 = y1 + scaleInfo.pixelHeight;\n return h(\"line\", {\n y1,\n y2,\n strokeDasharray: props.strokeDasharray,\n strokeWidth: 1,\n });\n }),\n ),\n ]);\n}\n\nfunction unnestPoints(measures) {\n let points = [];\n for (const meas of measures) {\n const vals = meas.measure_value.map((d, i) => {\n return {\n value: d,\n age: meas.measure_age[i],\n position: meas.measure_position[i],\n unit_id: meas.unit_id,\n sample_id: meas.sample_no[i],\n measurement: meas.measurement,\n };\n });\n Array.prototype.push.apply(points, vals);\n }\n return points;\n}\n\ninterface IsotopesDatasetProps {\n color: string;\n parameter: string;\n}\n\ninterface IsotopeColumnProps extends IsotopesDatasetProps {\n width: number;\n tickValues?: number[];\n label: string;\n domain: [number, number];\n transform?: string;\n getHeight?: Function;\n nTicks?: number;\n showAxis?: boolean;\n}\n\nfunction IsotopesDataset(props) {\n const { parameter, color = \"dodgerblue\" } = props;\n const units = useMacrostratUnits();\n const measures = useMeasurementData() ?? [];\n\n const points = useMemo(() => {\n const data = measures.filter((d) => d.measurement === parameter);\n const refMeasures = referenceMeasuresToColumn(units, data);\n return unnestPoints(refMeasures);\n }, [measures, parameter, units]);\n\n return h(\n IsotopesDataArea,\n {\n getHeight(d) {\n return d.age;\n },\n } as any,\n h(\n \"g.data-points\",\n points.map((d) => {\n return h(IsotopeDataPoint, {\n datum: d,\n fill: color,\n });\n }),\n ),\n );\n}\n\nfunction IsotopesColumn(\n props: IsotopeColumnProps & { children?: React.ReactNode },\n) {\n const {\n width = 120,\n domain = [-14, 6],\n parameter,\n label,\n color = \"dodgerblue\",\n children = null,\n transform,\n getHeight,\n showAxis = true,\n tickValues: _tickVals,\n nTicks = 6,\n ...rest\n } = props;\n\n const { totalHeight } = useMacrostratColumnData();\n\n let _children: any = children;\n if (children == null && parameter != null) {\n _children = h(IsotopesDataset, { parameter, color, getHeight });\n }\n\n const xScale = useMemo(\n () => scaleLinear().domain(domain).range([0, width]),\n [domain, width],\n );\n\n const tickValues = _tickVals ?? xScale.ticks(nTicks);\n\n return h(\"div.isotopes-column\", [\n h(\n SVG,\n {\n height: totalHeight,\n innerWidth: width,\n paddingH: 15,\n },\n h(\n ColumnLayoutProvider,\n { width, xScale },\n h(\"g.isotopes-column\", { className: parameter, transform }, [\n h(ColumnScaleLines, {\n xScale,\n tickValues,\n width,\n ...rest,\n }),\n _children,\n ]),\n ),\n ),\n h.if(showAxis)(ColumnScaleAxis, {\n width,\n label: label ?? parameter,\n xScale,\n tickValues,\n ...rest,\n }),\n ]);\n}\n\nfunction ColumnScaleAxis(props) {\n const { label, xScale, width, showAxis = true, tickValues, ...rest } = props;\n\n return h(\"div.isotopes-scale-axis\", [\n h(\n SVG,\n {\n innerWidth: width,\n height: 45,\n paddingH: 15,\n },\n [\n h(AxisBottom, {\n scale: xScale,\n tickLength: 5,\n tickValues,\n stroke: \"var(--column-stroke-color)\",\n tickStroke: \"var(--column-stroke-color)\",\n ...rest,\n label,\n }),\n ],\n ),\n ]);\n}\n\nfunction ColumnScaleLines(props) {\n const { tickValues, xScale } = props;\n\n return h(\n \"g.scale-lines\",\n tickValues.map((value) => {\n return h(ScaleLine, { value });\n }),\n );\n}\n\nexport { IsotopesColumn, IsotopesDataset };\n"],"names":["useMemo","$2wsb4$useMemo","$2wsb4$macrostrathyper","$2wsb4$classnames","AxisBottom","$2wsb4$AxisBottom","referenceMeasuresToColumn","$2wsb4$referenceMeasuresToColumn","useColumnLayout","$2wsb4$useColumnLayout","SVG","$2wsb4$SVG","ColumnLayoutProvider","$2wsb4$ColumnLayoutProvider","scaleLinear","$2wsb4$scaleLinear","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$5ccf8f2b270f7458$exports","$5ccf8f2b270f7458$export$c69bd0285aa5d775","$5ccf8f2b270f7458$export$5d8aa8022c284748","$62IHc","$l5EV6","$wtIgl","$6nrRo","$5ccf8f2b270f7458$var$h","styled","a","__esModule","default","$5ccf8f2b270f7458$var$ScaleLine","props","value","className","labelBottom","labelOffset","rest","sections","useMacrostratColumnData","xScale","x","transform","zero","key","map","d","scaleInfo","y1","offset","y2","pixelHeight","strokeDasharray","strokeWidth","parameter","color","units","useMacrostratUnits","measures","useMeasurementData","points","filter","measurement","meas","vals","measure_value","i","age","measure_age","position","measure_position","unit_id","sample_id","sample_no","Array","prototype","push","apply","IsotopesDataArea","getHeight","IsotopeDataPoint","datum","fill","width","domain","label","children","showAxis","tickValues","_tickVals","nTicks","totalHeight","_children","range","ticks","height","innerWidth","paddingH","$5ccf8f2b270f7458$var$ColumnScaleLines","if","$5ccf8f2b270f7458$var$ColumnScaleAxis","scale","tickLength","stroke","tickStroke","IsotopesDataset","IsotopesColumn"],"version":3,"file":"column-views.42db0bb8.js.map","sourceRoot":"../../../../"}
@@ -1,2 +1,2 @@
1
- import"./column-views.2a70b9a2.js";import"./column-views.7d45bbeb.js";import{useMemo as e,useCallback as r,useEffect as t}from"react";import{setGeoJSON as n,buildGeoJSONSource as l}from"@macrostrat/mapbox-utils";import{useMapRef as o,useMapStyleOperator as i}from"@macrostrat/mapbox-react";var a=globalThis,u={},s={},c=a.parcelRequirea149;null==c&&((c=function(e){if(e in u)return u[e].exports;if(e in s){var r=s[e];delete s[e];var t={id:e,exports:{}};return u[e]=t,r.call(t.exports,t,t.exports),t.exports}var n=Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}).register=function(e,r){s[e]=r},a.parcelRequirea149=c),c.register;var p=c("c4zVj"),d=c("iVYEX");function f(l){let{showTriangulation:a=!1}=l,u=(0,p.useColumnNavigationStore)(e=>e.columns),s=(0,p.useColumnNavigationStore)(e=>e.selectedColumn),c=(0,p.useColumnNavigationStore)(e=>e.selectColumn),f=e(()=>u&&0!=u.length?(0,d.buildTriangulation)(u):null,[u]),m=o().current,v=e(()=>{if(null==u||null==f||null==m)return null;let e=u.findIndex(e=>e.properties.col_id==s),r=f.tri.delaunay.neighbors[e];return(0,d.buildKeyMapping)(r,f.centroids,e,e=>{let r=m.project(e);return[r.x,r.y]})},[s,u,f,m]),b=r(e=>{if(null==v)return;let r=v[e.which];if(null!=r)return e.preventDefault(),e.stopPropagation(),c(u[r].id),!1},[v,c]);return t(()=>{if(null==m)return;let e=m.getCanvas();return e.addEventListener("keydown",b),()=>{e.removeEventListener("keydown",b)}},[m,b]),i(e=>{if(null==f||!a)return;let{features:r}=f.tri.links();n(e,"column-links",{type:"FeatureCollection",features:r})},[f,a]),null}function m(e="purple"){return{sources:{"column-links":l()},layers:[{id:"column-links",type:"line",source:"column-links",paint:{"line-color":e,"line-width":1.5}},{id:"column-centers",type:"circle",source:"column-links",paint:{"circle-radius":2,"circle-color":e}}]}}export{f as ColumnKeyboardNavigation,m as buildKeyboardNavigationStyle};
2
- //# sourceMappingURL=column-views.6b6b756b.js.map
1
+ import"./column-views.2ca669bc.js";import"./column-views.7d45bbeb.js";import{useMemo as e,useCallback as r,useEffect as t}from"react";import{setGeoJSON as n,buildGeoJSONSource as l}from"@macrostrat/mapbox-utils";import{useMapRef as o,useMapStyleOperator as i}from"@macrostrat/mapbox-react";var a=globalThis,u={},s={},c=a.parcelRequirea149;null==c&&((c=function(e){if(e in u)return u[e].exports;if(e in s){var r=s[e];delete s[e];var t={id:e,exports:{}};return u[e]=t,r.call(t.exports,t,t.exports),t.exports}var n=Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}).register=function(e,r){s[e]=r},a.parcelRequirea149=c),c.register;var p=c("c4zVj"),d=c("iVYEX");function f(l){let{showTriangulation:a=!1}=l,u=(0,p.useColumnNavigationStore)(e=>e.columns),s=(0,p.useColumnNavigationStore)(e=>e.selectedColumn),c=(0,p.useColumnNavigationStore)(e=>e.selectColumn),f=e(()=>u&&0!=u.length?(0,d.buildTriangulation)(u):null,[u]),m=o().current,v=e(()=>{if(null==u||null==f||null==m)return null;let e=u.findIndex(e=>e.properties.col_id==s),r=f.tri.delaunay.neighbors[e];return(0,d.buildKeyMapping)(r,f.centroids,e,e=>{let r=m.project(e);return[r.x,r.y]})},[s,u,f,m]),b=r(e=>{if(null==v)return;let r=v[e.which];if(null!=r)return e.preventDefault(),e.stopPropagation(),c(u[r].id),!1},[v,c]);return t(()=>{if(null==m)return;let e=m.getCanvas();return e.addEventListener("keydown",b),()=>{e.removeEventListener("keydown",b)}},[m,b]),i(e=>{if(null==f||!a)return;let{features:r}=f.tri.links();n(e,"column-links",{type:"FeatureCollection",features:r})},[f,a]),null}function m(e="purple"){return{sources:{"column-links":l()},layers:[{id:"column-links",type:"line",source:"column-links",paint:{"line-color":e,"line-width":1.5}},{id:"column-centers",type:"circle",source:"column-links",paint:{"circle-radius":2,"circle-color":e}}]}}export{f as ColumnKeyboardNavigation,m as buildKeyboardNavigationStyle};
2
+ //# sourceMappingURL=column-views.45fab61b.js.map
@@ -1 +1 @@
1
- {"mappings":"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","sources":["<anon>","packages/column-views/src/maps/column-navigation/mapbox/keyboard-navigation.ts"],"sourcesContent":["import \"./column-views.2a70b9a2.js\";\nimport \"./column-views.7d45bbeb.js\";\nimport {useMemo as $6HCEc$useMemo, useCallback as $6HCEc$useCallback, useEffect as $6HCEc$useEffect} from \"react\";\nimport {setGeoJSON as $6HCEc$setGeoJSON, buildGeoJSONSource as $6HCEc$buildGeoJSONSource} from \"@macrostrat/mapbox-utils\";\nimport {useMapRef as $6HCEc$useMapRef, useMapStyleOperator as $6HCEc$useMapStyleOperator} from \"@macrostrat/mapbox-react\";\n\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\n\n\n\n\nvar $c4zVj = parcelRequire(\"c4zVj\");\n\nvar $iVYEX = parcelRequire(\"iVYEX\");\nfunction $ee9901df79ff88e8$export$8c41dd563753848(props) {\n /** Keyboard navigation of columns using a Delaunay triangulation */ const { showTriangulation: showTriangulation = false } = props;\n const columns = (0, $c4zVj.useColumnNavigationStore)((state)=>state.columns);\n const col_id = (0, $c4zVj.useColumnNavigationStore)((state)=>state.selectedColumn);\n const selectColumn = (0, $c4zVj.useColumnNavigationStore)((state)=>state.selectColumn);\n const voronoi = (0, $6HCEc$useMemo)(()=>{\n if (!columns || columns.length == 0) return null;\n return (0, $iVYEX.buildTriangulation)(columns);\n }, [\n columns\n ]);\n const mapRef = (0, $6HCEc$useMapRef)();\n const map = mapRef.current;\n const keyMapping = (0, $6HCEc$useMemo)(()=>{\n if (columns == null || voronoi == null || map == null) return null;\n const projection = (d)=>{\n const pt = map.project(d);\n return [\n pt.x,\n pt.y\n ];\n };\n const currentIndex = columns.findIndex((d)=>d.properties.col_id == col_id);\n const neighbors = voronoi.tri.delaunay.neighbors[currentIndex];\n return (0, $iVYEX.buildKeyMapping)(neighbors, voronoi.centroids, currentIndex, projection);\n }, [\n col_id,\n columns,\n voronoi,\n map\n ]);\n const onKeyDown = (0, $6HCEc$useCallback)((event)=>{\n if (keyMapping == null) return;\n const nextColumnIx = keyMapping[event.which];\n if (nextColumnIx == null) return;\n event.preventDefault();\n event.stopPropagation();\n // @ts-ignore\n selectColumn(columns[nextColumnIx].id);\n return false;\n }, [\n keyMapping,\n selectColumn\n ]);\n (0, $6HCEc$useEffect)(()=>{\n if (map == null) return;\n const canvas = map.getCanvas();\n canvas.addEventListener(\"keydown\", onKeyDown);\n return ()=>{\n canvas.removeEventListener(\"keydown\", onKeyDown);\n };\n }, [\n map,\n onKeyDown\n ]);\n (0, $6HCEc$useMapStyleOperator)((map)=>{\n if (voronoi == null || !showTriangulation) return;\n const { features: features } = voronoi.tri.links();\n (0, $6HCEc$setGeoJSON)(map, \"column-links\", {\n type: \"FeatureCollection\",\n features: features\n });\n }, [\n voronoi,\n showTriangulation\n ]);\n //if (neighbors == null) return null;\n //const neighborFeatures = neighbors.map((d) => features[d]);\n return null;\n}\nfunction $ee9901df79ff88e8$export$c613fba0aabeee13(color = \"purple\") {\n return {\n sources: {\n \"column-links\": (0, $6HCEc$buildGeoJSONSource)()\n },\n layers: [\n {\n id: \"column-links\",\n type: \"line\",\n source: \"column-links\",\n paint: {\n \"line-color\": color,\n \"line-width\": 1.5\n }\n },\n {\n id: \"column-centers\",\n type: \"circle\",\n source: \"column-links\",\n paint: {\n \"circle-radius\": 2,\n \"circle-color\": color\n }\n }\n ]\n };\n}\n\n\nexport {$ee9901df79ff88e8$export$8c41dd563753848 as ColumnKeyboardNavigation, $ee9901df79ff88e8$export$c613fba0aabeee13 as buildKeyboardNavigationStyle};\n//# sourceMappingURL=column-views.6b6b756b.js.map\n","import { useCallback, useEffect, useMemo } from \"react\";\nimport { buildGeoJSONSource, setGeoJSON } from \"@macrostrat/mapbox-utils\";\nimport { useMapRef, useMapStyleOperator } from \"@macrostrat/mapbox-react\";\nimport { useColumnNavigationStore } from \"./state\";\nimport {\n buildTriangulation,\n buildKeyMapping,\n} from \"../utils/keyboard-navigation\";\n\ninterface KeyboardNavProps {\n showTriangulation: boolean;\n}\n\nexport function ColumnKeyboardNavigation(props: KeyboardNavProps) {\n /** Keyboard navigation of columns using a Delaunay triangulation */\n const { showTriangulation = false } = props;\n const columns = useColumnNavigationStore((state) => state.columns);\n const col_id = useColumnNavigationStore((state) => state.selectedColumn);\n const selectColumn = useColumnNavigationStore((state) => state.selectColumn);\n\n const voronoi = useMemo(() => {\n if (!columns || columns.length == 0) return null;\n return buildTriangulation(columns);\n }, [columns]);\n\n const mapRef = useMapRef();\n const map = mapRef.current;\n\n const keyMapping = useMemo(() => {\n if (columns == null || voronoi == null || map == null) return null;\n\n const projection = (d) => {\n const pt = map.project(d);\n return [pt.x, pt.y];\n };\n\n const currentIndex = columns.findIndex(\n (d) => d.properties.col_id == col_id,\n );\n\n const neighbors = voronoi.tri.delaunay.neighbors[currentIndex];\n return buildKeyMapping(\n neighbors,\n voronoi.centroids,\n currentIndex,\n projection,\n );\n }, [col_id, columns, voronoi, map]);\n\n const onKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (keyMapping == null) return;\n const nextColumnIx = keyMapping[event.which];\n if (nextColumnIx == null) return;\n event.preventDefault();\n event.stopPropagation();\n // @ts-ignore\n selectColumn(columns[nextColumnIx].id);\n return false;\n },\n [keyMapping, selectColumn],\n );\n\n useEffect(() => {\n if (map == null) return;\n const canvas = map.getCanvas();\n canvas.addEventListener(\"keydown\", onKeyDown);\n return () => {\n canvas.removeEventListener(\"keydown\", onKeyDown);\n };\n }, [map, onKeyDown]);\n\n useMapStyleOperator(\n (map) => {\n if (voronoi == null || !showTriangulation) return;\n const { features } = voronoi.tri.links();\n\n setGeoJSON(map, \"column-links\", {\n type: \"FeatureCollection\",\n features,\n });\n },\n [voronoi, showTriangulation],\n );\n\n //if (neighbors == null) return null;\n //const neighborFeatures = neighbors.map((d) => features[d]);\n\n return null;\n}\n\nexport function buildKeyboardNavigationStyle(color: string = \"purple\") {\n return {\n sources: {\n \"column-links\": buildGeoJSONSource(),\n //neighbors: buildGeoJSONSource(),\n },\n layers: [\n {\n id: \"column-links\",\n type: \"line\",\n source: \"column-links\",\n paint: {\n \"line-color\": color,\n \"line-width\": 1.5,\n },\n },\n {\n id: \"column-centers\",\n type: \"circle\",\n source: \"column-links\",\n paint: {\n \"circle-radius\": 2,\n \"circle-color\": color,\n },\n },\n ],\n };\n}\n"],"names":["useMemo","$6HCEc$useMemo","useCallback","$6HCEc$useCallback","useEffect","$6HCEc$useEffect","setGeoJSON","$6HCEc$setGeoJSON","buildGeoJSONSource","$6HCEc$buildGeoJSONSource","useMapRef","$6HCEc$useMapRef","useMapStyleOperator","$6HCEc$useMapStyleOperator","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$c4zVj","$iVYEX","$ee9901df79ff88e8$export$8c41dd563753848","props","showTriangulation","columns","useColumnNavigationStore","state","col_id","selectedColumn","selectColumn","voronoi","length","buildTriangulation","map","mapRef","current","keyMapping","currentIndex","findIndex","d","properties","neighbors","tri","delaunay","buildKeyMapping","centroids","pt","project","x","y","onKeyDown","event","nextColumnIx","which","preventDefault","stopPropagation","canvas","getCanvas","addEventListener","removeEventListener","features","links","type","$ee9901df79ff88e8$export$c613fba0aabeee13","color","sources","layers","source","paint","ColumnKeyboardNavigation","buildKeyboardNavigationStyle"],"version":3,"file":"column-views.6b6b756b.js.map","sourceRoot":"../../../../"}
1
+ {"mappings":"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","sources":["<anon>","packages/column-views/src/maps/column-navigation/mapbox/keyboard-navigation.ts"],"sourcesContent":["import \"./column-views.2ca669bc.js\";\nimport \"./column-views.7d45bbeb.js\";\nimport {useMemo as $6HCEc$useMemo, useCallback as $6HCEc$useCallback, useEffect as $6HCEc$useEffect} from \"react\";\nimport {setGeoJSON as $6HCEc$setGeoJSON, buildGeoJSONSource as $6HCEc$buildGeoJSONSource} from \"@macrostrat/mapbox-utils\";\nimport {useMapRef as $6HCEc$useMapRef, useMapStyleOperator as $6HCEc$useMapStyleOperator} from \"@macrostrat/mapbox-react\";\n\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\n\n\n\n\nvar $c4zVj = parcelRequire(\"c4zVj\");\n\nvar $iVYEX = parcelRequire(\"iVYEX\");\nfunction $ee9901df79ff88e8$export$8c41dd563753848(props) {\n /** Keyboard navigation of columns using a Delaunay triangulation */ const { showTriangulation: showTriangulation = false } = props;\n const columns = (0, $c4zVj.useColumnNavigationStore)((state)=>state.columns);\n const col_id = (0, $c4zVj.useColumnNavigationStore)((state)=>state.selectedColumn);\n const selectColumn = (0, $c4zVj.useColumnNavigationStore)((state)=>state.selectColumn);\n const voronoi = (0, $6HCEc$useMemo)(()=>{\n if (!columns || columns.length == 0) return null;\n return (0, $iVYEX.buildTriangulation)(columns);\n }, [\n columns\n ]);\n const mapRef = (0, $6HCEc$useMapRef)();\n const map = mapRef.current;\n const keyMapping = (0, $6HCEc$useMemo)(()=>{\n if (columns == null || voronoi == null || map == null) return null;\n const projection = (d)=>{\n const pt = map.project(d);\n return [\n pt.x,\n pt.y\n ];\n };\n const currentIndex = columns.findIndex((d)=>d.properties.col_id == col_id);\n const neighbors = voronoi.tri.delaunay.neighbors[currentIndex];\n return (0, $iVYEX.buildKeyMapping)(neighbors, voronoi.centroids, currentIndex, projection);\n }, [\n col_id,\n columns,\n voronoi,\n map\n ]);\n const onKeyDown = (0, $6HCEc$useCallback)((event)=>{\n if (keyMapping == null) return;\n const nextColumnIx = keyMapping[event.which];\n if (nextColumnIx == null) return;\n event.preventDefault();\n event.stopPropagation();\n // @ts-ignore\n selectColumn(columns[nextColumnIx].id);\n return false;\n }, [\n keyMapping,\n selectColumn\n ]);\n (0, $6HCEc$useEffect)(()=>{\n if (map == null) return;\n const canvas = map.getCanvas();\n canvas.addEventListener(\"keydown\", onKeyDown);\n return ()=>{\n canvas.removeEventListener(\"keydown\", onKeyDown);\n };\n }, [\n map,\n onKeyDown\n ]);\n (0, $6HCEc$useMapStyleOperator)((map)=>{\n if (voronoi == null || !showTriangulation) return;\n const { features: features } = voronoi.tri.links();\n (0, $6HCEc$setGeoJSON)(map, \"column-links\", {\n type: \"FeatureCollection\",\n features: features\n });\n }, [\n voronoi,\n showTriangulation\n ]);\n //if (neighbors == null) return null;\n //const neighborFeatures = neighbors.map((d) => features[d]);\n return null;\n}\nfunction $ee9901df79ff88e8$export$c613fba0aabeee13(color = \"purple\") {\n return {\n sources: {\n \"column-links\": (0, $6HCEc$buildGeoJSONSource)()\n },\n layers: [\n {\n id: \"column-links\",\n type: \"line\",\n source: \"column-links\",\n paint: {\n \"line-color\": color,\n \"line-width\": 1.5\n }\n },\n {\n id: \"column-centers\",\n type: \"circle\",\n source: \"column-links\",\n paint: {\n \"circle-radius\": 2,\n \"circle-color\": color\n }\n }\n ]\n };\n}\n\n\nexport {$ee9901df79ff88e8$export$8c41dd563753848 as ColumnKeyboardNavigation, $ee9901df79ff88e8$export$c613fba0aabeee13 as buildKeyboardNavigationStyle};\n//# sourceMappingURL=column-views.45fab61b.js.map\n","import { useCallback, useEffect, useMemo } from \"react\";\nimport { buildGeoJSONSource, setGeoJSON } from \"@macrostrat/mapbox-utils\";\nimport { useMapRef, useMapStyleOperator } from \"@macrostrat/mapbox-react\";\nimport { useColumnNavigationStore } from \"./state\";\nimport {\n buildTriangulation,\n buildKeyMapping,\n} from \"../utils/keyboard-navigation\";\n\ninterface KeyboardNavProps {\n showTriangulation: boolean;\n}\n\nexport function ColumnKeyboardNavigation(props: KeyboardNavProps) {\n /** Keyboard navigation of columns using a Delaunay triangulation */\n const { showTriangulation = false } = props;\n const columns = useColumnNavigationStore((state) => state.columns);\n const col_id = useColumnNavigationStore((state) => state.selectedColumn);\n const selectColumn = useColumnNavigationStore((state) => state.selectColumn);\n\n const voronoi = useMemo(() => {\n if (!columns || columns.length == 0) return null;\n return buildTriangulation(columns);\n }, [columns]);\n\n const mapRef = useMapRef();\n const map = mapRef.current;\n\n const keyMapping = useMemo(() => {\n if (columns == null || voronoi == null || map == null) return null;\n\n const projection = (d) => {\n const pt = map.project(d);\n return [pt.x, pt.y];\n };\n\n const currentIndex = columns.findIndex(\n (d) => d.properties.col_id == col_id,\n );\n\n const neighbors = voronoi.tri.delaunay.neighbors[currentIndex];\n return buildKeyMapping(\n neighbors,\n voronoi.centroids,\n currentIndex,\n projection,\n );\n }, [col_id, columns, voronoi, map]);\n\n const onKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (keyMapping == null) return;\n const nextColumnIx = keyMapping[event.which];\n if (nextColumnIx == null) return;\n event.preventDefault();\n event.stopPropagation();\n // @ts-ignore\n selectColumn(columns[nextColumnIx].id);\n return false;\n },\n [keyMapping, selectColumn],\n );\n\n useEffect(() => {\n if (map == null) return;\n const canvas = map.getCanvas();\n canvas.addEventListener(\"keydown\", onKeyDown);\n return () => {\n canvas.removeEventListener(\"keydown\", onKeyDown);\n };\n }, [map, onKeyDown]);\n\n useMapStyleOperator(\n (map) => {\n if (voronoi == null || !showTriangulation) return;\n const { features } = voronoi.tri.links();\n\n setGeoJSON(map, \"column-links\", {\n type: \"FeatureCollection\",\n features,\n });\n },\n [voronoi, showTriangulation],\n );\n\n //if (neighbors == null) return null;\n //const neighborFeatures = neighbors.map((d) => features[d]);\n\n return null;\n}\n\nexport function buildKeyboardNavigationStyle(color: string = \"purple\") {\n return {\n sources: {\n \"column-links\": buildGeoJSONSource(),\n //neighbors: buildGeoJSONSource(),\n },\n layers: [\n {\n id: \"column-links\",\n type: \"line\",\n source: \"column-links\",\n paint: {\n \"line-color\": color,\n \"line-width\": 1.5,\n },\n },\n {\n id: \"column-centers\",\n type: \"circle\",\n source: \"column-links\",\n paint: {\n \"circle-radius\": 2,\n \"circle-color\": color,\n },\n },\n ],\n };\n}\n"],"names":["useMemo","$6HCEc$useMemo","useCallback","$6HCEc$useCallback","useEffect","$6HCEc$useEffect","setGeoJSON","$6HCEc$setGeoJSON","buildGeoJSONSource","$6HCEc$buildGeoJSONSource","useMapRef","$6HCEc$useMapRef","useMapStyleOperator","$6HCEc$useMapStyleOperator","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$c4zVj","$iVYEX","$ee9901df79ff88e8$export$8c41dd563753848","props","showTriangulation","columns","useColumnNavigationStore","state","col_id","selectedColumn","selectColumn","voronoi","length","buildTriangulation","map","mapRef","current","keyMapping","currentIndex","findIndex","d","properties","neighbors","tri","delaunay","buildKeyMapping","centroids","pt","project","x","y","onKeyDown","event","nextColumnIx","which","preventDefault","stopPropagation","canvas","getCanvas","addEventListener","removeEventListener","features","links","type","$ee9901df79ff88e8$export$c613fba0aabeee13","color","sources","layers","source","paint","ColumnKeyboardNavigation","buildKeyboardNavigationStyle"],"version":3,"file":"column-views.45fab61b.js.map","sourceRoot":"../../../../"}
@@ -1,2 +1,2 @@
1
- import"./column-views.45defa84.js";import"./column-views.ebb44b7d.js";function e(e,r){return Object.keys(r).forEach(function(t){"default"===t||"__esModule"===t||Object.prototype.hasOwnProperty.call(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:function(){return r[t]}})}),e}var r=globalThis,t={},o={},n=r.parcelRequirea149;null==n&&((n=function(e){if(e in t)return t[e].exports;if(e in o){var r=o[e];delete o[e];var n={id:e,exports:{}};return t[e]=n,r.call(n.exports,n,n.exports),n.exports}var a=Error("Cannot find module '"+e+"'");throw a.code="MODULE_NOT_FOUND",a}).register=function(e,r){o[e]=r},r.parcelRequirea149=n),n.register;var a={},c=n("ccQ40"),i=n("dd0Et");e(a,c),e(a,i);export{$25f1fcddbe40b91f$export$9ebf875c09445bec as CorrelationChart,$7e37f2a9ef0a1013$export$77c3cc7a57c6db5f as parseLineFromString,$7e37f2a9ef0a1013$export$8c53992169ff5301 as stringifyLine};
2
- //# sourceMappingURL=column-views.0220026c.js.map
1
+ import"./column-views.0dfc7ef7.js";import"./column-views.ebb44b7d.js";function e(e,r){return Object.keys(r).forEach(function(t){"default"===t||"__esModule"===t||Object.prototype.hasOwnProperty.call(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:function(){return r[t]}})}),e}var r=globalThis,t={},o={},n=r.parcelRequirea149;null==n&&((n=function(e){if(e in t)return t[e].exports;if(e in o){var r=o[e];delete o[e];var n={id:e,exports:{}};return t[e]=n,r.call(n.exports,n,n.exports),n.exports}var a=Error("Cannot find module '"+e+"'");throw a.code="MODULE_NOT_FOUND",a}).register=function(e,r){o[e]=r},r.parcelRequirea149=n),n.register;var a={},c=n("ccQ40"),i=n("dd0Et");e(a,c),e(a,i);export{$25f1fcddbe40b91f$export$9ebf875c09445bec as CorrelationChart,$7e37f2a9ef0a1013$export$77c3cc7a57c6db5f as parseLineFromString,$7e37f2a9ef0a1013$export$8c53992169ff5301 as stringifyLine};
2
+ //# sourceMappingURL=column-views.492b4917.js.map
@@ -1 +1 @@
1
- {"mappings":"A,M,6C,A,O,6C,C,S,E,C,C,C,E,O,O,I,C,G,O,C,S,C,E,Y,G,A,e,G,O,S,C,c,C,I,C,E,I,O,c,C,E,E,C,W,C,E,I,W,O,C,C,E,A,C,E,G,C,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,S,E,E,S,E,E,G,E,E,U,6C,gB,C,6C,mB,C,6C,a","sources":["<anon>","packages/column-views/src/correlation-chart/index.ts"],"sourcesContent":["import \"./column-views.45defa84.js\";\nimport \"./column-views.ebb44b7d.js\";\n\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule' || Object.prototype.hasOwnProperty.call(dest, key)) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n }\n });\n });\n\n return dest;\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $53af365ed50b7b69$exports = {};\n\nvar $ccQ40 = parcelRequire(\"ccQ40\");\n\nvar $dd0Et = parcelRequire(\"dd0Et\");\n$parcel$exportWildcard($53af365ed50b7b69$exports, $ccQ40);\n$parcel$exportWildcard($53af365ed50b7b69$exports, $dd0Et);\n\n\nexport {$25f1fcddbe40b91f$export$9ebf875c09445bec as CorrelationChart, $7e37f2a9ef0a1013$export$77c3cc7a57c6db5f as parseLineFromString, $7e37f2a9ef0a1013$export$8c53992169ff5301 as stringifyLine};\n//# sourceMappingURL=column-views.0220026c.js.map\n","export * from \"./main\";\nexport * from \"./hash-string\";\n"],"names":["$parcel$exportWildcard","dest","source","Object","keys","forEach","key","prototype","hasOwnProperty","call","defineProperty","enumerable","get","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","err","Error","code","register","$53af365ed50b7b69$exports","$ccQ40","$dd0Et","$25f1fcddbe40b91f$export$9ebf875c09445bec","CorrelationChart","$7e37f2a9ef0a1013$export$77c3cc7a57c6db5f","parseLineFromString","$7e37f2a9ef0a1013$export$8c53992169ff5301","stringifyLine"],"version":3,"file":"column-views.0220026c.js.map","sourceRoot":"../../../../"}
1
+ {"mappings":"A,M,6C,A,O,6C,C,S,E,C,C,C,E,O,O,I,C,G,O,C,S,C,E,Y,G,A,e,G,O,S,C,c,C,I,C,E,I,O,c,C,E,E,C,W,C,E,I,W,O,C,C,E,A,C,E,G,C,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,S,E,E,S,E,E,G,E,E,U,6C,gB,C,6C,mB,C,6C,a","sources":["<anon>","packages/column-views/src/correlation-chart/index.ts"],"sourcesContent":["import \"./column-views.0dfc7ef7.js\";\nimport \"./column-views.ebb44b7d.js\";\n\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule' || Object.prototype.hasOwnProperty.call(dest, key)) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n }\n });\n });\n\n return dest;\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $53af365ed50b7b69$exports = {};\n\nvar $ccQ40 = parcelRequire(\"ccQ40\");\n\nvar $dd0Et = parcelRequire(\"dd0Et\");\n$parcel$exportWildcard($53af365ed50b7b69$exports, $ccQ40);\n$parcel$exportWildcard($53af365ed50b7b69$exports, $dd0Et);\n\n\nexport {$25f1fcddbe40b91f$export$9ebf875c09445bec as CorrelationChart, $7e37f2a9ef0a1013$export$77c3cc7a57c6db5f as parseLineFromString, $7e37f2a9ef0a1013$export$8c53992169ff5301 as stringifyLine};\n//# sourceMappingURL=column-views.492b4917.js.map\n","export * from \"./main\";\nexport * from \"./hash-string\";\n"],"names":["$parcel$exportWildcard","dest","source","Object","keys","forEach","key","prototype","hasOwnProperty","call","defineProperty","enumerable","get","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","err","Error","code","register","$53af365ed50b7b69$exports","$ccQ40","$dd0Et","$25f1fcddbe40b91f$export$9ebf875c09445bec","CorrelationChart","$7e37f2a9ef0a1013$export$77c3cc7a57c6db5f","parseLineFromString","$7e37f2a9ef0a1013$export$8c53992169ff5301","stringifyLine"],"version":3,"file":"column-views.492b4917.js.map","sourceRoot":"../../../../"}
@@ -0,0 +1,2 @@
1
+ import"./column-views.d6708353.js";import"./column-views.78d3f3c5.js";import"./column-views.6f7a432f.js";import e from"@macrostrat/hyper";import{ColumnAxisType as a,SVG as t,AgeAxis as s}from"@macrostrat/column-components";import"react";import{Parenthetical as i}from"@macrostrat/data-components";function r(e,a,t,s){Object.defineProperty(e,a,{get:t,set:s,enumerable:!0,configurable:!0})}var o=globalThis,l={},c={},n=o.parcelRequirea149;null==n&&((n=function(e){if(e in l)return l[e].exports;if(e in c){var a=c[e];delete c[e];var t={id:e,exports:{}};return l[e]=t,a.call(t.exports,t,t.exports),t.exports}var s=Error("Cannot find module '"+e+"'");throw s.code="MODULE_NOT_FOUND",s}).register=function(e,a){c[e]=a},o.parcelRequirea149=n),n.register;var u={};r(u,"VerticalAxisLabel",()=>f),r(u,"CompositeAgeAxis",()=>x),r(u,"CompositeAgeAxisCore",()=>A),r(u,"AgeCursor",()=>b);var m=n("6kMGl"),p=n("wtIgl"),g=n("iYfAq");let d=e.styled(m&&m.__esModule?m.default:m);function f(e){let{label:a="Age",unit:t="Ma",className:s,height:r}=e;return d("div.column-axis-label.age-axis-label",{className:s,style:{height:r}},[a," ",d.if(t)(i,{className:"age-axis-unit"},t)])}function x(){let{axisType:e,sections:a,totalHeight:t}=(0,p.useMacrostratColumnData)();return d(A,{axisType:e,packages:a.map(e=>({key:`section-${e.section_id}`,...e.scaleInfo})),totalHeight:t})}function A(e){let{axisType:i,totalHeight:r,packages:o}=e;if(i==a.ORDINAL)return null;let l="Age",c="Ma";return i==a.DEPTH?(l="Depth",c="m"):i==a.HEIGHT&&(l="Height",c="m"),d([d(f,{label:l,unit:c,height:r}),d(t,{className:"age-axis-column",style:{width:"22px",height:`${r}px`},width:22,height:r},o.map((e,a)=>{let{key:t,scale:i}=e;return d(s,{key:t,className:"age-axis",scale:i,tickSizeOuter:3})}))])}function b({age:e}){let a=(0,p.useCompositeScale)()(e);return(console.log(e,a),null==e||null==a)?null:d("div.age-cursor",{style:{top:a}},[d("div.line"),d(g.AgeLabel,{age:e,className:"label"})])}export{f as VerticalAxisLabel,x as CompositeAgeAxis,A as CompositeAgeAxisCore,b as AgeCursor};
2
+ //# sourceMappingURL=column-views.4ca62e5d.js.map
@@ -0,0 +1 @@
1
+ {"mappings":"A,M,6C,A,O,6C,A,O,6C,A,Q,M,mB,A,Q,kB,C,C,O,C,C,W,C,K,+B,A,O,O,A,Q,iB,C,K,6B,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,oB,I,G,E,E,mB,I,G,E,E,uB,I,G,E,E,Y,I,G,I,E,E,S,E,E,S,E,E,SCeA,IAAM,EAAI,AAAA,EAAM,MAAM,C,AAAC,G,AAAA,E,U,C,AAAA,E,O,CAAA,GAehB,SAAS,EAAkB,CAAK,EACrC,GAAM,CAAA,MAAE,EAAQ,KAAA,CAAA,KAAO,EAAO,IAAA,CAAA,UAAM,CAAS,CAAA,OAAE,CAAM,CAAE,CAAG,EAC1D,OAAO,EACL,uCACA,CAAE,UAAA,EAAW,MAAO,CAAE,OAAA,CAAO,CAAE,EAC/B,CACE,EACA,IACA,EAAE,EAAE,CAAC,GAAM,EAAe,CAAE,UAAW,eAAgB,EAAG,GAC3D,CAEL,CAEO,SAAS,IACd,GAAM,CAAA,SAAE,CAAQ,CAAA,SAAE,CAAQ,CAAA,YAAE,CAAW,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,IAS5C,OAAO,EAAE,EAAsB,CAC7B,SAAA,EACA,SATe,EAAS,GAAG,CAAC,AAAC,GACtB,CAAA,CACL,IAAK,CAAC,QAAQ,EAAE,EAAQ,UAAU,CAAA,CAAE,CACpC,GAAG,EAAQ,SAAS,AACtB,CAAA,GAMA,YAAA,CACF,EACF,CAQO,SAAS,EAAqB,CAAsC,EACzE,GAAM,CAAA,SAAE,CAAQ,CAAA,YAAE,CAAW,CAAA,SAAE,CAAQ,CAAE,CAAG,EAE5C,GAAI,GAAY,AAAA,EAAe,OAAO,CACpC,OAAO,KAGT,IAAI,EAAoB,MACpB,EAAW,KASf,OARI,GAAY,AAAA,EAAe,KAAK,EAClC,EAAY,QACZ,EAAW,KACF,GAAY,AAAA,EAAe,MAAM,GAC1C,EAAY,SACZ,EAAW,KAGN,EAAE,CACP,EAAE,EAAmB,CACnB,MAAO,EACP,KAAM,EACN,OAAQ,CACV,GACA,EACE,EACA,CACE,UAAW,kBACX,MAAO,CAAE,MAAO,OAAQ,OAAQ,CAAA,EAAG,EAAY,EAAE,CAAC,AAAC,EACnD,MAAO,GACP,OAAQ,CACV,EACA,EAAS,GAAG,CAAC,CAAC,EAAO,KACnB,GAAM,CAAA,IAAE,CAAG,CAAA,MAAE,CAAK,CAAE,CAAG,EAEvB,OAAO,EAAE,EAAS,CAChB,IAAA,EACA,UAAW,WACX,MAAA,EACA,cAAe,CACjB,EACF,IAEH,CACH,CAEO,SAAS,EAAU,CAAA,IAAE,CAAG,CAAE,EAG/B,IAAM,EAAW,AADH,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,IACS,SAIvB,CAFA,QAAQ,GAAG,CAAC,EAAK,GAEb,AAAO,MAAP,GAAe,AAAY,MAAZ,GACV,KAGF,EACL,iBACA,CACE,MAAO,CACL,IAAK,CACP,CACF,EACA,CAAC,EAAE,YAAa,EAAE,EAAA,QAAO,CAAG,CAAE,IAAA,EAAK,UAAW,OAAQ,GAAG,CAE7D,Q,K,iB,C,K,gB,C,K,oB,C,K,S","sources":["<anon>","packages/column-views/src/age-axis.ts"],"sourcesContent":["import \"./column-views.d6708353.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport \"./column-views.6f7a432f.js\";\nimport $fXMLu$macrostrathyper from \"@macrostrat/hyper\";\nimport {ColumnContext as $fXMLu$ColumnContext, ColumnAxis as $fXMLu$ColumnAxis, ColumnAxisType as $fXMLu$ColumnAxisType, SVG as $fXMLu$SVG, AgeAxis as $fXMLu$AgeAxis} from \"@macrostrat/column-components\";\nimport {useContext as $fXMLu$useContext} from \"react\";\nimport {Parenthetical as $fXMLu$Parenthetical} from \"@macrostrat/data-components\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $1aa4ef695e55d51d$exports = {};\n\n$parcel$export($1aa4ef695e55d51d$exports, \"VerticalAxisLabel\", () => $1aa4ef695e55d51d$export$64204d5cbb3e8227);\n$parcel$export($1aa4ef695e55d51d$exports, \"CompositeAgeAxis\", () => $1aa4ef695e55d51d$export$40b6b0e4520eeb34);\n$parcel$export($1aa4ef695e55d51d$exports, \"CompositeAgeAxisCore\", () => $1aa4ef695e55d51d$export$ac30ca3cf5df959d);\n$parcel$export($1aa4ef695e55d51d$exports, \"AgeCursor\", () => $1aa4ef695e55d51d$export$20d84abfcfa68dfa);\n\n\n\n\nvar $6kMGl = parcelRequire(\"6kMGl\");\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\n\nvar $iYfAq = parcelRequire(\"iYfAq\");\nconst $1aa4ef695e55d51d$var$h = (0, $fXMLu$macrostrathyper).styled((0, (/*@__PURE__*/$parcel$interopDefault($6kMGl))));\nconst $1aa4ef695e55d51d$var$AgeAxisCore = ({ ticks: ticks, tickSpacing: tickSpacing = 40, showDomain: showDomain = false })=>{\n const { pixelHeight: pixelHeight } = (0, $fXMLu$useContext)((0, $fXMLu$ColumnContext));\n // A tick roughly every 40 pixels\n let v = Math.max(Math.round(pixelHeight / tickSpacing), 1);\n return $1aa4ef695e55d51d$var$h(\"g.axis\", {\n transform: \"translate(20 0)\"\n }, [\n $1aa4ef695e55d51d$var$h((0, $fXMLu$ColumnAxis), {\n ticks: v,\n showDomain: showDomain\n })\n ]);\n};\nfunction $1aa4ef695e55d51d$export$64204d5cbb3e8227(props) {\n const { label: label = \"Age\", unit: unit = \"Ma\", className: className, height: height } = props;\n return $1aa4ef695e55d51d$var$h(\"div.column-axis-label.age-axis-label\", {\n className: className,\n style: {\n height: height\n }\n }, [\n label,\n \" \",\n $1aa4ef695e55d51d$var$h.if(unit)((0, $fXMLu$Parenthetical), {\n className: \"age-axis-unit\"\n }, unit)\n ]);\n}\nfunction $1aa4ef695e55d51d$export$40b6b0e4520eeb34() {\n const { axisType: axisType, sections: sections, totalHeight: totalHeight } = (0, $wtIgl.useMacrostratColumnData)();\n const packages = sections.map((section)=>{\n return {\n key: `section-${section.section_id}`,\n ...section.scaleInfo\n };\n });\n return $1aa4ef695e55d51d$var$h($1aa4ef695e55d51d$export$ac30ca3cf5df959d, {\n axisType: axisType,\n packages: packages,\n totalHeight: totalHeight\n });\n}\nfunction $1aa4ef695e55d51d$export$ac30ca3cf5df959d(props) {\n const { axisType: axisType, totalHeight: totalHeight, packages: packages } = props;\n if (axisType == (0, $fXMLu$ColumnAxisType).ORDINAL) return null;\n let axisLabel = \"Age\";\n let axisUnit = \"Ma\";\n if (axisType == (0, $fXMLu$ColumnAxisType).DEPTH) {\n axisLabel = \"Depth\";\n axisUnit = \"m\";\n } else if (axisType == (0, $fXMLu$ColumnAxisType).HEIGHT) {\n axisLabel = \"Height\";\n axisUnit = \"m\";\n }\n return $1aa4ef695e55d51d$var$h([\n $1aa4ef695e55d51d$var$h($1aa4ef695e55d51d$export$64204d5cbb3e8227, {\n label: axisLabel,\n unit: axisUnit,\n height: totalHeight\n }),\n $1aa4ef695e55d51d$var$h((0, $fXMLu$SVG), {\n className: \"age-axis-column\",\n style: {\n width: `22px`,\n height: `${totalHeight}px`\n },\n width: 22,\n height: totalHeight\n }, packages.map((group, i)=>{\n const { key: key, scale: scale } = group;\n return $1aa4ef695e55d51d$var$h((0, $fXMLu$AgeAxis), {\n key: key,\n className: \"age-axis\",\n scale: scale,\n tickSizeOuter: 3\n });\n }))\n ]);\n}\nfunction $1aa4ef695e55d51d$export$20d84abfcfa68dfa({ age: age }) {\n /** A cursor that shows the age at a specific point on the age axis. */ const scale = (0, $wtIgl.useCompositeScale)();\n const heightPx = scale(age);\n console.log(age, heightPx);\n if (age == null || heightPx == null) return null;\n return $1aa4ef695e55d51d$var$h(\"div.age-cursor\", {\n style: {\n top: heightPx\n }\n }, [\n $1aa4ef695e55d51d$var$h(\"div.line\"),\n $1aa4ef695e55d51d$var$h((0, $iYfAq.AgeLabel), {\n age: age,\n className: \"label\"\n })\n ]);\n}\n\n\nexport {$1aa4ef695e55d51d$export$64204d5cbb3e8227 as VerticalAxisLabel, $1aa4ef695e55d51d$export$40b6b0e4520eeb34 as CompositeAgeAxis, $1aa4ef695e55d51d$export$ac30ca3cf5df959d as CompositeAgeAxisCore, $1aa4ef695e55d51d$export$20d84abfcfa68dfa as AgeCursor};\n//# sourceMappingURL=column-views.4ca62e5d.js.map\n","import hyper from \"@macrostrat/hyper\";\nimport {\n SVG,\n ColumnAxis,\n ColumnContext,\n ColumnAxisType,\n AgeAxis,\n} from \"@macrostrat/column-components\";\nimport { useContext } from \"react\";\nimport styles from \"./age-axis.module.sass\";\nimport { useCompositeScale, useMacrostratColumnData } from \"./data-provider\";\nimport { Parenthetical } from \"@macrostrat/data-components\";\nimport { PackageScaleLayoutData } from \"./prepare-units/composite-scale\";\nimport { AgeLabel } from \"./unit-details\";\n\nconst h = hyper.styled(styles);\n\nconst AgeAxisCore = ({ ticks, tickSpacing = 40, showDomain = false }) => {\n const { pixelHeight } = useContext(ColumnContext);\n // A tick roughly every 40 pixels\n let v = Math.max(Math.round(pixelHeight / tickSpacing), 1);\n\n return h(\"g.axis\", { transform: \"translate(20 0)\" }, [\n h(ColumnAxis, {\n ticks: v,\n showDomain,\n }),\n ]);\n};\n\nexport function VerticalAxisLabel(props) {\n const { label = \"Age\", unit = \"Ma\", className, height } = props;\n return h(\n \"div.column-axis-label.age-axis-label\",\n { className, style: { height } },\n [\n label,\n \" \",\n h.if(unit)(Parenthetical, { className: \"age-axis-unit\" }, unit),\n ],\n );\n}\n\nexport function CompositeAgeAxis() {\n const { axisType, sections, totalHeight } = useMacrostratColumnData();\n\n const packages = sections.map((section) => {\n return {\n key: `section-${section.section_id}`,\n ...section.scaleInfo,\n };\n });\n\n return h(CompositeAgeAxisCore, {\n axisType,\n packages,\n totalHeight,\n });\n}\n\nexport interface CompositeStratigraphicScaleInfo {\n axisType: ColumnAxisType;\n totalHeight: number;\n packages: PackageScaleLayoutData[];\n}\n\nexport function CompositeAgeAxisCore(props: CompositeStratigraphicScaleInfo) {\n const { axisType, totalHeight, packages } = props;\n\n if (axisType == ColumnAxisType.ORDINAL) {\n return null;\n }\n\n let axisLabel: string = \"Age\";\n let axisUnit = \"Ma\";\n if (axisType == ColumnAxisType.DEPTH) {\n axisLabel = \"Depth\";\n axisUnit = \"m\";\n } else if (axisType == ColumnAxisType.HEIGHT) {\n axisLabel = \"Height\";\n axisUnit = \"m\";\n }\n\n return h([\n h(VerticalAxisLabel, {\n label: axisLabel,\n unit: axisUnit,\n height: totalHeight,\n }),\n h(\n SVG,\n {\n className: \"age-axis-column\",\n style: { width: `22px`, height: `${totalHeight}px` },\n width: 22,\n height: totalHeight,\n },\n packages.map((group, i) => {\n const { key, scale } = group;\n\n return h(AgeAxis, {\n key,\n className: \"age-axis\",\n scale,\n tickSizeOuter: 3,\n });\n }),\n ),\n ]);\n}\n\nexport function AgeCursor({ age }) {\n /** A cursor that shows the age at a specific point on the age axis. */\n const scale = useCompositeScale();\n const heightPx = scale(age);\n\n console.log(age, heightPx);\n\n if (age == null || heightPx == null) {\n return null;\n }\n\n return h(\n \"div.age-cursor\",\n {\n style: {\n top: heightPx,\n },\n },\n [h(\"div.line\"), h(AgeLabel, { age, className: \"label\" })],\n );\n}\n"],"names":["$fXMLu$macrostrathyper","ColumnAxisType","$fXMLu$ColumnAxisType","SVG","$fXMLu$SVG","AgeAxis","$fXMLu$AgeAxis","Parenthetical","$fXMLu$Parenthetical","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$1aa4ef695e55d51d$exports","$1aa4ef695e55d51d$export$64204d5cbb3e8227","$1aa4ef695e55d51d$export$40b6b0e4520eeb34","$1aa4ef695e55d51d$export$ac30ca3cf5df959d","$1aa4ef695e55d51d$export$20d84abfcfa68dfa","$6kMGl","$wtIgl","$iYfAq","$1aa4ef695e55d51d$var$h","styled","a","__esModule","default","props","label","unit","className","height","style","if","axisType","sections","totalHeight","useMacrostratColumnData","packages","map","section","key","section_id","scaleInfo","ORDINAL","axisLabel","axisUnit","DEPTH","HEIGHT","width","group","i","scale","tickSizeOuter","age","heightPx","useCompositeScale","console","log","top","AgeLabel","VerticalAxisLabel","CompositeAgeAxis","CompositeAgeAxisCore","AgeCursor"],"version":3,"file":"column-views.4ca62e5d.js.map","sourceRoot":"../../../../"}
@@ -1,2 +1,2 @@
1
- import"./column-views.139b0855.js";import"./column-views.41876859.js";import"./column-views.2a70b9a2.js";import"./column-views.6b6b756b.js";import{useMapStyleOperator as e}from"@macrostrat/mapbox-react";import o from"@macrostrat/hyper";import{useMemo as t,useRef as r}from"react";import{setGeoJSON as n}from"@macrostrat/mapbox-utils";import{geoCentroid as l}from"d3-geo";var u=globalThis,a={},i={},s=u.parcelRequirea149;null==s&&((s=function(e){if(e in a)return a[e].exports;if(e in i){var o=i[e];delete i[e];var t={id:e,exports:{}};return a[e]=t,o.call(t.exports,t,t.exports),t.exports}var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r}).register=function(e,o){i[e]=o},u.parcelRequirea149=s),s.register,Object.defineProperty({},"ColumnNavigationMap",{get:()=>v,set:void 0,enumerable:!0,configurable:!0});var c=s("dETE9"),m=s("4pcLO"),d=s("c4zVj"),f=s("5fAA3");function v(e){let{columns:t,columnIDs:r,onSelectColumn:n,onHoverColumn:l,selectedColumn:u,hoveredColumn:a,projectID:i,children:s,inProcess:c,...m}=e;return o(d.ColumnNavigationProvider,{columns:t,columnIDs:r,onSelectColumn:n,onHoverColumn:l,selectedColumn:u,hoveredColumn:a,projectID:i,inProcess:c},o(p,e))}function p(e){let{padding:r=50,children:n,columnColor:l,showTriangulation:u,triangulationColor:a,keyboardNavigation:i=!0,...s}=e,d=t(()=>{let e=[(0,c.buildColumnsStyle)(l)];return u&&e.push((0,f.buildKeyboardNavigationStyle)(a)),e},[l,u,a]);return o(m.InsetMap,{...s,boxZoom:!1,dragRotate:!1,overlayStyles:d},[o(C),n,o.if(i)(f.ColumnKeyboardNavigation,{showTriangulation:u})])}function C({enabled:o=!0}){let t=(0,d.useColumnNavigationStore)(e=>e.columns),u=(0,d.useColumnNavigationStore)(e=>e.selectedColumn),a=(0,d.useColumnNavigationStore)(e=>e.hoveredColumn),i=(0,d.useColumnNavigationStore)(e=>e.selectColumn),s=(0,d.useColumnNavigationStore)(e=>e.setHoveredColumn);e(e=>{if(null==t)return;n(e,"columns",{type:"FeatureCollection",features:t});let o=o=>{0!=o.features.length&&(s(o.features[0].id),e.getCanvas().style.cursor="pointer")},r=()=>{s(null),e.getCanvas().style.cursor=""},l=e=>{0!=e.features.length&&i(e.features[0].id)},u=["columns-points","columns-fill"];return e.on("mousemove",u,o),e.on("mouseleave",u,r),e.on("click",u,l),()=>{e.off("mouseenter",u,o),e.off("mouseleave",u,r),e.off("click",u,l)}},[t,o]);let c=r(null);e(e=>{let o=c.current;a!=o&&(null!=o&&e.setFeatureState({source:"columns",id:o},{hover:!1}),c.current=a,e.setFeatureState({source:"columns",id:a},{hover:!0}))},[a,t]);let m=r(null),f=r(!0);return e(e=>{if(null==t)return;let o=m.current;if(u==o)return;null!=o&&e.setFeatureState({source:"columns",id:o},{selected:!1}),m.current=u,e.setFeatureState({source:"columns",id:u},{selected:!0});let r=t.find(e=>e.id==u)?.geometry;if(null==r)return;let n=l(r),a=f.current;e.easeTo({center:n},{duration:500*!a}),a&&(f.current=!1)},[u,t]),null}export{v as ColumnNavigationMap};
2
- //# sourceMappingURL=column-views.3bd09ad6.js.map
1
+ import"./column-views.139b0855.js";import"./column-views.41876859.js";import"./column-views.2ca669bc.js";import"./column-views.45fab61b.js";import{useMapStyleOperator as e}from"@macrostrat/mapbox-react";import o from"@macrostrat/hyper";import{useMemo as t,useRef as r}from"react";import{setGeoJSON as n}from"@macrostrat/mapbox-utils";import{geoCentroid as l}from"d3-geo";var u=globalThis,a={},i={},s=u.parcelRequirea149;null==s&&((s=function(e){if(e in a)return a[e].exports;if(e in i){var o=i[e];delete i[e];var t={id:e,exports:{}};return a[e]=t,o.call(t.exports,t,t.exports),t.exports}var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r}).register=function(e,o){i[e]=o},u.parcelRequirea149=s),s.register,Object.defineProperty({},"ColumnNavigationMap",{get:()=>v,set:void 0,enumerable:!0,configurable:!0});var c=s("dETE9"),m=s("4pcLO"),d=s("c4zVj"),f=s("5fAA3");function v(e){let{columns:t,columnIDs:r,onSelectColumn:n,onHoverColumn:l,selectedColumn:u,hoveredColumn:a,projectID:i,children:s,inProcess:c,...m}=e;return o(d.ColumnNavigationProvider,{columns:t,columnIDs:r,onSelectColumn:n,onHoverColumn:l,selectedColumn:u,hoveredColumn:a,projectID:i,inProcess:c},o(p,e))}function p(e){let{padding:r=50,children:n,columnColor:l,showTriangulation:u,triangulationColor:a,keyboardNavigation:i=!0,...s}=e,d=t(()=>{let e=[(0,c.buildColumnsStyle)(l)];return u&&e.push((0,f.buildKeyboardNavigationStyle)(a)),e},[l,u,a]);return o(m.InsetMap,{...s,boxZoom:!1,dragRotate:!1,overlayStyles:d},[o(C),n,o.if(i)(f.ColumnKeyboardNavigation,{showTriangulation:u})])}function C({enabled:o=!0}){let t=(0,d.useColumnNavigationStore)(e=>e.columns),u=(0,d.useColumnNavigationStore)(e=>e.selectedColumn),a=(0,d.useColumnNavigationStore)(e=>e.hoveredColumn),i=(0,d.useColumnNavigationStore)(e=>e.selectColumn),s=(0,d.useColumnNavigationStore)(e=>e.setHoveredColumn);e(e=>{if(null==t)return;n(e,"columns",{type:"FeatureCollection",features:t});let o=o=>{0!=o.features.length&&(s(o.features[0].id),e.getCanvas().style.cursor="pointer")},r=()=>{s(null),e.getCanvas().style.cursor=""},l=e=>{0!=e.features.length&&i(e.features[0].id)},u=["columns-points","columns-fill"];return e.on("mousemove",u,o),e.on("mouseleave",u,r),e.on("click",u,l),()=>{e.off("mouseenter",u,o),e.off("mouseleave",u,r),e.off("click",u,l)}},[t,o]);let c=r(null);e(e=>{let o=c.current;a!=o&&(null!=o&&e.setFeatureState({source:"columns",id:o},{hover:!1}),c.current=a,e.setFeatureState({source:"columns",id:a},{hover:!0}))},[a,t]);let m=r(null),f=r(!0);return e(e=>{if(null==t)return;let o=m.current;if(u==o)return;null!=o&&e.setFeatureState({source:"columns",id:o},{selected:!1}),m.current=u,e.setFeatureState({source:"columns",id:u},{selected:!0});let r=t.find(e=>e.id==u)?.geometry;if(null==r)return;let n=l(r),a=f.current;e.easeTo({center:n},{duration:500*!a}),a&&(f.current=!1)},[u,t]),null}export{v as ColumnNavigationMap};
2
+ //# sourceMappingURL=column-views.51bc87ca.js.map
@@ -1 +1 @@
1
- {"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,uB,C,K,0B,A,Q,M,mB,A,Q,W,C,C,U,C,K,O,A,Q,c,C,K,0B,A,Q,e,C,K,Q,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,O,c,C,C,E,sB,C,I,I,E,I,K,E,W,C,E,a,C,C,G,I,E,E,S,E,E,S,E,E,S,E,E,SCiCO,SAAS,EACd,CAAyD,EAEzD,GAAM,CAAA,QACJ,CAAO,CAAA,UACP,CAAS,CAAA,eACT,CAAc,CAAA,cACd,CAAa,CAAA,eACb,CAAc,CAAA,cACd,CAAa,CAAA,UACb,CAAS,CAAA,SACT,CAAQ,CAAA,UACR,CAAS,CACT,GAAG,EACJ,CAAG,EAEJ,OAAO,AAAA,EACL,EAAA,wBAAuB,CACvB,CACE,QAAA,EACA,UAAA,EACA,eAAA,EACA,cAAA,EACA,eAAA,EACA,cAAA,EACA,UAAA,EACA,UAAA,CACF,EACA,AAAA,EAAE,EAAsB,GAE5B,CAEA,SAAS,EAAqB,CAA+B,EAC3D,GAAM,CAAA,QACJ,EAAU,EAAA,CAAA,SACV,CAAQ,CAAA,YACR,CAAW,CAAA,kBACX,CAAiB,CAAA,mBACjB,CAAkB,CAAA,mBAClB,EAAqB,CAAA,CAAA,CACrB,GAAG,EACJ,CAAG,EAEE,EAAgB,AAAA,EAAQ,KAC5B,IAAI,EAAgB,CAAC,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,EAAkB,GAAa,CAIpD,OAHI,GACF,EAAO,IAAI,CAAC,AAAA,CAAA,EAAA,EAAA,4BAA2B,AAA3B,EAA6B,IAEpC,CACT,EAAG,CAAC,EAAa,EAAmB,EAAmB,EAEvD,OAAO,AAAA,EACL,EAAA,QAAO,CACP,CACE,GAAG,CAAI,CACP,QAAS,CAAA,EACT,WAAY,CAAA,EACZ,cAAA,CACF,EACA,CACE,AAAA,EAAE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","sources":["<anon>","packages/column-views/src/maps/column-navigation/mapbox/index.ts"],"sourcesContent":["import \"./column-views.139b0855.js\";\nimport \"./column-views.41876859.js\";\nimport \"./column-views.2a70b9a2.js\";\nimport \"./column-views.6b6b756b.js\";\nimport {useMapStyleOperator as $li42A$useMapStyleOperator} from \"@macrostrat/mapbox-react\";\nimport $li42A$macrostrathyper from \"@macrostrat/hyper\";\nimport {useMemo as $li42A$useMemo, useRef as $li42A$useRef} from \"react\";\nimport {setGeoJSON as $li42A$setGeoJSON} from \"@macrostrat/mapbox-utils\";\nimport {geoCentroid as $li42A$geoCentroid} from \"d3-geo\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $44d1d5e5d8e823d1$exports = {};\n\n$parcel$export($44d1d5e5d8e823d1$exports, \"ColumnNavigationMap\", () => $44d1d5e5d8e823d1$export$821baedf611249f3);\n\n\n\n\nvar $dETE9 = parcelRequire(\"dETE9\");\nvar $4pcLO = parcelRequire(\"4pcLO\");\n\n\nvar $c4zVj = parcelRequire(\"c4zVj\");\n\n\nvar $5fAA3 = parcelRequire(\"5fAA3\");\nfunction $44d1d5e5d8e823d1$export$821baedf611249f3(props) {\n const { columns: columns, columnIDs: columnIDs, onSelectColumn: onSelectColumn, onHoverColumn: onHoverColumn, selectedColumn: selectedColumn, hoveredColumn: hoveredColumn, projectID: projectID, children: children, inProcess: inProcess, ...rest } = props;\n return (0, $li42A$macrostrathyper)((0, $c4zVj.ColumnNavigationProvider), {\n columns: columns,\n columnIDs: columnIDs,\n onSelectColumn: onSelectColumn,\n onHoverColumn: onHoverColumn,\n selectedColumn: selectedColumn,\n hoveredColumn: hoveredColumn,\n projectID: projectID,\n inProcess: inProcess\n }, (0, $li42A$macrostrathyper)($44d1d5e5d8e823d1$var$_ColumnNavigationMap, props));\n}\nfunction $44d1d5e5d8e823d1$var$_ColumnNavigationMap(props) {\n const { padding: padding = 50, children: children, columnColor: columnColor, showTriangulation: showTriangulation, triangulationColor: triangulationColor, keyboardNavigation: keyboardNavigation = true, ...rest } = props;\n const overlayStyles = (0, $li42A$useMemo)(()=>{\n let styles = [\n (0, $dETE9.buildColumnsStyle)(columnColor)\n ];\n if (showTriangulation) styles.push((0, $5fAA3.buildKeyboardNavigationStyle)(triangulationColor));\n return styles;\n }, [\n columnColor,\n showTriangulation,\n triangulationColor\n ]);\n return (0, $li42A$macrostrathyper)((0, $4pcLO.InsetMap), {\n ...rest,\n boxZoom: false,\n dragRotate: false,\n overlayStyles: overlayStyles\n }, [\n (0, $li42A$macrostrathyper)($44d1d5e5d8e823d1$var$ColumnsLayer),\n children,\n (0, $li42A$macrostrathyper).if(keyboardNavigation)((0, $5fAA3.ColumnKeyboardNavigation), {\n showTriangulation: showTriangulation\n })\n ]);\n}\nfunction $44d1d5e5d8e823d1$var$ColumnsLayer({ enabled: enabled = true }) {\n const columns = (0, $c4zVj.useColumnNavigationStore)((state)=>state.columns);\n const selectedColumn = (0, $c4zVj.useColumnNavigationStore)((state)=>state.selectedColumn);\n const hoveredColumn = (0, $c4zVj.useColumnNavigationStore)((state)=>state.hoveredColumn);\n const selectColumn = (0, $c4zVj.useColumnNavigationStore)((state)=>state.selectColumn);\n const setHoveredColumn = (0, $c4zVj.useColumnNavigationStore)((state)=>state.setHoveredColumn);\n (0, $li42A$useMapStyleOperator)((map)=>{\n if (columns == null) return;\n const data = {\n type: \"FeatureCollection\",\n features: columns\n };\n (0, $li42A$setGeoJSON)(map, \"columns\", data);\n const mouseMove = (event)=>{\n if (event.features.length == 0) return;\n const hoveredFeature = event.features[0];\n setHoveredColumn(hoveredFeature.id);\n map.getCanvas().style.cursor = \"pointer\";\n };\n const mouseLeave = ()=>{\n setHoveredColumn(null);\n map.getCanvas().style.cursor = \"\";\n };\n const clickHandler = (event)=>{\n if (event.features.length == 0) return;\n const selectedColumn = event.features[0];\n const id = selectedColumn.id;\n selectColumn(id);\n };\n // Setup hover styles on map\n const layers = [\n \"columns-points\",\n \"columns-fill\"\n ];\n map.on(\"mousemove\", layers, mouseMove);\n map.on(\"mouseleave\", layers, mouseLeave);\n map.on(\"click\", layers, clickHandler);\n return ()=>{\n map.off(\"mouseenter\", layers, mouseMove);\n map.off(\"mouseleave\", layers, mouseLeave);\n map.off(\"click\", layers, clickHandler);\n };\n }, [\n columns,\n enabled\n ]);\n const hoveredColumnRef = (0, $li42A$useRef)(null);\n (0, $li42A$useMapStyleOperator)((map)=>{\n const prevHoveredColumn = hoveredColumnRef.current;\n if (hoveredColumn == prevHoveredColumn) return;\n if (prevHoveredColumn != null) // Deselect previous column\n map.setFeatureState({\n source: \"columns\",\n id: prevHoveredColumn\n }, {\n hover: false\n });\n hoveredColumnRef.current = hoveredColumn;\n // Select the current column\n map.setFeatureState({\n source: \"columns\",\n id: hoveredColumn\n }, {\n hover: true\n });\n }, [\n hoveredColumn,\n columns\n ]);\n /** Set feature state for selected columns */ const selectedColumnRef = (0, $li42A$useRef)(null);\n const initialRenderRef = (0, $li42A$useRef)(true);\n (0, $li42A$useMapStyleOperator)((map)=>{\n if (columns == null) return;\n const prevSelectedColumn = selectedColumnRef.current;\n if (selectedColumn == prevSelectedColumn) return;\n if (prevSelectedColumn != null) // Deselect previous column\n map.setFeatureState({\n source: \"columns\",\n id: prevSelectedColumn\n }, {\n selected: false\n });\n selectedColumnRef.current = selectedColumn;\n // Select the current column\n map.setFeatureState({\n source: \"columns\",\n id: selectedColumn\n }, {\n selected: true\n });\n // Center the selected column\n const columnGeometry = columns.find((d)=>d.id == selectedColumn)?.geometry;\n if (columnGeometry == null) return;\n const center = (0, $li42A$geoCentroid)(columnGeometry);\n const isInitialRender = initialRenderRef.current;\n map.easeTo({\n center: center\n }, {\n duration: isInitialRender ? 0 : 500\n });\n if (isInitialRender) initialRenderRef.current = false;\n }, [\n selectedColumn,\n columns\n ]);\n return null;\n}\n\n\nexport {$44d1d5e5d8e823d1$export$821baedf611249f3 as ColumnNavigationMap};\n//# sourceMappingURL=column-views.3bd09ad6.js.map\n","import { useMapStyleOperator } from \"@macrostrat/mapbox-react\";\nimport h from \"@macrostrat/hyper\";\nimport { FeatureCollection } from \"geojson\";\nimport { ReactNode, useMemo, useRef } from \"react\";\nimport { buildColumnsStyle, InsetMapProps } from \"../../_shared\";\nimport { setGeoJSON } from \"@macrostrat/mapbox-utils\";\n\nimport {\n ColumnNavigationProvider,\n NavigationProviderProps,\n useColumnNavigationStore,\n} from \"./state\";\nimport { InsetMap } from \"../../_shared\";\nimport { geoCentroid } from \"d3-geo\";\nimport {\n ColumnKeyboardNavigation,\n buildKeyboardNavigationStyle,\n} from \"./keyboard-navigation\";\n\nexport interface ColumnNavigationMapProps extends InsetMapProps {\n padding?: number;\n children?: ReactNode;\n accessToken?: string;\n selectedColumn?: number;\n hoveredColumn?: number;\n onSelectColumn?: (colID: number | null) => void;\n onHoverColumn?: (colID: number | null) => void;\n showTriangulation?: boolean;\n columnColor?: string;\n triangulationColor?: string;\n keyboardNavigation?: boolean;\n}\n\nexport function ColumnNavigationMap(\n props: ColumnNavigationMapProps & NavigationProviderProps,\n) {\n const {\n columns,\n columnIDs,\n onSelectColumn,\n onHoverColumn,\n selectedColumn,\n hoveredColumn,\n projectID,\n children,\n inProcess,\n ...rest\n } = props;\n\n return h(\n ColumnNavigationProvider,\n {\n columns,\n columnIDs,\n onSelectColumn,\n onHoverColumn,\n selectedColumn,\n hoveredColumn,\n projectID,\n inProcess,\n },\n h(_ColumnNavigationMap, props),\n );\n}\n\nfunction _ColumnNavigationMap(props: ColumnNavigationMapProps) {\n const {\n padding = 50,\n children,\n columnColor,\n showTriangulation,\n triangulationColor,\n keyboardNavigation = true,\n ...rest\n } = props;\n\n const overlayStyles = useMemo(() => {\n let styles: any[] = [buildColumnsStyle(columnColor)];\n if (showTriangulation) {\n styles.push(buildKeyboardNavigationStyle(triangulationColor));\n }\n return styles;\n }, [columnColor, showTriangulation, triangulationColor]);\n\n return h(\n InsetMap,\n {\n ...rest,\n boxZoom: false,\n dragRotate: false,\n overlayStyles,\n },\n [\n h(ColumnsLayer),\n children,\n h.if(keyboardNavigation)(ColumnKeyboardNavigation, { showTriangulation }),\n ],\n );\n}\n\nfunction ColumnsLayer({ enabled = true }) {\n const columns = useColumnNavigationStore((state) => state.columns);\n const selectedColumn = useColumnNavigationStore(\n (state) => state.selectedColumn,\n );\n const hoveredColumn = useColumnNavigationStore(\n (state) => state.hoveredColumn,\n );\n const selectColumn = useColumnNavigationStore((state) => state.selectColumn);\n const setHoveredColumn = useColumnNavigationStore(\n (state) => state.setHoveredColumn,\n );\n\n useMapStyleOperator(\n (map) => {\n if (columns == null) {\n return;\n }\n const data: FeatureCollection = {\n type: \"FeatureCollection\",\n features: columns,\n };\n\n setGeoJSON(map, \"columns\", data);\n\n const mouseMove = (event) => {\n if (event.features.length == 0) return;\n const hoveredFeature = event.features[0];\n setHoveredColumn(hoveredFeature.id);\n map.getCanvas().style.cursor = \"pointer\";\n };\n const mouseLeave = () => {\n setHoveredColumn(null);\n map.getCanvas().style.cursor = \"\";\n };\n\n const clickHandler = (event) => {\n if (event.features.length == 0) return;\n const selectedColumn = event.features[0];\n const id = selectedColumn.id;\n selectColumn(id);\n };\n\n // Setup hover styles on map\n const layers = [\"columns-points\", \"columns-fill\"];\n map.on(\"mousemove\", layers, mouseMove);\n map.on(\"mouseleave\", layers, mouseLeave);\n map.on(\"click\", layers, clickHandler);\n\n return () => {\n map.off(\"mouseenter\", layers, mouseMove);\n map.off(\"mouseleave\", layers, mouseLeave);\n map.off(\"click\", layers, clickHandler);\n };\n },\n [columns, enabled],\n );\n\n const hoveredColumnRef = useRef(null);\n useMapStyleOperator(\n (map) => {\n const prevHoveredColumn = hoveredColumnRef.current;\n if (hoveredColumn == prevHoveredColumn) return;\n if (prevHoveredColumn != null) {\n // Deselect previous column\n map.setFeatureState(\n { source: \"columns\", id: prevHoveredColumn },\n { hover: false },\n );\n }\n hoveredColumnRef.current = hoveredColumn;\n // Select the current column\n map.setFeatureState(\n { source: \"columns\", id: hoveredColumn },\n { hover: true },\n );\n },\n [hoveredColumn, columns],\n );\n\n /** Set feature state for selected columns */\n const selectedColumnRef = useRef(null);\n const initialRenderRef = useRef(true);\n useMapStyleOperator(\n (map) => {\n if (columns == null) return;\n const prevSelectedColumn = selectedColumnRef.current;\n if (selectedColumn == prevSelectedColumn) return;\n if (prevSelectedColumn != null) {\n // Deselect previous column\n map.setFeatureState(\n { source: \"columns\", id: prevSelectedColumn },\n { selected: false },\n );\n }\n\n selectedColumnRef.current = selectedColumn;\n\n // Select the current column\n map.setFeatureState(\n { source: \"columns\", id: selectedColumn },\n { selected: true },\n );\n\n // Center the selected column\n const columnGeometry = columns.find(\n (d) => d.id == selectedColumn,\n )?.geometry;\n if (columnGeometry == null) return;\n const center = geoCentroid(columnGeometry);\n\n const isInitialRender = initialRenderRef.current;\n map.easeTo({ center }, { duration: isInitialRender ? 0 : 500 });\n if (isInitialRender) {\n initialRenderRef.current = false;\n }\n },\n [selectedColumn, columns],\n );\n\n return null;\n}\n"],"names":["useMapStyleOperator","$li42A$useMapStyleOperator","$li42A$macrostrathyper","useMemo","$li42A$useMemo","useRef","$li42A$useRef","setGeoJSON","$li42A$setGeoJSON","geoCentroid","$li42A$geoCentroid","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","Object","defineProperty","get","$44d1d5e5d8e823d1$export$821baedf611249f3","set","s","enumerable","configurable","$dETE9","$4pcLO","$c4zVj","$5fAA3","props","columns","columnIDs","onSelectColumn","onHoverColumn","selectedColumn","hoveredColumn","projectID","children","inProcess","rest","ColumnNavigationProvider","$44d1d5e5d8e823d1$var$_ColumnNavigationMap","padding","columnColor","showTriangulation","triangulationColor","keyboardNavigation","overlayStyles","styles","buildColumnsStyle","push","buildKeyboardNavigationStyle","InsetMap","boxZoom","dragRotate","$44d1d5e5d8e823d1$var$ColumnsLayer","if","ColumnKeyboardNavigation","enabled","useColumnNavigationStore","state","selectColumn","setHoveredColumn","map","type","features","mouseMove","event","length","hoveredFeature","getCanvas","style","cursor","mouseLeave","clickHandler","layers","on","off","hoveredColumnRef","prevHoveredColumn","current","setFeatureState","source","hover","selectedColumnRef","initialRenderRef","prevSelectedColumn","selected","columnGeometry","find","d","geometry","center","isInitialRender","easeTo","duration","ColumnNavigationMap"],"version":3,"file":"column-views.3bd09ad6.js.map","sourceRoot":"../../../../"}
1
+ {"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,uB,C,K,0B,A,Q,M,mB,A,Q,W,C,C,U,C,K,O,A,Q,c,C,K,0B,A,Q,e,C,K,Q,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,O,c,C,C,E,sB,C,I,I,E,I,K,E,W,C,E,a,C,C,G,I,E,E,S,E,E,S,E,E,S,E,E,SCiCO,SAAS,EACd,CAAyD,EAEzD,GAAM,CAAA,QACJ,CAAO,CAAA,UACP,CAAS,CAAA,eACT,CAAc,CAAA,cACd,CAAa,CAAA,eACb,CAAc,CAAA,cACd,CAAa,CAAA,UACb,CAAS,CAAA,SACT,CAAQ,CAAA,UACR,CAAS,CACT,GAAG,EACJ,CAAG,EAEJ,OAAO,AAAA,EACL,EAAA,wBAAuB,CACvB,CACE,QAAA,EACA,UAAA,EACA,eAAA,EACA,cAAA,EACA,eAAA,EACA,cAAA,EACA,UAAA,EACA,UAAA,CACF,EACA,AAAA,EAAE,EAAsB,GAE5B,CAEA,SAAS,EAAqB,CAA+B,EAC3D,GAAM,CAAA,QACJ,EAAU,EAAA,CAAA,SACV,CAAQ,CAAA,YACR,CAAW,CAAA,kBACX,CAAiB,CAAA,mBACjB,CAAkB,CAAA,mBAClB,EAAqB,CAAA,CAAA,CACrB,GAAG,EACJ,CAAG,EAEE,EAAgB,AAAA,EAAQ,KAC5B,IAAI,EAAgB,CAAC,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,EAAkB,GAAa,CAIpD,OAHI,GACF,EAAO,IAAI,CAAC,AAAA,CAAA,EAAA,EAAA,4BAA2B,AAA3B,EAA6B,IAEpC,CACT,EAAG,CAAC,EAAa,EAAmB,EAAmB,EAEvD,OAAO,AAAA,EACL,EAAA,QAAO,CACP,CACE,GAAG,CAAI,CACP,QAAS,CAAA,EACT,WAAY,CAAA,EACZ,cAAA,CACF,EACA,CACE,AAAA,EAAE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","sources":["<anon>","packages/column-views/src/maps/column-navigation/mapbox/index.ts"],"sourcesContent":["import \"./column-views.139b0855.js\";\nimport \"./column-views.41876859.js\";\nimport \"./column-views.2ca669bc.js\";\nimport \"./column-views.45fab61b.js\";\nimport {useMapStyleOperator as $li42A$useMapStyleOperator} from \"@macrostrat/mapbox-react\";\nimport $li42A$macrostrathyper from \"@macrostrat/hyper\";\nimport {useMemo as $li42A$useMemo, useRef as $li42A$useRef} from \"react\";\nimport {setGeoJSON as $li42A$setGeoJSON} from \"@macrostrat/mapbox-utils\";\nimport {geoCentroid as $li42A$geoCentroid} from \"d3-geo\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $44d1d5e5d8e823d1$exports = {};\n\n$parcel$export($44d1d5e5d8e823d1$exports, \"ColumnNavigationMap\", () => $44d1d5e5d8e823d1$export$821baedf611249f3);\n\n\n\n\nvar $dETE9 = parcelRequire(\"dETE9\");\nvar $4pcLO = parcelRequire(\"4pcLO\");\n\n\nvar $c4zVj = parcelRequire(\"c4zVj\");\n\n\nvar $5fAA3 = parcelRequire(\"5fAA3\");\nfunction $44d1d5e5d8e823d1$export$821baedf611249f3(props) {\n const { columns: columns, columnIDs: columnIDs, onSelectColumn: onSelectColumn, onHoverColumn: onHoverColumn, selectedColumn: selectedColumn, hoveredColumn: hoveredColumn, projectID: projectID, children: children, inProcess: inProcess, ...rest } = props;\n return (0, $li42A$macrostrathyper)((0, $c4zVj.ColumnNavigationProvider), {\n columns: columns,\n columnIDs: columnIDs,\n onSelectColumn: onSelectColumn,\n onHoverColumn: onHoverColumn,\n selectedColumn: selectedColumn,\n hoveredColumn: hoveredColumn,\n projectID: projectID,\n inProcess: inProcess\n }, (0, $li42A$macrostrathyper)($44d1d5e5d8e823d1$var$_ColumnNavigationMap, props));\n}\nfunction $44d1d5e5d8e823d1$var$_ColumnNavigationMap(props) {\n const { padding: padding = 50, children: children, columnColor: columnColor, showTriangulation: showTriangulation, triangulationColor: triangulationColor, keyboardNavigation: keyboardNavigation = true, ...rest } = props;\n const overlayStyles = (0, $li42A$useMemo)(()=>{\n let styles = [\n (0, $dETE9.buildColumnsStyle)(columnColor)\n ];\n if (showTriangulation) styles.push((0, $5fAA3.buildKeyboardNavigationStyle)(triangulationColor));\n return styles;\n }, [\n columnColor,\n showTriangulation,\n triangulationColor\n ]);\n return (0, $li42A$macrostrathyper)((0, $4pcLO.InsetMap), {\n ...rest,\n boxZoom: false,\n dragRotate: false,\n overlayStyles: overlayStyles\n }, [\n (0, $li42A$macrostrathyper)($44d1d5e5d8e823d1$var$ColumnsLayer),\n children,\n (0, $li42A$macrostrathyper).if(keyboardNavigation)((0, $5fAA3.ColumnKeyboardNavigation), {\n showTriangulation: showTriangulation\n })\n ]);\n}\nfunction $44d1d5e5d8e823d1$var$ColumnsLayer({ enabled: enabled = true }) {\n const columns = (0, $c4zVj.useColumnNavigationStore)((state)=>state.columns);\n const selectedColumn = (0, $c4zVj.useColumnNavigationStore)((state)=>state.selectedColumn);\n const hoveredColumn = (0, $c4zVj.useColumnNavigationStore)((state)=>state.hoveredColumn);\n const selectColumn = (0, $c4zVj.useColumnNavigationStore)((state)=>state.selectColumn);\n const setHoveredColumn = (0, $c4zVj.useColumnNavigationStore)((state)=>state.setHoveredColumn);\n (0, $li42A$useMapStyleOperator)((map)=>{\n if (columns == null) return;\n const data = {\n type: \"FeatureCollection\",\n features: columns\n };\n (0, $li42A$setGeoJSON)(map, \"columns\", data);\n const mouseMove = (event)=>{\n if (event.features.length == 0) return;\n const hoveredFeature = event.features[0];\n setHoveredColumn(hoveredFeature.id);\n map.getCanvas().style.cursor = \"pointer\";\n };\n const mouseLeave = ()=>{\n setHoveredColumn(null);\n map.getCanvas().style.cursor = \"\";\n };\n const clickHandler = (event)=>{\n if (event.features.length == 0) return;\n const selectedColumn = event.features[0];\n const id = selectedColumn.id;\n selectColumn(id);\n };\n // Setup hover styles on map\n const layers = [\n \"columns-points\",\n \"columns-fill\"\n ];\n map.on(\"mousemove\", layers, mouseMove);\n map.on(\"mouseleave\", layers, mouseLeave);\n map.on(\"click\", layers, clickHandler);\n return ()=>{\n map.off(\"mouseenter\", layers, mouseMove);\n map.off(\"mouseleave\", layers, mouseLeave);\n map.off(\"click\", layers, clickHandler);\n };\n }, [\n columns,\n enabled\n ]);\n const hoveredColumnRef = (0, $li42A$useRef)(null);\n (0, $li42A$useMapStyleOperator)((map)=>{\n const prevHoveredColumn = hoveredColumnRef.current;\n if (hoveredColumn == prevHoveredColumn) return;\n if (prevHoveredColumn != null) // Deselect previous column\n map.setFeatureState({\n source: \"columns\",\n id: prevHoveredColumn\n }, {\n hover: false\n });\n hoveredColumnRef.current = hoveredColumn;\n // Select the current column\n map.setFeatureState({\n source: \"columns\",\n id: hoveredColumn\n }, {\n hover: true\n });\n }, [\n hoveredColumn,\n columns\n ]);\n /** Set feature state for selected columns */ const selectedColumnRef = (0, $li42A$useRef)(null);\n const initialRenderRef = (0, $li42A$useRef)(true);\n (0, $li42A$useMapStyleOperator)((map)=>{\n if (columns == null) return;\n const prevSelectedColumn = selectedColumnRef.current;\n if (selectedColumn == prevSelectedColumn) return;\n if (prevSelectedColumn != null) // Deselect previous column\n map.setFeatureState({\n source: \"columns\",\n id: prevSelectedColumn\n }, {\n selected: false\n });\n selectedColumnRef.current = selectedColumn;\n // Select the current column\n map.setFeatureState({\n source: \"columns\",\n id: selectedColumn\n }, {\n selected: true\n });\n // Center the selected column\n const columnGeometry = columns.find((d)=>d.id == selectedColumn)?.geometry;\n if (columnGeometry == null) return;\n const center = (0, $li42A$geoCentroid)(columnGeometry);\n const isInitialRender = initialRenderRef.current;\n map.easeTo({\n center: center\n }, {\n duration: isInitialRender ? 0 : 500\n });\n if (isInitialRender) initialRenderRef.current = false;\n }, [\n selectedColumn,\n columns\n ]);\n return null;\n}\n\n\nexport {$44d1d5e5d8e823d1$export$821baedf611249f3 as ColumnNavigationMap};\n//# sourceMappingURL=column-views.51bc87ca.js.map\n","import { useMapStyleOperator } from \"@macrostrat/mapbox-react\";\nimport h from \"@macrostrat/hyper\";\nimport { FeatureCollection } from \"geojson\";\nimport { ReactNode, useMemo, useRef } from \"react\";\nimport { buildColumnsStyle, InsetMapProps } from \"../../_shared\";\nimport { setGeoJSON } from \"@macrostrat/mapbox-utils\";\n\nimport {\n ColumnNavigationProvider,\n NavigationProviderProps,\n useColumnNavigationStore,\n} from \"./state\";\nimport { InsetMap } from \"../../_shared\";\nimport { geoCentroid } from \"d3-geo\";\nimport {\n ColumnKeyboardNavigation,\n buildKeyboardNavigationStyle,\n} from \"./keyboard-navigation\";\n\nexport interface ColumnNavigationMapProps extends InsetMapProps {\n padding?: number;\n children?: ReactNode;\n accessToken?: string;\n selectedColumn?: number;\n hoveredColumn?: number;\n onSelectColumn?: (colID: number | null) => void;\n onHoverColumn?: (colID: number | null) => void;\n showTriangulation?: boolean;\n columnColor?: string;\n triangulationColor?: string;\n keyboardNavigation?: boolean;\n}\n\nexport function ColumnNavigationMap(\n props: ColumnNavigationMapProps & NavigationProviderProps,\n) {\n const {\n columns,\n columnIDs,\n onSelectColumn,\n onHoverColumn,\n selectedColumn,\n hoveredColumn,\n projectID,\n children,\n inProcess,\n ...rest\n } = props;\n\n return h(\n ColumnNavigationProvider,\n {\n columns,\n columnIDs,\n onSelectColumn,\n onHoverColumn,\n selectedColumn,\n hoveredColumn,\n projectID,\n inProcess,\n },\n h(_ColumnNavigationMap, props),\n );\n}\n\nfunction _ColumnNavigationMap(props: ColumnNavigationMapProps) {\n const {\n padding = 50,\n children,\n columnColor,\n showTriangulation,\n triangulationColor,\n keyboardNavigation = true,\n ...rest\n } = props;\n\n const overlayStyles = useMemo(() => {\n let styles: any[] = [buildColumnsStyle(columnColor)];\n if (showTriangulation) {\n styles.push(buildKeyboardNavigationStyle(triangulationColor));\n }\n return styles;\n }, [columnColor, showTriangulation, triangulationColor]);\n\n return h(\n InsetMap,\n {\n ...rest,\n boxZoom: false,\n dragRotate: false,\n overlayStyles,\n },\n [\n h(ColumnsLayer),\n children,\n h.if(keyboardNavigation)(ColumnKeyboardNavigation, { showTriangulation }),\n ],\n );\n}\n\nfunction ColumnsLayer({ enabled = true }) {\n const columns = useColumnNavigationStore((state) => state.columns);\n const selectedColumn = useColumnNavigationStore(\n (state) => state.selectedColumn,\n );\n const hoveredColumn = useColumnNavigationStore(\n (state) => state.hoveredColumn,\n );\n const selectColumn = useColumnNavigationStore((state) => state.selectColumn);\n const setHoveredColumn = useColumnNavigationStore(\n (state) => state.setHoveredColumn,\n );\n\n useMapStyleOperator(\n (map) => {\n if (columns == null) {\n return;\n }\n const data: FeatureCollection = {\n type: \"FeatureCollection\",\n features: columns,\n };\n\n setGeoJSON(map, \"columns\", data);\n\n const mouseMove = (event) => {\n if (event.features.length == 0) return;\n const hoveredFeature = event.features[0];\n setHoveredColumn(hoveredFeature.id);\n map.getCanvas().style.cursor = \"pointer\";\n };\n const mouseLeave = () => {\n setHoveredColumn(null);\n map.getCanvas().style.cursor = \"\";\n };\n\n const clickHandler = (event) => {\n if (event.features.length == 0) return;\n const selectedColumn = event.features[0];\n const id = selectedColumn.id;\n selectColumn(id);\n };\n\n // Setup hover styles on map\n const layers = [\"columns-points\", \"columns-fill\"];\n map.on(\"mousemove\", layers, mouseMove);\n map.on(\"mouseleave\", layers, mouseLeave);\n map.on(\"click\", layers, clickHandler);\n\n return () => {\n map.off(\"mouseenter\", layers, mouseMove);\n map.off(\"mouseleave\", layers, mouseLeave);\n map.off(\"click\", layers, clickHandler);\n };\n },\n [columns, enabled],\n );\n\n const hoveredColumnRef = useRef(null);\n useMapStyleOperator(\n (map) => {\n const prevHoveredColumn = hoveredColumnRef.current;\n if (hoveredColumn == prevHoveredColumn) return;\n if (prevHoveredColumn != null) {\n // Deselect previous column\n map.setFeatureState(\n { source: \"columns\", id: prevHoveredColumn },\n { hover: false },\n );\n }\n hoveredColumnRef.current = hoveredColumn;\n // Select the current column\n map.setFeatureState(\n { source: \"columns\", id: hoveredColumn },\n { hover: true },\n );\n },\n [hoveredColumn, columns],\n );\n\n /** Set feature state for selected columns */\n const selectedColumnRef = useRef(null);\n const initialRenderRef = useRef(true);\n useMapStyleOperator(\n (map) => {\n if (columns == null) return;\n const prevSelectedColumn = selectedColumnRef.current;\n if (selectedColumn == prevSelectedColumn) return;\n if (prevSelectedColumn != null) {\n // Deselect previous column\n map.setFeatureState(\n { source: \"columns\", id: prevSelectedColumn },\n { selected: false },\n );\n }\n\n selectedColumnRef.current = selectedColumn;\n\n // Select the current column\n map.setFeatureState(\n { source: \"columns\", id: selectedColumn },\n { selected: true },\n );\n\n // Center the selected column\n const columnGeometry = columns.find(\n (d) => d.id == selectedColumn,\n )?.geometry;\n if (columnGeometry == null) return;\n const center = geoCentroid(columnGeometry);\n\n const isInitialRender = initialRenderRef.current;\n map.easeTo({ center }, { duration: isInitialRender ? 0 : 500 });\n if (isInitialRender) {\n initialRenderRef.current = false;\n }\n },\n [selectedColumn, columns],\n );\n\n return null;\n}\n"],"names":["useMapStyleOperator","$li42A$useMapStyleOperator","$li42A$macrostrathyper","useMemo","$li42A$useMemo","useRef","$li42A$useRef","setGeoJSON","$li42A$setGeoJSON","geoCentroid","$li42A$geoCentroid","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","Object","defineProperty","get","$44d1d5e5d8e823d1$export$821baedf611249f3","set","s","enumerable","configurable","$dETE9","$4pcLO","$c4zVj","$5fAA3","props","columns","columnIDs","onSelectColumn","onHoverColumn","selectedColumn","hoveredColumn","projectID","children","inProcess","rest","ColumnNavigationProvider","$44d1d5e5d8e823d1$var$_ColumnNavigationMap","padding","columnColor","showTriangulation","triangulationColor","keyboardNavigation","overlayStyles","styles","buildColumnsStyle","push","buildKeyboardNavigationStyle","InsetMap","boxZoom","dragRotate","$44d1d5e5d8e823d1$var$ColumnsLayer","if","ColumnKeyboardNavigation","enabled","useColumnNavigationStore","state","selectColumn","setHoveredColumn","map","type","features","mouseMove","event","length","hoveredFeature","getCanvas","style","cursor","mouseLeave","clickHandler","layers","on","off","hoveredColumnRef","prevHoveredColumn","current","setFeatureState","source","hover","selectedColumnRef","initialRenderRef","prevSelectedColumn","selected","columnGeometry","find","d","geometry","center","isInitialRender","easeTo","duration","ColumnNavigationMap"],"version":3,"file":"column-views.51bc87ca.js.map","sourceRoot":"../../../../"}
@@ -1,2 +1,2 @@
1
- import"./column-views.770d2c95.js";import"./column-views.78d3f3c5.js";import e from"@macrostrat/hyper";import{SVG as t,StaticNotesColumn as o}from"@macrostrat/column-components";var r=globalThis,n={},a={},i=r.parcelRequirea149;null==i&&((i=function(e){if(e in n)return n[e].exports;if(e in a){var t=a[e];delete a[e];var o={id:e,exports:{}};return n[e]=o,t.call(o.exports,o,o.exports),o.exports}var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r}).register=function(e,t){a[e]=t},r.parcelRequirea149=i),i.register,Object.defineProperty({},"ColumnNotes",{get:()=>s,set:void 0,enumerable:!0,configurable:!0});var c=i("4Abge"),l=i("wtIgl");function s({notes:r,width:n=200,noteComponent:a,paddingLeft:i=60,deltaConnectorAttachment:s,children:d}){let{totalHeight:m}=(0,l.useMacrostratColumnData)(),p=(0,l.useCompositeScale)();return e(c.ColumnNotesProvider,{scale:p,totalHeight:m,pixelScale:-1},[e(t,{width:n,height:m,paddingH:4},[e(o,{width:n,notes:r,noteComponent:a,paddingLeft:i,deltaConnectorAttachment:s})]),d])}export{s as ColumnNotes};
2
- //# sourceMappingURL=column-views.cf90f63d.js.map
1
+ import"./column-views.976a829b.js";import"./column-views.78d3f3c5.js";import e from"@macrostrat/hyper";import{SVG as t,StaticNotesColumn as o}from"@macrostrat/column-components";var r=globalThis,n={},a={},i=r.parcelRequirea149;null==i&&((i=function(e){if(e in n)return n[e].exports;if(e in a){var t=a[e];delete a[e];var o={id:e,exports:{}};return n[e]=o,t.call(o.exports,o,o.exports),o.exports}var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r}).register=function(e,t){a[e]=t},r.parcelRequirea149=i),i.register,Object.defineProperty({},"ColumnNotes",{get:()=>s,set:void 0,enumerable:!0,configurable:!0});var c=i("4Abge"),l=i("wtIgl");function s({notes:r,width:n=200,noteComponent:a,paddingLeft:i=60,deltaConnectorAttachment:s,children:d}){let{totalHeight:m}=(0,l.useMacrostratColumnData)(),p=(0,l.useCompositeScale)();return e(c.ColumnNotesProvider,{scale:p,totalHeight:m,pixelScale:-1},[e(t,{width:n,height:m,paddingH:4},[e(o,{width:n,notes:r,noteComponent:a,paddingLeft:i,deltaConnectorAttachment:s})]),d])}export{s as ColumnNotes};
2
+ //# sourceMappingURL=column-views.58d2f993.js.map
@@ -1 +1 @@
1
- {"mappings":"A,M,6C,A,O,6C,A,Q,M,mB,A,Q,O,C,C,qB,C,K,+B,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,O,c,C,C,E,c,C,I,I,E,I,K,E,W,C,E,a,C,C,G,I,E,E,S,E,E,SCiBO,SAAS,EAAY,CAAA,MAC1B,CAAK,CAAA,MACL,EAAQ,GAAA,CAAA,cACR,CAAa,CAAA,YACb,EAAc,EAAA,CAAA,yBACd,CAAwB,CAAA,SACxB,CAAQ,CACS,EACjB,GAAM,CAAA,YAAE,CAAW,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,IAClB,EAAQ,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,IAEd,OAAO,AAAA,EACL,EAAA,mBAAkB,CAClB,CACE,MAAA,EACA,YAAA,EACA,WAAY,EACd,EACA,CACE,AAAA,EAAE,EAAK,CAAE,MAAA,EAAO,OAAQ,EAAa,SAAU,CAAE,EAAG,CAClD,AAAA,EAAE,EAAmB,CACnB,MAAA,EACA,MAAA,EACA,cAAA,EACA,YAAA,EACA,yBAAA,CACF,GACD,EACD,EACD,CAEL,Q,K,W","sources":["<anon>","packages/column-views/src/notes.ts"],"sourcesContent":["import \"./column-views.770d2c95.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport $joNTi$macrostrathyper from \"@macrostrat/hyper\";\nimport {SVG as $joNTi$SVG, StaticNotesColumn as $joNTi$StaticNotesColumn} from \"@macrostrat/column-components\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $d63334d9b5597481$exports = {};\n\n$parcel$export($d63334d9b5597481$exports, \"ColumnNotes\", () => $d63334d9b5597481$export$fc5babae10f3f77d);\n\n\nvar $4Abge = parcelRequire(\"4Abge\");\n\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\nfunction $d63334d9b5597481$export$fc5babae10f3f77d({ notes: notes, width: width = 200, noteComponent: noteComponent, paddingLeft: paddingLeft = 60, deltaConnectorAttachment: deltaConnectorAttachment, children: children }) {\n const { totalHeight: totalHeight } = (0, $wtIgl.useMacrostratColumnData)();\n const scale = (0, $wtIgl.useCompositeScale)();\n return (0, $joNTi$macrostrathyper)((0, $4Abge.ColumnNotesProvider), {\n scale: scale,\n totalHeight: totalHeight,\n pixelScale: -1\n }, [\n (0, $joNTi$macrostrathyper)((0, $joNTi$SVG), {\n width: width,\n height: totalHeight,\n paddingH: 4\n }, [\n (0, $joNTi$macrostrathyper)((0, $joNTi$StaticNotesColumn), {\n width: width,\n notes: notes,\n noteComponent: noteComponent,\n paddingLeft: paddingLeft,\n deltaConnectorAttachment: deltaConnectorAttachment\n })\n ]),\n children\n ]);\n}\n\n\nexport {$d63334d9b5597481$export$fc5babae10f3f77d as ColumnNotes};\n//# sourceMappingURL=column-views.cf90f63d.js.map\n","import h from \"@macrostrat/hyper\";\n\nimport { ColumnNotesProvider } from \"./units\";\n\nimport { StaticNotesColumn, SVG } from \"@macrostrat/column-components\";\nimport { useCompositeScale, useMacrostratColumnData } from \"./data-provider\";\nimport type { ReactNode } from \"react\";\n\ninterface ColumnNotesProps {\n notes: any[];\n width?: number;\n noteComponent?: any;\n paddingLeft?: number;\n deltaConnectorAttachment?: number;\n children?: ReactNode;\n}\n\nexport function ColumnNotes({\n notes,\n width = 200,\n noteComponent,\n paddingLeft = 60,\n deltaConnectorAttachment,\n children,\n}: ColumnNotesProps) {\n const { totalHeight } = useMacrostratColumnData();\n const scale = useCompositeScale();\n\n return h(\n ColumnNotesProvider,\n {\n scale,\n totalHeight,\n pixelScale: -1,\n },\n [\n h(SVG, { width, height: totalHeight, paddingH: 4 }, [\n h(StaticNotesColumn, {\n width,\n notes,\n noteComponent,\n paddingLeft,\n deltaConnectorAttachment,\n }),\n ]),\n children,\n ],\n );\n}\n"],"names":["$joNTi$macrostrathyper","SVG","$joNTi$SVG","StaticNotesColumn","$joNTi$StaticNotesColumn","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","Object","defineProperty","get","$d63334d9b5597481$export$fc5babae10f3f77d","set","s","enumerable","configurable","$4Abge","$wtIgl","notes","width","noteComponent","paddingLeft","deltaConnectorAttachment","children","totalHeight","useMacrostratColumnData","scale","useCompositeScale","ColumnNotesProvider","pixelScale","height","paddingH","ColumnNotes"],"version":3,"file":"column-views.cf90f63d.js.map","sourceRoot":"../../../../"}
1
+ {"mappings":"A,M,6C,A,O,6C,A,Q,M,mB,A,Q,O,C,C,qB,C,K,+B,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,O,c,C,C,E,c,C,I,I,E,I,K,E,W,C,E,a,C,C,G,I,E,E,S,E,E,SCiBO,SAAS,EAAY,CAAA,MAC1B,CAAK,CAAA,MACL,EAAQ,GAAA,CAAA,cACR,CAAa,CAAA,YACb,EAAc,EAAA,CAAA,yBACd,CAAwB,CAAA,SACxB,CAAQ,CACS,EACjB,GAAM,CAAA,YAAE,CAAW,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,IAClB,EAAQ,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,IAEd,OAAO,AAAA,EACL,EAAA,mBAAkB,CAClB,CACE,MAAA,EACA,YAAA,EACA,WAAY,EACd,EACA,CACE,AAAA,EAAE,EAAK,CAAE,MAAA,EAAO,OAAQ,EAAa,SAAU,CAAE,EAAG,CAClD,AAAA,EAAE,EAAmB,CACnB,MAAA,EACA,MAAA,EACA,cAAA,EACA,YAAA,EACA,yBAAA,CACF,GACD,EACD,EACD,CAEL,Q,K,W","sources":["<anon>","packages/column-views/src/notes.ts"],"sourcesContent":["import \"./column-views.976a829b.js\";\nimport \"./column-views.78d3f3c5.js\";\nimport $joNTi$macrostrathyper from \"@macrostrat/hyper\";\nimport {SVG as $joNTi$SVG, StaticNotesColumn as $joNTi$StaticNotesColumn} from \"@macrostrat/column-components\";\n\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $d63334d9b5597481$exports = {};\n\n$parcel$export($d63334d9b5597481$exports, \"ColumnNotes\", () => $d63334d9b5597481$export$fc5babae10f3f77d);\n\n\nvar $4Abge = parcelRequire(\"4Abge\");\n\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\nfunction $d63334d9b5597481$export$fc5babae10f3f77d({ notes: notes, width: width = 200, noteComponent: noteComponent, paddingLeft: paddingLeft = 60, deltaConnectorAttachment: deltaConnectorAttachment, children: children }) {\n const { totalHeight: totalHeight } = (0, $wtIgl.useMacrostratColumnData)();\n const scale = (0, $wtIgl.useCompositeScale)();\n return (0, $joNTi$macrostrathyper)((0, $4Abge.ColumnNotesProvider), {\n scale: scale,\n totalHeight: totalHeight,\n pixelScale: -1\n }, [\n (0, $joNTi$macrostrathyper)((0, $joNTi$SVG), {\n width: width,\n height: totalHeight,\n paddingH: 4\n }, [\n (0, $joNTi$macrostrathyper)((0, $joNTi$StaticNotesColumn), {\n width: width,\n notes: notes,\n noteComponent: noteComponent,\n paddingLeft: paddingLeft,\n deltaConnectorAttachment: deltaConnectorAttachment\n })\n ]),\n children\n ]);\n}\n\n\nexport {$d63334d9b5597481$export$fc5babae10f3f77d as ColumnNotes};\n//# sourceMappingURL=column-views.58d2f993.js.map\n","import h from \"@macrostrat/hyper\";\n\nimport { ColumnNotesProvider } from \"./units\";\n\nimport { StaticNotesColumn, SVG } from \"@macrostrat/column-components\";\nimport { useCompositeScale, useMacrostratColumnData } from \"./data-provider\";\nimport type { ReactNode } from \"react\";\n\ninterface ColumnNotesProps {\n notes: any[];\n width?: number;\n noteComponent?: any;\n paddingLeft?: number;\n deltaConnectorAttachment?: number;\n children?: ReactNode;\n}\n\nexport function ColumnNotes({\n notes,\n width = 200,\n noteComponent,\n paddingLeft = 60,\n deltaConnectorAttachment,\n children,\n}: ColumnNotesProps) {\n const { totalHeight } = useMacrostratColumnData();\n const scale = useCompositeScale();\n\n return h(\n ColumnNotesProvider,\n {\n scale,\n totalHeight,\n pixelScale: -1,\n },\n [\n h(SVG, { width, height: totalHeight, paddingH: 4 }, [\n h(StaticNotesColumn, {\n width,\n notes,\n noteComponent,\n paddingLeft,\n deltaConnectorAttachment,\n }),\n ]),\n children,\n ],\n );\n}\n"],"names":["$joNTi$macrostrathyper","SVG","$joNTi$SVG","StaticNotesColumn","$joNTi$StaticNotesColumn","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","Object","defineProperty","get","$d63334d9b5597481$export$fc5babae10f3f77d","set","s","enumerable","configurable","$4Abge","$wtIgl","notes","width","noteComponent","paddingLeft","deltaConnectorAttachment","children","totalHeight","useMacrostratColumnData","scale","useCompositeScale","ColumnNotesProvider","pixelScale","height","paddingH","ColumnNotes"],"version":3,"file":"column-views.58d2f993.js.map","sourceRoot":"../../../../"}
@@ -1,2 +1,2 @@
1
- import"./column-views.6b441349.js";import"./column-views.139b0855.js";import"./column-views.41876859.js";import{useMapClickHandler as e,useMapStyleOperator as o,useMapEaseTo as r}from"@macrostrat/mapbox-react";import{LngLatBounds as t}from"mapbox-gl";import n from"@macrostrat/hyper";import{useMemo as l}from"react";import{setGeoJSON as s,buildGeoJSONSource as i}from"@macrostrat/mapbox-utils";import{buildCrossSectionLayers as a}from"@macrostrat/map-styles";var c=globalThis,u={},p={},d=c.parcelRequirea149;null==d&&((d=function(e){if(e in u)return u[e].exports;if(e in p){var o=p[e];delete p[e];var r={id:e,exports:{}};return u[e]=r,o.call(r.exports,r,r.exports),r.exports}var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}).register=function(e,o){p[e]=o},c.parcelRequirea149=d),d.register,Object.defineProperty({},"ColumnCorrelationMap",{get:()=>g,set:void 0,enumerable:!0,configurable:!0});var m=d("gIQRH"),f=d("dETE9"),y=d("4pcLO");function g(e){let{padding:o=50,children:r,columnColor:t,...s}=e,i=l(()=>[(0,f.buildColumnsStyle)(t),M,v],[t]);return n(y.InsetMap,{...s,boxZoom:!1,dragRotate:!1,overlayStyles:i},[n(S),n(C),n(b),n(x,{padding:o}),r])}function b(){let o=(0,m.useCorrelationMapStore)(e=>e.onClickMap);return e(e=>{o(e,{type:"Point",coordinates:e.lngLat.toArray()})},[o]),null}function C(){let e=(0,m.useCorrelationMapStore)(e=>e.focusedColumns);return o(o=>{let r={type:"Feature",geometry:{type:"LineString",coordinates:e.map(e=>e.properties.centroid.geometry.coordinates)},properties:{}};s(o,"selected-columns",{type:"FeatureCollection",features:e}),s(o,"selected-column-centroids",{type:"FeatureCollection",features:[r]})},[e]),null}function S({enabled:e=!0}){let r=(0,m.useCorrelationMapStore)(e=>e.columns);return o(e=>{if(null==r)return;let o={type:"FeatureCollection",features:r};console.log(" columns",o),s(e,"columns",o)},[r,e]),null}let M={version:8,sources:{"selected-columns":i(),"selected-column-centroids":i()},layers:[{id:"selected-columns-fill",type:"fill",source:"selected-columns",paint:{"fill-color":"rgba(255, 0, 0, 0.1)"}},{id:"selected-column-centroids-line",type:"line",source:"selected-column-centroids",paint:{"line-color":"rgba(255, 0, 0, 0.8)","line-width":2,"line-dasharray":[2,2]}},{id:"selected-column-centroids-points",type:"circle",source:"selected-column-centroids",paint:{"circle-radius":4,"circle-color":"rgba(255, 0, 0, 0.8)"}}]},v={version:8,sources:{elevationMarker:i(),crossSectionLine:i(),crossSectionEndpoints:i()},layers:a()};function x({padding:e}){let n=(0,m.useCorrelationMapStore)(e=>e.focusedLine);return o(e=>{null!=n&&(s(e,"crossSectionLine",{type:"FeatureCollection",features:[{type:"Feature",geometry:n,properties:{id:"focusedLine"}}]}),s(e,"crossSectionEndpoints",{type:"FeatureCollection",features:n.coordinates.map(e=>({type:"Feature",geometry:{type:"Point",coordinates:e},properties:{}}))}))},[n]),r({bounds:l(()=>{if(null==n||n?.coordinates.length<2)return null;let e=new t;for(let o of n.coordinates)e.extend(o);return e},[n]),padding:e,trackResize:!0}),null}export{g as ColumnCorrelationMap};
2
- //# sourceMappingURL=column-views.5b6833f0.js.map
1
+ import"./column-views.e3ba0594.js";import"./column-views.139b0855.js";import"./column-views.41876859.js";import{useMapClickHandler as e,useMapStyleOperator as o,useMapEaseTo as r}from"@macrostrat/mapbox-react";import{LngLatBounds as t}from"mapbox-gl";import n from"@macrostrat/hyper";import{useMemo as l}from"react";import{setGeoJSON as s,buildGeoJSONSource as i}from"@macrostrat/mapbox-utils";import{buildCrossSectionLayers as a}from"@macrostrat/map-styles";var c=globalThis,u={},p={},d=c.parcelRequirea149;null==d&&((d=function(e){if(e in u)return u[e].exports;if(e in p){var o=p[e];delete p[e];var r={id:e,exports:{}};return u[e]=r,o.call(r.exports,r,r.exports),r.exports}var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}).register=function(e,o){p[e]=o},c.parcelRequirea149=d),d.register,Object.defineProperty({},"ColumnCorrelationMap",{get:()=>g,set:void 0,enumerable:!0,configurable:!0});var m=d("gIQRH"),f=d("dETE9"),y=d("4pcLO");function g(e){let{padding:o=50,children:r,columnColor:t,...s}=e,i=l(()=>[(0,f.buildColumnsStyle)(t),M,v],[t]);return n(y.InsetMap,{...s,boxZoom:!1,dragRotate:!1,overlayStyles:i},[n(S),n(C),n(b),n(x,{padding:o}),r])}function b(){let o=(0,m.useCorrelationMapStore)(e=>e.onClickMap);return e(e=>{o(e,{type:"Point",coordinates:e.lngLat.toArray()})},[o]),null}function C(){let e=(0,m.useCorrelationMapStore)(e=>e.focusedColumns);return o(o=>{let r={type:"Feature",geometry:{type:"LineString",coordinates:e.map(e=>e.properties.centroid.geometry.coordinates)},properties:{}};s(o,"selected-columns",{type:"FeatureCollection",features:e}),s(o,"selected-column-centroids",{type:"FeatureCollection",features:[r]})},[e]),null}function S({enabled:e=!0}){let r=(0,m.useCorrelationMapStore)(e=>e.columns);return o(e=>{if(null==r)return;let o={type:"FeatureCollection",features:r};console.log(" columns",o),s(e,"columns",o)},[r,e]),null}let M={version:8,sources:{"selected-columns":i(),"selected-column-centroids":i()},layers:[{id:"selected-columns-fill",type:"fill",source:"selected-columns",paint:{"fill-color":"rgba(255, 0, 0, 0.1)"}},{id:"selected-column-centroids-line",type:"line",source:"selected-column-centroids",paint:{"line-color":"rgba(255, 0, 0, 0.8)","line-width":2,"line-dasharray":[2,2]}},{id:"selected-column-centroids-points",type:"circle",source:"selected-column-centroids",paint:{"circle-radius":4,"circle-color":"rgba(255, 0, 0, 0.8)"}}]},v={version:8,sources:{elevationMarker:i(),crossSectionLine:i(),crossSectionEndpoints:i()},layers:a()};function x({padding:e}){let n=(0,m.useCorrelationMapStore)(e=>e.focusedLine);return o(e=>{null!=n&&(s(e,"crossSectionLine",{type:"FeatureCollection",features:[{type:"Feature",geometry:n,properties:{id:"focusedLine"}}]}),s(e,"crossSectionEndpoints",{type:"FeatureCollection",features:n.coordinates.map(e=>({type:"Feature",geometry:{type:"Point",coordinates:e},properties:{}}))}))},[n]),r({bounds:l(()=>{if(null==n||n?.coordinates.length<2)return null;let e=new t;for(let o of n.coordinates)e.extend(o);return e},[n]),padding:e,trackResize:!0}),null}export{g as ColumnCorrelationMap};
2
+ //# sourceMappingURL=column-views.65f091ea.js.map