@xoxno/sdk-js 0.1.75-alpha → 0.1.76-alpha

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 (183) hide show
  1. package/out/cjs/collection/index.js +625 -0
  2. package/out/cjs/collection/index.js.map +1 -0
  3. package/out/cjs/common/index.js +141 -0
  4. package/out/cjs/common/index.js.map +1 -0
  5. package/out/cjs/index.js +26 -0
  6. package/out/cjs/index.js.map +1 -0
  7. package/out/cjs/index.large.js +19 -0
  8. package/out/cjs/index.large.js.map +1 -0
  9. package/out/cjs/interactions/index.js +678 -0
  10. package/out/cjs/interactions/index.js.map +1 -0
  11. package/out/cjs/launchpad/index.js +158 -0
  12. package/out/cjs/launchpad/index.js.map +1 -0
  13. package/out/cjs/nft/index.js +121 -0
  14. package/out/cjs/nft/index.js.map +1 -0
  15. package/out/cjs/staking/index.js +29 -0
  16. package/out/cjs/staking/index.js.map +1 -0
  17. package/{dist → out/cjs}/types/collection.js +31 -28
  18. package/out/cjs/types/collection.js.map +1 -0
  19. package/out/cjs/types/common.js +3 -0
  20. package/{dist → out/cjs}/types/common.js.map +1 -1
  21. package/out/cjs/types/index.js +24 -0
  22. package/out/cjs/types/index.js.map +1 -0
  23. package/{dist → out/cjs}/types/interactions.js +5 -2
  24. package/out/cjs/types/interactions.js.map +1 -0
  25. package/out/cjs/types/nft.js +3 -0
  26. package/out/cjs/types/nft.js.map +1 -0
  27. package/out/cjs/types/staking.js +15 -0
  28. package/out/cjs/types/staking.js.map +1 -0
  29. package/{dist → out/cjs}/types/trading.js +9 -6
  30. package/out/cjs/types/trading.js.map +1 -0
  31. package/out/cjs/types/user.js +13 -0
  32. package/out/cjs/types/user.js.map +1 -0
  33. package/out/cjs/users/index.js +335 -0
  34. package/out/cjs/users/index.js.map +1 -0
  35. package/out/cjs/utils/SmartContractAbis.js +103 -0
  36. package/out/cjs/utils/SmartContractAbis.js.map +1 -0
  37. package/out/cjs/utils/SmartContractService.js +13 -0
  38. package/out/cjs/utils/SmartContractService.js.map +1 -0
  39. package/out/cjs/utils/api.js +79 -0
  40. package/out/cjs/utils/api.js.map +1 -0
  41. package/out/cjs/utils/const.js +17 -0
  42. package/out/cjs/utils/const.js.map +1 -0
  43. package/out/cjs/utils/getActivity.js +65 -0
  44. package/out/cjs/utils/getActivity.js.map +1 -0
  45. package/out/cjs/utils/helpers.js +27 -0
  46. package/out/cjs/utils/helpers.js.map +1 -0
  47. package/out/cjs/utils/regex.js +12 -0
  48. package/out/cjs/utils/regex.js.map +1 -0
  49. package/out/cjs/utils/scCalls.js +39 -0
  50. package/out/cjs/utils/scCalls.js.map +1 -0
  51. package/out/src/collection/__tests__/collection.test.js +2 -0
  52. package/out/src/collection/__tests__/collection.test.js.map +1 -0
  53. package/out/src/collection/index.js +2 -0
  54. package/out/src/collection/index.js.map +1 -0
  55. package/out/src/common/index.js +2 -0
  56. package/out/src/common/index.js.map +1 -0
  57. package/out/src/index.js +2 -0
  58. package/out/src/index.js.map +1 -0
  59. package/out/src/index.large.js +2 -0
  60. package/out/src/index.large.js.map +1 -0
  61. package/out/src/interactions/__tests__/market.test.js +2 -0
  62. package/out/src/interactions/__tests__/market.test.js.map +1 -0
  63. package/out/src/interactions/index.js +2 -0
  64. package/out/src/interactions/index.js.map +1 -0
  65. package/out/src/launchpad/__tests__/market.test.js +2 -0
  66. package/out/src/launchpad/__tests__/market.test.js.map +1 -0
  67. package/out/src/launchpad/index.js +2 -0
  68. package/out/src/launchpad/index.js.map +1 -0
  69. package/out/src/nft/__tests__/nft.test.js +2 -0
  70. package/out/src/nft/__tests__/nft.test.js.map +1 -0
  71. package/out/src/nft/index.js +2 -0
  72. package/out/src/nft/index.js.map +1 -0
  73. package/out/src/staking/index.js +2 -0
  74. package/out/src/staking/index.js.map +1 -0
  75. package/out/src/types/collection.js +2 -0
  76. package/out/src/types/collection.js.map +1 -0
  77. package/out/src/types/common.js +2 -0
  78. package/out/src/types/common.js.map +1 -0
  79. package/out/src/types/index.js +2 -0
  80. package/out/src/types/index.js.map +1 -0
  81. package/out/src/types/interactions.js +2 -0
  82. package/out/src/types/interactions.js.map +1 -0
  83. package/out/src/types/nft.js +2 -0
  84. package/out/src/types/nft.js.map +1 -0
  85. package/out/src/types/staking.js +2 -0
  86. package/out/src/types/staking.js.map +1 -0
  87. package/out/src/types/trading.js +2 -0
  88. package/out/src/types/trading.js.map +1 -0
  89. package/out/src/types/user.js +2 -0
  90. package/out/src/types/user.js.map +1 -0
  91. package/out/src/users/__tests__/user.test.js +2 -0
  92. package/out/src/users/__tests__/user.test.js.map +1 -0
  93. package/out/src/users/index.js +2 -0
  94. package/out/src/users/index.js.map +1 -0
  95. package/out/src/utils/SmartContractAbis.js +2 -0
  96. package/out/src/utils/SmartContractAbis.js.map +1 -0
  97. package/out/src/utils/SmartContractService.js +2 -0
  98. package/out/src/utils/SmartContractService.js.map +1 -0
  99. package/out/src/utils/api.js +2 -0
  100. package/out/src/utils/api.js.map +1 -0
  101. package/out/src/utils/const.js +2 -0
  102. package/out/src/utils/const.js.map +1 -0
  103. package/out/src/utils/getActivity.js +2 -0
  104. package/out/src/utils/getActivity.js.map +1 -0
  105. package/out/src/utils/helpers.js +2 -0
  106. package/out/src/utils/helpers.js.map +1 -0
  107. package/out/src/utils/regex.js +2 -0
  108. package/out/src/utils/regex.js.map +1 -0
  109. package/out/src/utils/scCalls.js +2 -0
  110. package/out/src/utils/scCalls.js.map +1 -0
  111. package/package.json +21 -8
  112. package/.eslintrc.json +0 -19
  113. package/dist/collection/index.js +0 -660
  114. package/dist/collection/index.js.map +0 -1
  115. package/dist/common/index.js +0 -132
  116. package/dist/common/index.js.map +0 -1
  117. package/dist/index.js +0 -10
  118. package/dist/index.js.map +0 -1
  119. package/dist/index.large.js +0 -3
  120. package/dist/index.large.js.map +0 -1
  121. package/dist/interactions/index.js +0 -619
  122. package/dist/interactions/index.js.map +0 -1
  123. package/dist/launchpad/index.js +0 -140
  124. package/dist/launchpad/index.js.map +0 -1
  125. package/dist/nft/index.js +0 -109
  126. package/dist/nft/index.js.map +0 -1
  127. package/dist/staking/index.js +0 -17
  128. package/dist/staking/index.js.map +0 -1
  129. package/dist/types/collection.js.map +0 -1
  130. package/dist/types/common.js +0 -2
  131. package/dist/types/index.js +0 -8
  132. package/dist/types/index.js.map +0 -1
  133. package/dist/types/interactions.js.map +0 -1
  134. package/dist/types/nft.js +0 -2
  135. package/dist/types/nft.js.map +0 -1
  136. package/dist/types/staking.js +0 -12
  137. package/dist/types/staking.js.map +0 -1
  138. package/dist/types/trading.js.map +0 -1
  139. package/dist/types/user.js +0 -10
  140. package/dist/types/user.js.map +0 -1
  141. package/dist/users/index.js +0 -324
  142. package/dist/users/index.js.map +0 -1
  143. package/dist/utils/SmartContractAbis.js +0 -84
  144. package/dist/utils/SmartContractAbis.js.map +0 -1
  145. package/dist/utils/SmartContractService.js +0 -9
  146. package/dist/utils/SmartContractService.js.map +0 -1
  147. package/dist/utils/api.js +0 -82
  148. package/dist/utils/api.js.map +0 -1
  149. package/dist/utils/const.js +0 -14
  150. package/dist/utils/const.js.map +0 -1
  151. package/dist/utils/getActivity.js +0 -64
  152. package/dist/utils/getActivity.js.map +0 -1
  153. package/dist/utils/helpers.js +0 -21
  154. package/dist/utils/helpers.js.map +0 -1
  155. package/dist/utils/regex.js +0 -7
  156. package/dist/utils/regex.js.map +0 -1
  157. package/dist/utils/scCalls.js +0 -25
  158. package/dist/utils/scCalls.js.map +0 -1
  159. /package/{dist → out/cjs}/collection/index.d.ts +0 -0
  160. /package/{dist → out/cjs}/common/index.d.ts +0 -0
  161. /package/{dist → out/cjs}/index.d.ts +0 -0
  162. /package/{dist → out/cjs}/index.large.d.ts +0 -0
  163. /package/{dist → out/cjs}/interactions/index.d.ts +0 -0
  164. /package/{dist → out/cjs}/launchpad/index.d.ts +0 -0
  165. /package/{dist → out/cjs}/nft/index.d.ts +0 -0
  166. /package/{dist → out/cjs}/staking/index.d.ts +0 -0
  167. /package/{dist → out/cjs}/types/collection.d.ts +0 -0
  168. /package/{dist → out/cjs}/types/common.d.ts +0 -0
  169. /package/{dist → out/cjs}/types/index.d.ts +0 -0
  170. /package/{dist → out/cjs}/types/interactions.d.ts +0 -0
  171. /package/{dist → out/cjs}/types/nft.d.ts +0 -0
  172. /package/{dist → out/cjs}/types/staking.d.ts +0 -0
  173. /package/{dist → out/cjs}/types/trading.d.ts +0 -0
  174. /package/{dist → out/cjs}/types/user.d.ts +0 -0
  175. /package/{dist → out/cjs}/users/index.d.ts +0 -0
  176. /package/{dist → out/cjs}/utils/SmartContractAbis.d.ts +0 -0
  177. /package/{dist → out/cjs}/utils/SmartContractService.d.ts +0 -0
  178. /package/{dist → out/cjs}/utils/api.d.ts +0 -0
  179. /package/{dist → out/cjs}/utils/const.d.ts +0 -0
  180. /package/{dist → out/cjs}/utils/getActivity.d.ts +0 -0
  181. /package/{dist → out/cjs}/utils/helpers.d.ts +0 -0
  182. /package/{dist → out/cjs}/utils/regex.d.ts +0 -0
  183. /package/{dist → out/cjs}/utils/scCalls.d.ts +0 -0
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"LaunchpadModule",{enumerable:true,get:function(){return LaunchpadModule}});const _SmartContractAbis=require("../utils/SmartContractAbis");const _SmartContractService=require("../utils/SmartContractService");const _scCalls=require("../utils/scCalls");let LaunchpadModule=class LaunchpadModule{minter;call;constructor(minterAbiXOXNO){this.minter=minterAbiXOXNO;this.call=new _scCalls.ContractQueryRunner}async getResult(interaction){return await this.call.runQuery(this.minter,interaction)}static async init(minterSC){const minterAbiXOXNO=await _SmartContractAbis.SmartContractAbis.getMinter();const minter_abi=(0,_SmartContractService.getSmartContract)(minterAbiXOXNO,minterSC);return new LaunchpadModule(minter_abi)}getAllUniqueTags=async()=>{const interaction=this.minter.methods.collections();const result=await this.getResult(interaction);return result.firstValue?.valueOf().map(x=>x.toString())};getWalletGlobalBuyCount=async(user,tag)=>{const interaction=this.minter.methods.buysPerWallet([user,tag]);const result=await this.getResult(interaction);return result.firstValue?.valueOf()};getWalletStageBuyCount=async(user,tag,stage)=>{const interaction=this.minter.methods.buysStagePerWallet([user,tag,stage]);const result=await this.getResult(interaction);return result.firstValue?.valueOf()};getLocalOwner=async()=>{const interaction=this.minter.methods.localOwner();const result=await this.getResult(interaction);return result.firstValue?.valueOf()};getLaunchpadCutFee=async()=>{const interaction=this.minter.methods.cutPercentage();const result=await this.getResult(interaction);return result.firstValue?.valueOf()};getStageWhitelist=async(tag,stage)=>{const interaction=this.minter.methods.getWhitelistedWallets([tag,stage]);const result=await this.getResult(interaction);return result.firstValue?.valueOf().map(x=>x.toString())};getStages=async tag=>{const interaction=this.minter.methods.mintStage([tag]);const result=await this.getResult(interaction);return result.firstValue?.valueOf().map(x=>{const body=x[1].valueOf();body.name=body.name.toString();body.tag=body.name.toString();body.start_time=parseInt(body.start_time.toString());body.end_time=parseInt(body.end_time.toString());body.mint_limit=parseInt(body.mint_limit.toString());body.mint_count=parseInt(body.mint_count.toString());body.max_per_wallet=parseInt(body.max_per_wallet.toString());body.prices=body.prices.map(x=>{const pr=x.valueOf();return{...pr,token_nonce:parseInt(pr.token_nonce.toString()),amount:pr.amount.toString()}});return body})}};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/launchpad/index.ts"],"sourcesContent":["import type { Interaction } from '@multiversx/sdk-core/out/smartcontracts/interaction';\nimport { SmartContractAbis } from '../utils/SmartContractAbis';\nimport { getSmartContract } from '../utils/SmartContractService';\nimport { ContractQueryRunner } from '../utils/scCalls';\nimport type { SmartContract } from '@multiversx/sdk-core/out/smartcontracts/smartContract';\n\n/**\n * LaunchpadModule provides methods to interact with the minter smart contract.\n * @class\n */\nexport class LaunchpadModule {\n private minter: SmartContract;\n private call: ContractQueryRunner;\n /**\n * @constructor\n * @param {SmartContract} minterAbiXOXNO - The minter smart contract instance.\n */\n constructor(minterAbiXOXNO: SmartContract) {\n this.minter = minterAbiXOXNO;\n this.call = new ContractQueryRunner();\n }\n\n /**\n * Executes the provided interaction and returns the result.\n * @private\n * @param {Interaction} interaction - The smart contract interaction.\n * @returns {Promise<any>} The result of the interaction.\n */\n private async getResult(interaction: Interaction) {\n return await this.call.runQuery(this.minter, interaction);\n }\n\n /**\n * Initializes the LaunchpadModule with a minter smart contract instance.\n * @static\n * @param {string} minterSC - The minter smart contract address.\n * @returns {Promise<LaunchpadModule>} A new instance of LaunchpadModule.\n */\n static async init(minterSC: string) {\n const minterAbiXOXNO = await SmartContractAbis.getMinter();\n const minter_abi = getSmartContract(minterAbiXOXNO, minterSC);\n return new LaunchpadModule(minter_abi);\n }\n\n /**\n * Fetches all unique tags from the minter smart contract.\n * @public\n * @returns {Promise<string[]>} An array of unique tags.\n */\n public getAllUniqueTags = async (): Promise<string[]> => {\n const interaction = this.minter.methods.collections();\n const result = await this.getResult(interaction);\n return result.firstValue?.valueOf().map((x: any) => x.toString());\n };\n\n /**\n * Fetches the global buy count for a user and tag.\n * @public\n * @param {string} user - The user's address.\n * @param {string} tag - The tag.\n * @returns {Promise<number>} The global buy count.\n */\n public getWalletGlobalBuyCount = async (\n user: string,\n tag: string\n ): Promise<number> => {\n const interaction = this.minter.methods.buysPerWallet([user, tag]);\n const result = await this.getResult(interaction);\n return result.firstValue?.valueOf();\n };\n\n /**\n * Fetches the stage buy count for a user, tag, and stage.\n * @public\n * @param {string} user - The user's address.\n * @param {string} tag - The tag.\n * @param {string} stage - The stage.\n * @returns {Promise<number>} The stage buy count.\n */\n public getWalletStageBuyCount = async (\n user: string,\n tag: string,\n stage: string\n ): Promise<number> => {\n const interaction = this.minter.methods.buysStagePerWallet([\n user,\n tag,\n stage,\n ]);\n const result = await this.getResult(interaction);\n return result.firstValue?.valueOf();\n };\n\n /**\n * Fetches the local owner's address from the minter smart contract.\n * @public\n * @returns {Promise<string>} The local owner's address.\n */\n public getLocalOwner = async (): Promise<string> => {\n const interaction = this.minter.methods.localOwner();\n const result = await this.getResult(interaction);\n return result.firstValue?.valueOf();\n };\n\n /**\n * Fetches the launchpad cut fee percentage from the minter smart contract.\n * @public\n * @returns {Promise<number>} The launchpad cut fee percentage.\n */\n\n public getLaunchpadCutFee = async (): Promise<number> => {\n const interaction = this.minter.methods.cutPercentage();\n const result = await this.getResult(interaction);\n return result.firstValue?.valueOf();\n };\n\n /**\n * Fetches the stage whitelist of wallets for a tag and stage.\n * @public\n * @param {string} tag - The tag.\n * @param {string} stage - The stage.\n * @returns {Promise<string[]>} An array of whitelisted wallet addresses.\n */\n public getStageWhitelist = async (\n tag: string,\n stage: string\n ): Promise<string[]> => {\n const interaction = this.minter.methods.getWhitelistedWallets([tag, stage]);\n const result = await this.getResult(interaction);\n return result.firstValue?.valueOf().map((x: any) => x.toString());\n };\n\n /**\n * Fetches the list of stages for a tag.\n * @public\n * @param {string} tag - The tag.\n * @returns {Promise<string[]>} An array of stages.\n */\n public getStages = async (tag: string): Promise<string[]> => {\n const interaction = this.minter.methods.mintStage([tag]);\n const result = await this.getResult(interaction);\n return result.firstValue?.valueOf().map((x: any) => {\n const body = x[1].valueOf();\n body.name = body.name.toString();\n body.tag = body.name.toString();\n body.start_time = parseInt(body.start_time.toString());\n body.end_time = parseInt(body.end_time.toString());\n body.mint_limit = parseInt(body.mint_limit.toString());\n body.mint_count = parseInt(body.mint_count.toString());\n body.max_per_wallet = parseInt(body.max_per_wallet.toString());\n body.prices = body.prices.map((x: any) => {\n const pr = x.valueOf();\n return {\n ...pr,\n token_nonce: parseInt(pr.token_nonce.toString()),\n amount: pr.amount.toString(),\n };\n });\n\n return body;\n });\n };\n}\n"],"names":["LaunchpadModule","minter","call","constructor","minterAbiXOXNO","ContractQueryRunner","getResult","interaction","runQuery","init","minterSC","SmartContractAbis","getMinter","minter_abi","getSmartContract","getAllUniqueTags","methods","collections","result","firstValue","valueOf","map","x","toString","getWalletGlobalBuyCount","user","tag","buysPerWallet","getWalletStageBuyCount","stage","buysStagePerWallet","getLocalOwner","localOwner","getLaunchpadCutFee","cutPercentage","getStageWhitelist","getWhitelistedWallets","getStages","mintStage","body","name","start_time","parseInt","end_time","mint_limit","mint_count","max_per_wallet","prices","pr","token_nonce","amount"],"rangeMappings":"","mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});const _=require("..");const _types=require("../../types");const _api=require("../../utils/api");describe("NFTModule",()=>{let nftModule;const inputIdentifier="BANANA-e955fd-01";const collection="BANANA-e955fd";const nonce=1;const nonceHex="01";beforeAll(()=>{_api.XOXNOClient.init();nftModule=new _.NFTModule});beforeEach(async()=>{return new Promise(resolve=>setTimeout(resolve,1e3))});it("should return NFT data when given a valid identifier",async()=>{const nftData=await nftModule.getNFTByIdentifier(inputIdentifier);expect(nftData).toBeDefined();expect(nftData.identifier).toEqual(inputIdentifier)});it("should return NFT data when given a valid collection and nonce",async()=>{const nftData=await nftModule.getNFTByCollectionAndNonce(collection,nonce);expect(nftData).toBeDefined();expect(nftData.identifier).toEqual(inputIdentifier)});it("should return NFT data when given a valid collection and nonce as hex",async()=>{const nftData=await nftModule.getNFTByCollectionAndNonceHex(collection,nonceHex);expect(nftData).toBeDefined();expect(nftData.identifier).toEqual(inputIdentifier)});it("should return empty NFT trading activity",async()=>{const nftTradingActivity=await nftModule.getTradingActivity({identifiers:[inputIdentifier]});expect(nftTradingActivity).toBeDefined();expect(nftTradingActivity.empty).toEqual(true)});it("should return NFT trading activity",async()=>{const nftTradingActivity=await nftModule.getTradingActivity({identifiers:["BANANA-e955fd-05d9"],orderBy:[_types.OrderByTradingActivity.OldestPlaced],top:1});expect(nftTradingActivity).toBeDefined();expect(nftTradingActivity.empty).toEqual(false);expect(nftTradingActivity.resources.length).toEqual(1)})});
2
+ //# sourceMappingURL=nft.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/nft/__tests__/nft.test.ts"],"sourcesContent":["import { NFTModule } from '..';\nimport { OrderByTradingActivity } from '../../types';\nimport { XOXNOClient } from '../../utils/api';\n\ndescribe('NFTModule', () => {\n let nftModule: NFTModule;\n const inputIdentifier = 'BANANA-e955fd-01';\n const collection = 'BANANA-e955fd';\n const nonce = 1;\n const nonceHex = '01';\n beforeAll(() => {\n XOXNOClient.init();\n nftModule = new NFTModule();\n });\n\n beforeEach(async () => {\n return new Promise((resolve) => setTimeout(resolve, 1000));\n });\n\n it('should return NFT data when given a valid identifier', async () => {\n const nftData = await nftModule.getNFTByIdentifier(inputIdentifier);\n expect(nftData).toBeDefined();\n expect(nftData.identifier).toEqual(inputIdentifier);\n });\n\n it('should return NFT data when given a valid collection and nonce', async () => {\n const nftData = await nftModule.getNFTByCollectionAndNonce(\n collection,\n nonce\n );\n expect(nftData).toBeDefined();\n expect(nftData.identifier).toEqual(inputIdentifier);\n });\n\n it('should return NFT data when given a valid collection and nonce as hex', async () => {\n const nftData = await nftModule.getNFTByCollectionAndNonceHex(\n collection,\n nonceHex\n );\n expect(nftData).toBeDefined();\n expect(nftData.identifier).toEqual(inputIdentifier);\n });\n\n it('should return empty NFT trading activity', async () => {\n const nftTradingActivity = await nftModule.getTradingActivity({\n identifiers: [inputIdentifier],\n });\n expect(nftTradingActivity).toBeDefined();\n expect(nftTradingActivity.empty).toEqual(true);\n });\n\n it('should return NFT trading activity', async () => {\n const nftTradingActivity = await nftModule.getTradingActivity({\n identifiers: ['BANANA-e955fd-05d9'],\n orderBy: [OrderByTradingActivity.OldestPlaced],\n top: 1,\n });\n expect(nftTradingActivity).toBeDefined();\n expect(nftTradingActivity.empty).toEqual(false);\n expect(nftTradingActivity.resources.length).toEqual(1);\n // expect(nftTradingActivity.resources[0]).toMatchObject({\n // txHash:\n // 'f2cc0f9abbe6e18855cec144cecee5a6e7e0fdf2249a7e2b487935c4630aec3d',\n // collection: 'BANANA-e955fd',\n // identifier: 'BANANA-e955fd-05d9',\n // timestamp: 1642523586,\n // action: 'buy',\n // price: 0.1,\n // paymentToken: 'EGLD',\n // buyer: 'erd1ecae8gpcsf5fk9na69my54c4t3dw27pdgk009huaj0ekjcp02u4qtw9e9d',\n // seller: 'erd1kkp6kcs5qpmfmcs4vj4v07kq750anpdz579mh2962r2suum2hfjsfrdaav',\n // usdPrice: 17.24,\n // egldValue: 0.1,\n // name: 'Banana #1497',\n // url: 'https://media.elrond.com/nfts/asset/QmZzdYmNtQw5F8WGY4eFmyqcFcziPa73DMSypMJWTxRdqa/1337.png',\n // avifUrl:\n // 'https://trustmarket.blob.core.windows.net/nftmedia/BANANA-e955fd/BANANA-e955fd-05d9.avif',\n // webpUrl:\n // 'https://trustmarket.blob.core.windows.net/nftmedia/BANANA-e955fd/BANANA-e955fd-05d9.webp',\n // rank: 480,\n // marketplace: 'XO',\n // id: '4505a7ae-eab9-4591-9f81-81671e63a9a3',\n // _ts: 1677342781,\n // sellerUsername: '@denysvicol',\n // buyerUsername: '@stefanmorar',\n // });\n });\n});\n"],"names":["describe","nftModule","inputIdentifier","collection","nonce","nonceHex","beforeAll","XOXNOClient","init","NFTModule","beforeEach","Promise","resolve","setTimeout","it","nftData","getNFTByIdentifier","expect","toBeDefined","identifier","toEqual","getNFTByCollectionAndNonce","getNFTByCollectionAndNonceHex","nftTradingActivity","getTradingActivity","identifiers","empty","orderBy","OrderByTradingActivity","OldestPlaced","top","resources","length"],"rangeMappings":"","mappings":"sFAA0B,2BACa,kCACX,mBAE5BA,SAAS,YAAa,KACpB,IAAIC,UACJ,MAAMC,gBAAkB,mBACxB,MAAMC,WAAa,gBACnB,MAAMC,MAAQ,EACd,MAAMC,SAAW,KACjBC,UAAU,KACRC,gBAAW,CAACC,IAAI,GAChBP,UAAY,IAAIQ,WAAS,AAC3B,GAEAC,WAAW,UACT,OAAO,IAAIC,QAAQ,AAACC,SAAYC,WAAWD,QAAS,KACtD,GAEAE,GAAG,uDAAwD,UACzD,MAAMC,QAAU,MAAMd,UAAUe,kBAAkB,CAACd,iBACnDe,OAAOF,SAASG,WAAW,GAC3BD,OAAOF,QAAQI,UAAU,EAAEC,OAAO,CAAClB,gBACrC,GAEAY,GAAG,iEAAkE,UACnE,MAAMC,QAAU,MAAMd,UAAUoB,0BAA0B,CACxDlB,WACAC,OAEFa,OAAOF,SAASG,WAAW,GAC3BD,OAAOF,QAAQI,UAAU,EAAEC,OAAO,CAAClB,gBACrC,GAEAY,GAAG,wEAAyE,UAC1E,MAAMC,QAAU,MAAMd,UAAUqB,6BAA6B,CAC3DnB,WACAE,UAEFY,OAAOF,SAASG,WAAW,GAC3BD,OAAOF,QAAQI,UAAU,EAAEC,OAAO,CAAClB,gBACrC,GAEAY,GAAG,2CAA4C,UAC7C,MAAMS,mBAAqB,MAAMtB,UAAUuB,kBAAkB,CAAC,CAC5DC,YAAa,CAACvB,gBAAgB,AAChC,GACAe,OAAOM,oBAAoBL,WAAW,GACtCD,OAAOM,mBAAmBG,KAAK,EAAEN,OAAO,CAAC,KAC3C,GAEAN,GAAG,qCAAsC,UACvC,MAAMS,mBAAqB,MAAMtB,UAAUuB,kBAAkB,CAAC,CAC5DC,YAAa,CAAC,qBAAqB,CACnCE,QAAS,CAACC,6BAAsB,CAACC,YAAY,CAAC,CAC9CC,IAAK,CACP,GACAb,OAAOM,oBAAoBL,WAAW,GACtCD,OAAOM,mBAAmBG,KAAK,EAAEN,OAAO,CAAC,OACzCH,OAAOM,mBAAmBQ,SAAS,CAACC,MAAM,EAAEZ,OAAO,CAAC,EA2BtD,EACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"NFTModule",{enumerable:true,get:function(){return NFTModule}});const _=require("..");const _getActivity=require("../utils/getActivity");const _helpers=require("../utils/helpers");const _regex=require("../utils/regex");let NFTModule=class NFTModule{api;constructor(){this.api=_.XOXNOClient.init()}getNFTByIdentifier=async identifier=>{if(!(0,_regex.isValidNftIdentifier)(identifier)){throw new Error("Invalid identifier: "+identifier)}const response=await this.api.fetchWithTimeout(`/nft/${identifier}`);return response};getNFTsOffers=async(identifier,skip=0,top=25)=>{if(!(0,_regex.isValidNftIdentifier)(identifier)){throw new Error("Invalid identifier: "+identifier)}const response=await this.api.fetchWithTimeout(`/nft/${identifier}/offers?skip=${skip}&top=${top}`,{next:{tags:["getNFTsOffers"],revalidate:12}});return response};getNFTByCollectionAndNonce=async(collection,nonce)=>{if(!(0,_regex.isValidCollectionTicker)(collection)){throw new Error("Invalid collection ticker: "+collection)}const response=await this.api.fetchWithTimeout(`/${(0,_helpers.getIdentifierFromColAndNonce)(collection,nonce)}`);return response};getNFTByCollectionAndNonceHex=async(collection,nonceHex)=>{if(!(0,_regex.isValidCollectionTicker)(collection)){throw new Error("Invalid collection ticker: "+collection)}if(nonceHex.length%2!==0){nonceHex="0"+nonceHex}const response=await this.api.fetchWithTimeout(`/${[collection,nonceHex].join("-")}`);return response};getTradingActivity=async args=>{return await (0,_getActivity.getActivity)(args,this.api)}};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/nft/index.ts"],"sourcesContent":["import { XOXNOClient } from '..';\nimport { NftData } from '../types/nft';\nimport { TradingActivityResponse, TradincActivityArgs } from '../types/trading';\nimport { UserOffers } from '../types/user';\nimport { getActivity } from '../utils/getActivity';\nimport { getIdentifierFromColAndNonce } from '../utils/helpers';\nimport { isValidCollectionTicker, isValidNftIdentifier } from '../utils/regex';\n\n/**\n * NFTModule provides a set of methods to interact with single NFTs.\n * It includes methods for getting single NFT information, and searching NFTs by collection and nonce.\n *\n * @example\n * const nftModule = new NFTModule();\n */\n\nexport class NFTModule {\n private api: XOXNOClient;\n constructor() {\n this.api = XOXNOClient.init();\n }\n\n /**\n * @public\n * @async\n * @function getNFTByIdentifier\n * @param {string} identifier - The identifier of the NFT to fetch data for.\n * @returns {Promise<NftData>} A promise that resolves to the fetched NFT data.\n *\n * This function fetches data for a given NFT by its identifier. It takes the following parameter:\n * - identifier (string): The identifier of the NFT to fetch data for.\n *\n * The function first validates the input identifier and checks if it is a valid NFT identifier.\n * If it is valid, the function fetches the NFT data using the API.\n * Finally, it returns a promise that resolves to the fetched NFT data.\n */\n public getNFTByIdentifier = async (identifier: string): Promise<NftData> => {\n if (!isValidNftIdentifier(identifier)) {\n throw new Error('Invalid identifier: ' + identifier);\n }\n const response = await this.api.fetchWithTimeout<NftData>(\n `/nft/${identifier}`\n );\n return response;\n };\n\n /**\n * @public\n * @async\n * @function getNFTByIdentifier\n * @param {string} identifier - The identifier of the NFT to fetch data for.\n * @returns {Promise<NftData>} A promise that resolves to the fetched NFT data.\n *\n * This function fetches data for a given NFT by its identifier. It takes the following parameter:\n * - identifier (string): The identifier of the NFT to fetch data for.\n *\n * The function first validates the input identifier and checks if it is a valid NFT identifier.\n * If it is valid, the function fetches the NFT data using the API.\n * Finally, it returns a promise that resolves to the fetched NFT data.\n */\n public getNFTsOffers = async (\n identifier: string,\n skip: number = 0,\n top: number = 25\n ): Promise<UserOffers> => {\n if (!isValidNftIdentifier(identifier)) {\n throw new Error('Invalid identifier: ' + identifier);\n }\n const response = await this.api.fetchWithTimeout<UserOffers>(\n `/nft/${identifier}/offers?skip=${skip}&top=${top}`,\n {\n next: {\n tags: ['getNFTsOffers'],\n revalidate: 12,\n },\n }\n );\n return response;\n };\n\n /**\n * Gets an NFT by collection and nonce.\n * @param collection The collection ticker.\n * @param nonce The nonce of the NFT.\n * @returns {Promise<NftData>} The NFT data.\n * @throws Throws an error when the collection ticker is invalid.\n */\n public getNFTByCollectionAndNonce = async (\n collection: string,\n nonce: number\n ): Promise<NftData> => {\n if (!isValidCollectionTicker(collection)) {\n throw new Error('Invalid collection ticker: ' + collection);\n }\n\n const response = await this.api.fetchWithTimeout<NftData>(\n `/${getIdentifierFromColAndNonce(collection, nonce)}`\n );\n return response;\n };\n\n /**\n * Get NFT by collection and nonce hex\n *\n * @param collection - collection ticker\n * @param nonceHex - nonce hex\n * @return {Promise<NftData>} NFT data\n */\n\n public getNFTByCollectionAndNonceHex = async (\n collection: string,\n nonceHex: string\n ): Promise<NftData> => {\n // check that collection is valid\n if (!isValidCollectionTicker(collection)) {\n throw new Error('Invalid collection ticker: ' + collection);\n }\n // make sure nonceHex is even\n if (nonceHex.length % 2 !== 0) {\n nonceHex = '0' + nonceHex;\n }\n // fetch the NFT data\n const response = await this.api.fetchWithTimeout<NftData>(\n `/${[collection, nonceHex].join('-')}`\n );\n return response;\n };\n\n /**\n * Retrieves trading history based on the provided arguments.\n *\n * @param {TradincActivityArgs} args - The arguments for filtering the trading activity.\n * @returns {Promise<TradingActivityResponse>} A promise resolving to a TradingActivityResponse object containing the activity.\n * @throws {Error} Throws an error if the 'top' argument is greater than 35.\n */\n public getTradingActivity = async (\n args: TradincActivityArgs\n ): Promise<TradingActivityResponse> => {\n return await getActivity(args, this.api);\n };\n}\n"],"names":["NFTModule","api","constructor","XOXNOClient","init","getNFTByIdentifier","identifier","isValidNftIdentifier","Error","response","fetchWithTimeout","getNFTsOffers","skip","top","next","tags","revalidate","getNFTByCollectionAndNonce","collection","nonce","isValidCollectionTicker","getIdentifierFromColAndNonce","getNFTByCollectionAndNonceHex","nonceHex","length","join","getTradingActivity","args","getActivity"],"rangeMappings":"","mappings":"oGAgBaA,mDAAAA,6BAhBe,iCAIA,+CACiB,yCACiB,kBAUvD,IAAA,AAAMA,UAAN,MAAMA,UACX,AAAQC,GAAiB,AACzBC,cAAc,CACZ,IAAI,CAACD,GAAG,CAAGE,aAAW,CAACC,IAAI,EAC7B,CAgBA,AAAOC,mBAAqB,MAAOC,aACjC,GAAI,CAACC,GAAAA,2BAAoB,EAACD,YAAa,CACrC,MAAM,IAAIE,MAAM,uBAAyBF,WAC3C,CACA,MAAMG,SAAW,MAAM,IAAI,CAACR,GAAG,CAACS,gBAAgB,CAC9C,CAAC,KAAK,EAAEJ,WAAW,CAAC,EAEtB,OAAOG,QACT,CAAE,AAgBF,CAAOE,cAAgB,MACrBL,WACAM,KAAe,CAAC,CAChBC,IAAc,EAAE,IAEhB,GAAI,CAACN,GAAAA,2BAAoB,EAACD,YAAa,CACrC,MAAM,IAAIE,MAAM,uBAAyBF,WAC3C,CACA,MAAMG,SAAW,MAAM,IAAI,CAACR,GAAG,CAACS,gBAAgB,CAC9C,CAAC,KAAK,EAAEJ,WAAW,aAAa,EAAEM,KAAK,KAAK,EAAEC,IAAI,CAAC,CACnD,CACEC,KAAM,CACJC,KAAM,CAAC,gBAAgB,CACvBC,WAAY,EACd,CACF,GAEF,OAAOP,QACT,CAAE,AASF,CAAOQ,2BAA6B,MAClCC,WACAC,SAEA,GAAI,CAACC,GAAAA,8BAAuB,EAACF,YAAa,CACxC,MAAM,IAAIV,MAAM,8BAAgCU,WAClD,CAEA,MAAMT,SAAW,MAAM,IAAI,CAACR,GAAG,CAACS,gBAAgB,CAC9C,CAAC,CAAC,EAAEW,GAAAA,qCAA4B,EAACH,WAAYC,OAAO,CAAC,EAEvD,OAAOV,QACT,CAAE,AAUF,CAAOa,8BAAgC,MACrCJ,WACAK,YAGA,GAAI,CAACH,GAAAA,8BAAuB,EAACF,YAAa,CACxC,MAAM,IAAIV,MAAM,8BAAgCU,WAClD,CAEA,GAAIK,SAASC,MAAM,CAAG,IAAM,EAAG,CAC7BD,SAAW,IAAMA,QACnB,CAEA,MAAMd,SAAW,MAAM,IAAI,CAACR,GAAG,CAACS,gBAAgB,CAC9C,CAAC,CAAC,EAAE,CAACQ,WAAYK,SAAS,CAACE,IAAI,CAAC,KAAK,CAAC,EAExC,OAAOhB,QACT,CAAE,AASF,CAAOiB,mBAAqB,MAC1BC,OAEA,OAAO,MAAMC,GAAAA,wBAAW,EAACD,KAAM,IAAI,CAAC1B,GAAG,CACzC,CAAE,AACJ"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"StakingModule",{enumerable:true,get:function(){return StakingModule}});const _api=require("../utils/api");let StakingModule=class StakingModule{api;constructor(){this.api=_api.XOXNOClient.init()}getPoolDetails=async poolId=>{const response=await this.api.fetchWithTimeout(`/pool/${poolId}/profile`);return response}};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/staking/index.ts"],"sourcesContent":["import { PoolDetails } from '../types/user';\nimport { XOXNOClient } from '../utils/api';\n\nexport class StakingModule {\n private api: XOXNOClient;\n constructor() {\n this.api = XOXNOClient.init();\n }\n /** Gets pool details\n * @param {number} poolId - User's address\n * @returns {CreatoPoolDetailsrInfo} User's creator info\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getPoolDetails = async (poolId: number): Promise<PoolDetails> => {\n const response = await this.api.fetchWithTimeout<PoolDetails>(\n `/pool/${poolId}/profile`\n );\n return response;\n };\n}\n"],"names":["StakingModule","api","constructor","XOXNOClient","init","getPoolDetails","poolId","response","fetchWithTimeout"],"rangeMappings":"","mappings":"oGAGaA,uDAAAA,oCAFe,gBAErB,IAAA,AAAMA,cAAN,MAAMA,cACX,AAAQC,GAAiB,AACzBC,cAAc,CACZ,IAAI,CAACD,GAAG,CAAGE,gBAAW,CAACC,IAAI,EAC7B,CAMA,AAAOC,eAAiB,MAAOC,SAC7B,MAAMC,SAAW,MAAM,IAAI,CAACN,GAAG,CAACO,gBAAgB,CAC9C,CAAC,MAAM,EAAEF,OAAO,QAAQ,CAAC,EAE3B,OAAOC,QACT,CAAE,AACJ"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{AssetCategory:function(){return AssetCategory},AuctionTypes:function(){return AuctionTypes},CollectionStatsOrderBy:function(){return CollectionStatsOrderBy},CollectionStatsSelectFields:function(){return CollectionStatsSelectFields},CollectionsFieldsToSelect:function(){return CollectionsFieldsToSelect},CollectionsOrderBy:function(){return CollectionsOrderBy},CollectionsSummaryFilter:function(){return CollectionsSummaryFilter},DropsOderBy:function(){return DropsOderBy},FieldsToSelect:function(){return FieldsToSelect},GlobalOfferFieldsToSelect:function(){return GlobalOfferFieldsToSelect},GlobalOfferOrderBy:function(){return GlobalOfferOrderBy},Marketplace:function(){return Marketplace},SearchOrderBy:function(){return SearchOrderBy},SuggestOrderBy:function(){return SuggestOrderBy}});var Marketplace;(function(Marketplace){Marketplace["XO"]="xoxno";Marketplace["FM"]="frameit";Marketplace["DR"]="deadrare";Marketplace["KG"]="krogan"})(Marketplace||(Marketplace={}));var FieldsToSelect;(function(FieldsToSelect){FieldsToSelect["Rank"]="metadata.rarity.rank";FieldsToSelect["Attributes"]="metadata.attributes";FieldsToSelect["Description"]="metadata.description";FieldsToSelect["Name"]="name";FieldsToSelect["OnSale"]="onSale";FieldsToSelect["SaleInfo"]="saleInfo";FieldsToSelect["Royalties"]="royalties";FieldsToSelect["Identifier"]="identifier";FieldsToSelect["Collection"]="collection";FieldsToSelect["OriginalURL"]="url";FieldsToSelect["Nonce"]="nonce";FieldsToSelect["ContentType"]="originalMedia.contentType";FieldsToSelect["WasProcessed"]="wasProcessed";FieldsToSelect["AvifURL"]="avifUrl";FieldsToSelect["WebpURL"]="webpUrl";FieldsToSelect["Type"]="type"})(FieldsToSelect||(FieldsToSelect={}));var SearchOrderBy;(function(SearchOrderBy){SearchOrderBy["PriceHighToLow"]="saleInfo.minBidShort desc";SearchOrderBy["PriceLowToHigh"]="saleInfo.minBidShort asc";SearchOrderBy["MaxPriceHighToLow"]="saleInfo.maxBidShort desc";SearchOrderBy["MaxPriceLowToHigh"]="saleInfo.maxBidShort asc";SearchOrderBy["BidPriceHighToLow"]="saleInfo.currentBidShort desc";SearchOrderBy["BidPriceLowToHigh"]="saleInfo.currentBidShort asc";SearchOrderBy["RarityHighToLow"]="metadata.rarity.rank desc";SearchOrderBy["RarityLowToHigh"]="metadata.rarity.rank asc";SearchOrderBy["NonceHighToLow"]="nonce desc";SearchOrderBy["NonceLowToHigh"]="nonce asc";SearchOrderBy["RecentListed"]="saleInfo.timestamp desc";SearchOrderBy["OldestListed"]="saleInfo.timestamp asc";SearchOrderBy["EndingLate"]="saleInfo.deadline desc";SearchOrderBy["EndingSoon"]="saleInfo.deadline asc"})(SearchOrderBy||(SearchOrderBy={}));var DropsOderBy;(function(DropsOderBy){DropsOderBy["EndingLate"]="startTime desc";DropsOderBy["EndingSoon"]="startTime asc"})(DropsOderBy||(DropsOderBy={}));var SuggestOrderBy;(function(SuggestOrderBy){SuggestOrderBy["TotalVolumeHighToLow"]="statistics/tradeData/totalEgldVolume desc";SuggestOrderBy["FollowersHighToLow"]="statistics/other/followCount desc";SuggestOrderBy["IsVerifiedTrueToFalse"]="isVerified desc";SuggestOrderBy["HasImageTrueToFalse"]="profile desc";SuggestOrderBy["HasBannerTrueToFalse"]="banner desc"})(SuggestOrderBy||(SuggestOrderBy={}));var CollectionsOrderBy;(function(CollectionsOrderBy){CollectionsOrderBy["WeekVolumeHighToLow"]="statistics.tradeData.weekEgldVolume desc";CollectionsOrderBy["WeekVolumeLowToHigh"]="statistics.tradeData.weekEgldVolume asc";CollectionsOrderBy["DailyVolumeHighToLow"]="statistics.tradeData.dayEgldVolume desc";CollectionsOrderBy["DailyVolumeLowToHigh"]="statistics.tradeData.dayEgldVolume asc";CollectionsOrderBy["TotalVolumeHighToLow"]="statistics.tradeData.totalEgldVolume desc";CollectionsOrderBy["TotalVolumeLowToHigh"]="statistics.tradeData.totalEgldVolume asc";CollectionsOrderBy["AvgVolumePriceHighToLow"]="statistics.tradeData.averageEgldPrice desc";CollectionsOrderBy["AvgVolumePriceLowToHigh"]="statistics.tradeData.averageEgldPrice asc";CollectionsOrderBy["ATHHighToLow"]="statistics.tradeData.athEgldPrice desc";CollectionsOrderBy["ATHLowToHigh"]="statistics.tradeData.athEgldPrice asc";CollectionsOrderBy["TotalTradesHighToLow"]="statistics.tradeData.totalTrades desc";CollectionsOrderBy["TotalTradesLowToHigh"]="statistics.tradeData.totalTrades asc";CollectionsOrderBy["SupplyHighToLow"]="statistics.other.nftCount desc";CollectionsOrderBy["SupplyLowToHigh"]="statistics.other.nftCount asc";CollectionsOrderBy["FollowersHighToLow"]="statistics.other.followCount desc";CollectionsOrderBy["FollowersLowToHigh"]="statistics.other.followCount asc"})(CollectionsOrderBy||(CollectionsOrderBy={}));var GlobalOfferOrderBy;(function(GlobalOfferOrderBy){GlobalOfferOrderBy["PriceHighToLow"]="priceShort desc";GlobalOfferOrderBy["PriceLowToHigh"]="priceShort asc";GlobalOfferOrderBy["OfferIdHighToLow"]="offerIddesc";GlobalOfferOrderBy["OfferIdLowToHigh"]="offerId asc";GlobalOfferOrderBy["RecentListed"]="timestamp desc";GlobalOfferOrderBy["OldestListed"]="timestamp asc"})(GlobalOfferOrderBy||(GlobalOfferOrderBy={}));var CollectionsFieldsToSelect;(function(CollectionsFieldsToSelect){CollectionsFieldsToSelect["Profile"]="profile";CollectionsFieldsToSelect["Description"]="description";CollectionsFieldsToSelect["Creator"]="creator";CollectionsFieldsToSelect["Owner"]="owner";CollectionsFieldsToSelect["Socials"]="socials";CollectionsFieldsToSelect["Type"]="type";CollectionsFieldsToSelect["HasStaking"]="hasStaking";CollectionsFieldsToSelect["Name"]="name";CollectionsFieldsToSelect["Banner"]="banner";CollectionsFieldsToSelect["IsVerified"]="isVerified";CollectionsFieldsToSelect["IsMintable"]="isMintable";CollectionsFieldsToSelect["Statistics"]="statistics";CollectionsFieldsToSelect["Collection"]="collection"})(CollectionsFieldsToSelect||(CollectionsFieldsToSelect={}));var GlobalOfferFieldsToSelect;(function(GlobalOfferFieldsToSelect){GlobalOfferFieldsToSelect["Attributes"]="attributes";GlobalOfferFieldsToSelect["Collection"]="collection";GlobalOfferFieldsToSelect["Marketplace"]="marketplace";GlobalOfferFieldsToSelect["PaymentToken"]="paymentToken";GlobalOfferFieldsToSelect["LongPrice"]="price";GlobalOfferFieldsToSelect["ShortPrice"]="priceShort"})(GlobalOfferFieldsToSelect||(GlobalOfferFieldsToSelect={}));var AuctionTypes;(function(AuctionTypes){AuctionTypes["FixedPrice"]="FixedPrice";AuctionTypes["Auctions"]="Auctions";AuctionTypes["All"]="All";AuctionTypes["AllListed"]="AllListed"})(AuctionTypes||(AuctionTypes={}));var AssetCategory;(function(AssetCategory){AssetCategory["ALL"]="all";AssetCategory["Trade"]="trade";AssetCategory["P2P"]="p2p";AssetCategory["Staking"]="staking";AssetCategory["Minting"]="minting"})(AssetCategory||(AssetCategory={}));var CollectionsSummaryFilter;(function(CollectionsSummaryFilter){CollectionsSummaryFilter["TotalVolume"]="TotalVolume";CollectionsSummaryFilter["TotalTrades"]="TotalTrades";CollectionsSummaryFilter["DailyVolume"]="DailyVolume";CollectionsSummaryFilter["Last2DaysVolume"]="Last2DaysVolume";CollectionsSummaryFilter["DailyTrades"]="DailyTrades";CollectionsSummaryFilter["Last2DaysTrades"]="Last2DaysTrades";CollectionsSummaryFilter["WeekTrades"]="WeekTrades";CollectionsSummaryFilter["LastWeekTrades"]="LastWeekTrades";CollectionsSummaryFilter["WeekVolume"]="WeekVolume";CollectionsSummaryFilter["LastWeekVolume"]="LastWeekVolume";CollectionsSummaryFilter["WeeklyTradesMargin"]="WeeklyTradesMargin";CollectionsSummaryFilter["DailyTradesMargin"]="DailyTradesMargin";CollectionsSummaryFilter["WeeklyVolumeMargin"]="WeeklyVolumeMargin";CollectionsSummaryFilter["DailyVolumeEgldMargin"]="DailyVolumeEgldMargin";CollectionsSummaryFilter["CollectionAthTrade"]="CollectionAthTrade"})(CollectionsSummaryFilter||(CollectionsSummaryFilter={}));var CollectionStatsSelectFields;(function(CollectionStatsSelectFields){CollectionStatsSelectFields["TradingStats"]="tradingStats"})(CollectionStatsSelectFields||(CollectionStatsSelectFields={}));var CollectionStatsOrderBy;(function(CollectionStatsOrderBy){CollectionStatsOrderBy["ListedCountDesc"]="tradingStats.listedCount DESC";CollectionStatsOrderBy["ListedCountAsc"]="tradingStats.listedCount ASC";CollectionStatsOrderBy["FloorPriceDesc"]="tradingStats.floorPrice DESC";CollectionStatsOrderBy["FloorPriceAsc"]="tradingStats.floorPrice ASC";CollectionStatsOrderBy["TotalVolumeDesc"]="tradingStats.totalVolume DESC";CollectionStatsOrderBy["TotalVolumeAsc"]="tradingStats.totalVolume ASC";CollectionStatsOrderBy["TotalTradesDesc"]="tradingStats.totalTrades DESC";CollectionStatsOrderBy["TotalTradesAsc"]="tradingStats.totalTrades ASC";CollectionStatsOrderBy["AllTimeHighDesc"]="tradingStats.allTimeHigh.price DESC";CollectionStatsOrderBy["AllTimeHighAsc"]="tradingStats.allTimeHigh.price ASC";CollectionStatsOrderBy["DayVolumeDesc"]="tradingStats.day.volume DESC";CollectionStatsOrderBy["DayVolumeAsc"]="tradingStats.day.volume ASC";CollectionStatsOrderBy["DayVolumeMarginDesc"]="tradingStats.day.volumeMargin DESC";CollectionStatsOrderBy["DayVolumeMarginAsc"]="tradingStats.day.volumeMargin ASC";CollectionStatsOrderBy["DayTradesDesc"]="tradingStats.day.trades DESC";CollectionStatsOrderBy["DayTradesAsc"]="tradingStats.day.trades ASC";CollectionStatsOrderBy["DayTradesMarginDesc"]="tradingStats.day.tradesMargin DESC";CollectionStatsOrderBy["DayTradesMarginAsc"]="tradingStats.day.tradesMargin ASC";CollectionStatsOrderBy["WeekVolumeDesc"]="tradingStats.week.volume DESC";CollectionStatsOrderBy["WeekVolumeAsc"]="tradingStats.week.volume ASC";CollectionStatsOrderBy["WeekVolumeMarginDesc"]="tradingStats.week.volumeMargin DESC";CollectionStatsOrderBy["WeekVolumeMarginAsc"]="tradingStats.week.volumeMargin ASC";CollectionStatsOrderBy["WeekTradesDesc"]="tradingStats.week.trades DESC";CollectionStatsOrderBy["WeekTradesAsc"]="tradingStats.week.trades ASC";CollectionStatsOrderBy["WeekTradesMarginDesc"]="tradingStats.week.tradesMargin DESC";CollectionStatsOrderBy["WeekTradesMarginAsc"]="tradingStats.week.tradesMargin ASC";CollectionStatsOrderBy["MonthVolumeDesc"]="tradingStats.month.volume DESC";CollectionStatsOrderBy["MonthVolumeAsc"]="tradingStats.month.volume ASC";CollectionStatsOrderBy["MonthVolumeMarginDesc"]="tradingStats.month.volumeMargin DESC";CollectionStatsOrderBy["MonthVolumeMarginAsc"]="tradingStats.month.volumeMargin ASC";CollectionStatsOrderBy["MonthTradesDesc"]="tradingStats.month.trades DESC";CollectionStatsOrderBy["MonthTradesAsc"]="tradingStats.month.trades ASC";CollectionStatsOrderBy["MonthTradesMarginDesc"]="tradingStats.month.tradesMargin DESC";CollectionStatsOrderBy["MonthTradesMarginAsc"]="tradingStats.month.tradesMargin ASC";CollectionStatsOrderBy["YearVolumeDesc"]="tradingStats.year.volume DESC";CollectionStatsOrderBy["YearVolumeAsc"]="tradingStats.year.volume ASC";CollectionStatsOrderBy["YearVolumeMarginDesc"]="tradingStats.year.volumeMargin DESC";CollectionStatsOrderBy["YearVolumeMarginAsc"]="tradingStats.year.volumeMargin ASC";CollectionStatsOrderBy["YearTradesDesc"]="tradingStats.year.trades DESC";CollectionStatsOrderBy["YearTradesAsc"]="tradingStats.year.trades ASC";CollectionStatsOrderBy["YearTradesMarginDesc"]="tradingStats.year.tradesMargin DESC";CollectionStatsOrderBy["YearTradesMarginAsc"]="tradingStats.year.tradesMargin ASC"})(CollectionStatsOrderBy||(CollectionStatsOrderBy={}));
2
+ //# sourceMappingURL=collection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/types/collection.ts"],"sourcesContent":["import { CollectionInfo, NftData, Owner } from './nft';\nimport { NftActivityType } from './trading';\nimport { IUserProfileSearch } from './user';\n\nexport interface ISocials {\n twitter: string;\n instagram: string;\n website: string;\n telegram: string;\n discord: string;\n facebook: string;\n youtube: string;\n}\n\nexport interface IMintInfo {\n dataType: string;\n collection: string;\n contractAddress: string;\n collectionTag: string;\n cid: string;\n mediaType: string;\n baseNftName: string;\n hasAttributes: boolean;\n ownerTransferred: boolean;\n collectionSize: number;\n totalNftMinted: number;\n globalWalletLimit: number;\n royalties: number;\n oldVersion: boolean;\n nameShuffle: boolean;\n nftTransferLimited: boolean;\n allowsPublicBurn: boolean;\n kycRequired: boolean;\n allowsRefund: boolean;\n hasBotProtection: boolean;\n hasReveal: boolean;\n tags: string[];\n id: string;\n _ts: number;\n}\n\nexport interface IMintInfoExtended extends IMintInfo {\n collectionInfo: {\n name: string;\n isVerified: boolean;\n profile: string;\n banner: string;\n volume: number;\n };\n}\n\nexport interface CreatorInfo {\n name: string;\n contractAddress: string;\n address: string;\n profile: string;\n banner: string;\n description?: string;\n socials?: any;\n id: string;\n listing: IMintInfoExtended[];\n}\n\nexport interface CollectionStatisticsProfile {\n tradeData: TradeData;\n mintData: MintStatistics;\n other: OtherStatistics;\n}\n\nexport interface ICollectionProfile {\n dataType: 'collectionProfile';\n collection: string;\n name: string;\n description: string;\n isVisible: boolean;\n isVerified: boolean;\n profile: string;\n banner: string;\n statistics: CollectionStatisticsProfile;\n owner: string;\n creator: string;\n isMintable: boolean;\n hasStaking: boolean;\n id: string;\n socials: ISocials;\n type: string;\n lastVerifiedTimestamp: number;\n lastVerifiedBy: string;\n _ts: number;\n}\n\nexport interface AttributeData {\n attributeOccurrence: number;\n floorPrice: number;\n onSaleCount: number;\n usdValue: number;\n}\n\nexport interface MetadataAttribute {\n trait_type: string;\n value: string;\n}\n\nexport interface TraitValues {\n [traitValue: string]: AttributeData;\n}\n\nexport interface ICollectionAttributes {\n [traitType: string]: TraitValues;\n}\n\nexport enum Marketplace {\n XO = 'xoxno',\n FM = 'frameit',\n DR = 'deadrare',\n KG = 'krogan',\n}\n\nexport interface GlobalOffer {\n attributes: MetadataAttribute[];\n collection: string;\n isActive: boolean;\n marketplace: string;\n offer_id: number;\n owner: string;\n ownerProfile?: string;\n ownerUsername?: string;\n payment_nonce: number;\n payment_token: string;\n price: string;\n quantity: number;\n short_price: number;\n timestamp: number;\n}\n\nexport enum FieldsToSelect {\n Rank = 'metadata.rarity.rank',\n Attributes = 'metadata.attributes',\n Description = 'metadata.description',\n Name = 'name',\n OnSale = 'onSale',\n SaleInfo = 'saleInfo',\n Royalties = 'royalties',\n Identifier = 'identifier',\n Collection = 'collection',\n OriginalURL = 'url',\n Nonce = 'nonce',\n ContentType = 'originalMedia.contentType',\n WasProcessed = 'wasProcessed',\n AvifURL = 'avifUrl',\n WebpURL = 'webpUrl',\n Type = 'type',\n}\n\nexport enum SearchOrderBy {\n PriceHighToLow = 'saleInfo.minBidShort desc',\n PriceLowToHigh = 'saleInfo.minBidShort asc',\n MaxPriceHighToLow = 'saleInfo.maxBidShort desc',\n MaxPriceLowToHigh = 'saleInfo.maxBidShort asc',\n BidPriceHighToLow = 'saleInfo.currentBidShort desc',\n BidPriceLowToHigh = 'saleInfo.currentBidShort asc',\n RarityHighToLow = 'metadata.rarity.rank desc',\n RarityLowToHigh = 'metadata.rarity.rank asc',\n NonceHighToLow = 'nonce desc',\n NonceLowToHigh = 'nonce asc',\n RecentListed = 'saleInfo.timestamp desc',\n OldestListed = 'saleInfo.timestamp asc',\n EndingLate = 'saleInfo.deadline desc',\n EndingSoon = 'saleInfo.deadline asc',\n}\n\nexport enum DropsOderBy {\n EndingLate = 'startTime desc',\n EndingSoon = 'startTime asc',\n}\n\nexport enum SuggestOrderBy {\n TotalVolumeHighToLow = 'statistics/tradeData/totalEgldVolume desc',\n FollowersHighToLow = 'statistics/other/followCount desc',\n IsVerifiedTrueToFalse = 'isVerified desc',\n HasImageTrueToFalse = 'profile desc',\n HasBannerTrueToFalse = 'banner desc',\n}\n\nexport enum CollectionsOrderBy {\n WeekVolumeHighToLow = 'statistics.tradeData.weekEgldVolume desc',\n WeekVolumeLowToHigh = 'statistics.tradeData.weekEgldVolume asc',\n DailyVolumeHighToLow = 'statistics.tradeData.dayEgldVolume desc',\n DailyVolumeLowToHigh = 'statistics.tradeData.dayEgldVolume asc',\n TotalVolumeHighToLow = 'statistics.tradeData.totalEgldVolume desc',\n TotalVolumeLowToHigh = 'statistics.tradeData.totalEgldVolume asc',\n AvgVolumePriceHighToLow = 'statistics.tradeData.averageEgldPrice desc',\n AvgVolumePriceLowToHigh = 'statistics.tradeData.averageEgldPrice asc',\n ATHHighToLow = 'statistics.tradeData.athEgldPrice desc',\n ATHLowToHigh = 'statistics.tradeData.athEgldPrice asc',\n TotalTradesHighToLow = 'statistics.tradeData.totalTrades desc',\n TotalTradesLowToHigh = 'statistics.tradeData.totalTrades asc',\n SupplyHighToLow = 'statistics.other.nftCount desc',\n SupplyLowToHigh = 'statistics.other.nftCount asc',\n FollowersHighToLow = 'statistics.other.followCount desc',\n FollowersLowToHigh = 'statistics.other.followCount asc',\n}\n\nexport enum GlobalOfferOrderBy {\n PriceHighToLow = 'priceShort desc',\n PriceLowToHigh = 'priceShort asc',\n OfferIdHighToLow = 'offerIddesc',\n OfferIdLowToHigh = 'offerId asc',\n RecentListed = 'timestamp desc',\n OldestListed = 'timestamp asc',\n}\n\nexport enum CollectionsFieldsToSelect {\n Profile = 'profile',\n Description = 'description',\n Creator = 'creator',\n Owner = 'owner',\n Socials = 'socials',\n Type = 'type',\n HasStaking = 'hasStaking',\n Name = 'name',\n Banner = 'banner',\n IsVerified = 'isVerified',\n IsMintable = 'isMintable',\n Statistics = 'statistics',\n Collection = 'collection',\n}\nexport enum GlobalOfferFieldsToSelect {\n Attributes = 'attributes',\n Collection = 'collection',\n Marketplace = 'marketplace',\n PaymentToken = 'paymentToken',\n LongPrice = 'price',\n ShortPrice = 'priceShort',\n}\n\nexport interface Filter {\n dataType?: string[];\n identifier?: string[];\n collection?: string[];\n mintToken?: string[];\n type?: string[];\n onSale?: boolean;\n owner?: string[];\n currentOwner?: string[];\n saleInfo?: {\n seller?: string[];\n paymentToken?: string[];\n marketplace?: string[];\n auctionType?: string[];\n };\n range?: RangeFilter[];\n metadata?: {\n attributes?: NftMetadataAttributes[];\n };\n wasProcessed?: boolean;\n cp_staked?: boolean;\n activeAuction?: boolean;\n customFilter?: string;\n verifiedOnly?: boolean;\n}\n\nexport interface NftMetadataAttributes {\n trait_type: string;\n value: string;\n}\n\nexport interface SearchNFTs {\n filters: Filter;\n applyNftExtraDetails?: boolean;\n select?: string[];\n strictSelect?: boolean;\n orderBy?: string[];\n top?: number;\n skip?: number;\n includeCount?: boolean;\n}\n\nexport enum AuctionTypes {\n FixedPrice = 'FixedPrice',\n Auctions = 'Auctions',\n All = 'All',\n AllListed = 'AllListed',\n}\n\nexport interface GetNFTsArgs {\n /** Listed by different users */\n listedBy?: string[];\n /** Owned by different users */\n ownedBy?: string[];\n\n auctionType: AuctionTypes;\n /** If set, will return only NFTs from the specified collections */\n collections?: string[];\n /** If set, will return only NFTs from verified collections */\n onlyVerified?: boolean;\n /** If true, will return only NFTs that are on sale */\n onlyOnSale?: boolean;\n /** If true, will return only NFTs that are active, deadline not expired */\n activeAuctions?: boolean;\n /** If true the extra details of an NFT will be appended to each NFT, such as collection size and owners name */\n applyNftExtraDetails?: boolean;\n /** If set, will return only NFTs with a price in the specified range */\n priceRange?: {\n min: number;\n max: number;\n };\n /** If set, will return only NFTs listed in the specified tokens */\n listedInToken?: string[];\n /** If set, will return only NFTs with a rank in the specified range */\n rankRange?: {\n min: number;\n max: number;\n };\n /** If set, will return only NFTs with a cantina level in the specified range */\n cantinaLevelRange?: {\n min: number;\n max: number;\n };\n /** If set, will return the total count of the NFTs, recommended to be set true only for the first call, then false for the next pages */\n includeCount?: boolean;\n /** If set, will apply the extra manual filters on top of the main payload */\n extraSearch?: string[];\n /** If set, will return only NFTs with a name that contains the specified string */\n searchName?: string;\n /** The number of results to return */\n top?: number;\n /** The order by to use */\n skip?: number;\n /** Document type */\n dataType?: string[];\n /** If set, will return only NFTs that are staked */\n isStaked?: boolean;\n /** The order of the results based on a field */\n orderBy?: SearchOrderBy[];\n /** If set, will return only the specified fields */\n onlySelectFields?: FieldsToSelect[];\n /** If set, will return only NFTs listed in the specified marketplaces */\n listedOnlyOn?: Marketplace[];\n /** If set, will return only NFTs with the specified attributes */\n attributes?: MetadataAttribute[];\n}\nexport interface GETDropsArgs {\n /** If set, will return only NFTs from the specified collections */\n collections?: string[];\n /** If set, will return only NFTs from verified collections */\n onlyVerified?: boolean;\n /** If set, will return only NFTs listed in the specified tokens */\n listedInToken?: string[];\n /** If set, will return only NFTs with a cantina level in the specified range */\n timeRange?: {\n min: number;\n max: number;\n };\n /** If set, will return the total count of the NFTs, recommended to be set true only for the first call, then false for the next pages */\n includeCount?: boolean;\n /** The number of results to return */\n top?: number;\n /** The order by to use */\n skip?: number;\n /** The order of the results based on a field */\n orderBy?: DropsOderBy[];\n /** If set, will return only the specified fields */\n onlySelectFields?: FieldsToSelect[];\n}\nexport interface SuggestNFTsArgs {\n /** If set, will return only collections or users with a name that contains the specified string */\n name: string;\n /** The number of results to return */\n top?: number;\n /** The order by to use */\n skip?: number;\n /** The order of the results based on a field */\n orderBy?: SuggestOrderBy[];\n}\n\nexport interface SearchNFTsResponse {\n /** The total count of the results for the specific query */\n count?: number;\n /** The results for the current page */\n resources: NftData[];\n /** The payload to use to get the next page */\n getNextPagePayload: GetNFTsArgs;\n /** If there are more results to fetch */\n hasMoreResults: boolean;\n}\n\nexport interface GetDropsResponse {\n /** The total count of the results for the specific query */\n count?: number;\n /** The results for the current page */\n resources: GetCollectionMintInfo[];\n /** The payload to use to get the next page */\n getNextPagePayload: GETDropsArgs;\n /** If there are more results to fetch */\n hasMoreResults: boolean;\n}\n\nexport type ActivityData = {\n collection: string;\n identifier: string;\n price: number;\n paymentToken: string;\n scId: number;\n usdValue: number;\n egldValue: number;\n nftInfo: Pick<\n NftData,\n | 'identifier'\n | 'collection'\n | 'name'\n | 'metadata'\n | 'url'\n | 'wasProcessed'\n | 'media'\n >;\n collectionInfo: ShortCollectionInfo;\n};\n\nexport type ShortCollectionInfo = Pick<\n ICollectionProfile,\n 'name' | 'isVerified' | 'isVisible' | 'profile' | 'description'\n> & { collectionSize: number; holderCount: number; followCount: number };\n\nexport type TradingActivity = {\n txHash: string;\n eventIdentifier: string;\n timestamp: number;\n activityType: NftActivityType;\n source: string;\n from: Owner;\n to: Owner;\n activityData: ActivityData;\n};\n\nexport interface GetCollectionsArgs {\n /** The collections to fetch the profile */\n collections?: string[];\n /** If true, will return only NFTs that are mintable */\n onlyMintable?: boolean;\n /** The number of results to return */\n top?: number;\n /** The order by to use */\n skip?: number;\n /** The order of the results based on a field */\n orderBy?: CollectionsOrderBy;\n /** If set, will return only the specified fields */\n onlySelectFields?: CollectionsFieldsToSelect[];\n}\n\nexport interface GetGlobalOffersArgs {\n /** The collections to fetch the profile */\n collections?: string[];\n /** The number of results to return */\n top?: number;\n /** The order by to use */\n skip?: number;\n /** The order of the results based on a field */\n orderBy?: GlobalOfferOrderBy[];\n /** If set, will return only the offers with required attributes */\n withAttributes?: boolean;\n /** If set, will return only the specified fields */\n onlySelectFields?: GlobalOfferFieldsToSelect[];\n //** If set, will return only the offers that have deposit balance*/\n onlyActive?: boolean;\n offerIds?: number[];\n ownedBy?: string[];\n listedOnlyOn?: Marketplace[];\n priceRange?: RangeFilter;\n attributes?: MetadataAttribute[];\n}\n\nexport interface CollectionsNFTsResponse {\n /** The results count for the current page */\n resultsCount: number;\n /** The results for the current page */\n results: ICollectionProfile[];\n /** If the results are empty */\n empty: boolean;\n /** The payload to use to get the next page */\n getNextPagePayload: GetCollectionsArgs;\n /** If there are more results to fetch */\n hasMoreResults: boolean;\n}\n\nexport interface SuggestResults {\n count: number;\n hasMoreResults: boolean;\n resources: ResultsBody;\n}\n\nexport interface ListingDistribution {\n identifier: string;\n name: string;\n url: string;\n wasProcessed: boolean;\n rank: number;\n price: number;\n marketplace: string;\n}\n\nexport interface ResultsBody {\n collections: ICollectionProfile[];\n users: IUserProfileSearch[];\n nft: NftData[];\n}\n\nexport interface OtherStatistics {\n nftCount: number;\n followCount: number;\n holdersCount?: number;\n}\n\nexport interface TradeData {\n dayEgldVolume: number;\n weekEgldVolume: number;\n totalEgldVolume: number;\n averageEgldPrice: number;\n athEgldPrice: number;\n athTxHash: string;\n totalTrades: number;\n}\n\nexport interface MintStatistics {\n totalMintEgldVolume: number;\n weekMintEgldVolume: number;\n dayMintEgldVolume: number;\n}\n\nexport interface CollectionVolume {\n Day: string;\n DR_Trades: number;\n DR_Volume: number;\n DR_VolumeUSD: number;\n DR_Buyers: number;\n DR_Sellers: number;\n DR_FeesPaid: number;\n DR_FeesPaidUSD: number;\n DR_RoyaltiesPaid: number;\n DR_RoyaltiesPaidUSD: number;\n FM_Trades: number;\n FM_Volume: number;\n FM_VolumeUSD: number;\n FM_Buyers: number;\n FM_Sellers: number;\n FM_FeesPaid: number;\n FM_FeesPaidUSD: number;\n FM_RoyaltiesPaid: number;\n FM_RoyaltiesPaidUSD: number;\n KG_Trades: number;\n KG_Volume: number;\n KG_VolumeUSD: number;\n KG_Buyers: number;\n KG_Sellers: number;\n KG_FeesPaid: number;\n KG_FeesPaidUSD: number;\n KG_RoyaltiesPaid: number;\n KG_RoyaltiesPaidUSD: number;\n Total_Trades: number;\n Total_Volume: number;\n Total_VolumeUSD: number;\n Total_Buyers: number;\n Total_Sellers: number;\n Total_FeesPaid: number;\n Total_FeesPaidUSD: number;\n Total_RoyaltiesPaid: number;\n Total_RoyaltiesPaidUSD: number;\n XO_Trades: number;\n XO_Volume: number;\n XO_VolumeUSD: number;\n XO_Buyers: number;\n XO_Sellers: number;\n XO_FeesPaid: number;\n XO_FeesPaidUSD: number;\n XO_RoyaltiesPaid: number;\n XO_RoyaltiesPaidUSD: number;\n}\n\nexport interface FloorPriceHistory {\n Day: string;\n FloorPrice: number;\n AveragePrice: number;\n}\n\nexport type FungibleAssets = {\n id?: string;\n identifier: string;\n collection?: string;\n dataType?: string;\n decimals: number;\n name: string;\n type: string;\n category: string[];\n svgUrl: string;\n pngUrl: string;\n ticker: string;\n usd?: number;\n _ts?: number;\n};\n\nexport type FungibleAssetsMap = {\n [key: string]: FungibleAssets;\n};\n\nexport enum AssetCategory {\n ALL = 'all',\n Trade = 'trade',\n P2P = 'p2p',\n Staking = 'staking',\n Minting = 'minting',\n}\n\nexport type ISingleHolder = {\n address: string;\n count: number;\n weight: number;\n};\n\nexport type IOwners = {\n totalSupply: number;\n onMarket: HoldedDetails;\n staked: HoldedDetails;\n otherSCs: HoldedDetails;\n burnWallet: HoldedDetails;\n uniqueHolders: HoldedDetails;\n holded: AvgHolder;\n walletDetails: ISingleHolder[];\n};\n\nexport type HoldedDetails = {\n count: number;\n weight: number;\n};\n\nexport interface AvgHolder extends HoldedDetails {\n avgPerHodler: number;\n}\n\nexport type CollectionsSummary = {\n data: CollectionsSummaryItem[];\n count: number;\n};\n\nexport type CollectionsSummaryItem = {\n Collection: string;\n TotalVolume: number;\n TotalTrades: number;\n DailyVolume: number | null;\n Last2DaysVolume: number | null;\n DailyTrades: number | null;\n Last2DaysTrades: number | null;\n WeekTrades: number;\n LastWeekTrades: number | null;\n WeekVolume: number;\n LastWeekVolume: number | null;\n WeeklyTradesMargin: number | null;\n DailyTradesMargin: number | null;\n WeeklyVolumeMargin: number | null;\n DailyVolumeEgldMargin: number | null;\n CollectionAthTrade: number;\n CollectionAthTxHash: string;\n Name: string;\n AthHash: string;\n Profile: string;\n Banner: string;\n isVerified: boolean;\n FloorPrice: number;\n};\n\nexport enum CollectionsSummaryFilter {\n TotalVolume = 'TotalVolume',\n TotalTrades = 'TotalTrades',\n DailyVolume = 'DailyVolume',\n Last2DaysVolume = 'Last2DaysVolume',\n DailyTrades = 'DailyTrades',\n Last2DaysTrades = 'Last2DaysTrades',\n WeekTrades = 'WeekTrades',\n LastWeekTrades = 'LastWeekTrades',\n WeekVolume = 'WeekVolume',\n LastWeekVolume = 'LastWeekVolume',\n WeeklyTradesMargin = 'WeeklyTradesMargin',\n DailyTradesMargin = 'DailyTradesMargin',\n WeeklyVolumeMargin = 'WeeklyVolumeMargin',\n DailyVolumeEgldMargin = 'DailyVolumeEgldMargin',\n CollectionAthTrade = 'CollectionAthTrade',\n}\n\nexport type GlobalOffersResult = {\n resources: GlobalOffers[];\n hasMoreResults: boolean;\n lastSkip: number;\n getNextPagePayload?: GetGlobalOffersArgs;\n};\n\nexport type GlobalOffers = {\n offerId: number;\n collection: string;\n quantity: number;\n paymentToken: string;\n price: string;\n priceShort: number;\n owner: Owner;\n usdValue: string;\n marketplace: string;\n timestamp: number;\n attributes: MetadataAttribute[];\n collectionInfo?: CollectionInfo;\n isActive: boolean;\n};\n\nexport type GlobalOfferOwner = {\n address: string;\n userName: string;\n profile: string;\n};\n\nexport type CollectionRanksExport = Partial<\n Pick<NftData, 'identifier' | 'name'>\n> & {\n rank: number;\n};\n\nexport type GetCollectionMintInfo = {\n collection: string;\n contractAddress: string;\n collectionTag: string;\n startTime: number;\n prices: StagePrice[];\n nftTransferLimited: boolean;\n hasBotProtection: boolean;\n kycRequired: boolean;\n totalNftMinted: number;\n collectionSize: number;\n cid: string;\n mediaType: string;\n mintStages: MintStage[];\n collectionInfo: {\n name: string;\n isVerified: boolean;\n description?: string;\n socials?: ISocials;\n profile: string;\n banner: string;\n owner: string;\n isVisible: boolean;\n };\n creatorInfo: CreatorInfo;\n};\n\nexport type MintStage = {\n name: string;\n startTime: number;\n endTime: number;\n mintCount: number;\n mintLimit: number;\n mintEnabled: boolean;\n isWhitelist: boolean;\n walletLimit: number;\n maxBuyable?: number;\n walletLimitReached?: boolean;\n prices: StagePrice[];\n isSoldOut: boolean;\n};\n\nexport type StagePrice = {\n tokenIdentifier: string;\n tokenNonce: string;\n amount: string;\n amountShort: number;\n usdValue: number;\n decimals: number;\n};\n\nexport type CollectionStatsResults = {\n resources: CollectionStatsDoc[];\n hasMoreResults: boolean;\n getNextPagePayload?: GetCollectionStatsArgs;\n};\n\nexport type GetCollectionStatsArgs = {\n filters?: {\n collection?: string[];\n isVerified?: boolean;\n range?: RangeFilter[];\n };\n orderBy?: CollectionStatsOrderBy[];\n select?: CollectionStatsSelectFields[];\n top: number;\n skip: number;\n};\n\nexport enum CollectionStatsSelectFields {\n TradingStats = 'tradingStats',\n}\n\nexport interface RangeFilter {\n min?: number;\n max?: number;\n field?: string;\n}\n\nexport enum CollectionStatsOrderBy {\n ListedCountDesc = 'tradingStats.listedCount DESC',\n ListedCountAsc = 'tradingStats.listedCount ASC',\n FloorPriceDesc = 'tradingStats.floorPrice DESC',\n FloorPriceAsc = 'tradingStats.floorPrice ASC',\n\n TotalVolumeDesc = 'tradingStats.totalVolume DESC',\n TotalVolumeAsc = 'tradingStats.totalVolume ASC',\n\n TotalTradesDesc = 'tradingStats.totalTrades DESC',\n TotalTradesAsc = 'tradingStats.totalTrades ASC',\n\n AllTimeHighDesc = 'tradingStats.allTimeHigh.price DESC',\n AllTimeHighAsc = 'tradingStats.allTimeHigh.price ASC',\n\n DayVolumeDesc = 'tradingStats.day.volume DESC',\n DayVolumeAsc = 'tradingStats.day.volume ASC',\n DayVolumeMarginDesc = 'tradingStats.day.volumeMargin DESC',\n DayVolumeMarginAsc = 'tradingStats.day.volumeMargin ASC',\n DayTradesDesc = 'tradingStats.day.trades DESC',\n DayTradesAsc = 'tradingStats.day.trades ASC',\n DayTradesMarginDesc = 'tradingStats.day.tradesMargin DESC',\n DayTradesMarginAsc = 'tradingStats.day.tradesMargin ASC',\n\n WeekVolumeDesc = 'tradingStats.week.volume DESC',\n WeekVolumeAsc = 'tradingStats.week.volume ASC',\n WeekVolumeMarginDesc = 'tradingStats.week.volumeMargin DESC',\n WeekVolumeMarginAsc = 'tradingStats.week.volumeMargin ASC',\n WeekTradesDesc = 'tradingStats.week.trades DESC',\n WeekTradesAsc = 'tradingStats.week.trades ASC',\n WeekTradesMarginDesc = 'tradingStats.week.tradesMargin DESC',\n WeekTradesMarginAsc = 'tradingStats.week.tradesMargin ASC',\n\n MonthVolumeDesc = 'tradingStats.month.volume DESC',\n MonthVolumeAsc = 'tradingStats.month.volume ASC',\n MonthVolumeMarginDesc = 'tradingStats.month.volumeMargin DESC',\n MonthVolumeMarginAsc = 'tradingStats.month.volumeMargin ASC',\n MonthTradesDesc = 'tradingStats.month.trades DESC',\n MonthTradesAsc = 'tradingStats.month.trades ASC',\n MonthTradesMarginDesc = 'tradingStats.month.tradesMargin DESC',\n MonthTradesMarginAsc = 'tradingStats.month.tradesMargin ASC',\n\n YearVolumeDesc = 'tradingStats.year.volume DESC',\n YearVolumeAsc = 'tradingStats.year.volume ASC',\n YearVolumeMarginDesc = 'tradingStats.year.volumeMargin DESC',\n YearVolumeMarginAsc = 'tradingStats.year.volumeMargin ASC',\n YearTradesDesc = 'tradingStats.year.trades DESC',\n YearTradesAsc = 'tradingStats.year.trades ASC',\n YearTradesMarginDesc = 'tradingStats.year.tradesMargin DESC',\n YearTradesMarginAsc = 'tradingStats.year.tradesMargin ASC',\n}\n\nexport type CollectionStatsDoc = {\n collection: string;\n isVerified: boolean;\n tradingStats: {\n listedCount?: number;\n floorPrice?: number;\n totalVolume: number;\n totalTrades: number;\n allTimeHigh: {\n price: number;\n timestamp: number;\n txHash: string;\n identifier: string;\n };\n day: TradingDataSummary;\n week: TradingDataSummary;\n month: TradingDataSummary;\n quarter: TradingDataSummary;\n halfYear: TradingDataSummary;\n year: TradingDataSummary;\n };\n // applied after db call\n collectionInfo?: {\n name?: string;\n description?: string;\n profile?: string;\n holdersCount?: number;\n collectionSize?: number;\n followCount?: number;\n };\n id: string;\n};\n\nexport type TradingDataSummary = {\n volume: number;\n volumeMargin: number;\n trades: number;\n tradesMargin: number;\n minPrice?: number;\n maxPrice?: number;\n averagePrice?: number;\n};\n\nexport interface CollectionListings {\n density: Density[];\n listings: Pick<\n NftData,\n | 'name'\n | 'collection'\n | 'metadata'\n | 'saleInfo'\n | 'wasProcessed'\n | 'media'\n | 'url'\n | 'identifier'\n | 'id'\n >[];\n}\n\nexport interface Density {\n key: string;\n intervalName: string;\n intervalCount: number;\n totalCount: number;\n}\n\nexport interface Listing {\n identifier: string;\n name: string;\n collection: string;\n metadata: Metadata;\n url: string;\n media: Media;\n wasProcessed: boolean;\n saleInfo: SaleInfo;\n}\n\nexport interface Media {\n avifUrl: string;\n webpUrl: string;\n}\n\nexport interface Metadata {\n rarity: Rarity;\n}\n\nexport interface Rarity {\n rank: number;\n}\n\nexport interface SaleInfo {\n minBidShort: number;\n}\n"],"names":["Marketplace","FieldsToSelect","SearchOrderBy","DropsOderBy","SuggestOrderBy","CollectionsOrderBy","GlobalOfferOrderBy","CollectionsFieldsToSelect","GlobalOfferFieldsToSelect","AuctionTypes","AssetCategory","CollectionsSummaryFilter","CollectionStatsSelectFields","CollectionStatsOrderBy"],"rangeMappings":"","mappings":"2/BA+GYA,6HAAAA,cAAAA,8CAwBAC,4pBAAAA,iBAAAA,gDAmBAC,ozBAAAA,gBAAAA,6CAiBAC,oGAAAA,cAAAA,8CAKAC,kVAAAA,iBAAAA,qDAQAC,4yCAAAA,qBAAAA,yDAmBAC,oVAAAA,qBAAAA,gEASAC,opBAAAA,4BAAAA,uEAeAC,2VAAAA,4BAAAA,0DAmDAC,4JAAAA,eAAAA,8CAsUAC,4KAAAA,gBAAAA,0DAiEAC,w6BAAAA,2BAAAA,wEA0HAC,0FAAAA,8BAAAA,sEAUAC,4rGAAAA,yBAAAA"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});
2
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/types/common.ts"],"names":[],"rangeMappings":"","mappings":""}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});_export_star(require("./collection"),exports);_export_star(require("./nft"),exports);_export_star(require("./trading"),exports);_export_star(require("./interactions"),exports);_export_star(require("./staking"),exports);_export_star(require("./user"),exports);_export_star(require("./common"),exports);function _export_star(from,to){Object.keys(from).forEach(function(k){if(k!=="default"&&!Object.prototype.hasOwnProperty.call(to,k)){Object.defineProperty(to,k,{enumerable:true,get:function(){return from[k]}})}});return from}
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/types/index.ts"],"sourcesContent":["export * from './collection';\nexport * from './nft';\nexport * from './trading';\nexport * from './interactions';\nexport * from './staking';\nexport * from './user';\nexport * from './common';\n"],"names":[],"rangeMappings":"","mappings":"2FAAc,8CACA,uCACA,2CACA,gDACA,2CACA,wCACA"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"AuctionType",{enumerable:true,get:function(){return AuctionType}});var AuctionType;(function(AuctionType){AuctionType[AuctionType["NftBid"]=0]="NftBid";AuctionType[AuctionType["Nft"]=1]="Nft";AuctionType[AuctionType["SftAll"]=2]="SftAll";AuctionType[AuctionType["SftOnePerPayment"]=3]="SftOnePerPayment"})(AuctionType||(AuctionType={}));
2
+ //# sourceMappingURL=interactions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/types/interactions.ts"],"sourcesContent":["export type Offer = {\n offer_id: number;\n collection: string;\n quantity: number;\n payment_token: string;\n payment_nonce: number;\n price: number;\n timestamp: number;\n owner: string;\n attributes: Array<{\n trait_type: string;\n value: string;\n }>;\n new_version: boolean;\n price_long: string;\n};\n\nexport enum AuctionType {\n NftBid,\n Nft,\n SftAll,\n SftOnePerPayment,\n}\nexport interface Auction {\n auctioned_token_type: string;\n auctioned_token_nonce: number;\n nr_auctioned_tokens: number;\n auction_type: AuctionType;\n payment_token_type: string;\n payment_token_nonce: number;\n min_bid: string;\n max_bid: string;\n start_time: number;\n deadline: number;\n original_owner: string;\n current_bid: string;\n current_winner: string;\n marketplace_cut_percentage: string;\n creator_royalties_percentage: string;\n}\nexport interface NFTBody {\n collection: string;\n nonce: number;\n amount?: number;\n}\n\nexport interface WithSenderAndNonce {\n address: string;\n nonce?: number;\n}\n\nexport interface Payment extends NFTBody {\n decimals?: number;\n}\n\nexport interface SendGlobalOffer {\n payment_token: string;\n payment_nonce: number;\n price: number;\n collection: string;\n attributes?: string;\n depositAmount?: number;\n}\n\nexport interface SendCustomOffer {\n payment_token: string;\n payment_nonce: number;\n price: number;\n nft: NFTBody;\n deadline: number;\n depositAmount?: number;\n}\n\nexport interface AcceptGlobalOffer {\n nft?: NFTBody; // Should be provided if the offer is for an NFT not listed on the marketplace\n offer_id: number;\n auction_id_opt?: number; // Only when the NFT you want to sell is listed, if signature is required, it will be 0 in case the NFT is not listed\n signature?: string; // Only when the offer has required attribute\n}\n\nexport interface ChangeListing {\n paymentToken: string;\n price: string;\n auctionID: number;\n deadline: number;\n}\n\nexport interface NewListingArgs {\n min_bid: string;\n max_bid?: string;\n deadline?: number;\n accepted_payment_token: string;\n accepted_payment_token_decimals?: number;\n bid: boolean;\n opt_sft_max_one_per_payment?: boolean;\n isSFTPack?: boolean;\n opt_start_time?: number;\n collection: string;\n nonce: number;\n nft_amount: number;\n}\n"],"names":["AuctionType"],"rangeMappings":"","mappings":"kMAiBYA,qNAAAA,cAAAA"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});
2
+ //# sourceMappingURL=nft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/types/nft.ts"],"names":[],"rangeMappings":"","mappings":""}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{IssuingType:function(){return IssuingType},PoolType:function(){return PoolType}});var IssuingType;(function(IssuingType){IssuingType["Dynamic"]="Dynamic";IssuingType["Fixed"]="Fixed"})(IssuingType||(IssuingType={}));var PoolType;(function(PoolType){PoolType["Duo"]="Duo";PoolType["Single"]="Single";PoolType["Perk"]="Perk"})(PoolType||(PoolType={}));
2
+ //# sourceMappingURL=staking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/types/staking.ts"],"sourcesContent":["import { RewardAvaiblePools, TickerElement } from './user';\n\nexport type StakingPool = {\n name: string;\n collections: TickerElement[];\n pool_type: PoolType;\n issuing_type: IssuingType;\n pool_id: number;\n pool_total_staked?: number;\n whitelist_pool: boolean;\n is_active: boolean;\n is_stake_enabled: boolean;\n daily_reward_in_egld?: number;\n daily_reward_in_usd?: number;\n expiration_in_days: number;\n profile: string;\n unbound_period: number;\n reward_per_epoch: Reward[];\n reward_balance: Reward[];\n start_issuing: number;\n start_issuing_timestamp: number;\n deadline_issuing: number;\n deadline_issuing_timestamp: number;\n cut_fees: number;\n max_stake_per_pool: number;\n reward_tokens: string[];\n reward_per_epoch_per_nft: Reward[];\n max_stake_per_wallet: number;\n is_verified: boolean;\n percent_filled: number | null;\n currentEpoch: number;\n owner: string;\n};\n\nexport type Reward = {\n value: number;\n ticker: string;\n};\n\nexport enum IssuingType {\n Dynamic = 'Dynamic',\n Fixed = 'Fixed',\n}\n\nexport enum PoolType {\n Duo = 'Duo',\n Single = 'Single',\n Perk = 'Perk',\n}\n\nexport type Pool = {\n pool_id: number;\n total_staked: number;\n name: string;\n collections: Collection[];\n pool_type: string;\n issuing_type: string;\n pool_total_staked: number;\n whitelist_pool: boolean;\n is_active: boolean;\n is_stake_enabled: boolean;\n expiration_in_days: number;\n profile: string;\n unbound_period: number;\n reward_per_epoch: Reward[];\n reward_balance: any[];\n start_issuing: number;\n start_issuing_timestamp: number;\n deadline_issuing: number;\n deadline_issuing_timestamp: number;\n cut_fees: number;\n max_stake_per_pool: number;\n reward_tokens: string[];\n reward_per_epoch_per_nft: Reward[];\n max_stake_per_wallet: number;\n is_premium: boolean;\n is_verified: boolean;\n percent_filled: number;\n currentEpoch: number;\n owner: string;\n unClaimedReward: UnClaimedReward[];\n dailyRewardPerNFT: Reward[];\n reward_token: string[];\n ticker: string[];\n totalStakedNfts: number;\n};\n\nexport type Collection = {\n ticker: string;\n name: string;\n};\n\nexport type UnClaimedReward = {\n reward_token: string;\n reward_token_nonce: string;\n amount: number;\n pool_id?: number;\n};\n\nexport type GetGroupedStakingPools = {\n ticker: string;\n pools: number;\n name: string;\n profile: string;\n isVerified: boolean;\n};\n\nexport interface StakingSummaryPools {\n poolId: number;\n starEpoch: number;\n endEpoch: number;\n currentEpoch: number;\n poolType: string;\n issuingType: string;\n name: string;\n profile: string;\n collection: string[];\n stakedCount: number;\n reward: RewardAvaiblePools[];\n userReward?: RewardAvaiblePools[];\n rewardDuration: number;\n isActive: boolean;\n daysLeft: number;\n maxPoolLimit: number;\n hasMaxWalletLimit: boolean;\n maxWalletLimit: number;\n percentageFilled: number;\n hasUnboundPeriod: boolean;\n unBoundPeriod: number;\n}\n"],"names":["IssuingType","PoolType"],"rangeMappings":"","mappings":"uTAuCYA,6EAAAA,cAAAA,wCAKAC,sFAAAA,WAAAA"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{NftActivityType:function(){return NftActivityType},OrderByTradingActivity:function(){return OrderByTradingActivity},SelectFieldsTradingActivity:function(){return SelectFieldsTradingActivity}});var NftActivityType;(function(NftActivityType){NftActivityType["NFT_CREATE"]="nftCreate";NftActivityType["NFT_BURN"]="nftBurn";NftActivityType["NFT_UPDATE"]="nftUpdate";NftActivityType["NFT_TRANSFER"]="nftTransfer";NftActivityType["LISTING_CREATE"]="listingCreate";NftActivityType["LISTING_WITHDRAW"]="listingWithdraw";NftActivityType["LISTING_UPDATE"]="listingUpdate";NftActivityType["AUCTION_BID"]="auctionBid";NftActivityType["AUCTION_OUT_BID"]="auctionOutBid";NftActivityType["OFFER_CREATE"]="offerCreate";NftActivityType["OFFER_WITHDRAW"]="offerWithdraw";NftActivityType["OFFER_REJECT"]="offerReject";NftActivityType["GLOBAL_OFFER_CREATE"]="globalOfferCreate";NftActivityType["GLOBAL_OFFER_WITHDRAW"]="globalOfferWithdraw";NftActivityType["TRADE"]="trade";NftActivityType["BULK_TRADE"]="bulkTrade";NftActivityType["AUCTION_TRADE"]="auctionTrade";NftActivityType["OTHER_TRADE"]="otherTrade";NftActivityType["OFFER_TRADE"]="offerTrade";NftActivityType["GLOBAL_OFFER_TRADE"]="globalOfferTrade";NftActivityType["STAKE"]="stake";NftActivityType["UN_STAKE"]="unStake"})(NftActivityType||(NftActivityType={}));var OrderByTradingActivity;(function(OrderByTradingActivity){OrderByTradingActivity["PriceHighToLow"]="activityData.egldValue desc";OrderByTradingActivity["PriceLowToHigh"]="activityData.egldValue asc";OrderByTradingActivity["RecentPlaced"]="timestamp desc";OrderByTradingActivity["OldestPlaced"]="timestamp asc"})(OrderByTradingActivity||(OrderByTradingActivity={}));var SelectFieldsTradingActivity;(function(SelectFieldsTradingActivity){SelectFieldsTradingActivity[SelectFieldsTradingActivity["attributes"]=0]="attributes";SelectFieldsTradingActivity[SelectFieldsTradingActivity["collection"]=1]="collection";SelectFieldsTradingActivity[SelectFieldsTradingActivity["offer_id"]=2]="offer_id";SelectFieldsTradingActivity[SelectFieldsTradingActivity["owner"]=3]="owner";SelectFieldsTradingActivity[SelectFieldsTradingActivity["short_price"]=4]="short_price";SelectFieldsTradingActivity[SelectFieldsTradingActivity["price"]=5]="price";SelectFieldsTradingActivity[SelectFieldsTradingActivity["id"]=6]="id";SelectFieldsTradingActivity[SelectFieldsTradingActivity["dataType"]=7]="dataType";SelectFieldsTradingActivity[SelectFieldsTradingActivity["marketplace"]=8]="marketplace";SelectFieldsTradingActivity[SelectFieldsTradingActivity["payment_token"]=9]="payment_token"})(SelectFieldsTradingActivity||(SelectFieldsTradingActivity={}));
2
+ //# sourceMappingURL=trading.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/types/trading.ts"],"sourcesContent":["import {\n Marketplace,\n MetadataAttribute,\n RangeFilter,\n TradingActivity,\n} from './collection';\n\nexport enum NftActivityType {\n // MVX Built-in\n NFT_CREATE = 'nftCreate',\n NFT_BURN = 'nftBurn',\n NFT_UPDATE = 'nftUpdate',\n NFT_TRANSFER = 'nftTransfer',\n // Marketplace\n LISTING_CREATE = 'listingCreate',\n LISTING_WITHDRAW = 'listingWithdraw',\n LISTING_UPDATE = 'listingUpdate',\n AUCTION_BID = 'auctionBid',\n AUCTION_OUT_BID = 'auctionOutBid',\n OFFER_CREATE = 'offerCreate',\n OFFER_WITHDRAW = 'offerWithdraw',\n OFFER_REJECT = 'offerReject',\n GLOBAL_OFFER_CREATE = 'globalOfferCreate',\n GLOBAL_OFFER_WITHDRAW = 'globalOfferWithdraw',\n TRADE = 'trade',\n BULK_TRADE = 'bulkTrade',\n AUCTION_TRADE = 'auctionTrade',\n OTHER_TRADE = 'otherTrade', // fiat or binance buy\n OFFER_TRADE = 'offerTrade',\n GLOBAL_OFFER_TRADE = 'globalOfferTrade',\n // Staking\n STAKE = 'stake',\n UN_STAKE = 'unStake',\n}\n\nexport interface TradingActivityQueryFilter {\n filters: {\n txHash?: string[];\n activityAddress?: string[];\n source?: Marketplace[];\n activityType?: NftActivityType[];\n from?: string[];\n to?: string[];\n activityData?: {\n collection?: string[];\n identifier?: string[];\n };\n range?: RangeFilter[];\n };\n strictSelect?: boolean;\n top: number;\n skip: number;\n select?: SelectFieldsTradingActivity[];\n orderBy?: OrderByTradingActivity[];\n}\nexport interface TradincActivityArgs {\n /** The collections to fetch the trading activity from */\n collections?: string[];\n /** The identifier of the NFTs to fetch the trading activity from */\n identifiers?: string[];\n /** The wallets for which to fetch the trading activity */\n wallets?: string[];\n from?: string[];\n to?: string[];\n /** The marketplaces to fetch the trading activity from */\n source?: Marketplace[];\n activityType?: NftActivityType[];\n /** The tokens to fetch the trading activity from */\n placedInToken?: string[];\n /** The price range to fetch the trading activity from */\n priceRange?: {\n min: number;\n max: number;\n };\n /** The rank range to fetch the trading activity from */\n rankRange?: {\n min: number;\n max: number;\n };\n /** The timestamp range to fetch the trading activity from */\n timestampRange?: {\n min: number;\n max: number;\n };\n /** The number of results to return */\n top?: number;\n /** The number of results to skip */\n skip?: number;\n /** The fields to select from the trading activity */\n select?: SelectFieldsTradingActivity[];\n strictSelect?: boolean;\n /** The fields to order the trading activity by */\n orderBy?: OrderByTradingActivity[];\n /** The attributes to fetch the trading activity from */\n attributes?: MetadataAttribute[];\n}\n\nexport enum OrderByTradingActivity {\n PriceHighToLow = 'activityData.egldValue desc',\n PriceLowToHigh = 'activityData.egldValue asc',\n RecentPlaced = 'timestamp desc',\n OldestPlaced = 'timestamp asc',\n}\n\nexport enum SelectFieldsTradingActivity {\n 'attributes',\n 'collection',\n 'offer_id',\n 'owner',\n 'short_price',\n 'price',\n 'id',\n 'dataType',\n 'marketplace',\n 'payment_token',\n}\n\nexport interface TradingActivityResponse {\n hasMoreResults: boolean;\n resources: TradingActivity[];\n getNextPagePayload: TradincActivityArgs;\n empty: boolean;\n}\n"],"names":["NftActivityType","OrderByTradingActivity","SelectFieldsTradingActivity"],"rangeMappings":"","mappings":"0aAOYA,+gCAAAA,kBAAAA,0DA0FAC,sRAAAA,yBAAAA,sEAOAC,y1BAAAA,8BAAAA"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{OfferType:function(){return OfferType},Type:function(){return Type}});var OfferType;(function(OfferType){OfferType["Received"]="received";OfferType["Placed"]="placed"})(OfferType||(OfferType={}));var Type;(function(Type){Type["NonFungibleESDT"]="NonFungibleESDT"})(Type||(Type={}));
2
+ //# sourceMappingURL=user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/types/user.ts"],"sourcesContent":["import { ISocials } from './collection';\nimport { NftData, Owner } from './nft';\nimport { UnClaimedReward } from './staking';\n\nexport interface BulkAccount {\n address: string;\n nonce: number;\n username?: string;\n balance: string;\n balanceShort: number;\n}\n\nexport interface IUserProfileSearch {\n address: string;\n isVerified: boolean;\n profile: string;\n herotag: string;\n addressTrimmed: string;\n}\n\nexport interface IUserProfile {\n dataType: 'userProfile';\n hasKYC?: boolean;\n address: string;\n isBanned: boolean;\n isVerified: boolean;\n socials: ISocials;\n favorites: string[]; // Favorited NFTs\n joinedDate: number;\n id: string;\n profile: string;\n banner: string;\n description: string;\n herotag: string;\n isCreator: boolean;\n creatorInfo: {\n contractAddress?: string;\n name?: string;\n };\n isPoolOwner: boolean;\n followedCollections: string[]; // Followed collections\n userDeposit: UserDeposit[];\n _ts: number;\n shard: number;\n}\n\nexport interface UserDeposit {\n balanceShort: number;\n balance: string;\n paymentToken: string;\n paymentTokenNonce: number;\n}\n\nexport interface UserInventory {\n collection: string;\n inventoryCount: number;\n listedCount: number;\n stakedCount: number;\n floorPrice: number;\n name: string;\n isVerified: boolean;\n profile: string;\n banner: string;\n value: number;\n}\n\nexport interface UserOffers {\n hasMoreResults: boolean;\n count: number;\n resources: OfferBody[];\n}\n\nexport interface ArgsUserOffers {\n address: string;\n type: OfferType;\n skip: number;\n top: number;\n}\n\nexport enum OfferType {\n Received = 'received',\n Placed = 'placed',\n}\n\nexport interface OfferBody {\n dataType: string;\n identifier: string;\n collection: string;\n offerId: number;\n paymentToken: string;\n paymentTokenNonce: number;\n price: string;\n priceShort: number;\n deadline: number;\n timestamp: number;\n owner: Owner;\n quantity: number;\n marketplace: string;\n id: string;\n _ts: number;\n nftInfo: NftData;\n isActive: boolean;\n usdValue: number;\n floorPriceMargin: number;\n floorPrice: number;\n}\n\nexport type UserStakingInfo = {\n pool_id: number;\n pool_type: string;\n unClaimedReward: UnClaimedReward[];\n reward_token: string[];\n name: string;\n profile: string;\n ticker: TickerElement[];\n nfts: Nfts;\n};\n\nexport type Nfts = {\n count: number;\n resultsCount: number;\n results: NftData[];\n empty: boolean;\n};\n\nexport enum Type {\n NonFungibleESDT = 'NonFungibleESDT',\n}\nexport type TickerElement = {\n ticker: string;\n name: string;\n};\n\nexport type UserTokenInventory = {\n tokens: EsdtToken[];\n esdts: TokenWorth;\n stables: TokenWorth;\n wallet: TokenWorth;\n};\n\nexport type TokenWorth = {\n usdValue: number;\n egldValue: number;\n weight: number;\n};\n\nexport type UserNetworkAccount = {\n address: string;\n nonce: number;\n balance: string;\n balanceShort: number;\n usdValue: number;\n username?: string;\n shard: number;\n guarded: boolean;\n activeGuardian: ActiveGuardian;\n};\n\nexport type ActiveGuardian = {\n activationEpoch: number;\n address: string;\n serviceUID: string;\n};\n\nexport type EsdtToken = {\n nonce: number;\n identifier: string;\n decimals: number;\n balance: string;\n ticker: string;\n name: string;\n shortBalance: number;\n usdPrice: number;\n usdValue: number;\n egldValue: number;\n assets: Assets;\n isAshSupported?: boolean;\n weight: number;\n};\n\nexport type Assets = {\n pngUrl: string;\n svgUrl: string;\n};\n\nexport type CreatorProfile = {\n name: string;\n contractAddress: string;\n address: string;\n _ts: number;\n};\n\nexport interface UserStakingSummary {\n collection: string;\n stakedCount: number;\n name: string;\n isVerified: boolean;\n profile: string;\n banner: string;\n reward: RewardStakinSummary[];\n}\n\nexport interface UserCollectionStaking {\n poolId: number;\n name: string;\n profile: string;\n stakedCount: number;\n reward: RewardStakinSummary[];\n isActive: boolean;\n daysLeft: number;\n}\n\nexport interface RewardStakinSummary {\n tokenIdentifier: string;\n tokenNonce: number;\n amount: string;\n amountShort: number;\n usdValue: number;\n}\n\nexport interface PoolDetails {\n poolId: number;\n name: string;\n profile: string;\n collection: string[];\n poolStakedCount: number;\n delegatorCount: number;\n rewardDuration: number;\n reward: RewardAvaiblePools[];\n poolType: string;\n issuingType: string;\n isActive: boolean;\n currentEpoch: number;\n unBoundPeriod: boolean;\n hasUnboundPeriod: boolean;\n maxPoolLimit: number;\n maxWalletLimit: number;\n hasMaxWalletLimit: boolean;\n endDate: number;\n startDate: number;\n owner: string;\n daysLeft: number;\n percentFilled: number;\n}\n\nexport interface RewardAvaiblePools {\n tokenIdentifier: string;\n tokenNonce: number;\n rewardPerEpochShort: number;\n rewardBalanceShort: number;\n rewardBalance: string;\n rewardPerDayPerNft: number;\n usdValue: number;\n}\n\nexport interface UserPoolStakingInfo {\n nftDocs: NftData[];\n poolDoc: PoolDetails;\n}\n\nexport interface UserAnalyticSummary {\n Purchase: Purchase;\n Sale: Purchase;\n}\n\nexport interface Purchase {\n count: number;\n volume: number;\n min: Max;\n max: Max;\n avg: Avg;\n}\n\nexport interface Avg {\n price: number;\n}\n\nexport interface Max {\n price: number;\n txHash: string;\n timestamp: number;\n identifier: string;\n}\n\nexport interface UserStats {\n wallet: Wallet;\n totalVolume: number;\n totalTrades: number;\n totalCollections: number;\n totalNfts: number;\n totalPartners: number;\n buyerVolume: number;\n buyerTrades: number;\n buyerNfts: number;\n buyerCollections: number;\n buyerPartners: number;\n buyerMaxPriceData: PriceData | null;\n buyerMinPriceData: PriceData | null;\n sellerVolume: number;\n sellerTrades: number;\n sellerNfts: number;\n sellerCollections: number;\n sellerPartners: number;\n sellerMaxPriceData: PriceData;\n sellerMinPriceData: PriceData;\n}\n\nexport interface PriceData {\n price: number;\n timestamp: number;\n identifier: string;\n txHash: string;\n usdValue: number;\n nftInfo: Pick<\n NftData,\n | 'identifier'\n | 'collection'\n | 'name'\n | 'metadata'\n | 'url'\n | 'wasProcessed'\n | 'media'\n >;\n}\n\nexport interface Wallet {\n address: string;\n profile: string;\n username: string;\n isVerified: boolean;\n isCreator: boolean;\n owned: number;\n listed: number;\n}\n\nexport interface StakingCreatorInfo {\n address: string;\n ownedPools: number[];\n ownedCollections: string[];\n cutFee: number;\n _ts: number;\n}\n\nexport interface UserXOXNODrop {\n wallet: Wallet;\n rank: number;\n tokenAllocation: number;\n totalScore: number;\n}\n\nexport interface Wallet {\n address: string;\n addressTrimmed: string;\n profile: string;\n username: string;\n isVerified: boolean;\n}\n"],"names":["OfferType","Type"],"rangeMappings":"","mappings":"ySA+EYA,2EAAAA,YAAAA,kCA8CAC,kDAAAA,OAAAA"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});const _=require("..");const _1=require("../..");const _user=require("../../types/user");describe("UserModule",()=>{let userModule;const inputAddress="erd1fmd662htrgt07xxd8me09newa9s0euzvpz3wp0c4pz78f83grt9qm6pn57";beforeAll(()=>{_1.XOXNOClient.init();userModule=new _.UserModule});it("should return the User Profile of the required wallet",async()=>{const user=await userModule.getUserProfile(inputAddress);expect(user).toBeDefined();expect(user.address).toEqual(inputAddress)});it("should return the wallet NFTs not listed",async()=>{const inventory=await userModule.getUserNFTs({ownedBy:[inputAddress],auctionType:_1.AuctionTypes.FixedPrice,onlyOnSale:false,top:25});expect(inventory).toBeDefined()});it("should return the wallet NFTs listed",async()=>{const inventory=await userModule.getUserNFTs({auctionType:_1.AuctionTypes.FixedPrice,listedBy:[inputAddress],onlyOnSale:true,top:25});expect(inventory).toBeDefined();expect(inventory.resources.length).toBeGreaterThanOrEqual(1)});it("should return the wallet NFTs trading activity",async()=>{const inventory=await userModule.getTradingActivity({wallets:[inputAddress]});expect(inventory).toBeDefined();expect(inventory.resources.length).toBeGreaterThanOrEqual(1)});it("should return the wallet NFTs listed or unlisted from the specific collection",async()=>{const inventory=await userModule.getUserNFTs({auctionType:_1.AuctionTypes.FixedPrice,ownedBy:[inputAddress],collections:["BANANA-e955fd"],top:1});expect(inventory).toBeDefined();expect(inventory.resources.length).toBeGreaterThanOrEqual(1)});it("should return all the Staking Pools where the wallet is a delegator",async()=>{const stakingInfo=await userModule.getUserStakingSummary("erd16ldp9t8g9xaeteyupgqmuwqus00rkdzkf7sn0td25krk3j4luq2s5mn6cd");expect(stakingInfo).toBeDefined();expect(stakingInfo.length).toBeGreaterThanOrEqual(1)});it("should return all the offers of a user Global or Custom / send or received",async()=>{const offers=await userModule.getUserOffers({address:inputAddress,type:_user.OfferType.Placed,skip:0,top:10});expect(offers).toBeDefined()})});
2
+ //# sourceMappingURL=user.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/users/__tests__/user.test.ts"],"sourcesContent":["import { UserModule } from '..';\nimport { AuctionTypes, XOXNOClient } from '../..';\nimport { OfferType } from '../../types/user';\n\ndescribe('UserModule', () => {\n let userModule: UserModule;\n const inputAddress =\n 'erd1fmd662htrgt07xxd8me09newa9s0euzvpz3wp0c4pz78f83grt9qm6pn57';\n\n beforeAll(() => {\n XOXNOClient.init();\n userModule = new UserModule();\n });\n\n it('should return the User Profile of the required wallet', async () => {\n const user = await userModule.getUserProfile(inputAddress);\n expect(user).toBeDefined();\n expect(user.address).toEqual(inputAddress);\n });\n\n it('should return the wallet NFTs not listed', async () => {\n const inventory = await userModule.getUserNFTs({\n ownedBy: [inputAddress],\n auctionType: AuctionTypes.FixedPrice,\n onlyOnSale: false,\n top: 25,\n });\n expect(inventory).toBeDefined();\n });\n\n it('should return the wallet NFTs listed', async () => {\n const inventory = await userModule.getUserNFTs({\n auctionType: AuctionTypes.FixedPrice,\n listedBy: [inputAddress], // or only ownedBy: [inputAddress]\n onlyOnSale: true,\n top: 25,\n });\n expect(inventory).toBeDefined();\n expect(inventory.resources.length).toBeGreaterThanOrEqual(1);\n });\n\n it('should return the wallet NFTs trading activity', async () => {\n const inventory = await userModule.getTradingActivity({\n wallets: [inputAddress],\n });\n expect(inventory).toBeDefined();\n expect(inventory.resources.length).toBeGreaterThanOrEqual(1);\n });\n\n it('should return the wallet NFTs listed or unlisted from the specific collection', async () => {\n const inventory = await userModule.getUserNFTs({\n auctionType: AuctionTypes.FixedPrice,\n ownedBy: [inputAddress],\n collections: ['BANANA-e955fd'],\n top: 1,\n });\n expect(inventory).toBeDefined();\n expect(inventory.resources.length).toBeGreaterThanOrEqual(1);\n });\n\n it('should return all the Staking Pools where the wallet is a delegator', async () => {\n const stakingInfo = await userModule.getUserStakingSummary(\n 'erd16ldp9t8g9xaeteyupgqmuwqus00rkdzkf7sn0td25krk3j4luq2s5mn6cd'\n );\n expect(stakingInfo).toBeDefined();\n expect(stakingInfo.length).toBeGreaterThanOrEqual(1);\n });\n\n it('should return all the offers of a user Global or Custom / send or received', async () => {\n const offers = await userModule.getUserOffers({\n address: inputAddress,\n type: OfferType.Placed,\n skip: 0,\n top: 10,\n });\n expect(offers).toBeDefined();\n });\n});\n"],"names":["describe","userModule","inputAddress","beforeAll","XOXNOClient","init","UserModule","it","user","getUserProfile","expect","toBeDefined","address","toEqual","inventory","getUserNFTs","ownedBy","auctionType","AuctionTypes","FixedPrice","onlyOnSale","top","listedBy","resources","length","toBeGreaterThanOrEqual","getTradingActivity","wallets","collections","stakingInfo","getUserStakingSummary","offers","getUserOffers","type","OfferType","Placed","skip"],"rangeMappings":"","mappings":"sFAA2B,uBACe,6BAChB,oBAE1BA,SAAS,aAAc,KACrB,IAAIC,WACJ,MAAMC,aACJ,iEAEFC,UAAU,KACRC,cAAW,CAACC,IAAI,GAChBJ,WAAa,IAAIK,YAAU,AAC7B,GAEAC,GAAG,wDAAyD,UAC1D,MAAMC,KAAO,MAAMP,WAAWQ,cAAc,CAACP,cAC7CQ,OAAOF,MAAMG,WAAW,GACxBD,OAAOF,KAAKI,OAAO,EAAEC,OAAO,CAACX,aAC/B,GAEAK,GAAG,2CAA4C,UAC7C,MAAMO,UAAY,MAAMb,WAAWc,WAAW,CAAC,CAC7CC,QAAS,CAACd,aAAa,CACvBe,YAAaC,eAAY,CAACC,UAAU,CACpCC,WAAY,MACZC,IAAK,EACP,GACAX,OAAOI,WAAWH,WAAW,EAC/B,GAEAJ,GAAG,uCAAwC,UACzC,MAAMO,UAAY,MAAMb,WAAWc,WAAW,CAAC,CAC7CE,YAAaC,eAAY,CAACC,UAAU,CACpCG,SAAU,CAACpB,aAAa,CACxBkB,WAAY,KACZC,IAAK,EACP,GACAX,OAAOI,WAAWH,WAAW,GAC7BD,OAAOI,UAAUS,SAAS,CAACC,MAAM,EAAEC,sBAAsB,CAAC,EAC5D,GAEAlB,GAAG,iDAAkD,UACnD,MAAMO,UAAY,MAAMb,WAAWyB,kBAAkB,CAAC,CACpDC,QAAS,CAACzB,aAAa,AACzB,GACAQ,OAAOI,WAAWH,WAAW,GAC7BD,OAAOI,UAAUS,SAAS,CAACC,MAAM,EAAEC,sBAAsB,CAAC,EAC5D,GAEAlB,GAAG,gFAAiF,UAClF,MAAMO,UAAY,MAAMb,WAAWc,WAAW,CAAC,CAC7CE,YAAaC,eAAY,CAACC,UAAU,CACpCH,QAAS,CAACd,aAAa,CACvB0B,YAAa,CAAC,gBAAgB,CAC9BP,IAAK,CACP,GACAX,OAAOI,WAAWH,WAAW,GAC7BD,OAAOI,UAAUS,SAAS,CAACC,MAAM,EAAEC,sBAAsB,CAAC,EAC5D,GAEAlB,GAAG,sEAAuE,UACxE,MAAMsB,YAAc,MAAM5B,WAAW6B,qBAAqB,CACxD,kEAEFpB,OAAOmB,aAAalB,WAAW,GAC/BD,OAAOmB,YAAYL,MAAM,EAAEC,sBAAsB,CAAC,EACpD,GAEAlB,GAAG,6EAA8E,UAC/E,MAAMwB,OAAS,MAAM9B,WAAW+B,aAAa,CAAC,CAC5CpB,QAASV,aACT+B,KAAMC,eAAS,CAACC,MAAM,CACtBC,KAAM,EACNf,IAAK,EACP,GACAX,OAAOqB,QAAQpB,WAAW,EAC5B,EACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"UserModule",{enumerable:true,get:function(){return UserModule}});const _index=require("../index");const _getActivity=require("../utils/getActivity");const _helpers=require("../utils/helpers");const _regex=require("../utils/regex");let UserModule=class UserModule{api;collection;constructor(){this.api=_index.XOXNOClient.init();this.collection=new _index.CollectionModule}getUserProfile=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/profile`);return response};getBulkAccounts=async addresses=>{const response=await this.api.fetchWithTimeout(`/user/network-account`,{method:"POST",body:JSON.stringify(addresses)});return response};getUserAccount=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/network-account`);return response};getUserTokenInventory=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/token-inventory`);return response};getUserSummaryInventory=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/inventory-summary`);return response};getUserNFTs=async args=>{return await this.collection.getNFTs(args)};getUserOffers=async args=>{if(!(0,_helpers.isAddressValid)(args.address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${args.address}/offers`,{params:{type:args.type,skip:args.skip,top:args.top}});return response};suggestUsers=async args=>{if(args.top&&args.top>35){throw new Error("Top cannot be greater than 35")}if(!args.name){throw new Error("Name is required")}const payloadBody={name:args.name,top:args.top||35,skip:args.skip||0};return await this.api.fetchWithTimeout(`/user/search`,{params:{filter:JSON.stringify(payloadBody)},next:{tags:["/search/global"],revalidate:180}})};getTradingActivity=async args=>{return await (0,_getActivity.getActivity)(args,this.api)};getUserCreatorProfile=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/creator/profile`);return response};getCreatorListings=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/creator/listing`);return response};getUserStakingSummary=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/staking/summary`);return response};getUserStakingAailable=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/staking/available-pools`);return response};getUserCreatorInfo=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/creator/details`);return response};getUserCollectionStaking=async(address,collection)=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");if(!(0,_regex.isValidCollectionTicker)(collection)){throw new Error("Invalid collection ticker: "+collection)}const response=await this.api.fetchWithTimeout(`/user/${address}/staking/collection/${collection}`);return response};getUserPoolStaking=async(address,poolId)=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/staking/pool/${poolId}`);return response};getAvailableNFTsForStakingPool=async(address,poolId)=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/staking/pool/${poolId}/nfts`);return response};getOwnedPoolsByAddress=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/staking/owned-pools`);return response};getUserAnalyticsSummary=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/analytics/volume`);return response};getUserFavoriteNFTs=async(address,top,skip)=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/favorite/nfts`,{params:{top,skip}});return response};getUserFavoriteCollectionTickers=async address=>{if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address");const response=await this.api.fetchWithTimeout(`/user/${address}/favorite/collections`);return response};getIsCreatorRegistered=async creatorTag=>{const response=await this.api.fetchWithTimeout(`/user/${creatorTag}/creator/is-registered`);return response};getUsersStats=async({top,skip,orderBy})=>{if(top&&top>35){throw new Error("Top cannot be greater than 35")}return await this.api.fetchWithTimeout(`/user/stats`,{params:{top:top,skip:skip,orderBy:orderBy??"totalVolume"},next:{tags:["/user/stats"],revalidate:180}})};getAccountNFTsToStake=async(address,poolId)=>{return await this.api.fetchWithTimeout(`/user/${address}/staking/pool/${poolId}/available-nfts`,{next:{tags:[`/user/${address}/staking/pool/${poolId}/available-nfts`],revalidate:30}})};getStakingCreatorInfo=async address=>{return await this.api.fetchWithTimeout(`/user/${address}/staking/creator`,{next:{tags:[`/user/${address}/staking/creator`],revalidate:30}})};getUsersDrop=async({top,skip,address})=>{if(top&&top>35){throw new Error("Top cannot be greater than 35")}if(address){if(!(0,_helpers.isAddressValid)(address))throw new Error("Invalid address")}return await this.api.fetchWithTimeout(`/user/xoxno-drop`,{params:{top:top,skip:skip,address:address??undefined},next:{tags:["/user/xoxno-drop"],revalidate:30}})}};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/users/index.ts"],"sourcesContent":["import { CollectionModule, XOXNOClient } from '../index';\nimport {\n CreatorInfo,\n GetNFTsArgs,\n IMintInfo,\n NftData,\n SearchNFTsResponse,\n StatusResponse,\n SuggestNFTsArgs,\n SuggestResults,\n TradincActivityArgs,\n TradingActivityResponse,\n} from '../types';\nimport {\n ArgsUserOffers,\n BulkAccount,\n CreatorProfile,\n IUserProfile,\n PoolDetails,\n StakingCreatorInfo,\n UserAnalyticSummary,\n UserCollectionStaking,\n UserInventory,\n UserNetworkAccount,\n UserOffers,\n UserPoolStakingInfo,\n UserStakingSummary,\n UserStats,\n UserTokenInventory,\n UserXOXNODrop,\n} from '../types/user';\nimport { getActivity } from '../utils/getActivity';\nimport { isAddressValid } from '../utils/helpers';\nimport { isValidCollectionTicker } from '../utils/regex';\n\nexport class UserModule {\n private api: XOXNOClient;\n private collection: CollectionModule;\n constructor() {\n this.api = XOXNOClient.init();\n this.collection = new CollectionModule();\n }\n\n /**\n * Returns the user profile\n *\n * @param {String} address - Address of the user\n * @returns {IUserProfile}\n */\n public getUserProfile = async (address: string): Promise<IUserProfile> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n const response = await this.api.fetchWithTimeout<IUserProfile>(\n `/user/${address}/profile`\n );\n return response;\n };\n\n /**\n * Returns the wallet accounts\n *\n * @param {String[]} addresses - Addresses of the user\n * @returns {BulkAccount[]}\n */\n public getBulkAccounts = async (\n addresses: string[]\n ): Promise<BulkAccount[]> => {\n const response = await this.api.fetchWithTimeout<BulkAccount[]>(\n `/user/network-account`,\n {\n method: 'POST',\n body: JSON.stringify(addresses),\n }\n );\n return response;\n };\n\n /**\n * Returns the user account info that inclues nonce, guardian data, esdtTokens\n *\n * @param {String} address - Address of the user\n * @returns {UserAccountInfo}\n */\n public getUserAccount = async (\n address: string\n ): Promise<UserNetworkAccount> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n const response = await this.api.fetchWithTimeout<UserNetworkAccount>(\n `/user/${address}/network-account`\n );\n return response;\n };\n\n /**\n * Returns the user account info that inclues nonce, guardian data, esdtTokens\n *\n * @param {String} address - Address of the user\n * @returns {UserAccountInfo}\n */\n public getUserTokenInventory = async (\n address: string\n ): Promise<UserTokenInventory> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n const response = await this.api.fetchWithTimeout<UserTokenInventory>(\n `/user/${address}/token-inventory`\n );\n return response;\n };\n\n /**\n * Gets user's inventory\n *\n * @param {String} address - User's address\n * @returns {UserInventory} User's inventory\n */\n\n public getUserSummaryInventory = async (\n address: string\n ): Promise<UserInventory[]> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n const response = await this.api.fetchWithTimeout<UserInventory[]>(\n `/user/${address}/inventory-summary`\n );\n return response;\n };\n\n /**\n * Fetches the user's NFTs listed on the marketplaces\n * @param address - The user's address\n * @returns {UserInventory} - A list of token ids and the price\n */\n public getUserNFTs = async (\n args: GetNFTsArgs\n ): Promise<SearchNFTsResponse> => {\n return await this.collection.getNFTs(args);\n };\n\n /**\n * @name getUserOffers\n * @description Fetches all offers sent or received associated with a user address\n * @param {String} address - The user's wallet address\n * @returns {UserOffers} - The user's listings\n */\n public getUserOffers = async (args: ArgsUserOffers): Promise<UserOffers> => {\n if (!isAddressValid(args.address)) throw new Error('Invalid address');\n const response = await this.api.fetchWithTimeout<UserOffers>(\n `/user/${args.address}/offers`,\n {\n params: {\n type: args.type,\n skip: args.skip,\n top: args.top,\n },\n }\n );\n return response;\n };\n\n /**\n * @public\n * @async\n * @function suggestUsers\n * @param {SuggestNFTsArgs} args - An object containing the necessary parameters to fetch suggested users results.\n * @returns {Promise<SuggestResults>} A promise that resolves to the fetched users results.\n *\n * This function fetches suggested users results based on the provided arguments. It takes an object with the following properties:\n * - name (string): The name to search for (required).\n * - top (number, optional): The maximum number of results to return (default is 35, cannot be greater than 35).\n * - skip (number, optional): The number of results to skip (default is 0).\n *\n * Finally, it returns a promise that resolves to the fetched users results.\n */\n public suggestUsers = async (\n args: SuggestNFTsArgs\n ): Promise<SuggestResults> => {\n if (args.top && args.top > 35) {\n throw new Error('Top cannot be greater than 35');\n }\n if (!args.name) {\n throw new Error('Name is required');\n }\n\n const payloadBody: SuggestNFTsArgs = {\n name: args.name,\n top: args.top || 35,\n skip: args.skip || 0,\n };\n\n return await this.api.fetchWithTimeout<SuggestResults>(`/user/search`, {\n params: {\n filter: JSON.stringify(payloadBody),\n },\n next: {\n tags: ['/search/global'],\n revalidate: 180,\n },\n });\n };\n\n /**\n * Retrieves trading history based on the provided arguments.\n *\n * @param {TradincActivityArgs} args - The arguments for filtering the trading activity.\n * @returns {Promise<TradingActivityResponse>} A promise resolving to a TradingActivityResponse object containing the activity.\n * @throws {Error} Throws an error if the 'top' argument is greater than 35.\n */\n public getTradingActivity = async (\n args: TradincActivityArgs\n ): Promise<TradingActivityResponse> => {\n return await getActivity(args, this.api);\n };\n\n /** Gets user's creator profile\n * @param {String} address - User's address\n * @returns {CreatorProfile} User's creator profile struct\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getUserCreatorProfile = async (\n address: string\n ): Promise<CreatorProfile> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n\n const response = await this.api.fetchWithTimeout<CreatorProfile>(\n `/user/${address}/creator/profile`\n );\n return response;\n };\n\n /** Gets user's creator profile\n * @param {String} address - User's address\n * @returns {IMintInfo[]} User's creator profile struct\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getCreatorListings = async (address: string): Promise<IMintInfo[]> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n\n const response = await this.api.fetchWithTimeout<IMintInfo[]>(\n `/user/${address}/creator/listing`\n );\n return response;\n };\n\n /** Gets user's staking info\n * @param {String} address - User's address\n * @returns {UserStakingSummary[]} User's staking info\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getUserStakingSummary = async (\n address: string\n ): Promise<UserStakingSummary[]> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n\n const response = await this.api.fetchWithTimeout<UserStakingSummary[]>(\n `/user/${address}/staking/summary`\n );\n return response;\n };\n\n /** Gets user's staking info\n * @param {String} address - User's address\n * @returns {UserStakingAvaiblePools[]} User's staking info\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getUserStakingAailable = async (\n address: string\n ): Promise<PoolDetails[]> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n\n const response = await this.api.fetchWithTimeout<PoolDetails[]>(\n `/user/${address}/staking/available-pools`\n );\n return response;\n };\n\n /** Gets user's creator info\n * @param {String} address - User's address\n * @returns {CreatorInfo} User's creator info\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getUserCreatorInfo = async (address: string): Promise<CreatorInfo> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n\n const response = await this.api.fetchWithTimeout<CreatorInfo>(\n `/user/${address}/creator/details`\n );\n return response;\n };\n\n /** Gets pool details\n * @param {String} address - User's address\n * @param {String} collection - Collection ticker\n * @returns {UserCollectionStaking} User's creator info\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getUserCollectionStaking = async (\n address: string,\n collection: string\n ): Promise<UserCollectionStaking[]> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n if (!isValidCollectionTicker(collection)) {\n throw new Error('Invalid collection ticker: ' + collection);\n }\n const response = await this.api.fetchWithTimeout<UserCollectionStaking[]>(\n `/user/${address}/staking/collection/${collection}`\n );\n return response;\n };\n\n /** Gets pool details\n * @param {number} poolId - User's address\n * @returns {CreatoPoolDetailsrInfo} User's creator info\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getUserPoolStaking = async (\n address: string,\n poolId: number\n ): Promise<UserPoolStakingInfo> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n const response = await this.api.fetchWithTimeout<UserPoolStakingInfo>(\n `/user/${address}/staking/pool/${poolId}`\n );\n return response;\n };\n\n /** Gets pool details\n * @param {number} poolId - User's address\n * @returns {CreatoPoolDetailsrInfo} User's creator info\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getAvailableNFTsForStakingPool = async (\n address: string,\n poolId: number\n ): Promise<NftData[]> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n const response = await this.api.fetchWithTimeout<NftData[]>(\n `/user/${address}/staking/pool/${poolId}/nfts`\n );\n return response;\n };\n\n /** Gets owned pools by address\n * @param {string} address - User's address\n * @returns {PoolDetails[]} User pools\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getOwnedPoolsByAddress = async (\n address: string\n ): Promise<PoolDetails[]> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n const response = await this.api.fetchWithTimeout<PoolDetails[]>(\n `/user/${address}/staking/owned-pools`\n );\n return response;\n };\n\n /**\n * Gets user's analytics summary\n *\n * @param {String} address - User's address\n * @returns {UserAnalyticSummary} User's analytics summary\n */\n\n public getUserAnalyticsSummary = async (\n address: string\n ): Promise<UserAnalyticSummary> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n const response = await this.api.fetchWithTimeout<UserAnalyticSummary>(\n `/user/${address}/analytics/volume`\n );\n return response;\n };\n\n /** Gets user's favorite NFTs\n * @param {String} address - User's address\n * @param {number} top - Top\n * @param {number} skip - Skip\n * @returns {NftData[]} Array of NFTs\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getUserFavoriteNFTs = async (\n address: string,\n top: number,\n skip: number\n ): Promise<NftData[]> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n\n const response = await this.api.fetchWithTimeout<NftData[]>(\n `/user/${address}/favorite/nfts`,\n {\n params: {\n top,\n skip,\n },\n }\n );\n return response;\n };\n\n /** Gets user's favorite collection tickers\n * @param {String} address - User's address\n * @returns {String[]} Array of tickers\n * @throws {Error} Throws an error if the address is invalid\n * */\n public getUserFavoriteCollectionTickers = async (\n address: string\n ): Promise<string[]> => {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n\n const response = await this.api.fetchWithTimeout<string[]>(\n `/user/${address}/favorite/collections`\n );\n return response;\n };\n\n /** Get if the creator tag is registered already\n * @param {String} creatorTag - The creator tag that needs to be checked\n * @returns {StatusResponse} True or false\n * */\n public getIsCreatorRegistered = async (\n creatorTag: string\n ): Promise<StatusResponse> => {\n const response = await this.api.fetchWithTimeout<StatusResponse>(\n `/user/${creatorTag}/creator/is-registered`\n );\n return response;\n };\n\n /**\n * @public\n * @async\n * @function getUsersStats\n * @returns {Promise<UserStats[]>} A promise that resolves to the fetched users results.\n */\n public getUsersStats = async ({\n top,\n skip,\n orderBy,\n }: {\n top: number;\n skip: number;\n orderBy: string;\n }): Promise<UserStats[]> => {\n if (top && top > 35) {\n throw new Error('Top cannot be greater than 35');\n }\n\n return await this.api.fetchWithTimeout<UserStats[]>(`/user/stats`, {\n params: {\n top: top,\n skip: skip,\n orderBy: orderBy ?? 'totalVolume',\n },\n next: {\n tags: ['/user/stats'],\n revalidate: 180,\n },\n });\n };\n\n /**\n * @public\n * @async\n * @function getAccountNFTsToStake\n * @param {String} address - The user's address.\n * @param {number} poolId - The pool id.\n * @returns {Promise<NftData[]>} A promise that resolves to the fetched NFTs.\n */\n public getAccountNFTsToStake = async (\n address: string,\n poolId: number\n ): Promise<NftData[]> => {\n return await this.api.fetchWithTimeout<NftData[]>(\n `/user/${address}/staking/pool/${poolId}/available-nfts`,\n {\n next: {\n tags: [`/user/${address}/staking/pool/${poolId}/available-nfts`],\n revalidate: 30,\n },\n }\n );\n };\n\n /**\n * @public\n * @async\n * @function getStakingCreatorInfo\n * @param {String} address - The user's address.\n * @returns {Promise<StakingCreatorInfo>} A promise that resolves to the fetched staking creator info.\n */\n public getStakingCreatorInfo = async (\n address: string\n ): Promise<StakingCreatorInfo> => {\n return await this.api.fetchWithTimeout<StakingCreatorInfo>(\n `/user/${address}/staking/creator`,\n {\n next: {\n tags: [`/user/${address}/staking/creator`],\n revalidate: 30,\n },\n }\n );\n };\n\n /**\n * @public\n * @async\n * @function getUsersDrop\n * @returns {Promise<UserXOXNODrop[]>} A promise that resolves to the fetched users results.\n */\n public getUsersDrop = async ({\n top,\n skip,\n address,\n }: {\n top: number;\n skip: number;\n address?: string;\n }): Promise<UserXOXNODrop[]> => {\n if (top && top > 35) {\n throw new Error('Top cannot be greater than 35');\n }\n\n if (address) {\n if (!isAddressValid(address)) throw new Error('Invalid address');\n }\n\n return await this.api.fetchWithTimeout<UserXOXNODrop[]>(\n `/user/xoxno-drop`,\n {\n params: {\n top: top,\n skip: skip,\n address: address ?? undefined,\n },\n next: {\n tags: ['/user/xoxno-drop'],\n revalidate: 30,\n },\n }\n );\n };\n}\n"],"names":["UserModule","api","collection","constructor","XOXNOClient","init","CollectionModule","getUserProfile","address","isAddressValid","Error","response","fetchWithTimeout","getBulkAccounts","addresses","method","body","JSON","stringify","getUserAccount","getUserTokenInventory","getUserSummaryInventory","getUserNFTs","args","getNFTs","getUserOffers","params","type","skip","top","suggestUsers","name","payloadBody","filter","next","tags","revalidate","getTradingActivity","getActivity","getUserCreatorProfile","getCreatorListings","getUserStakingSummary","getUserStakingAailable","getUserCreatorInfo","getUserCollectionStaking","isValidCollectionTicker","getUserPoolStaking","poolId","getAvailableNFTsForStakingPool","getOwnedPoolsByAddress","getUserAnalyticsSummary","getUserFavoriteNFTs","getUserFavoriteCollectionTickers","getIsCreatorRegistered","creatorTag","getUsersStats","orderBy","getAccountNFTsToStake","getStakingCreatorInfo","getUsersDrop","undefined"],"rangeMappings":"","mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"SmartContractAbis",{enumerable:true,get:function(){return SmartContractAbis}});const _abiRegistry=require("@multiversx/sdk-core/out/smartcontracts/typesystem/abiRegistry");const _api=require("./api");let SmartContractAbis=class SmartContractAbis{static manager;static exchange;static minter;static market;static staking;static p2p;static async getMarket(){if(!SmartContractAbis.market){const data=await _api.XOXNOClient.init().fetchWithTimeout("https://media.xoxno.com/smartcontractabi/esdt-nft-marketplace.abi.json",{next:{tags:["getMarket"]}});const abiRegistry=_abiRegistry.AbiRegistry.create(data);SmartContractAbis.market=abiRegistry}return SmartContractAbis.market}static async getManager(){if(!SmartContractAbis.manager){const data=await _api.XOXNOClient.init().fetchWithTimeout("https://media.xoxno.com/smartcontractabi/manage.json",{next:{tags:["getManager"]}});const abiRegistry=_abiRegistry.AbiRegistry.create(data);SmartContractAbis.manager=abiRegistry}return SmartContractAbis.manager}static async getMinter(){if(!SmartContractAbis.minter){const data=await _api.XOXNOClient.init().fetchWithTimeout("https://media.xoxno.com/smartcontractabi/minter.json",{next:{tags:["getMinter"]}});const abiRegistry=_abiRegistry.AbiRegistry.create(data);SmartContractAbis.minter=abiRegistry}return SmartContractAbis.minter}static async getStaking(){if(!SmartContractAbis.staking){const data=await _api.XOXNOClient.init().fetchWithTimeout("https://media.xoxno.com/smartcontractabi/staking-nfts.abi.json",{next:{tags:["getStaking"]}});const abiRegistry=_abiRegistry.AbiRegistry.create(data);SmartContractAbis.staking=abiRegistry}return SmartContractAbis.staking}static async getExchange(){if(!SmartContractAbis.exchange){const data=await _api.XOXNOClient.init().fetchWithTimeout("https://media.xoxno.com/smartcontractabi/rs-exchange.abi.json",{next:{tags:["getExchange"]}});const abiRegistry=_abiRegistry.AbiRegistry.create(data);SmartContractAbis.exchange=abiRegistry}return SmartContractAbis.exchange}static async getP2P(){if(!SmartContractAbis.p2p){const data=await _api.XOXNOClient.init().fetchWithTimeout("https://media.xoxno.com/smartcontractabi/p2p.abi.json",{next:{tags:["getP2P"],revalidate:500}});const abiRegistry=_abiRegistry.AbiRegistry.create(data);SmartContractAbis.p2p=abiRegistry}return SmartContractAbis.p2p}};
2
+ //# sourceMappingURL=SmartContractAbis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/SmartContractAbis.ts"],"sourcesContent":["import { AbiRegistry } from '@multiversx/sdk-core/out/smartcontracts/typesystem/abiRegistry';\nimport { XOXNOClient } from './api';\n\nexport class SmartContractAbis {\n private static manager: AbiRegistry;\n private static exchange: AbiRegistry;\n private static minter: AbiRegistry;\n private static market: AbiRegistry;\n private static staking: AbiRegistry;\n private static p2p: AbiRegistry;\n\n public static async getMarket(): Promise<AbiRegistry> {\n if (!SmartContractAbis.market) {\n const data = await XOXNOClient.init().fetchWithTimeout<any>(\n 'https://media.xoxno.com/smartcontractabi/esdt-nft-marketplace.abi.json',\n {\n next: {\n tags: ['getMarket'],\n },\n }\n );\n const abiRegistry = AbiRegistry.create(data);\n SmartContractAbis.market = abiRegistry;\n }\n\n return SmartContractAbis.market;\n }\n\n public static async getManager(): Promise<AbiRegistry> {\n if (!SmartContractAbis.manager) {\n const data = await XOXNOClient.init().fetchWithTimeout<any>(\n 'https://media.xoxno.com/smartcontractabi/manage.json',\n {\n next: {\n tags: ['getManager'],\n },\n }\n );\n const abiRegistry = AbiRegistry.create(data);\n SmartContractAbis.manager = abiRegistry;\n }\n\n return SmartContractAbis.manager;\n }\n\n public static async getMinter(): Promise<AbiRegistry> {\n if (!SmartContractAbis.minter) {\n const data = await XOXNOClient.init().fetchWithTimeout<any>(\n 'https://media.xoxno.com/smartcontractabi/minter.json',\n {\n next: {\n tags: ['getMinter'],\n },\n }\n );\n const abiRegistry = AbiRegistry.create(data);\n SmartContractAbis.minter = abiRegistry;\n }\n\n return SmartContractAbis.minter;\n }\n\n public static async getStaking(): Promise<AbiRegistry> {\n if (!SmartContractAbis.staking) {\n const data = await XOXNOClient.init().fetchWithTimeout<any>(\n 'https://media.xoxno.com/smartcontractabi/staking-nfts.abi.json',\n {\n next: {\n tags: ['getStaking'],\n },\n }\n );\n const abiRegistry = AbiRegistry.create(data);\n SmartContractAbis.staking = abiRegistry;\n }\n\n return SmartContractAbis.staking;\n }\n\n public static async getExchange(): Promise<AbiRegistry> {\n if (!SmartContractAbis.exchange) {\n const data = await XOXNOClient.init().fetchWithTimeout<any>(\n 'https://media.xoxno.com/smartcontractabi/rs-exchange.abi.json',\n {\n next: {\n tags: ['getExchange'],\n },\n }\n );\n const abiRegistry = AbiRegistry.create(data);\n SmartContractAbis.exchange = abiRegistry;\n }\n\n return SmartContractAbis.exchange;\n }\n\n public static async getP2P(): Promise<AbiRegistry> {\n if (!SmartContractAbis.p2p) {\n const data = await XOXNOClient.init().fetchWithTimeout<any>(\n 'https://media.xoxno.com/smartcontractabi/p2p.abi.json',\n {\n next: {\n tags: ['getP2P'],\n revalidate: 500,\n },\n }\n );\n const abiRegistry = AbiRegistry.create(data);\n SmartContractAbis.p2p = abiRegistry;\n }\n\n return SmartContractAbis.p2p;\n }\n}\n"],"names":["SmartContractAbis","manager","exchange","minter","market","staking","p2p","getMarket","data","XOXNOClient","init","fetchWithTimeout","next","tags","abiRegistry","AbiRegistry","create","getManager","getMinter","getStaking","getExchange","getP2P","revalidate"],"rangeMappings":"","mappings":"oGAGaA,2DAAAA,gDAHe,qFACA,SAErB,IAAA,AAAMA,kBAAN,MAAMA,kBACX,OAAeC,OAAqB,AACpC,QAAeC,QAAsB,AACrC,QAAeC,MAAoB,AACnC,QAAeC,MAAoB,AACnC,QAAeC,OAAqB,AACpC,QAAeC,GAAiB,AAEhC,cAAoBC,WAAkC,CACpD,GAAI,CAACP,kBAAkBI,MAAM,CAAE,CAC7B,MAAMI,KAAO,MAAMC,gBAAW,CAACC,IAAI,GAAGC,gBAAgB,CACpD,yEACA,CACEC,KAAM,CACJC,KAAM,CAAC,YAAY,AACrB,CACF,GAEF,MAAMC,YAAcC,wBAAW,CAACC,MAAM,CAACR,KACvCR,CAAAA,kBAAkBI,MAAM,CAAGU,WAC7B,CAEA,OAAOd,kBAAkBI,MAAM,AACjC,CAEA,aAAoBa,YAAmC,CACrD,GAAI,CAACjB,kBAAkBC,OAAO,CAAE,CAC9B,MAAMO,KAAO,MAAMC,gBAAW,CAACC,IAAI,GAAGC,gBAAgB,CACpD,uDACA,CACEC,KAAM,CACJC,KAAM,CAAC,aAAa,AACtB,CACF,GAEF,MAAMC,YAAcC,wBAAW,CAACC,MAAM,CAACR,KACvCR,CAAAA,kBAAkBC,OAAO,CAAGa,WAC9B,CAEA,OAAOd,kBAAkBC,OAAO,AAClC,CAEA,aAAoBiB,WAAkC,CACpD,GAAI,CAAClB,kBAAkBG,MAAM,CAAE,CAC7B,MAAMK,KAAO,MAAMC,gBAAW,CAACC,IAAI,GAAGC,gBAAgB,CACpD,uDACA,CACEC,KAAM,CACJC,KAAM,CAAC,YAAY,AACrB,CACF,GAEF,MAAMC,YAAcC,wBAAW,CAACC,MAAM,CAACR,KACvCR,CAAAA,kBAAkBG,MAAM,CAAGW,WAC7B,CAEA,OAAOd,kBAAkBG,MAAM,AACjC,CAEA,aAAoBgB,YAAmC,CACrD,GAAI,CAACnB,kBAAkBK,OAAO,CAAE,CAC9B,MAAMG,KAAO,MAAMC,gBAAW,CAACC,IAAI,GAAGC,gBAAgB,CACpD,iEACA,CACEC,KAAM,CACJC,KAAM,CAAC,aAAa,AACtB,CACF,GAEF,MAAMC,YAAcC,wBAAW,CAACC,MAAM,CAACR,KACvCR,CAAAA,kBAAkBK,OAAO,CAAGS,WAC9B,CAEA,OAAOd,kBAAkBK,OAAO,AAClC,CAEA,aAAoBe,aAAoC,CACtD,GAAI,CAACpB,kBAAkBE,QAAQ,CAAE,CAC/B,MAAMM,KAAO,MAAMC,gBAAW,CAACC,IAAI,GAAGC,gBAAgB,CACpD,gEACA,CACEC,KAAM,CACJC,KAAM,CAAC,cAAc,AACvB,CACF,GAEF,MAAMC,YAAcC,wBAAW,CAACC,MAAM,CAACR,KACvCR,CAAAA,kBAAkBE,QAAQ,CAAGY,WAC/B,CAEA,OAAOd,kBAAkBE,QAAQ,AACnC,CAEA,aAAoBmB,QAA+B,CACjD,GAAI,CAACrB,kBAAkBM,GAAG,CAAE,CAC1B,MAAME,KAAO,MAAMC,gBAAW,CAACC,IAAI,GAAGC,gBAAgB,CACpD,wDACA,CACEC,KAAM,CACJC,KAAM,CAAC,SAAS,CAChBS,WAAY,GACd,CACF,GAEF,MAAMR,YAAcC,wBAAW,CAACC,MAAM,CAACR,KACvCR,CAAAA,kBAAkBM,GAAG,CAAGQ,WAC1B,CAEA,OAAOd,kBAAkBM,GAAG,AAC9B,CACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"getSmartContract",{enumerable:true,get:function(){return getSmartContract}});const _address=require("@multiversx/sdk-core/out/address");const _smartContract=require("@multiversx/sdk-core/out/smartcontracts/smartContract");const getSmartContract=(abiRegistry,address)=>{return new _smartContract.SmartContract({address:new _address.Address(address),abi:abiRegistry})};
2
+ //# sourceMappingURL=SmartContractService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/SmartContractService.ts"],"sourcesContent":["import { Address } from '@multiversx/sdk-core/out/address';\nimport { SmartContract } from '@multiversx/sdk-core/out/smartcontracts/smartContract';\nimport type { AbiRegistry } from '@multiversx/sdk-core/out/smartcontracts/typesystem/abiRegistry';\n\nexport const getSmartContract = (abiRegistry: AbiRegistry, address: string) => {\n return new SmartContract({\n address: new Address(address),\n abi: abiRegistry,\n });\n};\n"],"names":["getSmartContract","abiRegistry","address","SmartContract","Address","abi"],"rangeMappings":"","mappings":"oGAIaA,0DAAAA,2CAJW,iEACM,yDAGvB,MAAMA,iBAAmB,CAACC,YAA0BC,WACzD,OAAO,IAAIC,4BAAa,CAAC,CACvBD,QAAS,IAAIE,gBAAO,CAACF,SACrBG,IAAKJ,WACP,EACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{Chain:function(){return Chain},XOXNOClient:function(){return XOXNOClient}});const _const=require("./const");var Chain;(function(Chain){Chain["MAINNET"]="1";Chain["DEVNET"]="D"})(Chain||(Chain={}));let XOXNOClient=class XOXNOClient{static instance;apiUrl;apiKey;chain;config;constructor(apiUrl=_const.API_URL,apiKey="",chain="1"){this.apiUrl=apiUrl;this.apiKey=apiKey;this.chain=chain;this.config=chain==="1"?{XO_SC:_const.XOXNO_SC,FM_SC:_const.FM_SC,DR_SC:_const.DR_SC,KG_SC:_const.KG_SC,Staking_SC:_const.Staking_SC,Manager_SC:_const.Manager_SC,P2P_SC:_const.P2P_SC}:{XO_SC:_const.XOXNO_SC_DEV,FM_SC:_const.FM_SC,DR_SC:_const.DR_SC,KG_SC:_const.KG_SC,Staking_SC:_const.Staking_SC_DEV,Manager_SC:_const.Manager_SC_DEV,P2P_SC:_const.P2P_SC_DEV}}static init({apiUrl=_const.API_URL,apiKey="",chain="1"}={}){if(!XOXNOClient.instance){if(chain=="D"){XOXNOClient.instance=new XOXNOClient(_const.API_URL_DEV,apiKey,chain)}XOXNOClient.instance=new XOXNOClient(apiUrl,apiKey,chain)}return XOXNOClient.instance}fetchWithTimeout=async(path,options={},timeout=4e4)=>{const headers={"Accept-Encoding":"gzip,deflate,br",Referer:"https://xoxno.sdk","User-Agent":"XOXNO/1.0/SDK",...options.method==="POST"?{"Content-Type":"application/json"}:{},...options.headers??{}};const shouldInsertOrigin=typeof path==="string"&&path.startsWith("/");const url=`${shouldInsertOrigin?`${this.apiUrl}${path}`:path}${options.params?"?"+Object.keys(options.params).map(key=>{return`${key}=${encodeURIComponent(options.params[key])}`}).join("&"):""}`;const controller=new AbortController;setTimeout(()=>controller.abort(),timeout);const res=await fetch(url,{...options,...options?.next&&options.next.revalidate?{}:{cache:"no-store"},signal:controller.signal,...Object.keys(headers).length?{headers}:{},method:options.method??"GET"});if(!res.ok)throw new Error((await res.json()).message.toString());return res.json()}};
2
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/api.ts"],"sourcesContent":["import {\n API_URL,\n API_URL_DEV,\n DR_SC,\n FM_SC,\n KG_SC,\n Manager_SC,\n Manager_SC_DEV,\n P2P_SC,\n P2P_SC_DEV,\n Staking_SC,\n Staking_SC_DEV,\n XOXNO_SC,\n XOXNO_SC_DEV,\n} from './const';\nimport type { IChainID } from '@multiversx/sdk-core/out/interface';\nexport enum Chain {\n MAINNET = '1',\n DEVNET = 'D',\n}\nexport class XOXNOClient {\n private static instance: XOXNOClient;\n public apiUrl: string;\n private apiKey: string;\n public chain: IChainID;\n public config: {\n XO_SC: string;\n FM_SC: string;\n DR_SC: string;\n KG_SC: string;\n Staking_SC: string;\n Manager_SC: string;\n P2P_SC: string;\n };\n\n private constructor(\n apiUrl: string = API_URL,\n apiKey = '',\n chain: Chain = Chain.MAINNET\n ) {\n this.apiUrl = apiUrl;\n this.apiKey = apiKey;\n this.chain = chain;\n this.config =\n chain === Chain.MAINNET\n ? {\n XO_SC: XOXNO_SC,\n FM_SC: FM_SC,\n DR_SC,\n KG_SC,\n Staking_SC,\n Manager_SC,\n P2P_SC,\n }\n : {\n XO_SC: XOXNO_SC_DEV,\n FM_SC,\n DR_SC,\n KG_SC,\n Staking_SC: Staking_SC_DEV,\n Manager_SC: Manager_SC_DEV,\n P2P_SC: P2P_SC_DEV,\n };\n }\n\n public static init({\n apiUrl = API_URL,\n apiKey = '',\n chain = Chain.MAINNET,\n }: Partial<{\n apiUrl?: string;\n apiKey?: string;\n chain?: Chain;\n }> = {}): XOXNOClient {\n if (!XOXNOClient.instance) {\n if (chain == Chain.DEVNET) {\n XOXNOClient.instance = new XOXNOClient(API_URL_DEV, apiKey, chain);\n }\n XOXNOClient.instance = new XOXNOClient(apiUrl, apiKey, chain);\n }\n return XOXNOClient.instance;\n }\n\n public fetchWithTimeout = async <T>(\n path: string,\n options: Record<string, any> = {},\n timeout = 40000\n ): Promise<T> => {\n const headers = {\n 'Accept-Encoding': 'gzip,deflate,br',\n Referer: 'https://xoxno.sdk',\n 'User-Agent': 'XOXNO/1.0/SDK',\n ...(options.method === 'POST'\n ? { 'Content-Type': 'application/json' }\n : {}),\n ...((options.headers as object) ?? {}),\n };\n const shouldInsertOrigin = typeof path === 'string' && path.startsWith('/');\n const url = `${shouldInsertOrigin ? `${this.apiUrl}${path}` : path}${\n options.params\n ? '?' +\n Object.keys(options.params as any)\n .map((key) => {\n return `${key}=${encodeURIComponent(\n (options.params as any)[key]\n )}`;\n })\n .join('&')\n : ''\n }`;\n\n const controller = new AbortController();\n setTimeout(() => controller.abort(), timeout);\n const res = await fetch(url, {\n ...options,\n ...(options?.next && options.next.revalidate\n ? {}\n : { cache: 'no-store' }),\n signal: controller.signal,\n ...(Object.keys(headers).length ? { headers } : {}),\n method: (options.method as any) ?? 'GET',\n });\n if (!res.ok) throw new Error((await res.json()).message.toString());\n return res.json() as T;\n };\n}\n"],"names":["XOXNOClient","Chain","instance","apiUrl","apiKey","chain","config","API_URL","XO_SC","XOXNO_SC","FM_SC","DR_SC","KG_SC","Staking_SC","Manager_SC","P2P_SC","XOXNO_SC_DEV","Staking_SC_DEV","Manager_SC_DEV","P2P_SC_DEV","init","API_URL_DEV","fetchWithTimeout","path","options","timeout","headers","Referer","method","shouldInsertOrigin","startsWith","url","params","Object","keys","map","key","encodeURIComponent","join","controller","AbortController","setTimeout","abort","res","fetch","next","revalidate","cache","signal","length","ok","Error","json","message","toString"],"rangeMappings":"","mappings":"0OAoBaA,WAAW,mBAAXA,oCANN,+BAEKC,kDAAAA,QAAAA,WAIL,IAAA,AAAMD,YAAN,MAAMA,YACX,OAAeE,QAAsB,AACrC,CAAOC,MAAe,AACtB,CAAQC,MAAe,AACvB,CAAOC,KAAgB,AACvB,CAAOC,MAQL,AAEF,aACEH,OAAiBI,cAAO,CACxBH,OAAS,EAAE,CACXC,SAA4B,CAC5B,CACA,IAAI,CAACF,MAAM,CAAGA,MACd,CAAA,IAAI,CAACC,MAAM,CAAGA,MACd,CAAA,IAAI,CAACC,KAAK,CAAGA,KACb,CAAA,IAAI,CAACC,MAAM,CACTD,YACI,CACEG,MAAOC,eAAQ,CACfC,MAAOA,YAAK,CACZC,MAAAA,YAAK,CACLC,MAAAA,YAAK,CACLC,WAAAA,iBAAU,CACVC,WAAAA,iBAAU,CACVC,OAAAA,aAAM,AACR,EACA,CACEP,MAAOQ,mBAAY,CACnBN,MAAAA,YAAK,CACLC,MAAAA,YAAK,CACLC,MAAAA,YAAK,CACLC,WAAYI,qBAAc,CAC1BH,WAAYI,qBAAc,CAC1BH,OAAQI,iBAAU,AACpB,CACR,CAEA,OAAcC,KAAK,CACjBjB,OAASI,cAAO,CAChBH,OAAS,EAAE,CACXC,SAAqB,CAKrB,CAAG,CAAC,CAAC,CAAe,CACpB,GAAI,CAACL,YAAYE,QAAQ,CAAE,CACzB,GAAIG,WAAuB,CACzBL,YAAYE,QAAQ,CAAG,IAAIF,YAAYqB,kBAAW,CAAEjB,OAAQC,MAC9D,CACAL,YAAYE,QAAQ,CAAG,IAAIF,YAAYG,OAAQC,OAAQC,MACzD,CACA,OAAOL,YAAYE,QAAQ,AAC7B,CAEA,AAAOoB,iBAAmB,MACxBC,KACAC,QAA+B,CAAC,CAAC,CACjCC,QAAU,GAAK,IAEf,MAAMC,QAAU,CACd,kBAAmB,kBACnBC,QAAS,oBACT,aAAc,gBACd,GAAIH,QAAQI,MAAM,GAAK,OACnB,CAAE,eAAgB,kBAAmB,EACrC,CAAC,CAAC,CACN,GAAI,AAACJ,QAAQE,OAAO,EAAe,CAAC,CAAC,AACvC,EACA,MAAMG,mBAAqB,OAAON,OAAS,UAAYA,KAAKO,UAAU,CAAC,KACvE,MAAMC,IAAM,CAAC,EAAEF,mBAAqB,CAAC,EAAE,IAAI,CAAC1B,MAAM,CAAC,EAAEoB,KAAK,CAAC,CAAGA,KAAK,EACjEC,QAAQQ,MAAM,CACV,IACAC,OAAOC,IAAI,CAACV,QAAQQ,MAAM,EACvBG,GAAG,CAAC,AAACC,MACJ,MAAO,CAAC,EAAEA,IAAI,CAAC,EAAEC,mBACf,AAACb,QAAQQ,MAAM,AAAQ,CAACI,IAAI,EAC5B,CAAC,AACL,GACCE,IAAI,CAAC,KACR,GACL,CAAC,CAEF,MAAMC,WAAa,IAAIC,gBACvBC,WAAW,IAAMF,WAAWG,KAAK,GAAIjB,SACrC,MAAMkB,IAAM,MAAMC,MAAMb,IAAK,CAC3B,GAAGP,OAAO,CACV,GAAIA,SAASqB,MAAQrB,QAAQqB,IAAI,CAACC,UAAU,CACxC,CAAC,EACD,CAAEC,MAAO,UAAW,CAAC,CACzBC,OAAQT,WAAWS,MAAM,CACzB,GAAIf,OAAOC,IAAI,CAACR,SAASuB,MAAM,CAAG,CAAEvB,OAAQ,EAAI,CAAC,CAAC,CAClDE,OAAQ,AAACJ,QAAQI,MAAM,EAAY,KACrC,GACA,GAAI,CAACe,IAAIO,EAAE,CAAE,MAAM,IAAIC,MAAM,AAAC,CAAA,MAAMR,IAAIS,IAAI,EAAC,EAAGC,OAAO,CAACC,QAAQ,IAChE,OAAOX,IAAIS,IAAI,EACjB,CAAE,AACJ"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{API_URL:function(){return API_URL},API_URL_DEV:function(){return API_URL_DEV},DR_SC:function(){return DR_SC},FM_SC:function(){return FM_SC},KG_SC:function(){return KG_SC},Manager_SC:function(){return Manager_SC},Manager_SC_DEV:function(){return Manager_SC_DEV},P2P_SC:function(){return P2P_SC},P2P_SC_DEV:function(){return P2P_SC_DEV},Staking_SC:function(){return Staking_SC},Staking_SC_DEV:function(){return Staking_SC_DEV},XOXNO_SC:function(){return XOXNO_SC},XOXNO_SC_DEV:function(){return XOXNO_SC_DEV}});const API_URL="https://api.xoxno.com";const API_URL_DEV="https://api-dev.xoxno.com";const XOXNO_SC="erd1qqqqqqqqqqqqqpgq6wegs2xkypfpync8mn2sa5cmpqjlvrhwz5nqgepyg8";const FM_SC="erd1qqqqqqqqqqqqqpgq705fxpfrjne0tl3ece0rrspykq88mynn4kxs2cg43s";const DR_SC="erd1qqqqqqqqqqqqqpgqd9rvv2n378e27jcts8vfwynpx0gfl5ufz6hqhfy0u0";const KG_SC="erd1qqqqqqqqqqqqqpgq8xwzu82v8ex3h4ayl5lsvxqxnhecpwyvwe0sf2qj4e";const Staking_SC="erd1qqqqqqqqqqqqqpgqvpkd3g3uwludduv3797j54qt6c888wa59w2shntt6z";const Manager_SC="erd1qqqqqqqqqqqqqpgqg9fa0dmpn8fu3fnleeqn5zt8rl8mdqjkys5s2gtas7";const P2P_SC="erd1qqqqqqqqqqqqqpgq47y8hnct68v6asjv6gxem6h9rumn9frzah0skhxxt6";const XOXNO_SC_DEV="erd1qqqqqqqqqqqqqpgqn4fnwl43hhchz9emdy66eh5azzhl599zd8ssxjdyh3";const Staking_SC_DEV="erd1qqqqqqqqqqqqqpgqmkt2fvumf0zgum5qd0awl2l46x2pxdgmr5rswjr6r8";const Manager_SC_DEV="erd1qqqqqqqqqqqqqpgq6sysl7mga393a850xemfpawaqanf4da5d8ssp3xamn";const P2P_SC_DEV="erd1qqqqqqqqqqqqqpgqhuvnvkwwmucdzy3g7pvgvjumjfcgfwf69w2svch5c2";
2
+ //# sourceMappingURL=const.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/const.ts"],"sourcesContent":["export const API_URL = 'https://api.xoxno.com';\nexport const API_URL_DEV = 'https://api-dev.xoxno.com';\n\nexport const XOXNO_SC =\n 'erd1qqqqqqqqqqqqqpgq6wegs2xkypfpync8mn2sa5cmpqjlvrhwz5nqgepyg8';\nexport const FM_SC =\n 'erd1qqqqqqqqqqqqqpgq705fxpfrjne0tl3ece0rrspykq88mynn4kxs2cg43s';\nexport const DR_SC =\n 'erd1qqqqqqqqqqqqqpgqd9rvv2n378e27jcts8vfwynpx0gfl5ufz6hqhfy0u0';\nexport const KG_SC =\n 'erd1qqqqqqqqqqqqqpgq8xwzu82v8ex3h4ayl5lsvxqxnhecpwyvwe0sf2qj4e';\nexport const Staking_SC =\n 'erd1qqqqqqqqqqqqqpgqvpkd3g3uwludduv3797j54qt6c888wa59w2shntt6z';\nexport const Manager_SC =\n 'erd1qqqqqqqqqqqqqpgqg9fa0dmpn8fu3fnleeqn5zt8rl8mdqjkys5s2gtas7';\nexport const P2P_SC =\n 'erd1qqqqqqqqqqqqqpgq47y8hnct68v6asjv6gxem6h9rumn9frzah0skhxxt6';\n\nexport const XOXNO_SC_DEV =\n 'erd1qqqqqqqqqqqqqpgqn4fnwl43hhchz9emdy66eh5azzhl599zd8ssxjdyh3';\nexport const Staking_SC_DEV =\n 'erd1qqqqqqqqqqqqqpgqmkt2fvumf0zgum5qd0awl2l46x2pxdgmr5rswjr6r8';\nexport const Manager_SC_DEV =\n 'erd1qqqqqqqqqqqqqpgq6sysl7mga393a850xemfpawaqanf4da5d8ssp3xamn';\nexport const P2P_SC_DEV =\n 'erd1qqqqqqqqqqqqqpgqhuvnvkwwmucdzy3g7pvgvjumjfcgfwf69w2svch5c2';\n"],"names":["API_URL","API_URL_DEV","DR_SC","FM_SC","KG_SC","Manager_SC","Manager_SC_DEV","P2P_SC","P2P_SC_DEV","Staking_SC","Staking_SC_DEV","XOXNO_SC","XOXNO_SC_DEV"],"rangeMappings":"","mappings":"2MAAaA,OAAO,mBAAPA,SACAC,WAAW,mBAAXA,aAMAC,KAAK,mBAALA,OAFAC,KAAK,mBAALA,OAIAC,KAAK,mBAALA,OAIAC,UAAU,mBAAVA,YASAC,cAAc,mBAAdA,gBAPAC,MAAM,mBAANA,QASAC,UAAU,mBAAVA,YAbAC,UAAU,mBAAVA,YASAC,cAAc,mBAAdA,gBAjBAC,QAAQ,mBAARA,UAeAC,YAAY,mBAAZA,gBAlBN,MAAMZ,QAAU,wBAChB,MAAMC,YAAc,4BAEpB,MAAMU,SACX,iEACK,MAAMR,MACX,iEACK,MAAMD,MACX,iEACK,MAAME,MACX,iEACK,MAAMK,WACX,iEACK,MAAMJ,WACX,iEACK,MAAME,OACX,iEAEK,MAAMK,aACX,iEACK,MAAMF,eACX,iEACK,MAAMJ,eACX,iEACK,MAAME,WACX"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"getActivity",{enumerable:true,get:function(){return getActivity}});const getActivity=async(args,api)=>{if(args.top&&args.top>35){throw new Error("Top cannot be greater than 35")}const ranges=[];if(args.priceRange){ranges.push({...args.priceRange,field:"activityData.egldValue"})}if(args.timestampRange){ranges.push({...args.timestampRange,field:"timestamp"})}const payloadBody={filters:{activityData:args.from==null&&args.to==null?{collection:args.collections,identifier:args.identifiers||undefined}:undefined,from:args.from,to:args.to,activityAddress:args.wallets||undefined,source:args.source||undefined,activityType:args.activityType||undefined,range:ranges},strictSelect:args.strictSelect,orderBy:args.orderBy,select:args.select,top:args.top||35,skip:args.skip||0};const response=await api.fetchWithTimeout(`/activity/query`,{params:{filter:JSON.stringify(payloadBody)},next:{tags:["getActivity"],revalidate:180}});return{...response,getNextPagePayload:{...args,skip:(args.skip??0)+(args.top??35)},empty:response.resources.length===0}};
2
+ //# sourceMappingURL=getActivity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/getActivity.ts"],"sourcesContent":["import { XOXNOClient } from '..';\nimport {\n TradincActivityArgs,\n TradingActivityResponse,\n TradingActivityQueryFilter,\n} from '../types/trading';\n\n/**\n * Fetches the trading activity of the given collections\n * @param args - The trading activity arguments\n * @param api - The API client\n * @returns - The trading activity response\n * @throws - If the top is greater than 35\n */\nexport const getActivity = async (\n args: TradincActivityArgs,\n api: XOXNOClient\n): Promise<TradingActivityResponse> => {\n if (args.top && args.top > 35) {\n throw new Error('Top cannot be greater than 35');\n }\n\n const ranges = [];\n if (args.priceRange) {\n ranges.push({\n ...args.priceRange,\n field: 'activityData.egldValue',\n });\n }\n if (args.timestampRange) {\n ranges.push({\n ...args.timestampRange,\n field: 'timestamp',\n });\n }\n\n const payloadBody: TradingActivityQueryFilter = {\n filters: {\n activityData:\n args.from == null && args.to == null\n ? {\n collection: args.collections,\n identifier: args.identifiers || undefined,\n }\n : undefined,\n from: args.from,\n to: args.to,\n activityAddress: args.wallets || undefined,\n source: args.source || undefined,\n activityType: args.activityType || undefined,\n range: ranges,\n },\n strictSelect: args.strictSelect,\n orderBy: args.orderBy,\n select: args.select,\n top: args.top || 35,\n skip: args.skip || 0,\n };\n\n const response = await api.fetchWithTimeout<TradingActivityResponse>(\n `/activity/query`,\n {\n params: {\n filter: JSON.stringify(payloadBody),\n },\n next: {\n tags: ['getActivity'],\n revalidate: 180,\n },\n }\n );\n\n return {\n ...response,\n getNextPagePayload: {\n ...args,\n skip: (args.skip ?? 0) + (args.top ?? 35),\n },\n empty: response.resources.length === 0,\n };\n};\n"],"names":["getActivity","args","api","top","Error","ranges","priceRange","push","field","timestampRange","payloadBody","filters","activityData","from","to","collection","collections","identifier","identifiers","undefined","activityAddress","wallets","source","activityType","range","strictSelect","orderBy","select","skip","response","fetchWithTimeout","params","filter","JSON","stringify","next","tags","revalidate","getNextPagePayload","empty","resources","length"],"rangeMappings":"","mappings":"oGAcaA,qDAAAA,eAAN,MAAMA,YAAc,MACzBC,KACAC,OAEA,GAAID,KAAKE,GAAG,EAAIF,KAAKE,GAAG,CAAG,GAAI,CAC7B,MAAM,IAAIC,MAAM,gCAClB,CAEA,MAAMC,OAAS,EAAE,CACjB,GAAIJ,KAAKK,UAAU,CAAE,CACnBD,OAAOE,IAAI,CAAC,CACV,GAAGN,KAAKK,UAAU,CAClBE,MAAO,wBACT,EACF,CACA,GAAIP,KAAKQ,cAAc,CAAE,CACvBJ,OAAOE,IAAI,CAAC,CACV,GAAGN,KAAKQ,cAAc,CACtBD,MAAO,WACT,EACF,CAEA,MAAME,YAA0C,CAC9CC,QAAS,CACPC,aACEX,KAAKY,IAAI,EAAI,MAAQZ,KAAKa,EAAE,EAAI,KAC5B,CACEC,WAAYd,KAAKe,WAAW,CAC5BC,WAAYhB,KAAKiB,WAAW,EAAIC,SAClC,EACAA,UACNN,KAAMZ,KAAKY,IAAI,CACfC,GAAIb,KAAKa,EAAE,CACXM,gBAAiBnB,KAAKoB,OAAO,EAAIF,UACjCG,OAAQrB,KAAKqB,MAAM,EAAIH,UACvBI,aAActB,KAAKsB,YAAY,EAAIJ,UACnCK,MAAOnB,MACT,EACAoB,aAAcxB,KAAKwB,YAAY,CAC/BC,QAASzB,KAAKyB,OAAO,CACrBC,OAAQ1B,KAAK0B,MAAM,CACnBxB,IAAKF,KAAKE,GAAG,EAAI,GACjByB,KAAM3B,KAAK2B,IAAI,EAAI,CACrB,EAEA,MAAMC,SAAW,MAAM3B,IAAI4B,gBAAgB,CACzC,CAAC,eAAe,CAAC,CACjB,CACEC,OAAQ,CACNC,OAAQC,KAAKC,SAAS,CAACxB,YACzB,EACAyB,KAAM,CACJC,KAAM,CAAC,cAAc,CACrBC,WAAY,GACd,CACF,GAGF,MAAO,CACL,GAAGR,QAAQ,CACXS,mBAAoB,CAClB,GAAGrC,IAAI,CACP2B,KAAM,AAAC3B,CAAAA,KAAK2B,IAAI,EAAI,CAAA,EAAM3B,CAAAA,KAAKE,GAAG,EAAI,EAAC,CACzC,EACAoC,MAAOV,SAASW,SAAS,CAACC,MAAM,GAAK,CACvC,CACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{getIdentifierFromColAndNonce:function(){return getIdentifierFromColAndNonce},isAddressValid:function(){return isAddressValid},nonceToHex:function(){return nonceToHex}});const _address=require("@multiversx/sdk-core/out/address");const nonceToHex=nonce=>{let nonceHex=nonce.toString(16);if(nonceHex.length%2!==0){nonceHex="0"+nonceHex}return nonceHex};const getIdentifierFromColAndNonce=(collection,nonce)=>{return[collection,nonceToHex(nonce)].join("-")};const isAddressValid=address=>{try{new _address.Address(address);return true&&address.includes("erd1")}catch(error){return false}};
2
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/helpers.ts"],"sourcesContent":["import { Address } from '@multiversx/sdk-core/out/address';\n\nexport const nonceToHex = (nonce: number): string => {\n let nonceHex = nonce.toString(16);\n if (nonceHex.length % 2 !== 0) {\n nonceHex = '0' + nonceHex;\n }\n return nonceHex;\n};\n\nexport const getIdentifierFromColAndNonce = (\n collection: string,\n nonce: number\n): string => {\n return [collection, nonceToHex(nonce)].join('-');\n};\n\nexport const isAddressValid = (address: string | Buffer): boolean => {\n try {\n new Address(address);\n return true && address.includes('erd1');\n } catch (error) {\n return false;\n }\n};\n"],"names":["getIdentifierFromColAndNonce","isAddressValid","nonceToHex","nonce","nonceHex","toString","length","collection","join","address","Address","includes","error"],"rangeMappings":"","mappings":"2MAUaA,4BAA4B,mBAA5BA,8BAOAC,cAAc,mBAAdA,gBAfAC,UAAU,mBAAVA,qCAFW,oCAEjB,MAAMA,WAAa,AAACC,QACzB,IAAIC,SAAWD,MAAME,QAAQ,CAAC,IAC9B,GAAID,SAASE,MAAM,CAAG,IAAM,EAAG,CAC7BF,SAAW,IAAMA,QACnB,CACA,OAAOA,QACT,EAEO,MAAMJ,6BAA+B,CAC1CO,WACAJ,SAEA,MAAO,CAACI,WAAYL,WAAWC,OAAO,CAACK,IAAI,CAAC,IAC9C,EAEO,MAAMP,eAAiB,AAACQ,UAC7B,GAAI,CACF,IAAIC,gBAAO,CAACD,SACZ,OAAO,MAAQA,QAAQE,QAAQ,CAAC,OAClC,CAAE,MAAOC,MAAO,CACd,OAAO,KACT,CACF"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:all[name]})}_export(exports,{isValidCollectionTicker:function(){return isValidCollectionTicker},isValidNftIdentifier:function(){return isValidNftIdentifier}});const isValidCollectionTicker=ticker=>{return/^[A-Z0-9]{3,10}-[a-z0-9]{6}$/.test(ticker)};const isValidNftIdentifier=identifier=>{return/^[A-Za-z0-9]{3,10}-[A-Za-z0-9]{6}-[A-Za-z0-9]{2,5}(?:-\d+(?:-[A-Za-z0-9]+)?)?$/.test(identifier)};
2
+ //# sourceMappingURL=regex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/regex.ts"],"sourcesContent":["export const isValidCollectionTicker = (ticker: string): boolean => {\n return /^[A-Z0-9]{3,10}-[a-z0-9]{6}$/.test(ticker);\n};\n\nexport const isValidNftIdentifier = (identifier: string): boolean => {\n return /^[A-Za-z0-9]{3,10}-[A-Za-z0-9]{6}-[A-Za-z0-9]{2,5}(?:-\\d+(?:-[A-Za-z0-9]+)?)?$/.test(\n identifier\n );\n};\n"],"names":["isValidCollectionTicker","isValidNftIdentifier","ticker","test","identifier"],"rangeMappings":"","mappings":"2MAAaA,uBAAuB,mBAAvBA,yBAIAC,oBAAoB,mBAApBA,wBAJN,MAAMD,wBAA0B,AAACE,SACtC,MAAO,+BAA+BC,IAAI,CAACD,OAC7C,EAEO,MAAMD,qBAAuB,AAACG,aACnC,MAAO,iFAAiFD,IAAI,CAC1FC,WAEJ"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"ContractQueryRunner",{enumerable:true,get:function(){return ContractQueryRunner}});const _index=require("../index");const _resultsParser=require("@multiversx/sdk-core/out/smartcontracts/resultsParser");const _proxyNetworkProvider=require("@multiversx/sdk-network-providers/out/proxyNetworkProvider");let ContractQueryRunner=class ContractQueryRunner{proxy;parser=new _resultsParser.ResultsParser;constructor(){const api=_index.XOXNOClient.init().apiUrl;this.proxy=new _proxyNetworkProvider.ProxyNetworkProvider(api,{timeout:1e4})}async runQuery(contract,interaction){try{const queryResponse=await this.proxy.queryContract(interaction.buildQuery());return this.parser.parseQueryResponse(queryResponse,interaction.getEndpoint())}catch(error){console.log(`Unexpected error when running query '${interaction.buildQuery().func}' to sc '${contract.getAddress().bech32()}' `);console.error(error);throw error}}};
2
+ //# sourceMappingURL=scCalls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/scCalls.ts"],"sourcesContent":["import { INetworkProvider } from '@multiversx/sdk-network-providers/out/interface';\n\nimport { XOXNOClient } from '../index';\nimport { ResultsParser } from '@multiversx/sdk-core/out/smartcontracts/resultsParser';\nimport type { SmartContract } from '@multiversx/sdk-core/out/smartcontracts/smartContract';\nimport type { Interaction } from '@multiversx/sdk-core/out/smartcontracts/interaction';\nimport type { TypedOutcomeBundle } from '@multiversx/sdk-core/out/smartcontracts/interface';\nimport { ContractQueryResponse } from '@multiversx/sdk-network-providers/out/contractQueryResponse';\nimport { ProxyNetworkProvider } from '@multiversx/sdk-network-providers/out/proxyNetworkProvider';\n\nexport class ContractQueryRunner {\n private readonly proxy: INetworkProvider;\n private readonly parser: ResultsParser = new ResultsParser();\n\n constructor() {\n const api = XOXNOClient.init().apiUrl;\n this.proxy = new ProxyNetworkProvider(api, {\n timeout: 10000,\n });\n }\n\n async runQuery(\n contract: SmartContract,\n interaction: Interaction\n ): Promise<TypedOutcomeBundle> {\n try {\n const queryResponse: ContractQueryResponse =\n await this.proxy.queryContract(interaction.buildQuery());\n\n return this.parser.parseQueryResponse(\n queryResponse,\n interaction.getEndpoint()\n );\n } catch (error) {\n console.log(\n `Unexpected error when running query '${\n interaction.buildQuery().func\n }' to sc '${contract.getAddress().bech32()}' `\n );\n console.error(error);\n\n throw error;\n }\n }\n}\n"],"names":["ContractQueryRunner","proxy","parser","ResultsParser","constructor","api","XOXNOClient","init","apiUrl","ProxyNetworkProvider","timeout","runQuery","contract","interaction","queryResponse","queryContract","buildQuery","parseQueryResponse","getEndpoint","error","console","log","func","getAddress","bech32"],"rangeMappings":"","mappings":"oGAUaA,6DAAAA,4CARe,yCACE,6FAKO,8DAE9B,IAAA,AAAMA,oBAAN,MAAMA,oBACX,AAAiBC,KAAwB,AACzC,CAAiBC,OAAwB,IAAIC,4BAAa,AAAG,AAE7DC,cAAc,CACZ,MAAMC,IAAMC,kBAAW,CAACC,IAAI,GAAGC,MAAM,AACrC,CAAA,IAAI,CAACP,KAAK,CAAG,IAAIQ,0CAAoB,CAACJ,IAAK,CACzCK,QAAS,GACX,EACF,CAEA,MAAMC,SACJC,QAAuB,CACvBC,WAAwB,CACK,CAC7B,GAAI,CACF,MAAMC,cACJ,MAAM,IAAI,CAACb,KAAK,CAACc,aAAa,CAACF,YAAYG,UAAU,IAEvD,OAAO,IAAI,CAACd,MAAM,CAACe,kBAAkB,CACnCH,cACAD,YAAYK,WAAW,GAE3B,CAAE,MAAOC,MAAO,CACdC,QAAQC,GAAG,CACT,CAAC,qCAAqC,EACpCR,YAAYG,UAAU,GAAGM,IAAI,CAC9B,SAAS,EAAEV,SAASW,UAAU,GAAGC,MAAM,GAAG,EAAE,CAAC,EAEhDJ,QAAQD,KAAK,CAACA,MAEd,OAAMA,KACR,CACF,CACF"}