@macrostrat/map-interface 1.5.0 → 1.5.2

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 (85) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/dist/cjs/index.js +1 -1
  3. package/dist/cjs/map-interface.07a195a5.js +14 -0
  4. package/dist/cjs/map-interface.07a195a5.js.map +1 -0
  5. package/dist/cjs/map-interface.1bfa8ff4.css +22 -0
  6. package/dist/cjs/map-interface.1bfa8ff4.css.map +1 -0
  7. package/dist/cjs/{map-interface.5737346f.js → map-interface.533a7323.js} +2 -2
  8. package/dist/cjs/{map-interface.5737346f.js.map → map-interface.533a7323.js.map} +1 -1
  9. package/dist/cjs/{map-interface.29e156db.js → map-interface.5c8f9bde.js} +2 -2
  10. package/dist/{esm/map-interface.035e87bf.js.map → cjs/map-interface.5c8f9bde.js.map} +1 -1
  11. package/dist/cjs/{map-interface.3eb3ffd1.js → map-interface.5f0bd31b.js} +34 -15
  12. package/dist/cjs/map-interface.5f0bd31b.js.map +1 -0
  13. package/dist/cjs/{map-interface.3f968b46.js → map-interface.727092bc.js} +2 -2
  14. package/dist/cjs/{map-interface.3f968b46.js.map → map-interface.727092bc.js.map} +1 -1
  15. package/dist/cjs/{map-interface.134ad930.js → map-interface.744b121c.js} +8 -1
  16. package/dist/cjs/map-interface.744b121c.js.map +1 -0
  17. package/dist/cjs/{map-interface.cc9ad5c6.js → map-interface.84080d80.js} +3 -2
  18. package/dist/cjs/map-interface.84080d80.js.map +1 -0
  19. package/dist/cjs/{map-interface.2a32a290.js → map-interface.b6e70f1b.js} +2 -2
  20. package/dist/cjs/{map-interface.2a32a290.js.map → map-interface.b6e70f1b.js.map} +1 -1
  21. package/dist/cjs/map-interface.fba5cf13.js +136 -0
  22. package/dist/cjs/map-interface.fba5cf13.js.map +1 -0
  23. package/dist/cjs/map-interface.fd9ad74c.js +34 -0
  24. package/dist/cjs/map-interface.fd9ad74c.js.map +1 -0
  25. package/dist/esm/index.d.ts +1 -0
  26. package/dist/esm/index.d.ts.map +1 -1
  27. package/dist/esm/index.js +2 -2
  28. package/dist/esm/map-interface.15ee4b90.js +16 -0
  29. package/dist/esm/map-interface.15ee4b90.js.map +1 -0
  30. package/dist/esm/{map-interface.f5dccd21.js → map-interface.20193fc6.js} +2 -2
  31. package/dist/esm/{map-interface.f5dccd21.js.map → map-interface.20193fc6.js.map} +1 -1
  32. package/dist/esm/{map-interface.2b94a8ad.js → map-interface.2daa72f9.js} +2 -1
  33. package/dist/esm/map-interface.2daa72f9.js.map +1 -0
  34. package/dist/esm/map-interface.6981dd47.js +131 -0
  35. package/dist/esm/map-interface.6981dd47.js.map +1 -0
  36. package/dist/esm/map-interface.69a566f3.js +25 -0
  37. package/dist/esm/map-interface.69a566f3.js.map +1 -0
  38. package/dist/esm/{map-interface.ba171178.js → map-interface.6c0f5044.js} +2 -2
  39. package/dist/esm/{map-interface.ba171178.js.map → map-interface.6c0f5044.js.map} +1 -1
  40. package/dist/esm/{map-interface.6d7e89e5.js → map-interface.9123f5c8.js} +2 -2
  41. package/dist/esm/{map-interface.6d7e89e5.js.map → map-interface.9123f5c8.js.map} +1 -1
  42. package/dist/esm/{map-interface.c257cac1.js → map-interface.b7a0dc07.js} +2 -2
  43. package/dist/esm/{map-interface.c257cac1.js.map → map-interface.b7a0dc07.js.map} +1 -1
  44. package/dist/esm/map-interface.ba2faf2f.js +7 -0
  45. package/dist/{cjs/map-interface.29e156db.js.map → esm/map-interface.ba2faf2f.js.map} +1 -1
  46. package/dist/esm/{map-interface.78cdcaeb.js → map-interface.e5607033.js} +35 -10
  47. package/dist/esm/map-interface.e5607033.js.map +1 -0
  48. package/dist/node/index.js +1 -1
  49. package/dist/node/index.js.map +1 -1
  50. package/dist/node/map-interface.2dde967a.js +2 -0
  51. package/dist/node/map-interface.2dde967a.js.map +1 -0
  52. package/dist/node/map-interface.4dfbbb99.css +2 -0
  53. package/dist/node/map-interface.4dfbbb99.css.map +1 -0
  54. package/dist/node/{map-interface.42e8f2ba.js → map-interface.5fbb81b1.js} +2 -2
  55. package/dist/node/{map-interface.42e8f2ba.js.map → map-interface.5fbb81b1.js.map} +1 -1
  56. package/dist/node/{map-interface.dd613f56.js → map-interface.995ff472.js} +2 -2
  57. package/dist/node/{map-interface.dd613f56.js.map → map-interface.995ff472.js.map} +1 -1
  58. package/dist/node/map-interface.bbeeb59c.js +2 -0
  59. package/dist/node/map-interface.bbeeb59c.js.map +1 -0
  60. package/dist/node/map-interface.c8139e21.js +2 -0
  61. package/dist/node/map-interface.c8139e21.js.map +1 -0
  62. package/dist/node/{map-interface.792ebe85.js → map-interface.d4cd446a.js} +2 -2
  63. package/dist/node/{map-interface.792ebe85.js.map → map-interface.d4cd446a.js.map} +1 -1
  64. package/dist/node/{map-interface.8764423a.js → map-interface.ee63d11f.js} +2 -2
  65. package/dist/node/{map-interface.8764423a.js.map → map-interface.ee63d11f.js.map} +1 -1
  66. package/dist/node/map-interface.fbe01b07.js +2 -0
  67. package/dist/node/map-interface.fbe01b07.js.map +1 -0
  68. package/dist/node/{map-interface.efc5dd17.js → map-interface.fcb95c23.js} +2 -2
  69. package/dist/node/{map-interface.efc5dd17.js.map → map-interface.fcb95c23.js.map} +1 -1
  70. package/dist/node/map-interface.fecb181b.js +2 -0
  71. package/dist/node/map-interface.fecb181b.js.map +1 -0
  72. package/package.json +3 -3
  73. package/src/map-panel/components/info-drawer/fossil-collections/collections.tsx +1 -0
  74. package/src/map-panel/components/info-drawer/index.ts +41 -6
  75. package/src/map-panel/utils/fossils.ts +2 -0
  76. package/dist/cjs/map-interface.134ad930.js.map +0 -1
  77. package/dist/cjs/map-interface.3eb3ffd1.js.map +0 -1
  78. package/dist/cjs/map-interface.cc9ad5c6.js.map +0 -1
  79. package/dist/esm/map-interface.035e87bf.js +0 -6
  80. package/dist/esm/map-interface.2b94a8ad.js.map +0 -1
  81. package/dist/esm/map-interface.78cdcaeb.js.map +0 -1
  82. package/dist/node/map-interface.43014209.js +0 -2
  83. package/dist/node/map-interface.43014209.js.map +0 -1
  84. package/dist/node/map-interface.5f10b499.js +0 -2
  85. package/dist/node/map-interface.5f10b499.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -4,9 +4,17 @@ All notable changes to this project will be documented in this file. The format
4
4
  is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this
5
5
  project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [1.5.2] - 2025-07-23
8
+
9
+ Map panel supports fossils clicks now
10
+
11
+ ## [1.5.1] - 2025-07-16
12
+
13
+ InfoDrawer exported correctly
14
+
7
15
  ## [1.5.0] - 2025-07-14
8
16
 
9
- Added map-panel component
17
+ Added InfoDrawer component
10
18
 
11
19
  Need to
12
20
 
package/dist/cjs/index.js CHANGED
@@ -8,7 +8,7 @@ var $2611a7b4364593e5$exports = require("./map-interface.cf6c9a68.js");
8
8
  var $3490fc4f4bda12f7$exports = require("./map-interface.ffb109ef.js");
9
9
  var $860d9939f7032c69$exports = require("./map-interface.64823b7c.js");
10
10
  var $750d69d73bfbdc9a$exports = require("./map-interface.354aaa39.js");
11
- var $4646ca2305d925eb$exports = require("./map-interface.29e156db.js");
11
+ var $4646ca2305d925eb$exports = require("./map-interface.5c8f9bde.js");
12
12
 
13
13
 
14
14
  function $parcel$exportWildcard(dest, source) {
@@ -0,0 +1,14 @@
1
+
2
+ function $parcel$export(e, n, v, s) {
3
+ Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
4
+ }
5
+
6
+ $parcel$export(module.exports, "fossil-collection", () => $070fa3d8343fbd19$export$eaae644b58f26966, (v) => $070fa3d8343fbd19$export$eaae644b58f26966 = v);
7
+ $parcel$export(module.exports, "pbdb-panel-header", () => $070fa3d8343fbd19$export$3c7ca3cfd958f189, (v) => $070fa3d8343fbd19$export$3c7ca3cfd958f189 = v);
8
+ var $070fa3d8343fbd19$export$eaae644b58f26966;
9
+ var $070fa3d8343fbd19$export$3c7ca3cfd958f189;
10
+ $070fa3d8343fbd19$export$eaae644b58f26966 = `_8WYhnW_fossil-collection`;
11
+ $070fa3d8343fbd19$export$3c7ca3cfd958f189 = `_8WYhnW_pbdb-panel-header`;
12
+
13
+
14
+ //# sourceMappingURL=map-interface.07a195a5.js.map
@@ -0,0 +1 @@
1
+ {"mappings":";;;;;;;AAAA,IAAA;AACA,IAAA;AADA,4CAAsC,CAAC,yBAAyB,CAAC;AACjE,4CAAsC,CAAC,yBAAyB,CAAC","sources":["packages/map-interface/src/map-panel/components/info-drawer/fossil-collections/main.module.sass"],"sourcesContent":["\ndiv.pbdb-panel-header\n background-color: var(--accent-secondary-color)\n display: flex\n flex-direction: row\n justify-content: space-between\n align-items: baseline\n margin: 0 -10px\n padding: 5px 10px\n h4\n margin: 0\n\n.fossil-collection\n margin-bottom: 1em\n :global(.bp5-tab-panel)\n margin-top: 0px\n"],"names":[],"version":3,"file":"map-interface.07a195a5.js.map"}
@@ -0,0 +1,22 @@
1
+ div._8WYhnW_pbdb-panel-header {
2
+ background-color: var(--accent-secondary-color);
3
+ flex-direction: row;
4
+ justify-content: space-between;
5
+ align-items: baseline;
6
+ margin: 0 -10px;
7
+ padding: 5px 10px;
8
+ display: flex;
9
+ }
10
+
11
+ div._8WYhnW_pbdb-panel-header h4 {
12
+ margin: 0;
13
+ }
14
+
15
+ ._8WYhnW_fossil-collection {
16
+ margin-bottom: 1em;
17
+ }
18
+
19
+ ._8WYhnW_fossil-collection .bp5-tab-panel {
20
+ margin-top: 0;
21
+ }
22
+ /*# sourceMappingURL=map-interface.1bfa8ff4.css.map */
@@ -0,0 +1 @@
1
+ {"mappings":"AACA;;;;;;;;;;AAQE;;;;AAGF;;;;AAEE","sources":["packages/map-interface/src/map-panel/components/info-drawer/fossil-collections/main.module.sass"],"sourcesContent":["\ndiv.pbdb-panel-header\n background-color: var(--accent-secondary-color)\n display: flex\n flex-direction: row\n justify-content: space-between\n align-items: baseline\n margin: 0 -10px\n padding: 5px 10px\n h4\n margin: 0\n\n.fossil-collection\n margin-bottom: 1em\n :global(.bp5-tab-panel)\n margin-top: 0px\n"],"names":[],"version":3,"file":"map-interface.1bfa8ff4.css.map"}
@@ -1,4 +1,4 @@
1
- var $3ffaa4c6fbcbe662$exports = require("./map-interface.cc9ad5c6.js");
1
+ var $3ffaa4c6fbcbe662$exports = require("./map-interface.84080d80.js");
2
2
  var $LZ8LT$macrostrathyper = require("@macrostrat/hyper");
3
3
  var $LZ8LT$macrostratmapinterface = require("@macrostrat/map-interface");
4
4
 
@@ -110,4 +110,4 @@ function $b951c9e8f692a209$var$MapAttribute(props) {
110
110
  }
111
111
 
112
112
 
113
- //# sourceMappingURL=map-interface.5737346f.js.map
113
+ //# sourceMappingURL=map-interface.533a7323.js.map
@@ -1 +1 @@
1
- {"mappings":";;;;;;;;;;;;;;;;;AAIO,SAAS,0CAAqB,KAAK;IACxC,MAAM,WAAE,OAAO,cAAE,UAAU,EAAE,GAAG;IAChC,IAAI,SAAS,WAAW,QAAQ,CAAC,YAAY,OAAO;IAEpD,OAAO,CAAA,GAAA,gDAAA,EACL,CAAA,GAAA,4CAAa,GACb;QACE,SAAS;YAAE,MAAM;QAAiB;QAClC,OAAO;QACP,UAAU;IACZ,GACA;QAAC,CAAA,GAAA,gDAAA,EAAE,EAAE,CAAC,cAAc,MAAM,kCAAY;wBAAE;QAAW;KAAG;AAE1D;AAEA,SAAS,iCAAW,cAAE,UAAU,EAAE;IAChC,OAAO,CAAA,GAAA,gDAAA,EAAE,mBAAmB;QAC1B,CAAA,GAAA,gDAAA,EAAE,KAAK;YAAE,MAAM,cAAc,WAAW,MAAM;QAAC,GAAG;QAClD,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,WAAW,QAAQ;aAAC;QAChC;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,WAAW,MAAM;aAAC;QAC9B;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,WAAW,SAAS;aAAC;QACjC;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,WAAW,YAAY;aAAC;QACpC;QACA,CAAA,GAAA,gDAAA,EAAE,EAAE,CAAC,WAAW,aAAa,IAAI,WAAW,SAAS,EAAE,oCAAc;YACnE,OAAO;YACP,SAAS;gBACP,CAAA,GAAA,mCAAQ,EAAE,SAAS,WAAW,aAAa;gBAC3C;gBACA,CAAA,GAAA,mCAAQ,EAAE,SAAS,WAAW,SAAS;gBACvC,CAAA,GAAA,gDAAA,EAAE,eAAe;oBAAC;iBAAI;aACvB;QACH;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBACP,WAAW,KAAK;gBAChB;gBACA,WAAW,KAAK;gBAChB;gBACA,CAAA,GAAA,gDAAA,EAAE,eAAe;oBAAC;iBAAK;aACxB;QACH;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,CAAA,GAAA,mCAAQ,EAAE,WAAW,QAAQ;gBAAG;gBAAK,CAAA,GAAA,gDAAA,EAAE,eAAe;oBAAC;iBAAM;aAAE;QAC3E;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,CAAA,GAAA,mCAAQ,EAAE,WAAW,gBAAgB;aAAE;QACnD;KACD;AACH;AAEA,SAAS,mCAAa,KAAK;IACzB,OAAO,CAAA,GAAA,gDAAA,EAAE,uBAAuB;QAC9B,CAAA,GAAA,gDAAA,EAAE,aAAa;YAAC,MAAM,KAAK;SAAC;WACzB,MAAM,OAAO;KACjB;AACH","sources":["packages/map-interface/src/map-panel/components/info-drawer/reg-strat.ts"],"sourcesContent":["import h from \"@macrostrat/hyper\";\nimport { ExpansionPanel } from \"@macrostrat/map-interface\";\nimport { addCommas } from \"../../utils\";\n\nexport function RegionalStratigraphy(props) {\n const { mapInfo, columnInfo } = props;\n if (mapInfo?.mapData == null || !columnInfo) return null;\n\n return h(\n ExpansionPanel,\n {\n classes: { root: \"regional-panel\" },\n title: \"Regional stratigraphy\",\n expanded: true,\n },\n [h.if(columnInfo != null)(ColumnData, { columnInfo })],\n );\n}\n\nfunction ColumnData({ columnInfo }) {\n return h(\"div.column-data\", [\n h(\"a\", { href: \"/columns/\" + columnInfo.col_id }, \"View column page\"),\n h(MapAttribute, {\n label: \"Name: \",\n content: [columnInfo.col_name],\n }),\n h(MapAttribute, {\n label: \"Column ID: \",\n content: [columnInfo.col_id],\n }),\n h(MapAttribute, {\n label: \"Group: \",\n content: [columnInfo.col_group],\n }),\n h(MapAttribute, {\n label: \"Group ID: \",\n content: [columnInfo.col_group_id],\n }),\n h.if(columnInfo.min_min_thick || columnInfo.max_thick)(MapAttribute, {\n label: \"Thickness: \",\n content: [\n addCommas(parseInt(columnInfo.min_min_thick)),\n \" - \",\n addCommas(parseInt(columnInfo.max_thick)),\n h(\"span.age-ma\", [\"m\"]),\n ],\n }),\n h(MapAttribute, {\n label: \"Age: \",\n content: [\n columnInfo.b_age,\n \" - \",\n columnInfo.t_age,\n \" \",\n h(\"span.age-ma\", [\"Ma\"]),\n ],\n }),\n h(MapAttribute, {\n label: \"Area: \",\n content: [addCommas(columnInfo.col_area), \" \", h(\"span.age-ma\", [\"km2\"])],\n }),\n h(MapAttribute, {\n label: \"Fossil collections: \",\n content: [addCommas(columnInfo.pbdb_collections)],\n }),\n ]);\n}\n\nfunction MapAttribute(props) {\n return h(\"div.map-source-attr\", [\n h(\"span.attr\", [props.label]),\n ...props.content,\n ]);\n}\n"],"names":[],"version":3,"file":"map-interface.5737346f.js.map"}
1
+ {"mappings":";;;;;;;;;;;;;;;;;AAIO,SAAS,0CAAqB,KAAK;IACxC,MAAM,WAAE,OAAO,cAAE,UAAU,EAAE,GAAG;IAChC,IAAI,SAAS,WAAW,QAAQ,CAAC,YAAY,OAAO;IAEpD,OAAO,CAAA,GAAA,gDAAA,EACL,CAAA,GAAA,4CAAa,GACb;QACE,SAAS;YAAE,MAAM;QAAiB;QAClC,OAAO;QACP,UAAU;IACZ,GACA;QAAC,CAAA,GAAA,gDAAA,EAAE,EAAE,CAAC,cAAc,MAAM,kCAAY;wBAAE;QAAW;KAAG;AAE1D;AAEA,SAAS,iCAAW,cAAE,UAAU,EAAE;IAChC,OAAO,CAAA,GAAA,gDAAA,EAAE,mBAAmB;QAC1B,CAAA,GAAA,gDAAA,EAAE,KAAK;YAAE,MAAM,cAAc,WAAW,MAAM;QAAC,GAAG;QAClD,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,WAAW,QAAQ;aAAC;QAChC;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,WAAW,MAAM;aAAC;QAC9B;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,WAAW,SAAS;aAAC;QACjC;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,WAAW,YAAY;aAAC;QACpC;QACA,CAAA,GAAA,gDAAA,EAAE,EAAE,CAAC,WAAW,aAAa,IAAI,WAAW,SAAS,EAAE,oCAAc;YACnE,OAAO;YACP,SAAS;gBACP,CAAA,GAAA,mCAAQ,EAAE,SAAS,WAAW,aAAa;gBAC3C;gBACA,CAAA,GAAA,mCAAQ,EAAE,SAAS,WAAW,SAAS;gBACvC,CAAA,GAAA,gDAAA,EAAE,eAAe;oBAAC;iBAAI;aACvB;QACH;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBACP,WAAW,KAAK;gBAChB;gBACA,WAAW,KAAK;gBAChB;gBACA,CAAA,GAAA,gDAAA,EAAE,eAAe;oBAAC;iBAAK;aACxB;QACH;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,CAAA,GAAA,mCAAQ,EAAE,WAAW,QAAQ;gBAAG;gBAAK,CAAA,GAAA,gDAAA,EAAE,eAAe;oBAAC;iBAAM;aAAE;QAC3E;QACA,CAAA,GAAA,gDAAA,EAAE,oCAAc;YACd,OAAO;YACP,SAAS;gBAAC,CAAA,GAAA,mCAAQ,EAAE,WAAW,gBAAgB;aAAE;QACnD;KACD;AACH;AAEA,SAAS,mCAAa,KAAK;IACzB,OAAO,CAAA,GAAA,gDAAA,EAAE,uBAAuB;QAC9B,CAAA,GAAA,gDAAA,EAAE,aAAa;YAAC,MAAM,KAAK;SAAC;WACzB,MAAM,OAAO;KACjB;AACH","sources":["packages/map-interface/src/map-panel/components/info-drawer/reg-strat.ts"],"sourcesContent":["import h from \"@macrostrat/hyper\";\nimport { ExpansionPanel } from \"@macrostrat/map-interface\";\nimport { addCommas } from \"../../utils\";\n\nexport function RegionalStratigraphy(props) {\n const { mapInfo, columnInfo } = props;\n if (mapInfo?.mapData == null || !columnInfo) return null;\n\n return h(\n ExpansionPanel,\n {\n classes: { root: \"regional-panel\" },\n title: \"Regional stratigraphy\",\n expanded: true,\n },\n [h.if(columnInfo != null)(ColumnData, { columnInfo })],\n );\n}\n\nfunction ColumnData({ columnInfo }) {\n return h(\"div.column-data\", [\n h(\"a\", { href: \"/columns/\" + columnInfo.col_id }, \"View column page\"),\n h(MapAttribute, {\n label: \"Name: \",\n content: [columnInfo.col_name],\n }),\n h(MapAttribute, {\n label: \"Column ID: \",\n content: [columnInfo.col_id],\n }),\n h(MapAttribute, {\n label: \"Group: \",\n content: [columnInfo.col_group],\n }),\n h(MapAttribute, {\n label: \"Group ID: \",\n content: [columnInfo.col_group_id],\n }),\n h.if(columnInfo.min_min_thick || columnInfo.max_thick)(MapAttribute, {\n label: \"Thickness: \",\n content: [\n addCommas(parseInt(columnInfo.min_min_thick)),\n \" - \",\n addCommas(parseInt(columnInfo.max_thick)),\n h(\"span.age-ma\", [\"m\"]),\n ],\n }),\n h(MapAttribute, {\n label: \"Age: \",\n content: [\n columnInfo.b_age,\n \" - \",\n columnInfo.t_age,\n \" \",\n h(\"span.age-ma\", [\"Ma\"]),\n ],\n }),\n h(MapAttribute, {\n label: \"Area: \",\n content: [addCommas(columnInfo.col_area), \" \", h(\"span.age-ma\", [\"km2\"])],\n }),\n h(MapAttribute, {\n label: \"Fossil collections: \",\n content: [addCommas(columnInfo.pbdb_collections)],\n }),\n ]);\n}\n\nfunction MapAttribute(props) {\n return h(\"div.map-source-attr\", [\n h(\"span.attr\", [props.label]),\n ...props.content,\n ]);\n}\n"],"names":[],"version":3,"file":"map-interface.533a7323.js.map"}
@@ -1,4 +1,4 @@
1
- var $31b5775c3898b308$exports = require("./map-interface.3eb3ffd1.js");
1
+ var $31b5775c3898b308$exports = require("./map-interface.5f0bd31b.js");
2
2
 
3
3
 
4
4
  function $parcel$exportWildcard(dest, source) {
@@ -21,4 +21,4 @@ function $parcel$exportWildcard(dest, source) {
21
21
  $parcel$exportWildcard(module.exports, $31b5775c3898b308$exports);
22
22
 
23
23
 
24
- //# sourceMappingURL=map-interface.29e156db.js.map
24
+ //# sourceMappingURL=map-interface.5c8f9bde.js.map
@@ -1 +1 @@
1
- {"mappings":"","sources":["packages/map-interface/src/map-panel/index.ts"],"sourcesContent":["export * from \"./components/info-drawer\";\n"],"names":[],"version":3,"file":"map-interface.035e87bf.js.map"}
1
+ {"mappings":"","sources":["packages/map-interface/src/map-panel/index.ts"],"sourcesContent":["export * from \"./components/info-drawer\";\n"],"names":[],"version":3,"file":"map-interface.5c8f9bde.js.map"}
@@ -1,10 +1,11 @@
1
- var $8569970142f4fcfc$exports = require("./map-interface.3f968b46.js");
1
+ var $8569970142f4fcfc$exports = require("./map-interface.727092bc.js");
2
2
  var $f71abc758f4a75a8$exports = require("./map-interface.02835ba5.js");
3
3
  require("./map-interface.1be58b40.css");
4
4
  var $f2e0b9e87d965c31$exports = require("./map-interface.9893b047.js");
5
5
  var $cfd1234d8b0afe66$exports = require("./map-interface.ff2231f5.js");
6
- var $b951c9e8f692a209$exports = require("./map-interface.5737346f.js");
6
+ var $b951c9e8f692a209$exports = require("./map-interface.533a7323.js");
7
7
  var $d3d9e7b5fce766d0$exports = require("./map-interface.937c0b90.js");
8
+ var $a0e04359b38d1378$exports = require("./map-interface.fd9ad74c.js");
8
9
  var $kNr5S$macrostrathyper = require("@macrostrat/hyper");
9
10
  var $kNr5S$macrostratmapinterface = require("@macrostrat/map-interface");
10
11
  var $kNr5S$macrostratuicomponents = require("@macrostrat/ui-components");
@@ -14,17 +15,12 @@ function $parcel$interopDefault(a) {
14
15
  return a && a.__esModule ? a.default : a;
15
16
  }
16
17
 
17
- function $parcel$defineInteropFlag(a) {
18
- Object.defineProperty(a, '__esModule', {value: true, configurable: true});
19
- }
20
-
21
18
  function $parcel$export(e, n, v, s) {
22
19
  Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
23
20
  }
24
21
 
25
- $parcel$defineInteropFlag(module.exports);
22
+ $parcel$export(module.exports, "InfoDrawer", () => $31b5775c3898b308$export$6644c89560e2c31f);
26
23
 
27
- $parcel$export(module.exports, "default", () => $31b5775c3898b308$export$2e2bcd8739ae039);
28
24
 
29
25
 
30
26
 
@@ -34,16 +30,18 @@ $parcel$export(module.exports, "default", () => $31b5775c3898b308$export$2e2bcd8
34
30
 
35
31
 
36
32
 
37
- // import { apiV2Prefix, gddDomain } from "@macrostrat-web/settings";
38
33
  const $31b5775c3898b308$var$apiV2Prefix = `https://dev.macrostrat.org/api/v2`;
39
34
  const $31b5775c3898b308$var$gddDomain = `https://xdd.wisc.edu`;
35
+ const $31b5775c3898b308$var$paleobioDomain = `https://paleobiodb.org`;
40
36
  const $31b5775c3898b308$var$h = (0, ($parcel$interopDefault($kNr5S$macrostrathyper))).styled((0, ($parcel$interopDefault($f2e0b9e87d965c31$exports))));
41
- function $31b5775c3898b308$var$InfoDrawer(props) {
37
+ function $31b5775c3898b308$export$6644c89560e2c31f(props) {
42
38
  const { className: className, position: position, zoom: zoom, setSelectedLocation: setSelectedLocation, children: children = null } = props;
43
39
  const { lat: lat, lng: lng } = position;
44
40
  const mapInfo = $31b5775c3898b308$var$fetchMapInfo(lng, lat, zoom);
45
41
  const columnInfo = $31b5775c3898b308$var$fetchColumnInfo(lng, lat);
42
+ const fossilInfo = $31b5775c3898b308$var$fetchFossilInfo(lng, lat);
46
43
  const xddInfo = $31b5775c3898b308$var$fetchXddInfo(mapInfo?.mapData?.[0]?.macrostrat?.strat_names);
44
+ console.log("fossilInfo", fossilInfo);
47
45
  const fetchingMapInfo = mapInfo == null;
48
46
  return $31b5775c3898b308$var$h((0, $kNr5S$macrostratmapinterface.LocationPanel), {
49
47
  className: className,
@@ -61,13 +59,15 @@ function $31b5775c3898b308$var$InfoDrawer(props) {
61
59
  }, $31b5775c3898b308$var$h.if(!fetchingMapInfo)($31b5775c3898b308$var$InfoDrawerMainPanel, {
62
60
  mapInfo: mapInfo,
63
61
  columnInfo: columnInfo,
64
- xddInfo: xddInfo
62
+ xddInfo: xddInfo,
63
+ fossilInfo: fossilInfo
65
64
  })),
66
65
  children
67
66
  ]);
68
67
  }
69
- function $31b5775c3898b308$var$InfoDrawerMainPanel({ mapInfo: mapInfo, columnInfo: columnInfo, xddInfo: xddInfo }) {
68
+ function $31b5775c3898b308$var$InfoDrawerMainPanel({ mapInfo: mapInfo, columnInfo: columnInfo, xddInfo: xddInfo, fossilInfo: fossilInfo }) {
70
69
  if (!mapInfo || !mapInfo.mapData) return null;
70
+ console.log("InfoDrawerMainPanel", fossilInfo);
71
71
  let source = mapInfo && mapInfo.mapData && mapInfo.mapData.length ? mapInfo.mapData[0] : {
72
72
  name: null,
73
73
  descrip: null,
@@ -82,7 +82,10 @@ function $31b5775c3898b308$var$InfoDrawerMainPanel({ mapInfo: mapInfo, columnInf
82
82
  mapInfo: mapInfo,
83
83
  columnInfo: columnInfo
84
84
  }),
85
- // h(FossilCollections, { data: pbdbData, expanded: true }),
85
+ $31b5775c3898b308$var$h((0, $a0e04359b38d1378$exports.FossilCollections), {
86
+ data: fossilInfo,
87
+ expanded: true
88
+ }),
86
89
  $31b5775c3898b308$var$h((0, $8569970142f4fcfc$exports.MacrostratLinkedData), {
87
90
  mapInfo: mapInfo,
88
91
  bedrockMatchExpanded: true,
@@ -96,7 +99,6 @@ function $31b5775c3898b308$var$InfoDrawerMainPanel({ mapInfo: mapInfo, columnInf
96
99
  })
97
100
  ]);
98
101
  }
99
- var $31b5775c3898b308$export$2e2bcd8739ae039 = $31b5775c3898b308$var$InfoDrawer;
100
102
  function $31b5775c3898b308$var$fetchMapInfo(lng, lat, z) {
101
103
  return (0, $kNr5S$macrostratuicomponents.useAPIResult)(`${$31b5775c3898b308$var$apiV2Prefix}/mobile/map_query_v2`, {
102
104
  lng: lng,
@@ -117,6 +119,23 @@ function $31b5775c3898b308$var$fetchXddInfo(stratNames) {
117
119
  term: stratNames?.map((d)=>d.rank_name).join(",")
118
120
  })?.success?.data;
119
121
  }
122
+ function $31b5775c3898b308$var$fetchFossilInfo(lng, lat) {
123
+ const collectionResponse = (0, $kNr5S$macrostratuicomponents.useAPIResult)(`${$31b5775c3898b308$var$paleobioDomain}/data1.2/colls/list.json?lngmin=${lng - 0.1}&lngmax=${lng + 0.1}&latmin=${lat - 0.1}&latmax=${lat + 0.1}`)?.records;
124
+ const occurrences = (0, $kNr5S$macrostratuicomponents.useAPIResult)(`${$31b5775c3898b308$var$paleobioDomain}/data1.2/occs/list.json?lngmin=${lng - 0.1}&lngmax=${lng + 0.1}&latmin=${lat - 0.1}&latmax=${lat + 0.1}`)?.records;
125
+ if (!collectionResponse || !occurrences) return null;
126
+ try {
127
+ return collectionResponse.map((col)=>{
128
+ col.occurrences = [];
129
+ occurrences.forEach((occ)=>{
130
+ if (occ.cid === col.oid) col.occurrences.push(occ);
131
+ });
132
+ return col;
133
+ });
134
+ } catch (error) {
135
+ console.log(error);
136
+ return [];
137
+ }
138
+ }
120
139
 
121
140
 
122
- //# sourceMappingURL=map-interface.3eb3ffd1.js.map
141
+ //# sourceMappingURL=map-interface.5f0bd31b.js.map
@@ -0,0 +1 @@
1
+ {"mappings":"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","sources":["packages/map-interface/src/map-panel/components/info-drawer/index.ts"],"sourcesContent":["import hyper from \"@macrostrat/hyper\";\nimport { LocationPanel } from \"@macrostrat/map-interface\";\nimport { MacrostratLinkedData } from \"./macrostrat-linked\";\nimport { Physiography } from \"./physiography\";\nimport styles from \"./main.module.styl\";\nimport { LoadingArea } from \"../transitions\";\nimport { RegionalStratigraphy } from \"./reg-strat\";\nimport { XddExpansion } from \"./xdd-panel\";\nimport { useAPIResult } from \"@macrostrat/ui-components\";\nimport { FossilCollections } from \"./fossil-collections\";\n\nconst apiV2Prefix = `https://dev.macrostrat.org/api/v2`;\nconst gddDomain = `https://xdd.wisc.edu`;\nconst paleobioDomain = `https://paleobiodb.org`;\n\nconst h = hyper.styled(styles);\n\nexport function InfoDrawer(props) {\n const {\n className,\n position,\n zoom,\n setSelectedLocation,\n children = null,\n } = props;\n\n const { lat, lng } = position;\n\n const mapInfo = fetchMapInfo(lng, lat, zoom);\n const columnInfo = fetchColumnInfo(lng, lat);\n const fossilInfo = fetchFossilInfo(lng, lat);\n const xddInfo = fetchXddInfo(mapInfo?.mapData?.[0]?.macrostrat?.strat_names);\n\n console.log(\"fossilInfo\", fossilInfo);\n\n const fetchingMapInfo = mapInfo == null;\n\n return h(\n LocationPanel,\n {\n className,\n position,\n elevation: mapInfo?.elevation,\n zoom,\n onClose: () => setSelectedLocation(null),\n loading: mapInfo == null,\n showCopyPositionButton: true,\n contentContainer: \"div.infodrawer-content-holder\",\n },\n [\n h(\n LoadingArea,\n { loaded: !fetchingMapInfo, className: \"infodrawer-content\" },\n h.if(!fetchingMapInfo)(InfoDrawerMainPanel, {\n mapInfo,\n columnInfo,\n xddInfo,\n fossilInfo,\n }),\n ),\n children,\n ],\n );\n}\n\nfunction InfoDrawerMainPanel({ mapInfo, columnInfo, xddInfo, fossilInfo }) {\n if (!mapInfo || !mapInfo.mapData) {\n return null;\n }\n\n console.log(\"InfoDrawerMainPanel\", fossilInfo);\n\n let source =\n mapInfo && mapInfo.mapData && mapInfo.mapData.length\n ? mapInfo.mapData[0]\n : {\n name: null,\n descrip: null,\n comments: null,\n liths: [],\n b_int: {},\n t_int: {},\n ref: {},\n };\n\n return h([\n h(RegionalStratigraphy, {\n mapInfo,\n columnInfo,\n }),\n h(FossilCollections, { data: fossilInfo, expanded: true }),\n h(MacrostratLinkedData, {\n mapInfo,\n bedrockMatchExpanded: true,\n source,\n }),\n h.if(xddInfo)(XddExpansion, { xddInfo }),\n h(Physiography, { mapInfo }),\n ]);\n}\n\nfunction fetchMapInfo(lng, lat, z) {\n return useAPIResult(`${apiV2Prefix}/mobile/map_query_v2`, {\n lng,\n lat,\n z,\n })?.success?.data;\n}\n\nfunction fetchColumnInfo(lng, lat) {\n return useAPIResult(`${apiV2Prefix}/columns`, {\n lat,\n lng,\n response: \"long\",\n })?.success?.data?.[0];\n}\n\nfunction fetchXddInfo(stratNames) {\n return useAPIResult(`${gddDomain}/api/v1/snippets`, {\n article_limit: 20,\n term: stratNames?.map((d) => d.rank_name).join(\",\"),\n })?.success?.data;\n}\n\nfunction fetchFossilInfo(lng, lat) {\n const collectionResponse = useAPIResult(\n `${paleobioDomain}/data1.2/colls/list.json?lngmin=${lng - 0.1}&lngmax=${lng + 0.1}&latmin=${lat - 0.1}&latmax=${lat + 0.1}`,\n )?.records;\n\n const occurrences = useAPIResult(\n `${paleobioDomain}/data1.2/occs/list.json?lngmin=${lng - 0.1}&lngmax=${lng + 0.1}&latmin=${lat - 0.1}&latmax=${lat + 0.1}`,\n )?.records;\n\n if (!collectionResponse || !occurrences) {\n return null;\n }\n\n try {\n return collectionResponse.map((col) => {\n col.occurrences = [];\n occurrences.forEach((occ) => {\n if (occ.cid === col.oid) {\n col.occurrences.push(occ);\n }\n });\n return col;\n });\n } catch (error) {\n console.log(error);\n return [];\n }\n}\n"],"names":[],"version":3,"file":"map-interface.5f0bd31b.js.map"}
@@ -1,4 +1,4 @@
1
- var $dd32e7ae54443412$exports = require("./map-interface.2a32a290.js");
1
+ var $dd32e7ae54443412$exports = require("./map-interface.b6e70f1b.js");
2
2
  require("./map-interface.1be58b40.css");
3
3
  var $f2e0b9e87d965c31$exports = require("./map-interface.9893b047.js");
4
4
  var $7j411$macrostrathyper = require("@macrostrat/hyper");
@@ -378,4 +378,4 @@ function $8569970142f4fcfc$var$Economy(props) {
378
378
  }
379
379
 
380
380
 
381
- //# sourceMappingURL=map-interface.3f968b46.js.map
381
+ //# sourceMappingURL=map-interface.727092bc.js.map
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/map-interface/src/map-panel/components/info-drawer/macrostrat-linked.ts"],"sourcesContent":["import hyper from \"@macrostrat/hyper\";\nimport { AgeChip, AttrChip } from \"../info-blocks\";\nimport {\n ExpansionPanel,\n ExpandableDetailsPanel,\n ExpansionBody,\n} from \"@macrostrat/map-interface\";\nimport styles from \"./main.module.styl\";\nimport { scaleLinear } from \"@visx/scale\";\nimport { AxisBottom } from \"@visx/axis\";\nimport chroma from \"chroma-js\";\nimport { LithologyList } from \"@macrostrat/data-components\";\n\nconst h = hyper.styled(styles);\n\nfunction MacrostratLinkedData(props) {\n const { mapInfo, bedrockMatchExpanded, source } = props;\n\n if (!mapInfo.mapData[0]) return h(\"div\");\n\n return h(\n ExpansionPanel,\n {\n className: \"regional-panel\",\n title: \"Macrostrat-linked data\",\n helpText: \"via Macrostrat\",\n expanded: bedrockMatchExpanded,\n },\n [\n h(\"div\", { classes: expansionPanelDetailClasses }, [\n h(MatchBasis, { source }),\n h(AgeInformation, { mapInfo, source }),\n h(Thickness, { source }),\n h(MinorFossilCollections, { source }),\n h(FossilOccs, { source }),\n h(LithsAndClasses, { source }),\n h(Environments, { source }),\n h(Economy, { source }),\n ]),\n ],\n );\n}\n\nconst expansionPanelDetailClasses = {\n root: \"expansion-panel-detail\",\n};\n\nfunction AgeInformation(props) {\n const { source, mapInfo } = props;\n const { macrostrat } = source;\n\n if (!macrostrat?.b_age) return h(MapAgeRenderer, { mapInfo });\n\n return h(MacrostratAgeInfo, { macrostrat, mapInfo });\n}\n\nfunction MapAgeRenderer(props) {\n const { mapInfo, ...rest } = props;\n return h(\n DescribedAgeInfo,\n {\n ageElement: h(AgeChip, {\n b_int: mapInfo.mapData[0].b_int,\n t_int: mapInfo.mapData[0].t_int,\n }),\n },\n \"Based on geologic map description.\",\n );\n}\n\nfunction DescribedAgeInfo(props) {\n const { ageElement, children, className } = props;\n\n return h(\"div.described-age.macrostrast-detail\", [\n h(\"div.expansion-summary-title\", \"Age\"),\n h(\"div.age-chips\", null, ageElement),\n h(\"div.description\", children),\n ]);\n}\n\nfunction AgeRefinementBar({ scale, data, color, label = null }) {\n const { b_int, t_int } = data;\n const b_age = data.b_age ?? b_int.b_age;\n const t_age = data.t_age ?? t_int.t_age;\n const backgroundColor = color ?? b_int.color;\n const accentColor = chroma(backgroundColor).darken(0.5).hex();\n const labelColor = chroma(backgroundColor).darken(2).hex();\n\n const left = scale(b_age);\n const width = scale(t_age) - scale(b_age);\n\n let labelTranslate = 5;\n let textAlign = \"start\";\n\n // Adjust label placement\n\n if (width < 100) {\n if (left < 100) {\n labelTranslate = width + 5;\n } else {\n labelTranslate = -305;\n textAlign = \"end\";\n }\n }\n\n return h(\n \"div.age-refinement-bar\",\n {\n style: {\n marginLeft: `${left}px`,\n width: `${width}px`,\n height: \"18px\",\n backgroundColor,\n border: `2px solid ${accentColor}`,\n position: \"relative\",\n },\n },\n h(\n \"div.age-refinement-bar-label\",\n {\n style: {\n transform: `translateX(${labelTranslate}px)`,\n color: labelColor,\n fontSize: \"10px\",\n width: 300,\n textAlign,\n },\n },\n label,\n ),\n );\n}\n\nfunction AgeRefinementPlot({ macrostrat, mapInfo }) {\n // Plot the amount by which the age was refined\n\n const mapData = mapInfo.mapData[0];\n const b_age = Math.max(mapData.b_int.b_age, macrostrat.b_age);\n const t_age = Math.min(mapData.t_int.t_age, macrostrat.t_age);\n\n const scale = scaleLinear({\n domain: [1.02 * b_age, t_age * 0.98],\n range: [20, 360],\n });\n\n // use visx to plot the age refinement\n return h(\"div.age-refinement-plot\", [\n h(AgeRefinementBar, {\n scale,\n data: macrostrat,\n label: \"Macrostrat age model\",\n }),\n h(AgeRefinementBar, {\n scale,\n data: mapData,\n label: \"Map legend\",\n }),\n // Age axis\n h(\"svg\", { width: \"100%\", height: \"40px\" }, [\n h(AxisBottom, {\n scale,\n numTicks: 5,\n top: 1,\n left: 0,\n label: \"Age (Ma)\",\n }),\n ]),\n ]);\n}\n\nfunction MacrostratAgeInfoCore({ macrostrat }) {\n const { b_age, t_age, b_int, t_int } = macrostrat;\n\n if (!b_age) return null;\n\n let age = b_int.int_name;\n if (b_int.int_id !== t_int.int_id) {\n age += ` - ${t_int.int_name}`;\n }\n return h(\n DescribedAgeInfo,\n {\n ageElement: h(AgeChip, {\n b_int: { ...b_int, int_name: age, b_age, t_age },\n t_int: { ...b_int, int_name: age, b_age, t_age },\n }),\n },\n \"Refined using the Macrostrat age model.\",\n );\n}\n\nfunction MacrostratAgeInfo(props) {\n return h(\n ExpandableDetailsPanel,\n { headerElement: h(MacrostratAgeInfoCore, props) },\n h(ExpansionBody, { title: \"Age refinement\" }, h(AgeRefinementPlot, props)),\n );\n}\n\nfunction MatchBasis(props) {\n const { source } = props;\n if (!source.macrostrat?.strat_names) return null;\n\n return h(\n ExpandableDetailsPanel,\n {\n className: \"macrostrat-unit\",\n headerElement: h([\n h(\"h3\", source.macrostrat.strat_names[0].rank_name),\n h(\"div.description\", \"Matched stratigraphic unit\"),\n ]),\n },\n h(ExpansionBody, { title: \"All matched names\" }, [\n source.macrostrat.strat_names.map((name, i) => {\n let lastElement: boolean =\n i == source.macrostrat.strat_names.length - 1;\n return h(\"span\", { key: i }, [\n h(\n \"a.externalLink\",\n {\n href: \"/lex/strat-names/\" + name.strat_name_id,\n key: i,\n },\n [name.rank_name],\n ),\n h.if(!lastElement)([\", \"]),\n ]);\n }),\n ]),\n );\n}\n\nfunction Thickness(props) {\n const { source } = props;\n if (!source.macrostrat.max_thick) return h(\"div\");\n\n return h.if(source.macrostrat && source.macrostrat.max_thick)(\n \"div.macrostrat-detail\",\n [\n h(\"div.expansion-summary-title\", \"Thickness\"),\n h(\"div\", [\n source.macrostrat.min_min_thick,\n \" - \",\n source.macrostrat.max_thick,\n \"m\",\n ]),\n ],\n );\n}\n\nfunction MinorFossilCollections(props) {\n const { source } = props;\n const { macrostrat } = source;\n if (!macrostrat.pbdb_collections) return h(\"div\");\n\n return h.if(macrostrat && macrostrat.pbdb_collections)(\n \"div.macrostrat-detail\",\n [\n h(\"div.expansion-summary-title\", \"Fossil collections\"),\n h(\"div\", [macrostrat.pbdb_collections]),\n ],\n );\n}\n\nfunction FossilOccs(props) {\n const { source } = props;\n const { macrostrat } = source;\n\n if (!macrostrat?.pbdb_occs) return null;\n\n return h(\"div.macrostrat-detail\", [\n h(\"div.expansion-summary-title\", \"Fossil occurrences\"),\n h(\"div\", [macrostrat.pbdb_occs]),\n ]);\n}\n\nfunction LithTypes(props) {\n const { lith_types } = props;\n\n return h.if(lith_types && lith_types.length > 0)(\n \"div.lithologies.lithology-types\",\n [\n h(LithologyList, {\n lithologies: lith_types,\n }),\n ],\n );\n}\n\nfunction LithsAndClasses(props) {\n const { source } = props;\n const { macrostrat } = source;\n const { liths = null, lith_types = null } = macrostrat;\n\n if (!liths || liths.length == 0) return null;\n\n const lithologies = liths.map((lith) => {\n return {\n ...lith,\n name: lith.lith,\n color: lith.color || \"#000000\",\n };\n });\n\n return h(\n ExpandableDetailsPanel,\n {\n title: \"Lithology\",\n value: h(LithTypes, { lith_types }),\n },\n h(ExpansionBody, { title: \"Matched lithologies\" }, [\n h(LithologyList, {\n lithologies,\n onClickItem: (e, lith) => {\n window.open(\"/lex/lithology/\" + lith.lith_id, \"_self\");\n },\n }),\n ]),\n );\n}\n\nfunction EnvironTypes(props) {\n const { environ_types } = props;\n return h.if(environ_types && environ_types.length > 0)(LithologyList, {\n lithologies: environ_types?.filter((e) => e.name != \"\"),\n });\n}\n\nfunction Environments(props) {\n const { source } = props;\n const { macrostrat } = source;\n const { environs = null, environ_types = null } = macrostrat;\n\n if (!environs || environs.length == 0) return null;\n\n const lithologies = environs.map((environ) => {\n return {\n ...environ,\n name: environ.environ,\n color: environ.color || \"#000000\",\n };\n });\n\n return h(\n ExpandableDetailsPanel,\n {\n title: \"Environment\",\n value: h(EnvironTypes, { environ_types }),\n },\n h(ExpansionBody, { title: \"Matched environments\" }, [\n h(LithologyList, {\n lithologies,\n onClickItem: (e, environ) => {\n window.open(\"/lex/environments/\" + environ.environ_id, \"_self\");\n },\n }),\n ]),\n );\n}\n\nfunction EconType(props) {\n const { econ_types } = props;\n\n return h.if(econ_types && econ_types.length > 0)(\"div\", [\n econ_types.map((econClass, i) => {\n return h(AttrChip, {\n key: i,\n name: econClass.name,\n color: econClass.color,\n });\n }),\n ]);\n}\n\nfunction Economy(props) {\n const { source } = props;\n const { macrostrat } = source;\n const { econs = null, econ_types = null } = macrostrat;\n if (!econs) return h(\"div\");\n\n return h.if(econs && econs.length > 0)(\n ExpandableDetailsPanel,\n {\n title: \"Economy \",\n value: h(EconType, { econ_types }),\n },\n h(ExpansionBody, { title: \"Matched economic attributes\" }, [\n econs.map((econ, i) => {\n return h(AttrChip, {\n key: i,\n name: econ.econ,\n color: econ.color,\n });\n }),\n ]),\n );\n}\n\nexport { MacrostratLinkedData };\n"],"names":[],"version":3,"file":"map-interface.3f968b46.js.map"}
1
+ {"mappings":"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","sources":["packages/map-interface/src/map-panel/components/info-drawer/macrostrat-linked.ts"],"sourcesContent":["import hyper from \"@macrostrat/hyper\";\nimport { AgeChip, AttrChip } from \"../info-blocks\";\nimport {\n ExpansionPanel,\n ExpandableDetailsPanel,\n ExpansionBody,\n} from \"@macrostrat/map-interface\";\nimport styles from \"./main.module.styl\";\nimport { scaleLinear } from \"@visx/scale\";\nimport { AxisBottom } from \"@visx/axis\";\nimport chroma from \"chroma-js\";\nimport { LithologyList } from \"@macrostrat/data-components\";\n\nconst h = hyper.styled(styles);\n\nfunction MacrostratLinkedData(props) {\n const { mapInfo, bedrockMatchExpanded, source } = props;\n\n if (!mapInfo.mapData[0]) return h(\"div\");\n\n return h(\n ExpansionPanel,\n {\n className: \"regional-panel\",\n title: \"Macrostrat-linked data\",\n helpText: \"via Macrostrat\",\n expanded: bedrockMatchExpanded,\n },\n [\n h(\"div\", { classes: expansionPanelDetailClasses }, [\n h(MatchBasis, { source }),\n h(AgeInformation, { mapInfo, source }),\n h(Thickness, { source }),\n h(MinorFossilCollections, { source }),\n h(FossilOccs, { source }),\n h(LithsAndClasses, { source }),\n h(Environments, { source }),\n h(Economy, { source }),\n ]),\n ],\n );\n}\n\nconst expansionPanelDetailClasses = {\n root: \"expansion-panel-detail\",\n};\n\nfunction AgeInformation(props) {\n const { source, mapInfo } = props;\n const { macrostrat } = source;\n\n if (!macrostrat?.b_age) return h(MapAgeRenderer, { mapInfo });\n\n return h(MacrostratAgeInfo, { macrostrat, mapInfo });\n}\n\nfunction MapAgeRenderer(props) {\n const { mapInfo, ...rest } = props;\n return h(\n DescribedAgeInfo,\n {\n ageElement: h(AgeChip, {\n b_int: mapInfo.mapData[0].b_int,\n t_int: mapInfo.mapData[0].t_int,\n }),\n },\n \"Based on geologic map description.\",\n );\n}\n\nfunction DescribedAgeInfo(props) {\n const { ageElement, children, className } = props;\n\n return h(\"div.described-age.macrostrast-detail\", [\n h(\"div.expansion-summary-title\", \"Age\"),\n h(\"div.age-chips\", null, ageElement),\n h(\"div.description\", children),\n ]);\n}\n\nfunction AgeRefinementBar({ scale, data, color, label = null }) {\n const { b_int, t_int } = data;\n const b_age = data.b_age ?? b_int.b_age;\n const t_age = data.t_age ?? t_int.t_age;\n const backgroundColor = color ?? b_int.color;\n const accentColor = chroma(backgroundColor).darken(0.5).hex();\n const labelColor = chroma(backgroundColor).darken(2).hex();\n\n const left = scale(b_age);\n const width = scale(t_age) - scale(b_age);\n\n let labelTranslate = 5;\n let textAlign = \"start\";\n\n // Adjust label placement\n\n if (width < 100) {\n if (left < 100) {\n labelTranslate = width + 5;\n } else {\n labelTranslate = -305;\n textAlign = \"end\";\n }\n }\n\n return h(\n \"div.age-refinement-bar\",\n {\n style: {\n marginLeft: `${left}px`,\n width: `${width}px`,\n height: \"18px\",\n backgroundColor,\n border: `2px solid ${accentColor}`,\n position: \"relative\",\n },\n },\n h(\n \"div.age-refinement-bar-label\",\n {\n style: {\n transform: `translateX(${labelTranslate}px)`,\n color: labelColor,\n fontSize: \"10px\",\n width: 300,\n textAlign,\n },\n },\n label,\n ),\n );\n}\n\nfunction AgeRefinementPlot({ macrostrat, mapInfo }) {\n // Plot the amount by which the age was refined\n\n const mapData = mapInfo.mapData[0];\n const b_age = Math.max(mapData.b_int.b_age, macrostrat.b_age);\n const t_age = Math.min(mapData.t_int.t_age, macrostrat.t_age);\n\n const scale = scaleLinear({\n domain: [1.02 * b_age, t_age * 0.98],\n range: [20, 360],\n });\n\n // use visx to plot the age refinement\n return h(\"div.age-refinement-plot\", [\n h(AgeRefinementBar, {\n scale,\n data: macrostrat,\n label: \"Macrostrat age model\",\n }),\n h(AgeRefinementBar, {\n scale,\n data: mapData,\n label: \"Map legend\",\n }),\n // Age axis\n h(\"svg\", { width: \"100%\", height: \"40px\" }, [\n h(AxisBottom, {\n scale,\n numTicks: 5,\n top: 1,\n left: 0,\n label: \"Age (Ma)\",\n }),\n ]),\n ]);\n}\n\nfunction MacrostratAgeInfoCore({ macrostrat }) {\n const { b_age, t_age, b_int, t_int } = macrostrat;\n\n if (!b_age) return null;\n\n let age = b_int.int_name;\n if (b_int.int_id !== t_int.int_id) {\n age += ` - ${t_int.int_name}`;\n }\n return h(\n DescribedAgeInfo,\n {\n ageElement: h(AgeChip, {\n b_int: { ...b_int, int_name: age, b_age, t_age },\n t_int: { ...b_int, int_name: age, b_age, t_age },\n }),\n },\n \"Refined using the Macrostrat age model.\",\n );\n}\n\nfunction MacrostratAgeInfo(props) {\n return h(\n ExpandableDetailsPanel,\n { headerElement: h(MacrostratAgeInfoCore, props) },\n h(ExpansionBody, { title: \"Age refinement\" }, h(AgeRefinementPlot, props)),\n );\n}\n\nfunction MatchBasis(props) {\n const { source } = props;\n if (!source.macrostrat?.strat_names) return null;\n\n return h(\n ExpandableDetailsPanel,\n {\n className: \"macrostrat-unit\",\n headerElement: h([\n h(\"h3\", source.macrostrat.strat_names[0].rank_name),\n h(\"div.description\", \"Matched stratigraphic unit\"),\n ]),\n },\n h(ExpansionBody, { title: \"All matched names\" }, [\n source.macrostrat.strat_names.map((name, i) => {\n let lastElement: boolean =\n i == source.macrostrat.strat_names.length - 1;\n return h(\"span\", { key: i }, [\n h(\n \"a.externalLink\",\n {\n href: \"/lex/strat-names/\" + name.strat_name_id,\n key: i,\n },\n [name.rank_name],\n ),\n h.if(!lastElement)([\", \"]),\n ]);\n }),\n ]),\n );\n}\n\nfunction Thickness(props) {\n const { source } = props;\n if (!source.macrostrat.max_thick) return h(\"div\");\n\n return h.if(source.macrostrat && source.macrostrat.max_thick)(\n \"div.macrostrat-detail\",\n [\n h(\"div.expansion-summary-title\", \"Thickness\"),\n h(\"div\", [\n source.macrostrat.min_min_thick,\n \" - \",\n source.macrostrat.max_thick,\n \"m\",\n ]),\n ],\n );\n}\n\nfunction MinorFossilCollections(props) {\n const { source } = props;\n const { macrostrat } = source;\n if (!macrostrat.pbdb_collections) return h(\"div\");\n\n return h.if(macrostrat && macrostrat.pbdb_collections)(\n \"div.macrostrat-detail\",\n [\n h(\"div.expansion-summary-title\", \"Fossil collections\"),\n h(\"div\", [macrostrat.pbdb_collections]),\n ],\n );\n}\n\nfunction FossilOccs(props) {\n const { source } = props;\n const { macrostrat } = source;\n\n if (!macrostrat?.pbdb_occs) return null;\n\n return h(\"div.macrostrat-detail\", [\n h(\"div.expansion-summary-title\", \"Fossil occurrences\"),\n h(\"div\", [macrostrat.pbdb_occs]),\n ]);\n}\n\nfunction LithTypes(props) {\n const { lith_types } = props;\n\n return h.if(lith_types && lith_types.length > 0)(\n \"div.lithologies.lithology-types\",\n [\n h(LithologyList, {\n lithologies: lith_types,\n }),\n ],\n );\n}\n\nfunction LithsAndClasses(props) {\n const { source } = props;\n const { macrostrat } = source;\n const { liths = null, lith_types = null } = macrostrat;\n\n if (!liths || liths.length == 0) return null;\n\n const lithologies = liths.map((lith) => {\n return {\n ...lith,\n name: lith.lith,\n color: lith.color || \"#000000\",\n };\n });\n\n return h(\n ExpandableDetailsPanel,\n {\n title: \"Lithology\",\n value: h(LithTypes, { lith_types }),\n },\n h(ExpansionBody, { title: \"Matched lithologies\" }, [\n h(LithologyList, {\n lithologies,\n onClickItem: (e, lith) => {\n window.open(\"/lex/lithology/\" + lith.lith_id, \"_self\");\n },\n }),\n ]),\n );\n}\n\nfunction EnvironTypes(props) {\n const { environ_types } = props;\n return h.if(environ_types && environ_types.length > 0)(LithologyList, {\n lithologies: environ_types?.filter((e) => e.name != \"\"),\n });\n}\n\nfunction Environments(props) {\n const { source } = props;\n const { macrostrat } = source;\n const { environs = null, environ_types = null } = macrostrat;\n\n if (!environs || environs.length == 0) return null;\n\n const lithologies = environs.map((environ) => {\n return {\n ...environ,\n name: environ.environ,\n color: environ.color || \"#000000\",\n };\n });\n\n return h(\n ExpandableDetailsPanel,\n {\n title: \"Environment\",\n value: h(EnvironTypes, { environ_types }),\n },\n h(ExpansionBody, { title: \"Matched environments\" }, [\n h(LithologyList, {\n lithologies,\n onClickItem: (e, environ) => {\n window.open(\"/lex/environments/\" + environ.environ_id, \"_self\");\n },\n }),\n ]),\n );\n}\n\nfunction EconType(props) {\n const { econ_types } = props;\n\n return h.if(econ_types && econ_types.length > 0)(\"div\", [\n econ_types.map((econClass, i) => {\n return h(AttrChip, {\n key: i,\n name: econClass.name,\n color: econClass.color,\n });\n }),\n ]);\n}\n\nfunction Economy(props) {\n const { source } = props;\n const { macrostrat } = source;\n const { econs = null, econ_types = null } = macrostrat;\n if (!econs) return h(\"div\");\n\n return h.if(econs && econs.length > 0)(\n ExpandableDetailsPanel,\n {\n title: \"Economy \",\n value: h(EconType, { econ_types }),\n },\n h(ExpansionBody, { title: \"Matched economic attributes\" }, [\n econs.map((econ, i) => {\n return h(AttrChip, {\n key: i,\n name: econ.econ,\n color: econ.color,\n });\n }),\n ]),\n );\n}\n\nexport { MacrostratLinkedData };\n"],"names":[],"version":3,"file":"map-interface.727092bc.js.map"}
@@ -1,3 +1,9 @@
1
+
2
+ function $parcel$export(e, n, v, s) {
3
+ Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
4
+ }
5
+
6
+ $parcel$export(module.exports, "makeOccurrenceTree", () => $b21520b51b05cabd$export$9355c61f37d969f4);
1
7
  function $b21520b51b05cabd$export$9355c61f37d969f4(data) {
2
8
  let occurrenceTree = {
3
9
  phyla: []
@@ -33,6 +39,7 @@ function $b21520b51b05cabd$export$9355c61f37d969f4(data) {
33
39
  }
34
40
  return -1;
35
41
  }
42
+ console.log("Processing fossil data...", data);
36
43
  data.forEach((d)=>{
37
44
  // Some preprocessing
38
45
  d.rank = d.rnk ? rankMap[d.rnk] : d.idr ? rankMap[d.idr] : "Unknown";
@@ -126,4 +133,4 @@ function $b21520b51b05cabd$export$9355c61f37d969f4(data) {
126
133
  }
127
134
 
128
135
 
129
- //# sourceMappingURL=map-interface.134ad930.js.map
136
+ //# sourceMappingURL=map-interface.744b121c.js.map
@@ -0,0 +1 @@
1
+ {"mappings":"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","sources":["packages/map-interface/src/map-panel/utils/fossils.ts"],"sourcesContent":["export function makeOccurrenceTree(data) {\n let occurrenceTree = { phyla: [] };\n let rankMap = {\n 25: \"unranked\",\n 23: \"kingdom\",\n 22: \"subkingdom\",\n 21: \"superphylum\",\n 20: \"phylum\",\n 19: \"subphylum\",\n 18: \"superclass\",\n 17: \"class\",\n 16: \"subclass\",\n 15: \"infraclass\",\n 14: \"superorder\",\n 13: \"order\",\n 12: \"suborder\",\n 11: \"infraorder\",\n 10: \"superfamily\",\n 9: \"family\",\n 8: \"subfamily\",\n 7: \"tribe\",\n 6: \"subtribe\",\n 5: \"genus\",\n 4: \"subgenus\",\n 3: \"species\",\n 2: \"subspecies\",\n };\n\n function getIndex(data, term, property) {\n for (let i = 0, len = data.length; i < len; i++) {\n if (data[i][property] === term) return i;\n }\n return -1;\n }\n\n console.log(\"Processing fossil data...\", data);\n\n data.forEach((d) => {\n // Some preprocessing\n d.rank = d.rnk ? rankMap[d.rnk] : d.idr ? rankMap[d.idr] : \"Unknown\";\n d.italics = d.rnk < 6 ? \"italics\" : \"\";\n if (typeof d.tna === \"undefined\") {\n d.tna = d.idn;\n }\n d.old_name = d.tna.split(\" \")[0] != d.idg ? d.tna : \"\";\n d.url =\n d.rank === \"species\"\n ? d.idg + \" \" + d.ids\n : d.tid\n ? d.tid.split(\":\")[1] > 0\n ? d.idg\n : \"\"\n : \"\";\n\n // If it has a genus name...\n if (d.idg) {\n let genusRes = d.rsg ? d.rsg + \" \" : \"\";\n let speciesRes = d.rss ? \" \" + d.rss + \" \" : \" \";\n d.genusRes = genusRes;\n // If it's a species...\n if (d.rank === \"species\") {\n d.display_name1 = d.tna;\n d.display_name2 = d.tna != d.idg + \" \" + d.ids ? \"(\" + d.tna + \")\" : \"\";\n d.display_name3 = \"\";\n } else {\n d.display_name1 = d.idg;\n d.display_name2 = speciesRes;\n d.display_name3 = d.ids;\n }\n } else {\n d.display_name1 = d.tna;\n d.display_name2 = \"\";\n }\n\n // Find unique phyla\n let phyla = [];\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n phyla.push(occurrenceTree.phyla[i].phylum);\n }\n\n if (phyla.indexOf(d.phl) < 0) {\n let newPhylum = { phylum: d.phl, classes: [] };\n occurrenceTree.phyla.push(newPhylum);\n }\n\n // Find unique phylum/class combinations\n let phyla_classes = [];\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {\n phyla_classes.push(\n occurrenceTree.phyla[i].phylum +\n \"-\" +\n occurrenceTree.phyla[i].classes[j].nameClass,\n );\n }\n }\n\n if (phyla_classes.indexOf(d.phl + \"-\" + d.cll) < 0) {\n let newClass = { nameClass: d.cll, families: [] };\n let phylumIndex = getIndex(occurrenceTree.phyla, d.phl, \"phylum\");\n occurrenceTree.phyla[phylumIndex][\"classes\"].push(newClass);\n }\n\n // Find unique phylum/class/family combinations\n let phyla_class_family = [];\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {\n for (\n let k = 0;\n k < occurrenceTree.phyla[i].classes[j].families.length;\n k++\n ) {\n phyla_class_family.push(\n occurrenceTree.phyla[i].phylum +\n \"-\" +\n occurrenceTree.phyla[i].classes[j].nameClass +\n \"-\" +\n occurrenceTree.phyla[i].classes[j].families[k].family,\n );\n }\n }\n }\n\n if (phyla_class_family.indexOf(d.phl + \"-\" + d.cll + \"-\" + d.fml) < 0) {\n let newFamily = { family: d.fml, genera: [] };\n let phylumIndex = getIndex(occurrenceTree.phyla, d.phl, \"phylum\");\n let classIndex = getIndex(\n occurrenceTree.phyla[phylumIndex].classes,\n d.cll,\n \"nameClass\",\n );\n occurrenceTree.phyla[phylumIndex].classes[classIndex][\"families\"].push(\n newFamily,\n );\n }\n\n // Place genera into the right phylum/class/family\n let phylumIndex = getIndex(occurrenceTree.phyla, d.phl, \"phylum\");\n let classIndex = getIndex(\n occurrenceTree.phyla[phylumIndex].classes,\n d.cll,\n \"nameClass\",\n );\n let familyIndex = getIndex(\n occurrenceTree.phyla[phylumIndex].classes[classIndex].families,\n d.fml,\n \"family\",\n );\n occurrenceTree.phyla[phylumIndex].classes[classIndex].families[\n familyIndex\n ].genera.push(d);\n });\n\n for (let i = 0; i < occurrenceTree.phyla.length; i++) {\n let undefinedClassIndex;\n for (let j = 0; j < occurrenceTree.phyla[i].classes.length; j++) {\n let undefinedFamilyIndex;\n for (\n let k = 0;\n k < occurrenceTree.phyla[i].classes[j].families.length;\n k++\n ) {\n if (\n typeof occurrenceTree.phyla[i].classes[j].families[k].family ===\n \"undefined\"\n ) {\n undefinedFamilyIndex = k;\n occurrenceTree.phyla[i].classes[j].families[k].family =\n \"Miscellaneous \" +\n (typeof occurrenceTree.phyla[i].classes[j].nameClass ===\n \"undefined\")\n ? \"Miscellaneous unranked taxa\"\n : occurrenceTree.phyla[i].classes[j].nameClass;\n occurrenceTree.phyla[i].classes[j].families[k].noFamily = true;\n }\n }\n\n if (typeof undefinedFamilyIndex != \"undefined\") {\n occurrenceTree.phyla[i].classes[j].families.push(\n occurrenceTree.phyla[i].classes[j].families.splice(\n undefinedFamilyIndex,\n 1,\n )[0],\n );\n }\n\n if (typeof occurrenceTree.phyla[i].classes[j].nameClass === \"undefined\") {\n undefinedFamilyIndex = j;\n occurrenceTree.phyla[i].classes[j].nameClass =\n \"Miscellaneous \" +\n (typeof occurrenceTree.phyla[i].phylum === \"undefined\")\n ? \"Miscellaneous unranked taxa\"\n : occurrenceTree.phyla[i].phylum;\n occurrenceTree.phyla[i].classes[j].noClass = true;\n }\n }\n\n if (typeof undefinedClassIndex != \"undefined\") {\n occurrenceTree.phyla[i].classes.push(\n occurrenceTree.phyla[i].classes.splice(undefinedClassIndex, 1)[0],\n );\n }\n\n if (typeof occurrenceTree.phyla[i].phylum === \"undefined\") {\n occurrenceTree.phyla[i].phylum = \"Unranked taxa\";\n occurrenceTree.phyla[i].unranked = true;\n }\n }\n\n return occurrenceTree;\n}\n"],"names":[],"version":3,"file":"map-interface.744b121c.js.map"}
@@ -1,10 +1,11 @@
1
- var $b21520b51b05cabd$exports = require("./map-interface.134ad930.js");
1
+ var $b21520b51b05cabd$exports = require("./map-interface.744b121c.js");
2
2
  var $da3367d1da117a90$exports = require("./map-interface.d8e62b02.js");
3
3
 
4
4
 
5
5
  function $parcel$export(e, n, v, s) {
6
6
  Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
7
7
  }
8
+ $parcel$export(module.exports, "makeOccurrenceTree", () => $b21520b51b05cabd$exports.makeOccurrenceTree);
8
9
 
9
10
  $parcel$export(module.exports, "addCommas", () => $3ffaa4c6fbcbe662$export$b6fe44657ce35c42);
10
11
  $parcel$export(module.exports, "hexToRgb", () => $3ffaa4c6fbcbe662$export$5a544e13ad4e1fa5);
@@ -191,4 +192,4 @@ const $3ffaa4c6fbcbe662$export$a5a22643c02a030c = [
191
192
  ];
192
193
 
193
194
 
194
- //# sourceMappingURL=map-interface.cc9ad5c6.js.map
195
+ //# sourceMappingURL=map-interface.84080d80.js.map
@@ -0,0 +1 @@
1
+ {"mappings":"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","sources":["packages/map-interface/src/map-panel/utils/index.ts"],"sourcesContent":["export const addCommas = (x) => {\n x = parseInt(x);\n var parts = x.toString().split(\".\");\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n return parts.join(\".\");\n};\n\nexport const sum = (data, prop) => {\n if (!data || !data.length) {\n return [];\n }\n return data\n .map((d) => {\n return d[prop];\n })\n .reduce((a, b) => {\n return a + b;\n }, 0);\n};\n\nexport const hexToRgb = (hex, opacity) => {\n if (!hex) {\n return \"rgba(0,0,0,0.3)\";\n }\n hex = hex.replace(\"#\", \"\");\n let bigint = parseInt(hex, 16);\n let r = (bigint >> 16) & 255;\n let g = (bigint >> 8) & 255;\n let b = bigint & 255;\n return `rgba(${r},${g},${b},${opacity || 0.8})`;\n};\n\nexport type TimescaleDivision = {\n name: string;\n abbrev: string;\n t_age: number;\n b_age: number;\n color: string;\n};\n\nexport const timescale: TimescaleDivision[] = [\n { name: \"Quaternary\", abbrev: \"Q\", t_age: 0, b_age: 2.588, color: \"#F9F97F\" },\n {\n name: \"Neogene\",\n abbrev: \"Ng\",\n t_age: 2.588,\n b_age: 23.03,\n color: \"#FFE619\",\n },\n {\n name: \"Paleogene\",\n abbrev: \"Pg\",\n t_age: 23.03,\n b_age: 66,\n color: \"#FD9A52\",\n },\n { name: \"Cretaceous\", abbrev: \"K\", t_age: 66, b_age: 145, color: \"#7FC64E\" },\n { name: \"Jurassic\", abbrev: \"J\", t_age: 145, b_age: 201.3, color: \"#34B2C9\" },\n {\n name: \"Triassic\",\n abbrev: \"Tr\",\n t_age: 201.3,\n b_age: 252.17,\n color: \"#812B92\",\n },\n {\n name: \"Permian\",\n abbrev: \"P\",\n t_age: 252.17,\n b_age: 298.9,\n color: \"#F04028\",\n },\n {\n name: \"Carboniferous\",\n abbrev: \"C\",\n t_age: 298.9,\n b_age: 358.9,\n color: \"#67A599\",\n },\n {\n name: \"Devonian\",\n abbrev: \"D\",\n t_age: 358.9,\n b_age: 419.2,\n color: \"#CB8C37\",\n },\n {\n name: \"Silurian\",\n abbrev: \"S\",\n t_age: 419.2,\n b_age: 443.8,\n color: \"#B3E1B6\",\n },\n {\n name: \"Ordovician\",\n abbrev: \"O\",\n t_age: 443.8,\n b_age: 485.4,\n color: \"#009270\",\n },\n {\n name: \"Cambrian\",\n abbrev: \"Cm\",\n t_age: 485.4,\n b_age: 541,\n color: \"#7FA056\",\n },\n { name: \"Ediacaran\", abbrev: \"E\", t_age: 541, b_age: 635, color: \"#FFC3E1\" },\n {\n name: \"Cryogenian\",\n abbrev: \"Cr\",\n t_age: 635,\n b_age: 720,\n color: \"#FFAFD7\",\n },\n { name: \"Tonian\", abbrev: \"T\", t_age: 720, b_age: 1000, color: \"#FFA5D2\" },\n { name: \"Stenian\", abbrev: \"St\", t_age: 1000, b_age: 1200, color: \"#FFA5D2\" },\n {\n name: \"Ectasian\",\n abbrev: \"Ec\",\n t_age: 1200,\n b_age: 1400,\n color: \"#FF98CC\",\n },\n {\n name: \"Calymmian\",\n abbrev: \"Ca\",\n t_age: 1400,\n b_age: 1600,\n color: \"#FF8BC5\",\n },\n {\n name: \"Statherian\",\n abbrev: \"St\",\n t_age: 1600,\n b_age: 1800,\n color: \"#EE93C1\",\n },\n {\n name: \"Orosirian\",\n abbrev: \"Or\",\n t_age: 1800,\n b_age: 2050,\n color: \"#E874AF\",\n },\n { name: \"Rhyacian\", abbrev: \"R\", t_age: 2050, b_age: 2300, color: \"#EB84B8\" },\n {\n name: \"Siderian\",\n abbrev: \"Sd\",\n t_age: 2300,\n b_age: 2500,\n color: \"#E874AF\",\n },\n];\n\nexport * from \"./fossils\";\nexport * from \"./formatting\";\n"],"names":[],"version":3,"file":"map-interface.84080d80.js.map"}
@@ -1,4 +1,4 @@
1
- var $3ffaa4c6fbcbe662$exports = require("./map-interface.cc9ad5c6.js");
1
+ var $3ffaa4c6fbcbe662$exports = require("./map-interface.84080d80.js");
2
2
  require("./map-interface.71259cf9.css");
3
3
  var $e08ed0d012ff7117$exports = require("./map-interface.ee59fc6e.js");
4
4
  var $2SCgO$macrostrathyper = require("@macrostrat/hyper");
@@ -95,4 +95,4 @@ function $dd32e7ae54443412$export$bde077e6dcba34d5(props) {
95
95
  }
96
96
 
97
97
 
98
- //# sourceMappingURL=map-interface.2a32a290.js.map
98
+ //# sourceMappingURL=map-interface.b6e70f1b.js.map
@@ -1 +1 @@
1
- {"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAM,0BAAI,CAAA,GAAA,gDAAI,EAAE,MAAM,CAAC,CAAA,GAAA,mDAAK;AAE5B,SAAS,+BAAS,KAAK,EAAE,YAAY;IACnC,IAAI;QACF,OAAO,CAAA,GAAA,yCAAK,EAAE,OAAO,MAAM,CAAC,cAAc,GAAG;IAC/C,EAAE,OAAO,KAAK;QACZ,OAAO;IACT;AACF;AAEA,SAAS,0CAAa,KAAK;IACzB,MAAM,YAAE,QAAQ,aAAE,SAAS,EAAE,GAAG;IAChC,MAAM,WAAW,CAAA,GAAA,yCAAU;IAC3B,MAAM,eAAe,SAAS,SAAS,GAAG,IAAI;IAE9C,OAAO,wBACL,eACA;QACE,MAAM,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE;IAC3C,GACA,wBACE,qBACA;mBACE;QACA,OAAO;YACL,iBAAiB,+BAAS,SAAS,KAAK,EAAE;QAC5C;IACF,GACA;QACE,wBAAE,yBAAyB,SAAS,QAAQ;QAC5C,wBAAE,oBAAoB;YACpB,wBAAE,2BAAK;gBAAE,KAAK,SAAS,KAAK;YAAC;YAC7B;YACA,wBAAE,2BAAK;gBAAE,KAAK,SAAS,KAAK;YAAC;SAC9B;KACF;AAGP;AAEA,SAAS,0BAAI,OAAE,GAAG,EAAE;IAClB,OAAO,wBAAE,YAAY;QAAC;QAAK,wBAAE,oBAAoB;YAAC;SAAK;KAAE;AAC3D;AAEA,SAAS,0CAAQ,KAAK;IACpB,MAAM,SAAE,KAAK,SAAE,KAAK,EAAE,GAAG;IACzB,OAAO,wBAAE,0BAA0B;QACjC,wBAAE,2CAAc;YAAE,UAAU;QAAM;QAClC,wBAAE,EAAE,CAAC,MAAM,MAAM,IAAI,MAAM,KAAK,CAAC,MAAM,EAAE,2CAAc;YACrD,UAAU;YACV,WAAW;QACb;KACD;AACH;AAEA,SAAS,0CAAS,KAAK;IACrB,MAAM,QACJ,OAAO,aACP,KAAK,QACL,IAAI,aACJ,SAAS,cACT,aAAa,aACb,KAAK,EACN,GAAG;IAEJ,sBAAsB;IACtB,cAAc;IACd,iFAAiF;IACjF,IAAI;IACJ,OAAO,wBAAE,iBAAiB;eAAE;mBAAO;IAAU,GAAG;QAC9C,wBACE,4BACA;YACE,OAAO;gBAAE,iBAAiB,CAAA,GAAA,kCAAO,EAAE,OAAO;YAAK;YAC/C,WAAW,aAAa,eAAe;QACzC,GACA;YAAC;SAAK;KAET;AACH","sources":["packages/map-interface/src/map-panel/components/info-blocks.ts"],"sourcesContent":["import hyper from \"@macrostrat/hyper\";\nimport { hexToRgb } from \"../utils\";\nimport styles from \"./info-blocks.module.styl\";\nimport { useDarkMode } from \"@macrostrat/ui-components\";\nimport chroma from \"chroma-js\";\n\nconst h = hyper.styled(styles);\n\nfunction getColor(color, darkenAmount) {\n try {\n return chroma(color).darken(darkenAmount).hex();\n } catch (err) {\n return color;\n }\n}\n\nfunction IntervalChip(props) {\n const { interval, className } = props;\n const darkMode = useDarkMode();\n const darkenAmount = darkMode.isEnabled ? 2 : 0;\n\n return h(\n \"a.chip-link\",\n {\n href: `/lex/intervals/${interval.int_id}`,\n },\n h(\n \"div.chip.age-chip\",\n {\n className,\n style: {\n backgroundColor: getColor(interval.color, darkenAmount),\n },\n },\n [\n h(\"div.age-chip-interval\", interval.int_name),\n h(\"div.age-chip-age\", [\n h(Age, { age: interval.b_age }),\n \" - \",\n h(Age, { age: interval.t_age }),\n ]),\n ],\n ),\n );\n}\n\nfunction Age({ age }) {\n return h(\"span.age\", [age, h(\"span.age-chip-ma\", [\"Ma\"])]);\n}\n\nfunction AgeChip(props) {\n const { t_int, b_int } = props;\n return h(\"div.age-chip-container\", [\n h(IntervalChip, { interval: b_int }),\n h.if(b_int.int_id != props.t_int.int_id)(IntervalChip, {\n interval: t_int,\n className: \"age-chip-t-int\",\n }),\n ]);\n}\n\nfunction AttrChip(props) {\n const {\n fill = null,\n color,\n name,\n className,\n emphasized = true,\n style,\n } = props;\n\n // Deactivated for now\n // if (fill) {\n // styles[\"backgroundImage\"] = `url('dist/img/geologic-patterns/${fill}.png')`;\n // }\n return h(\"div.lith-chip\", { style, className }, [\n h(\n \"div.lith-chip-inner.chip\",\n {\n style: { backgroundColor: hexToRgb(color, 0.6) },\n className: emphasized ? \"emphasized\" : null,\n },\n [name],\n ),\n ]);\n}\n\nexport { AgeChip, AttrChip, IntervalChip };\n"],"names":[],"version":3,"file":"map-interface.2a32a290.js.map"}
1
+ {"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAM,0BAAI,CAAA,GAAA,gDAAI,EAAE,MAAM,CAAC,CAAA,GAAA,mDAAK;AAE5B,SAAS,+BAAS,KAAK,EAAE,YAAY;IACnC,IAAI;QACF,OAAO,CAAA,GAAA,yCAAK,EAAE,OAAO,MAAM,CAAC,cAAc,GAAG;IAC/C,EAAE,OAAO,KAAK;QACZ,OAAO;IACT;AACF;AAEA,SAAS,0CAAa,KAAK;IACzB,MAAM,YAAE,QAAQ,aAAE,SAAS,EAAE,GAAG;IAChC,MAAM,WAAW,CAAA,GAAA,yCAAU;IAC3B,MAAM,eAAe,SAAS,SAAS,GAAG,IAAI;IAE9C,OAAO,wBACL,eACA;QACE,MAAM,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE;IAC3C,GACA,wBACE,qBACA;mBACE;QACA,OAAO;YACL,iBAAiB,+BAAS,SAAS,KAAK,EAAE;QAC5C;IACF,GACA;QACE,wBAAE,yBAAyB,SAAS,QAAQ;QAC5C,wBAAE,oBAAoB;YACpB,wBAAE,2BAAK;gBAAE,KAAK,SAAS,KAAK;YAAC;YAC7B;YACA,wBAAE,2BAAK;gBAAE,KAAK,SAAS,KAAK;YAAC;SAC9B;KACF;AAGP;AAEA,SAAS,0BAAI,OAAE,GAAG,EAAE;IAClB,OAAO,wBAAE,YAAY;QAAC;QAAK,wBAAE,oBAAoB;YAAC;SAAK;KAAE;AAC3D;AAEA,SAAS,0CAAQ,KAAK;IACpB,MAAM,SAAE,KAAK,SAAE,KAAK,EAAE,GAAG;IACzB,OAAO,wBAAE,0BAA0B;QACjC,wBAAE,2CAAc;YAAE,UAAU;QAAM;QAClC,wBAAE,EAAE,CAAC,MAAM,MAAM,IAAI,MAAM,KAAK,CAAC,MAAM,EAAE,2CAAc;YACrD,UAAU;YACV,WAAW;QACb;KACD;AACH;AAEA,SAAS,0CAAS,KAAK;IACrB,MAAM,QACJ,OAAO,aACP,KAAK,QACL,IAAI,aACJ,SAAS,cACT,aAAa,aACb,KAAK,EACN,GAAG;IAEJ,sBAAsB;IACtB,cAAc;IACd,iFAAiF;IACjF,IAAI;IACJ,OAAO,wBAAE,iBAAiB;eAAE;mBAAO;IAAU,GAAG;QAC9C,wBACE,4BACA;YACE,OAAO;gBAAE,iBAAiB,CAAA,GAAA,kCAAO,EAAE,OAAO;YAAK;YAC/C,WAAW,aAAa,eAAe;QACzC,GACA;YAAC;SAAK;KAET;AACH","sources":["packages/map-interface/src/map-panel/components/info-blocks.ts"],"sourcesContent":["import hyper from \"@macrostrat/hyper\";\nimport { hexToRgb } from \"../utils\";\nimport styles from \"./info-blocks.module.styl\";\nimport { useDarkMode } from \"@macrostrat/ui-components\";\nimport chroma from \"chroma-js\";\n\nconst h = hyper.styled(styles);\n\nfunction getColor(color, darkenAmount) {\n try {\n return chroma(color).darken(darkenAmount).hex();\n } catch (err) {\n return color;\n }\n}\n\nfunction IntervalChip(props) {\n const { interval, className } = props;\n const darkMode = useDarkMode();\n const darkenAmount = darkMode.isEnabled ? 2 : 0;\n\n return h(\n \"a.chip-link\",\n {\n href: `/lex/intervals/${interval.int_id}`,\n },\n h(\n \"div.chip.age-chip\",\n {\n className,\n style: {\n backgroundColor: getColor(interval.color, darkenAmount),\n },\n },\n [\n h(\"div.age-chip-interval\", interval.int_name),\n h(\"div.age-chip-age\", [\n h(Age, { age: interval.b_age }),\n \" - \",\n h(Age, { age: interval.t_age }),\n ]),\n ],\n ),\n );\n}\n\nfunction Age({ age }) {\n return h(\"span.age\", [age, h(\"span.age-chip-ma\", [\"Ma\"])]);\n}\n\nfunction AgeChip(props) {\n const { t_int, b_int } = props;\n return h(\"div.age-chip-container\", [\n h(IntervalChip, { interval: b_int }),\n h.if(b_int.int_id != props.t_int.int_id)(IntervalChip, {\n interval: t_int,\n className: \"age-chip-t-int\",\n }),\n ]);\n}\n\nfunction AttrChip(props) {\n const {\n fill = null,\n color,\n name,\n className,\n emphasized = true,\n style,\n } = props;\n\n // Deactivated for now\n // if (fill) {\n // styles[\"backgroundImage\"] = `url('dist/img/geologic-patterns/${fill}.png')`;\n // }\n return h(\"div.lith-chip\", { style, className }, [\n h(\n \"div.lith-chip-inner.chip\",\n {\n style: { backgroundColor: hexToRgb(color, 0.6) },\n className: emphasized ? \"emphasized\" : null,\n },\n [name],\n ),\n ]);\n}\n\nexport { AgeChip, AttrChip, IntervalChip };\n"],"names":[],"version":3,"file":"map-interface.b6e70f1b.js.map"}