{"_id":"react-native-routex-client","_rev":"57-e4c8eeb789f6690b720a77a2c5b15acd","name":"react-native-routex-client","dist-tags":{"latest":"0.10.0"},"versions":{"0.8.0":{"name":"react-native-routex-client","version":"0.8.0","author":{"name":"YAXI GmbH"},"license":"UNLICENSED","_id":"react-native-routex-client@0.8.0","maintainers":[{"name":"cschramm","email":"npmjs@cschramm.eu"},{"name":"astuuml","email":"andy@hammerhartes.de"}],"homepage":"https://yaxi.tech","dist":{"shasum":"25ac0b8cf3f50479b5d28f9593b8621c01e98450","tarball":"https://registry.npmjs.org/react-native-routex-client/-/react-native-routex-client-0.8.0.tgz","fileCount":47,"integrity":"sha512-4LB6GBxQG192G/T3PTqkK1sGFLYr2YyemiBOiMpiv0A4UpvbAV3BHj0iU6QNB0GKmULeglNBjHi/bivYiYRTdQ==","signatures":[{"sig":"MEUCIFa0x4z9Gk1ErSSoK0G1vi3WubPeZ13soBxxGVlQTOhoAiEAv6SeZivSXIeX2kiy1UygfBrCWqEnygJ7FCD5otNMFMM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12504265},"main":"lib/commonjs/index.js","_from":"file:react-native-routex-client-0.8.0.tgz","types":"lib/typescript/src/index.d.ts","module":"lib/module/index.js","source":"src/index.ts","engines":{"node":">=22.11.0"},"scripts":{"prepare":"cp ../js/client/client.ts src/index.ts && cp ../js/settlement/index.ts src/settlement.ts && cp package.json src/ && bob build"},"_npmUser":{"name":"cschramm","email":"npmjs@cschramm.eu"},"_resolved":"/tmp/n/react-native-routex-client-0.8.0.tgz","_integrity":"sha512-4LB6GBxQG192G/T3PTqkK1sGFLYr2YyemiBOiMpiv0A4UpvbAV3BHj0iU6QNB0GKmULeglNBjHi/bivYiYRTdQ==","_npmVersion":"11.14.1","description":"YAXI routex client for React Native","directories":{},"_nodeVersion":"26.1.0","dependencies":{"jwt-decode":"^4.0.0"},"react-native":"src/index.ts","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.2","react-native":"^0.85.2","react-native-builder-bob":"^0.40.13","@react-native/typescript-config":"^0.85.2"},"_npmOperationalInternal":{"tmp":"tmp/react-native-routex-client_0.8.0_1779269018098_0.30228561925981157","host":"s3://npm-registry-packages-npm-production"},"react-native-builder-bob":{"output":"lib","source":"src","targets":["commonjs","module","typescript"]}},"0.9.0":{"name":"react-native-routex-client","version":"0.9.0","author":{"name":"YAXI GmbH"},"license":"UNLICENSED","_id":"react-native-routex-client@0.9.0","maintainers":[{"name":"cschramm","email":"npmjs@cschramm.eu"},{"name":"astuuml","email":"andy@hammerhartes.de"}],"homepage":"https://yaxi.tech","dist":{"shasum":"8b2cb047f317b45a1872d29c4ba118d9ee5c517a","tarball":"https://registry.npmjs.org/react-native-routex-client/-/react-native-routex-client-0.9.0.tgz","fileCount":68,"integrity":"sha512-/A8CeA7ZDcvcupWk0m5c5dHqTefG5Pa7w+mmBmGdXUV8GONJe28arIMXOt2s9lMNvrGykwfJyl7cMibBfND93Q==","signatures":[{"sig":"MEUCIQDob3P3Ggg1zBUw0uq5E1jvR5ZBnZX4v5nTtvAp2WTXxQIgCo/ufDGLb6skEWwmp3+SL2xzYu5ZXOnH+Ax7YFUmZ8s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12603715},"main":"lib/commonjs/index.js","_from":"file:/home/cschramm/Downloads/react-native-routex-client-0.9.0.tgz","types":"lib/typescript/src/index.d.ts","module":"lib/module/index.js","source":"src/index.ts","engines":{"node":">=22.11.0"},"scripts":{"prepare":"cp ../js/client/client.ts src/index.ts && cp ../js/settlement/index.ts src/settlement.ts && cp ../js/settlement/types.ts src/types.ts && cp ../js/models/index.ts src/models.ts && cp ../js/models/internal.ts src/models-internal.ts && cp package.json src/ && bob build"},"_npmUser":{"name":"cschramm","email":"npmjs@cschramm.eu"},"_resolved":"/home/cschramm/Downloads/react-native-routex-client-0.9.0.tgz","_integrity":"sha512-/A8CeA7ZDcvcupWk0m5c5dHqTefG5Pa7w+mmBmGdXUV8GONJe28arIMXOt2s9lMNvrGykwfJyl7cMibBfND93Q==","_npmVersion":"12.0.1","description":"YAXI routex client for React Native","directories":{},"_nodeVersion":"26.5.0","dependencies":{"jwt-decode":"^4.0.0"},"react-native":"src/index.ts","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.2","react-native":"^0.85.2","react-native-builder-bob":"^0.40.13","@react-native/typescript-config":"^0.85.2"},"_npmOperationalInternal":{"tmp":"tmp/react-native-routex-client_0.9.0_1785515463055_0.48646713009242504","host":"s3://npm-registry-packages-npm-production"},"react-native-builder-bob":{"output":"lib","source":"src","targets":["commonjs","module","typescript"]}},"0.10.0":{"name":"react-native-routex-client","version":"0.10.0","description":"YAXI routex client for React Native","homepage":"https://yaxi.tech","author":{"name":"YAXI GmbH"},"license":"UNLICENSED","main":"lib/commonjs/index.js","module":"lib/module/index.js","types":"lib/typescript/src/index.d.ts","react-native":"src/index.ts","source":"src/index.ts","scripts":{"prepare":"cp ../js/client/client.ts src/index.ts && cp ../js/settlement/index.ts src/settlement.ts && cp ../js/settlement/types.ts src/types.ts && cp ../js/models/index.ts src/models.ts && cp ../js/models/internal.ts src/models-internal.ts && cp package.json src/ && bob build"},"dependencies":{"jwt-decode":"^4.0.0"},"devDependencies":{"@react-native/typescript-config":"^0.85.2","react-native":"^0.85.2","react-native-builder-bob":"^0.40.13","typescript":"^5.9.2"},"engines":{"node":">=22.11.0"},"react-native-builder-bob":{"source":"src","output":"lib","targets":["commonjs","module","typescript"]},"_id":"react-native-routex-client@0.10.0","_integrity":"sha512-xe5TrZhEmy9Z51uObHsU8XFLBDb3ybwlsMXCP5gnKRilPEm/8OwCQCdLK+5OM86Ob3JbtUGLQR9W06S6h80/QA==","_resolved":"/tmp/claude-1000/-home-cschramm-src-yaxi-kitx/0c3f48bb-6111-4987-a8f7-70772260b7b2/scratchpad/rn/ci/react-native-routex-client-0.10.0.tgz","_from":"file:/tmp/claude-1000/-home-cschramm-src-yaxi-kitx/0c3f48bb-6111-4987-a8f7-70772260b7b2/scratchpad/rn/ci/react-native-routex-client-0.10.0.tgz","_nodeVersion":"26.8.1","_npmVersion":"12.0.2","dist":{"integrity":"sha512-xe5TrZhEmy9Z51uObHsU8XFLBDb3ybwlsMXCP5gnKRilPEm/8OwCQCdLK+5OM86Ob3JbtUGLQR9W06S6h80/QA==","shasum":"8824bfd4789994f2c22c80c82ec72fb051b465d4","tarball":"https://registry.npmjs.org/react-native-routex-client/-/react-native-routex-client-0.10.0.tgz","fileCount":68,"unpackedSize":12609465,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHSHJNiA5v0P+G0npRS97iPo1h2mjNeDot41GZSjKA8nAiEAsLFkoQ91pp46Drnza3KlnvcCFx6ZZEb8X4lnCHNo2VE="}]},"_npmUser":{"name":"cschramm","email":"npmjs@cschramm.eu"},"directories":{},"maintainers":[{"name":"cschramm","email":"npmjs@cschramm.eu"},{"name":"astuuml","email":"andy@hammerhartes.de"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/react-native-routex-client_0.10.0_1788508828609_0.6476838686261266"},"_hasShrinkwrap":false}},"time":{"created":"2024-01-14T18:47:58.561Z","modified":"2026-09-04T08:00:29.074Z","0.0.0":"2024-01-14T18:47:58.721Z","0.1.0":"2024-01-15T17:27:54.351Z","0.1.1":"2024-01-15T22:28:39.193Z","0.2.0":"2024-02-02T20:06:27.399Z","0.3.0":"2024-03-22T14:04:26.213Z","0.3.1":"2024-03-22T22:04:21.791Z","0.4.0":"2024-04-22T16:34:23.028Z","0.5.0":"2024-05-28T12:18:31.098Z","0.5.1":"2024-06-04T10:20:57.976Z","0.5.2":"2024-06-05T20:57:40.231Z","0.6.0":"2024-07-05T14:29:57.968Z","0.7.0":"2025-01-22T19:04:09.268Z","0.7.1":"2025-11-05T17:20:24.067Z","0.8.0-alpha.0":"2025-11-07T14:55:32.186Z","0.8.0-rc.0":"2026-05-13T12:35:37.924Z","0.8.0":"2026-05-20T09:23:38.328Z","0.9.0":"2026-07-31T16:31:03.334Z","0.10.0":"2026-09-04T08:00:28.867Z"},"author":{"name":"YAXI GmbH"},"license":"UNLICENSED","homepage":"https://yaxi.tech","description":"YAXI routex client for React Native","maintainers":[{"name":"cschramm","email":"npmjs@cschramm.eu"},{"name":"astuuml","email":"andy@hammerhartes.de"}],"readme":"# react-native-routex-client\n\nA React Native module with a client for [YAXI](https://yaxi.tech/)'s Open Banking services.\n\n## Targets\n\n* Android: armeabi-v7a, arm64-v8a, x86_64\n* iOS: ARM64, 64-bit Intel and ARM simulators\n\n## Changelog\n\n### [0.10.0] - 2026-09-04\n\n#### Added\n\n- `connectionData` option for `accounts`, `balances` and `transactions`, so a service can be run with the `connectionData` of an earlier `Result` instead of `credentials`.\n- `InterruptErrorException`, indicating that a request without credentials cannot complete without user interaction.\n\n#### Changed\n\n- **Breaking:** `AccountsOptions`, `BalancesOptions` and `TransactionsOptions` can no longer be extended or implemented.\n\n### [0.9.0] - 2026-07-31\n\n#### Added\n\n- `ConnectionInfo.bankCodes`\n- `ConnectionDetails.BankCodes`\n- `ConnectionInfo.labels`\n- Reference non-IBAN accounts in the balances and transactions services with `{ number }` (e.g. an ISO 20022 BBAN); `AccountReference` is now `{ iban } | { number }`.\n\n#### Changed\n\n- **Breaking:** `search` now requires `filters`; a search without any filter matches nothing.\n- Updated JNA to 5.19.1, which fixes calls to `jnidispatch` on Android devices with 16 KB memory pages\n\n#### Removed\n\n- `ConsentExpiredException`\n\n### [0.8.0] - 2026-05-19\n\n### [0.8.0-rc.0] - 2026-05-12\n\n#### Added\n\n- `ConnectionInfo.password`\n* `ConnectionInfo.bics`\n* `details` option in `search`\n- `RoutexClient.transfer`, `RoutexClient.respondTransfer`, `RoutexClient.confirmTransfer`\n- `RoutexClient.systemVersion`\n- `encryptedIban` `SearchFilter`\n- `encryptedIban` as alternative to `iban` in `collectPayment`'s `account` option\n\n#### Fixed\n\n- `AccountFilter.all/any` now supports single-element and empty lists\n\n#### Removed\n\n- `RoutexClient.measurement`\n\n### [0.8.0-alpha.0] - 2025-11-06\n\n#### Added\n\n- `OBResponse`\n- The `RoutexClient` constructor now takes an optional `requestRetryFactory` option to retry failed requests. You can pass a factory for custom policies or use `retryRequestExceptionNTimesPolicy` to retry operations that failed due to a `RequestException`. For example, `{ requestRetryFactory: () => retryRequestExceptionNTimesPolicy(1) }` would retry one time.\n- `RoutexClient.setRedirectUri`\n- `recurringConsents` option for `RoutexClient.accounts` and `RoutexClient.collectPayment`\n- `RoutexClient.balances`, `RoutexClient.respondBalances`, `RoutexClient.confirmBalances`\n- `RoutexClient.transactions`, `RoutexClient.respondTransactions`, `RoutexClient.confirmTransactions`\n- `storeCredentials`, `loadCredentials` and `removeCredentials` to store encrypted credentials in the user's browser\n- `AccountStatus`\n- `DialogContext.PaymentStatus`, `DialogContext.VopConfirmation`, `DialogContext.VopCheck`\n- `Confirmation.pollingDelaySecs`\n- `TicketExceptionCode` has two new variants:\n  - `ExpiredKey`: The API key is expired.\n  - `KeyEnvironmentMismatch`: The API key cannot be used for this environment.\n- `ServiceBlockedException.code`, `ServiceBlockedCode`\n- `UnsupportedProductException.reason`, `UnsupportedProductException.userMessage`, `UnsupportedProductReason`\n- `ProviderErrorException`, `ProviderErrorCode`\n\n#### Changed\n\n- `ResponseException.response` is now of type `Response`\n- `Result`, `Dialog`, `Redirect`, and `RedirectHandle` now extend `OBResponse`, providing `fromJSON` and `toJSON` methods\n- `TypeError`s from the `fetch` method get translated to `RequestException`s\n- `RoutexClient` now takes an object of options instead of a single URL as argument. For backwards compatibility, it's still possible to pass a URL as a single argument. It does not accepted the `redirectUri` argument anymore. Use `setRedirectUri` instead.\n\n#### Removed\n\n- `RoutexClientInterface`\n- `Response` type (see `OBResponse` class)\n- `ConnectionType`\n- `InvalidRedirectUriException`\n\n#### Fixed\n\n- `PaymentFailedException.name`\n\n### [0.7.1] - 2025-11-05\n\n#### Changed\n\n* Support for 16 KB page sizes\n\n### [0.7.0] - 2025-01-22\n\n#### Added\n\n* `RoutexClient.collectPayment` takes an optional `currency` attribute\n* `DialogContext.Redirect` for redirect polling\n* `TicketException` for any error related to the provided ticket\n* `code` and `userMessage` on `PaymentFailedException`\n* Inherit docs for `RoutexClient`\n\n#### Changed\n\n* The `traceId` method does not return a `Promise` anymore, but an immediate result\n* Renamed `errorMessage` on exception classes to `userMessage`\n\n#### Removed\n\n* `Confirmation.primaryLabel`\n* `Selection.primaryLabel`\n* `Field.primaryLabel`\n* `Actions`\n* `source` on exception classes\n* `UnexpectedValueException.errorMessage`\n\n#### Fixed\n\n* SIGABRT in case an invalid string got passed as connection identifier\n","readmeFilename":"README.md"}