@nosana/kit 2.22.0 → 2.24.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.
- package/README.md +50 -8
- package/dist/NosanaClient.d.ts +2 -0
- package/dist/NosanaClient.d.ts.map +1 -1
- package/dist/NosanaClient.js +3 -0
- package/dist/NosanaClient.js.map +1 -1
- package/dist/index.d.ts +23 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -2
- package/dist/index.js.map +1 -1
- package/dist/services/programs/jobs/JobsProgram.d.ts +48 -1
- package/dist/services/programs/jobs/JobsProgram.d.ts.map +1 -1
- package/dist/services/programs/jobs/JobsProgram.js +95 -31
- package/dist/services/programs/jobs/JobsProgram.js.map +1 -1
- package/dist/services/programs/jobs/computeUnits.generated.d.ts +2 -0
- package/dist/services/programs/jobs/computeUnits.generated.d.ts.map +1 -1
- package/dist/services/programs/jobs/computeUnits.generated.js +2 -0
- package/dist/services/programs/jobs/computeUnits.generated.js.map +1 -1
- package/dist/services/programs/jobs/decode.d.ts.map +1 -1
- package/dist/services/programs/jobs/decode.js +6 -1
- package/dist/services/programs/jobs/decode.js.map +1 -1
- package/dist/services/programs/jobs/discriminators.d.ts.map +1 -1
- package/dist/services/programs/jobs/discriminators.js +3 -1
- package/dist/services/programs/jobs/discriminators.js.map +1 -1
- package/dist/services/programs/jobs/errors.d.ts +11 -0
- package/dist/services/programs/jobs/errors.d.ts.map +1 -0
- package/dist/services/programs/jobs/errors.js +54 -0
- package/dist/services/programs/jobs/errors.js.map +1 -0
- package/dist/services/programs/jobs/index.d.ts +1 -0
- package/dist/services/programs/jobs/index.d.ts.map +1 -1
- package/dist/services/programs/jobs/index.js +1 -0
- package/dist/services/programs/jobs/index.js.map +1 -1
- package/dist/services/programs/jobs/instructions/assign.d.ts.map +1 -1
- package/dist/services/programs/jobs/instructions/assign.js +7 -1
- package/dist/services/programs/jobs/instructions/assign.js.map +1 -1
- package/dist/services/programs/jobs/instructions/close.d.ts.map +1 -1
- package/dist/services/programs/jobs/instructions/close.js +8 -3
- package/dist/services/programs/jobs/instructions/close.js.map +1 -1
- package/dist/services/programs/jobs/instructions/closeSettings.d.ts +10 -0
- package/dist/services/programs/jobs/instructions/closeSettings.d.ts.map +1 -0
- package/dist/services/programs/jobs/instructions/closeSettings.js +22 -0
- package/dist/services/programs/jobs/instructions/closeSettings.js.map +1 -0
- package/dist/services/programs/jobs/instructions/index.d.ts +3 -0
- package/dist/services/programs/jobs/instructions/index.d.ts.map +1 -1
- package/dist/services/programs/jobs/instructions/index.js +3 -0
- package/dist/services/programs/jobs/instructions/index.js.map +1 -1
- package/dist/services/programs/jobs/instructions/list.d.ts.map +1 -1
- package/dist/services/programs/jobs/instructions/list.js +7 -1
- package/dist/services/programs/jobs/instructions/list.js.map +1 -1
- package/dist/services/programs/jobs/instructions/projectAccess.d.ts +25 -0
- package/dist/services/programs/jobs/instructions/projectAccess.d.ts.map +1 -0
- package/dist/services/programs/jobs/instructions/projectAccess.js +37 -0
- package/dist/services/programs/jobs/instructions/projectAccess.js.map +1 -0
- package/dist/services/programs/jobs/instructions/setSettings.d.ts +12 -0
- package/dist/services/programs/jobs/instructions/setSettings.d.ts.map +1 -0
- package/dist/services/programs/jobs/instructions/setSettings.js +23 -0
- package/dist/services/programs/jobs/instructions/setSettings.js.map +1 -0
- package/dist/services/programs/rewards/RewardsProgram.d.ts +51 -0
- package/dist/services/programs/rewards/RewardsProgram.d.ts.map +1 -0
- package/dist/services/programs/rewards/RewardsProgram.js +64 -0
- package/dist/services/programs/rewards/RewardsProgram.js.map +1 -0
- package/dist/services/programs/rewards/index.d.ts +2 -0
- package/dist/services/programs/rewards/index.d.ts.map +1 -0
- package/dist/services/programs/rewards/index.js +2 -0
- package/dist/services/programs/rewards/index.js.map +1 -0
- package/dist/services/programs/stake/StakeProgram.d.ts +5 -0
- package/dist/services/programs/stake/StakeProgram.d.ts.map +1 -1
- package/dist/services/programs/stake/StakeProgram.js +5 -0
- package/dist/services/programs/stake/StakeProgram.js.map +1 -1
- package/dist/services/solana/SolanaService.d.ts.map +1 -1
- package/dist/services/solana/SolanaService.js +3 -2
- package/dist/services/solana/SolanaService.js.map +1 -1
- package/dist/services/solana/rpcSubscriptions.d.ts +18 -0
- package/dist/services/solana/rpcSubscriptions.d.ts.map +1 -0
- package/dist/services/solana/rpcSubscriptions.js +85 -0
- package/dist/services/solana/rpcSubscriptions.js.map +1 -0
- package/dist/utils/keypair.d.ts +22 -0
- package/dist/utils/keypair.d.ts.map +1 -1
- package/dist/utils/keypair.js +28 -1
- package/dist/utils/keypair.js.map +1 -1
- package/package.json +9 -6
package/README.md
CHANGED
|
@@ -669,6 +669,47 @@ const instruction = await client.jobs.createMarket({
|
|
|
669
669
|
await client.solana.buildSignAndSend(instruction);
|
|
670
670
|
```
|
|
671
671
|
|
|
672
|
+
#### Market Settings
|
|
673
|
+
|
|
674
|
+
```typescript
|
|
675
|
+
async setMarketSettings(params: {
|
|
676
|
+
market: Address,
|
|
677
|
+
projectAccessKey: Address
|
|
678
|
+
}): Promise<Instruction>
|
|
679
|
+
|
|
680
|
+
async closeMarketSettings(params: { market: Address }): Promise<Instruction>
|
|
681
|
+
|
|
682
|
+
async marketSettings(market: Address): Promise<MarketSettings | null>
|
|
683
|
+
```
|
|
684
|
+
|
|
685
|
+
Protect a market so that only projects holding an NFT of the `projectAccessKey` collection can post jobs to it. The settings live in a separate account that is created on the first call and can be updated by calling `setMarketSettings` again. Closing the settings opens the market to all projects. Only the market authority can set or close them. `marketSettings` returns `null` for an open market.
|
|
686
|
+
|
|
687
|
+
Posting needs no extra parameters: `list`, `assign` and `post` read the market settings and, on a protected market, look up the wallet's NFT from the access key collection themselves. They throw when the wallet holds none.
|
|
688
|
+
|
|
689
|
+
```typescript
|
|
690
|
+
// Set wallet first (must be market authority)
|
|
691
|
+
client.wallet = yourWallet;
|
|
692
|
+
|
|
693
|
+
// Protect the market with a project access key collection
|
|
694
|
+
const instruction = await client.jobs.setMarketSettings({
|
|
695
|
+
market: address('market-address'),
|
|
696
|
+
projectAccessKey: address('collection-address'),
|
|
697
|
+
});
|
|
698
|
+
await client.solana.buildSignAndSend(instruction);
|
|
699
|
+
|
|
700
|
+
// Projects holding an NFT of the collection post as usual, the NFT is looked up from the wallet
|
|
701
|
+
const listInstruction = await client.jobs.list({
|
|
702
|
+
market: address('market-address'),
|
|
703
|
+
timeout: 3600,
|
|
704
|
+
ipfsHash: 'QmXxx...',
|
|
705
|
+
});
|
|
706
|
+
|
|
707
|
+
// Open the market to all projects again
|
|
708
|
+
const closeInstruction = await client.jobs.closeMarketSettings({
|
|
709
|
+
market: address('market-address'),
|
|
710
|
+
});
|
|
711
|
+
```
|
|
712
|
+
|
|
672
713
|
#### Close a Market
|
|
673
714
|
|
|
674
715
|
```typescript
|
|
@@ -737,7 +778,7 @@ for await (const event of eventStream) {
|
|
|
737
778
|
if (event.type === MonitorEventType.JOB) {
|
|
738
779
|
console.log('Job update:', event.data.address, event.data.state);
|
|
739
780
|
// event.data will have state, node, and timeStart from run account if it exists
|
|
740
|
-
|
|
781
|
+
|
|
741
782
|
// Process updates - save to database, trigger workflows, etc.
|
|
742
783
|
if (event.data.state === JobState.COMPLETED) {
|
|
743
784
|
await processCompletedJob(event.data);
|
|
@@ -1056,9 +1097,9 @@ const client = createNosanaClient(NosanaNetwork.MAINNET, {
|
|
|
1056
1097
|
The API service provides access to three main APIs:
|
|
1057
1098
|
|
|
1058
1099
|
```typescript
|
|
1059
|
-
client.api?.jobs
|
|
1060
|
-
client.api?.credits // Credits API
|
|
1061
|
-
client.api?.markets // Markets API
|
|
1100
|
+
client.api?.jobs; // Jobs API
|
|
1101
|
+
client.api?.credits; // Credits API
|
|
1102
|
+
client.api?.markets; // Markets API
|
|
1062
1103
|
```
|
|
1063
1104
|
|
|
1064
1105
|
### Examples
|
|
@@ -1542,6 +1583,7 @@ await client.solana.buildSignAndSend(instructions);
|
|
|
1542
1583
|
```
|
|
1543
1584
|
|
|
1544
1585
|
The function automatically:
|
|
1586
|
+
|
|
1545
1587
|
- Finds the sender's associated token account
|
|
1546
1588
|
- Finds the recipient's associated token account
|
|
1547
1589
|
- Creates the recipient's ATA if it doesn't exist (returns 2 instructions: create ATA + transfer)
|
|
@@ -1742,10 +1784,10 @@ pnpm --filter @nosana/scenario run test:scenario
|
|
|
1742
1784
|
|
|
1743
1785
|
#### Environment Variables
|
|
1744
1786
|
|
|
1745
|
-
| Variable
|
|
1746
|
-
|
|
1747
|
-
| `NOSANA_NETWORK` | `localnet` | Target network: `localnet`, `devnet`, or `mainnet`
|
|
1748
|
-
| `NOSANA_WALLET`
|
|
1787
|
+
| Variable | Default | Description |
|
|
1788
|
+
| ---------------- | ---------- | ---------------------------------------------------------------- |
|
|
1789
|
+
| `NOSANA_NETWORK` | `localnet` | Target network: `localnet`, `devnet`, or `mainnet` |
|
|
1790
|
+
| `NOSANA_WALLET` | — | Path to a Solana keypair JSON file (required for devnet/mainnet) |
|
|
1749
1791
|
|
|
1750
1792
|
For monorepo setup, build, and development, see the [root README](../../README.md).
|
|
1751
1793
|
|
package/dist/NosanaClient.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import { Logger } from './logger/Logger.js';
|
|
|
9
9
|
import { ClientConfig, PartialClientConfig } from './config/index.js';
|
|
10
10
|
import { type JobsProgram } from './services/programs/jobs/index.js';
|
|
11
11
|
import { type StakeProgram } from './services/programs/stake/index.js';
|
|
12
|
+
import { type RewardsProgram } from './services/programs/rewards/index.js';
|
|
12
13
|
import { type MerkleDistributorProgram } from './services/programs/merkleDistributor/index.js';
|
|
13
14
|
import { type SolanaService } from './services/solana/index.js';
|
|
14
15
|
import { type TokenService } from './services/token/index.js';
|
|
@@ -22,6 +23,7 @@ export interface NosanaClient {
|
|
|
22
23
|
readonly config: ClientConfig;
|
|
23
24
|
readonly jobs: JobsProgram;
|
|
24
25
|
readonly stake: StakeProgram;
|
|
26
|
+
readonly rewards: RewardsProgram;
|
|
25
27
|
readonly merkleDistributor: MerkleDistributorProgram;
|
|
26
28
|
readonly solana: SolanaService;
|
|
27
29
|
readonly nos: TokenService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NosanaClient.d.ts","sourceRoot":"","sources":["../src/NosanaClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAoB,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAA6B,KAAK,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAO5F,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAEL,YAAY,EAGZ,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACxF,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAC3F,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAIlF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,iBAAiB,EAAE,wBAAwB,CAAC;IACrD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC;IAClC;;;;;;;;;;;OAWG;IACH,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;
|
|
1
|
+
{"version":3,"file":"NosanaClient.d.ts","sourceRoot":"","sources":["../src/NosanaClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAoB,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAA6B,KAAK,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAO5F,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAEL,YAAY,EAGZ,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACxF,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAC3F,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACjG,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAIlF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,iBAAiB,EAAE,wBAAwB,CAAC;IACrD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC;IAClC;;;;;;;;;;;OAWG;IACH,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAkJD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,aAAa,GAAG,SAAS,EAClC,YAAY,EAAE,mBAAmB,GAAG;IAAE,OAAO,EAAE,oBAAoB,GAAG;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC/F,YAAY,GAAG;IAAE,OAAO,EAAE,aAAa,CAAA;CAAE,CAAC;AAG7C,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,aAAa,GAAG,SAAS,EAClC,YAAY,EAAE,mBAAmB,GAAG;IAAE,OAAO,EAAE,oBAAoB,GAAG;QAAE,YAAY,CAAC,EAAE,KAAK,CAAA;KAAE,CAAA;CAAE,GAC/F,YAAY,GAAG;IAAE,OAAO,EAAE,cAAc,CAAA;CAAE,CAAC;AAE9C,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,cAAc,EACzD,OAAO,EAAE,aAAa,GAAG,SAAS,EAClC,YAAY,EAAE,mBAAmB,GAAG;IAAE,OAAO,EAAE,CAAC,CAAA;CAAE,GACjD,YAAY,GAAG;IAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CAAC;AAEjC,wBAAgB,kBAAkB,CAChC,OAAO,CAAC,EAAE,aAAa,EACvB,YAAY,CAAC,EAAE,mBAAmB,GACjC,YAAY,CAAC"}
|
package/dist/NosanaClient.js
CHANGED
|
@@ -6,6 +6,7 @@ import { Logger } from './logger/Logger.js';
|
|
|
6
6
|
import { getNosanaConfig, } from './config/index.js';
|
|
7
7
|
import { createJobsProgram } from './services/programs/jobs/index.js';
|
|
8
8
|
import { createStakeProgram } from './services/programs/stake/index.js';
|
|
9
|
+
import { createRewardsProgram } from './services/programs/rewards/index.js';
|
|
9
10
|
import { createMerkleDistributorProgram, } from './services/programs/merkleDistributor/index.js';
|
|
10
11
|
import { createSolanaService } from './services/solana/index.js';
|
|
11
12
|
import { createTokenService } from './services/token/index.js';
|
|
@@ -75,6 +76,7 @@ const createClientFromConfig = (config, network) => {
|
|
|
75
76
|
// Initialize programs
|
|
76
77
|
const jobs = createJobsProgram(programDeps, config.programs);
|
|
77
78
|
const stake = createStakeProgram(programDeps, config.programs);
|
|
79
|
+
const rewards = createRewardsProgram(programDeps, config.programs);
|
|
78
80
|
const merkleDistributor = createMerkleDistributorProgram(programDeps, config.programs);
|
|
79
81
|
// Initialize Nosana Modules
|
|
80
82
|
const ipfs = createIpfsClient(config.ipfs);
|
|
@@ -112,6 +114,7 @@ const createClientFromConfig = (config, network) => {
|
|
|
112
114
|
nos,
|
|
113
115
|
jobs,
|
|
114
116
|
stake,
|
|
117
|
+
rewards,
|
|
115
118
|
merkleDistributor,
|
|
116
119
|
ipfs,
|
|
117
120
|
connect,
|
package/dist/NosanaClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NosanaClient.js","sourceRoot":"","sources":["../src/NosanaClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAoB,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAA4B,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAKzB,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAIL,eAAe,GAEhB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAoB,MAAM,mCAAmC,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAqB,MAAM,oCAAoC,CAAC;AAC3F,OAAO,EACL,8BAA8B,GAE/B,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAsB,MAAM,4BAA4B,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAqB,MAAM,2BAA2B,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAiB,MAAM,8BAA8B,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"NosanaClient.js","sourceRoot":"","sources":["../src/NosanaClient.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -17,7 +17,7 @@ export { createJobsProgram, getNetworkFee, JobState, MarketQueueType, } from './
|
|
|
17
17
|
/**
|
|
18
18
|
* @group @nosana/kit
|
|
19
19
|
*/
|
|
20
|
-
export type { JobsProgram, Job, Market, Run } from './services/programs/jobs/index.js';
|
|
20
|
+
export type { JobsProgram, Job, Market, MarketSettings, Run, SubscriptionOptions, } from './services/programs/jobs/index.js';
|
|
21
21
|
/**
|
|
22
22
|
* @group @nosana/kit
|
|
23
23
|
*/
|
|
@@ -42,6 +42,14 @@ export type { Extend, ExtendParams, ExtendInstruction, } from './services/progra
|
|
|
42
42
|
* @group @nosana/kit
|
|
43
43
|
*/
|
|
44
44
|
export type { Close, CloseParams, CloseInstruction, } from './services/programs/jobs/instructions/close.js';
|
|
45
|
+
/**
|
|
46
|
+
* @group @nosana/kit
|
|
47
|
+
*/
|
|
48
|
+
export type { SetMarketSettings, SetMarketSettingsParams, SetMarketSettingsInstruction, } from './services/programs/jobs/instructions/setSettings.js';
|
|
49
|
+
/**
|
|
50
|
+
* @group @nosana/kit
|
|
51
|
+
*/
|
|
52
|
+
export type { CloseMarketSettings, CloseMarketSettingsParams, CloseMarketSettingsInstruction, } from './services/programs/jobs/instructions/closeSettings.js';
|
|
45
53
|
/**
|
|
46
54
|
* @group @nosana/kit
|
|
47
55
|
*/
|
|
@@ -78,6 +86,10 @@ export type { PostParams, PostInstruction } from './services/programs/jobs/index
|
|
|
78
86
|
* @group @nosana/kit
|
|
79
87
|
*/
|
|
80
88
|
export { MonitorEventType } from './services/programs/jobs/monitor/types.js';
|
|
89
|
+
/**
|
|
90
|
+
* @group @nosana/kit
|
|
91
|
+
*/
|
|
92
|
+
export { isRunClosedError } from './services/programs/jobs/index.js';
|
|
81
93
|
/**
|
|
82
94
|
* @group @nosana/kit
|
|
83
95
|
*/
|
|
@@ -94,6 +106,14 @@ export type { StakeProgram, Stake } from './services/programs/stake/index.js';
|
|
|
94
106
|
* @group @nosana/kit
|
|
95
107
|
*/
|
|
96
108
|
export type { TopupParams, TopupInstructions, CreateTopup, } from './services/programs/stake/instructions/topup.js';
|
|
109
|
+
/**
|
|
110
|
+
* @group @nosana/kit
|
|
111
|
+
*/
|
|
112
|
+
export { createRewardsProgram } from './services/programs/rewards/index.js';
|
|
113
|
+
/**
|
|
114
|
+
* @group @nosana/kit
|
|
115
|
+
*/
|
|
116
|
+
export type { RewardsProgram, Reward, EnterInstruction, } from './services/programs/rewards/index.js';
|
|
97
117
|
/**
|
|
98
118
|
* @group @nosana/kit
|
|
99
119
|
*/
|
|
@@ -157,7 +177,7 @@ export { packInstructions, TRANSACTION_SIZE_LIMIT, MAX_COMPUTE_UNITS, type PackI
|
|
|
157
177
|
/**
|
|
158
178
|
* @group @nosana/kit
|
|
159
179
|
*/
|
|
160
|
-
export { generateWallet, createWalletFromBytes, createWalletFromBase58, loadWalletFromFile, } from './utils/keypair.js';
|
|
180
|
+
export { generateWallet, generateWalletToFile, createWalletFromBytes, createWalletFromBase58, loadWalletFromFile, } from './utils/keypair.js';
|
|
161
181
|
/**
|
|
162
182
|
* @group @nosana/kit
|
|
163
183
|
*/
|
|
@@ -189,7 +209,7 @@ export type { NosanaAuthorization, SignMessageFn, SignerOrKey, AuthorizationStor
|
|
|
189
209
|
/**
|
|
190
210
|
* @group @solana/kit
|
|
191
211
|
*/
|
|
192
|
-
export { address, generateKeyPairSigner, createKeyPairSignerFromBytes, createKeyPairFromBytes, createSignerFromKeyPair, } from '@solana/kit';
|
|
212
|
+
export { address, generateKeyPairSigner, createKeyPairSignerFromBytes, createKeyPairFromBytes, createSignerFromKeyPair, isTransactionPartialSigner, } from '@solana/kit';
|
|
193
213
|
import type { Address as SolanaAddress } from '@solana/kit';
|
|
194
214
|
/**
|
|
195
215
|
* Represents a string that validates as a Solana address or public key.
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD;;GAEG;AACH,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;GAEG;AACH,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAMtD;;GAEG;AACH,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,QAAQ,EACR,eAAe,GAChB,MAAM,mCAAmC,CAAC;AAE3C;;GAEG;AACH,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -20,10 +20,18 @@ export { getJobsInstructionComputeUnits, getJobsInstructionName, decodeJobsInstr
|
|
|
20
20
|
* @group @nosana/kit
|
|
21
21
|
*/
|
|
22
22
|
export { MonitorEventType } from './services/programs/jobs/monitor/types.js';
|
|
23
|
+
/**
|
|
24
|
+
* @group @nosana/kit
|
|
25
|
+
*/
|
|
26
|
+
export { isRunClosedError } from './services/programs/jobs/index.js';
|
|
23
27
|
/**
|
|
24
28
|
* @group @nosana/kit
|
|
25
29
|
*/
|
|
26
30
|
export { createStakeProgram } from './services/programs/stake/index.js';
|
|
31
|
+
/**
|
|
32
|
+
* @group @nosana/kit
|
|
33
|
+
*/
|
|
34
|
+
export { createRewardsProgram } from './services/programs/rewards/index.js';
|
|
27
35
|
/**
|
|
28
36
|
* @group @nosana/kit
|
|
29
37
|
*/
|
|
@@ -79,7 +87,7 @@ export { packInstructions, TRANSACTION_SIZE_LIMIT, MAX_COMPUTE_UNITS, } from './
|
|
|
79
87
|
/**
|
|
80
88
|
* @group @nosana/kit
|
|
81
89
|
*/
|
|
82
|
-
export { generateWallet, createWalletFromBytes, createWalletFromBase58, loadWalletFromFile, } from './utils/keypair.js';
|
|
90
|
+
export { generateWallet, generateWalletToFile, createWalletFromBytes, createWalletFromBase58, loadWalletFromFile, } from './utils/keypair.js';
|
|
83
91
|
// ============================================================================
|
|
84
92
|
// @nosana/kit - Generated Clients (Namespaces)
|
|
85
93
|
// ============================================================================
|
|
@@ -116,7 +124,7 @@ export { createNosanaAuthorization, validate, validateHeaders } from '@nosana/au
|
|
|
116
124
|
/**
|
|
117
125
|
* @group @solana/kit
|
|
118
126
|
*/
|
|
119
|
-
export { address, generateKeyPairSigner, createKeyPairSignerFromBytes, createKeyPairFromBytes, createSignerFromKeyPair, } from '@solana/kit';
|
|
127
|
+
export { address, generateKeyPairSigner, createKeyPairSignerFromBytes, createKeyPairFromBytes, createSignerFromKeyPair, isTransactionPartialSigner, } from '@solana/kit';
|
|
120
128
|
// ============================================================================
|
|
121
129
|
// @nosana/types - Network & Enums
|
|
122
130
|
// ============================================================================
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,oCAAoC;AACpC,+EAA+E;AAE/E;;GAEG;AACH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAYvD,+EAA+E;AAC/E,yBAAyB;AACzB,+EAA+E;AAE/E;;GAEG;AACH,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,QAAQ,EACR,eAAe,GAChB,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type ConvertTypesForDb } from '../../../utils/index.js';
|
|
2
|
-
import type { Address, Instruction, TransactionSigner } from '@solana/kit';
|
|
2
|
+
import type { Address, Commitment, Instruction, TransactionSigner } from '@solana/kit';
|
|
3
3
|
import type { ProgramDeps } from '../../../types.js';
|
|
4
4
|
import type { BatchTransactionResult, SignedBatchTransaction } from '../../solana/SolanaService.js';
|
|
5
5
|
import { type DecodedJobsInstruction } from './decode.js';
|
|
@@ -28,6 +28,11 @@ export type Market = Omit<ConvertTypesForDb<programClient.MarketAccountArgs>, 'q
|
|
|
28
28
|
export type Run = ConvertTypesForDb<programClient.RunAccountArgs> & {
|
|
29
29
|
address: Address;
|
|
30
30
|
};
|
|
31
|
+
/** The settings of a protected market: only holders of the `projectAccessKey` NFT collection may post jobs */
|
|
32
|
+
export type MarketSettings = programClient.MarketSettingsAccountArgs & {
|
|
33
|
+
address: Address;
|
|
34
|
+
market: Address;
|
|
35
|
+
};
|
|
31
36
|
export { MonitorEventType } from './monitor/index.js';
|
|
32
37
|
export type { SimpleMonitorEvent, MonitorEvent } from './monitor/index.js';
|
|
33
38
|
export type PostParams = Instructions.ListParams | Instructions.AssignParams;
|
|
@@ -73,6 +78,15 @@ export declare const JOB_POSTING_NETWORK_FEE = 0.1;
|
|
|
73
78
|
* @group @nosana/kit
|
|
74
79
|
*/
|
|
75
80
|
export declare function getNetworkFee(): number;
|
|
81
|
+
/**
|
|
82
|
+
* How a subscription is held: until `abortSignal` aborts, at `commitment`.
|
|
83
|
+
* @group @nosana/kit
|
|
84
|
+
*/
|
|
85
|
+
export interface SubscriptionOptions {
|
|
86
|
+
abortSignal: AbortSignal;
|
|
87
|
+
/** The commitment changes are reported at; `confirmed` unless given. */
|
|
88
|
+
commitment?: Commitment;
|
|
89
|
+
}
|
|
76
90
|
/**
|
|
77
91
|
* Jobs program interface
|
|
78
92
|
* @group @nosana/kit
|
|
@@ -110,10 +124,34 @@ export interface JobsProgram {
|
|
|
110
124
|
node?: Address;
|
|
111
125
|
job?: Address;
|
|
112
126
|
}): Promise<Run[]>;
|
|
127
|
+
/**
|
|
128
|
+
* Each change to a job's account as it happens, decoded as {@link get} answers
|
|
129
|
+
* it (its run not looked up), until `options.abortSignal` aborts. A connection
|
|
130
|
+
* that drops ends it with an error: subscribe again to go on watching.
|
|
131
|
+
* @param addr The job's address
|
|
132
|
+
* @param options The subscription's abort signal and, optionally, commitment
|
|
133
|
+
*/
|
|
134
|
+
watch(addr: Address, options: SubscriptionOptions): Promise<AsyncIterable<Job>>;
|
|
135
|
+
/**
|
|
136
|
+
* Each run account made or changed for a node and/or a job as it happens,
|
|
137
|
+
* decoded as {@link runs} answers them, until `options.abortSignal` aborts.
|
|
138
|
+
* A connection that drops ends it with an error: subscribe again to go on
|
|
139
|
+
* watching.
|
|
140
|
+
* @param filters The node and/or job whose runs to watch; every run with neither
|
|
141
|
+
* @param options The subscription's abort signal and, optionally, commitment
|
|
142
|
+
*/
|
|
143
|
+
watchRuns(filters: {
|
|
144
|
+
node?: Address;
|
|
145
|
+
job?: Address;
|
|
146
|
+
}, options: SubscriptionOptions): Promise<AsyncIterable<Run>>;
|
|
113
147
|
/**
|
|
114
148
|
* Fetch all market accounts
|
|
115
149
|
*/
|
|
116
150
|
markets(): Promise<Market[]>;
|
|
151
|
+
/**
|
|
152
|
+
* Fetch the settings of a market, `null` when the market has none and is open to all projects
|
|
153
|
+
*/
|
|
154
|
+
marketSettings(market: Address): Promise<MarketSettings | null>;
|
|
117
155
|
/**
|
|
118
156
|
* List a new job to the marketplace
|
|
119
157
|
*/
|
|
@@ -191,6 +229,15 @@ export interface JobsProgram {
|
|
|
191
229
|
* Close a market (synonym for close)
|
|
192
230
|
*/
|
|
193
231
|
closeMarket: Instructions.Close;
|
|
232
|
+
/**
|
|
233
|
+
* Protect a market with a project access key: only holders of that NFT collection may post
|
|
234
|
+
* jobs. Creates the market settings account when needed, only the market authority may call it.
|
|
235
|
+
*/
|
|
236
|
+
setMarketSettings: Instructions.SetMarketSettings;
|
|
237
|
+
/**
|
|
238
|
+
* Close the settings account of a market, opening it to all projects again
|
|
239
|
+
*/
|
|
240
|
+
closeMarketSettings: Instructions.CloseMarketSettings;
|
|
194
241
|
/**
|
|
195
242
|
* Stop a running job
|
|
196
243
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JobsProgram.d.ts","sourceRoot":"","sources":["../../../../src/services/programs/jobs/JobsProgram.ts"],"names":[],"mappings":"AAIA,OAAO,EAAyB,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAExF,OAAO,KAAK,EACV,OAAO,
|
|
1
|
+
{"version":3,"file":"JobsProgram.d.ts","sourceRoot":"","sources":["../../../../src/services/programs/jobs/JobsProgram.ts"],"names":[],"mappings":"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"}
|
|
@@ -117,6 +117,57 @@ export function createJobsProgram(deps, config) {
|
|
|
117
117
|
...convertBigIntToNumber(runAccountData),
|
|
118
118
|
};
|
|
119
119
|
}
|
|
120
|
+
/**
|
|
121
|
+
* The filters that pick out run accounts: every run, or those of a node
|
|
122
|
+
* and/or a job.
|
|
123
|
+
*/
|
|
124
|
+
function runAccountFilters(filters) {
|
|
125
|
+
const runFilters = [
|
|
126
|
+
{
|
|
127
|
+
memcmp: {
|
|
128
|
+
offset: BigInt(0),
|
|
129
|
+
bytes: bs58.encode(Buffer.from(client.RUN_ACCOUNT_DISCRIMINATOR)),
|
|
130
|
+
encoding: 'base58',
|
|
131
|
+
},
|
|
132
|
+
},
|
|
133
|
+
];
|
|
134
|
+
if (filters?.node) {
|
|
135
|
+
runFilters.push({
|
|
136
|
+
memcmp: {
|
|
137
|
+
offset: BigInt(40),
|
|
138
|
+
bytes: filters.node.toString(),
|
|
139
|
+
encoding: 'base58',
|
|
140
|
+
},
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
if (filters?.job) {
|
|
144
|
+
runFilters.push({
|
|
145
|
+
memcmp: {
|
|
146
|
+
offset: BigInt(8),
|
|
147
|
+
bytes: filters.job.toString(),
|
|
148
|
+
encoding: 'base58',
|
|
149
|
+
},
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
return runFilters;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Each notification decoded; one that can't be is logged and passed over,
|
|
156
|
+
* as {@link JobsProgram.runs} does with an account it can't decode.
|
|
157
|
+
*/
|
|
158
|
+
async function* decoded(notifications, decode, what) {
|
|
159
|
+
for await (const notification of notifications) {
|
|
160
|
+
let value;
|
|
161
|
+
try {
|
|
162
|
+
value = decode(notification);
|
|
163
|
+
}
|
|
164
|
+
catch (err) {
|
|
165
|
+
deps.logger.error(`Failed to decode ${what} ${err}`);
|
|
166
|
+
continue;
|
|
167
|
+
}
|
|
168
|
+
yield value;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
120
171
|
/**
|
|
121
172
|
* Merge run account data into a job account.
|
|
122
173
|
* Updates the job state to RUNNING and sets node and timeStart from the run account.
|
|
@@ -219,6 +270,27 @@ export function createJobsProgram(deps, config) {
|
|
|
219
270
|
throw err;
|
|
220
271
|
}
|
|
221
272
|
},
|
|
273
|
+
/**
|
|
274
|
+
* Fetch the settings of a market, `null` when the settings account does not exist
|
|
275
|
+
*/
|
|
276
|
+
async marketSettings(market) {
|
|
277
|
+
try {
|
|
278
|
+
const settingsAddress = await Instructions.getMarketSettingsPda(deps, market, programId);
|
|
279
|
+
const account = await client.fetchMaybeMarketSettingsAccount(deps.solana.rpc, settingsAddress);
|
|
280
|
+
if (!account.exists) {
|
|
281
|
+
return null;
|
|
282
|
+
}
|
|
283
|
+
return {
|
|
284
|
+
address: account.address,
|
|
285
|
+
market,
|
|
286
|
+
projectAccessKey: account.data.projectAccessKey,
|
|
287
|
+
};
|
|
288
|
+
}
|
|
289
|
+
catch (err) {
|
|
290
|
+
deps.logger.error(`Failed to fetch market settings ${err}`);
|
|
291
|
+
throw err;
|
|
292
|
+
}
|
|
293
|
+
},
|
|
222
294
|
/**
|
|
223
295
|
* Fetch multiple job accounts by address
|
|
224
296
|
*/
|
|
@@ -342,40 +414,10 @@ export function createJobsProgram(deps, config) {
|
|
|
342
414
|
*/
|
|
343
415
|
async runs(filters) {
|
|
344
416
|
try {
|
|
345
|
-
const extraGPAFilters = [];
|
|
346
|
-
if (filters) {
|
|
347
|
-
if (filters.node) {
|
|
348
|
-
extraGPAFilters.push({
|
|
349
|
-
memcmp: {
|
|
350
|
-
offset: BigInt(40),
|
|
351
|
-
bytes: filters.node.toString(),
|
|
352
|
-
encoding: 'base58',
|
|
353
|
-
},
|
|
354
|
-
});
|
|
355
|
-
}
|
|
356
|
-
if (filters.job) {
|
|
357
|
-
extraGPAFilters.push({
|
|
358
|
-
memcmp: {
|
|
359
|
-
offset: BigInt(8),
|
|
360
|
-
bytes: filters.job.toString(),
|
|
361
|
-
encoding: 'base58',
|
|
362
|
-
},
|
|
363
|
-
});
|
|
364
|
-
}
|
|
365
|
-
}
|
|
366
417
|
const getProgramAccountsResponse = await deps.solana.rpc
|
|
367
418
|
.getProgramAccounts(programId, {
|
|
368
419
|
encoding: 'base64',
|
|
369
|
-
filters:
|
|
370
|
-
{
|
|
371
|
-
memcmp: {
|
|
372
|
-
offset: BigInt(0),
|
|
373
|
-
bytes: bs58.encode(Buffer.from(client.RUN_ACCOUNT_DISCRIMINATOR)),
|
|
374
|
-
encoding: 'base58',
|
|
375
|
-
},
|
|
376
|
-
},
|
|
377
|
-
...extraGPAFilters,
|
|
378
|
-
],
|
|
420
|
+
filters: runAccountFilters(filters),
|
|
379
421
|
})
|
|
380
422
|
.send();
|
|
381
423
|
const runAccounts = getProgramAccountsResponse
|
|
@@ -397,6 +439,22 @@ export function createJobsProgram(deps, config) {
|
|
|
397
439
|
throw err;
|
|
398
440
|
}
|
|
399
441
|
},
|
|
442
|
+
async watch(addr, { abortSignal, commitment = 'confirmed' }) {
|
|
443
|
+
const notifications = await deps.solana.rpcSubscriptions
|
|
444
|
+
.accountNotifications(addr, { commitment, encoding: 'base64' })
|
|
445
|
+
.subscribe({ abortSignal });
|
|
446
|
+
return decoded(notifications, ({ value }) => transformJobAccount(client.decodeJobAccount(parseBase64RpcAccount(addr, value))), `job ${addr}`);
|
|
447
|
+
},
|
|
448
|
+
async watchRuns(filters, { abortSignal, commitment = 'confirmed' }) {
|
|
449
|
+
const notifications = await deps.solana.rpcSubscriptions
|
|
450
|
+
.programNotifications(programId, {
|
|
451
|
+
commitment,
|
|
452
|
+
encoding: 'base64',
|
|
453
|
+
filters: runAccountFilters(filters),
|
|
454
|
+
})
|
|
455
|
+
.subscribe({ abortSignal });
|
|
456
|
+
return decoded(notifications, ({ value }) => transformRunAccount(client.decodeRunAccount(parseBase64RpcAccount(value.pubkey, value.account))), 'run');
|
|
457
|
+
},
|
|
400
458
|
/**
|
|
401
459
|
* Fetch all market accounts
|
|
402
460
|
*/
|
|
@@ -510,6 +568,12 @@ export function createJobsProgram(deps, config) {
|
|
|
510
568
|
async closeMarket(params) {
|
|
511
569
|
return this.close(params);
|
|
512
570
|
},
|
|
571
|
+
async setMarketSettings(params) {
|
|
572
|
+
return Instructions.setMarketSettings(params, createInstructionsHelper(this.get, this.runs));
|
|
573
|
+
},
|
|
574
|
+
async closeMarketSettings(params) {
|
|
575
|
+
return Instructions.closeMarketSettings(params, createInstructionsHelper(this.get, this.runs));
|
|
576
|
+
},
|
|
513
577
|
async end(params) {
|
|
514
578
|
return Instructions.end(params, createInstructionsHelper(this.get, this.runs));
|
|
515
579
|
},
|