| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519 | 
							- "use strict";
 
- var _Object$keys2 = require("@babel/runtime-corejs3/core-js-stable/object/keys");
 
- var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols");
 
- var _filterInstanceProperty2 = require("@babel/runtime-corejs3/core-js-stable/instance/filter");
 
- var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
 
- var _forEachInstanceProperty2 = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
 
- var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors");
 
- var _Object$defineProperties = require("@babel/runtime-corejs3/core-js-stable/object/define-properties");
 
- var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
 
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
 
- _Object$defineProperty(exports, "__esModule", {
 
-   value: true
 
- });
 
- exports.default = void 0;
 
- var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs3/regenerator"));
 
- var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each"));
 
- var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
 
- var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
 
- var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
 
- var _stringify = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/json/stringify"));
 
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/asyncToGenerator"));
 
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/classCallCheck"));
 
- var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/createClass"));
 
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
 
- function ownKeys(object, enumerableOnly) {
 
-   var keys = _Object$keys2(object);
 
-   if (_Object$getOwnPropertySymbols) {
 
-     var symbols = _Object$getOwnPropertySymbols(object);
 
-     enumerableOnly && (symbols = _filterInstanceProperty2(symbols).call(symbols, function (sym) {
 
-       return _Object$getOwnPropertyDescriptor(object, sym).enumerable;
 
-     })), keys.push.apply(keys, symbols);
 
-   }
 
-   return keys;
 
- }
 
- function _objectSpread(target) {
 
-   for (var i = 1; i < arguments.length; i++) {
 
-     var _context10, _context11;
 
-     var source = null != arguments[i] ? arguments[i] : {};
 
-     i % 2 ? _forEachInstanceProperty2(_context10 = ownKeys(Object(source), !0)).call(_context10, function (key) {
 
-       (0, _defineProperty2.default)(target, key, source[key]);
 
-     }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty2(_context11 = ownKeys(Object(source))).call(_context11, function (key) {
 
-       _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key));
 
-     });
 
-   }
 
-   return target;
 
- }
 
- /**
 
-  * Automatically generated code, via genSolanaAPI.js
 
-  * Do not modify manually
 
-  */
 
- var axios = require('axios');
 
- var SolanaApi = /*#__PURE__*/function () {
 
-   function SolanaApi() {
 
-     (0, _classCallCheck2.default)(this, SolanaApi);
 
-   }
 
-   (0, _createClass2.default)(SolanaApi, null, [{
 
-     key: "initialize",
 
-     value: // URL will be changed when api is deployed
 
-     function (_ref) {
 
-       var apiKey = _ref.apiKey,
 
-           serverUrl = _ref.serverUrl,
 
-           _ref$Moralis = _ref.Moralis,
 
-           Moralis = _ref$Moralis === void 0 ? null : _ref$Moralis;
 
-       if (!serverUrl && !apiKey) {
 
-         throw new Error('SolanaApi.initialize failed: initialize with apiKey or serverUrl');
 
-       }
 
-       if (apiKey) this.apiKey = apiKey;
 
-       if (serverUrl) this.serverUrl = serverUrl;
 
-       this.Moralis = Moralis;
 
-     }
 
-   }, {
 
-     key: "getBody",
 
-     value: function (params, bodyParams) {
 
-       var _this = this;
 
-       if (!params || !bodyParams || !bodyParams.length) {
 
-         return undefined;
 
-       }
 
-       var body = {};
 
-       (0, _forEach.default)(bodyParams).call(bodyParams, function (_ref2) {
 
-         var key = _ref2.key,
 
-             type = _ref2.type,
 
-             required = _ref2.required;
 
-         if (params[key] === undefined) {
 
-           if (required) throw new Error("param ".concat(key, " is required!"));
 
-         } else if (type === _this.BodyParamTypes.setBody) {
 
-           body = params[key];
 
-         } else {
 
-           body[key] = params[key];
 
-         } // remove the param so it doesn't also get added as a query param
 
-         delete params[key];
 
-       });
 
-       return body;
 
-     }
 
-   }, {
 
-     key: "getParameterizedUrl",
 
-     value: function (url, params) {
 
-       var _context;
 
-       if (!(0, _keys.default)(params).length) return url; // find url params, they start with :
 
-       var requiredParams = (0, _filter.default)(_context = url.split('/')).call(_context, function (s) {
 
-         return s && (0, _includes.default)(s).call(s, ':');
 
-       });
 
-       if (!requiredParams.length) return url;
 
-       var parameterizedUrl = url;
 
-       (0, _forEach.default)(requiredParams).call(requiredParams, function (p) {
 
-         // strip the : and replace with param value
 
-         var key = p.substr(1);
 
-         var value = params[key];
 
-         if (!value) {
 
-           throw new Error("required param ".concat(key, " not provided"));
 
-         }
 
-         parameterizedUrl = parameterizedUrl.replace(p, value); // remove required param from param list
 
-         // so it doesn't become part of the query params
 
-         delete params[key];
 
-       });
 
-       return parameterizedUrl;
 
-     }
 
-   }, {
 
-     key: "getApiRateLimitInfo",
 
-     value: function (headers) {
 
-       return {
 
-         'x-rate-limit-limit': headers['x-rate-limit-limit'],
 
-         'x-rate-limit-remaining-ttl': headers['x-rate-limit-remaining-ttl'],
 
-         'x-rate-limit-used': headers['x-rate-limit-used'],
 
-         'x-rate-limit-remaining-ip-ttl': headers['x-rate-limit-remaining-ip-ttl'],
 
-         'x-rate-limit-ip-used': headers['x-rate-limit-ip-used']
 
-       };
 
-     }
 
-   }, {
 
-     key: "getErrorMessage",
 
-     value: function (error, url) {
 
-       var _error$response, _error$response$data;
 
-       return (error === null || error === void 0 ? void 0 : (_error$response = error.response) === null || _error$response === void 0 ? void 0 : (_error$response$data = _error$response.data) === null || _error$response$data === void 0 ? void 0 : _error$response$data.message) || (error === null || error === void 0 ? void 0 : error.message) || (error === null || error === void 0 ? void 0 : error.toString()) || "Solana API error while calling ".concat(url);
 
-     }
 
-   }, {
 
-     key: "fetch",
 
-     value: function () {
 
-       var _fetch = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_ref3) {
 
-         var endpoint, providedParams, params, User, user;
 
-         return _regenerator.default.wrap(function (_context2) {
 
-           while (1) {
 
-             switch (_context2.prev = _context2.next) {
 
-               case 0:
 
-                 endpoint = _ref3.endpoint, providedParams = _ref3.params; // Make a shallow copy to prevent modification of original params
 
-                 params = _objectSpread({}, providedParams);
 
-                 if (this.Moralis) {
 
-                   User = this.Moralis.User;
 
-                   user = User.current();
 
-                   if (!params.address) {
 
-                     if (user) {
 
-                       params.address = user.get('solAddress');
 
-                     }
 
-                   }
 
-                 }
 
-                 if (!params.network) params.network = 'mainnet';
 
-                 if (!params.responseType) params.responseType = 'native';
 
-                 if (this.apiKey) {
 
-                   _context2.next = 7;
 
-                   break;
 
-                 }
 
-                 return _context2.abrupt("return", this.fetchFromServer(endpoint.name, params));
 
-               case 7:
 
-                 return _context2.abrupt("return", this.fetchFromApi(endpoint, params));
 
-               case 8:
 
-               case "end":
 
-                 return _context2.stop();
 
-             }
 
-           }
 
-         }, _callee, this);
 
-       }));
 
-       return function () {
 
-         return _fetch.apply(this, arguments);
 
-       };
 
-     }()
 
-   }, {
 
-     key: "fetchFromApi",
 
-     value: function () {
 
-       var _fetchFromApi = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(endpoint, params) {
 
-         var _endpoint$method, method, url, bodyParams, parameterizedUrl, body, response, _error$response2, status, headers, data, msg;
 
-         return _regenerator.default.wrap(function (_context3) {
 
-           while (1) {
 
-             switch (_context3.prev = _context3.next) {
 
-               case 0:
 
-                 _endpoint$method = endpoint.method, method = _endpoint$method === void 0 ? 'GET' : _endpoint$method, url = endpoint.url, bodyParams = endpoint.bodyParams;
 
-                 _context3.prev = 1;
 
-                 parameterizedUrl = this.getParameterizedUrl(url, params);
 
-                 body = this.getBody(params, bodyParams);
 
-                 _context3.next = 6;
 
-                 return axios(this.baseURL + parameterizedUrl, {
 
-                   params: params,
 
-                   method: method,
 
-                   body: body,
 
-                   headers: {
 
-                     Accept: 'application/json',
 
-                     'Content-Type': 'application/json',
 
-                     'x-api-key': this.apiKey
 
-                   }
 
-                 });
 
-               case 6:
 
-                 response = _context3.sent;
 
-                 return _context3.abrupt("return", response.data);
 
-               case 10:
 
-                 _context3.prev = 10;
 
-                 _context3.t0 = _context3["catch"](1);
 
-                 _error$response2 = _context3.t0.response, status = _error$response2.status, headers = _error$response2.headers, data = _error$response2.data;
 
-                 if (status === 429) {
 
-                   msg = "This Moralis Server is rate-limited because of the plan restrictions. See the details about the current rate and throttle limits: ".concat((0, _stringify.default)(this.getApiRateLimitInfo(headers)));
 
-                 } else {
 
-                   msg = this.getApiErrorMessage(_context3.t0, url);
 
-                 }
 
-                 throw new Error(msg);
 
-               case 15:
 
-               case "end":
 
-                 return _context3.stop();
 
-             }
 
-           }
 
-         }, _callee2, this, [[1, 10]]);
 
-       }));
 
-       return function () {
 
-         return _fetchFromApi.apply(this, arguments);
 
-       };
 
-     }()
 
-   }, {
 
-     key: "fetchFromServer",
 
-     value: function () {
 
-       var _fetchFromServer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(name, options) {
 
-         var http, user, response, _error$response3, _error$response3$data;
 
-         return _regenerator.default.wrap(function (_context4) {
 
-           while (1) {
 
-             switch (_context4.prev = _context4.next) {
 
-               case 0:
 
-                 if (this.serverUrl) {
 
-                   _context4.next = 2;
 
-                   break;
 
-                 }
 
-                 throw new Error('SolanaAPI not initialized, run Moralis.start() first');
 
-               case 2:
 
-                 _context4.prev = 2;
 
-                 http = axios.create({
 
-                   baseURL: this.serverUrl
 
-                 });
 
-                 user = this.Moralis.User.current();
 
-                 if (user) {
 
-                   options._SessionToken = user.attributes.sessionToken;
 
-                   options._ApplicationId = this.Moralis.applicationId;
 
-                 }
 
-                 _context4.next = 8;
 
-                 return http.post("/functions/sol-".concat(name), options, {
 
-                   headers: {
 
-                     Accept: 'application/json',
 
-                     'Content-Type': 'application/json'
 
-                   }
 
-                 });
 
-               case 8:
 
-                 response = _context4.sent;
 
-                 return _context4.abrupt("return", response.data.result);
 
-               case 12:
 
-                 _context4.prev = 12;
 
-                 _context4.t0 = _context4["catch"](2);
 
-                 if (!((_error$response3 = _context4.t0.response) !== null && _error$response3 !== void 0 && (_error$response3$data = _error$response3.data) !== null && _error$response3$data !== void 0 && _error$response3$data.error)) {
 
-                   _context4.next = 16;
 
-                   break;
 
-                 }
 
-                 throw new Error(_context4.t0.response.data.error);
 
-               case 16:
 
-                 throw _context4.t0;
 
-               case 17:
 
-               case "end":
 
-                 return _context4.stop();
 
-             }
 
-           }
 
-         }, _callee3, this, [[2, 12]]);
 
-       }));
 
-       return function () {
 
-         return _fetchFromServer.apply(this, arguments);
 
-       };
 
-     }()
 
-   }]);
 
-   return SolanaApi;
 
- }();
 
- (0, _defineProperty2.default)(SolanaApi, "baseURL", 'https://solana-gateway.moralis.io');
 
- (0, _defineProperty2.default)(SolanaApi, "BodyParamTypes", {
 
-   setBody: 'set body',
 
-   property: 'property'
 
- });
 
- (0, _defineProperty2.default)(SolanaApi, "account", {
 
-   balance: function () {
 
-     var _balance = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
 
-       var options,
 
-           _args4 = arguments;
 
-       return _regenerator.default.wrap(function (_context5) {
 
-         while (1) {
 
-           switch (_context5.prev = _context5.next) {
 
-             case 0:
 
-               options = _args4.length > 0 && _args4[0] !== undefined ? _args4[0] : {};
 
-               return _context5.abrupt("return", SolanaApi.fetch({
 
-                 endpoint: {
 
-                   "method": "GET",
 
-                   "group": "account",
 
-                   "name": "balance",
 
-                   "url": "/account/:network/:address/balance"
 
-                 },
 
-                 params: options
 
-               }));
 
-             case 2:
 
-             case "end":
 
-               return _context5.stop();
 
-           }
 
-         }
 
-       }, _callee4);
 
-     }));
 
-     return function () {
 
-       return _balance.apply(this, arguments);
 
-     };
 
-   }(),
 
-   getSPL: function () {
 
-     var _getSPL = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {
 
-       var options,
 
-           _args5 = arguments;
 
-       return _regenerator.default.wrap(function (_context6) {
 
-         while (1) {
 
-           switch (_context6.prev = _context6.next) {
 
-             case 0:
 
-               options = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : {};
 
-               return _context6.abrupt("return", SolanaApi.fetch({
 
-                 endpoint: {
 
-                   "method": "GET",
 
-                   "group": "account",
 
-                   "name": "getSPL",
 
-                   "url": "/account/:network/:address/tokens"
 
-                 },
 
-                 params: options
 
-               }));
 
-             case 2:
 
-             case "end":
 
-               return _context6.stop();
 
-           }
 
-         }
 
-       }, _callee5);
 
-     }));
 
-     return function () {
 
-       return _getSPL.apply(this, arguments);
 
-     };
 
-   }(),
 
-   getNFTs: function () {
 
-     var _getNFTs = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() {
 
-       var options,
 
-           _args6 = arguments;
 
-       return _regenerator.default.wrap(function (_context7) {
 
-         while (1) {
 
-           switch (_context7.prev = _context7.next) {
 
-             case 0:
 
-               options = _args6.length > 0 && _args6[0] !== undefined ? _args6[0] : {};
 
-               return _context7.abrupt("return", SolanaApi.fetch({
 
-                 endpoint: {
 
-                   "method": "GET",
 
-                   "group": "account",
 
-                   "name": "getNFTs",
 
-                   "url": "/account/:network/:address/nft"
 
-                 },
 
-                 params: options
 
-               }));
 
-             case 2:
 
-             case "end":
 
-               return _context7.stop();
 
-           }
 
-         }
 
-       }, _callee6);
 
-     }));
 
-     return function () {
 
-       return _getNFTs.apply(this, arguments);
 
-     };
 
-   }(),
 
-   getPortfolio: function () {
 
-     var _getPortfolio = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7() {
 
-       var options,
 
-           _args7 = arguments;
 
-       return _regenerator.default.wrap(function (_context8) {
 
-         while (1) {
 
-           switch (_context8.prev = _context8.next) {
 
-             case 0:
 
-               options = _args7.length > 0 && _args7[0] !== undefined ? _args7[0] : {};
 
-               return _context8.abrupt("return", SolanaApi.fetch({
 
-                 endpoint: {
 
-                   "method": "GET",
 
-                   "group": "account",
 
-                   "name": "getPortfolio",
 
-                   "url": "/account/:network/:address/portfolio"
 
-                 },
 
-                 params: options
 
-               }));
 
-             case 2:
 
-             case "end":
 
-               return _context8.stop();
 
-           }
 
-         }
 
-       }, _callee7);
 
-     }));
 
-     return function () {
 
-       return _getPortfolio.apply(this, arguments);
 
-     };
 
-   }()
 
- });
 
- (0, _defineProperty2.default)(SolanaApi, "nft", {
 
-   getNFTMetadata: function () {
 
-     var _getNFTMetadata = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() {
 
-       var options,
 
-           _args8 = arguments;
 
-       return _regenerator.default.wrap(function (_context9) {
 
-         while (1) {
 
-           switch (_context9.prev = _context9.next) {
 
-             case 0:
 
-               options = _args8.length > 0 && _args8[0] !== undefined ? _args8[0] : {};
 
-               return _context9.abrupt("return", SolanaApi.fetch({
 
-                 endpoint: {
 
-                   "method": "GET",
 
-                   "group": "nft",
 
-                   "name": "getNFTMetadata",
 
-                   "url": "/nft/:network/:address/metadata"
 
-                 },
 
-                 params: options
 
-               }));
 
-             case 2:
 
-             case "end":
 
-               return _context9.stop();
 
-           }
 
-         }
 
-       }, _callee8);
 
-     }));
 
-     return function () {
 
-       return _getNFTMetadata.apply(this, arguments);
 
-     };
 
-   }()
 
- });
 
- var _default = SolanaApi;
 
- exports.default = _default;
 
 
  |