@macrostrat/column-views 2.0.1 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (499) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/esm/{column-views.8dd877af.js → column-views.006d5180.js} +2 -1
  3. package/dist/esm/column-views.006d5180.js.map +1 -0
  4. package/dist/esm/column-views.05586d1f.js +22 -0
  5. package/dist/esm/column-views.05586d1f.js.map +1 -0
  6. package/dist/esm/column-views.0732894f.js +86 -0
  7. package/dist/esm/column-views.0732894f.js.map +1 -0
  8. package/dist/esm/column-views.09f22f45.js +64 -0
  9. package/dist/esm/column-views.09f22f45.js.map +1 -0
  10. package/dist/esm/column-views.10eba967.js +11 -0
  11. package/dist/esm/column-views.10eba967.js.map +1 -0
  12. package/dist/esm/{column-views.8e51206e.js → column-views.1af9761e.js} +19 -3
  13. package/dist/esm/column-views.1af9761e.js.map +1 -0
  14. package/dist/esm/column-views.1c92b88f.js +16 -0
  15. package/dist/esm/column-views.1c92b88f.js.map +1 -0
  16. package/dist/esm/{column-views.ea237aa8.js → column-views.1e055ed5.js} +6 -5
  17. package/dist/esm/column-views.1e055ed5.js.map +1 -0
  18. package/dist/esm/column-views.210514ec.js +11 -0
  19. package/dist/esm/column-views.210514ec.js.map +1 -0
  20. package/dist/esm/{column-views.240ef158.css → column-views.217078ab.css} +4 -3
  21. package/dist/esm/column-views.217078ab.css.map +1 -0
  22. package/dist/esm/column-views.2c43c055.js +156 -0
  23. package/dist/esm/column-views.2c43c055.js.map +1 -0
  24. package/dist/esm/column-views.2c45a7b5.js +25 -0
  25. package/dist/esm/column-views.2c45a7b5.js.map +1 -0
  26. package/dist/esm/column-views.2ca34210.js +151 -0
  27. package/dist/esm/column-views.2ca34210.js.map +1 -0
  28. package/dist/esm/{column-views.88de2cee.js → column-views.2cb87813.js} +4 -4
  29. package/dist/esm/{column-views.88de2cee.js.map → column-views.2cb87813.js.map} +1 -1
  30. package/dist/esm/{column-views.3bec70d6.js → column-views.2d8e0e0f.js} +9 -8
  31. package/dist/esm/column-views.2d8e0e0f.js.map +1 -0
  32. package/dist/esm/column-views.3048acc1.js +66 -0
  33. package/dist/esm/column-views.3048acc1.js.map +1 -0
  34. package/dist/esm/column-views.3199d35a.css +61 -0
  35. package/dist/esm/column-views.3199d35a.css.map +1 -0
  36. package/dist/esm/column-views.34a52db7.js +31 -0
  37. package/dist/esm/column-views.34a52db7.js.map +1 -0
  38. package/dist/esm/column-views.39657bbf.js.map +1 -1
  39. package/dist/esm/{column-views.28ee5f43.js → column-views.3ba9213d.js} +16 -5
  40. package/dist/esm/column-views.3ba9213d.js.map +1 -0
  41. package/dist/esm/column-views.3de4dc43.js.map +1 -1
  42. package/dist/esm/column-views.403a7b48.css +24 -0
  43. package/dist/esm/column-views.403a7b48.css.map +1 -0
  44. package/dist/esm/column-views.4637f4ce.js.map +1 -1
  45. package/dist/esm/column-views.494447ef.css +2 -0
  46. package/dist/esm/column-views.494447ef.css.map +1 -0
  47. package/dist/esm/column-views.4950ea28.js +28 -0
  48. package/dist/esm/column-views.4950ea28.js.map +1 -0
  49. package/dist/esm/{column-views.86c4b36f.js → column-views.4ab0ec82.js} +44 -13
  50. package/dist/esm/column-views.4ab0ec82.js.map +1 -0
  51. package/dist/esm/{column-views.9bdd477a.js → column-views.4d22c21c.js} +2 -2
  52. package/dist/esm/{column-views.9bdd477a.js.map → column-views.4d22c21c.js.map} +1 -1
  53. package/dist/esm/{column-views.b775c0a3.js → column-views.52a6eb47.js} +3 -3
  54. package/dist/esm/{column-views.b775c0a3.js.map → column-views.52a6eb47.js.map} +1 -1
  55. package/dist/esm/{column-views.f2e5a72f.js → column-views.52b03330.js} +3 -3
  56. package/dist/esm/{column-views.f2e5a72f.js.map → column-views.52b03330.js.map} +1 -1
  57. package/dist/esm/column-views.57636733.css +22 -0
  58. package/dist/esm/column-views.57636733.css.map +1 -0
  59. package/dist/esm/{column-views.aa9fcdba.js → column-views.59792b70.js} +18 -15
  60. package/dist/esm/column-views.59792b70.js.map +1 -0
  61. package/dist/esm/{column-views.68409161.js → column-views.59bb0cba.js} +2 -3
  62. package/dist/esm/column-views.59bb0cba.js.map +1 -0
  63. package/dist/esm/{column-views.134b2e2a.js → column-views.5ae1d963.js} +2 -2
  64. package/dist/esm/{column-views.134b2e2a.js.map → column-views.5ae1d963.js.map} +1 -1
  65. package/dist/esm/column-views.5cc09c1d.js.map +1 -1
  66. package/dist/esm/column-views.5e2dc19d.js +187 -0
  67. package/dist/esm/column-views.5e2dc19d.js.map +1 -0
  68. package/dist/esm/{column-views.33dbc778.js → column-views.633c42a3.js} +2 -1
  69. package/dist/esm/column-views.633c42a3.js.map +1 -0
  70. package/dist/esm/{column-views.e77b9d6b.js → column-views.6549388a.js} +4 -5
  71. package/dist/esm/column-views.6549388a.js.map +1 -0
  72. package/dist/esm/{column-views.1ece326b.js → column-views.66f823ba.js} +63 -12
  73. package/dist/esm/column-views.66f823ba.js.map +1 -0
  74. package/dist/esm/{column-views.dff52504.js → column-views.686d21ad.js} +10 -1
  75. package/dist/esm/column-views.686d21ad.js.map +1 -0
  76. package/dist/esm/column-views.68afac63.js +90 -0
  77. package/dist/esm/column-views.68afac63.js.map +1 -0
  78. package/dist/esm/column-views.6992ca88.js +25 -0
  79. package/dist/esm/column-views.6992ca88.js.map +1 -0
  80. package/dist/esm/column-views.69c0e90d.js +5 -0
  81. package/dist/esm/column-views.69c0e90d.js.map +1 -0
  82. package/dist/esm/column-views.6d6b73b4.js.map +1 -1
  83. package/dist/esm/column-views.708140ab.css +36 -0
  84. package/dist/esm/column-views.708140ab.css.map +1 -0
  85. package/dist/esm/column-views.7631c221.js +13 -0
  86. package/dist/esm/column-views.7631c221.js.map +1 -0
  87. package/dist/esm/{column-views.650bd9f5.js → column-views.7715e35e.js} +17 -13
  88. package/dist/esm/column-views.7715e35e.js.map +1 -0
  89. package/dist/esm/column-views.7a414dd1.css +56 -0
  90. package/dist/esm/column-views.7a414dd1.css.map +1 -0
  91. package/dist/esm/column-views.7a726ca9.js +24 -0
  92. package/dist/esm/column-views.7a726ca9.js.map +1 -0
  93. package/dist/esm/column-views.7e21d1ec.js +34 -0
  94. package/dist/esm/column-views.7e21d1ec.js.map +1 -0
  95. package/dist/esm/{column-views.a98214b2.js → column-views.7e350ae2.js} +3 -3
  96. package/dist/esm/{column-views.a98214b2.js.map → column-views.7e350ae2.js.map} +1 -1
  97. package/dist/esm/column-views.83a557b3.js +11 -0
  98. package/dist/esm/column-views.83a557b3.js.map +1 -0
  99. package/dist/esm/{column-views.30646469.js → column-views.85c6a716.js} +2 -2
  100. package/dist/esm/column-views.85c6a716.js.map +1 -0
  101. package/dist/esm/column-views.86619334.js +9 -0
  102. package/dist/esm/column-views.86619334.js.map +1 -0
  103. package/dist/esm/{column-views.9ced149e.js → column-views.8833218c.js} +25 -6
  104. package/dist/esm/column-views.8833218c.js.map +1 -0
  105. package/dist/esm/column-views.88984b34.js +92 -0
  106. package/dist/esm/column-views.88984b34.js.map +1 -0
  107. package/dist/esm/{column-views.40c1f361.js → column-views.89b9e542.js} +11 -18
  108. package/dist/esm/column-views.89b9e542.js.map +1 -0
  109. package/dist/esm/column-views.8a1db14e.js +105 -0
  110. package/dist/esm/column-views.8a1db14e.js.map +1 -0
  111. package/dist/esm/column-views.8e7b01d2.js +43 -0
  112. package/dist/esm/column-views.8e7b01d2.js.map +1 -0
  113. package/dist/esm/column-views.8f108485.js +128 -0
  114. package/dist/esm/column-views.8f108485.js.map +1 -0
  115. package/dist/esm/column-views.904b9365.js +57 -0
  116. package/dist/esm/column-views.904b9365.js.map +1 -0
  117. package/dist/esm/column-views.90a863af.js +11 -0
  118. package/dist/esm/column-views.90a863af.js.map +1 -0
  119. package/dist/esm/{column-views.f71ec4b4.js → column-views.91385fdc.js} +67 -30
  120. package/dist/esm/column-views.91385fdc.js.map +1 -0
  121. package/dist/esm/{column-views.1c589cc4.js → column-views.9892f825.js} +55 -4
  122. package/dist/esm/column-views.9892f825.js.map +1 -0
  123. package/dist/esm/{column-views.1edc7300.js → column-views.9b77388d.js} +6 -5
  124. package/dist/esm/column-views.9b77388d.js.map +1 -0
  125. package/dist/esm/column-views.a582d4b5.js +7 -0
  126. package/dist/esm/column-views.a582d4b5.js.map +1 -0
  127. package/dist/esm/column-views.a7c5ae16.js +25 -0
  128. package/dist/esm/column-views.a7c5ae16.js.map +1 -0
  129. package/dist/esm/{column-views.5c02fee2.js → column-views.a91dde4a.js} +10 -9
  130. package/dist/esm/column-views.a91dde4a.js.map +1 -0
  131. package/dist/esm/{column-views.fc2b4611.js → column-views.a94e99a2.js} +2 -2
  132. package/dist/esm/{column-views.fc2b4611.js.map → column-views.a94e99a2.js.map} +1 -1
  133. package/dist/esm/column-views.ad472a38.css +54 -0
  134. package/dist/esm/column-views.ad472a38.css.map +1 -0
  135. package/dist/esm/{column-views.e2b9c23c.css → column-views.b17f793f.css} +21 -1
  136. package/dist/esm/column-views.b17f793f.css.map +1 -0
  137. package/dist/esm/column-views.b2b5f52c.js +19 -0
  138. package/dist/esm/column-views.b2b5f52c.js.map +1 -0
  139. package/dist/esm/column-views.b324842f.css +57 -0
  140. package/dist/esm/column-views.b324842f.css.map +1 -0
  141. package/dist/esm/{column-views.9804efda.js → column-views.b9fe5176.js} +14 -8
  142. package/dist/esm/column-views.b9fe5176.js.map +1 -0
  143. package/dist/esm/{column-views.fa6f3292.js → column-views.bb46641f.js} +7 -8
  144. package/dist/esm/column-views.bb46641f.js.map +1 -0
  145. package/dist/esm/column-views.bba13f77.css +54 -0
  146. package/dist/esm/column-views.bba13f77.css.map +1 -0
  147. package/dist/esm/{column-views.b2e5f1d9.js → column-views.bcffe6e5.js} +4 -4
  148. package/dist/esm/{column-views.b2e5f1d9.js.map → column-views.bcffe6e5.js.map} +1 -1
  149. package/dist/esm/{column-views.f1efcc2c.js → column-views.c25e8b32.js} +3 -3
  150. package/dist/esm/{column-views.f1efcc2c.js.map → column-views.c25e8b32.js.map} +1 -1
  151. package/dist/esm/column-views.c5e108f9.js +34 -0
  152. package/dist/esm/column-views.c5e108f9.js.map +1 -0
  153. package/dist/esm/{column-views.34636ec7.js → column-views.c71c321c.js} +11 -11
  154. package/dist/esm/column-views.c71c321c.js.map +1 -0
  155. package/dist/esm/{column-views.5b2635fd.js → column-views.c8e2983a.js} +4 -4
  156. package/dist/esm/{column-views.5b2635fd.js.map → column-views.c8e2983a.js.map} +1 -1
  157. package/dist/esm/column-views.cae5a0ad.js +37 -0
  158. package/dist/esm/column-views.cae5a0ad.js.map +1 -0
  159. package/dist/esm/{column-views.4c4c5bac.js → column-views.d2037465.js} +14 -8
  160. package/dist/esm/column-views.d2037465.js.map +1 -0
  161. package/dist/esm/column-views.dc42f5d0.js.map +1 -1
  162. package/dist/esm/column-views.e20f6a4b.js +124 -0
  163. package/dist/esm/column-views.e20f6a4b.js.map +1 -0
  164. package/dist/esm/column-views.e4975dd6.css +146 -0
  165. package/dist/esm/column-views.e4975dd6.css.map +1 -0
  166. package/dist/esm/column-views.e9f8b2a7.js +20 -0
  167. package/dist/esm/column-views.e9f8b2a7.js.map +1 -0
  168. package/dist/esm/column-views.edeab611.js +204 -0
  169. package/dist/esm/column-views.edeab611.js.map +1 -0
  170. package/dist/esm/{column-views.57c4ddf3.js → column-views.f08929e2.js} +2 -2
  171. package/dist/esm/column-views.f08929e2.js.map +1 -0
  172. package/dist/esm/column-views.f13a1d6e.js +37 -0
  173. package/dist/esm/column-views.f13a1d6e.js.map +1 -0
  174. package/dist/esm/column-views.f2948ff8.js +101 -0
  175. package/dist/esm/column-views.f2948ff8.js.map +1 -0
  176. package/dist/esm/column-views.f9dab157.js.map +1 -1
  177. package/dist/esm/column-views.fa19cea0.js +108 -0
  178. package/dist/esm/column-views.fa19cea0.js.map +1 -0
  179. package/dist/esm/index.d.ts +325 -296
  180. package/dist/esm/index.d.ts.map +1 -1
  181. package/dist/esm/index.js +13 -11
  182. package/dist/esm/index.js.map +1 -1
  183. package/dist/node/column-views.007bf6c1.js +2 -0
  184. package/dist/node/column-views.007bf6c1.js.map +1 -0
  185. package/dist/node/column-views.00848c9a.js +2 -0
  186. package/dist/node/column-views.00848c9a.js.map +1 -0
  187. package/dist/node/column-views.0278b7e5.js +2 -0
  188. package/dist/node/column-views.0278b7e5.js.map +1 -0
  189. package/dist/node/column-views.04407342.js +2 -0
  190. package/dist/node/column-views.04407342.js.map +1 -0
  191. package/dist/node/column-views.072d3dcd.js +2 -0
  192. package/dist/node/column-views.072d3dcd.js.map +1 -0
  193. package/dist/node/column-views.0859f5d2.js +2 -0
  194. package/dist/node/column-views.0859f5d2.js.map +1 -0
  195. package/dist/node/column-views.0b579299.css +2 -0
  196. package/dist/node/column-views.0b579299.css.map +1 -0
  197. package/dist/node/column-views.0b72c188.js +2 -0
  198. package/dist/node/column-views.0b72c188.js.map +1 -0
  199. package/dist/node/column-views.1064fcfb.js +2 -0
  200. package/dist/node/column-views.1064fcfb.js.map +1 -0
  201. package/dist/node/column-views.10a2bad6.js +2 -0
  202. package/dist/node/column-views.10a2bad6.js.map +1 -0
  203. package/dist/node/column-views.12864efd.js +2 -0
  204. package/dist/node/column-views.12864efd.js.map +1 -0
  205. package/dist/node/column-views.12a70e9d.js +2 -0
  206. package/dist/node/column-views.12a70e9d.js.map +1 -0
  207. package/dist/node/column-views.139b0855.js +2 -0
  208. package/dist/node/column-views.139b0855.js.map +1 -0
  209. package/dist/node/column-views.1a0b56fc.js +2 -0
  210. package/dist/node/column-views.1a0b56fc.js.map +1 -0
  211. package/dist/node/column-views.1de87649.js +2 -0
  212. package/dist/node/column-views.1de87649.js.map +1 -0
  213. package/dist/node/column-views.22673dc1.js +2 -0
  214. package/dist/node/column-views.22673dc1.js.map +1 -0
  215. package/dist/node/column-views.273ac4a8.js +2 -0
  216. package/dist/node/column-views.273ac4a8.js.map +1 -0
  217. package/dist/node/column-views.28609db2.css +2 -0
  218. package/dist/node/column-views.28609db2.css.map +1 -0
  219. package/dist/node/column-views.286d444d.js +2 -0
  220. package/dist/node/column-views.286d444d.js.map +1 -0
  221. package/dist/node/column-views.2877f398.js +2 -0
  222. package/dist/node/column-views.2877f398.js.map +1 -0
  223. package/dist/node/column-views.2a70b9a2.js +2 -0
  224. package/dist/node/column-views.2a70b9a2.js.map +1 -0
  225. package/dist/node/column-views.2e4e357d.js +2 -0
  226. package/dist/node/column-views.2e4e357d.js.map +1 -0
  227. package/dist/node/column-views.2fa1c4e6.css +2 -0
  228. package/dist/node/column-views.2fa1c4e6.css.map +1 -0
  229. package/dist/node/column-views.33102ceb.js +2 -0
  230. package/dist/node/column-views.33102ceb.js.map +1 -0
  231. package/dist/node/column-views.3345cd7a.js +2 -0
  232. package/dist/node/column-views.3345cd7a.js.map +1 -0
  233. package/dist/node/column-views.33752461.js +2 -0
  234. package/dist/node/column-views.33752461.js.map +1 -0
  235. package/dist/node/column-views.34b48ee4.js +2 -0
  236. package/dist/node/column-views.34b48ee4.js.map +1 -0
  237. package/dist/node/column-views.39d3a0be.js +2 -0
  238. package/dist/node/column-views.39d3a0be.js.map +1 -0
  239. package/dist/node/column-views.3a55ecd7.css +2 -0
  240. package/dist/node/column-views.3a55ecd7.css.map +1 -0
  241. package/dist/node/column-views.3bd09ad6.js +2 -0
  242. package/dist/node/column-views.3bd09ad6.js.map +1 -0
  243. package/dist/node/column-views.3cb3345e.js +2 -0
  244. package/dist/node/column-views.3cb3345e.js.map +1 -0
  245. package/dist/node/column-views.3f3cfcce.js +2 -0
  246. package/dist/node/column-views.3f3cfcce.js.map +1 -0
  247. package/dist/node/column-views.41876859.js +2 -0
  248. package/dist/node/column-views.41876859.js.map +1 -0
  249. package/dist/node/column-views.41d01674.js +2 -0
  250. package/dist/node/column-views.41d01674.js.map +1 -0
  251. package/dist/node/column-views.44b75011.js +2 -0
  252. package/dist/node/column-views.44b75011.js.map +1 -0
  253. package/dist/node/column-views.45168c80.js +2 -0
  254. package/dist/node/column-views.45168c80.js.map +1 -0
  255. package/dist/node/column-views.47f67ad4.js +2 -0
  256. package/dist/node/column-views.47f67ad4.js.map +1 -0
  257. package/dist/node/column-views.4e2bdf9b.js +2 -0
  258. package/dist/node/column-views.4e2bdf9b.js.map +1 -0
  259. package/dist/node/column-views.51fbed89.js +2 -0
  260. package/dist/node/column-views.51fbed89.js.map +1 -0
  261. package/dist/node/column-views.5b6833f0.js +2 -0
  262. package/dist/node/column-views.5b6833f0.js.map +1 -0
  263. package/dist/node/column-views.5c1b0eeb.css +2 -0
  264. package/dist/node/column-views.5c1b0eeb.css.map +1 -0
  265. package/dist/node/column-views.63165cf3.css +2 -0
  266. package/dist/node/column-views.63165cf3.css.map +1 -0
  267. package/dist/node/column-views.65ad6310.css +2 -0
  268. package/dist/node/column-views.65ad6310.css.map +1 -0
  269. package/dist/node/column-views.664dc6c9.js +2 -0
  270. package/dist/node/column-views.664dc6c9.js.map +1 -0
  271. package/dist/node/column-views.68224fdd.css +2 -0
  272. package/dist/node/column-views.68224fdd.css.map +1 -0
  273. package/dist/node/column-views.68ded006.js +2 -0
  274. package/dist/node/column-views.68ded006.js.map +1 -0
  275. package/dist/node/column-views.6a0a35e7.js +2 -0
  276. package/dist/node/column-views.6a0a35e7.js.map +1 -0
  277. package/dist/node/column-views.6a4c2100.css +2 -0
  278. package/dist/node/column-views.6a4c2100.css.map +1 -0
  279. package/dist/node/column-views.6a9da051.js +2 -0
  280. package/dist/node/column-views.6a9da051.js.map +1 -0
  281. package/dist/node/column-views.6b441349.js +2 -0
  282. package/dist/node/column-views.6b441349.js.map +1 -0
  283. package/dist/node/column-views.6b6b756b.js +2 -0
  284. package/dist/node/column-views.6b6b756b.js.map +1 -0
  285. package/dist/node/column-views.6bba8c57.js +2 -0
  286. package/dist/node/column-views.6bba8c57.js.map +1 -0
  287. package/dist/node/column-views.6d1551bd.js +2 -0
  288. package/dist/node/column-views.6d1551bd.js.map +1 -0
  289. package/dist/node/column-views.6da49480.js +2 -0
  290. package/dist/node/column-views.6da49480.js.map +1 -0
  291. package/dist/node/column-views.71c48a11.js +2 -0
  292. package/dist/node/column-views.71c48a11.js.map +1 -0
  293. package/dist/node/column-views.7350ac73.js +2 -0
  294. package/dist/node/column-views.7350ac73.js.map +1 -0
  295. package/dist/node/column-views.755f726e.js +2 -0
  296. package/dist/node/column-views.755f726e.js.map +1 -0
  297. package/dist/node/column-views.770d2c95.js +2 -0
  298. package/dist/node/column-views.770d2c95.js.map +1 -0
  299. package/dist/node/column-views.78d3f3c5.js +2 -0
  300. package/dist/node/column-views.78d3f3c5.js.map +1 -0
  301. package/dist/node/column-views.7b9bd06e.css +2 -0
  302. package/dist/node/column-views.7b9bd06e.css.map +1 -0
  303. package/dist/node/column-views.7be87c6b.js +2 -0
  304. package/dist/node/column-views.7be87c6b.js.map +1 -0
  305. package/dist/node/column-views.7d45bbeb.js +2 -0
  306. package/dist/node/column-views.7d45bbeb.js.map +1 -0
  307. package/dist/node/column-views.7f621850.js +2 -0
  308. package/dist/node/column-views.7f621850.js.map +1 -0
  309. package/dist/node/column-views.82cf7c0d.js +2 -0
  310. package/dist/node/column-views.82cf7c0d.js.map +1 -0
  311. package/dist/node/column-views.869c7199.js +2 -0
  312. package/dist/node/column-views.869c7199.js.map +1 -0
  313. package/dist/node/column-views.8a02b1fe.js +2 -0
  314. package/dist/node/column-views.8a02b1fe.js.map +1 -0
  315. package/dist/node/column-views.8acd24ca.js +2 -0
  316. package/dist/node/column-views.8acd24ca.js.map +1 -0
  317. package/dist/node/column-views.8c00beb4.js +2 -0
  318. package/dist/node/column-views.8c00beb4.js.map +1 -0
  319. package/dist/node/column-views.8cfed88b.js +2 -0
  320. package/dist/node/column-views.8cfed88b.js.map +1 -0
  321. package/dist/node/column-views.8f54691f.js +2 -0
  322. package/dist/node/column-views.8f54691f.js.map +1 -0
  323. package/dist/node/column-views.95411f1b.js +2 -0
  324. package/dist/node/column-views.95411f1b.js.map +1 -0
  325. package/dist/node/column-views.9cb13e51.css +2 -0
  326. package/dist/node/column-views.9cb13e51.css.map +1 -0
  327. package/dist/node/column-views.a0aac838.js +2 -0
  328. package/dist/node/column-views.a0aac838.js.map +1 -0
  329. package/dist/node/column-views.a208338e.js +2 -0
  330. package/dist/node/column-views.a208338e.js.map +1 -0
  331. package/dist/node/column-views.a501cea0.js +2 -0
  332. package/dist/node/column-views.a501cea0.js.map +1 -0
  333. package/dist/node/column-views.a634ac7f.js +2 -0
  334. package/dist/node/column-views.a634ac7f.js.map +1 -0
  335. package/dist/node/column-views.a8ffe072.js +2 -0
  336. package/dist/node/column-views.a8ffe072.js.map +1 -0
  337. package/dist/node/column-views.b169b4b5.css +2 -0
  338. package/dist/node/column-views.b169b4b5.css.map +1 -0
  339. package/dist/node/column-views.b55bd885.css +2 -0
  340. package/dist/node/column-views.b55bd885.css.map +1 -0
  341. package/dist/node/column-views.b773edb8.js +2 -0
  342. package/dist/node/column-views.b773edb8.js.map +1 -0
  343. package/dist/node/column-views.baf032f1.js +2 -0
  344. package/dist/node/column-views.baf032f1.js.map +1 -0
  345. package/dist/node/column-views.bb510980.js +2 -0
  346. package/dist/node/column-views.bb510980.js.map +1 -0
  347. package/dist/node/column-views.c968a185.css +2 -0
  348. package/dist/node/column-views.c968a185.css.map +1 -0
  349. package/dist/node/column-views.ca16625d.js +2 -0
  350. package/dist/node/column-views.ca16625d.js.map +1 -0
  351. package/dist/node/column-views.cd3c430b.js +2 -0
  352. package/dist/node/column-views.cd3c430b.js.map +1 -0
  353. package/dist/node/column-views.cd468adb.css +2 -0
  354. package/dist/node/column-views.cd468adb.css.map +1 -0
  355. package/dist/node/column-views.cdcce702.js +2 -0
  356. package/dist/node/column-views.cdcce702.js.map +1 -0
  357. package/dist/node/column-views.ce6808fe.js +2 -0
  358. package/dist/node/column-views.ce6808fe.js.map +1 -0
  359. package/dist/node/column-views.cf90f63d.js +2 -0
  360. package/dist/node/column-views.cf90f63d.js.map +1 -0
  361. package/dist/node/column-views.d0ee3385.js +2 -0
  362. package/dist/node/column-views.d0ee3385.js.map +1 -0
  363. package/dist/node/column-views.d6708353.js +2 -0
  364. package/dist/node/column-views.d6708353.js.map +1 -0
  365. package/dist/node/column-views.d9bbd6fb.css +2 -0
  366. package/dist/node/column-views.d9bbd6fb.css.map +1 -0
  367. package/dist/node/column-views.dfe9f0a9.js +2 -0
  368. package/dist/node/column-views.dfe9f0a9.js.map +1 -0
  369. package/dist/node/column-views.e52994ea.js +2 -0
  370. package/dist/node/column-views.e52994ea.js.map +1 -0
  371. package/dist/node/column-views.e6720522.js +2 -0
  372. package/dist/node/column-views.e6720522.js.map +1 -0
  373. package/dist/node/column-views.e77dd525.js +2 -0
  374. package/dist/node/column-views.e77dd525.js.map +1 -0
  375. package/dist/node/column-views.e7cd811c.css +2 -0
  376. package/dist/node/column-views.e7cd811c.css.map +1 -0
  377. package/dist/node/column-views.e7e26765.js +2 -0
  378. package/dist/node/column-views.e7e26765.js.map +1 -0
  379. package/dist/node/column-views.e9515ec1.js +2 -0
  380. package/dist/node/column-views.e9515ec1.js.map +1 -0
  381. package/dist/node/column-views.ebb44b7d.js +2 -0
  382. package/dist/node/column-views.ebb44b7d.js.map +1 -0
  383. package/dist/node/column-views.ee8cb107.js +2 -0
  384. package/dist/node/column-views.ee8cb107.js.map +1 -0
  385. package/dist/node/column-views.eea80478.js +2 -0
  386. package/dist/node/column-views.eea80478.js.map +1 -0
  387. package/dist/node/column-views.f7315cbc.css +2 -0
  388. package/dist/node/column-views.f7315cbc.css.map +1 -0
  389. package/dist/node/column-views.f76ba19f.js +2 -0
  390. package/dist/node/column-views.f76ba19f.js.map +1 -0
  391. package/dist/node/column-views.fea32686.js +2 -0
  392. package/dist/node/column-views.fea32686.js.map +1 -0
  393. package/dist/node/index.js +1 -1
  394. package/dist/node/index.js.map +1 -1
  395. package/package.json +16 -15
  396. package/src/age-axis.module.sass +20 -0
  397. package/src/age-axis.ts +25 -3
  398. package/src/age-model-overlay.ts +2 -2
  399. package/src/column.module.sass +3 -3
  400. package/src/column.ts +92 -19
  401. package/src/correlation-chart/main.ts +25 -12
  402. package/src/correlation-chart/prepare-data.ts +6 -6
  403. package/src/correlation-chart/stories/correlation-chart.stories.ts +12 -6
  404. package/src/data-provider/base.ts +20 -11
  405. package/src/data-provider/column-nav.ts +2 -2
  406. package/src/data-provider/fetch.ts +9 -9
  407. package/src/data-provider/store.ts +15 -10
  408. package/src/{carbon-isotopes → facets/carbon-isotopes}/data-area.ts +5 -4
  409. package/src/{carbon-isotopes → facets/carbon-isotopes}/index.ts +0 -1
  410. package/src/facets/carbon-isotopes/isotopes-column.module.sass +31 -0
  411. package/src/{carbon-isotopes → facets/carbon-isotopes}/isotopes-column.ts +119 -87
  412. package/src/facets/detrital-zircon/index.module.sass +22 -0
  413. package/src/facets/detrital-zircon/index.ts +132 -0
  414. package/src/facets/detrital-zircon/provider.ts +51 -0
  415. package/src/facets/fossils/index.module.sass +14 -0
  416. package/src/facets/fossils/index.ts +120 -0
  417. package/src/facets/fossils/provider.ts +80 -0
  418. package/src/facets/index.ts +3 -0
  419. package/src/index.ts +2 -1
  420. package/src/maps/_shared/inset-map.stories.ts +1 -1
  421. package/src/maps/_shared/inset-map.ts +2 -2
  422. package/src/maps/_shared/styles.ts +3 -1
  423. package/src/maps/column-correlation/column-correlation-map.stories.ts +3 -3
  424. package/src/maps/column-correlation/core.ts +17 -26
  425. package/src/maps/column-correlation/state.ts +9 -9
  426. package/src/maps/column-navigation/mapbox/column-navigation-map.stories.ts +177 -1
  427. package/src/maps/column-navigation/mapbox/index.ts +18 -15
  428. package/src/maps/column-navigation/mapbox/keyboard-navigation.ts +4 -4
  429. package/src/maps/column-navigation/mapbox/state.ts +16 -6
  430. package/src/maps/column-navigation/svg/animated.ts +2 -2
  431. package/src/maps/column-navigation/svg/column-navigation-svg-map.stories.ts +2 -2
  432. package/src/maps/column-navigation/svg/index.ts +2 -4
  433. package/src/maps/column-navigation/svg/layers.ts +5 -7
  434. package/src/maps/column-navigation/utils/keyboard-navigation.ts +1 -1
  435. package/src/notes.ts +49 -0
  436. package/src/prepare-units/composite-scale.ts +73 -25
  437. package/src/prepare-units/helpers.ts +78 -13
  438. package/src/prepare-units/index.ts +17 -17
  439. package/src/prepare-units/utils.ts +7 -7
  440. package/src/section.ts +8 -8
  441. package/src/unit-details/panel.ts +103 -19
  442. package/src/unit-details/popover.ts +5 -5
  443. package/src/units/boxes.ts +20 -10
  444. package/src/units/colors.ts +12 -5
  445. package/src/units/composite.ts +16 -11
  446. package/src/units/index.ts +77 -10
  447. package/src/units/names.ts +19 -16
  448. package/src/units/resolvers.ts +3 -0
  449. package/src/units/selection.ts +44 -11
  450. package/src/units/types.ts +2 -0
  451. package/dist/esm/column-views.062d164a.js +0 -86
  452. package/dist/esm/column-views.062d164a.js.map +0 -1
  453. package/dist/esm/column-views.07521ce6.js +0 -25
  454. package/dist/esm/column-views.07521ce6.js.map +0 -1
  455. package/dist/esm/column-views.1c589cc4.js.map +0 -1
  456. package/dist/esm/column-views.1ece326b.js.map +0 -1
  457. package/dist/esm/column-views.1edc7300.js.map +0 -1
  458. package/dist/esm/column-views.240ef158.css.map +0 -1
  459. package/dist/esm/column-views.28ee5f43.js.map +0 -1
  460. package/dist/esm/column-views.30646469.js.map +0 -1
  461. package/dist/esm/column-views.33dbc778.js.map +0 -1
  462. package/dist/esm/column-views.343b5aa2.js +0 -98
  463. package/dist/esm/column-views.343b5aa2.js.map +0 -1
  464. package/dist/esm/column-views.34636ec7.js.map +0 -1
  465. package/dist/esm/column-views.3bec70d6.js.map +0 -1
  466. package/dist/esm/column-views.3f4db8cb.js +0 -117
  467. package/dist/esm/column-views.3f4db8cb.js.map +0 -1
  468. package/dist/esm/column-views.40c1f361.js.map +0 -1
  469. package/dist/esm/column-views.4c4c5bac.js.map +0 -1
  470. package/dist/esm/column-views.57c4ddf3.js.map +0 -1
  471. package/dist/esm/column-views.5c02fee2.js.map +0 -1
  472. package/dist/esm/column-views.650bd9f5.js.map +0 -1
  473. package/dist/esm/column-views.68409161.js.map +0 -1
  474. package/dist/esm/column-views.86c4b36f.js.map +0 -1
  475. package/dist/esm/column-views.8dd877af.js.map +0 -1
  476. package/dist/esm/column-views.8e51206e.js.map +0 -1
  477. package/dist/esm/column-views.94b5cca1.js +0 -34
  478. package/dist/esm/column-views.94b5cca1.js.map +0 -1
  479. package/dist/esm/column-views.9804efda.js.map +0 -1
  480. package/dist/esm/column-views.9ced149e.js.map +0 -1
  481. package/dist/esm/column-views.a7be0a4a.css +0 -157
  482. package/dist/esm/column-views.a7be0a4a.css.map +0 -1
  483. package/dist/esm/column-views.aa9fcdba.js.map +0 -1
  484. package/dist/esm/column-views.ac9fb5e1.js +0 -163
  485. package/dist/esm/column-views.ac9fb5e1.js.map +0 -1
  486. package/dist/esm/column-views.c58aad3f.js +0 -88
  487. package/dist/esm/column-views.c58aad3f.js.map +0 -1
  488. package/dist/esm/column-views.d1ad48eb.js +0 -11
  489. package/dist/esm/column-views.d1ad48eb.js.map +0 -1
  490. package/dist/esm/column-views.dff52504.js.map +0 -1
  491. package/dist/esm/column-views.e2b9c23c.css.map +0 -1
  492. package/dist/esm/column-views.e77b9d6b.js.map +0 -1
  493. package/dist/esm/column-views.ea237aa8.js.map +0 -1
  494. package/dist/esm/column-views.f71ec4b4.js.map +0 -1
  495. package/dist/esm/column-views.fa6f3292.js.map +0 -1
  496. package/src/carbon-isotopes/column.module.sass +0 -136
  497. package/src/carbon-isotopes/column.ts +0 -133
  498. package/src/carbon-isotopes/core.ts +0 -81
  499. /package/src/{carbon-isotopes → facets/carbon-isotopes}/data-provider.ts +0 -0
@@ -0,0 +1,187 @@
1
+ import {useMeasurementData as $5dbb619f2c7bef60$export$8a0335fd9ff72150} from "./column-views.a7c5ae16.js";
2
+ import {IsotopeDataPoint as $5f39f3d52558a1d0$export$4cb5d059db4e2bd, IsotopesDataArea as $5f39f3d52558a1d0$export$309ef8546e07d921, useDataLocator as $5f39f3d52558a1d0$export$919dbb10b6b5b75} from "./column-views.0732894f.js";
3
+ import {useMacrostratColumnData as $d5074f164411387e$export$f8509b7cce386c7d, useMacrostratUnits as $d5074f164411387e$export$6fb40844db555b2} from "./column-views.1e055ed5.js";
4
+ import "./column-views.708140ab.css";
5
+ import $0zDA3$columnviews6992ca88js from "./column-views.6992ca88.js";
6
+ import {useMemo as $0zDA3$useMemo} from "react";
7
+ import $0zDA3$macrostrathyper from "@macrostrat/hyper";
8
+ import $0zDA3$classnames from "classnames";
9
+ import {AxisBottom as $0zDA3$AxisBottom} from "@visx/axis";
10
+ import {referenceMeasuresToColumn as $0zDA3$referenceMeasuresToColumn} from "@macrostrat/stratigraphy-utils";
11
+ import {useColumnLayout as $0zDA3$useColumnLayout, SVG as $0zDA3$SVG, ColumnLayoutProvider as $0zDA3$ColumnLayoutProvider} from "@macrostrat/column-components";
12
+ import {scaleLinear as $0zDA3$scaleLinear} from "d3-scale";
13
+
14
+
15
+ function $parcel$interopDefault(a) {
16
+ return a && a.__esModule ? a.default : a;
17
+ }
18
+
19
+
20
+
21
+
22
+
23
+
24
+
25
+
26
+
27
+
28
+
29
+ const $d71d096cfe00860f$var$h = (0, $0zDA3$macrostrathyper).styled((0, ($parcel$interopDefault($0zDA3$columnviews6992ca88js))));
30
+ function $d71d096cfe00860f$var$IsotopeText({ datum: datum, text: text, ...rest }) {
31
+ const { pointLocator: pointLocator } = (0, $5f39f3d52558a1d0$export$919dbb10b6b5b75)();
32
+ const [x, y] = pointLocator(datum);
33
+ return $d71d096cfe00860f$var$h("text", {
34
+ x: x,
35
+ y: y,
36
+ ...rest
37
+ }, text);
38
+ }
39
+ function $d71d096cfe00860f$var$ScaleLine(props) {
40
+ let { value: value, className: className, labelBottom: labelBottom, labelOffset: labelOffset, ...rest } = props;
41
+ const { sections: sections } = (0, $d5074f164411387e$export$f8509b7cce386c7d)();
42
+ const { xScale: xScale } = (0, $0zDA3$useColumnLayout)();
43
+ const x = xScale(value);
44
+ const transform = `translate(${x})`;
45
+ className = (0, $0zDA3$classnames)(className, {
46
+ zero: value === 0
47
+ });
48
+ return $d71d096cfe00860f$var$h("g.tick", {
49
+ transform: transform,
50
+ className: className,
51
+ key: value
52
+ }, [
53
+ $d71d096cfe00860f$var$h("g.tick-lines", sections.map((d)=>{
54
+ const { scaleInfo: scaleInfo } = d;
55
+ const y1 = scaleInfo.offset;
56
+ const y2 = y1 + scaleInfo.pixelHeight;
57
+ return $d71d096cfe00860f$var$h("line", {
58
+ y1: y1,
59
+ y2: y2,
60
+ strokeDasharray: props.strokeDasharray,
61
+ strokeWidth: 1
62
+ });
63
+ }))
64
+ ]);
65
+ }
66
+ function $d71d096cfe00860f$var$unnestPoints(measures) {
67
+ let points = [];
68
+ for (const meas of measures){
69
+ const vals = meas.measure_value.map((d, i)=>{
70
+ return {
71
+ value: d,
72
+ age: meas.measure_age[i],
73
+ position: meas.measure_position[i],
74
+ unit_id: meas.unit_id,
75
+ sample_id: meas.sample_no[i],
76
+ measurement: meas.measurement
77
+ };
78
+ });
79
+ Array.prototype.push.apply(points, vals);
80
+ }
81
+ return points;
82
+ }
83
+ function $d71d096cfe00860f$export$c69bd0285aa5d775(props) {
84
+ const { parameter: parameter, color: color = "dodgerblue" } = props;
85
+ const units = (0, $d5074f164411387e$export$6fb40844db555b2)();
86
+ const measures = (0, $5dbb619f2c7bef60$export$8a0335fd9ff72150)() ?? [];
87
+ const points = (0, $0zDA3$useMemo)(()=>{
88
+ const data = measures.filter((d)=>d.measurement === parameter);
89
+ const refMeasures = (0, $0zDA3$referenceMeasuresToColumn)(units, data);
90
+ return $d71d096cfe00860f$var$unnestPoints(refMeasures);
91
+ }, [
92
+ measures,
93
+ parameter,
94
+ units
95
+ ]);
96
+ return $d71d096cfe00860f$var$h((0, $5f39f3d52558a1d0$export$309ef8546e07d921), {
97
+ getHeight (d) {
98
+ return d.age;
99
+ }
100
+ }, $d71d096cfe00860f$var$h("g.data-points", points.map((d)=>{
101
+ return $d71d096cfe00860f$var$h((0, $5f39f3d52558a1d0$export$4cb5d059db4e2bd), {
102
+ datum: d,
103
+ fill: color
104
+ });
105
+ })));
106
+ }
107
+ function $d71d096cfe00860f$export$5d8aa8022c284748(props) {
108
+ const { width: width = 120, domain: domain = [
109
+ -14,
110
+ 6
111
+ ], parameter: parameter, label: label, color: color = "dodgerblue", children: children = null, transform: transform, getHeight: getHeight, showAxis: showAxis = true, tickValues: _tickVals, nTicks: nTicks = 6, ...rest } = props;
112
+ const { totalHeight: totalHeight } = (0, $d5074f164411387e$export$f8509b7cce386c7d)();
113
+ let _children = children;
114
+ if (children == null && parameter != null) _children = $d71d096cfe00860f$var$h($d71d096cfe00860f$export$c69bd0285aa5d775, {
115
+ parameter: parameter,
116
+ color: color,
117
+ getHeight: getHeight
118
+ });
119
+ const xScale = (0, $0zDA3$useMemo)(()=>(0, $0zDA3$scaleLinear)().domain(domain).range([
120
+ 0,
121
+ width
122
+ ]), [
123
+ domain,
124
+ width
125
+ ]);
126
+ const tickValues = _tickVals ?? xScale.ticks(nTicks);
127
+ return $d71d096cfe00860f$var$h("div.isotopes-column", [
128
+ $d71d096cfe00860f$var$h((0, $0zDA3$SVG), {
129
+ height: totalHeight,
130
+ innerWidth: width,
131
+ paddingH: 15
132
+ }, $d71d096cfe00860f$var$h((0, $0zDA3$ColumnLayoutProvider), {
133
+ width: width,
134
+ xScale: xScale
135
+ }, $d71d096cfe00860f$var$h("g.isotopes-column", {
136
+ className: parameter,
137
+ transform: transform
138
+ }, [
139
+ $d71d096cfe00860f$var$h($d71d096cfe00860f$var$ColumnScaleLines, {
140
+ xScale: xScale,
141
+ tickValues: tickValues,
142
+ width: width,
143
+ ...rest
144
+ }),
145
+ _children
146
+ ]))),
147
+ $d71d096cfe00860f$var$h.if(showAxis)($d71d096cfe00860f$var$ColumnScaleAxis, {
148
+ width: width,
149
+ label: label ?? parameter,
150
+ xScale: xScale,
151
+ tickValues: tickValues,
152
+ ...rest
153
+ })
154
+ ]);
155
+ }
156
+ function $d71d096cfe00860f$var$ColumnScaleAxis(props) {
157
+ const { label: label, xScale: xScale, width: width, showAxis: showAxis = true, tickValues: tickValues, ...rest } = props;
158
+ return $d71d096cfe00860f$var$h("div.isotopes-scale-axis", [
159
+ $d71d096cfe00860f$var$h((0, $0zDA3$SVG), {
160
+ innerWidth: width,
161
+ height: 45,
162
+ paddingH: 15
163
+ }, [
164
+ $d71d096cfe00860f$var$h((0, $0zDA3$AxisBottom), {
165
+ scale: xScale,
166
+ tickLength: 5,
167
+ tickValues: tickValues,
168
+ stroke: "var(--column-stroke-color)",
169
+ tickStroke: "var(--column-stroke-color)",
170
+ ...rest,
171
+ label: label
172
+ })
173
+ ])
174
+ ]);
175
+ }
176
+ function $d71d096cfe00860f$var$ColumnScaleLines(props) {
177
+ const { tickValues: tickValues, xScale: xScale } = props;
178
+ return $d71d096cfe00860f$var$h("g.scale-lines", tickValues.map((value)=>{
179
+ return $d71d096cfe00860f$var$h($d71d096cfe00860f$var$ScaleLine, {
180
+ value: value
181
+ });
182
+ }));
183
+ }
184
+
185
+
186
+ export {$d71d096cfe00860f$export$c69bd0285aa5d775 as IsotopesDataset, $d71d096cfe00860f$export$5d8aa8022c284748 as IsotopesColumn};
187
+ //# sourceMappingURL=column-views.5e2dc19d.js.map
@@ -0,0 +1 @@
1
+ {"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,MAAM,0BAAI,CAAA,GAAA,sBAAI,EAAE,MAAM,CAAC,CAAA,GAAA,uEAAK;AAO5B,SAAS,kCAAY,SAAE,KAAK,QAAE,IAAI,EAAE,GAAG,MAAyB;IAC9D,MAAM,gBAAE,YAAY,EAAE,GAAG,CAAA,GAAA,wCAAa;IACtC,MAAM,CAAC,GAAG,EAAE,GAAG,aAAa;IAC5B,OAAO,wBACL,QACA;WACE;WACA;QACA,GAAG,IAAI;IACT,GACA;AAEJ;AAWA,SAAS,gCAAU,KAAqB;IACtC,IAAI,SAAE,KAAK,aAAE,SAAS,eAAE,WAAW,eAAE,WAAW,EAAE,GAAG,MAAM,GAAG;IAC9D,MAAM,YAAE,QAAQ,EAAE,GAAG,CAAA,GAAA,yCAAsB;IAE3C,MAAM,UAAE,MAAM,EAAE,GAAG,CAAA,GAAA,sBAAc;IACjC,MAAM,IAAI,OAAO;IACjB,MAAM,YAAY,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACnC,YAAY,CAAA,GAAA,iBAAS,EAAE,WAAW;QAAE,MAAM,UAAU;IAAE;IACtD,OAAO,wBAAE,UAAU;mBAAE;mBAAW;QAAW,KAAK;IAAM,GAAG;QACvD,wBACE,gBACA,SAAS,GAAG,CAAC,CAAC;YACZ,MAAM,aAAE,SAAS,EAAE,GAAG;YACtB,MAAM,KAAK,UAAU,MAAM;YAC3B,MAAM,KAAK,KAAK,UAAU,WAAW;YACrC,OAAO,wBAAE,QAAQ;oBACf;oBACA;gBACA,iBAAiB,MAAM,eAAe;gBACtC,aAAa;YACf;QACF;KAEH;AACH;AAEA,SAAS,mCAAa,QAAQ;IAC5B,IAAI,SAAS,EAAE;IACf,KAAK,MAAM,QAAQ,SAAU;QAC3B,MAAM,OAAO,KAAK,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG;YACtC,OAAO;gBACL,OAAO;gBACP,KAAK,KAAK,WAAW,CAAC,EAAE;gBACxB,UAAU,KAAK,gBAAgB,CAAC,EAAE;gBAClC,SAAS,KAAK,OAAO;gBACrB,WAAW,KAAK,SAAS,CAAC,EAAE;gBAC5B,aAAa,KAAK,WAAW;YAC/B;QACF;QACA,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ;IACrC;IACA,OAAO;AACT;AAkBA,SAAS,0CAAgB,KAAK;IAC5B,MAAM,aAAE,SAAS,SAAE,QAAQ,cAAc,GAAG;IAC5C,MAAM,QAAQ,CAAA,GAAA,wCAAiB;IAC/B,MAAM,WAAW,CAAA,GAAA,yCAAiB,OAAO,EAAE;IAE3C,MAAM,SAAS,CAAA,GAAA,cAAM,EAAE;QACrB,MAAM,OAAO,SAAS,MAAM,CAAC,CAAC,IAAM,EAAE,WAAW,KAAK;QACtD,MAAM,cAAc,CAAA,GAAA,gCAAwB,EAAE,OAAO;QACrD,OAAO,mCAAa;IACtB,GAAG;QAAC;QAAU;QAAW;KAAM;IAE/B,OAAO,wBACL,CAAA,GAAA,yCAAe,GACf;QACE,WAAU,CAAC;YACT,OAAO,EAAE,GAAG;QACd;IACF,GACA,wBACE,iBACA,OAAO,GAAG,CAAC,CAAC;QACV,OAAO,wBAAE,CAAA,GAAA,wCAAe,GAAG;YACzB,OAAO;YACP,MAAM;QACR;IACF;AAGN;AAEA,SAAS,0CACP,KAA0D;IAE1D,MAAM,SACJ,QAAQ,aACR,SAAS;QAAC;QAAK;KAAE,aACjB,SAAS,SACT,KAAK,SACL,QAAQ,wBACR,WAAW,iBACX,SAAS,aACT,SAAS,YACT,WAAW,MACX,YAAY,SAAS,UACrB,SAAS,GACT,GAAG,MACJ,GAAG;IAEJ,MAAM,eAAE,WAAW,EAAE,GAAG,CAAA,GAAA,yCAAsB;IAE9C,IAAI,YAAiB;IACrB,IAAI,YAAY,QAAQ,aAAa,MACnC,YAAY,wBAAE,2CAAiB;mBAAE;eAAW;mBAAO;IAAU;IAG/D,MAAM,SAAS,CAAA,GAAA,cAAM,EACnB,IAAM,CAAA,GAAA,kBAAU,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC;YAAC;YAAG;SAAM,GACnD;QAAC;QAAQ;KAAM;IAGjB,MAAM,aAAa,aAAa,OAAO,KAAK,CAAC;IAE7C,OAAO,wBAAE,uBAAuB;QAC9B,wBACE,CAAA,GAAA,UAAE,GACF;YACE,QAAQ;YACR,YAAY;YACZ,UAAU;QACZ,GACA,wBACE,CAAA,GAAA,2BAAmB,GACnB;mBAAE;oBAAO;QAAO,GAChB,wBAAE,qBAAqB;YAAE,WAAW;uBAAW;QAAU,GAAG;YAC1D,wBAAE,wCAAkB;wBAClB;4BACA;uBACA;gBACA,GAAG,IAAI;YACT;YACA;SACD;QAGL,wBAAE,EAAE,CAAC,UAAU,uCAAiB;mBAC9B;YACA,OAAO,SAAS;oBAChB;wBACA;YACA,GAAG,IAAI;QACT;KACD;AACH;AAEA,SAAS,sCAAgB,KAAK;IAC5B,MAAM,SAAE,KAAK,UAAE,MAAM,SAAE,KAAK,YAAE,WAAW,kBAAM,UAAU,EAAE,GAAG,MAAM,GAAG;IAEvE,OAAO,wBAAE,2BAA2B;QAClC,wBACE,CAAA,GAAA,UAAE,GACF;YACE,YAAY;YACZ,QAAQ;YACR,UAAU;QACZ,GACA;YACE,wBAAE,CAAA,GAAA,iBAAS,GAAG;gBACZ,OAAO;gBACP,YAAY;4BACZ;gBACA,QAAQ;gBACR,YAAY;gBACZ,GAAG,IAAI;uBACP;YACF;SACD;KAEJ;AACH;AAEA,SAAS,uCAAiB,KAAK;IAC7B,MAAM,cAAE,UAAU,UAAE,MAAM,EAAE,GAAG;IAE/B,OAAO,wBACL,iBACA,WAAW,GAAG,CAAC,CAAC;QACd,OAAO,wBAAE,iCAAW;mBAAE;QAAM;IAC9B;AAEJ","sources":["packages/column-views/src/facets/carbon-isotopes/isotopes-column.ts"],"sourcesContent":["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":[],"version":3,"file":"column-views.5e2dc19d.js.map"}
@@ -9,6 +9,7 @@ function $1dbfddc9637b572c$export$d2995719c3a4ae17(color) {
9
9
  sources: {
10
10
  columns: (0, $8F7e5$buildGeoJSONSource)()
11
11
  },
12
+ version: 8,
12
13
  layers: [
13
14
  {
14
15
  id: "columns-fill",
@@ -92,4 +93,4 @@ function $1dbfddc9637b572c$export$d2995719c3a4ae17(color) {
92
93
 
93
94
 
94
95
  export {$1dbfddc9637b572c$export$d2995719c3a4ae17 as buildColumnsStyle};
95
- //# sourceMappingURL=column-views.33dbc778.js.map
96
+ //# sourceMappingURL=column-views.633c42a3.js.map
@@ -0,0 +1 @@
1
+ {"mappings":";;;;;AAIO,SAAS,0CAAkB,KAAa;IAC7C,MAAM,cAAc,SAAS,CAAA,GAAA,qBAAa,EAAE,uBAAuB;IACnE,OAAO;QACL,SAAS;YACP,SAAS,CAAA,GAAA,yBAAiB;QAC5B;QACA,SAAS;QACT,QAAQ;YACN;gBACE,IAAI;gBACJ,MAAM;gBACN,QAAQ;gBACR,OAAO;oBACL,cAAc;oBACd,gBAAgB;wBACd;wBACA;4BAAC;4BAAW;gCAAC;gCAAiB;6BAAW;4BAAE;yBAAM;wBACjD;wBACA;4BAAC;4BAAW;gCAAC;gCAAiB;6BAAQ;4BAAE;yBAAM;wBAC9C;wBACA;qBACD;gBACH;YACF;YACA;gBACE,IAAI;gBACJ,MAAM;gBACN,QAAQ;gBACR,OAAO;oBACL,cAAc;oBACd,cAAc;oBACd,gBAAgB;gBAClB;YACF;YACA;gBACE,IAAI;gBACJ,MAAM;gBACN,QAAQ;gBACR,OAAO;oBACL,iBAAiB;oBACjB,gBAAgB;oBAChB,kBAAkB;wBAChB;wBACA;4BAAC;4BAAW;gCAAC;gCAAiB;6BAAW;4BAAE;yBAAM;wBACjD;wBACA;4BAAC;4BAAW;gCAAC;gCAAiB;6BAAQ;4BAAE;yBAAM;wBAC9C;wBACA;qBACD;gBACH;gBACA,QAAQ;oBAAC;oBAAM;oBAAS;iBAAQ;YAClC;SACD;IACH;AACF","sources":["packages/column-views/src/maps/_shared/styles.ts"],"sourcesContent":["import { getCSSVariable } from \"@macrostrat/color-utils\";\nimport { buildGeoJSONSource } from \"@macrostrat/mapbox-utils\";\nimport type { Style } from \"mapbox-gl\";\n\nexport function buildColumnsStyle(color: string): Style {\n const columnColor = color ?? getCSSVariable(\"--text-subtle-color\", \"black\");\n return {\n sources: {\n columns: buildGeoJSONSource(),\n },\n version: 8,\n layers: [\n {\n id: \"columns-fill\",\n type: \"fill\",\n source: \"columns\",\n paint: {\n \"fill-color\": columnColor,\n \"fill-opacity\": [\n \"case\",\n [\"boolean\", [\"feature-state\", \"selected\"], false],\n 0.5,\n [\"boolean\", [\"feature-state\", \"hover\"], false],\n 0.3,\n 0.1,\n ],\n },\n },\n {\n id: \"columns-line\",\n type: \"line\",\n source: \"columns\",\n paint: {\n \"line-color\": columnColor,\n \"line-width\": 2,\n \"line-opacity\": 0.5,\n },\n },\n {\n id: \"columns-points\",\n type: \"circle\",\n source: \"columns\",\n paint: {\n \"circle-radius\": 4,\n \"circle-color\": columnColor,\n \"circle-opacity\": [\n \"case\",\n [\"boolean\", [\"feature-state\", \"selected\"], false],\n 1,\n [\"boolean\", [\"feature-state\", \"hover\"], false],\n 0.7,\n 0.5,\n ],\n },\n filter: [\"==\", \"$type\", \"Point\"],\n },\n ],\n };\n}\n"],"names":[],"version":3,"file":"column-views.633c42a3.js.map"}
@@ -1,5 +1,5 @@
1
1
  import {useColumnFeatures as $33a46f9423c8104a$export$e3270a4e30e40ff9} from "./column-views.5cc09c1d.js";
2
- import {buildTriangulation as $40b71acee908f16d$export$39cd73f2cb8dc4f7, buildKeyMapping as $40b71acee908f16d$export$b3975a0f05980d25} from "./column-views.dc42f5d0.js";
2
+ import {buildKeyMapping as $40b71acee908f16d$export$b3975a0f05980d25, buildTriangulation as $40b71acee908f16d$export$39cd73f2cb8dc4f7} from "./column-views.dc42f5d0.js";
3
3
  import $26TqL$macrostrathyper from "@macrostrat/hyper";
4
4
  import {FeatureLayer as $26TqL$FeatureLayer, Feature as $26TqL$Feature, MapContext as $26TqL$MapContext} from "@macrostrat/svg-map-components";
5
5
  import {useAPIResult as $26TqL$useAPIResult, useKeyHandler as $26TqL$useKeyHandler} from "@macrostrat/ui-components";
@@ -28,12 +28,11 @@ function $93f116a6493b17c3$export$2254347cd20e6080(props) {
28
28
  return (0, $26TqL$macrostrathyper)((0, $26TqL$FeatureLayer), {
29
29
  useCanvas: false,
30
30
  style: style,
31
- features: res.features.filter((d)=>d.properties.unit_id != null)
31
+ features: res.features?.filter((d)=>d.properties.unit_id != null) ?? []
32
32
  });
33
33
  }
34
34
  function $93f116a6493b17c3$export$f177ff57c101017a(props) {
35
35
  const { features: features, onClick: onClick, color: color = "rgba(150,150,150, 1)", singleFeature: singleFeature = true } = props;
36
- console.log(features);
37
36
  const c = (0, $26TqL$chromajs)(color);
38
37
  return (0, $26TqL$macrostrathyper)((0, $26TqL$FeatureLayer), {
39
38
  className: "columns",
@@ -42,7 +41,7 @@ function $93f116a6493b17c3$export$f177ff57c101017a(props) {
42
41
  fill: c.alpha(0.2).css(),
43
42
  stroke: c.alpha(0.4).css()
44
43
  }
45
- }, features.map((f)=>{
44
+ }, features?.map((f)=>{
46
45
  return (0, $26TqL$macrostrathyper)((0, $26TqL$Feature), {
47
46
  id: f.id ?? f.properties.col_id,
48
47
  onClick: onClick,
@@ -167,4 +166,4 @@ const $93f116a6493b17c3$export$b9d912252344e099 = (props)=>{
167
166
 
168
167
 
169
168
  export {$93f116a6493b17c3$export$2254347cd20e6080 as MeasurementsLayer, $93f116a6493b17c3$export$f177ff57c101017a as ColumnFeatures, $93f116a6493b17c3$export$8c41dd563753848 as ColumnKeyboardNavigation, $93f116a6493b17c3$export$f02cc02ad0e0bba3 as Columns, $93f116a6493b17c3$export$4d8f6e6df85d9012 as ColumnCenters, $93f116a6493b17c3$export$b9d912252344e099 as CurrentColumn};
170
- //# sourceMappingURL=column-views.e77b9d6b.js.map
169
+ //# sourceMappingURL=column-views.6549388a.js.map
@@ -0,0 +1 @@
1
+ {"mappings":"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","sources":["packages/column-views/src/maps/column-navigation/svg/layers.ts"],"sourcesContent":["import h from \"@macrostrat/hyper\";\nimport {\n Feature,\n FeatureLayer,\n MapContext,\n} from \"@macrostrat/svg-map-components\";\nimport { useAPIResult, useKeyHandler } from \"@macrostrat/ui-components\";\nimport chroma from \"chroma-js\";\nimport { ExtendedFeature } from \"d3-geo\";\nimport { Polygon } from \"geojson\";\nimport { useContext, useMemo } from \"react\";\nimport { useColumnFeatures } from \"../../../data-provider\";\nimport {\n buildKeyMapping,\n buildTriangulation,\n} from \"../utils/keyboard-navigation\";\n\nconst defaultStyle = {\n fill: \"rgb(239, 180, 249)\",\n stroke: \"magenta\",\n};\n\nexport function MeasurementsLayer(props) {\n const { style = defaultStyle, ...params } = props;\n const res: any = useAPIResult(\"/measurements\", {\n ...params,\n format: \"geojson\",\n response: \"light\",\n });\n if (res == null) return null;\n\n return h(FeatureLayer, {\n useCanvas: false,\n style,\n features: res.features?.filter((d) => d.properties.unit_id != null) ?? [],\n });\n}\n\ntype ColumnProps = { col_id: number };\n\ntype ColumnFeature = ExtendedFeature<Polygon, ColumnProps>;\n\nfunction ColumnFeatures(props) {\n const {\n features,\n onClick,\n color = \"rgba(150,150,150, 1)\",\n singleFeature = true,\n } = props;\n\n const c = chroma(color);\n\n return h(\n FeatureLayer,\n {\n className: \"columns\",\n useCanvas: onClick == null,\n style: {\n fill: c.alpha(0.2).css(),\n stroke: c.alpha(0.4).css(),\n },\n },\n features?.map((f) => {\n return h(Feature, {\n id: f.id ?? f.properties.col_id,\n onClick,\n feature: f,\n });\n }),\n );\n}\n\nenum MacrostratStatusCode {\n InProcess = \"in process\",\n}\n\ninterface ColumnNavProps {\n col_id: number;\n status_code?: MacrostratStatusCode;\n project_id?: number;\n onChange(col_id: number): void;\n}\n\ninterface KeyboardNavProps extends ColumnNavProps {\n features: ColumnFeature[];\n showLayers: boolean;\n}\n\nfunction ColumnKeyboardNavigation(props: KeyboardNavProps) {\n /** Keyboard navigation of columns using a Delaunay triangulation */\n const {\n features = [],\n col_id = null,\n onChange,\n showLayers = false,\n ...projectArgs\n } = props;\n const { projection } = useContext(MapContext);\n const { centroids, tri } = useMemo(\n () => buildTriangulation(features),\n [features],\n );\n\n const currentIndex = useMemo(() => {\n return features.findIndex((d) => d.properties.col_id == col_id);\n }, [features, col_id]);\n\n const neighbors = tri.delaunay.neighbors[currentIndex];\n\n const keyMapping = useMemo(() => {\n return buildKeyMapping(neighbors, centroids, currentIndex, projection);\n }, [neighbors, currentIndex]);\n\n useKeyHandler(\n (event) => {\n const nextColumnIx = keyMapping[event.keyCode];\n if (nextColumnIx == null) return;\n // @ts-ignore\n onChange(features[nextColumnIx]);\n },\n [keyMapping],\n );\n\n if (neighbors == null) return null;\n const neighborFeatures = neighbors.map((d) => features[d]);\n\n return h.if(showLayers)([\n h(FeatureLayer, {\n features: tri.links().features,\n useCanvas: false,\n style: {\n stroke: \"purple\",\n fill: \"transparent\",\n },\n }),\n h(FeatureLayer, {\n features: neighborFeatures,\n useCanvas: false,\n style: {\n stroke: \"rgb(93, 101, 212)\",\n strokeWidth: 3,\n fill: \"rgba(93, 101, 212, 0.5)\",\n },\n }),\n h(FeatureLayer, {\n features: [\n {\n type: \"Feature\",\n geometry: {\n type: \"MultiPoint\",\n coordinates: centroids,\n },\n },\n ],\n useCanvas: false,\n style: {\n r: 1,\n fill: \"purple\",\n },\n }),\n ]);\n}\n\ninterface ColumnExtraInfo {\n apiRoute?: string;\n color?: string;\n filterColumns?(d: ColumnFeature): boolean;\n showDebugLayers?: boolean;\n format?: \"topojson\" | \"geojson\";\n}\n\nconst Columns = (props: ColumnNavProps & ColumnExtraInfo) => {\n const {\n apiRoute = \"/columns\",\n onChange,\n col_id = null,\n status_code,\n project_id,\n color,\n filterColumns,\n showDebugLayers = false,\n format = \"topojson\",\n } = props;\n\n let features: any[] = useColumnFeatures({\n apiRoute,\n status_code,\n project_id,\n format,\n }) as any;\n\n if (features == null) return null;\n\n if (filterColumns != null) {\n features = features.filter(filterColumns);\n }\n\n return h([\n h(ColumnKeyboardNavigation, {\n features,\n col_id,\n onChange,\n status_code,\n project_id,\n showLayers: showDebugLayers,\n }),\n h(ColumnFeatures, { features, onClick: onChange, color }),\n ]);\n};\n\nconst ColumnCenters = (props: ColumnNavProps) => {\n return h(Columns, { apiRoute: \"/defs/columns\", ...props });\n};\n\nconst CurrentColumn = (props) => {\n const { feature } = props;\n return h(FeatureLayer, {\n features: [feature],\n style: {\n fill: \"rgba(255,0,0,0.4)\",\n stroke: \"rgba(255,0,0,0.6)\",\n strokeWidth: 2,\n },\n });\n};\n\nexport {\n Columns,\n CurrentColumn,\n ColumnCenters,\n ColumnFeatures,\n ColumnKeyboardNavigation,\n};\n"],"names":[],"version":3,"file":"column-views.6549388a.js.map"}
@@ -1,12 +1,13 @@
1
1
  import "./column-views.25471fe0.css";
2
2
  import $01tAX$columnviews58b82432js from "./column-views.58b82432.js";
3
- import {useMacrostratDefs as $774a5efa27d1c77b$export$89dd4e5ae4a82373, useMacrostratData as $774a5efa27d1c77b$export$b9c9fc603d74a555} from "./column-views.28ee5f43.js";
4
- import {defaultNameFunction as $bc17276da4abb183$export$c9757aeb43a67df0} from "./column-views.650bd9f5.js";
3
+ import {EnvironmentsList as $01tAX$EnvironmentsList, LithologyList as $01tAX$LithologyList} from "./column-views.90a863af.js";
4
+ import {useMacrostratData as $774a5efa27d1c77b$export$b9c9fc603d74a555, useMacrostratDefs as $774a5efa27d1c77b$export$89dd4e5ae4a82373} from "./column-views.3ba9213d.js";
5
+ import {defaultNameFunction as $bc17276da4abb183$export$c9757aeb43a67df0} from "./column-views.7715e35e.js";
5
6
  import $01tAX$macrostrathyper from "@macrostrat/hyper";
6
7
  import {JSONView as $01tAX$JSONView} from "@macrostrat/ui-components";
7
8
  import {Button as $01tAX$Button, ButtonGroup as $01tAX$ButtonGroup} from "@blueprintjs/core";
8
9
  import {useState as $01tAX$useState, useMemo as $01tAX$useMemo} from "react";
9
- import {LithologyTagFeature as $01tAX$LithologyTagFeature, DataField as $01tAX$DataField, Parenthetical as $01tAX$Parenthetical, Value as $01tAX$Value, LithologyList as $01tAX$LithologyList, EnvironmentsList as $01tAX$EnvironmentsList, ItemList as $01tAX$ItemList, IntervalTag as $01tAX$IntervalTag} from "@macrostrat/data-components";
10
+ import {LithologyTagFeature as $01tAX$LithologyTagFeature, DataField as $01tAX$DataField, Parenthetical as $01tAX$Parenthetical, Value as $01tAX$Value, ItemList as $01tAX$ItemList, IntervalTag as $01tAX$IntervalTag} from "@macrostrat/data-components";
10
11
  import $01tAX$classnames from "classnames";
11
12
 
12
13
 
@@ -22,13 +23,14 @@ function $parcel$interopDefault(a) {
22
23
 
23
24
 
24
25
 
26
+
25
27
  const $448b24baeef3b229$var$h = (0, $01tAX$macrostrathyper).styled((0, ($parcel$interopDefault($01tAX$columnviews58b82432js))));
26
28
  function $448b24baeef3b229$export$fbd245232df17557({ unit: unit, onClose: onClose, className: className, features: features = new Set([
27
29
  "adjacent-units",
28
30
  "outcrop-type",
29
31
  "json-toggle",
30
32
  "depth-range"
31
- ]), lithologyFeatures: lithologyFeatures, actions: actions, selectUnit: selectUnit, columnUnits: columnUnits }) {
33
+ ]), lithologyFeatures: lithologyFeatures, actions: actions, selectUnit: selectUnit, columnUnits: columnUnits, onClickItem: onClickItem }) {
32
34
  const [showJSON, setShowJSON] = (0, $01tAX$useState)(false);
33
35
  let content = null;
34
36
  if (showJSON) content = $448b24baeef3b229$var$h((0, $01tAX$JSONView), {
@@ -38,7 +40,8 @@ function $448b24baeef3b229$export$fbd245232df17557({ unit: unit, onClose: onClos
38
40
  else content = $448b24baeef3b229$var$h($448b24baeef3b229$var$UnitDetailsContent, {
39
41
  unit: unit,
40
42
  features: features,
41
- lithologyFeatures: lithologyFeatures
43
+ lithologyFeatures: lithologyFeatures,
44
+ onClickItem: onClickItem
42
45
  });
43
46
  let title = (0, $bc17276da4abb183$export$c9757aeb43a67df0)(unit);
44
47
  let hiddenActions = null;
@@ -103,7 +106,7 @@ function $448b24baeef3b229$var$UnitDetailsContent({ unit: unit, selectUnit: sele
103
106
  ]), features: features = new Set([
104
107
  "adjacent-units",
105
108
  "outcrop-type"
106
- ]) }) {
109
+ ]), onClickItem: onClickItem, getItemHref: getItemHref }) {
107
110
  const lithMap = (0, $774a5efa27d1c77b$export$89dd4e5ae4a82373)("lithologies");
108
111
  const envMap = (0, $774a5efa27d1c77b$export$89dd4e5ae4a82373)("environments");
109
112
  const environments = $448b24baeef3b229$var$enhanceEnvironments(unit.environ, envMap);
@@ -163,7 +166,9 @@ function $448b24baeef3b229$var$UnitDetailsContent({ unit: unit, selectUnit: sele
163
166
  $448b24baeef3b229$var$h((0, $01tAX$LithologyList), {
164
167
  label: "Lithology",
165
168
  lithologies: lithologies,
166
- features: lithologyFeatures
169
+ features: lithologyFeatures,
170
+ getItemHref: getItemHref,
171
+ onClickItem: onClickItem
167
172
  }),
168
173
  $448b24baeef3b229$var$h($448b24baeef3b229$var$AgeField, {
169
174
  unit: unit
@@ -172,11 +177,14 @@ function $448b24baeef3b229$var$UnitDetailsContent({ unit: unit, selectUnit: sele
172
177
  value: unit.b_age - unit.t_age
173
178
  })),
174
179
  $448b24baeef3b229$var$h($448b24baeef3b229$var$IntervalProportions, {
175
- unit: unit
180
+ unit: unit,
181
+ onClickItem: onClickItem
176
182
  })
177
183
  ]),
178
184
  $448b24baeef3b229$var$h((0, $01tAX$EnvironmentsList), {
179
- environments: environments
185
+ environments: environments,
186
+ onClickItem: onClickItem,
187
+ getItemHref: getItemHref
180
188
  }),
181
189
  $448b24baeef3b229$var$h.if(unit.strat_name_id != null)((0, $01tAX$DataField), {
182
190
  label: "Stratigraphic name"
@@ -292,6 +300,38 @@ function $448b24baeef3b229$var$getAgeRange(_unit) {
292
300
  unit
293
301
  ];
294
302
  }
303
+ function $448b24baeef3b229$var$getAge(value) {
304
+ /** Get the age value in Ma, ka, or Ga as appropriate */ let unit = "Ma";
305
+ if (value < 0.8) {
306
+ unit = "ka";
307
+ value *= 1000;
308
+ if (value < 5) {
309
+ unit = "yr";
310
+ value *= 1000;
311
+ }
312
+ } else if (value > 1000) {
313
+ unit = "Ga";
314
+ value /= 1000;
315
+ }
316
+ return [
317
+ value,
318
+ unit
319
+ ];
320
+ }
321
+ function $448b24baeef3b229$export$37ebfd237811b1eb({ age: age, maximumFractionDigits: maximumFractionDigits = 2, minimumFractionDigits: minimumFractionDigits = 0, className: className }) {
322
+ /** Component to display a single age value with unit conversion from
323
+ * Ma to ka or Ga as appropriate.
324
+ */ const [value, unit] = $448b24baeef3b229$var$getAge(age);
325
+ const _value = value.toLocaleString("en-US", {
326
+ maximumFractionDigits: maximumFractionDigits,
327
+ minimumFractionDigits: minimumFractionDigits
328
+ });
329
+ return $448b24baeef3b229$var$h((0, $01tAX$Value), {
330
+ value: _value,
331
+ unit: unit,
332
+ className: className
333
+ });
334
+ }
295
335
  function $448b24baeef3b229$export$3b11bc38611c5941({ value: value, maximumFractionDigits: maximumFractionDigits = 2, minimumFractionDigits: minimumFractionDigits = 0 }) {
296
336
  let unit = "Myr";
297
337
  if (value < 0.8) {
@@ -347,7 +387,7 @@ function $448b24baeef3b229$var$UnitIDList({ units: units, selectUnit: selectUnit
347
387
  }, unit);
348
388
  }));
349
389
  }
350
- function $448b24baeef3b229$var$IntervalProportions({ unit: unit }) {
390
+ function $448b24baeef3b229$var$IntervalProportions({ unit: unit, onClickItem: onClickItem }) {
351
391
  const i0 = unit.b_int_id;
352
392
  const i1 = unit.t_int_id;
353
393
  let b_prop = unit.b_prop ?? 0;
@@ -373,14 +413,25 @@ function $448b24baeef3b229$var$IntervalProportions({ unit: unit }) {
373
413
  $448b24baeef3b229$var$h("span.sep", "to"),
374
414
  p1
375
415
  ]);
416
+ const clickable = onClickItem != null;
417
+ const handleClick = (event)=>{
418
+ if (onClickItem) onClickItem({
419
+ event: event,
420
+ data: interval0
421
+ });
422
+ };
376
423
  return $448b24baeef3b229$var$h("div.interval-proportions", [
377
424
  $448b24baeef3b229$var$h((0, $01tAX$IntervalTag), {
425
+ className: clickable ? "clickable" : "",
426
+ onClick: clickable ? handleClick : undefined,
378
427
  interval: interval0,
379
428
  prefix: p0
380
429
  }),
381
430
  $448b24baeef3b229$var$h.if(i0 != i1)("span.discourage-break", [
382
431
  $448b24baeef3b229$var$h("span.sep", "to"),
383
432
  $448b24baeef3b229$var$h((0, $01tAX$IntervalTag), {
433
+ className: clickable ? "clickable" : "",
434
+ onClick: clickable ? handleClick : undefined,
384
435
  interval: {
385
436
  ...int1,
386
437
  id: i1,
@@ -416,5 +467,5 @@ function $448b24baeef3b229$var$formatSignificance(value, precision = null) {
416
467
  }
417
468
 
418
469
 
419
- export {$448b24baeef3b229$export$fbd245232df17557 as UnitDetailsPanel, $448b24baeef3b229$export$fc503c39cc5cff43 as LegendPanelHeader, $448b24baeef3b229$export$ec297f6f9a6ccad0 as UnitDetailsFeature, $448b24baeef3b229$export$3b11bc38611c5941 as Duration};
420
- //# sourceMappingURL=column-views.1ece326b.js.map
470
+ export {$448b24baeef3b229$export$fbd245232df17557 as UnitDetailsPanel, $448b24baeef3b229$export$fc503c39cc5cff43 as LegendPanelHeader, $448b24baeef3b229$export$ec297f6f9a6ccad0 as UnitDetailsFeature, $448b24baeef3b229$export$3b11bc38611c5941 as Duration, $448b24baeef3b229$export$37ebfd237811b1eb as AgeLabel};
471
+ //# sourceMappingURL=column-views.66f823ba.js.map
@@ -0,0 +1 @@
1
+ {"mappings":"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","sources":["packages/column-views/src/unit-details/panel.ts"],"sourcesContent":["import hyper from \"@macrostrat/hyper\";\nimport styles from \"./panel.module.sass\";\nimport { JSONView } from \"@macrostrat/ui-components\";\nimport { Button, ButtonGroup } from \"@blueprintjs/core\";\nimport { ReactNode, useMemo, useState } from \"react\";\nimport {\n DataField,\n // EnvironmentsList,\n IntervalShort,\n IntervalTag,\n ItemList,\n // LithologyList,\n LithologyTagFeature,\n Parenthetical,\n Value,\n} from \"@macrostrat/data-components\";\nimport { LithologyList, EnvironmentsList } from \"../../../data-components/src\";\nimport { useMacrostratData, useMacrostratDefs } from \"../data-provider\";\nimport {\n Environment,\n UnitLong,\n UnitLongFull,\n Lithology,\n Interval,\n} from \"@macrostrat/api-types\";\nimport { defaultNameFunction } from \"../units/names\";\nimport classNames from \"classnames\";\n\nconst h = hyper.styled(styles);\n\nexport function UnitDetailsPanel({\n unit,\n onClose,\n className,\n features = new Set<UnitDetailsFeature>([\n UnitDetailsFeature.AdjacentUnits,\n UnitDetailsFeature.OutcropType,\n UnitDetailsFeature.JSONToggle,\n UnitDetailsFeature.DepthRange,\n ]),\n lithologyFeatures,\n actions,\n selectUnit,\n columnUnits,\n onClickItem,\n}: {\n unit: any;\n onClose?: any;\n showLithologyProportions?: boolean;\n className?: string;\n actions?: ReactNode;\n features?: Set<UnitDetailsFeature>;\n lithologyFeatures?: Set<LithologyTagFeature>;\n columnUnits?: UnitLong[];\n selectUnit?: (unitID: number) => void;\n onClickItem?: (item: any) => void;\n}) {\n const [showJSON, setShowJSON] = useState(false);\n\n let content = null;\n if (showJSON) {\n content = h(JSONView, { data: unit, showRoot: false });\n } else {\n content = h(UnitDetailsContent, {\n unit,\n features,\n lithologyFeatures,\n onClickItem,\n });\n }\n\n let title = defaultNameFunction(unit);\n\n let hiddenActions = null;\n if (features.has(UnitDetailsFeature.JSONToggle)) {\n hiddenActions = h(Button, {\n icon: \"code\",\n small: true,\n minimal: true,\n key: \"json-view-toggle\",\n className: classNames(\"json-view-toggle\", { enabled: setShowJSON }),\n onClick(evt) {\n setShowJSON(!showJSON);\n evt.stopPropagation();\n },\n });\n }\n\n return h(\"div.unit-details-panel\", { className }, [\n h(LegendPanelHeader, {\n onClose,\n title,\n id: unit.unit_id,\n actions,\n hiddenActions,\n }),\n h(\"div.unit-details-content-holder\", content),\n ]);\n}\n\nexport function LegendPanelHeader({\n title,\n id,\n onClose,\n actions = null,\n hiddenActions,\n}: {\n title?: string | null;\n id?: number | null;\n onClose?: () => void;\n actions?: ReactNode | null;\n hiddenActions?: ReactNode | null;\n}) {\n return h(\"header.legend-panel-header\", [\n h(\"div.title-container\", [\n h.if(title != null)(\"h3\", title),\n h.if(hiddenActions != null)(\"div.hidden-actions\", hiddenActions),\n ]),\n h(\"div.spacer\"),\n h.if(id != null)(\"code\", id),\n h.if(actions != null)(ButtonGroup, { minimal: true }, actions),\n h.if(onClose != null)(Button, {\n icon: \"cross\",\n minimal: true,\n small: true,\n onClick() {\n onClose();\n },\n }),\n ]);\n}\n\nexport enum UnitDetailsFeature {\n AdjacentUnits = \"adjacent-units\",\n Color = \"color\",\n OutcropType = \"outcrop-type\",\n JSONToggle = \"json-toggle\",\n DepthRange = \"depth-range\",\n}\n\nfunction UnitDetailsContent({\n unit,\n selectUnit,\n columnUnits,\n lithologyFeatures = new Set([\n LithologyTagFeature.Proportion,\n LithologyTagFeature.Attributes,\n ]),\n features = new Set<UnitDetailsFeature>([\n UnitDetailsFeature.AdjacentUnits,\n UnitDetailsFeature.OutcropType,\n ]),\n onClickItem,\n getItemHref,\n}: {\n unit: UnitLong;\n selectUnit?: (unitID: number) => void;\n columnUnits?: UnitLong[];\n lithologyFeatures?: Set<LithologyTagFeature>;\n features?: Set<UnitDetailsFeature>;\n onClickItem?: (\n event: MouseEvent,\n item: Lithology | Environment | UnitLong | Interval,\n ) => void;\n getItemHref?: (item: Lithology | Environment | UnitLong) => string | null;\n}) {\n const lithMap = useMacrostratDefs(\"lithologies\");\n const envMap = useMacrostratDefs(\"environments\");\n\n const environments = enhanceEnvironments(unit.environ, envMap);\n const lithologies = enhanceLithologies(unit.lith ?? [], lithMap);\n\n // Create a lookup table of units if provided\n const columnUnitsMap = useMemo(() => {\n const map = new Map<number, UnitLong>();\n for (const colUnit of columnUnits ?? []) {\n map.set(colUnit.unit_id, colUnit);\n }\n return map;\n }, [columnUnits]);\n\n let outcropField = null;\n if (features.has(UnitDetailsFeature.OutcropType)) {\n // Determine outcrop type\n let outcrop = unit.outcrop;\n if (outcrop == \"both\") {\n outcrop = \"surface and subsurface\";\n }\n outcropField = h(DataField, {\n label: \"Outcrop\",\n value: outcrop,\n });\n }\n\n let thicknessOrHeightRange = null;\n const [thickness, thicknessUnit] = getThickness(unit);\n // Proxy for actual heights in t_pos and b_pos\n if (\n features.has(UnitDetailsFeature.DepthRange) &&\n unit.t_pos != null &&\n unit.b_pos != null &&\n unit.min_thick == unit.max_thick && // We have an actual fixed height\n unit.min_thick != 0 // Not a zero thickness\n ) {\n const label = unit.t_pos < unit.b_pos ? \"Depth\" : \"Height\";\n const u1 = \"m\";\n\n thicknessOrHeightRange = h(DataField, {\n unit: u1,\n label,\n value: formatRange(unit.b_pos, unit.t_pos),\n children: h(\n Parenthetical,\n h(Value, { value: thickness, unit: thicknessUnit }),\n ),\n });\n }\n thicknessOrHeightRange ??= h(DataField, {\n label: \"Thickness\",\n value: thickness,\n unit: thicknessUnit,\n });\n\n /** We are trying to move away from passing the \"color\" parameter in the API */\n let colorSwatch: ReactNode = null;\n if (\"color\" in unit) {\n const unit1 = unit as UnitLongFull;\n colorSwatch = h(\"div.color-swatch\", {\n style: { backgroundColor: unit1.color },\n });\n }\n\n return h(\"div.unit-details-content\", [\n thicknessOrHeightRange,\n h(LithologyList, {\n label: \"Lithology\",\n lithologies,\n features: lithologyFeatures,\n getItemHref,\n onClickItem,\n }),\n h(AgeField, { unit }, [\n h(Parenthetical, h(Duration, { value: unit.b_age - unit.t_age })),\n h(IntervalProportions, {\n unit,\n onClickItem,\n }),\n ]),\n h(EnvironmentsList, {\n environments,\n onClickItem,\n getItemHref,\n }),\n h.if(unit.strat_name_id != null)(\n DataField,\n {\n label: \"Stratigraphic name\",\n },\n h(\"span.strat-name-id\", unit.strat_name_id),\n ),\n outcropField,\n h.if(features.has(UnitDetailsFeature.AdjacentUnits))([\n h(\n DataField,\n { label: \"Above\" },\n h(UnitIDList, { units: unit.units_above, selectUnit }),\n ),\n h(\n DataField,\n { label: \"Below\" },\n h(UnitIDList, { units: unit.units_below, selectUnit }),\n ),\n ]),\n colorSwatch,\n h(\n DataField,\n { label: \"Source\", inline: true },\n h(BibInfo, { refs: unit.refs }),\n ),\n ]);\n}\n\nfunction getThickness(unit): [string, string] {\n let minThickness = unit.min_thick ?? 0;\n let maxThickness = unit.max_thick ?? unit.min_thick ?? 0;\n let _unit = \"m\";\n\n if (minThickness == 0 && maxThickness == 0) {\n return [\"Unknown\", null];\n }\n\n if (minThickness < 0.8 && maxThickness < 1.2) {\n // Convert to cm\n minThickness = minThickness * 100;\n maxThickness = maxThickness * 100;\n _unit = \"cm\";\n } else if (minThickness > 800 && maxThickness > 1200) {\n // Convert to km\n minThickness = minThickness / 1000;\n maxThickness = maxThickness / 1000;\n _unit = \"km\";\n }\n\n if (minThickness == maxThickness) {\n return [formatSignificance(minThickness), _unit];\n }\n\n return [formatRange(minThickness, maxThickness), _unit];\n}\n\nfunction ThicknessField({ unit, label = \"Thickness\" }) {\n const [value, thicknessUnit] = getThickness(unit);\n return h(DataField, {\n label,\n value,\n unit: thicknessUnit,\n });\n}\n\nfunction BibInfo({ refs }) {\n const refData = useMacrostratData(\"refs\", refs);\n\n if (refData == null || refData.length === 0) {\n return null;\n }\n\n if (refData.length == 1) {\n return h(Citation, { data: refData[0], tag: \"span\" });\n }\n\n return h(\n \"ul.refs\",\n refData.map((data, i) => h(Citation, { data, tag: \"li\", key: i })),\n );\n}\n\nfunction Citation({ data, tag = \"p\" }) {\n return h(tag, { className: \"citation\" }, [\n h(\"span.authors\", data.author),\n \", \",\n h(\"span.year\", data.pub_year),\n \", \",\n h(\"span.title\", data.ref),\n ]);\n}\n\nfunction AgeField({ unit, children }) {\n const [b_age, t_age, _unit] = getAgeRange(unit);\n\n return h(\n DataField,\n {\n label: \"Age\",\n value: formatRange(b_age, t_age),\n unit: _unit,\n },\n children,\n );\n}\n\nfunction getAgeRange(_unit) {\n let b_age = _unit.b_age;\n let t_age = _unit.t_age;\n let unit = \"Ma\";\n\n if (b_age < 0.8 && t_age < 1.2) {\n b_age *= 1000;\n t_age *= 1000;\n unit = \"ka\";\n } else if (b_age > 800 && t_age > 1200) {\n b_age /= 1000;\n t_age /= 1000;\n unit = \"Ga\";\n }\n\n return [b_age, t_age, unit];\n}\n\nfunction getAge(value) {\n /** Get the age value in Ma, ka, or Ga as appropriate */\n let unit = \"Ma\";\n if (value < 0.8) {\n unit = \"ka\";\n value *= 1000;\n if (value < 5) {\n unit = \"yr\";\n value *= 1000;\n }\n } else if (value > 1000) {\n unit = \"Ga\";\n value /= 1000;\n }\n\n return [value, unit];\n}\n\nexport function AgeLabel({\n age,\n maximumFractionDigits = 2,\n minimumFractionDigits = 0,\n className,\n}: {\n age: number;\n className?: string;\n maximumFractionDigits?: number;\n minimumFractionDigits?: number;\n}) {\n /** Component to display a single age value with unit conversion from\n * Ma to ka or Ga as appropriate.\n */\n const [value, unit] = getAge(age);\n\n const _value = value.toLocaleString(\"en-US\", {\n maximumFractionDigits,\n minimumFractionDigits,\n });\n\n return h(Value, { value: _value, unit, className });\n}\n\nexport function Duration({\n value,\n maximumFractionDigits = 2,\n minimumFractionDigits = 0,\n}) {\n let unit = \"Myr\";\n if (value < 0.8) {\n unit = \"kyr\";\n value *= 1000;\n if (value < 5) {\n unit = \"yr\";\n value *= 1000;\n }\n } else if (value > 1000) {\n unit = \"Gyr\";\n value /= 1000;\n }\n\n let _value = value.toLocaleString(\"en-US\", {\n maximumFractionDigits,\n minimumFractionDigits,\n });\n\n return h(Value, { value: _value, unit });\n}\n\nfunction enhanceEnvironments(\n environments: Partial<Environment>[],\n envMap: Map<number, Environment>,\n) {\n return environments.map((env) => {\n return {\n ...(envMap?.get(env.environ_id) ?? {}),\n ...env,\n };\n });\n}\n\nfunction enhanceLithologies(\n lithologies: Partial<UnitLong[\"lith\"]>,\n lithMap: Map<number, any>,\n) {\n return lithologies.map((lith) => {\n return {\n ...(lithMap?.get(lith.lith_id) ?? {}), // get lithology details\n ...lith, // override with the unit's specific lithology data\n };\n });\n}\n\nfunction UnitIDList({ units, selectUnit }) {\n const u1 = units.filter((d) => d != 0);\n\n if (u1.length === 0) {\n return h(\"span.no-units\", \"None\");\n }\n\n let tag = \"span\";\n if (selectUnit != null) {\n tag = \"a\";\n }\n\n return h(\n ItemList,\n { className: \"unit-id-list\" },\n u1.map((unit) => {\n return h(\n tag,\n\n {\n className: \"unit-id\",\n onClick() {\n selectUnit?.(unit.id);\n },\n key: unit.id,\n },\n unit,\n );\n }),\n );\n}\n\nfunction IntervalProportions({ unit, onClickItem }) {\n const i0 = unit.b_int_id;\n const i1 = unit.t_int_id;\n let b_prop = unit.b_prop ?? 0;\n let t_prop = unit.t_prop ?? 1;\n\n const intervalMap = useMacrostratDefs(\"intervals\");\n const int0 = intervalMap?.get(i0) ?? {};\n\n const interval0: IntervalShort = {\n ...int0,\n id: i0,\n name: unit.b_int_name,\n };\n\n let p0: ReactNode = null;\n const int1 = intervalMap?.get(i1) ?? {};\n const p1: ReactNode = h(Proportion, { value: t_prop });\n\n if (i0 !== i1 || b_prop !== 0 || t_prop !== 1) {\n // We have a single interval with undefined proportions\n p0 = h(Proportion, { value: b_prop });\n }\n\n if (i0 === i1 && (b_prop !== 0 || t_prop !== 1)) {\n p0 = h(\"span.joint-proportion\", [p0, h(\"span.sep\", \"to\"), p1]);\n }\n\n const clickable = onClickItem != null;\n\n const handleClick = (event: MouseEvent) => {\n if (onClickItem) {\n onClickItem({ event, data: interval0 });\n }\n };\n\n return h(\"div.interval-proportions\", [\n h(IntervalTag, {\n className: clickable ? \"clickable\" : \"\",\n onClick: clickable ? handleClick : undefined,\n interval: interval0,\n prefix: p0,\n }),\n h.if(i0 != i1)(\"span.discourage-break\", [\n h(\"span.sep\", \"to\"),\n h(IntervalTag, {\n className: clickable ? \"clickable\" : \"\",\n onClick: clickable ? handleClick : undefined,\n interval: {\n ...int1,\n id: i1,\n name: unit.t_int_name,\n },\n prefix: p1,\n }),\n ]),\n ]);\n}\n\nconst formatProportion = (d) => {\n if (d == null) return null;\n return d.toFixed(1);\n};\n\nfunction Proportion({ value }) {\n let content = null;\n if (value == 0) {\n content = \"base\";\n } else if (value == 1) {\n content = \"top\";\n } else {\n content = formatProportion(value * 100) + \"%\";\n }\n\n return h(\"span.proportion\", content);\n}\n\nfunction formatRange(min, max, precision = null) {\n if (min == null || max == null) return null;\n if (min === max) {\n return min.toFixed(precision);\n }\n\n return `${formatSignificance(min, precision)}–${formatSignificance(\n max,\n precision,\n )}`;\n}\n\nfunction formatSignificance(value, precision = null) {\n // Format to preserve a reasonable number of significant figures\n // this could be done with an easier algorithm, probably:\n\n if (precision == null) {\n return value.toLocaleString();\n }\n if (precision >= 0) {\n return value.toFixed(precision);\n }\n if (precision < 0) {\n return (\n (value / Math.pow(10, -precision)).toFixed(0) + \"0\".repeat(-precision)\n );\n }\n}\n"],"names":[],"version":3,"file":"column-views.66f823ba.js.map"}
@@ -8,15 +8,24 @@ $parcel$export($047fd20e1964ef56$exports, "age-axis", () => $047fd20e1964ef56$ex
8
8
  $parcel$export($047fd20e1964ef56$exports, "age-axis-column", () => $047fd20e1964ef56$export$5bb449cff67e2830, (v) => $047fd20e1964ef56$export$5bb449cff67e2830 = v);
9
9
  $parcel$export($047fd20e1964ef56$exports, "age-axis-label", () => $047fd20e1964ef56$export$629e44847e8dc64c, (v) => $047fd20e1964ef56$export$629e44847e8dc64c = v);
10
10
  $parcel$export($047fd20e1964ef56$exports, "age-axis-unit", () => $047fd20e1964ef56$export$1609122694a59b0a, (v) => $047fd20e1964ef56$export$1609122694a59b0a = v);
11
+ $parcel$export($047fd20e1964ef56$exports, "age-cursor", () => $047fd20e1964ef56$export$38f8eb5614a465ca, (v) => $047fd20e1964ef56$export$38f8eb5614a465ca = v);
12
+ $parcel$export($047fd20e1964ef56$exports, "label", () => $047fd20e1964ef56$export$1237798dc640739a, (v) => $047fd20e1964ef56$export$1237798dc640739a = v);
13
+ $parcel$export($047fd20e1964ef56$exports, "line", () => $047fd20e1964ef56$export$53f1d5ea8de3d7c, (v) => $047fd20e1964ef56$export$53f1d5ea8de3d7c = v);
11
14
  var $047fd20e1964ef56$export$8e012612e152e560;
12
15
  var $047fd20e1964ef56$export$5bb449cff67e2830;
13
16
  var $047fd20e1964ef56$export$629e44847e8dc64c;
14
17
  var $047fd20e1964ef56$export$1609122694a59b0a;
18
+ var $047fd20e1964ef56$export$38f8eb5614a465ca;
19
+ var $047fd20e1964ef56$export$1237798dc640739a;
20
+ var $047fd20e1964ef56$export$53f1d5ea8de3d7c;
15
21
  $047fd20e1964ef56$export$8e012612e152e560 = `_FHjpa_age-axis`;
16
22
  $047fd20e1964ef56$export$5bb449cff67e2830 = `_FHjpa_age-axis-column`;
17
23
  $047fd20e1964ef56$export$629e44847e8dc64c = `_FHjpa_age-axis-label`;
18
24
  $047fd20e1964ef56$export$1609122694a59b0a = `_FHjpa_age-axis-unit`;
25
+ $047fd20e1964ef56$export$38f8eb5614a465ca = `_FHjpa_age-cursor`;
26
+ $047fd20e1964ef56$export$1237798dc640739a = `_FHjpa_label`;
27
+ $047fd20e1964ef56$export$53f1d5ea8de3d7c = `_FHjpa_line`;
19
28
 
20
29
 
21
30
  export {$047fd20e1964ef56$exports as default};
22
- //# sourceMappingURL=column-views.dff52504.js.map
31
+ //# sourceMappingURL=column-views.686d21ad.js.map
@@ -0,0 +1 @@
1
+ {"mappings":";;;;;;;;;;;;;AAAA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AANA,4CAA6B,CAAC,eAAe,CAAC;AAC9C,4CAAoC,CAAC,sBAAsB,CAAC;AAC5D,4CAAmC,CAAC,qBAAqB,CAAC;AAC1D,4CAAkC,CAAC,oBAAoB,CAAC;AACxD,4CAA+B,CAAC,iBAAiB,CAAC;AAClD,4CAA0B,CAAC,YAAY,CAAC;AACxC,2CAAyB,CAAC,WAAW,CAAC","sources":["packages/column-views/src/age-axis.module.sass"],"sourcesContent":[".age-axis\n transform: translateX(20px)\n\n :global(.tick)\n text\n text-anchor: middle\n // TODO: allow font size to vary without this..\n font-weight: 400 !important\n transform: rotate(-90deg) translate(8px, -12px)\n font-size: var(--column-axis-font-size, 0.8rem)\n\n line\n stroke-width: 1px !important\n\n.age-axis-column\n flex-shrink: 0\n\n.age-axis-label\n writing-mode: vertical-lr\n transform: rotate(180deg)\n font-size: var(--column-axis-font-size, 0.8rem)\n text-align: center\n position: sticky\n top: 0\n max-height: 100vh\n.age-axis-unit\n color: var(--text-subtle-color)\n\n.age-cursor\n position: absolute\n left: 30px\n right: 0\n pointer-events: none\n .line\n border-bottom: 2px solid var(--column-axis-cursor-color, var(--column-cursor-color, var(--column-stroke-color)))\n transform: translateY(-1px)\n\n .label\n writing-mode: vertical-lr\n padding: 4px 2px\n transform: rotate(180deg) translate(16px, 50%)\n background-color: var(--column-background-color)\n text-align: center\n\n\n\n \n"],"names":[],"version":3,"file":"column-views.686d21ad.js.map"}
@@ -0,0 +1,90 @@
1
+ import "./column-views.b324842f.css";
2
+ import $93ETK$columnviews7e21d1ecjs from "./column-views.7e21d1ec.js";
3
+ import {useInDarkMode as $93ETK$useInDarkMode} from "@macrostrat/ui-components";
4
+ import $93ETK$macrostrathyper from "@macrostrat/hyper";
5
+ import {getLuminanceAdjustedColorScheme as $93ETK$getLuminanceAdjustedColorScheme} from "@macrostrat/color-utils";
6
+ import $93ETK$classnames from "classnames";
7
+
8
+
9
+ function $parcel$interopDefault(a) {
10
+ return a && a.__esModule ? a.default : a;
11
+ }
12
+
13
+
14
+
15
+
16
+
17
+ const $e969cdc1e0421ee2$var$h = (0, $93ETK$macrostrathyper).styled((0, ($parcel$interopDefault($93ETK$columnviews7e21d1ecjs))));
18
+ var $e969cdc1e0421ee2$export$33ced837a1e5dd9 = /*#__PURE__*/ function(TagSize) {
19
+ TagSize["Small"] = "small";
20
+ TagSize["Normal"] = "normal";
21
+ TagSize["Large"] = "large";
22
+ return TagSize;
23
+ }({});
24
+ function $e969cdc1e0421ee2$export$3288d34c523a1192(props) {
25
+ const inDarkMode = (0, $93ETK$useInDarkMode)();
26
+ const { prefix: prefix, name: name, details: details, className: className, children: children, size: size, color: color, onClick: onClick, href: href, component: component } = props;
27
+ let classes = props.classNames ?? {};
28
+ let _component = component ?? "span";
29
+ if (href != null && component == null) // If a href is provided, use an anchor tag by default
30
+ _component = "a";
31
+ // TODO: details and prefix might be better moved outside of the component...
32
+ let _details = null;
33
+ if (details != null) _details = $e969cdc1e0421ee2$var$h("span.details", {
34
+ className: classes.details
35
+ }, details);
36
+ const mainTag = $e969cdc1e0421ee2$var$h("span.main", {
37
+ className: classes.main
38
+ }, [
39
+ $e969cdc1e0421ee2$var$h("span.name", name),
40
+ children,
41
+ _details
42
+ ]);
43
+ let _prefix = null;
44
+ if (prefix != null) _prefix = $e969cdc1e0421ee2$var$h("span.prefix", {
45
+ className: classes.prefix
46
+ }, prefix);
47
+ return $e969cdc1e0421ee2$var$h(_component, {
48
+ className: (0, $93ETK$classnames)(className, "tag"),
49
+ style: $e969cdc1e0421ee2$var$buildTagStyle({
50
+ color: color,
51
+ size: size,
52
+ inDarkMode: inDarkMode
53
+ }),
54
+ onClick: onClick,
55
+ href: href
56
+ }, [
57
+ _prefix,
58
+ mainTag
59
+ ]);
60
+ }
61
+ function $e969cdc1e0421ee2$var$buildTagStyle({ color: color, size: size, inDarkMode: inDarkMode } = {}) {
62
+ const scheme = (0, $93ETK$getLuminanceAdjustedColorScheme)(color, inDarkMode);
63
+ let fontSize = null;
64
+ if (size === "small") fontSize = "12px";
65
+ else if (size === "normal") fontSize = "1em";
66
+ else if (size === "large") fontSize = "1.4em";
67
+ let style = {};
68
+ if (fontSize != null) style = {
69
+ ...style,
70
+ "--font-size": fontSize
71
+ };
72
+ if (color != null) style = {
73
+ ...style,
74
+ "--text-color": scheme.mainColor,
75
+ "--tag-background": scheme.backgroundColor,
76
+ "--secondary-color": scheme.secondaryColor,
77
+ "--tag-secondary-background": scheme.secondaryBackgroundColor
78
+ };
79
+ return style;
80
+ }
81
+ function $e969cdc1e0421ee2$export$253448fb46c13164({ children: children, className: className }) {
82
+ return $e969cdc1e0421ee2$var$h("span.tag-list", {
83
+ className: className
84
+ }, children);
85
+ }
86
+ const $e969cdc1e0421ee2$export$168eb813a5fc3f58 = $e969cdc1e0421ee2$export$253448fb46c13164;
87
+
88
+
89
+ export {$e969cdc1e0421ee2$export$33ced837a1e5dd9 as TagSize, $e969cdc1e0421ee2$export$3288d34c523a1192 as Tag, $e969cdc1e0421ee2$export$253448fb46c13164 as BaseTagList, $e969cdc1e0421ee2$export$168eb813a5fc3f58 as ItemList};
90
+ //# sourceMappingURL=column-views.68afac63.js.map