@macrostrat/column-views 1.0.0 → 1.0.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.
- package/CHANGELOG.md +11 -3
- package/dist/{age-axis.7ce58d66.js → esm/age-axis.64c509ee.js} +11 -11
- package/dist/{age-axis.7ce58d66.js.map → esm/age-axis.64c509ee.js.map} +1 -1
- package/dist/{boxes.6d3192e6.js → esm/boxes.13968b76.js} +26 -26
- package/dist/{boxes.6d3192e6.js.map → esm/boxes.13968b76.js.map} +1 -1
- package/dist/{boxes.module.dd631fe3.css → esm/boxes.module.28873d08.css} +1 -1
- package/dist/{boxes.module.dd631fe3.css.map → esm/boxes.module.28873d08.css.map} +1 -1
- package/dist/{boxes.module.998ff312.js → esm/boxes.module.605bdcd6.js} +1 -1
- package/dist/{boxes.module.998ff312.js.map → esm/boxes.module.605bdcd6.js.map} +1 -1
- package/dist/esm/carbon-isotopes.3b502a9e.js +11 -0
- package/dist/{carbon-isotopes.6d9bddcf.js.map → esm/carbon-isotopes.3b502a9e.js.map} +1 -1
- package/dist/{column.e35a471f.js → esm/column.8dd26e1a.js} +21 -21
- package/dist/{column.e35a471f.js.map → esm/column.8dd26e1a.js.map} +1 -1
- package/dist/{column.e901b5d4.js → esm/column.db058031.js} +17 -17
- package/dist/{column.e901b5d4.js.map → esm/column.db058031.js.map} +1 -1
- package/dist/{column.module.c9df6edf.css → esm/column.module.039d872c.css} +28 -15
- package/dist/esm/column.module.039d872c.css.map +1 -0
- package/dist/{column.module.35ba04e7.js → esm/column.module.7f47d25a.js} +1 -1
- package/dist/{column.module.35ba04e7.js.map → esm/column.module.7f47d25a.js.map} +1 -1
- package/dist/{column.module.35184ea7.css → esm/column.module.cbb072df.css} +1 -1
- package/dist/{column.module.35184ea7.css.map → esm/column.module.cbb072df.css.map} +1 -1
- package/dist/{column.module.2e29259c.js → esm/column.module.e632868a.js} +1 -4
- package/dist/esm/column.module.e632868a.js.map +1 -0
- package/dist/{composite.494beffc.js → esm/composite.608a4ca2.js} +20 -20
- package/dist/{composite.494beffc.js.map → esm/composite.608a4ca2.js.map} +1 -1
- package/dist/{composite.module.6359deba.js → esm/composite.module.0638e7ee.js} +1 -1
- package/dist/{composite.module.6359deba.js.map → esm/composite.module.0638e7ee.js.map} +1 -1
- package/dist/esm/composite.module.69a38fd1.css +4 -0
- package/dist/{composite.module.5cc0e747.css.map → esm/composite.module.69a38fd1.css.map} +1 -1
- package/dist/{core.f3824dd8.js → esm/core.4db8e452.js} +15 -15
- package/dist/{core.f3824dd8.js.map → esm/core.4db8e452.js.map} +1 -1
- package/dist/{data-area.f9bb9ad9.js → esm/data-area.daff8da0.js} +15 -15
- package/dist/{data-area.f9bb9ad9.js.map → esm/data-area.daff8da0.js.map} +1 -1
- package/dist/{data-provider.61ef7f9a.js → esm/data-provider.1506eb64.js} +8 -8
- package/dist/{data-provider.61ef7f9a.js.map → esm/data-provider.1506eb64.js.map} +1 -1
- package/dist/{helpers.2af05ee4.js → esm/helpers.8a03cfc7.js} +6 -6
- package/dist/{helpers.2af05ee4.js.map → esm/helpers.8a03cfc7.js.map} +1 -1
- package/dist/{index.js → esm/index.js} +8 -8
- package/dist/{index.module.de76feb2.css → esm/index.module.0844afd8.css} +1 -1
- package/dist/{index.module.de76feb2.css.map → esm/index.module.0844afd8.css.map} +1 -1
- package/dist/{index.module.8fad0020.js → esm/index.module.24fe3a2e.js} +1 -1
- package/dist/{index.module.8fad0020.js.map → esm/index.module.24fe3a2e.js.map} +1 -1
- package/dist/{isotopes-column.b5442b4d.js → esm/isotopes-column.7cb5cc45.js} +33 -33
- package/dist/{isotopes-column.b5442b4d.js.map → esm/isotopes-column.7cb5cc45.js.map} +1 -1
- package/dist/{layers.946aaa37.js → esm/layers.ad5fd25d.js} +31 -31
- package/dist/{layers.946aaa37.js.map → esm/layers.ad5fd25d.js.map} +1 -1
- package/dist/{map.e782010f.js → esm/map.7aa26f17.js} +17 -17
- package/dist/{map.e782010f.js.map → esm/map.7aa26f17.js.map} +1 -1
- package/dist/{names.ab14789e.js → esm/names.f6a4e9a4.js} +11 -11
- package/dist/{names.ab14789e.js.map → esm/names.f6a4e9a4.js.map} +1 -1
- package/dist/{providers.abcb2cbe.js → esm/providers.cd1e652f.js} +7 -7
- package/dist/{providers.abcb2cbe.js.map → esm/providers.cd1e652f.js.map} +1 -1
- package/dist/{resolvers.2949c4c0.js → esm/resolvers.b5c82b78.js} +1 -1
- package/dist/{resolvers.2949c4c0.js.map → esm/resolvers.b5c82b78.js.map} +1 -1
- package/dist/{section.6f6fc929.js → esm/section.cc1b1100.js} +19 -19
- package/dist/{section.6f6fc929.js.map → esm/section.cc1b1100.js.map} +1 -1
- package/dist/{selection-popover.7e008544.js → esm/selection-popover.17d1bd55.js} +9 -9
- package/dist/{selection-popover.7e008544.js.map → esm/selection-popover.17d1bd55.js.map} +1 -1
- package/dist/{selection-popover.module.2732ebc0.css → esm/selection-popover.module.0a701258.css} +1 -1
- package/dist/{selection-popover.module.2732ebc0.css.map → esm/selection-popover.module.0a701258.css.map} +1 -1
- package/dist/{selection-popover.module.fdbfb40e.js → esm/selection-popover.module.e22f5183.js} +1 -1
- package/dist/{selection-popover.module.fdbfb40e.js.map → esm/selection-popover.module.e22f5183.js.map} +1 -1
- package/dist/{selection.add9f8b0.js → esm/selection.bbf26d0e.js} +23 -23
- package/dist/{selection.add9f8b0.js.map → esm/selection.bbf26d0e.js.map} +1 -1
- package/dist/{store.c5271371.js → esm/store.25eaa168.js} +6 -6
- package/dist/{store.c5271371.js.map → esm/store.25eaa168.js.map} +1 -1
- package/dist/{types.ff938b22.js → esm/types.f016e032.js} +1 -1
- package/dist/{types.ff938b22.js.map → esm/types.f016e032.js.map} +1 -1
- package/dist/{unit-details.0c1edd00.js → esm/unit-details.56ff8b70.js} +30 -30
- package/dist/{unit-details.0c1edd00.js.map → esm/unit-details.56ff8b70.js.map} +1 -1
- package/dist/{units.5ec6a44c.js → esm/units.361088d4.js} +13 -13
- package/dist/{units.5ec6a44c.js.map → esm/units.361088d4.js.map} +1 -1
- package/dist/node/index.js +2 -0
- package/dist/node/index.js.map +1 -0
- package/package.json +19 -10
- package/src/column.module.sass +25 -12
- package/dist/carbon-isotopes.6d9bddcf.js +0 -11
- package/dist/column.module.2e29259c.js.map +0 -1
- package/dist/column.module.c9df6edf.css.map +0 -1
- package/dist/composite.module.5cc0e747.css +0 -4
- /package/dist/{index.d.ts → esm/index.d.ts} +0 -0
- /package/dist/{index.d.ts.map → esm/index.d.ts.map} +0 -0
- /package/dist/{index.js.map → esm/index.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;;;;;;;AA4BA,SAAS,0CACP,GAAU,EACV,IAAkC;IAElC,MAAM,YAAE,QAAQ,EAAE,GAAG;IAErB,MAAM,MAAM,CAAA,GAAA,yCAAgB,EAAE;IAC9B,OAAO;QACL,QAAQ,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC;QACvB,YAAY,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC;QAC3B,MAAM;QACN,IAAI,IAAI,OAAO;IACjB;AACF;AAEA,MAAM,4CAAsB,CAAC;IAC3B,OAAO,IAAI,SAAS,CACjB,OAAO,CAAC,OAAO,UACf,OAAO,CAAC,MAAM,aACd,OAAO,CAAC,MAAM;AACnB;AAEA,SAAS,sCAAgB,KAAoB;IAC3C,MAAM,MAAM,CAAA,GAAA,iBAAS,EAAE,CAAA,GAAA,oBAAY;IACnC,MAAM,QACJ,IAAI,iBACJ,aAAa,oBACb,mBAAmB,CAAC,MAA8B,IAAc,qBAChE,gBAAgB,cAChB,YAAY,KAAK,WACjB,GAAG,MACJ,GAAG;IAEJ,MAAM,SAAE,KAAK,EAAE,GAAG;IAElB,MAAM,sBAAsB,CAAA,GAAA,kBAAU,EACpC,CAAC;QACC,IAAI,iBAAiB,GAAG,OAAO;QAC/B,MAAM,KAAK,KAAK,GAAG,CAAC,MAAM,EAAE,UAAU,IAAI,MAAM,EAAE,MAAM;QACxD,OAAO,KAAK;IACd,GACA;QAAC;QAAO;KAAc;IAGxB,IAAI,aAAa,MAAM,OAAO;IAC9B,MAAM,QAAoB,UACvB,MAAM,CAAC,kBACP,GAAG,CAAC,CAAC,IAAa,0CAAgB,GAAG;YAAE,UAAU,IAAI,QAAQ;QAAC,IAC9D,MAAM,CAAC;IAEV,OAAO,CAAA,GAAA,sBAAA,EAAE,CAAA,GAAA,kBAAU,GAAG;QACpB,WAAW,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpC,UAAU;uBACV;eACA;QACA,cAAc;YACZ,aAAa;QACf;QACA,GAAG,IAAI;IACT;AACF;AAEA,MAAM,4CAAiB,CAAA,GAAA,YAAI,EAAE,IAAI,CAAC;AAQ3B,SAAS,0CAAgB,KAAqB;IACnD,MAAM,mBACJ,kBAAkB,0DAClB,aAAa,EACb,GAAG,MACJ,GAAG;IAEJ,MAAM,gBAAgB,CAAC;QACrB,MAAM,QAAE,IAAI,EAAE,GAAG;QACjB,OAAO,CAAA,GAAA,sBAAA,EAAE,oBAAoB,gBAAgB,KAAK,IAAI;IACxD;IAEA,OAAO,CAAA,GAAA,sBAAA,EAAE,2CAAgB;QACvB,eAAe,iBAAiB;QAChC,GAAG,IAAI;IACT;AACF","sources":["packages/column-views/src/units/names.ts"],"sourcesContent":["import h from \"@macrostrat/hyper\";\nimport { useContext, useCallback } from \"react\";\nimport {\n ColumnContext,\n ColumnAxisType,\n NotesColumn,\n NotesColumnProps,\n} from \"@macrostrat/column-components\";\nimport type { ColumnDivision } from \"@macrostrat/column-components\";\nimport { IUnit, transformAxisType } from \"./types\";\nimport React from \"react\";\n\ninterface UnitDataProps extends NotesColumnProps {\n left?: number;\n transform?: string;\n noteComponent?: React.ComponentType<any>;\n shouldRenderNote?(div: ColumnDivision | IUnit, index: number): boolean;\n divisions?: IUnit[];\n minimumHeight?: number;\n}\n\ntype UnitNote = {\n height: number;\n top_height: number;\n data: IUnit;\n id: number;\n};\n\nfunction noteForDivision(\n div: IUnit,\n opts: { axisType: ColumnAxisType }\n): UnitNote {\n const { axisType } = opts;\n\n const key = transformAxisType(axisType);\n return {\n height: div[`b_${key}`],\n top_height: div[`t_${key}`],\n data: div,\n id: div.unit_id,\n };\n}\n\nconst defaultNameFunction = (div) => {\n return div.unit_name\n .replace(\"Mbr\", \"Member\")\n .replace(\"Fm\", \"Formation\")\n .replace(\"Gp\", \"Group\");\n};\n\nfunction UnitDataColumn_(props: UnitDataProps) {\n const ctx = useContext(ColumnContext);\n const {\n left,\n noteComponent,\n shouldRenderNote = (note: ColumnDivision | IUnit, i: number) => true,\n minimumHeight = 0,\n divisions = ctx?.divisions,\n ...rest\n } = props;\n\n const { scale } = ctx;\n\n const minimumHeightFilter = useCallback(\n (d) => {\n if (minimumHeight == 0) return true;\n const dy = Math.abs(scale(d.top_height) - scale(d.height));\n return dy > minimumHeight;\n },\n [scale, minimumHeight]\n );\n\n if (divisions == null) return null;\n const notes: UnitNote[] = divisions\n .filter(shouldRenderNote)\n .map((d: IUnit) => noteForDivision(d, { axisType: ctx.axisType }))\n .filter(minimumHeightFilter);\n\n return h(NotesColumn, {\n transform: `translate(${left || 0})`,\n editable: false,\n noteComponent,\n notes,\n forceOptions: {\n nodeSpacing: 1,\n },\n ...rest,\n });\n}\n\nconst UnitDataColumn = React.memo(UnitDataColumn_);\n\ninterface UnitNamesProps extends UnitDataProps {\n nameForDivision?(obj: IUnit): string;\n paddingLeft?: number;\n width: number;\n}\n\nexport function UnitNamesColumn(props: UnitNamesProps) {\n const {\n nameForDivision = defaultNameFunction,\n noteComponent,\n ...rest\n } = props;\n\n const NoteComponent = (props) => {\n const { note } = props;\n return h(\"p.col-note-label\", nameForDivision(note.data));\n };\n\n return h(UnitDataColumn, {\n noteComponent: noteComponent ?? NoteComponent,\n ...rest,\n });\n}\n\nexport type { UnitNamesProps };\nexport { defaultNameFunction, noteForDivision, UnitDataColumn };\n"],"names":[],"version":3,"file":"names.
|
|
1
|
+
{"mappings":";;;;;;;;;AA4BA,SAAS,0CACP,GAAU,EACV,IAAkC;IAElC,MAAM,YAAE,QAAQ,EAAE,GAAG;IAErB,MAAM,MAAM,CAAA,GAAA,yCAAgB,EAAE;IAC9B,OAAO;QACL,QAAQ,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC;QACvB,YAAY,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC;QAC3B,MAAM;QACN,IAAI,IAAI,OAAO;IACjB;AACF;AAEA,MAAM,4CAAsB,CAAC;IAC3B,OAAO,IAAI,SAAS,CACjB,OAAO,CAAC,OAAO,UACf,OAAO,CAAC,MAAM,aACd,OAAO,CAAC,MAAM;AACnB;AAEA,SAAS,sCAAgB,KAAoB;IAC3C,MAAM,MAAM,CAAA,GAAA,iBAAS,EAAE,CAAA,GAAA,oBAAY;IACnC,MAAM,QACJ,IAAI,iBACJ,aAAa,oBACb,mBAAmB,CAAC,MAA8B,IAAc,qBAChE,gBAAgB,cAChB,YAAY,KAAK,WACjB,GAAG,MACJ,GAAG;IAEJ,MAAM,SAAE,KAAK,EAAE,GAAG;IAElB,MAAM,sBAAsB,CAAA,GAAA,kBAAU,EACpC,CAAC;QACC,IAAI,iBAAiB,GAAG,OAAO;QAC/B,MAAM,KAAK,KAAK,GAAG,CAAC,MAAM,EAAE,UAAU,IAAI,MAAM,EAAE,MAAM;QACxD,OAAO,KAAK;IACd,GACA;QAAC;QAAO;KAAc;IAGxB,IAAI,aAAa,MAAM,OAAO;IAC9B,MAAM,QAAoB,UACvB,MAAM,CAAC,kBACP,GAAG,CAAC,CAAC,IAAa,0CAAgB,GAAG;YAAE,UAAU,IAAI,QAAQ;QAAC,IAC9D,MAAM,CAAC;IAEV,OAAO,CAAA,GAAA,sBAAA,EAAE,CAAA,GAAA,kBAAU,GAAG;QACpB,WAAW,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpC,UAAU;uBACV;eACA;QACA,cAAc;YACZ,aAAa;QACf;QACA,GAAG,IAAI;IACT;AACF;AAEA,MAAM,4CAAiB,CAAA,GAAA,YAAI,EAAE,IAAI,CAAC;AAQ3B,SAAS,0CAAgB,KAAqB;IACnD,MAAM,mBACJ,kBAAkB,0DAClB,aAAa,EACb,GAAG,MACJ,GAAG;IAEJ,MAAM,gBAAgB,CAAC;QACrB,MAAM,QAAE,IAAI,EAAE,GAAG;QACjB,OAAO,CAAA,GAAA,sBAAA,EAAE,oBAAoB,gBAAgB,KAAK,IAAI;IACxD;IAEA,OAAO,CAAA,GAAA,sBAAA,EAAE,2CAAgB;QACvB,eAAe,iBAAiB;QAChC,GAAG,IAAI;IACT;AACF","sources":["packages/column-views/src/units/names.ts"],"sourcesContent":["import h from \"@macrostrat/hyper\";\nimport { useContext, useCallback } from \"react\";\nimport {\n ColumnContext,\n ColumnAxisType,\n NotesColumn,\n NotesColumnProps,\n} from \"@macrostrat/column-components\";\nimport type { ColumnDivision } from \"@macrostrat/column-components\";\nimport { IUnit, transformAxisType } from \"./types\";\nimport React from \"react\";\n\ninterface UnitDataProps extends NotesColumnProps {\n left?: number;\n transform?: string;\n noteComponent?: React.ComponentType<any>;\n shouldRenderNote?(div: ColumnDivision | IUnit, index: number): boolean;\n divisions?: IUnit[];\n minimumHeight?: number;\n}\n\ntype UnitNote = {\n height: number;\n top_height: number;\n data: IUnit;\n id: number;\n};\n\nfunction noteForDivision(\n div: IUnit,\n opts: { axisType: ColumnAxisType }\n): UnitNote {\n const { axisType } = opts;\n\n const key = transformAxisType(axisType);\n return {\n height: div[`b_${key}`],\n top_height: div[`t_${key}`],\n data: div,\n id: div.unit_id,\n };\n}\n\nconst defaultNameFunction = (div) => {\n return div.unit_name\n .replace(\"Mbr\", \"Member\")\n .replace(\"Fm\", \"Formation\")\n .replace(\"Gp\", \"Group\");\n};\n\nfunction UnitDataColumn_(props: UnitDataProps) {\n const ctx = useContext(ColumnContext);\n const {\n left,\n noteComponent,\n shouldRenderNote = (note: ColumnDivision | IUnit, i: number) => true,\n minimumHeight = 0,\n divisions = ctx?.divisions,\n ...rest\n } = props;\n\n const { scale } = ctx;\n\n const minimumHeightFilter = useCallback(\n (d) => {\n if (minimumHeight == 0) return true;\n const dy = Math.abs(scale(d.top_height) - scale(d.height));\n return dy > minimumHeight;\n },\n [scale, minimumHeight]\n );\n\n if (divisions == null) return null;\n const notes: UnitNote[] = divisions\n .filter(shouldRenderNote)\n .map((d: IUnit) => noteForDivision(d, { axisType: ctx.axisType }))\n .filter(minimumHeightFilter);\n\n return h(NotesColumn, {\n transform: `translate(${left || 0})`,\n editable: false,\n noteComponent,\n notes,\n forceOptions: {\n nodeSpacing: 1,\n },\n ...rest,\n });\n}\n\nconst UnitDataColumn = React.memo(UnitDataColumn_);\n\ninterface UnitNamesProps extends UnitDataProps {\n nameForDivision?(obj: IUnit): string;\n paddingLeft?: number;\n width: number;\n}\n\nexport function UnitNamesColumn(props: UnitNamesProps) {\n const {\n nameForDivision = defaultNameFunction,\n noteComponent,\n ...rest\n } = props;\n\n const NoteComponent = (props) => {\n const { note } = props;\n return h(\"p.col-note-label\", nameForDivision(note.data));\n };\n\n return h(UnitDataColumn, {\n noteComponent: noteComponent ?? NoteComponent,\n ...rest,\n });\n}\n\nexport type { UnitNamesProps };\nexport { defaultNameFunction, noteForDivision, UnitDataColumn };\n"],"names":[],"version":3,"file":"names.f6a4e9a4.js.map"}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import $
|
|
2
|
-
import {ColumnProvider as $
|
|
3
|
-
import {APIProvider as $
|
|
1
|
+
import $axBsV$macrostrathyper from "@macrostrat/hyper";
|
|
2
|
+
import {ColumnProvider as $axBsV$ColumnProvider, ColumnAxisType as $axBsV$ColumnAxisType} from "@macrostrat/column-components";
|
|
3
|
+
import {APIProvider as $axBsV$APIProvider} from "@macrostrat/ui-components";
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
function $29bf41d89292aad4$export$9e42f9b6e0d67c7d(props) {
|
|
9
9
|
// A column provider specialized the Macrostrat API
|
|
10
|
-
return (0, $
|
|
11
|
-
axisType: (0, $
|
|
10
|
+
return (0, $axBsV$macrostrathyper)((0, $axBsV$ColumnProvider), {
|
|
11
|
+
axisType: (0, $axBsV$ColumnAxisType).AGE,
|
|
12
12
|
...props
|
|
13
13
|
});
|
|
14
14
|
}
|
|
15
15
|
function $29bf41d89292aad4$export$3098013bc6cc316d({ children: children, useDev: useDev = false, baseURL: baseURL }) {
|
|
16
16
|
baseURL ??= useDev ? "https://dev2.macrostrat.org/api/v2" : "https://macrostrat.org/api/v2";
|
|
17
|
-
return (0, $
|
|
17
|
+
return (0, $axBsV$macrostrathyper)((0, $axBsV$APIProvider), {
|
|
18
18
|
baseURL: baseURL,
|
|
19
19
|
unwrapResponse: (res)=>res.success.data
|
|
20
20
|
}, children);
|
|
@@ -22,4 +22,4 @@ function $29bf41d89292aad4$export$3098013bc6cc316d({ children: children, useDev:
|
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
export {$29bf41d89292aad4$export$9e42f9b6e0d67c7d as MacrostratColumnProvider, $29bf41d89292aad4$export$3098013bc6cc316d as MacrostratAPIProvider};
|
|
25
|
-
//# sourceMappingURL=providers.
|
|
25
|
+
//# sourceMappingURL=providers.cd1e652f.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;;;;;AAKO,SAAS,0CAAyB,KAAK;IAC5C,mDAAmD;IACnD,OAAO,CAAA,GAAA,sBAAA,EAAE,CAAA,GAAA,qBAAa,GAAG;QAAE,UAAU,CAAA,GAAA,qBAAa,EAAE,GAAG;QAAE,GAAG,KAAK;IAAC;AACpE;AAQO,SAAS,0CAAsB,YACpC,QAAQ,UACR,SAAS,gBACT,OAAO,EACU;IACjB,YAAY,SACR,uCACA;IAEJ,OAAO,CAAA,GAAA,sBAAA,EACL,CAAA,GAAA,kBAAU,GACV;iBACE;QACA,gBAAgB,CAAC,MAAQ,IAAI,OAAO,CAAC,IAAI;IAC3C,GACA;AAEJ","sources":["packages/column-views/src/providers.ts"],"sourcesContent":["import h from \"@macrostrat/hyper\";\nimport { ColumnProvider, ColumnAxisType } from \"@macrostrat/column-components\";\nimport { APIProvider } from \"@macrostrat/ui-components\";\nimport { ReactNode } from \"react\";\n\nexport function MacrostratColumnProvider(props) {\n // A column provider specialized the Macrostrat API\n return h(ColumnProvider, { axisType: ColumnAxisType.AGE, ...props });\n}\n\ntype APIProviderProps = {\n children: ReactNode;\n useDev?: boolean;\n baseURL?: string;\n};\n\nexport function MacrostratAPIProvider({\n children,\n useDev = false,\n baseURL,\n}: APIProviderProps) {\n baseURL ??= useDev\n ? \"https://dev2.macrostrat.org/api/v2\"\n : \"https://macrostrat.org/api/v2\";\n\n return h(\n APIProvider,\n {\n baseURL,\n unwrapResponse: (res) => res.success.data,\n },\n children\n );\n}\n"],"names":[],"version":3,"file":"providers.
|
|
1
|
+
{"mappings":";;;;;;;AAKO,SAAS,0CAAyB,KAAK;IAC5C,mDAAmD;IACnD,OAAO,CAAA,GAAA,sBAAA,EAAE,CAAA,GAAA,qBAAa,GAAG;QAAE,UAAU,CAAA,GAAA,qBAAa,EAAE,GAAG;QAAE,GAAG,KAAK;IAAC;AACpE;AAQO,SAAS,0CAAsB,YACpC,QAAQ,UACR,SAAS,gBACT,OAAO,EACU;IACjB,YAAY,SACR,uCACA;IAEJ,OAAO,CAAA,GAAA,sBAAA,EACL,CAAA,GAAA,kBAAU,GACV;iBACE;QACA,gBAAgB,CAAC,MAAQ,IAAI,OAAO,CAAC,IAAI;IAC3C,GACA;AAEJ","sources":["packages/column-views/src/providers.ts"],"sourcesContent":["import h from \"@macrostrat/hyper\";\nimport { ColumnProvider, ColumnAxisType } from \"@macrostrat/column-components\";\nimport { APIProvider } from \"@macrostrat/ui-components\";\nimport { ReactNode } from \"react\";\n\nexport function MacrostratColumnProvider(props) {\n // A column provider specialized the Macrostrat API\n return h(ColumnProvider, { axisType: ColumnAxisType.AGE, ...props });\n}\n\ntype APIProviderProps = {\n children: ReactNode;\n useDev?: boolean;\n baseURL?: string;\n};\n\nexport function MacrostratAPIProvider({\n children,\n useDev = false,\n baseURL,\n}: APIProviderProps) {\n baseURL ??= useDev\n ? \"https://dev2.macrostrat.org/api/v2\"\n : \"https://macrostrat.org/api/v2\";\n\n return h(\n APIProvider,\n {\n baseURL,\n unwrapResponse: (res) => res.success.data,\n },\n children\n );\n}\n"],"names":[],"version":3,"file":"providers.cd1e652f.js.map"}
|
|
@@ -80,4 +80,4 @@ const $d3e69bd163d41f63$export$e8deec7b02ce51eb = (id)=>{
|
|
|
80
80
|
|
|
81
81
|
|
|
82
82
|
export {$d3e69bd163d41f63$export$7be7d732f3de9464 as resolveID, $d3e69bd163d41f63$export$e8deec7b02ce51eb as scalePattern};
|
|
83
|
-
//# sourceMappingURL=resolvers.
|
|
83
|
+
//# sourceMappingURL=resolvers.b5c82b78.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAAA,MAAM,oCAAc;IAClB,sBAAsB;IACtB,eAAe;IACf,WAAW;IACX,kBAAkB;IAClB,aAAa;IACb,MAAM;IACN,WAAW;IACX,MAAM;IACN,uBAAuB;IACvB,OAAO;IACP,WAAW;IACX,UAAU;IACV,cAAc;IACd,WAAW;IACX,qBAAqB;IACrB,WAAW;IACX,UAAU;IACV,kBAAkB;IAClB,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,UAAU;IACV,MAAM;IACN,OAAO;IACP,mBAAmB;IACnB,OAAO;IACP,QAAQ;IACR,UAAU;IACV,SAAS;IACT,MAAM;IACN,SAAS;IACT,MAAM;IACN,UAAU;IACV,aAAa;IACb,gBAAgB;IAChB,WAAW;IACX,QAAQ;IACR,UAAU;IACV,cAAc;IACd,WAAW;IACX,WAAW;AACb;AAEA,MAAM,4CAAY,CAAC;IACjB,IAAI,QAAQ,EAAE,IAAI;IAClB,IAAI,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,IAAM,EAAE,IAAI,EAAE,IAAI,CAAC;IACjD,MAAM,IAAI,CAAC,CAAC,GAAG,IAAM,EAAE,IAAI,GAAG,EAAE,IAAI;IAEpC,+DAA+D;IAE/D,IAAI,MAAM;IAEV,6BAA6B;IAC7B,IAAI,EAAE,SAAS,IAAI,QACjB,OAAO;IAET,IAAI,EAAE,SAAS,IAAI,mBACjB,OAAO;IAGT,KAAK,MAAM,KAAK,MAAO;QACrB,IAAI,EAAE,IAAI,IAAI,aAAa;YACzB,8BAA8B;YAC9B,IAAI,SAAS,QAAQ,CAAC,SACpB,OAAO;YAET,IAAI,SAAS,QAAQ,CAAC,WACpB,OAAO;YAET,IAAI,SAAS,QAAQ,CAAC,UACpB,OAAO;YAET,IAAI,SAAS,QAAQ,CAAC,UACpB,OAAO;QAEX;QAEA,IAAI,EAAE,IAAI,IAAI,gBAAgB;YAC5B,8BAA8B;YAC9B,IAAI,SAAS,QAAQ,CAAC,YACpB,OAAO;QAEX;QAEA,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,SAClB,OAAO;QAET,MAAM,iCAAW,CAAC,EAAE,IAAI,CAAC;QACzB,IAAI,OAAO,MACT,OAAO;QAGT,IAAI,EAAE,IAAI,IAAI,YACZ,OAAO;IAEX;IACA,OAAO;AACT;AAEA,MAAM,qCAAe;IACnB,OAAO;IACP,OAAO;AACT;AAEA,MAAM,4CAAe,CAAC;IACpB,OAAO,kCAAY,CAAC,GAAG,IAAI,CAAC,IAAI;AAClC","sources":["packages/column-views/src/units/resolvers.ts"],"sourcesContent":["const symbolIndex = {\n \"dolomite-limestone\": 641,\n lime_mudstone: 627,\n sandstone: 607,\n \"quartz arenite\": 607,\n litharenite: 608,\n sand: 608,\n siltstone: 616,\n silt: 616,\n \"dolomitic siltstone\": 616,\n shale: 620,\n limestone: 627,\n dolomite: 642,\n conglomerate: 602,\n carbonate: 627,\n \"dolomite-mudstone\": 642,\n dolostone: 642,\n mudstone: 620,\n \"sandy-dolomite\": 645,\n quartzite: 702,\n halite: 668,\n basalt: 717,\n rhyolite: 722,\n andesite: 723,\n till: 681,\n loess: 684,\n \"calcareous ooze\": 653,\n chalk: 626,\n gravel: 601,\n plutonic: 721,\n granite: 719,\n clay: 660,\n syenite: 722,\n tuff: 711,\n volcanic: 725,\n metamorphic: 707,\n volcaniclastic: 714,\n migmatite: 709,\n gneiss: 708,\n tonalite: 727,\n granodiorite: 725,\n monzonite: 723,\n argillite: 624,\n};\n\nconst resolveID = (d: any) => {\n let liths = d.lith;\n let environs = d.environ.map((d) => d.name).join(\" \");\n liths.sort((a, b) => b.prop - a.prop);\n\n //console.log(d, d.unit_name, liths.map(d => d.name), environs)\n\n let sym = null;\n\n // overrides for IODP columns\n if (d.unit_name == \"clay\") {\n return \"650\";\n }\n if (d.unit_name == \"calcareous clay\") {\n return \"651\";\n }\n\n for (const k of liths) {\n if (k.name == \"sandstone\") {\n // Special cases for sandstone\n if (environs.includes(\"dune\")) {\n return \"609\";\n }\n if (environs.includes(\"marine\")) {\n return \"608\";\n }\n if (environs.includes(\"shore\")) {\n return \"611\";\n }\n if (environs.includes(\"loess\")) {\n return \"686\";\n }\n }\n\n if (k.name == \"conglomerate\") {\n // Special cases for sandstone\n if (environs.includes(\"fluvial\")) {\n return \"603\";\n }\n }\n\n if (k.name.includes(\"tuff\")) {\n return \"711\";\n }\n sym = symbolIndex[k.name];\n if (sym != null) {\n return sym;\n }\n\n if (k.type == \"volcanic\") {\n return \"725\";\n }\n }\n return sym;\n};\n\nconst patternScale = {\n \"609\": 1.5,\n \"603\": 1.5,\n};\n\nconst scalePattern = (id) => {\n return patternScale[`${id}`] ?? 1;\n};\n\nexport { resolveID, scalePattern };\n"],"names":[],"version":3,"file":"resolvers.
|
|
1
|
+
{"mappings":"AAAA,MAAM,oCAAc;IAClB,sBAAsB;IACtB,eAAe;IACf,WAAW;IACX,kBAAkB;IAClB,aAAa;IACb,MAAM;IACN,WAAW;IACX,MAAM;IACN,uBAAuB;IACvB,OAAO;IACP,WAAW;IACX,UAAU;IACV,cAAc;IACd,WAAW;IACX,qBAAqB;IACrB,WAAW;IACX,UAAU;IACV,kBAAkB;IAClB,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,UAAU;IACV,MAAM;IACN,OAAO;IACP,mBAAmB;IACnB,OAAO;IACP,QAAQ;IACR,UAAU;IACV,SAAS;IACT,MAAM;IACN,SAAS;IACT,MAAM;IACN,UAAU;IACV,aAAa;IACb,gBAAgB;IAChB,WAAW;IACX,QAAQ;IACR,UAAU;IACV,cAAc;IACd,WAAW;IACX,WAAW;AACb;AAEA,MAAM,4CAAY,CAAC;IACjB,IAAI,QAAQ,EAAE,IAAI;IAClB,IAAI,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,IAAM,EAAE,IAAI,EAAE,IAAI,CAAC;IACjD,MAAM,IAAI,CAAC,CAAC,GAAG,IAAM,EAAE,IAAI,GAAG,EAAE,IAAI;IAEpC,+DAA+D;IAE/D,IAAI,MAAM;IAEV,6BAA6B;IAC7B,IAAI,EAAE,SAAS,IAAI,QACjB,OAAO;IAET,IAAI,EAAE,SAAS,IAAI,mBACjB,OAAO;IAGT,KAAK,MAAM,KAAK,MAAO;QACrB,IAAI,EAAE,IAAI,IAAI,aAAa;YACzB,8BAA8B;YAC9B,IAAI,SAAS,QAAQ,CAAC,SACpB,OAAO;YAET,IAAI,SAAS,QAAQ,CAAC,WACpB,OAAO;YAET,IAAI,SAAS,QAAQ,CAAC,UACpB,OAAO;YAET,IAAI,SAAS,QAAQ,CAAC,UACpB,OAAO;QAEX;QAEA,IAAI,EAAE,IAAI,IAAI,gBAAgB;YAC5B,8BAA8B;YAC9B,IAAI,SAAS,QAAQ,CAAC,YACpB,OAAO;QAEX;QAEA,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,SAClB,OAAO;QAET,MAAM,iCAAW,CAAC,EAAE,IAAI,CAAC;QACzB,IAAI,OAAO,MACT,OAAO;QAGT,IAAI,EAAE,IAAI,IAAI,YACZ,OAAO;IAEX;IACA,OAAO;AACT;AAEA,MAAM,qCAAe;IACnB,OAAO;IACP,OAAO;AACT;AAEA,MAAM,4CAAe,CAAC;IACpB,OAAO,kCAAY,CAAC,GAAG,IAAI,CAAC,IAAI;AAClC","sources":["packages/column-views/src/units/resolvers.ts"],"sourcesContent":["const symbolIndex = {\n \"dolomite-limestone\": 641,\n lime_mudstone: 627,\n sandstone: 607,\n \"quartz arenite\": 607,\n litharenite: 608,\n sand: 608,\n siltstone: 616,\n silt: 616,\n \"dolomitic siltstone\": 616,\n shale: 620,\n limestone: 627,\n dolomite: 642,\n conglomerate: 602,\n carbonate: 627,\n \"dolomite-mudstone\": 642,\n dolostone: 642,\n mudstone: 620,\n \"sandy-dolomite\": 645,\n quartzite: 702,\n halite: 668,\n basalt: 717,\n rhyolite: 722,\n andesite: 723,\n till: 681,\n loess: 684,\n \"calcareous ooze\": 653,\n chalk: 626,\n gravel: 601,\n plutonic: 721,\n granite: 719,\n clay: 660,\n syenite: 722,\n tuff: 711,\n volcanic: 725,\n metamorphic: 707,\n volcaniclastic: 714,\n migmatite: 709,\n gneiss: 708,\n tonalite: 727,\n granodiorite: 725,\n monzonite: 723,\n argillite: 624,\n};\n\nconst resolveID = (d: any) => {\n let liths = d.lith;\n let environs = d.environ.map((d) => d.name).join(\" \");\n liths.sort((a, b) => b.prop - a.prop);\n\n //console.log(d, d.unit_name, liths.map(d => d.name), environs)\n\n let sym = null;\n\n // overrides for IODP columns\n if (d.unit_name == \"clay\") {\n return \"650\";\n }\n if (d.unit_name == \"calcareous clay\") {\n return \"651\";\n }\n\n for (const k of liths) {\n if (k.name == \"sandstone\") {\n // Special cases for sandstone\n if (environs.includes(\"dune\")) {\n return \"609\";\n }\n if (environs.includes(\"marine\")) {\n return \"608\";\n }\n if (environs.includes(\"shore\")) {\n return \"611\";\n }\n if (environs.includes(\"loess\")) {\n return \"686\";\n }\n }\n\n if (k.name == \"conglomerate\") {\n // Special cases for sandstone\n if (environs.includes(\"fluvial\")) {\n return \"603\";\n }\n }\n\n if (k.name.includes(\"tuff\")) {\n return \"711\";\n }\n sym = symbolIndex[k.name];\n if (sym != null) {\n return sym;\n }\n\n if (k.type == \"volcanic\") {\n return \"725\";\n }\n }\n return sym;\n};\n\nconst patternScale = {\n \"609\": 1.5,\n \"603\": 1.5,\n};\n\nconst scalePattern = (id) => {\n return patternScale[`${id}`] ?? 1;\n};\n\nexport { resolveID, scalePattern };\n"],"names":[],"version":3,"file":"resolvers.b5c82b78.js.map"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {CompositeUnitsColumn as $8c8238faa5cde49c$export$a6684360fef0406e} from "./composite.
|
|
2
|
-
import {AgeAxis as $43794af7643cdf40$export$25ce20521d0ab97d} from "./age-axis.
|
|
3
|
-
import {MacrostratColumnProvider as $29bf41d89292aad4$export$9e42f9b6e0d67c7d} from "./providers.
|
|
4
|
-
import $
|
|
5
|
-
import "./column.module.
|
|
6
|
-
import {useMemo as $
|
|
7
|
-
import {Timescale as $
|
|
8
|
-
import {ColumnSVG as $
|
|
9
|
-
import $
|
|
1
|
+
import {CompositeUnitsColumn as $8c8238faa5cde49c$export$a6684360fef0406e} from "./composite.608a4ca2.js";
|
|
2
|
+
import {AgeAxis as $43794af7643cdf40$export$25ce20521d0ab97d} from "./age-axis.64c509ee.js";
|
|
3
|
+
import {MacrostratColumnProvider as $29bf41d89292aad4$export$9e42f9b6e0d67c7d} from "./providers.cd1e652f.js";
|
|
4
|
+
import $7zu8d$columnmodulee632868ajs from "./column.module.e632868a.js";
|
|
5
|
+
import "./column.module.039d872c.css";
|
|
6
|
+
import {useMemo as $7zu8d$useMemo} from "react";
|
|
7
|
+
import {Timescale as $7zu8d$Timescale, TimescaleOrientation as $7zu8d$TimescaleOrientation} from "@macrostrat/timescale";
|
|
8
|
+
import {ColumnSVG as $7zu8d$ColumnSVG} from "@macrostrat/column-components";
|
|
9
|
+
import $7zu8d$macrostrathyper from "@macrostrat/hyper";
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
function $parcel$interopDefault(a) {
|
|
@@ -20,13 +20,13 @@ function $parcel$interopDefault(a) {
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
23
|
-
const $7d0f52717c0de7e1$var$h = (0, $
|
|
23
|
+
const $7d0f52717c0de7e1$var$h = (0, $7zu8d$macrostrathyper).styled((0, ($parcel$interopDefault($7zu8d$columnmodulee632868ajs))));
|
|
24
24
|
function $7d0f52717c0de7e1$export$6e2c8f0811a474ce(props) {
|
|
25
25
|
// Section with "squishy" time scale
|
|
26
26
|
const { data: data, range: _range, pixelScale: _pixelScale, unitComponent: unitComponent, showLabels: showLabels = true, targetUnitHeight: targetUnitHeight = 20, width: width = 300, columnWidth: columnWidth = 150, unitComponentProps: unitComponentProps, showLabelColumn: showLabelColumn = true } = props;
|
|
27
27
|
const b_age = Math.max(...data.map((d)=>d.b_age));
|
|
28
28
|
const t_age = Math.min(...data.map((d)=>d.t_age));
|
|
29
|
-
const range = (0, $
|
|
29
|
+
const range = (0, $7zu8d$useMemo)(()=>{
|
|
30
30
|
if (_range == null) return [
|
|
31
31
|
b_age,
|
|
32
32
|
t_age
|
|
@@ -37,10 +37,10 @@ function $7d0f52717c0de7e1$export$6e2c8f0811a474ce(props) {
|
|
|
37
37
|
b_age,
|
|
38
38
|
t_age
|
|
39
39
|
]);
|
|
40
|
-
const dAge = (0, $
|
|
40
|
+
const dAge = (0, $7zu8d$useMemo)(()=>range[0] - range[1], [
|
|
41
41
|
range
|
|
42
42
|
]);
|
|
43
|
-
const pixelScale = (0, $
|
|
43
|
+
const pixelScale = (0, $7zu8d$useMemo)(()=>{
|
|
44
44
|
if (_pixelScale != null) return _pixelScale;
|
|
45
45
|
const targetHeight = targetUnitHeight * data.length;
|
|
46
46
|
return Math.ceil(targetHeight / dAge);
|
|
@@ -50,14 +50,14 @@ function $7d0f52717c0de7e1$export$6e2c8f0811a474ce(props) {
|
|
|
50
50
|
data.length,
|
|
51
51
|
dAge
|
|
52
52
|
]);
|
|
53
|
-
const height = (0, $
|
|
53
|
+
const height = (0, $7zu8d$useMemo)(()=>dAge * pixelScale, [
|
|
54
54
|
dAge,
|
|
55
55
|
pixelScale
|
|
56
56
|
]);
|
|
57
57
|
/** Ensure that we can arrange units into the maximum number
|
|
58
58
|
* of columns defined by unitComponentProps, but that we don't
|
|
59
59
|
* use more than necessary.
|
|
60
|
-
*/ const _unitComponentProps = (0, $
|
|
60
|
+
*/ const _unitComponentProps = (0, $7zu8d$useMemo)(()=>{
|
|
61
61
|
return {
|
|
62
62
|
...unitComponentProps,
|
|
63
63
|
nColumns: Math.min(Math.max(...data.map((d)=>d.column)) + 1, unitComponentProps?.nColumns ?? 2)
|
|
@@ -82,8 +82,8 @@ function $7d0f52717c0de7e1$export$6e2c8f0811a474ce(props) {
|
|
|
82
82
|
marginTop: `10px`
|
|
83
83
|
}
|
|
84
84
|
}, [
|
|
85
|
-
$7d0f52717c0de7e1$var$h((0, $
|
|
86
|
-
orientation: (0, $
|
|
85
|
+
$7d0f52717c0de7e1$var$h((0, $7zu8d$Timescale), {
|
|
86
|
+
orientation: (0, $7zu8d$TimescaleOrientation).VERTICAL,
|
|
87
87
|
length: height,
|
|
88
88
|
levels: $7d0f52717c0de7e1$var$timescaleLevels,
|
|
89
89
|
absoluteAgeScale: true,
|
|
@@ -91,7 +91,7 @@ function $7d0f52717c0de7e1$export$6e2c8f0811a474ce(props) {
|
|
|
91
91
|
ageRange: range
|
|
92
92
|
})
|
|
93
93
|
]),
|
|
94
|
-
$7d0f52717c0de7e1$var$h((0, $
|
|
94
|
+
$7d0f52717c0de7e1$var$h((0, $7zu8d$ColumnSVG), {
|
|
95
95
|
innerWidth: showLabels ? width : columnWidth,
|
|
96
96
|
paddingRight: 1,
|
|
97
97
|
paddingLeft: 1,
|
|
@@ -115,4 +115,4 @@ const $7d0f52717c0de7e1$var$timescaleLevels = [
|
|
|
115
115
|
|
|
116
116
|
|
|
117
117
|
export {$7d0f52717c0de7e1$export$6e2c8f0811a474ce as Section};
|
|
118
|
-
//# sourceMappingURL=section.
|
|
118
|
+
//# sourceMappingURL=section.cc1b1100.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;;;;;;;;;;;;;;;;;;;;AASA,MAAM,0BAAI,CAAA,GAAA,sBAAI,EAAE,MAAM,CAAC,CAAA,GAAA,wEAAK;AAuBrB,SAAS,0CAAQ,KAAmB;IACzC,oCAAoC;IACpC,MAAM,QACJ,IAAI,EACJ,OAAO,MAAM,EACb,YAAY,WAAW,iBACvB,aAAa,cACb,aAAa,wBACb,mBAAmB,WACnB,QAAQ,kBACR,cAAc,yBACd,kBAAkB,mBAClB,kBAAkB,MACnB,GAAG;IAEJ,MAAM,QAAQ,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,IAAM,EAAE,KAAK;IACjD,MAAM,QAAQ,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,IAAM,EAAE,KAAK;IAEjD,MAAM,QAAQ,CAAA,GAAA,cAAM,EAAE;QACpB,IAAI,UAAU,MACZ,OAAO;YAAC;YAAO;SAAM;QAEvB,OAAO;IACT,GAAG;QAAC;QAAQ;QAAO;KAAM;IAEzB,MAAM,OAAO,CAAA,GAAA,cAAM,EAAE,IAAM,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,EAAE;QAAC;KAAM;IAEvD,MAAM,aAAa,CAAA,GAAA,cAAM,EAAE;QACzB,IAAI,eAAe,MAAM,OAAO;QAChC,MAAM,eAAe,mBAAmB,KAAK,MAAM;QACnD,OAAO,KAAK,IAAI,CAAC,eAAe;IAClC,GAAG;QAAC;QAAa;QAAkB,KAAK,MAAM;QAAE;KAAK;IAErD,MAAM,SAAS,CAAA,GAAA,cAAM,EAAE,IAAM,OAAO,YAAY;QAAC;QAAM;KAAW;IAElE;;;GAGC,GACD,MAAM,sBAAsB,CAAA,GAAA,cAAM,EAAE;QAClC,OAAO;YACL,GAAG,kBAAkB;YACrB,UAAU,KAAK,GAAG,CAChB,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,IAAM,EAAE,MAAM,KAAK,GACzC,oBAAoB,YAAY;QAEpC;IACF,GAAG;QAAC;QAAM;KAAmB;IAE7B,OAAO,wBACL,CAAA,GAAA,yCAAuB,GACvB;QACE,WAAW;eACX;QACA,gBAAgB;IAClB,GACA;QACE,wBAAE,CAAA,GAAA,yCAAM,GAAG;YACT,OAAO;YACP,SAAS;YACT,UAAU;YACV,WAAW;QACb;QACA,wBAAE,2BAA2B;YAAE,OAAO;gBAAE,WAAW,CAAC,IAAI,CAAC;YAAC;QAAE,GAAG;YAC7D,wBAAE,CAAA,GAAA,gBAAQ,GAAG;gBACX,aAAa,CAAA,GAAA,2BAAmB,EAAE,QAAQ;gBAC1C,QAAQ;gBACR,QAAQ;gBACR,kBAAkB;gBAClB,aAAa;gBACb,UAAU;YACZ;SACD;QACD,wBACE,CAAA,GAAA,gBAAQ,GACR;YACE,YAAY,aAAa,QAAQ;YACjC,cAAc;YACd,aAAa;YACb,UAAU;YACV,aAAa;QACf,GACA,wBAAE,CAAA,GAAA,yCAAmB,GAAG;YACtB,iBAAiB;YACjB,OAAO,aAAa,QAAQ;yBAC5B;YACA,aAAa;wBACb;2BACA;YACA,oBAAoB;QACtB;KAEH;AAEL;AAEA,MAAM,wCAAkB;IAAC;IAAG;CAAE","sources":["packages/column-views/src/section.ts"],"sourcesContent":["import { CompositeUnitsColumn, IUnit } from \"./units\";\nimport { ReactNode, useMemo } from \"react\";\nimport { AgeAxis } from \"./age-axis\";\nimport { Timescale, TimescaleOrientation } from \"@macrostrat/timescale\";\nimport { ColumnSVG } from \"@macrostrat/column-components\";\nimport { MacrostratColumnProvider } from \"./index\";\nimport hyper from \"@macrostrat/hyper\";\nimport styles from \"./column.module.sass\";\n\nconst h = hyper.styled(styles);\n\nexport interface SectionInfo {\n section_id: number | number[];\n t_age: number;\n b_age: number;\n units: IUnit[];\n}\n\nexport interface IColumnProps {\n data: IUnit[];\n pixelScale?: number;\n range?: [number, number];\n unitComponent?: React.FunctionComponent<any>;\n unitComponentProps?: any;\n showLabels?: boolean;\n width?: number;\n columnWidth?: number;\n targetUnitHeight?: number;\n children?: ReactNode;\n showLabelColumn?: boolean;\n}\n\nexport function Section(props: IColumnProps) {\n // Section with \"squishy\" time scale\n const {\n data,\n range: _range,\n pixelScale: _pixelScale,\n unitComponent,\n showLabels = true,\n targetUnitHeight = 20,\n width = 300,\n columnWidth = 150,\n unitComponentProps,\n showLabelColumn = true,\n } = props;\n\n const b_age = Math.max(...data.map((d) => d.b_age));\n const t_age = Math.min(...data.map((d) => d.t_age));\n\n const range = useMemo(() => {\n if (_range == null) {\n return [b_age, t_age];\n }\n return _range;\n }, [_range, b_age, t_age]);\n\n const dAge = useMemo(() => range[0] - range[1], [range]);\n\n const pixelScale = useMemo(() => {\n if (_pixelScale != null) return _pixelScale;\n const targetHeight = targetUnitHeight * data.length;\n return Math.ceil(targetHeight / dAge);\n }, [_pixelScale, targetUnitHeight, data.length, dAge]);\n\n const height = useMemo(() => dAge * pixelScale, [dAge, pixelScale]);\n\n /** Ensure that we can arrange units into the maximum number\n * of columns defined by unitComponentProps, but that we don't\n * use more than necessary.\n */\n const _unitComponentProps = useMemo(() => {\n return {\n ...unitComponentProps,\n nColumns: Math.min(\n Math.max(...data.map((d) => d.column)) + 1,\n unitComponentProps?.nColumns ?? 2\n ),\n };\n }, [data, unitComponentProps]);\n\n return h(\n MacrostratColumnProvider,\n {\n divisions: data,\n range,\n pixelsPerMeter: pixelScale, // Actually pixels per myr\n },\n [\n h(AgeAxis, {\n width: 20,\n padding: 0,\n paddingV: 10,\n showLabel: false,\n }),\n h(\"div.timescale-container\", { style: { marginTop: `10px` } }, [\n h(Timescale, {\n orientation: TimescaleOrientation.VERTICAL,\n length: height,\n levels: timescaleLevels as [number, number],\n absoluteAgeScale: true,\n showAgeAxis: false,\n ageRange: range as [number, number],\n }),\n ]),\n h(\n ColumnSVG,\n {\n innerWidth: showLabels ? width : columnWidth,\n paddingRight: 1,\n paddingLeft: 1,\n paddingV: 10,\n innerHeight: height,\n },\n h(CompositeUnitsColumn, {\n showLabelColumn: showLabelColumn,\n width: showLabels ? width : columnWidth,\n columnWidth,\n gutterWidth: 5,\n showLabels,\n unitComponent,\n unitComponentProps: _unitComponentProps,\n })\n ),\n ]\n );\n}\n\nconst timescaleLevels = [2, 5];\n"],"names":[],"version":3,"file":"section.
|
|
1
|
+
{"mappings":";;;;;;;;;;;;;;;;;;;;;;AASA,MAAM,0BAAI,CAAA,GAAA,sBAAI,EAAE,MAAM,CAAC,CAAA,GAAA,wEAAK;AAuBrB,SAAS,0CAAQ,KAAmB;IACzC,oCAAoC;IACpC,MAAM,QACJ,IAAI,EACJ,OAAO,MAAM,EACb,YAAY,WAAW,iBACvB,aAAa,cACb,aAAa,wBACb,mBAAmB,WACnB,QAAQ,kBACR,cAAc,yBACd,kBAAkB,mBAClB,kBAAkB,MACnB,GAAG;IAEJ,MAAM,QAAQ,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,IAAM,EAAE,KAAK;IACjD,MAAM,QAAQ,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,IAAM,EAAE,KAAK;IAEjD,MAAM,QAAQ,CAAA,GAAA,cAAM,EAAE;QACpB,IAAI,UAAU,MACZ,OAAO;YAAC;YAAO;SAAM;QAEvB,OAAO;IACT,GAAG;QAAC;QAAQ;QAAO;KAAM;IAEzB,MAAM,OAAO,CAAA,GAAA,cAAM,EAAE,IAAM,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,EAAE;QAAC;KAAM;IAEvD,MAAM,aAAa,CAAA,GAAA,cAAM,EAAE;QACzB,IAAI,eAAe,MAAM,OAAO;QAChC,MAAM,eAAe,mBAAmB,KAAK,MAAM;QACnD,OAAO,KAAK,IAAI,CAAC,eAAe;IAClC,GAAG;QAAC;QAAa;QAAkB,KAAK,MAAM;QAAE;KAAK;IAErD,MAAM,SAAS,CAAA,GAAA,cAAM,EAAE,IAAM,OAAO,YAAY;QAAC;QAAM;KAAW;IAElE;;;GAGC,GACD,MAAM,sBAAsB,CAAA,GAAA,cAAM,EAAE;QAClC,OAAO;YACL,GAAG,kBAAkB;YACrB,UAAU,KAAK,GAAG,CAChB,KAAK,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,IAAM,EAAE,MAAM,KAAK,GACzC,oBAAoB,YAAY;QAEpC;IACF,GAAG;QAAC;QAAM;KAAmB;IAE7B,OAAO,wBACL,CAAA,GAAA,yCAAuB,GACvB;QACE,WAAW;eACX;QACA,gBAAgB;IAClB,GACA;QACE,wBAAE,CAAA,GAAA,yCAAM,GAAG;YACT,OAAO;YACP,SAAS;YACT,UAAU;YACV,WAAW;QACb;QACA,wBAAE,2BAA2B;YAAE,OAAO;gBAAE,WAAW,CAAC,IAAI,CAAC;YAAC;QAAE,GAAG;YAC7D,wBAAE,CAAA,GAAA,gBAAQ,GAAG;gBACX,aAAa,CAAA,GAAA,2BAAmB,EAAE,QAAQ;gBAC1C,QAAQ;gBACR,QAAQ;gBACR,kBAAkB;gBAClB,aAAa;gBACb,UAAU;YACZ;SACD;QACD,wBACE,CAAA,GAAA,gBAAQ,GACR;YACE,YAAY,aAAa,QAAQ;YACjC,cAAc;YACd,aAAa;YACb,UAAU;YACV,aAAa;QACf,GACA,wBAAE,CAAA,GAAA,yCAAmB,GAAG;YACtB,iBAAiB;YACjB,OAAO,aAAa,QAAQ;yBAC5B;YACA,aAAa;wBACb;2BACA;YACA,oBAAoB;QACtB;KAEH;AAEL;AAEA,MAAM,wCAAkB;IAAC;IAAG;CAAE","sources":["packages/column-views/src/section.ts"],"sourcesContent":["import { CompositeUnitsColumn, IUnit } from \"./units\";\nimport { ReactNode, useMemo } from \"react\";\nimport { AgeAxis } from \"./age-axis\";\nimport { Timescale, TimescaleOrientation } from \"@macrostrat/timescale\";\nimport { ColumnSVG } from \"@macrostrat/column-components\";\nimport { MacrostratColumnProvider } from \"./index\";\nimport hyper from \"@macrostrat/hyper\";\nimport styles from \"./column.module.sass\";\n\nconst h = hyper.styled(styles);\n\nexport interface SectionInfo {\n section_id: number | number[];\n t_age: number;\n b_age: number;\n units: IUnit[];\n}\n\nexport interface IColumnProps {\n data: IUnit[];\n pixelScale?: number;\n range?: [number, number];\n unitComponent?: React.FunctionComponent<any>;\n unitComponentProps?: any;\n showLabels?: boolean;\n width?: number;\n columnWidth?: number;\n targetUnitHeight?: number;\n children?: ReactNode;\n showLabelColumn?: boolean;\n}\n\nexport function Section(props: IColumnProps) {\n // Section with \"squishy\" time scale\n const {\n data,\n range: _range,\n pixelScale: _pixelScale,\n unitComponent,\n showLabels = true,\n targetUnitHeight = 20,\n width = 300,\n columnWidth = 150,\n unitComponentProps,\n showLabelColumn = true,\n } = props;\n\n const b_age = Math.max(...data.map((d) => d.b_age));\n const t_age = Math.min(...data.map((d) => d.t_age));\n\n const range = useMemo(() => {\n if (_range == null) {\n return [b_age, t_age];\n }\n return _range;\n }, [_range, b_age, t_age]);\n\n const dAge = useMemo(() => range[0] - range[1], [range]);\n\n const pixelScale = useMemo(() => {\n if (_pixelScale != null) return _pixelScale;\n const targetHeight = targetUnitHeight * data.length;\n return Math.ceil(targetHeight / dAge);\n }, [_pixelScale, targetUnitHeight, data.length, dAge]);\n\n const height = useMemo(() => dAge * pixelScale, [dAge, pixelScale]);\n\n /** Ensure that we can arrange units into the maximum number\n * of columns defined by unitComponentProps, but that we don't\n * use more than necessary.\n */\n const _unitComponentProps = useMemo(() => {\n return {\n ...unitComponentProps,\n nColumns: Math.min(\n Math.max(...data.map((d) => d.column)) + 1,\n unitComponentProps?.nColumns ?? 2\n ),\n };\n }, [data, unitComponentProps]);\n\n return h(\n MacrostratColumnProvider,\n {\n divisions: data,\n range,\n pixelsPerMeter: pixelScale, // Actually pixels per myr\n },\n [\n h(AgeAxis, {\n width: 20,\n padding: 0,\n paddingV: 10,\n showLabel: false,\n }),\n h(\"div.timescale-container\", { style: { marginTop: `10px` } }, [\n h(Timescale, {\n orientation: TimescaleOrientation.VERTICAL,\n length: height,\n levels: timescaleLevels as [number, number],\n absoluteAgeScale: true,\n showAgeAxis: false,\n ageRange: range as [number, number],\n }),\n ]),\n h(\n ColumnSVG,\n {\n innerWidth: showLabels ? width : columnWidth,\n paddingRight: 1,\n paddingLeft: 1,\n paddingV: 10,\n innerHeight: height,\n },\n h(CompositeUnitsColumn, {\n showLabelColumn: showLabelColumn,\n width: showLabels ? width : columnWidth,\n columnWidth,\n gutterWidth: 5,\n showLabels,\n unitComponent,\n unitComponentProps: _unitComponentProps,\n })\n ),\n ]\n );\n}\n\nconst timescaleLevels = [2, 5];\n"],"names":[],"version":3,"file":"section.cc1b1100.js.map"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./selection-popover.module.
|
|
2
|
-
import $
|
|
3
|
-
import {useSelectedUnit as $4d5d1c15f39f6a14$export$f0dd93f90aa8e5da} from "./selection.
|
|
4
|
-
import {UnitDetailsPanel as $5e9557c2513b08ab$export$fbd245232df17557} from "./unit-details.
|
|
5
|
-
import $
|
|
6
|
-
import {Popover as $
|
|
1
|
+
import "./selection-popover.module.0a701258.css";
|
|
2
|
+
import $61ATJ$selectionpopovermodulee22f5183js from "./selection-popover.module.e22f5183.js";
|
|
3
|
+
import {useSelectedUnit as $4d5d1c15f39f6a14$export$f0dd93f90aa8e5da} from "./selection.bbf26d0e.js";
|
|
4
|
+
import {UnitDetailsPanel as $5e9557c2513b08ab$export$fbd245232df17557} from "./unit-details.56ff8b70.js";
|
|
5
|
+
import $61ATJ$macrostrathyper from "@macrostrat/hyper";
|
|
6
|
+
import {Popover as $61ATJ$Popover} from "@blueprintjs/core";
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
function $parcel$interopDefault(a) {
|
|
@@ -14,12 +14,12 @@ function $parcel$interopDefault(a) {
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
const $80d4db83aa9ba807$var$h = (0, $
|
|
17
|
+
const $80d4db83aa9ba807$var$h = (0, $61ATJ$macrostrathyper).styled((0, ($parcel$interopDefault($61ATJ$selectionpopovermodulee22f5183js))));
|
|
18
18
|
function $80d4db83aa9ba807$export$6716aecc2c9afbe2({ style: style, children: children, boundary: boundary }) {
|
|
19
19
|
const content = $80d4db83aa9ba807$var$h($80d4db83aa9ba807$export$9c92b113c87f36f1, children);
|
|
20
20
|
return $80d4db83aa9ba807$var$h("div.popover-main", {
|
|
21
21
|
style: style
|
|
22
|
-
}, $80d4db83aa9ba807$var$h((0, $
|
|
22
|
+
}, $80d4db83aa9ba807$var$h((0, $61ATJ$Popover), // @ts-ignore
|
|
23
23
|
{
|
|
24
24
|
content: content,
|
|
25
25
|
isOpen: true,
|
|
@@ -57,4 +57,4 @@ function $80d4db83aa9ba807$export$db1115efab13710d(props) {
|
|
|
57
57
|
|
|
58
58
|
|
|
59
59
|
export {$80d4db83aa9ba807$export$6716aecc2c9afbe2 as UnitDetailsPopover, $80d4db83aa9ba807$export$9c92b113c87f36f1 as LegendPopoverContainer, $80d4db83aa9ba807$export$db1115efab13710d as UnitSelectionPopover};
|
|
60
|
-
//# sourceMappingURL=selection-popover.
|
|
60
|
+
//# sourceMappingURL=selection-popover.17d1bd55.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;;;;;;;;;;;;;;AAOA,MAAM,0BAAI,CAAA,GAAA,sBAAI,EAAE,MAAM,CAAC,CAAA,GAAA,kFAAK;AAErB,SAAS,0CAAmB,SACjC,KAAK,YACL,QAAQ,YACR,QAAQ,EAKT;IACC,MAAM,UAAU,wBAAE,2CAAwB;IAE1C,OAAO,wBACL,oBACA;eACE;IACF,GACA,wBACE,CAAA,GAAA,cAAM,GACN,aAAa;IACb;iBAAE;QAAS,QAAQ;QAAM,WAAW;kBAAO;QAAU,UAAU;IAAQ,GACvE,wBAAE;AAGR;AAEO,SAAS,0CAAuB,YAAE,QAAQ,EAAE;IACjD,OAAO,wBACL,0BACA;QACE,SAAQ,CAAC;YACP,yCAAyC;YACzC,EAAE,eAAe;QACnB;IACF,GACA;QAAC,wBAAE,yBAAyB;KAAU;AAE1C;AAEO,SAAS,0CAAqB,KAAK;IACxC,MAAM,YAAE,QAAQ,EAAE,GAAG;IACrB,MAAM,OAAO,CAAA,GAAA,yCAAc;IAC3B,IAAI,QAAQ,MACV,OAAO;IAGT,OAAO,wBACL,8BACA,wBACE,2CACA;QACE,OAAO;YACL,UAAU;YACV,KAAK,UAAU;YACf,OAAO,UAAU;YACjB,MAAM,UAAU;YAChB,QAAQ,UAAU;QACpB;IACF,GACA,wBAAE,CAAA,GAAA,yCAAe,GAAG;cAAE;IAAK;AAGjC","sources":["packages/column-views/src/selection-popover.ts"],"sourcesContent":["import hyper from \"@macrostrat/hyper\";\nimport { Button, Popover } from \"@blueprintjs/core\";\nimport { DOMElement } from \"react\";\nimport styles from \"./selection-popover.module.sass\";\nimport { useSelectedUnit } from \"./units\";\nimport { UnitDetailsPanel } from \"./unit-details\";\n\nconst h = hyper.styled(styles);\n\nexport function UnitDetailsPopover({\n style,\n children,\n boundary,\n}: {\n style: object;\n children: React.ReactNode;\n boundary?: DOMElement<any, any>;\n}) {\n const content = h(LegendPopoverContainer, children);\n\n return h(\n \"div.popover-main\",\n {\n style,\n },\n h(\n Popover,\n // @ts-ignore\n { content, isOpen: true, usePortal: false, boundary, position: \"right\" },\n h(\"span.popover-target\")\n )\n );\n}\n\nexport function LegendPopoverContainer({ children }) {\n return h(\n \"div.legend-panel-outer\",\n {\n onClick(e) {\n // Stop events from leaking to the parent\n e.stopPropagation();\n },\n },\n [h(\"div.legend-info-panel\", children)]\n );\n}\n\nexport function UnitSelectionPopover(props) {\n const { position } = props;\n const unit = useSelectedUnit();\n if (unit == null) {\n return null;\n }\n\n return h(\n \"div.unit-popover-container\",\n h(\n UnitDetailsPopover,\n {\n style: {\n position: \"absolute\",\n top: position?.y,\n width: position?.width,\n left: position?.x,\n height: position?.height,\n },\n },\n h(UnitDetailsPanel, { unit })\n )\n );\n}\n"],"names":[],"version":3,"file":"selection-popover.
|
|
1
|
+
{"mappings":";;;;;;;;;;;;;;;;AAOA,MAAM,0BAAI,CAAA,GAAA,sBAAI,EAAE,MAAM,CAAC,CAAA,GAAA,kFAAK;AAErB,SAAS,0CAAmB,SACjC,KAAK,YACL,QAAQ,YACR,QAAQ,EAKT;IACC,MAAM,UAAU,wBAAE,2CAAwB;IAE1C,OAAO,wBACL,oBACA;eACE;IACF,GACA,wBACE,CAAA,GAAA,cAAM,GACN,aAAa;IACb;iBAAE;QAAS,QAAQ;QAAM,WAAW;kBAAO;QAAU,UAAU;IAAQ,GACvE,wBAAE;AAGR;AAEO,SAAS,0CAAuB,YAAE,QAAQ,EAAE;IACjD,OAAO,wBACL,0BACA;QACE,SAAQ,CAAC;YACP,yCAAyC;YACzC,EAAE,eAAe;QACnB;IACF,GACA;QAAC,wBAAE,yBAAyB;KAAU;AAE1C;AAEO,SAAS,0CAAqB,KAAK;IACxC,MAAM,YAAE,QAAQ,EAAE,GAAG;IACrB,MAAM,OAAO,CAAA,GAAA,yCAAc;IAC3B,IAAI,QAAQ,MACV,OAAO;IAGT,OAAO,wBACL,8BACA,wBACE,2CACA;QACE,OAAO;YACL,UAAU;YACV,KAAK,UAAU;YACf,OAAO,UAAU;YACjB,MAAM,UAAU;YAChB,QAAQ,UAAU;QACpB;IACF,GACA,wBAAE,CAAA,GAAA,yCAAe,GAAG;cAAE;IAAK;AAGjC","sources":["packages/column-views/src/selection-popover.ts"],"sourcesContent":["import hyper from \"@macrostrat/hyper\";\nimport { Button, Popover } from \"@blueprintjs/core\";\nimport { DOMElement } from \"react\";\nimport styles from \"./selection-popover.module.sass\";\nimport { useSelectedUnit } from \"./units\";\nimport { UnitDetailsPanel } from \"./unit-details\";\n\nconst h = hyper.styled(styles);\n\nexport function UnitDetailsPopover({\n style,\n children,\n boundary,\n}: {\n style: object;\n children: React.ReactNode;\n boundary?: DOMElement<any, any>;\n}) {\n const content = h(LegendPopoverContainer, children);\n\n return h(\n \"div.popover-main\",\n {\n style,\n },\n h(\n Popover,\n // @ts-ignore\n { content, isOpen: true, usePortal: false, boundary, position: \"right\" },\n h(\"span.popover-target\")\n )\n );\n}\n\nexport function LegendPopoverContainer({ children }) {\n return h(\n \"div.legend-panel-outer\",\n {\n onClick(e) {\n // Stop events from leaking to the parent\n e.stopPropagation();\n },\n },\n [h(\"div.legend-info-panel\", children)]\n );\n}\n\nexport function UnitSelectionPopover(props) {\n const { position } = props;\n const unit = useSelectedUnit();\n if (unit == null) {\n return null;\n }\n\n return h(\n \"div.unit-popover-container\",\n h(\n UnitDetailsPopover,\n {\n style: {\n position: \"absolute\",\n top: position?.y,\n width: position?.width,\n left: position?.x,\n height: position?.height,\n },\n },\n h(UnitDetailsPanel, { unit })\n )\n );\n}\n"],"names":[],"version":3,"file":"selection-popover.17d1bd55.js.map"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAAA;;;;;AAIE;;;;AAGA;;;;;;;;;AAQF;;;;;;;AAMA;;;;AAGA","sources":["packages/column-views/src/selection-popover.module.sass"],"sourcesContent":[".popover-main\n position: absolute\n pointer-events: none\n\n :global(.bp5-overlay)\n pointer-events: all\n\n :global(.bp5-popover-target)\n height: 100%\n width: 100%\n display: block\n line-height: 0\n pointer-events: none\n outline: 2px solid #f22\n\n.legend-panel-outer\n width: 25em\n max-height: 60vh\n overflow-y: scroll\n background-color: var(--panel-background-color)\n\n.legend-info-panel\n padding: 1em\n\n.legend-json-view\n padding-left: 0\n margin-left: -0.5em\n"],"names":[],"version":3,"file":"selection-popover.module.
|
|
1
|
+
{"mappings":"AAAA;;;;;AAIE;;;;AAGA;;;;;;;;;AAQF;;;;;;;AAMA;;;;AAGA","sources":["packages/column-views/src/selection-popover.module.sass"],"sourcesContent":[".popover-main\n position: absolute\n pointer-events: none\n\n :global(.bp5-overlay)\n pointer-events: all\n\n :global(.bp5-popover-target)\n height: 100%\n width: 100%\n display: block\n line-height: 0\n pointer-events: none\n outline: 2px solid #f22\n\n.legend-panel-outer\n width: 25em\n max-height: 60vh\n overflow-y: scroll\n background-color: var(--panel-background-color)\n\n.legend-info-panel\n padding: 1em\n\n.legend-json-view\n padding-left: 0\n margin-left: -0.5em\n"],"names":[],"version":3,"file":"selection-popover.module.0a701258.css.map"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;;;;;;;;AAAA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AAHA,4CAAsC,CAAC,wBAAwB,CAAC;AAChE,4CAAqC,CAAC,uBAAuB,CAAC;AAC9D,4CAAuC,CAAC,yBAAyB,CAAC;AAClE,4CAAiC,CAAC,mBAAmB,CAAC","sources":["packages/column-views/src/selection-popover.module.sass"],"sourcesContent":[".popover-main\n position: absolute\n pointer-events: none\n\n :global(.bp5-overlay)\n pointer-events: all\n\n :global(.bp5-popover-target)\n height: 100%\n width: 100%\n display: block\n line-height: 0\n pointer-events: none\n outline: 2px solid #f22\n\n.legend-panel-outer\n width: 25em\n max-height: 60vh\n overflow-y: scroll\n background-color: var(--panel-background-color)\n\n.legend-info-panel\n padding: 1em\n\n.legend-json-view\n padding-left: 0\n margin-left: -0.5em\n"],"names":[],"version":3,"file":"selection-popover.module.
|
|
1
|
+
{"mappings":";;;;;;;;;;AAAA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AAHA,4CAAsC,CAAC,wBAAwB,CAAC;AAChE,4CAAqC,CAAC,uBAAuB,CAAC;AAC9D,4CAAuC,CAAC,yBAAyB,CAAC;AAClE,4CAAiC,CAAC,mBAAmB,CAAC","sources":["packages/column-views/src/selection-popover.module.sass"],"sourcesContent":[".popover-main\n position: absolute\n pointer-events: none\n\n :global(.bp5-overlay)\n pointer-events: all\n\n :global(.bp5-popover-target)\n height: 100%\n width: 100%\n display: block\n line-height: 0\n pointer-events: none\n outline: 2px solid #f22\n\n.legend-panel-outer\n width: 25em\n max-height: 60vh\n overflow-y: scroll\n background-color: var(--panel-background-color)\n\n.legend-info-panel\n padding: 1em\n\n.legend-json-view\n padding-left: 0\n margin-left: -0.5em\n"],"names":[],"version":3,"file":"selection-popover.module.e22f5183.js.map"}
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
import $
|
|
2
|
-
import {getQueryString as $
|
|
3
|
-
import {createContext as $
|
|
1
|
+
import $eIxPJ$macrostrathyper from "@macrostrat/hyper";
|
|
2
|
+
import {getQueryString as $eIxPJ$getQueryString, setQueryString as $eIxPJ$setQueryString, useKeyHandler as $eIxPJ$useKeyHandler} from "@macrostrat/ui-components";
|
|
3
|
+
import {createContext as $eIxPJ$createContext, useContext as $eIxPJ$useContext, useState as $eIxPJ$useState, useMemo as $eIxPJ$useMemo, useCallback as $eIxPJ$useCallback, useEffect as $eIxPJ$useEffect} from "react";
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
const $4d5d1c15f39f6a14$var$UnitSelectionContext = (0, $
|
|
9
|
-
const $4d5d1c15f39f6a14$var$DispatchContext = (0, $
|
|
8
|
+
const $4d5d1c15f39f6a14$var$UnitSelectionContext = (0, $eIxPJ$createContext)(null);
|
|
9
|
+
const $4d5d1c15f39f6a14$var$DispatchContext = (0, $eIxPJ$createContext)(null);
|
|
10
10
|
function $4d5d1c15f39f6a14$export$77a278d5ca56e309() {
|
|
11
|
-
return (0, $
|
|
11
|
+
return (0, $eIxPJ$useContext)($4d5d1c15f39f6a14$var$DispatchContext);
|
|
12
12
|
}
|
|
13
13
|
function $4d5d1c15f39f6a14$export$f0dd93f90aa8e5da() {
|
|
14
|
-
return (0, $
|
|
14
|
+
return (0, $eIxPJ$useContext)($4d5d1c15f39f6a14$var$UnitSelectionContext);
|
|
15
15
|
}
|
|
16
16
|
function $4d5d1c15f39f6a14$export$f19d75b1d4b676a4(props) {
|
|
17
17
|
const { unit: unit, setUnit: setUnit, onUnitSelected: onUnitSelected, children: children } = props;
|
|
18
|
-
if (unit == null && setUnit == null) return (0, $
|
|
19
|
-
return (0, $
|
|
18
|
+
if (unit == null && setUnit == null) return (0, $eIxPJ$macrostrathyper)($4d5d1c15f39f6a14$var$StatefulUnitSelectionProvider, props);
|
|
19
|
+
return (0, $eIxPJ$macrostrathyper)($4d5d1c15f39f6a14$var$BaseUnitSelectionProvider, {
|
|
20
20
|
unit: unit,
|
|
21
21
|
setUnit: setUnit,
|
|
22
22
|
onUnitSelected: onUnitSelected
|
|
23
23
|
}, children);
|
|
24
24
|
}
|
|
25
25
|
function $4d5d1c15f39f6a14$var$StatefulUnitSelectionProvider(props) {
|
|
26
|
-
const [unit, setUnit] = (0, $
|
|
27
|
-
return (0, $
|
|
26
|
+
const [unit, setUnit] = (0, $eIxPJ$useState)(null);
|
|
27
|
+
return (0, $eIxPJ$macrostrathyper)($4d5d1c15f39f6a14$var$BaseUnitSelectionProvider, {
|
|
28
28
|
...props,
|
|
29
29
|
unit: unit,
|
|
30
30
|
setUnit: setUnit
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
33
|
function $4d5d1c15f39f6a14$var$BaseUnitSelectionProvider({ children: children, unit: unit, setUnit: setUnit, onUnitSelected: onUnitSelected }) {
|
|
34
|
-
const value = (0, $
|
|
34
|
+
const value = (0, $eIxPJ$useMemo)(()=>unit, [
|
|
35
35
|
unit?.unit_id
|
|
36
36
|
]);
|
|
37
|
-
const _onUnitSelected = (0, $
|
|
37
|
+
const _onUnitSelected = (0, $eIxPJ$useCallback)((u, target, event)=>{
|
|
38
38
|
let newUnit = u;
|
|
39
39
|
setUnit(newUnit);
|
|
40
40
|
onUnitSelected?.(newUnit, target, event);
|
|
@@ -42,21 +42,21 @@ function $4d5d1c15f39f6a14$var$BaseUnitSelectionProvider({ children: children, u
|
|
|
42
42
|
setUnit,
|
|
43
43
|
onUnitSelected
|
|
44
44
|
]);
|
|
45
|
-
return (0, $
|
|
45
|
+
return (0, $eIxPJ$macrostrathyper)($4d5d1c15f39f6a14$var$DispatchContext.Provider, {
|
|
46
46
|
value: _onUnitSelected
|
|
47
|
-
}, (0, $
|
|
47
|
+
}, (0, $eIxPJ$macrostrathyper)($4d5d1c15f39f6a14$var$UnitSelectionContext.Provider, {
|
|
48
48
|
value: value
|
|
49
49
|
}, children));
|
|
50
50
|
}
|
|
51
|
-
const $4d5d1c15f39f6a14$var$ColumnNavCtx = (0, $
|
|
51
|
+
const $4d5d1c15f39f6a14$var$ColumnNavCtx = (0, $eIxPJ$createContext)(null);
|
|
52
52
|
function $4d5d1c15f39f6a14$export$91cb5ac808759b34(defaultArgs = {
|
|
53
53
|
col_id: 495,
|
|
54
54
|
unit_id: null
|
|
55
55
|
}) {
|
|
56
|
-
const ctx = (0, $
|
|
56
|
+
const ctx = (0, $eIxPJ$useContext)($4d5d1c15f39f6a14$var$ColumnNavCtx);
|
|
57
57
|
if (ctx != null) return ctx;
|
|
58
|
-
const [columnArgs, setColumnArgs] = (0, $
|
|
59
|
-
(0, $
|
|
58
|
+
const [columnArgs, setColumnArgs] = (0, $eIxPJ$useState)($4d5d1c15f39f6a14$var$extractColumnArgs((0, $eIxPJ$getQueryString)(window.location.search)) ?? defaultArgs);
|
|
59
|
+
(0, $eIxPJ$useEffect)(()=>(0, $eIxPJ$setQueryString)(columnArgs), [
|
|
60
60
|
columnArgs
|
|
61
61
|
]);
|
|
62
62
|
const { col_id: col_id, project_id: project_id, status_code: status_code } = columnArgs;
|
|
@@ -68,7 +68,7 @@ function $4d5d1c15f39f6a14$export$91cb5ac808759b34(defaultArgs = {
|
|
|
68
68
|
status_code: status_code
|
|
69
69
|
};
|
|
70
70
|
// Set query string
|
|
71
|
-
(0, $
|
|
71
|
+
(0, $eIxPJ$setQueryString)(args);
|
|
72
72
|
setColumnArgs(args);
|
|
73
73
|
};
|
|
74
74
|
return [
|
|
@@ -88,7 +88,7 @@ function $4d5d1c15f39f6a14$var$extractColumnArgs(search) {
|
|
|
88
88
|
}
|
|
89
89
|
function $4d5d1c15f39f6a14$export$36fed9e0f93a8fde({ children: children, ...defaultArgs }) {
|
|
90
90
|
const value = $4d5d1c15f39f6a14$export$91cb5ac808759b34(defaultArgs);
|
|
91
|
-
return (0, $
|
|
91
|
+
return (0, $eIxPJ$macrostrathyper)($4d5d1c15f39f6a14$var$ColumnNavCtx.Provider, {
|
|
92
92
|
value: value
|
|
93
93
|
}, children);
|
|
94
94
|
}
|
|
@@ -100,7 +100,7 @@ function $4d5d1c15f39f6a14$export$70f5ee19650fc7d1({ units: units }) {
|
|
|
100
100
|
38: ix - 1,
|
|
101
101
|
40: ix + 1
|
|
102
102
|
};
|
|
103
|
-
(0, $
|
|
103
|
+
(0, $eIxPJ$useKeyHandler)((event)=>{
|
|
104
104
|
const nextIx = keyMap[event.keyCode];
|
|
105
105
|
if (nextIx == null || nextIx < 0 || nextIx >= units.length) return;
|
|
106
106
|
selectUnit(units[nextIx], null, null);
|
|
@@ -114,4 +114,4 @@ function $4d5d1c15f39f6a14$export$70f5ee19650fc7d1({ units: units }) {
|
|
|
114
114
|
|
|
115
115
|
|
|
116
116
|
export {$4d5d1c15f39f6a14$export$77a278d5ca56e309 as useUnitSelectionDispatch, $4d5d1c15f39f6a14$export$f0dd93f90aa8e5da as useSelectedUnit, $4d5d1c15f39f6a14$export$f19d75b1d4b676a4 as UnitSelectionProvider, $4d5d1c15f39f6a14$export$91cb5ac808759b34 as useColumnNav, $4d5d1c15f39f6a14$export$36fed9e0f93a8fde as ColumnNavProvider, $4d5d1c15f39f6a14$export$70f5ee19650fc7d1 as UnitKeyboardNavigation};
|
|
117
|
-
//# sourceMappingURL=selection.
|
|
117
|
+
//# sourceMappingURL=selection.bbf26d0e.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"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","sources":["packages/column-views/src/units/selection.ts"],"sourcesContent":["import { BaseUnit } from \"@macrostrat/api-types\";\nimport h from \"@macrostrat/hyper\";\nimport {\n getQueryString,\n setQueryString,\n useKeyHandler,\n} from \"@macrostrat/ui-components\";\nimport {\n Dispatch,\n SetStateAction,\n createContext,\n useContext,\n useEffect,\n useMemo,\n useState,\n ReactNode,\n useCallback,\n} from \"react\";\n\ntype UnitSelectDispatch = (\n unit: BaseUnit | null,\n target: HTMLElement | null,\n event: Event | null\n) => void;\n\nconst UnitSelectionContext = createContext<BaseUnit | null>(null);\nconst DispatchContext = createContext<UnitSelectDispatch | null>(null);\n\nexport function useUnitSelectionDispatch() {\n return useContext(DispatchContext);\n}\n\nexport function useSelectedUnit() {\n return useContext(UnitSelectionContext);\n}\n\nexport interface UnitSelectionProps<T extends BaseUnit> {\n children: React.ReactNode;\n unit: T | null;\n setUnit: Dispatch<SetStateAction<T>>;\n onUnitSelected?: (unit: T, target: HTMLElement, event: Event) => void;\n}\n\nexport function UnitSelectionProvider<T extends BaseUnit>(\n props: Partial<UnitSelectionProps<T>>\n) {\n const { unit, setUnit, onUnitSelected, children } = props;\n\n if (unit == null && setUnit == null) {\n return h(StatefulUnitSelectionProvider, props);\n }\n\n return h(\n BaseUnitSelectionProvider,\n { unit, setUnit, onUnitSelected },\n children\n );\n}\n\nfunction StatefulUnitSelectionProvider<T extends BaseUnit>(props: {\n children: ReactNode;\n onUnitSelected?: (unit: T, target: HTMLElement, event: Event) => void;\n}) {\n const [unit, setUnit] = useState<T | null>(null);\n\n return h(BaseUnitSelectionProvider, { ...props, unit, setUnit });\n}\n\nfunction BaseUnitSelectionProvider<T extends BaseUnit>({\n children,\n unit,\n setUnit,\n onUnitSelected,\n}: UnitSelectionProps<T>) {\n const value = useMemo(() => unit, [unit?.unit_id]);\n\n const _onUnitSelected = useCallback(\n (u: T, target: HTMLElement, event: Event) => {\n let newUnit = u;\n setUnit(newUnit);\n onUnitSelected?.(newUnit, target, event);\n },\n [setUnit, onUnitSelected]\n );\n\n return h(\n DispatchContext.Provider,\n { value: _onUnitSelected },\n h(UnitSelectionContext.Provider, { value }, children)\n );\n}\n\nexport interface ColumnArgs {\n col_id?: number;\n unit_id?: number;\n project_id?: number;\n status_code?: \"in process\";\n}\n\ntype ColumnManagerData = [ColumnArgs, (c: ColumnArgs) => void];\n\nconst ColumnNavCtx = createContext<ColumnManagerData | null>(null);\n\nexport function useColumnNav(\n defaultArgs: ColumnArgs = { col_id: 495, unit_id: null }\n): ColumnManagerData {\n const ctx = useContext(ColumnNavCtx);\n if (ctx != null) return ctx;\n\n const [columnArgs, setColumnArgs] = useState<ColumnArgs>(\n extractColumnArgs(getQueryString(window.location.search)) ?? defaultArgs\n );\n\n useEffect(() => setQueryString(columnArgs), [columnArgs]);\n\n const { col_id, project_id, status_code } = columnArgs;\n\n const setCurrentColumn = (obj) => {\n let args = obj;\n if (\"properties\" in obj) {\n args = { col_id: obj.properties.col_id, project_id, status_code };\n }\n // Set query string\n setQueryString(args);\n setColumnArgs(args);\n };\n\n return [columnArgs, setCurrentColumn];\n}\n\nfunction extractColumnArgs(search: any): ColumnArgs | null {\n const { col_id, unit_id, project_id, status_code } = search;\n if (col_id == null) return null;\n return { col_id, unit_id, project_id, status_code };\n}\n\nexport function ColumnNavProvider({ children, ...defaultArgs }) {\n const value = useColumnNav(defaultArgs as any);\n return h(ColumnNavCtx.Provider, { value }, children);\n}\n\nexport function UnitKeyboardNavigation<T extends BaseUnit>({\n units,\n}: {\n units: T[];\n}) {\n const selectedUnit = useSelectedUnit();\n const selectUnit = useUnitSelectionDispatch();\n\n const ix = units.findIndex((unit) => unit.unit_id === selectedUnit?.unit_id);\n\n const keyMap = {\n 38: ix - 1,\n 40: ix + 1,\n };\n\n useKeyHandler(\n (event) => {\n const nextIx = keyMap[event.keyCode];\n if (nextIx == null || nextIx < 0 || nextIx >= units.length) return;\n selectUnit(units[nextIx], null, null);\n event.stopPropagation();\n },\n [units, ix]\n );\n return null;\n}\n"],"names":[],"version":3,"file":"selection.
|
|
1
|
+
{"mappings":"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","sources":["packages/column-views/src/units/selection.ts"],"sourcesContent":["import { BaseUnit } from \"@macrostrat/api-types\";\nimport h from \"@macrostrat/hyper\";\nimport {\n getQueryString,\n setQueryString,\n useKeyHandler,\n} from \"@macrostrat/ui-components\";\nimport {\n Dispatch,\n SetStateAction,\n createContext,\n useContext,\n useEffect,\n useMemo,\n useState,\n ReactNode,\n useCallback,\n} from \"react\";\n\ntype UnitSelectDispatch = (\n unit: BaseUnit | null,\n target: HTMLElement | null,\n event: Event | null\n) => void;\n\nconst UnitSelectionContext = createContext<BaseUnit | null>(null);\nconst DispatchContext = createContext<UnitSelectDispatch | null>(null);\n\nexport function useUnitSelectionDispatch() {\n return useContext(DispatchContext);\n}\n\nexport function useSelectedUnit() {\n return useContext(UnitSelectionContext);\n}\n\nexport interface UnitSelectionProps<T extends BaseUnit> {\n children: React.ReactNode;\n unit: T | null;\n setUnit: Dispatch<SetStateAction<T>>;\n onUnitSelected?: (unit: T, target: HTMLElement, event: Event) => void;\n}\n\nexport function UnitSelectionProvider<T extends BaseUnit>(\n props: Partial<UnitSelectionProps<T>>\n) {\n const { unit, setUnit, onUnitSelected, children } = props;\n\n if (unit == null && setUnit == null) {\n return h(StatefulUnitSelectionProvider, props);\n }\n\n return h(\n BaseUnitSelectionProvider,\n { unit, setUnit, onUnitSelected },\n children\n );\n}\n\nfunction StatefulUnitSelectionProvider<T extends BaseUnit>(props: {\n children: ReactNode;\n onUnitSelected?: (unit: T, target: HTMLElement, event: Event) => void;\n}) {\n const [unit, setUnit] = useState<T | null>(null);\n\n return h(BaseUnitSelectionProvider, { ...props, unit, setUnit });\n}\n\nfunction BaseUnitSelectionProvider<T extends BaseUnit>({\n children,\n unit,\n setUnit,\n onUnitSelected,\n}: UnitSelectionProps<T>) {\n const value = useMemo(() => unit, [unit?.unit_id]);\n\n const _onUnitSelected = useCallback(\n (u: T, target: HTMLElement, event: Event) => {\n let newUnit = u;\n setUnit(newUnit);\n onUnitSelected?.(newUnit, target, event);\n },\n [setUnit, onUnitSelected]\n );\n\n return h(\n DispatchContext.Provider,\n { value: _onUnitSelected },\n h(UnitSelectionContext.Provider, { value }, children)\n );\n}\n\nexport interface ColumnArgs {\n col_id?: number;\n unit_id?: number;\n project_id?: number;\n status_code?: \"in process\";\n}\n\ntype ColumnManagerData = [ColumnArgs, (c: ColumnArgs) => void];\n\nconst ColumnNavCtx = createContext<ColumnManagerData | null>(null);\n\nexport function useColumnNav(\n defaultArgs: ColumnArgs = { col_id: 495, unit_id: null }\n): ColumnManagerData {\n const ctx = useContext(ColumnNavCtx);\n if (ctx != null) return ctx;\n\n const [columnArgs, setColumnArgs] = useState<ColumnArgs>(\n extractColumnArgs(getQueryString(window.location.search)) ?? defaultArgs\n );\n\n useEffect(() => setQueryString(columnArgs), [columnArgs]);\n\n const { col_id, project_id, status_code } = columnArgs;\n\n const setCurrentColumn = (obj) => {\n let args = obj;\n if (\"properties\" in obj) {\n args = { col_id: obj.properties.col_id, project_id, status_code };\n }\n // Set query string\n setQueryString(args);\n setColumnArgs(args);\n };\n\n return [columnArgs, setCurrentColumn];\n}\n\nfunction extractColumnArgs(search: any): ColumnArgs | null {\n const { col_id, unit_id, project_id, status_code } = search;\n if (col_id == null) return null;\n return { col_id, unit_id, project_id, status_code };\n}\n\nexport function ColumnNavProvider({ children, ...defaultArgs }) {\n const value = useColumnNav(defaultArgs as any);\n return h(ColumnNavCtx.Provider, { value }, children);\n}\n\nexport function UnitKeyboardNavigation<T extends BaseUnit>({\n units,\n}: {\n units: T[];\n}) {\n const selectedUnit = useSelectedUnit();\n const selectUnit = useUnitSelectionDispatch();\n\n const ix = units.findIndex((unit) => unit.unit_id === selectedUnit?.unit_id);\n\n const keyMap = {\n 38: ix - 1,\n 40: ix + 1,\n };\n\n useKeyHandler(\n (event) => {\n const nextIx = keyMap[event.keyCode];\n if (nextIx == null || nextIx < 0 || nextIx >= units.length) return;\n selectUnit(units[nextIx], null, null);\n event.stopPropagation();\n },\n [units, ix]\n );\n return null;\n}\n"],"names":[],"version":3,"file":"selection.bbf26d0e.js.map"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import {createContext as $
|
|
2
|
-
import $
|
|
1
|
+
import {createContext as $7EIIA$createContext, useContext as $7EIIA$useContext} from "react";
|
|
2
|
+
import $7EIIA$macrostrathyper from "@macrostrat/hyper";
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
const $1fcb9b8d7da394a3$var$MacrostratUnitsContext = (0, $
|
|
6
|
+
const $1fcb9b8d7da394a3$var$MacrostratUnitsContext = (0, $7EIIA$createContext)(null);
|
|
7
7
|
function $1fcb9b8d7da394a3$export$e5fe24ae4f287040({ children: children, units: units }) {
|
|
8
|
-
return (0, $
|
|
8
|
+
return (0, $7EIIA$macrostrathyper)($1fcb9b8d7da394a3$var$MacrostratUnitsContext.Provider, {
|
|
9
9
|
value: units
|
|
10
10
|
}, children);
|
|
11
11
|
}
|
|
12
12
|
function $1fcb9b8d7da394a3$export$6fb40844db555b2() {
|
|
13
|
-
return (0, $
|
|
13
|
+
return (0, $7EIIA$useContext)($1fcb9b8d7da394a3$var$MacrostratUnitsContext);
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
export {$1fcb9b8d7da394a3$export$e5fe24ae4f287040 as MacrostratUnitsProvider, $1fcb9b8d7da394a3$export$6fb40844db555b2 as useMacrostratUnits};
|
|
18
|
-
//# sourceMappingURL=store.
|
|
18
|
+
//# sourceMappingURL=store.25eaa168.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;;;AAGA,MAAM,+CAAyB,CAAA,GAAA,oBAAY,EAAE;AAEtC,SAAS,0CAAwB,YAAE,QAAQ,SAAE,KAAK,EAAE;IACzD,OAAO,CAAA,GAAA,sBAAA,EAAE,6CAAuB,QAAQ,EAAE;QAAE,OAAO;IAAM,GAAG;AAC9D;AAEO,SAAS;IACd,OAAO,CAAA,GAAA,iBAAS,EAAE;AACpB","sources":["packages/column-views/src/store.ts"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport h from \"@macrostrat/hyper\";\n\nconst MacrostratUnitsContext = createContext(null);\n\nexport function MacrostratUnitsProvider({ children, units }) {\n return h(MacrostratUnitsContext.Provider, { value: units }, children);\n}\n\nexport function useMacrostratUnits() {\n return useContext(MacrostratUnitsContext);\n}\n"],"names":[],"version":3,"file":"store.
|
|
1
|
+
{"mappings":";;;;;AAGA,MAAM,+CAAyB,CAAA,GAAA,oBAAY,EAAE;AAEtC,SAAS,0CAAwB,YAAE,QAAQ,SAAE,KAAK,EAAE;IACzD,OAAO,CAAA,GAAA,sBAAA,EAAE,6CAAuB,QAAQ,EAAE;QAAE,OAAO;IAAM,GAAG;AAC9D;AAEO,SAAS;IACd,OAAO,CAAA,GAAA,iBAAS,EAAE;AACpB","sources":["packages/column-views/src/store.ts"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport h from \"@macrostrat/hyper\";\n\nconst MacrostratUnitsContext = createContext(null);\n\nexport function MacrostratUnitsProvider({ children, units }) {\n return h(MacrostratUnitsContext.Provider, { value: units }, children);\n}\n\nexport function useMacrostratUnits() {\n return useContext(MacrostratUnitsContext);\n}\n"],"names":[],"version":3,"file":"store.25eaa168.js.map"}
|
|
@@ -15,4 +15,4 @@ function $faf1eba02aecac6a$export$ab2a19f8a72df19b(t) {
|
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
export {$faf1eba02aecac6a$export$6d217bb9de27dba7 as MacrostratAxisKey, $faf1eba02aecac6a$export$ab2a19f8a72df19b as transformAxisType};
|
|
18
|
-
//# sourceMappingURL=types.
|
|
18
|
+
//# sourceMappingURL=types.f016e032.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAUA,IAAA,AAAK,mEAAA;;;WAAA;EAAA;AAKL,SAAS,0CAAkB,CAAiB;IAC1C,OAAQ;QACN,KAAK;YACH;QACF,KAAK;QACL,KAAK;YACH;IACJ;AACF","sources":["packages/column-views/src/units/types.ts"],"sourcesContent":["import { ColumnAxisType } from \"@macrostrat/column-components\";\nexport interface IUnit {\n unit_id: number;\n col_id: number;\n section_id: number;\n t_age: number;\n b_age: number;\n [x: string]: any;\n}\n\nenum MacrostratAxisKey {\n AGE = \"age\",\n POS = \"pos\"\n}\n\nfunction transformAxisType(t: ColumnAxisType): MacrostratAxisKey {\n switch (t) {\n case \"age\":\n return MacrostratAxisKey.AGE;\n case \"height\":\n case \"depth\":\n return MacrostratAxisKey.POS;\n }\n}\n\nexport { MacrostratAxisKey, transformAxisType };\n"],"names":[],"version":3,"file":"types.
|
|
1
|
+
{"mappings":"AAUA,IAAA,AAAK,mEAAA;;;WAAA;EAAA;AAKL,SAAS,0CAAkB,CAAiB;IAC1C,OAAQ;QACN,KAAK;YACH;QACF,KAAK;QACL,KAAK;YACH;IACJ;AACF","sources":["packages/column-views/src/units/types.ts"],"sourcesContent":["import { ColumnAxisType } from \"@macrostrat/column-components\";\nexport interface IUnit {\n unit_id: number;\n col_id: number;\n section_id: number;\n t_age: number;\n b_age: number;\n [x: string]: any;\n}\n\nenum MacrostratAxisKey {\n AGE = \"age\",\n POS = \"pos\"\n}\n\nfunction transformAxisType(t: ColumnAxisType): MacrostratAxisKey {\n switch (t) {\n case \"age\":\n return MacrostratAxisKey.AGE;\n case \"height\":\n case \"depth\":\n return MacrostratAxisKey.POS;\n }\n}\n\nexport { MacrostratAxisKey, transformAxisType };\n"],"names":[],"version":3,"file":"types.f016e032.js.map"}
|