@cardano-sdk/projection 0.7.3 → 0.8.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.
Files changed (89) hide show
  1. package/dist/cjs/operators/Mappers/certificates/index.d.ts +1 -0
  2. package/dist/cjs/operators/Mappers/certificates/index.d.ts.map +1 -1
  3. package/dist/cjs/operators/Mappers/certificates/index.js +1 -0
  4. package/dist/cjs/operators/Mappers/certificates/index.js.map +1 -1
  5. package/dist/cjs/operators/Mappers/certificates/withStakeKeyRegistrations.d.ts +12 -0
  6. package/dist/cjs/operators/Mappers/certificates/withStakeKeyRegistrations.d.ts.map +1 -0
  7. package/dist/cjs/operators/Mappers/certificates/withStakeKeyRegistrations.js +21 -0
  8. package/dist/cjs/operators/Mappers/certificates/withStakeKeyRegistrations.js.map +1 -0
  9. package/dist/cjs/operators/Mappers/index.d.ts +4 -0
  10. package/dist/cjs/operators/Mappers/index.d.ts.map +1 -1
  11. package/dist/cjs/operators/Mappers/index.js +4 -0
  12. package/dist/cjs/operators/Mappers/index.js.map +1 -1
  13. package/dist/cjs/operators/Mappers/util.d.ts +2 -1
  14. package/dist/cjs/operators/Mappers/util.d.ts.map +1 -1
  15. package/dist/cjs/operators/Mappers/util.js +9 -7
  16. package/dist/cjs/operators/Mappers/util.js.map +1 -1
  17. package/dist/cjs/operators/Mappers/withAddresses.d.ts +14 -0
  18. package/dist/cjs/operators/Mappers/withAddresses.d.ts.map +1 -0
  19. package/dist/cjs/operators/Mappers/withAddresses.js +50 -0
  20. package/dist/cjs/operators/Mappers/withAddresses.js.map +1 -0
  21. package/dist/cjs/operators/Mappers/withCIP67.d.ts +18 -0
  22. package/dist/cjs/operators/Mappers/withCIP67.d.ts.map +1 -0
  23. package/dist/cjs/operators/Mappers/withCIP67.js +35 -0
  24. package/dist/cjs/operators/Mappers/withCIP67.js.map +1 -0
  25. package/dist/cjs/operators/Mappers/withHandleMetadata.d.ts +22 -0
  26. package/dist/cjs/operators/Mappers/withHandleMetadata.d.ts.map +1 -0
  27. package/dist/cjs/operators/Mappers/withHandleMetadata.js +62 -0
  28. package/dist/cjs/operators/Mappers/withHandleMetadata.js.map +1 -0
  29. package/dist/cjs/operators/Mappers/withHandles.d.ts +8 -6
  30. package/dist/cjs/operators/Mappers/withHandles.d.ts.map +1 -1
  31. package/dist/cjs/operators/Mappers/withHandles.js +40 -42
  32. package/dist/cjs/operators/Mappers/withHandles.js.map +1 -1
  33. package/dist/cjs/operators/Mappers/withMint.d.ts +2 -0
  34. package/dist/cjs/operators/Mappers/withMint.d.ts.map +1 -1
  35. package/dist/cjs/operators/Mappers/withMint.js +4 -2
  36. package/dist/cjs/operators/Mappers/withMint.js.map +1 -1
  37. package/dist/cjs/operators/Mappers/withNftMetadata.d.ts +17 -0
  38. package/dist/cjs/operators/Mappers/withNftMetadata.d.ts.map +1 -0
  39. package/dist/cjs/operators/Mappers/withNftMetadata.js +38 -0
  40. package/dist/cjs/operators/Mappers/withNftMetadata.js.map +1 -0
  41. package/dist/cjs/operators/Mappers/withUtxo.d.ts +2 -1
  42. package/dist/cjs/operators/Mappers/withUtxo.d.ts.map +1 -1
  43. package/dist/cjs/operators/Mappers/withUtxo.js.map +1 -1
  44. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  45. package/dist/esm/operators/Mappers/certificates/index.d.ts +1 -0
  46. package/dist/esm/operators/Mappers/certificates/index.d.ts.map +1 -1
  47. package/dist/esm/operators/Mappers/certificates/index.js +1 -0
  48. package/dist/esm/operators/Mappers/certificates/index.js.map +1 -1
  49. package/dist/esm/operators/Mappers/certificates/withStakeKeyRegistrations.d.ts +12 -0
  50. package/dist/esm/operators/Mappers/certificates/withStakeKeyRegistrations.d.ts.map +1 -0
  51. package/dist/esm/operators/Mappers/certificates/withStakeKeyRegistrations.js +18 -0
  52. package/dist/esm/operators/Mappers/certificates/withStakeKeyRegistrations.js.map +1 -0
  53. package/dist/esm/operators/Mappers/index.d.ts +4 -0
  54. package/dist/esm/operators/Mappers/index.d.ts.map +1 -1
  55. package/dist/esm/operators/Mappers/index.js +4 -0
  56. package/dist/esm/operators/Mappers/index.js.map +1 -1
  57. package/dist/esm/operators/Mappers/util.d.ts +2 -1
  58. package/dist/esm/operators/Mappers/util.d.ts.map +1 -1
  59. package/dist/esm/operators/Mappers/util.js +7 -5
  60. package/dist/esm/operators/Mappers/util.js.map +1 -1
  61. package/dist/esm/operators/Mappers/withAddresses.d.ts +14 -0
  62. package/dist/esm/operators/Mappers/withAddresses.d.ts.map +1 -0
  63. package/dist/esm/operators/Mappers/withAddresses.js +44 -0
  64. package/dist/esm/operators/Mappers/withAddresses.js.map +1 -0
  65. package/dist/esm/operators/Mappers/withCIP67.d.ts +18 -0
  66. package/dist/esm/operators/Mappers/withCIP67.d.ts.map +1 -0
  67. package/dist/esm/operators/Mappers/withCIP67.js +29 -0
  68. package/dist/esm/operators/Mappers/withCIP67.js.map +1 -0
  69. package/dist/esm/operators/Mappers/withHandleMetadata.d.ts +22 -0
  70. package/dist/esm/operators/Mappers/withHandleMetadata.d.ts.map +1 -0
  71. package/dist/esm/operators/Mappers/withHandleMetadata.js +58 -0
  72. package/dist/esm/operators/Mappers/withHandleMetadata.js.map +1 -0
  73. package/dist/esm/operators/Mappers/withHandles.d.ts +8 -6
  74. package/dist/esm/operators/Mappers/withHandles.d.ts.map +1 -1
  75. package/dist/esm/operators/Mappers/withHandles.js +41 -43
  76. package/dist/esm/operators/Mappers/withHandles.js.map +1 -1
  77. package/dist/esm/operators/Mappers/withMint.d.ts +2 -0
  78. package/dist/esm/operators/Mappers/withMint.d.ts.map +1 -1
  79. package/dist/esm/operators/Mappers/withMint.js +4 -2
  80. package/dist/esm/operators/Mappers/withMint.js.map +1 -1
  81. package/dist/esm/operators/Mappers/withNftMetadata.d.ts +17 -0
  82. package/dist/esm/operators/Mappers/withNftMetadata.d.ts.map +1 -0
  83. package/dist/esm/operators/Mappers/withNftMetadata.js +31 -0
  84. package/dist/esm/operators/Mappers/withNftMetadata.js.map +1 -0
  85. package/dist/esm/operators/Mappers/withUtxo.d.ts +2 -1
  86. package/dist/esm/operators/Mappers/withUtxo.d.ts.map +1 -1
  87. package/dist/esm/operators/Mappers/withUtxo.js.map +1 -1
  88. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  89. package/package.json +8 -8
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.withNftMetadata = void 0;
7
+ const core_1 = require("@cardano-sdk/core");
8
+ const util_1 = require("@cardano-sdk/util");
9
+ const rxjs_1 = require("rxjs");
10
+ const uniqBy_1 = __importDefault(require("lodash/uniqBy"));
11
+ const getNftMetadataFromCip67 = ({ cip67 }, logger) => (cip67.byLabel[core_1.Asset.AssetNameLabelNum.ReferenceNFT] || []).map(({ decoded, assetId, policyId, utxo: [_, { datum }] }) => {
12
+ if (!datum ||
13
+ !core_1.Cardano.util.isConstrPlutusData(datum) ||
14
+ datum.constructor !== 0n ||
15
+ datum.fields.items.length < 3) {
16
+ return null;
17
+ }
18
+ const nftMetadata = core_1.Asset.NftMetadata.fromPlutusData(datum, logger);
19
+ if (!nftMetadata)
20
+ return null;
21
+ const userTokenAssetName = core_1.Asset.AssetNameLabel.encode(decoded.content, core_1.Asset.AssetNameLabelNum.UserNFT);
22
+ const userTokenAssetId = core_1.Cardano.AssetId.fromParts(policyId, userTokenAssetName);
23
+ return { extra: datum.fields.items[2], nftMetadata, referenceTokenAssetId: assetId, userTokenAssetId };
24
+ });
25
+ const getNftMetadataFromCip25 = ({ mint }, logger) => mint.map(({ assetId, txMetadata, policyId, assetName, quantity }) => {
26
+ if (quantity < 1n)
27
+ return null;
28
+ const nftMetadata = core_1.Asset.NftMetadata.fromMetadatum({ name: assetName, policyId }, txMetadata, logger);
29
+ if (!nftMetadata)
30
+ return null;
31
+ return { nftMetadata, userTokenAssetId: assetId };
32
+ });
33
+ const withNftMetadata = ({ logger }) => (evt$) => evt$.pipe((0, rxjs_1.map)((evt) => {
34
+ const nftMetadata = (0, uniqBy_1.default)([...getNftMetadataFromCip25(evt, logger), ...getNftMetadataFromCip67(evt, logger)].reverse().filter(util_1.isNotNil), ({ userTokenAssetId }) => userTokenAssetId);
35
+ return { ...evt, nftMetadata };
36
+ }));
37
+ exports.withNftMetadata = withNftMetadata;
38
+ //# sourceMappingURL=withNftMetadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withNftMetadata.js","sourceRoot":"","sources":["../../../../src/operators/Mappers/withNftMetadata.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAmD;AAInD,4CAAyD;AAGzD,+BAA2B;AAC3B,2DAAmC;AAmBnC,MAAM,uBAAuB,GAAG,CAAC,EAAE,KAAK,EAAa,EAAE,MAAc,EAAE,EAAE,CACvE,CAAC,KAAK,CAAC,OAAO,CAAC,YAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAC7D,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAA+B,EAAE;IACpF,IACE,CAAC,KAAK;QACN,CAAC,cAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;QACvC,KAAK,CAAC,WAAW,KAAK,EAAE;QACxB,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAC7B;QACA,OAAO,IAAI,CAAC;KACb;IACD,MAAM,WAAW,GAAG,YAAK,CAAC,WAAW,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACpE,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,kBAAkB,GAAG,YAAK,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,YAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACzG,MAAM,gBAAgB,GAAG,cAAO,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IACjF,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,qBAAqB,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;AACzG,CAAC,CACF,CAAC;AAEJ,MAAM,uBAAuB,GAAG,CAAC,EAAE,IAAI,EAAY,EAAE,MAAc,EAAE,EAAE,CACrE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,EAA+B,EAAE;IAC/F,IAAI,QAAQ,GAAG,EAAE;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,WAAW,GAAG,YAAK,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAEvG,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9B,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC;AACpD,CAAC,CAAC,CAAC;AAEE,MAAM,eAAe,GAC1B,CAAkD,EAChD,MAAM,EACK,EAAgD,EAAE,CAC/D,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,CACP,IAAA,UAAG,EAAC,CAAC,GAAG,EAAE,EAAE;IACV,MAAM,WAAW,GAAG,IAAA,gBAAM,EACxB,CAAC,GAAG,uBAAuB,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,GAAG,uBAAuB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,eAAQ,CAAC,EAC7G,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC,gBAAgB,CAC3C,CAAC;IACF,OAAO,EAAE,GAAG,GAAG,EAAE,WAAW,EAAE,CAAC;AACjC,CAAC,CAAC,CACH,CAAC;AAbO,QAAA,eAAe,mBAatB"}
@@ -1,9 +1,10 @@
1
1
  import { Cardano } from '@cardano-sdk/core';
2
2
  import { FilterByPolicyIds } from './types';
3
3
  import { ProjectionOperator } from '../../types';
4
+ export declare type ProducedUtxo = [Cardano.TxIn, Cardano.TxOut];
4
5
  export interface WithUtxo {
5
6
  utxo: {
6
- produced: Array<[Cardano.TxIn, Cardano.TxOut]>;
7
+ produced: Array<ProducedUtxo>;
7
8
  consumed: Cardano.TxIn[];
8
9
  };
9
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"withUtxo.d.ts","sourceRoot":"","sources":["../../../../src/operators/Mappers/withUtxo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAIjD,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE;QACJ,QAAQ,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAI/C,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;KAC1B,CAAC;CACH;AAED,eAAO,MAAM,QAAQ,uPAgBnB,CAAC;AAEH,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC;CACrC;AAED,eAAO,MAAM,6BAA6B,4CACE,wBAAwB,oCAO/D,CAAC;AAEN,eAAO,MAAM,iCAAiC,4CACF,iBAAiB,oCAqCxD,CAAC"}
1
+ {"version":3,"file":"withUtxo.d.ts","sourceRoot":"","sources":["../../../../src/operators/Mappers/withUtxo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAIjD,oBAAY,YAAY,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;AAEzD,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE;QACJ,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QAI9B,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;KAC1B,CAAC;CACH;AAED,eAAO,MAAM,QAAQ,uPAgBnB,CAAC;AAEH,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC;CACrC;AAED,eAAO,MAAM,6BAA6B,4CACE,wBAAwB,oCAO/D,CAAC;AAEN,eAAO,MAAM,iCAAiC,4CACF,iBAAiB,oCAqCxD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"withUtxo.js","sourceRoot":"","sources":["../../../../src/operators/Mappers/withUtxo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"withUtxo.js","sourceRoot":"","sources":["../../../../src/operators/Mappers/withUtxo.ts"],"names":[],"mappings":"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"}