feat: add inline Stellar address validation on destination fields - #39

Merged
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation
Aug 5, 2026
Merged

feat: add inline Stellar address validation on destination fields#39
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation

Conversation

@MJ-RWA

@MJ-RWAMJ-RWA commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

@vercel

vercelBot commented Aug 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
stellarflowReadyReadyPreviewAug 5, 2026 2:29am

@coderabbitai

coderabbitaiBot commented Aug 5, 2026

Copy link
Copy Markdown

Review Change Stack

Note

.coderabbit.yaml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key: "path_instructions"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
📝 Walkthrough

Walkthrough

SendPage validates destination addresses for a leading G and exactly 56 characters. It displays an inline error for invalid input and disables sending while the error exists.

Changes

Destination Address Validation

Layer / File(s)Summary
Validate destination addresses and gate sending
apps/src/pages/SendPage.tsx
SendPage tracks destination-address errors, validates each input value, displays an inline error, and disables sending when the address is invalid.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related issues

  • Stellarflow issue 3 — Both changes update destination-address input handling in SendPage.tsx; this pull request adds the validation and error-state behavior.
🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check nameStatusExplanationResolution
Title check⚠️ WarningThe title describes a clipboard paste button, but the changes validate destination addresses and disable sending for invalid addresses.Update the title to describe destination-address validation and the invalid-address send restriction.
Docstring Coverage⚠️ WarningDocstring coverage is 0.00% which is insufficient. The required threshold is 80.00%.Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check nameStatusExplanation
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/address-validation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/src/pages/SendPage.tsx`:
- Around line 125-128: Replace the shape-only destination validation in SendPage
with StrKey.isValidEd25519PublicKey, importing StrKey from `@stellar/stellar-sdk`
and applying the same validation to scheduled payment creation. Preserve the
existing destError behavior for invalid and valid addresses, and add coverage
for a 56-character G address with an invalid checksum.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 4bfb9411-14c6-4f05-8a32-46211cd487ec

📥 Commits

Reviewing files that changed from the base of the PR and between 0fa66aa and c48bc83.

📒 Files selected for processing (1)
  • apps/src/pages/SendPage.tsx

Comment threadapps/src/pages/SendPage.tsx
@MJ-RWA
MJ-RWA merged commit aa256dd into mainAug 5, 2026
3 checks passed
@MJ-RWAMJ-RWA changed the title feat: add clipboard paste button to destination address inputsfeat: add inline Stellar address validation on destination fieldsAug 5, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add inline address validation on destination fields

1 participant

@MJ-RWA
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

feat: add inline Stellar address validation on destination fields - #39

Merged
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation
Aug 5, 2026
Merged

feat: add inline Stellar address validation on destination fields#39
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation

Conversation

@MJ-RWA

@MJ-RWAMJ-RWA commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

@vercel

vercelBot commented Aug 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
stellarflowReadyReadyPreviewAug 5, 2026 2:29am

@coderabbitai

coderabbitaiBot commented Aug 5, 2026

Copy link
Copy Markdown

Review Change Stack

Note

.coderabbit.yaml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key: "path_instructions"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
📝 Walkthrough

Walkthrough

SendPage validates destination addresses for a leading G and exactly 56 characters. It displays an inline error for invalid input and disables sending while the error exists.

Changes

Destination Address Validation

Layer / File(s)Summary
Validate destination addresses and gate sending
apps/src/pages/SendPage.tsx
SendPage tracks destination-address errors, validates each input value, displays an inline error, and disables sending when the address is invalid.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related issues

  • Stellarflow issue 3 — Both changes update destination-address input handling in SendPage.tsx; this pull request adds the validation and error-state behavior.
🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check nameStatusExplanationResolution
Title check⚠️ WarningThe title describes a clipboard paste button, but the changes validate destination addresses and disable sending for invalid addresses.Update the title to describe destination-address validation and the invalid-address send restriction.
Docstring Coverage⚠️ WarningDocstring coverage is 0.00% which is insufficient. The required threshold is 80.00%.Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check nameStatusExplanation
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/address-validation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/src/pages/SendPage.tsx`:
- Around line 125-128: Replace the shape-only destination validation in SendPage
with StrKey.isValidEd25519PublicKey, importing StrKey from `@stellar/stellar-sdk`
and applying the same validation to scheduled payment creation. Preserve the
existing destError behavior for invalid and valid addresses, and add coverage
for a 56-character G address with an invalid checksum.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 4bfb9411-14c6-4f05-8a32-46211cd487ec

📥 Commits

Reviewing files that changed from the base of the PR and between 0fa66aa and c48bc83.

📒 Files selected for processing (1)
  • apps/src/pages/SendPage.tsx

Comment threadapps/src/pages/SendPage.tsx
@MJ-RWA
MJ-RWA merged commit aa256dd into mainAug 5, 2026
3 checks passed
@MJ-RWAMJ-RWA changed the title feat: add clipboard paste button to destination address inputsfeat: add inline Stellar address validation on destination fieldsAug 5, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add inline address validation on destination fields

1 participant

@MJ-RWA
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat: add inline Stellar address validation on destination fields - #39

Merged
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation
Aug 5, 2026
Merged

feat: add inline Stellar address validation on destination fields#39
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation

Conversation

@MJ-RWA

@MJ-RWAMJ-RWA commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

@vercel

vercelBot commented Aug 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
stellarflowReadyReadyPreviewAug 5, 2026 2:29am

@coderabbitai

coderabbitaiBot commented Aug 5, 2026

Copy link
Copy Markdown

Review Change Stack

Note

.coderabbit.yaml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key: "path_instructions"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
📝 Walkthrough

Walkthrough

SendPage validates destination addresses for a leading G and exactly 56 characters. It displays an inline error for invalid input and disables sending while the error exists.

Changes

Destination Address Validation

Layer / File(s)Summary
Validate destination addresses and gate sending
apps/src/pages/SendPage.tsx
SendPage tracks destination-address errors, validates each input value, displays an inline error, and disables sending when the address is invalid.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related issues

  • Stellarflow issue 3 — Both changes update destination-address input handling in SendPage.tsx; this pull request adds the validation and error-state behavior.
🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check nameStatusExplanationResolution
Title check⚠️ WarningThe title describes a clipboard paste button, but the changes validate destination addresses and disable sending for invalid addresses.Update the title to describe destination-address validation and the invalid-address send restriction.
Docstring Coverage⚠️ WarningDocstring coverage is 0.00% which is insufficient. The required threshold is 80.00%.Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check nameStatusExplanation
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/address-validation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/src/pages/SendPage.tsx`:
- Around line 125-128: Replace the shape-only destination validation in SendPage
with StrKey.isValidEd25519PublicKey, importing StrKey from `@stellar/stellar-sdk`
and applying the same validation to scheduled payment creation. Preserve the
existing destError behavior for invalid and valid addresses, and add coverage
for a 56-character G address with an invalid checksum.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 4bfb9411-14c6-4f05-8a32-46211cd487ec

📥 Commits

Reviewing files that changed from the base of the PR and between 0fa66aa and c48bc83.

📒 Files selected for processing (1)
  • apps/src/pages/SendPage.tsx

Comment threadapps/src/pages/SendPage.tsx
@MJ-RWA
MJ-RWA merged commit aa256dd into mainAug 5, 2026
3 checks passed
@MJ-RWAMJ-RWA changed the title feat: add clipboard paste button to destination address inputsfeat: add inline Stellar address validation on destination fieldsAug 5, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add inline address validation on destination fields

1 participant

@MJ-RWA
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat: add inline Stellar address validation on destination fields - #39

Merged
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation
Aug 5, 2026
Merged

feat: add inline Stellar address validation on destination fields#39
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation

Conversation

@MJ-RWA

@MJ-RWAMJ-RWA commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

@vercel

vercelBot commented Aug 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
stellarflowReadyReadyPreviewAug 5, 2026 2:29am

@coderabbitai

coderabbitaiBot commented Aug 5, 2026

Copy link
Copy Markdown

Review Change Stack

Note

.coderabbit.yaml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key: "path_instructions"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
📝 Walkthrough

Walkthrough

SendPage validates destination addresses for a leading G and exactly 56 characters. It displays an inline error for invalid input and disables sending while the error exists.

Changes

Destination Address Validation

Layer / File(s)Summary
Validate destination addresses and gate sending
apps/src/pages/SendPage.tsx
SendPage tracks destination-address errors, validates each input value, displays an inline error, and disables sending when the address is invalid.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related issues

  • Stellarflow issue 3 — Both changes update destination-address input handling in SendPage.tsx; this pull request adds the validation and error-state behavior.
🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check nameStatusExplanationResolution
Title check⚠️ WarningThe title describes a clipboard paste button, but the changes validate destination addresses and disable sending for invalid addresses.Update the title to describe destination-address validation and the invalid-address send restriction.
Docstring Coverage⚠️ WarningDocstring coverage is 0.00% which is insufficient. The required threshold is 80.00%.Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check nameStatusExplanation
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/address-validation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/src/pages/SendPage.tsx`:
- Around line 125-128: Replace the shape-only destination validation in SendPage
with StrKey.isValidEd25519PublicKey, importing StrKey from `@stellar/stellar-sdk`
and applying the same validation to scheduled payment creation. Preserve the
existing destError behavior for invalid and valid addresses, and add coverage
for a 56-character G address with an invalid checksum.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 4bfb9411-14c6-4f05-8a32-46211cd487ec

📥 Commits

Reviewing files that changed from the base of the PR and between 0fa66aa and c48bc83.

📒 Files selected for processing (1)
  • apps/src/pages/SendPage.tsx

Comment threadapps/src/pages/SendPage.tsx
@MJ-RWA
MJ-RWA merged commit aa256dd into mainAug 5, 2026
3 checks passed
@MJ-RWAMJ-RWA changed the title feat: add clipboard paste button to destination address inputsfeat: add inline Stellar address validation on destination fieldsAug 5, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add inline address validation on destination fields

1 participant

@MJ-RWA
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

feat: add inline Stellar address validation on destination fields - #39

Merged
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation
Aug 5, 2026
Merged

feat: add inline Stellar address validation on destination fields#39
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation

Conversation

@MJ-RWA

@MJ-RWAMJ-RWA commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

@vercel

vercelBot commented Aug 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
stellarflowReadyReadyPreviewAug 5, 2026 2:29am

@coderabbitai

coderabbitaiBot commented Aug 5, 2026

Copy link
Copy Markdown

Review Change Stack

Note

.coderabbit.yaml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key: "path_instructions"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
📝 Walkthrough

Walkthrough

SendPage validates destination addresses for a leading G and exactly 56 characters. It displays an inline error for invalid input and disables sending while the error exists.

Changes

Destination Address Validation

Layer / File(s)Summary
Validate destination addresses and gate sending
apps/src/pages/SendPage.tsx
SendPage tracks destination-address errors, validates each input value, displays an inline error, and disables sending when the address is invalid.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related issues

  • Stellarflow issue 3 — Both changes update destination-address input handling in SendPage.tsx; this pull request adds the validation and error-state behavior.
🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check nameStatusExplanationResolution
Title check⚠️ WarningThe title describes a clipboard paste button, but the changes validate destination addresses and disable sending for invalid addresses.Update the title to describe destination-address validation and the invalid-address send restriction.
Docstring Coverage⚠️ WarningDocstring coverage is 0.00% which is insufficient. The required threshold is 80.00%.Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check nameStatusExplanation
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/address-validation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/src/pages/SendPage.tsx`:
- Around line 125-128: Replace the shape-only destination validation in SendPage
with StrKey.isValidEd25519PublicKey, importing StrKey from `@stellar/stellar-sdk`
and applying the same validation to scheduled payment creation. Preserve the
existing destError behavior for invalid and valid addresses, and add coverage
for a 56-character G address with an invalid checksum.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 4bfb9411-14c6-4f05-8a32-46211cd487ec

📥 Commits

Reviewing files that changed from the base of the PR and between 0fa66aa and c48bc83.

📒 Files selected for processing (1)
  • apps/src/pages/SendPage.tsx

Comment threadapps/src/pages/SendPage.tsx
@MJ-RWA
MJ-RWA merged commit aa256dd into mainAug 5, 2026
3 checks passed
@MJ-RWAMJ-RWA changed the title feat: add clipboard paste button to destination address inputsfeat: add inline Stellar address validation on destination fieldsAug 5, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add inline address validation on destination fields

1 participant

@MJ-RWA
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat: add inline Stellar address validation on destination fields - #39

Merged
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation
Aug 5, 2026
Merged

feat: add inline Stellar address validation on destination fields#39
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation

Conversation

@MJ-RWA

@MJ-RWAMJ-RWA commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

@vercel

vercelBot commented Aug 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
stellarflowReadyReadyPreviewAug 5, 2026 2:29am

@coderabbitai

coderabbitaiBot commented Aug 5, 2026

Copy link
Copy Markdown

Review Change Stack

Note

.coderabbit.yaml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key: "path_instructions"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
📝 Walkthrough

Walkthrough

SendPage validates destination addresses for a leading G and exactly 56 characters. It displays an inline error for invalid input and disables sending while the error exists.

Changes

Destination Address Validation

Layer / File(s)Summary
Validate destination addresses and gate sending
apps/src/pages/SendPage.tsx
SendPage tracks destination-address errors, validates each input value, displays an inline error, and disables sending when the address is invalid.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related issues

  • Stellarflow issue 3 — Both changes update destination-address input handling in SendPage.tsx; this pull request adds the validation and error-state behavior.
🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check nameStatusExplanationResolution
Title check⚠️ WarningThe title describes a clipboard paste button, but the changes validate destination addresses and disable sending for invalid addresses.Update the title to describe destination-address validation and the invalid-address send restriction.
Docstring Coverage⚠️ WarningDocstring coverage is 0.00% which is insufficient. The required threshold is 80.00%.Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check nameStatusExplanation
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/address-validation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/src/pages/SendPage.tsx`:
- Around line 125-128: Replace the shape-only destination validation in SendPage
with StrKey.isValidEd25519PublicKey, importing StrKey from `@stellar/stellar-sdk`
and applying the same validation to scheduled payment creation. Preserve the
existing destError behavior for invalid and valid addresses, and add coverage
for a 56-character G address with an invalid checksum.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 4bfb9411-14c6-4f05-8a32-46211cd487ec

📥 Commits

Reviewing files that changed from the base of the PR and between 0fa66aa and c48bc83.

📒 Files selected for processing (1)
  • apps/src/pages/SendPage.tsx

Comment threadapps/src/pages/SendPage.tsx
@MJ-RWA
MJ-RWA merged commit aa256dd into mainAug 5, 2026
3 checks passed
@MJ-RWAMJ-RWA changed the title feat: add clipboard paste button to destination address inputsfeat: add inline Stellar address validation on destination fieldsAug 5, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add inline address validation on destination fields

1 participant

@MJ-RWA
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat: add inline Stellar address validation on destination fields - #39

Merged
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation
Aug 5, 2026
Merged

feat: add inline Stellar address validation on destination fields#39
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation

Conversation

@MJ-RWA

@MJ-RWAMJ-RWA commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

@vercel

vercelBot commented Aug 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
stellarflowReadyReadyPreviewAug 5, 2026 2:29am

@coderabbitai

coderabbitaiBot commented Aug 5, 2026

Copy link
Copy Markdown

Review Change Stack

Note

.coderabbit.yaml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key: "path_instructions"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
📝 Walkthrough

Walkthrough

SendPage validates destination addresses for a leading G and exactly 56 characters. It displays an inline error for invalid input and disables sending while the error exists.

Changes

Destination Address Validation

Layer / File(s)Summary
Validate destination addresses and gate sending
apps/src/pages/SendPage.tsx
SendPage tracks destination-address errors, validates each input value, displays an inline error, and disables sending when the address is invalid.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related issues

  • Stellarflow issue 3 — Both changes update destination-address input handling in SendPage.tsx; this pull request adds the validation and error-state behavior.
🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check nameStatusExplanationResolution
Title check⚠️ WarningThe title describes a clipboard paste button, but the changes validate destination addresses and disable sending for invalid addresses.Update the title to describe destination-address validation and the invalid-address send restriction.
Docstring Coverage⚠️ WarningDocstring coverage is 0.00% which is insufficient. The required threshold is 80.00%.Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check nameStatusExplanation
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/address-validation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/src/pages/SendPage.tsx`:
- Around line 125-128: Replace the shape-only destination validation in SendPage
with StrKey.isValidEd25519PublicKey, importing StrKey from `@stellar/stellar-sdk`
and applying the same validation to scheduled payment creation. Preserve the
existing destError behavior for invalid and valid addresses, and add coverage
for a 56-character G address with an invalid checksum.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 4bfb9411-14c6-4f05-8a32-46211cd487ec

📥 Commits

Reviewing files that changed from the base of the PR and between 0fa66aa and c48bc83.

📒 Files selected for processing (1)
  • apps/src/pages/SendPage.tsx

Comment threadapps/src/pages/SendPage.tsx
@MJ-RWA
MJ-RWA merged commit aa256dd into mainAug 5, 2026
3 checks passed
@MJ-RWAMJ-RWA changed the title feat: add clipboard paste button to destination address inputsfeat: add inline Stellar address validation on destination fieldsAug 5, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add inline address validation on destination fields

1 participant

@MJ-RWA
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

feat: add inline Stellar address validation on destination fields - #39

Merged
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation
Aug 5, 2026
Merged

feat: add inline Stellar address validation on destination fields#39
MJ-RWA merged 1 commit into
mainfrom
feat/address-validation

Conversation

@MJ-RWA

@MJ-RWAMJ-RWA commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

@vercel

vercelBot commented Aug 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
stellarflowReadyReadyPreviewAug 5, 2026 2:29am

@coderabbitai

coderabbitaiBot commented Aug 5, 2026

Copy link
Copy Markdown

Review Change Stack

Note

.coderabbit.yaml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key: "path_instructions"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
📝 Walkthrough

Walkthrough

SendPage validates destination addresses for a leading G and exactly 56 characters. It displays an inline error for invalid input and disables sending while the error exists.

Changes

Destination Address Validation

Layer / File(s)Summary
Validate destination addresses and gate sending
apps/src/pages/SendPage.tsx
SendPage tracks destination-address errors, validates each input value, displays an inline error, and disables sending when the address is invalid.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related issues

  • Stellarflow issue 3 — Both changes update destination-address input handling in SendPage.tsx; this pull request adds the validation and error-state behavior.
🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check nameStatusExplanationResolution
Title check⚠️ WarningThe title describes a clipboard paste button, but the changes validate destination addresses and disable sending for invalid addresses.Update the title to describe destination-address validation and the invalid-address send restriction.
Docstring Coverage⚠️ WarningDocstring coverage is 0.00% which is insufficient. The required threshold is 80.00%.Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check nameStatusExplanation
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/address-validation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/src/pages/SendPage.tsx`:
- Around line 125-128: Replace the shape-only destination validation in SendPage
with StrKey.isValidEd25519PublicKey, importing StrKey from `@stellar/stellar-sdk`
and applying the same validation to scheduled payment creation. Preserve the
existing destError behavior for invalid and valid addresses, and add coverage
for a 56-character G address with an invalid checksum.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 4bfb9411-14c6-4f05-8a32-46211cd487ec

📥 Commits

Reviewing files that changed from the base of the PR and between 0fa66aa and c48bc83.

📒 Files selected for processing (1)
  • apps/src/pages/SendPage.tsx

Comment threadapps/src/pages/SendPage.tsx
@MJ-RWA
MJ-RWA merged commit aa256dd into mainAug 5, 2026
3 checks passed
@MJ-RWAMJ-RWA changed the title feat: add clipboard paste button to destination address inputsfeat: add inline Stellar address validation on destination fieldsAug 5, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add inline address validation on destination fields

1 participant

@MJ-RWA