@macrostrat/map-interface 1.5.1 → 1.5.3

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 (245) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/cjs/index.js +2 -2
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/cjs/map-interface.1faa2839.js +14 -0
  5. package/dist/cjs/map-interface.1faa2839.js.map +1 -0
  6. package/dist/cjs/map-interface.1fdaaaf6.js +135 -0
  7. package/dist/cjs/map-interface.1fdaaaf6.js.map +1 -0
  8. package/dist/cjs/{map-interface.134ad930.js → map-interface.23d5c62c.js} +8 -2
  9. package/dist/cjs/map-interface.23d5c62c.js.map +1 -0
  10. package/dist/cjs/map-interface.24a1c14e.js +46 -0
  11. package/dist/cjs/map-interface.24a1c14e.js.map +1 -0
  12. package/dist/cjs/map-interface.2a4a5470.js +34 -0
  13. package/dist/cjs/map-interface.2a4a5470.js.map +1 -0
  14. package/dist/cjs/{map-interface.71259cf9.css → map-interface.368b346c.css} +10 -10
  15. package/dist/{esm/map-interface.409f6268.js.map → cjs/map-interface.368b346c.css.map} +1 -1
  16. package/dist/cjs/map-interface.3c606eea.js +36 -0
  17. package/dist/cjs/map-interface.3c606eea.js.map +1 -0
  18. package/dist/cjs/map-interface.441d3b83.css +69 -0
  19. package/dist/cjs/map-interface.441d3b83.css.map +1 -0
  20. package/dist/cjs/map-interface.49704804.js +388 -0
  21. package/dist/cjs/map-interface.49704804.js.map +1 -0
  22. package/dist/cjs/map-interface.4c2f5ced.js +58 -0
  23. package/dist/cjs/map-interface.4c2f5ced.js.map +1 -0
  24. package/dist/cjs/map-interface.5a4f4529.js +38 -0
  25. package/dist/cjs/map-interface.5a4f4529.js.map +1 -0
  26. package/dist/cjs/map-interface.633d24e6.css +22 -0
  27. package/dist/cjs/map-interface.633d24e6.css.map +1 -0
  28. package/dist/cjs/{map-interface.4264e7e1.js → map-interface.71e61c74.js} +19 -19
  29. package/dist/cjs/map-interface.71e61c74.js.map +1 -0
  30. package/dist/cjs/map-interface.ad03b0c2.js +64 -0
  31. package/dist/cjs/map-interface.ad03b0c2.js.map +1 -0
  32. package/dist/cjs/{map-interface.cc9ad5c6.js → map-interface.b15c1893.js} +10 -9
  33. package/dist/cjs/map-interface.b15c1893.js.map +1 -0
  34. package/dist/cjs/map-interface.ce2c83fa.js +17 -0
  35. package/dist/cjs/map-interface.ce2c83fa.js.map +1 -0
  36. package/dist/cjs/map-interface.e109c93a.js +100 -0
  37. package/dist/cjs/map-interface.e109c93a.js.map +1 -0
  38. package/dist/cjs/map-interface.f4227aaa.js +123 -0
  39. package/dist/cjs/map-interface.f4227aaa.js.map +1 -0
  40. package/dist/cjs/map-interface.f9611285.js +32 -0
  41. package/dist/cjs/map-interface.f9611285.js.map +1 -0
  42. package/dist/esm/index.d.ts +36 -1
  43. package/dist/esm/index.d.ts.map +1 -1
  44. package/dist/esm/index.js +2 -2
  45. package/dist/esm/index.js.map +1 -1
  46. package/dist/esm/map-interface.021cf79b.js +18 -0
  47. package/dist/esm/map-interface.021cf79b.js.map +1 -0
  48. package/dist/esm/map-interface.13e6d768.js +130 -0
  49. package/dist/esm/map-interface.13e6d768.js.map +1 -0
  50. package/dist/esm/map-interface.1f2a6325.js +54 -0
  51. package/dist/esm/map-interface.1f2a6325.js.map +1 -0
  52. package/dist/esm/map-interface.243c85c6.js +49 -0
  53. package/dist/esm/map-interface.243c85c6.js.map +1 -0
  54. package/dist/esm/{map-interface.c257cac1.js → map-interface.316fd76a.js} +8 -8
  55. package/dist/{cjs/map-interface.cc9ad5c6.js.map → esm/map-interface.316fd76a.js.map} +1 -1
  56. package/dist/esm/map-interface.47191f77.js +15 -0
  57. package/dist/esm/map-interface.47191f77.js.map +1 -0
  58. package/dist/esm/{map-interface.2b94a8ad.js → map-interface.578a7505.js} +3 -3
  59. package/dist/esm/map-interface.578a7505.js.map +1 -0
  60. package/dist/esm/map-interface.59896194.js +37 -0
  61. package/dist/esm/map-interface.59896194.js.map +1 -0
  62. package/dist/esm/map-interface.70768c2c.js +383 -0
  63. package/dist/esm/map-interface.70768c2c.js.map +1 -0
  64. package/dist/esm/map-interface.70d6a7ff.js +16 -0
  65. package/dist/esm/map-interface.70d6a7ff.js.map +1 -0
  66. package/dist/esm/map-interface.767fdc4a.js +64 -0
  67. package/dist/esm/map-interface.767fdc4a.js.map +1 -0
  68. package/dist/esm/map-interface.7ea8a1e0.js +40 -0
  69. package/dist/esm/map-interface.7ea8a1e0.js.map +1 -0
  70. package/dist/esm/map-interface.b97aca89.js +25 -0
  71. package/dist/esm/map-interface.b97aca89.js.map +1 -0
  72. package/dist/esm/map-interface.bdef07d2.js +34 -0
  73. package/dist/esm/map-interface.bdef07d2.js.map +1 -0
  74. package/dist/esm/map-interface.c1d19ef4.js +114 -0
  75. package/dist/esm/map-interface.c1d19ef4.js.map +1 -0
  76. package/dist/esm/map-interface.fb96fb7e.js +94 -0
  77. package/dist/esm/map-interface.fb96fb7e.js.map +1 -0
  78. package/dist/node/index.js +1 -1
  79. package/dist/node/index.js.map +1 -1
  80. package/dist/node/map-interface.206d8dd9.js +2 -0
  81. package/dist/node/map-interface.206d8dd9.js.map +1 -0
  82. package/dist/node/map-interface.3dbeec12.js +2 -0
  83. package/dist/node/map-interface.3dbeec12.js.map +1 -0
  84. package/dist/node/map-interface.432dd2f9.js +2 -0
  85. package/dist/node/map-interface.432dd2f9.js.map +1 -0
  86. package/dist/node/map-interface.73dfe675.js +2 -0
  87. package/dist/node/map-interface.73dfe675.js.map +1 -0
  88. package/dist/node/map-interface.82397845.js +2 -0
  89. package/dist/node/map-interface.82397845.js.map +1 -0
  90. package/dist/node/map-interface.8881e38a.js +2 -0
  91. package/dist/node/map-interface.8881e38a.js.map +1 -0
  92. package/dist/node/map-interface.9317d050.js +2 -0
  93. package/dist/node/map-interface.9317d050.js.map +1 -0
  94. package/dist/node/map-interface.97b93dd1.js +2 -0
  95. package/dist/node/map-interface.97b93dd1.js.map +1 -0
  96. package/dist/node/map-interface.9e6751ac.js +2 -0
  97. package/dist/node/map-interface.9e6751ac.js.map +1 -0
  98. package/dist/node/map-interface.a1252092.css +2 -0
  99. package/dist/node/map-interface.a1252092.css.map +1 -0
  100. package/dist/node/map-interface.a50eb4e3.js +2 -0
  101. package/dist/node/map-interface.a50eb4e3.js.map +1 -0
  102. package/dist/node/map-interface.a8a16138.js +2 -0
  103. package/dist/node/map-interface.a8a16138.js.map +1 -0
  104. package/dist/node/{map-interface.efc5dd17.js → map-interface.a8be0cba.js} +2 -2
  105. package/dist/node/map-interface.a8be0cba.js.map +1 -0
  106. package/dist/node/map-interface.ae3d2d83.js +2 -0
  107. package/dist/node/map-interface.ae3d2d83.js.map +1 -0
  108. package/dist/node/map-interface.c5c0ad06.js +2 -0
  109. package/dist/node/map-interface.c5c0ad06.js.map +1 -0
  110. package/dist/node/map-interface.d22d91e9.css +2 -0
  111. package/dist/node/map-interface.d22d91e9.css.map +1 -0
  112. package/dist/node/map-interface.d5eba479.css +2 -0
  113. package/dist/node/map-interface.d5eba479.css.map +1 -0
  114. package/dist/node/map-interface.f413c362.js +2 -0
  115. package/dist/node/map-interface.f413c362.js.map +1 -0
  116. package/dist/node/{map-interface.43014209.js → map-interface.fdd35e74.js} +2 -2
  117. package/dist/node/map-interface.fdd35e74.js.map +1 -0
  118. package/package.json +3 -3
  119. package/src/index.ts +1 -1
  120. package/src/location-details/fetch.ts +57 -0
  121. package/src/{map-panel/components/info-drawer → location-details}/fossil-collections/collections.tsx +1 -1
  122. package/src/{map-panel/components/info-drawer → location-details}/fossil-collections/index.ts +1 -1
  123. package/src/location-details/index.ts +5 -0
  124. package/src/{map-panel/components → location-details}/info-blocks.ts +7 -5
  125. package/src/location-details/location-details.stories.ts +104 -0
  126. package/src/{map-panel/components/info-drawer → location-details}/macrostrat-linked.ts +28 -20
  127. package/src/{map-panel/components/info-drawer → location-details}/physiography.ts +8 -7
  128. package/src/{map-panel/components/info-drawer → location-details}/reg-strat.ts +26 -7
  129. package/src/{map-panel/components/info-drawer → location-details}/xdd-panel/index.ts +6 -2
  130. package/dist/cjs/map-interface.0108e742.js +0 -24
  131. package/dist/cjs/map-interface.0108e742.js.map +0 -1
  132. package/dist/cjs/map-interface.02835ba5.js +0 -46
  133. package/dist/cjs/map-interface.02835ba5.js.map +0 -1
  134. package/dist/cjs/map-interface.0f2392a0.css +0 -64
  135. package/dist/cjs/map-interface.0f2392a0.css.map +0 -1
  136. package/dist/cjs/map-interface.134ad930.js.map +0 -1
  137. package/dist/cjs/map-interface.141c7329.js +0 -58
  138. package/dist/cjs/map-interface.141c7329.js.map +0 -1
  139. package/dist/cjs/map-interface.1be58b40.css +0 -69
  140. package/dist/cjs/map-interface.1be58b40.css.map +0 -1
  141. package/dist/cjs/map-interface.2a32a290.js +0 -98
  142. package/dist/cjs/map-interface.2a32a290.js.map +0 -1
  143. package/dist/cjs/map-interface.3f968b46.js +0 -381
  144. package/dist/cjs/map-interface.3f968b46.js.map +0 -1
  145. package/dist/cjs/map-interface.4264e7e1.js.map +0 -1
  146. package/dist/cjs/map-interface.5737346f.js +0 -113
  147. package/dist/cjs/map-interface.5737346f.js.map +0 -1
  148. package/dist/cjs/map-interface.58c87b08.js +0 -29
  149. package/dist/cjs/map-interface.58c87b08.js.map +0 -1
  150. package/dist/cjs/map-interface.71259cf9.css.map +0 -1
  151. package/dist/cjs/map-interface.937c0b90.js +0 -60
  152. package/dist/cjs/map-interface.937c0b90.js.map +0 -1
  153. package/dist/cjs/map-interface.9893b047.js +0 -38
  154. package/dist/cjs/map-interface.9893b047.js.map +0 -1
  155. package/dist/cjs/map-interface.aeb112a6.js +0 -115
  156. package/dist/cjs/map-interface.aeb112a6.js.map +0 -1
  157. package/dist/cjs/map-interface.d8e62b02.js +0 -17
  158. package/dist/cjs/map-interface.d8e62b02.js.map +0 -1
  159. package/dist/cjs/map-interface.ee59fc6e.js +0 -32
  160. package/dist/cjs/map-interface.ee59fc6e.js.map +0 -1
  161. package/dist/cjs/map-interface.ff2231f5.js +0 -37
  162. package/dist/cjs/map-interface.ff2231f5.js.map +0 -1
  163. package/dist/esm/map-interface.0258302d.js +0 -7
  164. package/dist/esm/map-interface.0258302d.js.map +0 -1
  165. package/dist/esm/map-interface.17a0e9a0.js +0 -51
  166. package/dist/esm/map-interface.17a0e9a0.js.map +0 -1
  167. package/dist/esm/map-interface.2b94a8ad.js.map +0 -1
  168. package/dist/esm/map-interface.36bab86c.js +0 -31
  169. package/dist/esm/map-interface.36bab86c.js.map +0 -1
  170. package/dist/esm/map-interface.409f6268.js +0 -34
  171. package/dist/esm/map-interface.5d011c2d.js +0 -110
  172. package/dist/esm/map-interface.5d011c2d.js.map +0 -1
  173. package/dist/esm/map-interface.6c44beb8.js +0 -49
  174. package/dist/esm/map-interface.6c44beb8.js.map +0 -1
  175. package/dist/esm/map-interface.6d7e89e5.js +0 -104
  176. package/dist/esm/map-interface.6d7e89e5.js.map +0 -1
  177. package/dist/esm/map-interface.70fdf48a.js +0 -64
  178. package/dist/esm/map-interface.70fdf48a.js.map +0 -1
  179. package/dist/esm/map-interface.a0ea0c86.js +0 -18
  180. package/dist/esm/map-interface.a0ea0c86.js.map +0 -1
  181. package/dist/esm/map-interface.b965dc94.js +0 -40
  182. package/dist/esm/map-interface.b965dc94.js.map +0 -1
  183. package/dist/esm/map-interface.ba171178.js +0 -376
  184. package/dist/esm/map-interface.ba171178.js.map +0 -1
  185. package/dist/esm/map-interface.c257cac1.js.map +0 -1
  186. package/dist/esm/map-interface.ce6edbfa.js +0 -37
  187. package/dist/esm/map-interface.ce6edbfa.js.map +0 -1
  188. package/dist/esm/map-interface.d86c2fc5.js +0 -32
  189. package/dist/esm/map-interface.d86c2fc5.js.map +0 -1
  190. package/dist/esm/map-interface.f5dccd21.js +0 -92
  191. package/dist/esm/map-interface.f5dccd21.js.map +0 -1
  192. package/dist/node/map-interface.01fee32b.js +0 -2
  193. package/dist/node/map-interface.01fee32b.js.map +0 -1
  194. package/dist/node/map-interface.0755d245.css +0 -2
  195. package/dist/node/map-interface.0755d245.css.map +0 -1
  196. package/dist/node/map-interface.2c94d421.js +0 -2
  197. package/dist/node/map-interface.2c94d421.js.map +0 -1
  198. package/dist/node/map-interface.42e8f2ba.js +0 -2
  199. package/dist/node/map-interface.42e8f2ba.js.map +0 -1
  200. package/dist/node/map-interface.43014209.js.map +0 -1
  201. package/dist/node/map-interface.4e422f5e.js +0 -2
  202. package/dist/node/map-interface.4e422f5e.js.map +0 -1
  203. package/dist/node/map-interface.55c953be.js +0 -2
  204. package/dist/node/map-interface.55c953be.js.map +0 -1
  205. package/dist/node/map-interface.791d22a7.css +0 -2
  206. package/dist/node/map-interface.791d22a7.css.map +0 -1
  207. package/dist/node/map-interface.792ebe85.js +0 -2
  208. package/dist/node/map-interface.792ebe85.js.map +0 -1
  209. package/dist/node/map-interface.7963263e.js +0 -2
  210. package/dist/node/map-interface.7963263e.js.map +0 -1
  211. package/dist/node/map-interface.9072849e.js +0 -2
  212. package/dist/node/map-interface.9072849e.js.map +0 -1
  213. package/dist/node/map-interface.bf061b97.js +0 -2
  214. package/dist/node/map-interface.bf061b97.js.map +0 -1
  215. package/dist/node/map-interface.c3275c05.js +0 -2
  216. package/dist/node/map-interface.c3275c05.js.map +0 -1
  217. package/dist/node/map-interface.ca6e8916.js +0 -2
  218. package/dist/node/map-interface.ca6e8916.js.map +0 -1
  219. package/dist/node/map-interface.d430c066.css +0 -2
  220. package/dist/node/map-interface.d430c066.css.map +0 -1
  221. package/dist/node/map-interface.dd613f56.js +0 -2
  222. package/dist/node/map-interface.dd613f56.js.map +0 -1
  223. package/dist/node/map-interface.ecfe462b.js +0 -2
  224. package/dist/node/map-interface.ecfe462b.js.map +0 -1
  225. package/dist/node/map-interface.efc5dd17.js.map +0 -1
  226. package/dist/node/map-interface.f42969c3.js +0 -2
  227. package/dist/node/map-interface.f42969c3.js.map +0 -1
  228. package/src/map-panel/components/buttons.module.styl +0 -5
  229. package/src/map-panel/components/buttons.ts +0 -56
  230. package/src/map-panel/components/card.module.styl +0 -43
  231. package/src/map-panel/components/closeable-card.ts +0 -64
  232. package/src/map-panel/components/docs.module.styl +0 -93
  233. package/src/map-panel/components/docs.ts +0 -92
  234. package/src/map-panel/components/info-drawer/index.ts +0 -115
  235. package/src/map-panel/components/transitions/index.ts +0 -24
  236. package/src/map-panel/components/transitions/main.module.styl +0 -55
  237. package/src/map-panel/index.ts +0 -1
  238. /package/src/{map-panel/components/info-drawer → location-details}/fossil-collections/main.module.sass +0 -0
  239. /package/src/{map-panel/components → location-details}/info-blocks.module.styl +0 -0
  240. /package/src/{map-panel/components/info-drawer → location-details}/main.module.styl +0 -0
  241. /package/src/{map-panel → location-details}/utils/formatting.ts +0 -0
  242. /package/src/{map-panel → location-details}/utils/fossils.ts +0 -0
  243. /package/src/{map-panel → location-details}/utils/index.ts +0 -0
  244. /package/src/{map-panel/components/info-drawer → location-details}/xdd-panel/Article.tsx +0 -0
  245. /package/src/{map-panel/components/info-drawer → location-details}/xdd-panel/Journal.tsx +0 -0
@@ -1,56 +0,0 @@
1
- import { hyperStyled } from "@macrostrat/hyper";
2
- import { Button, ButtonProps, IconName } from "@blueprintjs/core";
3
- import styles from "./buttons.module.styl";
4
-
5
- const h = hyperStyled(styles);
6
-
7
- export const LinkButton = (props: ButtonProps & { to: string }) => {
8
- const { to, ...rest } = props;
9
- // Check if in react-router context
10
- let onClick = () => {};
11
- try {
12
- onClick = useHashNavigate(to);
13
- } catch (err) {
14
- console.warn("LinkButton used outside of react-router context");
15
- }
16
-
17
- return h(Button, {
18
- ...rest,
19
- onClick,
20
- });
21
- };
22
-
23
- type ListButtonProps = ButtonProps & {
24
- icon: React.ComponentType | IconName | React.ReactNode;
25
- };
26
-
27
- function isIconName(x: ListButtonProps["icon"]): x is IconName {
28
- return typeof x == "string";
29
- }
30
-
31
- export const ListButton = (props: ListButtonProps) => {
32
- let { icon, ...rest } = props;
33
- if (!isIconName(props.icon)) {
34
- icon = h(props.icon, { size: 20 });
35
- }
36
- return h(Button, { ...rest, className: "list-button", icon });
37
- };
38
-
39
- type LayerButtonProps = ListButtonProps & {
40
- layer: MapLayer;
41
- name: string;
42
- buttonComponent?: React.ComponentType<ListButtonProps>;
43
- };
44
-
45
- export function LayerButton(props: LayerButtonProps) {
46
- const { buttonComponent = ListButton, layer, name, ...rest } = props;
47
- const active = useAppState((state) => state.core.mapLayers.has(layer));
48
- const runAction = useAppActions();
49
- const onClick = () => runAction({ type: "toggle-map-layer", layer });
50
- return h(buttonComponent, {
51
- active,
52
- onClick,
53
- text: name,
54
- ...rest,
55
- });
56
- }
@@ -1,43 +0,0 @@
1
- .card-header-left button
2
- margin-right 5px
3
-
4
- .card-content
5
- h2:first-child
6
- margin-top 0
7
- overflow-y scroll
8
- padding 10px
9
- min-height 0
10
-
11
-
12
- .spacer
13
- flex-grow 1
14
- pointer-events none
15
-
16
- .closeable-card
17
- padding 0
18
- min-height 40px
19
- flex-shrink 1
20
- display flex
21
- flex-direction: column
22
- .card-header, .card-header-left
23
- display: flex
24
- align-items: center
25
- .spacer
26
- flex-grow 0.01
27
- .card-header-left
28
- justify-content: flex-start
29
- flex 1
30
- min-width: 0
31
- overflow-x: hidden
32
- .card-header
33
- justify-content space-between
34
- padding 5px
35
- border-bottom 1px solid var(--panel-rule-color)
36
- height 40px
37
-
38
-
39
- @media screen and (max-width: 768px) {
40
- .closeable-card {
41
- border-radius: 0px;
42
- }
43
- }
@@ -1,64 +0,0 @@
1
- import { Card, Button } from "@blueprintjs/core";
2
- import hyper from "@macrostrat/hyper";
3
- import classNames from "classnames";
4
- import styles from "./card.module.styl";
5
-
6
- const h = hyper.styled(styles);
7
-
8
- const CloseableCardHeader = (props) => h("div.card-header-left", props);
9
-
10
- const CloseableCard = (props) => {
11
- let {
12
- isOpen = true,
13
- onClose,
14
- title,
15
- transitionDuration,
16
- showHeader = true,
17
- insetContent = true,
18
- renderHeader,
19
- children,
20
- className,
21
- ...rest
22
- } = props;
23
- if (!isOpen) {
24
- return null;
25
- }
26
- rest.className = classNames("closeable-card", className);
27
-
28
- // Set header from "CloseableCardHeader" unless not set,
29
- // otherwise use "title"
30
- let header = null;
31
- if (renderHeader != null) {
32
- header = renderHeader();
33
- }
34
-
35
- if (header == null && title != null) {
36
- if (title != null) {
37
- title = h("h4", title);
38
- }
39
- header = h([title]);
40
- }
41
-
42
- return h(Card, rest, [
43
- h.if(showHeader)("div.card-header", [
44
- header,
45
- //h("div.spacer"),
46
- h(Button, {
47
- icon: "small-cross",
48
- className: "card-close-button",
49
- minimal: true,
50
- "aria-label": "Close",
51
- onClick: onClose,
52
- }),
53
- ]),
54
- h(
55
- "div.card-content",
56
- { className: classNames({ inset: insetContent }) },
57
- children,
58
- ),
59
- ]);
60
- };
61
-
62
- CloseableCard.Header = CloseableCardHeader;
63
-
64
- export { CloseableCard };
@@ -1,93 +0,0 @@
1
- .documentation-figure
2
- position relative
3
- display: flex
4
- flex-direction: column
5
- clear: both
6
- margin: 0.5em auto 1em
7
- &.right
8
- max-width: 50%
9
- float: right
10
- margin 0.5em 0em 1em 1em
11
-
12
- &.left
13
- max-width: 50%
14
- float: left
15
- margin 0.5em 1em 1em 0
16
-
17
- &>img, &>video
18
- float: none
19
- width: 100%
20
- margin: 0
21
- max-width: 100%
22
- figcaption
23
- text-align center
24
- font-size 0.8em
25
- margin-top: 0.25em
26
- font-style italic
27
- color var(--secondary-text-color)
28
-
29
- .documentation-video-standalone
30
- max-width: 50%
31
- float: left
32
- margin 0.5em 1em 1em 0
33
-
34
- .dev-tag
35
- font-size 0.8em
36
- font-weight 400
37
- padding: 0.25em 0.5em
38
- margin 0.2em 0.5em 0
39
- border-radius: 4px
40
- font-style italic
41
- float right
42
- background-color: var(--accent-secondary-color)
43
- color: var(--text-subtle-color)
44
-
45
- :global
46
-
47
- .text-panel
48
- p, ul, ol
49
- hyphens: auto
50
- img, video
51
- border-radius: 6px
52
- box-shadow: 0 0 6px var(--card-shadow-color)
53
- code
54
- font-size: 0.9em
55
-
56
- .text-panel
57
- margin 0em 0.5em
58
- h2, h3, h4
59
- // Make sure headings clear floats (for videos)
60
- clear: both
61
- display: inline-block
62
- width: 100%
63
- margin 1em 0 0.5em
64
- ul
65
- margin-top 0.2em
66
-
67
- .new-swatch
68
- font-size 0.8em
69
- font-weight 400
70
- display inline-block
71
- padding: 0.25em 0.5em
72
- margin 0 0.5em
73
- border-radius: 4px
74
- font-style italic
75
- float right
76
- background-color: var(--ui-color-accent)
77
- color: var(--ui-color-accent-text)
78
-
79
- h2.version .version-name
80
- background-color: var(--ui-color-accent)
81
- border-radius: 4px
82
-
83
- .version
84
- .version-name
85
- display inline-block
86
- padding: 0.25em 0.5em
87
- margin-right 0.5em
88
- color: var(--ui-color-accent-text)
89
- code
90
- font-size 0.9em
91
- font-weight: 400
92
- .date
93
- font-style italic
@@ -1,92 +0,0 @@
1
- import { Alignment } from "@blueprintjs/core";
2
- import { routerBasename } from "@macrostrat-web/settings";
3
- import hyper from "@macrostrat/hyper";
4
- import classNames from "classnames";
5
- import { useInView } from "react-intersection-observer";
6
- import { HashLink } from "react-router-hash-link";
7
- import { joinURL } from "@macrostrat/ui-components";
8
- import styles from "./docs.module.styl";
9
-
10
- const h = hyper.styled(styles);
11
-
12
- const urlBase = "https://macrostrat-media.s3.amazonaws.com/maps/docs/";
13
-
14
- function DocsMediaFile({ href, lazy = true, className }) {
15
- const { ref, inView } = useInView({ triggerOnce: true });
16
- let src = null;
17
- if (inView || !lazy) {
18
- src = joinURL(urlBase, href);
19
- }
20
- if (href.endsWith(".mp4")) {
21
- return h("video", {
22
- ref,
23
- autoPlay: true,
24
- loop: true,
25
- playsInline: true,
26
- muted: true,
27
- type: "video/mp4",
28
- src,
29
- className,
30
- });
31
- }
32
- return h("img", {
33
- ref,
34
- src,
35
- className,
36
- });
37
- }
38
-
39
- export function DocsMedia({
40
- children,
41
- width,
42
- align = Alignment.RIGHT,
43
- ...rest
44
- }) {
45
- const className = classNames(align, {
46
- captioned: children != null,
47
- });
48
- return h("figure.documentation-figure", { style: { width }, className }, [
49
- h(DocsMediaFile, rest),
50
- h.if(children != null)("figcaption.caption", children),
51
- ]);
52
- }
53
-
54
- export function DocsVideo({ slug, lazy = true, className }) {
55
- // For legacy reasons, the alignment is set to left
56
- return h(DocsMedia, {
57
- href: slug + ".mp4",
58
- lazy,
59
- className,
60
- align: Alignment.LEFT,
61
- });
62
- }
63
-
64
- export function InternalLink({ to, children }) {
65
- // We'd use a link component, but it doesn't properly navigate to the hash state
66
- return h(
67
- "a.internal-link",
68
- {
69
- href: joinURL(routerBasename, to),
70
- },
71
- children,
72
- );
73
- }
74
-
75
- export function NewSwatch({ children, version = 0 }) {
76
- return h(
77
- HashLink,
78
- {
79
- to: routerBasename + `changelog#version-${version}`,
80
- className: "new-swatch",
81
- },
82
- children,
83
- );
84
- }
85
-
86
- export function Version({ spec, date, major = true, dev = false }) {
87
- return h(`h${major ? 2 : 3}.version`, { id: `version-${spec}` }, [
88
- h("span.version-name", ["Version ", h("code", spec)]),
89
- h("span.date", date),
90
- h.if(dev)("span.dev-tag", "dev"),
91
- ]);
92
- }
@@ -1,115 +0,0 @@
1
- import hyper from "@macrostrat/hyper";
2
- import { LocationPanel } from "@macrostrat/map-interface";
3
- import { MacrostratLinkedData } from "./macrostrat-linked";
4
- import { Physiography } from "./physiography";
5
- import styles from "./main.module.styl";
6
- import { LoadingArea } from "../transitions";
7
- import { RegionalStratigraphy } from "./reg-strat";
8
- import { XddExpansion } from "./xdd-panel";
9
- import { useAPIResult } from "@macrostrat/ui-components";
10
- // import { apiV2Prefix, gddDomain } from "@macrostrat-web/settings";
11
- const apiV2Prefix = `https://dev.macrostrat.org/api/v2`;
12
- const gddDomain = `https://xdd.wisc.edu`;
13
-
14
- const h = hyper.styled(styles);
15
-
16
- export function InfoDrawer(props) {
17
- const {
18
- className,
19
- position,
20
- zoom,
21
- setSelectedLocation,
22
- children = null,
23
- } = props;
24
-
25
- const { lat, lng } = position;
26
-
27
- const mapInfo = fetchMapInfo(lng, lat, zoom);
28
- const columnInfo = fetchColumnInfo(lng, lat);
29
- const xddInfo = fetchXddInfo(mapInfo?.mapData?.[0]?.macrostrat?.strat_names);
30
-
31
- const fetchingMapInfo = mapInfo == null;
32
-
33
- return h(
34
- LocationPanel,
35
- {
36
- className,
37
- position,
38
- elevation: mapInfo?.elevation,
39
- zoom,
40
- onClose: () => setSelectedLocation(null),
41
- loading: mapInfo == null,
42
- showCopyPositionButton: true,
43
- contentContainer: "div.infodrawer-content-holder",
44
- },
45
- [
46
- h(
47
- LoadingArea,
48
- { loaded: !fetchingMapInfo, className: "infodrawer-content" },
49
- h.if(!fetchingMapInfo)(InfoDrawerMainPanel, {
50
- mapInfo,
51
- columnInfo,
52
- xddInfo,
53
- }),
54
- ),
55
- children,
56
- ],
57
- );
58
- }
59
-
60
- function InfoDrawerMainPanel({ mapInfo, columnInfo, xddInfo }) {
61
- if (!mapInfo || !mapInfo.mapData) {
62
- return null;
63
- }
64
-
65
- let source =
66
- mapInfo && mapInfo.mapData && mapInfo.mapData.length
67
- ? mapInfo.mapData[0]
68
- : {
69
- name: null,
70
- descrip: null,
71
- comments: null,
72
- liths: [],
73
- b_int: {},
74
- t_int: {},
75
- ref: {},
76
- };
77
-
78
- return h([
79
- h(RegionalStratigraphy, {
80
- mapInfo,
81
- columnInfo,
82
- }),
83
- // h(FossilCollections, { data: pbdbData, expanded: true }),
84
- h(MacrostratLinkedData, {
85
- mapInfo,
86
- bedrockMatchExpanded: true,
87
- source,
88
- }),
89
- h.if(xddInfo)(XddExpansion, { xddInfo }),
90
- h(Physiography, { mapInfo }),
91
- ]);
92
- }
93
-
94
- function fetchMapInfo(lng, lat, z) {
95
- return useAPIResult(`${apiV2Prefix}/mobile/map_query_v2`, {
96
- lng,
97
- lat,
98
- z,
99
- })?.success?.data;
100
- }
101
-
102
- function fetchColumnInfo(lng, lat) {
103
- return useAPIResult(`${apiV2Prefix}/columns`, {
104
- lat,
105
- lng,
106
- response: "long",
107
- })?.success?.data?.[0];
108
- }
109
-
110
- function fetchXddInfo(stratNames) {
111
- return useAPIResult(`${gddDomain}/api/v1/snippets`, {
112
- article_limit: 20,
113
- term: stratNames?.map((d) => d.rank_name).join(","),
114
- })?.success?.data;
115
- }
@@ -1,24 +0,0 @@
1
- import hyper from "@macrostrat/hyper";
2
- import styles from "./main.module.styl";
3
- import classNames from "classnames";
4
- import { Spinner } from "@blueprintjs/core";
5
- import { useTransition } from "transition-hook";
6
-
7
- const h = hyper.styled(styles);
8
-
9
- function LoadingArea(props) {
10
- const { loaded, children = null, className } = props;
11
- const trans = useTransition(loaded, 500);
12
- const invTrans = useTransition(!loaded, 500);
13
-
14
- return h(
15
- "div.loading-area",
16
- { className: classNames(className, trans.stage) },
17
- [
18
- h.if(invTrans.shouldMount)("div.spinner", null, h(Spinner)),
19
- h.if(trans.shouldMount)("div.data", null, children),
20
- ],
21
- );
22
- }
23
-
24
- export { LoadingArea };
@@ -1,55 +0,0 @@
1
- transitionable()
2
- &:global(.enter)
3
- opacity: 0
4
- &:global(.enter-active)
5
- opacity: 1
6
- transition: opacity 0.5s ease-in-out, height 0.5s ease-in-out, max-height 0.5s ease-in-out
7
- &:global(.exit)
8
- opacity: 1
9
- &:global(.exit-active)
10
- opacity: 0
11
- transition: opacity 0.5s ease-in-out, height 0.5s ease-in-out, max-height 0.5s ease-in-out
12
- transition: height 0.5s ease-in-out, max-height 0.5s ease-in-out
13
-
14
- .transition-item
15
- transitionable()
16
-
17
- .loading-area
18
- .spinner, .data
19
- transition: height 0.5s ease-in, opacity 0.2s ease-in
20
-
21
- .spinner
22
- position absolute
23
- top 0
24
- left 0
25
- width: 100%
26
- height 100%
27
- min-height: 90px
28
- background-color: var(--panel-background-color)
29
- padding: 15px
30
-
31
- &.enter
32
- .spinner
33
- height: 0
34
- opacity: 0
35
-
36
- .data
37
- opacity: 1
38
-
39
- &.from
40
- .spinner
41
- height: 90px
42
- opacity: 1
43
-
44
- .data
45
- opacity: 0
46
-
47
- &.leave
48
- .spinner
49
- height: 90px
50
- opacity: 1
51
-
52
- .data
53
- opacity: 0
54
-
55
- //.transition-item.infodrawer-info
@@ -1 +0,0 @@
1
- export * from "./components/info-drawer";