@macrostrat/column-views 2.0.0 → 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 (539) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/esm/{resolvers.36013b49.js → column-views.006d5180.js} +5 -2
  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/{popover.module.c4d6bfb0.css → column-views.16cc7a58.css} +1 -1
  13. package/dist/esm/{popover.module.c4d6bfb0.css.map → column-views.16cc7a58.css.map} +1 -1
  14. package/dist/esm/{selection.f5b0297e.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/{store.c4d7a8a4.js → column-views.1e055ed5.js} +6 -5
  19. package/dist/esm/column-views.1e055ed5.js.map +1 -0
  20. package/dist/esm/column-views.210514ec.js +11 -0
  21. package/dist/esm/column-views.210514ec.js.map +1 -0
  22. package/dist/esm/{column.module.a67a6b4c.css → column-views.217078ab.css} +4 -3
  23. package/dist/esm/column-views.217078ab.css.map +1 -0
  24. package/dist/esm/{panel.module.3d2ea3c6.css → column-views.25471fe0.css} +1 -1
  25. package/dist/esm/{panel.module.3d2ea3c6.css.map → column-views.25471fe0.css.map} +1 -1
  26. package/dist/esm/column-views.2c43c055.js +156 -0
  27. package/dist/esm/column-views.2c43c055.js.map +1 -0
  28. package/dist/esm/column-views.2c45a7b5.js +25 -0
  29. package/dist/esm/column-views.2c45a7b5.js.map +1 -0
  30. package/dist/esm/column-views.2ca34210.js +151 -0
  31. package/dist/esm/column-views.2ca34210.js.map +1 -0
  32. package/dist/esm/{unit-details.071cefed.js → column-views.2cb87813.js} +4 -4
  33. package/dist/esm/{unit-details.071cefed.js.map → column-views.2cb87813.js.map} +1 -1
  34. package/dist/esm/{mapbox.cac42eed.js → column-views.2d8e0e0f.js} +10 -9
  35. package/dist/esm/column-views.2d8e0e0f.js.map +1 -0
  36. package/dist/esm/column-views.3048acc1.js +66 -0
  37. package/dist/esm/column-views.3048acc1.js.map +1 -0
  38. package/dist/esm/column-views.3199d35a.css +61 -0
  39. package/dist/esm/column-views.3199d35a.css.map +1 -0
  40. package/dist/esm/{main.module.3dd9500b.css → column-views.338a7a83.css} +1 -1
  41. package/dist/esm/{main.module.3dd9500b.css.map → column-views.338a7a83.css.map} +1 -1
  42. package/dist/esm/{age-model-overlay.module.cd985dcb.js → column-views.3465c8ad.js} +1 -1
  43. package/dist/esm/{age-model-overlay.module.cd985dcb.js.map → column-views.3465c8ad.js.map} +1 -1
  44. package/dist/esm/column-views.34a52db7.js +31 -0
  45. package/dist/esm/column-views.34a52db7.js.map +1 -0
  46. package/dist/esm/{utils.d7a43a2a.js → column-views.39657bbf.js} +1 -1
  47. package/dist/esm/column-views.39657bbf.js.map +1 -0
  48. package/dist/esm/column-views.3b972a9b.css +4 -0
  49. package/dist/esm/{composite.module.69a38fd1.css.map → column-views.3b972a9b.css.map} +1 -1
  50. package/dist/esm/{base.910b80b4.js → column-views.3ba9213d.js} +16 -5
  51. package/dist/esm/column-views.3ba9213d.js.map +1 -0
  52. package/dist/esm/{inset-map.3c18106d.js → column-views.3de4dc43.js} +1 -1
  53. package/dist/esm/{inset-map.3c18106d.js.map → column-views.3de4dc43.js.map} +1 -1
  54. package/dist/esm/column-views.403a7b48.css +24 -0
  55. package/dist/esm/column-views.403a7b48.css.map +1 -0
  56. package/dist/esm/{composite.module.0638e7ee.js → column-views.40cd59b5.js} +1 -1
  57. package/dist/esm/{composite.module.0638e7ee.js.map → column-views.40cd59b5.js.map} +1 -1
  58. package/dist/esm/{column.module.1b776e15.js → column-views.4637f4ce.js} +1 -1
  59. package/dist/esm/column-views.4637f4ce.js.map +1 -0
  60. package/dist/esm/column-views.494447ef.css +2 -0
  61. package/dist/esm/column-views.494447ef.css.map +1 -0
  62. package/dist/esm/column-views.4950ea28.js +28 -0
  63. package/dist/esm/column-views.4950ea28.js.map +1 -0
  64. package/dist/esm/{composite-scale.577bf64a.js → column-views.4ab0ec82.js} +44 -13
  65. package/dist/esm/column-views.4ab0ec82.js.map +1 -0
  66. package/dist/esm/{age-model-overlay.c7226855.js → column-views.4d22c21c.js} +5 -5
  67. package/dist/esm/{age-model-overlay.c7226855.js.map → column-views.4d22c21c.js.map} +1 -1
  68. package/dist/esm/{boxes.module.4ebc7796.js → column-views.4d374a35.js} +1 -1
  69. package/dist/esm/{boxes.module.4ebc7796.js.map → column-views.4d374a35.js.map} +1 -1
  70. package/dist/esm/{keyboard-navigation.a9fc80dd.js → column-views.52a6eb47.js} +3 -3
  71. package/dist/esm/{keyboard-navigation.a9fc80dd.js.map → column-views.52a6eb47.js.map} +1 -1
  72. package/dist/esm/{popover.a810b7bc.js → column-views.52b03330.js} +6 -6
  73. package/dist/esm/{popover.a810b7bc.js.map → column-views.52b03330.js.map} +1 -1
  74. package/dist/esm/column-views.57636733.css +22 -0
  75. package/dist/esm/column-views.57636733.css.map +1 -0
  76. package/dist/esm/{panel.module.386166cc.js → column-views.58b82432.js} +1 -1
  77. package/dist/esm/{panel.module.386166cc.js.map → column-views.58b82432.js.map} +1 -1
  78. package/dist/esm/{main.2e0375a5.js → column-views.59792b70.js} +21 -18
  79. package/dist/esm/column-views.59792b70.js.map +1 -0
  80. package/dist/esm/{svg.4b9a96c1.js → column-views.59bb0cba.js} +2 -3
  81. package/dist/esm/column-views.59bb0cba.js.map +1 -0
  82. package/dist/esm/{correlation-chart.abd8b346.js → column-views.5ae1d963.js} +3 -3
  83. package/dist/esm/{correlation-chart.abd8b346.js.map → column-views.5ae1d963.js.map} +1 -1
  84. package/dist/esm/{fetch.99aec438.js → column-views.5cc09c1d.js} +1 -1
  85. package/dist/esm/column-views.5cc09c1d.js.map +1 -0
  86. package/dist/esm/column-views.5e2dc19d.js +187 -0
  87. package/dist/esm/column-views.5e2dc19d.js.map +1 -0
  88. package/dist/esm/{styles.7bc776d1.js → column-views.633c42a3.js} +2 -1
  89. package/dist/esm/column-views.633c42a3.js.map +1 -0
  90. package/dist/esm/{layers.033d3fb0.js → column-views.6549388a.js} +5 -6
  91. package/dist/esm/column-views.6549388a.js.map +1 -0
  92. package/dist/esm/{panel.598f76a5.js → column-views.66f823ba.js} +66 -15
  93. package/dist/esm/column-views.66f823ba.js.map +1 -0
  94. package/dist/esm/{age-axis.module.3cc91335.js → column-views.686d21ad.js} +10 -1
  95. package/dist/esm/column-views.686d21ad.js.map +1 -0
  96. package/dist/esm/column-views.68afac63.js +90 -0
  97. package/dist/esm/column-views.68afac63.js.map +1 -0
  98. package/dist/esm/column-views.6992ca88.js +25 -0
  99. package/dist/esm/column-views.6992ca88.js.map +1 -0
  100. package/dist/esm/column-views.69c0e90d.js +5 -0
  101. package/dist/esm/column-views.69c0e90d.js.map +1 -0
  102. package/dist/esm/{main.module.c09154b1.js → column-views.6a954628.js} +1 -1
  103. package/dist/esm/{main.module.c09154b1.js.map → column-views.6a954628.js.map} +1 -1
  104. package/dist/esm/{boxes.module.2b5fb18e.css → column-views.6c670c13.css} +1 -1
  105. package/dist/esm/{boxes.module.2b5fb18e.css.map → column-views.6c670c13.css.map} +1 -1
  106. package/dist/esm/{column-nav.5414677c.js → column-views.6d6b73b4.js} +1 -1
  107. package/dist/esm/{column-nav.5414677c.js.map → column-views.6d6b73b4.js.map} +1 -1
  108. package/dist/esm/column-views.708140ab.css +36 -0
  109. package/dist/esm/column-views.708140ab.css.map +1 -0
  110. package/dist/esm/column-views.7631c221.js +13 -0
  111. package/dist/esm/column-views.7631c221.js.map +1 -0
  112. package/dist/esm/{names.a8f2b452.js → column-views.7715e35e.js} +18 -14
  113. package/dist/esm/column-views.7715e35e.js.map +1 -0
  114. package/dist/esm/column-views.7a414dd1.css +56 -0
  115. package/dist/esm/column-views.7a414dd1.css.map +1 -0
  116. package/dist/esm/column-views.7a726ca9.js +24 -0
  117. package/dist/esm/column-views.7a726ca9.js.map +1 -0
  118. package/dist/esm/column-views.7e21d1ec.js +34 -0
  119. package/dist/esm/column-views.7e21d1ec.js.map +1 -0
  120. package/dist/esm/{column-correlation.c8dcfe98.js → column-views.7e350ae2.js} +3 -3
  121. package/dist/esm/{column-correlation.c8dcfe98.js.map → column-views.7e350ae2.js.map} +1 -1
  122. package/dist/esm/column-views.83a557b3.js +11 -0
  123. package/dist/esm/column-views.83a557b3.js.map +1 -0
  124. package/dist/esm/{state.2952cbca.js → column-views.85c6a716.js} +2 -2
  125. package/dist/esm/column-views.85c6a716.js.map +1 -0
  126. package/dist/esm/column-views.86619334.js +9 -0
  127. package/dist/esm/column-views.86619334.js.map +1 -0
  128. package/dist/esm/{age-axis.4a8cf5e6.js → column-views.8833218c.js} +25 -6
  129. package/dist/esm/column-views.8833218c.js.map +1 -0
  130. package/dist/esm/column-views.88984b34.js +92 -0
  131. package/dist/esm/column-views.88984b34.js.map +1 -0
  132. package/dist/esm/{core.91ede078.js → column-views.89b9e542.js} +12 -19
  133. package/dist/esm/column-views.89b9e542.js.map +1 -0
  134. package/dist/esm/column-views.8a1db14e.js +105 -0
  135. package/dist/esm/column-views.8a1db14e.js.map +1 -0
  136. package/dist/esm/column-views.8e7b01d2.js +43 -0
  137. package/dist/esm/column-views.8e7b01d2.js.map +1 -0
  138. package/dist/esm/column-views.8f108485.js +128 -0
  139. package/dist/esm/column-views.8f108485.js.map +1 -0
  140. package/dist/esm/column-views.904b9365.js +57 -0
  141. package/dist/esm/column-views.904b9365.js.map +1 -0
  142. package/dist/esm/column-views.90a863af.js +11 -0
  143. package/dist/esm/column-views.90a863af.js.map +1 -0
  144. package/dist/esm/{column.01d68dd8.js → column-views.91385fdc.js} +69 -32
  145. package/dist/esm/column-views.91385fdc.js.map +1 -0
  146. package/dist/esm/{helpers.2f0a0cb7.js → column-views.9892f825.js} +55 -4
  147. package/dist/esm/column-views.9892f825.js.map +1 -0
  148. package/dist/esm/{colors.395c6db5.js → column-views.9b77388d.js} +6 -5
  149. package/dist/esm/column-views.9b77388d.js.map +1 -0
  150. package/dist/esm/column-views.a582d4b5.js +7 -0
  151. package/dist/esm/column-views.a582d4b5.js.map +1 -0
  152. package/dist/esm/column-views.a7c5ae16.js +25 -0
  153. package/dist/esm/column-views.a7c5ae16.js.map +1 -0
  154. package/dist/esm/{boxes.8292cff2.js → column-views.a91dde4a.js} +14 -13
  155. package/dist/esm/column-views.a91dde4a.js.map +1 -0
  156. package/dist/esm/{_shared.f7eec55a.js → column-views.a94e99a2.js} +3 -3
  157. package/dist/esm/{_shared.f7eec55a.js.map → column-views.a94e99a2.js.map} +1 -1
  158. package/dist/esm/column-views.ad472a38.css +54 -0
  159. package/dist/esm/column-views.ad472a38.css.map +1 -0
  160. package/dist/esm/{age-axis.module.03773a80.css → column-views.b17f793f.css} +21 -1
  161. package/dist/esm/column-views.b17f793f.css.map +1 -0
  162. package/dist/esm/column-views.b2b5f52c.js +19 -0
  163. package/dist/esm/column-views.b2b5f52c.js.map +1 -0
  164. package/dist/esm/column-views.b324842f.css +57 -0
  165. package/dist/esm/column-views.b324842f.css.map +1 -0
  166. package/dist/esm/{state.178ef364.js → column-views.b9fe5176.js} +14 -8
  167. package/dist/esm/column-views.b9fe5176.js.map +1 -0
  168. package/dist/esm/{section.a34d379a.js → column-views.bb46641f.js} +9 -10
  169. package/dist/esm/column-views.bb46641f.js.map +1 -0
  170. package/dist/esm/column-views.bba13f77.css +54 -0
  171. package/dist/esm/column-views.bba13f77.css.map +1 -0
  172. package/dist/esm/{maps.bcdea9c1.js → column-views.bcffe6e5.js} +4 -4
  173. package/dist/esm/{maps.bcdea9c1.js.map → column-views.bcffe6e5.js.map} +1 -1
  174. package/dist/esm/{hash-string.285b37fb.js → column-views.beb54e95.js} +1 -1
  175. package/dist/esm/{hash-string.285b37fb.js.map → column-views.beb54e95.js.map} +1 -1
  176. package/dist/esm/{column-navigation.37cd3245.js → column-views.c25e8b32.js} +3 -3
  177. package/dist/esm/{column-navigation.37cd3245.js.map → column-views.c25e8b32.js.map} +1 -1
  178. package/dist/esm/column-views.c5e108f9.js +34 -0
  179. package/dist/esm/column-views.c5e108f9.js.map +1 -0
  180. package/dist/esm/{prepare-units.6c890a96.js → column-views.c71c321c.js} +12 -12
  181. package/dist/esm/column-views.c71c321c.js.map +1 -0
  182. package/dist/esm/{data-provider.f10c6d0b.js → column-views.c8e2983a.js} +6 -6
  183. package/dist/esm/{data-provider.f10c6d0b.js.map → column-views.c8e2983a.js.map} +1 -1
  184. package/dist/esm/column-views.cae5a0ad.js +37 -0
  185. package/dist/esm/column-views.cae5a0ad.js.map +1 -0
  186. package/dist/esm/{composite.039e4798.js → column-views.d2037465.js} +17 -11
  187. package/dist/esm/column-views.d2037465.js.map +1 -0
  188. package/dist/esm/{keyboard-navigation.6713401b.js → column-views.dc42f5d0.js} +1 -1
  189. package/dist/esm/column-views.dc42f5d0.js.map +1 -0
  190. package/dist/esm/column-views.e20f6a4b.js +124 -0
  191. package/dist/esm/column-views.e20f6a4b.js.map +1 -0
  192. package/dist/esm/{age-model-overlay.module.5d9e78fb.css → column-views.e40b8bfb.css} +1 -1
  193. package/dist/esm/{age-model-overlay.module.5d9e78fb.css.map → column-views.e40b8bfb.css.map} +1 -1
  194. package/dist/esm/column-views.e4975dd6.css +146 -0
  195. package/dist/esm/column-views.e4975dd6.css.map +1 -0
  196. package/dist/esm/column-views.e9f8b2a7.js +20 -0
  197. package/dist/esm/column-views.e9f8b2a7.js.map +1 -0
  198. package/dist/esm/column-views.edeab611.js +204 -0
  199. package/dist/esm/column-views.edeab611.js.map +1 -0
  200. package/dist/esm/{popover.module.c4ba4189.js → column-views.edf77621.js} +1 -1
  201. package/dist/esm/{popover.module.c4ba4189.js.map → column-views.edf77621.js.map} +1 -1
  202. package/dist/esm/{prepare-data.d4284b4a.js → column-views.f08929e2.js} +2 -2
  203. package/dist/esm/column-views.f08929e2.js.map +1 -0
  204. package/dist/esm/column-views.f13a1d6e.js +37 -0
  205. package/dist/esm/column-views.f13a1d6e.js.map +1 -0
  206. package/dist/esm/column-views.f2948ff8.js +101 -0
  207. package/dist/esm/column-views.f2948ff8.js.map +1 -0
  208. package/dist/esm/column-views.f9dab157.js +3 -0
  209. package/dist/esm/column-views.f9dab157.js.map +1 -0
  210. package/dist/esm/column-views.fa19cea0.js +108 -0
  211. package/dist/esm/column-views.fa19cea0.js.map +1 -0
  212. package/dist/esm/index.d.ts +325 -296
  213. package/dist/esm/index.d.ts.map +1 -1
  214. package/dist/esm/index.js +13 -11
  215. package/dist/esm/index.js.map +1 -1
  216. package/dist/node/column-views.007bf6c1.js +2 -0
  217. package/dist/node/column-views.007bf6c1.js.map +1 -0
  218. package/dist/node/column-views.00848c9a.js +2 -0
  219. package/dist/node/column-views.00848c9a.js.map +1 -0
  220. package/dist/node/column-views.0278b7e5.js +2 -0
  221. package/dist/node/column-views.0278b7e5.js.map +1 -0
  222. package/dist/node/column-views.04407342.js +2 -0
  223. package/dist/node/column-views.04407342.js.map +1 -0
  224. package/dist/node/column-views.072d3dcd.js +2 -0
  225. package/dist/node/column-views.072d3dcd.js.map +1 -0
  226. package/dist/node/column-views.0859f5d2.js +2 -0
  227. package/dist/node/column-views.0859f5d2.js.map +1 -0
  228. package/dist/node/column-views.0b579299.css +2 -0
  229. package/dist/node/column-views.0b579299.css.map +1 -0
  230. package/dist/node/column-views.0b72c188.js +2 -0
  231. package/dist/node/column-views.0b72c188.js.map +1 -0
  232. package/dist/node/column-views.1064fcfb.js +2 -0
  233. package/dist/node/column-views.1064fcfb.js.map +1 -0
  234. package/dist/node/column-views.10a2bad6.js +2 -0
  235. package/dist/node/column-views.10a2bad6.js.map +1 -0
  236. package/dist/node/column-views.12864efd.js +2 -0
  237. package/dist/node/column-views.12864efd.js.map +1 -0
  238. package/dist/node/column-views.12a70e9d.js +2 -0
  239. package/dist/node/column-views.12a70e9d.js.map +1 -0
  240. package/dist/node/column-views.139b0855.js +2 -0
  241. package/dist/node/column-views.139b0855.js.map +1 -0
  242. package/dist/node/column-views.1a0b56fc.js +2 -0
  243. package/dist/node/column-views.1a0b56fc.js.map +1 -0
  244. package/dist/node/column-views.1de87649.js +2 -0
  245. package/dist/node/column-views.1de87649.js.map +1 -0
  246. package/dist/node/column-views.22673dc1.js +2 -0
  247. package/dist/node/column-views.22673dc1.js.map +1 -0
  248. package/dist/node/column-views.273ac4a8.js +2 -0
  249. package/dist/node/column-views.273ac4a8.js.map +1 -0
  250. package/dist/node/column-views.28609db2.css +2 -0
  251. package/dist/node/column-views.28609db2.css.map +1 -0
  252. package/dist/node/column-views.286d444d.js +2 -0
  253. package/dist/node/column-views.286d444d.js.map +1 -0
  254. package/dist/node/column-views.2877f398.js +2 -0
  255. package/dist/node/column-views.2877f398.js.map +1 -0
  256. package/dist/node/column-views.2a70b9a2.js +2 -0
  257. package/dist/node/column-views.2a70b9a2.js.map +1 -0
  258. package/dist/node/column-views.2e4e357d.js +2 -0
  259. package/dist/node/column-views.2e4e357d.js.map +1 -0
  260. package/dist/node/column-views.2fa1c4e6.css +2 -0
  261. package/dist/node/column-views.2fa1c4e6.css.map +1 -0
  262. package/dist/node/column-views.33102ceb.js +2 -0
  263. package/dist/node/column-views.33102ceb.js.map +1 -0
  264. package/dist/node/column-views.3345cd7a.js +2 -0
  265. package/dist/node/column-views.3345cd7a.js.map +1 -0
  266. package/dist/node/column-views.33752461.js +2 -0
  267. package/dist/node/column-views.33752461.js.map +1 -0
  268. package/dist/node/column-views.34b48ee4.js +2 -0
  269. package/dist/node/column-views.34b48ee4.js.map +1 -0
  270. package/dist/node/column-views.39d3a0be.js +2 -0
  271. package/dist/node/column-views.39d3a0be.js.map +1 -0
  272. package/dist/node/column-views.3a55ecd7.css +2 -0
  273. package/dist/node/column-views.3a55ecd7.css.map +1 -0
  274. package/dist/node/column-views.3bd09ad6.js +2 -0
  275. package/dist/node/column-views.3bd09ad6.js.map +1 -0
  276. package/dist/node/column-views.3cb3345e.js +2 -0
  277. package/dist/node/column-views.3cb3345e.js.map +1 -0
  278. package/dist/node/column-views.3f3cfcce.js +2 -0
  279. package/dist/node/column-views.3f3cfcce.js.map +1 -0
  280. package/dist/node/column-views.41876859.js +2 -0
  281. package/dist/node/column-views.41876859.js.map +1 -0
  282. package/dist/node/column-views.41d01674.js +2 -0
  283. package/dist/node/column-views.41d01674.js.map +1 -0
  284. package/dist/node/column-views.44b75011.js +2 -0
  285. package/dist/node/column-views.44b75011.js.map +1 -0
  286. package/dist/node/column-views.45168c80.js +2 -0
  287. package/dist/node/column-views.45168c80.js.map +1 -0
  288. package/dist/node/column-views.47f67ad4.js +2 -0
  289. package/dist/node/column-views.47f67ad4.js.map +1 -0
  290. package/dist/node/column-views.4e2bdf9b.js +2 -0
  291. package/dist/node/column-views.4e2bdf9b.js.map +1 -0
  292. package/dist/node/column-views.51fbed89.js +2 -0
  293. package/dist/node/column-views.51fbed89.js.map +1 -0
  294. package/dist/node/column-views.5b6833f0.js +2 -0
  295. package/dist/node/column-views.5b6833f0.js.map +1 -0
  296. package/dist/node/column-views.5c1b0eeb.css +2 -0
  297. package/dist/node/column-views.5c1b0eeb.css.map +1 -0
  298. package/dist/node/column-views.63165cf3.css +2 -0
  299. package/dist/node/column-views.63165cf3.css.map +1 -0
  300. package/dist/node/column-views.65ad6310.css +2 -0
  301. package/dist/node/column-views.65ad6310.css.map +1 -0
  302. package/dist/node/column-views.664dc6c9.js +2 -0
  303. package/dist/node/column-views.664dc6c9.js.map +1 -0
  304. package/dist/node/column-views.68224fdd.css +2 -0
  305. package/dist/node/column-views.68224fdd.css.map +1 -0
  306. package/dist/node/column-views.68ded006.js +2 -0
  307. package/dist/node/column-views.68ded006.js.map +1 -0
  308. package/dist/node/column-views.6a0a35e7.js +2 -0
  309. package/dist/node/column-views.6a0a35e7.js.map +1 -0
  310. package/dist/node/column-views.6a4c2100.css +2 -0
  311. package/dist/node/column-views.6a4c2100.css.map +1 -0
  312. package/dist/node/column-views.6a9da051.js +2 -0
  313. package/dist/node/column-views.6a9da051.js.map +1 -0
  314. package/dist/node/column-views.6b441349.js +2 -0
  315. package/dist/node/column-views.6b441349.js.map +1 -0
  316. package/dist/node/column-views.6b6b756b.js +2 -0
  317. package/dist/node/column-views.6b6b756b.js.map +1 -0
  318. package/dist/node/column-views.6bba8c57.js +2 -0
  319. package/dist/node/column-views.6bba8c57.js.map +1 -0
  320. package/dist/node/column-views.6d1551bd.js +2 -0
  321. package/dist/node/column-views.6d1551bd.js.map +1 -0
  322. package/dist/node/column-views.6da49480.js +2 -0
  323. package/dist/node/column-views.6da49480.js.map +1 -0
  324. package/dist/node/column-views.71c48a11.js +2 -0
  325. package/dist/node/column-views.71c48a11.js.map +1 -0
  326. package/dist/node/column-views.7350ac73.js +2 -0
  327. package/dist/node/column-views.7350ac73.js.map +1 -0
  328. package/dist/node/column-views.755f726e.js +2 -0
  329. package/dist/node/column-views.755f726e.js.map +1 -0
  330. package/dist/node/column-views.770d2c95.js +2 -0
  331. package/dist/node/column-views.770d2c95.js.map +1 -0
  332. package/dist/node/column-views.78d3f3c5.js +2 -0
  333. package/dist/node/column-views.78d3f3c5.js.map +1 -0
  334. package/dist/node/column-views.7b9bd06e.css +2 -0
  335. package/dist/node/column-views.7b9bd06e.css.map +1 -0
  336. package/dist/node/column-views.7be87c6b.js +2 -0
  337. package/dist/node/column-views.7be87c6b.js.map +1 -0
  338. package/dist/node/column-views.7d45bbeb.js +2 -0
  339. package/dist/node/column-views.7d45bbeb.js.map +1 -0
  340. package/dist/node/column-views.7f621850.js +2 -0
  341. package/dist/node/column-views.7f621850.js.map +1 -0
  342. package/dist/node/column-views.82cf7c0d.js +2 -0
  343. package/dist/node/column-views.82cf7c0d.js.map +1 -0
  344. package/dist/node/column-views.869c7199.js +2 -0
  345. package/dist/node/column-views.869c7199.js.map +1 -0
  346. package/dist/node/column-views.8a02b1fe.js +2 -0
  347. package/dist/node/column-views.8a02b1fe.js.map +1 -0
  348. package/dist/node/column-views.8acd24ca.js +2 -0
  349. package/dist/node/column-views.8acd24ca.js.map +1 -0
  350. package/dist/node/column-views.8c00beb4.js +2 -0
  351. package/dist/node/column-views.8c00beb4.js.map +1 -0
  352. package/dist/node/column-views.8cfed88b.js +2 -0
  353. package/dist/node/column-views.8cfed88b.js.map +1 -0
  354. package/dist/node/column-views.8f54691f.js +2 -0
  355. package/dist/node/column-views.8f54691f.js.map +1 -0
  356. package/dist/node/column-views.95411f1b.js +2 -0
  357. package/dist/node/column-views.95411f1b.js.map +1 -0
  358. package/dist/node/column-views.9cb13e51.css +2 -0
  359. package/dist/node/column-views.9cb13e51.css.map +1 -0
  360. package/dist/node/column-views.a0aac838.js +2 -0
  361. package/dist/node/column-views.a0aac838.js.map +1 -0
  362. package/dist/node/column-views.a208338e.js +2 -0
  363. package/dist/node/column-views.a208338e.js.map +1 -0
  364. package/dist/node/column-views.a501cea0.js +2 -0
  365. package/dist/node/column-views.a501cea0.js.map +1 -0
  366. package/dist/node/column-views.a634ac7f.js +2 -0
  367. package/dist/node/column-views.a634ac7f.js.map +1 -0
  368. package/dist/node/column-views.a8ffe072.js +2 -0
  369. package/dist/node/column-views.a8ffe072.js.map +1 -0
  370. package/dist/node/column-views.b169b4b5.css +2 -0
  371. package/dist/node/column-views.b169b4b5.css.map +1 -0
  372. package/dist/node/column-views.b55bd885.css +2 -0
  373. package/dist/node/column-views.b55bd885.css.map +1 -0
  374. package/dist/node/column-views.b773edb8.js +2 -0
  375. package/dist/node/column-views.b773edb8.js.map +1 -0
  376. package/dist/node/column-views.baf032f1.js +2 -0
  377. package/dist/node/column-views.baf032f1.js.map +1 -0
  378. package/dist/node/column-views.bb510980.js +2 -0
  379. package/dist/node/column-views.bb510980.js.map +1 -0
  380. package/dist/node/column-views.c968a185.css +2 -0
  381. package/dist/node/column-views.c968a185.css.map +1 -0
  382. package/dist/node/column-views.ca16625d.js +2 -0
  383. package/dist/node/column-views.ca16625d.js.map +1 -0
  384. package/dist/node/column-views.cd3c430b.js +2 -0
  385. package/dist/node/column-views.cd3c430b.js.map +1 -0
  386. package/dist/node/column-views.cd468adb.css +2 -0
  387. package/dist/node/column-views.cd468adb.css.map +1 -0
  388. package/dist/node/column-views.cdcce702.js +2 -0
  389. package/dist/node/column-views.cdcce702.js.map +1 -0
  390. package/dist/node/column-views.ce6808fe.js +2 -0
  391. package/dist/node/column-views.ce6808fe.js.map +1 -0
  392. package/dist/node/column-views.cf90f63d.js +2 -0
  393. package/dist/node/column-views.cf90f63d.js.map +1 -0
  394. package/dist/node/column-views.d0ee3385.js +2 -0
  395. package/dist/node/column-views.d0ee3385.js.map +1 -0
  396. package/dist/node/column-views.d6708353.js +2 -0
  397. package/dist/node/column-views.d6708353.js.map +1 -0
  398. package/dist/node/column-views.d9bbd6fb.css +2 -0
  399. package/dist/node/column-views.d9bbd6fb.css.map +1 -0
  400. package/dist/node/column-views.dfe9f0a9.js +2 -0
  401. package/dist/node/column-views.dfe9f0a9.js.map +1 -0
  402. package/dist/node/column-views.e52994ea.js +2 -0
  403. package/dist/node/column-views.e52994ea.js.map +1 -0
  404. package/dist/node/column-views.e6720522.js +2 -0
  405. package/dist/node/column-views.e6720522.js.map +1 -0
  406. package/dist/node/column-views.e77dd525.js +2 -0
  407. package/dist/node/column-views.e77dd525.js.map +1 -0
  408. package/dist/node/column-views.e7cd811c.css +2 -0
  409. package/dist/node/column-views.e7cd811c.css.map +1 -0
  410. package/dist/node/column-views.e7e26765.js +2 -0
  411. package/dist/node/column-views.e7e26765.js.map +1 -0
  412. package/dist/node/column-views.e9515ec1.js +2 -0
  413. package/dist/node/column-views.e9515ec1.js.map +1 -0
  414. package/dist/node/column-views.ebb44b7d.js +2 -0
  415. package/dist/node/column-views.ebb44b7d.js.map +1 -0
  416. package/dist/node/column-views.ee8cb107.js +2 -0
  417. package/dist/node/column-views.ee8cb107.js.map +1 -0
  418. package/dist/node/column-views.eea80478.js +2 -0
  419. package/dist/node/column-views.eea80478.js.map +1 -0
  420. package/dist/node/column-views.f7315cbc.css +2 -0
  421. package/dist/node/column-views.f7315cbc.css.map +1 -0
  422. package/dist/node/column-views.f76ba19f.js +2 -0
  423. package/dist/node/column-views.f76ba19f.js.map +1 -0
  424. package/dist/node/column-views.fea32686.js +2 -0
  425. package/dist/node/column-views.fea32686.js.map +1 -0
  426. package/dist/node/index.js +1 -1
  427. package/dist/node/index.js.map +1 -1
  428. package/package.json +23 -23
  429. package/src/age-axis.module.sass +20 -0
  430. package/src/age-axis.ts +25 -3
  431. package/src/age-model-overlay.ts +2 -2
  432. package/src/column.module.sass +3 -3
  433. package/src/column.ts +92 -19
  434. package/src/correlation-chart/main.ts +25 -12
  435. package/src/correlation-chart/prepare-data.ts +6 -6
  436. package/src/correlation-chart/stories/correlation-chart.stories.ts +12 -6
  437. package/src/data-provider/base.ts +20 -11
  438. package/src/data-provider/column-nav.ts +2 -2
  439. package/src/data-provider/fetch.ts +9 -9
  440. package/src/data-provider/store.ts +15 -10
  441. package/src/{carbon-isotopes → facets/carbon-isotopes}/data-area.ts +5 -4
  442. package/src/{carbon-isotopes → facets/carbon-isotopes}/index.ts +0 -1
  443. package/src/facets/carbon-isotopes/isotopes-column.module.sass +31 -0
  444. package/src/{carbon-isotopes → facets/carbon-isotopes}/isotopes-column.ts +119 -87
  445. package/src/facets/detrital-zircon/index.module.sass +22 -0
  446. package/src/facets/detrital-zircon/index.ts +132 -0
  447. package/src/facets/detrital-zircon/provider.ts +51 -0
  448. package/src/facets/fossils/index.module.sass +14 -0
  449. package/src/facets/fossils/index.ts +120 -0
  450. package/src/facets/fossils/provider.ts +80 -0
  451. package/src/facets/index.ts +3 -0
  452. package/src/index.ts +2 -1
  453. package/src/maps/_shared/inset-map.stories.ts +1 -1
  454. package/src/maps/_shared/inset-map.ts +2 -2
  455. package/src/maps/_shared/styles.ts +3 -1
  456. package/src/maps/column-correlation/column-correlation-map.stories.ts +3 -3
  457. package/src/maps/column-correlation/core.ts +17 -26
  458. package/src/maps/column-correlation/state.ts +9 -9
  459. package/src/maps/column-navigation/mapbox/column-navigation-map.stories.ts +177 -1
  460. package/src/maps/column-navigation/mapbox/index.ts +18 -15
  461. package/src/maps/column-navigation/mapbox/keyboard-navigation.ts +4 -4
  462. package/src/maps/column-navigation/mapbox/state.ts +16 -6
  463. package/src/maps/column-navigation/svg/animated.ts +2 -2
  464. package/src/maps/column-navigation/svg/column-navigation-svg-map.stories.ts +2 -2
  465. package/src/maps/column-navigation/svg/index.ts +2 -4
  466. package/src/maps/column-navigation/svg/layers.ts +5 -7
  467. package/src/maps/column-navigation/utils/keyboard-navigation.ts +1 -1
  468. package/src/notes.ts +49 -0
  469. package/src/prepare-units/composite-scale.ts +73 -25
  470. package/src/prepare-units/helpers.ts +78 -13
  471. package/src/prepare-units/index.ts +17 -17
  472. package/src/prepare-units/utils.ts +7 -7
  473. package/src/section.ts +8 -8
  474. package/src/unit-details/panel.ts +103 -19
  475. package/src/unit-details/popover.ts +5 -5
  476. package/src/units/boxes.ts +20 -10
  477. package/src/units/colors.ts +12 -5
  478. package/src/units/composite.ts +16 -11
  479. package/src/units/index.ts +77 -10
  480. package/src/units/names.ts +19 -16
  481. package/src/units/resolvers.ts +4 -1
  482. package/src/units/selection.ts +44 -11
  483. package/src/units/types.ts +2 -0
  484. package/dist/esm/age-axis.4a8cf5e6.js.map +0 -1
  485. package/dist/esm/age-axis.module.03773a80.css.map +0 -1
  486. package/dist/esm/age-axis.module.3cc91335.js.map +0 -1
  487. package/dist/esm/base.910b80b4.js.map +0 -1
  488. package/dist/esm/boxes.8292cff2.js.map +0 -1
  489. package/dist/esm/carbon-isotopes.10db8285.js +0 -11
  490. package/dist/esm/carbon-isotopes.10db8285.js.map +0 -1
  491. package/dist/esm/colors.395c6db5.js.map +0 -1
  492. package/dist/esm/column.01d68dd8.js.map +0 -1
  493. package/dist/esm/column.a25f8ebd.js +0 -117
  494. package/dist/esm/column.a25f8ebd.js.map +0 -1
  495. package/dist/esm/column.module.1b776e15.js.map +0 -1
  496. package/dist/esm/column.module.7f47d25a.js +0 -34
  497. package/dist/esm/column.module.7f47d25a.js.map +0 -1
  498. package/dist/esm/column.module.a67a6b4c.css.map +0 -1
  499. package/dist/esm/column.module.cbb072df.css +0 -157
  500. package/dist/esm/column.module.cbb072df.css.map +0 -1
  501. package/dist/esm/composite-scale.577bf64a.js.map +0 -1
  502. package/dist/esm/composite.039e4798.js.map +0 -1
  503. package/dist/esm/composite.module.69a38fd1.css +0 -4
  504. package/dist/esm/core.843310d3.js +0 -88
  505. package/dist/esm/core.843310d3.js.map +0 -1
  506. package/dist/esm/core.91ede078.js.map +0 -1
  507. package/dist/esm/data-area.daff8da0.js +0 -86
  508. package/dist/esm/data-area.daff8da0.js.map +0 -1
  509. package/dist/esm/data-provider.1506eb64.js +0 -25
  510. package/dist/esm/data-provider.1506eb64.js.map +0 -1
  511. package/dist/esm/fetch.99aec438.js.map +0 -1
  512. package/dist/esm/helpers.2f0a0cb7.js.map +0 -1
  513. package/dist/esm/isotopes-column.7cb5cc45.js +0 -163
  514. package/dist/esm/isotopes-column.7cb5cc45.js.map +0 -1
  515. package/dist/esm/keyboard-navigation.6713401b.js.map +0 -1
  516. package/dist/esm/layers.033d3fb0.js.map +0 -1
  517. package/dist/esm/main.2e0375a5.js.map +0 -1
  518. package/dist/esm/mapbox.cac42eed.js.map +0 -1
  519. package/dist/esm/names.a8f2b452.js.map +0 -1
  520. package/dist/esm/panel.598f76a5.js.map +0 -1
  521. package/dist/esm/prepare-data.d4284b4a.js.map +0 -1
  522. package/dist/esm/prepare-units.6c890a96.js.map +0 -1
  523. package/dist/esm/resolvers.36013b49.js.map +0 -1
  524. package/dist/esm/section.a34d379a.js.map +0 -1
  525. package/dist/esm/selection.f5b0297e.js.map +0 -1
  526. package/dist/esm/state.178ef364.js.map +0 -1
  527. package/dist/esm/state.2952cbca.js.map +0 -1
  528. package/dist/esm/store.c4d7a8a4.js.map +0 -1
  529. package/dist/esm/styles.7bc776d1.js.map +0 -1
  530. package/dist/esm/svg.4b9a96c1.js.map +0 -1
  531. package/dist/esm/types.0f0b57c9.js +0 -3
  532. package/dist/esm/types.0f0b57c9.js.map +0 -1
  533. package/dist/esm/units.5a4fc058.js +0 -98
  534. package/dist/esm/units.5a4fc058.js.map +0 -1
  535. package/dist/esm/utils.d7a43a2a.js.map +0 -1
  536. package/src/carbon-isotopes/column.module.sass +0 -136
  537. package/src/carbon-isotopes/column.ts +0 -133
  538. package/src/carbon-isotopes/core.ts +0 -81
  539. /package/src/{carbon-isotopes → facets/carbon-isotopes}/data-provider.ts +0 -0
@@ -41,6 +41,7 @@ interface UnitProps extends Clickable, Partial<RectBounds>, UnitRectOptions {
41
41
  fill?: string;
42
42
  backgroundColor?: string;
43
43
  patternColor?: string;
44
+ patternID?: string | number;
44
45
  }
45
46
 
46
47
  export interface LabeledUnitProps
@@ -48,6 +49,7 @@ export interface LabeledUnitProps
48
49
  Clickable,
49
50
  Partial<RectBounds> {
50
51
  division: IUnit;
52
+ patternID?: string | number;
51
53
  label: string;
52
54
  onLabelUpdated?(label: string, shown: boolean);
53
55
  halfWidth?: boolean;
@@ -57,7 +59,7 @@ export interface LabeledUnitProps
57
59
 
58
60
  function useUnitRect(
59
61
  division: IUnit,
60
- options: UnitRectOptions = {}
62
+ options: UnitRectOptions = {},
61
63
  ): RectBounds {
62
64
  const {
63
65
  widthFraction = 1,
@@ -121,7 +123,7 @@ export function MinimalUnit(props) {
121
123
  onClick,
122
124
  }),
123
125
  h.if(selected)("rect.selection-overlay", bounds),
124
- ]
126
+ ],
125
127
  );
126
128
  }
127
129
 
@@ -135,6 +137,7 @@ function Unit(props: UnitProps) {
135
137
  widthFraction = 1,
136
138
  backgroundColor,
137
139
  patternColor,
140
+ patternID,
138
141
  axisType: _, // not sure why this is brought in...
139
142
  ...baseBounds
140
143
  } = props;
@@ -150,8 +153,8 @@ function Unit(props: UnitProps) {
150
153
  overflowTop: hasOverflowTop,
151
154
  overflowBottom: hasOverflowBottom,
152
155
  };
153
- const patternID = resolveID(d);
154
- let _fill = fill ?? useGeologicPattern(patternID, defaultFill);
156
+ const _patternID = patternID ?? resolveID(d);
157
+ let _fill = fill ?? useGeologicPattern(_patternID, defaultFill);
155
158
 
156
159
  const hasBackgroundColor = backgroundColor != null;
157
160
 
@@ -187,7 +190,7 @@ function Unit(props: UnitProps) {
187
190
  h.if(selected)(UnitRect, { ...bounds, className: "selection-overlay" }),
188
191
  //defs,
189
192
  children,
190
- ]
193
+ ],
191
194
  );
192
195
  }
193
196
 
@@ -304,6 +307,7 @@ function LabeledUnit(props: LabeledUnitProps) {
304
307
  widthFraction,
305
308
  showLabel = true,
306
309
  backgroundColor,
310
+ patternID,
307
311
  axisType: _, // not sure why this is brought in...
308
312
  ...baseBounds
309
313
  } = props;
@@ -316,7 +320,13 @@ function LabeledUnit(props: LabeledUnitProps) {
316
320
  const { width, height } = bounds;
317
321
  return h(
318
322
  Unit,
319
- { className: "labeled-unit", division, backgroundColor, ...bounds },
323
+ {
324
+ className: "labeled-unit",
325
+ division,
326
+ backgroundColor,
327
+ patternID,
328
+ ...bounds,
329
+ },
320
330
  [
321
331
  h.if(showLabel)(
322
332
  ForeignObject,
@@ -329,9 +339,9 @@ function LabeledUnit(props: LabeledUnitProps) {
329
339
  onVisibilityChanged(viz) {
330
340
  onLabelUpdated(label, viz);
331
341
  },
332
- })
342
+ }),
333
343
  ),
334
- ]
344
+ ],
335
345
  );
336
346
  }
337
347
 
@@ -342,7 +352,7 @@ function UnitBoxes<T>(props: {
342
352
  transformDivision?: (
343
353
  division: any,
344
354
  index: number,
345
- divisions: any[]
355
+ divisions: any[],
346
356
  ) => T | null;
347
357
  }) {
348
358
  const { unitComponent = Unit, unitComponentProps = {} } = props;
@@ -367,7 +377,7 @@ function UnitBoxes<T>(props: {
367
377
  return h(
368
378
  PatternDefsProvider,
369
379
  { resolveID, scalePattern },
370
- h("g.divisions", children)
380
+ h("g.divisions", children),
371
381
  );
372
382
  }
373
383
 
@@ -1,13 +1,20 @@
1
1
  import chroma from "chroma-js";
2
2
  import { UnitLong } from "@macrostrat/api-types";
3
3
 
4
+ interface KeyOptions {
5
+ key?: string;
6
+ id_key?: string;
7
+ }
8
+
4
9
  export function getMixedUnitColor(
5
10
  unit: UnitLong,
6
11
  lithMap,
7
12
  inDarkMode = false,
8
- asBackground = true
13
+ asBackground = true,
14
+ keyOpts: KeyOptions = null,
9
15
  ): string | null {
10
- const liths = unit.lith;
16
+ const { key = "lith", id_key = "lith_id" } = keyOpts ?? {};
17
+ const liths = unit[key];
11
18
  if (liths == null) {
12
19
  return "gray";
13
20
  }
@@ -18,9 +25,9 @@ export function getMixedUnitColor(
18
25
  prop = null;
19
26
  }
20
27
  return {
21
- lith_id: d.lith_id,
28
+ lith_id: d[id_key],
22
29
  prop,
23
- color: lithMap?.get(d.lith_id)?.color,
30
+ color: lithMap?.get(d[id_key])?.color,
24
31
  };
25
32
  })
26
33
  .filter((d) => d.color != null);
@@ -49,7 +56,7 @@ export function getMixedUnitColor(
49
56
  const baseColor = chroma.average(
50
57
  lithsWithProp.map((d) => d.color),
51
58
  "lrgb",
52
- lithsWithProp.map((d) => d.prop)
59
+ lithsWithProp.map((d) => d.prop),
53
60
  );
54
61
 
55
62
  if (!asBackground) {
@@ -1,7 +1,6 @@
1
1
  import { hyperStyled } from "@macrostrat/hyper";
2
2
  import {
3
3
  LithologyColumn,
4
- ColumnAxisType,
5
4
  SVG,
6
5
  ColumnContext,
7
6
  } from "@macrostrat/column-components";
@@ -18,6 +17,7 @@ import { BaseUnit } from "@macrostrat/api-types";
18
17
  import { LabeledUnit, UnitBoxes } from "./boxes";
19
18
  import styles from "./composite.module.sass";
20
19
  import { useMacrostratColumnData } from "../data-provider";
20
+ import { useUnitSelectionDispatch } from "../units";
21
21
 
22
22
  const h = hyperStyled(styles);
23
23
 
@@ -49,11 +49,11 @@ export function LabelTrackerProvider(props) {
49
49
  units.filter((d) => {
50
50
  const id = findUnitID(d);
51
51
  return labelTrackerRef.current[id] == false;
52
- })
52
+ }),
53
53
  );
54
54
  }
55
55
  },
56
- [labelTrackerRef, units, findUnitID]
56
+ [labelTrackerRef, units, findUnitID],
57
57
  );
58
58
 
59
59
  const value = trackLabelVisibility;
@@ -63,8 +63,8 @@ export function LabelTrackerProvider(props) {
63
63
  h(
64
64
  UnlabeledDivisionsContext.Provider,
65
65
  { value: unlabeledDivisions },
66
- children
67
- )
66
+ children,
67
+ ),
68
68
  );
69
69
  }
70
70
 
@@ -141,7 +141,7 @@ export function CompositeUnitsColumn(props: CompositeUnitProps) {
141
141
  export function AnnotatedUnitsColumn(props: ICompositeUnitProps) {
142
142
  useEffect(() => {
143
143
  console.warn(
144
- "AnnotatedUnitsColumn is deprecated and currently renders a no-op for transition purposes"
144
+ "AnnotatedUnitsColumn is deprecated and currently renders a no-op for transition purposes",
145
145
  );
146
146
  }, []);
147
147
  return null;
@@ -164,6 +164,8 @@ export function SectionLabelsColumn(props: ICompositeUnitProps) {
164
164
 
165
165
  const _compositeScale = compositeScale(sections);
166
166
 
167
+ const selectUnit = useUnitSelectionDispatch();
168
+
167
169
  return h("div.section-labels-column", [
168
170
  h(
169
171
  ColumnNotesProvider,
@@ -188,8 +190,11 @@ export function SectionLabelsColumn(props: ICompositeUnitProps) {
188
190
  noteComponent,
189
191
  shouldRenderNote,
190
192
  scale: _compositeScale,
191
- })
192
- )
193
+ onClickNote(note) {
194
+ selectUnit(note.data, null, null);
195
+ },
196
+ }),
197
+ ),
193
198
  ),
194
199
  ]);
195
200
  }
@@ -206,7 +211,7 @@ export interface CompositeColumnScale {
206
211
 
207
212
  export function compositeScale(
208
213
  sections,
209
- opts: CompositeScaleOpts = {}
214
+ opts: CompositeScaleOpts = {},
210
215
  ): CompositeColumnScale {
211
216
  /** A basic composite scale that works across all sections. This isn't a fully featured,
212
217
  * contiuous D3 scale, but it shares enough attributes to be useful for
@@ -245,7 +250,7 @@ export function compositeScale(
245
250
  return baseScale as CompositeColumnScale;
246
251
  }
247
252
 
248
- function ColumnNotesProvider(props) {
253
+ export function ColumnNotesProvider(props) {
249
254
  // A fake column axis provider that allows scales to cross
250
255
  const { children, scale, totalHeight, pixelScale } = props;
251
256
 
@@ -264,7 +269,7 @@ function ColumnNotesProvider(props) {
264
269
  zoom: 1,
265
270
  },
266
271
  },
267
- children
272
+ children,
268
273
  );
269
274
  }
270
275
 
@@ -5,12 +5,12 @@ import {
5
5
  } from "@macrostrat/column-components";
6
6
  import { UnitNamesColumn } from "./names";
7
7
  import { ICompositeUnitProps } from "./composite";
8
- import { UnitBoxes } from "./boxes";
8
+ import { UnitBoxes, UnitProps } from "./boxes";
9
9
  import { useColumnLayout } from "@macrostrat/column-components";
10
10
  import { useInDarkMode } from "@macrostrat/ui-components";
11
11
  import { getMixedUnitColor } from "./colors";
12
12
  import { TrackedLabeledUnit } from "./composite";
13
- import { useLithologies } from "../data-provider";
13
+ import { useEnvironments, useLithologies } from "../data-provider";
14
14
  import { useMemo } from "react";
15
15
  import { resolveID } from "./resolvers";
16
16
  import { Lithology } from "@macrostrat/api-types";
@@ -46,33 +46,100 @@ export function SimpleUnitsColumn(props: ICompositeUnitProps) {
46
46
  ]);
47
47
  }
48
48
 
49
+ export function BasicUnitComponent({ division, ...rest }) {
50
+ /** A unit that allows directly setting colors and patterns. */
51
+
52
+ return h(UnitComponent, {
53
+ division,
54
+ ...rest,
55
+ backgroundColor: division.color,
56
+ patternID: division.patternID,
57
+ });
58
+ }
59
+
49
60
  export function UnitComponent({ division, nColumns = 2, ...rest }) {
50
61
  const width = rest.width ?? useColumnLayout()?.width;
51
62
 
52
63
  const nOverlappingUnits = division.overlappingUnits?.length ?? 0;
53
- const columnIx = (division.column ?? 0) % nColumns;
64
+ const _nColumns = nOverlappingUnits == 0 ? 1 : nColumns;
65
+ const columnIx = (division.column ?? 0) % _nColumns;
66
+ const reducedWidth = width / _nColumns;
67
+ const x = (columnIx * width) / _nColumns;
54
68
 
55
69
  return h(TrackedLabeledUnit, {
56
70
  division,
57
71
  ...rest,
58
- width: nOverlappingUnits > 0 ? width / nColumns : width,
59
- x: (columnIx * width) / nColumns,
72
+ width: reducedWidth,
73
+ x,
60
74
  });
61
75
  }
62
76
 
77
+ interface UnitColorOptions {
78
+ asBackground?: boolean;
79
+ }
80
+
81
+ export function useUnitColor(unit, opts: UnitColorOptions = {}): string | null {
82
+ /** Get the color for a unit based on its lithology */
83
+ const lithMap = useLithologies();
84
+ const inDarkMode = useInDarkMode();
85
+ const { asBackground = true } = opts;
86
+
87
+ return useMemo(() => {
88
+ if (unit == null || lithMap == null) return null;
89
+ return getMixedUnitColor(unit, lithMap, inDarkMode, asBackground);
90
+ }, [unit?.unit_id, lithMap, inDarkMode, asBackground]);
91
+ }
92
+
63
93
  export function ColoredUnitComponent(props) {
64
94
  /** A unit component that is colored using a mixture of lithologies.
65
95
  * This is a separate component because it depends on more providers/contexts to determine coloring. */
96
+ const backgroundColor = useUnitColor(props.division);
97
+
98
+ const patternID = useMemo(() => {
99
+ return resolveID(props.division); // ?? getPatternID(props.division.lith, lithMap);
100
+ }, [props.division?.unit_id]);
101
+
102
+ const fill = useGeologicPattern(patternID);
103
+
104
+ return h(UnitComponent, {
105
+ fill,
106
+ backgroundColor,
107
+ ...props,
108
+ });
109
+ }
110
+
111
+ export function useUnitColorByEnvironment(
112
+ unit,
113
+ opts: UnitColorOptions = {},
114
+ ): string | null {
115
+ /** Get the color for a unit based on its lithology */
116
+ const environmentMap = useEnvironments();
66
117
  const lithMap = useLithologies();
67
118
  const inDarkMode = useInDarkMode();
119
+ const { asBackground = true } = opts;
120
+
121
+ return useMemo(() => {
122
+ if (unit == null || environmentMap == null) return null;
123
+ let c = getMixedUnitColor(unit, environmentMap, inDarkMode, asBackground, {
124
+ key: "environ",
125
+ id_key: "environ_id",
126
+ });
127
+ if (c != null) {
128
+ return c;
129
+ }
130
+ // Fallback to lithology color if no environment color is found
131
+ return getMixedUnitColor(unit, lithMap, inDarkMode, asBackground);
132
+ }, [unit?.unit_id, environmentMap, lithMap, inDarkMode, asBackground]);
133
+ }
68
134
 
69
- const backgroundColor = useMemo(() => {
70
- return getMixedUnitColor(props.division, lithMap, inDarkMode);
71
- }, [props.division?.unit_id, lithMap, inDarkMode]);
135
+ export function EnvironmentColoredUnitComponent(props) {
136
+ /** A unit component that is colored using a mixture of lithologies.
137
+ * This is a separate component because it depends on more providers/contexts to determine coloring. */
138
+ const backgroundColor = useUnitColorByEnvironment(props.division);
72
139
 
73
140
  const patternID = useMemo(() => {
74
141
  return resolveID(props.division); // ?? getPatternID(props.division.lith, lithMap);
75
- }, [props.division?.unit_id, lithMap]);
142
+ }, [props.division?.unit_id]);
76
143
 
77
144
  const fill = useGeologicPattern(patternID);
78
145
 
@@ -85,7 +152,7 @@ export function ColoredUnitComponent(props) {
85
152
 
86
153
  function getPatternID(
87
154
  liths: Array<Lithology>,
88
- lithMap: Map<number, Lithology>
155
+ lithMap: Map<number, Lithology>,
89
156
  ): string | null {
90
157
  if (lithMap == null || liths == null || liths.length == 0) {
91
158
  return null;
@@ -1,7 +1,6 @@
1
1
  import h from "@macrostrat/hyper";
2
- import { useContext, useCallback } from "react";
2
+ import { useCallback, useMemo } from "react";
3
3
  import {
4
- ColumnContext,
5
4
  ColumnAxisType,
6
5
  NotesColumn,
7
6
  NotesColumnProps,
@@ -11,6 +10,7 @@ import { IUnit } from "./types";
11
10
  import React from "react";
12
11
  import { getUnitHeightRange } from "../prepare-units/utils";
13
12
  import { CompositeColumnScale } from "./composite";
13
+ import { useCompositeScale, useMacrostratColumnData } from "../data-provider";
14
14
 
15
15
  interface UnitDataProps extends NotesColumnProps {
16
16
  left?: number;
@@ -31,7 +31,7 @@ type UnitNote = {
31
31
 
32
32
  function noteForDivision(
33
33
  div: IUnit,
34
- opts: { axisType: ColumnAxisType }
34
+ opts: { axisType: ColumnAxisType },
35
35
  ): UnitNote {
36
36
  const { axisType } = opts;
37
37
 
@@ -53,35 +53,34 @@ const defaultNameFunction = (div) => {
53
53
  };
54
54
 
55
55
  function UnitDataColumn_(props: UnitDataProps) {
56
- const ctx = useContext(ColumnContext);
56
+ const { axisType, units } = useMacrostratColumnData();
57
+ const scale = useCompositeScale();
57
58
  const {
58
- left,
59
+ left = 0,
59
60
  noteComponent,
60
61
  shouldRenderNote = (note: ColumnDivision | IUnit, i: number) => true,
61
62
  minimumHeight = 0,
62
- divisions = ctx?.divisions,
63
+ divisions = units,
63
64
  ...rest
64
65
  } = props;
65
66
 
66
- const { scale } = ctx;
67
-
68
67
  const minimumHeightFilter = useCallback(
69
68
  (d) => {
70
69
  if (minimumHeight == 0) return true;
71
70
  const dy = Math.abs(scale(d.top_height) - scale(d.height));
72
71
  return dy > minimumHeight;
73
72
  },
74
- [scale, minimumHeight]
73
+ [scale, minimumHeight],
75
74
  );
76
75
 
77
76
  if (divisions == null) return null;
78
77
  const notes: UnitNote[] = divisions
79
78
  .filter(shouldRenderNote)
80
- .map((d: IUnit) => noteForDivision(d, { axisType: ctx.axisType }))
79
+ .map((d: IUnit) => noteForDivision(d, { axisType }))
81
80
  .filter(minimumHeightFilter);
82
81
 
83
82
  return h(NotesColumn, {
84
- transform: `translate(${left || 0})`,
83
+ transform: `translate(${left})`,
85
84
  editable: false,
86
85
  noteComponent,
87
86
  notes,
@@ -98,6 +97,7 @@ interface UnitNamesProps extends UnitDataProps {
98
97
  nameForDivision?(obj: IUnit): string;
99
98
  paddingLeft?: number;
100
99
  width: number;
100
+ onClickNote?: (note: any) => void;
101
101
  }
102
102
 
103
103
  export function UnitNamesColumn(props: UnitNamesProps) {
@@ -107,13 +107,16 @@ export function UnitNamesColumn(props: UnitNamesProps) {
107
107
  ...rest
108
108
  } = props;
109
109
 
110
- const NoteComponent = (props) => {
111
- const { note } = props;
112
- return h("p.col-note-label", nameForDivision(note.data));
113
- };
110
+ const defaultNoteComponent = useMemo(
111
+ () => (props) => {
112
+ const { note } = props;
113
+ return h("p.col-note-label", nameForDivision(note.data));
114
+ },
115
+ [nameForDivision],
116
+ );
114
117
 
115
118
  return h(UnitDataColumn, {
116
- noteComponent: noteComponent ?? NoteComponent,
119
+ noteComponent: noteComponent ?? defaultNoteComponent,
117
120
  ...rest,
118
121
  });
119
122
  }
@@ -55,7 +55,10 @@ const symbolIndex = {
55
55
  };
56
56
 
57
57
  const resolveID = (d: any) => {
58
- let liths = d.lith;
58
+ if (d.lith == null || d.lith.length == 0) {
59
+ return null;
60
+ }
61
+ let liths = [...d.lith];
59
62
  let environs = d.environ.map((d) => d.name).join(" ");
60
63
  liths.sort((a, b) => b.prop - a.prop);
61
64
 
@@ -10,14 +10,19 @@ import {
10
10
  RefObject,
11
11
  useRef,
12
12
  useCallback,
13
+ MouseEvent,
13
14
  } from "react";
14
15
  import { createStore, StoreApi, useStore } from "zustand";
15
16
  import type { RectBounds, IUnit } from "./types";
17
+ import {
18
+ getUnitHeightRange,
19
+ useMacrostratColumnData,
20
+ } from "@macrostrat/column-views";
16
21
 
17
22
  type UnitSelectDispatch = (
18
23
  unit: BaseUnit | null,
19
24
  target: HTMLElement | null,
20
- event: Event | null
25
+ event: Event | null,
21
26
  ) => void;
22
27
 
23
28
  const UnitSelectionContext = createContext<StoreApi<UnitSelectionStore>>(null);
@@ -31,13 +36,11 @@ export function useUnitSelectionDispatch(): UnitSelectDispatch {
31
36
  }
32
37
 
33
38
  export function useUnitSelectionStore<T>(
34
- selector: (state: UnitSelectionStore) => T
39
+ selector: (state: UnitSelectionStore) => T,
35
40
  ): T {
36
41
  const store = useContext(UnitSelectionContext);
37
42
  if (store == null) {
38
- throw new Error(
39
- "useUnitSelectionStore must be used within a UnitSelectionProvider"
40
- );
43
+ return null;
41
44
  }
42
45
  return useStore(store, selector);
43
46
  }
@@ -54,11 +57,20 @@ interface UnitSelectionStore {
54
57
  setSelectedUnit: (unit: number | null) => void;
55
58
  }
56
59
 
60
+ export interface ColumnClickData {
61
+ unitID: number | null;
62
+ unit: BaseUnit | null;
63
+ target: HTMLElement | null;
64
+ height: number;
65
+ // Room for boundary IDs eventually
66
+ }
67
+
57
68
  export function UnitSelectionProvider<T extends BaseUnit>(props: {
58
69
  children: ReactNode;
59
70
  columnRef?: RefObject<HTMLElement>;
60
71
  units: T[];
61
72
  selectedUnit: number | null;
73
+ onClickedColumn?: (columnClickData: ColumnClickData, event: Event) => void;
62
74
  onUnitSelected?: (unitID: number | null, unit: T | null) => void;
63
75
  }) {
64
76
  const [store] = useState(() =>
@@ -80,10 +92,30 @@ export function UnitSelectionProvider<T extends BaseUnit>(props: {
80
92
  });
81
93
  }
82
94
  },
83
- onUnitSelected: (unit: T, target: HTMLElement, event: Event) => {
95
+ onUnitSelected: (unit: T, target: HTMLElement, event: PointerEvent) => {
84
96
  console.log("onUnitSelected", unit, target, event);
85
97
  const el = props.columnRef?.current;
86
98
  let overlayPosition = null;
99
+
100
+ /** This is not the natural place to get positions within the column,
101
+ * but it will work for now.
102
+ */
103
+ if (props.onClickedColumn) {
104
+ // Infer height from top and bottom height of unit (because that's passed back with the call)
105
+ //const py = event.y;
106
+ //const [bottom, top] = getUnitHeightRange(unit, axisType);
107
+ //const height = Math.abs(bottom - top);
108
+
109
+ /** Ideally this would be defined at the column level */
110
+ const columnClickData: ColumnClickData = {
111
+ unitID: unit?.unit_id,
112
+ unit,
113
+ target,
114
+ height: el?.getBoundingClientRect().height || 0,
115
+ };
116
+ props.onClickedColumn(columnClickData, event);
117
+ }
118
+
87
119
  if (unit != null && el != null && target != null) {
88
120
  const rect = el.getBoundingClientRect();
89
121
  const targetRect = target.getBoundingClientRect();
@@ -103,7 +135,7 @@ export function UnitSelectionProvider<T extends BaseUnit>(props: {
103
135
  overlayPosition,
104
136
  });
105
137
  },
106
- }))
138
+ })),
107
139
  );
108
140
 
109
141
  const { units, selectedUnit } = props;
@@ -122,7 +154,7 @@ export function UnitSelectionProvider<T extends BaseUnit>(props: {
122
154
  }
123
155
 
124
156
  export function useUnitSelectionTarget(
125
- unit: IUnit
157
+ unit: IUnit,
126
158
  ): [React.RefObject<HTMLElement>, boolean, (evt: Event) => void] {
127
159
  const ref = useRef<HTMLElement>();
128
160
  const selectedUnit = useSelectedUnit();
@@ -131,14 +163,15 @@ export function useUnitSelectionTarget(
131
163
 
132
164
  const onClick = useCallback(
133
165
  (evt: Event) => {
166
+ if (onSelectUnit == null) return;
134
167
  onSelectUnit(unit, ref.current, evt);
135
168
  evt.stopPropagation();
136
169
  },
137
- [unit, onSelectUnit]
170
+ [unit, onSelectUnit],
138
171
  );
139
172
 
140
173
  useEffect(() => {
141
- if (!selected) return;
174
+ if (!selected || onSelectUnit == null) return;
142
175
  // In case we haven't set the position of the unit (if we don't have a target), set the selected unit
143
176
  onSelectUnit(unit, ref.current, null);
144
177
 
@@ -175,7 +208,7 @@ export function UnitKeyboardNavigation<T extends BaseUnit>({
175
208
  selectUnit(units[nextIx], null, null);
176
209
  event.stopPropagation();
177
210
  },
178
- [units, ix]
211
+ [units, ix],
179
212
  );
180
213
  return null;
181
214
  }
@@ -5,6 +5,8 @@ export interface IUnit {
5
5
  t_age: number;
6
6
  b_age: number;
7
7
  [x: string]: any;
8
+ patternID?: string | number;
9
+ color?: string;
8
10
  }
9
11
 
10
12
  export interface RectBounds {
@@ -1 +0,0 @@
1
- {"mappings":";;;;;;;;;;;;;;;;;;AAeA,MAAM,0BAAI,CAAA,GAAA,sBAAI,EAAE,MAAM,CAAC,CAAA,GAAA,yEAAK;AAE5B,MAAM,oCAAc,CAAC,SAAE,KAAK,eAAE,cAAc,gBAAI,aAAa,OAAO;IAClE,MAAM,eAAE,WAAW,EAAE,GAAG,CAAA,GAAA,iBAAS,EAAE,CAAA,GAAA,oBAAY;IAC/C,iCAAiC;IACjC,IAAI,IAAI,KAAK,GAAG,CAAC,KAAK,KAAK,CAAC,cAAc,cAAc;IAExD,OAAO,wBAAE,UAAU;QAAE,WAAW;IAAkB,GAAG;QACnD,wBAAE,CAAA,GAAA,iBAAS,GAAG;YACZ,OAAO;wBACP;QACF;KACD;AACH;AAEO,SAAS,0CAAkB,KAAK;IACrC,MAAM,SAAE,QAAQ,aAAO,OAAO,iBAAM,SAAS,EAAE,GAAG;IAClD,OAAO,wBAAE,wCAAwC;mBAAE;IAAU,GAAG;QAC9D;QACA;QACA,wBAAE,EAAE,CAAC,MAAM,CAAA,GAAA,oBAAY,GAAG;YAAE,WAAW;QAAgB,GAAG;KAC3D;AACH;AAEO,SAAS;IACd,MAAM,YAAE,QAAQ,YAAE,QAAQ,eAAE,WAAW,EAAE,GAAG,CAAA,GAAA,yCAAsB;IAElE,MAAM,WAAW,SAAS,GAAG,CAAC,CAAC;QAC7B,OAAO;YACL,KAAK,CAAC,QAAQ,EAAE,QAAQ,UAAU,EAAE;YACpC,GAAG,QAAQ,SAAS;QACtB;IACF;IAEA,OAAO,wBAAE,2CAAsB;kBAC7B;kBACA;qBACA;IACF;AACF;AAQO,SAAS,0CAAqB,KAAsC;IACzE,MAAM,YAAE,QAAQ,eAAE,WAAW,YAAE,QAAQ,EAAE,GAAG;IAE5C,IAAI,YAAY,CAAA,GAAA,qBAAa,EAAE,OAAO,EACpC,OAAO;IAGT,IAAI,YAAoB;IACxB,IAAI,WAAW;IACf,IAAI,YAAY,CAAA,GAAA,qBAAa,EAAE,KAAK,EAAE;QACpC,YAAY;QACZ,WAAW;IACb,OAAO,IAAI,YAAY,CAAA,GAAA,qBAAa,EAAE,MAAM,EAAE;QAC5C,YAAY;QACZ,WAAW;IACb;IAEA,OAAO,wBAAE;QACP,wBAAE,2CAAmB;YACnB,OAAO;YACP,MAAM;QACR;QACA,wBACE,CAAA,GAAA,UAAE,GACF;YACE,WAAW;YACX,OAAO;gBAAE,OAAO,CAAC,IAAI,CAAC;gBAAE,QAAQ,GAAG,YAAY,EAAE,CAAC;YAAC;YACnD,OAAO;YACP,QAAQ;QACV,GACA,SAAS,GAAG,CAAC,CAAC,OAAO;YACnB,MAAM,OAAE,GAAG,SAAE,KAAK,EAAE,GAAG;YAEvB,OAAO,wBAAE,CAAA,GAAA,cAAM,GAAG;qBAChB;gBACA,WAAW;uBACX;gBACA,eAAe;YACjB;QACF;KAEH;AACH","sources":["packages/column-views/src/age-axis.ts"],"sourcesContent":["import hyper from \"@macrostrat/hyper\";\nimport {\n SVG,\n ColumnSVG,\n ColumnAxis,\n ColumnContext,\n ColumnAxisType,\n AgeAxis,\n} from \"@macrostrat/column-components\";\nimport { useContext } from \"react\";\nimport styles from \"./age-axis.module.sass\";\nimport { useMacrostratColumnData } from \"./data-provider\";\nimport { Parenthetical } from \"@macrostrat/data-components\";\nimport { PackageScaleLayoutData } from \"./prepare-units/composite-scale\";\n\nconst h = hyper.styled(styles);\n\nconst AgeAxisCore = ({ ticks, tickSpacing = 40, showDomain = false }) => {\n const { pixelHeight } = useContext(ColumnContext);\n // A tick roughly every 40 pixels\n let v = Math.max(Math.round(pixelHeight / tickSpacing), 1);\n\n return h(\"g.axis\", { transform: \"translate(20 0)\" }, [\n h(ColumnAxis, {\n ticks: v,\n showDomain,\n }),\n ]);\n};\n\nexport function VerticalAxisLabel(props) {\n const { label = \"Age\", unit = \"Ma\", className } = props;\n return h(\"div.column-axis-label.age-axis-label\", { className }, [\n label,\n \" \",\n h.if(unit)(Parenthetical, { className: \"age-axis-unit\" }, unit),\n ]);\n}\n\nexport function CompositeAgeAxis() {\n const { axisType, sections, totalHeight } = useMacrostratColumnData();\n\n const packages = sections.map((section) => {\n return {\n key: `section-${section.section_id}`,\n ...section.scaleInfo,\n };\n });\n\n return h(CompositeAgeAxisCore, {\n axisType,\n packages,\n totalHeight,\n });\n}\n\nexport interface CompositeStratigraphicScaleInfo {\n axisType: ColumnAxisType;\n totalHeight: number;\n packages: PackageScaleLayoutData[];\n}\n\nexport function CompositeAgeAxisCore(props: CompositeStratigraphicScaleInfo) {\n const { axisType, totalHeight, packages } = props;\n\n if (axisType == ColumnAxisType.ORDINAL) {\n return null;\n }\n\n let axisLabel: string = \"Age\";\n let axisUnit = \"Ma\";\n if (axisType == ColumnAxisType.DEPTH) {\n axisLabel = \"Depth\";\n axisUnit = \"m\";\n } else if (axisType == ColumnAxisType.HEIGHT) {\n axisLabel = \"Height\";\n axisUnit = \"m\";\n }\n\n return h([\n h(VerticalAxisLabel, {\n label: axisLabel,\n unit: axisUnit,\n }),\n h(\n SVG,\n {\n className: \"age-axis-column\",\n style: { width: `22px`, height: `${totalHeight}px` },\n width: 22,\n height: totalHeight,\n },\n packages.map((group, i) => {\n const { key, scale } = group;\n\n return h(AgeAxis, {\n key,\n className: \"age-axis\",\n scale,\n tickSizeOuter: 3,\n });\n })\n ),\n ]);\n}\n"],"names":[],"version":3,"file":"age-axis.4a8cf5e6.js.map"}
@@ -1 +0,0 @@
1
- {"mappings":"AAAA;;;;AAII;;;;;;;AAOA;;;;AAGJ;;;;AAGA;;;;;;;;;;AAQA","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"],"names":[],"version":3,"file":"age-axis.module.03773a80.css.map"}
@@ -1 +0,0 @@
1
- {"mappings":";;;;;;;;;;AAAA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AAHA,4CAA6B,CAAC,eAAe,CAAC;AAC9C,4CAAoC,CAAC,sBAAsB,CAAC;AAC5D,4CAAmC,CAAC,qBAAqB,CAAC;AAC1D,4CAAkC,CAAC,oBAAoB,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"],"names":[],"version":3,"file":"age-axis.module.3cc91335.js.map"}