<!-- start pr-codex -->
## PR-Codex overview
This PR focuses on normalizing the token address in the `SendProjectWalletModalContent` function to ensure consistency when interacting with the contract. It simplifies the handling of the native token address and adjusts how data is passed to the mutation.
### Detailed summary
- Added `normalizedTokenAddress` to handle token address normalization.
- Adjusted the condition to check `normalizedTokenAddress` instead of `values.tokenAddress`.
- Updated the contract call to use `normalizedTokenAddress`.
- Modified the mutation to include `normalizedTokenAddress` only if it exists.
- Changed the mutation call from `void sendMutation.mutateAsync(values)` to `sendMutation.mutate(values)`.
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
* **Bug Fixes**
* Improved native token handling in the project wallet so native tokens are correctly recognized for balance display and transfers.
* More reliable token decimal detection to ensure accurate balance reads.
* Fixed send flow to reduce submission issues and make fund transfers more dependable.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!--
## title your PR with this format: "[SDK/Dashboard/Portal] Feature/Fix: Concise title for the changes"
If you did not copy the branch name from Linear, paste the issue tag here (format is TEAM-0000):
## Notes for the reviewer
Anything important to call out? Be sure to also clarify these in your comments.
## How to test
Unit tests, playground, etc.
-->
<!-- start pr-codex -->
---
## PR-Codex overview
This PR introduces two new properties, `amountEditable` and `tokenEditable`, to enhance the `BuyWidget` component, allowing control over editing options for token selection and amount. This improves user experience by providing flexibility in the widget's functionality.
### Detailed summary
- Added `amountEditable` and `tokenEditable` properties to `BuyWidget`.
- Updated `BuyPlayground.tsx`, `CheckoutPlayground.tsx`, and `TransactionPlayground.tsx` to use new props.
- Modified `CodeGen.tsx` to incorporate editability options.
- Updated URL generation in `buildBuyIframeUrl.ts` for new props.
- Added editability options in `LeftSection.tsx`.
- Enhanced `BuyWidgetEmbed` to accept new props.
- Implemented stories in `BuyWidget.stories.tsx` for editable and non-editable states.
- Added documentation in `iframe/page.mdx` for new features.
- Adjusted `FundWallet.tsx` and `TokenSection.tsx` to respect new editability options.
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
## Release Notes
* **New Features**
* Added `amountEditable` and `tokenEditable` props to the BuyWidget component, allowing developers to disable token selection and/or amount editing in the buy flow.
* Enhanced UI controls to prevent interaction with locked fields when these options are disabled.
* Updated documentation with examples of how to use the new editability options.
* **Tests**
* Added story variants demonstrating token and amount lock scenarios.
<sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->