@cardano-sdk/key-management 0.7.0 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"ownSignatureKeyPaths.d.ts","sourceRoot":"","sources":["../../../src/util/ownSignatureKeyPaths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAiE5C,eAAO,MAAM,oBAAoB,WACvB,QAAQ,MAAM,kBACN,cAAc,EAAE,iBACjB,QAAQ,aAAa,KACnC,QAAQ,wBAAwB,EAAE,CAepC,CAAC"}
1
+ {"version":3,"file":"ownSignatureKeyPaths.d.ts","sourceRoot":"","sources":["../../../src/util/ownSignatureKeyPaths.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAoG5C,eAAO,MAAM,oBAAoB,WACvB,QAAQ,MAAM,kBACN,cAAc,EAAE,iBACjB,QAAQ,aAAa,KACnC,QAAQ,wBAAwB,EAAE,CAsBpC,CAAC"}
@@ -1,7 +1,9 @@
1
1
  import { Cardano } from '@cardano-sdk/core';
2
2
  import { isNotNil } from '@cardano-sdk/util';
3
+ import isEqual from 'lodash/isEqual';
3
4
  import uniq from 'lodash/uniq';
4
5
  import uniqBy from 'lodash/uniqBy';
6
+ import uniqWith from 'lodash/uniqWith';
5
7
  const getStakingKeyPaths = (groupedAddresses, txBody) => {
6
8
  const paths = new Set();
7
9
  const uniqueAccounts = uniqBy(groupedAddresses, 'rewardAccount');
@@ -43,6 +45,24 @@ const getStakingKeyPaths = (groupedAddresses, txBody) => {
43
45
  }
44
46
  return paths;
45
47
  };
48
+ const getRequiredSignersKeyPaths = (groupedAddresses, keyHashes) => {
49
+ const paths = new Set();
50
+ if (!keyHashes)
51
+ return paths;
52
+ for (const keyHash of keyHashes) {
53
+ for (const address of groupedAddresses) {
54
+ const paymentCredential = Cardano.Address.fromBech32(address.address)?.asBase()?.getPaymentCredential().hash;
55
+ const stakingCredential = Cardano.RewardAccount.toHash(address.rewardAccount);
56
+ if (paymentCredential && paymentCredential.toString() === keyHash) {
57
+ paths.add({ index: address.index, role: Number(address.type) });
58
+ }
59
+ if (stakingCredential && address.stakeKeyDerivationPath && stakingCredential.toString() === keyHash) {
60
+ paths.add(address.stakeKeyDerivationPath);
61
+ }
62
+ }
63
+ }
64
+ return paths;
65
+ };
46
66
  export const ownSignatureKeyPaths = async (txBody, knownAddresses, inputResolver) => {
47
67
  const txInputs = [...txBody.inputs, ...(txBody.collaterals ? txBody.collaterals : [])];
48
68
  const paymentKeyPaths = uniq((await Promise.all(txInputs.map(async (input) => {
@@ -51,6 +71,10 @@ export const ownSignatureKeyPaths = async (txBody, knownAddresses, inputResolver
51
71
  return null;
52
72
  return knownAddresses.find(({ address }) => address === resolution.address);
53
73
  }))).filter(isNotNil)).map(({ type, index }) => ({ index, role: Number(type) }));
54
- return [...paymentKeyPaths, ...getStakingKeyPaths(knownAddresses, txBody)];
74
+ return uniqWith([
75
+ ...paymentKeyPaths,
76
+ ...getStakingKeyPaths(knownAddresses, txBody),
77
+ ...getRequiredSignersKeyPaths(knownAddresses, txBody.requiredExtraSignatures)
78
+ ], isEqual);
55
79
  };
56
80
  //# sourceMappingURL=ownSignatureKeyPaths.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ownSignatureKeyPaths.js","sourceRoot":"","sources":["../../../src/util/ownSignatureKeyPaths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ownSignatureKeyPaths.js","sourceRoot":"","sources":["../../../src/util/ownSignatureKeyPaths.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cardano-sdk/key-management",
3
- "version": "0.7.0",
3
+ "version": "0.7.2",
4
4
  "description": "Key management types and utilities for Cardano",
5
5
  "engines": {
6
6
  "node": ">=14.20.1"
@@ -18,15 +18,6 @@
18
18
  "access": "public"
19
19
  },
20
20
  "sideEffects": false,
21
- "contributors": [
22
- "Rhys Bartels-Waller <rhys.bartelswaller@iohk.io> (https://iohk.io)",
23
- "Martynas Kazlauskas <martynas.kazlauskas@iohk.io> (https://iohk.io)",
24
- "Daniele Ricci <daniele.ricci@iohk.io> (https://iohk.io)",
25
- "Ivaylo Andonov <ivaylo.andonov@iohk.io> (https://iohk.io)",
26
- "Mircea Hasegan <mircea.hasegan@iohk.io> (https://iohk.io)",
27
- "Angel Castillo Bacigalupi <angel.castillo@iohk.io> (https://iohk.io)",
28
- "Dmytro Iakymenko <dmytro.iakymenko@iohk.io> (https://iohk.io)"
29
- ],
30
21
  "license": "Apache-2.0",
31
22
  "scripts": {
32
23
  "build:esm": "tsc -p src/tsconfig.json --outDir ./dist/esm --module es2020",
@@ -47,7 +38,7 @@
47
38
  "prepack": "yarn build"
48
39
  },
49
40
  "devDependencies": {
50
- "@cardano-sdk/util-dev": "~0.11.0",
41
+ "@cardano-sdk/util-dev": "~0.12.0",
51
42
  "@types/lodash": "^4.14.182",
52
43
  "@types/pbkdf2": "^3.1.0",
53
44
  "eslint": "^7.32.0",
@@ -61,10 +52,10 @@
61
52
  },
62
53
  "dependencies": {
63
54
  "@cardano-foundation/ledgerjs-hw-app-cardano": "^6.0.0",
64
- "@cardano-sdk/core": "~0.12.1",
65
- "@cardano-sdk/crypto": "~0.1.5",
66
- "@cardano-sdk/dapp-connector": "~0.9.2",
67
- "@cardano-sdk/util": "~0.10.0",
55
+ "@cardano-sdk/core": "~0.13.0",
56
+ "@cardano-sdk/crypto": "~0.1.6",
57
+ "@cardano-sdk/dapp-connector": "~0.9.4",
58
+ "@cardano-sdk/util": "~0.11.0",
68
59
  "@emurgo/cardano-message-signing-nodejs": "^1.0.1",
69
60
  "bip39": "^3.0.4",
70
61
  "chacha": "^2.1.0",
@@ -82,5 +73,5 @@
82
73
  "LICENSE",
83
74
  "NOTICE"
84
75
  ],
85
- "gitHead": "60f332ad2addb2d912bb8e8a88e7f8dc161b327a"
76
+ "gitHead": "c7c3523ee84b5ec53d781b0e05511c2312fd6397"
86
77
  }