@gala-chain/launchpad 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.dev-env +7 -0
- package/.dockerignore +9 -0
- package/.eslintignore +4 -0
- package/.eslintrc.json +37 -0
- package/.github/workflows/publish-on-tag.yml +72 -0
- package/.github/workflows/test-on-push.yml +32 -0
- package/.nvmrc +1 -0
- package/.prettierignore +4 -0
- package/.prettierrc +12 -0
- package/Dockerfile +31 -0
- package/LICENSE +201 -0
- package/README.md +2 -0
- package/api-config.json +16 -0
- package/e2e/__snapshots__/api.spec.ts.snap +2482 -0
- package/e2e/api-config.json +17 -0
- package/e2e/api.spec.ts +48 -0
- package/e2e/jest.config.js +42 -0
- package/e2e/tsconfig.json +10 -0
- package/jest.config.ts +27 -0
- package/lib/jest.config.d.ts +13 -0
- package/lib/jest.config.d.ts.map +1 -0
- package/lib/jest.config.js +28 -0
- package/lib/jest.config.js.map +1 -0
- package/lib/package.json +54 -0
- package/lib/src/api/index.d.ts +4 -0
- package/lib/src/api/index.d.ts.map +1 -0
- package/lib/src/api/index.js +21 -0
- package/lib/src/api/index.js.map +1 -0
- package/lib/src/api/types/LaunchpadDtos.d.ts +102 -0
- package/lib/src/api/types/LaunchpadDtos.d.ts.map +1 -0
- package/lib/src/api/types/LaunchpadDtos.js +410 -0
- package/lib/src/api/types/LaunchpadDtos.js.map +1 -0
- package/lib/src/api/types/LaunchpadFeeConfig.d.ts +9 -0
- package/lib/src/api/types/LaunchpadFeeConfig.d.ts.map +1 -0
- package/lib/src/api/types/LaunchpadFeeConfig.js +56 -0
- package/lib/src/api/types/LaunchpadFeeConfig.js.map +1 -0
- package/lib/src/api/types/LaunchpadFinalizeAllocation.d.ts +10 -0
- package/lib/src/api/types/LaunchpadFinalizeAllocation.d.ts.map +1 -0
- package/lib/src/api/types/LaunchpadFinalizeAllocation.js +70 -0
- package/lib/src/api/types/LaunchpadFinalizeAllocation.js.map +1 -0
- package/lib/src/api/types/LaunchpadSale.d.ts +35 -0
- package/lib/src/api/types/LaunchpadSale.d.ts.map +1 -0
- package/lib/src/api/types/LaunchpadSale.js +195 -0
- package/lib/src/api/types/LaunchpadSale.js.map +1 -0
- package/lib/src/api/types/index.d.ts +5 -0
- package/lib/src/api/types/index.d.ts.map +1 -0
- package/lib/src/api/types/index.js +22 -0
- package/lib/src/api/types/index.js.map +1 -0
- package/lib/src/api/utils/error.d.ts +20 -0
- package/lib/src/api/utils/error.d.ts.map +1 -0
- package/lib/src/api/utils/error.js +35 -0
- package/lib/src/api/utils/error.js.map +1 -0
- package/lib/src/api/utils/index.d.ts +2 -0
- package/lib/src/api/utils/index.d.ts.map +1 -0
- package/lib/src/api/utils/index.js +19 -0
- package/lib/src/api/utils/index.js.map +1 -0
- package/lib/src/api/validators/decorators.d.ts +19 -0
- package/lib/src/api/validators/decorators.d.ts.map +1 -0
- package/lib/src/api/validators/decorators.js +391 -0
- package/lib/src/api/validators/decorators.js.map +1 -0
- package/lib/src/api/validators/index.d.ts +2 -0
- package/lib/src/api/validators/index.d.ts.map +1 -0
- package/lib/src/api/validators/index.js +19 -0
- package/lib/src/api/validators/index.js.map +1 -0
- package/lib/src/chaincode/LaunchpadContract.d.ts +20 -0
- package/lib/src/chaincode/LaunchpadContract.d.ts.map +1 -0
- package/lib/src/chaincode/LaunchpadContract.js +217 -0
- package/lib/src/chaincode/LaunchpadContract.js.map +1 -0
- package/lib/src/chaincode/dexLaunchpadFeeGate.d.ts +14 -0
- package/lib/src/chaincode/dexLaunchpadFeeGate.d.ts.map +1 -0
- package/lib/src/chaincode/dexLaunchpadFeeGate.js +47 -0
- package/lib/src/chaincode/dexLaunchpadFeeGate.js.map +1 -0
- package/lib/src/chaincode/index.d.ts +2 -0
- package/lib/src/chaincode/index.d.ts.map +1 -0
- package/lib/src/chaincode/index.js +19 -0
- package/lib/src/chaincode/index.js.map +1 -0
- package/lib/src/chaincode/launchpad/buyExactToken.d.ts +20 -0
- package/lib/src/chaincode/launchpad/buyExactToken.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/buyExactToken.js +113 -0
- package/lib/src/chaincode/launchpad/buyExactToken.js.map +1 -0
- package/lib/src/chaincode/launchpad/buyWithNative.d.ts +22 -0
- package/lib/src/chaincode/launchpad/buyWithNative.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/buyWithNative.js +106 -0
- package/lib/src/chaincode/launchpad/buyWithNative.js.map +1 -0
- package/lib/src/chaincode/launchpad/callMemeTokenIn.d.ts +27 -0
- package/lib/src/chaincode/launchpad/callMemeTokenIn.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/callMemeTokenIn.js +76 -0
- package/lib/src/chaincode/launchpad/callMemeTokenIn.js.map +1 -0
- package/lib/src/chaincode/launchpad/callMemeTokenOut.d.ts +25 -0
- package/lib/src/chaincode/launchpad/callMemeTokenOut.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/callMemeTokenOut.js +56 -0
- package/lib/src/chaincode/launchpad/callMemeTokenOut.js.map +1 -0
- package/lib/src/chaincode/launchpad/callNativeTokenIn.d.ts +25 -0
- package/lib/src/chaincode/launchpad/callNativeTokenIn.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/callNativeTokenIn.js +51 -0
- package/lib/src/chaincode/launchpad/callNativeTokenIn.js.map +1 -0
- package/lib/src/chaincode/launchpad/callNativeTokenOut.d.ts +26 -0
- package/lib/src/chaincode/launchpad/callNativeTokenOut.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/callNativeTokenOut.js +60 -0
- package/lib/src/chaincode/launchpad/callNativeTokenOut.js.map +1 -0
- package/lib/src/chaincode/launchpad/configureLaunchpadFeeConfig.d.ts +4 -0
- package/lib/src/chaincode/launchpad/configureLaunchpadFeeConfig.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/configureLaunchpadFeeConfig.js +58 -0
- package/lib/src/chaincode/launchpad/configureLaunchpadFeeConfig.js.map +1 -0
- package/lib/src/chaincode/launchpad/createSale.d.ts +26 -0
- package/lib/src/chaincode/launchpad/createSale.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/createSale.js +129 -0
- package/lib/src/chaincode/launchpad/createSale.js.map +1 -0
- package/lib/src/chaincode/launchpad/fees.d.ts +6 -0
- package/lib/src/chaincode/launchpad/fees.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/fees.js +85 -0
- package/lib/src/chaincode/launchpad/fees.js.map +1 -0
- package/lib/src/chaincode/launchpad/fetchLaunchpadAdressConfig.d.ts +4 -0
- package/lib/src/chaincode/launchpad/fetchLaunchpadAdressConfig.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/fetchLaunchpadAdressConfig.js +36 -0
- package/lib/src/chaincode/launchpad/fetchLaunchpadAdressConfig.js.map +1 -0
- package/lib/src/chaincode/launchpad/fetchSaleDetails.d.ts +19 -0
- package/lib/src/chaincode/launchpad/fetchSaleDetails.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/fetchSaleDetails.js +49 -0
- package/lib/src/chaincode/launchpad/fetchSaleDetails.js.map +1 -0
- package/lib/src/chaincode/launchpad/finaliseSale.d.ts +4 -0
- package/lib/src/chaincode/launchpad/finaliseSale.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/finaliseSale.js +144 -0
- package/lib/src/chaincode/launchpad/finaliseSale.js.map +1 -0
- package/lib/src/chaincode/launchpad/finalizeTokenAllocation.d.ts +4 -0
- package/lib/src/chaincode/launchpad/finalizeTokenAllocation.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/finalizeTokenAllocation.js +43 -0
- package/lib/src/chaincode/launchpad/finalizeTokenAllocation.js.map +1 -0
- package/lib/src/chaincode/launchpad/index.d.ts +15 -0
- package/lib/src/chaincode/launchpad/index.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/index.js +32 -0
- package/lib/src/chaincode/launchpad/index.js.map +1 -0
- package/lib/src/chaincode/launchpad/preMintCalculation.d.ts +17 -0
- package/lib/src/chaincode/launchpad/preMintCalculation.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/preMintCalculation.js +56 -0
- package/lib/src/chaincode/launchpad/preMintCalculation.js.map +1 -0
- package/lib/src/chaincode/launchpad/sellExactToken.d.ts +22 -0
- package/lib/src/chaincode/launchpad/sellExactToken.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/sellExactToken.js +102 -0
- package/lib/src/chaincode/launchpad/sellExactToken.js.map +1 -0
- package/lib/src/chaincode/launchpad/sellWithNative.d.ts +23 -0
- package/lib/src/chaincode/launchpad/sellWithNative.d.ts.map +1 -0
- package/lib/src/chaincode/launchpad/sellWithNative.js +97 -0
- package/lib/src/chaincode/launchpad/sellWithNative.js.map +1 -0
- package/lib/src/chaincode/utils/index.d.ts +2 -0
- package/lib/src/chaincode/utils/index.d.ts.map +1 -0
- package/lib/src/chaincode/utils/index.js +19 -0
- package/lib/src/chaincode/utils/index.js.map +1 -0
- package/lib/src/chaincode/utils/launchpadSaleUtils.d.ts +11 -0
- package/lib/src/chaincode/utils/launchpadSaleUtils.d.ts.map +1 -0
- package/lib/src/chaincode/utils/launchpadSaleUtils.js +65 -0
- package/lib/src/chaincode/utils/launchpadSaleUtils.js.map +1 -0
- package/lib/src/cli.d.ts +3 -0
- package/lib/src/cli.d.ts.map +1 -0
- package/lib/src/cli.js +41 -0
- package/lib/src/cli.js.map +1 -0
- package/lib/src/index.d.ts +14 -0
- package/lib/src/index.d.ts.map +1 -0
- package/lib/src/index.js +32 -0
- package/lib/src/index.js.map +1 -0
- package/lib/tsconfig.tsbuildinfo +1 -0
- package/package.json +54 -0
- package/src/api/index.ts +18 -0
- package/src/api/types/LaunchpadDtos.ts +362 -0
- package/src/api/types/LaunchpadFeeConfig.ts +45 -0
- package/src/api/types/LaunchpadFinalizeAllocation.ts +65 -0
- package/src/api/types/LaunchpadSale.ts +200 -0
- package/src/api/types/index.ts +19 -0
- package/src/api/utils/error.ts +32 -0
- package/src/api/utils/index.ts +16 -0
- package/src/api/validators/decorators.spec.ts +277 -0
- package/src/api/validators/decorators.ts +401 -0
- package/src/api/validators/index.ts +16 -0
- package/src/chaincode/LaunchpadContract.ts +211 -0
- package/src/chaincode/dexLaunchpadFeeGate.ts +43 -0
- package/src/chaincode/index.ts +16 -0
- package/src/chaincode/launchpad/buyExactToken.ts +128 -0
- package/src/chaincode/launchpad/buyWithNative.ts +120 -0
- package/src/chaincode/launchpad/callMemeTokenIn.ts +82 -0
- package/src/chaincode/launchpad/callMemeTokenOut.ts +80 -0
- package/src/chaincode/launchpad/callNativeTokenIn.ts +71 -0
- package/src/chaincode/launchpad/callNativeTokenOut.ts +81 -0
- package/src/chaincode/launchpad/configureLaunchpadFeeConfig.ts +69 -0
- package/src/chaincode/launchpad/createSale.ts +157 -0
- package/src/chaincode/launchpad/fees.ts +105 -0
- package/src/chaincode/launchpad/fetchLaunchpadAdressConfig.ts +38 -0
- package/src/chaincode/launchpad/fetchSaleDetails.ts +53 -0
- package/src/chaincode/launchpad/finaliseSale.ts +217 -0
- package/src/chaincode/launchpad/finalizeTokenAllocation.ts +47 -0
- package/src/chaincode/launchpad/index.ts +28 -0
- package/src/chaincode/launchpad/preMintCalculation.ts +61 -0
- package/src/chaincode/launchpad/sellExactToken.ts +122 -0
- package/src/chaincode/launchpad/sellWithNative.ts +112 -0
- package/src/chaincode/utils/index.ts +15 -0
- package/src/chaincode/utils/launchpadSaleUtils.ts +68 -0
- package/src/cli.ts +63 -0
- package/src/index.ts +32 -0
- package/tsconfig.base.json +29 -0
- package/tsconfig.json +19 -0
- package/tsconfig.spec.json +11 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"channels": [
|
|
3
|
+
{
|
|
4
|
+
"pathFragment": "product",
|
|
5
|
+
"channelName": "product-channel",
|
|
6
|
+
"asLocalHost": true,
|
|
7
|
+
"contracts": [
|
|
8
|
+
{
|
|
9
|
+
"pathFragment": "launchpad",
|
|
10
|
+
"chaincodeName": "basic-product",
|
|
11
|
+
"contractName": "Launchpad"
|
|
12
|
+
}
|
|
13
|
+
]
|
|
14
|
+
}
|
|
15
|
+
]
|
|
16
|
+
}
|
|
17
|
+
|
package/e2e/api.spec.ts
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Gala Games Inc. All rights reserved.
|
|
3
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License.
|
|
5
|
+
* You may obtain a copy of the License at
|
|
6
|
+
*
|
|
7
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
*
|
|
9
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
* See the License for the specific language governing permissions and
|
|
13
|
+
* limitations under the License.
|
|
14
|
+
*/
|
|
15
|
+
import { commonContractAPI } from "@gala-chain/api";
|
|
16
|
+
import { AdminChainClients, TestClients, transactionSuccess } from "@gala-chain/test";
|
|
17
|
+
|
|
18
|
+
jest.setTimeout(30000);
|
|
19
|
+
|
|
20
|
+
describe("API snapshots", () => {
|
|
21
|
+
const contractConfig = {
|
|
22
|
+
launchpad: {
|
|
23
|
+
channel: "product-channel",
|
|
24
|
+
chaincode: "basic-product",
|
|
25
|
+
contract: "Launchpad",
|
|
26
|
+
api: commonContractAPI
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
let client: AdminChainClients<typeof contractConfig>;
|
|
31
|
+
|
|
32
|
+
beforeAll(async () => {
|
|
33
|
+
client = await TestClients.createForAdmin(contractConfig);
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
afterAll(async () => {
|
|
37
|
+
await client.disconnect();
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
test(`Api of ${contractConfig.launchpad.contract}`, async () => {
|
|
41
|
+
// When
|
|
42
|
+
const response = await client.launchpad.GetContractAPI();
|
|
43
|
+
|
|
44
|
+
// Then
|
|
45
|
+
expect(response).toEqual(transactionSuccess());
|
|
46
|
+
expect({ ...response.Data, contractVersion: "?.?.?" }).toMatchSnapshot();
|
|
47
|
+
});
|
|
48
|
+
});
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Gala Games Inc. All rights reserved.
|
|
3
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License.
|
|
5
|
+
* You may obtain a copy of the License at
|
|
6
|
+
*
|
|
7
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
*
|
|
9
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
* See the License for the specific language governing permissions and
|
|
13
|
+
* limitations under the License.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
require("dotenv/config"); // see https://github.com/motdotla/dotenv#how-do-i-use-dotenv-with-import
|
|
17
|
+
|
|
18
|
+
if (process.env.GALA_NETWORK_ROOT_PATH === undefined) {
|
|
19
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
20
|
+
const path = require("path");
|
|
21
|
+
const networkRoot = path.resolve(__dirname, "../test-network");
|
|
22
|
+
process.env.GALA_NETWORK_ROOT_PATH = networkRoot;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// Force less information in logs.
|
|
26
|
+
// We want this, because while running tests from command line Fabric produces
|
|
27
|
+
// a lot of logs, and it's hard to see the actual test output.
|
|
28
|
+
// Also, we need to add it in Jest config file, to change it early enough, since
|
|
29
|
+
// the log level for chaincodes is configured during import resolution.
|
|
30
|
+
process.env.CORE_CHAINCODE_LOGGING_LEVEL = "error";
|
|
31
|
+
process.env.LOG_LEVEL = "error";
|
|
32
|
+
|
|
33
|
+
// Use role-based access control (RBAC) for tests.
|
|
34
|
+
process.env.USE_RBAC = "true";
|
|
35
|
+
|
|
36
|
+
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
|
|
37
|
+
module.exports = {
|
|
38
|
+
preset: "ts-jest",
|
|
39
|
+
moduleFileExtensions: ["js", "json", "ts"],
|
|
40
|
+
rootDir: ".",
|
|
41
|
+
testEnvironment: "node"
|
|
42
|
+
};
|
package/jest.config.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Gala Games Inc. All rights reserved.
|
|
3
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License.
|
|
5
|
+
* You may obtain a copy of the License at
|
|
6
|
+
*
|
|
7
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
*
|
|
9
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
* See the License for the specific language governing permissions and
|
|
13
|
+
* limitations under the License.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
// use role-based access control (RBAC) for tests.
|
|
17
|
+
process.env.USE_RBAC = "true";
|
|
18
|
+
|
|
19
|
+
export default {
|
|
20
|
+
displayName: "chaincode-template",
|
|
21
|
+
testEnvironment: "node",
|
|
22
|
+
transform: {
|
|
23
|
+
"^.+\\.[tj]s$": ["ts-jest", { tsconfig: "<rootDir>/tsconfig.spec.json" }]
|
|
24
|
+
},
|
|
25
|
+
moduleFileExtensions: ["ts", "js"],
|
|
26
|
+
modulePathIgnorePatterns: ["lib", "e2e"]
|
|
27
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
displayName: string;
|
|
3
|
+
testEnvironment: string;
|
|
4
|
+
transform: {
|
|
5
|
+
"^.+\\.[tj]s$": (string | {
|
|
6
|
+
tsconfig: string;
|
|
7
|
+
})[];
|
|
8
|
+
};
|
|
9
|
+
moduleFileExtensions: string[];
|
|
10
|
+
modulePathIgnorePatterns: string[];
|
|
11
|
+
};
|
|
12
|
+
export default _default;
|
|
13
|
+
//# sourceMappingURL=jest.config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jest.config.d.ts","sourceRoot":"","sources":["../jest.config.ts"],"names":[],"mappings":";;;;;;;;;;;AAkBA,wBAQE"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) Gala Games Inc. All rights reserved.
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
// use role-based access control (RBAC) for tests.
|
|
18
|
+
process.env.USE_RBAC = "true";
|
|
19
|
+
exports.default = {
|
|
20
|
+
displayName: "chaincode-template",
|
|
21
|
+
testEnvironment: "node",
|
|
22
|
+
transform: {
|
|
23
|
+
"^.+\\.[tj]s$": ["ts-jest", { tsconfig: "<rootDir>/tsconfig.spec.json" }]
|
|
24
|
+
},
|
|
25
|
+
moduleFileExtensions: ["ts", "js"],
|
|
26
|
+
modulePathIgnorePatterns: ["lib", "e2e"]
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=jest.config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jest.config.js","sourceRoot":"","sources":["../jest.config.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;AAEH,kDAAkD;AAClD,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC;AAE9B,kBAAe;IACb,WAAW,EAAE,oBAAoB;IACjC,eAAe,EAAE,MAAM;IACvB,SAAS,EAAE;QACT,cAAc,EAAE,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,8BAA8B,EAAE,CAAC;KAC1E;IACD,oBAAoB,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;IAClC,wBAAwB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;CACzC,CAAC"}
|
package/lib/package.json
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@gala-chain/launchpad",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "GalaChain Launchpad Chaincode",
|
|
5
|
+
"main": "lib/src/index.js",
|
|
6
|
+
"types": "lib/src/index.d.ts",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"start": "node lib/src/cli.js start",
|
|
9
|
+
"clean": "tsc -b --clean",
|
|
10
|
+
"build": "tsc -p tsconfig.json",
|
|
11
|
+
"build:watch": "tsc -p tsconfig.json -w",
|
|
12
|
+
"lint": "eslint . --ext .ts,.js",
|
|
13
|
+
"fix": "eslint . --ext .ts,.js --fix",
|
|
14
|
+
"format": "prettier --config .prettierrc 'src/**/*.ts' 'e2e/**/*.ts' --write",
|
|
15
|
+
"prepublishOnly": "npm run format && npm run build && npm run lint && npm run test",
|
|
16
|
+
"network:start": "galachain network:up -C=product-channel -t=curator -n=basic-product -d=./ --envConfig=./.dev-env --watch",
|
|
17
|
+
"network:up": "galachain network:up -C=product-channel -t=curator -n=basic-product -d=./ --envConfig=./.dev-env --contracts=$(node lib/src/cli.js get-contract-names | tail -n 1)",
|
|
18
|
+
"network:prune": "galachain network:prune",
|
|
19
|
+
"network:recreate": "npm run network:prune && rm -rf ./test-network && npm run network:start",
|
|
20
|
+
"test": "jest",
|
|
21
|
+
"test:e2e": "jest --config=e2e/jest.config.js --runInBand",
|
|
22
|
+
"test:e2e-mocked": "env $(grep -v '^#' .dev-env | grep -v '^$' | xargs) CURATORORG_MOCKED_CHAINCODE_DIR=./ jest --config=e2e/jest.config.js --runInBand",
|
|
23
|
+
"update-snapshot": "jest --updateSnapshot"
|
|
24
|
+
},
|
|
25
|
+
"dependencies": {
|
|
26
|
+
"@gala-chain/api": "2.3.1",
|
|
27
|
+
"@gala-chain/chaincode": "2.3.1",
|
|
28
|
+
"@gala-chain/dex": "1.0.1",
|
|
29
|
+
"@grpc/grpc-js": "1.10.10",
|
|
30
|
+
"decimal.js": "^10.5.0",
|
|
31
|
+
"dotenv": "^16.0.1",
|
|
32
|
+
"fabric-contract-api": "2.5.6",
|
|
33
|
+
"fabric-shim": "2.5.6"
|
|
34
|
+
},
|
|
35
|
+
"devDependencies": {
|
|
36
|
+
"@gala-chain/cli": "2.3.1",
|
|
37
|
+
"@gala-chain/client": "2.3.1",
|
|
38
|
+
"@gala-chain/test": "2.3.1",
|
|
39
|
+
"@trivago/prettier-plugin-sort-imports": "^4.3.0",
|
|
40
|
+
"@types/jest": "^29.5.12",
|
|
41
|
+
"@types/node": "18.11.9",
|
|
42
|
+
"@typescript-eslint/eslint-plugin": "^5.47.1",
|
|
43
|
+
"@typescript-eslint/parser": "^5.47.1",
|
|
44
|
+
"eslint": "^8.30.0",
|
|
45
|
+
"eslint-config-prettier": "^8.5.0",
|
|
46
|
+
"eslint-plugin-prettier": "^5.0.1",
|
|
47
|
+
"eslint-prettier-config": "^1.0.1",
|
|
48
|
+
"jest": "^29.7.0",
|
|
49
|
+
"prettier": "^3.1.1",
|
|
50
|
+
"ts-jest": "^29.1.2",
|
|
51
|
+
"ts-node": "^10.9.1",
|
|
52
|
+
"typescript": "^5.3.3"
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAeA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) Gala Games Inc. All rights reserved.
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
const tslib_1 = require("tslib");
|
|
18
|
+
tslib_1.__exportStar(require("./types"), exports);
|
|
19
|
+
tslib_1.__exportStar(require("./utils"), exports);
|
|
20
|
+
tslib_1.__exportStar(require("./validators"), exports);
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEH,kDAAwB;AACxB,kDAAwB;AACxB,uDAA6B"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { ChainCallDTO, ChainObject, SubmitCallDTO, TokenBalance, UserAlias } from "@gala-chain/api";
|
|
2
|
+
import BigNumber from "bignumber.js";
|
|
3
|
+
export declare class ReverseBondingCurveConfigurationChainObject extends ChainObject {
|
|
4
|
+
minFeePortion: BigNumber;
|
|
5
|
+
maxFeePortion: BigNumber;
|
|
6
|
+
constructor(minFeePortion: BigNumber, maxFeePortion: BigNumber);
|
|
7
|
+
}
|
|
8
|
+
export declare class ReverseBondingCurveConfigurationDto extends ChainCallDTO {
|
|
9
|
+
minFeePortion: BigNumber;
|
|
10
|
+
maxFeePortion: BigNumber;
|
|
11
|
+
toChainObject(): ReverseBondingCurveConfigurationChainObject;
|
|
12
|
+
}
|
|
13
|
+
export declare class CreateTokenSaleDTO extends SubmitCallDTO {
|
|
14
|
+
tokenName: string;
|
|
15
|
+
tokenSymbol: string;
|
|
16
|
+
tokenDescription: string;
|
|
17
|
+
tokenCollection: string;
|
|
18
|
+
tokenCategory: string;
|
|
19
|
+
tokenImage: string;
|
|
20
|
+
preBuyQuantity: BigNumber;
|
|
21
|
+
websiteUrl?: string;
|
|
22
|
+
telegramUrl?: string;
|
|
23
|
+
twitterUrl?: string;
|
|
24
|
+
reverseBondingCurveConfiguration?: ReverseBondingCurveConfigurationDto;
|
|
25
|
+
constructor(tokenName: string, tokenSymbol: string, tokenDescription: string, tokenImage: string, preBuyQuantity: BigNumber, tokenCollection: string, tokenCategory: string, reverseBondingCurveConfiguration?: ReverseBondingCurveConfigurationDto);
|
|
26
|
+
}
|
|
27
|
+
export declare class CreateSaleResDto {
|
|
28
|
+
image: string;
|
|
29
|
+
tokenName: string;
|
|
30
|
+
symbol: string;
|
|
31
|
+
description: string;
|
|
32
|
+
websiteUrl?: string;
|
|
33
|
+
telegramUrl?: string;
|
|
34
|
+
twitterUrl?: string;
|
|
35
|
+
initialBuyQuantity: string;
|
|
36
|
+
vaultAddress: UserAlias;
|
|
37
|
+
creatorAddress: UserAlias;
|
|
38
|
+
collection: string;
|
|
39
|
+
category: string;
|
|
40
|
+
functionName: string;
|
|
41
|
+
isFinalized: boolean;
|
|
42
|
+
tokenStringKey: string;
|
|
43
|
+
reverseBondingCurveConfiguration?: ReverseBondingCurveConfigurationDto;
|
|
44
|
+
}
|
|
45
|
+
export declare class TokenExtraFeesDto {
|
|
46
|
+
maxAcceptableReverseBondingCurveFee?: BigNumber;
|
|
47
|
+
}
|
|
48
|
+
export declare class ExactTokenQuantityDto extends SubmitCallDTO {
|
|
49
|
+
vaultAddress: UserAlias;
|
|
50
|
+
tokenQuantity: BigNumber;
|
|
51
|
+
expectedNativeToken?: BigNumber;
|
|
52
|
+
extraFees?: TokenExtraFeesDto;
|
|
53
|
+
constructor(vaultAddress: UserAlias, tokenQuantity?: BigNumber);
|
|
54
|
+
}
|
|
55
|
+
export declare class NativeTokenQuantityDto extends SubmitCallDTO {
|
|
56
|
+
vaultAddress: UserAlias;
|
|
57
|
+
nativeTokenQuantity: BigNumber;
|
|
58
|
+
expectedToken?: BigNumber;
|
|
59
|
+
extraFees?: TokenExtraFeesDto;
|
|
60
|
+
constructor(vaultAddress: UserAlias, nativeTokenQuantity?: BigNumber);
|
|
61
|
+
}
|
|
62
|
+
export declare class TradeResDto {
|
|
63
|
+
tokenBalance?: TokenBalance;
|
|
64
|
+
nativeTokenBalance?: TokenBalance;
|
|
65
|
+
tokenQuantity?: string;
|
|
66
|
+
nativeTokenAmount?: string;
|
|
67
|
+
inputQuantity: string;
|
|
68
|
+
outputQuantity: string;
|
|
69
|
+
tokenName: string;
|
|
70
|
+
tradeType: string;
|
|
71
|
+
vaultAddress: UserAlias;
|
|
72
|
+
userAddress: UserAlias;
|
|
73
|
+
isFinalized: boolean;
|
|
74
|
+
functionName: string;
|
|
75
|
+
}
|
|
76
|
+
export declare class FetchSaleDto extends ChainCallDTO {
|
|
77
|
+
vaultAddress: UserAlias;
|
|
78
|
+
constructor(vaultAddress: UserAlias);
|
|
79
|
+
}
|
|
80
|
+
export declare class PreMintCalculationDto extends ChainCallDTO {
|
|
81
|
+
nativeTokenQuantity: BigNumber;
|
|
82
|
+
constructor(nativeTokenQuantity?: BigNumber);
|
|
83
|
+
}
|
|
84
|
+
export declare class ConfigureLaunchpadFeeAddressDto extends SubmitCallDTO {
|
|
85
|
+
newPlatformFeeAddress?: UserAlias;
|
|
86
|
+
newAuthorities?: UserAlias[];
|
|
87
|
+
}
|
|
88
|
+
export declare class FinalizeTokenAllocationDto extends SubmitCallDTO {
|
|
89
|
+
platformFeePercentage: number;
|
|
90
|
+
ownerFeePercentage: number;
|
|
91
|
+
}
|
|
92
|
+
export declare class CollectFeeAddressDto extends ChainCallDTO {
|
|
93
|
+
platformFeeCollectAddress: UserAlias;
|
|
94
|
+
}
|
|
95
|
+
export declare class TradeCalculationResFeesDto {
|
|
96
|
+
reverseBondingCurve: string;
|
|
97
|
+
}
|
|
98
|
+
export declare class TradeCalculationResDto {
|
|
99
|
+
calculatedQuantity: string;
|
|
100
|
+
extraFees: TradeCalculationResFeesDto;
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=LaunchpadDtos.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LaunchpadDtos.d.ts","sourceRoot":"","sources":["../../../../src/api/types/LaunchpadDtos.ts"],"names":[],"mappings":"AAcA,OAAO,EAEL,YAAY,EACZ,WAAW,EAEX,aAAa,EACb,YAAY,EACZ,SAAS,EACV,MAAM,iBAAiB,CAAC;AACzB,OAAO,SAAS,MAAM,cAAc,CAAC;AAiBrC,qBAAa,2CAA4C,SAAQ,WAAW;IAK1E,aAAa,EAAE,SAAS,CAAC;IAKzB,aAAa,EAAE,SAAS,CAAC;gBAEb,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS;CAK/D;AAED,qBAAa,mCAAoC,SAAQ,YAAY;IAKnE,aAAa,EAAE,SAAS,CAAC;IAKzB,aAAa,EAAE,SAAS,CAAC;IAEzB,aAAa,IAAI,2CAA2C;CAG7D;AAED,qBAAa,kBAAmB,SAAQ,aAAa;IAG5C,SAAS,EAAE,MAAM,CAAC;IAIlB,WAAW,EAAE,MAAM,CAAC;IAIpB,gBAAgB,EAAE,MAAM,CAAC;IAIzB,eAAe,EAAE,MAAM,CAAC;IAIxB,aAAa,EAAE,MAAM,CAAC;IAItB,UAAU,EAAE,MAAM,CAAC;IAGnB,cAAc,EAAE,SAAS,CAAC;IAI1B,UAAU,CAAC,EAAE,MAAM,CAAC;IAIpB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,UAAU,CAAC,EAAE,MAAM,CAAC;IAKpB,gCAAgC,CAAC,EAAE,mCAAmC,CAAC;gBAG5E,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,SAAS,EACzB,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,EACrB,gCAAgC,CAAC,EAAE,mCAAmC;CAYzE;AAED,qBAAa,gBAAgB;IAEpB,KAAK,EAAE,MAAM,CAAC;IAGd,SAAS,EAAE,MAAM,CAAC;IAGlB,MAAM,EAAE,MAAM,CAAC;IAGf,WAAW,EAAE,MAAM,CAAC;IAGpB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,kBAAkB,EAAE,MAAM,CAAC;IAI3B,YAAY,EAAE,SAAS,CAAC;IAIxB,cAAc,EAAE,SAAS,CAAC;IAG1B,UAAU,EAAE,MAAM,CAAC;IAGnB,QAAQ,EAAE,MAAM,CAAC;IAGjB,YAAY,EAAE,MAAM,CAAC;IAIrB,WAAW,EAAE,OAAO,CAAC;IAIrB,cAAc,EAAE,MAAM,CAAC;IAKvB,gCAAgC,CAAC,EAAE,mCAAmC,CAAC;CAC/E;AAED,qBAAa,iBAAiB;IAGrB,mCAAmC,CAAC,EAAE,SAAS,CAAC;CACxD;AAED,qBAAa,qBAAsB,SAAQ,aAAa;IAG/C,YAAY,EAAE,SAAS,CAAC;IAIxB,aAAa,EAAE,SAAS,CAAC;IAIzB,mBAAmB,CAAC,EAAE,SAAS,CAAC;IAKhC,SAAS,CAAC,EAAE,iBAAiB,CAAC;gBAEzB,YAAY,EAAE,SAAS,EAAE,aAAa,GAAE,SAA4B;CAKjF;AAED,qBAAa,sBAAuB,SAAQ,aAAa;IAGhD,YAAY,EAAE,SAAS,CAAC;IAIxB,mBAAmB,EAAE,SAAS,CAAC;IAI/B,aAAa,CAAC,EAAE,SAAS,CAAC;IAK1B,SAAS,CAAC,EAAE,iBAAiB,CAAC;gBAEzB,YAAY,EAAE,SAAS,EAAE,mBAAmB,GAAE,SAA4B;CAKvF;AAED,qBAAa,WAAW;IAEf,YAAY,CAAC,EAAE,YAAY,CAAC;IAG5B,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAGlC,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAG3B,aAAa,EAAE,MAAM,CAAC;IAGtB,cAAc,EAAE,MAAM,CAAC;IAGvB,SAAS,EAAE,MAAM,CAAC;IAGlB,SAAS,EAAE,MAAM,CAAC;IAIlB,YAAY,EAAE,SAAS,CAAC;IAIxB,WAAW,EAAE,SAAS,CAAC;IAIvB,WAAW,EAAE,OAAO,CAAC;IAGrB,YAAY,EAAE,MAAM,CAAC;CAC7B;AAED,qBAAa,YAAa,SAAQ,YAAY;IAIrC,YAAY,EAAE,SAAS,CAAC;gBACnB,YAAY,EAAE,SAAS;CAIpC;AAED,qBAAa,qBAAsB,SAAQ,YAAY;IAI9C,mBAAmB,EAAE,SAAS,CAAC;gBAE1B,mBAAmB,GAAE,SAA4B;CAI9D;AAED,qBAAa,+BAAgC,SAAQ,aAAa;IAGzD,qBAAqB,CAAC,EAAE,SAAS,CAAC;IAIlC,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC;CACrC;AAED,qBAAa,0BAA2B,SAAQ,aAAa;IAIpD,qBAAqB,EAAE,MAAM,CAAC;IAK9B,kBAAkB,EAAE,MAAM,CAAC;CACnC;AAED,qBAAa,oBAAqB,SAAQ,YAAY;IAG7C,yBAAyB,EAAE,SAAS,CAAC;CAC7C;AAED,qBAAa,0BAA0B;IAGrC,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,qBAAa,sBAAsB;IAG1B,kBAAkB,EAAE,MAAM,CAAC;IAI3B,SAAS,EAAE,0BAA0B,CAAC;CAC9C"}
|