@helium/helium-entity-manager-sdk 0.0.8 → 0.0.10

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.
@@ -9,13 +9,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.changeMetadata = void 0;
12
+ exports.updateMetadata = void 0;
13
13
  const spl_utils_1 = require("@helium/spl-utils");
14
14
  const pdas_1 = require("../pdas");
15
- function changeMetadata({ program, hotspotConfig, assetId, location, elevation, gain, getAssetFn = spl_utils_1.getAsset, getAssetProofFn = spl_utils_1.getAssetProof, }) {
15
+ function updateMetadata({ program, hotspotConfig, assetId, location, elevation, gain, assetEndpoint, getAssetFn = spl_utils_1.getAsset, getAssetProofFn = spl_utils_1.getAssetProof, }) {
16
16
  return __awaiter(this, void 0, void 0, function* () {
17
17
  // @ts-ignore
18
- const endpoint = program.provider.connection._rpcEndpoint;
18
+ const endpoint = assetEndpoint || program.provider.connection._rpcEndpoint;
19
19
  const asset = yield getAssetFn(endpoint, assetId);
20
20
  if (!asset) {
21
21
  throw new Error("No asset with ID " + assetId.toBase58());
@@ -27,9 +27,9 @@ function changeMetadata({ program, hotspotConfig, assetId, location, elevation,
27
27
  const { root, proof, leaf, treeId, nodeIndex } = assetProof;
28
28
  const { ownership: { owner }, content: { uri }, } = asset;
29
29
  const eccCompact = uri.split("/").slice(-1)[0];
30
- const [storage] = (0, pdas_1.hotspotStorageKey)(hotspotConfig, eccCompact);
30
+ const [info] = (0, pdas_1.iotInfoKey)(hotspotConfig, eccCompact);
31
31
  return program.methods
32
- .changeMetadataV0({
32
+ .updateIotInfoV0({
33
33
  location,
34
34
  elevation,
35
35
  gain,
@@ -38,10 +38,10 @@ function changeMetadata({ program, hotspotConfig, assetId, location, elevation,
38
38
  index: nodeIndex,
39
39
  })
40
40
  .accounts({
41
- hotspot: assetId,
41
+ // hotspot: assetId,
42
42
  hotspotConfig,
43
43
  hotspotOwner: owner,
44
- storage,
44
+ info,
45
45
  merkleTree: treeId,
46
46
  })
47
47
  .remainingAccounts(proof.map((p) => {
@@ -53,5 +53,5 @@ function changeMetadata({ program, hotspotConfig, assetId, location, elevation,
53
53
  }));
54
54
  });
55
55
  }
56
- exports.changeMetadata = changeMetadata;
56
+ exports.updateMetadata = updateMetadata;
57
57
  //# sourceMappingURL=changeMetadata.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"changeMetadata.js","sourceRoot":"","sources":["../../../src/functions/changeMetadata.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,iDAA+E;AAI/E,kCAA4C;AAE5C,SAAsB,cAAc,CAAC,EACnC,OAAO,EACP,aAAa,EACb,OAAO,EACP,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,UAAU,GAAG,oBAAQ,EACrB,eAAe,GAAG,yBAAa,GAahC;;QACC,aAAa;QACb,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;QAC1D,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC3D;QACD,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,EAAE;YACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;SACjE;QACD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;QAC5D,MAAM,EACJ,SAAS,EAAE,EAAE,KAAK,EAAE,EACpB,OAAO,EAAE,EAAE,GAAG,EAAE,GACjB,GAAG,KAAK,CAAC;QACV,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/C,MAAM,CAAC,OAAO,CAAC,GAAG,IAAA,wBAAiB,EAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAE/D,OAAO,OAAO,CAAC,OAAO;aACnB,gBAAgB,CAAC;YAChB,QAAQ;YACR,SAAS;YACT,IAAI;YACJ,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;YACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;YACnC,KAAK,EAAE,SAAS;SACjB,CAAC;aACD,QAAQ,CAAC;YACR,OAAO,EAAE,OAAO;YAChB,aAAa;YACb,YAAY,EAAE,KAAK;YACnB,OAAO;YACP,UAAU,EAAE,MAAM;SACnB,CAAC;aACD,iBAAiB,CAChB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,OAAO;gBACL,MAAM,EAAE,CAAC;gBACT,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aAChB,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;IACN,CAAC;CAAA;AAlED,wCAkEC"}
1
+ {"version":3,"file":"changeMetadata.js","sourceRoot":"","sources":["../../../src/functions/changeMetadata.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,iDAA+E;AAI/E,kCAAqC;AAErC,SAAsB,cAAc,CAAC,EACnC,OAAO,EACP,aAAa,EACb,OAAO,EACP,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,aAAa,EACb,UAAU,GAAG,oBAAQ,EACrB,eAAe,GAAG,yBAAa,GAchC;;QACC,aAAa;QACb,MAAM,QAAQ,GAAG,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;QAC3E,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC3D;QACD,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,EAAE;YACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;SACjE;QACD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;QAC5D,MAAM,EACJ,SAAS,EAAE,EAAE,KAAK,EAAE,EACpB,OAAO,EAAE,EAAE,GAAG,EAAE,GACjB,GAAG,KAAK,CAAC;QACV,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/C,MAAM,CAAC,IAAI,CAAC,GAAG,IAAA,iBAAU,EAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAErD,OAAO,OAAO,CAAC,OAAO;aACnB,eAAe,CAAC;YACf,QAAQ;YACR,SAAS;YACT,IAAI;YACJ,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;YACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;YACnC,KAAK,EAAE,SAAS;SACjB,CAAC;aACD,QAAQ,CAAC;YACR,oBAAoB;YACpB,aAAa;YACb,YAAY,EAAE,KAAK;YACnB,IAAI;YACJ,UAAU,EAAE,MAAM;SACnB,CAAC;aACD,iBAAiB,CAChB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,OAAO;gBACL,MAAM,EAAE,CAAC;gBACT,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aAChB,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;IACN,CAAC;CAAA;AApED,wCAoEC"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.updateMetadata = void 0;
13
+ const spl_utils_1 = require("@helium/spl-utils");
14
+ const pdas_1 = require("../pdas");
15
+ function updateMetadata({ program, hotspotConfig, assetId, location, elevation, gain, assetEndpoint, getAssetFn = spl_utils_1.getAsset, getAssetProofFn = spl_utils_1.getAssetProof, }) {
16
+ return __awaiter(this, void 0, void 0, function* () {
17
+ // @ts-ignore
18
+ const endpoint = assetEndpoint || program.provider.connection._rpcEndpoint;
19
+ const asset = yield getAssetFn(endpoint, assetId);
20
+ if (!asset) {
21
+ throw new Error("No asset with ID " + assetId.toBase58());
22
+ }
23
+ const assetProof = yield getAssetProofFn(endpoint, assetId);
24
+ if (!assetProof) {
25
+ throw new Error("No asset proof with ID " + assetId.toBase58());
26
+ }
27
+ const { root, proof, leaf, treeId, nodeIndex } = assetProof;
28
+ const { ownership: { owner }, content: { uri }, } = asset;
29
+ const eccCompact = uri.split("/").slice(-1)[0];
30
+ const [info] = (0, pdas_1.iotInfoKey)(hotspotConfig, eccCompact);
31
+ return program.methods
32
+ .updateIotInfoV0({
33
+ location,
34
+ elevation,
35
+ gain,
36
+ hash: leaf.toBuffer().toJSON().data,
37
+ root: root.toBuffer().toJSON().data,
38
+ index: nodeIndex,
39
+ })
40
+ .accounts({
41
+ // hotspot: assetId,
42
+ hotspotConfig,
43
+ hotspotOwner: owner,
44
+ info,
45
+ merkleTree: treeId,
46
+ })
47
+ .remainingAccounts(proof.map((p) => {
48
+ return {
49
+ pubkey: p,
50
+ isWritable: false,
51
+ isSigner: false,
52
+ };
53
+ }));
54
+ });
55
+ }
56
+ exports.updateMetadata = updateMetadata;
57
+ //# sourceMappingURL=updateMetadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateMetadata.js","sourceRoot":"","sources":["../../../src/functions/updateMetadata.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,iDAA+E;AAI/E,kCAAqC;AAErC,SAAsB,cAAc,CAAC,EACnC,OAAO,EACP,aAAa,EACb,OAAO,EACP,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,aAAa,EACb,UAAU,GAAG,oBAAQ,EACrB,eAAe,GAAG,yBAAa,GAchC;;QACC,aAAa;QACb,MAAM,QAAQ,GAAG,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;QAC3E,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC3D;QACD,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,EAAE;YACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;SACjE;QACD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;QAC5D,MAAM,EACJ,SAAS,EAAE,EAAE,KAAK,EAAE,EACpB,OAAO,EAAE,EAAE,GAAG,EAAE,GACjB,GAAG,KAAK,CAAC;QACV,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/C,MAAM,CAAC,IAAI,CAAC,GAAG,IAAA,iBAAU,EAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAErD,OAAO,OAAO,CAAC,OAAO;aACnB,eAAe,CAAC;YACf,QAAQ;YACR,SAAS;YACT,IAAI;YACJ,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;YACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;YACnC,KAAK,EAAE,SAAS;SACjB,CAAC;aACD,QAAQ,CAAC;YACR,oBAAoB;YACpB,aAAa;YACb,YAAY,EAAE,KAAK;YACnB,IAAI;YACJ,UAAU,EAAE,MAAM;SACnB,CAAC;aACD,iBAAiB,CAChB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,OAAO;gBACL,MAAM,EAAE,CAAC;gBACT,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aAChB,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;IACN,CAAC;CAAA;AApED,wCAoEC"}
package/lib/cjs/index.js CHANGED
@@ -23,15 +23,15 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
23
23
  });
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.init = exports.changeMetadata = void 0;
26
+ exports.init = exports.updateMetadata = void 0;
27
27
  const anchor_1 = require("@project-serum/anchor");
28
28
  const constants_1 = require("./constants");
29
29
  const resolvers_1 = require("./resolvers");
30
30
  __exportStar(require("./pdas"), exports);
31
31
  __exportStar(require("./resolvers"), exports);
32
32
  __exportStar(require("./constants"), exports);
33
- var changeMetadata_1 = require("./functions/changeMetadata");
34
- Object.defineProperty(exports, "changeMetadata", { enumerable: true, get: function () { return changeMetadata_1.changeMetadata; } });
33
+ var updateMetadata_1 = require("./functions/updateMetadata");
34
+ Object.defineProperty(exports, "updateMetadata", { enumerable: true, get: function () { return updateMetadata_1.updateMetadata; } });
35
35
  const init = (provider, programId = constants_1.PROGRAM_ID, idl) => __awaiter(void 0, void 0, void 0, function* () {
36
36
  if (!idl) {
37
37
  idl = yield anchor_1.Program.fetchIdl(programId, provider);
package/lib/cjs/pdas.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.collectionMetadataKey = exports.hotspotStorageKey = exports.hotspotIssuerKey = exports.hotspotCollectionKey = exports.hotspotConfigKey = void 0;
6
+ exports.collectionMetadataKey = exports.iotInfoKey = exports.hotspotIssuerKey = exports.hotspotCollectionKey = exports.hotspotConfigKey = void 0;
7
7
  const web3_js_1 = require("@solana/web3.js");
8
8
  const constants_1 = require("./constants");
9
9
  const mpl_token_metadata_1 = require("@metaplex-foundation/mpl-token-metadata");
@@ -22,15 +22,15 @@ const hotspotIssuerKey = (hotspotConfig, maker, programId = constants_1.PROGRAM_
22
22
  maker.toBuffer(),
23
23
  ], programId);
24
24
  exports.hotspotIssuerKey = hotspotIssuerKey;
25
- const hotspotStorageKey = (hotspotConfig, hotspotKey, programId = constants_1.PROGRAM_ID) => {
25
+ const iotInfoKey = (hotspotConfig, hotspotKey, programId = constants_1.PROGRAM_ID) => {
26
26
  let hexString = crypto_1.default
27
27
  .createHash("sha256")
28
28
  .update(hotspotKey, "utf-8")
29
29
  .digest("hex");
30
30
  let seed = Uint8Array.from(Buffer.from(hexString, "hex"));
31
- return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from("storage", "utf-8"), hotspotConfig.toBuffer(), seed], programId);
31
+ return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from("iot_info", "utf-8"), hotspotConfig.toBuffer(), seed], programId);
32
32
  };
33
- exports.hotspotStorageKey = hotspotStorageKey;
33
+ exports.iotInfoKey = iotInfoKey;
34
34
  const collectionMetadataKey = (collection, programId = mpl_token_metadata_1.PROGRAM_ID) => web3_js_1.PublicKey.findProgramAddressSync([
35
35
  Buffer.from("metadata", "utf-8"),
36
36
  programId.toBuffer(),
@@ -1 +1 @@
1
- {"version":3,"file":"pdas.js","sourceRoot":"","sources":["../../src/pdas.ts"],"names":[],"mappings":";;;;;;AAAA,6CAA4C;AAC5C,2CAAyC;AACzC,gFAAkG;AAClG,oDAA4B;AAErB,MAAM,gBAAgB,GAAG,CAC9B,MAAiB,EACjB,MAAc,EACd,YAAuB,sBAAU,EACjC,EAAE,CACF,mBAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACtC,MAAM,CAAC,QAAQ,EAAE;IACjB,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;CAC7B,EACD,SAAS,CACV,CAAC;AAZS,QAAA,gBAAgB,oBAYzB;AAEG,MAAM,oBAAoB,GAAG,CAClC,MAAiB,EACjB,MAAc,EACd,YAAuB,sBAAU,EACjC,EAAE,CACF,mBAAS,CAAC,sBAAsB,CAC9B,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACrF,SAAS,CACV,CAAC;AARS,QAAA,oBAAoB,wBAQ7B;AAEG,MAAM,gBAAgB,GAAG,CAC9B,aAAwB,EACxB,KAAgB,EAChB,YAAuB,sBAAU,EACjC,EAAE,CACF,mBAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACtC,aAAa,CAAC,QAAQ,EAAE;IACxB,KAAK,CAAC,QAAQ,EAAE;CACjB,EACD,SAAS,CACV,CAAC;AAZS,QAAA,gBAAgB,oBAYzB;AAEG,MAAM,iBAAiB,GAAG,CAC/B,aAAwB,EACxB,UAAkB,EAClB,YAAuB,sBAAU,EACjC,EAAE;IACF,IAAI,SAAS,GAAG,gBAAM;SACnB,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC;SAC3B,MAAM,CAAC,KAAK,CAAC,CAAC;IACjB,IAAI,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAE1D,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,EACjE,SAAS,CACV,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,iBAAiB,qBAe5B;AAEK,MAAM,qBAAqB,GAAG,CACnC,UAAqB,EACrB,YAAuB,+BAAyB,EAChD,EAAE,CACF,mBAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,QAAQ,EAAE;IACpB,UAAU,CAAC,QAAQ,EAAE;CACtB,EACD,SAAS,CACV,CAAC;AAXS,QAAA,qBAAqB,yBAW9B"}
1
+ {"version":3,"file":"pdas.js","sourceRoot":"","sources":["../../src/pdas.ts"],"names":[],"mappings":";;;;;;AAAA,6CAA4C;AAC5C,2CAAyC;AACzC,gFAAkG;AAClG,oDAA4B;AAErB,MAAM,gBAAgB,GAAG,CAC9B,MAAiB,EACjB,MAAc,EACd,YAAuB,sBAAU,EACjC,EAAE,CACF,mBAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACtC,MAAM,CAAC,QAAQ,EAAE;IACjB,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;CAC7B,EACD,SAAS,CACV,CAAC;AAZS,QAAA,gBAAgB,oBAYzB;AAEG,MAAM,oBAAoB,GAAG,CAClC,MAAiB,EACjB,MAAc,EACd,YAAuB,sBAAU,EACjC,EAAE,CACF,mBAAS,CAAC,sBAAsB,CAC9B,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACrF,SAAS,CACV,CAAC;AARS,QAAA,oBAAoB,wBAQ7B;AAEG,MAAM,gBAAgB,GAAG,CAC9B,aAAwB,EACxB,KAAgB,EAChB,YAAuB,sBAAU,EACjC,EAAE,CACF,mBAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACtC,aAAa,CAAC,QAAQ,EAAE;IACxB,KAAK,CAAC,QAAQ,EAAE;CACjB,EACD,SAAS,CACV,CAAC;AAZS,QAAA,gBAAgB,oBAYzB;AAEG,MAAM,UAAU,GAAG,CACxB,aAAwB,EACxB,UAAkB,EAClB,YAAuB,sBAAU,EACjC,EAAE;IACF,IAAI,SAAS,GAAG,gBAAM;SACnB,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC;SAC3B,MAAM,CAAC,KAAK,CAAC,CAAC;IACjB,IAAI,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAE1D,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,EAClE,SAAS,CACV,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,UAAU,cAerB;AAEK,MAAM,qBAAqB,GAAG,CACnC,UAAqB,EACrB,YAAuB,+BAAyB,EAChD,EAAE,CACF,mBAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,QAAQ,EAAE;IACpB,UAAU,CAAC,QAAQ,EAAE;CACtB,EACD,SAAS,CACV,CAAC;AAXS,QAAA,qBAAqB,yBAW9B"}
@@ -21,10 +21,10 @@ exports.heliumEntityManagerResolvers = (0, spl_utils_1.combineResolvers)(spl_uti
21
21
  owner: "hotspotConfig",
22
22
  }), (0, spl_utils_1.resolveIndividual)(({ path, args, provider, accounts }) => __awaiter(void 0, void 0, void 0, function* () {
23
23
  var _a;
24
- if (path[path.length - 1] === "storage" &&
24
+ if (path[path.length - 1] === "info" &&
25
25
  args[args.length - 1].hotspotKey &&
26
26
  accounts.hotspotConfig) {
27
- return (0, pdas_1.hotspotStorageKey)(accounts.hotspotConfig, args[args.length - 1].hotspotKey)[0];
27
+ return (0, pdas_1.iotInfoKey)(accounts.hotspotConfig, args[args.length - 1].hotspotKey)[0];
28
28
  }
29
29
  else if (path[path.length - 1] === "recipient") {
30
30
  // @ts-ignore
@@ -35,17 +35,17 @@ exports.heliumEntityManagerResolvers = (0, spl_utils_1.combineResolvers)(spl_uti
35
35
  return (0, spl_token_1.getAssociatedTokenAddress)(accounts.hotspot, (accounts.owner || accounts.hotspotOwner));
36
36
  }
37
37
  })), (0, spl_utils_1.ataResolver)({
38
- instruction: "issueHotspotV0",
38
+ instruction: "issueIotHotspotV0",
39
39
  account: "recipientTokenAccount",
40
40
  mint: "hotspot",
41
41
  owner: "hotspotOwner",
42
42
  }), (0, spl_utils_1.ataResolver)({
43
- instruction: "issueHotspotV0",
43
+ instruction: "issueIotHotspotV0",
44
44
  account: "dcBurner",
45
45
  mint: "dcMint",
46
46
  owner: "dcFeePayer",
47
47
  }), (0, spl_utils_1.ataResolver)({
48
- instruction: "changeMetadataV0",
48
+ instruction: "updateIotInfoV0",
49
49
  account: "ownerDcAta",
50
50
  mint: "dcMint",
51
51
  owner: "hotspotOwner",
@@ -1 +1 @@
1
- {"version":3,"file":"resolvers.js","sourceRoot":"","sources":["../../src/resolvers.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qEAAsE;AACtE,iDAK2B;AAC3B,iCAA2C;AAC3C,iDAA8D;AAGjD,QAAA,4BAA4B,GAAG,IAAA,4BAAgB,EAC1D,gCAAoB,EACpB,IAAA,uBAAW,EAAC;IACV,WAAW,EAAE,2BAA2B;IACxC,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,eAAe;CACvB,CAAC,EACF,IAAA,6BAAiB,EAAC,CAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;;IAC7D,IACE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,SAAS;QACnC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU;QAChC,QAAQ,CAAC,aAAa,EACtB;QACA,OAAO,IAAA,wBAAiB,EAAC,QAAQ,CAAC,aAA0B,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;KACpG;SAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,WAAW,EAAE;QAChD,aAAa;QACb,OAAO,MAAA,QAAQ,CAAC,MAAM,0CAAE,SAAS,CAAC;KACnC;AACH,CAAC,CAAA,CAAC,EACF,IAAA,6BAAiB,EAAC,CAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7C,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,iBAAiB,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE;QAChH,OAAO,IAAA,qCAAyB,EAAC,QAAQ,CAAC,OAAoB,EAAE,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,YAAY,CAAc,CAAC,CAAA;KACxH;AACH,CAAC,CAAA,CAAC,EACF,IAAA,uBAAW,EAAC;IACV,WAAW,EAAE,gBAAgB;IAC7B,OAAO,EAAE,uBAAuB;IAChC,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,cAAc;CACtB,CAAC,EACF,IAAA,uBAAW,EAAC;IACV,WAAW,EAAE,gBAAgB;IAC7B,OAAO,EAAE,UAAU;IACnB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,YAAY;CACpB,CAAC,EACF,IAAA,uBAAW,EAAC;IACV,WAAW,EAAE,kBAAkB;IAC/B,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,cAAc;CACtB,CAAC,EACF,6CAAuB,CACxB,CAAC"}
1
+ {"version":3,"file":"resolvers.js","sourceRoot":"","sources":["../../src/resolvers.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qEAAsE;AACtE,iDAK2B;AAC3B,iCAAoC;AACpC,iDAA8D;AAGjD,QAAA,4BAA4B,GAAG,IAAA,4BAAgB,EAC1D,gCAAoB,EACpB,IAAA,uBAAW,EAAC;IACV,WAAW,EAAE,2BAA2B;IACxC,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,eAAe;CACvB,CAAC,EACF,IAAA,6BAAiB,EAAC,CAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;;IAC7D,IACE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,MAAM;QAChC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU;QAChC,QAAQ,CAAC,aAAa,EACtB;QACA,OAAO,IAAA,iBAAU,EAAC,QAAQ,CAAC,aAA0B,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;KAC7F;SAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,WAAW,EAAE;QAChD,aAAa;QACb,OAAO,MAAA,QAAQ,CAAC,MAAM,0CAAE,SAAS,CAAC;KACnC;AACH,CAAC,CAAA,CAAC,EACF,IAAA,6BAAiB,EAAC,CAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7C,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,iBAAiB,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE;QAChH,OAAO,IAAA,qCAAyB,EAAC,QAAQ,CAAC,OAAoB,EAAE,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,YAAY,CAAc,CAAC,CAAA;KACxH;AACH,CAAC,CAAA,CAAC,EACF,IAAA,uBAAW,EAAC;IACV,WAAW,EAAE,mBAAmB;IAChC,OAAO,EAAE,uBAAuB;IAChC,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,cAAc;CACtB,CAAC,EACF,IAAA,uBAAW,EAAC;IACV,WAAW,EAAE,mBAAmB;IAChC,OAAO,EAAE,UAAU;IACnB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,YAAY;CACpB,CAAC,EACF,IAAA,uBAAW,EAAC;IACV,WAAW,EAAE,iBAAiB;IAC9B,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,cAAc;CACtB,CAAC,EACF,6CAAuB,CACxB,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import { getAsset, getAssetProof } from "@helium/spl-utils";
2
- import { hotspotStorageKey } from "../pdas";
3
- export async function changeMetadata({ program, hotspotConfig, assetId, location, elevation, gain, getAssetFn = getAsset, getAssetProofFn = getAssetProof, }) {
2
+ import { iotInfoKey } from "../pdas";
3
+ export async function updateMetadata({ program, hotspotConfig, assetId, location, elevation, gain, assetEndpoint, getAssetFn = getAsset, getAssetProofFn = getAssetProof, }) {
4
4
  // @ts-ignore
5
- const endpoint = program.provider.connection._rpcEndpoint;
5
+ const endpoint = assetEndpoint || program.provider.connection._rpcEndpoint;
6
6
  const asset = await getAssetFn(endpoint, assetId);
7
7
  if (!asset) {
8
8
  throw new Error("No asset with ID " + assetId.toBase58());
@@ -14,9 +14,9 @@ export async function changeMetadata({ program, hotspotConfig, assetId, location
14
14
  const { root, proof, leaf, treeId, nodeIndex } = assetProof;
15
15
  const { ownership: { owner }, content: { uri }, } = asset;
16
16
  const eccCompact = uri.split("/").slice(-1)[0];
17
- const [storage] = hotspotStorageKey(hotspotConfig, eccCompact);
17
+ const [info] = iotInfoKey(hotspotConfig, eccCompact);
18
18
  return program.methods
19
- .changeMetadataV0({
19
+ .updateIotInfoV0({
20
20
  location,
21
21
  elevation,
22
22
  gain,
@@ -25,10 +25,10 @@ export async function changeMetadata({ program, hotspotConfig, assetId, location
25
25
  index: nodeIndex,
26
26
  })
27
27
  .accounts({
28
- hotspot: assetId,
28
+ // hotspot: assetId,
29
29
  hotspotConfig,
30
30
  hotspotOwner: owner,
31
- storage,
31
+ info,
32
32
  merkleTree: treeId,
33
33
  })
34
34
  .remainingAccounts(proof.map((p) => {
@@ -1 +1 @@
1
- {"version":3,"file":"changeMetadata.js","sourceRoot":"","sources":["../../../../src/functions/changeMetadata.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,QAAQ,EAAE,aAAa,EAAc,MAAM,mBAAmB,CAAC;AAI/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EACnC,OAAO,EACP,aAAa,EACb,OAAO,EACP,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,UAAU,GAAG,QAAQ,EACrB,eAAe,GAAG,aAAa,GAahC;IACC,aAAa;IACb,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;IAC1D,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClD,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;KAC3D;IACD,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC5D,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;KACjE;IACD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;IAC5D,MAAM,EACJ,SAAS,EAAE,EAAE,KAAK,EAAE,EACpB,OAAO,EAAE,EAAE,GAAG,EAAE,GACjB,GAAG,KAAK,CAAC;IACV,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/C,MAAM,CAAC,OAAO,CAAC,GAAG,iBAAiB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAE/D,OAAO,OAAO,CAAC,OAAO;SACnB,gBAAgB,CAAC;QAChB,QAAQ;QACR,SAAS;QACT,IAAI;QACJ,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;QACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;QACnC,KAAK,EAAE,SAAS;KACjB,CAAC;SACD,QAAQ,CAAC;QACR,OAAO,EAAE,OAAO;QAChB,aAAa;QACb,YAAY,EAAE,KAAK;QACnB,OAAO;QACP,UAAU,EAAE,MAAM;KACnB,CAAC;SACD,iBAAiB,CAChB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACd,OAAO;YACL,MAAM,EAAE,CAAC;YACT,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,KAAK;SAChB,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"changeMetadata.js","sourceRoot":"","sources":["../../../../src/functions/changeMetadata.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,QAAQ,EAAE,aAAa,EAAc,MAAM,mBAAmB,CAAC;AAI/E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EACnC,OAAO,EACP,aAAa,EACb,OAAO,EACP,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,aAAa,EACb,UAAU,GAAG,QAAQ,EACrB,eAAe,GAAG,aAAa,GAchC;IACC,aAAa;IACb,MAAM,QAAQ,GAAG,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;IAC3E,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClD,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;KAC3D;IACD,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC5D,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;KACjE;IACD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;IAC5D,MAAM,EACJ,SAAS,EAAE,EAAE,KAAK,EAAE,EACpB,OAAO,EAAE,EAAE,GAAG,EAAE,GACjB,GAAG,KAAK,CAAC;IACV,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/C,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAErD,OAAO,OAAO,CAAC,OAAO;SACnB,eAAe,CAAC;QACf,QAAQ;QACR,SAAS;QACT,IAAI;QACJ,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;QACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;QACnC,KAAK,EAAE,SAAS;KACjB,CAAC;SACD,QAAQ,CAAC;QACR,oBAAoB;QACpB,aAAa;QACb,YAAY,EAAE,KAAK;QACnB,IAAI;QACJ,UAAU,EAAE,MAAM;KACnB,CAAC;SACD,iBAAiB,CAChB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACd,OAAO;YACL,MAAM,EAAE,CAAC;YACT,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,KAAK;SAChB,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACN,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { getAsset, getAssetProof } from "@helium/spl-utils";
2
+ import { iotInfoKey } from "../pdas";
3
+ export async function updateMetadata({ program, hotspotConfig, assetId, location, elevation, gain, assetEndpoint, getAssetFn = getAsset, getAssetProofFn = getAssetProof, }) {
4
+ // @ts-ignore
5
+ const endpoint = assetEndpoint || program.provider.connection._rpcEndpoint;
6
+ const asset = await getAssetFn(endpoint, assetId);
7
+ if (!asset) {
8
+ throw new Error("No asset with ID " + assetId.toBase58());
9
+ }
10
+ const assetProof = await getAssetProofFn(endpoint, assetId);
11
+ if (!assetProof) {
12
+ throw new Error("No asset proof with ID " + assetId.toBase58());
13
+ }
14
+ const { root, proof, leaf, treeId, nodeIndex } = assetProof;
15
+ const { ownership: { owner }, content: { uri }, } = asset;
16
+ const eccCompact = uri.split("/").slice(-1)[0];
17
+ const [info] = iotInfoKey(hotspotConfig, eccCompact);
18
+ return program.methods
19
+ .updateIotInfoV0({
20
+ location,
21
+ elevation,
22
+ gain,
23
+ hash: leaf.toBuffer().toJSON().data,
24
+ root: root.toBuffer().toJSON().data,
25
+ index: nodeIndex,
26
+ })
27
+ .accounts({
28
+ // hotspot: assetId,
29
+ hotspotConfig,
30
+ hotspotOwner: owner,
31
+ info,
32
+ merkleTree: treeId,
33
+ })
34
+ .remainingAccounts(proof.map((p) => {
35
+ return {
36
+ pubkey: p,
37
+ isWritable: false,
38
+ isSigner: false,
39
+ };
40
+ }));
41
+ }
42
+ //# sourceMappingURL=updateMetadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateMetadata.js","sourceRoot":"","sources":["../../../../src/functions/updateMetadata.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,QAAQ,EAAE,aAAa,EAAc,MAAM,mBAAmB,CAAC;AAI/E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EACnC,OAAO,EACP,aAAa,EACb,OAAO,EACP,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,aAAa,EACb,UAAU,GAAG,QAAQ,EACrB,eAAe,GAAG,aAAa,GAchC;IACC,aAAa;IACb,MAAM,QAAQ,GAAG,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;IAC3E,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClD,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;KAC3D;IACD,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC5D,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;KACjE;IACD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;IAC5D,MAAM,EACJ,SAAS,EAAE,EAAE,KAAK,EAAE,EACpB,OAAO,EAAE,EAAE,GAAG,EAAE,GACjB,GAAG,KAAK,CAAC;IACV,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/C,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAErD,OAAO,OAAO,CAAC,OAAO;SACnB,eAAe,CAAC;QACf,QAAQ;QACR,SAAS;QACT,IAAI;QACJ,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;QACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI;QACnC,KAAK,EAAE,SAAS;KACjB,CAAC;SACD,QAAQ,CAAC;QACR,oBAAoB;QACpB,aAAa;QACb,YAAY,EAAE,KAAK;QACnB,IAAI;QACJ,UAAU,EAAE,MAAM;KACnB,CAAC;SACD,iBAAiB,CAChB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACd,OAAO;YACL,MAAM,EAAE,CAAC;YACT,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,KAAK;SAChB,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACN,CAAC"}
@@ -4,7 +4,7 @@ import { heliumEntityManagerResolvers } from "./resolvers";
4
4
  export * from "./pdas";
5
5
  export * from "./resolvers";
6
6
  export * from "./constants";
7
- export { changeMetadata } from "./functions/changeMetadata";
7
+ export { updateMetadata } from "./functions/updateMetadata";
8
8
  export const init = async (provider, programId = PROGRAM_ID, idl) => {
9
9
  if (!idl) {
10
10
  idl = await Program.fetchIdl(programId, provider);
@@ -13,13 +13,13 @@ export const hotspotIssuerKey = (hotspotConfig, maker, programId = PROGRAM_ID) =
13
13
  hotspotConfig.toBuffer(),
14
14
  maker.toBuffer(),
15
15
  ], programId);
16
- export const hotspotStorageKey = (hotspotConfig, hotspotKey, programId = PROGRAM_ID) => {
16
+ export const iotInfoKey = (hotspotConfig, hotspotKey, programId = PROGRAM_ID) => {
17
17
  let hexString = crypto
18
18
  .createHash("sha256")
19
19
  .update(hotspotKey, "utf-8")
20
20
  .digest("hex");
21
21
  let seed = Uint8Array.from(Buffer.from(hexString, "hex"));
22
- return PublicKey.findProgramAddressSync([Buffer.from("storage", "utf-8"), hotspotConfig.toBuffer(), seed], programId);
22
+ return PublicKey.findProgramAddressSync([Buffer.from("iot_info", "utf-8"), hotspotConfig.toBuffer(), seed], programId);
23
23
  };
24
24
  export const collectionMetadataKey = (collection, programId = TOKEN_METADATA_PROGRAM_ID) => PublicKey.findProgramAddressSync([
25
25
  Buffer.from("metadata", "utf-8"),
@@ -1 +1 @@
1
- {"version":3,"file":"pdas.js","sourceRoot":"","sources":["../../../src/pdas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,IAAI,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAClG,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,MAAiB,EACjB,MAAc,EACd,YAAuB,UAAU,EACjC,EAAE,CACF,SAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACtC,MAAM,CAAC,QAAQ,EAAE;IACjB,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;CAC7B,EACD,SAAS,CACV,CAAC;AAEJ,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAiB,EACjB,MAAc,EACd,YAAuB,UAAU,EACjC,EAAE,CACF,SAAS,CAAC,sBAAsB,CAC9B,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACrF,SAAS,CACV,CAAC;AAEJ,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,aAAwB,EACxB,KAAgB,EAChB,YAAuB,UAAU,EACjC,EAAE,CACF,SAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACtC,aAAa,CAAC,QAAQ,EAAE;IACxB,KAAK,CAAC,QAAQ,EAAE;CACjB,EACD,SAAS,CACV,CAAC;AAEJ,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,aAAwB,EACxB,UAAkB,EAClB,YAAuB,UAAU,EACjC,EAAE;IACF,IAAI,SAAS,GAAG,MAAM;SACnB,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC;SAC3B,MAAM,CAAC,KAAK,CAAC,CAAC;IACjB,IAAI,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAE1D,OAAO,SAAS,CAAC,sBAAsB,CACrC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,EACjE,SAAS,CACV,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,UAAqB,EACrB,YAAuB,yBAAyB,EAChD,EAAE,CACF,SAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,QAAQ,EAAE;IACpB,UAAU,CAAC,QAAQ,EAAE;CACtB,EACD,SAAS,CACV,CAAC"}
1
+ {"version":3,"file":"pdas.js","sourceRoot":"","sources":["../../../src/pdas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,IAAI,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAClG,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,MAAiB,EACjB,MAAc,EACd,YAAuB,UAAU,EACjC,EAAE,CACF,SAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACtC,MAAM,CAAC,QAAQ,EAAE;IACjB,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;CAC7B,EACD,SAAS,CACV,CAAC;AAEJ,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAiB,EACjB,MAAc,EACd,YAAuB,UAAU,EACjC,EAAE,CACF,SAAS,CAAC,sBAAsB,CAC9B,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACrF,SAAS,CACV,CAAC;AAEJ,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,aAAwB,EACxB,KAAgB,EAChB,YAAuB,UAAU,EACjC,EAAE,CACF,SAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACtC,aAAa,CAAC,QAAQ,EAAE;IACxB,KAAK,CAAC,QAAQ,EAAE;CACjB,EACD,SAAS,CACV,CAAC;AAEJ,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,aAAwB,EACxB,UAAkB,EAClB,YAAuB,UAAU,EACjC,EAAE;IACF,IAAI,SAAS,GAAG,MAAM;SACnB,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC;SAC3B,MAAM,CAAC,KAAK,CAAC,CAAC;IACjB,IAAI,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAE1D,OAAO,SAAS,CAAC,sBAAsB,CACrC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,EAClE,SAAS,CACV,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,UAAqB,EACrB,YAAuB,yBAAyB,EAChD,EAAE,CACF,SAAS,CAAC,sBAAsB,CAC9B;IACE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,QAAQ,EAAE;IACpB,UAAU,CAAC,QAAQ,EAAE;CACtB,EACD,SAAS,CACV,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { subDaoEpochInfoResolver } from "@helium/helium-sub-daos-sdk";
2
2
  import { ataResolver, combineResolvers, heliumCommonResolver, resolveIndividual, } from "@helium/spl-utils";
3
- import { hotspotStorageKey } from "./pdas";
3
+ import { iotInfoKey } from "./pdas";
4
4
  import { getAssociatedTokenAddress } from "@solana/spl-token";
5
5
  export const heliumEntityManagerResolvers = combineResolvers(heliumCommonResolver, ataResolver({
6
6
  instruction: "initializeHotspotConfigV0",
@@ -8,10 +8,10 @@ export const heliumEntityManagerResolvers = combineResolvers(heliumCommonResolve
8
8
  mint: "collection",
9
9
  owner: "hotspotConfig",
10
10
  }), resolveIndividual(async ({ path, args, provider, accounts }) => {
11
- if (path[path.length - 1] === "storage" &&
11
+ if (path[path.length - 1] === "info" &&
12
12
  args[args.length - 1].hotspotKey &&
13
13
  accounts.hotspotConfig) {
14
- return hotspotStorageKey(accounts.hotspotConfig, args[args.length - 1].hotspotKey)[0];
14
+ return iotInfoKey(accounts.hotspotConfig, args[args.length - 1].hotspotKey)[0];
15
15
  }
16
16
  else if (path[path.length - 1] === "recipient") {
17
17
  // @ts-ignore
@@ -22,17 +22,17 @@ export const heliumEntityManagerResolvers = combineResolvers(heliumCommonResolve
22
22
  return getAssociatedTokenAddress(accounts.hotspot, (accounts.owner || accounts.hotspotOwner));
23
23
  }
24
24
  }), ataResolver({
25
- instruction: "issueHotspotV0",
25
+ instruction: "issueIotHotspotV0",
26
26
  account: "recipientTokenAccount",
27
27
  mint: "hotspot",
28
28
  owner: "hotspotOwner",
29
29
  }), ataResolver({
30
- instruction: "issueHotspotV0",
30
+ instruction: "issueIotHotspotV0",
31
31
  account: "dcBurner",
32
32
  mint: "dcMint",
33
33
  owner: "dcFeePayer",
34
34
  }), ataResolver({
35
- instruction: "changeMetadataV0",
35
+ instruction: "updateIotInfoV0",
36
36
  account: "ownerDcAta",
37
37
  mint: "dcMint",
38
38
  owner: "hotspotOwner",
@@ -1 +1 @@
1
- {"version":3,"file":"resolvers.js","sourceRoot":"","sources":["../../../src/resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAG9D,MAAM,CAAC,MAAM,4BAA4B,GAAG,gBAAgB,CAC1D,oBAAoB,EACpB,WAAW,CAAC;IACV,WAAW,EAAE,2BAA2B;IACxC,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,eAAe;CACvB,CAAC,EACF,iBAAiB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7D,IACE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,SAAS;QACnC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU;QAChC,QAAQ,CAAC,aAAa,EACtB;QACA,OAAO,iBAAiB,CAAC,QAAQ,CAAC,aAA0B,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;KACpG;SAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,WAAW,EAAE;QAChD,aAAa;QACb,OAAO,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;KACnC;AACH,CAAC,CAAC,EACF,iBAAiB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7C,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,iBAAiB,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE;QAChH,OAAO,yBAAyB,CAAC,QAAQ,CAAC,OAAoB,EAAE,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,YAAY,CAAc,CAAC,CAAA;KACxH;AACH,CAAC,CAAC,EACF,WAAW,CAAC;IACV,WAAW,EAAE,gBAAgB;IAC7B,OAAO,EAAE,uBAAuB;IAChC,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,cAAc;CACtB,CAAC,EACF,WAAW,CAAC;IACV,WAAW,EAAE,gBAAgB;IAC7B,OAAO,EAAE,UAAU;IACnB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,YAAY;CACpB,CAAC,EACF,WAAW,CAAC;IACV,WAAW,EAAE,kBAAkB;IAC/B,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,cAAc;CACtB,CAAC,EACF,uBAAuB,CACxB,CAAC"}
1
+ {"version":3,"file":"resolvers.js","sourceRoot":"","sources":["../../../src/resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAG9D,MAAM,CAAC,MAAM,4BAA4B,GAAG,gBAAgB,CAC1D,oBAAoB,EACpB,WAAW,CAAC;IACV,WAAW,EAAE,2BAA2B;IACxC,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,eAAe;CACvB,CAAC,EACF,iBAAiB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7D,IACE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,MAAM;QAChC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU;QAChC,QAAQ,CAAC,aAAa,EACtB;QACA,OAAO,UAAU,CAAC,QAAQ,CAAC,aAA0B,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;KAC7F;SAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,WAAW,EAAE;QAChD,aAAa;QACb,OAAO,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;KACnC;AACH,CAAC,CAAC,EACF,iBAAiB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7C,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,iBAAiB,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE;QAChH,OAAO,yBAAyB,CAAC,QAAQ,CAAC,OAAoB,EAAE,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,YAAY,CAAc,CAAC,CAAA;KACxH;AACH,CAAC,CAAC,EACF,WAAW,CAAC;IACV,WAAW,EAAE,mBAAmB;IAChC,OAAO,EAAE,uBAAuB;IAChC,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,cAAc;CACtB,CAAC,EACF,WAAW,CAAC;IACV,WAAW,EAAE,mBAAmB;IAChC,OAAO,EAAE,UAAU;IACnB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,YAAY;CACpB,CAAC,EACF,WAAW,CAAC;IACV,WAAW,EAAE,iBAAiB;IAC9B,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,cAAc;CACtB,CAAC,EACF,uBAAuB,CACxB,CAAC"}