{"_id":"@dharitri-sdk/web-wallet-provider","name":"@dharitri-sdk/web-wallet-provider","dist-tags":{"latest":"0.0.1"},"versions":{"0.0.1":{"name":"@dharitri-sdk/web-wallet-provider","version":"0.0.1","description":"Signing provider for dApps: Dharitri (Web) Wallet","main":"out/index.js","types":"out/index.d.js","scripts":{"test":"mocha","compile":"tsc -p tsconfig.json","pretest":"npm run compile","prepare":"npm run compile"},"author":{"name":"Dharitri"},"license":"GPL-3.0-or-later","dependencies":{"qs":"6.10.3"},"devDependencies":{"@types/chai":"4.2.11","@types/mocha":"9.1.0","@types/node":"17.0.23","@types/qs":"6.9.7","chai":"4.2.0","esmify":"2.1.1","mocha":"9.2.2","ts-node":"9.1.1","typescript":"4.1.2"},"peerDependencies":{"@dharitri-sdk/core":"0.0.1"},"gitHead":"54aa7fab83e38ef60130be5150a39930a59f3e83","_id":"@dharitri-sdk/web-wallet-provider@0.0.1","_nodeVersion":"16.20.2","_npmVersion":"8.19.4","dist":{"integrity":"sha512-uZOLV+D8m2o6eNrRkvzCI2TF1RmtfaRGslP7umgv2B1bhL4E9RCarAcqCey4SJEG9iZaLsIBxJzFWr+EeOaGcQ==","shasum":"49163b8ec1edc9d166b1e49309a1f30ea364a3e6","tarball":"https://registry.npmjs.org/@dharitri-sdk/web-wallet-provider/-/web-wallet-provider-0.0.1.tgz","fileCount":18,"unpackedSize":32321,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAa5TruxsWGQd8ww3VJo0Lqbmb41z6k1Tp6t6QW0jgm2AiEAr35LvkEayXHZGgemmSJ/wxd4S3URdJJeqorxxNUrzIc="}]},"_npmUser":{"name":"xfactor-toml","email":"xfactor.toml@gmail.com"},"directories":{},"maintainers":[{"name":"xfactor-toml","email":"xfactor.toml@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/web-wallet-provider_0.0.1_1730365602868_0.33675266490298705"},"_hasShrinkwrap":false}},"time":{"created":"2024-10-31T09:06:42.726Z","0.0.1":"2024-10-31T09:06:43.073Z","modified":"2024-10-31T09:06:43.340Z"},"maintainers":[{"name":"xfactor-toml","email":"xfactor.toml@gmail.com"}],"description":"Signing provider for dApps: Dharitri (Web) Wallet","author":{"name":"Dharitri"},"license":"GPL-3.0-or-later","readme":"# drt-sdk-js-web-wallet-provider\n\nSigning provider for dApps: Dharitri (Web) Wallet.\n\nDocumentation is available on [docs.dharitri.org](https://docs.dharitri.org/sdk-and-tools/moajs/moajs-signing-providers/), while an integration example can be found [here](https://github.com/DharitriOne/drt-sdk-js-examples/tree/main/signing-providers).\n\nNote that **we recommend using [dapp-core](https://github.com/DharitriOne/drt-sdk-dapp)** instead of integrating the signing provider on your own.\n\n## Distribution\n\n[npm](https://www.npmjs.com/package/@dharitri-sdk/web-wallet-provider)\n\n## Installation\n\n```\nnpm install @dharitri-sdk/web-wallet-provider\n```\n\n### Building the library\n\nIn order to compile the library, run the following:\n\n```\nnpm install\nnpm run compile\n```\n\n### Usage Examples\n\n####Login\n```\nexport async function login() {\nlet provider = createProvider();\nawait provider.login();\n}\n```\n\n####Sign Transactions\n```\nexport async function signTransactions() {\nlet provider = createProvider();\n\n    let firstTransaction = {\n        toPlainObject: function () {\n            return {\n                nonce: 42,\n                value: \"1\",\n                receiver: \"moa1uv40ahysflse896x4ktnh6ecx43u7cmy9wnxnvcyp7deg299a4sqh5mtjd\",\n                gasPrice: 1000000000,\n                gasLimit: 70000,\n                data: Buffer.from(\"hello\").toString(\"base64\"),\n                chainID: \"T\",\n                version: 1\n            };\n        }\n    };\n\n    let secondTransaction = {\n        toPlainObject: function () {\n            return {\n                nonce: 43,\n                value: \"1\",\n                receiver: \"moa1uv40ahysflse896x4ktnh6ecx43u7cmy9wnxnvcyp7deg299a4sqh5mtjd\",\n                gasPrice: 1000000000,\n                gasLimit: 70000,\n                data: Buffer.from(\"world\").toString(\"base64\"),\n                chainID: \"T\",\n                version: 1\n            };\n        }\n    };\n\n    await provider.signTransactions([firstTransaction, secondTransaction]);\n}\n```\n\n\nIn production, if needed, one can use sdk-core' `Transaction.fromPlainObject()` to wrap the plain transaction objects returned by the provider.\n\nFor example:\n\n```\nlet plainSignedTransactions = provider.getTransactionsFromWalletUrl();\nlet transactions = plainSignedTransactions.map(item => Transaction.fromPlainObject(item));\n```\n\n\n#### Show signed messages\n```\nexport async function showSignedTransactions() {\n    let provider = createProvider();\n    let plainSignedTransactions = provider.getTransactionsFromWalletUrl();\n    alert(JSON.stringify(plainSignedTransactions, null, 4));\n}\n```\n\n#### Logout\n```\nexport async function logout() {\n    let provider = createProvider();\n    await provider.logout({ callbackUrl: window.location.href, redirectDelayMilliseconds: 10 });\n}\n\n```\n","readmeFilename":"README.md"}