@stellar/stellar-sdk 14.4.3 → 14.6.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 (128) hide show
  1. package/README.md +150 -0
  2. package/bin/stellar-js +4 -0
  3. package/dist/stellar-sdk-minimal.js +11450 -10315
  4. package/dist/stellar-sdk-minimal.min.js +1 -1
  5. package/dist/stellar-sdk-no-axios.js +7459 -6324
  6. package/dist/stellar-sdk-no-axios.min.js +1 -1
  7. package/dist/stellar-sdk-no-eventsource.js +11597 -10483
  8. package/dist/stellar-sdk-no-eventsource.min.js +1 -1
  9. package/dist/stellar-sdk.js +10647 -9533
  10. package/dist/stellar-sdk.min.js +1 -1
  11. package/lib/bindings/client.d.ts +30 -0
  12. package/lib/bindings/client.js +134 -0
  13. package/lib/bindings/config.d.ts +34 -0
  14. package/lib/bindings/config.js +83 -0
  15. package/lib/bindings/generator.d.ts +176 -0
  16. package/lib/bindings/generator.js +131 -0
  17. package/lib/bindings/index.d.ts +6 -0
  18. package/lib/bindings/index.js +75 -0
  19. package/lib/bindings/sac-spec.d.ts +1 -0
  20. package/lib/bindings/sac-spec.js +7 -0
  21. package/lib/bindings/types.d.ts +66 -0
  22. package/lib/bindings/types.js +184 -0
  23. package/lib/bindings/utils.d.ts +49 -0
  24. package/lib/bindings/utils.js +223 -0
  25. package/lib/bindings/wasm_fetcher.d.ts +25 -0
  26. package/lib/bindings/wasm_fetcher.js +225 -0
  27. package/lib/cli/index.d.ts +2 -0
  28. package/lib/cli/index.js +171 -0
  29. package/lib/cli/util.d.ts +55 -0
  30. package/lib/cli/util.js +254 -0
  31. package/lib/contract/client.js +2 -1
  32. package/lib/horizon/call_builder.js +30 -6
  33. package/lib/horizon/horizon_axios_client.js +1 -1
  34. package/lib/index.d.ts +1 -0
  35. package/lib/index.js +9 -1
  36. package/lib/minimal/bindings/client.d.ts +30 -0
  37. package/lib/minimal/bindings/client.js +134 -0
  38. package/lib/minimal/bindings/config.d.ts +34 -0
  39. package/lib/minimal/bindings/config.js +83 -0
  40. package/lib/minimal/bindings/generator.d.ts +176 -0
  41. package/lib/minimal/bindings/generator.js +131 -0
  42. package/lib/minimal/bindings/index.d.ts +6 -0
  43. package/lib/minimal/bindings/index.js +75 -0
  44. package/lib/minimal/bindings/sac-spec.d.ts +1 -0
  45. package/lib/minimal/bindings/sac-spec.js +7 -0
  46. package/lib/minimal/bindings/types.d.ts +66 -0
  47. package/lib/minimal/bindings/types.js +184 -0
  48. package/lib/minimal/bindings/utils.d.ts +49 -0
  49. package/lib/minimal/bindings/utils.js +223 -0
  50. package/lib/minimal/bindings/wasm_fetcher.d.ts +25 -0
  51. package/lib/minimal/bindings/wasm_fetcher.js +225 -0
  52. package/lib/minimal/cli/index.d.ts +2 -0
  53. package/lib/minimal/cli/index.js +171 -0
  54. package/lib/minimal/cli/util.d.ts +55 -0
  55. package/lib/minimal/cli/util.js +254 -0
  56. package/lib/minimal/contract/client.js +2 -1
  57. package/lib/minimal/horizon/call_builder.js +30 -6
  58. package/lib/minimal/horizon/horizon_axios_client.js +1 -1
  59. package/lib/minimal/index.d.ts +1 -0
  60. package/lib/minimal/index.js +9 -1
  61. package/lib/minimal/rpc/axios.js +1 -1
  62. package/lib/minimal/rpc/server.d.ts +35 -1
  63. package/lib/minimal/rpc/server.js +110 -43
  64. package/lib/minimal/stellartoml/index.d.ts +3 -0
  65. package/lib/no-axios/bindings/client.d.ts +30 -0
  66. package/lib/no-axios/bindings/client.js +134 -0
  67. package/lib/no-axios/bindings/config.d.ts +34 -0
  68. package/lib/no-axios/bindings/config.js +83 -0
  69. package/lib/no-axios/bindings/generator.d.ts +176 -0
  70. package/lib/no-axios/bindings/generator.js +131 -0
  71. package/lib/no-axios/bindings/index.d.ts +6 -0
  72. package/lib/no-axios/bindings/index.js +75 -0
  73. package/lib/no-axios/bindings/sac-spec.d.ts +1 -0
  74. package/lib/no-axios/bindings/sac-spec.js +7 -0
  75. package/lib/no-axios/bindings/types.d.ts +66 -0
  76. package/lib/no-axios/bindings/types.js +184 -0
  77. package/lib/no-axios/bindings/utils.d.ts +49 -0
  78. package/lib/no-axios/bindings/utils.js +223 -0
  79. package/lib/no-axios/bindings/wasm_fetcher.d.ts +25 -0
  80. package/lib/no-axios/bindings/wasm_fetcher.js +225 -0
  81. package/lib/no-axios/cli/index.d.ts +2 -0
  82. package/lib/no-axios/cli/index.js +171 -0
  83. package/lib/no-axios/cli/util.d.ts +55 -0
  84. package/lib/no-axios/cli/util.js +254 -0
  85. package/lib/no-axios/contract/client.js +2 -1
  86. package/lib/no-axios/horizon/call_builder.js +30 -6
  87. package/lib/no-axios/horizon/horizon_axios_client.js +1 -1
  88. package/lib/no-axios/index.d.ts +1 -0
  89. package/lib/no-axios/index.js +9 -1
  90. package/lib/no-axios/rpc/axios.js +1 -1
  91. package/lib/no-axios/rpc/server.d.ts +35 -1
  92. package/lib/no-axios/rpc/server.js +110 -43
  93. package/lib/no-axios/stellartoml/index.d.ts +3 -0
  94. package/lib/no-eventsource/bindings/client.d.ts +30 -0
  95. package/lib/no-eventsource/bindings/client.js +134 -0
  96. package/lib/no-eventsource/bindings/config.d.ts +34 -0
  97. package/lib/no-eventsource/bindings/config.js +83 -0
  98. package/lib/no-eventsource/bindings/generator.d.ts +176 -0
  99. package/lib/no-eventsource/bindings/generator.js +131 -0
  100. package/lib/no-eventsource/bindings/index.d.ts +6 -0
  101. package/lib/no-eventsource/bindings/index.js +75 -0
  102. package/lib/no-eventsource/bindings/sac-spec.d.ts +1 -0
  103. package/lib/no-eventsource/bindings/sac-spec.js +7 -0
  104. package/lib/no-eventsource/bindings/types.d.ts +66 -0
  105. package/lib/no-eventsource/bindings/types.js +184 -0
  106. package/lib/no-eventsource/bindings/utils.d.ts +49 -0
  107. package/lib/no-eventsource/bindings/utils.js +223 -0
  108. package/lib/no-eventsource/bindings/wasm_fetcher.d.ts +25 -0
  109. package/lib/no-eventsource/bindings/wasm_fetcher.js +225 -0
  110. package/lib/no-eventsource/cli/index.d.ts +2 -0
  111. package/lib/no-eventsource/cli/index.js +171 -0
  112. package/lib/no-eventsource/cli/util.d.ts +55 -0
  113. package/lib/no-eventsource/cli/util.js +254 -0
  114. package/lib/no-eventsource/contract/client.js +2 -1
  115. package/lib/no-eventsource/horizon/call_builder.js +30 -6
  116. package/lib/no-eventsource/horizon/horizon_axios_client.js +1 -1
  117. package/lib/no-eventsource/index.d.ts +1 -0
  118. package/lib/no-eventsource/index.js +9 -1
  119. package/lib/no-eventsource/rpc/axios.js +1 -1
  120. package/lib/no-eventsource/rpc/server.d.ts +35 -1
  121. package/lib/no-eventsource/rpc/server.js +110 -43
  122. package/lib/no-eventsource/stellartoml/index.d.ts +3 -0
  123. package/lib/rpc/axios.js +1 -1
  124. package/lib/rpc/server.d.ts +35 -1
  125. package/lib/rpc/server.js +110 -43
  126. package/lib/stellartoml/index.d.ts +3 -0
  127. package/package.json +10 -4
  128. package/CHANGELOG.md +0 -2023
@@ -0,0 +1,254 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createGenerator = createGenerator;
8
+ exports.deriveContractName = deriveContractName;
9
+ exports.generateAndWrite = generateAndWrite;
10
+ exports.logSourceInfo = logSourceInfo;
11
+ exports.writeBindings = writeBindings;
12
+ var fs = _interopRequireWildcard(require("fs/promises"));
13
+ var path = _interopRequireWildcard(require("path"));
14
+ var _generator = require("../bindings/generator");
15
+ var _bindings = require("../bindings");
16
+ var _server = require("../rpc/server");
17
+ var _excluded = ["outputDir", "overwrite"];
18
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t4 in e) "default" !== _t4 && {}.hasOwnProperty.call(e, _t4) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t4)) && (i.get || i.set) ? o(f, _t4, i) : f[_t4] = e[_t4]); return f; })(e, t); }
19
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
20
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
21
+ function _regenerator() { var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i.return) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
22
+ function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
23
+ function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
24
+ function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
25
+ function verifyNetwork(_x, _x2) {
26
+ return _verifyNetwork.apply(this, arguments);
27
+ }
28
+ function _verifyNetwork() {
29
+ _verifyNetwork = _asyncToGenerator(_regenerator().m(function _callee(server, expectedPassphrase) {
30
+ var networkResponse;
31
+ return _regenerator().w(function (_context) {
32
+ while (1) switch (_context.n) {
33
+ case 0:
34
+ _context.n = 1;
35
+ return server.getNetwork();
36
+ case 1:
37
+ networkResponse = _context.v;
38
+ if (!(networkResponse.passphrase !== expectedPassphrase)) {
39
+ _context.n = 2;
40
+ break;
41
+ }
42
+ throw new _bindings.WasmFetchError("Network mismatch: expected \"".concat(expectedPassphrase, "\", got \"").concat(networkResponse.passphrase, "\""));
43
+ case 2:
44
+ return _context.a(2);
45
+ }
46
+ }, _callee);
47
+ }));
48
+ return _verifyNetwork.apply(this, arguments);
49
+ }
50
+ function createGenerator(_x3) {
51
+ return _createGenerator.apply(this, arguments);
52
+ }
53
+ function _createGenerator() {
54
+ _createGenerator = _asyncToGenerator(_regenerator().m(function _callee2(args) {
55
+ var sources, wasmBuffer, server, generator, _t, _t2;
56
+ return _regenerator().w(function (_context2) {
57
+ while (1) switch (_context2.n) {
58
+ case 0:
59
+ sources = [args.wasm, args.wasmHash, args.contractId].filter(Boolean);
60
+ if (!(sources.length === 0)) {
61
+ _context2.n = 1;
62
+ break;
63
+ }
64
+ throw new _bindings.WasmFetchError("Must provide one of: --wasm, --wasm-hash, or --contract-id");
65
+ case 1:
66
+ if (!(sources.length > 1)) {
67
+ _context2.n = 2;
68
+ break;
69
+ }
70
+ throw new _bindings.WasmFetchError("Must provide only one of: --wasm, --wasm-hash, or --contract-id");
71
+ case 2:
72
+ if (!args.wasm) {
73
+ _context2.n = 4;
74
+ break;
75
+ }
76
+ _context2.n = 3;
77
+ return fs.readFile(args.wasm);
78
+ case 3:
79
+ wasmBuffer = _context2.v;
80
+ return _context2.a(2, {
81
+ generator: _generator.BindingGenerator.fromWasm(wasmBuffer),
82
+ source: {
83
+ type: "file",
84
+ path: args.wasm
85
+ }
86
+ });
87
+ case 4:
88
+ if (args.rpcUrl) {
89
+ _context2.n = 5;
90
+ break;
91
+ }
92
+ throw new _bindings.WasmFetchError("--rpc-url is required when fetching from network");
93
+ case 5:
94
+ if (args.networkPassphrase) {
95
+ _context2.n = 6;
96
+ break;
97
+ }
98
+ throw new _bindings.WasmFetchError("--network is required when fetching from network");
99
+ case 6:
100
+ server = new _server.RpcServer(args.rpcUrl, args.serverOptions);
101
+ _context2.n = 7;
102
+ return verifyNetwork(server, args.networkPassphrase);
103
+ case 7:
104
+ if (!args.wasmHash) {
105
+ _context2.n = 9;
106
+ break;
107
+ }
108
+ _context2.n = 8;
109
+ return _generator.BindingGenerator.fromWasmHash(args.wasmHash, server);
110
+ case 8:
111
+ _t = _context2.v;
112
+ _t2 = {
113
+ type: "wasm-hash",
114
+ hash: args.wasmHash,
115
+ rpcUrl: args.rpcUrl,
116
+ network: args.networkPassphrase
117
+ };
118
+ return _context2.a(2, {
119
+ generator: _t,
120
+ source: _t2
121
+ });
122
+ case 9:
123
+ if (!args.contractId) {
124
+ _context2.n = 11;
125
+ break;
126
+ }
127
+ _context2.n = 10;
128
+ return _generator.BindingGenerator.fromContractId(args.contractId, server);
129
+ case 10:
130
+ generator = _context2.v;
131
+ return _context2.a(2, {
132
+ generator: generator,
133
+ source: {
134
+ type: "contract-id",
135
+ contractId: args.contractId,
136
+ rpcUrl: args.rpcUrl,
137
+ network: args.networkPassphrase
138
+ }
139
+ });
140
+ case 11:
141
+ throw new _bindings.WasmFetchError("Invalid arguments");
142
+ case 12:
143
+ return _context2.a(2);
144
+ }
145
+ }, _callee2);
146
+ }));
147
+ return _createGenerator.apply(this, arguments);
148
+ }
149
+ function writeBindings(_x4, _x5, _x6) {
150
+ return _writeBindings.apply(this, arguments);
151
+ }
152
+ function _writeBindings() {
153
+ _writeBindings = _asyncToGenerator(_regenerator().m(function _callee3(outputDir, bindings, overwrite) {
154
+ var stat, writes, _t3;
155
+ return _regenerator().w(function (_context3) {
156
+ while (1) switch (_context3.p = _context3.n) {
157
+ case 0:
158
+ _context3.p = 0;
159
+ _context3.n = 1;
160
+ return fs.stat(outputDir);
161
+ case 1:
162
+ stat = _context3.v;
163
+ if (!stat.isFile()) {
164
+ _context3.n = 2;
165
+ break;
166
+ }
167
+ throw new Error("Output path is a file: ".concat(outputDir));
168
+ case 2:
169
+ if (overwrite) {
170
+ _context3.n = 3;
171
+ break;
172
+ }
173
+ throw new Error("Directory exists (use --overwrite): ".concat(outputDir));
174
+ case 3:
175
+ _context3.n = 4;
176
+ return fs.rm(outputDir, {
177
+ recursive: true,
178
+ force: true
179
+ });
180
+ case 4:
181
+ _context3.n = 6;
182
+ break;
183
+ case 5:
184
+ _context3.p = 5;
185
+ _t3 = _context3.v;
186
+ if (!(_t3.code !== "ENOENT")) {
187
+ _context3.n = 6;
188
+ break;
189
+ }
190
+ throw _t3;
191
+ case 6:
192
+ _context3.n = 7;
193
+ return fs.mkdir(path.join(outputDir, "src"), {
194
+ recursive: true
195
+ });
196
+ case 7:
197
+ writes = [fs.writeFile(path.join(outputDir, "src/index.ts"), bindings.index), fs.writeFile(path.join(outputDir, "src/client.ts"), bindings.client), fs.writeFile(path.join(outputDir, ".gitignore"), bindings.gitignore), fs.writeFile(path.join(outputDir, "README.md"), bindings.readme), fs.writeFile(path.join(outputDir, "package.json"), bindings.packageJson), fs.writeFile(path.join(outputDir, "tsconfig.json"), bindings.tsConfig)];
198
+ if (bindings.types.trim()) {
199
+ writes.push(fs.writeFile(path.join(outputDir, "src/types.ts"), bindings.types));
200
+ }
201
+ _context3.n = 8;
202
+ return Promise.all(writes);
203
+ case 8:
204
+ return _context3.a(2);
205
+ }
206
+ }, _callee3, null, [[0, 5]]);
207
+ }));
208
+ return _writeBindings.apply(this, arguments);
209
+ }
210
+ function generateAndWrite(_x7, _x8) {
211
+ return _generateAndWrite.apply(this, arguments);
212
+ }
213
+ function _generateAndWrite() {
214
+ _generateAndWrite = _asyncToGenerator(_regenerator().m(function _callee4(generator, options) {
215
+ var outputDir, _options$overwrite, overwrite, genOptions, bindings;
216
+ return _regenerator().w(function (_context4) {
217
+ while (1) switch (_context4.n) {
218
+ case 0:
219
+ outputDir = options.outputDir, _options$overwrite = options.overwrite, overwrite = _options$overwrite === void 0 ? false : _options$overwrite, genOptions = _objectWithoutProperties(options, _excluded);
220
+ bindings = generator.generate(genOptions);
221
+ _context4.n = 1;
222
+ return writeBindings(outputDir, bindings, overwrite);
223
+ case 1:
224
+ return _context4.a(2);
225
+ }
226
+ }, _callee4);
227
+ }));
228
+ return _generateAndWrite.apply(this, arguments);
229
+ }
230
+ function logSourceInfo(source) {
231
+ console.log("\nSource:");
232
+ switch (source.type) {
233
+ case "file":
234
+ console.log(" Type: Local file");
235
+ console.log(" Path: ".concat(source.path));
236
+ break;
237
+ case "wasm-hash":
238
+ console.log(" Type: WASM hash");
239
+ console.log(" Hash: ".concat(source.hash));
240
+ console.log(" RPC: ".concat(source.rpcUrl));
241
+ console.log(" Network: ".concat(source.network));
242
+ break;
243
+ case "contract-id":
244
+ console.log(" Type: Contract ID");
245
+ console.log(" Address: ".concat(source.contractId));
246
+ console.log(" RPC: ".concat(source.rpcUrl));
247
+ console.log(" Network: ".concat(source.network));
248
+ break;
249
+ }
250
+ }
251
+ function deriveContractName(source) {
252
+ if (source.type !== "file") return null;
253
+ return path.basename(source.path, path.extname(source.path)).replace(/([a-z])([A-Z])/g, "$1-$2").replace(/_/g, "-").toLowerCase();
254
+ }
@@ -9,6 +9,7 @@ var _stellarBase = require("@stellar/stellar-base");
9
9
  var _spec = require("./spec");
10
10
  var _rpc = require("../rpc");
11
11
  var _assembled_transaction = require("./assembled_transaction");
12
+ var _utils = require("../bindings/utils");
12
13
  var _excluded = ["method"],
13
14
  _excluded2 = ["wasmHash", "salt", "format", "fee", "timeoutInSeconds", "simulate"];
14
15
  function _regenerator() { var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i.return) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
@@ -113,7 +114,7 @@ var Client = exports.Client = function () {
113
114
  }
114
115
  }));
115
116
  };
116
- _this[method] = spec.getFunc(method).inputs().length === 0 ? function (opts) {
117
+ _this[(0, _utils.sanitizeIdentifier)(method)] = spec.getFunc(method).inputs().length === 0 ? function (opts) {
117
118
  return assembleTransaction(undefined, opts);
118
119
  } : assembleTransaction;
119
120
  });
@@ -14,6 +14,12 @@ function _regenerator() { var e, t, r = "function" == typeof Symbol ? Symbol : {
14
14
  function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
15
15
  function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
16
16
  function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
17
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
18
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
19
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
20
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
21
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
22
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
17
23
  function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
18
24
  function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
19
25
  function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
@@ -56,6 +62,29 @@ var CallBuilder = exports.CallBuilder = function () {
56
62
  this.checkFilter();
57
63
  this.url.setQuery("X-Client-Name", "js-stellar-sdk");
58
64
  this.url.setQuery("X-Client-Version", _horizon_axios_client.version);
65
+ var headers = this.httpClient.defaults.headers;
66
+ if (headers) {
67
+ var headerNames = ["X-App-Name", "X-App-Version"];
68
+ headerNames.forEach(function (name) {
69
+ var value;
70
+ if (headers instanceof Headers) {
71
+ var _headers$get;
72
+ value = (_headers$get = headers.get(name)) !== null && _headers$get !== void 0 ? _headers$get : undefined;
73
+ } else if (Array.isArray(headers)) {
74
+ var entry = headers.find(function (_ref2) {
75
+ var _ref3 = _slicedToArray(_ref2, 1),
76
+ key = _ref3[0];
77
+ return key === name;
78
+ });
79
+ value = entry === null || entry === void 0 ? void 0 : entry[1];
80
+ } else {
81
+ value = headers[name];
82
+ }
83
+ if (value) {
84
+ _this2.url.setQuery(name, value);
85
+ }
86
+ });
87
+ }
59
88
  var es;
60
89
  var timeout;
61
90
  var createTimeout = function createTimeout() {
@@ -236,12 +265,7 @@ var CallBuilder = exports.CallBuilder = function () {
236
265
  while (1) switch (_context3.n) {
237
266
  case 0:
238
267
  url = initialUrl;
239
- if (url.authority() === "") {
240
- url = url.authority(this.url.authority());
241
- }
242
- if (url.protocol() === "") {
243
- url = url.protocol(this.url.protocol());
244
- }
268
+ url = url.authority(this.url.authority()).protocol(this.url.protocol());
245
269
  return _context3.a(2, this.httpClient.get(url.toString()).then(function (response) {
246
270
  return response.data;
247
271
  }).catch(this._handleNetworkError));
@@ -16,7 +16,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
16
16
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
17
17
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
18
18
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
19
- var version = exports.version = "14.4.3";
19
+ var version = exports.version = "14.6.0";
20
20
  var SERVER_TIME_MAP = exports.SERVER_TIME_MAP = {};
21
21
  function toSeconds(ms) {
22
22
  return Math.floor(ms / 1000);
package/lib/index.d.ts CHANGED
@@ -24,6 +24,7 @@ export * as rpc from "./rpc";
24
24
  * import { Client } from '@stellar/stellar-sdk/contract';
25
25
  */
26
26
  export * as contract from "./contract";
27
+ export { BindingGenerator } from "./bindings";
27
28
  export * from "@stellar/stellar-base";
28
29
  declare const _default: any;
29
30
  export default _default;
package/lib/index.js CHANGED
@@ -13,8 +13,15 @@ var _exportNames = {
13
13
  Friendbot: true,
14
14
  Horizon: true,
15
15
  rpc: true,
16
- contract: true
16
+ contract: true,
17
+ BindingGenerator: true
17
18
  };
19
+ Object.defineProperty(exports, "BindingGenerator", {
20
+ enumerable: true,
21
+ get: function get() {
22
+ return _bindings.BindingGenerator;
23
+ }
24
+ });
18
25
  Object.defineProperty(exports, "Config", {
19
26
  enumerable: true,
20
27
  get: function get() {
@@ -57,6 +64,7 @@ var _rpc = _interopRequireWildcard(require("./rpc"));
57
64
  exports.rpc = _rpc;
58
65
  var _contract = _interopRequireWildcard(require("./contract"));
59
66
  exports.contract = _contract;
67
+ var _bindings = require("./bindings");
60
68
  var _stellarBase = require("@stellar/stellar-base");
61
69
  Object.keys(_stellarBase).forEach(function (key) {
62
70
  if (key === "default" || key === "__esModule") return;
@@ -0,0 +1,30 @@
1
+ import { Spec } from "../contract";
2
+ /**
3
+ * Generates TypeScript client class for contract methods
4
+ */
5
+ export declare class ClientGenerator {
6
+ private spec;
7
+ constructor(spec: Spec);
8
+ /**
9
+ * Generate client class
10
+ */
11
+ generate(): string;
12
+ private generateImports;
13
+ /**
14
+ * Generate interface method signature
15
+ */
16
+ private generateInterfaceMethod;
17
+ private generateFromJSONMethod;
18
+ /**
19
+ * Generate deploy method
20
+ */
21
+ private generateDeployMethod;
22
+ /**
23
+ * Format method parameters
24
+ */
25
+ private formatMethodParameters;
26
+ /**
27
+ * Format constructor parameters
28
+ */
29
+ private formatConstructorParameters;
30
+ }
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ClientGenerator = void 0;
7
+ var _utils = require("./utils");
8
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
9
+ function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
10
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
11
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
12
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
13
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
14
+ var ClientGenerator = exports.ClientGenerator = function () {
15
+ function ClientGenerator(spec) {
16
+ _classCallCheck(this, ClientGenerator);
17
+ this.spec = spec;
18
+ }
19
+ return _createClass(ClientGenerator, [{
20
+ key: "generate",
21
+ value: function generate() {
22
+ var _this = this;
23
+ var deployMethod = "";
24
+ try {
25
+ var constructorFunc = this.spec.getFunc("__constructor");
26
+ deployMethod = this.generateDeployMethod(constructorFunc);
27
+ } catch (_unused) {
28
+ deployMethod = this.generateDeployMethod(undefined);
29
+ }
30
+ var interfaceMethods = this.spec.funcs().filter(function (func) {
31
+ return func.name().toString() !== "__constructor";
32
+ }).map(function (func) {
33
+ return _this.generateInterfaceMethod(func);
34
+ }).join("\n");
35
+ var imports = this.generateImports();
36
+ var specEntries = this.spec.entries.map(function (entry) {
37
+ return "\"".concat(entry.toXDR("base64"), "\"");
38
+ });
39
+ var fromJSON = this.spec.funcs().filter(function (func) {
40
+ return func.name().toString() !== "__constructor";
41
+ }).map(function (func) {
42
+ return _this.generateFromJSONMethod(func);
43
+ }).join(",");
44
+ return "".concat(imports, "\n\nexport interface Client {\n").concat(interfaceMethods, "\n}\n\nexport class Client extends ContractClient {\n constructor(public readonly options: ContractClientOptions) {\n super(\n new Spec([").concat(specEntries.join(", "), "]),\n options\n );\n }\n\n ").concat(deployMethod, "\n public readonly fromJSON = {\n ").concat(fromJSON, "\n };\n}");
45
+ }
46
+ }, {
47
+ key: "generateImports",
48
+ value: function generateImports() {
49
+ var imports = (0, _utils.generateTypeImports)(this.spec.funcs().flatMap(function (func) {
50
+ var inputs = func.inputs();
51
+ var outputs = func.outputs();
52
+ var defs = inputs.map(function (input) {
53
+ return input.type();
54
+ }).concat(outputs);
55
+ return defs;
56
+ }));
57
+ return (0, _utils.formatImports)(imports, {
58
+ includeTypeFileImports: true,
59
+ additionalStellarContractImports: ["Spec", "AssembledTransaction", "Client as ContractClient", "ClientOptions as ContractClientOptions", "MethodOptions"]
60
+ });
61
+ }
62
+ }, {
63
+ key: "generateInterfaceMethod",
64
+ value: function generateInterfaceMethod(func) {
65
+ var name = (0, _utils.sanitizeIdentifier)(func.name().toString());
66
+ var inputs = func.inputs().map(function (input) {
67
+ return {
68
+ name: input.name().toString(),
69
+ type: (0, _utils.parseTypeFromTypeDef)(input.type(), true)
70
+ };
71
+ });
72
+ var outputType = func.outputs().length > 0 ? (0, _utils.parseTypeFromTypeDef)(func.outputs()[0]) : "void";
73
+ var docs = (0, _utils.formatJSDocComment)(func.doc().toString(), 2);
74
+ var params = this.formatMethodParameters(inputs);
75
+ return "".concat(docs, " ").concat(name, "(").concat(params, "): Promise<AssembledTransaction<").concat(outputType, ">>;");
76
+ }
77
+ }, {
78
+ key: "generateFromJSONMethod",
79
+ value: function generateFromJSONMethod(func) {
80
+ var name = func.name().toString();
81
+ var outputType = func.outputs().length > 0 ? (0, _utils.parseTypeFromTypeDef)(func.outputs()[0]) : "void";
82
+ return " ".concat(name, " : this.txFromJSON<").concat(outputType, ">");
83
+ }
84
+ }, {
85
+ key: "generateDeployMethod",
86
+ value: function generateDeployMethod(constructorFunc) {
87
+ if (!constructorFunc) {
88
+ var _params = this.formatConstructorParameters([]);
89
+ return " static deploy<T = Client>(".concat(_params, "): Promise<AssembledTransaction<T>> {\n return ContractClient.deploy(null, options);\n }");
90
+ }
91
+ var inputs = constructorFunc.inputs().map(function (input) {
92
+ return {
93
+ name: input.name().toString(),
94
+ type: (0, _utils.parseTypeFromTypeDef)(input.type(), true)
95
+ };
96
+ });
97
+ var params = this.formatConstructorParameters(inputs);
98
+ var inputsDestructure = inputs.length > 0 ? "{ ".concat(inputs.map(function (i) {
99
+ return i.name;
100
+ }).join(", "), " }, ") : "";
101
+ return " static deploy<T = Client>(".concat(params, "): Promise<AssembledTransaction<T>> {\n return ContractClient.deploy(").concat(inputsDestructure, "options);\n }");
102
+ }
103
+ }, {
104
+ key: "formatMethodParameters",
105
+ value: function formatMethodParameters(inputs) {
106
+ var params = [];
107
+ if (inputs.length > 0) {
108
+ var inputsParam = "{ ".concat(inputs.map(function (i) {
109
+ return "".concat(i.name, ": ").concat(i.type);
110
+ }).join("; "), " }");
111
+ params.push("{ ".concat(inputs.map(function (i) {
112
+ return i.name;
113
+ }).join(", "), " }: ").concat(inputsParam));
114
+ }
115
+ params.push("options?: MethodOptions");
116
+ return params.join(", ");
117
+ }
118
+ }, {
119
+ key: "formatConstructorParameters",
120
+ value: function formatConstructorParameters(inputs) {
121
+ var params = [];
122
+ if (inputs.length > 0) {
123
+ var inputsParam = "{ ".concat(inputs.map(function (i) {
124
+ return "".concat(i.name, ": ").concat(i.type);
125
+ }).join("; "), " }");
126
+ params.push("{ ".concat(inputs.map(function (i) {
127
+ return i.name;
128
+ }).join(", "), " }: ").concat(inputsParam));
129
+ }
130
+ params.push('options: MethodOptions & Omit<ContractClientOptions, \'contractId\'> & { wasmHash: Buffer | string; salt?: Buffer | Uint8Array; format?: "hex" | "base64"; address?: string; }');
131
+ return params.join(", ");
132
+ }
133
+ }]);
134
+ }();
@@ -0,0 +1,34 @@
1
+ export interface ConfigGenerateOptions {
2
+ contractName: string;
3
+ }
4
+ export interface Configs {
5
+ packageJson: string;
6
+ tsConfig: string;
7
+ gitignore: string;
8
+ readme: string;
9
+ }
10
+ /**
11
+ * Generates a complete TypeScript project structure with contract bindings
12
+ */
13
+ export declare class ConfigGenerator {
14
+ /**
15
+ * Generate the complete TypeScript project
16
+ */
17
+ generate(options: ConfigGenerateOptions): Configs;
18
+ /**
19
+ * Generate package.json
20
+ */
21
+ private generatePackageJson;
22
+ /**
23
+ * Generate tsconfig.json
24
+ */
25
+ private generateTsConfig;
26
+ /**
27
+ * Generate .gitignore
28
+ */
29
+ private generateGitignore;
30
+ /**
31
+ * Generate README.md
32
+ */
33
+ private generateReadme;
34
+ }