@macrostrat/column-views 2.4.4 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (657) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/dist/age-axis.cjs +123 -0
  3. package/dist/age-axis.cjs.map +1 -0
  4. package/dist/age-axis.d.ts +33 -0
  5. package/dist/age-axis.js +123 -0
  6. package/dist/age-axis.js.map +1 -0
  7. package/dist/age-axis.module.sass.cjs +18 -0
  8. package/dist/age-axis.module.sass.cjs.map +1 -0
  9. package/dist/age-axis.module.sass.js +18 -0
  10. package/dist/age-axis.module.sass.js.map +1 -0
  11. package/dist/age-model-overlay.cjs +48 -0
  12. package/dist/age-model-overlay.cjs.map +1 -0
  13. package/dist/age-model-overlay.d.ts +24 -0
  14. package/dist/age-model-overlay.js +48 -0
  15. package/dist/age-model-overlay.js.map +1 -0
  16. package/dist/age-model-overlay.module.sass.cjs +8 -0
  17. package/dist/age-model-overlay.module.sass.cjs.map +1 -0
  18. package/dist/age-model-overlay.module.sass.js +8 -0
  19. package/dist/age-model-overlay.module.sass.js.map +1 -0
  20. package/dist/column-views.css +685 -0
  21. package/dist/column.cjs +247 -0
  22. package/dist/column.cjs.map +1 -0
  23. package/dist/column.d.ts +44 -0
  24. package/dist/column.js +247 -0
  25. package/dist/column.js.map +1 -0
  26. package/dist/column.module.sass.cjs +33 -0
  27. package/dist/column.module.sass.cjs.map +1 -0
  28. package/dist/column.module.sass.js +33 -0
  29. package/dist/column.module.sass.js.map +1 -0
  30. package/dist/correlation-chart/hash-string.cjs +46 -0
  31. package/dist/correlation-chart/hash-string.cjs.map +1 -0
  32. package/dist/correlation-chart/hash-string.d.ts +3 -0
  33. package/dist/correlation-chart/hash-string.js +46 -0
  34. package/dist/correlation-chart/hash-string.js.map +1 -0
  35. package/dist/correlation-chart/index.d.ts +2 -0
  36. package/dist/correlation-chart/main.cjs +202 -0
  37. package/dist/correlation-chart/main.cjs.map +1 -0
  38. package/dist/correlation-chart/main.d.ts +15 -0
  39. package/dist/correlation-chart/main.js +202 -0
  40. package/dist/correlation-chart/main.js.map +1 -0
  41. package/dist/correlation-chart/main.module.sass.cjs +28 -0
  42. package/dist/correlation-chart/main.module.sass.cjs.map +1 -0
  43. package/dist/correlation-chart/main.module.sass.js +28 -0
  44. package/dist/correlation-chart/main.module.sass.js.map +1 -0
  45. package/dist/correlation-chart/prepare-data.cjs +62 -0
  46. package/dist/correlation-chart/prepare-data.cjs.map +1 -0
  47. package/dist/correlation-chart/prepare-data.d.ts +52 -0
  48. package/dist/correlation-chart/prepare-data.js +62 -0
  49. package/dist/correlation-chart/prepare-data.js.map +1 -0
  50. package/dist/correlation-chart/stories/utils.d.ts +6 -0
  51. package/dist/correlation-chart/unconformity-line.d.ts +3 -0
  52. package/dist/data-provider/base.cjs +349 -0
  53. package/dist/data-provider/base.cjs.map +1 -0
  54. package/dist/data-provider/base.d.ts +65 -0
  55. package/dist/data-provider/base.js +349 -0
  56. package/dist/data-provider/base.js.map +1 -0
  57. package/dist/data-provider/column-nav.cjs +36 -0
  58. package/dist/data-provider/column-nav.cjs.map +1 -0
  59. package/dist/data-provider/column-nav.d.ts +13 -0
  60. package/dist/data-provider/column-nav.js +36 -0
  61. package/dist/data-provider/column-nav.js.map +1 -0
  62. package/dist/data-provider/core.cjs +56 -0
  63. package/dist/data-provider/core.cjs.map +1 -0
  64. package/dist/data-provider/core.d.ts +31 -0
  65. package/dist/data-provider/core.js +56 -0
  66. package/dist/{esm/column-views.67804ce5.js.map → data-provider/core.js.map} +1 -1
  67. package/dist/data-provider/fetch.cjs +210 -0
  68. package/dist/data-provider/fetch.cjs.map +1 -0
  69. package/dist/data-provider/fetch.d.ts +27 -0
  70. package/dist/data-provider/fetch.js +210 -0
  71. package/dist/data-provider/fetch.js.map +1 -0
  72. package/dist/data-provider/index.d.ts +5 -0
  73. package/dist/data-provider/store.cjs +107 -0
  74. package/dist/data-provider/store.cjs.map +1 -0
  75. package/dist/data-provider/store.d.ts +34 -0
  76. package/dist/data-provider/store.js +107 -0
  77. package/dist/data-provider/store.js.map +1 -0
  78. package/dist/data-provider/unit-selection.cjs +225 -0
  79. package/dist/data-provider/unit-selection.cjs.map +1 -0
  80. package/dist/data-provider/unit-selection.d.ts +49 -0
  81. package/dist/data-provider/unit-selection.js +225 -0
  82. package/dist/data-provider/unit-selection.js.map +1 -0
  83. package/dist/facets/carbon-isotopes/data-area.cjs +64 -0
  84. package/dist/facets/carbon-isotopes/data-area.cjs.map +1 -0
  85. package/dist/facets/carbon-isotopes/data-area.d.ts +13 -0
  86. package/dist/facets/carbon-isotopes/data-area.js +64 -0
  87. package/dist/facets/carbon-isotopes/data-area.js.map +1 -0
  88. package/dist/facets/carbon-isotopes/data-provider.cjs +20 -0
  89. package/dist/facets/carbon-isotopes/data-provider.cjs.map +1 -0
  90. package/dist/facets/carbon-isotopes/data-provider.d.ts +4 -0
  91. package/dist/facets/carbon-isotopes/data-provider.js +20 -0
  92. package/dist/facets/carbon-isotopes/data-provider.js.map +1 -0
  93. package/dist/facets/carbon-isotopes/index.d.ts +2 -0
  94. package/dist/facets/carbon-isotopes/isotopes-column.cjs +174 -0
  95. package/dist/facets/carbon-isotopes/isotopes-column.cjs.map +1 -0
  96. package/dist/facets/carbon-isotopes/isotopes-column.d.ts +19 -0
  97. package/dist/facets/carbon-isotopes/isotopes-column.js +174 -0
  98. package/dist/facets/carbon-isotopes/isotopes-column.js.map +1 -0
  99. package/dist/facets/carbon-isotopes/isotopes-column.module.sass.cjs +15 -0
  100. package/dist/facets/carbon-isotopes/isotopes-column.module.sass.cjs.map +1 -0
  101. package/dist/facets/carbon-isotopes/isotopes-column.module.sass.js +15 -0
  102. package/dist/facets/carbon-isotopes/isotopes-column.module.sass.js.map +1 -0
  103. package/dist/facets/detrital-zircon/index.cjs +108 -0
  104. package/dist/facets/detrital-zircon/index.cjs.map +1 -0
  105. package/dist/facets/detrital-zircon/index.d.ts +24 -0
  106. package/dist/facets/detrital-zircon/index.js +108 -0
  107. package/dist/facets/detrital-zircon/index.js.map +1 -0
  108. package/dist/facets/detrital-zircon/index.module.sass.cjs +11 -0
  109. package/dist/facets/detrital-zircon/index.module.sass.cjs.map +1 -0
  110. package/dist/facets/detrital-zircon/index.module.sass.js +11 -0
  111. package/dist/facets/detrital-zircon/index.module.sass.js.map +1 -0
  112. package/dist/facets/detrital-zircon/provider.cjs +22 -0
  113. package/dist/facets/detrital-zircon/provider.cjs.map +1 -0
  114. package/dist/facets/detrital-zircon/provider.d.ts +31 -0
  115. package/dist/facets/detrital-zircon/provider.js +22 -0
  116. package/dist/facets/detrital-zircon/provider.js.map +1 -0
  117. package/dist/facets/fossils/index.cjs +120 -0
  118. package/dist/facets/fossils/index.cjs.map +1 -0
  119. package/dist/facets/fossils/index.d.ts +7 -0
  120. package/dist/facets/fossils/index.js +120 -0
  121. package/dist/facets/fossils/index.js.map +1 -0
  122. package/dist/facets/fossils/provider.cjs +99 -0
  123. package/dist/facets/fossils/provider.cjs.map +1 -0
  124. package/dist/facets/fossils/provider.d.ts +29 -0
  125. package/dist/facets/fossils/provider.js +99 -0
  126. package/dist/facets/fossils/provider.js.map +1 -0
  127. package/dist/facets/fossils/taxon-ranges.cjs +145 -0
  128. package/dist/facets/fossils/taxon-ranges.cjs.map +1 -0
  129. package/dist/facets/fossils/taxon-ranges.d.ts +3 -0
  130. package/dist/facets/fossils/taxon-ranges.js +145 -0
  131. package/dist/facets/fossils/taxon-ranges.js.map +1 -0
  132. package/dist/facets/fossils/taxon-ranges.module.sass.cjs +13 -0
  133. package/dist/facets/fossils/taxon-ranges.module.sass.cjs.map +1 -0
  134. package/dist/facets/fossils/taxon-ranges.module.sass.js +13 -0
  135. package/dist/facets/fossils/taxon-ranges.module.sass.js.map +1 -0
  136. package/dist/facets/index.d.ts +4 -0
  137. package/dist/facets/measurements/base.cjs +128 -0
  138. package/dist/facets/measurements/base.cjs.map +1 -0
  139. package/dist/facets/measurements/base.d.ts +46 -0
  140. package/dist/facets/measurements/base.js +128 -0
  141. package/dist/facets/measurements/base.js.map +1 -0
  142. package/dist/facets/measurements/base.module.sass.cjs +8 -0
  143. package/dist/facets/measurements/base.module.sass.cjs.map +1 -0
  144. package/dist/facets/measurements/base.module.sass.js +8 -0
  145. package/dist/facets/measurements/base.module.sass.js.map +1 -0
  146. package/dist/facets/measurements/index.d.ts +2 -0
  147. package/dist/facets/measurements/sgp.cjs +62 -0
  148. package/dist/facets/measurements/sgp.cjs.map +1 -0
  149. package/dist/facets/measurements/sgp.d.ts +3 -0
  150. package/dist/facets/measurements/sgp.js +62 -0
  151. package/dist/facets/measurements/sgp.js.map +1 -0
  152. package/dist/index.cjs +164 -0
  153. package/dist/index.cjs.map +1 -0
  154. package/dist/index.d.ts +11 -0
  155. package/dist/index.js +164 -0
  156. package/dist/index.js.map +1 -0
  157. package/dist/maps/_shared/index.d.ts +2 -0
  158. package/dist/maps/_shared/inset-map.cjs +69 -0
  159. package/dist/maps/_shared/inset-map.cjs.map +1 -0
  160. package/dist/maps/_shared/inset-map.d.ts +16 -0
  161. package/dist/maps/_shared/inset-map.js +69 -0
  162. package/dist/maps/_shared/inset-map.js.map +1 -0
  163. package/dist/maps/_shared/styles.cjs +68 -0
  164. package/dist/maps/_shared/styles.cjs.map +1 -0
  165. package/dist/maps/_shared/styles.d.ts +2 -0
  166. package/dist/maps/_shared/styles.js +68 -0
  167. package/dist/maps/_shared/styles.js.map +1 -0
  168. package/dist/maps/column-correlation/core.cjs +185 -0
  169. package/dist/maps/column-correlation/core.cjs.map +1 -0
  170. package/dist/maps/column-correlation/core.d.ts +9 -0
  171. package/dist/maps/column-correlation/core.js +185 -0
  172. package/dist/maps/column-correlation/core.js.map +1 -0
  173. package/dist/maps/column-correlation/index.d.ts +2 -0
  174. package/dist/maps/column-correlation/state.cjs +129 -0
  175. package/dist/maps/column-correlation/state.cjs.map +1 -0
  176. package/dist/maps/column-correlation/state.d.ts +31 -0
  177. package/dist/maps/column-correlation/state.js +129 -0
  178. package/dist/maps/column-correlation/state.js.map +1 -0
  179. package/dist/maps/column-navigation/index.d.ts +2 -0
  180. package/dist/maps/column-navigation/mapbox/index.cjs +175 -0
  181. package/dist/maps/column-navigation/mapbox/index.cjs.map +1 -0
  182. package/dist/maps/column-navigation/mapbox/index.d.ts +17 -0
  183. package/dist/maps/column-navigation/mapbox/index.js +175 -0
  184. package/dist/maps/column-navigation/mapbox/index.js.map +1 -0
  185. package/dist/maps/column-navigation/mapbox/keyboard-navigation.cjs +99 -0
  186. package/dist/maps/column-navigation/mapbox/keyboard-navigation.cjs.map +1 -0
  187. package/dist/maps/column-navigation/mapbox/keyboard-navigation.d.ts +31 -0
  188. package/dist/maps/column-navigation/mapbox/keyboard-navigation.js +99 -0
  189. package/dist/maps/column-navigation/mapbox/keyboard-navigation.js.map +1 -0
  190. package/dist/maps/column-navigation/mapbox/state.cjs +71 -0
  191. package/dist/maps/column-navigation/mapbox/state.cjs.map +1 -0
  192. package/dist/maps/column-navigation/mapbox/state.d.ts +23 -0
  193. package/dist/maps/column-navigation/mapbox/state.js +71 -0
  194. package/dist/maps/column-navigation/mapbox/state.js.map +1 -0
  195. package/dist/maps/column-navigation/svg/animated.d.ts +1 -0
  196. package/dist/maps/column-navigation/svg/index.cjs +92 -0
  197. package/dist/maps/column-navigation/svg/index.cjs.map +1 -0
  198. package/dist/maps/column-navigation/svg/index.d.ts +9 -0
  199. package/dist/maps/column-navigation/svg/index.js +93 -0
  200. package/dist/maps/column-navigation/svg/index.js.map +1 -0
  201. package/dist/maps/column-navigation/svg/layers.cjs +175 -0
  202. package/dist/maps/column-navigation/svg/layers.cjs.map +1 -0
  203. package/dist/maps/column-navigation/svg/layers.d.ts +54 -0
  204. package/dist/maps/column-navigation/svg/layers.js +175 -0
  205. package/dist/maps/column-navigation/svg/layers.js.map +1 -0
  206. package/dist/maps/column-navigation/utils/keyboard-navigation.cjs +50 -0
  207. package/dist/maps/column-navigation/utils/keyboard-navigation.cjs.map +1 -0
  208. package/dist/maps/column-navigation/utils/keyboard-navigation.d.ts +10 -0
  209. package/dist/maps/column-navigation/utils/keyboard-navigation.js +50 -0
  210. package/dist/maps/column-navigation/utils/keyboard-navigation.js.map +1 -0
  211. package/dist/maps/index.d.ts +3 -0
  212. package/dist/notes.cjs +41 -0
  213. package/dist/notes.cjs.map +1 -0
  214. package/dist/notes.d.ts +12 -0
  215. package/dist/notes.js +41 -0
  216. package/dist/notes.js.map +1 -0
  217. package/dist/prepare-units/composite-scale.cjs +284 -0
  218. package/dist/prepare-units/composite-scale.cjs.map +1 -0
  219. package/dist/prepare-units/composite-scale.d.ts +19 -0
  220. package/dist/prepare-units/composite-scale.js +284 -0
  221. package/dist/prepare-units/composite-scale.js.map +1 -0
  222. package/dist/prepare-units/dynamic-scales.cjs +190 -0
  223. package/dist/prepare-units/dynamic-scales.cjs.map +1 -0
  224. package/dist/prepare-units/dynamic-scales.d.ts +13 -0
  225. package/dist/prepare-units/dynamic-scales.js +190 -0
  226. package/dist/prepare-units/dynamic-scales.js.map +1 -0
  227. package/dist/prepare-units/helpers.cjs +198 -0
  228. package/dist/prepare-units/helpers.cjs.map +1 -0
  229. package/dist/prepare-units/helpers.d.ts +10 -0
  230. package/dist/prepare-units/helpers.js +198 -0
  231. package/dist/prepare-units/helpers.js.map +1 -0
  232. package/dist/prepare-units/index.cjs +130 -0
  233. package/dist/prepare-units/index.cjs.map +1 -0
  234. package/dist/prepare-units/index.d.ts +10 -0
  235. package/dist/prepare-units/index.js +131 -0
  236. package/dist/prepare-units/index.js.map +1 -0
  237. package/dist/prepare-units/types.cjs +16 -0
  238. package/dist/prepare-units/types.cjs.map +1 -0
  239. package/dist/prepare-units/types.d.ts +99 -0
  240. package/dist/prepare-units/types.js +16 -0
  241. package/dist/prepare-units/types.js.map +1 -0
  242. package/dist/prepare-units/utils.cjs +99 -0
  243. package/dist/prepare-units/utils.cjs.map +1 -0
  244. package/dist/prepare-units/utils.d.ts +39 -0
  245. package/dist/prepare-units/utils.js +99 -0
  246. package/dist/prepare-units/utils.js.map +1 -0
  247. package/dist/section.cjs +269 -0
  248. package/dist/section.cjs.map +1 -0
  249. package/dist/section.d.ts +45 -0
  250. package/dist/section.js +269 -0
  251. package/dist/section.js.map +1 -0
  252. package/dist/unit-details/index.d.ts +3 -0
  253. package/dist/unit-details/modal-panel.cjs +57 -0
  254. package/dist/unit-details/modal-panel.cjs.map +1 -0
  255. package/dist/unit-details/modal-panel.d.ts +1 -0
  256. package/dist/unit-details/modal-panel.js +57 -0
  257. package/dist/unit-details/modal-panel.js.map +1 -0
  258. package/dist/unit-details/panel.cjs +627 -0
  259. package/dist/unit-details/panel.cjs.map +1 -0
  260. package/dist/unit-details/panel.d.ts +87 -0
  261. package/dist/unit-details/panel.js +627 -0
  262. package/dist/unit-details/panel.js.map +1 -0
  263. package/dist/unit-details/panel.module.sass.cjs +42 -0
  264. package/dist/unit-details/panel.module.sass.cjs.map +1 -0
  265. package/dist/unit-details/panel.module.sass.js +42 -0
  266. package/dist/unit-details/panel.module.sass.js.map +1 -0
  267. package/dist/unit-details/popover.cjs +81 -0
  268. package/dist/unit-details/popover.cjs.map +1 -0
  269. package/dist/unit-details/popover.d.ts +9 -0
  270. package/dist/unit-details/popover.js +81 -0
  271. package/dist/unit-details/popover.js.map +1 -0
  272. package/dist/unit-details/popover.module.sass.cjs +10 -0
  273. package/dist/unit-details/popover.module.sass.cjs.map +1 -0
  274. package/dist/unit-details/popover.module.sass.js +10 -0
  275. package/dist/unit-details/popover.module.sass.js.map +1 -0
  276. package/dist/units/boxes.cjs +187 -0
  277. package/dist/units/boxes.cjs.map +1 -0
  278. package/dist/units/boxes.d.ts +54 -0
  279. package/dist/units/boxes.js +187 -0
  280. package/dist/units/boxes.js.map +1 -0
  281. package/dist/units/boxes.module.sass.cjs +11 -0
  282. package/dist/units/boxes.module.sass.cjs.map +1 -0
  283. package/dist/units/boxes.module.sass.js +11 -0
  284. package/dist/units/boxes.module.sass.js.map +1 -0
  285. package/dist/units/colors.cjs +52 -0
  286. package/dist/units/colors.cjs.map +1 -0
  287. package/dist/units/colors.d.ts +7 -0
  288. package/dist/units/colors.js +52 -0
  289. package/dist/units/colors.js.map +1 -0
  290. package/dist/units/composite.cjs +157 -0
  291. package/dist/units/composite.cjs.map +1 -0
  292. package/dist/units/composite.d.ts +39 -0
  293. package/dist/units/composite.js +157 -0
  294. package/dist/units/composite.js.map +1 -0
  295. package/dist/units/composite.module.sass.cjs +7 -0
  296. package/dist/units/composite.module.sass.cjs.map +1 -0
  297. package/dist/units/composite.module.sass.js +7 -0
  298. package/dist/units/composite.module.sass.js.map +1 -0
  299. package/dist/units/index.cjs +117 -0
  300. package/dist/units/index.cjs.map +1 -0
  301. package/dist/units/index.d.ts +40 -0
  302. package/dist/units/index.js +118 -0
  303. package/dist/units/index.js.map +1 -0
  304. package/dist/units/names.cjs +72 -0
  305. package/dist/units/names.cjs.map +1 -0
  306. package/dist/units/names.d.ts +33 -0
  307. package/dist/units/names.js +72 -0
  308. package/dist/units/names.js.map +1 -0
  309. package/dist/units/resolvers.cjs +114 -0
  310. package/dist/units/resolvers.cjs.map +1 -0
  311. package/dist/units/resolvers.d.ts +3 -0
  312. package/dist/units/resolvers.js +114 -0
  313. package/dist/units/resolvers.js.map +1 -0
  314. package/dist/units/types.d.ts +16 -0
  315. package/package.json +52 -55
  316. package/src/unit-details/popover.module.sass +3 -3
  317. package/dist/esm/column-views.006d5180.js +0 -97
  318. package/dist/esm/column-views.006d5180.js.map +0 -1
  319. package/dist/esm/column-views.052498a6.js +0 -93
  320. package/dist/esm/column-views.052498a6.js.map +0 -1
  321. package/dist/esm/column-views.079119f4.js +0 -17
  322. package/dist/esm/column-views.079119f4.js.map +0 -1
  323. package/dist/esm/column-views.0abf7e10.js +0 -67
  324. package/dist/esm/column-views.0abf7e10.js.map +0 -1
  325. package/dist/esm/column-views.0b3c0d18.js +0 -322
  326. package/dist/esm/column-views.0b3c0d18.js.map +0 -1
  327. package/dist/esm/column-views.0ed9da35.js +0 -141
  328. package/dist/esm/column-views.0ed9da35.js.map +0 -1
  329. package/dist/esm/column-views.0faf79a9.js +0 -142
  330. package/dist/esm/column-views.0faf79a9.js.map +0 -1
  331. package/dist/esm/column-views.16cc7a58.css +0 -37
  332. package/dist/esm/column-views.16cc7a58.css.map +0 -1
  333. package/dist/esm/column-views.17a70358.js +0 -16
  334. package/dist/esm/column-views.17a70358.js.map +0 -1
  335. package/dist/esm/column-views.19539293.js +0 -86
  336. package/dist/esm/column-views.19539293.js.map +0 -1
  337. package/dist/esm/column-views.1af3ec1f.js +0 -139
  338. package/dist/esm/column-views.1af3ec1f.js.map +0 -1
  339. package/dist/esm/column-views.1cd55918.js +0 -206
  340. package/dist/esm/column-views.1cd55918.js.map +0 -1
  341. package/dist/esm/column-views.22ec902b.js +0 -34
  342. package/dist/esm/column-views.22ec902b.js.map +0 -1
  343. package/dist/esm/column-views.2a0010a3.js +0 -15
  344. package/dist/esm/column-views.2a0010a3.js.map +0 -1
  345. package/dist/esm/column-views.2c45a7b5.js +0 -25
  346. package/dist/esm/column-views.2c45a7b5.js.map +0 -1
  347. package/dist/esm/column-views.321af3ae.css +0 -59
  348. package/dist/esm/column-views.321af3ae.css.map +0 -1
  349. package/dist/esm/column-views.334c3947.js +0 -75
  350. package/dist/esm/column-views.334c3947.js.map +0 -1
  351. package/dist/esm/column-views.33796541.js +0 -88
  352. package/dist/esm/column-views.33796541.js.map +0 -1
  353. package/dist/esm/column-views.337b40a2.js +0 -199
  354. package/dist/esm/column-views.337b40a2.js.map +0 -1
  355. package/dist/esm/column-views.338a7a83.css +0 -134
  356. package/dist/esm/column-views.338a7a83.css.map +0 -1
  357. package/dist/esm/column-views.33d35a44.js +0 -118
  358. package/dist/esm/column-views.33d35a44.js.map +0 -1
  359. package/dist/esm/column-views.3465c8ad.js +0 -16
  360. package/dist/esm/column-views.3465c8ad.js.map +0 -1
  361. package/dist/esm/column-views.362aae9a.js +0 -113
  362. package/dist/esm/column-views.362aae9a.js.map +0 -1
  363. package/dist/esm/column-views.3b972a9b.css +0 -4
  364. package/dist/esm/column-views.3b972a9b.css.map +0 -1
  365. package/dist/esm/column-views.3de4dc43.js +0 -66
  366. package/dist/esm/column-views.3de4dc43.js.map +0 -1
  367. package/dist/esm/column-views.40cd59b5.js +0 -13
  368. package/dist/esm/column-views.40cd59b5.js.map +0 -1
  369. package/dist/esm/column-views.4252a555.js +0 -248
  370. package/dist/esm/column-views.4252a555.js.map +0 -1
  371. package/dist/esm/column-views.45c70ba4.js +0 -38
  372. package/dist/esm/column-views.45c70ba4.js.map +0 -1
  373. package/dist/esm/column-views.47b7d9ca.js +0 -206
  374. package/dist/esm/column-views.47b7d9ca.js.map +0 -1
  375. package/dist/esm/column-views.47ca059d.js +0 -225
  376. package/dist/esm/column-views.47ca059d.js.map +0 -1
  377. package/dist/esm/column-views.4d374a35.js +0 -19
  378. package/dist/esm/column-views.4d374a35.js.map +0 -1
  379. package/dist/esm/column-views.54c1f382.css +0 -23
  380. package/dist/esm/column-views.54c1f382.css.map +0 -1
  381. package/dist/esm/column-views.562db43a.css +0 -148
  382. package/dist/esm/column-views.562db43a.css.map +0 -1
  383. package/dist/esm/column-views.5e1c216f.js +0 -180
  384. package/dist/esm/column-views.5e1c216f.js.map +0 -1
  385. package/dist/esm/column-views.60e97132.js +0 -20
  386. package/dist/esm/column-views.60e97132.js.map +0 -1
  387. package/dist/esm/column-views.636d6553.js +0 -343
  388. package/dist/esm/column-views.636d6553.js.map +0 -1
  389. package/dist/esm/column-views.64f6ddd3.js +0 -9
  390. package/dist/esm/column-views.64f6ddd3.js.map +0 -1
  391. package/dist/esm/column-views.6519a353.js +0 -9
  392. package/dist/esm/column-views.6519a353.js.map +0 -1
  393. package/dist/esm/column-views.67804ce5.js +0 -68
  394. package/dist/esm/column-views.6992ca88.js +0 -25
  395. package/dist/esm/column-views.6992ca88.js.map +0 -1
  396. package/dist/esm/column-views.6a954628.js +0 -70
  397. package/dist/esm/column-views.6a954628.js.map +0 -1
  398. package/dist/esm/column-views.6c670c13.css +0 -26
  399. package/dist/esm/column-views.6c670c13.css.map +0 -1
  400. package/dist/esm/column-views.6cff6659.js +0 -11
  401. package/dist/esm/column-views.6cff6659.js.map +0 -1
  402. package/dist/esm/column-views.6d6b73b4.js +0 -55
  403. package/dist/esm/column-views.6d6b73b4.js.map +0 -1
  404. package/dist/esm/column-views.6f9511d1.css +0 -25
  405. package/dist/esm/column-views.6f9511d1.css.map +0 -1
  406. package/dist/esm/column-views.6fff7602.js +0 -94
  407. package/dist/esm/column-views.6fff7602.js.map +0 -1
  408. package/dist/esm/column-views.70387120.js +0 -9
  409. package/dist/esm/column-views.70387120.js.map +0 -1
  410. package/dist/esm/column-views.708140ab.css +0 -36
  411. package/dist/esm/column-views.708140ab.css.map +0 -1
  412. package/dist/esm/column-views.74837922.js +0 -112
  413. package/dist/esm/column-views.74837922.js.map +0 -1
  414. package/dist/esm/column-views.76fb9948.js +0 -169
  415. package/dist/esm/column-views.76fb9948.js.map +0 -1
  416. package/dist/esm/column-views.7bfb4318.js +0 -161
  417. package/dist/esm/column-views.7bfb4318.js.map +0 -1
  418. package/dist/esm/column-views.7dc53f1b.js +0 -168
  419. package/dist/esm/column-views.7dc53f1b.js.map +0 -1
  420. package/dist/esm/column-views.85df21ec.js +0 -567
  421. package/dist/esm/column-views.85df21ec.js.map +0 -1
  422. package/dist/esm/column-views.87c589b7.js +0 -72
  423. package/dist/esm/column-views.87c589b7.js.map +0 -1
  424. package/dist/esm/column-views.8da2b857.js +0 -81
  425. package/dist/esm/column-views.8da2b857.js.map +0 -1
  426. package/dist/esm/column-views.8fb37de7.js +0 -9
  427. package/dist/esm/column-views.8fb37de7.js.map +0 -1
  428. package/dist/esm/column-views.9512c5d5.js +0 -240
  429. package/dist/esm/column-views.9512c5d5.js.map +0 -1
  430. package/dist/esm/column-views.9905b91c.js +0 -11
  431. package/dist/esm/column-views.9905b91c.js.map +0 -1
  432. package/dist/esm/column-views.9b77388d.js +0 -41
  433. package/dist/esm/column-views.9b77388d.js.map +0 -1
  434. package/dist/esm/column-views.a4f394fe.js +0 -127
  435. package/dist/esm/column-views.a4f394fe.js.map +0 -1
  436. package/dist/esm/column-views.a7c5ae16.js +0 -25
  437. package/dist/esm/column-views.a7c5ae16.js.map +0 -1
  438. package/dist/esm/column-views.aa9ede4d.js +0 -206
  439. package/dist/esm/column-views.aa9ede4d.js.map +0 -1
  440. package/dist/esm/column-views.b7cf0da2.js +0 -60
  441. package/dist/esm/column-views.b7cf0da2.js.map +0 -1
  442. package/dist/esm/column-views.beb54e95.js +0 -39
  443. package/dist/esm/column-views.beb54e95.js.map +0 -1
  444. package/dist/esm/column-views.c47dba5f.js +0 -9
  445. package/dist/esm/column-views.c47dba5f.js.map +0 -1
  446. package/dist/esm/column-views.c750a6df.js +0 -9
  447. package/dist/esm/column-views.c750a6df.js.map +0 -1
  448. package/dist/esm/column-views.cb1cc9f2.js +0 -134
  449. package/dist/esm/column-views.cb1cc9f2.js.map +0 -1
  450. package/dist/esm/column-views.cb6fc808.css +0 -54
  451. package/dist/esm/column-views.cb6fc808.css.map +0 -1
  452. package/dist/esm/column-views.cc733361.js +0 -55
  453. package/dist/esm/column-views.cc733361.js.map +0 -1
  454. package/dist/esm/column-views.ce000969.js +0 -187
  455. package/dist/esm/column-views.ce000969.js.map +0 -1
  456. package/dist/esm/column-views.d5e788e8.js +0 -31
  457. package/dist/esm/column-views.d5e788e8.js.map +0 -1
  458. package/dist/esm/column-views.d7740949.js +0 -152
  459. package/dist/esm/column-views.d7740949.js.map +0 -1
  460. package/dist/esm/column-views.d7e6bf67.js +0 -70
  461. package/dist/esm/column-views.d7e6bf67.js.map +0 -1
  462. package/dist/esm/column-views.dac0a3bb.js +0 -149
  463. package/dist/esm/column-views.dac0a3bb.js.map +0 -1
  464. package/dist/esm/column-views.dc42f5d0.js +0 -48
  465. package/dist/esm/column-views.dc42f5d0.js.map +0 -1
  466. package/dist/esm/column-views.e13a0a76.js +0 -138
  467. package/dist/esm/column-views.e13a0a76.js.map +0 -1
  468. package/dist/esm/column-views.e40b8bfb.css +0 -14
  469. package/dist/esm/column-views.e40b8bfb.css.map +0 -1
  470. package/dist/esm/column-views.e93478c3.css +0 -194
  471. package/dist/esm/column-views.e93478c3.css.map +0 -1
  472. package/dist/esm/column-views.ea08f667.js +0 -218
  473. package/dist/esm/column-views.ea08f667.js.map +0 -1
  474. package/dist/esm/column-views.ebb5f280.js +0 -13
  475. package/dist/esm/column-views.ebb5f280.js.map +0 -1
  476. package/dist/esm/column-views.edf77621.js +0 -22
  477. package/dist/esm/column-views.edf77621.js.map +0 -1
  478. package/dist/esm/column-views.f9dab157.js +0 -3
  479. package/dist/esm/column-views.f9dab157.js.map +0 -1
  480. package/dist/esm/column-views.fcf25ec6.js +0 -76
  481. package/dist/esm/column-views.fcf25ec6.js.map +0 -1
  482. package/dist/esm/column-views.fe42d2fc.js +0 -134
  483. package/dist/esm/column-views.fe42d2fc.js.map +0 -1
  484. package/dist/esm/index.d.ts +0 -1008
  485. package/dist/esm/index.d.ts.map +0 -1
  486. package/dist/esm/index.js +0 -27
  487. package/dist/esm/index.js.map +0 -1
  488. package/dist/node/column-views.012fa10c.js +0 -2
  489. package/dist/node/column-views.012fa10c.js.map +0 -1
  490. package/dist/node/column-views.048fdcaf.js +0 -2
  491. package/dist/node/column-views.048fdcaf.js.map +0 -1
  492. package/dist/node/column-views.04a72b35.js +0 -2
  493. package/dist/node/column-views.04a72b35.js.map +0 -1
  494. package/dist/node/column-views.0840b115.css +0 -2
  495. package/dist/node/column-views.0840b115.css.map +0 -1
  496. package/dist/node/column-views.0af5912d.js +0 -2
  497. package/dist/node/column-views.0af5912d.js.map +0 -1
  498. package/dist/node/column-views.0bd15ee4.js +0 -2
  499. package/dist/node/column-views.0bd15ee4.js.map +0 -1
  500. package/dist/node/column-views.0d254fd3.js +0 -2
  501. package/dist/node/column-views.0d254fd3.js.map +0 -1
  502. package/dist/node/column-views.109cb0c8.js +0 -2
  503. package/dist/node/column-views.109cb0c8.js.map +0 -1
  504. package/dist/node/column-views.1261be59.js +0 -2
  505. package/dist/node/column-views.1261be59.js.map +0 -1
  506. package/dist/node/column-views.133855e6.js +0 -2
  507. package/dist/node/column-views.133855e6.js.map +0 -1
  508. package/dist/node/column-views.15b5cecc.js +0 -2
  509. package/dist/node/column-views.15b5cecc.js.map +0 -1
  510. package/dist/node/column-views.183745c0.js +0 -2
  511. package/dist/node/column-views.183745c0.js.map +0 -1
  512. package/dist/node/column-views.2e2158f5.js +0 -2
  513. package/dist/node/column-views.2e2158f5.js.map +0 -1
  514. package/dist/node/column-views.306acd3f.js +0 -2
  515. package/dist/node/column-views.306acd3f.js.map +0 -1
  516. package/dist/node/column-views.31153f29.js +0 -2
  517. package/dist/node/column-views.31153f29.js.map +0 -1
  518. package/dist/node/column-views.31da008b.js +0 -2
  519. package/dist/node/column-views.31da008b.js.map +0 -1
  520. package/dist/node/column-views.3a079e34.css +0 -2
  521. package/dist/node/column-views.3a079e34.css.map +0 -1
  522. package/dist/node/column-views.40e758b3.js +0 -2
  523. package/dist/node/column-views.40e758b3.js.map +0 -1
  524. package/dist/node/column-views.41876859.js +0 -2
  525. package/dist/node/column-views.41876859.js.map +0 -1
  526. package/dist/node/column-views.4a28d695.js +0 -2
  527. package/dist/node/column-views.4a28d695.js.map +0 -1
  528. package/dist/node/column-views.4ec769a6.js +0 -2
  529. package/dist/node/column-views.4ec769a6.js.map +0 -1
  530. package/dist/node/column-views.50a992d3.css +0 -2
  531. package/dist/node/column-views.50a992d3.css.map +0 -1
  532. package/dist/node/column-views.51fbed89.js +0 -2
  533. package/dist/node/column-views.51fbed89.js.map +0 -1
  534. package/dist/node/column-views.5950c8eb.js +0 -2
  535. package/dist/node/column-views.5950c8eb.js.map +0 -1
  536. package/dist/node/column-views.5987bc26.js +0 -2
  537. package/dist/node/column-views.5987bc26.js.map +0 -1
  538. package/dist/node/column-views.5a9331a9.js +0 -2
  539. package/dist/node/column-views.5a9331a9.js.map +0 -1
  540. package/dist/node/column-views.5bb858c9.js +0 -2
  541. package/dist/node/column-views.5bb858c9.js.map +0 -1
  542. package/dist/node/column-views.5c1b0eeb.css +0 -2
  543. package/dist/node/column-views.5c1b0eeb.css.map +0 -1
  544. package/dist/node/column-views.5cbada24.js +0 -2
  545. package/dist/node/column-views.5cbada24.js.map +0 -1
  546. package/dist/node/column-views.5fcd2be6.js +0 -2
  547. package/dist/node/column-views.5fcd2be6.js.map +0 -1
  548. package/dist/node/column-views.672b683c.js +0 -2
  549. package/dist/node/column-views.672b683c.js.map +0 -1
  550. package/dist/node/column-views.6a0a35e7.js +0 -2
  551. package/dist/node/column-views.6a0a35e7.js.map +0 -1
  552. package/dist/node/column-views.6a4c2100.css +0 -2
  553. package/dist/node/column-views.6a4c2100.css.map +0 -1
  554. package/dist/node/column-views.6a9da051.js +0 -2
  555. package/dist/node/column-views.6a9da051.js.map +0 -1
  556. package/dist/node/column-views.6bba8c57.js +0 -2
  557. package/dist/node/column-views.6bba8c57.js.map +0 -1
  558. package/dist/node/column-views.75ba0464.css +0 -2
  559. package/dist/node/column-views.75ba0464.css.map +0 -1
  560. package/dist/node/column-views.78b2d234.js +0 -2
  561. package/dist/node/column-views.78b2d234.js.map +0 -1
  562. package/dist/node/column-views.7b6e7d82.js +0 -2
  563. package/dist/node/column-views.7b6e7d82.js.map +0 -1
  564. package/dist/node/column-views.7b9bd06e.css +0 -2
  565. package/dist/node/column-views.7b9bd06e.css.map +0 -1
  566. package/dist/node/column-views.7d45bbeb.js +0 -2
  567. package/dist/node/column-views.7d45bbeb.js.map +0 -1
  568. package/dist/node/column-views.7f9c7448.js +0 -2
  569. package/dist/node/column-views.7f9c7448.js.map +0 -1
  570. package/dist/node/column-views.82cf7c0d.js +0 -2
  571. package/dist/node/column-views.82cf7c0d.js.map +0 -1
  572. package/dist/node/column-views.869c7199.js +0 -2
  573. package/dist/node/column-views.869c7199.js.map +0 -1
  574. package/dist/node/column-views.8bee789c.js +0 -2
  575. package/dist/node/column-views.8bee789c.js.map +0 -1
  576. package/dist/node/column-views.90c36c0b.js +0 -2
  577. package/dist/node/column-views.90c36c0b.js.map +0 -1
  578. package/dist/node/column-views.951e3e9a.js +0 -2
  579. package/dist/node/column-views.951e3e9a.js.map +0 -1
  580. package/dist/node/column-views.95411f1b.js +0 -2
  581. package/dist/node/column-views.95411f1b.js.map +0 -1
  582. package/dist/node/column-views.9cb13e51.css +0 -2
  583. package/dist/node/column-views.9cb13e51.css.map +0 -1
  584. package/dist/node/column-views.a0969fc8.js +0 -2
  585. package/dist/node/column-views.a0969fc8.js.map +0 -1
  586. package/dist/node/column-views.a2476e39.js +0 -2
  587. package/dist/node/column-views.a2476e39.js.map +0 -1
  588. package/dist/node/column-views.a8f5ee28.js +0 -2
  589. package/dist/node/column-views.a8f5ee28.js.map +0 -1
  590. package/dist/node/column-views.ad60c02f.js +0 -2
  591. package/dist/node/column-views.ad60c02f.js.map +0 -1
  592. package/dist/node/column-views.add5e42b.js +0 -2
  593. package/dist/node/column-views.add5e42b.js.map +0 -1
  594. package/dist/node/column-views.b169b4b5.css +0 -2
  595. package/dist/node/column-views.b169b4b5.css.map +0 -1
  596. package/dist/node/column-views.b2e5f823.js +0 -2
  597. package/dist/node/column-views.b2e5f823.js.map +0 -1
  598. package/dist/node/column-views.b57e5e6e.js +0 -2
  599. package/dist/node/column-views.b57e5e6e.js.map +0 -1
  600. package/dist/node/column-views.b762c9a8.js +0 -2
  601. package/dist/node/column-views.b762c9a8.js.map +0 -1
  602. package/dist/node/column-views.ba9108fe.js +0 -2
  603. package/dist/node/column-views.ba9108fe.js.map +0 -1
  604. package/dist/node/column-views.c16a19fb.js +0 -2
  605. package/dist/node/column-views.c16a19fb.js.map +0 -1
  606. package/dist/node/column-views.c3097d9a.js +0 -2
  607. package/dist/node/column-views.c3097d9a.js.map +0 -1
  608. package/dist/node/column-views.c4c15e2b.js +0 -2
  609. package/dist/node/column-views.c4c15e2b.js.map +0 -1
  610. package/dist/node/column-views.c651b684.js +0 -2
  611. package/dist/node/column-views.c651b684.js.map +0 -1
  612. package/dist/node/column-views.c968a185.css +0 -2
  613. package/dist/node/column-views.c968a185.css.map +0 -1
  614. package/dist/node/column-views.ccfb9afb.css +0 -2
  615. package/dist/node/column-views.ccfb9afb.css.map +0 -1
  616. package/dist/node/column-views.cdcce702.js +0 -2
  617. package/dist/node/column-views.cdcce702.js.map +0 -1
  618. package/dist/node/column-views.cf41a6d7.js +0 -2
  619. package/dist/node/column-views.cf41a6d7.js.map +0 -1
  620. package/dist/node/column-views.d22bf15c.js +0 -2
  621. package/dist/node/column-views.d22bf15c.js.map +0 -1
  622. package/dist/node/column-views.d737de1e.js +0 -2
  623. package/dist/node/column-views.d737de1e.js.map +0 -1
  624. package/dist/node/column-views.da902c44.js +0 -2
  625. package/dist/node/column-views.da902c44.js.map +0 -1
  626. package/dist/node/column-views.db3377d8.js +0 -2
  627. package/dist/node/column-views.db3377d8.js.map +0 -1
  628. package/dist/node/column-views.dbb4a46b.js +0 -2
  629. package/dist/node/column-views.dbb4a46b.js.map +0 -1
  630. package/dist/node/column-views.ddc6184e.css +0 -2
  631. package/dist/node/column-views.ddc6184e.css.map +0 -1
  632. package/dist/node/column-views.e0e20136.js +0 -2
  633. package/dist/node/column-views.e0e20136.js.map +0 -1
  634. package/dist/node/column-views.e2562224.js +0 -2
  635. package/dist/node/column-views.e2562224.js.map +0 -1
  636. package/dist/node/column-views.e6720522.js +0 -2
  637. package/dist/node/column-views.e6720522.js.map +0 -1
  638. package/dist/node/column-views.e7e26765.js +0 -2
  639. package/dist/node/column-views.e7e26765.js.map +0 -1
  640. package/dist/node/column-views.e93b3bdb.js +0 -2
  641. package/dist/node/column-views.e93b3bdb.js.map +0 -1
  642. package/dist/node/column-views.ebb44b7d.js +0 -2
  643. package/dist/node/column-views.ebb44b7d.js.map +0 -1
  644. package/dist/node/column-views.ec0087a2.js +0 -2
  645. package/dist/node/column-views.ec0087a2.js.map +0 -1
  646. package/dist/node/column-views.eea80478.js +0 -2
  647. package/dist/node/column-views.eea80478.js.map +0 -1
  648. package/dist/node/column-views.fb3ed7cc.js +0 -2
  649. package/dist/node/column-views.fb3ed7cc.js.map +0 -1
  650. package/dist/node/column-views.fc4c2c61.js +0 -2
  651. package/dist/node/column-views.fc4c2c61.js.map +0 -1
  652. package/dist/node/column-views.fcb243a2.js +0 -2
  653. package/dist/node/column-views.fcb243a2.js.map +0 -1
  654. package/dist/node/column-views.fea32686.js +0 -2
  655. package/dist/node/column-views.fea32686.js.map +0 -1
  656. package/dist/node/index.js +0 -2
  657. package/dist/node/index.js.map +0 -1
@@ -0,0 +1,128 @@
1
+ import h$1 from "@macrostrat/hyper";
2
+ import styles from "./base.module.sass.js";
3
+ import { ColumnNotes } from "../../notes.js";
4
+ import { ColumnAxisType } from "@macrostrat/column-components";
5
+ import { getPositionWithinUnit, getUnitHeightRange } from "../../prepare-units/utils.js";
6
+ const h = h$1.styled(styles);
7
+ function standardizeMeasurementHeight(pos, units, axisType) {
8
+ if ("height" in pos) {
9
+ return pos;
10
+ }
11
+ const unit = units.find((u) => u.unit_id === pos.unit_id);
12
+ if (unit == null) {
13
+ return null;
14
+ }
15
+ if (pos.unit_rel_pos != null) {
16
+ const res = getPositionWithinUnit(pos.unit_rel_pos, unit, axisType);
17
+ if (res == null) return null;
18
+ return { height: res };
19
+ } else {
20
+ const [height, top_height] = getUnitHeightRange(unit, axisType);
21
+ return { height, top_height };
22
+ }
23
+ }
24
+ function mergeHeightRanges(data, axisType) {
25
+ const heights = [];
26
+ for (const d of data) {
27
+ heights.push(d.height);
28
+ if (d.top_height != null) {
29
+ heights.push(d.top_height);
30
+ }
31
+ }
32
+ let height;
33
+ let top_height;
34
+ if (axisType === ColumnAxisType.AGE || axisType === ColumnAxisType.DEPTH) {
35
+ height = Math.max(...heights);
36
+ top_height = Math.min(...heights);
37
+ } else {
38
+ height = Math.min(...heights);
39
+ top_height = Math.max(...heights);
40
+ }
41
+ if (top_height === height) {
42
+ return { height };
43
+ }
44
+ return { height, top_height };
45
+ }
46
+ function BaseMeasurementsColumn({
47
+ data,
48
+ noteComponent,
49
+ width = 500,
50
+ paddingLeft = 40,
51
+ className,
52
+ deltaConnectorAttachment,
53
+ focusedNoteComponent
54
+ }) {
55
+ if (data == null) return null;
56
+ return h(
57
+ "div.measurements-column",
58
+ { className },
59
+ h(ColumnNotes, {
60
+ width,
61
+ paddingLeft,
62
+ notes: data,
63
+ noteComponent,
64
+ deltaConnectorAttachment,
65
+ focusedNoteComponent
66
+ })
67
+ );
68
+ }
69
+ function TruncatedList({
70
+ data,
71
+ className,
72
+ maxItems = 5,
73
+ itemRenderer = (p) => h("span", p.data)
74
+ }) {
75
+ let tooMany = null;
76
+ let d1 = data;
77
+ if (data.length > maxItems) {
78
+ const n = data.length - maxItems;
79
+ d1 = data.slice(0, maxItems);
80
+ tooMany = h("li.too-many", `and ${n} more`);
81
+ }
82
+ return h("ul.truncated-list", { className }, [
83
+ d1.map((d, i) => {
84
+ return h("li.element", { key: i }, h(itemRenderer, { data: d }));
85
+ }),
86
+ tooMany
87
+ ]);
88
+ }
89
+ function groupNotesByPixelDistance(data, scale, axisType, groupDistance) {
90
+ if (data.length === 0 || groupDistance <= 0) return data;
91
+ if (axisType === ColumnAxisType.AGE || axisType === ColumnAxisType.DEPTH) {
92
+ data.sort((a, b) => b.height - a.height);
93
+ } else {
94
+ data.sort((a, b) => a.height - b.height);
95
+ }
96
+ const groupedData = [];
97
+ let currentGroup = null;
98
+ let currentGroupPosition = Infinity;
99
+ for (const d of data) {
100
+ const distance = currentGroupPosition - scale(d.top_height ?? d.height);
101
+ if (distance <= groupDistance) {
102
+ if (currentGroup == null) {
103
+ throw new Error("Current group is null when it shouldn't be");
104
+ }
105
+ currentGroup.data.push(...d.data);
106
+ const top_height = d.top_height ?? d.height;
107
+ if (axisType === ColumnAxisType.AGE || axisType === ColumnAxisType.DEPTH) {
108
+ currentGroup.top_height = Math.min(currentGroup.top_height, top_height);
109
+ } else {
110
+ currentGroup.top_height = Math.max(currentGroup.top_height, top_height);
111
+ }
112
+ currentGroup.id = `${currentGroup.height}-${currentGroup.top_height}`;
113
+ } else {
114
+ currentGroup = { ...d, data: [...d.data] };
115
+ currentGroupPosition = scale(currentGroup.height) ?? scale(currentGroup.top_height) ?? Infinity;
116
+ groupedData.push(currentGroup);
117
+ }
118
+ }
119
+ return groupedData;
120
+ }
121
+ export {
122
+ BaseMeasurementsColumn,
123
+ TruncatedList,
124
+ groupNotesByPixelDistance,
125
+ mergeHeightRanges,
126
+ standardizeMeasurementHeight
127
+ };
128
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sources":["../../../src/facets/measurements/base.ts"],"sourcesContent":["import hyper from \"@macrostrat/hyper\";\nimport styles from \"./base.module.sass\";\nimport {\n type CompositeColumnScale,\n getPositionWithinUnit,\n getUnitHeightRange,\n} from \"../../prepare-units\";\nimport { ColumnNotes } from \"../../notes\";\nimport { UnitLong } from \"@macrostrat/api-types\";\nimport { ColumnAxisType } from \"@macrostrat/column-components\";\nconst h = hyper.styled(styles);\n\ntype GetHeightRangeFn<T> = (\n data: T,\n unit: UnitLong | null,\n axisType: ColumnAxisType,\n) => MeasurementHeightData;\n\nexport interface BaseMeasurementsColumnProps<T> {\n data: T[];\n noteComponent?: any;\n width?: number;\n paddingLeft?: number;\n className?: string;\n // TODO: these props are confusing\n getUnitID?: (d: T) => number | string;\n isMatchingUnit?: (d: T, unit: UnitLong) => boolean;\n getHeightRange?: GetHeightRangeFn<T>;\n deltaConnectorAttachment?: number;\n focusedNoteComponent?: any;\n}\n\nexport interface ColumnMeasurementData<T = any> extends MeasurementHeightData {\n data: T;\n id: string | number;\n}\n\ntype MeasurementPositionInformation =\n | MeasurementHeightData\n | {\n unit_id: number;\n unit_rel_pos?: number;\n };\n\nexport function standardizeMeasurementHeight(\n pos: MeasurementPositionInformation,\n units: UnitLong[],\n axisType: ColumnAxisType,\n): MeasurementHeightData | null {\n /** Get a standardized height representation from position information for\n * a measurement\n */\n if (\"height\" in pos) {\n return pos;\n }\n const unit = units.find((u) => u.unit_id === pos.unit_id);\n if (unit == null) {\n return null;\n }\n if (pos.unit_rel_pos != null) {\n const res = getPositionWithinUnit(pos.unit_rel_pos, unit, axisType);\n if (res == null) return null;\n return { height: res };\n } else {\n const [height, top_height] = getUnitHeightRange(unit, axisType);\n return { height, top_height };\n }\n}\n\nexport function mergeHeightRanges(\n data: MeasurementHeightData[],\n axisType: ColumnAxisType,\n): MeasurementHeightData {\n /** Merge multiple height ranges into a single range */\n const heights = [];\n\n for (const d of data) {\n heights.push(d.height);\n if (d.top_height != null) {\n heights.push(d.top_height);\n }\n }\n\n let height: number;\n let top_height: number;\n if (axisType === ColumnAxisType.AGE || axisType === ColumnAxisType.DEPTH) {\n height = Math.max(...heights);\n top_height = Math.min(...heights);\n } else {\n height = Math.min(...heights);\n top_height = Math.max(...heights);\n }\n\n if (top_height === height) {\n return { height };\n }\n return { height, top_height };\n}\n\nexport type MeasurementHeightData = {\n height: number;\n top_height?: number | null;\n};\n\nexport function BaseMeasurementsColumn({\n data,\n noteComponent,\n width = 500,\n paddingLeft = 40,\n className,\n deltaConnectorAttachment,\n focusedNoteComponent,\n}: BaseMeasurementsColumnProps<any>) {\n if (data == null) return null;\n\n return h(\n \"div.measurements-column\",\n { className },\n h(ColumnNotes, {\n width,\n paddingLeft,\n notes: data,\n noteComponent,\n deltaConnectorAttachment,\n focusedNoteComponent,\n }),\n );\n}\n\ninterface TruncatedListProps {\n data: any[];\n className?: string;\n maxItems?: number;\n itemRenderer?: (props: { data: any }) => any;\n}\n\nexport function TruncatedList({\n data,\n className,\n maxItems = 5,\n itemRenderer = (p) => h(\"span\", p.data),\n}: TruncatedListProps) {\n let tooMany = null;\n let d1 = data;\n if (data.length > maxItems) {\n const n = data.length - maxItems;\n d1 = data.slice(0, maxItems);\n tooMany = h(\"li.too-many\", `and ${n} more`);\n }\n\n return h(\"ul.truncated-list\", { className }, [\n d1.map((d, i) => {\n return h(\"li.element\", { key: i }, h(itemRenderer, { data: d }));\n }),\n tooMany,\n ]);\n}\n\nexport function groupNotesByPixelDistance<T = any>(\n data: ColumnMeasurementData<T[]>[],\n scale: CompositeColumnScale,\n axisType: ColumnAxisType,\n groupDistance: number,\n) {\n /** Group notes that are within a certain pixel distance of each other\n * in display space\n */\n if (data.length === 0 || groupDistance <= 0) return data;\n if (axisType === ColumnAxisType.AGE || axisType === ColumnAxisType.DEPTH) {\n data.sort((a, b) => b.height - a.height);\n } else {\n // Sort data by height (ascending up the column)\n data.sort((a, b) => a.height - b.height);\n }\n\n const groupedData: ColumnMeasurementData<T[]>[] = [];\n let currentGroup: ColumnMeasurementData<T[]> | null = null;\n let currentGroupPosition: number = Infinity;\n\n for (const d of data) {\n // Check distance from current max position\n // Pixels go up as we go down in the section\n\n // The _top_ of the next group must be within groupDistance of the\n // _bottom_ of the current group. This makes sure that we don't collapse\n // groups that are separated by a large distance\n const distance = currentGroupPosition - scale(d.top_height ?? d.height);\n\n if (distance <= groupDistance) {\n if (currentGroup == null) {\n throw new Error(\"Current group is null when it shouldn't be\");\n }\n // Merge into current group\n currentGroup.data.push(...d.data);\n // Update height range\n const top_height = d.top_height ?? d.height;\n if (\n axisType === ColumnAxisType.AGE ||\n axisType === ColumnAxisType.DEPTH\n ) {\n // Inverted axis\n currentGroup.top_height = Math.min(currentGroup.top_height, top_height);\n } else {\n currentGroup.top_height = Math.max(currentGroup.top_height, top_height);\n }\n currentGroup.id = `${currentGroup.height}-${currentGroup.top_height}`;\n } else {\n // Start a new group\n currentGroup = { ...d, data: [...d.data] };\n currentGroupPosition =\n scale(currentGroup.height) ??\n scale(currentGroup.top_height) ??\n Infinity;\n groupedData.push(currentGroup);\n }\n }\n\n return groupedData;\n}\n"],"names":["hyper"],"mappings":";;;;;AAUA,MAAM,IAAIA,IAAM,OAAO,MAAM;AAkCtB,SAAS,6BACd,KACA,OACA,UAC8B;AAI9B,MAAI,YAAY,KAAK;AACnB,WAAO;AAAA,EACT;AACA,QAAM,OAAO,MAAM,KAAK,CAAC,MAAM,EAAE,YAAY,IAAI,OAAO;AACxD,MAAI,QAAQ,MAAM;AAChB,WAAO;AAAA,EACT;AACA,MAAI,IAAI,gBAAgB,MAAM;AAC5B,UAAM,MAAM,sBAAsB,IAAI,cAAc,MAAM,QAAQ;AAClE,QAAI,OAAO,KAAM,QAAO;AACxB,WAAO,EAAE,QAAQ,IAAA;AAAA,EACnB,OAAO;AACL,UAAM,CAAC,QAAQ,UAAU,IAAI,mBAAmB,MAAM,QAAQ;AAC9D,WAAO,EAAE,QAAQ,WAAA;AAAA,EACnB;AACF;AAEO,SAAS,kBACd,MACA,UACuB;AAEvB,QAAM,UAAU,CAAA;AAEhB,aAAW,KAAK,MAAM;AACpB,YAAQ,KAAK,EAAE,MAAM;AACrB,QAAI,EAAE,cAAc,MAAM;AACxB,cAAQ,KAAK,EAAE,UAAU;AAAA,IAC3B;AAAA,EACF;AAEA,MAAI;AACJ,MAAI;AACJ,MAAI,aAAa,eAAe,OAAO,aAAa,eAAe,OAAO;AACxE,aAAS,KAAK,IAAI,GAAG,OAAO;AAC5B,iBAAa,KAAK,IAAI,GAAG,OAAO;AAAA,EAClC,OAAO;AACL,aAAS,KAAK,IAAI,GAAG,OAAO;AAC5B,iBAAa,KAAK,IAAI,GAAG,OAAO;AAAA,EAClC;AAEA,MAAI,eAAe,QAAQ;AACzB,WAAO,EAAE,OAAA;AAAA,EACX;AACA,SAAO,EAAE,QAAQ,WAAA;AACnB;AAOO,SAAS,uBAAuB;AAAA,EACrC;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA;AACF,GAAqC;AACnC,MAAI,QAAQ,KAAM,QAAO;AAEzB,SAAO;AAAA,IACL;AAAA,IACA,EAAE,UAAA;AAAA,IACF,EAAE,aAAa;AAAA,MACb;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,IAAA,CACD;AAAA,EAAA;AAEL;AASO,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI;AACxC,GAAuB;AACrB,MAAI,UAAU;AACd,MAAI,KAAK;AACT,MAAI,KAAK,SAAS,UAAU;AAC1B,UAAM,IAAI,KAAK,SAAS;AACxB,SAAK,KAAK,MAAM,GAAG,QAAQ;AAC3B,cAAU,EAAE,eAAe,OAAO,CAAC,OAAO;AAAA,EAC5C;AAEA,SAAO,EAAE,qBAAqB,EAAE,aAAa;AAAA,IAC3C,GAAG,IAAI,CAAC,GAAG,MAAM;AACf,aAAO,EAAE,cAAc,EAAE,KAAK,EAAA,GAAK,EAAE,cAAc,EAAE,MAAM,EAAA,CAAG,CAAC;AAAA,IACjE,CAAC;AAAA,IACD;AAAA,EAAA,CACD;AACH;AAEO,SAAS,0BACd,MACA,OACA,UACA,eACA;AAIA,MAAI,KAAK,WAAW,KAAK,iBAAiB,EAAG,QAAO;AACpD,MAAI,aAAa,eAAe,OAAO,aAAa,eAAe,OAAO;AACxE,SAAK,KAAK,CAAC,GAAG,MAAM,EAAE,SAAS,EAAE,MAAM;AAAA,EACzC,OAAO;AAEL,SAAK,KAAK,CAAC,GAAG,MAAM,EAAE,SAAS,EAAE,MAAM;AAAA,EACzC;AAEA,QAAM,cAA4C,CAAA;AAClD,MAAI,eAAkD;AACtD,MAAI,uBAA+B;AAEnC,aAAW,KAAK,MAAM;AAOpB,UAAM,WAAW,uBAAuB,MAAM,EAAE,cAAc,EAAE,MAAM;AAEtE,QAAI,YAAY,eAAe;AAC7B,UAAI,gBAAgB,MAAM;AACxB,cAAM,IAAI,MAAM,4CAA4C;AAAA,MAC9D;AAEA,mBAAa,KAAK,KAAK,GAAG,EAAE,IAAI;AAEhC,YAAM,aAAa,EAAE,cAAc,EAAE;AACrC,UACE,aAAa,eAAe,OAC5B,aAAa,eAAe,OAC5B;AAEA,qBAAa,aAAa,KAAK,IAAI,aAAa,YAAY,UAAU;AAAA,MACxE,OAAO;AACL,qBAAa,aAAa,KAAK,IAAI,aAAa,YAAY,UAAU;AAAA,MACxE;AACA,mBAAa,KAAK,GAAG,aAAa,MAAM,IAAI,aAAa,UAAU;AAAA,IACrE,OAAO;AAEL,qBAAe,EAAE,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,IAAI,EAAA;AACvC,6BACE,MAAM,aAAa,MAAM,KACzB,MAAM,aAAa,UAAU,KAC7B;AACF,kBAAY,KAAK,YAAY;AAAA,IAC/B;AAAA,EACF;AAEA,SAAO;AACT;"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const styles = {
4
+ "truncated-list": "_truncated-list_120po_1",
5
+ "too-many": "_too-many_120po_16"
6
+ };
7
+ exports.default = styles;
8
+ //# sourceMappingURL=base.module.sass.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.module.sass.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
@@ -0,0 +1,8 @@
1
+ const styles = {
2
+ "truncated-list": "_truncated-list_120po_1",
3
+ "too-many": "_too-many_120po_16"
4
+ };
5
+ export {
6
+ styles as default
7
+ };
8
+ //# sourceMappingURL=base.module.sass.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.module.sass.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,2 @@
1
+ export * from './base';
2
+ export * from './sgp';
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const h = require("@macrostrat/hyper");
4
+ const uiComponents = require("@macrostrat/ui-components");
5
+ const base = require("./base.cjs");
6
+ const store = require("../../data-provider/store.cjs");
7
+ function useSGPData({ col_id }) {
8
+ return uiComponents.useAPIResult(
9
+ "https://dev.macrostrat.org/api/pg/sgp_unit_matches",
10
+ {
11
+ col_id: `eq.${col_id}`
12
+ },
13
+ (d) => d
14
+ );
15
+ }
16
+ function SGPMeasurementsColumn({ columnID }) {
17
+ const data = useSGPData({ col_id: columnID });
18
+ const { axisType, units } = store.useMacrostratColumnData();
19
+ const scale = store.useCompositeScale();
20
+ if (data == null || units == null || scale == null) return null;
21
+ const data1 = prepareSGPData(data, scale, units, axisType);
22
+ return h(base.BaseMeasurementsColumn, {
23
+ data: data1,
24
+ noteComponent: SGPSamplesNote,
25
+ focusedNoteComponent: SGPSamplesNote
26
+ });
27
+ }
28
+ function SGPSamplesNote(props) {
29
+ const { note, focused, sgpBaseURL = "https://sgp-search.io" } = props;
30
+ const sgp_samples = note?.data;
31
+ if (sgp_samples == null || sgp_samples.length === 0) return null;
32
+ return h(base.TruncatedList, {
33
+ className: "sgp-samples",
34
+ data: sgp_samples,
35
+ itemRenderer: (p) => {
36
+ const sgpLink = sgpBaseURL + `/samples/${p.data.id}`;
37
+ return h("a", { href: sgpLink, target: "_blank" }, p.data.name);
38
+ },
39
+ maxItems: focused ? Infinity : 5
40
+ });
41
+ }
42
+ function prepareSGPData(data, scale, units, axisType) {
43
+ const d1 = data.map((sample) => {
44
+ const data2 = sample.sgp_samples;
45
+ if (data2 == null || data2.length === 0) return null;
46
+ const heightData = base.standardizeMeasurementHeight(
47
+ { unit_id: sample.unit_id },
48
+ units,
49
+ axisType
50
+ );
51
+ if (heightData == null) return null;
52
+ data2.sort((a, b) => a.id - b.id);
53
+ return {
54
+ ...heightData,
55
+ data: data2,
56
+ id: sample.unit_id
57
+ };
58
+ }).filter(Boolean);
59
+ return base.groupNotesByPixelDistance(d1, scale, axisType, 5);
60
+ }
61
+ exports.SGPMeasurementsColumn = SGPMeasurementsColumn;
62
+ //# sourceMappingURL=sgp.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sgp.cjs","sources":["../../../src/facets/measurements/sgp.ts"],"sourcesContent":["import h from \"@macrostrat/hyper\";\nimport { useAPIResult } from \"@macrostrat/ui-components\";\nimport {\n BaseMeasurementsColumn,\n groupNotesByPixelDistance,\n standardizeMeasurementHeight,\n TruncatedList,\n} from \"./base\";\nimport { UnitLong } from \"@macrostrat/api-types\";\nimport { ColumnAxisType } from \"@macrostrat/column-components\";\nimport {\n useCompositeScale,\n useMacrostratColumnData,\n} from \"../../data-provider\";\nimport type { CompositeColumnScale } from \"../../prepare-units\";\n\nfunction useSGPData({ col_id }) {\n return useAPIResult(\n \"https://dev.macrostrat.org/api/pg/sgp_unit_matches\",\n {\n col_id: `eq.${col_id}`,\n },\n (d) => d,\n );\n}\n\ninterface SGPSampleData {\n col_id: number;\n unit_id: number;\n sgp_samples: { name: string; id: number }[];\n}\n\nexport function SGPMeasurementsColumn({ columnID }) {\n const data: SGPSampleData[] | null = useSGPData({ col_id: columnID });\n const { axisType, units } = useMacrostratColumnData();\n const scale = useCompositeScale();\n\n if (data == null || units == null || scale == null) return null;\n\n const data1 = prepareSGPData(data, scale, units, axisType);\n\n return h(BaseMeasurementsColumn, {\n data: data1,\n noteComponent: SGPSamplesNote,\n focusedNoteComponent: SGPSamplesNote,\n });\n}\n\nfunction SGPSamplesNote(props: {\n note: any;\n focused: boolean;\n sgpBaseURL?: string;\n}) {\n const { note, focused, sgpBaseURL = \"https://sgp-search.io\" } = props;\n const sgp_samples = note?.data;\n\n if (sgp_samples == null || sgp_samples.length === 0) return null;\n\n return h(TruncatedList, {\n className: \"sgp-samples\",\n data: sgp_samples,\n itemRenderer: (p) => {\n const sgpLink = sgpBaseURL + `/samples/${p.data.id}`;\n return h(\"a\", { href: sgpLink, target: \"_blank\" }, p.data.name);\n },\n maxItems: focused ? Infinity : 5,\n });\n}\n\nfunction prepareSGPData(\n data: SGPSampleData[],\n scale: CompositeColumnScale,\n units: UnitLong[],\n axisType: ColumnAxisType,\n) {\n // Find matching units for samples\n const d1 = data\n .map((sample) => {\n const data = sample.sgp_samples;\n if (data == null || data.length === 0) return null;\n const heightData = standardizeMeasurementHeight(\n { unit_id: sample.unit_id },\n units,\n axisType,\n );\n if (heightData == null) return null;\n data.sort((a, b) => a.id - b.id);\n return {\n ...heightData,\n data,\n id: sample.unit_id,\n };\n })\n .filter(Boolean);\n\n return groupNotesByPixelDistance(d1, scale, axisType, 5);\n}\n"],"names":["useAPIResult","useMacrostratColumnData","useCompositeScale","BaseMeasurementsColumn","TruncatedList","data","standardizeMeasurementHeight","groupNotesByPixelDistance"],"mappings":";;;;;;AAgBA,SAAS,WAAW,EAAE,UAAU;AAC9B,SAAOA,aAAAA;AAAAA,IACL;AAAA,IACA;AAAA,MACE,QAAQ,MAAM,MAAM;AAAA,IAAA;AAAA,IAEtB,CAAC,MAAM;AAAA,EAAA;AAEX;AAQO,SAAS,sBAAsB,EAAE,YAAY;AAClD,QAAM,OAA+B,WAAW,EAAE,QAAQ,UAAU;AACpE,QAAM,EAAE,UAAU,MAAA,IAAUC,8BAAA;AAC5B,QAAM,QAAQC,MAAAA,kBAAA;AAEd,MAAI,QAAQ,QAAQ,SAAS,QAAQ,SAAS,KAAM,QAAO;AAE3D,QAAM,QAAQ,eAAe,MAAM,OAAO,OAAO,QAAQ;AAEzD,SAAO,EAAEC,KAAAA,wBAAwB;AAAA,IAC/B,MAAM;AAAA,IACN,eAAe;AAAA,IACf,sBAAsB;AAAA,EAAA,CACvB;AACH;AAEA,SAAS,eAAe,OAIrB;AACD,QAAM,EAAE,MAAM,SAAS,aAAa,4BAA4B;AAChE,QAAM,cAAc,MAAM;AAE1B,MAAI,eAAe,QAAQ,YAAY,WAAW,EAAG,QAAO;AAE5D,SAAO,EAAEC,KAAAA,eAAe;AAAA,IACtB,WAAW;AAAA,IACX,MAAM;AAAA,IACN,cAAc,CAAC,MAAM;AACnB,YAAM,UAAU,aAAa,YAAY,EAAE,KAAK,EAAE;AAClD,aAAO,EAAE,KAAK,EAAE,MAAM,SAAS,QAAQ,YAAY,EAAE,KAAK,IAAI;AAAA,IAChE;AAAA,IACA,UAAU,UAAU,WAAW;AAAA,EAAA,CAChC;AACH;AAEA,SAAS,eACP,MACA,OACA,OACA,UACA;AAEA,QAAM,KAAK,KACR,IAAI,CAAC,WAAW;AACf,UAAMC,QAAO,OAAO;AACpB,QAAIA,SAAQ,QAAQA,MAAK,WAAW,EAAG,QAAO;AAC9C,UAAM,aAAaC,KAAAA;AAAAA,MACjB,EAAE,SAAS,OAAO,QAAA;AAAA,MAClB;AAAA,MACA;AAAA,IAAA;AAEF,QAAI,cAAc,KAAM,QAAO;AAC/BD,UAAK,KAAK,CAAC,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE;AAC/B,WAAO;AAAA,MACL,GAAG;AAAA,MACH,MAAAA;AAAAA,MACA,IAAI,OAAO;AAAA,IAAA;AAAA,EAEf,CAAC,EACA,OAAO,OAAO;AAEjB,SAAOE,KAAAA,0BAA0B,IAAI,OAAO,UAAU,CAAC;AACzD;;"}
@@ -0,0 +1,3 @@
1
+ export declare function SGPMeasurementsColumn({ columnID }: {
2
+ columnID: any;
3
+ }): import('react').FunctionComponentElement<import('./base').BaseMeasurementsColumnProps<any>>;
@@ -0,0 +1,62 @@
1
+ import h from "@macrostrat/hyper";
2
+ import { useAPIResult } from "@macrostrat/ui-components";
3
+ import { BaseMeasurementsColumn, standardizeMeasurementHeight, groupNotesByPixelDistance, TruncatedList } from "./base.js";
4
+ import { useMacrostratColumnData, useCompositeScale } from "../../data-provider/store.js";
5
+ function useSGPData({ col_id }) {
6
+ return useAPIResult(
7
+ "https://dev.macrostrat.org/api/pg/sgp_unit_matches",
8
+ {
9
+ col_id: `eq.${col_id}`
10
+ },
11
+ (d) => d
12
+ );
13
+ }
14
+ function SGPMeasurementsColumn({ columnID }) {
15
+ const data = useSGPData({ col_id: columnID });
16
+ const { axisType, units } = useMacrostratColumnData();
17
+ const scale = useCompositeScale();
18
+ if (data == null || units == null || scale == null) return null;
19
+ const data1 = prepareSGPData(data, scale, units, axisType);
20
+ return h(BaseMeasurementsColumn, {
21
+ data: data1,
22
+ noteComponent: SGPSamplesNote,
23
+ focusedNoteComponent: SGPSamplesNote
24
+ });
25
+ }
26
+ function SGPSamplesNote(props) {
27
+ const { note, focused, sgpBaseURL = "https://sgp-search.io" } = props;
28
+ const sgp_samples = note?.data;
29
+ if (sgp_samples == null || sgp_samples.length === 0) return null;
30
+ return h(TruncatedList, {
31
+ className: "sgp-samples",
32
+ data: sgp_samples,
33
+ itemRenderer: (p) => {
34
+ const sgpLink = sgpBaseURL + `/samples/${p.data.id}`;
35
+ return h("a", { href: sgpLink, target: "_blank" }, p.data.name);
36
+ },
37
+ maxItems: focused ? Infinity : 5
38
+ });
39
+ }
40
+ function prepareSGPData(data, scale, units, axisType) {
41
+ const d1 = data.map((sample) => {
42
+ const data2 = sample.sgp_samples;
43
+ if (data2 == null || data2.length === 0) return null;
44
+ const heightData = standardizeMeasurementHeight(
45
+ { unit_id: sample.unit_id },
46
+ units,
47
+ axisType
48
+ );
49
+ if (heightData == null) return null;
50
+ data2.sort((a, b) => a.id - b.id);
51
+ return {
52
+ ...heightData,
53
+ data: data2,
54
+ id: sample.unit_id
55
+ };
56
+ }).filter(Boolean);
57
+ return groupNotesByPixelDistance(d1, scale, axisType, 5);
58
+ }
59
+ export {
60
+ SGPMeasurementsColumn
61
+ };
62
+ //# sourceMappingURL=sgp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sgp.js","sources":["../../../src/facets/measurements/sgp.ts"],"sourcesContent":["import h from \"@macrostrat/hyper\";\nimport { useAPIResult } from \"@macrostrat/ui-components\";\nimport {\n BaseMeasurementsColumn,\n groupNotesByPixelDistance,\n standardizeMeasurementHeight,\n TruncatedList,\n} from \"./base\";\nimport { UnitLong } from \"@macrostrat/api-types\";\nimport { ColumnAxisType } from \"@macrostrat/column-components\";\nimport {\n useCompositeScale,\n useMacrostratColumnData,\n} from \"../../data-provider\";\nimport type { CompositeColumnScale } from \"../../prepare-units\";\n\nfunction useSGPData({ col_id }) {\n return useAPIResult(\n \"https://dev.macrostrat.org/api/pg/sgp_unit_matches\",\n {\n col_id: `eq.${col_id}`,\n },\n (d) => d,\n );\n}\n\ninterface SGPSampleData {\n col_id: number;\n unit_id: number;\n sgp_samples: { name: string; id: number }[];\n}\n\nexport function SGPMeasurementsColumn({ columnID }) {\n const data: SGPSampleData[] | null = useSGPData({ col_id: columnID });\n const { axisType, units } = useMacrostratColumnData();\n const scale = useCompositeScale();\n\n if (data == null || units == null || scale == null) return null;\n\n const data1 = prepareSGPData(data, scale, units, axisType);\n\n return h(BaseMeasurementsColumn, {\n data: data1,\n noteComponent: SGPSamplesNote,\n focusedNoteComponent: SGPSamplesNote,\n });\n}\n\nfunction SGPSamplesNote(props: {\n note: any;\n focused: boolean;\n sgpBaseURL?: string;\n}) {\n const { note, focused, sgpBaseURL = \"https://sgp-search.io\" } = props;\n const sgp_samples = note?.data;\n\n if (sgp_samples == null || sgp_samples.length === 0) return null;\n\n return h(TruncatedList, {\n className: \"sgp-samples\",\n data: sgp_samples,\n itemRenderer: (p) => {\n const sgpLink = sgpBaseURL + `/samples/${p.data.id}`;\n return h(\"a\", { href: sgpLink, target: \"_blank\" }, p.data.name);\n },\n maxItems: focused ? Infinity : 5,\n });\n}\n\nfunction prepareSGPData(\n data: SGPSampleData[],\n scale: CompositeColumnScale,\n units: UnitLong[],\n axisType: ColumnAxisType,\n) {\n // Find matching units for samples\n const d1 = data\n .map((sample) => {\n const data = sample.sgp_samples;\n if (data == null || data.length === 0) return null;\n const heightData = standardizeMeasurementHeight(\n { unit_id: sample.unit_id },\n units,\n axisType,\n );\n if (heightData == null) return null;\n data.sort((a, b) => a.id - b.id);\n return {\n ...heightData,\n data,\n id: sample.unit_id,\n };\n })\n .filter(Boolean);\n\n return groupNotesByPixelDistance(d1, scale, axisType, 5);\n}\n"],"names":["data"],"mappings":";;;;AAgBA,SAAS,WAAW,EAAE,UAAU;AAC9B,SAAO;AAAA,IACL;AAAA,IACA;AAAA,MACE,QAAQ,MAAM,MAAM;AAAA,IAAA;AAAA,IAEtB,CAAC,MAAM;AAAA,EAAA;AAEX;AAQO,SAAS,sBAAsB,EAAE,YAAY;AAClD,QAAM,OAA+B,WAAW,EAAE,QAAQ,UAAU;AACpE,QAAM,EAAE,UAAU,MAAA,IAAU,wBAAA;AAC5B,QAAM,QAAQ,kBAAA;AAEd,MAAI,QAAQ,QAAQ,SAAS,QAAQ,SAAS,KAAM,QAAO;AAE3D,QAAM,QAAQ,eAAe,MAAM,OAAO,OAAO,QAAQ;AAEzD,SAAO,EAAE,wBAAwB;AAAA,IAC/B,MAAM;AAAA,IACN,eAAe;AAAA,IACf,sBAAsB;AAAA,EAAA,CACvB;AACH;AAEA,SAAS,eAAe,OAIrB;AACD,QAAM,EAAE,MAAM,SAAS,aAAa,4BAA4B;AAChE,QAAM,cAAc,MAAM;AAE1B,MAAI,eAAe,QAAQ,YAAY,WAAW,EAAG,QAAO;AAE5D,SAAO,EAAE,eAAe;AAAA,IACtB,WAAW;AAAA,IACX,MAAM;AAAA,IACN,cAAc,CAAC,MAAM;AACnB,YAAM,UAAU,aAAa,YAAY,EAAE,KAAK,EAAE;AAClD,aAAO,EAAE,KAAK,EAAE,MAAM,SAAS,QAAQ,YAAY,EAAE,KAAK,IAAI;AAAA,IAChE;AAAA,IACA,UAAU,UAAU,WAAW;AAAA,EAAA,CAChC;AACH;AAEA,SAAS,eACP,MACA,OACA,OACA,UACA;AAEA,QAAM,KAAK,KACR,IAAI,CAAC,WAAW;AACf,UAAMA,QAAO,OAAO;AACpB,QAAIA,SAAQ,QAAQA,MAAK,WAAW,EAAG,QAAO;AAC9C,UAAM,aAAa;AAAA,MACjB,EAAE,SAAS,OAAO,QAAA;AAAA,MAClB;AAAA,MACA;AAAA,IAAA;AAEF,QAAI,cAAc,KAAM,QAAO;AAC/BA,UAAK,KAAK,CAAC,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE;AAC/B,WAAO;AAAA,MACL,GAAG;AAAA,MACH,MAAAA;AAAAA,MACA,IAAI,OAAO;AAAA,IAAA;AAAA,EAEf,CAAC,EACA,OAAO,OAAO;AAEjB,SAAO,0BAA0B,IAAI,OAAO,UAAU,CAAC;AACzD;"}
package/dist/index.cjs ADDED
@@ -0,0 +1,164 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const index = require("./units/index.cjs");
4
+ const ageAxis = require("./age-axis.cjs");
5
+ const index$5 = require("./prepare-units/index.cjs");
6
+ const column = require("./column.cjs");
7
+ const ageModelOverlay = require("./age-model-overlay.cjs");
8
+ const notes = require("./notes.cjs");
9
+ const panel = require("./unit-details/panel.cjs");
10
+ const composite = require("./units/composite.cjs");
11
+ const base = require("./facets/measurements/base.cjs");
12
+ const layers = require("./maps/column-navigation/svg/layers.cjs");
13
+ const core = require("./maps/column-correlation/core.cjs");
14
+ const state = require("./maps/column-correlation/state.cjs");
15
+ const columnNav = require("./data-provider/column-nav.cjs");
16
+ const index$1 = require("./maps/column-navigation/mapbox/index.cjs");
17
+ const index$2 = require("./maps/column-navigation/svg/index.cjs");
18
+ const main = require("./correlation-chart/main.cjs");
19
+ const index$3 = require("./facets/detrital-zircon/index.cjs");
20
+ const provider = require("./facets/fossils/provider.cjs");
21
+ const types = require("./prepare-units/types.cjs");
22
+ const insetMap = require("./maps/_shared/inset-map.cjs");
23
+ const isotopesColumn = require("./facets/carbon-isotopes/isotopes-column.cjs");
24
+ const base$1 = require("./data-provider/base.cjs");
25
+ const store = require("./data-provider/store.cjs");
26
+ const dataProvider = require("./facets/carbon-isotopes/data-provider.cjs");
27
+ const utils = require("./prepare-units/utils.cjs");
28
+ const index$4 = require("./facets/fossils/index.cjs");
29
+ const taxonRanges = require("./facets/fossils/taxon-ranges.cjs");
30
+ const sgp = require("./facets/measurements/sgp.cjs");
31
+ const modalPanel = require("./unit-details/modal-panel.cjs");
32
+ const popover = require("./unit-details/popover.cjs");
33
+ const unitSelection = require("./data-provider/unit-selection.cjs");
34
+ const styles = require("./maps/_shared/styles.cjs");
35
+ const fetch = require("./data-provider/fetch.cjs");
36
+ const colors = require("./units/colors.cjs");
37
+ const hashString = require("./correlation-chart/hash-string.cjs");
38
+ const helpers = require("./prepare-units/helpers.cjs");
39
+ exports.BasicUnitComponent = index.BasicUnitComponent;
40
+ exports.ColoredUnitComponent = index.ColoredUnitComponent;
41
+ exports.EnvironmentColoredUnitComponent = index.EnvironmentColoredUnitComponent;
42
+ exports.SimpleUnitsColumn = index.SimpleUnitsColumn;
43
+ exports.UnitComponent = index.UnitComponent;
44
+ exports.UnitsColumn = index.UnitsColumn;
45
+ exports.useUnitColor = index.useUnitColor;
46
+ exports.useUnitColorByEnvironment = index.useUnitColorByEnvironment;
47
+ exports.AgeCursor = ageAxis.AgeCursor;
48
+ exports.ApproximateHeightAxis = ageAxis.ApproximateHeightAxis;
49
+ exports.CompositeAgeAxis = ageAxis.CompositeAgeAxis;
50
+ exports.CompositeAgeAxisCore = ageAxis.CompositeAgeAxisCore;
51
+ exports.VerticalAxisLabel = ageAxis.VerticalAxisLabel;
52
+ exports.prepareColumnUnits = index$5.prepareColumnUnits;
53
+ exports.usePreparedColumnUnits = index$5.usePreparedColumnUnits;
54
+ exports.Column = column.Column;
55
+ exports.ColumnBasicInfo = column.ColumnBasicInfo;
56
+ exports.ColumnContainer = column.ColumnContainer;
57
+ exports.BoundaryAgeModelOverlay = ageModelOverlay.BoundaryAgeModelOverlay;
58
+ exports.ComputedSurfacesOverlay = ageModelOverlay.ComputedSurfacesOverlay;
59
+ exports.ColumnNotes = notes.ColumnNotes;
60
+ exports.AgeLabel = panel.AgeLabel;
61
+ exports.ClickableText = panel.ClickableText;
62
+ exports.Duration = panel.Duration;
63
+ exports.Identifier = panel.Identifier;
64
+ exports.LegendPanelHeader = panel.LegendPanelHeader;
65
+ exports.ReferencesField = panel.ReferencesField;
66
+ exports.UnitDetailsFeature = panel.UnitDetailsFeature;
67
+ exports.UnitDetailsPanel = panel.UnitDetailsPanel;
68
+ exports.AnnotatedUnitsColumn = composite.AnnotatedUnitsColumn;
69
+ exports.ColumnNotesProvider = composite.ColumnNotesProvider;
70
+ exports.CompositeUnitComponent = composite.CompositeUnitComponent;
71
+ exports.CompositeUnitsColumn = composite.CompositeUnitsColumn;
72
+ exports.LabelTrackerProvider = composite.LabelTrackerProvider;
73
+ exports.SectionLabelsColumn = composite.SectionLabelsColumn;
74
+ exports.TrackedLabeledUnit = composite.TrackedLabeledUnit;
75
+ exports.BaseMeasurementsColumn = base.BaseMeasurementsColumn;
76
+ exports.TruncatedList = base.TruncatedList;
77
+ exports.groupNotesByPixelDistance = base.groupNotesByPixelDistance;
78
+ exports.mergeHeightRanges = base.mergeHeightRanges;
79
+ exports.standardizeMeasurementHeight = base.standardizeMeasurementHeight;
80
+ exports.ColumnCenters = layers.ColumnCenters;
81
+ exports.ColumnFeatures = layers.ColumnFeatures;
82
+ exports.ColumnKeyboardNavigation = layers.ColumnKeyboardNavigation;
83
+ exports.Columns = layers.Columns;
84
+ exports.CurrentColumn = layers.CurrentColumn;
85
+ exports.MeasurementsLayer = layers.MeasurementsLayer;
86
+ exports.ColumnCorrelationMap = core.ColumnCorrelationMap;
87
+ exports.ColumnCorrelationProvider = state.ColumnCorrelationProvider;
88
+ exports.useCorrelationMapStore = state.useCorrelationMapStore;
89
+ exports.ColumnNavProvider = columnNav.ColumnNavProvider;
90
+ exports.useColumnNav = columnNav.useColumnNav;
91
+ exports.ColumnNavigationMap = index$1.ColumnNavigationMap;
92
+ exports.ColumnNavigationSVGMap = index$2.ColumnNavigationSVGMap;
93
+ exports.ResizableMapFrame = index$2.ResizableMapFrame;
94
+ exports.CorrelationChart = main.CorrelationChart;
95
+ exports.DetritalColumn = index$3.DetritalColumn;
96
+ exports.DetritalGroup = index$3.DetritalGroup;
97
+ exports.FossilDataType = provider.FossilDataType;
98
+ exports.useFossilData = provider.useFossilData;
99
+ exports.HeightMethod = types.HeightMethod;
100
+ exports.HybridScaleType = types.HybridScaleType;
101
+ exports.InsetMap = insetMap.InsetMap;
102
+ exports.IsotopesColumn = isotopesColumn.IsotopesColumn;
103
+ exports.IsotopesDataset = isotopesColumn.IsotopesDataset;
104
+ exports.LithologiesProvider = base$1.LithologiesProvider;
105
+ exports.MacrostratAPIProvider = base$1.MacrostratAPIProvider;
106
+ exports.MacrostratColumnProvider = base$1.MacrostratColumnProvider;
107
+ exports.MacrostratDataProvider = base$1.MacrostratDataProvider;
108
+ exports.useEnvironments = base$1.useEnvironments;
109
+ exports.useLithologies = base$1.useLithologies;
110
+ exports.useMacrostratBaseURL = base$1.useMacrostratBaseURL;
111
+ exports.useMacrostratColumnInfo = base$1.useMacrostratColumnInfo;
112
+ exports.useMacrostratColumns = base$1.useMacrostratColumns;
113
+ exports.useMacrostratData = base$1.useMacrostratData;
114
+ exports.useMacrostratDefs = base$1.useMacrostratDefs;
115
+ exports.useMacrostratFetch = base$1.useMacrostratFetch;
116
+ exports.useMacrostratStore = base$1.useMacrostratStore;
117
+ exports.MacrostratColumnDataProvider = store.MacrostratColumnDataProvider;
118
+ exports.MacrostratColumnStateProvider = store.MacrostratColumnStateProvider;
119
+ exports.UnitSelectionProvider = store.UnitSelectionProvider;
120
+ exports.useColumnUnitsMap = store.useColumnUnitsMap;
121
+ exports.useCompositeScale = store.useCompositeScale;
122
+ exports.useMacrostratColumnData = store.useMacrostratColumnData;
123
+ exports.useMacrostratUnits = store.useMacrostratUnits;
124
+ exports.MeasurementDataContext = dataProvider.MeasurementDataContext;
125
+ exports.MeasurementDataProvider = dataProvider.MeasurementDataProvider;
126
+ exports.useMeasurementData = dataProvider.useMeasurementData;
127
+ exports.MergeSectionsMode = utils.MergeSectionsMode;
128
+ exports.agesOverlap = utils.agesOverlap;
129
+ exports.createUnitSorter = utils.createUnitSorter;
130
+ exports.ensureArray = utils.ensureArray;
131
+ exports.ensureRealFloat = utils.ensureRealFloat;
132
+ exports.getPositionWithinUnit = utils.getPositionWithinUnit;
133
+ exports.getUnitHeightRange = utils.getUnitHeightRange;
134
+ exports.unitsOverlap = utils.unitsOverlap;
135
+ exports.PBDBFossilsColumn = index$4.PBDBFossilsColumn;
136
+ exports.PBDBOccurrencesMatrix = taxonRanges.PBDBOccurrencesMatrix;
137
+ exports.SGPMeasurementsColumn = sgp.SGPMeasurementsColumn;
138
+ exports.UnitDetailsPanelWithNavigation = modalPanel.UnitDetailsPanelWithNavigation;
139
+ exports.UnitDetailsPopover = popover.UnitDetailsPopover;
140
+ exports.UnitSelectionPopover = popover.UnitSelectionPopover;
141
+ exports.UnitKeyboardNavigation = unitSelection.UnitKeyboardNavigation;
142
+ exports.UnitSelectionCallbackManager = unitSelection.UnitSelectionCallbackManager;
143
+ exports.allowUnitSelectionAtom = unitSelection.allowUnitSelectionAtom;
144
+ exports.selectedUnitIDAtom = unitSelection.selectedUnitIDAtom;
145
+ exports.useAtomOverlayPosition = unitSelection.useAtomOverlayPosition;
146
+ exports.useColumnRef = unitSelection.useColumnRef;
147
+ exports.useSelectedUnit = unitSelection.useSelectedUnit;
148
+ exports.useUnitSelectionDispatch = unitSelection.useUnitSelectionDispatch;
149
+ exports.useUnitSelectionTarget = unitSelection.useUnitSelectionTarget;
150
+ exports.buildColumnsStyle = styles.buildColumnsStyle;
151
+ exports.fetchAllColumns = fetch.fetchAllColumns;
152
+ exports.fetchColumnUnits = fetch.fetchColumnUnits;
153
+ exports.fetchEnvironments = fetch.fetchEnvironments;
154
+ exports.fetchIntervals = fetch.fetchIntervals;
155
+ exports.fetchLithologies = fetch.fetchLithologies;
156
+ exports.fetchRefs = fetch.fetchRefs;
157
+ exports.fetchStratNames = fetch.fetchStratNames;
158
+ exports.fetchUnits = fetch.fetchUnits;
159
+ exports.useColumnFeatures = fetch.useColumnFeatures;
160
+ exports.getMixedUnitColor = colors.getMixedUnitColor;
161
+ exports.parseLineFromString = hashString.parseLineFromString;
162
+ exports.stringifyLine = hashString.stringifyLine;
163
+ exports.preprocessUnits = helpers.preprocessUnits;
164
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,11 @@
1
+ export * from './units';
2
+ export * from './data-provider';
3
+ export * from './age-axis';
4
+ export * from './prepare-units';
5
+ export * from './column';
6
+ export * from './unit-details';
7
+ export * from './maps';
8
+ export * from './age-model-overlay';
9
+ export * from './correlation-chart';
10
+ export * from './notes';
11
+ export * from './facets';