{"version":3,"sources":["../src/shims.ts","../src/libs/getIdentityBalance.ts","../src/index.ts"],"sourcesContent":["// src/shims.ts\nexport function setupBrowserShims() {\n  if (typeof window === 'undefined') return;\n\n  // 🔥 FIX #1: module is not defined\n  ;(window as any).module = { exports: {} };\n\n  // 🔥 FIX #2: crypto.randomUUID polyfill\n  if (!crypto.randomUUID) {\n    ;(crypto as any).randomUUID = () =>\n      'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\n        const r = Math.random() * 16 | 0;\n        return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);\n      });\n  }\n\n  // 🔥 FIX #3: Node.js globals for dash-platform-sdk\n  ;(window as any).Buffer = (window as any).Buffer || Uint8Array;\n  ;(window as any).process = {\n    env: {\n      NODE_ENV: 'production',\n      DEBUG: ''\n    }\n  };\n\n  // 🔥 FIX #4: Global scope\n  ;(window as any).global = window;\n\n  console.log('🛡️ Browser shims loaded');\n}\n","// src/libs/getIdentityBalance.ts\n\n/* Initialize Web API endpoint. */\nconst WEB_API_ENDPOINT = 'https://dashqt.org/v1/dapi'\n\ninterface ApiResponse {\n    balance?: string\n    error?: {\n        message: string\n        type: string\n        validationErrors?: string[]\n    }\n}\n\n/**\n * Web API Query\n *\n * Wrapper for DAPI web service calls.\n */\nconst queryWebAPI = async (\n    method: string,\n    params: any[]\n): Promise<ApiResponse> => {\n    try {\n        const response = await fetch(WEB_API_ENDPOINT, {\n            method: 'POST',\n            headers: {\n                'Content-Type': 'application/json',\n            },\n            body: JSON.stringify({\n                method,\n                params,\n            }),\n        })\n\n        if (!response.ok) {\n            throw new Error(`HTTP error! status: ${response.status}`)\n        }\n\n        const result: ApiResponse = await response.json()\n        return result\n\n    } catch (error) {\n        console.error(`Web API query failed for ${method}:`, error)\n        throw new Error(\n            `API request failed for ${method}: ${error instanceof Error ? error.message : 'Unknown error'}`\n        )\n    }\n}\n\n/**\n * Get Identity Balance\n *\n * Queries the Web API for the balance of the given identity.\n */\nexport default async (identityId: string): Promise<string | null> => {\n    try {\n        const response = await queryWebAPI('get_identity_balance', [identityId])\n\n        // Check for API-level errors\n        if (response.error) {\n            console.error('API returned error:', response.error)\n            throw new Error(\n                `API Error: ${response.error.message}${response.error.validationErrors ? ` - ${response.error.validationErrors.join(', ')}` : ''}`\n            )\n        }\n\n        // Handle the actual response format: {balance: \"12761934343\"}\n        if (response && typeof response.balance === 'string') {\n            return response.balance\n        }\n\n        console.warn('Unexpected API response format:', response)\n        return null\n\n    } catch (error) {\n        console.error(`Failed to get balance for identity ${identityId}:`, error)\n\n        // Re-throw with context for the caller to handle\n        throw new Error(\n            `Failed to retrieve identity balance: ${error instanceof Error ? error.message : 'Unknown error'}`\n        )\n    }\n}\n","// src/index.ts\nimport { setupBrowserShims } from './shims'\nimport getIdentityBalance from './libs/getIdentityBalance'\n\n// 🔥 Browser shims FIRST\nsetupBrowserShims()\n\n// 🔥 Create API object (works for both ESM + IIFE)\nconst EvoNextAPI = {\n    getIdentityBalance\n} as const\n\n// Global for IIFE\nif (typeof window !== 'undefined') {\n    (window as any).EvoNext = EvoNextAPI\n}\n\n// Export for ESM users\nexport const EvoNext = EvoNextAPI\n\n// Re-exports for tree-shaking\nexport * from './platform'\nexport * from './types'\nexport { getIdentityBalance }\n"],"mappings":";AACO,SAAS,oBAAoB;AAClC,MAAI,OAAO,WAAW,YAAa;AAGnC;AAAC,EAAC,OAAe,SAAS,EAAE,SAAS,CAAC,EAAE;AAGxC,MAAI,CAAC,OAAO,YAAY;AACtB;AAAC,IAAC,OAAe,aAAa,MAC5B,uCAAuC,QAAQ,SAAS,CAAC,MAAM;AAC7D,YAAM,IAAI,KAAK,OAAO,IAAI,KAAK;AAC/B,cAAQ,MAAM,MAAM,IAAK,IAAI,IAAM,GAAM,SAAS,EAAE;AAAA,IACtD,CAAC;AAAA,EACL;AAGA;AAAC,EAAC,OAAe,SAAU,OAAe,UAAU;AACpD;AAAC,EAAC,OAAe,UAAU;AAAA,IACzB,KAAK;AAAA,MACH,UAAU;AAAA,MACV,OAAO;AAAA,IACT;AAAA,EACF;AAGA;AAAC,EAAC,OAAe,SAAS;AAE1B,UAAQ,IAAI,sCAA0B;AACxC;;;AC1BA,IAAM,mBAAmB;AAgBzB,IAAM,cAAc,OAChB,QACA,WACuB;AACvB,MAAI;AACA,UAAM,WAAW,MAAM,MAAM,kBAAkB;AAAA,MAC3C,QAAQ;AAAA,MACR,SAAS;AAAA,QACL,gBAAgB;AAAA,MACpB;AAAA,MACA,MAAM,KAAK,UAAU;AAAA,QACjB;AAAA,QACA;AAAA,MACJ,CAAC;AAAA,IACL,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AACd,YAAM,IAAI,MAAM,uBAAuB,SAAS,MAAM,EAAE;AAAA,IAC5D;AAEA,UAAM,SAAsB,MAAM,SAAS,KAAK;AAChD,WAAO;AAAA,EAEX,SAAS,OAAO;AACZ,YAAQ,MAAM,4BAA4B,MAAM,KAAK,KAAK;AAC1D,UAAM,IAAI;AAAA,MACN,0BAA0B,MAAM,KAAK,iBAAiB,QAAQ,MAAM,UAAU,eAAe;AAAA,IACjG;AAAA,EACJ;AACJ;AAOA,IAAO,6BAAQ,OAAO,eAA+C;AACjE,MAAI;AACA,UAAM,WAAW,MAAM,YAAY,wBAAwB,CAAC,UAAU,CAAC;AAGvE,QAAI,SAAS,OAAO;AAChB,cAAQ,MAAM,uBAAuB,SAAS,KAAK;AACnD,YAAM,IAAI;AAAA,QACN,cAAc,SAAS,MAAM,OAAO,GAAG,SAAS,MAAM,mBAAmB,MAAM,SAAS,MAAM,iBAAiB,KAAK,IAAI,CAAC,KAAK,EAAE;AAAA,MACpI;AAAA,IACJ;AAGA,QAAI,YAAY,OAAO,SAAS,YAAY,UAAU;AAClD,aAAO,SAAS;AAAA,IACpB;AAEA,YAAQ,KAAK,mCAAmC,QAAQ;AACxD,WAAO;AAAA,EAEX,SAAS,OAAO;AACZ,YAAQ,MAAM,sCAAsC,UAAU,KAAK,KAAK;AAGxE,UAAM,IAAI;AAAA,MACN,wCAAwC,iBAAiB,QAAQ,MAAM,UAAU,eAAe;AAAA,IACpG;AAAA,EACJ;AACJ;;;AC9EA,kBAAkB;AAGlB,IAAM,aAAa;AAAA,EACf;AACJ;AAGA,IAAI,OAAO,WAAW,aAAa;AAC/B,EAAC,OAAe,UAAU;AAC9B;AAGO,IAAM,UAAU;","names":[]}