Skip to main contentChangelog for NPM package @loop-crypto/connect.
[0.10.1] - 2025-10-31
Added
- Added the transaction hash to the “submitted” status screen (#1348)
Fixed
- No longer show the icon to edit token authorization on the
LoopConnectPaymentMethods component when the payment method selected is a native network tokens (#1347)
- Custom background color via
customStyles property now correctly applies to the “Transaction details” status panel (#1349)
0.10.0 - 2025-10-27
Added
- Boolean property
paymentMode (default value: "authorize") has been added to React Component LoopConnectPayIn to control payment behavior. Use the value "authorize" for authorization-only transactions and the value "direct" for direct payment without authorization (#1285)
- Web component version (
loop-connect-pay-in) uses the equivalent attribute payment-mode (default value: "authorize")
- React Component
LoopConnectPayIn adds the property onPayInUnconfirmed, accepting a callback function that is called when paymentMode="direct" and the transaction processed by the users wallet, but has not yet been verified to match the transaction details after several attempts
- Web component version (
loop-connect-pay-in) triggers the event unconfirmed, or can be passed a callback function to the attribute onunconfirmed
onPayInStateChange (statechange event for web component implementations) was updated to include two new possible states:
signingTransaction: the app is awaiting a transaction signature from the user’s wallet to make a direct payment
unconfirmed: a direct payment was made, but after some time, the transaction details have not yet been confirmed on chain. Like complete for confirmed payments, this is a terminal state for the component and no other interaction is necessary (or possible) from the user.
--loop-connect-wallet-background and --loop-connect-wallet-border css custom properties can be passed to the customStyles property to customize the styling of the connected wallet UI component (#1334)
Fixed
- Refined token+network icon stack to include additional padding and solid background for improved clarity
- Improved the application of css custom properties
Changed
- Upgraded all four
@dynamic-labs dependencies to ^4.40.1 from ^4.36.1 (#1337)
- Improved messages shown within the UI and via event data, for notifications and errors
0.9.1 - 2025-10-26
Changed
- Minor UI improvements (#1325 & #1332)
0.9.0 - 2025-10-17
Added
- When a wallet is connected, the UI will query a new endpoint that retrieves all of the wallet’s balances for the available tokens accross all networks
- “Refresh Balance” button added to manually refresh the connected wallet’s token balances
- “View on Explorer” button added on the confirmation screen to allow users to directly view the transaction on the relevant block explorer
Changed
- Token and Network select dropdowns have been unified into a single list view where users can select individual tokens across any network
- Selecting a token on a network the user’s wallet is not connected to will prompt the user to “Switch Network & Pay”; this handles the network switch and submission in a single synchronous flow
- Updated error messages to include headings and clearer messages copt for better readability
Removed
- Hover display of full wallet address on wallet panel was removed
- Transaction hash has been removed from the submission screen
0.8.5 - 2025-10-08
Added
- Numerical property
billDate (unix/posix timestamp) added to React Component LoopConnectPayIn to allow assignment of a payIn due date (#1312)
- Web component version (
loop-connect-pay-in) uses the attribute bill-date
0.8.4 - 2025-10-06
Changed
- Event handlers for
onWalletChange (React) and onwalletchange (Web Component) are now called when a wallet is disconnected after having been connected, returning address: null (#1310)
- The
address parameter for interface WalletChangeEvent has been modified to be type string | null (from type string)
- Upgraded dependencies: (#1310)
- All four
@dynamic-labs dependencies to ^4.36.1 (from ^4.9.1)
@solana/spl-token to ^0.4.14 (from ^0.4.8)
@solana/web3.js to 1.98.1 (from ^1.94.0)
ethers to ^6.15.0 (from ^6.13.2)
viem to ^2.37.13 (from ^2.21.55)
0.8.3 - 2025-09-22
Fixed
- UI correctly identifies the wallet as not being connected after all authorized wallet accounts are disconnected from the host domain (#1299)
- Resolves issue where recently disconnected wallet is not available to reconnect
- Resolves issue where clicking “X” will not disconnect the wallet
0.8.2 - 2025-09-09
Added
- Boolean property
disableSubmit (default: false) has been added to React Component LoopConnectPayIn to disable only the “Pay” button (#1268)
- Attribute
disable-submit (default: "false") has been added to Web Component loop-connect-pay-in to disable only the “Pay” button (#1268)
Fixed
- Updated UI component styling to improve contrast when setting darker colors through custom css variables via the
customStyles property (#1261)
Changed
- Improved network selection when creating a payin (
LoopConnectPayIn / loop-connect-pay-in) and when adding a new payment method (LoopConnectPaymentMethods / loop-connect-payment-methods)
- When only one network is available, the select component will only show the single network without the option list (#1267)
- When only one token is available on a selected network, the select component will only show the single token without the option list (#1267)
- When network select is set to a network that does not match (or is unavailable to) the connected wallet, an error is displayed with an action button to reconnect another wallet (#1294)
- Display the most “Popular” wallet app options at the top of the list within the model, when connecting a wallet (#1260)
0.8.1 - 2025-08-19
Fixed
- When a user has multiple existing payment methods, completing a pay-in now correctly selected the payment method that matches the user’s select instead of the default payment method (#1270)
Changed
- If the user signs from their wallet to increase their authorization amount, they no longer have to sign a second message to authorize a payment (#1242)
- Wallet connection modal is now vertically centered within small viewports (and “mobile”), rather than anchored to the bottom (#1240)
- Minimum authorization amount will use the greater of
minimumAuthorizationUsdAmount and paymentUsdAmount values, rather than simply using the former if provided (#1270)
- Suggested authorization amount will use the greater of
suggestedAuthorizationUsdAmount (or minimumAuthorizationUsdAmount if provided and the latter is not) and paymentUsdAmount values, rather than simply using the former if provided (#1270)
- The main “Pay” button will becomes disabled if the selected token’s balance equivalent in USD is not greater than the
paymentUsdAmount (#1270)
Removed
- No longer show “copy” button in tooltips when hovering over a wallet address (#1270)
- The “edit” pencil icon is no longer displayed on the “Connected wallet” panel (#1270)
0.8.0 - 2025-07-30
Changed
- No external packages are being bundled, they have all been externalized and have becomes package
dependencies
- Required packages
react and react-dom have become peerDependencies to allow implementing sites to use their preferred versions greater than 18.0.0
0.7.0 - 2025-06-20
Added
- New React Component
LoopConnectPaymentMethods and native Web Component loop-connect-payment-methods, used to add, delete, update payment methods (network + token + wallet) - including updating authorization (#1194)
initLoopConnect() accepts string parameter jwtToken as an alternative to apiKey in order to improve security (#1194)
- Added callback parameter
onPayInPaymentMethodCreated to LoopConnectPayIn component for when a payment method is saved (#1194)
- Added event type
paymentmethodcreated to loop-connect-pay-in web component for when a payment method is saved (#1194)
Changed
- Show token balances and payment amount conversion rate rounded to two significant digits (#1194)
- Improved UI component design, including colored notifications and animated “working” buttons (#1194)
Removed
- Marked the
LoopConnectPayIn component’s parameter suggestedAuthorizationUsdAmount for deprecation (#1194)
0.6.2 - 2025-05-12
Fixed
- In instances where the
entityId and merchantId are both provided and are not equal, merchantId was incorrectly being sent in the header when posting customer payment method data to complete the pay-in (#1195)
- The
ready event from the initLoopConnect function now correctly returns merchantId rather than entityId im the data object passed to the callback provided to onInitialized (#1195)
- The
ready event from the LoopConnectPayIn component correctly returns merchantId rather than entityId im the data object passed to the callback provided to onPayInReady (#1195)
0.6.1 - 2025-04-30
Added
- Boolean property
addToExistingAuthorization when true (default: false) will add to the user’s existing authorization amount instead of strictly setting authorization with the amount computed (#1179)
Fixed
- Wallet balance now displays correctly after switching between EVM networks (#1179)
Changed
- PayIns now use fiat amount instead of crypto-exchanged amount to prevent exchange rate discrepancies (#1179)
0.6.0 - 2025-04-30
Added
onPayInAuthorizationConfirmed callback triggered when authorization is great than or equal to the value specified by minimumAuthorizationUsdAmount (#1177)
- Property
authorizedNotification was added to the LoopConnectPayIn component for displaying authorization completion details, accepting "event-only" (default) or "embedded" (#1177)
- Setting the
LoopConnectPayIn property paymentUsdAmount with the value 0 will now signal to the component that a PayIn at the end of the flow is not required and should only handle authorization and returning a signature (#1177)
Fixed
- Select dropdown arrow takes correct color in all states (#1177)
- Wallet correctly changes in the UI in all cases when account change is made through browser wallet application (#1177)
Changed
onPayInStateChange now sets "authorized" as final state for completed flows where the value for paymentUsdAmount was 0 and only an authorization was completed - not a payment (#1177)
- Improved initialization data retrieval and storage reliability (#1177)
0.5.2 - 2025-04-08
Fixed
- Web component events extend
CustomEvent and are properties of new type PayInCustomEvents (#1172)
- Global web component property
HTMLElementEventMap extends PayInCustomEvents (#1172)
- Delayed css props set in component
constructor to connectedCallback to resolve web component not loading in Vue environments (#1172)
0.5.1 - 2025-04-04
Fixed
- Catch thrown error when invalid value were passed into
initLoopConnect(), which resulted in walletProviderId error in the console (#1166)
- Correctly call
onInitFailed for all initLoopConnect() errors (#1166)
0.5.0 - 2025-04-03
Added
<loop-connect-pay-in> is available as a native web component, which can be imported into the major non-React frameworks (angular, vue, svelt, etc) as well as work natively in vanilla JS without a framework (#1166)
Fixed
- Component will now use
transparent background value, visible with rounded corners applied (#1166)
0.4.3 - 2025-03-14
Added
NotificationOption type can be imported for UI notification values
0.4.2 - 2025-02-28
Added
- Boolean property
disabled will disable UI user input (default: false)
Fixed
- Resolved issue where connected wallet account is not updating when changed from injected wallet browser app
0.4.1 - 2025-02-28
Added
- Boolean property
awaitConfirmation allows the UI to skip awaiting confirmation of transaction on-chain (default: true)
Changed
0.4.0 - 2025-02-28
Added
- Property
confirmingNotification was added to the LoopConnectPayIn component to control transaction confirmation UI display, accepting "event-only" (default) or "embedded"
confirmingPayment states can be captured from onPayInStateChange while the app is confirming a transaction on-chain
onPayInConfirmed event handler callback will be called when a transaction is confirmed on-chain
Changed
onPayInCreated replaces onPayInComplete using the same data object, when a pay-in is created
creatingPayment state replaces processingPayment state when capturing events from onPayInStateChange