@bsv/templates 1.4.1 → 1.6.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 (52) hide show
  1. package/dist/cjs/mod.js +5 -1
  2. package/dist/cjs/mod.js.map +1 -1
  3. package/dist/cjs/package.json +14 -7
  4. package/dist/cjs/src/MandalaAdmin.js +84 -0
  5. package/dist/cjs/src/MandalaAdmin.js.map +1 -0
  6. package/dist/cjs/src/MandalaToken.js +84 -0
  7. package/dist/cjs/src/MandalaToken.js.map +1 -0
  8. package/dist/cjs/src/MultiPushDrop.js +4 -21
  9. package/dist/cjs/src/MultiPushDrop.js.map +1 -1
  10. package/dist/cjs/src/mandala-encoding.js +82 -0
  11. package/dist/cjs/src/mandala-encoding.js.map +1 -0
  12. package/dist/cjs/src/mandala-signing.js +43 -0
  13. package/dist/cjs/src/mandala-signing.js.map +1 -0
  14. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  15. package/dist/esm/mod.js +2 -0
  16. package/dist/esm/mod.js.map +1 -1
  17. package/dist/esm/src/MandalaAdmin.js +81 -0
  18. package/dist/esm/src/MandalaAdmin.js.map +1 -0
  19. package/dist/esm/src/MandalaToken.js +81 -0
  20. package/dist/esm/src/MandalaToken.js.map +1 -0
  21. package/dist/esm/src/MultiPushDrop.js +1 -18
  22. package/dist/esm/src/MultiPushDrop.js.map +1 -1
  23. package/dist/esm/src/mandala-encoding.js +72 -0
  24. package/dist/esm/src/mandala-encoding.js.map +1 -0
  25. package/dist/esm/src/mandala-signing.js +39 -0
  26. package/dist/esm/src/mandala-signing.js.map +1 -0
  27. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  28. package/dist/types/mod.d.ts +4 -0
  29. package/dist/types/mod.d.ts.map +1 -1
  30. package/dist/types/src/MandalaAdmin.d.ts +27 -0
  31. package/dist/types/src/MandalaAdmin.d.ts.map +1 -0
  32. package/dist/types/src/MandalaToken.d.ts +16 -0
  33. package/dist/types/src/MandalaToken.d.ts.map +1 -0
  34. package/dist/types/src/MultiPushDrop.d.ts.map +1 -1
  35. package/dist/types/src/mandala-encoding.d.ts +10 -0
  36. package/dist/types/src/mandala-encoding.d.ts.map +1 -0
  37. package/dist/types/src/mandala-signing.d.ts +10 -0
  38. package/dist/types/src/mandala-signing.d.ts.map +1 -0
  39. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  40. package/mod.ts +4 -0
  41. package/package.json +14 -7
  42. package/src/MandalaAdmin.ts +107 -0
  43. package/src/MandalaToken.ts +102 -0
  44. package/src/MultiPushDrop.ts +1 -14
  45. package/src/__tests/MandalaAdmin.derive.test.ts +34 -0
  46. package/src/__tests/MandalaAdmin.script.test.ts +26 -0
  47. package/src/__tests/MandalaToken.test.ts +43 -0
  48. package/src/__tests/MandalaToken.unlock.test.ts +31 -0
  49. package/src/__tests/exports.test.ts +9 -0
  50. package/src/__tests/mandala-encoding.test.ts +32 -0
  51. package/src/mandala-encoding.ts +64 -0
  52. package/src/mandala-signing.ts +41 -0
@@ -0,0 +1,16 @@
1
+ import { ScriptTemplate, ScriptTemplateUnlock, LockingScript, WalletInterface, WalletProtocol, WalletCounterparty, PrivateKey } from '@bsv/sdk';
2
+ export interface MandalaTokenDecoded {
3
+ assetId: string;
4
+ amount: number;
5
+ pubKeyHash: number[];
6
+ }
7
+ export declare class MandalaToken implements ScriptTemplate {
8
+ wallet?: WalletInterface;
9
+ originator?: string;
10
+ constructor(wallet?: WalletInterface, originator?: string);
11
+ lockBRC29(assetId: string, amount: number, protocolID: WalletProtocol, keyID: string, counterparty: WalletCounterparty): Promise<LockingScript>;
12
+ lock(assetId: string, amount: number, pubKeyHash: number[]): LockingScript;
13
+ unlock(privateKey: PrivateKey, signOutputs?: 'all' | 'none' | 'single', anyoneCanPay?: boolean): ScriptTemplateUnlock;
14
+ static decode(script: LockingScript): MandalaTokenDecoded;
15
+ }
16
+ //# sourceMappingURL=MandalaToken.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MandalaToken.d.ts","sourceRoot":"","sources":["../../../src/MandalaToken.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAAE,oBAAoB,EAAE,aAAa,EACnD,eAAe,EAAE,cAAc,EAAE,kBAAkB,EAC7B,UAAU,EACjC,MAAM,UAAU,CAAA;AAajB,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB;AAED,qBAAa,YAAa,YAAW,cAAc;IACjD,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,UAAU,CAAC,EAAE,MAAM,CAAA;gBAEN,MAAM,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,MAAM;IAKpD,SAAS,CACb,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,cAAc,EAC1B,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,kBAAkB,GAC/B,OAAO,CAAC,aAAa,CAAC;IAOzB,IAAI,CAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,aAAa;IAkB3E,MAAM,CACJ,UAAU,EAAE,UAAU,EACtB,WAAW,GAAE,KAAK,GAAG,MAAM,GAAG,QAAgB,EAC9C,YAAY,UAAQ,GACnB,oBAAoB;IAkBvB,MAAM,CAAC,MAAM,CAAE,MAAM,EAAE,aAAa,GAAG,mBAAmB;CAgB3D"}
@@ -1 +1 @@
1
- {"version":3,"file":"MultiPushDrop.d.ts","sourceRoot":"","sources":["../../../src/MultiPushDrop.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,aAAa,EAGb,oBAAoB,EAKpB,eAAe,EAAE,aAAa,EAAE,kBAAkB,EAElD,SAAS,EACV,MAAM,UAAU,CAAA;AAsBjB;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,EAAE,SAAS,EAAE,CAAA;IAC9B,MAAM,EAAE,MAAM,EAAE,EAAE,CAAA;CACnB;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,aAAc,YAAW,cAAc;IAClD,MAAM,EAAE,eAAe,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;;;;SAKK;IACL,MAAM,CAAC,MAAM,CAAE,MAAM,EAAE,aAAa,GAAG,oBAAoB;IAoD3D;;;;;QAKI;gBACS,MAAM,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,MAAM;IAKzD;;;;;;;;;QASI;IACE,IAAI,CACR,MAAM,EAAE,MAAM,EAAE,EAAE,EAClB,UAAU,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,EACnC,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,kBAAkB,EAAE,GACnC,OAAO,CAAC,aAAa,CAAC;IAkEzB;;;;;;;;;;SAUK;IACL,MAAM,CACJ,UAAU,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,EACnC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,kBAAkB,EAC3B,WAAW,GAAE,KAAK,GAAG,MAAM,GAAG,QAAgB,EAC9C,YAAY,UAAQ,GACnB,oBAAoB;CAiFxB"}
1
+ {"version":3,"file":"MultiPushDrop.d.ts","sourceRoot":"","sources":["../../../src/MultiPushDrop.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,aAAa,EAGb,oBAAoB,EAKpB,eAAe,EAAE,aAAa,EAAE,kBAAkB,EAElD,SAAS,EACV,MAAM,UAAU,CAAA;AASjB;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,EAAE,SAAS,EAAE,CAAA;IAC9B,MAAM,EAAE,MAAM,EAAE,EAAE,CAAA;CACnB;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,aAAc,YAAW,cAAc;IAClD,MAAM,EAAE,eAAe,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;;;;SAKK;IACL,MAAM,CAAC,MAAM,CAAE,MAAM,EAAE,aAAa,GAAG,oBAAoB;IAoD3D;;;;;QAKI;gBACS,MAAM,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,MAAM;IAKzD;;;;;;;;;QASI;IACE,IAAI,CACR,MAAM,EAAE,MAAM,EAAE,EAAE,EAClB,UAAU,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,EACnC,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,kBAAkB,EAAE,GACnC,OAAO,CAAC,aAAa,CAAC;IAkEzB;;;;;;;;;;SAUK;IACL,MAAM,CACJ,UAAU,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,EACnC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,kBAAkB,EAC3B,WAAW,GAAE,KAAK,GAAG,MAAM,GAAG,QAAgB,EAC9C,YAAY,UAAQ,GACnB,oBAAoB;CAiFxB"}
@@ -0,0 +1,10 @@
1
+ export declare const MARKER = 33;
2
+ export declare const createMinimallyEncodedScriptChunk: (data: number[]) => {
3
+ op: number;
4
+ data?: number[];
5
+ };
6
+ export declare const encodeScriptNum: (value: number) => number[];
7
+ export declare const decodeScriptNum: (data: number[]) => number;
8
+ export declare const encodeAssetId: (assetId: string) => number[];
9
+ export declare const decodeAssetId: (bytes: number[]) => string;
10
+ //# sourceMappingURL=mandala-encoding.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mandala-encoding.d.ts","sourceRoot":"","sources":["../../../src/mandala-encoding.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,KAAO,CAAA;AAE1B,eAAO,MAAM,iCAAiC,GAC5C,MAAM,MAAM,EAAE,KACb;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAS/B,CAAA;AAGD,eAAO,MAAM,eAAe,GAAI,OAAO,MAAM,KAAG,MAAM,EAerD,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,KAAG,MAQhD,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,SAAS,MAAM,KAAG,MAAM,EAUrD,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,EAAE,KAAG,MAM/C,CAAA"}
@@ -0,0 +1,10 @@
1
+ import { Transaction } from '@bsv/sdk';
2
+ export type SignOutputs = 'all' | 'none' | 'single';
3
+ /**
4
+ * Builds the BIP143 sighash preimage and scope shared by the Mandala unlock templates.
5
+ */
6
+ export declare function buildSighashPreimage(tx: Transaction, inputIndex: number, signOutputs: SignOutputs, anyoneCanPay: boolean): {
7
+ preimage: number[];
8
+ scope: number;
9
+ };
10
+ //# sourceMappingURL=mandala-signing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mandala-signing.d.ts","sourceRoot":"","sources":["../../../src/mandala-signing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAwB,MAAM,UAAU,CAAA;AAE5D,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAA;AAEnD;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,WAAW,EACf,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,OAAO,GACpB;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CA4BvC"}