@xyo-network/react-map-model 7.4.1 → 7.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/hooks/useFindHashes.d.ts +1 -2
- package/dist/browser/hooks/useFindHashes.d.ts.map +1 -1
- package/dist/browser/index.mjs +40 -35
- package/dist/browser/index.mjs.map +1 -1
- package/dist/browser/types/NetworkLocationAnswerBase.d.ts +12 -6
- package/dist/browser/types/NetworkLocationAnswerBase.d.ts.map +1 -1
- package/package.json +17 -16
- package/src/hooks/useFindHashes.tsx +1 -1
- package/src/types/NetworkLocationAnswerBase.ts +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFindHashes.d.ts","sourceRoot":"","sources":["../../../src/hooks/useFindHashes.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useFindHashes.d.ts","sourceRoot":"","sources":["../../../src/hooks/useFindHashes.tsx"],"names":[],"mappings":"AAqBA,eAAO,MAAM,aAAa,8CAOzB,CAAA"}
|
package/dist/browser/index.mjs
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
|
|
1
4
|
// src/settings/DefaultMapSettings.ts
|
|
2
|
-
var DefaultMapSettings = () => ({
|
|
5
|
+
var DefaultMapSettings = /* @__PURE__ */ __name(() => ({
|
|
3
6
|
debugLayer: {
|
|
4
7
|
devMode: true,
|
|
5
8
|
field: "debugLayer",
|
|
@@ -49,16 +52,11 @@ var DefaultMapSettings = () => ({
|
|
|
49
52
|
label: "Scroll To Zoom",
|
|
50
53
|
value: false
|
|
51
54
|
}
|
|
52
|
-
});
|
|
55
|
+
}), "DefaultMapSettings");
|
|
53
56
|
|
|
54
57
|
// src/AnimatedHeatMapSettings.ts
|
|
55
58
|
var AnimatedHeatMapSettings = DefaultMapSettings();
|
|
56
|
-
var {
|
|
57
|
-
debugLayer,
|
|
58
|
-
scrollToZoom,
|
|
59
|
-
fitToPoints,
|
|
60
|
-
preferDark
|
|
61
|
-
} = AnimatedHeatMapSettings;
|
|
59
|
+
var { debugLayer, scrollToZoom, fitToPoints, preferDark } = AnimatedHeatMapSettings;
|
|
62
60
|
debugLayer.hidden = false;
|
|
63
61
|
scrollToZoom.value = true;
|
|
64
62
|
fitToPoints.value = false;
|
|
@@ -69,29 +67,29 @@ import { createContextEx } from "@xylabs/react-shared";
|
|
|
69
67
|
var MapboxAccessTokenContext = createContextEx();
|
|
70
68
|
|
|
71
69
|
// src/contexts/MapboxAccessToken/Provider.tsx
|
|
72
|
-
import { useMemo, useState } from "react";
|
|
73
|
-
|
|
74
|
-
var MapboxAccessTokenProvider = ({ defaultAccessToken, ...props }) => {
|
|
70
|
+
import React, { useMemo, useState } from "react";
|
|
71
|
+
var MapboxAccessTokenProvider = /* @__PURE__ */ __name(({ defaultAccessToken, ...props }) => {
|
|
75
72
|
const [accessToken, setAccessToken] = useState();
|
|
76
73
|
const value = useMemo(() => ({
|
|
77
74
|
accessToken: accessToken ?? defaultAccessToken,
|
|
78
75
|
provided: true,
|
|
79
76
|
setAccessToken
|
|
80
|
-
}), [
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
};
|
|
77
|
+
}), [
|
|
78
|
+
accessToken,
|
|
79
|
+
defaultAccessToken,
|
|
80
|
+
setAccessToken
|
|
81
|
+
]);
|
|
82
|
+
return /* @__PURE__ */ React.createElement(MapboxAccessTokenContext, {
|
|
83
|
+
value,
|
|
84
|
+
...props
|
|
85
|
+
});
|
|
86
|
+
}, "MapboxAccessTokenProvider");
|
|
89
87
|
|
|
90
88
|
// src/contexts/MapboxAccessToken/use.ts
|
|
91
89
|
import { useContextEx } from "@xylabs/react-shared";
|
|
92
|
-
var useMapboxAccessToken = (required = false) => {
|
|
90
|
+
var useMapboxAccessToken = /* @__PURE__ */ __name((required = false) => {
|
|
93
91
|
return useContextEx(MapboxAccessTokenContext, "MapboxAccessToken", required);
|
|
94
|
-
};
|
|
92
|
+
}, "useMapboxAccessToken");
|
|
95
93
|
|
|
96
94
|
// src/hooks/useFindHashes.tsx
|
|
97
95
|
import { useNetwork } from "@xyo-network/react-network";
|
|
@@ -110,18 +108,24 @@ var animatedAnswerHashesConst = [
|
|
|
110
108
|
"32d377bfe7ebe382598c54dd13f8af7510e0a1e2fd2e913311fdd58e517e5e2e,"
|
|
111
109
|
];
|
|
112
110
|
var staticAnswerHashConst = "c7bbf61f61cfd4a1b2def160c28136fc1d100d39fbdb67b227a2c6e558d9d3a5";
|
|
113
|
-
var useFindHashes = () => {
|
|
111
|
+
var useFindHashes = /* @__PURE__ */ __name(() => {
|
|
114
112
|
const { network } = useNetwork();
|
|
115
113
|
const exploreMapHashes = network?.nodes?.find((node) => node.type === "archivist")?.explorerMapHashes;
|
|
116
114
|
const animatedAnswerHashes = exploreMapHashes?.animatedAnswerHashes || animatedAnswerHashesConst;
|
|
117
115
|
const staticAnswerHash = exploreMapHashes?.staticAnswerHash || staticAnswerHashConst;
|
|
118
|
-
const foundHashes = useMemo2(() => [
|
|
116
|
+
const foundHashes = useMemo2(() => [
|
|
117
|
+
staticAnswerHash,
|
|
118
|
+
...animatedAnswerHashes
|
|
119
|
+
], [
|
|
120
|
+
animatedAnswerHashes,
|
|
121
|
+
staticAnswerHash
|
|
122
|
+
]);
|
|
119
123
|
return foundHashes;
|
|
120
|
-
};
|
|
124
|
+
}, "useFindHashes");
|
|
121
125
|
|
|
122
126
|
// src/hooks/useHeatMapColors.tsx
|
|
123
127
|
import { useTheme } from "@mui/material";
|
|
124
|
-
var useHeatMapColors = () => {
|
|
128
|
+
var useHeatMapColors = /* @__PURE__ */ __name(() => {
|
|
125
129
|
const theme = useTheme();
|
|
126
130
|
const staticMapColor = "#FFFF75";
|
|
127
131
|
const highUsageColor = "#FF0000";
|
|
@@ -138,8 +142,11 @@ var useHeatMapColors = () => {
|
|
|
138
142
|
startLabel: "Low",
|
|
139
143
|
textColor: theme.vars.palette.common.white
|
|
140
144
|
};
|
|
141
|
-
return {
|
|
142
|
-
|
|
145
|
+
return {
|
|
146
|
+
heatMapColorProps,
|
|
147
|
+
legendProps
|
|
148
|
+
};
|
|
149
|
+
}, "useHeatMapColors");
|
|
143
150
|
|
|
144
151
|
// src/lib/MapStyle.ts
|
|
145
152
|
import { Enum } from "@xylabs/enum";
|
|
@@ -153,15 +160,13 @@ var MapStyle = Enum({
|
|
|
153
160
|
});
|
|
154
161
|
|
|
155
162
|
// src/types/NetworkLocationAnswerBase.ts
|
|
156
|
-
import { isPayloadOfSchemaType } from "@xyo-network/payload-model";
|
|
157
|
-
var NetworkLocationAnswerSchema = "network.xyo.location.range.answer";
|
|
163
|
+
import { asSchema, isPayloadOfSchemaType } from "@xyo-network/payload-model";
|
|
164
|
+
var NetworkLocationAnswerSchema = asSchema("network.xyo.location.range.answer", true);
|
|
158
165
|
var isNetworkLocationAnswer = isPayloadOfSchemaType(NetworkLocationAnswerSchema);
|
|
159
|
-
var NetworkLocationHeatmapAnswerSchema = "network.xyo.location.heatmap.answer";
|
|
166
|
+
var NetworkLocationHeatmapAnswerSchema = asSchema("network.xyo.location.heatmap.answer", true);
|
|
160
167
|
var isNetworkLocationHeatmapAnswer = isPayloadOfSchemaType(NetworkLocationHeatmapAnswerSchema);
|
|
161
|
-
var NetworkLocationHeatmapQuadkeyAnswerSchema = "network.xyo.location.heatmap.quadkey.answer";
|
|
162
|
-
var isNetworkLocationHeatmapQuadkeyAnswer = isPayloadOfSchemaType(
|
|
163
|
-
NetworkLocationHeatmapQuadkeyAnswerSchema
|
|
164
|
-
);
|
|
168
|
+
var NetworkLocationHeatmapQuadkeyAnswerSchema = asSchema("network.xyo.location.heatmap.quadkey.answer", true);
|
|
169
|
+
var isNetworkLocationHeatmapQuadkeyAnswer = isPayloadOfSchemaType(NetworkLocationHeatmapQuadkeyAnswerSchema);
|
|
165
170
|
export {
|
|
166
171
|
AnimatedHeatMapSettings,
|
|
167
172
|
DefaultMapSettings,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/settings/DefaultMapSettings.ts","../../src/AnimatedHeatMapSettings.ts","../../src/contexts/MapboxAccessToken/Context.ts","../../src/contexts/MapboxAccessToken/Provider.tsx","../../src/contexts/MapboxAccessToken/use.ts","../../src/hooks/useFindHashes.tsx","../../src/hooks/useHeatMapColors.tsx","../../src/lib/MapStyle.ts","../../src/types/NetworkLocationAnswerBase.ts"],"sourcesContent":["import type { MapSetting } from './MapSetting.ts'\n\nexport const DefaultMapSettings: () => MapSetting = () => ({\n debugLayer: {\n devMode: true,\n field: 'debugLayer',\n hidden: true,\n label: 'Debug Layer',\n value: false,\n },\n debugLogging: {\n devMode: true,\n field: 'debugLogging',\n hidden: true,\n label: 'Debug Logging',\n value: false,\n },\n dynamicMapResize: {\n devMode: true,\n field: 'dynamicMapResize',\n hidden: true,\n label: 'Auto Map Resize',\n value: true,\n },\n enableControls: {\n devMode: true,\n field: 'enableControls',\n hidden: true,\n label: 'Map Controls',\n value: false,\n },\n fitToPoints: {\n devMode: true,\n field: 'fitToPoints',\n hidden: true,\n label: 'Fit To Points',\n value: false,\n },\n preferDark: {\n devMode: false,\n field: 'preferDark',\n hidden: true,\n label: 'Prefer dark',\n value: false,\n },\n scrollToZoom: {\n devMode: true,\n field: 'scrollToZoom',\n hidden: true,\n label: 'Scroll To Zoom',\n value: false,\n },\n})\n","import { DefaultMapSettings } from './settings/index.ts'\n\nexport const AnimatedHeatMapSettings = DefaultMapSettings()\nconst {\n debugLayer, scrollToZoom, fitToPoints, preferDark,\n} = AnimatedHeatMapSettings\ndebugLayer.hidden = false\nscrollToZoom.value = true\nfitToPoints.value = false\npreferDark.value = true\n","import { createContextEx } from '@xylabs/react-shared'\n\nimport type { MapboxAccessTokenContextState } from './State.ts'\n\nexport const MapboxAccessTokenContext = createContextEx<MapboxAccessTokenContextState>()\n","import type { PropsWithChildren } from 'react'\nimport React, { useMemo, useState } from 'react'\n\nimport { MapboxAccessTokenContext } from './Context.ts'\nimport type { MapboxAccessTokenContextState } from './State.ts'\n\nexport interface MapboxAccessTokenProviderProps {\n defaultAccessToken?: string\n}\n\nexport const MapboxAccessTokenProvider: React.FC<PropsWithChildren<MapboxAccessTokenProviderProps>> = ({ defaultAccessToken, ...props }) => {\n const [accessToken, setAccessToken] = useState<string>()\n\n const value: MapboxAccessTokenContextState = useMemo(() => ({\n accessToken: accessToken ?? defaultAccessToken, provided: true, setAccessToken,\n }), [accessToken, defaultAccessToken, setAccessToken])\n\n return (\n <MapboxAccessTokenContext\n value={value}\n {...props}\n />\n )\n}\n","import { useContextEx } from '@xylabs/react-shared'\n\nimport { MapboxAccessTokenContext } from './Context.ts'\n\nexport const useMapboxAccessToken = (required = false) => {\n return useContextEx(MapboxAccessTokenContext, 'MapboxAccessToken', required)\n}\n","import type { Hash } from '@xylabs/hex'\nimport type { ArchivistPreset } from '@xyo-network/react-network'\nimport { useNetwork } from '@xyo-network/react-network'\nimport { useMemo } from 'react'\n\nconst animatedAnswerHashesConst = [\n '79af071f451fc7af10d009dc63236ef9a9b211732c1ee0c06f028fcecf2336c5',\n '531bfba6d8dfefd3bcc888aca54cdbbd4574ed2b3ec551b230845a1f9a608898',\n 'c874412b4faa4947de81372fd1ba12fdd6f43f5e408622b7f357cb2bcb3f17cb',\n '29d3f8b882c61a82a1a1675782a27e797ea7196f45a23b4409680ab8b8d5f14e',\n 'cfd20f80ac073fd9518f4ef3f43d2a1f5e4e56e40c2677f38d6f6fecd05df60c',\n '1354fa73497519a39aed19fc99bdbae78a880a1eafb2f7898d607e07db36528d',\n '1043b0d25eacfc5013ae9dba780305a6fbf01a43543bd871d7c00537fca142a9',\n '973dfc5df142851ced258d52d0ac2784e814000ac22e35776f772256b0d4dde9',\n '463808eb74d3d87e6563970e0301a493577f8cd1b501e6e0ffa5e027ad2cea95',\n '15b21acea2e3fd9d1ace3768a72636ee7bdf67a6f8e0807bfa2273dea2207555',\n '32d377bfe7ebe382598c54dd13f8af7510e0a1e2fd2e913311fdd58e517e5e2e,',\n] as Hash[]\n\nconst staticAnswerHashConst = 'c7bbf61f61cfd4a1b2def160c28136fc1d100d39fbdb67b227a2c6e558d9d3a5' as Hash\n\nexport const useFindHashes = () => {\n const { network } = useNetwork()\n const exploreMapHashes = (network?.nodes?.find(node => node.type === 'archivist') as ArchivistPreset)?.explorerMapHashes\n const animatedAnswerHashes = exploreMapHashes?.animatedAnswerHashes || animatedAnswerHashesConst\n const staticAnswerHash = exploreMapHashes?.staticAnswerHash || staticAnswerHashConst\n const foundHashes = useMemo(() => [staticAnswerHash, ...animatedAnswerHashes], [animatedAnswerHashes, staticAnswerHash])\n return foundHashes\n}\n","import { useTheme } from '@mui/material'\n\nimport type { AnimatedHeatMapColorProps, ColorGradientLegendProps } from '../colors/index.ts'\n\nconst useHeatMapColors = () => {\n const theme = useTheme()\n const staticMapColor = '#FFFF75'\n const highUsageColor = '#FF0000'\n\n const heatMapColorProps: AnimatedHeatMapColorProps = {\n highUsageColor,\n lowUsageColor: '#FFB3B3',\n staticMapColor,\n }\n\n const legendProps: ColorGradientLegendProps = {\n endColor: highUsageColor,\n endLabel: 'High',\n heading: 'Network Usage',\n startColor: staticMapColor,\n startLabel: 'Low',\n textColor: theme.vars.palette.common.white,\n }\n\n return { heatMapColorProps, legendProps }\n}\n\nexport { useHeatMapColors }\n","import type { EnumValue } from '@xylabs/enum'\nimport { Enum } from '@xylabs/enum'\n\nexport const MapStyle = Enum({\n Dark: 'mapbox/dark-v10',\n Light: 'mapbox/light-v10',\n Outdoors: 'mapbox/outdoors-v11',\n Satellite: 'mapbox/satellite-v9',\n SatelliteStreets: 'mapbox/satellite-streets-v11',\n Streets: 'mapbox/streets-v11',\n})\n\nexport type MapStyle = EnumValue<typeof MapStyle>\n","import type { Payload } from '@xyo-network/payload-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\nimport type {\n Feature, Point, Polygon,\n} from 'geojson'\n\nexport interface NetworkLocationAnswerBase<T> {\n result: T\n}\n\nexport const NetworkLocationAnswerSchema = 'network.xyo.location.range.answer'\nexport type NetworkLocationAnswerSchema = 'network.xyo.location.range.answer'\nexport type NetworkLocationAnswerPayload = Payload<NetworkLocationAnswerBase<{ features: Feature<Point>[] }>, NetworkLocationAnswerSchema>\nexport const isNetworkLocationAnswer = isPayloadOfSchemaType<NetworkLocationAnswerPayload>(NetworkLocationAnswerSchema)\n\nexport const NetworkLocationHeatmapAnswerSchema = 'network.xyo.location.heatmap.answer'\nexport type NetworkLocationHeatmapAnswerSchema = 'network.xyo.location.heatmap.answer'\nexport type NetworkLocationHeatmapAnswerPayload = Payload<\n NetworkLocationAnswerBase<{ features: Feature<Polygon>[] }>,\n NetworkLocationHeatmapAnswerSchema\n>\nexport const isNetworkLocationHeatmapAnswer = isPayloadOfSchemaType<NetworkLocationHeatmapAnswerPayload>(NetworkLocationHeatmapAnswerSchema)\n\nexport const NetworkLocationHeatmapQuadkeyAnswerSchema = 'network.xyo.location.heatmap.quadkey.answer'\nexport type NetworkLocationHeatmapQuadkeyAnswerSchema = 'network.xyo.location.heatmap.quadkey.answer'\nexport type NetworkLocationHeatmapQuadkeyAnswerPayload = Payload<\n NetworkLocationAnswerBase<{ density: number; quadkey: string }[]>,\n NetworkLocationHeatmapQuadkeyAnswerSchema\n>\nexport const isNetworkLocationHeatmapQuadkeyAnswer = isPayloadOfSchemaType<NetworkLocationHeatmapQuadkeyAnswerPayload>(\n NetworkLocationHeatmapQuadkeyAnswerSchema,\n)\n"],"mappings":"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","names":["useMemo"]}
|
|
1
|
+
{"version":3,"sources":["../../src/settings/DefaultMapSettings.ts","../../src/AnimatedHeatMapSettings.ts","../../src/contexts/MapboxAccessToken/Context.ts","../../src/contexts/MapboxAccessToken/Provider.tsx","../../src/contexts/MapboxAccessToken/use.ts","../../src/hooks/useFindHashes.tsx","../../src/hooks/useHeatMapColors.tsx","../../src/lib/MapStyle.ts","../../src/types/NetworkLocationAnswerBase.ts"],"sourcesContent":["import type { MapSetting } from './MapSetting.ts'\n\nexport const DefaultMapSettings: () => MapSetting = () => ({\n debugLayer: {\n devMode: true,\n field: 'debugLayer',\n hidden: true,\n label: 'Debug Layer',\n value: false,\n },\n debugLogging: {\n devMode: true,\n field: 'debugLogging',\n hidden: true,\n label: 'Debug Logging',\n value: false,\n },\n dynamicMapResize: {\n devMode: true,\n field: 'dynamicMapResize',\n hidden: true,\n label: 'Auto Map Resize',\n value: true,\n },\n enableControls: {\n devMode: true,\n field: 'enableControls',\n hidden: true,\n label: 'Map Controls',\n value: false,\n },\n fitToPoints: {\n devMode: true,\n field: 'fitToPoints',\n hidden: true,\n label: 'Fit To Points',\n value: false,\n },\n preferDark: {\n devMode: false,\n field: 'preferDark',\n hidden: true,\n label: 'Prefer dark',\n value: false,\n },\n scrollToZoom: {\n devMode: true,\n field: 'scrollToZoom',\n hidden: true,\n label: 'Scroll To Zoom',\n value: false,\n },\n})\n","import { DefaultMapSettings } from './settings/index.ts'\n\nexport const AnimatedHeatMapSettings = DefaultMapSettings()\nconst {\n debugLayer, scrollToZoom, fitToPoints, preferDark,\n} = AnimatedHeatMapSettings\ndebugLayer.hidden = false\nscrollToZoom.value = true\nfitToPoints.value = false\npreferDark.value = true\n","import { createContextEx } from '@xylabs/react-shared'\n\nimport type { MapboxAccessTokenContextState } from './State.ts'\n\nexport const MapboxAccessTokenContext = createContextEx<MapboxAccessTokenContextState>()\n","import type { PropsWithChildren } from 'react'\nimport React, { useMemo, useState } from 'react'\n\nimport { MapboxAccessTokenContext } from './Context.ts'\nimport type { MapboxAccessTokenContextState } from './State.ts'\n\nexport interface MapboxAccessTokenProviderProps {\n defaultAccessToken?: string\n}\n\nexport const MapboxAccessTokenProvider: React.FC<PropsWithChildren<MapboxAccessTokenProviderProps>> = ({ defaultAccessToken, ...props }) => {\n const [accessToken, setAccessToken] = useState<string>()\n\n const value: MapboxAccessTokenContextState = useMemo(() => ({\n accessToken: accessToken ?? defaultAccessToken, provided: true, setAccessToken,\n }), [accessToken, defaultAccessToken, setAccessToken])\n\n return (\n <MapboxAccessTokenContext\n value={value}\n {...props}\n />\n )\n}\n","import { useContextEx } from '@xylabs/react-shared'\n\nimport { MapboxAccessTokenContext } from './Context.ts'\n\nexport const useMapboxAccessToken = (required = false) => {\n return useContextEx(MapboxAccessTokenContext, 'MapboxAccessToken', required)\n}\n","import type { Hash } from '@xylabs/sdk-js'\nimport type { ArchivistPreset } from '@xyo-network/react-network'\nimport { useNetwork } from '@xyo-network/react-network'\nimport { useMemo } from 'react'\n\nconst animatedAnswerHashesConst = [\n '79af071f451fc7af10d009dc63236ef9a9b211732c1ee0c06f028fcecf2336c5',\n '531bfba6d8dfefd3bcc888aca54cdbbd4574ed2b3ec551b230845a1f9a608898',\n 'c874412b4faa4947de81372fd1ba12fdd6f43f5e408622b7f357cb2bcb3f17cb',\n '29d3f8b882c61a82a1a1675782a27e797ea7196f45a23b4409680ab8b8d5f14e',\n 'cfd20f80ac073fd9518f4ef3f43d2a1f5e4e56e40c2677f38d6f6fecd05df60c',\n '1354fa73497519a39aed19fc99bdbae78a880a1eafb2f7898d607e07db36528d',\n '1043b0d25eacfc5013ae9dba780305a6fbf01a43543bd871d7c00537fca142a9',\n '973dfc5df142851ced258d52d0ac2784e814000ac22e35776f772256b0d4dde9',\n '463808eb74d3d87e6563970e0301a493577f8cd1b501e6e0ffa5e027ad2cea95',\n '15b21acea2e3fd9d1ace3768a72636ee7bdf67a6f8e0807bfa2273dea2207555',\n '32d377bfe7ebe382598c54dd13f8af7510e0a1e2fd2e913311fdd58e517e5e2e,',\n] as Hash[]\n\nconst staticAnswerHashConst = 'c7bbf61f61cfd4a1b2def160c28136fc1d100d39fbdb67b227a2c6e558d9d3a5' as Hash\n\nexport const useFindHashes = () => {\n const { network } = useNetwork()\n const exploreMapHashes = (network?.nodes?.find(node => node.type === 'archivist') as ArchivistPreset)?.explorerMapHashes\n const animatedAnswerHashes = exploreMapHashes?.animatedAnswerHashes || animatedAnswerHashesConst\n const staticAnswerHash = exploreMapHashes?.staticAnswerHash || staticAnswerHashConst\n const foundHashes = useMemo(() => [staticAnswerHash, ...animatedAnswerHashes], [animatedAnswerHashes, staticAnswerHash])\n return foundHashes\n}\n","import { useTheme } from '@mui/material'\n\nimport type { AnimatedHeatMapColorProps, ColorGradientLegendProps } from '../colors/index.ts'\n\nconst useHeatMapColors = () => {\n const theme = useTheme()\n const staticMapColor = '#FFFF75'\n const highUsageColor = '#FF0000'\n\n const heatMapColorProps: AnimatedHeatMapColorProps = {\n highUsageColor,\n lowUsageColor: '#FFB3B3',\n staticMapColor,\n }\n\n const legendProps: ColorGradientLegendProps = {\n endColor: highUsageColor,\n endLabel: 'High',\n heading: 'Network Usage',\n startColor: staticMapColor,\n startLabel: 'Low',\n textColor: theme.vars.palette.common.white,\n }\n\n return { heatMapColorProps, legendProps }\n}\n\nexport { useHeatMapColors }\n","import type { EnumValue } from '@xylabs/enum'\nimport { Enum } from '@xylabs/enum'\n\nexport const MapStyle = Enum({\n Dark: 'mapbox/dark-v10',\n Light: 'mapbox/light-v10',\n Outdoors: 'mapbox/outdoors-v11',\n Satellite: 'mapbox/satellite-v9',\n SatelliteStreets: 'mapbox/satellite-streets-v11',\n Streets: 'mapbox/streets-v11',\n})\n\nexport type MapStyle = EnumValue<typeof MapStyle>\n","import type { Payload } from '@xyo-network/payload-model'\nimport { asSchema, isPayloadOfSchemaType } from '@xyo-network/payload-model'\nimport type {\n Feature, Point, Polygon,\n} from 'geojson'\n\nexport interface NetworkLocationAnswerBase<T> {\n result: T\n}\n\nexport const NetworkLocationAnswerSchema = asSchema('network.xyo.location.range.answer', true)\nexport type NetworkLocationAnswerSchema = typeof NetworkLocationAnswerSchema\nexport type NetworkLocationAnswerPayload = Payload<NetworkLocationAnswerBase<{ features: Feature<Point>[] }>, NetworkLocationAnswerSchema>\nexport const isNetworkLocationAnswer = isPayloadOfSchemaType<NetworkLocationAnswerPayload>(NetworkLocationAnswerSchema)\n\nexport const NetworkLocationHeatmapAnswerSchema = asSchema('network.xyo.location.heatmap.answer', true)\nexport type NetworkLocationHeatmapAnswerSchema = typeof NetworkLocationHeatmapAnswerSchema\nexport type NetworkLocationHeatmapAnswerPayload = Payload<\n NetworkLocationAnswerBase<{ features: Feature<Polygon>[] }>,\n NetworkLocationHeatmapAnswerSchema\n>\nexport const isNetworkLocationHeatmapAnswer = isPayloadOfSchemaType<NetworkLocationHeatmapAnswerPayload>(NetworkLocationHeatmapAnswerSchema)\n\nexport const NetworkLocationHeatmapQuadkeyAnswerSchema = asSchema('network.xyo.location.heatmap.quadkey.answer', true)\nexport type NetworkLocationHeatmapQuadkeyAnswerSchema = typeof NetworkLocationHeatmapQuadkeyAnswerSchema\nexport type NetworkLocationHeatmapQuadkeyAnswerPayload = Payload<\n NetworkLocationAnswerBase<{ density: number; quadkey: string }[]>,\n NetworkLocationHeatmapQuadkeyAnswerSchema\n>\nexport const isNetworkLocationHeatmapQuadkeyAnswer = isPayloadOfSchemaType<NetworkLocationHeatmapQuadkeyAnswerPayload>(\n NetworkLocationHeatmapQuadkeyAnswerSchema,\n)\n"],"mappings":"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","names":["DefaultMapSettings","debugLayer","devMode","field","hidden","label","value","debugLogging","dynamicMapResize","enableControls","fitToPoints","preferDark","scrollToZoom","AnimatedHeatMapSettings","DefaultMapSettings","debugLayer","scrollToZoom","fitToPoints","preferDark","hidden","value","createContextEx","MapboxAccessTokenContext","React","useMemo","useState","MapboxAccessTokenProvider","defaultAccessToken","props","accessToken","setAccessToken","useState","value","useMemo","provided","MapboxAccessTokenContext","useContextEx","useMapboxAccessToken","required","useContextEx","MapboxAccessTokenContext","useNetwork","useMemo","animatedAnswerHashesConst","staticAnswerHashConst","useFindHashes","network","useNetwork","exploreMapHashes","nodes","find","node","type","explorerMapHashes","animatedAnswerHashes","staticAnswerHash","foundHashes","useMemo","useTheme","useHeatMapColors","theme","useTheme","staticMapColor","highUsageColor","heatMapColorProps","lowUsageColor","legendProps","endColor","endLabel","heading","startColor","startLabel","textColor","vars","palette","common","white","Enum","MapStyle","Dark","Light","Outdoors","Satellite","SatelliteStreets","Streets","asSchema","isPayloadOfSchemaType","NetworkLocationAnswerSchema","isNetworkLocationAnswer","NetworkLocationHeatmapAnswerSchema","isNetworkLocationHeatmapAnswer","NetworkLocationHeatmapQuadkeyAnswerSchema","isNetworkLocationHeatmapQuadkeyAnswer"]}
|
|
@@ -3,20 +3,26 @@ import type { Feature, Point, Polygon } from 'geojson';
|
|
|
3
3
|
export interface NetworkLocationAnswerBase<T> {
|
|
4
4
|
result: T;
|
|
5
5
|
}
|
|
6
|
-
export declare const NetworkLocationAnswerSchema
|
|
7
|
-
|
|
6
|
+
export declare const NetworkLocationAnswerSchema: "network.xyo.location.range.answer" & {
|
|
7
|
+
readonly __schema: true;
|
|
8
|
+
};
|
|
9
|
+
export type NetworkLocationAnswerSchema = typeof NetworkLocationAnswerSchema;
|
|
8
10
|
export type NetworkLocationAnswerPayload = Payload<NetworkLocationAnswerBase<{
|
|
9
11
|
features: Feature<Point>[];
|
|
10
12
|
}>, NetworkLocationAnswerSchema>;
|
|
11
13
|
export declare const isNetworkLocationAnswer: (x?: unknown | null) => x is NetworkLocationAnswerPayload;
|
|
12
|
-
export declare const NetworkLocationHeatmapAnswerSchema
|
|
13
|
-
|
|
14
|
+
export declare const NetworkLocationHeatmapAnswerSchema: "network.xyo.location.heatmap.answer" & {
|
|
15
|
+
readonly __schema: true;
|
|
16
|
+
};
|
|
17
|
+
export type NetworkLocationHeatmapAnswerSchema = typeof NetworkLocationHeatmapAnswerSchema;
|
|
14
18
|
export type NetworkLocationHeatmapAnswerPayload = Payload<NetworkLocationAnswerBase<{
|
|
15
19
|
features: Feature<Polygon>[];
|
|
16
20
|
}>, NetworkLocationHeatmapAnswerSchema>;
|
|
17
21
|
export declare const isNetworkLocationHeatmapAnswer: (x?: unknown | null) => x is NetworkLocationHeatmapAnswerPayload;
|
|
18
|
-
export declare const NetworkLocationHeatmapQuadkeyAnswerSchema
|
|
19
|
-
|
|
22
|
+
export declare const NetworkLocationHeatmapQuadkeyAnswerSchema: "network.xyo.location.heatmap.quadkey.answer" & {
|
|
23
|
+
readonly __schema: true;
|
|
24
|
+
};
|
|
25
|
+
export type NetworkLocationHeatmapQuadkeyAnswerSchema = typeof NetworkLocationHeatmapQuadkeyAnswerSchema;
|
|
20
26
|
export type NetworkLocationHeatmapQuadkeyAnswerPayload = Payload<NetworkLocationAnswerBase<{
|
|
21
27
|
density: number;
|
|
22
28
|
quadkey: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetworkLocationAnswerBase.d.ts","sourceRoot":"","sources":["../../../src/types/NetworkLocationAnswerBase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEzD,OAAO,KAAK,EACV,OAAO,EAAE,KAAK,EAAE,OAAO,EACxB,MAAM,SAAS,CAAA;AAEhB,MAAM,WAAW,yBAAyB,CAAC,CAAC;IAC1C,MAAM,EAAE,CAAC,CAAA;CACV;AAED,eAAO,MAAM,2BAA2B,
|
|
1
|
+
{"version":3,"file":"NetworkLocationAnswerBase.d.ts","sourceRoot":"","sources":["../../../src/types/NetworkLocationAnswerBase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEzD,OAAO,KAAK,EACV,OAAO,EAAE,KAAK,EAAE,OAAO,EACxB,MAAM,SAAS,CAAA;AAEhB,MAAM,WAAW,yBAAyB,CAAC,CAAC;IAC1C,MAAM,EAAE,CAAC,CAAA;CACV;AAED,eAAO,MAAM,2BAA2B;;CAAsD,CAAA;AAC9F,MAAM,MAAM,2BAA2B,GAAG,OAAO,2BAA2B,CAAA;AAC5E,MAAM,MAAM,4BAA4B,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAA;CAAE,CAAC,EAAE,2BAA2B,CAAC,CAAA;AAC1I,eAAO,MAAM,uBAAuB,2DAAmF,CAAA;AAEvH,eAAO,MAAM,kCAAkC;;CAAwD,CAAA;AACvG,MAAM,MAAM,kCAAkC,GAAG,OAAO,kCAAkC,CAAA;AAC1F,MAAM,MAAM,mCAAmC,GAAG,OAAO,CACvD,yBAAyB,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAA;CAAE,CAAC,EAC3D,kCAAkC,CACnC,CAAA;AACD,eAAO,MAAM,8BAA8B,kEAAiG,CAAA;AAE5I,eAAO,MAAM,yCAAyC;;CAAgE,CAAA;AACtH,MAAM,MAAM,yCAAyC,GAAG,OAAO,yCAAyC,CAAA;AACxG,MAAM,MAAM,0CAA0C,GAAG,OAAO,CAC9D,yBAAyB,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,EACjE,yCAAyC,CAC1C,CAAA;AACD,eAAO,MAAM,qCAAqC,yEAEjD,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/react-map-model",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.5.0",
|
|
4
4
|
"description": "Common React library for all XYO projects that use React",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"xyo",
|
|
@@ -43,24 +43,25 @@
|
|
|
43
43
|
"src"
|
|
44
44
|
],
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@xylabs/enum": "~5.0.
|
|
47
|
-
"@xylabs/react-shared": "~7.1.
|
|
48
|
-
"@
|
|
49
|
-
"@xyo-network/
|
|
46
|
+
"@xylabs/enum": "~5.0.64",
|
|
47
|
+
"@xylabs/react-shared": "~7.1.9",
|
|
48
|
+
"@xylabs/sdk-js": "~5.0.64",
|
|
49
|
+
"@xyo-network/payload-model": "~5.3.2",
|
|
50
|
+
"@xyo-network/react-network": "7.5.0",
|
|
50
51
|
"geojson": "~0.5.0"
|
|
51
52
|
},
|
|
52
53
|
"devDependencies": {
|
|
53
|
-
"@mui/icons-material": "~7.3.
|
|
54
|
-
"@mui/material": "~7.3.
|
|
54
|
+
"@mui/icons-material": "~7.3.7",
|
|
55
|
+
"@mui/material": "~7.3.7",
|
|
55
56
|
"@types/geojson": "7946.0.16",
|
|
56
|
-
"@types/react": "^19.2.
|
|
57
|
-
"@xylabs/hex": "~5.0.
|
|
58
|
-
"@xylabs/ts-scripts-yarn3": "~7.2
|
|
59
|
-
"@xylabs/tsconfig": "~7.2
|
|
60
|
-
"@xylabs/tsconfig-dom": "~7.2
|
|
61
|
-
"@xylabs/tsconfig-react": "~7.2
|
|
62
|
-
"react": "^19.2.
|
|
63
|
-
"react-dom": "^19.2.
|
|
57
|
+
"@types/react": "^19.2.10",
|
|
58
|
+
"@xylabs/hex": "~5.0.64",
|
|
59
|
+
"@xylabs/ts-scripts-yarn3": "~7.3.2",
|
|
60
|
+
"@xylabs/tsconfig": "~7.3.2",
|
|
61
|
+
"@xylabs/tsconfig-dom": "~7.3.2",
|
|
62
|
+
"@xylabs/tsconfig-react": "~7.3.2",
|
|
63
|
+
"react": "^19.2.4",
|
|
64
|
+
"react-dom": "^19.2.4",
|
|
64
65
|
"typescript": "^5.9.3"
|
|
65
66
|
},
|
|
66
67
|
"peerDependencies": {
|
|
@@ -73,4 +74,4 @@
|
|
|
73
74
|
"access": "public"
|
|
74
75
|
},
|
|
75
76
|
"docs": "dist/docs.json"
|
|
76
|
-
}
|
|
77
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Payload } from '@xyo-network/payload-model'
|
|
2
|
-
import { isPayloadOfSchemaType } from '@xyo-network/payload-model'
|
|
2
|
+
import { asSchema, isPayloadOfSchemaType } from '@xyo-network/payload-model'
|
|
3
3
|
import type {
|
|
4
4
|
Feature, Point, Polygon,
|
|
5
5
|
} from 'geojson'
|
|
@@ -8,21 +8,21 @@ export interface NetworkLocationAnswerBase<T> {
|
|
|
8
8
|
result: T
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
export const NetworkLocationAnswerSchema = 'network.xyo.location.range.answer'
|
|
12
|
-
export type NetworkLocationAnswerSchema =
|
|
11
|
+
export const NetworkLocationAnswerSchema = asSchema('network.xyo.location.range.answer', true)
|
|
12
|
+
export type NetworkLocationAnswerSchema = typeof NetworkLocationAnswerSchema
|
|
13
13
|
export type NetworkLocationAnswerPayload = Payload<NetworkLocationAnswerBase<{ features: Feature<Point>[] }>, NetworkLocationAnswerSchema>
|
|
14
14
|
export const isNetworkLocationAnswer = isPayloadOfSchemaType<NetworkLocationAnswerPayload>(NetworkLocationAnswerSchema)
|
|
15
15
|
|
|
16
|
-
export const NetworkLocationHeatmapAnswerSchema = 'network.xyo.location.heatmap.answer'
|
|
17
|
-
export type NetworkLocationHeatmapAnswerSchema =
|
|
16
|
+
export const NetworkLocationHeatmapAnswerSchema = asSchema('network.xyo.location.heatmap.answer', true)
|
|
17
|
+
export type NetworkLocationHeatmapAnswerSchema = typeof NetworkLocationHeatmapAnswerSchema
|
|
18
18
|
export type NetworkLocationHeatmapAnswerPayload = Payload<
|
|
19
19
|
NetworkLocationAnswerBase<{ features: Feature<Polygon>[] }>,
|
|
20
20
|
NetworkLocationHeatmapAnswerSchema
|
|
21
21
|
>
|
|
22
22
|
export const isNetworkLocationHeatmapAnswer = isPayloadOfSchemaType<NetworkLocationHeatmapAnswerPayload>(NetworkLocationHeatmapAnswerSchema)
|
|
23
23
|
|
|
24
|
-
export const NetworkLocationHeatmapQuadkeyAnswerSchema = 'network.xyo.location.heatmap.quadkey.answer'
|
|
25
|
-
export type NetworkLocationHeatmapQuadkeyAnswerSchema =
|
|
24
|
+
export const NetworkLocationHeatmapQuadkeyAnswerSchema = asSchema('network.xyo.location.heatmap.quadkey.answer', true)
|
|
25
|
+
export type NetworkLocationHeatmapQuadkeyAnswerSchema = typeof NetworkLocationHeatmapQuadkeyAnswerSchema
|
|
26
26
|
export type NetworkLocationHeatmapQuadkeyAnswerPayload = Payload<
|
|
27
27
|
NetworkLocationAnswerBase<{ density: number; quadkey: string }[]>,
|
|
28
28
|
NetworkLocationHeatmapQuadkeyAnswerSchema
|