@xyo-network/react-map 2.38.10 → 2.38.12

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.
@@ -1,6 +1,9 @@
1
- import { XyoApiError } from '@xyo-network/api';
2
1
  declare const useFetchPayloads: (hashes?: string[]) => {
3
- apiError: XyoApiError<any, any> | undefined;
2
+ apiError: (import("@xyo-network/payload").SchemaFields & import("@xyo-network/payload").PayloadFields & {
3
+ message?: string | undefined;
4
+ schema: "network.xyo.error";
5
+ sources: string[];
6
+ }) | undefined;
4
7
  features: import("geojson").Feature<import("geojson").Geometry, import("geojson").GeoJsonProperties>[];
5
8
  multipleFeatureSets: import("geojson").Feature<import("geojson").Geometry, import("geojson").GeoJsonProperties>[][];
6
9
  notFound: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"useFetchPayloads.d.ts","sourceRoot":"","sources":["../../../src/hooks/useFetchPayloads.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAQ9C,QAAA,MAAM,gBAAgB,YAAa,MAAM,EAAE;;;;;CA6C1C,CAAA;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
1
+ {"version":3,"file":"useFetchPayloads.d.ts","sourceRoot":"","sources":["../../../src/hooks/useFetchPayloads.tsx"],"names":[],"mappings":"AASA,QAAA,MAAM,gBAAgB,YAAa,MAAM,EAAE;;;;;;;;;CAqC1C,CAAA;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
@@ -1,11 +1,10 @@
1
1
  import { useAsyncEffect } from '@xylabs/react-shared';
2
- import { useArchive } from '@xyo-network/react-archive';
3
- import { useArchivistApi } from '@xyo-network/react-archivist-api';
2
+ import { XyoArchivistWrapper } from '@xyo-network/archivist';
3
+ import { useArchivist } from '@xyo-network/react-archivist';
4
4
  import { useState } from 'react';
5
5
  import { useQuadKeyPayloadsToFeatures } from './useQuadKeyPayloadsToFeatures';
6
6
  const useFetchPayloads = (hashes) => {
7
- const { api: ArchivistApi } = useArchivistApi();
8
- const { archive } = useArchive();
7
+ const { archivist } = useArchivist();
9
8
  const [apiError, setApiError] = useState();
10
9
  const [payloads, setPayloads] = useState();
11
10
  const { features, multipleFeatureSets } = useQuadKeyPayloadsToFeatures(payloads);
@@ -14,35 +13,29 @@ const useFetchPayloads = (hashes) => {
14
13
  useAsyncEffect(
15
14
  // eslint-disable-next-line react-hooks/exhaustive-deps
16
15
  async (mounted) => {
17
- if (ArchivistApi && payloads === undefined && hashes?.length && !inFlight) {
16
+ if (archivist && payloads === undefined && hashes?.length && !inFlight) {
17
+ const archivistWrapper = new XyoArchivistWrapper(archivist);
18
18
  try {
19
19
  setInFlight(true);
20
- const payloads = await Promise.allSettled(hashes.map((hash) => ArchivistApi.archive(archive).payload.hash(hash).get()));
21
- if (payloads?.length) {
22
- const validPayloads = [];
23
- payloads.forEach((result) => {
24
- if (result.status === 'fulfilled' && result.value && result.value[0]) {
25
- validPayloads.push(result.value[0]);
26
- }
27
- else if (result.status === 'rejected') {
28
- setApiError(result.reason);
29
- }
30
- });
31
- if (validPayloads.length) {
32
- setPayloads(validPayloads);
33
- }
34
- if (validPayloads.length === 0 && apiError === undefined) {
20
+ const payloads = await archivistWrapper.get(hashes);
21
+ if (mounted()) {
22
+ if (payloads.length === 0 && apiError === undefined) {
35
23
  setNotFound(true);
24
+ setPayloads([]);
25
+ }
26
+ else {
27
+ setPayloads(payloads);
36
28
  }
37
29
  }
38
30
  }
39
31
  catch (e) {
32
+ const error = e;
40
33
  if (mounted()) {
41
- setApiError(e);
34
+ setApiError(error.errors.reduce((answer, error) => answer ?? error ?? null, null) ?? undefined);
42
35
  }
43
36
  }
44
37
  }
45
- }, [ArchivistApi, apiError, archive, hashes, inFlight, payloads]);
38
+ }, [apiError, hashes, inFlight, payloads, archivist]);
46
39
  return { apiError, features, multipleFeatureSets, notFound };
47
40
  };
48
41
  export { useFetchPayloads };
@@ -1 +1 @@
1
- {"version":3,"file":"useFetchPayloads.js","sourceRoot":"","sources":["../../../src/hooks/useFetchPayloads.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAGhC,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAA;AAE7E,MAAM,gBAAgB,GAAG,CAAC,MAAiB,EAAE,EAAE;IAC7C,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,CAAA;IAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,CAAA;IAChC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAe,CAAA;IACvD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAmD,CAAA;IAC3F,MAAM,EAAE,QAAQ,EAAE,mBAAmB,EAAE,GAAG,4BAA4B,CAAC,QAAQ,CAAC,CAAA;IAChF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC/C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE/C,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,IAAI,YAAY,IAAI,QAAQ,KAAK,SAAS,IAAI,MAAM,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE;YACzE,IAAI;gBACF,WAAW,CAAC,IAAI,CAAC,CAAA;gBACjB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;gBACvH,IAAI,QAAQ,EAAE,MAAM,EAAE;oBACpB,MAAM,aAAa,GAAoD,EAAE,CAAA;oBACzE,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;wBAC1B,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;4BACpE,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAkD,CAAC,CAAA;yBACrF;6BAAM,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE;4BACvC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;yBAC3B;oBACH,CAAC,CAAC,CAAA;oBAEF,IAAI,aAAa,CAAC,MAAM,EAAE;wBACxB,WAAW,CAAC,aAAa,CAAC,CAAA;qBAC3B;oBAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,KAAK,SAAS,EAAE;wBACxD,WAAW,CAAC,IAAI,CAAC,CAAA;qBAClB;iBACF;aACF;YAAC,OAAO,CAAC,EAAE;gBACV,IAAI,OAAO,EAAE,EAAE;oBACb,WAAW,CAAC,CAAgB,CAAC,CAAA;iBAC9B;aACF;SACF;IACH,CAAC,EACD,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAC9D,CAAA;IAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,QAAQ,EAAE,CAAA;AAC9D,CAAC,CAAA;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
1
+ {"version":3,"file":"useFetchPayloads.js","sourceRoot":"","sources":["../../../src/hooks/useFetchPayloads.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE5D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAGhC,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAA;AAE7E,MAAM,gBAAgB,GAAG,CAAC,MAAiB,EAAE,EAAE;IAC7C,MAAM,EAAE,SAAS,EAAE,GAAG,YAAY,EAAE,CAAA;IAEpC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAY,CAAA;IACpD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAmD,CAAA;IAC3F,MAAM,EAAE,QAAQ,EAAE,mBAAmB,EAAE,GAAG,4BAA4B,CAAC,QAAQ,CAAC,CAAA;IAChF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC/C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE/C,cAAc;IACZ,uDAAuD;IACvD,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,IAAI,SAAS,IAAI,QAAQ,KAAK,SAAS,IAAI,MAAM,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE;YACtE,MAAM,gBAAgB,GAAG,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAA;YAC3D,IAAI;gBACF,WAAW,CAAC,IAAI,CAAC,CAAA;gBACjB,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBACnD,IAAI,OAAO,EAAE,EAAE;oBACb,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,KAAK,SAAS,EAAE;wBACnD,WAAW,CAAC,IAAI,CAAC,CAAA;wBACjB,WAAW,CAAC,EAAE,CAAC,CAAA;qBAChB;yBAAM;wBACL,WAAW,CAAC,QAA2D,CAAC,CAAA;qBACzE;iBACF;aACF;YAAC,OAAO,CAAC,EAAE;gBACV,MAAM,KAAK,GAAG,CAAiB,CAAA;gBAC/B,IAAI,OAAO,EAAE,EAAE;oBACb,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,IAAI,KAAK,IAAI,IAAI,EAAE,IAAI,CAAC,IAAI,SAAS,CAAC,CAAA;iBAChG;aACF;SACF;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAClD,CAAA;IAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,QAAQ,EAAE,CAAA;AAC9D,CAAC,CAAA;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
package/package.json CHANGED
@@ -12,11 +12,11 @@
12
12
  "dependencies": {
13
13
  "@xylabs/react-flexbox": "^2.15.1",
14
14
  "@xylabs/react-shared": "^2.15.1",
15
- "@xyo-network/react-app-settings": "^2.38.10",
16
- "@xyo-network/react-archive": "^2.38.10",
17
- "@xyo-network/react-archivist-api": "^2.38.10",
18
- "@xyo-network/react-network": "^2.38.10",
19
- "@xyo-network/react-shared": "^2.38.10",
15
+ "@xyo-network/react-app-settings": "^2.38.12",
16
+ "@xyo-network/react-archive": "^2.38.12",
17
+ "@xyo-network/react-archivist": "^2.38.12",
18
+ "@xyo-network/react-network": "^2.38.12",
19
+ "@xyo-network/react-shared": "^2.38.12",
20
20
  "@xyo-network/sdk-geo": "^2.7.0",
21
21
  "geojson": "^0.5.0",
22
22
  "mapbox-gl": "^2.10.0",
@@ -27,7 +27,8 @@
27
27
  "@mui/material": "^5.10.3",
28
28
  "@mui/styles": "^5.10.3",
29
29
  "@xylabs/sdk-js": "^2.6.7",
30
- "@xyo-network/api": "*",
30
+ "@xyo-network/archivist": "*",
31
+ "@xyo-network/module": "*",
31
32
  "@xyo-network/payload": "*",
32
33
  "axios": "^1.1.3",
33
34
  "lodash": "^4.17.21",
@@ -82,5 +83,5 @@
82
83
  },
83
84
  "sideEffects": false,
84
85
  "types": "dist/esm/index.d.ts",
85
- "version": "2.38.10"
86
+ "version": "2.38.12"
86
87
  }
@@ -1,16 +1,16 @@
1
1
  import { useAsyncEffect } from '@xylabs/react-shared'
2
- import { XyoApiError } from '@xyo-network/api'
3
- import { useArchive } from '@xyo-network/react-archive'
4
- import { useArchivistApi } from '@xyo-network/react-archivist-api'
2
+ import { XyoArchivistWrapper } from '@xyo-network/archivist'
3
+ import { WrapperError, XyoError } from '@xyo-network/module'
4
+ import { useArchivist } from '@xyo-network/react-archivist'
5
5
  import { useState } from 'react'
6
6
 
7
7
  import { NetworkXyoLocationHeatmapQuadkeyAnswerPayload } from '../types'
8
8
  import { useQuadKeyPayloadsToFeatures } from './useQuadKeyPayloadsToFeatures'
9
9
 
10
10
  const useFetchPayloads = (hashes?: string[]) => {
11
- const { api: ArchivistApi } = useArchivistApi()
12
- const { archive } = useArchive()
13
- const [apiError, setApiError] = useState<XyoApiError>()
11
+ const { archivist } = useArchivist()
12
+
13
+ const [apiError, setApiError] = useState<XyoError>()
14
14
  const [payloads, setPayloads] = useState<NetworkXyoLocationHeatmapQuadkeyAnswerPayload[]>()
15
15
  const { features, multipleFeatureSets } = useQuadKeyPayloadsToFeatures(payloads)
16
16
  const [notFound, setNotFound] = useState(false)
@@ -19,36 +19,28 @@ const useFetchPayloads = (hashes?: string[]) => {
19
19
  useAsyncEffect(
20
20
  // eslint-disable-next-line react-hooks/exhaustive-deps
21
21
  async (mounted) => {
22
- if (ArchivistApi && payloads === undefined && hashes?.length && !inFlight) {
22
+ if (archivist && payloads === undefined && hashes?.length && !inFlight) {
23
+ const archivistWrapper = new XyoArchivistWrapper(archivist)
23
24
  try {
24
25
  setInFlight(true)
25
- const payloads = await Promise.allSettled(hashes.map((hash) => ArchivistApi.archive(archive).payload.hash(hash).get()))
26
- if (payloads?.length) {
27
- const validPayloads: NetworkXyoLocationHeatmapQuadkeyAnswerPayload[] = []
28
- payloads.forEach((result) => {
29
- if (result.status === 'fulfilled' && result.value && result.value[0]) {
30
- validPayloads.push(result.value[0] as NetworkXyoLocationHeatmapQuadkeyAnswerPayload)
31
- } else if (result.status === 'rejected') {
32
- setApiError(result.reason)
33
- }
34
- })
35
-
36
- if (validPayloads.length) {
37
- setPayloads(validPayloads)
38
- }
39
-
40
- if (validPayloads.length === 0 && apiError === undefined) {
26
+ const payloads = await archivistWrapper.get(hashes)
27
+ if (mounted()) {
28
+ if (payloads.length === 0 && apiError === undefined) {
41
29
  setNotFound(true)
30
+ setPayloads([])
31
+ } else {
32
+ setPayloads(payloads as NetworkXyoLocationHeatmapQuadkeyAnswerPayload[])
42
33
  }
43
34
  }
44
35
  } catch (e) {
36
+ const error = e as WrapperError
45
37
  if (mounted()) {
46
- setApiError(e as XyoApiError)
38
+ setApiError(error.errors.reduce((answer, error) => answer ?? error ?? null, null) ?? undefined)
47
39
  }
48
40
  }
49
41
  }
50
42
  },
51
- [ArchivistApi, apiError, archive, hashes, inFlight, payloads],
43
+ [apiError, hashes, inFlight, payloads, archivist],
52
44
  )
53
45
 
54
46
  return { apiError, features, multipleFeatureSets, notFound }