@wuwei-labs/srsly 2.0.0-beta.24 → 2.0.0-beta.26
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.
- package/README.md +172 -61
- package/dist/cjs/codama/errors/srsly.js +7 -1
- package/dist/cjs/codama/errors/srsly.js.map +1 -1
- package/dist/cjs/contract/create.js +13 -2
- package/dist/cjs/contract/create.js.map +1 -1
- package/dist/cjs/index.js +25 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/package.json +12 -5
- package/dist/cjs/types/paymentFrequency.js +58 -0
- package/dist/cjs/types/paymentFrequency.js.map +1 -0
- package/dist/cjs/utils/config.js +36 -127
- package/dist/cjs/utils/config.js.map +1 -1
- package/dist/cjs/utils/constants.js +5 -22
- package/dist/cjs/utils/constants.js.map +1 -1
- package/dist/cjs/utils/duration.js +77 -0
- package/dist/cjs/utils/duration.js.map +1 -0
- package/dist/cjs/utils/index.js +2 -0
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/pack-functions.js +148 -0
- package/dist/cjs/utils/pack-functions.js.map +1 -0
- package/dist/cjs/utils/paymentFrequency.js +60 -0
- package/dist/cjs/utils/paymentFrequency.js.map +1 -0
- package/dist/cjs/utils/solana-adapter.js +120 -0
- package/dist/cjs/utils/solana-adapter.js.map +1 -0
- package/dist/cjs/utils/types.js +6 -0
- package/dist/cjs/utils/types.js.map +1 -0
- package/dist/esm/codama/errors/srsly.js +6 -0
- package/dist/esm/codama/errors/srsly.js.map +1 -1
- package/dist/esm/contract/create.js +13 -2
- package/dist/esm/contract/create.js.map +1 -1
- package/dist/esm/index.js +8 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/package.json +12 -5
- package/dist/esm/types/paymentFrequency.js +53 -0
- package/dist/esm/types/paymentFrequency.js.map +1 -0
- package/dist/esm/utils/config.js +36 -128
- package/dist/esm/utils/config.js.map +1 -1
- package/dist/esm/utils/constants.js +4 -20
- package/dist/esm/utils/constants.js.map +1 -1
- package/dist/esm/utils/duration.js +68 -0
- package/dist/esm/utils/duration.js.map +1 -0
- package/dist/esm/utils/index.js +2 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/pack-functions.js +110 -0
- package/dist/esm/utils/pack-functions.js.map +1 -0
- package/dist/esm/utils/paymentFrequency.js +55 -0
- package/dist/esm/utils/paymentFrequency.js.map +1 -0
- package/dist/esm/utils/solana-adapter.js +82 -0
- package/dist/esm/utils/solana-adapter.js.map +1 -0
- package/dist/esm/utils/types.js +5 -0
- package/dist/esm/utils/types.js.map +1 -0
- package/dist/types/codama/errors/srsly.d.ts +5 -1
- package/dist/types/codama/errors/srsly.d.ts.map +1 -1
- package/dist/types/contract/create.d.ts +7 -5
- package/dist/types/contract/create.d.ts.map +1 -1
- package/dist/types/index.d.ts +4 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/paymentFrequency.d.ts +44 -0
- package/dist/types/types/paymentFrequency.d.ts.map +1 -0
- package/dist/types/utils/config.d.ts +35 -18
- package/dist/types/utils/config.d.ts.map +1 -1
- package/dist/types/utils/constants.d.ts +8 -21
- package/dist/types/utils/constants.d.ts.map +1 -1
- package/dist/types/utils/duration.d.ts +56 -0
- package/dist/types/utils/duration.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +2 -0
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/pack-functions.d.ts +18 -0
- package/dist/types/utils/pack-functions.d.ts.map +1 -0
- package/dist/types/utils/paymentFrequency.d.ts +18 -0
- package/dist/types/utils/paymentFrequency.d.ts.map +1 -0
- package/dist/types/utils/solana-adapter.d.ts +26 -0
- package/dist/types/utils/solana-adapter.d.ts.map +1 -0
- package/dist/types/utils/types.d.ts +14 -0
- package/dist/types/utils/types.d.ts.map +1 -0
- package/package.json +12 -5
- package/target/idl/srsly.json +10 -0
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Solana library adapter for handling both @solana/kit and @solana/web3.js
|
|
4
|
+
*/
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
17
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
18
|
+
}) : function(o, v) {
|
|
19
|
+
o["default"] = v;
|
|
20
|
+
});
|
|
21
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
+
var ownKeys = function(o) {
|
|
23
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
+
var ar = [];
|
|
25
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
return ownKeys(o);
|
|
29
|
+
};
|
|
30
|
+
return function (mod) {
|
|
31
|
+
if (mod && mod.__esModule) return mod;
|
|
32
|
+
var result = {};
|
|
33
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
+
__setModuleDefault(result, mod);
|
|
35
|
+
return result;
|
|
36
|
+
};
|
|
37
|
+
})();
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.detectSolanaLibraries = detectSolanaLibraries;
|
|
40
|
+
exports.validateSolanaLibraryAvailability = validateSolanaLibraryAvailability;
|
|
41
|
+
exports.getSolanaLibrary = getSolanaLibrary;
|
|
42
|
+
/**
|
|
43
|
+
* Detects which Solana libraries are available
|
|
44
|
+
*/
|
|
45
|
+
async function detectSolanaLibraries() {
|
|
46
|
+
let hasKit = false;
|
|
47
|
+
let hasWeb3js = false;
|
|
48
|
+
try {
|
|
49
|
+
await Promise.resolve().then(() => __importStar(require('@solana/kit')));
|
|
50
|
+
hasKit = true;
|
|
51
|
+
}
|
|
52
|
+
catch {
|
|
53
|
+
// @solana/kit not available
|
|
54
|
+
}
|
|
55
|
+
try {
|
|
56
|
+
await Promise.resolve().then(() => __importStar(require('@solana/web3.js')));
|
|
57
|
+
hasWeb3js = true;
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
// @solana/web3.js not available
|
|
61
|
+
}
|
|
62
|
+
// Prefer @solana/kit if available, fallback to web3.js
|
|
63
|
+
const preferred = hasKit ? 'kit' : hasWeb3js ? 'web3js' : 'auto';
|
|
64
|
+
return { hasKit, hasWeb3js, preferred };
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Validates that at least one Solana library is available
|
|
68
|
+
*/
|
|
69
|
+
async function validateSolanaLibraryAvailability() {
|
|
70
|
+
const detection = await detectSolanaLibraries();
|
|
71
|
+
if (!detection.hasKit && !detection.hasWeb3js) {
|
|
72
|
+
throw new Error('No Solana library found. Please install either @solana/kit (recommended) or @solana/web3.js as a peer dependency.');
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Gets the appropriate Solana library based on preference and availability
|
|
77
|
+
*/
|
|
78
|
+
async function getSolanaLibrary(preference = 'auto') {
|
|
79
|
+
const detection = await detectSolanaLibraries();
|
|
80
|
+
let selectedLibrary;
|
|
81
|
+
switch (preference) {
|
|
82
|
+
case 'kit':
|
|
83
|
+
if (!detection.hasKit) {
|
|
84
|
+
throw new Error('@solana/kit is required but not available. Please install it as a peer dependency.');
|
|
85
|
+
}
|
|
86
|
+
selectedLibrary = 'kit';
|
|
87
|
+
break;
|
|
88
|
+
case 'web3js':
|
|
89
|
+
if (!detection.hasWeb3js) {
|
|
90
|
+
throw new Error('@solana/web3.js is required but not available. Please install it as a peer dependency.');
|
|
91
|
+
}
|
|
92
|
+
selectedLibrary = 'web3js';
|
|
93
|
+
break;
|
|
94
|
+
case 'auto':
|
|
95
|
+
default:
|
|
96
|
+
selectedLibrary = detection.preferred;
|
|
97
|
+
break;
|
|
98
|
+
}
|
|
99
|
+
const result = {
|
|
100
|
+
library: selectedLibrary
|
|
101
|
+
};
|
|
102
|
+
if (selectedLibrary === 'kit' || detection.hasKit) {
|
|
103
|
+
try {
|
|
104
|
+
result.kit = await Promise.resolve().then(() => __importStar(require('@solana/kit')));
|
|
105
|
+
}
|
|
106
|
+
catch {
|
|
107
|
+
// Handle import error gracefully
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
if (selectedLibrary === 'web3js' || detection.hasWeb3js) {
|
|
111
|
+
try {
|
|
112
|
+
result.web3js = await Promise.resolve().then(() => __importStar(require('@solana/web3.js')));
|
|
113
|
+
}
|
|
114
|
+
catch {
|
|
115
|
+
// Handle import error gracefully
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
return result;
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=solana-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solana-adapter.js","sourceRoot":"","sources":["../../../src/utils/solana-adapter.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaH,sDAsBC;AAKD,8EAQC;AAKD,4CAmDC;AA9FD;;GAEG;AACI,KAAK,UAAU,qBAAqB;IACzC,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,IAAI,CAAC;QACH,wDAAa,aAAa,GAAC,CAAC;QAC5B,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,4BAA4B;IAC9B,CAAC;IAED,IAAI,CAAC;QACH,wDAAa,iBAAiB,GAAC,CAAC;QAChC,SAAS,GAAG,IAAI,CAAC;IACnB,CAAC;IAAC,MAAM,CAAC;QACP,gCAAgC;IAClC,CAAC;IAED,uDAAuD;IACvD,MAAM,SAAS,GAAkB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;IAEhF,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAC1C,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,iCAAiC;IACrD,MAAM,SAAS,GAAG,MAAM,qBAAqB,EAAE,CAAC;IAEhD,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CACb,mHAAmH,CACpH,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,gBAAgB,CAAC,aAA4B,MAAM;IAKvE,MAAM,SAAS,GAAG,MAAM,qBAAqB,EAAE,CAAC;IAEhD,IAAI,eAA8B,CAAC;IAEnC,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,KAAK;YACR,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAC;YACxG,CAAC;YACD,eAAe,GAAG,KAAK,CAAC;YACxB,MAAM;QAER,KAAK,QAAQ;YACX,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;YAC5G,CAAC;YACD,eAAe,GAAG,QAAQ,CAAC;YAC3B,MAAM;QAER,KAAK,MAAM,CAAC;QACZ;YACE,eAAe,GAAG,SAAS,CAAC,SAAS,CAAC;YACtC,MAAM;IACV,CAAC;IAED,MAAM,MAAM,GAAwD;QAClE,OAAO,EAAE,eAAe;KACzB,CAAC;IAEF,IAAI,eAAe,KAAK,KAAK,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;QAClD,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,GAAG,wDAAa,aAAa,GAAC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,iCAAiC;QACnC,CAAC;IACH,CAAC;IAED,IAAI,eAAe,KAAK,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;QACxD,IAAI,CAAC;YACH,MAAM,CAAC,MAAM,GAAG,wDAAa,iBAAiB,GAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACP,iCAAiC;QACnC,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
|
|
@@ -49,6 +49,10 @@ export const SRSLY_ERROR__INVALID_ATLAS_CONVERSION_RATE = 0x1782; // 6018
|
|
|
49
49
|
export const SRSLY_ERROR__ACCOUNT_OWNED_BY_WRONG_PROGRAM = 0x1783; // 6019
|
|
50
50
|
/** InvalidOwnerProfile: Fleet owner profile does not match the provided owner profile. */
|
|
51
51
|
export const SRSLY_ERROR__INVALID_OWNER_PROFILE = 0x1784; // 6020
|
|
52
|
+
/** InvalidDurationMinimumAlignment: Duration minimum must be a multiple of the payment frequency interval. */
|
|
53
|
+
export const SRSLY_ERROR__INVALID_DURATION_MINIMUM_ALIGNMENT = 0x1785; // 6021
|
|
54
|
+
/** InvalidDurationMaximumAlignment: Duration maximum must be a multiple of the payment frequency interval. */
|
|
55
|
+
export const SRSLY_ERROR__INVALID_DURATION_MAXIMUM_ALIGNMENT = 0x1786; // 6022
|
|
52
56
|
let srslyErrorMessages;
|
|
53
57
|
if (process.env.NODE_ENV !== 'production') {
|
|
54
58
|
srslyErrorMessages = {
|
|
@@ -60,7 +64,9 @@ if (process.env.NODE_ENV !== 'production') {
|
|
|
60
64
|
[SRSLY_ERROR__INSUFFICIENT_CANCELLATION_NOTICE]: `Rental time remaining is less than minimum cancellation notice required.`,
|
|
61
65
|
[SRSLY_ERROR__INVALID_ATLAS_CONVERSION_RATE]: `Invalid ATLAS conversion rate. Must be greater than 0.`,
|
|
62
66
|
[SRSLY_ERROR__INVALID_DURATION_MAXIMUM]: `Invalid duration maximum. Must be greater than or equal to the duration minimum.`,
|
|
67
|
+
[SRSLY_ERROR__INVALID_DURATION_MAXIMUM_ALIGNMENT]: `Duration maximum must be a multiple of the payment frequency interval.`,
|
|
63
68
|
[SRSLY_ERROR__INVALID_DURATION_MINIMUM]: `Invalid duration minimum. Must be between 1 and the duration maximum.`,
|
|
69
|
+
[SRSLY_ERROR__INVALID_DURATION_MINIMUM_ALIGNMENT]: `Duration minimum must be a multiple of the payment frequency interval.`,
|
|
64
70
|
[SRSLY_ERROR__INVALID_FEE_RATE]: `Invalid fee rate. Service fee must be <= 50%, referral fee <= 100%, base_bps > 0.`,
|
|
65
71
|
[SRSLY_ERROR__INVALID_OWNER_PROFILE]: `Fleet owner profile does not match the provided owner profile.`,
|
|
66
72
|
[SRSLY_ERROR__INVALID_PAYMENT_FREQUENCY]: `Invalid payment frequency. Must be one of: @hourly, @daily, @weekly, @monthly.`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"srsly.js","sourceRoot":"","sources":["../../../../src/codama/errors/srsly.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,cAAc,GAIf,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,oGAAoG;AACpG,MAAM,CAAC,MAAM,qCAAqC,GAAG,MAAM,CAAC,CAAC,OAAO;AACpE,+GAA+G;AAC/G,MAAM,CAAC,MAAM,qCAAqC,GAAG,MAAM,CAAC,CAAC,OAAO;AACpE,mGAAmG;AACnG,MAAM,CAAC,MAAM,qCAAqC,GAAG,MAAM,CAAC,CAAC,OAAO;AACpE,8EAA8E;AAC9E,MAAM,CAAC,MAAM,iCAAiC,GAAG,MAAM,CAAC,CAAC,OAAO;AAChE,4EAA4E;AAC5E,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC,CAAC,OAAO;AACxD,8GAA8G;AAC9G,MAAM,CAAC,MAAM,sCAAsC,GAAG,MAAM,CAAC,CAAC,OAAO;AACrE,qEAAqE;AACrE,MAAM,CAAC,MAAM,4CAA4C,GAAG,MAAM,CAAC,CAAC,OAAO;AAC3E,+GAA+G;AAC/G,MAAM,CAAC,MAAM,6CAA6C,GAAG,MAAM,CAAC,CAAC,OAAO;AAC5E,8CAA8C;AAC9C,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC,CAAC,OAAO;AAC3D,uEAAuE;AACvE,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAC,CAAC,OAAO;AAC9D,wFAAwF;AACxF,MAAM,CAAC,MAAM,qCAAqC,GAAG,MAAM,CAAC,CAAC,OAAO;AACpE,4DAA4D;AAC5D,MAAM,CAAC,MAAM,mCAAmC,GAAG,MAAM,CAAC,CAAC,OAAO;AAClE,8CAA8C;AAC9C,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CAAC,CAAC,OAAO;AAC5D,0EAA0E;AAC1E,MAAM,CAAC,MAAM,gCAAgC,GAAG,MAAM,CAAC,CAAC,OAAO;AAC/D,8EAA8E;AAC9E,MAAM,CAAC,MAAM,0CAA0C,GAAG,MAAM,CAAC,CAAC,OAAO;AACzE,wGAAwG;AACxG,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CAAC,CAAC,OAAO;AAC5D,yFAAyF;AACzF,MAAM,CAAC,MAAM,oCAAoC,GAAG,MAAM,CAAC,CAAC,OAAO;AACnE,+EAA+E;AAC/E,MAAM,CAAC,MAAM,uCAAuC,GAAG,MAAM,CAAC,CAAC,OAAO;AACtE,yFAAyF;AACzF,MAAM,CAAC,MAAM,0CAA0C,GAAG,MAAM,CAAC,CAAC,OAAO;AACzE,yFAAyF;AACzF,MAAM,CAAC,MAAM,2CAA2C,GAAG,MAAM,CAAC,CAAC,OAAO;AAC1E,0FAA0F;AAC1F,MAAM,CAAC,MAAM,kCAAkC,GAAG,MAAM,CAAC,CAAC,OAAO;
|
|
1
|
+
{"version":3,"file":"srsly.js","sourceRoot":"","sources":["../../../../src/codama/errors/srsly.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,21 @@
|
|
|
1
1
|
import { getModule, createConfigSelector } from '../utils/config';
|
|
2
2
|
import { getSageGameId, getSageProgramAddress, getAtlasMint, toAddress } from '../utils/constants';
|
|
3
|
+
import { validateDurationAlignment, paymentFrequencyStringToSeconds } from '../utils/paymentFrequency';
|
|
4
|
+
import { isValidPaymentFrequency } from '../types/paymentFrequency';
|
|
3
5
|
/**
|
|
4
6
|
* Internal function to create a contract instruction with configuration options
|
|
5
7
|
*/
|
|
6
8
|
async function _createContract(params, config) {
|
|
7
|
-
const { owner, fleet, ownerProfile, rate,
|
|
9
|
+
const { owner, fleet, ownerProfile, rate, durationMax, paymentsFreq, ownerKeyIndex = 0, gameId, mint, } = params;
|
|
10
|
+
// Validate payment frequency using auto-generated validation
|
|
11
|
+
if (!isValidPaymentFrequency(paymentsFreq)) {
|
|
12
|
+
throw new Error(`Invalid payment frequency: ${paymentsFreq}. Valid values are auto-generated from Rust PaymentFrequency enum.`);
|
|
13
|
+
}
|
|
14
|
+
// Calculate durationMin from payment frequency
|
|
15
|
+
const durationMin = paymentFrequencyStringToSeconds(paymentsFreq);
|
|
16
|
+
// Validate that durationMax is a multiple of the payment frequency
|
|
17
|
+
// Uses the codama-generated PaymentFrequency enum and mirrors Rust implementation
|
|
18
|
+
validateDurationAlignment(durationMax, paymentsFreq);
|
|
8
19
|
// Get the actual game ID to use (param override, config override, or network default)
|
|
9
20
|
const actualGameId = gameId ? toAddress(gameId) : await getSageGameId(config);
|
|
10
21
|
// Get codama functions
|
|
@@ -24,7 +35,7 @@ async function _createContract(params, config) {
|
|
|
24
35
|
rate: BigInt(rate),
|
|
25
36
|
durationMin: BigInt(durationMin),
|
|
26
37
|
durationMax: BigInt(durationMax),
|
|
27
|
-
paymentsFeq: paymentsFreq
|
|
38
|
+
paymentsFeq: `@${paymentsFreq}`,
|
|
28
39
|
ownerKeyIndex,
|
|
29
40
|
sageProgram: toAddress(await getSageProgramAddress(config)),
|
|
30
41
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/contract/create.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAA2C,MAAM,iBAAiB,CAAC;AAC3G,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AA+
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/contract/create.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAA2C,MAAM,iBAAiB,CAAC;AAC3G,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACnG,OAAO,EAAE,yBAAyB,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AACvG,OAAO,EAA0B,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AA+D5F;;GAEG;AACH,KAAK,UAAU,eAAe,CAC5B,MAA4B,EAC5B,MAAsB;IAEtB,MAAM,EACJ,KAAK,EACL,KAAK,EACL,YAAY,EACZ,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,aAAa,GAAG,CAAC,EACjB,MAAM,EACN,IAAI,GACL,GAAG,MAAM,CAAC;IAEX,6DAA6D;IAC7D,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,8BAA8B,YAAY,oEAAoE,CAAC,CAAC;IAClI,CAAC;IAED,+CAA+C;IAC/C,MAAM,WAAW,GAAG,+BAA+B,CAAC,YAAY,CAAC,CAAC;IAElE,mEAAmE;IACnE,kFAAkF;IAClF,yBAAyB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAErD,sFAAsF;IACtF,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;IAE9E,uBAAuB;IACvB,MAAM,kBAAkB,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,EAAE,iCAAiC,EAAE,GAAG,kBAAkB,CAAC;IACjE,MAAM,EAAE,qBAAqB,EAAE,GAAG,cAAc,CAAC;IAEjD,2DAA2D;IAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;IAEtE,kFAAkF;IAClF,MAAM,KAAK,GAAG;QACZ,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,4BAA4B;QACnC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC;QACvB,YAAY,EAAE,SAAS,CAAC,YAAY,CAAC;QACrC,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC;QAChC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC;QAChC,WAAW,EAAE,IAAI,YAAY,EAAE;QAC/B,aAAa;QACb,WAAW,EAAE,SAAS,CAAC,MAAM,qBAAqB,CAAC,MAAM,CAAC,CAAC;KAC5D,CAAC;IAEF,OAAO,iCAAiC,CACtC,KAAK,EACL,EAAE,cAAc,EAAE,qBAAqB,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,cAAc,CAC5B,MAA4B;IAE5B,OAAO,oBAAoB,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iCAAiC,CAAC,KAAU,EAAE,OAAa;IACzE,OAAO,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,kBAAkB,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;QACrD,OAAO,kBAAkB,CAAC,iCAAiC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/esm/index.js
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
export * from "./contract";
|
|
3
3
|
export * from "./rental";
|
|
4
4
|
export * from "./utils";
|
|
5
|
-
// Export PaymentFrequency from
|
|
6
|
-
export { PaymentFrequency } from "./
|
|
5
|
+
// Export PaymentFrequency from codama (generated from Rust)
|
|
6
|
+
export { PaymentFrequency } from "./codama/types/paymentFrequency";
|
|
7
|
+
// Export auto-generated payment frequency types and utilities
|
|
8
|
+
export { VALID_PAYMENT_FREQUENCIES, PAYMENT_FREQUENCY_MAP, PAYMENT_FREQUENCY_CONSTANTS, getPaymentFrequencyFromString, isValidPaymentFrequency } from "./types/paymentFrequency";
|
|
9
|
+
// Export payment frequency utilities that mirror Rust implementation
|
|
10
|
+
export { paymentFrequencyToSeconds, paymentFrequencyStringToSeconds, validateDurationAlignment } from "./utils/paymentFrequency";
|
|
11
|
+
// Export duration helper functions for convenient time unit conversion
|
|
12
|
+
export { decaseconds, minutes, hours, days, weeks, months, duration } from "./utils/duration";
|
|
7
13
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AAsBxB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AAsBxB,4DAA4D;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,8DAA8D;AAC9D,OAAO,EAEL,yBAAyB,EACzB,qBAAqB,EACrB,2BAA2B,EAC3B,6BAA6B,EAC7B,uBAAuB,EACxB,MAAM,0BAA0B,CAAC;AAElC,qEAAqE;AACrE,OAAO,EACL,yBAAyB,EACzB,+BAA+B,EAC/B,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAElC,uEAAuE;AACvE,OAAO,EACL,WAAW,EACX,OAAO,EACP,KAAK,EACL,IAAI,EACJ,KAAK,EACL,MAAM,EACN,QAAQ,EACT,MAAM,kBAAkB,CAAC"}
|
package/dist/esm/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wuwei-labs/srsly",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.26",
|
|
4
4
|
"description": "",
|
|
5
5
|
"source": "./src/index.ts",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -38,7 +38,6 @@
|
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"@codama/nodes-from-anchor": "^1.1.13",
|
|
40
40
|
"@codama/renderers": "^1.0.21",
|
|
41
|
-
"@solana/web3.js": "^1.98.2",
|
|
42
41
|
"@types/node": "^24.0.3",
|
|
43
42
|
"codama": "^1.2.13",
|
|
44
43
|
"tsconfig-to-dual-package": "^1.2.0",
|
|
@@ -46,9 +45,17 @@
|
|
|
46
45
|
"typescript": "^5.8.3",
|
|
47
46
|
"vitest": "^3.2.4"
|
|
48
47
|
},
|
|
49
|
-
"
|
|
50
|
-
"@solana/kit": "
|
|
51
|
-
"@
|
|
48
|
+
"peerDependencies": {
|
|
49
|
+
"@solana/kit": ">=2.0.0",
|
|
50
|
+
"@solana/web3.js": ">=1.95.0"
|
|
51
|
+
},
|
|
52
|
+
"peerDependenciesMeta": {
|
|
53
|
+
"@solana/kit": {
|
|
54
|
+
"optional": true
|
|
55
|
+
},
|
|
56
|
+
"@solana/web3.js": {
|
|
57
|
+
"optional": true
|
|
58
|
+
}
|
|
52
59
|
},
|
|
53
60
|
"type": "module"
|
|
54
61
|
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This code was AUTO-GENERATED from the Rust PaymentFrequency implementation.
|
|
3
|
+
* Please DO NOT EDIT THIS FILE manually - it will be overwritten.
|
|
4
|
+
*
|
|
5
|
+
* Source: programs/srsly/src/utils.rs
|
|
6
|
+
* Generated by: generate.mjs
|
|
7
|
+
*/
|
|
8
|
+
import { PaymentFrequency } from '../codama/types/paymentFrequency';
|
|
9
|
+
/**
|
|
10
|
+
* Array of all valid payment frequency strings
|
|
11
|
+
* Auto-generated from Rust PaymentFrequency enum
|
|
12
|
+
*/
|
|
13
|
+
export const VALID_PAYMENT_FREQUENCIES = [
|
|
14
|
+
'hourly',
|
|
15
|
+
'daily',
|
|
16
|
+
'weekly',
|
|
17
|
+
'monthly'
|
|
18
|
+
];
|
|
19
|
+
/**
|
|
20
|
+
* Mapping from user-friendly strings to PaymentFrequency enum values
|
|
21
|
+
* Auto-generated from Rust PaymentFrequency enum
|
|
22
|
+
*/
|
|
23
|
+
export const PAYMENT_FREQUENCY_MAP = {
|
|
24
|
+
'hourly': PaymentFrequency.Hourly,
|
|
25
|
+
'daily': PaymentFrequency.Daily,
|
|
26
|
+
'weekly': PaymentFrequency.Weekly,
|
|
27
|
+
'monthly': PaymentFrequency.Monthly
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Constants extracted from Rust constants.rs
|
|
31
|
+
* Auto-synced with Rust implementation
|
|
32
|
+
*/
|
|
33
|
+
export const PAYMENT_FREQUENCY_CONSTANTS = {
|
|
34
|
+
SECONDS_PER_DECASECOND: 10,
|
|
35
|
+
SECONDS_PER_MINUTE: 60,
|
|
36
|
+
SECONDS_PER_HOUR: 3600,
|
|
37
|
+
SECONDS_PER_DAY: 86400,
|
|
38
|
+
SECONDS_PER_WEEK: 604800,
|
|
39
|
+
SECONDS_PER_MONTH: 2678400
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Get PaymentFrequency enum value from user-friendly string
|
|
43
|
+
*/
|
|
44
|
+
export function getPaymentFrequencyFromString(frequencyString) {
|
|
45
|
+
return PAYMENT_FREQUENCY_MAP[frequencyString];
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Check if a string is a valid payment frequency
|
|
49
|
+
*/
|
|
50
|
+
export function isValidPaymentFrequency(value) {
|
|
51
|
+
return VALID_PAYMENT_FREQUENCIES.includes(value);
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=paymentFrequency.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paymentFrequency.js","sourceRoot":"","sources":["../../../src/types/paymentFrequency.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAQpE;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAsC;IAC1E,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,SAAS;CACD,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAqD;IACrF,QAAQ,EAAE,gBAAgB,CAAC,MAAM;IACjC,OAAO,EAAE,gBAAgB,CAAC,KAAK;IAC/B,QAAQ,EAAE,gBAAgB,CAAC,MAAM;IACjC,SAAS,EAAE,gBAAgB,CAAC,OAAO;CAC3B,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,sBAAsB,EAAE,EAAE;IAC1B,kBAAkB,EAAE,EAAE;IACtB,gBAAgB,EAAE,IAAI;IACtB,eAAe,EAAE,KAAK;IACtB,gBAAgB,EAAE,MAAM;IACxB,iBAAiB,EAAE,OAAO;CAClB,CAAC;AAEX;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAAC,eAAuC;IACnF,OAAO,qBAAqB,CAAC,eAAe,CAAC,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAa;IACnD,OAAO,yBAAyB,CAAC,QAAQ,CAAC,KAA+B,CAAC,CAAC;AAC7E,CAAC"}
|
package/dist/esm/utils/config.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
// Single codama output - network agnostic
|
|
5
5
|
import * as instructions from '../codama/instructions';
|
|
6
6
|
import * as programs from '../codama/programs';
|
|
7
|
-
import {
|
|
7
|
+
import { packWithKit, packWithWeb3js, packWithAuto } from './pack-functions';
|
|
8
8
|
const PROGRAM_SETS = {
|
|
9
9
|
mainnet: {
|
|
10
10
|
SAGE_PROGRAM_ADDRESS: 'SAGE2HAwep459SNq61LHvjxPk4pLPEJLoMETef7f7EE',
|
|
@@ -95,7 +95,7 @@ export function clearConfig() {
|
|
|
95
95
|
* @param overrides Optional configuration overrides
|
|
96
96
|
* @returns Merged configuration with global defaults and any overrides
|
|
97
97
|
*/
|
|
98
|
-
function getEffectiveConfig(overrides) {
|
|
98
|
+
export function getEffectiveConfig(overrides) {
|
|
99
99
|
return { ...globalConfig, ...overrides };
|
|
100
100
|
}
|
|
101
101
|
/**
|
|
@@ -116,34 +116,6 @@ export async function getCachedNetworkModule(modulePath) {
|
|
|
116
116
|
}
|
|
117
117
|
return getModule(modulePath);
|
|
118
118
|
}
|
|
119
|
-
/**
|
|
120
|
-
* Ensures the input is a proper Uint8Array compatible with web3.js
|
|
121
|
-
* Handles various TypedArray formats that @solana/kit might return
|
|
122
|
-
*/
|
|
123
|
-
function ensureUint8Array(input) {
|
|
124
|
-
// If it's already a standard Uint8Array, return as-is
|
|
125
|
-
if (input instanceof Uint8Array && input.constructor === Uint8Array) {
|
|
126
|
-
return input;
|
|
127
|
-
}
|
|
128
|
-
// Handle various ArrayBufferView types (including ReadonlyUint8Array)
|
|
129
|
-
if (ArrayBuffer.isView(input)) {
|
|
130
|
-
return new Uint8Array(input.buffer, input.byteOffset, input.byteLength);
|
|
131
|
-
}
|
|
132
|
-
// Handle objects with buffer property (some Node.js environments)
|
|
133
|
-
if (input && input.buffer && typeof input.byteLength === 'number') {
|
|
134
|
-
return new Uint8Array(input.buffer, input.byteOffset || 0, input.byteLength);
|
|
135
|
-
}
|
|
136
|
-
// Handle array-like objects and iterables
|
|
137
|
-
if (input && typeof input.length === 'number') {
|
|
138
|
-
return new Uint8Array(input);
|
|
139
|
-
}
|
|
140
|
-
// Handle objects that might be iterable but don't have length
|
|
141
|
-
if (input && typeof input[Symbol.iterator] === 'function') {
|
|
142
|
-
return new Uint8Array(Array.from(input));
|
|
143
|
-
}
|
|
144
|
-
// Fallback: try to create from the input directly
|
|
145
|
-
return new Uint8Array(input);
|
|
146
|
-
}
|
|
147
119
|
/**
|
|
148
120
|
* Create a chainable packed transaction that allows .pack().send() without double await
|
|
149
121
|
*
|
|
@@ -201,58 +173,27 @@ function createChainableConfigSelector(executeFn, existingConfig) {
|
|
|
201
173
|
const selector = {
|
|
202
174
|
set: (additionalOptions) => createChainableConfigSelector(executeFn, { ...existingConfig, ...additionalOptions }),
|
|
203
175
|
build: () => executeFn(existingConfig),
|
|
176
|
+
packKit: (feePayer) => {
|
|
177
|
+
const packedTxPromise = (async () => {
|
|
178
|
+
const instruction = await executeFn(existingConfig);
|
|
179
|
+
const effectiveConfig = getEffectiveConfig(existingConfig);
|
|
180
|
+
return await packWithKit(instruction, feePayer, effectiveConfig);
|
|
181
|
+
})();
|
|
182
|
+
return createChainablePackedTransaction(packedTxPromise);
|
|
183
|
+
},
|
|
184
|
+
packWeb3js: (feePayer) => {
|
|
185
|
+
const packedTxPromise = (async () => {
|
|
186
|
+
const instruction = await executeFn(existingConfig);
|
|
187
|
+
const effectiveConfig = getEffectiveConfig(existingConfig);
|
|
188
|
+
return await packWithWeb3js(instruction, feePayer, effectiveConfig);
|
|
189
|
+
})();
|
|
190
|
+
return createChainablePackedTransaction(packedTxPromise);
|
|
191
|
+
},
|
|
204
192
|
pack: (feePayer) => {
|
|
205
193
|
const packedTxPromise = (async () => {
|
|
206
194
|
const instruction = await executeFn(existingConfig);
|
|
207
195
|
const effectiveConfig = getEffectiveConfig(existingConfig);
|
|
208
|
-
|
|
209
|
-
if (!resolvedAddresses.rpcUrl) {
|
|
210
|
-
const networkType = effectiveConfig.programs || 'unknown';
|
|
211
|
-
if (networkType === 'atlasnet' || networkType === 'holosim') {
|
|
212
|
-
throw new Error(`RPC URL is required for ${networkType} network. Please provide your RPC endpoint via setConfig({ rpcUrl: "your-rpc-url-with-api-key" }) or .set({ rpcUrl: "your-rpc-url-with-api-key" })`);
|
|
213
|
-
}
|
|
214
|
-
throw new Error('RPC URL is required for creating transactions. Please set it via setConfig({ rpcUrl: "..." }) or provide it in .set({ rpcUrl: "..." })');
|
|
215
|
-
}
|
|
216
|
-
// Create RPC connection to get latest blockhash
|
|
217
|
-
const rpc = createSolanaRpc(resolvedAddresses.rpcUrl);
|
|
218
|
-
const { value: latestBlockhash } = await rpc.getLatestBlockhash().send();
|
|
219
|
-
// Build unsigned transaction message
|
|
220
|
-
const transactionMessage = pipe(createTransactionMessage({ version: 0 }), (msg) => setTransactionMessageFeePayer(feePayer, msg), (msg) => setTransactionMessageLifetimeUsingBlockhash(latestBlockhash, msg), (msg) => appendTransactionMessageInstructions([instruction], msg));
|
|
221
|
-
// Compile to unsigned transaction
|
|
222
|
-
const unsignedTransaction = compileTransaction(transactionMessage);
|
|
223
|
-
// Return raw messageBytes - users can convert to web3.js format if needed:
|
|
224
|
-
// import { VersionedTransaction, VersionedMessage } from '@solana/web3.js';
|
|
225
|
-
// const versionedMessage = VersionedMessage.deserialize(messageBytes);
|
|
226
|
-
// const versionedTx = new VersionedTransaction(versionedMessage);
|
|
227
|
-
const messageBytes = ensureUint8Array(unsignedTransaction.messageBytes);
|
|
228
|
-
// Return PackedTransaction with send() method
|
|
229
|
-
return {
|
|
230
|
-
messageBytes,
|
|
231
|
-
signatures: unsignedTransaction.signatures,
|
|
232
|
-
send: async (signer) => {
|
|
233
|
-
// Create RPC connections for sending
|
|
234
|
-
const sendRpc = createSolanaRpc(resolvedAddresses.rpcUrl);
|
|
235
|
-
const rpcSubscriptions = createSolanaRpcSubscriptions(resolvedAddresses.rpcUrl.replace('https:', 'wss:').replace('http:', 'ws:'));
|
|
236
|
-
// Build transaction message with signer
|
|
237
|
-
const signerTransactionMessage = pipe(createTransactionMessage({ version: 0 }), (msg) => setTransactionMessageFeePayerSigner(signer, msg), (msg) => setTransactionMessageLifetimeUsingBlockhash(latestBlockhash, msg), (msg) => appendTransactionMessageInstructions([instruction], msg));
|
|
238
|
-
// Sign transaction
|
|
239
|
-
const signedTransaction = await signTransactionMessageWithSigners(signerTransactionMessage);
|
|
240
|
-
// Send and confirm transaction
|
|
241
|
-
const sendAndConfirmTransaction = sendAndConfirmTransactionFactory({ rpc: sendRpc, rpcSubscriptions: rpcSubscriptions });
|
|
242
|
-
try {
|
|
243
|
-
await sendAndConfirmTransaction(signedTransaction, {
|
|
244
|
-
commitment: effectiveConfig.transactionOptions?.commitment || 'confirmed',
|
|
245
|
-
skipPreflight: effectiveConfig.transactionOptions?.skipPreflight || false
|
|
246
|
-
});
|
|
247
|
-
// Extract and return the signature
|
|
248
|
-
const signature = getSignatureFromTransaction(signedTransaction);
|
|
249
|
-
return signature;
|
|
250
|
-
}
|
|
251
|
-
catch (error) {
|
|
252
|
-
throw new Error(`Transaction failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
};
|
|
196
|
+
return await packWithAuto(instruction, feePayer, effectiveConfig);
|
|
256
197
|
})();
|
|
257
198
|
return createChainablePackedTransaction(packedTxPromise);
|
|
258
199
|
},
|
|
@@ -286,60 +227,27 @@ export function createConfigSelector(executeFn) {
|
|
|
286
227
|
const selector = {
|
|
287
228
|
set: (options) => createChainableConfigSelector(executeFn, getEffectiveConfig(options)),
|
|
288
229
|
build: () => executeFn(getEffectiveConfig()),
|
|
230
|
+
packKit: (feePayer) => {
|
|
231
|
+
const packedTxPromise = (async () => {
|
|
232
|
+
const instruction = await executeFn(getEffectiveConfig());
|
|
233
|
+
const effectiveConfig = getEffectiveConfig();
|
|
234
|
+
return await packWithKit(instruction, feePayer, effectiveConfig);
|
|
235
|
+
})();
|
|
236
|
+
return createChainablePackedTransaction(packedTxPromise);
|
|
237
|
+
},
|
|
238
|
+
packWeb3js: (feePayer) => {
|
|
239
|
+
const packedTxPromise = (async () => {
|
|
240
|
+
const instruction = await executeFn(getEffectiveConfig());
|
|
241
|
+
const effectiveConfig = getEffectiveConfig();
|
|
242
|
+
return await packWithWeb3js(instruction, feePayer, effectiveConfig);
|
|
243
|
+
})();
|
|
244
|
+
return createChainablePackedTransaction(packedTxPromise);
|
|
245
|
+
},
|
|
289
246
|
pack: (feePayer) => {
|
|
290
247
|
const packedTxPromise = (async () => {
|
|
291
248
|
const instruction = await executeFn(getEffectiveConfig());
|
|
292
249
|
const effectiveConfig = getEffectiveConfig();
|
|
293
|
-
|
|
294
|
-
if (!resolvedAddresses.rpcUrl) {
|
|
295
|
-
const networkType = effectiveConfig.programs || 'unknown';
|
|
296
|
-
if (networkType === 'atlasnet' || networkType === 'holosim') {
|
|
297
|
-
throw new Error(`RPC URL is required for ${networkType} network. Please provide your RPC endpoint via setConfig({ rpcUrl: "your-rpc-url-with-api-key" }) or .set({ rpcUrl: "your-rpc-url-with-api-key" })`);
|
|
298
|
-
}
|
|
299
|
-
throw new Error('RPC URL is required for creating transactions. Please set it via setConfig({ rpcUrl: "..." }) or provide it in .set({ rpcUrl: "..." })');
|
|
300
|
-
}
|
|
301
|
-
// Create RPC connection to get latest blockhash
|
|
302
|
-
const rpc = createSolanaRpc(resolvedAddresses.rpcUrl);
|
|
303
|
-
const { value: latestBlockhash } = await rpc.getLatestBlockhash().send();
|
|
304
|
-
// Build unsigned transaction message
|
|
305
|
-
const transactionMessage = pipe(createTransactionMessage({ version: 0 }), (msg) => setTransactionMessageFeePayer(feePayer, msg), (msg) => setTransactionMessageLifetimeUsingBlockhash(latestBlockhash, msg), (msg) => appendTransactionMessageInstructions([instruction], msg));
|
|
306
|
-
// Compile to unsigned transaction
|
|
307
|
-
const unsignedTransaction = compileTransaction(transactionMessage);
|
|
308
|
-
// Create a web3.js compatible transaction by converting messageBytes to VersionedMessage
|
|
309
|
-
const { VersionedTransaction, VersionedMessage } = await import('@solana/web3.js');
|
|
310
|
-
const messageUint8Array = ensureUint8Array(unsignedTransaction.messageBytes);
|
|
311
|
-
const versionedMessage = VersionedMessage.deserialize(messageUint8Array);
|
|
312
|
-
const versionedTx = new VersionedTransaction(versionedMessage);
|
|
313
|
-
// Serialize to get proper messageBytes that can be deserialized by web3.js
|
|
314
|
-
const messageBytes = ensureUint8Array(versionedTx.serialize());
|
|
315
|
-
// Return PackedTransaction with send() method
|
|
316
|
-
return {
|
|
317
|
-
messageBytes,
|
|
318
|
-
signatures: unsignedTransaction.signatures,
|
|
319
|
-
send: async (signer) => {
|
|
320
|
-
// Create RPC connections for sending
|
|
321
|
-
const sendRpc = createSolanaRpc(resolvedAddresses.rpcUrl);
|
|
322
|
-
const rpcSubscriptions = createSolanaRpcSubscriptions(resolvedAddresses.rpcUrl.replace('https:', 'wss:').replace('http:', 'ws:'));
|
|
323
|
-
// Build transaction message with signer
|
|
324
|
-
const signerTransactionMessage = pipe(createTransactionMessage({ version: 0 }), (msg) => setTransactionMessageFeePayerSigner(signer, msg), (msg) => setTransactionMessageLifetimeUsingBlockhash(latestBlockhash, msg), (msg) => appendTransactionMessageInstructions([instruction], msg));
|
|
325
|
-
// Sign transaction
|
|
326
|
-
const signedTransaction = await signTransactionMessageWithSigners(signerTransactionMessage);
|
|
327
|
-
// Send and confirm transaction
|
|
328
|
-
const sendAndConfirmTransaction = sendAndConfirmTransactionFactory({ rpc: sendRpc, rpcSubscriptions: rpcSubscriptions });
|
|
329
|
-
try {
|
|
330
|
-
await sendAndConfirmTransaction(signedTransaction, {
|
|
331
|
-
commitment: effectiveConfig.transactionOptions?.commitment || 'confirmed',
|
|
332
|
-
skipPreflight: effectiveConfig.transactionOptions?.skipPreflight || false
|
|
333
|
-
});
|
|
334
|
-
// Extract and return the signature
|
|
335
|
-
const signature = getSignatureFromTransaction(signedTransaction);
|
|
336
|
-
return signature;
|
|
337
|
-
}
|
|
338
|
-
catch (error) {
|
|
339
|
-
throw new Error(`Transaction failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
340
|
-
}
|
|
341
|
-
}
|
|
342
|
-
};
|
|
250
|
+
return await packWithAuto(instruction, feePayer, effectiveConfig);
|
|
343
251
|
})();
|
|
344
252
|
return createChainablePackedTransaction(packedTxPromise);
|
|
345
253
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/utils/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/utils/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { getConfig, resolveProgramAddresses } from './config';
|
|
2
|
-
import { address } from '@solana/kit';
|
|
3
2
|
/**
|
|
4
3
|
* Converts a string or Address to an Address type
|
|
5
4
|
* This utility ensures consistent address handling across the SDK
|
|
5
|
+
* Note: This is a simple passthrough now since pack functions handle library-specific conversions
|
|
6
6
|
*/
|
|
7
7
|
export function toAddress(value) {
|
|
8
|
-
return
|
|
8
|
+
return value;
|
|
9
9
|
}
|
|
10
10
|
// Seed constants
|
|
11
11
|
export const STARBASE_SEED = 'Starbase';
|
|
@@ -14,18 +14,7 @@ export const SAGE_PLAYER_PROFILE_SEED = 'sage_player_profile';
|
|
|
14
14
|
export const PROFILE_FACTION_SEED = 'profile_faction';
|
|
15
15
|
// Token conversion constants
|
|
16
16
|
export const ATLAS_TO_STARDUST = 100_000_000; // 1 ATLAS = 100,000,000 stardust
|
|
17
|
-
// PaymentFrequency enum
|
|
18
|
-
export var PaymentFrequency;
|
|
19
|
-
(function (PaymentFrequency) {
|
|
20
|
-
PaymentFrequency[PaymentFrequency["Hourly"] = 0] = "Hourly";
|
|
21
|
-
PaymentFrequency[PaymentFrequency["Daily"] = 1] = "Daily";
|
|
22
|
-
PaymentFrequency[PaymentFrequency["DailyOld"] = 2] = "DailyOld";
|
|
23
|
-
PaymentFrequency[PaymentFrequency["Weekly"] = 3] = "Weekly";
|
|
24
|
-
PaymentFrequency[PaymentFrequency["Monthly"] = 4] = "Monthly";
|
|
25
|
-
// Development-only frequencies (not available on mainnet)
|
|
26
|
-
PaymentFrequency[PaymentFrequency["Decasecond"] = 5] = "Decasecond";
|
|
27
|
-
PaymentFrequency[PaymentFrequency["Minute"] = 6] = "Minute";
|
|
28
|
-
})(PaymentFrequency || (PaymentFrequency = {}));
|
|
17
|
+
// PaymentFrequency enum is now exported from codama-generated types
|
|
29
18
|
// Network constants are now managed in config.ts
|
|
30
19
|
export async function getSrslyProgramAddress(config) {
|
|
31
20
|
const globalConfig = getConfig();
|
|
@@ -74,10 +63,5 @@ export const FACTION_MAPPING = {
|
|
|
74
63
|
2: 'oni',
|
|
75
64
|
3: 'ustur'
|
|
76
65
|
};
|
|
77
|
-
|
|
78
|
-
* Convert PaymentFrequency enum to string
|
|
79
|
-
*/
|
|
80
|
-
export function paymentFrequencyToString(freq) {
|
|
81
|
-
return PaymentFrequency[freq].toLowerCase();
|
|
82
|
-
}
|
|
66
|
+
// PaymentFrequency utilities are now in utils/paymentFrequency.ts
|
|
83
67
|
//# sourceMappingURL=constants.js.map
|