@macrostrat/column-views 2.4.2 → 2.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (196) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/esm/{column-views.af4278f0.js → column-views.0abf7e10.js} +11 -5
  3. package/dist/esm/column-views.0abf7e10.js.map +1 -0
  4. package/dist/esm/{column-views.1b5bf0c6.js → column-views.0b3c0d18.js} +5 -2
  5. package/dist/esm/column-views.0b3c0d18.js.map +1 -0
  6. package/dist/esm/{column-views.88b2418b.js → column-views.0ed9da35.js} +3 -3
  7. package/dist/esm/{column-views.88b2418b.js.map → column-views.0ed9da35.js.map} +1 -1
  8. package/dist/esm/{column-views.82eb5026.js → column-views.0faf79a9.js} +3 -3
  9. package/dist/esm/{column-views.82eb5026.js.map → column-views.0faf79a9.js.map} +1 -1
  10. package/dist/esm/{column-views.8ce33ec6.js → column-views.19539293.js} +2 -2
  11. package/dist/esm/{column-views.8ce33ec6.js.map → column-views.19539293.js.map} +1 -1
  12. package/dist/esm/{column-views.ce5251f7.js → column-views.1af3ec1f.js} +2 -2
  13. package/dist/esm/{column-views.ce5251f7.js.map → column-views.1af3ec1f.js.map} +1 -1
  14. package/dist/esm/{column-views.1ef55568.js → column-views.2a0010a3.js} +3 -3
  15. package/dist/esm/{column-views.1ef55568.js.map → column-views.2a0010a3.js.map} +1 -1
  16. package/dist/esm/{column-views.f35c4621.js → column-views.334c3947.js} +2 -2
  17. package/dist/esm/{column-views.f35c4621.js.map → column-views.334c3947.js.map} +1 -1
  18. package/dist/esm/{column-views.c93b63db.js → column-views.337b40a2.js} +3 -3
  19. package/dist/esm/{column-views.c93b63db.js.map → column-views.337b40a2.js.map} +1 -1
  20. package/dist/esm/{column-views.633c42a3.js → column-views.33d35a44.js} +25 -3
  21. package/dist/esm/column-views.33d35a44.js.map +1 -0
  22. package/dist/esm/{column-views.c1e507e6.js → column-views.362aae9a.js} +2 -2
  23. package/dist/esm/{column-views.c1e507e6.js.map → column-views.362aae9a.js.map} +1 -1
  24. package/dist/esm/{column-views.083fb787.js → column-views.4252a555.js} +5 -5
  25. package/dist/esm/{column-views.083fb787.js.map → column-views.4252a555.js.map} +1 -1
  26. package/dist/esm/{column-views.99cb1c41.js → column-views.45c70ba4.js} +3 -3
  27. package/dist/esm/{column-views.99cb1c41.js.map → column-views.45c70ba4.js.map} +1 -1
  28. package/dist/esm/{column-views.40d3688c.js → column-views.47b7d9ca.js} +2 -2
  29. package/dist/esm/{column-views.40d3688c.js.map → column-views.47b7d9ca.js.map} +1 -1
  30. package/dist/esm/{column-views.b4e1236d.js → column-views.47ca059d.js} +3 -3
  31. package/dist/esm/column-views.47ca059d.js.map +1 -0
  32. package/dist/esm/{column-views.3090f246.js → column-views.636d6553.js} +2 -2
  33. package/dist/esm/{column-views.3090f246.js.map → column-views.636d6553.js.map} +1 -1
  34. package/dist/esm/{column-views.a94e99a2.js → column-views.64f6ddd3.js} +2 -2
  35. package/dist/esm/{column-views.a94e99a2.js.map → column-views.64f6ddd3.js.map} +1 -1
  36. package/dist/esm/{column-views.88436022.js → column-views.6519a353.js} +2 -2
  37. package/dist/esm/{column-views.88436022.js.map → column-views.6519a353.js.map} +1 -1
  38. package/dist/esm/{column-views.18655508.js → column-views.6cff6659.js} +4 -4
  39. package/dist/esm/{column-views.18655508.js.map → column-views.6cff6659.js.map} +1 -1
  40. package/dist/esm/{column-views.fedccce9.js → column-views.70387120.js} +2 -2
  41. package/dist/esm/{column-views.fedccce9.js.map → column-views.70387120.js.map} +1 -1
  42. package/dist/esm/{column-views.3ae8f23d.js → column-views.74837922.js} +2 -2
  43. package/dist/esm/{column-views.3ae8f23d.js.map → column-views.74837922.js.map} +1 -1
  44. package/dist/esm/{column-views.e885211d.js → column-views.7bfb4318.js} +2 -2
  45. package/dist/esm/{column-views.e885211d.js.map → column-views.7bfb4318.js.map} +1 -1
  46. package/dist/esm/{column-views.f56e604d.js → column-views.7dc53f1b.js} +4 -4
  47. package/dist/esm/{column-views.f56e604d.js.map → column-views.7dc53f1b.js.map} +1 -1
  48. package/dist/esm/{column-views.ab2cc6cb.js → column-views.85df21ec.js} +11 -10
  49. package/dist/esm/column-views.85df21ec.js.map +1 -0
  50. package/dist/esm/{column-views.4e9b8594.js → column-views.87c589b7.js} +2 -2
  51. package/dist/esm/{column-views.4e9b8594.js.map → column-views.87c589b7.js.map} +1 -1
  52. package/dist/esm/{column-views.77322764.js → column-views.8da2b857.js} +2 -2
  53. package/dist/esm/{column-views.77322764.js.map → column-views.8da2b857.js.map} +1 -1
  54. package/dist/esm/{column-views.b957dc19.js → column-views.8fb37de7.js} +2 -2
  55. package/dist/esm/{column-views.b957dc19.js.map → column-views.8fb37de7.js.map} +1 -1
  56. package/dist/esm/{column-views.91c18fe3.js → column-views.9512c5d5.js} +10 -10
  57. package/dist/esm/{column-views.91c18fe3.js.map → column-views.9512c5d5.js.map} +1 -1
  58. package/dist/esm/{column-views.85d57d04.js → column-views.9905b91c.js} +4 -4
  59. package/dist/esm/{column-views.85d57d04.js.map → column-views.9905b91c.js.map} +1 -1
  60. package/dist/esm/{column-views.275ba52b.js → column-views.a4f394fe.js} +2 -2
  61. package/dist/esm/{column-views.275ba52b.js.map → column-views.a4f394fe.js.map} +1 -1
  62. package/dist/esm/{column-views.6f0d4f3a.js → column-views.b7cf0da2.js} +2 -2
  63. package/dist/esm/{column-views.6f0d4f3a.js.map → column-views.b7cf0da2.js.map} +1 -1
  64. package/dist/esm/{column-views.d4e50f74.js → column-views.c47dba5f.js} +3 -3
  65. package/dist/esm/{column-views.d4e50f74.js.map → column-views.c47dba5f.js.map} +1 -1
  66. package/dist/esm/{column-views.5ec7294d.js → column-views.c750a6df.js} +3 -3
  67. package/dist/esm/{column-views.5ec7294d.js.map → column-views.c750a6df.js.map} +1 -1
  68. package/dist/esm/{column-views.fc4860bd.js → column-views.cb1cc9f2.js} +4 -4
  69. package/dist/esm/{column-views.fc4860bd.js.map → column-views.cb1cc9f2.js.map} +1 -1
  70. package/dist/esm/{column-views.f904e6d7.js → column-views.ce000969.js} +3 -3
  71. package/dist/esm/{column-views.f904e6d7.js.map → column-views.ce000969.js.map} +1 -1
  72. package/dist/esm/{column-views.ee2fd38f.js → column-views.d7740949.js} +3 -3
  73. package/dist/esm/{column-views.ee2fd38f.js.map → column-views.d7740949.js.map} +1 -1
  74. package/dist/esm/{column-views.088a0274.js → column-views.d7e6bf67.js} +2 -2
  75. package/dist/esm/{column-views.088a0274.js.map → column-views.d7e6bf67.js.map} +1 -1
  76. package/dist/esm/{column-views.e6882667.js → column-views.dac0a3bb.js} +5 -5
  77. package/dist/esm/{column-views.e6882667.js.map → column-views.dac0a3bb.js.map} +1 -1
  78. package/dist/esm/{column-views.11353c2c.js → column-views.e13a0a76.js} +4 -4
  79. package/dist/esm/{column-views.11353c2c.js.map → column-views.e13a0a76.js.map} +1 -1
  80. package/dist/esm/{column-views.5e830e7c.js → column-views.ea08f667.js} +8 -8
  81. package/dist/esm/{column-views.5e830e7c.js.map → column-views.ea08f667.js.map} +1 -1
  82. package/dist/esm/{column-views.dd2d5a6d.js → column-views.ebb5f280.js} +5 -5
  83. package/dist/esm/{column-views.dd2d5a6d.js.map → column-views.ebb5f280.js.map} +1 -1
  84. package/dist/esm/{column-views.bc83a85d.js → column-views.fe42d2fc.js} +2 -2
  85. package/dist/esm/{column-views.bc83a85d.js.map → column-views.fe42d2fc.js.map} +1 -1
  86. package/dist/esm/index.d.ts.map +1 -1
  87. package/dist/esm/index.js +11 -11
  88. package/dist/node/column-views.048fdcaf.js +2 -0
  89. package/dist/node/column-views.048fdcaf.js.map +1 -0
  90. package/dist/node/{column-views.796fc1de.js → column-views.04a72b35.js} +2 -2
  91. package/dist/node/{column-views.796fc1de.js.map → column-views.04a72b35.js.map} +1 -1
  92. package/dist/node/{column-views.66663668.js → column-views.0af5912d.js} +2 -2
  93. package/dist/node/{column-views.66663668.js.map → column-views.0af5912d.js.map} +1 -1
  94. package/dist/node/{column-views.eecdc727.js → column-views.0d254fd3.js} +2 -2
  95. package/dist/node/{column-views.eecdc727.js.map → column-views.0d254fd3.js.map} +1 -1
  96. package/dist/node/{column-views.54f7a243.js → column-views.109cb0c8.js} +2 -2
  97. package/dist/node/{column-views.54f7a243.js.map → column-views.109cb0c8.js.map} +1 -1
  98. package/dist/node/column-views.133855e6.js +2 -0
  99. package/dist/node/column-views.133855e6.js.map +1 -0
  100. package/dist/node/{column-views.f4063bc8.js → column-views.15b5cecc.js} +2 -2
  101. package/dist/node/{column-views.f4063bc8.js.map → column-views.15b5cecc.js.map} +1 -1
  102. package/dist/node/{column-views.6f0cb059.js → column-views.183745c0.js} +2 -2
  103. package/dist/node/{column-views.6f0cb059.js.map → column-views.183745c0.js.map} +1 -1
  104. package/dist/node/{column-views.080781ca.js → column-views.2e2158f5.js} +2 -2
  105. package/dist/node/{column-views.080781ca.js.map → column-views.2e2158f5.js.map} +1 -1
  106. package/dist/node/{column-views.f93b4175.js → column-views.306acd3f.js} +2 -2
  107. package/dist/node/{column-views.f93b4175.js.map → column-views.306acd3f.js.map} +1 -1
  108. package/dist/node/{column-views.0818254f.js → column-views.31153f29.js} +2 -2
  109. package/dist/node/{column-views.0818254f.js.map → column-views.31153f29.js.map} +1 -1
  110. package/dist/node/{column-views.6051e986.js → column-views.31da008b.js} +2 -2
  111. package/dist/node/{column-views.6051e986.js.map → column-views.31da008b.js.map} +1 -1
  112. package/dist/node/column-views.40e758b3.js +2 -0
  113. package/dist/node/column-views.40e758b3.js.map +1 -0
  114. package/dist/node/{column-views.ffbffec7.js → column-views.4a28d695.js} +2 -2
  115. package/dist/node/{column-views.ffbffec7.js.map → column-views.4a28d695.js.map} +1 -1
  116. package/dist/node/{column-views.4d8fc443.js → column-views.5950c8eb.js} +2 -2
  117. package/dist/node/{column-views.4d8fc443.js.map → column-views.5950c8eb.js.map} +1 -1
  118. package/dist/node/{column-views.d30231cb.js → column-views.5987bc26.js} +2 -2
  119. package/dist/node/{column-views.d30231cb.js.map → column-views.5987bc26.js.map} +1 -1
  120. package/dist/node/{column-views.784bac2a.js → column-views.5bb858c9.js} +2 -2
  121. package/dist/node/{column-views.784bac2a.js.map → column-views.5bb858c9.js.map} +1 -1
  122. package/dist/node/{column-views.fe7a5452.js → column-views.5cbada24.js} +2 -2
  123. package/dist/node/{column-views.fe7a5452.js.map → column-views.5cbada24.js.map} +1 -1
  124. package/dist/node/{column-views.8c00beb4.js → column-views.5fcd2be6.js} +2 -2
  125. package/dist/node/{column-views.8c00beb4.js.map → column-views.5fcd2be6.js.map} +1 -1
  126. package/dist/node/{column-views.bdf05ed4.js → column-views.78b2d234.js} +2 -2
  127. package/dist/node/{column-views.bdf05ed4.js.map → column-views.78b2d234.js.map} +1 -1
  128. package/dist/node/{column-views.5908556a.js → column-views.8bee789c.js} +2 -2
  129. package/dist/node/{column-views.5908556a.js.map → column-views.8bee789c.js.map} +1 -1
  130. package/dist/node/{column-views.18e86c2d.js → column-views.90c36c0b.js} +2 -2
  131. package/dist/node/{column-views.18e86c2d.js.map → column-views.90c36c0b.js.map} +1 -1
  132. package/dist/node/{column-views.87d31e0a.js → column-views.a2476e39.js} +2 -2
  133. package/dist/node/{column-views.87d31e0a.js.map → column-views.a2476e39.js.map} +1 -1
  134. package/dist/node/{column-views.39b71a38.js → column-views.a8f5ee28.js} +2 -2
  135. package/dist/node/{column-views.39b71a38.js.map → column-views.a8f5ee28.js.map} +1 -1
  136. package/dist/node/{column-views.5f3f8ccf.js → column-views.ad60c02f.js} +2 -2
  137. package/dist/node/{column-views.5f3f8ccf.js.map → column-views.ad60c02f.js.map} +1 -1
  138. package/dist/node/{column-views.72c3c6e7.js → column-views.add5e42b.js} +2 -2
  139. package/dist/node/{column-views.72c3c6e7.js.map → column-views.add5e42b.js.map} +1 -1
  140. package/dist/node/{column-views.4d573ded.js → column-views.b2e5f823.js} +2 -2
  141. package/dist/node/{column-views.4d573ded.js.map → column-views.b2e5f823.js.map} +1 -1
  142. package/dist/node/{column-views.64fc40d6.js → column-views.b57e5e6e.js} +2 -2
  143. package/dist/node/{column-views.64fc40d6.js.map → column-views.b57e5e6e.js.map} +1 -1
  144. package/dist/node/{column-views.a596b1f5.js → column-views.ba9108fe.js} +2 -2
  145. package/dist/node/column-views.ba9108fe.js.map +1 -0
  146. package/dist/node/{column-views.b6613ab0.js → column-views.c16a19fb.js} +2 -2
  147. package/dist/node/{column-views.b6613ab0.js.map → column-views.c16a19fb.js.map} +1 -1
  148. package/dist/node/{column-views.74fcfb9c.js → column-views.c3097d9a.js} +2 -2
  149. package/dist/node/{column-views.74fcfb9c.js.map → column-views.c3097d9a.js.map} +1 -1
  150. package/dist/node/{column-views.fa5ee6de.js → column-views.c4c15e2b.js} +2 -2
  151. package/dist/node/{column-views.fa5ee6de.js.map → column-views.c4c15e2b.js.map} +1 -1
  152. package/dist/node/{column-views.58b336f1.js → column-views.c651b684.js} +2 -2
  153. package/dist/node/{column-views.58b336f1.js.map → column-views.c651b684.js.map} +1 -1
  154. package/dist/node/{column-views.447008d0.js → column-views.cf41a6d7.js} +2 -2
  155. package/dist/node/{column-views.447008d0.js.map → column-views.cf41a6d7.js.map} +1 -1
  156. package/dist/node/{column-views.5fd6e11a.js → column-views.d22bf15c.js} +2 -2
  157. package/dist/node/{column-views.5fd6e11a.js.map → column-views.d22bf15c.js.map} +1 -1
  158. package/dist/node/{column-views.5c02450b.js → column-views.d737de1e.js} +2 -2
  159. package/dist/node/{column-views.5c02450b.js.map → column-views.d737de1e.js.map} +1 -1
  160. package/dist/node/{column-views.0d48f51d.js → column-views.da902c44.js} +2 -2
  161. package/dist/node/{column-views.0d48f51d.js.map → column-views.da902c44.js.map} +1 -1
  162. package/dist/node/{column-views.003e0c17.js → column-views.e0e20136.js} +2 -2
  163. package/dist/node/{column-views.003e0c17.js.map → column-views.e0e20136.js.map} +1 -1
  164. package/dist/node/{column-views.7e895e1a.js → column-views.ec0087a2.js} +2 -2
  165. package/dist/node/{column-views.7e895e1a.js.map → column-views.ec0087a2.js.map} +1 -1
  166. package/dist/node/{column-views.d86e6c7d.js → column-views.fb3ed7cc.js} +2 -2
  167. package/dist/node/{column-views.d86e6c7d.js.map → column-views.fb3ed7cc.js.map} +1 -1
  168. package/dist/node/{column-views.94c8ce3e.js → column-views.fc4c2c61.js} +2 -2
  169. package/dist/node/{column-views.94c8ce3e.js.map → column-views.fc4c2c61.js.map} +1 -1
  170. package/dist/node/column-views.fcb243a2.js +2 -0
  171. package/dist/node/column-views.fcb243a2.js.map +1 -0
  172. package/dist/node/index.js +1 -1
  173. package/dist/node/index.js.map +1 -1
  174. package/package.json +4 -4
  175. package/src/correlation-chart/stories/correlation-chart.stories.ts +1 -24
  176. package/src/correlation-chart/stories/utils.ts +24 -0
  177. package/src/facets/measurements/sgp.ts +10 -3
  178. package/src/maps/_shared/styles.ts +12 -2
  179. package/src/maps/column-navigation/mapbox/index.ts +1 -0
  180. package/src/prepare-units/composite-scale.ts +9 -1
  181. package/src/prepare-units/helpers.ts +2 -2
  182. package/src/unit-details/panel.ts +15 -7
  183. package/dist/esm/column-views.1b5bf0c6.js.map +0 -1
  184. package/dist/esm/column-views.633c42a3.js.map +0 -1
  185. package/dist/esm/column-views.ab2cc6cb.js.map +0 -1
  186. package/dist/esm/column-views.af4278f0.js.map +0 -1
  187. package/dist/esm/column-views.b4e1236d.js.map +0 -1
  188. package/dist/node/column-views.021a6961.js +0 -2
  189. package/dist/node/column-views.021a6961.js.map +0 -1
  190. package/dist/node/column-views.139b0855.js +0 -2
  191. package/dist/node/column-views.139b0855.js.map +0 -1
  192. package/dist/node/column-views.375529b1.js +0 -2
  193. package/dist/node/column-views.375529b1.js.map +0 -1
  194. package/dist/node/column-views.5e73411d.js +0 -2
  195. package/dist/node/column-views.5e73411d.js.map +0 -1
  196. package/dist/node/column-views.a596b1f5.js.map +0 -1
@@ -1 +1 @@
1
- {"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,e,C,C,wB,C,C,kB,C,K,6B,A,Q,M,mB,A,Q,W,C,K,O,A,Q,M,Y,A,Q,S,C,K,U,A,Q,iB,C,C,W,C,K,mB,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,iB,I,G,E,E,gB,I,G,I,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SCsBA,IAAM,EAAI,AAAA,EAAM,MAAM,C,AAAC,G,AAAA,E,U,C,AAAA,E,O,CAAA,GAqEvB,SAAS,EAAe,CAAA,SAAE,CAAQ,CAAA,MAAE,EAAQ,SAAA,CAAW,EACrD,IAAM,EAAO,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,EAAwB,CAAE,OAAQ,CAAS,GAOlD,EAAgB,AAAA,EAAQ,IACrB,AAAC,GACC,EAAE,EAAe,CACtB,MALgB,IAMhB,OAAQ,GACR,MAAA,EACA,GAAG,CAAK,AACV,GAED,CAdW,IAcH,EAAM,EAEX,CAAA,SAAE,CAAQ,CAAA,MAAE,CAAK,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,IAEtB,EAAQ,AAAA,EAAQ,IACpB,AAAI,AAAQ,MAAR,GAAgB,AAAS,MAAT,EAAsB,KACnC,AA3EX,SACE,CAAuB,CACvB,CAAc,CACd,CAAwB,EASxB,IAAM,EAAsB,AAAA,EAAM,EAAM,AAAC,GAAM,EAAE,cAAc,EAEzD,EAAS,IAAI,IAEnB,IAAK,IAAM,KAAgB,EAAoB,MAAM,GAAI,CAGvD,IAAM,EAAM,MAAM,IAAI,CADN,IAAI,IAAI,EAAa,GAAG,CAAC,AAAC,GAAM,EAAE,OAAO,IAEzD,EAAI,IAAI,GAER,IAAM,EAAM,EAAI,IAAI,CAAC,KAErB,GAAI,CAAC,EAAO,GAAG,CAAC,GAAM,CACpB,IAAM,EAAW,EACd,GAAG,CAAC,AAAC,GACG,EAAM,IAAI,CAAC,AAAC,GAAM,EAAE,OAAO,GAAK,IAExC,MAAM,CAAC,SAEJ,EAAY,EAAS,GAAG,CAAC,AAAC,IAC9B,GAAM,CAAC,EAAQ,EAAW,CAAG,AAAA,CAAA,EAAA,EAAA,kBAAiB,AAAjB,EAAmB,EAAM,GACtD,MAAO,CAAE,OAAA,EAAQ,WAAA,CAAW,CAC9B,GAGM,EAAM,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,EAAkB,EAAW,GAEzC,EAAO,GAAG,CAAC,EAAK,CACd,GAAI,EACJ,KAAM,EAAE,CACR,MAAO,EACP,GAAG,CAAG,AACR,EACF,CACA,EAAO,GAAG,CAAC,GAAM,IAAI,CAAC,IAAI,CAAC,CAAY,CAAC,EAAE,CAC5C,CAEA,OAAO,MAAM,IAAI,CAAC,EAAO,MAAM,GACjC,EAyB+B,EAAM,EAAO,GACvC,CAAC,EAAM,EAAO,EAAS,SAE1B,AAAI,AAAS,MAAT,EAAsB,EAAE,EAAe,EAAE,IAEtC,EAAE,EAAA,sBAAqB,CAAG,CAC/B,KAAM,EACN,cAAA,EACA,yBAA0B,EAC5B,EACF,CAEA,SAAS,EAAgB,CAAA,KAAE,CAAI,CAAE,EAC/B,GAAM,CAAA,OAAE,CAAM,CAAA,OAAE,CAAM,CAAE,CAAG,AAAA,IAErB,CAAA,MAAE,CAAK,CAAA,MAAE,CAAK,CAAE,CAAG,EACnB,EAAI,EAAO,GAGjB,OAAO,EAAE,wBAAyB,CAAE,EAAA,EAAG,MAAO,AAFnC,EAAO,GAEiC,EAAG,EAAG,EAAG,OAAA,CAAO,EACrE,CAEA,SAAS,EAAc,CAAwB,EAC7C,GAAM,CAAA,KAAE,CAAI,CAAA,MAAE,CAAK,CAAA,OAAE,CAAM,CAAA,MAAE,CAAK,CAAA,QAAE,CAAO,CAAE,CAAG,EAC1C,CAAA,KAAE,CAAI,CAAA,MAAE,CAAK,CAAE,CAAG,EAOxB,OAAO,EACL,qBACA,CAAE,UAAW,AAAA,EAAW,CAAE,YAJL,AADJ,CAAA,GAAS,OAAS,GAArC,EACoC,EAIoB,EAAG,EACzD,CACE,EACE,EACA,CAAE,MAAA,EAAO,YAAa,EAAQ,eAAgB,CAAA,EAAM,cAAe,EAAG,EACtE,CACE,EAAM,GAAG,CAAC,AAAC,GACF,EAAE,EAAiB,CAAE,KAAA,CAAK,IAEnC,EAAK,GAAG,CAAC,AAAC,GACD,EAAE,EAAgB,CACvB,UAAW,GACX,KAAM,EAAE,aAAa,CACrB,MApBG,CAqBL,IAEH,EAEJ,CAEL,Q,K,c,C,K,a","sources":["<anon>","packages/column-views/src/facets/detrital-zircon/index.ts"],"sourcesContent":["import \"./column-views.e93b3bdb.js\";\nimport \"./column-views.869c7199.js\";\nimport \"./column-views.54f7a243.js\";\nimport \"./column-views.5c02450b.js\";\nimport \"./column-views.dbb4a46b.js\";\nimport {usePlotArea as $9VOFI$usePlotArea, DetritalSpectrumPlot as $9VOFI$DetritalSpectrumPlot, DetritalSeries as $9VOFI$DetritalSeries} from \"@macrostrat/data-components\";\nimport $9VOFI$macrostrathyper from \"@macrostrat/hyper\";\nimport {useMemo as $9VOFI$useMemo} from \"react\";\nimport $9VOFI$classnames from \"classnames\";\nimport {group as $9VOFI$group} from \"d3-array\";\nimport {NonIdealState as $9VOFI$NonIdealState, Spinner as $9VOFI$Spinner} from \"@blueprintjs/core\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $68f55e74a5c97233$exports = {};\n\n$parcel$export($68f55e74a5c97233$exports, \"DetritalColumn\", () => $68f55e74a5c97233$export$f176396e104db8d5);\n$parcel$export($68f55e74a5c97233$exports, \"DetritalGroup\", () => $68f55e74a5c97233$export$1b3047373cd1c8c7);\n\n\n\nvar $ehHhC = parcelRequire(\"ehHhC\");\n\n\nvar $jtfAP = parcelRequire(\"jtfAP\");\n\n\nvar $kIQUG = parcelRequire(\"kIQUG\");\n\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\nvar $iWhRv = parcelRequire(\"iWhRv\");\n\nconst $68f55e74a5c97233$var$h = (0, $9VOFI$macrostrathyper).styled((0, (/*@__PURE__*/$parcel$interopDefault($jtfAP))));\nfunction $68f55e74a5c97233$var$prepareDetritalData(data, units, axisType) {\n /** Right now measurement data could be duplicated if there are multiple units linked to the same\n * measuremeta_id. THis happens because matches to units might be at a lower rank (e.g, if the column\n * contains Formations but the measurements are linked to a Group). To handle this, we group by measuremeta_id\n * and then create unique keys based on the set of units linked to each measurement.\n */ // Group data by measuremeta_id\n const measurementsGrouped = (0, $9VOFI$group)(data, (d)=>d.measuremeta_id);\n const resMap = new Map();\n for (const measurements of measurementsGrouped.values()){\n // Get a list of unique unit_ids for this measurement\n const unitIDs = new Set(measurements.map((m)=>m.unit_id));\n const ids = Array.from(unitIDs);\n ids.sort();\n // Key is unique to the set of units\n const key = ids.join(\"-\");\n if (!resMap.has(key)) {\n const unitData = ids.map((id)=>{\n return units.find((u)=>u.unit_id === id);\n }).filter(Boolean);\n const positions = unitData.map((unit)=>{\n const [height, top_height] = (0, $iWhRv.getUnitHeightRange)(unit, axisType);\n return {\n height: height,\n top_height: top_height\n };\n });\n // merge positions (note: we could also have multiple separate notes per measurement)\n const pos = (0, $kIQUG.mergeHeightRanges)(positions, axisType);\n resMap.set(key, {\n id: key,\n data: [],\n units: unitData,\n ...pos\n });\n }\n resMap.get(key).data.push(measurements[0]);\n }\n return Array.from(resMap.values());\n}\nfunction $68f55e74a5c97233$export$f176396e104db8d5({ columnID: columnID, color: color = \"magenta\" }) {\n const data = (0, $ehHhC.useDetritalMeasurements)({\n col_id: columnID\n });\n const width = 400;\n const paddingLeft = 40;\n const spectrumWidth = width - paddingLeft;\n const noteComponent = (0, $9VOFI$useMemo)(()=>{\n return (props)=>{\n return $68f55e74a5c97233$var$h($68f55e74a5c97233$export$1b3047373cd1c8c7, {\n width: spectrumWidth,\n height: 40,\n color: color,\n ...props\n });\n };\n }, [\n width,\n color\n ]);\n const { axisType: axisType, units: units } = (0, $wtIgl.useMacrostratColumnData)();\n const data1 = (0, $9VOFI$useMemo)(()=>{\n if (data == null || units == null) return null;\n return $68f55e74a5c97233$var$prepareDetritalData(data, units, axisType);\n }, [\n data,\n units,\n axisType\n ]);\n if (data1 == null) return $68f55e74a5c97233$var$h((0, $9VOFI$NonIdealState), $68f55e74a5c97233$var$h((0, $9VOFI$Spinner)));\n return $68f55e74a5c97233$var$h((0, $kIQUG.BaseMeasurementsColumn), {\n data: data1,\n noteComponent: noteComponent,\n deltaConnectorAttachment: 20\n });\n}\nfunction $68f55e74a5c97233$var$DepositionalAge({ unit: unit }) {\n const { xScale: xScale, height: height } = (0, $9VOFI$usePlotArea)();\n const { t_age: t_age, b_age: b_age } = unit;\n const x = xScale(t_age);\n const x1 = xScale(b_age);\n return $68f55e74a5c97233$var$h(\"rect.depositional-age\", {\n x: x,\n width: x1 - x,\n y: 0,\n height: height\n });\n}\nfunction $68f55e74a5c97233$export$1b3047373cd1c8c7(props) {\n const { note: note, width: width, height: height, color: color, spacing: spacing } = props;\n const { data: data, units: units } = note;\n const _color = color;\n const spaceBelow = spacing?.below ?? 100;\n const hideAxisLabels = spaceBelow < 60;\n return $68f55e74a5c97233$var$h(\"div.detrital-group\", {\n className: (0, $9VOFI$classnames)({\n \"hide-axis\": hideAxisLabels\n })\n }, [\n $68f55e74a5c97233$var$h((0, $9VOFI$DetritalSpectrumPlot), {\n width: width,\n innerHeight: height,\n showAxisLabels: true,\n paddingBottom: 40\n }, [\n units.map((unit)=>{\n return $68f55e74a5c97233$var$h($68f55e74a5c97233$var$DepositionalAge, {\n unit: unit\n });\n }),\n data.map((d)=>{\n return $68f55e74a5c97233$var$h((0, $9VOFI$DetritalSeries), {\n bandwidth: 20,\n data: d.measure_value,\n color: _color\n });\n })\n ])\n ]);\n}\n\n\nexport {$68f55e74a5c97233$export$f176396e104db8d5 as DetritalColumn, $68f55e74a5c97233$export$1b3047373cd1c8c7 as DetritalGroup};\n//# sourceMappingURL=column-views.b6613ab0.js.map\n","import {\n DetritalSpectrumPlot,\n DetritalSeries,\n usePlotArea,\n} from \"@macrostrat/data-components\";\nimport type { IUnit } from \"../../units/types\";\nimport hyper from \"@macrostrat/hyper\";\nimport { useDetritalMeasurements, MeasurementInfo } from \"./provider\";\nimport { useMemo } from \"react\";\nimport styles from \"./index.module.sass\";\nimport classNames from \"classnames\";\nimport {\n BaseMeasurementsColumn,\n mergeHeightRanges,\n ColumnMeasurementData,\n} from \"../measurements\";\nimport { group } from \"d3-array\";\nimport { ColumnAxisType } from \"@macrostrat/column-components\";\nimport { useMacrostratColumnData } from \"../../data-provider\";\nimport { getUnitHeightRange } from \"../../prepare-units\";\nimport { NonIdealState, Spinner } from \"@blueprintjs/core\";\n\nconst h = hyper.styled(styles);\n\ninterface DetritalItemProps {\n note: DZMeasurementInfo;\n spacing?: {\n below?: number;\n above?: number;\n };\n width?: number;\n height?: number;\n color?: string;\n}\n\ninterface DZMeasurementInfo extends ColumnMeasurementData<MeasurementInfo[]> {\n units: IUnit[];\n}\n\nfunction prepareDetritalData(\n data: MeasurementInfo[],\n units: IUnit[],\n axisType: ColumnAxisType,\n) {\n /** Right now measurement data could be duplicated if there are multiple units linked to the same\n * measuremeta_id. THis happens because matches to units might be at a lower rank (e.g, if the column\n * contains Formations but the measurements are linked to a Group). To handle this, we group by measuremeta_id\n * and then create unique keys based on the set of units linked to each measurement.\n */\n\n // Group data by measuremeta_id\n const measurementsGrouped = group(data, (d) => d.measuremeta_id);\n\n const resMap = new Map<string, DZMeasurementInfo>();\n\n for (const measurements of measurementsGrouped.values()) {\n // Get a list of unique unit_ids for this measurement\n const unitIDs = new Set(measurements.map((m) => m.unit_id));\n const ids = Array.from(unitIDs);\n ids.sort();\n // Key is unique to the set of units\n const key = ids.join(\"-\");\n\n if (!resMap.has(key)) {\n const unitData = ids\n .map((id) => {\n return units.find((u) => u.unit_id === id);\n })\n .filter(Boolean);\n\n const positions = unitData.map((unit) => {\n const [height, top_height] = getUnitHeightRange(unit, axisType);\n return { height, top_height };\n });\n\n // merge positions (note: we could also have multiple separate notes per measurement)\n const pos = mergeHeightRanges(positions, axisType);\n\n resMap.set(key, {\n id: key,\n data: [],\n units: unitData as IUnit[],\n ...pos,\n });\n }\n resMap.get(key)!.data.push(measurements[0]);\n }\n\n return Array.from(resMap.values());\n}\n\nfunction DetritalColumn({ columnID, color = \"magenta\" }) {\n const data = useDetritalMeasurements({ col_id: columnID });\n\n const width = 400;\n const paddingLeft = 40;\n\n const spectrumWidth = width - paddingLeft;\n\n const noteComponent = useMemo(() => {\n return (props) => {\n return h(DetritalGroup, {\n width: spectrumWidth,\n height: 40,\n color,\n ...props,\n });\n };\n }, [width, color]);\n\n const { axisType, units } = useMacrostratColumnData();\n\n const data1 = useMemo(() => {\n if (data == null || units == null) return null;\n return prepareDetritalData(data, units, axisType);\n }, [data, units, axisType]);\n\n if (data1 == null) return h(NonIdealState, h(Spinner));\n\n return h(BaseMeasurementsColumn, {\n data: data1,\n noteComponent,\n deltaConnectorAttachment: 20,\n });\n}\n\nfunction DepositionalAge({ unit }) {\n const { xScale, height } = usePlotArea();\n\n const { t_age, b_age } = unit;\n const x = xScale(t_age);\n const x1 = xScale(b_age);\n\n return h(\"rect.depositional-age\", { x, width: x1 - x, y: 0, height });\n}\n\nfunction DetritalGroup(props: DetritalItemProps) {\n const { note, width, height, color, spacing } = props;\n const { data, units } = note;\n\n const _color = color;\n\n const spaceBelow = spacing?.below ?? 100;\n const hideAxisLabels = spaceBelow < 60;\n\n return h(\n \"div.detrital-group\",\n { className: classNames({ \"hide-axis\": hideAxisLabels }) },\n [\n h(\n DetritalSpectrumPlot,\n { width, innerHeight: height, showAxisLabels: true, paddingBottom: 40 },\n [\n units.map((unit) => {\n return h(DepositionalAge, { unit });\n }),\n data.map((d) => {\n return h(DetritalSeries, {\n bandwidth: 20,\n data: d.measure_value,\n color: _color,\n });\n }),\n ],\n ),\n ],\n );\n}\n\nexport { DetritalColumn, DetritalGroup };\n"],"names":["usePlotArea","$9VOFI$usePlotArea","DetritalSpectrumPlot","$9VOFI$DetritalSpectrumPlot","DetritalSeries","$9VOFI$DetritalSeries","$9VOFI$macrostrathyper","useMemo","$9VOFI$useMemo","$9VOFI$classnames","group","$9VOFI$group","NonIdealState","$9VOFI$NonIdealState","Spinner","$9VOFI$Spinner","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$68f55e74a5c97233$exports","$68f55e74a5c97233$export$f176396e104db8d5","$68f55e74a5c97233$export$1b3047373cd1c8c7","$ehHhC","$jtfAP","$kIQUG","$wtIgl","$iWhRv","$68f55e74a5c97233$var$h","styled","a","__esModule","default","columnID","color","data","useDetritalMeasurements","col_id","noteComponent","props","width","height","axisType","units","useMacrostratColumnData","data1","$68f55e74a5c97233$var$prepareDetritalData","measurementsGrouped","d","measuremeta_id","resMap","Map","measurements","values","ids","Array","from","Set","map","m","unit_id","sort","key","join","has","unitData","find","u","filter","Boolean","positions","unit","top_height","getUnitHeightRange","pos","mergeHeightRanges","push","BaseMeasurementsColumn","deltaConnectorAttachment","$68f55e74a5c97233$var$DepositionalAge","xScale","t_age","b_age","x","x1","y","note","spacing","className","spaceBelow","below","innerHeight","showAxisLabels","paddingBottom","bandwidth","measure_value","DetritalColumn","DetritalGroup"],"version":3,"file":"column-views.b6613ab0.js.map","sourceRoot":"../../../../"}
1
+ {"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,e,C,C,wB,C,C,kB,C,K,6B,A,Q,M,mB,A,Q,W,C,K,O,A,Q,M,Y,A,Q,S,C,K,U,A,Q,iB,C,C,W,C,K,mB,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,iB,I,G,E,E,gB,I,G,I,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SCsBA,IAAM,EAAI,AAAA,EAAM,MAAM,C,AAAC,G,AAAA,E,U,C,AAAA,E,O,CAAA,GAqEvB,SAAS,EAAe,CAAA,SAAE,CAAQ,CAAA,MAAE,EAAQ,SAAA,CAAW,EACrD,IAAM,EAAO,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,EAAwB,CAAE,OAAQ,CAAS,GAOlD,EAAgB,AAAA,EAAQ,IACrB,AAAC,GACC,EAAE,EAAe,CACtB,MALgB,IAMhB,OAAQ,GACR,MAAA,EACA,GAAG,CAAK,AACV,GAED,CAdW,IAcH,EAAM,EAEX,CAAA,SAAE,CAAQ,CAAA,MAAE,CAAK,CAAE,CAAG,AAAA,CAAA,EAAA,EAAA,uBAAsB,AAAtB,IAEtB,EAAQ,AAAA,EAAQ,IACpB,AAAI,AAAQ,MAAR,GAAgB,AAAS,MAAT,EAAsB,KACnC,AA3EX,SACE,CAAuB,CACvB,CAAc,CACd,CAAwB,EASxB,IAAM,EAAsB,AAAA,EAAM,EAAM,AAAC,GAAM,EAAE,cAAc,EAEzD,EAAS,IAAI,IAEnB,IAAK,IAAM,KAAgB,EAAoB,MAAM,GAAI,CAGvD,IAAM,EAAM,MAAM,IAAI,CADN,IAAI,IAAI,EAAa,GAAG,CAAC,AAAC,GAAM,EAAE,OAAO,IAEzD,EAAI,IAAI,GAER,IAAM,EAAM,EAAI,IAAI,CAAC,KAErB,GAAI,CAAC,EAAO,GAAG,CAAC,GAAM,CACpB,IAAM,EAAW,EACd,GAAG,CAAC,AAAC,GACG,EAAM,IAAI,CAAC,AAAC,GAAM,EAAE,OAAO,GAAK,IAExC,MAAM,CAAC,SAEJ,EAAY,EAAS,GAAG,CAAC,AAAC,IAC9B,GAAM,CAAC,EAAQ,EAAW,CAAG,AAAA,CAAA,EAAA,EAAA,kBAAiB,AAAjB,EAAmB,EAAM,GACtD,MAAO,CAAE,OAAA,EAAQ,WAAA,CAAW,CAC9B,GAGM,EAAM,AAAA,CAAA,EAAA,EAAA,iBAAgB,AAAhB,EAAkB,EAAW,GAEzC,EAAO,GAAG,CAAC,EAAK,CACd,GAAI,EACJ,KAAM,EAAE,CACR,MAAO,EACP,GAAG,CAAG,AACR,EACF,CACA,EAAO,GAAG,CAAC,GAAM,IAAI,CAAC,IAAI,CAAC,CAAY,CAAC,EAAE,CAC5C,CAEA,OAAO,MAAM,IAAI,CAAC,EAAO,MAAM,GACjC,EAyB+B,EAAM,EAAO,GACvC,CAAC,EAAM,EAAO,EAAS,SAE1B,AAAI,AAAS,MAAT,EAAsB,EAAE,EAAe,EAAE,IAEtC,EAAE,EAAA,sBAAqB,CAAG,CAC/B,KAAM,EACN,cAAA,EACA,yBAA0B,EAC5B,EACF,CAEA,SAAS,EAAgB,CAAA,KAAE,CAAI,CAAE,EAC/B,GAAM,CAAA,OAAE,CAAM,CAAA,OAAE,CAAM,CAAE,CAAG,AAAA,IAErB,CAAA,MAAE,CAAK,CAAA,MAAE,CAAK,CAAE,CAAG,EACnB,EAAI,EAAO,GAGjB,OAAO,EAAE,wBAAyB,CAAE,EAAA,EAAG,MAAO,AAFnC,EAAO,GAEiC,EAAG,EAAG,EAAG,OAAA,CAAO,EACrE,CAEA,SAAS,EAAc,CAAwB,EAC7C,GAAM,CAAA,KAAE,CAAI,CAAA,MAAE,CAAK,CAAA,OAAE,CAAM,CAAA,MAAE,CAAK,CAAA,QAAE,CAAO,CAAE,CAAG,EAC1C,CAAA,KAAE,CAAI,CAAA,MAAE,CAAK,CAAE,CAAG,EAOxB,OAAO,EACL,qBACA,CAAE,UAAW,AAAA,EAAW,CAAE,YAJL,AADJ,CAAA,GAAS,OAAS,GAArC,EACoC,EAIoB,EAAG,EACzD,CACE,EACE,EACA,CAAE,MAAA,EAAO,YAAa,EAAQ,eAAgB,CAAA,EAAM,cAAe,EAAG,EACtE,CACE,EAAM,GAAG,CAAC,AAAC,GACF,EAAE,EAAiB,CAAE,KAAA,CAAK,IAEnC,EAAK,GAAG,CAAC,AAAC,GACD,EAAE,EAAgB,CACvB,UAAW,GACX,KAAM,EAAE,aAAa,CACrB,MApBG,CAqBL,IAEH,EAEJ,CAEL,Q,K,c,C,K,a","sources":["<anon>","packages/column-views/src/facets/detrital-zircon/index.ts"],"sourcesContent":["import \"./column-views.e93b3bdb.js\";\nimport \"./column-views.869c7199.js\";\nimport \"./column-views.109cb0c8.js\";\nimport \"./column-views.d737de1e.js\";\nimport \"./column-views.dbb4a46b.js\";\nimport {usePlotArea as $9VOFI$usePlotArea, DetritalSpectrumPlot as $9VOFI$DetritalSpectrumPlot, DetritalSeries as $9VOFI$DetritalSeries} from \"@macrostrat/data-components\";\nimport $9VOFI$macrostrathyper from \"@macrostrat/hyper\";\nimport {useMemo as $9VOFI$useMemo} from \"react\";\nimport $9VOFI$classnames from \"classnames\";\nimport {group as $9VOFI$group} from \"d3-array\";\nimport {NonIdealState as $9VOFI$NonIdealState, Spinner as $9VOFI$Spinner} from \"@blueprintjs/core\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $68f55e74a5c97233$exports = {};\n\n$parcel$export($68f55e74a5c97233$exports, \"DetritalColumn\", () => $68f55e74a5c97233$export$f176396e104db8d5);\n$parcel$export($68f55e74a5c97233$exports, \"DetritalGroup\", () => $68f55e74a5c97233$export$1b3047373cd1c8c7);\n\n\n\nvar $ehHhC = parcelRequire(\"ehHhC\");\n\n\nvar $jtfAP = parcelRequire(\"jtfAP\");\n\n\nvar $kIQUG = parcelRequire(\"kIQUG\");\n\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\nvar $iWhRv = parcelRequire(\"iWhRv\");\n\nconst $68f55e74a5c97233$var$h = (0, $9VOFI$macrostrathyper).styled((0, (/*@__PURE__*/$parcel$interopDefault($jtfAP))));\nfunction $68f55e74a5c97233$var$prepareDetritalData(data, units, axisType) {\n /** Right now measurement data could be duplicated if there are multiple units linked to the same\n * measuremeta_id. THis happens because matches to units might be at a lower rank (e.g, if the column\n * contains Formations but the measurements are linked to a Group). To handle this, we group by measuremeta_id\n * and then create unique keys based on the set of units linked to each measurement.\n */ // Group data by measuremeta_id\n const measurementsGrouped = (0, $9VOFI$group)(data, (d)=>d.measuremeta_id);\n const resMap = new Map();\n for (const measurements of measurementsGrouped.values()){\n // Get a list of unique unit_ids for this measurement\n const unitIDs = new Set(measurements.map((m)=>m.unit_id));\n const ids = Array.from(unitIDs);\n ids.sort();\n // Key is unique to the set of units\n const key = ids.join(\"-\");\n if (!resMap.has(key)) {\n const unitData = ids.map((id)=>{\n return units.find((u)=>u.unit_id === id);\n }).filter(Boolean);\n const positions = unitData.map((unit)=>{\n const [height, top_height] = (0, $iWhRv.getUnitHeightRange)(unit, axisType);\n return {\n height: height,\n top_height: top_height\n };\n });\n // merge positions (note: we could also have multiple separate notes per measurement)\n const pos = (0, $kIQUG.mergeHeightRanges)(positions, axisType);\n resMap.set(key, {\n id: key,\n data: [],\n units: unitData,\n ...pos\n });\n }\n resMap.get(key).data.push(measurements[0]);\n }\n return Array.from(resMap.values());\n}\nfunction $68f55e74a5c97233$export$f176396e104db8d5({ columnID: columnID, color: color = \"magenta\" }) {\n const data = (0, $ehHhC.useDetritalMeasurements)({\n col_id: columnID\n });\n const width = 400;\n const paddingLeft = 40;\n const spectrumWidth = width - paddingLeft;\n const noteComponent = (0, $9VOFI$useMemo)(()=>{\n return (props)=>{\n return $68f55e74a5c97233$var$h($68f55e74a5c97233$export$1b3047373cd1c8c7, {\n width: spectrumWidth,\n height: 40,\n color: color,\n ...props\n });\n };\n }, [\n width,\n color\n ]);\n const { axisType: axisType, units: units } = (0, $wtIgl.useMacrostratColumnData)();\n const data1 = (0, $9VOFI$useMemo)(()=>{\n if (data == null || units == null) return null;\n return $68f55e74a5c97233$var$prepareDetritalData(data, units, axisType);\n }, [\n data,\n units,\n axisType\n ]);\n if (data1 == null) return $68f55e74a5c97233$var$h((0, $9VOFI$NonIdealState), $68f55e74a5c97233$var$h((0, $9VOFI$Spinner)));\n return $68f55e74a5c97233$var$h((0, $kIQUG.BaseMeasurementsColumn), {\n data: data1,\n noteComponent: noteComponent,\n deltaConnectorAttachment: 20\n });\n}\nfunction $68f55e74a5c97233$var$DepositionalAge({ unit: unit }) {\n const { xScale: xScale, height: height } = (0, $9VOFI$usePlotArea)();\n const { t_age: t_age, b_age: b_age } = unit;\n const x = xScale(t_age);\n const x1 = xScale(b_age);\n return $68f55e74a5c97233$var$h(\"rect.depositional-age\", {\n x: x,\n width: x1 - x,\n y: 0,\n height: height\n });\n}\nfunction $68f55e74a5c97233$export$1b3047373cd1c8c7(props) {\n const { note: note, width: width, height: height, color: color, spacing: spacing } = props;\n const { data: data, units: units } = note;\n const _color = color;\n const spaceBelow = spacing?.below ?? 100;\n const hideAxisLabels = spaceBelow < 60;\n return $68f55e74a5c97233$var$h(\"div.detrital-group\", {\n className: (0, $9VOFI$classnames)({\n \"hide-axis\": hideAxisLabels\n })\n }, [\n $68f55e74a5c97233$var$h((0, $9VOFI$DetritalSpectrumPlot), {\n width: width,\n innerHeight: height,\n showAxisLabels: true,\n paddingBottom: 40\n }, [\n units.map((unit)=>{\n return $68f55e74a5c97233$var$h($68f55e74a5c97233$var$DepositionalAge, {\n unit: unit\n });\n }),\n data.map((d)=>{\n return $68f55e74a5c97233$var$h((0, $9VOFI$DetritalSeries), {\n bandwidth: 20,\n data: d.measure_value,\n color: _color\n });\n })\n ])\n ]);\n}\n\n\nexport {$68f55e74a5c97233$export$f176396e104db8d5 as DetritalColumn, $68f55e74a5c97233$export$1b3047373cd1c8c7 as DetritalGroup};\n//# sourceMappingURL=column-views.c16a19fb.js.map\n","import {\n DetritalSpectrumPlot,\n DetritalSeries,\n usePlotArea,\n} from \"@macrostrat/data-components\";\nimport type { IUnit } from \"../../units/types\";\nimport hyper from \"@macrostrat/hyper\";\nimport { useDetritalMeasurements, MeasurementInfo } from \"./provider\";\nimport { useMemo } from \"react\";\nimport styles from \"./index.module.sass\";\nimport classNames from \"classnames\";\nimport {\n BaseMeasurementsColumn,\n mergeHeightRanges,\n ColumnMeasurementData,\n} from \"../measurements\";\nimport { group } from \"d3-array\";\nimport { ColumnAxisType } from \"@macrostrat/column-components\";\nimport { useMacrostratColumnData } from \"../../data-provider\";\nimport { getUnitHeightRange } from \"../../prepare-units\";\nimport { NonIdealState, Spinner } from \"@blueprintjs/core\";\n\nconst h = hyper.styled(styles);\n\ninterface DetritalItemProps {\n note: DZMeasurementInfo;\n spacing?: {\n below?: number;\n above?: number;\n };\n width?: number;\n height?: number;\n color?: string;\n}\n\ninterface DZMeasurementInfo extends ColumnMeasurementData<MeasurementInfo[]> {\n units: IUnit[];\n}\n\nfunction prepareDetritalData(\n data: MeasurementInfo[],\n units: IUnit[],\n axisType: ColumnAxisType,\n) {\n /** Right now measurement data could be duplicated if there are multiple units linked to the same\n * measuremeta_id. THis happens because matches to units might be at a lower rank (e.g, if the column\n * contains Formations but the measurements are linked to a Group). To handle this, we group by measuremeta_id\n * and then create unique keys based on the set of units linked to each measurement.\n */\n\n // Group data by measuremeta_id\n const measurementsGrouped = group(data, (d) => d.measuremeta_id);\n\n const resMap = new Map<string, DZMeasurementInfo>();\n\n for (const measurements of measurementsGrouped.values()) {\n // Get a list of unique unit_ids for this measurement\n const unitIDs = new Set(measurements.map((m) => m.unit_id));\n const ids = Array.from(unitIDs);\n ids.sort();\n // Key is unique to the set of units\n const key = ids.join(\"-\");\n\n if (!resMap.has(key)) {\n const unitData = ids\n .map((id) => {\n return units.find((u) => u.unit_id === id);\n })\n .filter(Boolean);\n\n const positions = unitData.map((unit) => {\n const [height, top_height] = getUnitHeightRange(unit, axisType);\n return { height, top_height };\n });\n\n // merge positions (note: we could also have multiple separate notes per measurement)\n const pos = mergeHeightRanges(positions, axisType);\n\n resMap.set(key, {\n id: key,\n data: [],\n units: unitData as IUnit[],\n ...pos,\n });\n }\n resMap.get(key)!.data.push(measurements[0]);\n }\n\n return Array.from(resMap.values());\n}\n\nfunction DetritalColumn({ columnID, color = \"magenta\" }) {\n const data = useDetritalMeasurements({ col_id: columnID });\n\n const width = 400;\n const paddingLeft = 40;\n\n const spectrumWidth = width - paddingLeft;\n\n const noteComponent = useMemo(() => {\n return (props) => {\n return h(DetritalGroup, {\n width: spectrumWidth,\n height: 40,\n color,\n ...props,\n });\n };\n }, [width, color]);\n\n const { axisType, units } = useMacrostratColumnData();\n\n const data1 = useMemo(() => {\n if (data == null || units == null) return null;\n return prepareDetritalData(data, units, axisType);\n }, [data, units, axisType]);\n\n if (data1 == null) return h(NonIdealState, h(Spinner));\n\n return h(BaseMeasurementsColumn, {\n data: data1,\n noteComponent,\n deltaConnectorAttachment: 20,\n });\n}\n\nfunction DepositionalAge({ unit }) {\n const { xScale, height } = usePlotArea();\n\n const { t_age, b_age } = unit;\n const x = xScale(t_age);\n const x1 = xScale(b_age);\n\n return h(\"rect.depositional-age\", { x, width: x1 - x, y: 0, height });\n}\n\nfunction DetritalGroup(props: DetritalItemProps) {\n const { note, width, height, color, spacing } = props;\n const { data, units } = note;\n\n const _color = color;\n\n const spaceBelow = spacing?.below ?? 100;\n const hideAxisLabels = spaceBelow < 60;\n\n return h(\n \"div.detrital-group\",\n { className: classNames({ \"hide-axis\": hideAxisLabels }) },\n [\n h(\n DetritalSpectrumPlot,\n { width, innerHeight: height, showAxisLabels: true, paddingBottom: 40 },\n [\n units.map((unit) => {\n return h(DepositionalAge, { unit });\n }),\n data.map((d) => {\n return h(DetritalSeries, {\n bandwidth: 20,\n data: d.measure_value,\n color: _color,\n });\n }),\n ],\n ),\n ],\n );\n}\n\nexport { DetritalColumn, DetritalGroup };\n"],"names":["usePlotArea","$9VOFI$usePlotArea","DetritalSpectrumPlot","$9VOFI$DetritalSpectrumPlot","DetritalSeries","$9VOFI$DetritalSeries","$9VOFI$macrostrathyper","useMemo","$9VOFI$useMemo","$9VOFI$classnames","group","$9VOFI$group","NonIdealState","$9VOFI$NonIdealState","Spinner","$9VOFI$Spinner","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$68f55e74a5c97233$exports","$68f55e74a5c97233$export$f176396e104db8d5","$68f55e74a5c97233$export$1b3047373cd1c8c7","$ehHhC","$jtfAP","$kIQUG","$wtIgl","$iWhRv","$68f55e74a5c97233$var$h","styled","a","__esModule","default","columnID","color","data","useDetritalMeasurements","col_id","noteComponent","props","width","height","axisType","units","useMacrostratColumnData","data1","$68f55e74a5c97233$var$prepareDetritalData","measurementsGrouped","d","measuremeta_id","resMap","Map","measurements","values","ids","Array","from","Set","map","m","unit_id","sort","key","join","has","unitData","find","u","filter","Boolean","positions","unit","top_height","getUnitHeightRange","pos","mergeHeightRanges","push","BaseMeasurementsColumn","deltaConnectorAttachment","$68f55e74a5c97233$var$DepositionalAge","xScale","t_age","b_age","x","x1","y","note","spacing","className","spaceBelow","below","innerHeight","showAxisLabels","paddingBottom","bandwidth","measure_value","DetritalColumn","DetritalGroup"],"version":3,"file":"column-views.c16a19fb.js.map","sourceRoot":"../../../../"}
@@ -1,2 +1,2 @@
1
- import"./column-views.1261be59.js";import"./column-views.f93b4175.js";import"./column-views.5c02450b.js";import"./column-views.7b6e7d82.js";import"./column-views.5e73411d.js";import"./column-views.ffbffec7.js";import"./column-views.0818254f.js";import"./column-views.5f3f8ccf.js";import"./column-views.7f9c7448.js";import"./column-views.5fd6e11a.js";import{ColumnAxisType as e}from"@macrostrat/column-components";import{hyperStyled as o}from"@macrostrat/hyper";import{extractPadding as n,useDarkMode as t,Box as i}from"@macrostrat/ui-components";import l from"classnames";import{useCallback as a}from"react";import{NonIdealState as s}from"@blueprintjs/core";import{DataField as r}from"@macrostrat/data-components";function c(e,o,n,t){Object.defineProperty(e,o,{get:n,set:t,enumerable:!0,configurable:!0})}var m=globalThis,u={},p={},d=m.parcelRequirea149;null==d&&((d=function(e){if(e in u)return u[e].exports;if(e in p){var o=p[e];delete p[e];var n={id:e,exports:{}};return u[e]=n,o.call(n.exports,n,n.exports),n.exports}var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}).register=function(e,o){p[e]=o},m.parcelRequirea149=d),d.register;var f={};c(f,"Column",()=>y),c(f,"ColumnContainer",()=>E),c(f,"ColumnBasicInfo",()=>R);var b=d("7YHvf"),g=d("7tWYE"),h=d("wtIgl"),v=d("5SO8b"),_=d("iYfAq"),x=d("2KV3o"),S=d("7exMg"),C=d("4hG2H"),H=d("76iYI"),w=d("610tc");let A=o(b&&b.__esModule?b.default:b);function y(o){let{showUnitPopover:n=!1,keyboardNavigation:t=!1,mergeSections:i,onUnitSelected:l,selectedUnit:a,children:r,units:c,t_age:m,b_age:u,t_pos:p,b_pos:d,unconformityHeight:f=30,targetUnitHeight:b=20,pixelScale:g,minPixelScale:_=.2,minSectionHeight:S=50,collapseSmallUnconformities:y=!0,allowUnitSelection:E=!1,hybridScale:R,scale:M,axisType:F,...$}=o,j=b,T=S,N=_;null!=g&&(j=null,T=0,N=g);let L=F??e.AGE,O=C.CompositeAgeAxis;R?.type===H.HybridScaleType.ApproximateHeight&&L!=e.AGE&&(O=C.ApproximateHeightAxis,L=e.AGE);let{sections:I,units:D,totalHeight:P}=(0,w.usePreparedColumnUnits)(c,{axisType:L,t_age:m,b_age:u,t_pos:p,b_pos:d,mergeSections:i,targetUnitHeight:j,unconformityHeight:f,pixelScale:g,minPixelScale:N,minSectionHeight:T,collapseSmallUnconformities:y,scale:M,hybridScale:R});return 0===I.length?A("div.column-container.empty",A(s,{title:"Empty column",description:"No sections found in this column.",icon:"warning-sign"})):A(h.MacrostratColumnDataProvider,{units:D,sections:I,totalHeight:P,axisType:L,allowUnitSelection:n||E,onUnitSelected:l,selectedUnit:a},A(U,{ageAxisComponent:O,...$},[r,A.if(n)(x.UnitSelectionPopover),A.if(t)(v.UnitKeyboardNavigation,{units:D})]))}function U(o){let t=n(o),i={"--column-padding-top":`${t.paddingTop}px`,"--column-padding-bottom":`${t.paddingBottom}px`,"--column-padding-left":`${t.paddingLeft}px`,"--column-padding-right":`${t.paddingRight}px`},{unitComponent:l=g.UnitComponent,unconformityLabels:s="minimal",showLabels:r=!0,width:c=300,columnWidth:m=150,showLabelColumn:u=!0,className:p,clipUnits:d=!1,children:f,showTimescale:b,timescaleLevels:_,maxInternalColumns:x,onMouseOver:H,ageAxisComponent:w=C.CompositeAgeAxis}=o,{axisType:y}=(0,h.useMacrostratColumnData)(),U=(0,v.useColumnRef)(),R=!1,M=!1;!0===s||"prominent"===s?M=!0:"minimal"===s&&(R=!0);let F=m;F>c&&(F=c);let $=u;F>c-10&&($=!1);let j=b??!0;return null!=_&&(j=!0),j=y==e.AGE&&j,A(E,{...function(e=null){let o=(0,v.useUnitSelectionDispatch)(),n=a(e=>{o?.(null,null)},[o]),t=(0,h.useCompositeScale)(),i=a(o=>{let n=t.invert(o.clientY-o.currentTarget.getBoundingClientRect().top);e?.(null,n,o)},[t,e]),l=a(()=>{e?.(null,null,null)},[e]);return null==e?{onClick:n,onMouseOver:void 0,onMouseMove:void 0,onMouseOut:void 0}:{onMouseOver:i,onMouseMove:i,onMouseOut:l,onClick:n}}(H),style:i,className:p},A("div.column",{ref:U},[A(w),A.if(j)(S.CompositeTimescale,{levels:_,unconformityLabels:R}),A(S.SectionsColumn,{unitComponent:l,showLabels:r,width:c,columnWidth:F,showLabelColumn:$,clipUnits:d,unconformityLabels:M,maxInternalColumns:x}),f]))}function E(e){let{className:o,...n}=e,a=t();return A(i,{className:l(o,{"dark-mode":a?.isEnabled??!1},"column-container"),...n})}function R({data:e,showColumnID:o=!0,showReferences:n=!0}){return null==e?null:A("div.column-info",[A("div.column-title-row",[A("h2",e.col_name),A.if(o)("h4",A(_.Identifier,{id:e.col_id}))]),A(r,{row:!0,label:"Group",value:e.col_group}),A.if(n)(_.ReferencesField,{refs:e.refs,inline:!1,row:!1,className:"column-refs"})])}export{y as Column,E as ColumnContainer,R as ColumnBasicInfo};
2
- //# sourceMappingURL=column-views.74fcfb9c.js.map
1
+ import"./column-views.1261be59.js";import"./column-views.306acd3f.js";import"./column-views.d737de1e.js";import"./column-views.7b6e7d82.js";import"./column-views.048fdcaf.js";import"./column-views.4a28d695.js";import"./column-views.31153f29.js";import"./column-views.ad60c02f.js";import"./column-views.7f9c7448.js";import"./column-views.d22bf15c.js";import{ColumnAxisType as e}from"@macrostrat/column-components";import{hyperStyled as o}from"@macrostrat/hyper";import{extractPadding as n,useDarkMode as t,Box as i}from"@macrostrat/ui-components";import l from"classnames";import{useCallback as a}from"react";import{NonIdealState as s}from"@blueprintjs/core";import{DataField as r}from"@macrostrat/data-components";function c(e,o,n,t){Object.defineProperty(e,o,{get:n,set:t,enumerable:!0,configurable:!0})}var m=globalThis,u={},p={},d=m.parcelRequirea149;null==d&&((d=function(e){if(e in u)return u[e].exports;if(e in p){var o=p[e];delete p[e];var n={id:e,exports:{}};return u[e]=n,o.call(n.exports,n,n.exports),n.exports}var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}).register=function(e,o){p[e]=o},m.parcelRequirea149=d),d.register;var f={};c(f,"Column",()=>y),c(f,"ColumnContainer",()=>E),c(f,"ColumnBasicInfo",()=>R);var b=d("7YHvf"),g=d("7tWYE"),h=d("wtIgl"),v=d("5SO8b"),_=d("iYfAq"),x=d("2KV3o"),S=d("7exMg"),C=d("4hG2H"),H=d("76iYI"),w=d("610tc");let A=o(b&&b.__esModule?b.default:b);function y(o){let{showUnitPopover:n=!1,keyboardNavigation:t=!1,mergeSections:i,onUnitSelected:l,selectedUnit:a,children:r,units:c,t_age:m,b_age:u,t_pos:p,b_pos:d,unconformityHeight:f=30,targetUnitHeight:b=20,pixelScale:g,minPixelScale:_=.2,minSectionHeight:S=50,collapseSmallUnconformities:y=!0,allowUnitSelection:E=!1,hybridScale:R,scale:M,axisType:F,...$}=o,j=b,T=S,N=_;null!=g&&(j=null,T=0,N=g);let L=F??e.AGE,O=C.CompositeAgeAxis;R?.type===H.HybridScaleType.ApproximateHeight&&L!=e.AGE&&(O=C.ApproximateHeightAxis,L=e.AGE);let{sections:I,units:D,totalHeight:P}=(0,w.usePreparedColumnUnits)(c,{axisType:L,t_age:m,b_age:u,t_pos:p,b_pos:d,mergeSections:i,targetUnitHeight:j,unconformityHeight:f,pixelScale:g,minPixelScale:N,minSectionHeight:T,collapseSmallUnconformities:y,scale:M,hybridScale:R});return 0===I.length?A("div.column-container.empty",A(s,{title:"Empty column",description:"No sections found in this column.",icon:"warning-sign"})):A(h.MacrostratColumnDataProvider,{units:D,sections:I,totalHeight:P,axisType:L,allowUnitSelection:n||E,onUnitSelected:l,selectedUnit:a},A(U,{ageAxisComponent:O,...$},[r,A.if(n)(x.UnitSelectionPopover),A.if(t)(v.UnitKeyboardNavigation,{units:D})]))}function U(o){let t=n(o),i={"--column-padding-top":`${t.paddingTop}px`,"--column-padding-bottom":`${t.paddingBottom}px`,"--column-padding-left":`${t.paddingLeft}px`,"--column-padding-right":`${t.paddingRight}px`},{unitComponent:l=g.UnitComponent,unconformityLabels:s="minimal",showLabels:r=!0,width:c=300,columnWidth:m=150,showLabelColumn:u=!0,className:p,clipUnits:d=!1,children:f,showTimescale:b,timescaleLevels:_,maxInternalColumns:x,onMouseOver:H,ageAxisComponent:w=C.CompositeAgeAxis}=o,{axisType:y}=(0,h.useMacrostratColumnData)(),U=(0,v.useColumnRef)(),R=!1,M=!1;!0===s||"prominent"===s?M=!0:"minimal"===s&&(R=!0);let F=m;F>c&&(F=c);let $=u;F>c-10&&($=!1);let j=b??!0;return null!=_&&(j=!0),j=y==e.AGE&&j,A(E,{...function(e=null){let o=(0,v.useUnitSelectionDispatch)(),n=a(e=>{o?.(null,null)},[o]),t=(0,h.useCompositeScale)(),i=a(o=>{let n=t.invert(o.clientY-o.currentTarget.getBoundingClientRect().top);e?.(null,n,o)},[t,e]),l=a(()=>{e?.(null,null,null)},[e]);return null==e?{onClick:n,onMouseOver:void 0,onMouseMove:void 0,onMouseOut:void 0}:{onMouseOver:i,onMouseMove:i,onMouseOut:l,onClick:n}}(H),style:i,className:p},A("div.column",{ref:U},[A(w),A.if(j)(S.CompositeTimescale,{levels:_,unconformityLabels:R}),A(S.SectionsColumn,{unitComponent:l,showLabels:r,width:c,columnWidth:F,showLabelColumn:$,clipUnits:d,unconformityLabels:M,maxInternalColumns:x}),f]))}function E(e){let{className:o,...n}=e,a=t();return A(i,{className:l(o,{"dark-mode":a?.isEnabled??!1},"column-container"),...n})}function R({data:e,showColumnID:o=!0,showReferences:n=!0}){return null==e?null:A("div.column-info",[A("div.column-title-row",[A("h2",e.col_name),A.if(o)("h4",A(_.Identifier,{id:e.col_id}))]),A(r,{row:!0,label:"Group",value:e.col_group}),A.if(n)(_.ReferencesField,{refs:e.refs,inline:!1,row:!1,className:"column-refs"})])}export{y as Column,E as ColumnContainer,R as ColumnBasicInfo};
2
+ //# sourceMappingURL=column-views.c3097d9a.js.map
@@ -1 +1 @@
1
- {"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,kB,C,K,+B,A,Q,e,C,K,mB,A,Q,kB,C,C,e,C,C,O,C,K,2B,A,Q,M,Y,A,Q,e,C,K,O,A,Q,iB,C,K,mB,A,Q,a,C,K,6B,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,S,I,G,E,E,kB,I,G,E,E,kB,I,G,I,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SCkDA,IAAM,EAAI,AAAA,E,AAAY,G,AAAA,E,U,C,AAAA,E,O,CAAA,GA0Cf,SAAS,EAAO,CAAkB,EACvC,GAAM,CAAA,gBACJ,EAAkB,CAAA,CAAA,CAAA,mBAClB,EAAqB,CAAA,CAAA,CAAA,cACrB,CAAa,CAAA,eACb,CAAc,CAAA,aACd,CAAY,CAAA,SACZ,CAAQ,CACR,MAAO,CAAQ,CAAA,MACf,CAAK,CAAA,MACL,CAAK,CAAA,MACL,CAAK,CAAA,MACL,CAAK,CAAA,mBACL,EAAqB,EAAA,CAAA,iBACrB,EAAmB,EAAA,CAAA,WACnB,CAAU,CAAA,cACV,EAAgB,EAAA,CAAA,iBAChB,EAAmB,EAAA,CAAA,4BACnB,EAA8B,CAAA,CAAA,CAAA,mBAC9B,EAAqB,CAAA,CAAA,CAAA,YACrB,CAAW,CAAA,MACX,CAAK,CAAA,SACL,CAAQ,CACR,GAAG,EACJ,CAAG,EAIA,EAAoB,EACpB,EAAoB,EACpB,EAAiB,CACH,OAAd,IACF,EAAoB,KACpB,EAAoB,EACpB,EAAiB,GAInB,IAAI,EAAY,GAAY,AAAA,EAAe,GAAG,CAC1C,EAAmB,EAAA,gBAAe,CAE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","sources":["<anon>","packages/column-views/src/column.ts"],"sourcesContent":["import \"./column-views.1261be59.js\";\nimport \"./column-views.f93b4175.js\";\nimport \"./column-views.5c02450b.js\";\nimport \"./column-views.7b6e7d82.js\";\nimport \"./column-views.5e73411d.js\";\nimport \"./column-views.ffbffec7.js\";\nimport \"./column-views.0818254f.js\";\nimport \"./column-views.5f3f8ccf.js\";\nimport \"./column-views.7f9c7448.js\";\nimport \"./column-views.5fd6e11a.js\";\nimport {ColumnAxisType as $6sU8d$ColumnAxisType} from \"@macrostrat/column-components\";\nimport {hyperStyled as $6sU8d$hyperStyled} from \"@macrostrat/hyper\";\nimport {extractPadding as $6sU8d$extractPadding, useDarkMode as $6sU8d$useDarkMode, Box as $6sU8d$Box} from \"@macrostrat/ui-components\";\nimport $6sU8d$classnames from \"classnames\";\nimport {useCallback as $6sU8d$useCallback} from \"react\";\nimport {NonIdealState as $6sU8d$NonIdealState} from \"@blueprintjs/core\";\nimport {DataField as $6sU8d$DataField} from \"@macrostrat/data-components\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $4721fb147cb3f5e1$exports = {};\n\n$parcel$export($4721fb147cb3f5e1$exports, \"Column\", () => $4721fb147cb3f5e1$export$816b5d811295e6bc);\n$parcel$export($4721fb147cb3f5e1$exports, \"ColumnContainer\", () => $4721fb147cb3f5e1$export$2194471aa3d52446);\n$parcel$export($4721fb147cb3f5e1$exports, \"ColumnBasicInfo\", () => $4721fb147cb3f5e1$export$fcdf79c491a4504f);\n\n\n\n\n\n\nvar $7YHvf = parcelRequire(\"7YHvf\");\n\nvar $7tWYE = parcelRequire(\"7tWYE\");\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\nvar $5SO8b = parcelRequire(\"5SO8b\");\n\nvar $iYfAq = parcelRequire(\"iYfAq\");\nvar $2KV3o = parcelRequire(\"2KV3o\");\n\nvar $7exMg = parcelRequire(\"7exMg\");\n\nvar $4hG2H = parcelRequire(\"4hG2H\");\n\nvar $76iYI = parcelRequire(\"76iYI\");\nvar $610tc = parcelRequire(\"610tc\");\n\n\nconst $4721fb147cb3f5e1$var$h = (0, $6sU8d$hyperStyled)((0, (/*@__PURE__*/$parcel$interopDefault($7YHvf))));\nfunction $4721fb147cb3f5e1$export$816b5d811295e6bc(props) {\n const { showUnitPopover: showUnitPopover = false, keyboardNavigation: keyboardNavigation = false, mergeSections: mergeSections, onUnitSelected: onUnitSelected, selectedUnit: selectedUnit, children: children, units: rawUnits, t_age: t_age, b_age: b_age, t_pos: t_pos, b_pos: b_pos, unconformityHeight: unconformityHeight = 30, targetUnitHeight: targetUnitHeight = 20, pixelScale: pixelScale, minPixelScale: minPixelScale = 0.2, minSectionHeight: minSectionHeight = 50, collapseSmallUnconformities: collapseSmallUnconformities = true, allowUnitSelection: allowUnitSelection = false, hybridScale: hybridScale, scale: scale, axisType: axisType, ...rest } = props;\n /* Make pixelScale and targetUnitHeight mutually exclusive. PixelScale implies\n * standardization of scales in all sections */ let _targetUnitHeight = targetUnitHeight;\n let _minSectionHeight = minSectionHeight;\n let _minPixelScale = minPixelScale;\n if (pixelScale != null) {\n _targetUnitHeight = null;\n _minSectionHeight = 0;\n _minPixelScale = pixelScale;\n }\n // Handle special cases for hybrid scales (WIP, we need to regularize this)\n let _axisType = axisType ?? (0, $6sU8d$ColumnAxisType).AGE;\n let ageAxisComponent = (0, $4hG2H.CompositeAgeAxis);\n if (hybridScale?.type === (0, $76iYI.HybridScaleType).ApproximateHeight && _axisType != (0, $6sU8d$ColumnAxisType).AGE) {\n // Use approximate height axis for non-age columns if a non-age axis type is requested\n ageAxisComponent = (0, $4hG2H.ApproximateHeightAxis);\n _axisType = (0, $6sU8d$ColumnAxisType).AGE;\n }\n const { sections: sections, units: units, totalHeight: totalHeight } = (0, $610tc.usePreparedColumnUnits)(rawUnits, {\n axisType: _axisType,\n t_age: t_age,\n b_age: b_age,\n t_pos: t_pos,\n b_pos: b_pos,\n mergeSections: mergeSections,\n targetUnitHeight: _targetUnitHeight,\n unconformityHeight: unconformityHeight,\n pixelScale: pixelScale,\n minPixelScale: _minPixelScale,\n minSectionHeight: _minSectionHeight,\n collapseSmallUnconformities: collapseSmallUnconformities,\n scale: // TODO: consider unifying scale and hybridScale options\n scale,\n hybridScale: hybridScale\n });\n if (sections.length === 0) return $4721fb147cb3f5e1$var$h(\"div.column-container.empty\", $4721fb147cb3f5e1$var$h((0, $6sU8d$NonIdealState), {\n title: \"Empty column\",\n description: \"No sections found in this column.\",\n icon: \"warning-sign\"\n }));\n return $4721fb147cb3f5e1$var$h((0, $wtIgl.MacrostratColumnDataProvider), {\n units: units,\n sections: sections,\n totalHeight: totalHeight,\n axisType: _axisType,\n allowUnitSelection: showUnitPopover || allowUnitSelection,\n onUnitSelected: onUnitSelected,\n selectedUnit: selectedUnit\n }, $4721fb147cb3f5e1$var$h($4721fb147cb3f5e1$var$ColumnInner, {\n ageAxisComponent: ageAxisComponent,\n ...rest\n }, [\n children,\n $4721fb147cb3f5e1$var$h.if(showUnitPopover)((0, $2KV3o.UnitSelectionPopover)),\n $4721fb147cb3f5e1$var$h.if(keyboardNavigation)((0, $5SO8b.UnitKeyboardNavigation), {\n units: units\n })\n ]));\n}\nfunction $4721fb147cb3f5e1$var$ColumnInner(props) {\n const padding = (0, $6sU8d$extractPadding)(props);\n // TODO: integrate padding vars more closely with the rest of the spacing (right now padding is a bit ad-hoc)\n const paddingVars = {\n \"--column-padding-top\": `${padding.paddingTop}px`,\n \"--column-padding-bottom\": `${padding.paddingBottom}px`,\n \"--column-padding-left\": `${padding.paddingLeft}px`,\n \"--column-padding-right\": `${padding.paddingRight}px`\n };\n const { unitComponent: unitComponent = (0, $7tWYE.UnitComponent), unconformityLabels: unconformityLabels = \"minimal\", showLabels: showLabels = true, width: _width = 300, columnWidth: _columnWidth = 150, showLabelColumn: _showLabelColumn = true, className: className, clipUnits: clipUnits = false, children: children, showTimescale: showTimescale, timescaleLevels: timescaleLevels, maxInternalColumns: maxInternalColumns, onMouseOver: onMouseOver, ageAxisComponent: ageAxisComponent = (0, $4hG2H.CompositeAgeAxis) } = props;\n const { axisType: axisType } = (0, $wtIgl.useMacrostratColumnData)();\n const columnRef = (0, $5SO8b.useColumnRef)();\n // Coalesce unconformity label setting to a boolean\n let _timescaleUnconformityLabels = false;\n let _sectionUnconformityLabels = false;\n if (unconformityLabels === true || unconformityLabels === \"prominent\") _sectionUnconformityLabels = true;\n else if (unconformityLabels === \"minimal\") _timescaleUnconformityLabels = true;\n let width = _width;\n let columnWidth = _columnWidth;\n if (columnWidth > width) columnWidth = width;\n let showLabelColumn = _showLabelColumn;\n if (columnWidth > width - 10) showLabelColumn = false;\n let _showTimescale = showTimescale ?? true;\n if (timescaleLevels != null) _showTimescale = true;\n _showTimescale = axisType == (0, $6sU8d$ColumnAxisType).AGE && _showTimescale;\n return $4721fb147cb3f5e1$var$h($4721fb147cb3f5e1$export$2194471aa3d52446, {\n ...$4721fb147cb3f5e1$var$useMouseEventHandlers(onMouseOver),\n style: paddingVars,\n className: className\n }, $4721fb147cb3f5e1$var$h(\"div.column\", {\n ref: columnRef\n }, [\n $4721fb147cb3f5e1$var$h(ageAxisComponent),\n $4721fb147cb3f5e1$var$h.if(_showTimescale)((0, $7exMg.CompositeTimescale), {\n levels: timescaleLevels,\n unconformityLabels: _timescaleUnconformityLabels\n }),\n $4721fb147cb3f5e1$var$h((0, $7exMg.SectionsColumn), {\n unitComponent: unitComponent,\n showLabels: showLabels,\n width: width,\n columnWidth: columnWidth,\n showLabelColumn: showLabelColumn,\n clipUnits: clipUnits,\n unconformityLabels: _sectionUnconformityLabels,\n maxInternalColumns: maxInternalColumns\n }),\n children\n ]));\n}\nfunction $4721fb147cb3f5e1$var$useMouseEventHandlers(_onMouseOver = null) {\n /** Click event handler */ // Click handler for unit selection\n const dispatch = (0, $5SO8b.useUnitSelectionDispatch)();\n const onClick = (0, $6sU8d$useCallback)((evt)=>{\n dispatch?.(null, null);\n }, [\n dispatch\n ]);\n /** Hover event handlers */ const scale = (0, $wtIgl.useCompositeScale)();\n const onMouseOver = (0, $6sU8d$useCallback)((evt)=>{\n const height = scale.invert(evt.clientY - evt.currentTarget.getBoundingClientRect().top);\n _onMouseOver?.(null, height, evt);\n }, [\n scale,\n _onMouseOver\n ]);\n const onMouseOut = (0, $6sU8d$useCallback)(()=>{\n _onMouseOver?.(null, null, null);\n }, [\n _onMouseOver\n ]);\n if (_onMouseOver == null) return {\n onClick: onClick,\n onMouseOver: undefined,\n onMouseMove: undefined,\n onMouseOut: undefined\n };\n return {\n onMouseOver: onMouseOver,\n onMouseMove: onMouseOver,\n onMouseOut: onMouseOut,\n onClick: onClick\n };\n}\nfunction $4721fb147cb3f5e1$export$2194471aa3d52446(props) {\n const { className: className, ...rest } = props;\n const darkMode = (0, $6sU8d$useDarkMode)();\n return $4721fb147cb3f5e1$var$h((0, $6sU8d$Box), {\n className: (0, $6sU8d$classnames)(className, {\n \"dark-mode\": darkMode?.isEnabled ?? false\n }, \"column-container\"),\n ...rest\n });\n}\nfunction $4721fb147cb3f5e1$export$fcdf79c491a4504f({ data: data, showColumnID: showColumnID = true, showReferences: showReferences = true }) {\n if (data == null) return null;\n return $4721fb147cb3f5e1$var$h(\"div.column-info\", [\n $4721fb147cb3f5e1$var$h(\"div.column-title-row\", [\n $4721fb147cb3f5e1$var$h(\"h2\", data.col_name),\n $4721fb147cb3f5e1$var$h.if(showColumnID)(\"h4\", $4721fb147cb3f5e1$var$h((0, $iYfAq.Identifier), {\n id: data.col_id\n }))\n ]),\n $4721fb147cb3f5e1$var$h((0, $6sU8d$DataField), {\n row: true,\n label: \"Group\",\n value: data.col_group\n }),\n $4721fb147cb3f5e1$var$h.if(showReferences)((0, $iYfAq.ReferencesField), {\n refs: data.refs,\n inline: false,\n row: false,\n className: \"column-refs\"\n })\n ]);\n}\n\n\nexport {$4721fb147cb3f5e1$export$816b5d811295e6bc as Column, $4721fb147cb3f5e1$export$2194471aa3d52446 as ColumnContainer, $4721fb147cb3f5e1$export$fcdf79c491a4504f as ColumnBasicInfo};\n//# sourceMappingURL=column-views.74fcfb9c.js.map\n","import { ColumnAxisType } from \"@macrostrat/column-components\";\nimport { hyperStyled } from \"@macrostrat/hyper\";\nimport {\n Box,\n extractPadding,\n Padding,\n useDarkMode,\n} from \"@macrostrat/ui-components\";\nimport classNames from \"classnames\";\nimport {\n HTMLAttributes,\n useCallback,\n CSSProperties,\n ComponentType,\n} from \"react\";\nimport styles from \"./column.module.sass\";\nimport { UnitComponent } from \"./units\";\nimport {\n UnitKeyboardNavigation,\n useColumnRef,\n useUnitSelectionDispatch,\n} from \"./data-provider\";\n\nimport {\n Identifier,\n ReferencesField,\n UnitSelectionPopover,\n} from \"./unit-details\";\nimport {\n MacrostratColumnDataProvider,\n useCompositeScale,\n useMacrostratColumnData,\n} from \"./data-provider\";\nimport {\n SectionSharedProps,\n CompositeTimescale,\n SectionsColumn,\n} from \"./section\";\nimport { ApproximateHeightAxis, CompositeAgeAxis } from \"./age-axis\";\nimport {\n MergeSectionsMode,\n usePreparedColumnUnits,\n HybridScaleType,\n ColumnHeightScaleOptions,\n} from \"./prepare-units\";\nimport { UnitLong } from \"@macrostrat/api-types\";\nimport { NonIdealState } from \"@blueprintjs/core\";\nimport { DataField } from \"@macrostrat/data-components\";\nimport { ScaleContinuousNumeric } from \"d3-scale\";\n\nconst h = hyperStyled(styles);\n\ninterface BaseColumnProps extends Omit<\n SectionSharedProps,\n \"unconformityLabels\"\n> {\n className?: string;\n showLabelColumn?: boolean;\n keyboardNavigation?: boolean;\n showLabels?: boolean;\n maxInternalColumns?: number;\n // Timescale properties\n showTimescale?: boolean;\n timescaleLevels?: number | [number, number];\n unconformityLabels?: boolean | UnconformityLabelPlacement;\n onMouseOver?: (\n unit: UnitLong | null,\n height: number | null,\n evt: MouseEvent,\n ) => void;\n}\n\nexport type UnconformityLabelPlacement = \"minimal\" | \"prominent\" | \"none\";\n\nexport interface ColumnProps\n extends Padding, BaseColumnProps, ColumnHeightScaleOptions {\n // Macrostrat units\n units: UnitLong[];\n t_age?: number;\n b_age?: number;\n t_pos?: number;\n b_pos?: number;\n mergeSections?: MergeSectionsMode;\n showUnitPopover?: boolean;\n allowUnitSelection?: boolean;\n selectedUnit?: number | null;\n onUnitSelected?: (unitID: number | null, unit: any) => void;\n // Unconformity height in pixels\n unconformityHeight?: number;\n scale?: ScaleContinuousNumeric<number, number>;\n}\n\nexport function Column(props: ColumnProps) {\n const {\n showUnitPopover = false,\n keyboardNavigation = false,\n mergeSections,\n onUnitSelected,\n selectedUnit,\n children,\n units: rawUnits,\n t_age,\n b_age,\n t_pos,\n b_pos,\n unconformityHeight = 30,\n targetUnitHeight = 20,\n pixelScale,\n minPixelScale = 0.2,\n minSectionHeight = 50,\n collapseSmallUnconformities = true,\n allowUnitSelection = false,\n hybridScale,\n scale,\n axisType,\n ...rest\n } = props;\n\n /* Make pixelScale and targetUnitHeight mutually exclusive. PixelScale implies\n * standardization of scales in all sections */\n let _targetUnitHeight = targetUnitHeight;\n let _minSectionHeight = minSectionHeight;\n let _minPixelScale = minPixelScale;\n if (pixelScale != null) {\n _targetUnitHeight = null;\n _minSectionHeight = 0;\n _minPixelScale = pixelScale;\n }\n\n // Handle special cases for hybrid scales (WIP, we need to regularize this)\n let _axisType = axisType ?? ColumnAxisType.AGE;\n let ageAxisComponent = CompositeAgeAxis;\n if (\n hybridScale?.type === HybridScaleType.ApproximateHeight &&\n _axisType != ColumnAxisType.AGE\n ) {\n // Use approximate height axis for non-age columns if a non-age axis type is requested\n ageAxisComponent = ApproximateHeightAxis;\n _axisType = ColumnAxisType.AGE;\n }\n\n const { sections, units, totalHeight } = usePreparedColumnUnits(rawUnits, {\n axisType: _axisType,\n t_age,\n b_age,\n t_pos,\n b_pos,\n mergeSections,\n targetUnitHeight: _targetUnitHeight,\n unconformityHeight,\n pixelScale,\n minPixelScale: _minPixelScale,\n minSectionHeight: _minSectionHeight,\n collapseSmallUnconformities,\n // TODO: consider unifying scale and hybridScale options\n scale,\n hybridScale,\n });\n\n if (sections.length === 0) {\n return h(\n \"div.column-container.empty\",\n h(NonIdealState, {\n title: \"Empty column\",\n description: \"No sections found in this column.\",\n icon: \"warning-sign\",\n }),\n );\n }\n\n return h(\n MacrostratColumnDataProvider,\n {\n units,\n sections,\n totalHeight,\n axisType: _axisType,\n allowUnitSelection: showUnitPopover || allowUnitSelection,\n onUnitSelected,\n selectedUnit,\n },\n h(ColumnInner, { ageAxisComponent, ...rest }, [\n children,\n h.if(showUnitPopover)(UnitSelectionPopover),\n h.if(keyboardNavigation)(UnitKeyboardNavigation, { units }),\n ]),\n );\n}\n\ninterface ColumnInnerProps extends BaseColumnProps {\n ageAxisComponent?: ComponentType;\n}\n\nfunction ColumnInner(props: ColumnInnerProps) {\n const padding = extractPadding(props);\n\n // TODO: integrate padding vars more closely with the rest of the spacing (right now padding is a bit ad-hoc)\n const paddingVars: any = {\n \"--column-padding-top\": `${padding.paddingTop}px`,\n \"--column-padding-bottom\": `${padding.paddingBottom}px`,\n \"--column-padding-left\": `${padding.paddingLeft}px`,\n \"--column-padding-right\": `${padding.paddingRight}px`,\n };\n\n const {\n unitComponent = UnitComponent,\n unconformityLabels = \"minimal\",\n showLabels = true,\n width: _width = 300,\n columnWidth: _columnWidth = 150,\n showLabelColumn: _showLabelColumn = true,\n className,\n clipUnits = false,\n children,\n showTimescale,\n timescaleLevels,\n maxInternalColumns,\n onMouseOver,\n ageAxisComponent = CompositeAgeAxis,\n } = props;\n\n const { axisType } = useMacrostratColumnData();\n\n const columnRef = useColumnRef();\n\n // Coalesce unconformity label setting to a boolean\n let _timescaleUnconformityLabels = false;\n let _sectionUnconformityLabels = false;\n if (unconformityLabels === true || unconformityLabels === \"prominent\") {\n _sectionUnconformityLabels = true;\n } else if (unconformityLabels === \"minimal\") {\n _timescaleUnconformityLabels = true;\n }\n\n let width = _width;\n let columnWidth = _columnWidth;\n if (columnWidth > width) {\n columnWidth = width;\n }\n let showLabelColumn = _showLabelColumn;\n if (columnWidth > width - 10) {\n showLabelColumn = false;\n }\n\n let _showTimescale = showTimescale ?? true;\n if (timescaleLevels != null) {\n _showTimescale = true;\n }\n _showTimescale = axisType == ColumnAxisType.AGE && _showTimescale;\n\n return h(\n ColumnContainer,\n {\n ...useMouseEventHandlers(onMouseOver),\n style: paddingVars,\n className,\n },\n h(\"div.column\", { ref: columnRef }, [\n h(ageAxisComponent),\n h.if(_showTimescale)(CompositeTimescale, {\n levels: timescaleLevels,\n unconformityLabels: _timescaleUnconformityLabels,\n }),\n h(SectionsColumn, {\n unitComponent,\n showLabels,\n width,\n columnWidth,\n showLabelColumn,\n clipUnits,\n unconformityLabels: _sectionUnconformityLabels,\n maxInternalColumns,\n }),\n children,\n ]),\n );\n}\n\ntype ColumnMouseOverHandler = (\n unit: UnitLong | null,\n height: number | null,\n evt: MouseEvent,\n) => void;\n\nfunction useMouseEventHandlers(\n _onMouseOver: ColumnMouseOverHandler | null = null,\n) {\n /** Click event handler */\n\n // Click handler for unit selection\n const dispatch = useUnitSelectionDispatch();\n const onClick = useCallback(\n (evt) => {\n dispatch?.(null, null);\n },\n [dispatch],\n );\n\n /** Hover event handlers */\n const scale = useCompositeScale();\n\n const onMouseOver = useCallback(\n (evt) => {\n const height = scale.invert(\n evt.clientY - evt.currentTarget.getBoundingClientRect().top,\n );\n _onMouseOver?.(null, height, evt);\n },\n [scale, _onMouseOver],\n );\n\n const onMouseOut = useCallback(() => {\n _onMouseOver?.(null, null, null);\n }, [_onMouseOver]);\n\n if (_onMouseOver == null) {\n return {\n onClick,\n onMouseOver: undefined,\n onMouseMove: undefined,\n onMouseOut: undefined,\n };\n }\n\n return { onMouseOver, onMouseMove: onMouseOver, onMouseOut, onClick };\n}\n\nexport interface ColumnContainerProps extends HTMLAttributes<HTMLDivElement> {\n className?: string;\n style?: CSSProperties;\n}\n\nexport function ColumnContainer(props: ColumnContainerProps) {\n const { className, ...rest } = props;\n const darkMode = useDarkMode();\n\n return h(Box, {\n className: classNames(\n className,\n {\n \"dark-mode\": darkMode?.isEnabled ?? false,\n },\n \"column-container\",\n ),\n ...rest,\n });\n}\n\nexport function ColumnBasicInfo({\n data,\n showColumnID = true,\n showReferences = true,\n}) {\n if (data == null) return null;\n return h(\"div.column-info\", [\n h(\"div.column-title-row\", [\n h(\"h2\", data.col_name),\n h.if(showColumnID)(\"h4\", h(Identifier, { id: data.col_id })),\n ]),\n h(DataField, { row: true, label: \"Group\", value: data.col_group }),\n h.if(showReferences)(ReferencesField, {\n refs: data.refs,\n inline: false,\n row: false,\n className: \"column-refs\",\n }),\n ]);\n}\n"],"names":["ColumnAxisType","$6sU8d$ColumnAxisType","hyperStyled","$6sU8d$hyperStyled","extractPadding","$6sU8d$extractPadding","useDarkMode","$6sU8d$useDarkMode","Box","$6sU8d$Box","$6sU8d$classnames","useCallback","$6sU8d$useCallback","NonIdealState","$6sU8d$NonIdealState","DataField","$6sU8d$DataField","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$4721fb147cb3f5e1$exports","$4721fb147cb3f5e1$export$816b5d811295e6bc","$4721fb147cb3f5e1$export$2194471aa3d52446","$4721fb147cb3f5e1$export$fcdf79c491a4504f","$7YHvf","$7tWYE","$wtIgl","$5SO8b","$iYfAq","$2KV3o","$7exMg","$4hG2H","$76iYI","$610tc","$4721fb147cb3f5e1$var$h","a","__esModule","default","props","showUnitPopover","keyboardNavigation","mergeSections","onUnitSelected","selectedUnit","children","units","rawUnits","t_age","b_age","t_pos","b_pos","unconformityHeight","targetUnitHeight","pixelScale","minPixelScale","minSectionHeight","collapseSmallUnconformities","allowUnitSelection","hybridScale","scale","axisType","rest","_targetUnitHeight","_minSectionHeight","_minPixelScale","_axisType","AGE","ageAxisComponent","CompositeAgeAxis","type","HybridScaleType","ApproximateHeight","ApproximateHeightAxis","sections","totalHeight","usePreparedColumnUnits","length","title","description","icon","MacrostratColumnDataProvider","$4721fb147cb3f5e1$var$ColumnInner","if","UnitSelectionPopover","UnitKeyboardNavigation","padding","paddingVars","paddingTop","paddingBottom","paddingLeft","paddingRight","unitComponent","UnitComponent","unconformityLabels","showLabels","width","_width","columnWidth","_columnWidth","showLabelColumn","_showLabelColumn","className","clipUnits","showTimescale","timescaleLevels","maxInternalColumns","onMouseOver","useMacrostratColumnData","columnRef","useColumnRef","_timescaleUnconformityLabels","_sectionUnconformityLabels","_showTimescale","$4721fb147cb3f5e1$var$useMouseEventHandlers","_onMouseOver","dispatch","useUnitSelectionDispatch","onClick","evt","useCompositeScale","height","invert","clientY","currentTarget","getBoundingClientRect","top","onMouseOut","undefined","onMouseMove","style","ref","CompositeTimescale","levels","SectionsColumn","darkMode","isEnabled","data","showColumnID","showReferences","col_name","Identifier","col_id","row","label","value","col_group","ReferencesField","refs","inline","Column","ColumnContainer","ColumnBasicInfo"],"version":3,"file":"column-views.74fcfb9c.js.map","sourceRoot":"../../../../"}
1
+ {"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,kB,C,K,+B,A,Q,e,C,K,mB,A,Q,kB,C,C,e,C,C,O,C,K,2B,A,Q,M,Y,A,Q,e,C,K,O,A,Q,iB,C,K,mB,A,Q,a,C,K,6B,C,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,S,I,G,E,E,kB,I,G,E,E,kB,I,G,I,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SCkDA,IAAM,EAAI,AAAA,E,AAAY,G,AAAA,E,U,C,AAAA,E,O,CAAA,GA0Cf,SAAS,EAAO,CAAkB,EACvC,GAAM,CAAA,gBACJ,EAAkB,CAAA,CAAA,CAAA,mBAClB,EAAqB,CAAA,CAAA,CAAA,cACrB,CAAa,CAAA,eACb,CAAc,CAAA,aACd,CAAY,CAAA,SACZ,CAAQ,CACR,MAAO,CAAQ,CAAA,MACf,CAAK,CAAA,MACL,CAAK,CAAA,MACL,CAAK,CAAA,MACL,CAAK,CAAA,mBACL,EAAqB,EAAA,CAAA,iBACrB,EAAmB,EAAA,CAAA,WACnB,CAAU,CAAA,cACV,EAAgB,EAAA,CAAA,iBAChB,EAAmB,EAAA,CAAA,4BACnB,EAA8B,CAAA,CAAA,CAAA,mBAC9B,EAAqB,CAAA,CAAA,CAAA,YACrB,CAAW,CAAA,MACX,CAAK,CAAA,SACL,CAAQ,CACR,GAAG,EACJ,CAAG,EAIA,EAAoB,EACpB,EAAoB,EACpB,EAAiB,CACH,OAAd,IACF,EAAoB,KACpB,EAAoB,EACpB,EAAiB,GAInB,IAAI,EAAY,GAAY,AAAA,EAAe,GAAG,CAC1C,EAAmB,EAAA,gBAAe,CAE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","sources":["<anon>","packages/column-views/src/column.ts"],"sourcesContent":["import \"./column-views.1261be59.js\";\nimport \"./column-views.306acd3f.js\";\nimport \"./column-views.d737de1e.js\";\nimport \"./column-views.7b6e7d82.js\";\nimport \"./column-views.048fdcaf.js\";\nimport \"./column-views.4a28d695.js\";\nimport \"./column-views.31153f29.js\";\nimport \"./column-views.ad60c02f.js\";\nimport \"./column-views.7f9c7448.js\";\nimport \"./column-views.d22bf15c.js\";\nimport {ColumnAxisType as $6sU8d$ColumnAxisType} from \"@macrostrat/column-components\";\nimport {hyperStyled as $6sU8d$hyperStyled} from \"@macrostrat/hyper\";\nimport {extractPadding as $6sU8d$extractPadding, useDarkMode as $6sU8d$useDarkMode, Box as $6sU8d$Box} from \"@macrostrat/ui-components\";\nimport $6sU8d$classnames from \"classnames\";\nimport {useCallback as $6sU8d$useCallback} from \"react\";\nimport {NonIdealState as $6sU8d$NonIdealState} from \"@blueprintjs/core\";\nimport {DataField as $6sU8d$DataField} from \"@macrostrat/data-components\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $4721fb147cb3f5e1$exports = {};\n\n$parcel$export($4721fb147cb3f5e1$exports, \"Column\", () => $4721fb147cb3f5e1$export$816b5d811295e6bc);\n$parcel$export($4721fb147cb3f5e1$exports, \"ColumnContainer\", () => $4721fb147cb3f5e1$export$2194471aa3d52446);\n$parcel$export($4721fb147cb3f5e1$exports, \"ColumnBasicInfo\", () => $4721fb147cb3f5e1$export$fcdf79c491a4504f);\n\n\n\n\n\n\nvar $7YHvf = parcelRequire(\"7YHvf\");\n\nvar $7tWYE = parcelRequire(\"7tWYE\");\n\nvar $wtIgl = parcelRequire(\"wtIgl\");\nvar $5SO8b = parcelRequire(\"5SO8b\");\n\nvar $iYfAq = parcelRequire(\"iYfAq\");\nvar $2KV3o = parcelRequire(\"2KV3o\");\n\nvar $7exMg = parcelRequire(\"7exMg\");\n\nvar $4hG2H = parcelRequire(\"4hG2H\");\n\nvar $76iYI = parcelRequire(\"76iYI\");\nvar $610tc = parcelRequire(\"610tc\");\n\n\nconst $4721fb147cb3f5e1$var$h = (0, $6sU8d$hyperStyled)((0, (/*@__PURE__*/$parcel$interopDefault($7YHvf))));\nfunction $4721fb147cb3f5e1$export$816b5d811295e6bc(props) {\n const { showUnitPopover: showUnitPopover = false, keyboardNavigation: keyboardNavigation = false, mergeSections: mergeSections, onUnitSelected: onUnitSelected, selectedUnit: selectedUnit, children: children, units: rawUnits, t_age: t_age, b_age: b_age, t_pos: t_pos, b_pos: b_pos, unconformityHeight: unconformityHeight = 30, targetUnitHeight: targetUnitHeight = 20, pixelScale: pixelScale, minPixelScale: minPixelScale = 0.2, minSectionHeight: minSectionHeight = 50, collapseSmallUnconformities: collapseSmallUnconformities = true, allowUnitSelection: allowUnitSelection = false, hybridScale: hybridScale, scale: scale, axisType: axisType, ...rest } = props;\n /* Make pixelScale and targetUnitHeight mutually exclusive. PixelScale implies\n * standardization of scales in all sections */ let _targetUnitHeight = targetUnitHeight;\n let _minSectionHeight = minSectionHeight;\n let _minPixelScale = minPixelScale;\n if (pixelScale != null) {\n _targetUnitHeight = null;\n _minSectionHeight = 0;\n _minPixelScale = pixelScale;\n }\n // Handle special cases for hybrid scales (WIP, we need to regularize this)\n let _axisType = axisType ?? (0, $6sU8d$ColumnAxisType).AGE;\n let ageAxisComponent = (0, $4hG2H.CompositeAgeAxis);\n if (hybridScale?.type === (0, $76iYI.HybridScaleType).ApproximateHeight && _axisType != (0, $6sU8d$ColumnAxisType).AGE) {\n // Use approximate height axis for non-age columns if a non-age axis type is requested\n ageAxisComponent = (0, $4hG2H.ApproximateHeightAxis);\n _axisType = (0, $6sU8d$ColumnAxisType).AGE;\n }\n const { sections: sections, units: units, totalHeight: totalHeight } = (0, $610tc.usePreparedColumnUnits)(rawUnits, {\n axisType: _axisType,\n t_age: t_age,\n b_age: b_age,\n t_pos: t_pos,\n b_pos: b_pos,\n mergeSections: mergeSections,\n targetUnitHeight: _targetUnitHeight,\n unconformityHeight: unconformityHeight,\n pixelScale: pixelScale,\n minPixelScale: _minPixelScale,\n minSectionHeight: _minSectionHeight,\n collapseSmallUnconformities: collapseSmallUnconformities,\n scale: // TODO: consider unifying scale and hybridScale options\n scale,\n hybridScale: hybridScale\n });\n if (sections.length === 0) return $4721fb147cb3f5e1$var$h(\"div.column-container.empty\", $4721fb147cb3f5e1$var$h((0, $6sU8d$NonIdealState), {\n title: \"Empty column\",\n description: \"No sections found in this column.\",\n icon: \"warning-sign\"\n }));\n return $4721fb147cb3f5e1$var$h((0, $wtIgl.MacrostratColumnDataProvider), {\n units: units,\n sections: sections,\n totalHeight: totalHeight,\n axisType: _axisType,\n allowUnitSelection: showUnitPopover || allowUnitSelection,\n onUnitSelected: onUnitSelected,\n selectedUnit: selectedUnit\n }, $4721fb147cb3f5e1$var$h($4721fb147cb3f5e1$var$ColumnInner, {\n ageAxisComponent: ageAxisComponent,\n ...rest\n }, [\n children,\n $4721fb147cb3f5e1$var$h.if(showUnitPopover)((0, $2KV3o.UnitSelectionPopover)),\n $4721fb147cb3f5e1$var$h.if(keyboardNavigation)((0, $5SO8b.UnitKeyboardNavigation), {\n units: units\n })\n ]));\n}\nfunction $4721fb147cb3f5e1$var$ColumnInner(props) {\n const padding = (0, $6sU8d$extractPadding)(props);\n // TODO: integrate padding vars more closely with the rest of the spacing (right now padding is a bit ad-hoc)\n const paddingVars = {\n \"--column-padding-top\": `${padding.paddingTop}px`,\n \"--column-padding-bottom\": `${padding.paddingBottom}px`,\n \"--column-padding-left\": `${padding.paddingLeft}px`,\n \"--column-padding-right\": `${padding.paddingRight}px`\n };\n const { unitComponent: unitComponent = (0, $7tWYE.UnitComponent), unconformityLabels: unconformityLabels = \"minimal\", showLabels: showLabels = true, width: _width = 300, columnWidth: _columnWidth = 150, showLabelColumn: _showLabelColumn = true, className: className, clipUnits: clipUnits = false, children: children, showTimescale: showTimescale, timescaleLevels: timescaleLevels, maxInternalColumns: maxInternalColumns, onMouseOver: onMouseOver, ageAxisComponent: ageAxisComponent = (0, $4hG2H.CompositeAgeAxis) } = props;\n const { axisType: axisType } = (0, $wtIgl.useMacrostratColumnData)();\n const columnRef = (0, $5SO8b.useColumnRef)();\n // Coalesce unconformity label setting to a boolean\n let _timescaleUnconformityLabels = false;\n let _sectionUnconformityLabels = false;\n if (unconformityLabels === true || unconformityLabels === \"prominent\") _sectionUnconformityLabels = true;\n else if (unconformityLabels === \"minimal\") _timescaleUnconformityLabels = true;\n let width = _width;\n let columnWidth = _columnWidth;\n if (columnWidth > width) columnWidth = width;\n let showLabelColumn = _showLabelColumn;\n if (columnWidth > width - 10) showLabelColumn = false;\n let _showTimescale = showTimescale ?? true;\n if (timescaleLevels != null) _showTimescale = true;\n _showTimescale = axisType == (0, $6sU8d$ColumnAxisType).AGE && _showTimescale;\n return $4721fb147cb3f5e1$var$h($4721fb147cb3f5e1$export$2194471aa3d52446, {\n ...$4721fb147cb3f5e1$var$useMouseEventHandlers(onMouseOver),\n style: paddingVars,\n className: className\n }, $4721fb147cb3f5e1$var$h(\"div.column\", {\n ref: columnRef\n }, [\n $4721fb147cb3f5e1$var$h(ageAxisComponent),\n $4721fb147cb3f5e1$var$h.if(_showTimescale)((0, $7exMg.CompositeTimescale), {\n levels: timescaleLevels,\n unconformityLabels: _timescaleUnconformityLabels\n }),\n $4721fb147cb3f5e1$var$h((0, $7exMg.SectionsColumn), {\n unitComponent: unitComponent,\n showLabels: showLabels,\n width: width,\n columnWidth: columnWidth,\n showLabelColumn: showLabelColumn,\n clipUnits: clipUnits,\n unconformityLabels: _sectionUnconformityLabels,\n maxInternalColumns: maxInternalColumns\n }),\n children\n ]));\n}\nfunction $4721fb147cb3f5e1$var$useMouseEventHandlers(_onMouseOver = null) {\n /** Click event handler */ // Click handler for unit selection\n const dispatch = (0, $5SO8b.useUnitSelectionDispatch)();\n const onClick = (0, $6sU8d$useCallback)((evt)=>{\n dispatch?.(null, null);\n }, [\n dispatch\n ]);\n /** Hover event handlers */ const scale = (0, $wtIgl.useCompositeScale)();\n const onMouseOver = (0, $6sU8d$useCallback)((evt)=>{\n const height = scale.invert(evt.clientY - evt.currentTarget.getBoundingClientRect().top);\n _onMouseOver?.(null, height, evt);\n }, [\n scale,\n _onMouseOver\n ]);\n const onMouseOut = (0, $6sU8d$useCallback)(()=>{\n _onMouseOver?.(null, null, null);\n }, [\n _onMouseOver\n ]);\n if (_onMouseOver == null) return {\n onClick: onClick,\n onMouseOver: undefined,\n onMouseMove: undefined,\n onMouseOut: undefined\n };\n return {\n onMouseOver: onMouseOver,\n onMouseMove: onMouseOver,\n onMouseOut: onMouseOut,\n onClick: onClick\n };\n}\nfunction $4721fb147cb3f5e1$export$2194471aa3d52446(props) {\n const { className: className, ...rest } = props;\n const darkMode = (0, $6sU8d$useDarkMode)();\n return $4721fb147cb3f5e1$var$h((0, $6sU8d$Box), {\n className: (0, $6sU8d$classnames)(className, {\n \"dark-mode\": darkMode?.isEnabled ?? false\n }, \"column-container\"),\n ...rest\n });\n}\nfunction $4721fb147cb3f5e1$export$fcdf79c491a4504f({ data: data, showColumnID: showColumnID = true, showReferences: showReferences = true }) {\n if (data == null) return null;\n return $4721fb147cb3f5e1$var$h(\"div.column-info\", [\n $4721fb147cb3f5e1$var$h(\"div.column-title-row\", [\n $4721fb147cb3f5e1$var$h(\"h2\", data.col_name),\n $4721fb147cb3f5e1$var$h.if(showColumnID)(\"h4\", $4721fb147cb3f5e1$var$h((0, $iYfAq.Identifier), {\n id: data.col_id\n }))\n ]),\n $4721fb147cb3f5e1$var$h((0, $6sU8d$DataField), {\n row: true,\n label: \"Group\",\n value: data.col_group\n }),\n $4721fb147cb3f5e1$var$h.if(showReferences)((0, $iYfAq.ReferencesField), {\n refs: data.refs,\n inline: false,\n row: false,\n className: \"column-refs\"\n })\n ]);\n}\n\n\nexport {$4721fb147cb3f5e1$export$816b5d811295e6bc as Column, $4721fb147cb3f5e1$export$2194471aa3d52446 as ColumnContainer, $4721fb147cb3f5e1$export$fcdf79c491a4504f as ColumnBasicInfo};\n//# sourceMappingURL=column-views.c3097d9a.js.map\n","import { ColumnAxisType } from \"@macrostrat/column-components\";\nimport { hyperStyled } from \"@macrostrat/hyper\";\nimport {\n Box,\n extractPadding,\n Padding,\n useDarkMode,\n} from \"@macrostrat/ui-components\";\nimport classNames from \"classnames\";\nimport {\n HTMLAttributes,\n useCallback,\n CSSProperties,\n ComponentType,\n} from \"react\";\nimport styles from \"./column.module.sass\";\nimport { UnitComponent } from \"./units\";\nimport {\n UnitKeyboardNavigation,\n useColumnRef,\n useUnitSelectionDispatch,\n} from \"./data-provider\";\n\nimport {\n Identifier,\n ReferencesField,\n UnitSelectionPopover,\n} from \"./unit-details\";\nimport {\n MacrostratColumnDataProvider,\n useCompositeScale,\n useMacrostratColumnData,\n} from \"./data-provider\";\nimport {\n SectionSharedProps,\n CompositeTimescale,\n SectionsColumn,\n} from \"./section\";\nimport { ApproximateHeightAxis, CompositeAgeAxis } from \"./age-axis\";\nimport {\n MergeSectionsMode,\n usePreparedColumnUnits,\n HybridScaleType,\n ColumnHeightScaleOptions,\n} from \"./prepare-units\";\nimport { UnitLong } from \"@macrostrat/api-types\";\nimport { NonIdealState } from \"@blueprintjs/core\";\nimport { DataField } from \"@macrostrat/data-components\";\nimport { ScaleContinuousNumeric } from \"d3-scale\";\n\nconst h = hyperStyled(styles);\n\ninterface BaseColumnProps extends Omit<\n SectionSharedProps,\n \"unconformityLabels\"\n> {\n className?: string;\n showLabelColumn?: boolean;\n keyboardNavigation?: boolean;\n showLabels?: boolean;\n maxInternalColumns?: number;\n // Timescale properties\n showTimescale?: boolean;\n timescaleLevels?: number | [number, number];\n unconformityLabels?: boolean | UnconformityLabelPlacement;\n onMouseOver?: (\n unit: UnitLong | null,\n height: number | null,\n evt: MouseEvent,\n ) => void;\n}\n\nexport type UnconformityLabelPlacement = \"minimal\" | \"prominent\" | \"none\";\n\nexport interface ColumnProps\n extends Padding, BaseColumnProps, ColumnHeightScaleOptions {\n // Macrostrat units\n units: UnitLong[];\n t_age?: number;\n b_age?: number;\n t_pos?: number;\n b_pos?: number;\n mergeSections?: MergeSectionsMode;\n showUnitPopover?: boolean;\n allowUnitSelection?: boolean;\n selectedUnit?: number | null;\n onUnitSelected?: (unitID: number | null, unit: any) => void;\n // Unconformity height in pixels\n unconformityHeight?: number;\n scale?: ScaleContinuousNumeric<number, number>;\n}\n\nexport function Column(props: ColumnProps) {\n const {\n showUnitPopover = false,\n keyboardNavigation = false,\n mergeSections,\n onUnitSelected,\n selectedUnit,\n children,\n units: rawUnits,\n t_age,\n b_age,\n t_pos,\n b_pos,\n unconformityHeight = 30,\n targetUnitHeight = 20,\n pixelScale,\n minPixelScale = 0.2,\n minSectionHeight = 50,\n collapseSmallUnconformities = true,\n allowUnitSelection = false,\n hybridScale,\n scale,\n axisType,\n ...rest\n } = props;\n\n /* Make pixelScale and targetUnitHeight mutually exclusive. PixelScale implies\n * standardization of scales in all sections */\n let _targetUnitHeight = targetUnitHeight;\n let _minSectionHeight = minSectionHeight;\n let _minPixelScale = minPixelScale;\n if (pixelScale != null) {\n _targetUnitHeight = null;\n _minSectionHeight = 0;\n _minPixelScale = pixelScale;\n }\n\n // Handle special cases for hybrid scales (WIP, we need to regularize this)\n let _axisType = axisType ?? ColumnAxisType.AGE;\n let ageAxisComponent = CompositeAgeAxis;\n if (\n hybridScale?.type === HybridScaleType.ApproximateHeight &&\n _axisType != ColumnAxisType.AGE\n ) {\n // Use approximate height axis for non-age columns if a non-age axis type is requested\n ageAxisComponent = ApproximateHeightAxis;\n _axisType = ColumnAxisType.AGE;\n }\n\n const { sections, units, totalHeight } = usePreparedColumnUnits(rawUnits, {\n axisType: _axisType,\n t_age,\n b_age,\n t_pos,\n b_pos,\n mergeSections,\n targetUnitHeight: _targetUnitHeight,\n unconformityHeight,\n pixelScale,\n minPixelScale: _minPixelScale,\n minSectionHeight: _minSectionHeight,\n collapseSmallUnconformities,\n // TODO: consider unifying scale and hybridScale options\n scale,\n hybridScale,\n });\n\n if (sections.length === 0) {\n return h(\n \"div.column-container.empty\",\n h(NonIdealState, {\n title: \"Empty column\",\n description: \"No sections found in this column.\",\n icon: \"warning-sign\",\n }),\n );\n }\n\n return h(\n MacrostratColumnDataProvider,\n {\n units,\n sections,\n totalHeight,\n axisType: _axisType,\n allowUnitSelection: showUnitPopover || allowUnitSelection,\n onUnitSelected,\n selectedUnit,\n },\n h(ColumnInner, { ageAxisComponent, ...rest }, [\n children,\n h.if(showUnitPopover)(UnitSelectionPopover),\n h.if(keyboardNavigation)(UnitKeyboardNavigation, { units }),\n ]),\n );\n}\n\ninterface ColumnInnerProps extends BaseColumnProps {\n ageAxisComponent?: ComponentType;\n}\n\nfunction ColumnInner(props: ColumnInnerProps) {\n const padding = extractPadding(props);\n\n // TODO: integrate padding vars more closely with the rest of the spacing (right now padding is a bit ad-hoc)\n const paddingVars: any = {\n \"--column-padding-top\": `${padding.paddingTop}px`,\n \"--column-padding-bottom\": `${padding.paddingBottom}px`,\n \"--column-padding-left\": `${padding.paddingLeft}px`,\n \"--column-padding-right\": `${padding.paddingRight}px`,\n };\n\n const {\n unitComponent = UnitComponent,\n unconformityLabels = \"minimal\",\n showLabels = true,\n width: _width = 300,\n columnWidth: _columnWidth = 150,\n showLabelColumn: _showLabelColumn = true,\n className,\n clipUnits = false,\n children,\n showTimescale,\n timescaleLevels,\n maxInternalColumns,\n onMouseOver,\n ageAxisComponent = CompositeAgeAxis,\n } = props;\n\n const { axisType } = useMacrostratColumnData();\n\n const columnRef = useColumnRef();\n\n // Coalesce unconformity label setting to a boolean\n let _timescaleUnconformityLabels = false;\n let _sectionUnconformityLabels = false;\n if (unconformityLabels === true || unconformityLabels === \"prominent\") {\n _sectionUnconformityLabels = true;\n } else if (unconformityLabels === \"minimal\") {\n _timescaleUnconformityLabels = true;\n }\n\n let width = _width;\n let columnWidth = _columnWidth;\n if (columnWidth > width) {\n columnWidth = width;\n }\n let showLabelColumn = _showLabelColumn;\n if (columnWidth > width - 10) {\n showLabelColumn = false;\n }\n\n let _showTimescale = showTimescale ?? true;\n if (timescaleLevels != null) {\n _showTimescale = true;\n }\n _showTimescale = axisType == ColumnAxisType.AGE && _showTimescale;\n\n return h(\n ColumnContainer,\n {\n ...useMouseEventHandlers(onMouseOver),\n style: paddingVars,\n className,\n },\n h(\"div.column\", { ref: columnRef }, [\n h(ageAxisComponent),\n h.if(_showTimescale)(CompositeTimescale, {\n levels: timescaleLevels,\n unconformityLabels: _timescaleUnconformityLabels,\n }),\n h(SectionsColumn, {\n unitComponent,\n showLabels,\n width,\n columnWidth,\n showLabelColumn,\n clipUnits,\n unconformityLabels: _sectionUnconformityLabels,\n maxInternalColumns,\n }),\n children,\n ]),\n );\n}\n\ntype ColumnMouseOverHandler = (\n unit: UnitLong | null,\n height: number | null,\n evt: MouseEvent,\n) => void;\n\nfunction useMouseEventHandlers(\n _onMouseOver: ColumnMouseOverHandler | null = null,\n) {\n /** Click event handler */\n\n // Click handler for unit selection\n const dispatch = useUnitSelectionDispatch();\n const onClick = useCallback(\n (evt) => {\n dispatch?.(null, null);\n },\n [dispatch],\n );\n\n /** Hover event handlers */\n const scale = useCompositeScale();\n\n const onMouseOver = useCallback(\n (evt) => {\n const height = scale.invert(\n evt.clientY - evt.currentTarget.getBoundingClientRect().top,\n );\n _onMouseOver?.(null, height, evt);\n },\n [scale, _onMouseOver],\n );\n\n const onMouseOut = useCallback(() => {\n _onMouseOver?.(null, null, null);\n }, [_onMouseOver]);\n\n if (_onMouseOver == null) {\n return {\n onClick,\n onMouseOver: undefined,\n onMouseMove: undefined,\n onMouseOut: undefined,\n };\n }\n\n return { onMouseOver, onMouseMove: onMouseOver, onMouseOut, onClick };\n}\n\nexport interface ColumnContainerProps extends HTMLAttributes<HTMLDivElement> {\n className?: string;\n style?: CSSProperties;\n}\n\nexport function ColumnContainer(props: ColumnContainerProps) {\n const { className, ...rest } = props;\n const darkMode = useDarkMode();\n\n return h(Box, {\n className: classNames(\n className,\n {\n \"dark-mode\": darkMode?.isEnabled ?? false,\n },\n \"column-container\",\n ),\n ...rest,\n });\n}\n\nexport function ColumnBasicInfo({\n data,\n showColumnID = true,\n showReferences = true,\n}) {\n if (data == null) return null;\n return h(\"div.column-info\", [\n h(\"div.column-title-row\", [\n h(\"h2\", data.col_name),\n h.if(showColumnID)(\"h4\", h(Identifier, { id: data.col_id })),\n ]),\n h(DataField, { row: true, label: \"Group\", value: data.col_group }),\n h.if(showReferences)(ReferencesField, {\n refs: data.refs,\n inline: false,\n row: false,\n className: \"column-refs\",\n }),\n ]);\n}\n"],"names":["ColumnAxisType","$6sU8d$ColumnAxisType","hyperStyled","$6sU8d$hyperStyled","extractPadding","$6sU8d$extractPadding","useDarkMode","$6sU8d$useDarkMode","Box","$6sU8d$Box","$6sU8d$classnames","useCallback","$6sU8d$useCallback","NonIdealState","$6sU8d$NonIdealState","DataField","$6sU8d$DataField","$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$4721fb147cb3f5e1$exports","$4721fb147cb3f5e1$export$816b5d811295e6bc","$4721fb147cb3f5e1$export$2194471aa3d52446","$4721fb147cb3f5e1$export$fcdf79c491a4504f","$7YHvf","$7tWYE","$wtIgl","$5SO8b","$iYfAq","$2KV3o","$7exMg","$4hG2H","$76iYI","$610tc","$4721fb147cb3f5e1$var$h","a","__esModule","default","props","showUnitPopover","keyboardNavigation","mergeSections","onUnitSelected","selectedUnit","children","units","rawUnits","t_age","b_age","t_pos","b_pos","unconformityHeight","targetUnitHeight","pixelScale","minPixelScale","minSectionHeight","collapseSmallUnconformities","allowUnitSelection","hybridScale","scale","axisType","rest","_targetUnitHeight","_minSectionHeight","_minPixelScale","_axisType","AGE","ageAxisComponent","CompositeAgeAxis","type","HybridScaleType","ApproximateHeight","ApproximateHeightAxis","sections","totalHeight","usePreparedColumnUnits","length","title","description","icon","MacrostratColumnDataProvider","$4721fb147cb3f5e1$var$ColumnInner","if","UnitSelectionPopover","UnitKeyboardNavigation","padding","paddingVars","paddingTop","paddingBottom","paddingLeft","paddingRight","unitComponent","UnitComponent","unconformityLabels","showLabels","width","_width","columnWidth","_columnWidth","showLabelColumn","_showLabelColumn","className","clipUnits","showTimescale","timescaleLevels","maxInternalColumns","onMouseOver","useMacrostratColumnData","columnRef","useColumnRef","_timescaleUnconformityLabels","_sectionUnconformityLabels","_showTimescale","$4721fb147cb3f5e1$var$useMouseEventHandlers","_onMouseOver","dispatch","useUnitSelectionDispatch","onClick","evt","useCompositeScale","height","invert","clientY","currentTarget","getBoundingClientRect","top","onMouseOut","undefined","onMouseMove","style","ref","CompositeTimescale","levels","SectionsColumn","darkMode","isEnabled","data","showColumnID","showReferences","col_name","Identifier","col_id","row","label","value","col_group","ReferencesField","refs","inline","Column","ColumnContainer","ColumnBasicInfo"],"version":3,"file":"column-views.c3097d9a.js.map","sourceRoot":"../../../../"}
@@ -1,2 +1,2 @@
1
- import"./column-views.080781ca.js";import{create as e,useStore as o}from"zustand";import{createContext as t,useState as r,useMemo as l,useEffect as n,useContext as s}from"react";import u from"@macrostrat/hyper";var a=globalThis,i={},c={},m=a.parcelRequirea149;null==m&&((m=function(e){if(e in i)return i[e].exports;if(e in c){var o=c[e];delete c[e];var t={id:e,exports:{}};return i[e]=t,o.call(t.exports,t,t.exports),t.exports}var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r}).register=function(e,o){c[e]=o},a.parcelRequirea149=m),m.register;var d=m("lgTAP");let C=t(null);function f({children:o,columns:t,columnIDs:s,selectedColumn:a,projectID:i,inProcess:c,onSelectColumn:m,onHoverColumn:f}){(0,d.useMacrostratStore)(e=>e.getColumns);let[p]=r(()=>e((e,o)=>({columns:null,selectedColumn:null,hoveredColumn:null,selectColumn(t){e({selectedColumn:t,hoveredColumn:null});let{columns:r}=o(),l=r?.find(e=>e.id==t);m?.(t,l)},setHoveredColumn(t){e({hoveredColumn:t});let{columns:r}=o(),l=r?.find(e=>e.id==t);f?.(t,l)}}))),v=t??(0,d.useMacrostratColumns)(i,c);return s?.length>0&&(v=l(()=>v?.filter(e=>s.includes(e.properties.col_id)),[s,v])),n(()=>{v?.length>0&&p.setState({columns:v,selectedColumn:a})},[v]),n(()=>{let{selectColumn:e,selectedColumn:o}=p.getState();a!=o&&e(a)},[a]),u(C.Provider,{value:p},o)}function p(e){let t=s(C);if(null==t)throw Error("Missing ColumnNavigationProvider");return o(t,e)}export{f as ColumnNavigationProvider,p as useColumnNavigationStore};
2
- //# sourceMappingURL=column-views.fa5ee6de.js.map
1
+ import"./column-views.2e2158f5.js";import{create as e,useStore as o}from"zustand";import{createContext as t,useState as r,useMemo as l,useEffect as n,useContext as s}from"react";import u from"@macrostrat/hyper";var a=globalThis,i={},c={},m=a.parcelRequirea149;null==m&&((m=function(e){if(e in i)return i[e].exports;if(e in c){var o=c[e];delete c[e];var t={id:e,exports:{}};return i[e]=t,o.call(t.exports,t,t.exports),t.exports}var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r}).register=function(e,o){c[e]=o},a.parcelRequirea149=m),m.register;var d=m("lgTAP");let C=t(null);function f({children:o,columns:t,columnIDs:s,selectedColumn:a,projectID:i,inProcess:c,onSelectColumn:m,onHoverColumn:f}){(0,d.useMacrostratStore)(e=>e.getColumns);let[p]=r(()=>e((e,o)=>({columns:null,selectedColumn:null,hoveredColumn:null,selectColumn(t){e({selectedColumn:t,hoveredColumn:null});let{columns:r}=o(),l=r?.find(e=>e.id==t);m?.(t,l)},setHoveredColumn(t){e({hoveredColumn:t});let{columns:r}=o(),l=r?.find(e=>e.id==t);f?.(t,l)}}))),v=t??(0,d.useMacrostratColumns)(i,c);return s?.length>0&&(v=l(()=>v?.filter(e=>s.includes(e.properties.col_id)),[s,v])),n(()=>{v?.length>0&&p.setState({columns:v,selectedColumn:a})},[v]),n(()=>{let{selectColumn:e,selectedColumn:o}=p.getState();a!=o&&e(a)},[a]),u(C.Provider,{value:p},o)}function p(e){let t=s(C);if(null==t)throw Error("Missing ColumnNavigationProvider");return o(t,e)}export{f as ColumnNavigationProvider,p as useColumnNavigationStore};
2
+ //# sourceMappingURL=column-views.c4c15e2b.js.map
@@ -1 +1 @@
1
- {"mappings":"A,M,6C,A,Q,U,C,C,Y,C,K,S,A,Q,iB,C,C,Y,C,C,W,C,C,a,C,C,c,C,K,O,A,Q,M,mB,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,E,SCoCA,IAAM,EAAyB,AAAA,EAC7B,MAGK,SAAS,EAAyB,CAAA,SACvC,CAAQ,CAAA,QACR,CAAO,CAAA,UACP,CAAS,CAAA,eACT,CAAc,CAAA,UACd,CAAS,CAAA,UACT,CAAS,CAAA,eACT,CAAc,CAAA,cACd,CAAa,CACW,EACL,AAAA,CAAA,EAAA,EAAA,kBAAiB,AAAjB,EAAmB,AAAC,GAAM,EAAE,UAAU,EAEzD,GAAM,CAAC,EAAM,CAAG,AAAA,EAAS,IAChB,AAAA,EAAwB,CAAC,EAAK,IAC5B,CAAA,CACL,QAAS,KACT,eAAgB,KAChB,cAAe,KACf,aAAa,CAAuB,EAClC,EAAI,CAAE,eAAgB,EAAU,cAAe,IAAK,GACpD,GAAM,CAAA,QAAE,CAAO,CAAE,CAAG,IACd,EAAS,GAAS,KAAK,AAAC,GAAM,EAAE,EAAE,EAAI,GAC5C,IAAiB,EAAU,EAC7B,EACA,iBAAiB,CAAuB,EACtC,EAAI,CAAE,cAAe,CAAS,GAC9B,GAAM,CAAA,QAAE,CAAO,CAAE,CAAG,IACd,EAAS,GAAS,KAAK,AAAC,GAAM,EAAE,EAAE,EAAI,GAC5C,IAAgB,EAAU,EAC5B,CACF,CAAA,IAWA,EAAW,GAAW,AAAA,CAAA,EAAA,EAAA,oBAAmB,AAAnB,EAAqB,EAAW,GA0B1D,OAvBI,GAAW,OAAS,GACtB,CAAA,EAAW,AAAA,EAAQ,IACV,GAAU,OAAO,AAAC,GAAM,EAAU,QAAQ,CAAC,EAAE,UAAU,CAAC,MAAM,GACpE,CAAC,EAAW,EAAS,CAAA,EAG1B,AAAA,EAAU,KACJ,GAAU,OAAS,GACrB,EAAM,QAAQ,CAAC,CAAE,QAAS,EAAU,eAAA,CAAe,EAEvD,EAAG,CAAC,EAAS,EAIb,AAAA,EAAU,KACR,GAAM,CAAA,aAAE,CAAY,CAAE,eAAgB,CAAuB,CAAE,CAC7D,EAAM,QAAQ,GACZ,GAAkB,GAGtB,EAAa,EACf,EAAG,CAAC,EAAe,EAEZ,AAAA,EAAE,EAAuB,QAAQ,CAAE,CAAE,MAAO,CAAM,EAAG,EAC9D,CAEO,SAAS,EACd,CAAyC,EAEzC,IAAM,EAAW,AAAA,EAAW,GAC5B,GAAI,AAAY,MAAZ,EACF,MAAM,AAAI,MAAM,oCAElB,OAAO,AAAA,EAAS,EAAU,EAC5B,Q,K,wB,C,K,wB","sources":["<anon>","packages/column-views/src/maps/column-navigation/mapbox/state.ts"],"sourcesContent":["import \"./column-views.080781ca.js\";\nimport {create as $hD7WQ$create, useStore as $hD7WQ$useStore} from \"zustand\";\nimport {createContext as $hD7WQ$createContext, useState as $hD7WQ$useState, useMemo as $hD7WQ$useMemo, useEffect as $hD7WQ$useEffect, useContext as $hD7WQ$useContext} from \"react\";\nimport $hD7WQ$macrostrathyper from \"@macrostrat/hyper\";\n\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\n\n\n\n\nvar $lgTAP = parcelRequire(\"lgTAP\");\nconst $811f42ce180ac2d8$var$NavigationStoreContext = (0, $hD7WQ$createContext)(null);\nfunction $811f42ce180ac2d8$export$8da3b11f62ebf019({ children: children, columns: columns, columnIDs: columnIDs, selectedColumn: selectedColumn, projectID: projectID, inProcess: inProcess, onSelectColumn: onSelectColumn, onHoverColumn: onHoverColumn }) {\n const getColumns = (0, $lgTAP.useMacrostratStore)((s)=>s.getColumns);\n const [store] = (0, $hD7WQ$useState)(()=>{\n return (0, $hD7WQ$create)((set, get)=>{\n return {\n columns: null,\n selectedColumn: null,\n hoveredColumn: null,\n selectColumn (columnID) {\n set({\n selectedColumn: columnID,\n hoveredColumn: null\n });\n const { columns: columns } = get();\n const column = columns?.find((d)=>d.id == columnID);\n onSelectColumn?.(columnID, column);\n },\n setHoveredColumn (columnID) {\n set({\n hoveredColumn: columnID\n });\n const { columns: columns } = get();\n const column = columns?.find((d)=>d.id == columnID);\n onHoverColumn?.(columnID, column);\n }\n };\n });\n });\n // Set up the store\n /** TODO: unify handling of columns between parts of application */ // useAsyncEffect(async () => {\n // let _columns = columns ?? (await getColumns(projectID, inProcess));\n // store.setState({ columns: _columns, selectedColumn });\n // }, [projectID, inProcess, columns, getColumns]);\n let _columns = columns ?? (0, $lgTAP.useMacrostratColumns)(projectID, inProcess);\n // filter columns if specified\n if (columnIDs?.length > 0) _columns = (0, $hD7WQ$useMemo)(()=>{\n return _columns?.filter((d)=>columnIDs.includes(d.properties.col_id));\n }, [\n columnIDs,\n _columns\n ]);\n (0, $hD7WQ$useEffect)(()=>{\n if (_columns?.length > 0) store.setState({\n columns: _columns,\n selectedColumn: selectedColumn\n });\n }, [\n _columns\n ]);\n // Update selected column if it is changed externally\n // Kind of an awkward way to do this but we need to allow the selector to run\n (0, $hD7WQ$useEffect)(()=>{\n const { selectColumn: selectColumn, selectedColumn: _internalSelectedColumn } = store.getState();\n if (selectedColumn == _internalSelectedColumn) return;\n selectColumn(selectedColumn);\n }, [\n selectedColumn\n ]);\n return (0, $hD7WQ$macrostrathyper)($811f42ce180ac2d8$var$NavigationStoreContext.Provider, {\n value: store\n }, children);\n}\nfunction $811f42ce180ac2d8$export$642c2b57c47ea41(selector) {\n const storeApi = (0, $hD7WQ$useContext)($811f42ce180ac2d8$var$NavigationStoreContext);\n if (storeApi == null) throw new Error(\"Missing ColumnNavigationProvider\");\n return (0, $hD7WQ$useStore)(storeApi, selector);\n}\n\n\nexport {$811f42ce180ac2d8$export$8da3b11f62ebf019 as ColumnNavigationProvider, $811f42ce180ac2d8$export$642c2b57c47ea41 as useColumnNavigationStore};\n//# sourceMappingURL=column-views.fa5ee6de.js.map\n","import { create, StoreApi, useStore } from \"zustand\";\nimport type { ColumnGeoJSONRecordWithID } from \"@macrostrat/api-types\";\nimport {\n createContext,\n useState,\n useContext,\n ReactNode,\n useEffect,\n useMemo,\n} from \"react\";\nimport h from \"@macrostrat/hyper\";\nimport {\n useMacrostratColumns,\n useMacrostratStore,\n} from \"../../../data-provider\";\n\nexport interface NavigationStore {\n columns: ColumnGeoJSONRecordWithID[];\n selectedColumn: number | null;\n hoveredColumn: number | null;\n selectColumn: (columnID: number | null) => void;\n setHoveredColumn: (columnID: number | null) => void;\n}\n\nexport interface NavigationProviderProps {\n projectID?: number;\n inProcess?: boolean;\n selectedColumn?: number | null;\n hoveredColumn?: number | null;\n columns?: ColumnGeoJSONRecordWithID[] | null;\n columnIDs?: number[] | null;\n children: ReactNode;\n onSelectColumn?: (col_id: number | null, column: any) => void;\n onHoverColumn?: (col_id: number | null, column: any) => void;\n}\n\nconst NavigationStoreContext = createContext<StoreApi<NavigationStore> | null>(\n null,\n);\n\nexport function ColumnNavigationProvider({\n children,\n columns,\n columnIDs,\n selectedColumn,\n projectID,\n inProcess,\n onSelectColumn,\n onHoverColumn,\n}: NavigationProviderProps) {\n const getColumns = useMacrostratStore((s) => s.getColumns);\n\n const [store] = useState(() => {\n return create<NavigationStore>((set, get): NavigationStore => {\n return {\n columns: null,\n selectedColumn: null,\n hoveredColumn: null,\n selectColumn(columnID: number | null) {\n set({ selectedColumn: columnID, hoveredColumn: null });\n const { columns } = get();\n const column = columns?.find((d) => d.id == columnID);\n onSelectColumn?.(columnID, column);\n },\n setHoveredColumn(columnID: number | null) {\n set({ hoveredColumn: columnID });\n const { columns } = get();\n const column = columns?.find((d) => d.id == columnID);\n onHoverColumn?.(columnID, column);\n },\n };\n });\n });\n\n // Set up the store\n /** TODO: unify handling of columns between parts of application */\n // useAsyncEffect(async () => {\n // let _columns = columns ?? (await getColumns(projectID, inProcess));\n // store.setState({ columns: _columns, selectedColumn });\n // }, [projectID, inProcess, columns, getColumns]);\n\n let _columns = columns ?? useMacrostratColumns(projectID, inProcess);\n\n // filter columns if specified\n if (columnIDs?.length > 0) {\n _columns = useMemo(() => {\n return _columns?.filter((d) => columnIDs.includes(d.properties.col_id));\n }, [columnIDs, _columns]);\n }\n\n useEffect(() => {\n if (_columns?.length > 0) {\n store.setState({ columns: _columns, selectedColumn });\n }\n }, [_columns]);\n // Update selected column if it is changed externally\n\n // Kind of an awkward way to do this but we need to allow the selector to run\n useEffect(() => {\n const { selectColumn, selectedColumn: _internalSelectedColumn } =\n store.getState();\n if (selectedColumn == _internalSelectedColumn) {\n return;\n }\n selectColumn(selectedColumn);\n }, [selectedColumn]);\n\n return h(NavigationStoreContext.Provider, { value: store }, children);\n}\n\nexport function useColumnNavigationStore(\n selector: (state: NavigationStore) => any,\n) {\n const storeApi = useContext(NavigationStoreContext);\n if (storeApi == null) {\n throw new Error(\"Missing ColumnNavigationProvider\");\n }\n return useStore(storeApi, selector);\n}\n"],"names":["create","$hD7WQ$create","useStore","$hD7WQ$useStore","createContext","$hD7WQ$createContext","useState","$hD7WQ$useState","useMemo","$hD7WQ$useMemo","useEffect","$hD7WQ$useEffect","useContext","$hD7WQ$useContext","$hD7WQ$macrostrathyper","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$lgTAP","$811f42ce180ac2d8$var$NavigationStoreContext","$811f42ce180ac2d8$export$8da3b11f62ebf019","children","columns","columnIDs","selectedColumn","projectID","inProcess","onSelectColumn","onHoverColumn","useMacrostratStore","s","getColumns","store","set","get","hoveredColumn","selectColumn","columnID","column","find","d","setHoveredColumn","_columns","useMacrostratColumns","length","filter","includes","properties","col_id","setState","_internalSelectedColumn","getState","Provider","value","$811f42ce180ac2d8$export$642c2b57c47ea41","selector","storeApi","ColumnNavigationProvider","useColumnNavigationStore"],"version":3,"file":"column-views.fa5ee6de.js.map","sourceRoot":"../../../../"}
1
+ {"mappings":"A,M,6C,A,Q,U,C,C,Y,C,K,S,A,Q,iB,C,C,Y,C,C,W,C,C,a,C,C,c,C,K,O,A,Q,M,mB,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,E,SCoCA,IAAM,EAAyB,AAAA,EAC7B,MAGK,SAAS,EAAyB,CAAA,SACvC,CAAQ,CAAA,QACR,CAAO,CAAA,UACP,CAAS,CAAA,eACT,CAAc,CAAA,UACd,CAAS,CAAA,UACT,CAAS,CAAA,eACT,CAAc,CAAA,cACd,CAAa,CACW,EACL,AAAA,CAAA,EAAA,EAAA,kBAAiB,AAAjB,EAAmB,AAAC,GAAM,EAAE,UAAU,EAEzD,GAAM,CAAC,EAAM,CAAG,AAAA,EAAS,IAChB,AAAA,EAAwB,CAAC,EAAK,IAC5B,CAAA,CACL,QAAS,KACT,eAAgB,KAChB,cAAe,KACf,aAAa,CAAuB,EAClC,EAAI,CAAE,eAAgB,EAAU,cAAe,IAAK,GACpD,GAAM,CAAA,QAAE,CAAO,CAAE,CAAG,IACd,EAAS,GAAS,KAAK,AAAC,GAAM,EAAE,EAAE,EAAI,GAC5C,IAAiB,EAAU,EAC7B,EACA,iBAAiB,CAAuB,EACtC,EAAI,CAAE,cAAe,CAAS,GAC9B,GAAM,CAAA,QAAE,CAAO,CAAE,CAAG,IACd,EAAS,GAAS,KAAK,AAAC,GAAM,EAAE,EAAE,EAAI,GAC5C,IAAgB,EAAU,EAC5B,CACF,CAAA,IAWA,EAAW,GAAW,AAAA,CAAA,EAAA,EAAA,oBAAmB,AAAnB,EAAqB,EAAW,GA0B1D,OAvBI,GAAW,OAAS,GACtB,CAAA,EAAW,AAAA,EAAQ,IACV,GAAU,OAAO,AAAC,GAAM,EAAU,QAAQ,CAAC,EAAE,UAAU,CAAC,MAAM,GACpE,CAAC,EAAW,EAAS,CAAA,EAG1B,AAAA,EAAU,KACJ,GAAU,OAAS,GACrB,EAAM,QAAQ,CAAC,CAAE,QAAS,EAAU,eAAA,CAAe,EAEvD,EAAG,CAAC,EAAS,EAIb,AAAA,EAAU,KACR,GAAM,CAAA,aAAE,CAAY,CAAE,eAAgB,CAAuB,CAAE,CAC7D,EAAM,QAAQ,GACZ,GAAkB,GAGtB,EAAa,EACf,EAAG,CAAC,EAAe,EAEZ,AAAA,EAAE,EAAuB,QAAQ,CAAE,CAAE,MAAO,CAAM,EAAG,EAC9D,CAEO,SAAS,EACd,CAAyC,EAEzC,IAAM,EAAW,AAAA,EAAW,GAC5B,GAAI,AAAY,MAAZ,EACF,MAAM,AAAI,MAAM,oCAElB,OAAO,AAAA,EAAS,EAAU,EAC5B,Q,K,wB,C,K,wB","sources":["<anon>","packages/column-views/src/maps/column-navigation/mapbox/state.ts"],"sourcesContent":["import \"./column-views.2e2158f5.js\";\nimport {create as $hD7WQ$create, useStore as $hD7WQ$useStore} from \"zustand\";\nimport {createContext as $hD7WQ$createContext, useState as $hD7WQ$useState, useMemo as $hD7WQ$useMemo, useEffect as $hD7WQ$useEffect, useContext as $hD7WQ$useContext} from \"react\";\nimport $hD7WQ$macrostrathyper from \"@macrostrat/hyper\";\n\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\n\n\n\n\nvar $lgTAP = parcelRequire(\"lgTAP\");\nconst $811f42ce180ac2d8$var$NavigationStoreContext = (0, $hD7WQ$createContext)(null);\nfunction $811f42ce180ac2d8$export$8da3b11f62ebf019({ children: children, columns: columns, columnIDs: columnIDs, selectedColumn: selectedColumn, projectID: projectID, inProcess: inProcess, onSelectColumn: onSelectColumn, onHoverColumn: onHoverColumn }) {\n const getColumns = (0, $lgTAP.useMacrostratStore)((s)=>s.getColumns);\n const [store] = (0, $hD7WQ$useState)(()=>{\n return (0, $hD7WQ$create)((set, get)=>{\n return {\n columns: null,\n selectedColumn: null,\n hoveredColumn: null,\n selectColumn (columnID) {\n set({\n selectedColumn: columnID,\n hoveredColumn: null\n });\n const { columns: columns } = get();\n const column = columns?.find((d)=>d.id == columnID);\n onSelectColumn?.(columnID, column);\n },\n setHoveredColumn (columnID) {\n set({\n hoveredColumn: columnID\n });\n const { columns: columns } = get();\n const column = columns?.find((d)=>d.id == columnID);\n onHoverColumn?.(columnID, column);\n }\n };\n });\n });\n // Set up the store\n /** TODO: unify handling of columns between parts of application */ // useAsyncEffect(async () => {\n // let _columns = columns ?? (await getColumns(projectID, inProcess));\n // store.setState({ columns: _columns, selectedColumn });\n // }, [projectID, inProcess, columns, getColumns]);\n let _columns = columns ?? (0, $lgTAP.useMacrostratColumns)(projectID, inProcess);\n // filter columns if specified\n if (columnIDs?.length > 0) _columns = (0, $hD7WQ$useMemo)(()=>{\n return _columns?.filter((d)=>columnIDs.includes(d.properties.col_id));\n }, [\n columnIDs,\n _columns\n ]);\n (0, $hD7WQ$useEffect)(()=>{\n if (_columns?.length > 0) store.setState({\n columns: _columns,\n selectedColumn: selectedColumn\n });\n }, [\n _columns\n ]);\n // Update selected column if it is changed externally\n // Kind of an awkward way to do this but we need to allow the selector to run\n (0, $hD7WQ$useEffect)(()=>{\n const { selectColumn: selectColumn, selectedColumn: _internalSelectedColumn } = store.getState();\n if (selectedColumn == _internalSelectedColumn) return;\n selectColumn(selectedColumn);\n }, [\n selectedColumn\n ]);\n return (0, $hD7WQ$macrostrathyper)($811f42ce180ac2d8$var$NavigationStoreContext.Provider, {\n value: store\n }, children);\n}\nfunction $811f42ce180ac2d8$export$642c2b57c47ea41(selector) {\n const storeApi = (0, $hD7WQ$useContext)($811f42ce180ac2d8$var$NavigationStoreContext);\n if (storeApi == null) throw new Error(\"Missing ColumnNavigationProvider\");\n return (0, $hD7WQ$useStore)(storeApi, selector);\n}\n\n\nexport {$811f42ce180ac2d8$export$8da3b11f62ebf019 as ColumnNavigationProvider, $811f42ce180ac2d8$export$642c2b57c47ea41 as useColumnNavigationStore};\n//# sourceMappingURL=column-views.c4c15e2b.js.map\n","import { create, StoreApi, useStore } from \"zustand\";\nimport type { ColumnGeoJSONRecordWithID } from \"@macrostrat/api-types\";\nimport {\n createContext,\n useState,\n useContext,\n ReactNode,\n useEffect,\n useMemo,\n} from \"react\";\nimport h from \"@macrostrat/hyper\";\nimport {\n useMacrostratColumns,\n useMacrostratStore,\n} from \"../../../data-provider\";\n\nexport interface NavigationStore {\n columns: ColumnGeoJSONRecordWithID[];\n selectedColumn: number | null;\n hoveredColumn: number | null;\n selectColumn: (columnID: number | null) => void;\n setHoveredColumn: (columnID: number | null) => void;\n}\n\nexport interface NavigationProviderProps {\n projectID?: number;\n inProcess?: boolean;\n selectedColumn?: number | null;\n hoveredColumn?: number | null;\n columns?: ColumnGeoJSONRecordWithID[] | null;\n columnIDs?: number[] | null;\n children: ReactNode;\n onSelectColumn?: (col_id: number | null, column: any) => void;\n onHoverColumn?: (col_id: number | null, column: any) => void;\n}\n\nconst NavigationStoreContext = createContext<StoreApi<NavigationStore> | null>(\n null,\n);\n\nexport function ColumnNavigationProvider({\n children,\n columns,\n columnIDs,\n selectedColumn,\n projectID,\n inProcess,\n onSelectColumn,\n onHoverColumn,\n}: NavigationProviderProps) {\n const getColumns = useMacrostratStore((s) => s.getColumns);\n\n const [store] = useState(() => {\n return create<NavigationStore>((set, get): NavigationStore => {\n return {\n columns: null,\n selectedColumn: null,\n hoveredColumn: null,\n selectColumn(columnID: number | null) {\n set({ selectedColumn: columnID, hoveredColumn: null });\n const { columns } = get();\n const column = columns?.find((d) => d.id == columnID);\n onSelectColumn?.(columnID, column);\n },\n setHoveredColumn(columnID: number | null) {\n set({ hoveredColumn: columnID });\n const { columns } = get();\n const column = columns?.find((d) => d.id == columnID);\n onHoverColumn?.(columnID, column);\n },\n };\n });\n });\n\n // Set up the store\n /** TODO: unify handling of columns between parts of application */\n // useAsyncEffect(async () => {\n // let _columns = columns ?? (await getColumns(projectID, inProcess));\n // store.setState({ columns: _columns, selectedColumn });\n // }, [projectID, inProcess, columns, getColumns]);\n\n let _columns = columns ?? useMacrostratColumns(projectID, inProcess);\n\n // filter columns if specified\n if (columnIDs?.length > 0) {\n _columns = useMemo(() => {\n return _columns?.filter((d) => columnIDs.includes(d.properties.col_id));\n }, [columnIDs, _columns]);\n }\n\n useEffect(() => {\n if (_columns?.length > 0) {\n store.setState({ columns: _columns, selectedColumn });\n }\n }, [_columns]);\n // Update selected column if it is changed externally\n\n // Kind of an awkward way to do this but we need to allow the selector to run\n useEffect(() => {\n const { selectColumn, selectedColumn: _internalSelectedColumn } =\n store.getState();\n if (selectedColumn == _internalSelectedColumn) {\n return;\n }\n selectColumn(selectedColumn);\n }, [selectedColumn]);\n\n return h(NavigationStoreContext.Provider, { value: store }, children);\n}\n\nexport function useColumnNavigationStore(\n selector: (state: NavigationStore) => any,\n) {\n const storeApi = useContext(NavigationStoreContext);\n if (storeApi == null) {\n throw new Error(\"Missing ColumnNavigationProvider\");\n }\n return useStore(storeApi, selector);\n}\n"],"names":["create","$hD7WQ$create","useStore","$hD7WQ$useStore","createContext","$hD7WQ$createContext","useState","$hD7WQ$useState","useMemo","$hD7WQ$useMemo","useEffect","$hD7WQ$useEffect","useContext","$hD7WQ$useContext","$hD7WQ$macrostrathyper","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$lgTAP","$811f42ce180ac2d8$var$NavigationStoreContext","$811f42ce180ac2d8$export$8da3b11f62ebf019","children","columns","columnIDs","selectedColumn","projectID","inProcess","onSelectColumn","onHoverColumn","useMacrostratStore","s","getColumns","store","set","get","hoveredColumn","selectColumn","columnID","column","find","d","setHoveredColumn","_columns","useMacrostratColumns","length","filter","includes","properties","col_id","setState","_internalSelectedColumn","getState","Provider","value","$811f42ce180ac2d8$export$642c2b57c47ea41","selector","storeApi","ColumnNavigationProvider","useColumnNavigationStore"],"version":3,"file":"column-views.c4c15e2b.js.map","sourceRoot":"../../../../"}
@@ -1,2 +1,2 @@
1
- import"./column-views.7b6e7d82.js";import"./column-views.5c02450b.js";import"./column-views.5e73411d.js";import"./column-views.ffbffec7.js";import"./column-views.fea32686.js";import"./column-views.0818254f.js";import"./column-views.eecdc727.js";import"./column-views.5f3f8ccf.js";import"./column-views.f93b4175.js";import"./column-views.64fc40d6.js";import"./column-views.74fcfb9c.js";import e from"@macrostrat/hyper";import{useMemo as t}from"react";import{useInDarkMode as n}from"@macrostrat/ui-components";import o from"classnames";import{SVG as i,ColumnProvider as a,ColumnAxisType as r}from"@macrostrat/column-components";var l=globalThis,s={},c={},m=l.parcelRequirea149;null==m&&((m=function(e){if(e in s)return s[e].exports;if(e in c){var t=c[e];delete c[e];var n={id:e,exports:{}};return s[e]=n,t.call(n.exports,n,n.exports),n.exports}var o=Error("Cannot find module '"+e+"'");throw o.code="MODULE_NOT_FOUND",o}).register=function(e,t){c[e]=t},l.parcelRequirea149=m),m.register,Object.defineProperty({},"CorrelationChart",{get:()=>x,set:void 0,enumerable:!0,configurable:!0});var u=m("5SO8b"),p=m("wtIgl"),f=m("iYfAq"),d=m("2KV3o"),b=m("cf1sk"),g=m("7exMg"),C=m("8ldOM"),h=m("4hG2H"),S=m("7tWYE"),H=m("1n4Pb"),v=m("dMbCm");let _=e.styled(b&&b.__esModule?b.default:b);function U({children:e}){return _("div.main-chart",{ref:(0,u.useColumnRef)()},e)}let w=new Set([f.UnitDetailsFeature.AdjacentUnits,f.UnitDetailsFeature.OutcropType,f.UnitDetailsFeature.DepthRange,f.UnitDetailsFeature.ColumnName]);function x({data:e,columnSpacing:a=0,columnWidth:r=130,unconformityLabels:l=!0,showUnitPopover:s=!0,selectedUnit:c,onUnitSelected:m,unitComponent:f,...b}){let g={targetUnitHeight:10,unconformityHeight:60,minSectionHeight:60,collapseSmallUnconformities:!0},h=t(()=>e?(0,C.buildCorrelationChartData)(e,{...g,...b}):null,[e,...Object.values(b)]),S=t(()=>e?.map(e=>e.units).flat()??[],[e]),H=o({"dark-mode":n()});if(null==h)return null;let{packages:x,scaleInfo:y,nColumns:R}=h;return _(v.ColumnContainer,{className:"correlation-diagram"},_(p.UnitSelectionProvider,{selectedUnit:c,onUnitSelected:m,units:S},_(F,[_(E,{key:"timescale",scaleInfo:y,unconformityLabels:l}),_(U,[_(i,{className:H,innerWidth:(r+a)*R,height:y.totalHeight,paddingH:4},x.map((e,t)=>{let{offset:n,domain:o,pixelScale:i,scale:l,key:s}=y.packages[t];return _(A,{columnData:e.columnData,key:s,columnWidth:r,columnSpacing:a,offset:n,domain:o,pixelScale:i,scale:l,unitComponent:f})})),_.if(s)(d.UnitSelectionPopover,{features:w}),_(u.UnitKeyboardNavigation,{columnData:e})])])))}function A({columnData:e,columnSpacing:t,columnWidth:n,unitComponent:o,offset:i,domain:a,pixelScale:r,scale:l}){return _("g.package",{transform:`translate(0 ${i})`},[_("g.column-units",[e.map((e,i)=>_(y,{units:e.units,unitComponent:o,width:n,key:i,domain:a,pixelScale:r,scale:l,offsetLeft:i*(n+t)}))])])}function y(e){let{units:t,width:n=150,offsetLeft:o,domain:i,pixelScale:l,scale:s,unitComponent:c=S.ColoredUnitComponent}=e;return 0==t.length?null:_("g.section",{transform:`translate(${o} 0)`},_(a,{divisions:t,range:i,scale:s,pixelsPerMeter:l,axisType:r.AGE},_(H.UnitBoxes,{unitComponent:c,unitComponentProps:{nColumns:2,width:n,showLabel:!1}})))}function F({children:e}){let t=(0,u.useUnitSelectionDispatch)();return _("div.correlation-chart-inner",{onClick(){t(null,null)}},e)}function E(e){let{scaleInfo:t,unconformityLabels:n=!0}=e;return _("div.column-container.age-axis-container",[_(h.CompositeAgeAxisCore,{...t}),_(g.CompositeTimescaleCore,{...t,unconformityLabels:n})])}export{x as CorrelationChart};
2
- //# sourceMappingURL=column-views.58b336f1.js.map
1
+ import"./column-views.7b6e7d82.js";import"./column-views.d737de1e.js";import"./column-views.048fdcaf.js";import"./column-views.4a28d695.js";import"./column-views.fea32686.js";import"./column-views.31153f29.js";import"./column-views.0d254fd3.js";import"./column-views.ad60c02f.js";import"./column-views.306acd3f.js";import"./column-views.b57e5e6e.js";import"./column-views.c3097d9a.js";import e from"@macrostrat/hyper";import{useMemo as t}from"react";import{useInDarkMode as n}from"@macrostrat/ui-components";import o from"classnames";import{SVG as i,ColumnProvider as a,ColumnAxisType as r}from"@macrostrat/column-components";var l=globalThis,s={},c={},m=l.parcelRequirea149;null==m&&((m=function(e){if(e in s)return s[e].exports;if(e in c){var t=c[e];delete c[e];var n={id:e,exports:{}};return s[e]=n,t.call(n.exports,n,n.exports),n.exports}var o=Error("Cannot find module '"+e+"'");throw o.code="MODULE_NOT_FOUND",o}).register=function(e,t){c[e]=t},l.parcelRequirea149=m),m.register,Object.defineProperty({},"CorrelationChart",{get:()=>x,set:void 0,enumerable:!0,configurable:!0});var u=m("5SO8b"),p=m("wtIgl"),f=m("iYfAq"),d=m("2KV3o"),b=m("cf1sk"),g=m("7exMg"),C=m("8ldOM"),h=m("4hG2H"),S=m("7tWYE"),H=m("1n4Pb"),v=m("dMbCm");let _=e.styled(b&&b.__esModule?b.default:b);function U({children:e}){return _("div.main-chart",{ref:(0,u.useColumnRef)()},e)}let w=new Set([f.UnitDetailsFeature.AdjacentUnits,f.UnitDetailsFeature.OutcropType,f.UnitDetailsFeature.DepthRange,f.UnitDetailsFeature.ColumnName]);function x({data:e,columnSpacing:a=0,columnWidth:r=130,unconformityLabels:l=!0,showUnitPopover:s=!0,selectedUnit:c,onUnitSelected:m,unitComponent:f,...b}){let g={targetUnitHeight:10,unconformityHeight:60,minSectionHeight:60,collapseSmallUnconformities:!0},h=t(()=>e?(0,C.buildCorrelationChartData)(e,{...g,...b}):null,[e,...Object.values(b)]),S=t(()=>e?.map(e=>e.units).flat()??[],[e]),H=o({"dark-mode":n()});if(null==h)return null;let{packages:x,scaleInfo:y,nColumns:R}=h;return _(v.ColumnContainer,{className:"correlation-diagram"},_(p.UnitSelectionProvider,{selectedUnit:c,onUnitSelected:m,units:S},_(F,[_(E,{key:"timescale",scaleInfo:y,unconformityLabels:l}),_(U,[_(i,{className:H,innerWidth:(r+a)*R,height:y.totalHeight,paddingH:4},x.map((e,t)=>{let{offset:n,domain:o,pixelScale:i,scale:l,key:s}=y.packages[t];return _(A,{columnData:e.columnData,key:s,columnWidth:r,columnSpacing:a,offset:n,domain:o,pixelScale:i,scale:l,unitComponent:f})})),_.if(s)(d.UnitSelectionPopover,{features:w}),_(u.UnitKeyboardNavigation,{columnData:e})])])))}function A({columnData:e,columnSpacing:t,columnWidth:n,unitComponent:o,offset:i,domain:a,pixelScale:r,scale:l}){return _("g.package",{transform:`translate(0 ${i})`},[_("g.column-units",[e.map((e,i)=>_(y,{units:e.units,unitComponent:o,width:n,key:i,domain:a,pixelScale:r,scale:l,offsetLeft:i*(n+t)}))])])}function y(e){let{units:t,width:n=150,offsetLeft:o,domain:i,pixelScale:l,scale:s,unitComponent:c=S.ColoredUnitComponent}=e;return 0==t.length?null:_("g.section",{transform:`translate(${o} 0)`},_(a,{divisions:t,range:i,scale:s,pixelsPerMeter:l,axisType:r.AGE},_(H.UnitBoxes,{unitComponent:c,unitComponentProps:{nColumns:2,width:n,showLabel:!1}})))}function F({children:e}){let t=(0,u.useUnitSelectionDispatch)();return _("div.correlation-chart-inner",{onClick(){t(null,null)}},e)}function E(e){let{scaleInfo:t,unconformityLabels:n=!0}=e;return _("div.column-container.age-axis-container",[_(h.CompositeAgeAxisCore,{...t}),_(g.CompositeTimescaleCore,{...t,unconformityLabels:n})])}export{x as CorrelationChart};
2
+ //# sourceMappingURL=column-views.c651b684.js.map
@@ -1 +1 @@
1
- {"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,M,mB,A,Q,W,C,K,O,A,Q,iB,C,K,2B,A,Q,M,Y,A,Q,O,C,C,kB,C,C,kB,C,K,+B,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,O,c,C,C,E,mB,C,I,I,E,I,K,E,W,C,E,a,C,C,G,I,E,E,SCAA,EAAA,EAAA,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SAsCA,IAAM,EAAI,AAAA,EAAM,MAAM,C,AAAC,G,AAAA,E,U,C,AAAA,E,O,CAAA,GAcvB,SAAS,EAAc,CAAA,SAAE,CAAQ,CAAE,EAEjC,OAAO,EAAE,iBAAkB,CAAE,IADX,AAAA,CAAA,EAAA,EAAA,YAAW,AAAX,GAC0B,EAAG,EACjD,CAEA,IAAM,EAAsB,IAAI,IAAI,CAClC,AAAA,EAAA,kBAAiB,CAAE,aAAa,CAChC,AAAA,EAAA,kBAAiB,CAAE,WAAW,CAC9B,AAAA,EAAA,kBAAiB,CAAE,UAAU,CAC7B,AAAA,EAAA,kBAAiB,CAAE,UAAU,CAC9B,EAEM,SAAS,EAAiB,CAAA,KAC/B,CAAI,CAAA,cACJ,EAAgB,CAAA,CAAA,YAChB,EAAc,GAAA,CAAA,mBACd,EAAqB,CAAA,CAAA,CAAA,gBACrB,EAAkB,CAAA,CAAA,CAAA,aAClB,CAAY,CAAA,eACZ,CAAc,CAAA,cACd,CAAa,CACb,GAAG,EACmB,EACtB,IAAM,EAAoB,CACxB,iBAAkB,GAClB,mBAAoB,GACpB,iBAAkB,GAClB,4BAA6B,CAAA,CAC/B,EAEM,EAAY,AAAA,EAAQ,IACxB,AAAK,EACE,AAAA,CAAA,EAAA,EAAA,yBAAwB,AAAxB,EAA0B,EAAM,CACrC,GAAG,CAAi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","sources":["<anon>","packages/column-views/src/correlation-chart/main.ts"],"sourcesContent":["import \"./column-views.7b6e7d82.js\";\nimport \"./column-views.5c02450b.js\";\nimport \"./column-views.5e73411d.js\";\nimport \"./column-views.ffbffec7.js\";\nimport \"./column-views.fea32686.js\";\nimport \"./column-views.0818254f.js\";\nimport \"./column-views.eecdc727.js\";\nimport \"./column-views.5f3f8ccf.js\";\nimport \"./column-views.f93b4175.js\";\nimport \"./column-views.64fc40d6.js\";\nimport \"./column-views.74fcfb9c.js\";\nimport $8OJSO$macrostrathyper from \"@macrostrat/hyper\";\nimport {useMemo as $8OJSO$useMemo} from \"react\";\nimport {useInDarkMode as $8OJSO$useInDarkMode} from \"@macrostrat/ui-components\";\nimport $8OJSO$classnames from \"classnames\";\nimport {SVG as $8OJSO$SVG, ColumnProvider as $8OJSO$ColumnProvider, ColumnAxisType as $8OJSO$ColumnAxisType} from \"@macrostrat/column-components\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $25f1fcddbe40b91f$exports = {};\n\n$parcel$export($25f1fcddbe40b91f$exports, \"CorrelationChart\", () => $25f1fcddbe40b91f$export$9ebf875c09445bec);\n/** Correlation chart */ \nvar $5SO8b = parcelRequire(\"5SO8b\");\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\nvar $iYfAq = parcelRequire(\"iYfAq\");\nvar $2KV3o = parcelRequire(\"2KV3o\");\n\n\nvar $cf1sk = parcelRequire(\"cf1sk\");\n\n\n\nvar $7exMg = parcelRequire(\"7exMg\");\n\n\nvar $8ldOM = parcelRequire(\"8ldOM\");\n\nvar $4hG2H = parcelRequire(\"4hG2H\");\n\n\nvar $7tWYE = parcelRequire(\"7tWYE\");\n\nvar $1n4Pb = parcelRequire(\"1n4Pb\");\n\nvar $dMbCm = parcelRequire(\"dMbCm\");\nconst $25f1fcddbe40b91f$var$h = (0, $8OJSO$macrostrathyper).styled((0, (/*@__PURE__*/$parcel$interopDefault($cf1sk))));\nfunction $25f1fcddbe40b91f$var$MainChartArea({ children: children }) {\n const columnRef = (0, $5SO8b.useColumnRef)();\n return $25f1fcddbe40b91f$var$h(\"div.main-chart\", {\n ref: columnRef\n }, children);\n}\nconst $25f1fcddbe40b91f$var$unitPopoverFeatures = new Set([\n (0, $iYfAq.UnitDetailsFeature).AdjacentUnits,\n (0, $iYfAq.UnitDetailsFeature).OutcropType,\n (0, $iYfAq.UnitDetailsFeature).DepthRange,\n (0, $iYfAq.UnitDetailsFeature).ColumnName\n]);\nfunction $25f1fcddbe40b91f$export$9ebf875c09445bec({ data: data, columnSpacing: columnSpacing = 0, columnWidth: columnWidth = 130, unconformityLabels: unconformityLabels = true, showUnitPopover: showUnitPopover = true, selectedUnit: selectedUnit, onUnitSelected: onUnitSelected, unitComponent: unitComponent, ...scaleProps }) {\n const defaultScaleProps = {\n targetUnitHeight: 10,\n unconformityHeight: 60,\n minSectionHeight: 60,\n collapseSmallUnconformities: true\n };\n const chartData = (0, $8OJSO$useMemo)(()=>{\n if (!data) return null;\n return (0, $8ldOM.buildCorrelationChartData)(data, {\n ...defaultScaleProps,\n ...scaleProps\n });\n }, [\n data,\n ...Object.values(scaleProps)\n ]);\n // A flattened units array is used to support keyboard navigation\n const units = (0, $8OJSO$useMemo)(()=>{\n return data?.map((d0)=>d0.units).flat() ?? [];\n }, [\n data\n ]);\n const inDarkMode = (0, $8OJSO$useInDarkMode)();\n const className = (0, $8OJSO$classnames)({\n \"dark-mode\": inDarkMode\n });\n if (chartData == null) return null;\n const { packages: packages, scaleInfo: scaleInfo, nColumns: nColumns } = chartData;\n const mainWidth = (columnWidth + columnSpacing) * nColumns;\n return $25f1fcddbe40b91f$var$h((0, $dMbCm.ColumnContainer), {\n className: \"correlation-diagram\"\n }, $25f1fcddbe40b91f$var$h((0, $wtIgl.UnitSelectionProvider), {\n selectedUnit: selectedUnit,\n onUnitSelected: onUnitSelected,\n units: units\n }, $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$ChartArea, [\n $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$TimescaleColumn, {\n key: \"timescale\",\n scaleInfo: scaleInfo,\n unconformityLabels: unconformityLabels\n }),\n $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$MainChartArea, [\n $25f1fcddbe40b91f$var$h((0, $8OJSO$SVG), {\n className: className,\n innerWidth: mainWidth,\n height: scaleInfo.totalHeight,\n paddingH: 4\n }, packages.map((pkg, i)=>{\n const { offset: offset, domain: domain, pixelScale: pixelScale, scale: scale, key: key } = scaleInfo.packages[i];\n return $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$Package, {\n columnData: pkg.columnData,\n key: key,\n columnWidth: columnWidth,\n columnSpacing: columnSpacing,\n offset: offset,\n domain: domain,\n pixelScale: pixelScale,\n scale: scale,\n unitComponent: unitComponent\n });\n })),\n $25f1fcddbe40b91f$var$h.if(showUnitPopover)((0, $2KV3o.UnitSelectionPopover), {\n features: $25f1fcddbe40b91f$var$unitPopoverFeatures\n }),\n // Navigation only works within a column for now...\n $25f1fcddbe40b91f$var$h((0, $5SO8b.UnitKeyboardNavigation), {\n columnData: data\n })\n ])\n ])));\n}\nfunction $25f1fcddbe40b91f$var$Package({ columnData: columnData, columnSpacing: columnSpacing, columnWidth: columnWidth, unitComponent: unitComponent, offset: offset, domain: domain, pixelScale: pixelScale, scale: scale }) {\n return $25f1fcddbe40b91f$var$h(\"g.package\", {\n transform: `translate(0 ${offset})`\n }, [\n // Disable the SVG overlay for now\n //h(PackageSVGOverlay, { data, columnSpacing }),\n $25f1fcddbe40b91f$var$h(\"g.column-units\", [\n columnData.map((data, i)=>{\n return $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$Column, {\n units: data.units,\n unitComponent: unitComponent,\n width: columnWidth,\n key: i,\n domain: domain,\n pixelScale: pixelScale,\n scale: scale,\n offsetLeft: i * (columnWidth + columnSpacing)\n });\n })\n ])\n ]);\n}\nfunction $25f1fcddbe40b91f$var$Column(props) {\n const { units: units, width: width = 150, offsetLeft: offsetLeft, domain: domain, pixelScale: pixelScale, scale: scale, unitComponent: unitComponent = (0, $7tWYE.ColoredUnitComponent) } = props;\n const columnWidth = width;\n if (units.length == 0) return null;\n return $25f1fcddbe40b91f$var$h(\"g.section\", {\n transform: `translate(${offsetLeft} 0)`\n }, $25f1fcddbe40b91f$var$h((0, $8OJSO$ColumnProvider), {\n // Need to tighten up types here...\n divisions: units,\n range: domain,\n scale: scale,\n pixelsPerMeter: pixelScale,\n axisType: (0, $8OJSO$ColumnAxisType).AGE\n }, $25f1fcddbe40b91f$var$h((0, $1n4Pb.UnitBoxes), {\n unitComponent: unitComponent,\n unitComponentProps: {\n nColumns: 2,\n width: columnWidth,\n showLabel: false\n }\n })));\n}\nfunction $25f1fcddbe40b91f$var$PackageSVGOverlay({ data: data, columnWidth: columnWidth = 100, columnSpacing: columnSpacing = 0 }) {\n const { b_age: b_age, t_age: t_age, bestPixelScale: bestPixelScale, columnData: columnData } = data;\n const width = (columnWidth + columnSpacing) * columnData.length;\n const height = Math.ceil((b_age - t_age) * bestPixelScale) + 2;\n const extensiveUnits = (0, $8ldOM.findLaterallyExtensiveUnits)(data);\n const scale = (val)=>{\n return (val - t_age) * bestPixelScale;\n };\n return $25f1fcddbe40b91f$var$h(\"div.package-overlay\", {\n style: {\n width: width,\n height: height\n }\n }, extensiveUnits.map((d)=>{\n return $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$LaterallyExtensiveUnit, {\n data: d,\n scale: scale,\n pixelScale: bestPixelScale,\n columnSpacing: columnSpacing\n });\n }));\n}\nfunction $25f1fcddbe40b91f$var$LaterallyExtensiveUnit({ data: data, scale: scale, pixelScale: pixelScale, columnSpacing: columnSpacing }) {\n const { b_age: b_age, t_age: t_age, strat_name_long: strat_name_long, units: units } = data;\n // Build boxes by column groups\n const boxes = (0, $8ldOM.splitStratIntoBoxes)(data);\n return $25f1fcddbe40b91f$var$h(\"div.laterally-extensive-unit\", boxes.map((d, i)=>{\n return $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$StratColSpan, {\n scale: scale,\n data: d,\n pixelScale: pixelScale,\n key: i,\n columnSpacing: columnSpacing\n });\n }));\n}\nfunction $25f1fcddbe40b91f$var$StratColSpan({ data: data, scale: scale, columnWidth: columnWidth = 100, columnSpacing: columnSpacing = 0, pixelScale: pixelScale = 1 }) {\n const { startCol: startCol, endCol: endCol, strat_name_long: strat_name_long, t_age: t_age, b_age: b_age } = data;\n const top = scale(t_age);\n const left = startCol * (columnWidth + columnSpacing);\n const width = (endCol - startCol + 1) * (columnWidth + columnSpacing);\n const height = (b_age - t_age) * pixelScale;\n return $25f1fcddbe40b91f$var$h(\"div.strat-col-span\", {\n style: {\n top: top,\n height: height,\n width: width,\n left: left\n }\n }, strat_name_long);\n}\nfunction $25f1fcddbe40b91f$var$ChartArea({ children: children }) {\n const setSelectedUnit = (0, $5SO8b.useUnitSelectionDispatch)();\n return $25f1fcddbe40b91f$var$h(\"div.correlation-chart-inner\", {\n onClick () {\n setSelectedUnit(null, null);\n }\n }, children);\n}\nfunction $25f1fcddbe40b91f$var$TimescaleColumn(props) {\n const { scaleInfo: scaleInfo, unconformityLabels: unconformityLabels = true } = props;\n return $25f1fcddbe40b91f$var$h(\"div.column-container.age-axis-container\", [\n $25f1fcddbe40b91f$var$h((0, $4hG2H.CompositeAgeAxisCore), {\n ...scaleInfo\n }),\n $25f1fcddbe40b91f$var$h((0, $7exMg.CompositeTimescaleCore), {\n ...scaleInfo,\n unconformityLabels: unconformityLabels\n })\n ]);\n}\n\n\nexport {$25f1fcddbe40b91f$export$9ebf875c09445bec as CorrelationChart};\n//# sourceMappingURL=column-views.58b336f1.js.map\n","/** Correlation chart */\nimport {\n UnitSelectionProvider,\n UnitKeyboardNavigation,\n useUnitSelectionDispatch,\n useColumnRef,\n} from \"../data-provider\";\nimport { UnitDetailsFeature, UnitSelectionPopover } from \"../unit-details\";\nimport hyper from \"@macrostrat/hyper\";\nimport styles from \"./main.module.sass\";\nimport { useMemo } from \"react\";\nimport { useInDarkMode } from \"@macrostrat/ui-components\";\nimport { CompositeTimescaleCore } from \"../section\";\nimport classNames from \"classnames\";\nimport {\n findLaterallyExtensiveUnits,\n splitStratIntoBoxes,\n UnitGroupBox,\n CorrelationChartSettings,\n buildCorrelationChartData,\n} from \"./prepare-data\";\nimport {\n CompositeAgeAxisCore,\n CompositeStratigraphicScaleInfo,\n} from \"../age-axis\";\nimport {\n ColumnAxisType,\n ColumnProvider,\n SVG,\n} from \"@macrostrat/column-components\";\nimport { ColoredUnitComponent } from \"../units\";\nimport { UnitBoxes } from \"../units/boxes\";\nimport { ColumnContainer } from \"../column\";\nimport { ColumnData } from \"../data-provider\";\nimport { BaseUnit } from \"@macrostrat/api-types\";\nimport { ScaleContinuousNumeric } from \"d3-scale\";\nimport { ExtUnit } from \"../prepare-units/types\";\n\nconst h = hyper.styled(styles);\n\nexport interface CorrelationChartProps extends CorrelationChartSettings {\n data: ColumnData[];\n columnWidth?: number;\n columnSpacing?: number;\n targetUnitHeight?: number;\n unconformityLabels?: boolean;\n selectedUnit?: number | null;\n showUnitPopover?: boolean;\n unitComponent?: any;\n onUnitSelected?: (unitID: number | null, unit: BaseUnit | null) => void;\n}\n\nfunction MainChartArea({ children }) {\n const columnRef = useColumnRef();\n return h(\"div.main-chart\", { ref: columnRef }, children);\n}\n\nconst unitPopoverFeatures = new Set([\n UnitDetailsFeature.AdjacentUnits,\n UnitDetailsFeature.OutcropType,\n UnitDetailsFeature.DepthRange,\n UnitDetailsFeature.ColumnName,\n]);\n\nexport function CorrelationChart({\n data,\n columnSpacing = 0,\n columnWidth = 130,\n unconformityLabels = true,\n showUnitPopover = true,\n selectedUnit,\n onUnitSelected,\n unitComponent,\n ...scaleProps\n}: CorrelationChartProps) {\n const defaultScaleProps = {\n targetUnitHeight: 10,\n unconformityHeight: 60,\n minSectionHeight: 60,\n collapseSmallUnconformities: true,\n };\n\n const chartData = useMemo(() => {\n if (!data) return null;\n return buildCorrelationChartData(data, {\n ...defaultScaleProps,\n ...scaleProps,\n });\n }, [data, ...Object.values(scaleProps)]);\n\n // A flattened units array is used to support keyboard navigation\n const units = useMemo(() => {\n return data?.map((d0) => d0.units).flat() ?? [];\n }, [data]);\n\n const inDarkMode = useInDarkMode();\n\n const className = classNames({\n \"dark-mode\": inDarkMode,\n });\n\n if (chartData == null) {\n return null;\n }\n\n const { packages, scaleInfo, nColumns } = chartData;\n\n const mainWidth = (columnWidth + columnSpacing) * nColumns;\n\n return h(\n ColumnContainer,\n { className: \"correlation-diagram\" },\n h(\n UnitSelectionProvider,\n { selectedUnit, onUnitSelected, units },\n h(ChartArea, [\n h(TimescaleColumn, {\n key: \"timescale\",\n scaleInfo,\n unconformityLabels,\n }),\n h(MainChartArea, [\n h(\n SVG,\n {\n className,\n innerWidth: mainWidth,\n height: scaleInfo.totalHeight,\n paddingH: 4,\n },\n packages.map((pkg, i) => {\n const { offset, domain, pixelScale, scale, key } =\n scaleInfo.packages[i];\n return h(Package, {\n columnData: pkg.columnData,\n key,\n columnWidth,\n columnSpacing,\n offset,\n domain,\n pixelScale,\n scale,\n unitComponent,\n });\n }),\n ),\n h.if(showUnitPopover)(UnitSelectionPopover, {\n features: unitPopoverFeatures,\n }),\n // Navigation only works within a column for now...\n h(UnitKeyboardNavigation, { columnData: data }),\n ]),\n ]),\n ),\n );\n}\n\nfunction Package({\n columnData,\n columnSpacing,\n columnWidth,\n unitComponent,\n offset,\n domain,\n pixelScale,\n scale,\n}) {\n return h(\"g.package\", { transform: `translate(0 ${offset})` }, [\n // Disable the SVG overlay for now\n //h(PackageSVGOverlay, { data, columnSpacing }),\n h(\"g.column-units\", [\n columnData.map((data, i) => {\n return h(Column, {\n units: data.units,\n unitComponent,\n width: columnWidth,\n key: i,\n domain,\n pixelScale,\n scale,\n offsetLeft: i * (columnWidth + columnSpacing),\n });\n }),\n ]),\n ]);\n}\n\ninterface ColumnProps {\n units: ExtUnit[];\n unitComponent?: React.FunctionComponent<any>;\n unitComponentProps?: any;\n showLabels?: boolean;\n width?: number;\n columnWidth?: number;\n columnSpacing?: number;\n targetUnitHeight?: number;\n offsetLeft?: number;\n domain: [number, number];\n pixelScale: number;\n scale?: ScaleContinuousNumeric<number, number>;\n}\n\nfunction Column(props: ColumnProps) {\n const {\n units,\n width = 150,\n offsetLeft,\n domain,\n pixelScale,\n scale,\n unitComponent = ColoredUnitComponent,\n } = props;\n\n const columnWidth = width;\n\n if (units.length == 0) {\n return null;\n }\n\n return h(\n \"g.section\",\n {\n transform: `translate(${offsetLeft} 0)`,\n },\n h(\n ColumnProvider,\n {\n // Need to tighten up types here...\n divisions: units as any[],\n range: domain,\n scale,\n pixelsPerMeter: pixelScale, // Actually pixels per myr\n axisType: ColumnAxisType.AGE,\n },\n h(UnitBoxes, {\n unitComponent,\n unitComponentProps: {\n nColumns: 2,\n width: columnWidth,\n showLabel: false,\n },\n }),\n ),\n );\n}\n\nfunction PackageSVGOverlay({ data, columnWidth = 100, columnSpacing = 0 }) {\n const { b_age, t_age, bestPixelScale, columnData } = data;\n\n const width = (columnWidth + columnSpacing) * columnData.length;\n const height = Math.ceil((b_age - t_age) * bestPixelScale) + 2;\n\n const extensiveUnits = findLaterallyExtensiveUnits(data);\n\n const scale = (val: number) => {\n return (val - t_age) * bestPixelScale;\n };\n\n return h(\n \"div.package-overlay\",\n { style: { width, height } },\n extensiveUnits.map((d) => {\n return h(LaterallyExtensiveUnit, {\n data: d,\n scale,\n pixelScale: bestPixelScale,\n columnSpacing,\n });\n }),\n );\n}\n\nfunction LaterallyExtensiveUnit({ data, scale, pixelScale, columnSpacing }) {\n const { b_age, t_age, strat_name_long, units } = data;\n // Build boxes by column groups\n const boxes: UnitGroupBox[] = splitStratIntoBoxes(data);\n\n return h(\n \"div.laterally-extensive-unit\",\n boxes.map((d, i) => {\n return h(StratColSpan, {\n scale,\n data: d,\n pixelScale,\n key: i,\n columnSpacing,\n });\n }),\n );\n}\n\nfunction StratColSpan({\n data,\n scale,\n columnWidth = 100,\n columnSpacing = 0,\n pixelScale = 1,\n}) {\n const { startCol, endCol, strat_name_long, t_age, b_age } = data;\n const top = scale(t_age);\n const left = startCol * (columnWidth + columnSpacing);\n const width = (endCol - startCol + 1) * (columnWidth + columnSpacing);\n const height = (b_age - t_age) * pixelScale;\n return h(\n \"div.strat-col-span\",\n { style: { top, height, width, left } },\n strat_name_long,\n );\n}\n\nfunction ChartArea({ children }) {\n const setSelectedUnit = useUnitSelectionDispatch();\n\n return h(\n \"div.correlation-chart-inner\",\n {\n onClick() {\n setSelectedUnit(null, null);\n },\n },\n children,\n );\n}\n\ninterface TimescaleColumnProps {\n scaleInfo: CompositeStratigraphicScaleInfo;\n showLabels?: boolean;\n unconformityLabels?: boolean;\n}\n\nfunction TimescaleColumn(props: TimescaleColumnProps) {\n const { scaleInfo, unconformityLabels = true } = props;\n return h(\"div.column-container.age-axis-container\", [\n h(CompositeAgeAxisCore, { ...scaleInfo }),\n h(CompositeTimescaleCore, { ...scaleInfo, unconformityLabels }),\n ]);\n}\n"],"names":["$8OJSO$macrostrathyper","useMemo","$8OJSO$useMemo","useInDarkMode","$8OJSO$useInDarkMode","$8OJSO$classnames","SVG","$8OJSO$SVG","ColumnProvider","$8OJSO$ColumnProvider","ColumnAxisType","$8OJSO$ColumnAxisType","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","Object","defineProperty","get","$25f1fcddbe40b91f$export$9ebf875c09445bec","set","s","enumerable","configurable","$5SO8b","$wtIgl","$iYfAq","$2KV3o","$cf1sk","$7exMg","$8ldOM","$4hG2H","$7tWYE","$1n4Pb","$dMbCm","$25f1fcddbe40b91f$var$h","styled","a","__esModule","default","$25f1fcddbe40b91f$var$MainChartArea","children","ref","useColumnRef","$25f1fcddbe40b91f$var$unitPopoverFeatures","Set","UnitDetailsFeature","AdjacentUnits","OutcropType","DepthRange","ColumnName","data","columnSpacing","columnWidth","unconformityLabels","showUnitPopover","selectedUnit","onUnitSelected","unitComponent","scaleProps","defaultScaleProps","targetUnitHeight","unconformityHeight","minSectionHeight","collapseSmallUnconformities","chartData","buildCorrelationChartData","values","units","map","d0","flat","className","packages","scaleInfo","nColumns","ColumnContainer","UnitSelectionProvider","$25f1fcddbe40b91f$var$ChartArea","$25f1fcddbe40b91f$var$TimescaleColumn","key","innerWidth","height","totalHeight","paddingH","pkg","i","offset","domain","pixelScale","scale","$25f1fcddbe40b91f$var$Package","columnData","if","UnitSelectionPopover","features","UnitKeyboardNavigation","transform","$25f1fcddbe40b91f$var$Column","width","offsetLeft","props","ColoredUnitComponent","length","divisions","range","pixelsPerMeter","axisType","AGE","UnitBoxes","unitComponentProps","showLabel","setSelectedUnit","useUnitSelectionDispatch","onClick","CompositeAgeAxisCore","CompositeTimescaleCore","CorrelationChart"],"version":3,"file":"column-views.58b336f1.js.map","sourceRoot":"../../../../"}
1
+ {"mappings":"A,M,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,O,6C,A,Q,M,mB,A,Q,W,C,K,O,A,Q,iB,C,K,2B,A,Q,M,Y,A,Q,O,C,C,kB,C,C,kB,C,K,+B,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,O,c,C,C,E,mB,C,I,I,E,I,K,E,W,C,E,a,C,C,G,I,E,E,SCAA,EAAA,EAAA,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SAsCA,IAAM,EAAI,AAAA,EAAM,MAAM,C,AAAC,G,AAAA,E,U,C,AAAA,E,O,CAAA,GAcvB,SAAS,EAAc,CAAA,SAAE,CAAQ,CAAE,EAEjC,OAAO,EAAE,iBAAkB,CAAE,IADX,AAAA,CAAA,EAAA,EAAA,YAAW,AAAX,GAC0B,EAAG,EACjD,CAEA,IAAM,EAAsB,IAAI,IAAI,CAClC,AAAA,EAAA,kBAAiB,CAAE,aAAa,CAChC,AAAA,EAAA,kBAAiB,CAAE,WAAW,CAC9B,AAAA,EAAA,kBAAiB,CAAE,UAAU,CAC7B,AAAA,EAAA,kBAAiB,CAAE,UAAU,CAC9B,EAEM,SAAS,EAAiB,CAAA,KAC/B,CAAI,CAAA,cACJ,EAAgB,CAAA,CAAA,YAChB,EAAc,GAAA,CAAA,mBACd,EAAqB,CAAA,CAAA,CAAA,gBACrB,EAAkB,CAAA,CAAA,CAAA,aAClB,CAAY,CAAA,eACZ,CAAc,CAAA,cACd,CAAa,CACb,GAAG,EACmB,EACtB,IAAM,EAAoB,CACxB,iBAAkB,GAClB,mBAAoB,GACpB,iBAAkB,GAClB,4BAA6B,CAAA,CAC/B,EAEM,EAAY,AAAA,EAAQ,IACxB,AAAK,EACE,AAAA,CAAA,EAAA,EAAA,yBAAwB,AAAxB,EAA0B,EAAM,CACrC,GAAG,CAAi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","sources":["<anon>","packages/column-views/src/correlation-chart/main.ts"],"sourcesContent":["import \"./column-views.7b6e7d82.js\";\nimport \"./column-views.d737de1e.js\";\nimport \"./column-views.048fdcaf.js\";\nimport \"./column-views.4a28d695.js\";\nimport \"./column-views.fea32686.js\";\nimport \"./column-views.31153f29.js\";\nimport \"./column-views.0d254fd3.js\";\nimport \"./column-views.ad60c02f.js\";\nimport \"./column-views.306acd3f.js\";\nimport \"./column-views.b57e5e6e.js\";\nimport \"./column-views.c3097d9a.js\";\nimport $8OJSO$macrostrathyper from \"@macrostrat/hyper\";\nimport {useMemo as $8OJSO$useMemo} from \"react\";\nimport {useInDarkMode as $8OJSO$useInDarkMode} from \"@macrostrat/ui-components\";\nimport $8OJSO$classnames from \"classnames\";\nimport {SVG as $8OJSO$SVG, ColumnProvider as $8OJSO$ColumnProvider, ColumnAxisType as $8OJSO$ColumnAxisType} from \"@macrostrat/column-components\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $25f1fcddbe40b91f$exports = {};\n\n$parcel$export($25f1fcddbe40b91f$exports, \"CorrelationChart\", () => $25f1fcddbe40b91f$export$9ebf875c09445bec);\n/** Correlation chart */ \nvar $5SO8b = parcelRequire(\"5SO8b\");\nvar $wtIgl = parcelRequire(\"wtIgl\");\n\nvar $iYfAq = parcelRequire(\"iYfAq\");\nvar $2KV3o = parcelRequire(\"2KV3o\");\n\n\nvar $cf1sk = parcelRequire(\"cf1sk\");\n\n\n\nvar $7exMg = parcelRequire(\"7exMg\");\n\n\nvar $8ldOM = parcelRequire(\"8ldOM\");\n\nvar $4hG2H = parcelRequire(\"4hG2H\");\n\n\nvar $7tWYE = parcelRequire(\"7tWYE\");\n\nvar $1n4Pb = parcelRequire(\"1n4Pb\");\n\nvar $dMbCm = parcelRequire(\"dMbCm\");\nconst $25f1fcddbe40b91f$var$h = (0, $8OJSO$macrostrathyper).styled((0, (/*@__PURE__*/$parcel$interopDefault($cf1sk))));\nfunction $25f1fcddbe40b91f$var$MainChartArea({ children: children }) {\n const columnRef = (0, $5SO8b.useColumnRef)();\n return $25f1fcddbe40b91f$var$h(\"div.main-chart\", {\n ref: columnRef\n }, children);\n}\nconst $25f1fcddbe40b91f$var$unitPopoverFeatures = new Set([\n (0, $iYfAq.UnitDetailsFeature).AdjacentUnits,\n (0, $iYfAq.UnitDetailsFeature).OutcropType,\n (0, $iYfAq.UnitDetailsFeature).DepthRange,\n (0, $iYfAq.UnitDetailsFeature).ColumnName\n]);\nfunction $25f1fcddbe40b91f$export$9ebf875c09445bec({ data: data, columnSpacing: columnSpacing = 0, columnWidth: columnWidth = 130, unconformityLabels: unconformityLabels = true, showUnitPopover: showUnitPopover = true, selectedUnit: selectedUnit, onUnitSelected: onUnitSelected, unitComponent: unitComponent, ...scaleProps }) {\n const defaultScaleProps = {\n targetUnitHeight: 10,\n unconformityHeight: 60,\n minSectionHeight: 60,\n collapseSmallUnconformities: true\n };\n const chartData = (0, $8OJSO$useMemo)(()=>{\n if (!data) return null;\n return (0, $8ldOM.buildCorrelationChartData)(data, {\n ...defaultScaleProps,\n ...scaleProps\n });\n }, [\n data,\n ...Object.values(scaleProps)\n ]);\n // A flattened units array is used to support keyboard navigation\n const units = (0, $8OJSO$useMemo)(()=>{\n return data?.map((d0)=>d0.units).flat() ?? [];\n }, [\n data\n ]);\n const inDarkMode = (0, $8OJSO$useInDarkMode)();\n const className = (0, $8OJSO$classnames)({\n \"dark-mode\": inDarkMode\n });\n if (chartData == null) return null;\n const { packages: packages, scaleInfo: scaleInfo, nColumns: nColumns } = chartData;\n const mainWidth = (columnWidth + columnSpacing) * nColumns;\n return $25f1fcddbe40b91f$var$h((0, $dMbCm.ColumnContainer), {\n className: \"correlation-diagram\"\n }, $25f1fcddbe40b91f$var$h((0, $wtIgl.UnitSelectionProvider), {\n selectedUnit: selectedUnit,\n onUnitSelected: onUnitSelected,\n units: units\n }, $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$ChartArea, [\n $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$TimescaleColumn, {\n key: \"timescale\",\n scaleInfo: scaleInfo,\n unconformityLabels: unconformityLabels\n }),\n $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$MainChartArea, [\n $25f1fcddbe40b91f$var$h((0, $8OJSO$SVG), {\n className: className,\n innerWidth: mainWidth,\n height: scaleInfo.totalHeight,\n paddingH: 4\n }, packages.map((pkg, i)=>{\n const { offset: offset, domain: domain, pixelScale: pixelScale, scale: scale, key: key } = scaleInfo.packages[i];\n return $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$Package, {\n columnData: pkg.columnData,\n key: key,\n columnWidth: columnWidth,\n columnSpacing: columnSpacing,\n offset: offset,\n domain: domain,\n pixelScale: pixelScale,\n scale: scale,\n unitComponent: unitComponent\n });\n })),\n $25f1fcddbe40b91f$var$h.if(showUnitPopover)((0, $2KV3o.UnitSelectionPopover), {\n features: $25f1fcddbe40b91f$var$unitPopoverFeatures\n }),\n // Navigation only works within a column for now...\n $25f1fcddbe40b91f$var$h((0, $5SO8b.UnitKeyboardNavigation), {\n columnData: data\n })\n ])\n ])));\n}\nfunction $25f1fcddbe40b91f$var$Package({ columnData: columnData, columnSpacing: columnSpacing, columnWidth: columnWidth, unitComponent: unitComponent, offset: offset, domain: domain, pixelScale: pixelScale, scale: scale }) {\n return $25f1fcddbe40b91f$var$h(\"g.package\", {\n transform: `translate(0 ${offset})`\n }, [\n // Disable the SVG overlay for now\n //h(PackageSVGOverlay, { data, columnSpacing }),\n $25f1fcddbe40b91f$var$h(\"g.column-units\", [\n columnData.map((data, i)=>{\n return $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$Column, {\n units: data.units,\n unitComponent: unitComponent,\n width: columnWidth,\n key: i,\n domain: domain,\n pixelScale: pixelScale,\n scale: scale,\n offsetLeft: i * (columnWidth + columnSpacing)\n });\n })\n ])\n ]);\n}\nfunction $25f1fcddbe40b91f$var$Column(props) {\n const { units: units, width: width = 150, offsetLeft: offsetLeft, domain: domain, pixelScale: pixelScale, scale: scale, unitComponent: unitComponent = (0, $7tWYE.ColoredUnitComponent) } = props;\n const columnWidth = width;\n if (units.length == 0) return null;\n return $25f1fcddbe40b91f$var$h(\"g.section\", {\n transform: `translate(${offsetLeft} 0)`\n }, $25f1fcddbe40b91f$var$h((0, $8OJSO$ColumnProvider), {\n // Need to tighten up types here...\n divisions: units,\n range: domain,\n scale: scale,\n pixelsPerMeter: pixelScale,\n axisType: (0, $8OJSO$ColumnAxisType).AGE\n }, $25f1fcddbe40b91f$var$h((0, $1n4Pb.UnitBoxes), {\n unitComponent: unitComponent,\n unitComponentProps: {\n nColumns: 2,\n width: columnWidth,\n showLabel: false\n }\n })));\n}\nfunction $25f1fcddbe40b91f$var$PackageSVGOverlay({ data: data, columnWidth: columnWidth = 100, columnSpacing: columnSpacing = 0 }) {\n const { b_age: b_age, t_age: t_age, bestPixelScale: bestPixelScale, columnData: columnData } = data;\n const width = (columnWidth + columnSpacing) * columnData.length;\n const height = Math.ceil((b_age - t_age) * bestPixelScale) + 2;\n const extensiveUnits = (0, $8ldOM.findLaterallyExtensiveUnits)(data);\n const scale = (val)=>{\n return (val - t_age) * bestPixelScale;\n };\n return $25f1fcddbe40b91f$var$h(\"div.package-overlay\", {\n style: {\n width: width,\n height: height\n }\n }, extensiveUnits.map((d)=>{\n return $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$LaterallyExtensiveUnit, {\n data: d,\n scale: scale,\n pixelScale: bestPixelScale,\n columnSpacing: columnSpacing\n });\n }));\n}\nfunction $25f1fcddbe40b91f$var$LaterallyExtensiveUnit({ data: data, scale: scale, pixelScale: pixelScale, columnSpacing: columnSpacing }) {\n const { b_age: b_age, t_age: t_age, strat_name_long: strat_name_long, units: units } = data;\n // Build boxes by column groups\n const boxes = (0, $8ldOM.splitStratIntoBoxes)(data);\n return $25f1fcddbe40b91f$var$h(\"div.laterally-extensive-unit\", boxes.map((d, i)=>{\n return $25f1fcddbe40b91f$var$h($25f1fcddbe40b91f$var$StratColSpan, {\n scale: scale,\n data: d,\n pixelScale: pixelScale,\n key: i,\n columnSpacing: columnSpacing\n });\n }));\n}\nfunction $25f1fcddbe40b91f$var$StratColSpan({ data: data, scale: scale, columnWidth: columnWidth = 100, columnSpacing: columnSpacing = 0, pixelScale: pixelScale = 1 }) {\n const { startCol: startCol, endCol: endCol, strat_name_long: strat_name_long, t_age: t_age, b_age: b_age } = data;\n const top = scale(t_age);\n const left = startCol * (columnWidth + columnSpacing);\n const width = (endCol - startCol + 1) * (columnWidth + columnSpacing);\n const height = (b_age - t_age) * pixelScale;\n return $25f1fcddbe40b91f$var$h(\"div.strat-col-span\", {\n style: {\n top: top,\n height: height,\n width: width,\n left: left\n }\n }, strat_name_long);\n}\nfunction $25f1fcddbe40b91f$var$ChartArea({ children: children }) {\n const setSelectedUnit = (0, $5SO8b.useUnitSelectionDispatch)();\n return $25f1fcddbe40b91f$var$h(\"div.correlation-chart-inner\", {\n onClick () {\n setSelectedUnit(null, null);\n }\n }, children);\n}\nfunction $25f1fcddbe40b91f$var$TimescaleColumn(props) {\n const { scaleInfo: scaleInfo, unconformityLabels: unconformityLabels = true } = props;\n return $25f1fcddbe40b91f$var$h(\"div.column-container.age-axis-container\", [\n $25f1fcddbe40b91f$var$h((0, $4hG2H.CompositeAgeAxisCore), {\n ...scaleInfo\n }),\n $25f1fcddbe40b91f$var$h((0, $7exMg.CompositeTimescaleCore), {\n ...scaleInfo,\n unconformityLabels: unconformityLabels\n })\n ]);\n}\n\n\nexport {$25f1fcddbe40b91f$export$9ebf875c09445bec as CorrelationChart};\n//# sourceMappingURL=column-views.c651b684.js.map\n","/** Correlation chart */\nimport {\n UnitSelectionProvider,\n UnitKeyboardNavigation,\n useUnitSelectionDispatch,\n useColumnRef,\n} from \"../data-provider\";\nimport { UnitDetailsFeature, UnitSelectionPopover } from \"../unit-details\";\nimport hyper from \"@macrostrat/hyper\";\nimport styles from \"./main.module.sass\";\nimport { useMemo } from \"react\";\nimport { useInDarkMode } from \"@macrostrat/ui-components\";\nimport { CompositeTimescaleCore } from \"../section\";\nimport classNames from \"classnames\";\nimport {\n findLaterallyExtensiveUnits,\n splitStratIntoBoxes,\n UnitGroupBox,\n CorrelationChartSettings,\n buildCorrelationChartData,\n} from \"./prepare-data\";\nimport {\n CompositeAgeAxisCore,\n CompositeStratigraphicScaleInfo,\n} from \"../age-axis\";\nimport {\n ColumnAxisType,\n ColumnProvider,\n SVG,\n} from \"@macrostrat/column-components\";\nimport { ColoredUnitComponent } from \"../units\";\nimport { UnitBoxes } from \"../units/boxes\";\nimport { ColumnContainer } from \"../column\";\nimport { ColumnData } from \"../data-provider\";\nimport { BaseUnit } from \"@macrostrat/api-types\";\nimport { ScaleContinuousNumeric } from \"d3-scale\";\nimport { ExtUnit } from \"../prepare-units/types\";\n\nconst h = hyper.styled(styles);\n\nexport interface CorrelationChartProps extends CorrelationChartSettings {\n data: ColumnData[];\n columnWidth?: number;\n columnSpacing?: number;\n targetUnitHeight?: number;\n unconformityLabels?: boolean;\n selectedUnit?: number | null;\n showUnitPopover?: boolean;\n unitComponent?: any;\n onUnitSelected?: (unitID: number | null, unit: BaseUnit | null) => void;\n}\n\nfunction MainChartArea({ children }) {\n const columnRef = useColumnRef();\n return h(\"div.main-chart\", { ref: columnRef }, children);\n}\n\nconst unitPopoverFeatures = new Set([\n UnitDetailsFeature.AdjacentUnits,\n UnitDetailsFeature.OutcropType,\n UnitDetailsFeature.DepthRange,\n UnitDetailsFeature.ColumnName,\n]);\n\nexport function CorrelationChart({\n data,\n columnSpacing = 0,\n columnWidth = 130,\n unconformityLabels = true,\n showUnitPopover = true,\n selectedUnit,\n onUnitSelected,\n unitComponent,\n ...scaleProps\n}: CorrelationChartProps) {\n const defaultScaleProps = {\n targetUnitHeight: 10,\n unconformityHeight: 60,\n minSectionHeight: 60,\n collapseSmallUnconformities: true,\n };\n\n const chartData = useMemo(() => {\n if (!data) return null;\n return buildCorrelationChartData(data, {\n ...defaultScaleProps,\n ...scaleProps,\n });\n }, [data, ...Object.values(scaleProps)]);\n\n // A flattened units array is used to support keyboard navigation\n const units = useMemo(() => {\n return data?.map((d0) => d0.units).flat() ?? [];\n }, [data]);\n\n const inDarkMode = useInDarkMode();\n\n const className = classNames({\n \"dark-mode\": inDarkMode,\n });\n\n if (chartData == null) {\n return null;\n }\n\n const { packages, scaleInfo, nColumns } = chartData;\n\n const mainWidth = (columnWidth + columnSpacing) * nColumns;\n\n return h(\n ColumnContainer,\n { className: \"correlation-diagram\" },\n h(\n UnitSelectionProvider,\n { selectedUnit, onUnitSelected, units },\n h(ChartArea, [\n h(TimescaleColumn, {\n key: \"timescale\",\n scaleInfo,\n unconformityLabels,\n }),\n h(MainChartArea, [\n h(\n SVG,\n {\n className,\n innerWidth: mainWidth,\n height: scaleInfo.totalHeight,\n paddingH: 4,\n },\n packages.map((pkg, i) => {\n const { offset, domain, pixelScale, scale, key } =\n scaleInfo.packages[i];\n return h(Package, {\n columnData: pkg.columnData,\n key,\n columnWidth,\n columnSpacing,\n offset,\n domain,\n pixelScale,\n scale,\n unitComponent,\n });\n }),\n ),\n h.if(showUnitPopover)(UnitSelectionPopover, {\n features: unitPopoverFeatures,\n }),\n // Navigation only works within a column for now...\n h(UnitKeyboardNavigation, { columnData: data }),\n ]),\n ]),\n ),\n );\n}\n\nfunction Package({\n columnData,\n columnSpacing,\n columnWidth,\n unitComponent,\n offset,\n domain,\n pixelScale,\n scale,\n}) {\n return h(\"g.package\", { transform: `translate(0 ${offset})` }, [\n // Disable the SVG overlay for now\n //h(PackageSVGOverlay, { data, columnSpacing }),\n h(\"g.column-units\", [\n columnData.map((data, i) => {\n return h(Column, {\n units: data.units,\n unitComponent,\n width: columnWidth,\n key: i,\n domain,\n pixelScale,\n scale,\n offsetLeft: i * (columnWidth + columnSpacing),\n });\n }),\n ]),\n ]);\n}\n\ninterface ColumnProps {\n units: ExtUnit[];\n unitComponent?: React.FunctionComponent<any>;\n unitComponentProps?: any;\n showLabels?: boolean;\n width?: number;\n columnWidth?: number;\n columnSpacing?: number;\n targetUnitHeight?: number;\n offsetLeft?: number;\n domain: [number, number];\n pixelScale: number;\n scale?: ScaleContinuousNumeric<number, number>;\n}\n\nfunction Column(props: ColumnProps) {\n const {\n units,\n width = 150,\n offsetLeft,\n domain,\n pixelScale,\n scale,\n unitComponent = ColoredUnitComponent,\n } = props;\n\n const columnWidth = width;\n\n if (units.length == 0) {\n return null;\n }\n\n return h(\n \"g.section\",\n {\n transform: `translate(${offsetLeft} 0)`,\n },\n h(\n ColumnProvider,\n {\n // Need to tighten up types here...\n divisions: units as any[],\n range: domain,\n scale,\n pixelsPerMeter: pixelScale, // Actually pixels per myr\n axisType: ColumnAxisType.AGE,\n },\n h(UnitBoxes, {\n unitComponent,\n unitComponentProps: {\n nColumns: 2,\n width: columnWidth,\n showLabel: false,\n },\n }),\n ),\n );\n}\n\nfunction PackageSVGOverlay({ data, columnWidth = 100, columnSpacing = 0 }) {\n const { b_age, t_age, bestPixelScale, columnData } = data;\n\n const width = (columnWidth + columnSpacing) * columnData.length;\n const height = Math.ceil((b_age - t_age) * bestPixelScale) + 2;\n\n const extensiveUnits = findLaterallyExtensiveUnits(data);\n\n const scale = (val: number) => {\n return (val - t_age) * bestPixelScale;\n };\n\n return h(\n \"div.package-overlay\",\n { style: { width, height } },\n extensiveUnits.map((d) => {\n return h(LaterallyExtensiveUnit, {\n data: d,\n scale,\n pixelScale: bestPixelScale,\n columnSpacing,\n });\n }),\n );\n}\n\nfunction LaterallyExtensiveUnit({ data, scale, pixelScale, columnSpacing }) {\n const { b_age, t_age, strat_name_long, units } = data;\n // Build boxes by column groups\n const boxes: UnitGroupBox[] = splitStratIntoBoxes(data);\n\n return h(\n \"div.laterally-extensive-unit\",\n boxes.map((d, i) => {\n return h(StratColSpan, {\n scale,\n data: d,\n pixelScale,\n key: i,\n columnSpacing,\n });\n }),\n );\n}\n\nfunction StratColSpan({\n data,\n scale,\n columnWidth = 100,\n columnSpacing = 0,\n pixelScale = 1,\n}) {\n const { startCol, endCol, strat_name_long, t_age, b_age } = data;\n const top = scale(t_age);\n const left = startCol * (columnWidth + columnSpacing);\n const width = (endCol - startCol + 1) * (columnWidth + columnSpacing);\n const height = (b_age - t_age) * pixelScale;\n return h(\n \"div.strat-col-span\",\n { style: { top, height, width, left } },\n strat_name_long,\n );\n}\n\nfunction ChartArea({ children }) {\n const setSelectedUnit = useUnitSelectionDispatch();\n\n return h(\n \"div.correlation-chart-inner\",\n {\n onClick() {\n setSelectedUnit(null, null);\n },\n },\n children,\n );\n}\n\ninterface TimescaleColumnProps {\n scaleInfo: CompositeStratigraphicScaleInfo;\n showLabels?: boolean;\n unconformityLabels?: boolean;\n}\n\nfunction TimescaleColumn(props: TimescaleColumnProps) {\n const { scaleInfo, unconformityLabels = true } = props;\n return h(\"div.column-container.age-axis-container\", [\n h(CompositeAgeAxisCore, { ...scaleInfo }),\n h(CompositeTimescaleCore, { ...scaleInfo, unconformityLabels }),\n ]);\n}\n"],"names":["$8OJSO$macrostrathyper","useMemo","$8OJSO$useMemo","useInDarkMode","$8OJSO$useInDarkMode","$8OJSO$classnames","SVG","$8OJSO$SVG","ColumnProvider","$8OJSO$ColumnProvider","ColumnAxisType","$8OJSO$ColumnAxisType","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","Object","defineProperty","get","$25f1fcddbe40b91f$export$9ebf875c09445bec","set","s","enumerable","configurable","$5SO8b","$wtIgl","$iYfAq","$2KV3o","$cf1sk","$7exMg","$8ldOM","$4hG2H","$7tWYE","$1n4Pb","$dMbCm","$25f1fcddbe40b91f$var$h","styled","a","__esModule","default","$25f1fcddbe40b91f$var$MainChartArea","children","ref","useColumnRef","$25f1fcddbe40b91f$var$unitPopoverFeatures","Set","UnitDetailsFeature","AdjacentUnits","OutcropType","DepthRange","ColumnName","data","columnSpacing","columnWidth","unconformityLabels","showUnitPopover","selectedUnit","onUnitSelected","unitComponent","scaleProps","defaultScaleProps","targetUnitHeight","unconformityHeight","minSectionHeight","collapseSmallUnconformities","chartData","buildCorrelationChartData","values","units","map","d0","flat","className","packages","scaleInfo","nColumns","ColumnContainer","UnitSelectionProvider","$25f1fcddbe40b91f$var$ChartArea","$25f1fcddbe40b91f$var$TimescaleColumn","key","innerWidth","height","totalHeight","paddingH","pkg","i","offset","domain","pixelScale","scale","$25f1fcddbe40b91f$var$Package","columnData","if","UnitSelectionPopover","features","UnitKeyboardNavigation","transform","$25f1fcddbe40b91f$var$Column","width","offsetLeft","props","ColoredUnitComponent","length","divisions","range","pixelsPerMeter","axisType","AGE","UnitBoxes","unitComponentProps","showLabel","setSelectedUnit","useUnitSelectionDispatch","onClick","CompositeAgeAxisCore","CompositeTimescaleCore","CorrelationChart"],"version":3,"file":"column-views.c651b684.js.map","sourceRoot":"../../../../"}
@@ -1,2 +1,2 @@
1
- import"./column-views.f4063bc8.js";import"./column-views.0d48f51d.js";import"./column-views.8c00beb4.js";function e(e,a){return Object.keys(a).forEach(function(r){"default"===r||"__esModule"===r||Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:function(){return a[r]}})}),e}var a=globalThis,r={},o={},t=a.parcelRequirea149;null==t&&((t=function(e){if(e in r)return r[e].exports;if(e in o){var a=o[e];delete o[e];var t={id:e,exports:{}};return r[e]=t,a.call(t.exports,t,t.exports),t.exports}var c=Error("Cannot find module '"+e+"'");throw c.code="MODULE_NOT_FOUND",c}).register=function(e,a){o[e]=a},a.parcelRequirea149=t),t.register;var c={},n=t("34Mx7"),f=t("dYjy7"),$=t("6Tim5");e(c,n),e(c,f),e(c,$);export{$44d1d5e5d8e823d1$export$821baedf611249f3 as ColumnNavigationMap,$5a7fd801cb316afa$export$c4313db718750a5a as ResizableMapFrame,$5a7fd801cb316afa$export$9595c40c7a4c4f7b as ColumnNavigationSVGMap,$372e0c9189556f66$export$2254347cd20e6080 as MeasurementsLayer,$372e0c9189556f66$export$f177ff57c101017a as ColumnFeatures,$372e0c9189556f66$export$8c41dd563753848 as ColumnKeyboardNavigation,$372e0c9189556f66$export$f02cc02ad0e0bba3 as Columns,$372e0c9189556f66$export$4d8f6e6df85d9012 as ColumnCenters,$372e0c9189556f66$export$b9d912252344e099 as CurrentColumn,$2e0f3abda6f981c3$export$8e7d97509e84cc49 as ColumnCorrelationMap,$c36af3ba15da093b$export$72ffe141ebf87ef1 as ColumnCorrelationProvider,$c36af3ba15da093b$export$21398703d3a9bb4d as useCorrelationMapStore,$ec03b0c93e1da04f$export$1e8149fc0d15fed0 as InsetMap,$25e107971dfb4328$export$d2995719c3a4ae17 as buildColumnsStyle};
2
- //# sourceMappingURL=column-views.447008d0.js.map
1
+ import"./column-views.15b5cecc.js";import"./column-views.da902c44.js";import"./column-views.5fcd2be6.js";function e(e,a){return Object.keys(a).forEach(function(r){"default"===r||"__esModule"===r||Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:function(){return a[r]}})}),e}var a=globalThis,r={},o={},t=a.parcelRequirea149;null==t&&((t=function(e){if(e in r)return r[e].exports;if(e in o){var a=o[e];delete o[e];var t={id:e,exports:{}};return r[e]=t,a.call(t.exports,t,t.exports),t.exports}var c=Error("Cannot find module '"+e+"'");throw c.code="MODULE_NOT_FOUND",c}).register=function(e,a){o[e]=a},a.parcelRequirea149=t),t.register;var c={},n=t("34Mx7"),f=t("dYjy7"),$=t("6Tim5");e(c,n),e(c,f),e(c,$);export{$44d1d5e5d8e823d1$export$821baedf611249f3 as ColumnNavigationMap,$5a7fd801cb316afa$export$c4313db718750a5a as ResizableMapFrame,$5a7fd801cb316afa$export$9595c40c7a4c4f7b as ColumnNavigationSVGMap,$372e0c9189556f66$export$2254347cd20e6080 as MeasurementsLayer,$372e0c9189556f66$export$f177ff57c101017a as ColumnFeatures,$372e0c9189556f66$export$8c41dd563753848 as ColumnKeyboardNavigation,$372e0c9189556f66$export$f02cc02ad0e0bba3 as Columns,$372e0c9189556f66$export$4d8f6e6df85d9012 as ColumnCenters,$372e0c9189556f66$export$b9d912252344e099 as CurrentColumn,$2e0f3abda6f981c3$export$8e7d97509e84cc49 as ColumnCorrelationMap,$c36af3ba15da093b$export$72ffe141ebf87ef1 as ColumnCorrelationProvider,$c36af3ba15da093b$export$21398703d3a9bb4d as useCorrelationMapStore,$ec03b0c93e1da04f$export$1e8149fc0d15fed0 as InsetMap,$25e107971dfb4328$export$d2995719c3a4ae17 as buildColumnsStyle};
2
+ //# sourceMappingURL=column-views.cf41a6d7.js.map
@@ -1 +1 @@
1
- {"mappings":"A,M,6C,A,O,6C,A,O,6C,C,S,E,C,C,C,E,O,O,I,C,G,O,C,S,C,E,Y,G,A,e,G,O,S,C,c,C,I,C,E,I,O,c,C,E,E,C,W,C,E,I,W,O,C,C,E,A,C,E,G,C,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,S,E,E,S,E,E,S,E,E,G,E,E,G,E,E,U,6C,mB,C,6C,iB,C,6C,sB,C,6C,iB,C,6C,c,C,4C,wB,C,6C,O,C,6C,a,C,6C,a,C,6C,oB,C,6C,yB,C,6C,sB,C,6C,Q,C,6C,iB","sources":["<anon>","packages/column-views/src/maps/index.ts"],"sourcesContent":["import \"./column-views.f4063bc8.js\";\nimport \"./column-views.0d48f51d.js\";\nimport \"./column-views.8c00beb4.js\";\n\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule' || Object.prototype.hasOwnProperty.call(dest, key)) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n }\n });\n });\n\n return dest;\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $4a84f205caf763c1$exports = {};\n\nvar $34Mx7 = parcelRequire(\"34Mx7\");\n\nvar $dYjy7 = parcelRequire(\"dYjy7\");\n\nvar $6Tim5 = parcelRequire(\"6Tim5\");\n$parcel$exportWildcard($4a84f205caf763c1$exports, $34Mx7);\n$parcel$exportWildcard($4a84f205caf763c1$exports, $dYjy7);\n$parcel$exportWildcard($4a84f205caf763c1$exports, $6Tim5);\n\n\nexport {$44d1d5e5d8e823d1$export$821baedf611249f3 as ColumnNavigationMap, $5a7fd801cb316afa$export$c4313db718750a5a as ResizableMapFrame, $5a7fd801cb316afa$export$9595c40c7a4c4f7b as ColumnNavigationSVGMap, $372e0c9189556f66$export$2254347cd20e6080 as MeasurementsLayer, $372e0c9189556f66$export$f177ff57c101017a as ColumnFeatures, $372e0c9189556f66$export$8c41dd563753848 as ColumnKeyboardNavigation, $372e0c9189556f66$export$f02cc02ad0e0bba3 as Columns, $372e0c9189556f66$export$4d8f6e6df85d9012 as ColumnCenters, $372e0c9189556f66$export$b9d912252344e099 as CurrentColumn, $2e0f3abda6f981c3$export$8e7d97509e84cc49 as ColumnCorrelationMap, $c36af3ba15da093b$export$72ffe141ebf87ef1 as ColumnCorrelationProvider, $c36af3ba15da093b$export$21398703d3a9bb4d as useCorrelationMapStore, $ec03b0c93e1da04f$export$1e8149fc0d15fed0 as InsetMap, $25e107971dfb4328$export$d2995719c3a4ae17 as buildColumnsStyle};\n//# sourceMappingURL=column-views.447008d0.js.map\n","export * from \"./column-navigation\";\nexport * from \"./column-correlation\";\nexport * from \"./_shared\";\n"],"names":["$parcel$exportWildcard","dest","source","Object","keys","forEach","key","prototype","hasOwnProperty","call","defineProperty","enumerable","get","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","err","Error","code","register","$4a84f205caf763c1$exports","$34Mx7","$dYjy7","$6Tim5","$44d1d5e5d8e823d1$export$821baedf611249f3","ColumnNavigationMap","$5a7fd801cb316afa$export$c4313db718750a5a","ResizableMapFrame","$5a7fd801cb316afa$export$9595c40c7a4c4f7b","ColumnNavigationSVGMap","$372e0c9189556f66$export$2254347cd20e6080","MeasurementsLayer","$372e0c9189556f66$export$f177ff57c101017a","ColumnFeatures","$372e0c9189556f66$export$8c41dd563753848","ColumnKeyboardNavigation","$372e0c9189556f66$export$f02cc02ad0e0bba3","Columns","$372e0c9189556f66$export$4d8f6e6df85d9012","ColumnCenters","$372e0c9189556f66$export$b9d912252344e099","CurrentColumn","$2e0f3abda6f981c3$export$8e7d97509e84cc49","ColumnCorrelationMap","$c36af3ba15da093b$export$72ffe141ebf87ef1","ColumnCorrelationProvider","$c36af3ba15da093b$export$21398703d3a9bb4d","useCorrelationMapStore","$ec03b0c93e1da04f$export$1e8149fc0d15fed0","InsetMap","$25e107971dfb4328$export$d2995719c3a4ae17","buildColumnsStyle"],"version":3,"file":"column-views.447008d0.js.map","sourceRoot":"../../../../"}
1
+ {"mappings":"A,M,6C,A,O,6C,A,O,6C,C,S,E,C,C,C,E,O,O,I,C,G,O,C,S,C,E,Y,G,A,e,G,O,S,C,c,C,I,C,E,I,O,c,C,E,E,C,W,C,E,I,W,O,C,C,E,A,C,E,G,C,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,I,E,C,E,E,E,S,E,E,S,E,E,S,E,E,G,E,E,G,E,E,U,6C,mB,C,6C,iB,C,6C,sB,C,6C,iB,C,6C,c,C,4C,wB,C,6C,O,C,6C,a,C,6C,a,C,6C,oB,C,6C,yB,C,6C,sB,C,6C,Q,C,6C,iB","sources":["<anon>","packages/column-views/src/maps/index.ts"],"sourcesContent":["import \"./column-views.15b5cecc.js\";\nimport \"./column-views.da902c44.js\";\nimport \"./column-views.5fcd2be6.js\";\n\n\nfunction $parcel$exportWildcard(dest, source) {\n Object.keys(source).forEach(function(key) {\n if (key === 'default' || key === '__esModule' || Object.prototype.hasOwnProperty.call(dest, key)) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function get() {\n return source[key];\n }\n });\n });\n\n return dest;\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequirea149\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequirea149\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nvar $4a84f205caf763c1$exports = {};\n\nvar $34Mx7 = parcelRequire(\"34Mx7\");\n\nvar $dYjy7 = parcelRequire(\"dYjy7\");\n\nvar $6Tim5 = parcelRequire(\"6Tim5\");\n$parcel$exportWildcard($4a84f205caf763c1$exports, $34Mx7);\n$parcel$exportWildcard($4a84f205caf763c1$exports, $dYjy7);\n$parcel$exportWildcard($4a84f205caf763c1$exports, $6Tim5);\n\n\nexport {$44d1d5e5d8e823d1$export$821baedf611249f3 as ColumnNavigationMap, $5a7fd801cb316afa$export$c4313db718750a5a as ResizableMapFrame, $5a7fd801cb316afa$export$9595c40c7a4c4f7b as ColumnNavigationSVGMap, $372e0c9189556f66$export$2254347cd20e6080 as MeasurementsLayer, $372e0c9189556f66$export$f177ff57c101017a as ColumnFeatures, $372e0c9189556f66$export$8c41dd563753848 as ColumnKeyboardNavigation, $372e0c9189556f66$export$f02cc02ad0e0bba3 as Columns, $372e0c9189556f66$export$4d8f6e6df85d9012 as ColumnCenters, $372e0c9189556f66$export$b9d912252344e099 as CurrentColumn, $2e0f3abda6f981c3$export$8e7d97509e84cc49 as ColumnCorrelationMap, $c36af3ba15da093b$export$72ffe141ebf87ef1 as ColumnCorrelationProvider, $c36af3ba15da093b$export$21398703d3a9bb4d as useCorrelationMapStore, $ec03b0c93e1da04f$export$1e8149fc0d15fed0 as InsetMap, $25e107971dfb4328$export$d2995719c3a4ae17 as buildColumnsStyle};\n//# sourceMappingURL=column-views.cf41a6d7.js.map\n","export * from \"./column-navigation\";\nexport * from \"./column-correlation\";\nexport * from \"./_shared\";\n"],"names":["$parcel$exportWildcard","dest","source","Object","keys","forEach","key","prototype","hasOwnProperty","call","defineProperty","enumerable","get","$parcel$global","globalThis","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","err","Error","code","register","$4a84f205caf763c1$exports","$34Mx7","$dYjy7","$6Tim5","$44d1d5e5d8e823d1$export$821baedf611249f3","ColumnNavigationMap","$5a7fd801cb316afa$export$c4313db718750a5a","ResizableMapFrame","$5a7fd801cb316afa$export$9595c40c7a4c4f7b","ColumnNavigationSVGMap","$372e0c9189556f66$export$2254347cd20e6080","MeasurementsLayer","$372e0c9189556f66$export$f177ff57c101017a","ColumnFeatures","$372e0c9189556f66$export$8c41dd563753848","ColumnKeyboardNavigation","$372e0c9189556f66$export$f02cc02ad0e0bba3","Columns","$372e0c9189556f66$export$4d8f6e6df85d9012","ColumnCenters","$372e0c9189556f66$export$b9d912252344e099","CurrentColumn","$2e0f3abda6f981c3$export$8e7d97509e84cc49","ColumnCorrelationMap","$c36af3ba15da093b$export$72ffe141ebf87ef1","ColumnCorrelationProvider","$c36af3ba15da093b$export$21398703d3a9bb4d","useCorrelationMapStore","$ec03b0c93e1da04f$export$1e8149fc0d15fed0","InsetMap","$25e107971dfb4328$export$d2995719c3a4ae17","buildColumnsStyle"],"version":3,"file":"column-views.cf41a6d7.js.map","sourceRoot":"../../../../"}
@@ -1,2 +1,2 @@
1
- import"./column-views.021a6961.js";import"./column-views.a596b1f5.js";import"./column-views.dbb4a46b.js";import"./column-views.7f9c7448.js";import{ColumnAxisType as e}from"@macrostrat/column-components";import{useMemo as t}from"react";function o(e,t){return Object.keys(t).forEach(function(o){"default"===o||"__esModule"===o||Object.prototype.hasOwnProperty.call(e,o)||Object.defineProperty(e,o,{enumerable:!0,get:function(){return t[o]}})}),e}function a(e,t,o,a){Object.defineProperty(e,t,{get:o,set:a,enumerable:!0,configurable:!0})}var r=globalThis,n={},s={},i=r.parcelRequirea149;null==i&&((i=function(e){if(e in n)return n[e].exports;if(e in s){var t=s[e];delete s[e];var o={id:e,exports:{}};return n[e]=o,t.call(o.exports,o,o.exports),o.exports}var a=Error("Cannot find module '"+e+"'");throw a.code="MODULE_NOT_FOUND",a}).register=function(e,t){s[e]=t},r.parcelRequirea149=i),i.register;var c={};a(c,"usePreparedColumnUnits",()=>b),a(c,"prepareColumnUnits",()=>m),a(c,"preprocessUnits",()=>i("ickj2").preprocessUnits);var p=i("ickj2"),l=i("bBAza"),f=i("iWhRv"),u=i("76iYI");function b(e,o){return t(()=>m(e,o),[e,...Object.values(o)])}function m(t,o){let a,{t_age:r,b_age:n,t_pos:s,b_pos:i}=o,{mergeSections:c=f.MergeSectionsMode.OVERLAPPING,axisType:u,unconformityHeight:b,collapseSmallUnconformities:m=!1,hybridScale:g,scale:$}=o,d=null;if(null!=$){let t=$.domain();u==e.AGE?(null==r&&(r=Math.min(...t)),null==n&&(n=Math.max(...t)),d=Math.abs($(n)-$(r))):(null==s&&(s=Math.min(...t)),null==i&&(i=Math.max(...t)),d=Math.abs($(i)-$(s)))}let _=t.map(p.preprocessSectionUnit);if(_=_.filter(t=>u==e.AGE?(0,f.agesOverlap)(t,{t_age:r,b_age:n}):(0,f.unitsOverlap)(t,{t_pos:s,b_pos:i},u)),c==f.MergeSectionsMode.ALL){let[e,t]=(0,p.getSectionPosRange)(_,u),[o,r]=(0,p.getSectionAgeRange)(_);a=[{section_id:0,t_pos:t,b_pos:e,t_age:r,b_age:o,units:_}]}else a=u==e.AGE?(0,p.groupUnitsIntoSectionsBySectionID)(_,u):(0,p.groupUnitsIntoSectionsByOverlap)(_,u);for(let t of a)u==e.AGE?(t.t_age=Math.max(t.t_age,r??-1/0),t.b_age=Math.min(t.b_age,n??1/0)):u==e.DEPTH?(t.t_pos=Math.max(t.t_pos,s??-1/0),t.b_pos=Math.min(t.b_pos,i??1/0)):u==e.HEIGHT&&(t.t_pos=Math.max(t.t_pos,s??-1/0),t.b_pos=Math.min(t.b_pos,i??1/0));let h=a;c==f.MergeSectionsMode.OVERLAPPING&&u==e.AGE&&(h=(0,p.mergeOverlappingSections)(h)),h=h.filter(e=>null!=e);let x=(0,l.computeSectionHeights)(h,o);if(m&&null==g){let e=b??30;"number"==typeof m&&(e=m),x=(0,l.collapseUnconformitiesByPixelHeight)(x,e,o)}let{totalHeight:M,sections:S}=(0,l.finalizeSectionHeights)(x,b),H=S.map(e=>({...e,units:(0,p.preprocessUnits)(e,u)}));return{units:H.reduce((e,t)=>{let{units:o}=t;for(let t of o)e.push(t);return e},[]),totalHeight:d??M,sections:H}}o(c,f),o(c,u);export{b as usePreparedColumnUnits,m as prepareColumnUnits,$57278f42f24b59e5$export$55543e159517d62d as preprocessUnits,$f811753598b339f3$export$e1644389ce074058 as MergeSectionsMode,$f811753598b339f3$export$f1a15f539858307 as unitsOverlap,$f811753598b339f3$export$70e712e2ac0237a as getUnitHeightRange,$f811753598b339f3$export$d92a67740c050efb as agesOverlap,$f811753598b339f3$export$441710fb21b4ae09 as getPositionWithinUnit,$f811753598b339f3$export$ab14c04795685c55 as createUnitSorter,$f811753598b339f3$export$d0c8ecbd4ed8940c as ensureArray,$f811753598b339f3$export$97de5b0a6b4e4dac as ensureRealFloat,$6a8fb6360a4f5dac$export$45e8e2d7a1794c23 as HybridScaleType,$6a8fb6360a4f5dac$export$e40aae6f0de9bb95 as HeightMethod};
2
- //# sourceMappingURL=column-views.5fd6e11a.js.map
1
+ import"./column-views.40e758b3.js";import"./column-views.ba9108fe.js";import"./column-views.dbb4a46b.js";import"./column-views.7f9c7448.js";import{ColumnAxisType as e}from"@macrostrat/column-components";import{useMemo as t}from"react";function o(e,t){return Object.keys(t).forEach(function(o){"default"===o||"__esModule"===o||Object.prototype.hasOwnProperty.call(e,o)||Object.defineProperty(e,o,{enumerable:!0,get:function(){return t[o]}})}),e}function a(e,t,o,a){Object.defineProperty(e,t,{get:o,set:a,enumerable:!0,configurable:!0})}var r=globalThis,n={},s={},i=r.parcelRequirea149;null==i&&((i=function(e){if(e in n)return n[e].exports;if(e in s){var t=s[e];delete s[e];var o={id:e,exports:{}};return n[e]=o,t.call(o.exports,o,o.exports),o.exports}var a=Error("Cannot find module '"+e+"'");throw a.code="MODULE_NOT_FOUND",a}).register=function(e,t){s[e]=t},r.parcelRequirea149=i),i.register;var c={};a(c,"usePreparedColumnUnits",()=>b),a(c,"prepareColumnUnits",()=>m),a(c,"preprocessUnits",()=>i("ickj2").preprocessUnits);var p=i("ickj2"),l=i("bBAza"),f=i("iWhRv"),u=i("76iYI");function b(e,o){return t(()=>m(e,o),[e,...Object.values(o)])}function m(t,o){let a,{t_age:r,b_age:n,t_pos:s,b_pos:i}=o,{mergeSections:c=f.MergeSectionsMode.OVERLAPPING,axisType:u,unconformityHeight:b,collapseSmallUnconformities:m=!1,hybridScale:g,scale:$}=o,d=null;if(null!=$){let t=$.domain();u==e.AGE?(null==r&&(r=Math.min(...t)),null==n&&(n=Math.max(...t)),d=Math.abs($(n)-$(r))):(null==s&&(s=Math.min(...t)),null==i&&(i=Math.max(...t)),d=Math.abs($(i)-$(s)))}let _=t.map(p.preprocessSectionUnit);if(_=_.filter(t=>u==e.AGE?(0,f.agesOverlap)(t,{t_age:r,b_age:n}):(0,f.unitsOverlap)(t,{t_pos:s,b_pos:i},u)),c==f.MergeSectionsMode.ALL){let[e,t]=(0,p.getSectionPosRange)(_,u),[o,r]=(0,p.getSectionAgeRange)(_);a=[{section_id:0,t_pos:t,b_pos:e,t_age:r,b_age:o,units:_}]}else a=u==e.AGE?(0,p.groupUnitsIntoSectionsBySectionID)(_,u):(0,p.groupUnitsIntoSectionsByOverlap)(_,u);for(let t of a)u==e.AGE?(t.t_age=Math.max(t.t_age,r??-1/0),t.b_age=Math.min(t.b_age,n??1/0)):u==e.DEPTH?(t.t_pos=Math.max(t.t_pos,s??-1/0),t.b_pos=Math.min(t.b_pos,i??1/0)):u==e.HEIGHT&&(t.t_pos=Math.max(t.t_pos,s??-1/0),t.b_pos=Math.min(t.b_pos,i??1/0));let h=a;c==f.MergeSectionsMode.OVERLAPPING&&u==e.AGE&&(h=(0,p.mergeOverlappingSections)(h)),h=h.filter(e=>null!=e);let x=(0,l.computeSectionHeights)(h,o);if(m&&null==g){let e=b??30;"number"==typeof m&&(e=m),x=(0,l.collapseUnconformitiesByPixelHeight)(x,e,o)}let{totalHeight:M,sections:S}=(0,l.finalizeSectionHeights)(x,b),H=S.map(e=>({...e,units:(0,p.preprocessUnits)(e,u)}));return{units:H.reduce((e,t)=>{let{units:o}=t;for(let t of o)e.push(t);return e},[]),totalHeight:d??M,sections:H}}o(c,f),o(c,u);export{b as usePreparedColumnUnits,m as prepareColumnUnits,$57278f42f24b59e5$export$55543e159517d62d as preprocessUnits,$f811753598b339f3$export$e1644389ce074058 as MergeSectionsMode,$f811753598b339f3$export$f1a15f539858307 as unitsOverlap,$f811753598b339f3$export$70e712e2ac0237a as getUnitHeightRange,$f811753598b339f3$export$d92a67740c050efb as agesOverlap,$f811753598b339f3$export$441710fb21b4ae09 as getPositionWithinUnit,$f811753598b339f3$export$ab14c04795685c55 as createUnitSorter,$f811753598b339f3$export$d0c8ecbd4ed8940c as ensureArray,$f811753598b339f3$export$97de5b0a6b4e4dac as ensureRealFloat,$6a8fb6360a4f5dac$export$45e8e2d7a1794c23 as HybridScaleType,$6a8fb6360a4f5dac$export$e40aae6f0de9bb95 as HeightMethod};
2
+ //# sourceMappingURL=column-views.d22bf15c.js.map