@xyo-network/location-plugin 6.0.3 → 7.0.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/README.md CHANGED
@@ -1,3 +1,5 @@
1
+ [![logo][]](https://xyo.network)
2
+
1
3
  # @xyo-network/location-plugin
2
4
 
3
5
  [![npm][npm-badge]][npm-link]
@@ -36,9 +38,12 @@ bun add {{name}}
36
38
 
37
39
  See the [LICENSE](LICENSE) file for license rights and limitations (LGPL-3.0-only).
38
40
 
41
+ ## Credits
39
42
 
43
+ [Made with 🔥 and ❄️ by XYO Foundation](https://xyo.network)
40
44
 
41
45
  [npm-badge]: https://img.shields.io/npm/v/@xyo-network/location-plugin.svg
42
46
  [npm-link]: https://www.npmjs.com/package/@xyo-network/location-plugin
43
47
  [license-badge]: https://img.shields.io/npm/l/@xyo-network/location-plugin.svg
44
48
  [license-link]: https://github.com/xylabs/sdk-js/blob/main/LICENSE
49
+ [logo]: https://cdn.xy.company/img/brand/XYO_full_colored.png
@@ -42,13 +42,13 @@ var CurrentLocationWitness = class extends AbstractWitness {
42
42
  longitude: location.coords.longitude,
43
43
  schema: LocationSchema2
44
44
  };
45
- const heading = location.coords.heading ? [
45
+ const heading = location.coords.heading == null ? [] : [
46
46
  {
47
47
  heading: location.coords.heading ?? void 0,
48
48
  schema: LocationHeadingSchema2,
49
49
  speed: location.coords.speed ?? void 0
50
50
  }
51
- ] : [];
51
+ ];
52
52
  return [locationPayload, ...heading];
53
53
  }
54
54
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Config.ts", "../../src/CurrentLocationPayloadSet.ts", "../../src/CurrentLocationWitness.ts", "../../src/Plugin.ts"],
4
- "sourcesContent": ["import type {\n AnyConfigSchema, QueryableModuleParams, WitnessConfig,\n} from '@xyo-network/sdk-js'\nimport { asSchema } from '@xyo-network/sdk-js'\n\nexport type CurrentLocationWitnessConfigSchema = typeof CurrentLocationWitnessConfigSchema\nexport const CurrentLocationWitnessConfigSchema = asSchema('network.xyo.location.current.config', true)\n\nexport type CurrentLocationWitnessConfig = WitnessConfig<{\n schema: CurrentLocationWitnessConfigSchema\n}>\n\nexport interface CurrentLocationWitnessParams extends QueryableModuleParams<AnyConfigSchema<CurrentLocationWitnessConfig>> { geolocation?: Geolocation }\n", "import { LocationHeadingSchema, LocationSchema } from '@xyo-network/location-payload-plugin'\nimport type { PayloadSetPayload } from '@xyo-network/sdk-js'\nimport { PayloadSetSchema } from '@xyo-network/sdk-js'\n\nexport const CurrentLocationPayloadSet: PayloadSetPayload = {\n optional: { [LocationHeadingSchema]: 1 },\n required: { [LocationSchema]: 1 },\n schema: PayloadSetSchema,\n}\n", "import { assertEx } from '@xylabs/sdk-js'\nimport type { LocationHeadingPayload, LocationPayload } from '@xyo-network/location-payload-plugin'\nimport { LocationHeadingSchema, LocationSchema } from '@xyo-network/location-payload-plugin'\nimport type { Payload, Schema } from '@xyo-network/sdk-js'\nimport { AbstractWitness } from '@xyo-network/sdk-js'\n\nimport type { CurrentLocationWitnessParams } from './Config.ts'\nimport { CurrentLocationWitnessConfigSchema } from './Config.ts'\n\nexport class CurrentLocationWitness<TParams extends CurrentLocationWitnessParams = CurrentLocationWitnessParams> extends AbstractWitness<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, CurrentLocationWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = CurrentLocationWitnessConfigSchema\n\n get geolocation(): Geolocation {\n return assertEx(this.params.geolocation, () => 'No geolocation provided')\n }\n\n getCurrentPosition() {\n return new Promise<GeolocationPosition>((resolve, reject) => {\n this.geolocation?.getCurrentPosition(\n (position: GeolocationPosition) => {\n resolve(position)\n },\n (error: GeolocationPositionError) => {\n reject(new Error(error.message, { cause: error }))\n },\n )\n })\n }\n\n protected override async observeHandler(): Promise<Payload[]> {\n const location = await this.getCurrentPosition()\n const locationPayload: LocationPayload = {\n altitude: location.coords.altitude ?? undefined,\n altitudeAccuracy: location.coords.altitudeAccuracy ?? undefined,\n latitude: location.coords.latitude,\n longitude: location.coords.longitude,\n schema: LocationSchema,\n }\n const heading: LocationHeadingPayload[]\n = location.coords.heading\n ? [\n {\n heading: location.coords.heading ?? undefined,\n schema: LocationHeadingSchema,\n speed: location.coords.speed ?? undefined,\n },\n ]\n : []\n return [locationPayload, ...heading]\n }\n}\n", "import { LocationSchema } from '@xyo-network/location-payload-plugin'\nimport { createPayloadSetWitnessPlugin, PayloadSetSchema } from '@xyo-network/sdk-js'\n\nimport { CurrentLocationWitness } from './CurrentLocationWitness.ts'\n\nexport const LocationPlugin = () =>\n createPayloadSetWitnessPlugin<CurrentLocationWitness>(\n { required: { [LocationSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n return await CurrentLocationWitness.create(params)\n },\n },\n )\n"],
5
- "mappings": ";AAGA,SAAS,gBAAgB;AAGlB,IAAM,qCAAqC,SAAS,uCAAuC,IAAI;;;ACNtG,SAAS,uBAAuB,sBAAsB;AAEtD,SAAS,wBAAwB;AAE1B,IAAM,4BAA+C;AAAA,EAC1D,UAAU,EAAE,CAAC,qBAAqB,GAAG,EAAE;AAAA,EACvC,UAAU,EAAE,CAAC,cAAc,GAAG,EAAE;AAAA,EAChC,QAAQ;AACV;;;ACRA,SAAS,gBAAgB;AAEzB,SAAS,yBAAAA,wBAAuB,kBAAAC,uBAAsB;AAEtD,SAAS,uBAAuB;AAKzB,IAAM,yBAAN,cAAkH,gBAAyB;AAAA,EAChJ,OAAyB,gBAA0B,CAAC,GAAG,MAAM,eAAe,kCAAkC;AAAA,EAC9G,OAAyB,sBAA8B;AAAA,EAEvD,IAAI,cAA2B;AAC7B,WAAO,SAAS,KAAK,OAAO,aAAa,MAAM,yBAAyB;AAAA,EAC1E;AAAA,EAEA,qBAAqB;AACnB,WAAO,IAAI,QAA6B,CAAC,SAAS,WAAW;AAC3D,WAAK,aAAa;AAAA,QAChB,CAAC,aAAkC;AACjC,kBAAQ,QAAQ;AAAA,QAClB;AAAA,QACA,CAAC,UAAoC;AACnC,iBAAO,IAAI,MAAM,MAAM,SAAS,EAAE,OAAO,MAAM,CAAC,CAAC;AAAA,QACnD;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEA,MAAyB,iBAAqC;AAC5D,UAAM,WAAW,MAAM,KAAK,mBAAmB;AAC/C,UAAM,kBAAmC;AAAA,MACvC,UAAU,SAAS,OAAO,YAAY;AAAA,MACtC,kBAAkB,SAAS,OAAO,oBAAoB;AAAA,MACtD,UAAU,SAAS,OAAO;AAAA,MAC1B,WAAW,SAAS,OAAO;AAAA,MAC3B,QAAQC;AAAA,IACV;AACA,UAAM,UACF,SAAS,OAAO,UACd;AAAA,MACE;AAAA,QACE,SAAS,SAAS,OAAO,WAAW;AAAA,QACpC,QAAQC;AAAA,QACR,OAAO,SAAS,OAAO,SAAS;AAAA,MAClC;AAAA,IACF,IACA,CAAC;AACP,WAAO,CAAC,iBAAiB,GAAG,OAAO;AAAA,EACrC;AACF;;;ACnDA,SAAS,kBAAAC,uBAAsB;AAC/B,SAAS,+BAA+B,oBAAAC,yBAAwB;AAIzD,IAAM,iBAAiB,MAC5B;AAAA,EACE,EAAE,UAAU,EAAE,CAACC,eAAc,GAAG,EAAE,GAAG,QAAQC,kBAAiB;AAAA,EAC9D;AAAA,IACE,SAAS,OAAO,WAAW;AACzB,aAAO,MAAM,uBAAuB,OAAO,MAAM;AAAA,IACnD;AAAA,EACF;AACF;",
4
+ "sourcesContent": ["import type {\n AnyConfigSchema, QueryableModuleParams, WitnessConfig,\n} from '@xyo-network/sdk-js'\nimport { asSchema } from '@xyo-network/sdk-js'\n\nexport type CurrentLocationWitnessConfigSchema = typeof CurrentLocationWitnessConfigSchema\nexport const CurrentLocationWitnessConfigSchema = asSchema('network.xyo.location.current.config', true)\n\nexport type CurrentLocationWitnessConfig = WitnessConfig<{\n schema: CurrentLocationWitnessConfigSchema\n}>\n\nexport interface CurrentLocationWitnessParams extends QueryableModuleParams<AnyConfigSchema<CurrentLocationWitnessConfig>> { geolocation?: Geolocation }\n", "import { LocationHeadingSchema, LocationSchema } from '@xyo-network/location-payload-plugin'\nimport type { PayloadSetPayload } from '@xyo-network/sdk-js'\nimport { PayloadSetSchema } from '@xyo-network/sdk-js'\n\nexport const CurrentLocationPayloadSet: PayloadSetPayload = {\n optional: { [LocationHeadingSchema]: 1 },\n required: { [LocationSchema]: 1 },\n schema: PayloadSetSchema,\n}\n", "import { assertEx } from '@xylabs/sdk-js'\nimport type { LocationHeadingPayload, LocationPayload } from '@xyo-network/location-payload-plugin'\nimport { LocationHeadingSchema, LocationSchema } from '@xyo-network/location-payload-plugin'\nimport type { Payload, Schema } from '@xyo-network/sdk-js'\nimport { AbstractWitness } from '@xyo-network/sdk-js'\n\nimport type { CurrentLocationWitnessParams } from './Config.ts'\nimport { CurrentLocationWitnessConfigSchema } from './Config.ts'\n\nexport class CurrentLocationWitness<TParams extends CurrentLocationWitnessParams = CurrentLocationWitnessParams> extends AbstractWitness<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, CurrentLocationWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = CurrentLocationWitnessConfigSchema\n\n get geolocation(): Geolocation {\n return assertEx(this.params.geolocation, () => 'No geolocation provided')\n }\n\n getCurrentPosition() {\n return new Promise<GeolocationPosition>((resolve, reject) => {\n this.geolocation?.getCurrentPosition(\n (position: GeolocationPosition) => {\n resolve(position)\n },\n (error: GeolocationPositionError) => {\n reject(new Error(error.message, { cause: error }))\n },\n )\n })\n }\n\n protected override async observeHandler(): Promise<Payload[]> {\n const location = await this.getCurrentPosition()\n const locationPayload: LocationPayload = {\n altitude: location.coords.altitude ?? undefined,\n altitudeAccuracy: location.coords.altitudeAccuracy ?? undefined,\n latitude: location.coords.latitude,\n longitude: location.coords.longitude,\n schema: LocationSchema,\n }\n const heading: LocationHeadingPayload[]\n = location.coords.heading == null\n ? []\n : [\n {\n heading: location.coords.heading ?? undefined,\n schema: LocationHeadingSchema,\n speed: location.coords.speed ?? undefined,\n },\n ]\n return [locationPayload, ...heading]\n }\n}\n", "import { LocationSchema } from '@xyo-network/location-payload-plugin'\nimport { createPayloadSetWitnessPlugin, PayloadSetSchema } from '@xyo-network/sdk-js'\n\nimport { CurrentLocationWitness } from './CurrentLocationWitness.ts'\n\nexport const LocationPlugin = () =>\n createPayloadSetWitnessPlugin<CurrentLocationWitness>(\n { required: { [LocationSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n return await CurrentLocationWitness.create(params)\n },\n },\n )\n"],
5
+ "mappings": ";AAGA,SAAS,gBAAgB;AAGlB,IAAM,qCAAqC,SAAS,uCAAuC,IAAI;;;ACNtG,SAAS,uBAAuB,sBAAsB;AAEtD,SAAS,wBAAwB;AAE1B,IAAM,4BAA+C;AAAA,EAC1D,UAAU,EAAE,CAAC,qBAAqB,GAAG,EAAE;AAAA,EACvC,UAAU,EAAE,CAAC,cAAc,GAAG,EAAE;AAAA,EAChC,QAAQ;AACV;;;ACRA,SAAS,gBAAgB;AAEzB,SAAS,yBAAAA,wBAAuB,kBAAAC,uBAAsB;AAEtD,SAAS,uBAAuB;AAKzB,IAAM,yBAAN,cAAkH,gBAAyB;AAAA,EAChJ,OAAyB,gBAA0B,CAAC,GAAG,MAAM,eAAe,kCAAkC;AAAA,EAC9G,OAAyB,sBAA8B;AAAA,EAEvD,IAAI,cAA2B;AAC7B,WAAO,SAAS,KAAK,OAAO,aAAa,MAAM,yBAAyB;AAAA,EAC1E;AAAA,EAEA,qBAAqB;AACnB,WAAO,IAAI,QAA6B,CAAC,SAAS,WAAW;AAC3D,WAAK,aAAa;AAAA,QAChB,CAAC,aAAkC;AACjC,kBAAQ,QAAQ;AAAA,QAClB;AAAA,QACA,CAAC,UAAoC;AACnC,iBAAO,IAAI,MAAM,MAAM,SAAS,EAAE,OAAO,MAAM,CAAC,CAAC;AAAA,QACnD;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEA,MAAyB,iBAAqC;AAC5D,UAAM,WAAW,MAAM,KAAK,mBAAmB;AAC/C,UAAM,kBAAmC;AAAA,MACvC,UAAU,SAAS,OAAO,YAAY;AAAA,MACtC,kBAAkB,SAAS,OAAO,oBAAoB;AAAA,MACtD,UAAU,SAAS,OAAO;AAAA,MAC1B,WAAW,SAAS,OAAO;AAAA,MAC3B,QAAQC;AAAA,IACV;AACA,UAAM,UACF,SAAS,OAAO,WAAW,OACzB,CAAC,IACD;AAAA,MACE;AAAA,QACE,SAAS,SAAS,OAAO,WAAW;AAAA,QACpC,QAAQC;AAAA,QACR,OAAO,SAAS,OAAO,SAAS;AAAA,MAClC;AAAA,IACF;AACN,WAAO,CAAC,iBAAiB,GAAG,OAAO;AAAA,EACrC;AACF;;;ACnDA,SAAS,kBAAAC,uBAAsB;AAC/B,SAAS,+BAA+B,oBAAAC,yBAAwB;AAIzD,IAAM,iBAAiB,MAC5B;AAAA,EACE,EAAE,UAAU,EAAE,CAACC,eAAc,GAAG,EAAE,GAAG,QAAQC,kBAAiB;AAAA,EAC9D;AAAA,IACE,SAAS,OAAO,WAAW;AACzB,aAAO,MAAM,uBAAuB,OAAO,MAAM;AAAA,IACnD;AAAA,EACF;AACF;",
6
6
  "names": ["LocationHeadingSchema", "LocationSchema", "LocationSchema", "LocationHeadingSchema", "LocationSchema", "PayloadSetSchema", "LocationSchema", "PayloadSetSchema"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/location-plugin",
3
- "version": "6.0.3",
3
+ "version": "7.0.0",
4
4
  "description": "Typescript/Javascript Plugins for XYO Platform",
5
5
  "homepage": "https://xyo.network",
6
6
  "bugs": {
@@ -31,31 +31,29 @@
31
31
  "README.md"
32
32
  ],
33
33
  "dependencies": {
34
- "@xyo-network/location-payload-plugin": "~6.0.3"
34
+ "@xyo-network/location-payload-plugin": "~7.0.0"
35
35
  },
36
36
  "devDependencies": {
37
37
  "@bitauth/libauth": "~3.0.0",
38
38
  "@metamask/providers": "^22.1.1",
39
39
  "@noble/post-quantum": "~0.6.1",
40
40
  "@opentelemetry/api": "^1.9.1",
41
- "@opentelemetry/sdk-trace-base": "^2.7.1",
41
+ "@opentelemetry/sdk-trace-base": "^2.8.0",
42
42
  "@scure/base": "^2.2.0",
43
43
  "@scure/bip39": "~2.2.0",
44
- "@xylabs/geo": "^6.0.8",
45
- "@xylabs/sdk-js": "^6.0.8",
46
- "@xylabs/threads": "^6.0.8",
47
- "@xylabs/toolchain": "~8.1.16",
48
- "@xylabs/tsconfig": "~8.1.16",
49
- "@xylabs/tsconfig-dom": "~8.1.16",
50
- "@xylabs/vitest-extended": "~6.0.8",
51
- "@xyo-network/sdk-js": "^6.0.4",
52
- "@xyo-network/sdk-protocol-js": "~6.0.9",
44
+ "@xylabs/geo": "^6.1.3",
45
+ "@xylabs/sdk-js": "^6.1.3",
46
+ "@xylabs/threads": "^6.1.3",
47
+ "@xylabs/toolchain": "~8.2.7",
48
+ "@xylabs/tsconfig": "~8.2.7",
49
+ "@xylabs/tsconfig-dom": "~8.2.7",
50
+ "@xylabs/vitest-extended": "^6.1.3",
51
+ "@xyo-network/sdk-js": "^7.0.0",
52
+ "@xyo-network/sdk-protocol-js": "~7.0",
53
53
  "ajv": "^8.20.0",
54
54
  "async-mutex": "^0.5.0",
55
- "bn.js": "^5.2.3",
56
- "buffer": "^6.0.3",
57
55
  "debug": "~4.4.3",
58
- "eslint": "^10.4.1",
56
+ "eslint": "^10.5.0",
59
57
  "ethers": "^6.16.0",
60
58
  "hash-wasm": "^4.12.0",
61
59
  "idb": "^8.0.3",
@@ -63,7 +61,7 @@
63
61
  "observable-fns": "~0.6.1",
64
62
  "typescript": "~6.0.3",
65
63
  "vite": "^8.0.16",
66
- "vitest": "^4.1.8",
64
+ "vitest": "^4.1.9",
67
65
  "webextension-polyfill": "^0.12.0",
68
66
  "zod": "^4.4.3"
69
67
  },
@@ -78,12 +76,10 @@
78
76
  "@xylabs/geo": "^6.0",
79
77
  "@xylabs/sdk-js": "^6.0",
80
78
  "@xylabs/threads": "^6.0",
81
- "@xyo-network/sdk-js": "^6.0",
82
- "@xyo-network/sdk-protocol-js": "~6.0",
79
+ "@xyo-network/sdk-js": "^7.0",
80
+ "@xyo-network/sdk-protocol-js": "^7.0",
83
81
  "ajv": "^8.20",
84
82
  "async-mutex": "^0.5",
85
- "bn.js": "^5.2",
86
- "buffer": "^6.0",
87
83
  "debug": "~4.4",
88
84
  "ethers": "^6.16",
89
85
  "hash-wasm": "^4.12",
@@ -93,6 +89,9 @@
93
89
  "webextension-polyfill": "^0.12",
94
90
  "zod": "^4.4"
95
91
  },
92
+ "engines": {
93
+ "node": "^24"
94
+ },
96
95
  "publishConfig": {
97
96
  "access": "public"
98
97
  }