@xyo-network/location-certainty-plugin 2.75.2 → 2.75.4
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/Diviner/Config.js +2 -1
- package/dist/browser/Diviner/Config.js.map +1 -1
- package/dist/browser/Diviner/Diviner.js +12 -7
- package/dist/browser/Diviner/Diviner.js.map +1 -1
- package/dist/browser/Diviner/index.js +78 -2
- package/dist/browser/Diviner/index.js.map +1 -1
- package/dist/browser/Plugin.js +81 -4
- package/dist/browser/Plugin.js.map +1 -1
- package/dist/browser/index.js +93 -2
- package/dist/browser/index.js.map +1 -1
- package/dist/docs.json +34 -34
- package/package.json +13 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Diviner/Config.ts"],"sourcesContent":["import { DivinerConfig } from '@xyo-network/diviner-model'\nimport { LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { Payload } from '@xyo-network/payload-model'\n\nexport type LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\nexport const LocationCertaintyDivinerConfigSchema: LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\n\nexport type LocationCertaintyDivinerConfig<TConfig extends Payload = Payload> = DivinerConfig<\n TConfig & {\n schema: LocationCertaintyDivinerConfigSchema\n targetSchema?: LocationCertaintySchema\n }\n>\n"],"mappings":"AAKO,
|
|
1
|
+
{"version":3,"sources":["../../../src/Diviner/Config.ts"],"sourcesContent":["import { DivinerConfig } from '@xyo-network/diviner-model'\nimport { LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { Payload } from '@xyo-network/payload-model'\n\nexport type LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\nexport const LocationCertaintyDivinerConfigSchema: LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\n\nexport type LocationCertaintyDivinerConfig<TConfig extends Payload = Payload> = DivinerConfig<\n TConfig & {\n schema: LocationCertaintyDivinerConfigSchema\n targetSchema?: LocationCertaintySchema\n }\n>\n"],"mappings":";AAKO,IAAM,uCAA6E;","names":[]}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
+
// src/Diviner/Diviner.ts
|
|
1
2
|
import { AbstractDiviner } from "@xyo-network/abstract-diviner";
|
|
2
3
|
import { ElevationWitness, ElevationWitnessConfigSchema } from "@xyo-network/elevation-plugin";
|
|
3
4
|
import { LocationCertaintySchema } from "@xyo-network/location-certainty-payload-plugin";
|
|
4
5
|
import { LocationSchema } from "@xyo-network/location-payload-plugin";
|
|
5
6
|
import { PayloadBuilder } from "@xyo-network/payload-builder";
|
|
6
|
-
|
|
7
|
-
|
|
7
|
+
|
|
8
|
+
// src/Diviner/Config.ts
|
|
9
|
+
var LocationCertaintyDivinerConfigSchema = "network.xyo.location.elevation.diviner.config";
|
|
10
|
+
|
|
11
|
+
// src/Diviner/Diviner.ts
|
|
12
|
+
var LocationCertaintyDiviner = class _LocationCertaintyDiviner extends AbstractDiviner {
|
|
8
13
|
static configSchemas = [LocationCertaintyDivinerConfigSchema];
|
|
9
14
|
static targetSchema = LocationCertaintySchema;
|
|
10
15
|
/* Given an array of numbers, find the min/max/mean */
|
|
@@ -57,18 +62,18 @@ class LocationCertaintyDiviner extends AbstractDiviner {
|
|
|
57
62
|
}
|
|
58
63
|
});
|
|
59
64
|
const elevations = await elevationWitness.observe();
|
|
60
|
-
const heuristics =
|
|
65
|
+
const heuristics = _LocationCertaintyDiviner.locationsToHeuristics(elevations, locations);
|
|
61
66
|
const result = new PayloadBuilder({ schema: LocationCertaintySchema }).fields({
|
|
62
|
-
altitude:
|
|
63
|
-
elevation:
|
|
64
|
-
variance:
|
|
67
|
+
altitude: _LocationCertaintyDiviner.calcHeuristic(heuristics.altitude),
|
|
68
|
+
elevation: _LocationCertaintyDiviner.calcHeuristic(heuristics.elevation),
|
|
69
|
+
variance: _LocationCertaintyDiviner.calcHeuristic(heuristics.variance)
|
|
65
70
|
}).build();
|
|
66
71
|
this.logger?.log("LocationCertaintyDiviner.Divine: Processed query");
|
|
67
72
|
return [result];
|
|
68
73
|
}
|
|
69
74
|
return [];
|
|
70
75
|
}
|
|
71
|
-
}
|
|
76
|
+
};
|
|
72
77
|
export {
|
|
73
78
|
LocationCertaintyDiviner
|
|
74
79
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Diviner/Diviner.ts"],"sourcesContent":["import { AbstractDiviner } from '@xyo-network/abstract-diviner'\nimport { DivinerModule, DivinerParams } from '@xyo-network/diviner-model'\nimport { ElevationPayload } from '@xyo-network/elevation-payload-plugin'\nimport { ElevationWitness, ElevationWitnessConfigSchema } from '@xyo-network/elevation-plugin'\nimport { LocationCertaintyHeuristic, LocationCertaintyPayload, LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { LocationPayload, LocationSchema } from '@xyo-network/location-payload-plugin'\nimport { AnyConfigSchema } from '@xyo-network/module'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload } from '@xyo-network/payload-model'\n\nimport { LocationCertaintyDivinerConfig, LocationCertaintyDivinerConfigSchema } from './Config'\n\nexport type LocationCertaintyDivinerParams = DivinerParams<AnyConfigSchema<LocationCertaintyDivinerConfig>>\n\nexport class LocationCertaintyDiviner<TParam extends LocationCertaintyDivinerParams = LocationCertaintyDivinerParams>\n extends AbstractDiviner<TParam>\n implements DivinerModule\n{\n static override configSchemas = [LocationCertaintyDivinerConfigSchema]\n static override targetSchema = LocationCertaintySchema\n\n /* Given an array of numbers, find the min/max/mean */\n private static calcHeuristic(heuristic: (number | null)[]): LocationCertaintyHeuristic {\n return {\n max: heuristic.reduce<number>((prev, value) => {\n return value !== null ? (value > prev ? value : prev) : prev\n }, -Infinity),\n mean: (() => {\n const values = heuristic.reduce<number[]>(\n (prev, value) => {\n return value !== null ? [value + prev[0], prev[1] + 1] : prev\n },\n [0, 0],\n )\n return values[0] / values[1]\n })(),\n min: heuristic.reduce<number>((prev, value) => {\n return value !== null ? (value < prev ? value : prev) : prev\n }, Infinity),\n }\n }\n\n /* Given elevation and location payloads, generate heuristic arrays */\n private static locationsToHeuristics(elevations: ElevationPayload[], locations: LocationPayload[]) {\n const heuristics = elevations.reduce<{ altitude: (number | null)[]; elevation: number[]; variance: (number | null)[] }>(\n (prev, elev, index) => {\n const elevation = elev.elevation\n if (elevation === undefined || elevation === null) {\n throw Error('Invalid Elevation')\n }\n const altitude = locations[index].altitude\n prev.altitude.push(altitude ?? null)\n prev.elevation.push(elevation)\n prev.variance.push(altitude !== undefined && altitude !== null ? altitude - elevation : null)\n return prev\n },\n { altitude: [], elevation: [], variance: [] },\n )\n return heuristics\n }\n\n /** @description Given a set of locations, get the expected elevations (witness if needed), and return score/variance */\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const locations = payloads?.filter<LocationPayload>((payload): payload is LocationPayload => payload?.schema === LocationSchema)\n // If this is a query we support\n if (locations && locations?.length > 0) {\n const elevationWitness = await ElevationWitness.create({\n account: this.account,\n config: {\n locations,\n schema: ElevationWitnessConfigSchema,\n },\n })\n const elevations = (await elevationWitness.observe()) as ElevationPayload[]\n\n const heuristics = LocationCertaintyDiviner.locationsToHeuristics(elevations, locations)\n\n const result = new PayloadBuilder<LocationCertaintyPayload>({ schema: LocationCertaintySchema })\n .fields({\n altitude: LocationCertaintyDiviner.calcHeuristic(heuristics.altitude),\n elevation: LocationCertaintyDiviner.calcHeuristic(heuristics.elevation),\n variance: LocationCertaintyDiviner.calcHeuristic(heuristics.variance),\n })\n .build()\n\n this.logger?.log('LocationCertaintyDiviner.Divine: Processed query')\n return [result]\n }\n return []\n }\n}\n"],"mappings":"AAAA,SAAS,uBAAuB;AAGhC,SAAS,kBAAkB,oCAAoC;AAC/D,SAA+D,+BAA+B;AAC9F,SAA0B,sBAAsB;AAEhD,SAAS,sBAAsB
|
|
1
|
+
{"version":3,"sources":["../../../src/Diviner/Diviner.ts","../../../src/Diviner/Config.ts"],"sourcesContent":["import { AbstractDiviner } from '@xyo-network/abstract-diviner'\nimport { DivinerModule, DivinerParams } from '@xyo-network/diviner-model'\nimport { ElevationPayload } from '@xyo-network/elevation-payload-plugin'\nimport { ElevationWitness, ElevationWitnessConfigSchema } from '@xyo-network/elevation-plugin'\nimport { LocationCertaintyHeuristic, LocationCertaintyPayload, LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { LocationPayload, LocationSchema } from '@xyo-network/location-payload-plugin'\nimport { AnyConfigSchema } from '@xyo-network/module'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload } from '@xyo-network/payload-model'\n\nimport { LocationCertaintyDivinerConfig, LocationCertaintyDivinerConfigSchema } from './Config'\n\nexport type LocationCertaintyDivinerParams = DivinerParams<AnyConfigSchema<LocationCertaintyDivinerConfig>>\n\nexport class LocationCertaintyDiviner<TParam extends LocationCertaintyDivinerParams = LocationCertaintyDivinerParams>\n extends AbstractDiviner<TParam>\n implements DivinerModule\n{\n static override configSchemas = [LocationCertaintyDivinerConfigSchema]\n static override targetSchema = LocationCertaintySchema\n\n /* Given an array of numbers, find the min/max/mean */\n private static calcHeuristic(heuristic: (number | null)[]): LocationCertaintyHeuristic {\n return {\n max: heuristic.reduce<number>((prev, value) => {\n return value !== null ? (value > prev ? value : prev) : prev\n }, -Infinity),\n mean: (() => {\n const values = heuristic.reduce<number[]>(\n (prev, value) => {\n return value !== null ? [value + prev[0], prev[1] + 1] : prev\n },\n [0, 0],\n )\n return values[0] / values[1]\n })(),\n min: heuristic.reduce<number>((prev, value) => {\n return value !== null ? (value < prev ? value : prev) : prev\n }, Infinity),\n }\n }\n\n /* Given elevation and location payloads, generate heuristic arrays */\n private static locationsToHeuristics(elevations: ElevationPayload[], locations: LocationPayload[]) {\n const heuristics = elevations.reduce<{ altitude: (number | null)[]; elevation: number[]; variance: (number | null)[] }>(\n (prev, elev, index) => {\n const elevation = elev.elevation\n if (elevation === undefined || elevation === null) {\n throw Error('Invalid Elevation')\n }\n const altitude = locations[index].altitude\n prev.altitude.push(altitude ?? null)\n prev.elevation.push(elevation)\n prev.variance.push(altitude !== undefined && altitude !== null ? altitude - elevation : null)\n return prev\n },\n { altitude: [], elevation: [], variance: [] },\n )\n return heuristics\n }\n\n /** @description Given a set of locations, get the expected elevations (witness if needed), and return score/variance */\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const locations = payloads?.filter<LocationPayload>((payload): payload is LocationPayload => payload?.schema === LocationSchema)\n // If this is a query we support\n if (locations && locations?.length > 0) {\n const elevationWitness = await ElevationWitness.create({\n account: this.account,\n config: {\n locations,\n schema: ElevationWitnessConfigSchema,\n },\n })\n const elevations = (await elevationWitness.observe()) as ElevationPayload[]\n\n const heuristics = LocationCertaintyDiviner.locationsToHeuristics(elevations, locations)\n\n const result = new PayloadBuilder<LocationCertaintyPayload>({ schema: LocationCertaintySchema })\n .fields({\n altitude: LocationCertaintyDiviner.calcHeuristic(heuristics.altitude),\n elevation: LocationCertaintyDiviner.calcHeuristic(heuristics.elevation),\n variance: LocationCertaintyDiviner.calcHeuristic(heuristics.variance),\n })\n .build()\n\n this.logger?.log('LocationCertaintyDiviner.Divine: Processed query')\n return [result]\n }\n return []\n }\n}\n","import { DivinerConfig } from '@xyo-network/diviner-model'\nimport { LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { Payload } from '@xyo-network/payload-model'\n\nexport type LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\nexport const LocationCertaintyDivinerConfigSchema: LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\n\nexport type LocationCertaintyDivinerConfig<TConfig extends Payload = Payload> = DivinerConfig<\n TConfig & {\n schema: LocationCertaintyDivinerConfigSchema\n targetSchema?: LocationCertaintySchema\n }\n>\n"],"mappings":";AAAA,SAAS,uBAAuB;AAGhC,SAAS,kBAAkB,oCAAoC;AAC/D,SAA+D,+BAA+B;AAC9F,SAA0B,sBAAsB;AAEhD,SAAS,sBAAsB;;;ACFxB,IAAM,uCAA6E;;;ADSnF,IAAM,2BAAN,MAAM,kCACH,gBAEV;AAAA,EACE,OAAgB,gBAAgB,CAAC,oCAAoC;AAAA,EACrE,OAAgB,eAAe;AAAA;AAAA,EAG/B,OAAe,cAAc,WAA0D;AACrF,WAAO;AAAA,MACL,KAAK,UAAU,OAAe,CAAC,MAAM,UAAU;AAC7C,eAAO,UAAU,OAAQ,QAAQ,OAAO,QAAQ,OAAQ;AAAA,MAC1D,GAAG,SAAS;AAAA,MACZ,OAAO,MAAM;AACX,cAAM,SAAS,UAAU;AAAA,UACvB,CAAC,MAAM,UAAU;AACf,mBAAO,UAAU,OAAO,CAAC,QAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI;AAAA,UAC3D;AAAA,UACA,CAAC,GAAG,CAAC;AAAA,QACP;AACA,eAAO,OAAO,CAAC,IAAI,OAAO,CAAC;AAAA,MAC7B,GAAG;AAAA,MACH,KAAK,UAAU,OAAe,CAAC,MAAM,UAAU;AAC7C,eAAO,UAAU,OAAQ,QAAQ,OAAO,QAAQ,OAAQ;AAAA,MAC1D,GAAG,QAAQ;AAAA,IACb;AAAA,EACF;AAAA;AAAA,EAGA,OAAe,sBAAsB,YAAgC,WAA8B;AACjG,UAAM,aAAa,WAAW;AAAA,MAC5B,CAAC,MAAM,MAAM,UAAU;AACrB,cAAM,YAAY,KAAK;AACvB,YAAI,cAAc,UAAa,cAAc,MAAM;AACjD,gBAAM,MAAM,mBAAmB;AAAA,QACjC;AACA,cAAM,WAAW,UAAU,KAAK,EAAE;AAClC,aAAK,SAAS,KAAK,YAAY,IAAI;AACnC,aAAK,UAAU,KAAK,SAAS;AAC7B,aAAK,SAAS,KAAK,aAAa,UAAa,aAAa,OAAO,WAAW,YAAY,IAAI;AAC5F,eAAO;AAAA,MACT;AAAA,MACA,EAAE,UAAU,CAAC,GAAG,WAAW,CAAC,GAAG,UAAU,CAAC,EAAE;AAAA,IAC9C;AACA,WAAO;AAAA,EACT;AAAA;AAAA,EAGA,MAAyB,cAAc,UAA0C;AAC/E,UAAM,YAAY,UAAU,OAAwB,CAAC,YAAwC,SAAS,WAAW,cAAc;AAE/H,QAAI,aAAa,WAAW,SAAS,GAAG;AACtC,YAAM,mBAAmB,MAAM,iBAAiB,OAAO;AAAA,QACrD,SAAS,KAAK;AAAA,QACd,QAAQ;AAAA,UACN;AAAA,UACA,QAAQ;AAAA,QACV;AAAA,MACF,CAAC;AACD,YAAM,aAAc,MAAM,iBAAiB,QAAQ;AAEnD,YAAM,aAAa,0BAAyB,sBAAsB,YAAY,SAAS;AAEvF,YAAM,SAAS,IAAI,eAAyC,EAAE,QAAQ,wBAAwB,CAAC,EAC5F,OAAO;AAAA,QACN,UAAU,0BAAyB,cAAc,WAAW,QAAQ;AAAA,QACpE,WAAW,0BAAyB,cAAc,WAAW,SAAS;AAAA,QACtE,UAAU,0BAAyB,cAAc,WAAW,QAAQ;AAAA,MACtE,CAAC,EACA,MAAM;AAET,WAAK,QAAQ,IAAI,kDAAkD;AACnE,aAAO,CAAC,MAAM;AAAA,IAChB;AACA,WAAO,CAAC;AAAA,EACV;AACF;","names":[]}
|
|
@@ -1,3 +1,79 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
// src/Diviner/Config.ts
|
|
2
|
+
var LocationCertaintyDivinerConfigSchema = "network.xyo.location.elevation.diviner.config";
|
|
3
|
+
|
|
4
|
+
// src/Diviner/Diviner.ts
|
|
5
|
+
import { AbstractDiviner } from "@xyo-network/abstract-diviner";
|
|
6
|
+
import { ElevationWitness, ElevationWitnessConfigSchema } from "@xyo-network/elevation-plugin";
|
|
7
|
+
import { LocationCertaintySchema } from "@xyo-network/location-certainty-payload-plugin";
|
|
8
|
+
import { LocationSchema } from "@xyo-network/location-payload-plugin";
|
|
9
|
+
import { PayloadBuilder } from "@xyo-network/payload-builder";
|
|
10
|
+
var LocationCertaintyDiviner = class _LocationCertaintyDiviner extends AbstractDiviner {
|
|
11
|
+
static configSchemas = [LocationCertaintyDivinerConfigSchema];
|
|
12
|
+
static targetSchema = LocationCertaintySchema;
|
|
13
|
+
/* Given an array of numbers, find the min/max/mean */
|
|
14
|
+
static calcHeuristic(heuristic) {
|
|
15
|
+
return {
|
|
16
|
+
max: heuristic.reduce((prev, value) => {
|
|
17
|
+
return value !== null ? value > prev ? value : prev : prev;
|
|
18
|
+
}, -Infinity),
|
|
19
|
+
mean: (() => {
|
|
20
|
+
const values = heuristic.reduce(
|
|
21
|
+
(prev, value) => {
|
|
22
|
+
return value !== null ? [value + prev[0], prev[1] + 1] : prev;
|
|
23
|
+
},
|
|
24
|
+
[0, 0]
|
|
25
|
+
);
|
|
26
|
+
return values[0] / values[1];
|
|
27
|
+
})(),
|
|
28
|
+
min: heuristic.reduce((prev, value) => {
|
|
29
|
+
return value !== null ? value < prev ? value : prev : prev;
|
|
30
|
+
}, Infinity)
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/* Given elevation and location payloads, generate heuristic arrays */
|
|
34
|
+
static locationsToHeuristics(elevations, locations) {
|
|
35
|
+
const heuristics = elevations.reduce(
|
|
36
|
+
(prev, elev, index) => {
|
|
37
|
+
const elevation = elev.elevation;
|
|
38
|
+
if (elevation === void 0 || elevation === null) {
|
|
39
|
+
throw Error("Invalid Elevation");
|
|
40
|
+
}
|
|
41
|
+
const altitude = locations[index].altitude;
|
|
42
|
+
prev.altitude.push(altitude ?? null);
|
|
43
|
+
prev.elevation.push(elevation);
|
|
44
|
+
prev.variance.push(altitude !== void 0 && altitude !== null ? altitude - elevation : null);
|
|
45
|
+
return prev;
|
|
46
|
+
},
|
|
47
|
+
{ altitude: [], elevation: [], variance: [] }
|
|
48
|
+
);
|
|
49
|
+
return heuristics;
|
|
50
|
+
}
|
|
51
|
+
/** @description Given a set of locations, get the expected elevations (witness if needed), and return score/variance */
|
|
52
|
+
async divineHandler(payloads) {
|
|
53
|
+
const locations = payloads?.filter((payload) => payload?.schema === LocationSchema);
|
|
54
|
+
if (locations && locations?.length > 0) {
|
|
55
|
+
const elevationWitness = await ElevationWitness.create({
|
|
56
|
+
account: this.account,
|
|
57
|
+
config: {
|
|
58
|
+
locations,
|
|
59
|
+
schema: ElevationWitnessConfigSchema
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
const elevations = await elevationWitness.observe();
|
|
63
|
+
const heuristics = _LocationCertaintyDiviner.locationsToHeuristics(elevations, locations);
|
|
64
|
+
const result = new PayloadBuilder({ schema: LocationCertaintySchema }).fields({
|
|
65
|
+
altitude: _LocationCertaintyDiviner.calcHeuristic(heuristics.altitude),
|
|
66
|
+
elevation: _LocationCertaintyDiviner.calcHeuristic(heuristics.elevation),
|
|
67
|
+
variance: _LocationCertaintyDiviner.calcHeuristic(heuristics.variance)
|
|
68
|
+
}).build();
|
|
69
|
+
this.logger?.log("LocationCertaintyDiviner.Divine: Processed query");
|
|
70
|
+
return [result];
|
|
71
|
+
}
|
|
72
|
+
return [];
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
export {
|
|
76
|
+
LocationCertaintyDiviner,
|
|
77
|
+
LocationCertaintyDivinerConfigSchema
|
|
78
|
+
};
|
|
3
79
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Diviner/
|
|
1
|
+
{"version":3,"sources":["../../../src/Diviner/Config.ts","../../../src/Diviner/Diviner.ts"],"sourcesContent":["import { DivinerConfig } from '@xyo-network/diviner-model'\nimport { LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { Payload } from '@xyo-network/payload-model'\n\nexport type LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\nexport const LocationCertaintyDivinerConfigSchema: LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\n\nexport type LocationCertaintyDivinerConfig<TConfig extends Payload = Payload> = DivinerConfig<\n TConfig & {\n schema: LocationCertaintyDivinerConfigSchema\n targetSchema?: LocationCertaintySchema\n }\n>\n","import { AbstractDiviner } from '@xyo-network/abstract-diviner'\nimport { DivinerModule, DivinerParams } from '@xyo-network/diviner-model'\nimport { ElevationPayload } from '@xyo-network/elevation-payload-plugin'\nimport { ElevationWitness, ElevationWitnessConfigSchema } from '@xyo-network/elevation-plugin'\nimport { LocationCertaintyHeuristic, LocationCertaintyPayload, LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { LocationPayload, LocationSchema } from '@xyo-network/location-payload-plugin'\nimport { AnyConfigSchema } from '@xyo-network/module'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload } from '@xyo-network/payload-model'\n\nimport { LocationCertaintyDivinerConfig, LocationCertaintyDivinerConfigSchema } from './Config'\n\nexport type LocationCertaintyDivinerParams = DivinerParams<AnyConfigSchema<LocationCertaintyDivinerConfig>>\n\nexport class LocationCertaintyDiviner<TParam extends LocationCertaintyDivinerParams = LocationCertaintyDivinerParams>\n extends AbstractDiviner<TParam>\n implements DivinerModule\n{\n static override configSchemas = [LocationCertaintyDivinerConfigSchema]\n static override targetSchema = LocationCertaintySchema\n\n /* Given an array of numbers, find the min/max/mean */\n private static calcHeuristic(heuristic: (number | null)[]): LocationCertaintyHeuristic {\n return {\n max: heuristic.reduce<number>((prev, value) => {\n return value !== null ? (value > prev ? value : prev) : prev\n }, -Infinity),\n mean: (() => {\n const values = heuristic.reduce<number[]>(\n (prev, value) => {\n return value !== null ? [value + prev[0], prev[1] + 1] : prev\n },\n [0, 0],\n )\n return values[0] / values[1]\n })(),\n min: heuristic.reduce<number>((prev, value) => {\n return value !== null ? (value < prev ? value : prev) : prev\n }, Infinity),\n }\n }\n\n /* Given elevation and location payloads, generate heuristic arrays */\n private static locationsToHeuristics(elevations: ElevationPayload[], locations: LocationPayload[]) {\n const heuristics = elevations.reduce<{ altitude: (number | null)[]; elevation: number[]; variance: (number | null)[] }>(\n (prev, elev, index) => {\n const elevation = elev.elevation\n if (elevation === undefined || elevation === null) {\n throw Error('Invalid Elevation')\n }\n const altitude = locations[index].altitude\n prev.altitude.push(altitude ?? null)\n prev.elevation.push(elevation)\n prev.variance.push(altitude !== undefined && altitude !== null ? altitude - elevation : null)\n return prev\n },\n { altitude: [], elevation: [], variance: [] },\n )\n return heuristics\n }\n\n /** @description Given a set of locations, get the expected elevations (witness if needed), and return score/variance */\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const locations = payloads?.filter<LocationPayload>((payload): payload is LocationPayload => payload?.schema === LocationSchema)\n // If this is a query we support\n if (locations && locations?.length > 0) {\n const elevationWitness = await ElevationWitness.create({\n account: this.account,\n config: {\n locations,\n schema: ElevationWitnessConfigSchema,\n },\n })\n const elevations = (await elevationWitness.observe()) as ElevationPayload[]\n\n const heuristics = LocationCertaintyDiviner.locationsToHeuristics(elevations, locations)\n\n const result = new PayloadBuilder<LocationCertaintyPayload>({ schema: LocationCertaintySchema })\n .fields({\n altitude: LocationCertaintyDiviner.calcHeuristic(heuristics.altitude),\n elevation: LocationCertaintyDiviner.calcHeuristic(heuristics.elevation),\n variance: LocationCertaintyDiviner.calcHeuristic(heuristics.variance),\n })\n .build()\n\n this.logger?.log('LocationCertaintyDiviner.Divine: Processed query')\n return [result]\n }\n return []\n }\n}\n"],"mappings":";AAKO,IAAM,uCAA6E;;;ACL1F,SAAS,uBAAuB;AAGhC,SAAS,kBAAkB,oCAAoC;AAC/D,SAA+D,+BAA+B;AAC9F,SAA0B,sBAAsB;AAEhD,SAAS,sBAAsB;AAOxB,IAAM,2BAAN,MAAM,kCACH,gBAEV;AAAA,EACE,OAAgB,gBAAgB,CAAC,oCAAoC;AAAA,EACrE,OAAgB,eAAe;AAAA;AAAA,EAG/B,OAAe,cAAc,WAA0D;AACrF,WAAO;AAAA,MACL,KAAK,UAAU,OAAe,CAAC,MAAM,UAAU;AAC7C,eAAO,UAAU,OAAQ,QAAQ,OAAO,QAAQ,OAAQ;AAAA,MAC1D,GAAG,SAAS;AAAA,MACZ,OAAO,MAAM;AACX,cAAM,SAAS,UAAU;AAAA,UACvB,CAAC,MAAM,UAAU;AACf,mBAAO,UAAU,OAAO,CAAC,QAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI;AAAA,UAC3D;AAAA,UACA,CAAC,GAAG,CAAC;AAAA,QACP;AACA,eAAO,OAAO,CAAC,IAAI,OAAO,CAAC;AAAA,MAC7B,GAAG;AAAA,MACH,KAAK,UAAU,OAAe,CAAC,MAAM,UAAU;AAC7C,eAAO,UAAU,OAAQ,QAAQ,OAAO,QAAQ,OAAQ;AAAA,MAC1D,GAAG,QAAQ;AAAA,IACb;AAAA,EACF;AAAA;AAAA,EAGA,OAAe,sBAAsB,YAAgC,WAA8B;AACjG,UAAM,aAAa,WAAW;AAAA,MAC5B,CAAC,MAAM,MAAM,UAAU;AACrB,cAAM,YAAY,KAAK;AACvB,YAAI,cAAc,UAAa,cAAc,MAAM;AACjD,gBAAM,MAAM,mBAAmB;AAAA,QACjC;AACA,cAAM,WAAW,UAAU,KAAK,EAAE;AAClC,aAAK,SAAS,KAAK,YAAY,IAAI;AACnC,aAAK,UAAU,KAAK,SAAS;AAC7B,aAAK,SAAS,KAAK,aAAa,UAAa,aAAa,OAAO,WAAW,YAAY,IAAI;AAC5F,eAAO;AAAA,MACT;AAAA,MACA,EAAE,UAAU,CAAC,GAAG,WAAW,CAAC,GAAG,UAAU,CAAC,EAAE;AAAA,IAC9C;AACA,WAAO;AAAA,EACT;AAAA;AAAA,EAGA,MAAyB,cAAc,UAA0C;AAC/E,UAAM,YAAY,UAAU,OAAwB,CAAC,YAAwC,SAAS,WAAW,cAAc;AAE/H,QAAI,aAAa,WAAW,SAAS,GAAG;AACtC,YAAM,mBAAmB,MAAM,iBAAiB,OAAO;AAAA,QACrD,SAAS,KAAK;AAAA,QACd,QAAQ;AAAA,UACN;AAAA,UACA,QAAQ;AAAA,QACV;AAAA,MACF,CAAC;AACD,YAAM,aAAc,MAAM,iBAAiB,QAAQ;AAEnD,YAAM,aAAa,0BAAyB,sBAAsB,YAAY,SAAS;AAEvF,YAAM,SAAS,IAAI,eAAyC,EAAE,QAAQ,wBAAwB,CAAC,EAC5F,OAAO;AAAA,QACN,UAAU,0BAAyB,cAAc,WAAW,QAAQ;AAAA,QACpE,WAAW,0BAAyB,cAAc,WAAW,SAAS;AAAA,QACtE,UAAU,0BAAyB,cAAc,WAAW,QAAQ;AAAA,MACtE,CAAC,EACA,MAAM;AAET,WAAK,QAAQ,IAAI,kDAAkD;AACnE,aAAO,CAAC,MAAM;AAAA,IAChB;AACA,WAAO,CAAC;AAAA,EACV;AACF;","names":[]}
|
package/dist/browser/Plugin.js
CHANGED
|
@@ -1,9 +1,86 @@
|
|
|
1
|
-
|
|
1
|
+
// src/Plugin.ts
|
|
2
|
+
import { LocationCertaintySchema as LocationCertaintySchema2 } from "@xyo-network/location-certainty-payload-plugin";
|
|
2
3
|
import { PayloadSetSchema } from "@xyo-network/payload-model";
|
|
3
4
|
import { createPayloadSetDivinerPlugin } from "@xyo-network/payloadset-plugin";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
|
|
6
|
+
// src/Diviner/Config.ts
|
|
7
|
+
var LocationCertaintyDivinerConfigSchema = "network.xyo.location.elevation.diviner.config";
|
|
8
|
+
|
|
9
|
+
// src/Diviner/Diviner.ts
|
|
10
|
+
import { AbstractDiviner } from "@xyo-network/abstract-diviner";
|
|
11
|
+
import { ElevationWitness, ElevationWitnessConfigSchema } from "@xyo-network/elevation-plugin";
|
|
12
|
+
import { LocationCertaintySchema } from "@xyo-network/location-certainty-payload-plugin";
|
|
13
|
+
import { LocationSchema } from "@xyo-network/location-payload-plugin";
|
|
14
|
+
import { PayloadBuilder } from "@xyo-network/payload-builder";
|
|
15
|
+
var LocationCertaintyDiviner = class _LocationCertaintyDiviner extends AbstractDiviner {
|
|
16
|
+
static configSchemas = [LocationCertaintyDivinerConfigSchema];
|
|
17
|
+
static targetSchema = LocationCertaintySchema;
|
|
18
|
+
/* Given an array of numbers, find the min/max/mean */
|
|
19
|
+
static calcHeuristic(heuristic) {
|
|
20
|
+
return {
|
|
21
|
+
max: heuristic.reduce((prev, value) => {
|
|
22
|
+
return value !== null ? value > prev ? value : prev : prev;
|
|
23
|
+
}, -Infinity),
|
|
24
|
+
mean: (() => {
|
|
25
|
+
const values = heuristic.reduce(
|
|
26
|
+
(prev, value) => {
|
|
27
|
+
return value !== null ? [value + prev[0], prev[1] + 1] : prev;
|
|
28
|
+
},
|
|
29
|
+
[0, 0]
|
|
30
|
+
);
|
|
31
|
+
return values[0] / values[1];
|
|
32
|
+
})(),
|
|
33
|
+
min: heuristic.reduce((prev, value) => {
|
|
34
|
+
return value !== null ? value < prev ? value : prev : prev;
|
|
35
|
+
}, Infinity)
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/* Given elevation and location payloads, generate heuristic arrays */
|
|
39
|
+
static locationsToHeuristics(elevations, locations) {
|
|
40
|
+
const heuristics = elevations.reduce(
|
|
41
|
+
(prev, elev, index) => {
|
|
42
|
+
const elevation = elev.elevation;
|
|
43
|
+
if (elevation === void 0 || elevation === null) {
|
|
44
|
+
throw Error("Invalid Elevation");
|
|
45
|
+
}
|
|
46
|
+
const altitude = locations[index].altitude;
|
|
47
|
+
prev.altitude.push(altitude ?? null);
|
|
48
|
+
prev.elevation.push(elevation);
|
|
49
|
+
prev.variance.push(altitude !== void 0 && altitude !== null ? altitude - elevation : null);
|
|
50
|
+
return prev;
|
|
51
|
+
},
|
|
52
|
+
{ altitude: [], elevation: [], variance: [] }
|
|
53
|
+
);
|
|
54
|
+
return heuristics;
|
|
55
|
+
}
|
|
56
|
+
/** @description Given a set of locations, get the expected elevations (witness if needed), and return score/variance */
|
|
57
|
+
async divineHandler(payloads) {
|
|
58
|
+
const locations = payloads?.filter((payload) => payload?.schema === LocationSchema);
|
|
59
|
+
if (locations && locations?.length > 0) {
|
|
60
|
+
const elevationWitness = await ElevationWitness.create({
|
|
61
|
+
account: this.account,
|
|
62
|
+
config: {
|
|
63
|
+
locations,
|
|
64
|
+
schema: ElevationWitnessConfigSchema
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
const elevations = await elevationWitness.observe();
|
|
68
|
+
const heuristics = _LocationCertaintyDiviner.locationsToHeuristics(elevations, locations);
|
|
69
|
+
const result = new PayloadBuilder({ schema: LocationCertaintySchema }).fields({
|
|
70
|
+
altitude: _LocationCertaintyDiviner.calcHeuristic(heuristics.altitude),
|
|
71
|
+
elevation: _LocationCertaintyDiviner.calcHeuristic(heuristics.elevation),
|
|
72
|
+
variance: _LocationCertaintyDiviner.calcHeuristic(heuristics.variance)
|
|
73
|
+
}).build();
|
|
74
|
+
this.logger?.log("LocationCertaintyDiviner.Divine: Processed query");
|
|
75
|
+
return [result];
|
|
76
|
+
}
|
|
77
|
+
return [];
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
// src/Plugin.ts
|
|
82
|
+
var LocationCertaintyPlugin = () => createPayloadSetDivinerPlugin(
|
|
83
|
+
{ required: { [LocationCertaintySchema2]: 1 }, schema: PayloadSetSchema },
|
|
7
84
|
{
|
|
8
85
|
diviner: async (params) => {
|
|
9
86
|
return await LocationCertaintyDiviner.create(params);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Plugin.ts"],"sourcesContent":["import { LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetDivinerPlugin } from '@xyo-network/payloadset-plugin'\n\nimport { LocationCertaintyDiviner } from './Diviner'\n\nexport const LocationCertaintyPlugin = () =>\n createPayloadSetDivinerPlugin<LocationCertaintyDiviner>(\n { required: { [LocationCertaintySchema]: 1 }, schema: PayloadSetSchema },\n {\n diviner: async (params) => {\n return (await LocationCertaintyDiviner.create(params)) as LocationCertaintyDiviner\n },\n },\n )\n"],"mappings":"AAAA,SAAS
|
|
1
|
+
{"version":3,"sources":["../../src/Plugin.ts","../../src/Diviner/Config.ts","../../src/Diviner/Diviner.ts"],"sourcesContent":["import { LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetDivinerPlugin } from '@xyo-network/payloadset-plugin'\n\nimport { LocationCertaintyDiviner } from './Diviner'\n\nexport const LocationCertaintyPlugin = () =>\n createPayloadSetDivinerPlugin<LocationCertaintyDiviner>(\n { required: { [LocationCertaintySchema]: 1 }, schema: PayloadSetSchema },\n {\n diviner: async (params) => {\n return (await LocationCertaintyDiviner.create(params)) as LocationCertaintyDiviner\n },\n },\n )\n","import { DivinerConfig } from '@xyo-network/diviner-model'\nimport { LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { Payload } from '@xyo-network/payload-model'\n\nexport type LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\nexport const LocationCertaintyDivinerConfigSchema: LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\n\nexport type LocationCertaintyDivinerConfig<TConfig extends Payload = Payload> = DivinerConfig<\n TConfig & {\n schema: LocationCertaintyDivinerConfigSchema\n targetSchema?: LocationCertaintySchema\n }\n>\n","import { AbstractDiviner } from '@xyo-network/abstract-diviner'\nimport { DivinerModule, DivinerParams } from '@xyo-network/diviner-model'\nimport { ElevationPayload } from '@xyo-network/elevation-payload-plugin'\nimport { ElevationWitness, ElevationWitnessConfigSchema } from '@xyo-network/elevation-plugin'\nimport { LocationCertaintyHeuristic, LocationCertaintyPayload, LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { LocationPayload, LocationSchema } from '@xyo-network/location-payload-plugin'\nimport { AnyConfigSchema } from '@xyo-network/module'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload } from '@xyo-network/payload-model'\n\nimport { LocationCertaintyDivinerConfig, LocationCertaintyDivinerConfigSchema } from './Config'\n\nexport type LocationCertaintyDivinerParams = DivinerParams<AnyConfigSchema<LocationCertaintyDivinerConfig>>\n\nexport class LocationCertaintyDiviner<TParam extends LocationCertaintyDivinerParams = LocationCertaintyDivinerParams>\n extends AbstractDiviner<TParam>\n implements DivinerModule\n{\n static override configSchemas = [LocationCertaintyDivinerConfigSchema]\n static override targetSchema = LocationCertaintySchema\n\n /* Given an array of numbers, find the min/max/mean */\n private static calcHeuristic(heuristic: (number | null)[]): LocationCertaintyHeuristic {\n return {\n max: heuristic.reduce<number>((prev, value) => {\n return value !== null ? (value > prev ? value : prev) : prev\n }, -Infinity),\n mean: (() => {\n const values = heuristic.reduce<number[]>(\n (prev, value) => {\n return value !== null ? [value + prev[0], prev[1] + 1] : prev\n },\n [0, 0],\n )\n return values[0] / values[1]\n })(),\n min: heuristic.reduce<number>((prev, value) => {\n return value !== null ? (value < prev ? value : prev) : prev\n }, Infinity),\n }\n }\n\n /* Given elevation and location payloads, generate heuristic arrays */\n private static locationsToHeuristics(elevations: ElevationPayload[], locations: LocationPayload[]) {\n const heuristics = elevations.reduce<{ altitude: (number | null)[]; elevation: number[]; variance: (number | null)[] }>(\n (prev, elev, index) => {\n const elevation = elev.elevation\n if (elevation === undefined || elevation === null) {\n throw Error('Invalid Elevation')\n }\n const altitude = locations[index].altitude\n prev.altitude.push(altitude ?? null)\n prev.elevation.push(elevation)\n prev.variance.push(altitude !== undefined && altitude !== null ? altitude - elevation : null)\n return prev\n },\n { altitude: [], elevation: [], variance: [] },\n )\n return heuristics\n }\n\n /** @description Given a set of locations, get the expected elevations (witness if needed), and return score/variance */\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const locations = payloads?.filter<LocationPayload>((payload): payload is LocationPayload => payload?.schema === LocationSchema)\n // If this is a query we support\n if (locations && locations?.length > 0) {\n const elevationWitness = await ElevationWitness.create({\n account: this.account,\n config: {\n locations,\n schema: ElevationWitnessConfigSchema,\n },\n })\n const elevations = (await elevationWitness.observe()) as ElevationPayload[]\n\n const heuristics = LocationCertaintyDiviner.locationsToHeuristics(elevations, locations)\n\n const result = new PayloadBuilder<LocationCertaintyPayload>({ schema: LocationCertaintySchema })\n .fields({\n altitude: LocationCertaintyDiviner.calcHeuristic(heuristics.altitude),\n elevation: LocationCertaintyDiviner.calcHeuristic(heuristics.elevation),\n variance: LocationCertaintyDiviner.calcHeuristic(heuristics.variance),\n })\n .build()\n\n this.logger?.log('LocationCertaintyDiviner.Divine: Processed query')\n return [result]\n }\n return []\n }\n}\n"],"mappings":";AAAA,SAAS,2BAAAA,gCAA+B;AACxC,SAAS,wBAAwB;AACjC,SAAS,qCAAqC;;;ACGvC,IAAM,uCAA6E;;;ACL1F,SAAS,uBAAuB;AAGhC,SAAS,kBAAkB,oCAAoC;AAC/D,SAA+D,+BAA+B;AAC9F,SAA0B,sBAAsB;AAEhD,SAAS,sBAAsB;AAOxB,IAAM,2BAAN,MAAM,kCACH,gBAEV;AAAA,EACE,OAAgB,gBAAgB,CAAC,oCAAoC;AAAA,EACrE,OAAgB,eAAe;AAAA;AAAA,EAG/B,OAAe,cAAc,WAA0D;AACrF,WAAO;AAAA,MACL,KAAK,UAAU,OAAe,CAAC,MAAM,UAAU;AAC7C,eAAO,UAAU,OAAQ,QAAQ,OAAO,QAAQ,OAAQ;AAAA,MAC1D,GAAG,SAAS;AAAA,MACZ,OAAO,MAAM;AACX,cAAM,SAAS,UAAU;AAAA,UACvB,CAAC,MAAM,UAAU;AACf,mBAAO,UAAU,OAAO,CAAC,QAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI;AAAA,UAC3D;AAAA,UACA,CAAC,GAAG,CAAC;AAAA,QACP;AACA,eAAO,OAAO,CAAC,IAAI,OAAO,CAAC;AAAA,MAC7B,GAAG;AAAA,MACH,KAAK,UAAU,OAAe,CAAC,MAAM,UAAU;AAC7C,eAAO,UAAU,OAAQ,QAAQ,OAAO,QAAQ,OAAQ;AAAA,MAC1D,GAAG,QAAQ;AAAA,IACb;AAAA,EACF;AAAA;AAAA,EAGA,OAAe,sBAAsB,YAAgC,WAA8B;AACjG,UAAM,aAAa,WAAW;AAAA,MAC5B,CAAC,MAAM,MAAM,UAAU;AACrB,cAAM,YAAY,KAAK;AACvB,YAAI,cAAc,UAAa,cAAc,MAAM;AACjD,gBAAM,MAAM,mBAAmB;AAAA,QACjC;AACA,cAAM,WAAW,UAAU,KAAK,EAAE;AAClC,aAAK,SAAS,KAAK,YAAY,IAAI;AACnC,aAAK,UAAU,KAAK,SAAS;AAC7B,aAAK,SAAS,KAAK,aAAa,UAAa,aAAa,OAAO,WAAW,YAAY,IAAI;AAC5F,eAAO;AAAA,MACT;AAAA,MACA,EAAE,UAAU,CAAC,GAAG,WAAW,CAAC,GAAG,UAAU,CAAC,EAAE;AAAA,IAC9C;AACA,WAAO;AAAA,EACT;AAAA;AAAA,EAGA,MAAyB,cAAc,UAA0C;AAC/E,UAAM,YAAY,UAAU,OAAwB,CAAC,YAAwC,SAAS,WAAW,cAAc;AAE/H,QAAI,aAAa,WAAW,SAAS,GAAG;AACtC,YAAM,mBAAmB,MAAM,iBAAiB,OAAO;AAAA,QACrD,SAAS,KAAK;AAAA,QACd,QAAQ;AAAA,UACN;AAAA,UACA,QAAQ;AAAA,QACV;AAAA,MACF,CAAC;AACD,YAAM,aAAc,MAAM,iBAAiB,QAAQ;AAEnD,YAAM,aAAa,0BAAyB,sBAAsB,YAAY,SAAS;AAEvF,YAAM,SAAS,IAAI,eAAyC,EAAE,QAAQ,wBAAwB,CAAC,EAC5F,OAAO;AAAA,QACN,UAAU,0BAAyB,cAAc,WAAW,QAAQ;AAAA,QACpE,WAAW,0BAAyB,cAAc,WAAW,SAAS;AAAA,QACtE,UAAU,0BAAyB,cAAc,WAAW,QAAQ;AAAA,MACtE,CAAC,EACA,MAAM;AAET,WAAK,QAAQ,IAAI,kDAAkD;AACnE,aAAO,CAAC,MAAM;AAAA,IAChB;AACA,WAAO,CAAC;AAAA,EACV;AACF;;;AFpFO,IAAM,0BAA0B,MACrC;AAAA,EACE,EAAE,UAAU,EAAE,CAACC,wBAAuB,GAAG,EAAE,GAAG,QAAQ,iBAAiB;AAAA,EACvE;AAAA,IACE,SAAS,OAAO,WAAW;AACzB,aAAQ,MAAM,yBAAyB,OAAO,MAAM;AAAA,IACtD;AAAA,EACF;AACF;","names":["LocationCertaintySchema","LocationCertaintySchema"]}
|
package/dist/browser/index.js
CHANGED
|
@@ -1,7 +1,98 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
// src/Plugin.ts
|
|
2
|
+
import { LocationCertaintySchema as LocationCertaintySchema2 } from "@xyo-network/location-certainty-payload-plugin";
|
|
3
|
+
import { PayloadSetSchema } from "@xyo-network/payload-model";
|
|
4
|
+
import { createPayloadSetDivinerPlugin } from "@xyo-network/payloadset-plugin";
|
|
5
|
+
|
|
6
|
+
// src/Diviner/Config.ts
|
|
7
|
+
var LocationCertaintyDivinerConfigSchema = "network.xyo.location.elevation.diviner.config";
|
|
8
|
+
|
|
9
|
+
// src/Diviner/Diviner.ts
|
|
10
|
+
import { AbstractDiviner } from "@xyo-network/abstract-diviner";
|
|
11
|
+
import { ElevationWitness, ElevationWitnessConfigSchema } from "@xyo-network/elevation-plugin";
|
|
12
|
+
import { LocationCertaintySchema } from "@xyo-network/location-certainty-payload-plugin";
|
|
13
|
+
import { LocationSchema } from "@xyo-network/location-payload-plugin";
|
|
14
|
+
import { PayloadBuilder } from "@xyo-network/payload-builder";
|
|
15
|
+
var LocationCertaintyDiviner = class _LocationCertaintyDiviner extends AbstractDiviner {
|
|
16
|
+
static configSchemas = [LocationCertaintyDivinerConfigSchema];
|
|
17
|
+
static targetSchema = LocationCertaintySchema;
|
|
18
|
+
/* Given an array of numbers, find the min/max/mean */
|
|
19
|
+
static calcHeuristic(heuristic) {
|
|
20
|
+
return {
|
|
21
|
+
max: heuristic.reduce((prev, value) => {
|
|
22
|
+
return value !== null ? value > prev ? value : prev : prev;
|
|
23
|
+
}, -Infinity),
|
|
24
|
+
mean: (() => {
|
|
25
|
+
const values = heuristic.reduce(
|
|
26
|
+
(prev, value) => {
|
|
27
|
+
return value !== null ? [value + prev[0], prev[1] + 1] : prev;
|
|
28
|
+
},
|
|
29
|
+
[0, 0]
|
|
30
|
+
);
|
|
31
|
+
return values[0] / values[1];
|
|
32
|
+
})(),
|
|
33
|
+
min: heuristic.reduce((prev, value) => {
|
|
34
|
+
return value !== null ? value < prev ? value : prev : prev;
|
|
35
|
+
}, Infinity)
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/* Given elevation and location payloads, generate heuristic arrays */
|
|
39
|
+
static locationsToHeuristics(elevations, locations) {
|
|
40
|
+
const heuristics = elevations.reduce(
|
|
41
|
+
(prev, elev, index) => {
|
|
42
|
+
const elevation = elev.elevation;
|
|
43
|
+
if (elevation === void 0 || elevation === null) {
|
|
44
|
+
throw Error("Invalid Elevation");
|
|
45
|
+
}
|
|
46
|
+
const altitude = locations[index].altitude;
|
|
47
|
+
prev.altitude.push(altitude ?? null);
|
|
48
|
+
prev.elevation.push(elevation);
|
|
49
|
+
prev.variance.push(altitude !== void 0 && altitude !== null ? altitude - elevation : null);
|
|
50
|
+
return prev;
|
|
51
|
+
},
|
|
52
|
+
{ altitude: [], elevation: [], variance: [] }
|
|
53
|
+
);
|
|
54
|
+
return heuristics;
|
|
55
|
+
}
|
|
56
|
+
/** @description Given a set of locations, get the expected elevations (witness if needed), and return score/variance */
|
|
57
|
+
async divineHandler(payloads) {
|
|
58
|
+
const locations = payloads?.filter((payload) => payload?.schema === LocationSchema);
|
|
59
|
+
if (locations && locations?.length > 0) {
|
|
60
|
+
const elevationWitness = await ElevationWitness.create({
|
|
61
|
+
account: this.account,
|
|
62
|
+
config: {
|
|
63
|
+
locations,
|
|
64
|
+
schema: ElevationWitnessConfigSchema
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
const elevations = await elevationWitness.observe();
|
|
68
|
+
const heuristics = _LocationCertaintyDiviner.locationsToHeuristics(elevations, locations);
|
|
69
|
+
const result = new PayloadBuilder({ schema: LocationCertaintySchema }).fields({
|
|
70
|
+
altitude: _LocationCertaintyDiviner.calcHeuristic(heuristics.altitude),
|
|
71
|
+
elevation: _LocationCertaintyDiviner.calcHeuristic(heuristics.elevation),
|
|
72
|
+
variance: _LocationCertaintyDiviner.calcHeuristic(heuristics.variance)
|
|
73
|
+
}).build();
|
|
74
|
+
this.logger?.log("LocationCertaintyDiviner.Divine: Processed query");
|
|
75
|
+
return [result];
|
|
76
|
+
}
|
|
77
|
+
return [];
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
// src/Plugin.ts
|
|
82
|
+
var LocationCertaintyPlugin = () => createPayloadSetDivinerPlugin(
|
|
83
|
+
{ required: { [LocationCertaintySchema2]: 1 }, schema: PayloadSetSchema },
|
|
84
|
+
{
|
|
85
|
+
diviner: async (params) => {
|
|
86
|
+
return await LocationCertaintyDiviner.create(params);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
);
|
|
90
|
+
|
|
91
|
+
// src/index.ts
|
|
3
92
|
var src_default = LocationCertaintyPlugin;
|
|
4
93
|
export {
|
|
94
|
+
LocationCertaintyDiviner,
|
|
95
|
+
LocationCertaintyDivinerConfigSchema,
|
|
5
96
|
LocationCertaintyPlugin,
|
|
6
97
|
src_default as default
|
|
7
98
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts"],"sourcesContent":["import { LocationCertaintyPlugin } from './Plugin'\n\nexport * from './Diviner'\n\nexport { LocationCertaintyPlugin }\n\n// eslint-disable-next-line import/no-default-export\nexport default LocationCertaintyPlugin\n"],"mappings":"AAAA,SAAS,+BAA+B;
|
|
1
|
+
{"version":3,"sources":["../../src/Plugin.ts","../../src/Diviner/Config.ts","../../src/Diviner/Diviner.ts","../../src/index.ts"],"sourcesContent":["import { LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetDivinerPlugin } from '@xyo-network/payloadset-plugin'\n\nimport { LocationCertaintyDiviner } from './Diviner'\n\nexport const LocationCertaintyPlugin = () =>\n createPayloadSetDivinerPlugin<LocationCertaintyDiviner>(\n { required: { [LocationCertaintySchema]: 1 }, schema: PayloadSetSchema },\n {\n diviner: async (params) => {\n return (await LocationCertaintyDiviner.create(params)) as LocationCertaintyDiviner\n },\n },\n )\n","import { DivinerConfig } from '@xyo-network/diviner-model'\nimport { LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { Payload } from '@xyo-network/payload-model'\n\nexport type LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\nexport const LocationCertaintyDivinerConfigSchema: LocationCertaintyDivinerConfigSchema = 'network.xyo.location.elevation.diviner.config'\n\nexport type LocationCertaintyDivinerConfig<TConfig extends Payload = Payload> = DivinerConfig<\n TConfig & {\n schema: LocationCertaintyDivinerConfigSchema\n targetSchema?: LocationCertaintySchema\n }\n>\n","import { AbstractDiviner } from '@xyo-network/abstract-diviner'\nimport { DivinerModule, DivinerParams } from '@xyo-network/diviner-model'\nimport { ElevationPayload } from '@xyo-network/elevation-payload-plugin'\nimport { ElevationWitness, ElevationWitnessConfigSchema } from '@xyo-network/elevation-plugin'\nimport { LocationCertaintyHeuristic, LocationCertaintyPayload, LocationCertaintySchema } from '@xyo-network/location-certainty-payload-plugin'\nimport { LocationPayload, LocationSchema } from '@xyo-network/location-payload-plugin'\nimport { AnyConfigSchema } from '@xyo-network/module'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload } from '@xyo-network/payload-model'\n\nimport { LocationCertaintyDivinerConfig, LocationCertaintyDivinerConfigSchema } from './Config'\n\nexport type LocationCertaintyDivinerParams = DivinerParams<AnyConfigSchema<LocationCertaintyDivinerConfig>>\n\nexport class LocationCertaintyDiviner<TParam extends LocationCertaintyDivinerParams = LocationCertaintyDivinerParams>\n extends AbstractDiviner<TParam>\n implements DivinerModule\n{\n static override configSchemas = [LocationCertaintyDivinerConfigSchema]\n static override targetSchema = LocationCertaintySchema\n\n /* Given an array of numbers, find the min/max/mean */\n private static calcHeuristic(heuristic: (number | null)[]): LocationCertaintyHeuristic {\n return {\n max: heuristic.reduce<number>((prev, value) => {\n return value !== null ? (value > prev ? value : prev) : prev\n }, -Infinity),\n mean: (() => {\n const values = heuristic.reduce<number[]>(\n (prev, value) => {\n return value !== null ? [value + prev[0], prev[1] + 1] : prev\n },\n [0, 0],\n )\n return values[0] / values[1]\n })(),\n min: heuristic.reduce<number>((prev, value) => {\n return value !== null ? (value < prev ? value : prev) : prev\n }, Infinity),\n }\n }\n\n /* Given elevation and location payloads, generate heuristic arrays */\n private static locationsToHeuristics(elevations: ElevationPayload[], locations: LocationPayload[]) {\n const heuristics = elevations.reduce<{ altitude: (number | null)[]; elevation: number[]; variance: (number | null)[] }>(\n (prev, elev, index) => {\n const elevation = elev.elevation\n if (elevation === undefined || elevation === null) {\n throw Error('Invalid Elevation')\n }\n const altitude = locations[index].altitude\n prev.altitude.push(altitude ?? null)\n prev.elevation.push(elevation)\n prev.variance.push(altitude !== undefined && altitude !== null ? altitude - elevation : null)\n return prev\n },\n { altitude: [], elevation: [], variance: [] },\n )\n return heuristics\n }\n\n /** @description Given a set of locations, get the expected elevations (witness if needed), and return score/variance */\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const locations = payloads?.filter<LocationPayload>((payload): payload is LocationPayload => payload?.schema === LocationSchema)\n // If this is a query we support\n if (locations && locations?.length > 0) {\n const elevationWitness = await ElevationWitness.create({\n account: this.account,\n config: {\n locations,\n schema: ElevationWitnessConfigSchema,\n },\n })\n const elevations = (await elevationWitness.observe()) as ElevationPayload[]\n\n const heuristics = LocationCertaintyDiviner.locationsToHeuristics(elevations, locations)\n\n const result = new PayloadBuilder<LocationCertaintyPayload>({ schema: LocationCertaintySchema })\n .fields({\n altitude: LocationCertaintyDiviner.calcHeuristic(heuristics.altitude),\n elevation: LocationCertaintyDiviner.calcHeuristic(heuristics.elevation),\n variance: LocationCertaintyDiviner.calcHeuristic(heuristics.variance),\n })\n .build()\n\n this.logger?.log('LocationCertaintyDiviner.Divine: Processed query')\n return [result]\n }\n return []\n }\n}\n","import { LocationCertaintyPlugin } from './Plugin'\n\nexport * from './Diviner'\n\nexport { LocationCertaintyPlugin }\n\n// eslint-disable-next-line import/no-default-export\nexport default LocationCertaintyPlugin\n"],"mappings":";AAAA,SAAS,2BAAAA,gCAA+B;AACxC,SAAS,wBAAwB;AACjC,SAAS,qCAAqC;;;ACGvC,IAAM,uCAA6E;;;ACL1F,SAAS,uBAAuB;AAGhC,SAAS,kBAAkB,oCAAoC;AAC/D,SAA+D,+BAA+B;AAC9F,SAA0B,sBAAsB;AAEhD,SAAS,sBAAsB;AAOxB,IAAM,2BAAN,MAAM,kCACH,gBAEV;AAAA,EACE,OAAgB,gBAAgB,CAAC,oCAAoC;AAAA,EACrE,OAAgB,eAAe;AAAA;AAAA,EAG/B,OAAe,cAAc,WAA0D;AACrF,WAAO;AAAA,MACL,KAAK,UAAU,OAAe,CAAC,MAAM,UAAU;AAC7C,eAAO,UAAU,OAAQ,QAAQ,OAAO,QAAQ,OAAQ;AAAA,MAC1D,GAAG,SAAS;AAAA,MACZ,OAAO,MAAM;AACX,cAAM,SAAS,UAAU;AAAA,UACvB,CAAC,MAAM,UAAU;AACf,mBAAO,UAAU,OAAO,CAAC,QAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI;AAAA,UAC3D;AAAA,UACA,CAAC,GAAG,CAAC;AAAA,QACP;AACA,eAAO,OAAO,CAAC,IAAI,OAAO,CAAC;AAAA,MAC7B,GAAG;AAAA,MACH,KAAK,UAAU,OAAe,CAAC,MAAM,UAAU;AAC7C,eAAO,UAAU,OAAQ,QAAQ,OAAO,QAAQ,OAAQ;AAAA,MAC1D,GAAG,QAAQ;AAAA,IACb;AAAA,EACF;AAAA;AAAA,EAGA,OAAe,sBAAsB,YAAgC,WAA8B;AACjG,UAAM,aAAa,WAAW;AAAA,MAC5B,CAAC,MAAM,MAAM,UAAU;AACrB,cAAM,YAAY,KAAK;AACvB,YAAI,cAAc,UAAa,cAAc,MAAM;AACjD,gBAAM,MAAM,mBAAmB;AAAA,QACjC;AACA,cAAM,WAAW,UAAU,KAAK,EAAE;AAClC,aAAK,SAAS,KAAK,YAAY,IAAI;AACnC,aAAK,UAAU,KAAK,SAAS;AAC7B,aAAK,SAAS,KAAK,aAAa,UAAa,aAAa,OAAO,WAAW,YAAY,IAAI;AAC5F,eAAO;AAAA,MACT;AAAA,MACA,EAAE,UAAU,CAAC,GAAG,WAAW,CAAC,GAAG,UAAU,CAAC,EAAE;AAAA,IAC9C;AACA,WAAO;AAAA,EACT;AAAA;AAAA,EAGA,MAAyB,cAAc,UAA0C;AAC/E,UAAM,YAAY,UAAU,OAAwB,CAAC,YAAwC,SAAS,WAAW,cAAc;AAE/H,QAAI,aAAa,WAAW,SAAS,GAAG;AACtC,YAAM,mBAAmB,MAAM,iBAAiB,OAAO;AAAA,QACrD,SAAS,KAAK;AAAA,QACd,QAAQ;AAAA,UACN;AAAA,UACA,QAAQ;AAAA,QACV;AAAA,MACF,CAAC;AACD,YAAM,aAAc,MAAM,iBAAiB,QAAQ;AAEnD,YAAM,aAAa,0BAAyB,sBAAsB,YAAY,SAAS;AAEvF,YAAM,SAAS,IAAI,eAAyC,EAAE,QAAQ,wBAAwB,CAAC,EAC5F,OAAO;AAAA,QACN,UAAU,0BAAyB,cAAc,WAAW,QAAQ;AAAA,QACpE,WAAW,0BAAyB,cAAc,WAAW,SAAS;AAAA,QACtE,UAAU,0BAAyB,cAAc,WAAW,QAAQ;AAAA,MACtE,CAAC,EACA,MAAM;AAET,WAAK,QAAQ,IAAI,kDAAkD;AACnE,aAAO,CAAC,MAAM;AAAA,IAChB;AACA,WAAO,CAAC;AAAA,EACV;AACF;;;AFpFO,IAAM,0BAA0B,MACrC;AAAA,EACE,EAAE,UAAU,EAAE,CAACC,wBAAuB,GAAG,EAAE,GAAG,QAAQ,iBAAiB;AAAA,EACvE;AAAA,IACE,SAAS,OAAO,WAAW;AACzB,aAAQ,MAAM,yBAAyB,OAAO,MAAM;AAAA,IACtD;AAAA,EACF;AACF;;;AGPF,IAAO,cAAQ;","names":["LocationCertaintySchema","LocationCertaintySchema"]}
|
package/dist/docs.json
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/index.ts",
|
|
17
17
|
"line": 8,
|
|
18
18
|
"character": 0,
|
|
19
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
19
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/index.ts#L8"
|
|
20
20
|
}
|
|
21
21
|
],
|
|
22
22
|
"target": 1
|
|
@@ -1522,7 +1522,7 @@
|
|
|
1522
1522
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
1523
1523
|
"line": 10,
|
|
1524
1524
|
"character": 4,
|
|
1525
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
1525
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L10"
|
|
1526
1526
|
}
|
|
1527
1527
|
],
|
|
1528
1528
|
"type": {
|
|
@@ -1543,7 +1543,7 @@
|
|
|
1543
1543
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
1544
1544
|
"line": 11,
|
|
1545
1545
|
"character": 4,
|
|
1546
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
1546
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L11"
|
|
1547
1547
|
}
|
|
1548
1548
|
],
|
|
1549
1549
|
"type": {
|
|
@@ -1566,7 +1566,7 @@
|
|
|
1566
1566
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
1567
1567
|
"line": 9,
|
|
1568
1568
|
"character": 12,
|
|
1569
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
1569
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L9"
|
|
1570
1570
|
}
|
|
1571
1571
|
]
|
|
1572
1572
|
}
|
|
@@ -3277,7 +3277,7 @@
|
|
|
3277
3277
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
3278
3278
|
"line": 10,
|
|
3279
3279
|
"character": 4,
|
|
3280
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
3280
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L10"
|
|
3281
3281
|
}
|
|
3282
3282
|
],
|
|
3283
3283
|
"type": {
|
|
@@ -3298,7 +3298,7 @@
|
|
|
3298
3298
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
3299
3299
|
"line": 11,
|
|
3300
3300
|
"character": 4,
|
|
3301
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
3301
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L11"
|
|
3302
3302
|
}
|
|
3303
3303
|
],
|
|
3304
3304
|
"type": {
|
|
@@ -3321,7 +3321,7 @@
|
|
|
3321
3321
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
3322
3322
|
"line": 9,
|
|
3323
3323
|
"character": 12,
|
|
3324
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
3324
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L9"
|
|
3325
3325
|
}
|
|
3326
3326
|
]
|
|
3327
3327
|
}
|
|
@@ -4408,7 +4408,7 @@
|
|
|
4408
4408
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
4409
4409
|
"line": 19,
|
|
4410
4410
|
"character": 18,
|
|
4411
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
4411
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L19"
|
|
4412
4412
|
}
|
|
4413
4413
|
],
|
|
4414
4414
|
"type": {
|
|
@@ -4520,7 +4520,7 @@
|
|
|
4520
4520
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
4521
4521
|
"line": 20,
|
|
4522
4522
|
"character": 18,
|
|
4523
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
4523
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L20"
|
|
4524
4524
|
}
|
|
4525
4525
|
],
|
|
4526
4526
|
"type": {
|
|
@@ -8102,7 +8102,7 @@
|
|
|
8102
8102
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
8103
8103
|
"line": 63,
|
|
8104
8104
|
"character": 27,
|
|
8105
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
8105
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L63"
|
|
8106
8106
|
}
|
|
8107
8107
|
],
|
|
8108
8108
|
"signatures": [
|
|
@@ -8131,7 +8131,7 @@
|
|
|
8131
8131
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
8132
8132
|
"line": 63,
|
|
8133
8133
|
"character": 2,
|
|
8134
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
8134
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L63"
|
|
8135
8135
|
}
|
|
8136
8136
|
],
|
|
8137
8137
|
"parameters": [
|
|
@@ -16934,7 +16934,7 @@
|
|
|
16934
16934
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
16935
16935
|
"line": 23,
|
|
16936
16936
|
"character": 17,
|
|
16937
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
16937
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L23"
|
|
16938
16938
|
}
|
|
16939
16939
|
],
|
|
16940
16940
|
"signatures": [
|
|
@@ -16949,7 +16949,7 @@
|
|
|
16949
16949
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
16950
16950
|
"line": 23,
|
|
16951
16951
|
"character": 2,
|
|
16952
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
16952
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L23"
|
|
16953
16953
|
}
|
|
16954
16954
|
],
|
|
16955
16955
|
"parameters": [
|
|
@@ -17598,7 +17598,7 @@
|
|
|
17598
17598
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
17599
17599
|
"line": 44,
|
|
17600
17600
|
"character": 17,
|
|
17601
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
17601
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L44"
|
|
17602
17602
|
}
|
|
17603
17603
|
],
|
|
17604
17604
|
"signatures": [
|
|
@@ -17613,7 +17613,7 @@
|
|
|
17613
17613
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
17614
17614
|
"line": 44,
|
|
17615
17615
|
"character": 2,
|
|
17616
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
17616
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L44"
|
|
17617
17617
|
}
|
|
17618
17618
|
],
|
|
17619
17619
|
"parameters": [
|
|
@@ -17756,7 +17756,7 @@
|
|
|
17756
17756
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
17757
17757
|
"line": 45,
|
|
17758
17758
|
"character": 43,
|
|
17759
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
17759
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L45"
|
|
17760
17760
|
}
|
|
17761
17761
|
],
|
|
17762
17762
|
"type": {
|
|
@@ -17787,7 +17787,7 @@
|
|
|
17787
17787
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
17788
17788
|
"line": 45,
|
|
17789
17789
|
"character": 72,
|
|
17790
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
17790
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L45"
|
|
17791
17791
|
}
|
|
17792
17792
|
],
|
|
17793
17793
|
"type": {
|
|
@@ -17809,7 +17809,7 @@
|
|
|
17809
17809
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
17810
17810
|
"line": 45,
|
|
17811
17811
|
"character": 93,
|
|
17812
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
17812
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L45"
|
|
17813
17813
|
}
|
|
17814
17814
|
],
|
|
17815
17815
|
"type": {
|
|
@@ -17845,7 +17845,7 @@
|
|
|
17845
17845
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
17846
17846
|
"line": 45,
|
|
17847
17847
|
"character": 41,
|
|
17848
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
17848
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L45"
|
|
17849
17849
|
}
|
|
17850
17850
|
]
|
|
17851
17851
|
}
|
|
@@ -17962,7 +17962,7 @@
|
|
|
17962
17962
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
17963
17963
|
"line": 15,
|
|
17964
17964
|
"character": 13,
|
|
17965
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
17965
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L15"
|
|
17966
17966
|
}
|
|
17967
17967
|
],
|
|
17968
17968
|
"typeParameters": [
|
|
@@ -18028,7 +18028,7 @@
|
|
|
18028
18028
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
18029
18029
|
"line": 8,
|
|
18030
18030
|
"character": 12,
|
|
18031
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
18031
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L8"
|
|
18032
18032
|
}
|
|
18033
18033
|
],
|
|
18034
18034
|
"typeParameters": [
|
|
@@ -18094,7 +18094,7 @@
|
|
|
18094
18094
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
18095
18095
|
"line": 10,
|
|
18096
18096
|
"character": 4,
|
|
18097
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
18097
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L10"
|
|
18098
18098
|
}
|
|
18099
18099
|
],
|
|
18100
18100
|
"type": {
|
|
@@ -18117,7 +18117,7 @@
|
|
|
18117
18117
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
18118
18118
|
"line": 11,
|
|
18119
18119
|
"character": 4,
|
|
18120
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
18120
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L11"
|
|
18121
18121
|
}
|
|
18122
18122
|
],
|
|
18123
18123
|
"type": {
|
|
@@ -18145,7 +18145,7 @@
|
|
|
18145
18145
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
18146
18146
|
"line": 9,
|
|
18147
18147
|
"character": 12,
|
|
18148
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
18148
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L9"
|
|
18149
18149
|
}
|
|
18150
18150
|
]
|
|
18151
18151
|
}
|
|
@@ -18168,13 +18168,13 @@
|
|
|
18168
18168
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
18169
18169
|
"line": 5,
|
|
18170
18170
|
"character": 12,
|
|
18171
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
18171
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L5"
|
|
18172
18172
|
},
|
|
18173
18173
|
{
|
|
18174
18174
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
18175
18175
|
"line": 6,
|
|
18176
18176
|
"character": 13,
|
|
18177
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
18177
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L6"
|
|
18178
18178
|
}
|
|
18179
18179
|
],
|
|
18180
18180
|
"type": {
|
|
@@ -18193,7 +18193,7 @@
|
|
|
18193
18193
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts",
|
|
18194
18194
|
"line": 13,
|
|
18195
18195
|
"character": 12,
|
|
18196
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
18196
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Diviner.ts#L13"
|
|
18197
18197
|
}
|
|
18198
18198
|
],
|
|
18199
18199
|
"type": {
|
|
@@ -18236,13 +18236,13 @@
|
|
|
18236
18236
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
18237
18237
|
"line": 5,
|
|
18238
18238
|
"character": 12,
|
|
18239
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
18239
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L5"
|
|
18240
18240
|
},
|
|
18241
18241
|
{
|
|
18242
18242
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
18243
18243
|
"line": 6,
|
|
18244
18244
|
"character": 13,
|
|
18245
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
18245
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L6"
|
|
18246
18246
|
}
|
|
18247
18247
|
],
|
|
18248
18248
|
"type": {
|
|
@@ -18261,7 +18261,7 @@
|
|
|
18261
18261
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Plugin.ts",
|
|
18262
18262
|
"line": 7,
|
|
18263
18263
|
"character": 13,
|
|
18264
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
18264
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Plugin.ts#L7"
|
|
18265
18265
|
}
|
|
18266
18266
|
],
|
|
18267
18267
|
"signatures": [
|
|
@@ -18276,7 +18276,7 @@
|
|
|
18276
18276
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Plugin.ts",
|
|
18277
18277
|
"line": 7,
|
|
18278
18278
|
"character": 39,
|
|
18279
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
18279
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Plugin.ts#L7"
|
|
18280
18280
|
}
|
|
18281
18281
|
],
|
|
18282
18282
|
"type": {
|
|
@@ -19750,7 +19750,7 @@
|
|
|
19750
19750
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
19751
19751
|
"line": 10,
|
|
19752
19752
|
"character": 4,
|
|
19753
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
19753
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L10"
|
|
19754
19754
|
}
|
|
19755
19755
|
],
|
|
19756
19756
|
"type": {
|
|
@@ -19771,7 +19771,7 @@
|
|
|
19771
19771
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
19772
19772
|
"line": 11,
|
|
19773
19773
|
"character": 4,
|
|
19774
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
19774
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L11"
|
|
19775
19775
|
}
|
|
19776
19776
|
],
|
|
19777
19777
|
"type": {
|
|
@@ -19794,7 +19794,7 @@
|
|
|
19794
19794
|
"fileName": "plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts",
|
|
19795
19795
|
"line": 9,
|
|
19796
19796
|
"character": 12,
|
|
19797
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
19797
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/996cd043c458a/packages/plugins/packages/payloadset/packages/location-certainty/src/Diviner/Config.ts#L9"
|
|
19798
19798
|
}
|
|
19799
19799
|
]
|
|
19800
19800
|
}
|
package/package.json
CHANGED
|
@@ -10,20 +10,20 @@
|
|
|
10
10
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@xyo-network/abstract-diviner": "~2.75.
|
|
14
|
-
"@xyo-network/diviner-model": "~2.75.
|
|
15
|
-
"@xyo-network/elevation-payload-plugin": "~2.75.
|
|
16
|
-
"@xyo-network/elevation-plugin": "~2.75.
|
|
17
|
-
"@xyo-network/location-certainty-payload-plugin": "~2.75.
|
|
18
|
-
"@xyo-network/location-payload-plugin": "~2.75.
|
|
19
|
-
"@xyo-network/module": "~2.75.
|
|
20
|
-
"@xyo-network/payload-builder": "~2.75.
|
|
21
|
-
"@xyo-network/payload-model": "~2.75.
|
|
22
|
-
"@xyo-network/payloadset-plugin": "~2.75.
|
|
13
|
+
"@xyo-network/abstract-diviner": "~2.75.4",
|
|
14
|
+
"@xyo-network/diviner-model": "~2.75.4",
|
|
15
|
+
"@xyo-network/elevation-payload-plugin": "~2.75.4",
|
|
16
|
+
"@xyo-network/elevation-plugin": "~2.75.4",
|
|
17
|
+
"@xyo-network/location-certainty-payload-plugin": "~2.75.4",
|
|
18
|
+
"@xyo-network/location-payload-plugin": "~2.75.4",
|
|
19
|
+
"@xyo-network/module": "~2.75.4",
|
|
20
|
+
"@xyo-network/payload-builder": "~2.75.4",
|
|
21
|
+
"@xyo-network/payload-model": "~2.75.4",
|
|
22
|
+
"@xyo-network/payloadset-plugin": "~2.75.4"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@xylabs/ts-scripts-yarn3": "^3.0.
|
|
26
|
-
"@xylabs/tsconfig": "^3.0.
|
|
25
|
+
"@xylabs/ts-scripts-yarn3": "^3.0.79",
|
|
26
|
+
"@xylabs/tsconfig": "^3.0.79",
|
|
27
27
|
"typescript": "^5.2.2"
|
|
28
28
|
},
|
|
29
29
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
@@ -69,5 +69,5 @@
|
|
|
69
69
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
|
|
70
70
|
},
|
|
71
71
|
"sideEffects": false,
|
|
72
|
-
"version": "2.75.
|
|
72
|
+
"version": "2.75.4"
|
|
73
73
|
}
|