@star-factory/sdk-launchpad 0.1.0 → 0.1.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/dist/index.d.ts CHANGED
@@ -1,3 +1,8 @@
1
+ import { PublicKey } from '@solana/web3.js';
2
+ type LaunchpadIdlJson = {
3
+ address: string;
4
+ };
5
+ export declare const LAUNCHPAD_IDL: LaunchpadIdlJson;
1
6
  /**
2
7
  * Star Launchpad SDK
3
8
  *
@@ -18,10 +23,12 @@
18
23
  * @see https://docs.combinator.trade/llms.txt
19
24
  * @see programs/launchpad/spec/09-zc-dao-creation.md
20
25
  */
26
+ export { dummyWallet, getLaunchpadProgram, type LaunchpadIdl } from './program';
21
27
  export { LaunchpadSDK } from './sdk';
22
28
  export * from './types';
23
29
  export { derivePoolAddress, sortMints } from './pdas';
24
30
  export * from './instructions';
25
31
  export * from './claims';
26
32
  export * from './zc';
33
+ export declare const LAUNCHPAD_PROGRAM_ID: PublicKey;
27
34
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAGrC,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGtD,cAAc,gBAAgB,CAAC;AAG/B,cAAc,UAAU,CAAC;AAGzB,cAAc,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,KAAK,gBAAgB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAC5C,eAAO,MAAM,aAAa,EAAmB,gBAAgB,CAAC;AAE9D;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAGrC,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGtD,cAAc,gBAAgB,CAAC;AAG/B,cAAc,UAAU,CAAC;AAGzB,cAAc,MAAM,CAAC;AAErB,eAAO,MAAM,oBAAoB,WAAuC,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,10 @@
1
1
  "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LAUNCHPAD_PROGRAM_ID = exports.sortMints = exports.derivePoolAddress = exports.LaunchpadSDK = exports.getLaunchpadProgram = exports.dummyWallet = exports.LAUNCHPAD_IDL = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const web3_js_1 = require("@solana/web3.js");
6
+ const launchpad_json_1 = tslib_1.__importDefault(require("./idl/launchpad.json"));
7
+ exports.LAUNCHPAD_IDL = launchpad_json_1.default;
2
8
  /**
3
9
  * Star Launchpad SDK
4
10
  *
@@ -19,10 +25,10 @@
19
25
  * @see https://docs.combinator.trade/llms.txt
20
26
  * @see programs/launchpad/spec/09-zc-dao-creation.md
21
27
  */
22
- Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.sortMints = exports.derivePoolAddress = exports.LaunchpadSDK = void 0;
24
- const tslib_1 = require("tslib");
25
28
  // Main SDK
29
+ var program_1 = require("./program");
30
+ Object.defineProperty(exports, "dummyWallet", { enumerable: true, get: function () { return program_1.dummyWallet; } });
31
+ Object.defineProperty(exports, "getLaunchpadProgram", { enumerable: true, get: function () { return program_1.getLaunchpadProgram; } });
26
32
  var sdk_1 = require("./sdk");
27
33
  Object.defineProperty(exports, "LaunchpadSDK", { enumerable: true, get: function () { return sdk_1.LaunchpadSDK; } });
28
34
  // Types
@@ -37,4 +43,5 @@ tslib_1.__exportStar(require("./instructions"), exports);
37
43
  tslib_1.__exportStar(require("./claims"), exports);
38
44
  // ZC (re-export everything)
39
45
  tslib_1.__exportStar(require("./zc"), exports);
46
+ exports.LAUNCHPAD_PROGRAM_ID = new web3_js_1.PublicKey(exports.LAUNCHPAD_IDL.address);
40
47
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;;AAEH,WAAW;AACX,6BAAqC;AAA5B,mGAAA,YAAY,OAAA;AAErB,QAAQ;AACR,kDAAwB;AAExB,yBAAyB;AACzB,+BAAsD;AAA7C,yGAAA,iBAAiB,OAAA;AAAE,iGAAA,SAAS,OAAA;AAErC,mDAAmD;AACnD,yDAA+B;AAE/B,sCAAsC;AACtC,mDAAyB;AAEzB,4BAA4B;AAC5B,+CAAqB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,6CAA4C;AAC5C,kFAAgD;AAGnC,QAAA,aAAa,GAAG,wBAAgC,CAAC;AAE9D;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,WAAW;AACX,qCAAgF;AAAvE,sGAAA,WAAW,OAAA;AAAE,8GAAA,mBAAmB,OAAA;AACzC,6BAAqC;AAA5B,mGAAA,YAAY,OAAA;AAErB,QAAQ;AACR,kDAAwB;AAExB,yBAAyB;AACzB,+BAAsD;AAA7C,yGAAA,iBAAiB,OAAA;AAAE,iGAAA,SAAS,OAAA;AAErC,mDAAmD;AACnD,yDAA+B;AAE/B,sCAAsC;AACtC,mDAAyB;AAEzB,4BAA4B;AAC5B,+CAAqB;AAER,QAAA,oBAAoB,GAAG,IAAI,mBAAS,CAAC,qBAAa,CAAC,OAAO,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"initialize-launch.d.ts","sourceRoot":"","sources":["../../src/instructions/initialize-launch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAMtD,OAAO,EAEH,UAAU,EAGV,WAAW,EAEd,MAAM,iBAAiB,CAAC;AAGzB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAaxD;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,EAC9B,IAAI,EAAE,uBAAuB,GAC5B,OAAO,CAAC,WAAW,CAAC,CA2EtB"}
1
+ {"version":3,"file":"initialize-launch.d.ts","sourceRoot":"","sources":["../../src/instructions/initialize-launch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAMtD,OAAO,EAEL,UAAU,EAGV,WAAW,EAEZ,MAAM,iBAAiB,CAAC;AAGzB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AA4CxD;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,EAC9B,IAAI,EAAE,uBAAuB,GAC5B,OAAO,CAAC,WAAW,CAAC,CA6EtB"}
@@ -5,6 +5,25 @@ const spl_token_1 = require("@solana/spl-token");
5
5
  const web3_js_1 = require("@solana/web3.js");
6
6
  const pdas_1 = require("../claims/pdas");
7
7
  const pdas_2 = require("./pdas");
8
+ const MIN_RAISE_WINDOW_SECS = 1n;
9
+ const MAX_RAISE_WINDOW_SECS = 365n * 24n * 60n * 60n; // 31,536,000
10
+ const EPOCH_MS_THRESHOLD = 100000000000n;
11
+ function validateFundraiseTimeWindow(startTime, endTime) {
12
+ const start = BigInt(startTime.toString());
13
+ const end = BigInt(endTime.toString());
14
+ if (end <= start) {
15
+ throw new Error(`Invalid fundraise window: endTime (${end.toString()}) must be greater than startTime (${start.toString()}). ` +
16
+ 'Both values must be unix timestamps in seconds.');
17
+ }
18
+ const window = end - start;
19
+ if (window < MIN_RAISE_WINDOW_SECS || window > MAX_RAISE_WINDOW_SECS) {
20
+ const secondsHint = `Vault requires endTime - startTime to be between ${MIN_RAISE_WINDOW_SECS.toString()} and ${MAX_RAISE_WINDOW_SECS.toString()} seconds.`;
21
+ const msHint = (start > EPOCH_MS_THRESHOLD || end > EPOCH_MS_THRESHOLD)
22
+ ? ' Detected very large timestamp(s), which usually means milliseconds were provided instead of seconds.'
23
+ : '';
24
+ throw new Error(`Invalid fundraise window: endTime - startTime = ${window.toString()} seconds. ${secondsHint}${msHint}`);
25
+ }
26
+ }
8
27
  // ============================================================================
9
28
  // initialize_launch Transaction Builder
10
29
  // ============================================================================
@@ -20,6 +39,7 @@ const pdas_2 = require("./pdas");
20
39
  */
21
40
  async function buildInitializeLaunchTx(connection, launchpadProgram, opts) {
22
41
  const { creator, seed, vaultSeed, totalSupply, tokensToParticipants, quoteMint, minRaise, targetRaise, startTime, endTime, vaultProgramId, feePayer, computeUnits, priorityFee, } = opts;
42
+ validateFundraiseTimeWindow(startTime, endTime);
23
43
  const launchpadProgramId = launchpadProgram.programId;
24
44
  // Derive all accounts deterministically
25
45
  const [launchConfig] = (0, pdas_1.deriveLaunchConfigPda)(creator, BigInt(seed.toString()), launchpadProgramId);
@@ -1 +1 @@
1
- {"version":3,"file":"initialize-launch.js","sourceRoot":"","sources":["../../src/instructions/initialize-launch.ts"],"names":[],"mappings":";;AAuCA,0DA+EC;AArHD,iDAI2B;AAC3B,6CAOyB;AAEzB,yCAAiF;AAEjF,iCAA4D;AAQ5D,+EAA+E;AAC/E,wCAAwC;AACxC,+EAA+E;AAE/E;;;;;;;;;GASG;AACI,KAAK,UAAU,uBAAuB,CAC3C,UAAsB,EACtB,gBAA8B,EAC9B,IAA6B;IAE7B,MAAM,EACJ,OAAO,EACP,IAAI,EACJ,SAAS,EACT,WAAW,EACX,oBAAoB,EACpB,SAAS,EACT,QAAQ,EACR,WAAW,EACX,SAAS,EACT,OAAO,EACP,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,WAAW,GACZ,GAAG,IAAI,CAAC;IAET,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,SAAsB,CAAC;IAEnE,wCAAwC;IACxC,MAAM,CAAC,YAAY,CAAC,GAAG,IAAA,4BAAqB,EAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC;IACnG,MAAM,CAAC,eAAe,CAAC,GAAG,IAAA,+BAAwB,EAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;IACrF,MAAM,CAAC,KAAK,CAAC,GAAG,IAAA,qBAAc,EAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;IACtF,MAAM,CAAC,SAAS,CAAC,GAAG,IAAA,yBAAkB,EAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,IAAA,yCAA6B,EAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAEvE,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAEhC,CAAC;IAEF,MAAM,EAAE,GAA2B,MAAM,OAAO,CAAC,gBAAgB,CAAC;QAC9D,IAAI;QACJ,SAAS;QACT,WAAW;QACX,oBAAoB;QACpB,eAAe,EAAE;YACf,QAAQ;YACR,WAAW;YACX,SAAS;YACT,OAAO;SACR;KACF,CAAC;SACD,QAAQ,CAAC;QACR,OAAO;QACP,YAAY;QACZ,eAAe;QACf,SAAS;QACT,KAAK;QACL,QAAQ;QACR,SAAS;QACT,YAAY,EAAE,cAAc;QAC5B,sBAAsB,EAAE,uCAA2B;QACnD,YAAY,EAAE,4BAAgB;QAC9B,aAAa,EAAE,uBAAa,CAAC,SAAS;KACvC,CAAC;SACD,WAAW,EAAE,CAAC;IAEjB,MAAM,EAAE,GAAG,IAAI,qBAAW,EAAE,CAAC;IAE7B,IAAI,YAAY,EAAE,CAAC;QACjB,EAAE,CAAC,GAAG,CAAC,8BAAoB,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,EAAE,CAAC,GAAG,CAAC,8BAAoB,CAAC,mBAAmB,CAAC,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IACnF,CAAC;IAED,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACX,EAAE,CAAC,QAAQ,GAAG,QAAQ,IAAI,OAAO,CAAC;IAElC,MAAM,EAAE,SAAS,EAAE,oBAAoB,EAAE,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC7F,EAAE,CAAC,eAAe,GAAG,SAAS,CAAC;IAC/B,EAAE,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IAE/C,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"initialize-launch.js","sourceRoot":"","sources":["../../src/instructions/initialize-launch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { Idl, Wallet } from '@coral-xyz/anchor';
2
+ import { Program } from '@coral-xyz/anchor';
3
+ import { Connection, Keypair, PublicKey } from '@solana/web3.js';
4
+ export type LaunchpadIdl = Idl & {
5
+ address: string;
6
+ };
7
+ export declare const dummyWallet: Wallet & {
8
+ payer: Keypair;
9
+ };
10
+ /**
11
+ * Create an Anchor Program client for launchpad without requiring callers to
12
+ * pass providers/wallets in API routes and backend contexts.
13
+ */
14
+ export declare function getLaunchpadProgram(connection: Connection, programId?: PublicKey): Program<LaunchpadIdl>;
15
+ //# sourceMappingURL=program.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAkB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAIjE,MAAM,MAAM,YAAY,GAAG,GAAG,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAGrD,eAAO,MAAM,WAAW,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAA;CAKlD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,YAAY,CAAC,CAavB"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dummyWallet = void 0;
4
+ exports.getLaunchpadProgram = getLaunchpadProgram;
5
+ const tslib_1 = require("tslib");
6
+ const anchor_1 = require("@coral-xyz/anchor");
7
+ const web3_js_1 = require("@solana/web3.js");
8
+ const launchpad_json_1 = tslib_1.__importDefault(require("./idl/launchpad.json"));
9
+ const DUMMY_KEYPAIR = web3_js_1.Keypair.generate();
10
+ exports.dummyWallet = {
11
+ publicKey: DUMMY_KEYPAIR.publicKey,
12
+ signAllTransactions: async (txs) => txs,
13
+ signTransaction: async (tx) => tx,
14
+ payer: DUMMY_KEYPAIR,
15
+ };
16
+ /**
17
+ * Create an Anchor Program client for launchpad without requiring callers to
18
+ * pass providers/wallets in API routes and backend contexts.
19
+ */
20
+ function getLaunchpadProgram(connection, programId) {
21
+ const idl = launchpad_json_1.default;
22
+ const provider = new anchor_1.AnchorProvider(connection, exports.dummyWallet, {
23
+ commitment: 'confirmed',
24
+ });
25
+ const envPidStr = process.env.NEXT_PUBLIC_LAUNCHPAD_PROGRAM_ID || process.env.LAUNCHPAD_PROGRAM_ID;
26
+ const pidOverride = programId ?? (envPidStr ? new web3_js_1.PublicKey(envPidStr) : undefined);
27
+ // Keep IDL address as default, but allow deterministic program-id override per env.
28
+ const effectiveIdl = pidOverride ? { ...idl, address: pidOverride.toBase58() } : idl;
29
+ return new anchor_1.Program(effectiveIdl, provider);
30
+ }
31
+ //# sourceMappingURL=program.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":";;;AAoBA,kDAgBC;;AAnCD,8CAA4D;AAC5D,6CAAiE;AAEjE,kFAAqD;AAIrD,MAAM,aAAa,GAAG,iBAAO,CAAC,QAAQ,EAAE,CAAC;AAC5B,QAAA,WAAW,GAAgC;IACtD,SAAS,EAAE,aAAa,CAAC,SAAS;IAClC,mBAAmB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG;IACvC,eAAe,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE;IACjC,KAAK,EAAE,aAAa;CACrB,CAAC;AAEF;;;GAGG;AACH,SAAgB,mBAAmB,CACjC,UAAsB,EACtB,SAAqB;IAErB,MAAM,GAAG,GAAG,wBAAiC,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,uBAAc,CAAC,UAAU,EAAE,mBAAW,EAAE;QAC3D,UAAU,EAAE,WAAW;KACxB,CAAC,CAAC;IAEH,MAAM,SAAS,GACb,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;IACnF,MAAM,WAAW,GAAG,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,mBAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAEpF,oFAAoF;IACpF,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IACrF,OAAO,IAAI,gBAAO,CAAe,YAAY,EAAE,QAAQ,CAAC,CAAC;AAC3D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@star-factory/sdk-launchpad",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "TypeScript SDK for Star Launchpad - Token launches with DAO integration",
5
5
  "license": "MIT",
6
6
  "author": "Star Protocol",
@@ -16,7 +16,7 @@
16
16
  "main": "dist/index.js",
17
17
  "types": "dist/index.d.ts",
18
18
  "scripts": {
19
- "build": "rm -rf dist && tsc -p ./tsconfig.json",
19
+ "build": "rm -rf dist && tsc -p ./tsconfig.json && mkdir -p dist/idl && cp -f src/idl/launchpad.json dist/idl/launchpad.json",
20
20
  "prepublishOnly": "yarn build",
21
21
  "clean": "rm -rf dist",
22
22
  "test": "echo 'No tests yet'"