@streamflow/common 7.5.3 → 8.0.0-alpha.p284.726ba98

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 (38) hide show
  1. package/dist/cjs/index.cjs +90 -0
  2. package/dist/cjs/index.cjs.map +1 -0
  3. package/dist/cjs/index.d.cts +66 -0
  4. package/dist/cjs/solana/index.cjs +1039 -0
  5. package/dist/cjs/solana/index.cjs.map +1 -0
  6. package/dist/{esm/solana/utils.d.ts → cjs/solana/index.d.cts} +79 -27
  7. package/dist/esm/index.d.ts +66 -3
  8. package/dist/esm/index.js +76 -3
  9. package/dist/esm/index.js.map +1 -0
  10. package/dist/esm/solana/index.d.ts +239 -5
  11. package/dist/esm/solana/index.js +1008 -5
  12. package/dist/esm/solana/index.js.map +1 -0
  13. package/package.json +25 -15
  14. package/dist/cjs/index.js +0 -19
  15. package/dist/cjs/lib/assertions.js +0 -13
  16. package/dist/cjs/lib/utils.js +0 -62
  17. package/dist/cjs/solana/account-filters.js +0 -19
  18. package/dist/cjs/solana/index.js +0 -21
  19. package/dist/cjs/solana/instructions.js +0 -22
  20. package/dist/cjs/solana/public-key.js +0 -13
  21. package/dist/cjs/solana/types.js +0 -11
  22. package/dist/cjs/solana/utils.js +0 -478
  23. package/dist/cjs/types.js +0 -40
  24. package/dist/esm/lib/assertions.d.ts +0 -1
  25. package/dist/esm/lib/assertions.js +0 -9
  26. package/dist/esm/lib/utils.d.ts +0 -28
  27. package/dist/esm/lib/utils.js +0 -51
  28. package/dist/esm/solana/account-filters.d.ts +0 -2
  29. package/dist/esm/solana/account-filters.js +0 -15
  30. package/dist/esm/solana/instructions.d.ts +0 -3
  31. package/dist/esm/solana/instructions.js +0 -18
  32. package/dist/esm/solana/public-key.d.ts +0 -7
  33. package/dist/esm/solana/public-key.js +0 -9
  34. package/dist/esm/solana/types.d.ts +0 -39
  35. package/dist/esm/solana/types.js +0 -7
  36. package/dist/esm/solana/utils.js +0 -450
  37. package/dist/esm/types.d.ts +0 -32
  38. package/dist/esm/types.js +0 -38
@@ -0,0 +1,90 @@
1
+ 'use strict';
2
+
3
+ require('@solana/web3.js');
4
+ var BN = require('bn.js');
5
+
6
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
7
+
8
+ var BN__default = /*#__PURE__*/_interopDefault(BN);
9
+
10
+ // types.ts
11
+ var ICluster = /* @__PURE__ */ ((ICluster2) => {
12
+ ICluster2["Mainnet"] = "mainnet";
13
+ ICluster2["Devnet"] = "devnet";
14
+ ICluster2["Testnet"] = "testnet";
15
+ ICluster2["Local"] = "local";
16
+ return ICluster2;
17
+ })(ICluster || {});
18
+ var IChain = /* @__PURE__ */ ((IChain2) => {
19
+ IChain2["Solana"] = "Solana";
20
+ IChain2["Aptos"] = "Aptos";
21
+ IChain2["Ethereum"] = "Ethereum";
22
+ IChain2["BNB"] = "BNB";
23
+ IChain2["Polygon"] = "Polygon";
24
+ IChain2["Sui"] = "Sui";
25
+ return IChain2;
26
+ })(IChain || {});
27
+ var ContractError = class _ContractError extends Error {
28
+ /**
29
+ * Constructs the Error Wrapper
30
+ * @param error Original error raised probably by the chain SDK
31
+ * @param code extracted code from the error if managed to parse it
32
+ */
33
+ constructor(error, code, description) {
34
+ super(error.message);
35
+ this.contractErrorCode = code ?? null;
36
+ this.description = description ?? null;
37
+ Object.setPrototypeOf(this, _ContractError.prototype);
38
+ this.name = "ContractError";
39
+ this.stack = error.stack;
40
+ }
41
+ };
42
+
43
+ // lib/assertions.ts
44
+ var prefix = "Assertion failed";
45
+ var invariant = (condition, message) => {
46
+ if (condition) {
47
+ return;
48
+ }
49
+ const provided = typeof message === "function" ? message() : message;
50
+ const value = provided ? `${prefix}: ${provided}` : prefix;
51
+ throw new Error(value);
52
+ };
53
+ var getBN = (value, decimals) => {
54
+ const decimalPart = value - Math.trunc(value);
55
+ const integerPart = new BN__default.default(Math.trunc(value));
56
+ const decimalE = new BN__default.default(decimalPart * 1e9);
57
+ const sum = integerPart.mul(new BN__default.default(1e9)).add(decimalE);
58
+ const resultE = sum.mul(new BN__default.default(10).pow(new BN__default.default(decimals)));
59
+ return resultE.div(new BN__default.default(1e9));
60
+ };
61
+ var getNumberFromBN = (value, decimals) => value.gt(new BN__default.default(2 ** 53 - 1)) ? value.div(new BN__default.default(10 ** decimals)).toNumber() : value.toNumber() / 10 ** decimals;
62
+ async function handleContractError(func, callback) {
63
+ try {
64
+ return await func();
65
+ } catch (err) {
66
+ if (err instanceof Error) {
67
+ if (callback) {
68
+ throw new ContractError(err, callback(err));
69
+ }
70
+ throw new ContractError(err);
71
+ }
72
+ throw err;
73
+ }
74
+ }
75
+ function sleep(ms) {
76
+ return new Promise((resolve) => setTimeout(resolve, ms));
77
+ }
78
+ var divCeilN = (n, d) => n / d + (n % d ? BigInt(1) : BigInt(0));
79
+
80
+ exports.ContractError = ContractError;
81
+ exports.IChain = IChain;
82
+ exports.ICluster = ICluster;
83
+ exports.divCeilN = divCeilN;
84
+ exports.getBN = getBN;
85
+ exports.getNumberFromBN = getNumberFromBN;
86
+ exports.handleContractError = handleContractError;
87
+ exports.invariant = invariant;
88
+ exports.sleep = sleep;
89
+ //# sourceMappingURL=index.cjs.map
90
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../types.ts","../../lib/assertions.ts","../../lib/utils.ts"],"names":["ICluster","IChain","BN"],"mappings":"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","file":"index.cjs","sourcesContent":["import { type TransactionInstruction } from \"@solana/web3.js\";\n\nexport interface ITransactionResult {\n ixs: TransactionInstruction[];\n txId: string;\n}\n\n// Utility types\nexport enum ICluster {\n Mainnet = \"mainnet\",\n Devnet = \"devnet\",\n Testnet = \"testnet\",\n Local = \"local\",\n}\n\nexport enum IChain {\n Solana = \"Solana\",\n Aptos = \"Aptos\",\n Ethereum = \"Ethereum\",\n BNB = \"BNB\",\n Polygon = \"Polygon\",\n Sui = \"Sui\",\n}\n\n/**\n * Error wrapper for calls made to the contract on chain\n */\nexport class ContractError extends Error {\n public contractErrorCode: string | null;\n\n public description: string | null;\n\n /**\n * Constructs the Error Wrapper\n * @param error Original error raised probably by the chain SDK\n * @param code extracted code from the error if managed to parse it\n */\n constructor(error: Error, code?: string | null, description?: string | null) {\n super(error.message); // Call the base class constructor with the error message\n this.contractErrorCode = code ?? null;\n this.description = description ?? null;\n // Copy properties from the original error\n Object.setPrototypeOf(this, ContractError.prototype);\n this.name = \"ContractError\"; // Set the name property\n this.stack = error.stack;\n }\n}\n","const prefix = \"Assertion failed\";\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const invariant: (condition: any, message?: string | (() => string)) => asserts condition = (\n condition,\n message,\n) => {\n if (condition) {\n return;\n }\n const provided: string | undefined = typeof message === \"function\" ? message() : message;\n const value: string = provided ? `${prefix}: ${provided}` : prefix;\n throw new Error(value);\n};\n","import BN from \"bn.js\";\n\nimport { ContractError } from \"../types.js\";\n\n/**\n * Used for conversion of token amounts to their Big Number representation.\n * Get Big Number representation in the smallest units from the same value in the highest units.\n * @param {number} value - Number of tokens you want to convert to its BN representation.\n * @param {number} decimals - Number of decimals the token has.\n */\nexport const getBN = (value: number, decimals: number): BN => {\n const decimalPart = value - Math.trunc(value);\n const integerPart = new BN(Math.trunc(value));\n\n const decimalE = new BN(decimalPart * 1e9);\n\n const sum = integerPart.mul(new BN(1e9)).add(decimalE);\n const resultE = sum.mul(new BN(10).pow(new BN(decimals)));\n return resultE.div(new BN(1e9));\n};\n\n/**\n * Used for token amounts conversion from their Big Number representation to number.\n * Get value in the highest units from BN representation of the same value in the smallest units.\n * @param {BN} value - Big Number representation of value in the smallest units.\n * @param {number} decimals - Number of decimals the token has.\n */\nexport const getNumberFromBN = (value: BN, decimals: number): number =>\n value.gt(new BN(2 ** 53 - 1)) ? value.div(new BN(10 ** decimals)).toNumber() : value.toNumber() / 10 ** decimals;\n\n/**\n * Used to make on chain calls to the contract and wrap raised errors if any\n * @param func function that interacts with the contract\n * @param callback callback that may be used to extract error code\n * @returns {T}\n */\nexport async function handleContractError<T>(\n func: () => Promise<T>,\n callback?: (err: Error) => string | null,\n): Promise<T> {\n try {\n return await func();\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (err: any) {\n if (err instanceof Error) {\n if (callback) {\n throw new ContractError(err, callback(err));\n }\n throw new ContractError(err);\n }\n throw err;\n }\n}\n\n/**\n * Pause async function execution for given amount of milliseconds\n * @param ms millisecond to sleep for\n */\nexport function sleep(ms: number): Promise<void> {\n return new Promise((resolve) => setTimeout(resolve, ms));\n}\n\nexport const divCeilN = (n: bigint, d: bigint): bigint => n / d + (n % d ? BigInt(1) : BigInt(0));\n"]}
@@ -0,0 +1,66 @@
1
+ import { TransactionInstruction } from '@solana/web3.js';
2
+ import BN from 'bn.js';
3
+
4
+ interface ITransactionResult {
5
+ ixs: TransactionInstruction[];
6
+ txId: string;
7
+ }
8
+ declare enum ICluster {
9
+ Mainnet = "mainnet",
10
+ Devnet = "devnet",
11
+ Testnet = "testnet",
12
+ Local = "local"
13
+ }
14
+ declare enum IChain {
15
+ Solana = "Solana",
16
+ Aptos = "Aptos",
17
+ Ethereum = "Ethereum",
18
+ BNB = "BNB",
19
+ Polygon = "Polygon",
20
+ Sui = "Sui"
21
+ }
22
+ /**
23
+ * Error wrapper for calls made to the contract on chain
24
+ */
25
+ declare class ContractError extends Error {
26
+ contractErrorCode: string | null;
27
+ description: string | null;
28
+ /**
29
+ * Constructs the Error Wrapper
30
+ * @param error Original error raised probably by the chain SDK
31
+ * @param code extracted code from the error if managed to parse it
32
+ */
33
+ constructor(error: Error, code?: string | null, description?: string | null);
34
+ }
35
+
36
+ declare const invariant: (condition: any, message?: string | (() => string)) => asserts condition;
37
+
38
+ /**
39
+ * Used for conversion of token amounts to their Big Number representation.
40
+ * Get Big Number representation in the smallest units from the same value in the highest units.
41
+ * @param {number} value - Number of tokens you want to convert to its BN representation.
42
+ * @param {number} decimals - Number of decimals the token has.
43
+ */
44
+ declare const getBN: (value: number, decimals: number) => BN;
45
+ /**
46
+ * Used for token amounts conversion from their Big Number representation to number.
47
+ * Get value in the highest units from BN representation of the same value in the smallest units.
48
+ * @param {BN} value - Big Number representation of value in the smallest units.
49
+ * @param {number} decimals - Number of decimals the token has.
50
+ */
51
+ declare const getNumberFromBN: (value: BN, decimals: number) => number;
52
+ /**
53
+ * Used to make on chain calls to the contract and wrap raised errors if any
54
+ * @param func function that interacts with the contract
55
+ * @param callback callback that may be used to extract error code
56
+ * @returns {T}
57
+ */
58
+ declare function handleContractError<T>(func: () => Promise<T>, callback?: (err: Error) => string | null): Promise<T>;
59
+ /**
60
+ * Pause async function execution for given amount of milliseconds
61
+ * @param ms millisecond to sleep for
62
+ */
63
+ declare function sleep(ms: number): Promise<void>;
64
+ declare const divCeilN: (n: bigint, d: bigint) => bigint;
65
+
66
+ export { ContractError, IChain, ICluster, type ITransactionResult, divCeilN, getBN, getNumberFromBN, handleContractError, invariant, sleep };