@macrostrat/column-views 2.0.1 → 2.1.1

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 (375) hide show
  1. package/CHANGELOG.md +15 -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.134b2e2a.js → column-views.08440694.js} +2 -2
  9. package/dist/esm/{column-views.134b2e2a.js.map → column-views.08440694.js.map} +1 -1
  10. package/dist/esm/{column-views.aa9fcdba.js → column-views.0c14e18e.js} +18 -15
  11. package/dist/esm/column-views.0c14e18e.js.map +1 -0
  12. package/dist/esm/column-views.10eba967.js +11 -0
  13. package/dist/esm/column-views.10eba967.js.map +1 -0
  14. package/dist/esm/{column-views.8e51206e.js → column-views.1af9761e.js} +19 -3
  15. package/dist/esm/column-views.1af9761e.js.map +1 -0
  16. package/dist/esm/column-views.1c92b88f.js +16 -0
  17. package/dist/esm/column-views.1c92b88f.js.map +1 -0
  18. package/dist/esm/{column-views.ea237aa8.js → column-views.1e055ed5.js} +6 -5
  19. package/dist/esm/column-views.1e055ed5.js.map +1 -0
  20. package/dist/esm/{column-views.1ece326b.js → column-views.1f123354.js} +60 -11
  21. package/dist/esm/column-views.1f123354.js.map +1 -0
  22. package/dist/esm/{column-views.240ef158.css → column-views.217078ab.css} +4 -3
  23. package/dist/esm/column-views.217078ab.css.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.3bec70d6.js → column-views.2d8e0e0f.js} +9 -8
  29. package/dist/esm/column-views.2d8e0e0f.js.map +1 -0
  30. package/dist/esm/column-views.3048acc1.js +66 -0
  31. package/dist/esm/column-views.3048acc1.js.map +1 -0
  32. package/dist/esm/column-views.39657bbf.js.map +1 -1
  33. package/dist/esm/{column-views.28ee5f43.js → column-views.3ba9213d.js} +16 -5
  34. package/dist/esm/column-views.3ba9213d.js.map +1 -0
  35. package/dist/esm/column-views.3de4dc43.js.map +1 -1
  36. package/dist/esm/column-views.403a7b48.css +24 -0
  37. package/dist/esm/column-views.403a7b48.css.map +1 -0
  38. package/dist/esm/column-views.4637f4ce.js.map +1 -1
  39. package/dist/esm/{column-views.86c4b36f.js → column-views.4ab0ec82.js} +44 -13
  40. package/dist/esm/column-views.4ab0ec82.js.map +1 -0
  41. package/dist/esm/{column-views.9bdd477a.js → column-views.4d22c21c.js} +2 -2
  42. package/dist/esm/{column-views.9bdd477a.js.map → column-views.4d22c21c.js.map} +1 -1
  43. package/dist/esm/{column-views.fa6f3292.js → column-views.4df0b803.js} +7 -8
  44. package/dist/esm/column-views.4df0b803.js.map +1 -0
  45. package/dist/esm/{column-views.b775c0a3.js → column-views.52a6eb47.js} +3 -3
  46. package/dist/esm/{column-views.b775c0a3.js.map → column-views.52a6eb47.js.map} +1 -1
  47. package/dist/esm/column-views.57636733.css +22 -0
  48. package/dist/esm/column-views.57636733.css.map +1 -0
  49. package/dist/esm/{column-views.68409161.js → column-views.59bb0cba.js} +2 -3
  50. package/dist/esm/column-views.59bb0cba.js.map +1 -0
  51. package/dist/esm/column-views.5cc09c1d.js.map +1 -1
  52. package/dist/esm/column-views.5e2dc19d.js +187 -0
  53. package/dist/esm/column-views.5e2dc19d.js.map +1 -0
  54. package/dist/esm/{column-views.33dbc778.js → column-views.633c42a3.js} +2 -1
  55. package/dist/esm/column-views.633c42a3.js.map +1 -0
  56. package/dist/esm/{column-views.e77b9d6b.js → column-views.6549388a.js} +4 -5
  57. package/dist/esm/column-views.6549388a.js.map +1 -0
  58. package/dist/esm/{column-views.dff52504.js → column-views.686d21ad.js} +10 -1
  59. package/dist/esm/column-views.686d21ad.js.map +1 -0
  60. package/dist/esm/column-views.6992ca88.js +25 -0
  61. package/dist/esm/column-views.6992ca88.js.map +1 -0
  62. package/dist/esm/column-views.6d6b73b4.js.map +1 -1
  63. package/dist/esm/column-views.708140ab.css +36 -0
  64. package/dist/esm/column-views.708140ab.css.map +1 -0
  65. package/dist/esm/{column-views.650bd9f5.js → column-views.7715e35e.js} +17 -13
  66. package/dist/esm/column-views.7715e35e.js.map +1 -0
  67. package/dist/esm/{column-views.a98214b2.js → column-views.7e350ae2.js} +3 -3
  68. package/dist/esm/{column-views.a98214b2.js.map → column-views.7e350ae2.js.map} +1 -1
  69. package/dist/esm/{column-views.30646469.js → column-views.85c6a716.js} +2 -2
  70. package/dist/esm/column-views.85c6a716.js.map +1 -0
  71. package/dist/esm/column-views.86619334.js +9 -0
  72. package/dist/esm/column-views.86619334.js.map +1 -0
  73. package/dist/esm/{column-views.40c1f361.js → column-views.89b9e542.js} +11 -18
  74. package/dist/esm/column-views.89b9e542.js.map +1 -0
  75. package/dist/esm/{column-views.1c589cc4.js → column-views.9892f825.js} +55 -4
  76. package/dist/esm/column-views.9892f825.js.map +1 -0
  77. package/dist/esm/{column-views.1edc7300.js → column-views.9b77388d.js} +6 -5
  78. package/dist/esm/column-views.9b77388d.js.map +1 -0
  79. package/dist/esm/column-views.a7c5ae16.js +25 -0
  80. package/dist/esm/column-views.a7c5ae16.js.map +1 -0
  81. package/dist/esm/{column-views.5c02fee2.js → column-views.a91dde4a.js} +10 -9
  82. package/dist/esm/column-views.a91dde4a.js.map +1 -0
  83. package/dist/esm/{column-views.fc2b4611.js → column-views.a94e99a2.js} +2 -2
  84. package/dist/esm/{column-views.fc2b4611.js.map → column-views.a94e99a2.js.map} +1 -1
  85. package/dist/esm/{column-views.e2b9c23c.css → column-views.b17f793f.css} +21 -1
  86. package/dist/esm/column-views.b17f793f.css.map +1 -0
  87. package/dist/esm/{column-views.9804efda.js → column-views.b9fe5176.js} +14 -8
  88. package/dist/esm/column-views.b9fe5176.js.map +1 -0
  89. package/dist/esm/{column-views.b2e5f1d9.js → column-views.bcffe6e5.js} +4 -4
  90. package/dist/esm/{column-views.b2e5f1d9.js.map → column-views.bcffe6e5.js.map} +1 -1
  91. package/dist/esm/{column-views.f1efcc2c.js → column-views.c25e8b32.js} +3 -3
  92. package/dist/esm/{column-views.f1efcc2c.js.map → column-views.c25e8b32.js.map} +1 -1
  93. package/dist/esm/{column-views.9ced149e.js → column-views.c32d6ad0.js} +25 -6
  94. package/dist/esm/column-views.c32d6ad0.js.map +1 -0
  95. package/dist/esm/{column-views.34636ec7.js → column-views.c71c321c.js} +11 -11
  96. package/dist/esm/column-views.c71c321c.js.map +1 -0
  97. package/dist/esm/{column-views.f2e5a72f.js → column-views.c8cc249a.js} +3 -3
  98. package/dist/esm/{column-views.f2e5a72f.js.map → column-views.c8cc249a.js.map} +1 -1
  99. package/dist/esm/{column-views.5b2635fd.js → column-views.c8e2983a.js} +4 -4
  100. package/dist/esm/{column-views.5b2635fd.js.map → column-views.c8e2983a.js.map} +1 -1
  101. package/dist/esm/{column-views.88de2cee.js → column-views.cfcf6096.js} +4 -4
  102. package/dist/esm/{column-views.88de2cee.js.map → column-views.cfcf6096.js.map} +1 -1
  103. package/dist/esm/{column-views.4c4c5bac.js → column-views.d2037465.js} +14 -8
  104. package/dist/esm/column-views.d2037465.js.map +1 -0
  105. package/dist/esm/column-views.dc42f5d0.js.map +1 -1
  106. package/dist/esm/column-views.e20f6a4b.js +124 -0
  107. package/dist/esm/column-views.e20f6a4b.js.map +1 -0
  108. package/dist/esm/{column-views.57c4ddf3.js → column-views.f08929e2.js} +2 -2
  109. package/dist/esm/column-views.f08929e2.js.map +1 -0
  110. package/dist/esm/column-views.f13a1d6e.js +37 -0
  111. package/dist/esm/column-views.f13a1d6e.js.map +1 -0
  112. package/dist/esm/column-views.f9dab157.js.map +1 -1
  113. package/dist/esm/column-views.fa19cea0.js +108 -0
  114. package/dist/esm/column-views.fa19cea0.js.map +1 -0
  115. package/dist/esm/{column-views.f71ec4b4.js → column-views.fdb0e9ec.js} +67 -30
  116. package/dist/esm/column-views.fdb0e9ec.js.map +1 -0
  117. package/dist/esm/index.d.ts +325 -296
  118. package/dist/esm/index.d.ts.map +1 -1
  119. package/dist/esm/index.js +13 -11
  120. package/dist/esm/index.js.map +1 -1
  121. package/dist/node/column-views.04407342.js +2 -0
  122. package/dist/node/column-views.04407342.js.map +1 -0
  123. package/dist/node/column-views.06951a55.js +2 -0
  124. package/dist/node/column-views.06951a55.js.map +1 -0
  125. package/dist/node/column-views.06b0534e.js +2 -0
  126. package/dist/node/column-views.06b0534e.js.map +1 -0
  127. package/dist/node/column-views.0859f5d2.js +2 -0
  128. package/dist/node/column-views.0859f5d2.js.map +1 -0
  129. package/dist/node/column-views.10a2bad6.js +2 -0
  130. package/dist/node/column-views.10a2bad6.js.map +1 -0
  131. package/dist/node/column-views.12a70e9d.js +2 -0
  132. package/dist/node/column-views.12a70e9d.js.map +1 -0
  133. package/dist/node/column-views.139b0855.js +2 -0
  134. package/dist/node/column-views.139b0855.js.map +1 -0
  135. package/dist/node/column-views.1a0b56fc.js +2 -0
  136. package/dist/node/column-views.1a0b56fc.js.map +1 -0
  137. package/dist/node/column-views.1de87649.js +2 -0
  138. package/dist/node/column-views.1de87649.js.map +1 -0
  139. package/dist/node/column-views.1e94d562.js +2 -0
  140. package/dist/node/column-views.1e94d562.js.map +1 -0
  141. package/dist/node/column-views.28609db2.css +2 -0
  142. package/dist/node/column-views.28609db2.css.map +1 -0
  143. package/dist/node/column-views.286d444d.js +2 -0
  144. package/dist/node/column-views.286d444d.js.map +1 -0
  145. package/dist/node/column-views.2877f398.js +2 -0
  146. package/dist/node/column-views.2877f398.js.map +1 -0
  147. package/dist/node/column-views.2a70b9a2.js +2 -0
  148. package/dist/node/column-views.2a70b9a2.js.map +1 -0
  149. package/dist/node/column-views.2e4e357d.js +2 -0
  150. package/dist/node/column-views.2e4e357d.js.map +1 -0
  151. package/dist/node/column-views.3345cd7a.js +2 -0
  152. package/dist/node/column-views.3345cd7a.js.map +1 -0
  153. package/dist/node/column-views.33752461.js +2 -0
  154. package/dist/node/column-views.33752461.js.map +1 -0
  155. package/dist/node/column-views.39d3a0be.js +2 -0
  156. package/dist/node/column-views.39d3a0be.js.map +1 -0
  157. package/dist/node/column-views.3a55ecd7.css +2 -0
  158. package/dist/node/column-views.3a55ecd7.css.map +1 -0
  159. package/dist/node/column-views.3bd09ad6.js +2 -0
  160. package/dist/node/column-views.3bd09ad6.js.map +1 -0
  161. package/dist/node/column-views.3cb3345e.js +2 -0
  162. package/dist/node/column-views.3cb3345e.js.map +1 -0
  163. package/dist/node/column-views.41876859.js +2 -0
  164. package/dist/node/column-views.41876859.js.map +1 -0
  165. package/dist/node/column-views.45168c80.js +2 -0
  166. package/dist/node/column-views.45168c80.js.map +1 -0
  167. package/dist/node/column-views.4e2bdf9b.js +2 -0
  168. package/dist/node/column-views.4e2bdf9b.js.map +1 -0
  169. package/dist/node/column-views.51fbed89.js +2 -0
  170. package/dist/node/column-views.51fbed89.js.map +1 -0
  171. package/dist/node/column-views.536dc54e.js +2 -0
  172. package/dist/node/column-views.536dc54e.js.map +1 -0
  173. package/dist/node/column-views.5b6833f0.js +2 -0
  174. package/dist/node/column-views.5b6833f0.js.map +1 -0
  175. package/dist/node/column-views.5c1b0eeb.css +2 -0
  176. package/dist/node/column-views.5c1b0eeb.css.map +1 -0
  177. package/dist/node/column-views.664dc6c9.js +2 -0
  178. package/dist/node/column-views.664dc6c9.js.map +1 -0
  179. package/dist/node/column-views.6a0a35e7.js +2 -0
  180. package/dist/node/column-views.6a0a35e7.js.map +1 -0
  181. package/dist/node/column-views.6a4c2100.css +2 -0
  182. package/dist/node/column-views.6a4c2100.css.map +1 -0
  183. package/dist/node/column-views.6a9da051.js +2 -0
  184. package/dist/node/column-views.6a9da051.js.map +1 -0
  185. package/dist/node/column-views.6b441349.js +2 -0
  186. package/dist/node/column-views.6b441349.js.map +1 -0
  187. package/dist/node/column-views.6b6b756b.js +2 -0
  188. package/dist/node/column-views.6b6b756b.js.map +1 -0
  189. package/dist/node/column-views.6bba8c57.js +2 -0
  190. package/dist/node/column-views.6bba8c57.js.map +1 -0
  191. package/dist/node/column-views.6da49480.js +2 -0
  192. package/dist/node/column-views.6da49480.js.map +1 -0
  193. package/dist/node/column-views.7350ac73.js +2 -0
  194. package/dist/node/column-views.7350ac73.js.map +1 -0
  195. package/dist/node/column-views.755f726e.js +2 -0
  196. package/dist/node/column-views.755f726e.js.map +1 -0
  197. package/dist/node/column-views.770d2c95.js +2 -0
  198. package/dist/node/column-views.770d2c95.js.map +1 -0
  199. package/dist/node/column-views.78d3f3c5.js +2 -0
  200. package/dist/node/column-views.78d3f3c5.js.map +1 -0
  201. package/dist/node/column-views.7b9bd06e.css +2 -0
  202. package/dist/node/column-views.7b9bd06e.css.map +1 -0
  203. package/dist/node/column-views.7d45bbeb.js +2 -0
  204. package/dist/node/column-views.7d45bbeb.js.map +1 -0
  205. package/dist/node/column-views.82cf7c0d.js +2 -0
  206. package/dist/node/column-views.82cf7c0d.js.map +1 -0
  207. package/dist/node/column-views.869c7199.js +2 -0
  208. package/dist/node/column-views.869c7199.js.map +1 -0
  209. package/dist/node/column-views.8c00beb4.js +2 -0
  210. package/dist/node/column-views.8c00beb4.js.map +1 -0
  211. package/dist/node/column-views.8cfed88b.js +2 -0
  212. package/dist/node/column-views.8cfed88b.js.map +1 -0
  213. package/dist/node/column-views.8f54691f.js +2 -0
  214. package/dist/node/column-views.8f54691f.js.map +1 -0
  215. package/dist/node/column-views.95411f1b.js +2 -0
  216. package/dist/node/column-views.95411f1b.js.map +1 -0
  217. package/dist/node/column-views.9cb13e51.css +2 -0
  218. package/dist/node/column-views.9cb13e51.css.map +1 -0
  219. package/dist/node/column-views.a025fbe3.js +2 -0
  220. package/dist/node/column-views.a025fbe3.js.map +1 -0
  221. package/dist/node/column-views.a0aac838.js +2 -0
  222. package/dist/node/column-views.a0aac838.js.map +1 -0
  223. package/dist/node/column-views.a501cea0.js +2 -0
  224. package/dist/node/column-views.a501cea0.js.map +1 -0
  225. package/dist/node/column-views.a8ffe072.js +2 -0
  226. package/dist/node/column-views.a8ffe072.js.map +1 -0
  227. package/dist/node/column-views.aff245a8.js +2 -0
  228. package/dist/node/column-views.aff245a8.js.map +1 -0
  229. package/dist/node/column-views.b169b4b5.css +2 -0
  230. package/dist/node/column-views.b169b4b5.css.map +1 -0
  231. package/dist/node/column-views.b773edb8.js +2 -0
  232. package/dist/node/column-views.b773edb8.js.map +1 -0
  233. package/dist/node/column-views.c968a185.css +2 -0
  234. package/dist/node/column-views.c968a185.css.map +1 -0
  235. package/dist/node/column-views.cd3c430b.js +2 -0
  236. package/dist/node/column-views.cd3c430b.js.map +1 -0
  237. package/dist/node/column-views.cd468adb.css +2 -0
  238. package/dist/node/column-views.cd468adb.css.map +1 -0
  239. package/dist/node/column-views.cdcce702.js +2 -0
  240. package/dist/node/column-views.cdcce702.js.map +1 -0
  241. package/dist/node/column-views.ce6808fe.js +2 -0
  242. package/dist/node/column-views.ce6808fe.js.map +1 -0
  243. package/dist/node/column-views.cf90f63d.js +2 -0
  244. package/dist/node/column-views.cf90f63d.js.map +1 -0
  245. package/dist/node/column-views.d6708353.js +2 -0
  246. package/dist/node/column-views.d6708353.js.map +1 -0
  247. package/dist/node/column-views.d9bbd6fb.css +2 -0
  248. package/dist/node/column-views.d9bbd6fb.css.map +1 -0
  249. package/dist/node/column-views.e6720522.js +2 -0
  250. package/dist/node/column-views.e6720522.js.map +1 -0
  251. package/dist/node/column-views.e7e26765.js +2 -0
  252. package/dist/node/column-views.e7e26765.js.map +1 -0
  253. package/dist/node/column-views.e9515ec1.js +2 -0
  254. package/dist/node/column-views.e9515ec1.js.map +1 -0
  255. package/dist/node/column-views.ebb44b7d.js +2 -0
  256. package/dist/node/column-views.ebb44b7d.js.map +1 -0
  257. package/dist/node/column-views.ecc2394a.js +2 -0
  258. package/dist/node/column-views.ecc2394a.js.map +1 -0
  259. package/dist/node/column-views.eea80478.js +2 -0
  260. package/dist/node/column-views.eea80478.js.map +1 -0
  261. package/dist/node/column-views.f7315cbc.css +2 -0
  262. package/dist/node/column-views.f7315cbc.css.map +1 -0
  263. package/dist/node/column-views.f76ba19f.js +2 -0
  264. package/dist/node/column-views.f76ba19f.js.map +1 -0
  265. package/dist/node/column-views.fdaa2963.js +2 -0
  266. package/dist/node/column-views.fdaa2963.js.map +1 -0
  267. package/dist/node/column-views.fea32686.js +2 -0
  268. package/dist/node/column-views.fea32686.js.map +1 -0
  269. package/dist/node/index.js +1 -1
  270. package/dist/node/index.js.map +1 -1
  271. package/package.json +16 -15
  272. package/src/age-axis.module.sass +20 -0
  273. package/src/age-axis.ts +25 -3
  274. package/src/age-model-overlay.ts +2 -2
  275. package/src/column.module.sass +3 -3
  276. package/src/column.ts +92 -19
  277. package/src/correlation-chart/main.ts +25 -12
  278. package/src/correlation-chart/prepare-data.ts +6 -6
  279. package/src/correlation-chart/stories/correlation-chart.stories.ts +12 -6
  280. package/src/data-provider/base.ts +20 -11
  281. package/src/data-provider/column-nav.ts +2 -2
  282. package/src/data-provider/fetch.ts +9 -9
  283. package/src/data-provider/store.ts +15 -10
  284. package/src/{carbon-isotopes → facets/carbon-isotopes}/data-area.ts +5 -4
  285. package/src/{carbon-isotopes → facets/carbon-isotopes}/index.ts +0 -1
  286. package/src/facets/carbon-isotopes/isotopes-column.module.sass +31 -0
  287. package/src/{carbon-isotopes → facets/carbon-isotopes}/isotopes-column.ts +119 -87
  288. package/src/facets/detrital-zircon/index.module.sass +22 -0
  289. package/src/facets/detrital-zircon/index.ts +132 -0
  290. package/src/facets/detrital-zircon/provider.ts +51 -0
  291. package/src/facets/fossils/index.module.sass +14 -0
  292. package/src/facets/fossils/index.ts +120 -0
  293. package/src/facets/fossils/provider.ts +80 -0
  294. package/src/facets/index.ts +3 -0
  295. package/src/index.ts +2 -1
  296. package/src/maps/_shared/inset-map.stories.ts +1 -1
  297. package/src/maps/_shared/inset-map.ts +2 -2
  298. package/src/maps/_shared/styles.ts +3 -1
  299. package/src/maps/column-correlation/column-correlation-map.stories.ts +3 -3
  300. package/src/maps/column-correlation/core.ts +17 -26
  301. package/src/maps/column-correlation/state.ts +9 -9
  302. package/src/maps/column-navigation/mapbox/column-navigation-map.stories.ts +177 -1
  303. package/src/maps/column-navigation/mapbox/index.ts +18 -15
  304. package/src/maps/column-navigation/mapbox/keyboard-navigation.ts +4 -4
  305. package/src/maps/column-navigation/mapbox/state.ts +16 -6
  306. package/src/maps/column-navigation/svg/animated.ts +2 -2
  307. package/src/maps/column-navigation/svg/column-navigation-svg-map.stories.ts +2 -2
  308. package/src/maps/column-navigation/svg/index.ts +2 -4
  309. package/src/maps/column-navigation/svg/layers.ts +5 -7
  310. package/src/maps/column-navigation/utils/keyboard-navigation.ts +1 -1
  311. package/src/notes.ts +49 -0
  312. package/src/prepare-units/composite-scale.ts +73 -25
  313. package/src/prepare-units/helpers.ts +78 -13
  314. package/src/prepare-units/index.ts +17 -17
  315. package/src/prepare-units/utils.ts +7 -7
  316. package/src/section.ts +8 -8
  317. package/src/unit-details/panel.ts +100 -17
  318. package/src/unit-details/popover.ts +5 -5
  319. package/src/units/boxes.ts +20 -10
  320. package/src/units/colors.ts +12 -5
  321. package/src/units/composite.ts +16 -11
  322. package/src/units/index.ts +77 -10
  323. package/src/units/names.ts +19 -16
  324. package/src/units/resolvers.ts +3 -0
  325. package/src/units/selection.ts +44 -11
  326. package/src/units/types.ts +2 -0
  327. package/dist/esm/column-views.062d164a.js +0 -86
  328. package/dist/esm/column-views.062d164a.js.map +0 -1
  329. package/dist/esm/column-views.07521ce6.js +0 -25
  330. package/dist/esm/column-views.07521ce6.js.map +0 -1
  331. package/dist/esm/column-views.1c589cc4.js.map +0 -1
  332. package/dist/esm/column-views.1ece326b.js.map +0 -1
  333. package/dist/esm/column-views.1edc7300.js.map +0 -1
  334. package/dist/esm/column-views.240ef158.css.map +0 -1
  335. package/dist/esm/column-views.28ee5f43.js.map +0 -1
  336. package/dist/esm/column-views.30646469.js.map +0 -1
  337. package/dist/esm/column-views.33dbc778.js.map +0 -1
  338. package/dist/esm/column-views.343b5aa2.js +0 -98
  339. package/dist/esm/column-views.343b5aa2.js.map +0 -1
  340. package/dist/esm/column-views.34636ec7.js.map +0 -1
  341. package/dist/esm/column-views.3bec70d6.js.map +0 -1
  342. package/dist/esm/column-views.3f4db8cb.js +0 -117
  343. package/dist/esm/column-views.3f4db8cb.js.map +0 -1
  344. package/dist/esm/column-views.40c1f361.js.map +0 -1
  345. package/dist/esm/column-views.4c4c5bac.js.map +0 -1
  346. package/dist/esm/column-views.57c4ddf3.js.map +0 -1
  347. package/dist/esm/column-views.5c02fee2.js.map +0 -1
  348. package/dist/esm/column-views.650bd9f5.js.map +0 -1
  349. package/dist/esm/column-views.68409161.js.map +0 -1
  350. package/dist/esm/column-views.86c4b36f.js.map +0 -1
  351. package/dist/esm/column-views.8dd877af.js.map +0 -1
  352. package/dist/esm/column-views.8e51206e.js.map +0 -1
  353. package/dist/esm/column-views.94b5cca1.js +0 -34
  354. package/dist/esm/column-views.94b5cca1.js.map +0 -1
  355. package/dist/esm/column-views.9804efda.js.map +0 -1
  356. package/dist/esm/column-views.9ced149e.js.map +0 -1
  357. package/dist/esm/column-views.a7be0a4a.css +0 -157
  358. package/dist/esm/column-views.a7be0a4a.css.map +0 -1
  359. package/dist/esm/column-views.aa9fcdba.js.map +0 -1
  360. package/dist/esm/column-views.ac9fb5e1.js +0 -163
  361. package/dist/esm/column-views.ac9fb5e1.js.map +0 -1
  362. package/dist/esm/column-views.c58aad3f.js +0 -88
  363. package/dist/esm/column-views.c58aad3f.js.map +0 -1
  364. package/dist/esm/column-views.d1ad48eb.js +0 -11
  365. package/dist/esm/column-views.d1ad48eb.js.map +0 -1
  366. package/dist/esm/column-views.dff52504.js.map +0 -1
  367. package/dist/esm/column-views.e2b9c23c.css.map +0 -1
  368. package/dist/esm/column-views.e77b9d6b.js.map +0 -1
  369. package/dist/esm/column-views.ea237aa8.js.map +0 -1
  370. package/dist/esm/column-views.f71ec4b4.js.map +0 -1
  371. package/dist/esm/column-views.fa6f3292.js.map +0 -1
  372. package/src/carbon-isotopes/column.module.sass +0 -136
  373. package/src/carbon-isotopes/column.ts +0 -133
  374. package/src/carbon-isotopes/core.ts +0 -81
  375. /package/src/{carbon-isotopes → facets/carbon-isotopes}/data-provider.ts +0 -0
@@ -1,3 +1,2 @@
1
1
  export * from "./isotopes-column";
2
2
  export * from "./data-provider";
3
- export * from "./core";
@@ -0,0 +1,31 @@
1
+ .isotopes-column
2
+ position: relative
3
+
4
+ .isotopes-scale-axis
5
+ position: sticky
6
+ bottom: 0
7
+ left: 0
8
+ pointer-events: none
9
+ margin-top: -45px
10
+ height: 45px
11
+
12
+ svg
13
+ background-color: var(--column-background-color)
14
+
15
+ path, line
16
+ stroke: var(--column-text-color)
17
+ fill: none
18
+
19
+ text
20
+ fill: var(--column-text-color)
21
+
22
+ .scale-lines
23
+ .tick
24
+ &.zero
25
+ line
26
+ stroke-width: 1px
27
+ stroke-dasharray: none
28
+ line
29
+ stroke: var(--column-text-color)
30
+ stroke-dasharray: 1 4
31
+
@@ -1,6 +1,5 @@
1
- import { format } from "d3-format";
2
- import { useContext } from "react";
3
- import h from "@macrostrat/hyper";
1
+ import { useMemo } from "react";
2
+ import hyper from "@macrostrat/hyper";
4
3
  import classNames from "classnames";
5
4
  import { AxisBottom } from "@visx/axis";
6
5
  import { useMeasurementData } from "./data-provider";
@@ -12,14 +11,18 @@ import {
12
11
  } from "./data-area";
13
12
  import { referenceMeasuresToColumn } from "@macrostrat/stratigraphy-utils";
14
13
  import {
15
- CrossAxisLayoutProvider,
16
- ColumnLayoutContext,
17
- useColumnDivisions,
14
+ SVG,
15
+ ColumnLayoutProvider,
16
+ useColumnLayout,
18
17
  } from "@macrostrat/column-components";
19
- import { BaseUnit } from "@macrostrat/api-types";
20
- import { AxisProps } from "@visx/axis/lib/axis/Axis";
18
+ import {
19
+ useMacrostratColumnData,
20
+ useMacrostratUnits,
21
+ } from "../../data-provider";
22
+ import styles from "./isotopes-column.module.sass";
23
+ import { scaleLinear } from "d3-scale";
21
24
 
22
- const fmt = format(".1f");
25
+ const h = hyper.styled(styles);
23
26
 
24
27
  type IsotopesTextProps = {
25
28
  datum: any;
@@ -36,64 +39,10 @@ function IsotopeText({ datum, text, ...rest }: IsotopesTextProps) {
36
39
  y,
37
40
  ...rest,
38
41
  },
39
- text
42
+ text,
40
43
  );
41
44
  }
42
45
 
43
- function ColumnScale(props) {
44
- const {
45
- label,
46
- showAxis = true,
47
- nTicks = 6,
48
- tickValues: _tickVals,
49
- ...rest
50
- } = props;
51
- const { xScale, pixelHeight, width } = useContext(ColumnLayoutContext);
52
-
53
- const tickValues = _tickVals ?? xScale.ticks(nTicks);
54
-
55
- return h("g.scale.isotope-scale-axis", [
56
- h(
57
- "g.scale-lines",
58
- tickValues.map((value) => {
59
- const strokeDasharray = value == 0 ? null : "2 6";
60
- return h(ScaleLine, { value, stroke: "#ddd", strokeDasharray });
61
- })
62
- ),
63
- h.if(showAxis)([
64
- h("rect.underlay", {
65
- x: 0,
66
- y: pixelHeight,
67
- width,
68
- height: 30,
69
- }),
70
- h(AxisBottom, {
71
- scale: xScale,
72
- tickLength: 3,
73
- tickValues,
74
- ...rest,
75
- top: pixelHeight,
76
- tickLabelProps(tickValue, i) {
77
- // Compensate for negative sign
78
- let dx;
79
- if (tickValue < 0) {
80
- dx = -2;
81
- }
82
- return {
83
- dy: "-1px",
84
- dx,
85
- fontSize: 10,
86
- textAnchor: "middle",
87
- fill: "#aaa",
88
- };
89
- },
90
- labelOffset: 0,
91
- label,
92
- }),
93
- ]),
94
- ]);
95
- }
96
-
97
46
  interface ScaleLineProps {
98
47
  value: number;
99
48
  className?: string;
@@ -105,19 +54,27 @@ interface ScaleLineProps {
105
54
 
106
55
  function ScaleLine(props: ScaleLineProps) {
107
56
  let { value, className, labelBottom, labelOffset, ...rest } = props;
108
- if (labelBottom == null) {
109
- labelBottom = false;
110
- }
111
- if (labelOffset == null) {
112
- labelOffset = 12;
113
- }
114
- const { xScale, pixelHeight } = useContext(ColumnLayoutContext);
57
+ const { sections } = useMacrostratColumnData();
58
+
59
+ const { xScale } = useColumnLayout();
115
60
  const x = xScale(value);
116
61
  const transform = `translate(${x})`;
117
62
  className = classNames(className, { zero: value === 0 });
118
63
  return h("g.tick", { transform, className, key: value }, [
119
- h("line", { x0: 0, x1: 0, y0: 0, y1: pixelHeight, ...rest }),
120
- h.if(labelBottom)("text", { y: pixelHeight + labelOffset }, `${value}`),
64
+ h(
65
+ "g.tick-lines",
66
+ sections.map((d) => {
67
+ const { scaleInfo } = d;
68
+ const y1 = scaleInfo.offset;
69
+ const y2 = y1 + scaleInfo.pixelHeight;
70
+ return h("line", {
71
+ y1,
72
+ y2,
73
+ strokeDasharray: props.strokeDasharray,
74
+ strokeWidth: 1,
75
+ });
76
+ }),
77
+ ),
121
78
  ]);
122
79
  }
123
80
 
@@ -151,16 +108,20 @@ interface IsotopeColumnProps extends IsotopesDatasetProps {
151
108
  domain: [number, number];
152
109
  transform?: string;
153
110
  getHeight?: Function;
111
+ nTicks?: number;
112
+ showAxis?: boolean;
154
113
  }
155
114
 
156
115
  function IsotopesDataset(props) {
157
116
  const { parameter, color = "dodgerblue" } = props;
158
- const divisions: BaseUnit[] = useColumnDivisions() as any;
117
+ const units = useMacrostratUnits();
159
118
  const measures = useMeasurementData() ?? [];
160
- const refMeasures = referenceMeasuresToColumn(divisions, measures).filter(
161
- (d) => d.measurement == parameter
162
- );
163
- const points = unnestPoints(refMeasures);
119
+
120
+ const points = useMemo(() => {
121
+ const data = measures.filter((d) => d.measurement === parameter);
122
+ const refMeasures = referenceMeasuresToColumn(units, data);
123
+ return unnestPoints(refMeasures);
124
+ }, [measures, parameter, units]);
164
125
 
165
126
  return h(
166
127
  IsotopesDataArea,
@@ -176,13 +137,13 @@ function IsotopesDataset(props) {
176
137
  datum: d,
177
138
  fill: color,
178
139
  });
179
- })
180
- )
140
+ }),
141
+ ),
181
142
  );
182
143
  }
183
144
 
184
145
  function IsotopesColumn(
185
- props: IsotopeColumnProps & { children?: React.ReactNode } & AxisProps<any>
146
+ props: IsotopeColumnProps & { children?: React.ReactNode },
186
147
  ) {
187
148
  const {
188
149
  width = 120,
@@ -193,21 +154,92 @@ function IsotopesColumn(
193
154
  children = null,
194
155
  transform,
195
156
  getHeight,
157
+ showAxis = true,
158
+ tickValues: _tickVals,
159
+ nTicks = 6,
196
160
  ...rest
197
161
  } = props;
198
162
 
163
+ const { totalHeight } = useMacrostratColumnData();
164
+
199
165
  let _children: any = children;
200
166
  if (children == null && parameter != null) {
201
167
  _children = h(IsotopesDataset, { parameter, color, getHeight });
202
168
  }
203
169
 
170
+ const xScale = useMemo(
171
+ () => scaleLinear().domain(domain).range([0, width]),
172
+ [domain, width],
173
+ );
174
+
175
+ const tickValues = _tickVals ?? xScale.ticks(nTicks);
176
+
177
+ return h("div.isotopes-column", [
178
+ h(
179
+ SVG,
180
+ {
181
+ height: totalHeight,
182
+ innerWidth: width,
183
+ paddingH: 15,
184
+ },
185
+ h(
186
+ ColumnLayoutProvider,
187
+ { width, xScale },
188
+ h("g.isotopes-column", { className: parameter, transform }, [
189
+ h(ColumnScaleLines, {
190
+ xScale,
191
+ tickValues,
192
+ width,
193
+ ...rest,
194
+ }),
195
+ _children,
196
+ ]),
197
+ ),
198
+ ),
199
+ h.if(showAxis)(ColumnScaleAxis, {
200
+ width,
201
+ label: label ?? parameter,
202
+ xScale,
203
+ tickValues,
204
+ ...rest,
205
+ }),
206
+ ]);
207
+ }
208
+
209
+ function ColumnScaleAxis(props) {
210
+ const { label, xScale, width, showAxis = true, tickValues, ...rest } = props;
211
+
212
+ return h("div.isotopes-scale-axis", [
213
+ h(
214
+ SVG,
215
+ {
216
+ innerWidth: width,
217
+ height: 45,
218
+ paddingH: 15,
219
+ },
220
+ [
221
+ h(AxisBottom, {
222
+ scale: xScale,
223
+ tickLength: 5,
224
+ tickValues,
225
+ stroke: "var(--column-stroke-color)",
226
+ tickStroke: "var(--column-stroke-color)",
227
+ ...rest,
228
+ label,
229
+ }),
230
+ ],
231
+ ),
232
+ ]);
233
+ }
234
+
235
+ function ColumnScaleLines(props) {
236
+ const { tickValues, xScale } = props;
237
+
204
238
  return h(
205
- CrossAxisLayoutProvider,
206
- { width, domain },
207
- h("g.isotopes-column", { className: parameter, transform }, [
208
- h(ColumnScale, { label: label ?? parameter, ...rest }),
209
- _children,
210
- ])
239
+ "g.scale-lines",
240
+ tickValues.map((value) => {
241
+ return h(ScaleLine, { value });
242
+ }),
211
243
  );
212
244
  }
213
245
 
@@ -0,0 +1,22 @@
1
+
2
+ .depositional-age
3
+ fill: var(--column-stroke-color)
4
+ fill-opacity: 0.25
5
+ stroke-width: 1px
6
+ stroke: var(--column-stroke-color)
7
+
8
+ .detrital-group
9
+ margin: -5px
10
+ margin-left: -10px
11
+ margin-bottom: -36px
12
+
13
+ &.hide-axis :global .visx-axis
14
+ tspan, text
15
+ display: none
16
+
17
+ .dz-spectra
18
+ position: relative
19
+
20
+ .floating-axis
21
+ position: sticky
22
+ bottom: 0
@@ -0,0 +1,132 @@
1
+ import {
2
+ DetritalSpectrumPlot,
3
+ DetritalSeries,
4
+ usePlotArea,
5
+ } from "@macrostrat/data-components";
6
+ import { IUnit } from "../../units/types";
7
+ import hyper from "@macrostrat/hyper";
8
+ import { useDetritalMeasurements, MeasurementInfo } from "./provider";
9
+ import { useMacrostratUnits } from "../../data-provider";
10
+ import { ColumnNotes } from "../../notes";
11
+ import { useMemo } from "react";
12
+ import styles from "./index.module.sass";
13
+ import classNames from "classnames";
14
+
15
+ const h = hyper.styled(styles);
16
+
17
+ interface DetritalItemProps {
18
+ note: {
19
+ data: MeasurementInfo[];
20
+ unit?: IUnit;
21
+ };
22
+ spacing?: {
23
+ below?: number;
24
+ above?: number;
25
+ };
26
+ width?: number;
27
+ height?: number;
28
+ color?: string;
29
+ }
30
+
31
+ function DepositionalAge({ unit }) {
32
+ const { xScale, height } = usePlotArea();
33
+
34
+ const { t_age, b_age } = unit;
35
+ const x = xScale(t_age);
36
+ const x1 = xScale(b_age);
37
+
38
+ return h("rect.depositional-age", { x, width: x1 - x, y: 0, height });
39
+ }
40
+
41
+ function DetritalGroup(props: DetritalItemProps) {
42
+ const { note, width, height, color, spacing } = props;
43
+ const { data, unit } = note;
44
+ const { geo_unit } = data[0];
45
+
46
+ const _color = color;
47
+
48
+ const spaceBelow = spacing?.below ?? 100;
49
+ const hideAxisLabels = spaceBelow < 60;
50
+
51
+ return h(
52
+ "div.detrital-group",
53
+ { className: classNames({ "hide-axis": hideAxisLabels }) },
54
+ [
55
+ h(
56
+ DetritalSpectrumPlot,
57
+ { width, innerHeight: height, showAxisLabels: true, paddingBottom: 40 },
58
+ [
59
+ h.if(unit != null)(DepositionalAge, { unit }),
60
+ data.map((d) => {
61
+ return h(DetritalSeries, {
62
+ bandwidth: 20,
63
+ data: d.measure_value,
64
+ color: _color,
65
+ });
66
+ }),
67
+ ],
68
+ ),
69
+ ],
70
+ );
71
+ }
72
+
73
+ const matchingUnit = (dz) => (d) => d.unit_id == dz[0].unit_id;
74
+
75
+ function DetritalColumn({ columnID, color = "magenta" }) {
76
+ const data = useDetritalMeasurements({ col_id: columnID });
77
+ const units = useMacrostratUnits();
78
+
79
+ const notes: any[] = useMemo(() => {
80
+ if (data == null || units == null) return [];
81
+ let dzUnitData = Array.from(data.values());
82
+ dzUnitData.sort((a, b) => {
83
+ const v1 = units.findIndex(matchingUnit(a));
84
+ const v2 = units.findIndex(matchingUnit(b));
85
+ return v1 - v2;
86
+ });
87
+
88
+ const data1 = dzUnitData.map((d) => {
89
+ const unit = units.find(matchingUnit(d));
90
+ return {
91
+ top_height: unit?.t_age,
92
+ height: unit?.b_age,
93
+ data: d,
94
+ unit,
95
+ id: unit?.unit_id,
96
+ };
97
+ });
98
+
99
+ return data1.filter((d) => d.unit != null);
100
+ }, [data, units]);
101
+
102
+ const width = 400;
103
+ const paddingLeft = 40;
104
+
105
+ const spectrumWidth = width - paddingLeft;
106
+
107
+ const noteComponent = useMemo(() => {
108
+ return (props) => {
109
+ return h(DetritalGroup, {
110
+ width: spectrumWidth,
111
+ height: 40,
112
+ color,
113
+ ...props,
114
+ });
115
+ };
116
+ }, [width, color]);
117
+
118
+ if (data == null || units == null) return null;
119
+
120
+ return h(
121
+ "div.dz-spectra",
122
+ h(ColumnNotes, {
123
+ width,
124
+ paddingLeft,
125
+ notes,
126
+ noteComponent,
127
+ deltaConnectorAttachment: 20,
128
+ }),
129
+ );
130
+ }
131
+
132
+ export { DetritalColumn, DetritalGroup };
@@ -0,0 +1,51 @@
1
+ import { group } from "d3-array";
2
+ import { useAPIResult } from "@macrostrat/ui-components";
3
+
4
+ export interface MeasurementInfo {
5
+ measurement_id: number;
6
+ measuremeta_id: number;
7
+ measurement: string;
8
+ measure_units: string;
9
+ measure_phase: string;
10
+ method: string;
11
+ n: number;
12
+ ref_id: number;
13
+ sample_name: string;
14
+ geo_unit: string;
15
+ samp_lith: string;
16
+ samp_lith_id: number;
17
+ samp_desc: string;
18
+ samp_age: string;
19
+ lat: number;
20
+ lng: number;
21
+ unit_id: number;
22
+ unit_rel_pos?: any;
23
+ col_id: number;
24
+ strat_name_id: number;
25
+ match_basis: string;
26
+ ref: string;
27
+ measure_value: number[];
28
+ measure_error: number[];
29
+ measure_position: any[];
30
+ measure_n: number[];
31
+ sample_no: string[];
32
+ error_units: string;
33
+ }
34
+
35
+ export function useDetritalMeasurements(columnArgs) {
36
+ const params = {
37
+ ...columnArgs,
38
+ measure_phase: "zircon",
39
+ response: "long",
40
+ show_values: true,
41
+ // Other isotope systems are organized separately
42
+ measurement: "207Pb-206Pb",
43
+ };
44
+ const res: MeasurementInfo[] = useAPIResult(
45
+ "/measurements",
46
+ params,
47
+ columnArgs,
48
+ );
49
+ if (res == null) return null;
50
+ return group(res, (d) => d.unit_id);
51
+ }
@@ -0,0 +1,14 @@
1
+ .fossil-collections
2
+ padding-left: 0.2em
3
+ font-size: 0.9em
4
+ list-style: none
5
+ border-left: 1px solid var(--column-stroke-color)
6
+ margin: 1px 0
7
+ li
8
+ display: inline
9
+ &:not(:last-child):after
10
+ content: ", "
11
+ color: var(--secondary-color)
12
+ li.too-many
13
+ color: var(--secondary-color)
14
+ font-style: italic
@@ -0,0 +1,120 @@
1
+ import { getUnitHeightRange } from "../../prepare-units";
2
+ import { useMacrostratColumnData } from "../../data-provider";
3
+ import hyper from "@macrostrat/hyper";
4
+ import { PBDBCollection, useFossilData } from "./provider";
5
+ import { useMacrostratUnits } from "../../data-provider";
6
+ import { ColumnNotes } from "../../notes";
7
+ import { useMemo } from "react";
8
+ import type { IUnit } from "../../units";
9
+ import styles from "./index.module.sass";
10
+
11
+ const h = hyper.styled(styles);
12
+
13
+ interface FossilItemProps {
14
+ note: {
15
+ data: PBDBCollection[];
16
+ unit?: IUnit;
17
+ };
18
+ spacing?: {
19
+ below?: number;
20
+ above?: number;
21
+ };
22
+ width?: number;
23
+ height?: number;
24
+ color?: string;
25
+ }
26
+
27
+ function FossilInfo(props: FossilItemProps) {
28
+ const { note, spacing } = props;
29
+ const { data, unit } = note;
30
+
31
+ let d1 = data;
32
+
33
+ let tooMany = null;
34
+ if (data.length > 5) {
35
+ const n = data.length - 5;
36
+ d1 = data.slice(0, 5);
37
+ tooMany = h("li.too-many", `and ${n} more`);
38
+ }
39
+
40
+ return h("ul.fossil-collections", [
41
+ d1.map((d) => {
42
+ return h("li.collection", { key: d.cltn_id }, [
43
+ h(PBDBCollectionLink, { collection: d }),
44
+ ]);
45
+ }),
46
+ tooMany,
47
+ ]);
48
+ }
49
+
50
+ function PBDBCollectionLink({ collection }: { collection: PBDBCollection }) {
51
+ return h(
52
+ "a.link-id",
53
+ {
54
+ href: `https://paleobiodb.org/classic/basicCollectionSearch?collection_no=${collection.cltn_id}`,
55
+ },
56
+ collection.cltn_name,
57
+ );
58
+ }
59
+
60
+ const matchingUnit = (dz) => (d) => d.unit_id == dz.unit_id;
61
+
62
+ export function PBDBFossilsColumn({ columnID, color = "magenta" }) {
63
+ const data = useFossilData({ col_id: columnID });
64
+ const { axisType, units } = useMacrostratColumnData();
65
+
66
+ const notes: any[] = useMemo(() => {
67
+ if (data == null || units == null) return [];
68
+ let unitRefData = Array.from(data.values())
69
+ .map((d) => {
70
+ return {
71
+ data: d,
72
+ unit: units.find(matchingUnit(d[0])),
73
+ };
74
+ })
75
+ .filter((d) => d.unit != null);
76
+
77
+ unitRefData.sort((a, b) => {
78
+ const v1 = units.indexOf(a.unit);
79
+ const v2 = units.indexOf(b.unit);
80
+ return v1 - v2;
81
+ });
82
+
83
+ return unitRefData.map((d) => {
84
+ const { unit, data } = d;
85
+ const heightRange = getUnitHeightRange(unit, axisType);
86
+
87
+ return {
88
+ top_height: heightRange[1],
89
+ height: heightRange[0],
90
+ data,
91
+ unit,
92
+ id: unit.unit_id,
93
+ };
94
+ });
95
+ }, [data, units]);
96
+
97
+ const width = 500;
98
+ const paddingLeft = 40;
99
+
100
+ const noteComponent = useMemo(() => {
101
+ return (props) => {
102
+ return h(FossilInfo, {
103
+ color,
104
+ ...props,
105
+ });
106
+ };
107
+ }, [width, color]);
108
+
109
+ if (data == null || units == null) return null;
110
+
111
+ return h(
112
+ "div.dz-spectra",
113
+ h(ColumnNotes, {
114
+ width,
115
+ paddingLeft,
116
+ notes,
117
+ noteComponent,
118
+ }),
119
+ );
120
+ }