@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.
Files changed (200) hide show
  1. package/.dev-env +7 -0
  2. package/.dockerignore +9 -0
  3. package/.eslintignore +4 -0
  4. package/.eslintrc.json +37 -0
  5. package/.github/workflows/publish-on-tag.yml +72 -0
  6. package/.github/workflows/test-on-push.yml +32 -0
  7. package/.nvmrc +1 -0
  8. package/.prettierignore +4 -0
  9. package/.prettierrc +12 -0
  10. package/Dockerfile +31 -0
  11. package/LICENSE +201 -0
  12. package/README.md +2 -0
  13. package/api-config.json +16 -0
  14. package/e2e/__snapshots__/api.spec.ts.snap +2482 -0
  15. package/e2e/api-config.json +17 -0
  16. package/e2e/api.spec.ts +48 -0
  17. package/e2e/jest.config.js +42 -0
  18. package/e2e/tsconfig.json +10 -0
  19. package/jest.config.ts +27 -0
  20. package/lib/jest.config.d.ts +13 -0
  21. package/lib/jest.config.d.ts.map +1 -0
  22. package/lib/jest.config.js +28 -0
  23. package/lib/jest.config.js.map +1 -0
  24. package/lib/package.json +54 -0
  25. package/lib/src/api/index.d.ts +4 -0
  26. package/lib/src/api/index.d.ts.map +1 -0
  27. package/lib/src/api/index.js +21 -0
  28. package/lib/src/api/index.js.map +1 -0
  29. package/lib/src/api/types/LaunchpadDtos.d.ts +102 -0
  30. package/lib/src/api/types/LaunchpadDtos.d.ts.map +1 -0
  31. package/lib/src/api/types/LaunchpadDtos.js +410 -0
  32. package/lib/src/api/types/LaunchpadDtos.js.map +1 -0
  33. package/lib/src/api/types/LaunchpadFeeConfig.d.ts +9 -0
  34. package/lib/src/api/types/LaunchpadFeeConfig.d.ts.map +1 -0
  35. package/lib/src/api/types/LaunchpadFeeConfig.js +56 -0
  36. package/lib/src/api/types/LaunchpadFeeConfig.js.map +1 -0
  37. package/lib/src/api/types/LaunchpadFinalizeAllocation.d.ts +10 -0
  38. package/lib/src/api/types/LaunchpadFinalizeAllocation.d.ts.map +1 -0
  39. package/lib/src/api/types/LaunchpadFinalizeAllocation.js +70 -0
  40. package/lib/src/api/types/LaunchpadFinalizeAllocation.js.map +1 -0
  41. package/lib/src/api/types/LaunchpadSale.d.ts +35 -0
  42. package/lib/src/api/types/LaunchpadSale.d.ts.map +1 -0
  43. package/lib/src/api/types/LaunchpadSale.js +195 -0
  44. package/lib/src/api/types/LaunchpadSale.js.map +1 -0
  45. package/lib/src/api/types/index.d.ts +5 -0
  46. package/lib/src/api/types/index.d.ts.map +1 -0
  47. package/lib/src/api/types/index.js +22 -0
  48. package/lib/src/api/types/index.js.map +1 -0
  49. package/lib/src/api/utils/error.d.ts +20 -0
  50. package/lib/src/api/utils/error.d.ts.map +1 -0
  51. package/lib/src/api/utils/error.js +35 -0
  52. package/lib/src/api/utils/error.js.map +1 -0
  53. package/lib/src/api/utils/index.d.ts +2 -0
  54. package/lib/src/api/utils/index.d.ts.map +1 -0
  55. package/lib/src/api/utils/index.js +19 -0
  56. package/lib/src/api/utils/index.js.map +1 -0
  57. package/lib/src/api/validators/decorators.d.ts +19 -0
  58. package/lib/src/api/validators/decorators.d.ts.map +1 -0
  59. package/lib/src/api/validators/decorators.js +391 -0
  60. package/lib/src/api/validators/decorators.js.map +1 -0
  61. package/lib/src/api/validators/index.d.ts +2 -0
  62. package/lib/src/api/validators/index.d.ts.map +1 -0
  63. package/lib/src/api/validators/index.js +19 -0
  64. package/lib/src/api/validators/index.js.map +1 -0
  65. package/lib/src/chaincode/LaunchpadContract.d.ts +20 -0
  66. package/lib/src/chaincode/LaunchpadContract.d.ts.map +1 -0
  67. package/lib/src/chaincode/LaunchpadContract.js +217 -0
  68. package/lib/src/chaincode/LaunchpadContract.js.map +1 -0
  69. package/lib/src/chaincode/dexLaunchpadFeeGate.d.ts +14 -0
  70. package/lib/src/chaincode/dexLaunchpadFeeGate.d.ts.map +1 -0
  71. package/lib/src/chaincode/dexLaunchpadFeeGate.js +47 -0
  72. package/lib/src/chaincode/dexLaunchpadFeeGate.js.map +1 -0
  73. package/lib/src/chaincode/index.d.ts +2 -0
  74. package/lib/src/chaincode/index.d.ts.map +1 -0
  75. package/lib/src/chaincode/index.js +19 -0
  76. package/lib/src/chaincode/index.js.map +1 -0
  77. package/lib/src/chaincode/launchpad/buyExactToken.d.ts +20 -0
  78. package/lib/src/chaincode/launchpad/buyExactToken.d.ts.map +1 -0
  79. package/lib/src/chaincode/launchpad/buyExactToken.js +113 -0
  80. package/lib/src/chaincode/launchpad/buyExactToken.js.map +1 -0
  81. package/lib/src/chaincode/launchpad/buyWithNative.d.ts +22 -0
  82. package/lib/src/chaincode/launchpad/buyWithNative.d.ts.map +1 -0
  83. package/lib/src/chaincode/launchpad/buyWithNative.js +106 -0
  84. package/lib/src/chaincode/launchpad/buyWithNative.js.map +1 -0
  85. package/lib/src/chaincode/launchpad/callMemeTokenIn.d.ts +27 -0
  86. package/lib/src/chaincode/launchpad/callMemeTokenIn.d.ts.map +1 -0
  87. package/lib/src/chaincode/launchpad/callMemeTokenIn.js +76 -0
  88. package/lib/src/chaincode/launchpad/callMemeTokenIn.js.map +1 -0
  89. package/lib/src/chaincode/launchpad/callMemeTokenOut.d.ts +25 -0
  90. package/lib/src/chaincode/launchpad/callMemeTokenOut.d.ts.map +1 -0
  91. package/lib/src/chaincode/launchpad/callMemeTokenOut.js +56 -0
  92. package/lib/src/chaincode/launchpad/callMemeTokenOut.js.map +1 -0
  93. package/lib/src/chaincode/launchpad/callNativeTokenIn.d.ts +25 -0
  94. package/lib/src/chaincode/launchpad/callNativeTokenIn.d.ts.map +1 -0
  95. package/lib/src/chaincode/launchpad/callNativeTokenIn.js +51 -0
  96. package/lib/src/chaincode/launchpad/callNativeTokenIn.js.map +1 -0
  97. package/lib/src/chaincode/launchpad/callNativeTokenOut.d.ts +26 -0
  98. package/lib/src/chaincode/launchpad/callNativeTokenOut.d.ts.map +1 -0
  99. package/lib/src/chaincode/launchpad/callNativeTokenOut.js +60 -0
  100. package/lib/src/chaincode/launchpad/callNativeTokenOut.js.map +1 -0
  101. package/lib/src/chaincode/launchpad/configureLaunchpadFeeConfig.d.ts +4 -0
  102. package/lib/src/chaincode/launchpad/configureLaunchpadFeeConfig.d.ts.map +1 -0
  103. package/lib/src/chaincode/launchpad/configureLaunchpadFeeConfig.js +58 -0
  104. package/lib/src/chaincode/launchpad/configureLaunchpadFeeConfig.js.map +1 -0
  105. package/lib/src/chaincode/launchpad/createSale.d.ts +26 -0
  106. package/lib/src/chaincode/launchpad/createSale.d.ts.map +1 -0
  107. package/lib/src/chaincode/launchpad/createSale.js +129 -0
  108. package/lib/src/chaincode/launchpad/createSale.js.map +1 -0
  109. package/lib/src/chaincode/launchpad/fees.d.ts +6 -0
  110. package/lib/src/chaincode/launchpad/fees.d.ts.map +1 -0
  111. package/lib/src/chaincode/launchpad/fees.js +85 -0
  112. package/lib/src/chaincode/launchpad/fees.js.map +1 -0
  113. package/lib/src/chaincode/launchpad/fetchLaunchpadAdressConfig.d.ts +4 -0
  114. package/lib/src/chaincode/launchpad/fetchLaunchpadAdressConfig.d.ts.map +1 -0
  115. package/lib/src/chaincode/launchpad/fetchLaunchpadAdressConfig.js +36 -0
  116. package/lib/src/chaincode/launchpad/fetchLaunchpadAdressConfig.js.map +1 -0
  117. package/lib/src/chaincode/launchpad/fetchSaleDetails.d.ts +19 -0
  118. package/lib/src/chaincode/launchpad/fetchSaleDetails.d.ts.map +1 -0
  119. package/lib/src/chaincode/launchpad/fetchSaleDetails.js +49 -0
  120. package/lib/src/chaincode/launchpad/fetchSaleDetails.js.map +1 -0
  121. package/lib/src/chaincode/launchpad/finaliseSale.d.ts +4 -0
  122. package/lib/src/chaincode/launchpad/finaliseSale.d.ts.map +1 -0
  123. package/lib/src/chaincode/launchpad/finaliseSale.js +144 -0
  124. package/lib/src/chaincode/launchpad/finaliseSale.js.map +1 -0
  125. package/lib/src/chaincode/launchpad/finalizeTokenAllocation.d.ts +4 -0
  126. package/lib/src/chaincode/launchpad/finalizeTokenAllocation.d.ts.map +1 -0
  127. package/lib/src/chaincode/launchpad/finalizeTokenAllocation.js +43 -0
  128. package/lib/src/chaincode/launchpad/finalizeTokenAllocation.js.map +1 -0
  129. package/lib/src/chaincode/launchpad/index.d.ts +15 -0
  130. package/lib/src/chaincode/launchpad/index.d.ts.map +1 -0
  131. package/lib/src/chaincode/launchpad/index.js +32 -0
  132. package/lib/src/chaincode/launchpad/index.js.map +1 -0
  133. package/lib/src/chaincode/launchpad/preMintCalculation.d.ts +17 -0
  134. package/lib/src/chaincode/launchpad/preMintCalculation.d.ts.map +1 -0
  135. package/lib/src/chaincode/launchpad/preMintCalculation.js +56 -0
  136. package/lib/src/chaincode/launchpad/preMintCalculation.js.map +1 -0
  137. package/lib/src/chaincode/launchpad/sellExactToken.d.ts +22 -0
  138. package/lib/src/chaincode/launchpad/sellExactToken.d.ts.map +1 -0
  139. package/lib/src/chaincode/launchpad/sellExactToken.js +102 -0
  140. package/lib/src/chaincode/launchpad/sellExactToken.js.map +1 -0
  141. package/lib/src/chaincode/launchpad/sellWithNative.d.ts +23 -0
  142. package/lib/src/chaincode/launchpad/sellWithNative.d.ts.map +1 -0
  143. package/lib/src/chaincode/launchpad/sellWithNative.js +97 -0
  144. package/lib/src/chaincode/launchpad/sellWithNative.js.map +1 -0
  145. package/lib/src/chaincode/utils/index.d.ts +2 -0
  146. package/lib/src/chaincode/utils/index.d.ts.map +1 -0
  147. package/lib/src/chaincode/utils/index.js +19 -0
  148. package/lib/src/chaincode/utils/index.js.map +1 -0
  149. package/lib/src/chaincode/utils/launchpadSaleUtils.d.ts +11 -0
  150. package/lib/src/chaincode/utils/launchpadSaleUtils.d.ts.map +1 -0
  151. package/lib/src/chaincode/utils/launchpadSaleUtils.js +65 -0
  152. package/lib/src/chaincode/utils/launchpadSaleUtils.js.map +1 -0
  153. package/lib/src/cli.d.ts +3 -0
  154. package/lib/src/cli.d.ts.map +1 -0
  155. package/lib/src/cli.js +41 -0
  156. package/lib/src/cli.js.map +1 -0
  157. package/lib/src/index.d.ts +14 -0
  158. package/lib/src/index.d.ts.map +1 -0
  159. package/lib/src/index.js +32 -0
  160. package/lib/src/index.js.map +1 -0
  161. package/lib/tsconfig.tsbuildinfo +1 -0
  162. package/package.json +54 -0
  163. package/src/api/index.ts +18 -0
  164. package/src/api/types/LaunchpadDtos.ts +362 -0
  165. package/src/api/types/LaunchpadFeeConfig.ts +45 -0
  166. package/src/api/types/LaunchpadFinalizeAllocation.ts +65 -0
  167. package/src/api/types/LaunchpadSale.ts +200 -0
  168. package/src/api/types/index.ts +19 -0
  169. package/src/api/utils/error.ts +32 -0
  170. package/src/api/utils/index.ts +16 -0
  171. package/src/api/validators/decorators.spec.ts +277 -0
  172. package/src/api/validators/decorators.ts +401 -0
  173. package/src/api/validators/index.ts +16 -0
  174. package/src/chaincode/LaunchpadContract.ts +211 -0
  175. package/src/chaincode/dexLaunchpadFeeGate.ts +43 -0
  176. package/src/chaincode/index.ts +16 -0
  177. package/src/chaincode/launchpad/buyExactToken.ts +128 -0
  178. package/src/chaincode/launchpad/buyWithNative.ts +120 -0
  179. package/src/chaincode/launchpad/callMemeTokenIn.ts +82 -0
  180. package/src/chaincode/launchpad/callMemeTokenOut.ts +80 -0
  181. package/src/chaincode/launchpad/callNativeTokenIn.ts +71 -0
  182. package/src/chaincode/launchpad/callNativeTokenOut.ts +81 -0
  183. package/src/chaincode/launchpad/configureLaunchpadFeeConfig.ts +69 -0
  184. package/src/chaincode/launchpad/createSale.ts +157 -0
  185. package/src/chaincode/launchpad/fees.ts +105 -0
  186. package/src/chaincode/launchpad/fetchLaunchpadAdressConfig.ts +38 -0
  187. package/src/chaincode/launchpad/fetchSaleDetails.ts +53 -0
  188. package/src/chaincode/launchpad/finaliseSale.ts +217 -0
  189. package/src/chaincode/launchpad/finalizeTokenAllocation.ts +47 -0
  190. package/src/chaincode/launchpad/index.ts +28 -0
  191. package/src/chaincode/launchpad/preMintCalculation.ts +61 -0
  192. package/src/chaincode/launchpad/sellExactToken.ts +122 -0
  193. package/src/chaincode/launchpad/sellWithNative.ts +112 -0
  194. package/src/chaincode/utils/index.ts +15 -0
  195. package/src/chaincode/utils/launchpadSaleUtils.ts +68 -0
  196. package/src/cli.ts +63 -0
  197. package/src/index.ts +32 -0
  198. package/tsconfig.base.json +29 -0
  199. package/tsconfig.json +19 -0
  200. package/tsconfig.spec.json +11 -0
@@ -0,0 +1,391 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BigNumberLessThanOrEqualOther = exports.BigNumberMax = exports.IsStringArrayRecord = exports.IsStringRecord = exports.IsLessThan = exports.IsNonZeroBigNumber = exports.BigNumberIsInteger = exports.BigNumberIsNotNegative = exports.BigNumberIsNotInfinity = exports.BigNumberIsNegative = exports.BigNumberIsPositive = exports.IsBigNumber = exports.ArrayUniqueObjects = exports.ArrayUniqueConcat = exports.IsDifferentValue = exports.IsWholeNumber = void 0;
4
+ const tslib_1 = require("tslib");
5
+ /*
6
+ * Copyright (c) Gala Games Inc. All rights reserved.
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ */
19
+ const api_1 = require("@gala-chain/api");
20
+ const bignumber_js_1 = tslib_1.__importDefault(require("bignumber.js"));
21
+ const class_validator_1 = require("class-validator");
22
+ function IsWholeNumber(property, validationOptions) {
23
+ return function (object, propertyName) {
24
+ (0, class_validator_1.registerDecorator)({
25
+ name: "isWholeNumber",
26
+ target: object.constructor,
27
+ propertyName,
28
+ constraints: [property],
29
+ options: validationOptions,
30
+ validator: {
31
+ validate(value, args) {
32
+ const [relatedPropertyName] = args.constraints;
33
+ const relatedValue = args.object[relatedPropertyName];
34
+ const num = Number(relatedValue);
35
+ return num - Math.floor(num) === 0;
36
+ }
37
+ }
38
+ });
39
+ };
40
+ }
41
+ exports.IsWholeNumber = IsWholeNumber;
42
+ function IsDifferentValue(property, validationOptions) {
43
+ return function (object, propertyName) {
44
+ (0, class_validator_1.registerDecorator)({
45
+ name: "IsDifferentValue",
46
+ target: object.constructor,
47
+ propertyName,
48
+ constraints: [property],
49
+ options: validationOptions,
50
+ validator: {
51
+ validate(value, args) {
52
+ const [relatedPropertyName] = args.constraints;
53
+ const relatedValue = args.object[relatedPropertyName];
54
+ if ((typeof value !== "string" && value !== undefined) ||
55
+ (typeof relatedValue !== "string" && relatedValue !== undefined)) {
56
+ throw new api_1.NotImplementedError("IsDifferentValue only works with string or undefined");
57
+ }
58
+ return value !== relatedValue;
59
+ }
60
+ }
61
+ });
62
+ };
63
+ }
64
+ exports.IsDifferentValue = IsDifferentValue;
65
+ function ArrayUniqueConcat(property, validationOptions) {
66
+ return function (object, propertyName) {
67
+ (0, class_validator_1.registerDecorator)({
68
+ name: "ArrayUniqueConcat",
69
+ target: object.constructor,
70
+ propertyName,
71
+ constraints: [property],
72
+ options: validationOptions,
73
+ validator: {
74
+ validate(value, args) {
75
+ const [relatedPropertyName] = args.constraints;
76
+ const relatedValue = args.object[relatedPropertyName];
77
+ // Cannot have tokens duplicated between from or to, or within the from or to itself
78
+ const totalUniques = new Set(relatedValue.concat(value)).size;
79
+ return totalUniques === relatedValue.length + value.length;
80
+ }
81
+ }
82
+ });
83
+ };
84
+ }
85
+ exports.ArrayUniqueConcat = ArrayUniqueConcat;
86
+ function ArrayUniqueObjects(property, validationOptions) {
87
+ return function (object, propertyName) {
88
+ (0, class_validator_1.registerDecorator)({
89
+ name: "ArrayUniqueObjects",
90
+ target: object.constructor,
91
+ propertyName,
92
+ constraints: [property],
93
+ options: validationOptions,
94
+ validator: {
95
+ validate(value) {
96
+ if (Array.isArray(value)) {
97
+ const propertyValues = value.map((v) => (typeof v === "object" && !!v ? v[property] : undefined));
98
+ return new Set(propertyValues).size === value.length;
99
+ }
100
+ return false;
101
+ },
102
+ defaultMessage(args) {
103
+ return `${args.property} must not contains duplicate entry for ${args.constraints[0]}`;
104
+ }
105
+ }
106
+ });
107
+ };
108
+ }
109
+ exports.ArrayUniqueObjects = ArrayUniqueObjects;
110
+ function IsBigNumber(validationOptions) {
111
+ return function (object, propertyName) {
112
+ (0, class_validator_1.registerDecorator)({
113
+ name: "IsBigNumber",
114
+ target: object.constructor,
115
+ propertyName,
116
+ options: validationOptions,
117
+ validator: {
118
+ validate(value) {
119
+ return bignumber_js_1.default.isBigNumber(value);
120
+ },
121
+ defaultMessage(args) {
122
+ const bn = typeof args.value === "string" || typeof args.value === "number"
123
+ ? new bignumber_js_1.default(args.value)
124
+ : undefined;
125
+ const suggestion = bn && !bn.isNaN() ? ` (valid value: ${bn === null || bn === void 0 ? void 0 : bn.toFixed()})` : "";
126
+ return (`${args.property} should be a stringified number with fixed notation (not an exponential notation) ` +
127
+ `and no trailing zeros in decimal part${suggestion}`);
128
+ }
129
+ }
130
+ });
131
+ };
132
+ }
133
+ exports.IsBigNumber = IsBigNumber;
134
+ function validateBigNumberOrIgnore(obj, fn) {
135
+ if (bignumber_js_1.default.isBigNumber(obj)) {
136
+ return fn(obj);
137
+ }
138
+ else {
139
+ return true;
140
+ }
141
+ }
142
+ function BigNumberIsPositive(validationOptions) {
143
+ return function (object, propertyName) {
144
+ IsBigNumber(validationOptions)(object, propertyName);
145
+ (0, class_validator_1.registerDecorator)({
146
+ name: "BigNumberIsPositive",
147
+ target: object.constructor,
148
+ propertyName,
149
+ options: validationOptions,
150
+ validator: {
151
+ validate(value) {
152
+ return validateBigNumberOrIgnore(value, (b) => b.isPositive());
153
+ },
154
+ defaultMessage(args) {
155
+ var _a, _b;
156
+ // here you can provide default error message if validation failed
157
+ return `${args.property} must be positive but is ${(_b = (_a = args.value) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : args.value}`;
158
+ }
159
+ }
160
+ });
161
+ };
162
+ }
163
+ exports.BigNumberIsPositive = BigNumberIsPositive;
164
+ function BigNumberIsNegative(validationOptions) {
165
+ return function (object, propertyName) {
166
+ IsBigNumber(validationOptions)(object, propertyName);
167
+ (0, class_validator_1.registerDecorator)({
168
+ name: "BigNumberIsNegative",
169
+ target: object.constructor,
170
+ propertyName,
171
+ options: validationOptions,
172
+ validator: {
173
+ validate(value) {
174
+ return validateBigNumberOrIgnore(value, (b) => b.isNegative());
175
+ },
176
+ defaultMessage(args) {
177
+ var _a, _b;
178
+ // here you can provide default error message if validation failed
179
+ return `${args.property} must be negative but is ${(_b = (_a = args.value) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : args.value}`;
180
+ }
181
+ }
182
+ });
183
+ };
184
+ }
185
+ exports.BigNumberIsNegative = BigNumberIsNegative;
186
+ function BigNumberIsNotInfinity(validationOptions) {
187
+ return function (object, propertyName) {
188
+ IsBigNumber(validationOptions)(object, propertyName);
189
+ (0, class_validator_1.registerDecorator)({
190
+ name: "BigNumberIsNotInfinity",
191
+ target: object.constructor,
192
+ propertyName,
193
+ options: validationOptions,
194
+ validator: {
195
+ validate(value) {
196
+ return validateBigNumberOrIgnore(value, (b) => b.isFinite());
197
+ },
198
+ defaultMessage(args) {
199
+ var _a, _b;
200
+ // here you can provide default error message if validation failed
201
+ return `${args.property} must be finite BigNumber but is ${(_b = (_a = args.value) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : args.value}`;
202
+ }
203
+ }
204
+ });
205
+ };
206
+ }
207
+ exports.BigNumberIsNotInfinity = BigNumberIsNotInfinity;
208
+ function BigNumberIsNotNegative(validationOptions) {
209
+ return function (object, propertyName) {
210
+ IsBigNumber(validationOptions)(object, propertyName);
211
+ (0, class_validator_1.registerDecorator)({
212
+ name: "BigNumberIsNotNegative",
213
+ target: object.constructor,
214
+ propertyName,
215
+ options: validationOptions,
216
+ validator: {
217
+ validate(value) {
218
+ return validateBigNumberOrIgnore(value, (b) => !b.isNegative());
219
+ },
220
+ defaultMessage(args) {
221
+ var _a, _b;
222
+ // here you can provide default error message if validation failed
223
+ return `${args.property} must be non-negative BigNumber but is ${(_b = (_a = args.value) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : args.value}`;
224
+ }
225
+ }
226
+ });
227
+ };
228
+ }
229
+ exports.BigNumberIsNotNegative = BigNumberIsNotNegative;
230
+ function BigNumberIsInteger(validationOptions) {
231
+ return function (object, propertyName) {
232
+ IsBigNumber(validationOptions)(object, propertyName);
233
+ (0, class_validator_1.registerDecorator)({
234
+ name: "BigNumberIsInteger",
235
+ target: object.constructor,
236
+ propertyName,
237
+ options: validationOptions,
238
+ validator: {
239
+ validate(value) {
240
+ return validateBigNumberOrIgnore(value, (b) => b.isInteger());
241
+ },
242
+ defaultMessage(args) {
243
+ var _a, _b;
244
+ // here you can provide default error message if validation failed
245
+ return `${args.property} must be integer BigNumber but is ${(_b = (_a = args.value) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : args.value}`;
246
+ }
247
+ }
248
+ });
249
+ };
250
+ }
251
+ exports.BigNumberIsInteger = BigNumberIsInteger;
252
+ function IsNonZeroBigNumber(validationOptions) {
253
+ return function (object, propertyName) {
254
+ (0, class_validator_1.registerDecorator)({
255
+ name: "isNonZeroBigNumber",
256
+ target: object.constructor,
257
+ propertyName: propertyName,
258
+ options: validationOptions,
259
+ validator: {
260
+ validate(value) {
261
+ return value instanceof bignumber_js_1.default && !value.isZero();
262
+ },
263
+ defaultMessage(args) {
264
+ return `${args.property} must be a BigNumber and cannot be zero.`;
265
+ }
266
+ }
267
+ });
268
+ };
269
+ }
270
+ exports.IsNonZeroBigNumber = IsNonZeroBigNumber;
271
+ function IsLessThan(property, validationOptions) {
272
+ return function (object, propertyName) {
273
+ (0, class_validator_1.registerDecorator)({
274
+ name: "isLessThan",
275
+ target: object.constructor,
276
+ propertyName: propertyName,
277
+ constraints: [property],
278
+ options: validationOptions,
279
+ validator: {
280
+ validate(value, args) {
281
+ const [relatedPropertyName] = args.constraints;
282
+ const relatedValue = args.object[relatedPropertyName];
283
+ return typeof value === "number" && typeof relatedValue === "number" && value < relatedValue;
284
+ },
285
+ defaultMessage(args) {
286
+ const [relatedPropertyName] = args.constraints;
287
+ return `${args.property} must be less than ${relatedPropertyName}`;
288
+ }
289
+ }
290
+ });
291
+ };
292
+ }
293
+ exports.IsLessThan = IsLessThan;
294
+ function IsStringRecord(validationOptions) {
295
+ return function (object, propertyName) {
296
+ (0, class_validator_1.registerDecorator)({
297
+ name: "isStringRecord",
298
+ target: object.constructor,
299
+ propertyName,
300
+ options: validationOptions,
301
+ validator: {
302
+ validate(value) {
303
+ if (typeof value !== "object" || value === null || Array.isArray(value))
304
+ return false;
305
+ return Object.entries(value).every(([key, val]) => typeof key === "string" && typeof val === "string");
306
+ },
307
+ defaultMessage(args) {
308
+ return `${args.property} must be a Record<string, string>`;
309
+ }
310
+ }
311
+ });
312
+ };
313
+ }
314
+ exports.IsStringRecord = IsStringRecord;
315
+ function IsStringArrayRecord(validationOptions) {
316
+ return function (object, propertyName) {
317
+ (0, class_validator_1.registerDecorator)({
318
+ name: "isStringArrayRecord",
319
+ target: object.constructor,
320
+ propertyName,
321
+ options: validationOptions,
322
+ validator: {
323
+ validate(value) {
324
+ if (typeof value !== "object" || value === null || Array.isArray(value)) {
325
+ return false;
326
+ }
327
+ return Object.entries(value).every(([key, val]) => typeof key === "string" && Array.isArray(val) && val.every((item) => typeof item === "string"));
328
+ },
329
+ defaultMessage(args) {
330
+ return `${args.property} must be a Record<string, string[]>`;
331
+ }
332
+ }
333
+ });
334
+ };
335
+ }
336
+ exports.IsStringArrayRecord = IsStringArrayRecord;
337
+ function BigNumberMax(maxValue, options) {
338
+ const max = new bignumber_js_1.default(maxValue);
339
+ return function (object, propertyName) {
340
+ (0, class_validator_1.registerDecorator)({
341
+ name: "BigNumberMax",
342
+ target: object.constructor,
343
+ propertyName,
344
+ options,
345
+ constraints: [max],
346
+ validator: {
347
+ validate(value) {
348
+ try {
349
+ const bn = new bignumber_js_1.default(value);
350
+ return bn.isLessThanOrEqualTo(max);
351
+ }
352
+ catch {
353
+ return false;
354
+ }
355
+ },
356
+ defaultMessage(args) {
357
+ const [maxConstraint] = args.constraints;
358
+ return `${args.property} must be ≤ ${maxConstraint.toFixed()}`;
359
+ }
360
+ }
361
+ });
362
+ };
363
+ }
364
+ exports.BigNumberMax = BigNumberMax;
365
+ function BigNumberLessThanOrEqualOther(property, validationOptions) {
366
+ return function (object, propertyName) {
367
+ (0, class_validator_1.registerDecorator)({
368
+ name: "BigNumberLessThanOrEqualOther",
369
+ target: object.constructor,
370
+ propertyName: propertyName,
371
+ constraints: [property],
372
+ options: validationOptions,
373
+ validator: {
374
+ validate(value, args) {
375
+ const [relatedPropertyName] = args.constraints;
376
+ const relatedValue = args.object[relatedPropertyName];
377
+ if (!(value instanceof bignumber_js_1.default) || !(relatedValue instanceof bignumber_js_1.default)) {
378
+ return false;
379
+ }
380
+ return value.isLessThanOrEqualTo(relatedValue);
381
+ },
382
+ defaultMessage(args) {
383
+ const [relatedPropertyName] = args.constraints;
384
+ return `${args.property} must be less than or equal to ${relatedPropertyName}`;
385
+ }
386
+ }
387
+ });
388
+ };
389
+ }
390
+ exports.BigNumberLessThanOrEqualOther = BigNumberLessThanOrEqualOther;
391
+ //# sourceMappingURL=decorators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../../src/api/validators/decorators.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from "./decorators";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/validators/index.ts"],"names":[],"mappings":"AAeA,cAAc,cAAc,CAAC"}
@@ -0,0 +1,19 @@
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("./decorators"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/validators/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEH,uDAA6B"}
@@ -0,0 +1,20 @@
1
+ import { GalaChainContext, GalaContract } from "@gala-chain/chaincode";
2
+ import { ConfigureLaunchpadFeeAddressDto, CreateSaleResDto, CreateTokenSaleDTO, ExactTokenQuantityDto, FetchSaleDto, FinalizeTokenAllocationDto, LaunchpadFeeConfig, LaunchpadFinalizeFeeAllocation, LaunchpadSale, NativeTokenQuantityDto, PreMintCalculationDto, TradeCalculationResDto, TradeResDto } from "../api/types";
3
+ export declare class LaunchpadContract extends GalaContract {
4
+ constructor();
5
+ CreateSale(ctx: GalaChainContext, dto: CreateTokenSaleDTO): Promise<CreateSaleResDto>;
6
+ FetchSaleDetails(ctx: GalaChainContext, dto: FetchSaleDto): Promise<LaunchpadSale>;
7
+ BuyExactToken(ctx: GalaChainContext, dto: ExactTokenQuantityDto): Promise<TradeResDto>;
8
+ SellExactToken(ctx: GalaChainContext, dto: ExactTokenQuantityDto): Promise<TradeResDto>;
9
+ BuyWithNative(ctx: GalaChainContext, dto: NativeTokenQuantityDto): Promise<TradeResDto>;
10
+ SellWithNative(ctx: GalaChainContext, dto: NativeTokenQuantityDto): Promise<TradeResDto>;
11
+ ConfigureLaunchpadFeeAddress(ctx: GalaChainContext, dto: ConfigureLaunchpadFeeAddressDto): Promise<LaunchpadFeeConfig>;
12
+ FinalizeTokenAllocation(ctx: GalaChainContext, dto: FinalizeTokenAllocationDto): Promise<LaunchpadFinalizeFeeAllocation>;
13
+ CallNativeTokenIn(ctx: GalaChainContext, dto: ExactTokenQuantityDto): Promise<TradeCalculationResDto>;
14
+ CallMemeTokenOut(ctx: GalaChainContext, dto: NativeTokenQuantityDto): Promise<TradeCalculationResDto>;
15
+ CallNativeTokenOut(ctx: GalaChainContext, dto: ExactTokenQuantityDto): Promise<TradeCalculationResDto>;
16
+ CallMemeTokenIn(ctx: GalaChainContext, dto: NativeTokenQuantityDto): Promise<TradeCalculationResDto>;
17
+ CalculatePreMintTokens(dto: PreMintCalculationDto): Promise<string>;
18
+ FetchLaunchpadFeeConfig(ctx: GalaChainContext): Promise<LaunchpadFeeConfig>;
19
+ }
20
+ //# sourceMappingURL=LaunchpadContract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LaunchpadContract.d.ts","sourceRoot":"","sources":["../../../src/chaincode/LaunchpadContract.ts"],"names":[],"mappings":"AAcA,OAAO,EAGL,gBAAgB,EAChB,YAAY,EAGb,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,+BAA+B,EAC/B,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,YAAY,EACZ,0BAA0B,EAC1B,kBAAkB,EAClB,8BAA8B,EAC9B,aAAa,EACb,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACZ,MAAM,cAAc,CAAC;AAyBtB,qBAAa,iBAAkB,SAAQ,YAAY;;IAUpC,UAAU,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IASrF,gBAAgB,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;IASlF,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC;IAStF,cAAc,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC;IASvF,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,WAAW,CAAC;IASvF,cAAc,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,WAAW,CAAC;IASxF,4BAA4B,CACvC,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,+BAA+B,GACnC,OAAO,CAAC,kBAAkB,CAAC;IASjB,uBAAuB,CAClC,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,0BAA0B,GAC9B,OAAO,CAAC,8BAA8B,CAAC;IAS7B,iBAAiB,CAC5B,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,qBAAqB,GACzB,OAAO,CAAC,sBAAsB,CAAC;IASrB,gBAAgB,CAC3B,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,sBAAsB,GAC1B,OAAO,CAAC,sBAAsB,CAAC;IASrB,kBAAkB,CAC7B,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,qBAAqB,GACzB,OAAO,CAAC,sBAAsB,CAAC;IASrB,eAAe,CAC1B,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,sBAAsB,GAC1B,OAAO,CAAC,sBAAsB,CAAC;IASrB,sBAAsB,CAAC,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IAQnE,uBAAuB,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAGzF"}