Skip to content

release 4.4.0#3055

Merged
ckeshava merged 4 commits intoXRPLF:mainfrom
ckeshava:release-4.4.0
Jul 29, 2025
Merged

release 4.4.0#3055
ckeshava merged 4 commits intoXRPLF:mainfrom
ckeshava:release-4.4.0

Conversation

@ckeshava
Copy link
Collaborator

High Level Overview of Change

This PR prepares new releases for xrpl, ripple-binary-codec and secret-numbers package. It also updates the package-lock.json in light of the updated dependencies.

Context of Change

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Refactor (non-breaking change that only restructures code)
  • Tests (You added tests for code that already exists, or your new feature included in this PR)
  • Documentation Updates
  • Release

Did you update HISTORY.md?

  • Yes
  • No, this change does not impact library users

Test Plan

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jul 29, 2025

Walkthrough

This update extensively refactors the documentation site's assets and generated pages. It introduces new search, navigation, and hierarchy data, updates the embedded search library, overhauls the main JavaScript and CSS for accessibility, theming, and UI, and regenerates all class and enum HTML documentation with improved structure, accessibility, and consistency. Two enumerations gain new members.

Changes

Cohort / File(s) Change Summary
Documentation Data Assets
docs/assets/hierarchy.js, docs/assets/navigation.js
Replaced the encoded data strings for window.hierarchyData and window.navigationData with updated values. No code logic changes.
Main Application Logic & Search
docs/assets/main.js
Rewrote and modernized the main JS: replaced and extended translations, updated embedded lunr.js, refactored search and navigation logic, improved accessibility, ARIA, keyboard support, modals, localStorage abstraction, and UI structure.
CSS & Theming
docs/assets/style.css
Refactored and expanded CSS: introduced new custom properties for layout and color, unified sizing and color usage, restyled search/modal/dialogs, improved accessibility, scrollbar styling, and responsive layout.
Generated Class Documentation
docs/classes/*
Updated HTML for all documented classes: improved structure, accessibility, ARIA attributes, navigation, search UI, and markup consistency; no API or content changes.
Generated Enum Documentation
docs/enums/*
Updated HTML and structure for all enums: improved accessibility, navigation, markup, and ARIA; added new members to AccountSetAsfFlags (asfAllowTrustLineLocking) and LedgerEntry.AccountRootFlags (lsfAllowTrustLineLocking).

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~40 minutes

Possibly related PRs

  • Docgen issue fix #2910: Also modifies the initialization of window.hierarchyData in docs/assets/hierarchy.js, indicating a direct code-level relationship with this PR.

Suggested reviewers

  • ckniffen
  • pdp2121
  • achowdhry-ripple
  • Patel-Raj11

Poem

🐇✨
With CSS and JS, I hop and I leap,
Refactoring styles, making modals sleek.
Search is now smarter, results easy to find,
ARIA and themes for users of every kind.
Enum flags multiply, docs shine anew—
A rabbit’s proud of this code review!

Note

⚡️ Unit Test Generation is now available in beta!

Learn more here, or try it out under "Finishing Touches" below.

✨ Finishing Touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment

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
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai generate unit tests to generate unit tests for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@ckeshava ckeshava requested a review from pdp2121 July 29, 2025 18:36
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (3)
packages/xrpl/HISTORY.md (1)

7-17: Changelog entry looks good – just keep “Unreleased” tidy.

The new 4.4.0 section is well-formatted and dated.
After publishing the release, remember to move this block below “## Unreleased” (or remove the empty “Unreleased” header) so the history stays chronological.

packages/ripple-binary-codec/HISTORY.md (2)

5-5: Keep release-date formatting consistent across entries

Previous entries (e.g., 2.4.1 (2025-6-18)) omit the leading zero for single-digit months, whereas the new entry uses 07 in 2025-07-29. Pick one convention and apply it everywhere to avoid subtle merge conflicts and visual noise in future diffs.

Example fix (if you prefer no leading zero, matching the surrounding lines):

-## 2.5.0 (2025-07-29)
+## 2.5.0 (2025-7-29)

9-9: Align bullet-point wording with existing style

Most bullets start with “Support for …” or “Add/Added …”. The phrase “Adds new” is a bit redundant. For consistency and terseness, consider:

-* Adds new `STNumber` serialization type.
+* Add `STNumber` serialization type.
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 7799528 and 311700f.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (6)
  • packages/ripple-binary-codec/HISTORY.md (1 hunks)
  • packages/ripple-binary-codec/package.json (1 hunks)
  • packages/secret-numbers/HISTORY.md (1 hunks)
  • packages/secret-numbers/package.json (1 hunks)
  • packages/xrpl/HISTORY.md (1 hunks)
  • packages/xrpl/package.json (1 hunks)
🧰 Additional context used
🧠 Learnings (7)
📓 Common learnings
Learnt from: shawnxie999
PR: XRPLF/xrpl.js#2661
File: packages/xrpl/test/integration/transactions/mptokenAuthorize.test.ts:29-118
Timestamp: 2024-12-06T19:25:15.376Z
Learning: In the XRPLF/xrpl.js TypeScript client library, when writing tests (e.g., in `packages/xrpl/test/integration/transactions/`), we generally do not need to test rippled server behaviors, because those behaviors are covered by rippled's own integration and unit tests.
Learnt from: mvadari
PR: XRPLF/xrpl.js#2690
File: packages/xrpl/tools/generateModels.js:18-18
Timestamp: 2024-10-08T16:29:11.194Z
Learning: `SField.cpp` and `TxFormats.cpp` are located in the `rippled` repository (`https://github.com/XRPLF/rippled/`), not in the current repository.
Learnt from: ckeshava
PR: XRPLF/xrpl.js#3027
File: packages/xrpl/src/models/ledger/MPTokenIssuance.ts:13-16
Timestamp: 2025-06-26T17:25:36.429Z
Learning: In the XRPL ecosystem, type choices for amount fields (like `number` vs `string`) in ledger objects such as `LockedAmount` vs `OutstandingAmount` in `MPTokenIssuance` are deliberate design decisions made across multiple products and cannot be changed unilaterally by individual contributors.
Learnt from: mvadari
PR: XRPLF/xrpl.js#2779
File: packages/xrpl/HISTORY.md:10-14
Timestamp: 2024-10-11T18:48:28.561Z
Learning: Ensure to reference the correct version numbers when commenting on changes to `HISTORY.md` to avoid confusion.
packages/secret-numbers/HISTORY.md (1)

Learnt from: mvadari
PR: #2779
File: packages/xrpl/HISTORY.md:10-14
Timestamp: 2024-10-11T18:48:28.561Z
Learning: Ensure to reference the correct version numbers when commenting on changes to HISTORY.md to avoid confusion.

packages/xrpl/package.json (7)

Learnt from: shawnxie999
PR: #2661
File: packages/xrpl/test/integration/transactions/mptokenAuthorize.test.ts:29-118
Timestamp: 2024-12-06T19:25:15.376Z
Learning: In the XRPLF/xrpl.js TypeScript client library, when writing tests (e.g., in packages/xrpl/test/integration/transactions/), we generally do not need to test rippled server behaviors, because those behaviors are covered by rippled's own integration and unit tests.

Learnt from: mvadari
PR: #2788
File: .github/workflows/nodejs.yml:25-25
Timestamp: 2024-09-26T21:14:56.813Z
Learning: In .github/workflows/nodejs.yml, the build-and-lint job's actions actions/setup-node and actions/cache are updated to @v4.

Learnt from: mvadari
PR: #2801
File: packages/xrpl/test/models/Batch.test.ts:0-0
Timestamp: 2025-04-16T15:22:45.633Z
Learning: Using as any type assertions is acceptable in test files for the XRPL.js project, as strict typing is not required for test code.

Learnt from: ckeshava
PR: #2873
File: packages/xrpl/test/integration/transactions/trustSet.test.ts:0-0
Timestamp: 2025-01-31T17:46:25.375Z
Learning: For the XRPL implementation, extensive test cases for deep freeze behavior (high/low side interactions, clearing flags, etc.) are maintained in the C++ implementation and don't need to be duplicated in the JavaScript implementation.

Learnt from: mvadari
PR: #2829
File: packages/xrpl/src/models/methods/ledgerEntry.ts:74-85
Timestamp: 2024-12-12T01:12:01.868Z
Learning: In the XRPL.js library, request parameters use camelCase (e.g., credentialType), while transaction model fields follow the XRP Ledger protocol's PascalCase convention (e.g., CredentialType).

Learnt from: ckeshava
PR: #2874
File: packages/xrpl/src/models/ledger/PermissionedDomain.ts:3-8
Timestamp: 2025-01-08T02:08:00.476Z
Learning: In xrpl.js, the Credential interface must maintain a nested structure with a Credential property containing Issuer and CredentialType fields to mirror the structure defined in the rippled codebase.

Learnt from: mvadari
PR: #2801
File: packages/xrpl/test/wallet/batchSigner.test.ts:0-0
Timestamp: 2025-04-16T15:28:21.204Z
Learning: In the XRPL.js library, hardcoded seeds in test files are acceptable as they don't represent protected data or real funds - they're only used for consistent test behavior.

packages/secret-numbers/package.json (1)

Learnt from: mvadari
PR: #2801
File: packages/xrpl/test/wallet/batchSigner.test.ts:0-0
Timestamp: 2025-04-16T15:28:21.204Z
Learning: In the XRPL.js library, hardcoded seeds in test files are acceptable as they don't represent protected data or real funds - they're only used for consistent test behavior.

packages/ripple-binary-codec/package.json (2)

Learnt from: shawnxie999
PR: #2661
File: packages/xrpl/test/integration/transactions/mptokenAuthorize.test.ts:29-118
Timestamp: 2024-12-06T19:25:15.376Z
Learning: In the XRPLF/xrpl.js TypeScript client library, when writing tests (e.g., in packages/xrpl/test/integration/transactions/), we generally do not need to test rippled server behaviors, because those behaviors are covered by rippled's own integration and unit tests.

Learnt from: mvadari
PR: #2690
File: packages/xrpl/tools/generateModels.js:18-18
Timestamp: 2024-10-08T16:29:11.194Z
Learning: SField.cpp and TxFormats.cpp are located in the rippled repository (https://github.com/XRPLF/rippled/), not in the current repository.

packages/ripple-binary-codec/HISTORY.md (2)

Learnt from: mvadari
PR: #2690
File: packages/xrpl/tools/generateModels.js:18-18
Timestamp: 2024-10-08T16:29:11.194Z
Learning: SField.cpp and TxFormats.cpp are located in the rippled repository (https://github.com/XRPLF/rippled/), not in the current repository.

Learnt from: mvadari
PR: #2779
File: packages/xrpl/HISTORY.md:10-14
Timestamp: 2024-10-11T18:48:28.561Z
Learning: Ensure to reference the correct version numbers when commenting on changes to HISTORY.md to avoid confusion.

packages/xrpl/HISTORY.md (3)

Learnt from: mvadari
PR: #2779
File: packages/xrpl/HISTORY.md:10-14
Timestamp: 2024-10-11T18:48:28.561Z
Learning: Ensure to reference the correct version numbers when commenting on changes to HISTORY.md to avoid confusion.

Learnt from: ckeshava
PR: #2874
File: packages/xrpl/test/integration/transactions/permissionedDomain.test.ts:25-80
Timestamp: 2025-01-08T02:12:28.489Z
Learning: For PermissionedDomain feature (XLS-80d), complex error cases like invalid credential format, duplicate credentials, and non-existent DomainID are tested in the rippled C++ implementation rather than being duplicated across SDK implementations like xrpl.js.

Learnt from: ckeshava
PR: #2874
File: packages/xrpl/test/integration/transactions/permissionedDomain.test.ts:25-80
Timestamp: 2025-01-08T02:12:28.489Z
Learning: The rippled C++ implementation (PR #5161) includes comprehensive test coverage for PermissionedDomain (XLS-80d) error cases. The JS SDK tests focus on the happy path since the error cases are already validated at the rippled level, following the principle of not duplicating complex validation testing across SDK implementations.

🔇 Additional comments (3)
packages/secret-numbers/HISTORY.md (1)

7-11: Release notes accepted.

Version header and date align with the package.json bump, and the single breaking-change bullet is clear.

packages/ripple-binary-codec/package.json (1)

3-4: Version bump OK – ensure dependents update their range.

The move to 2.5.0 is fine here, but make sure all packages that import ripple-binary-codec (e.g., xrpl) raise their dependency spec so consumers don’t silently stay on 2.4.x.

packages/secret-numbers/package.json (1)

3-4: Version bump acknowledged.

Major version increment matches HISTORY.md and updated bundle filenames; no further action required.

@Patel-Raj11
Copy link
Collaborator

@ckeshava Release step 5 is recently added to make sure that artifacts are deleted and regenerated. Please make sure that you execute this step before building and publishing the artifacts to npm.

https://github.com/XRPLF/xrpl.js/blob/main/CONTRIBUTING.md#release

@ckeshava ckeshava changed the title release xrpl at v4.4.0 release 4.4.0 Jul 29, 2025
ckeshava added 2 commits July 29, 2025 12:39
…ub Actions CI pipelines. However, this commit ensures that readers of the code-repository use the latest docs. This is required until we completely retire the use of the docs/ folder in this code repository
@ckeshava ckeshava requested a review from Patel-Raj11 July 29, 2025 19:45
@ckeshava
Copy link
Collaborator Author

ckeshava commented Jul 29, 2025

Note to reviewers: The docs/ folder eclipses the main change of this PR. Please look at the non-docs/ changes, which are pertinent to the release.

If there is a consensus amongst the reviewers, I'm happy to remove the docs folder change from this PR.

Update: I have reverted the changes relating to documentation from this PR. It is best done in a different PR since it eclipses the relevant parts of this PR.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (2)
docs/assets/style.css (2)

505-519: Consider using CSS custom property for font stack.

While the comprehensive font stack is good for cross-platform compatibility, consider defining it as a custom property for easier maintenance:

+:root {
+    --font-stack-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
+}
+
 body {
     background: var(--color-background);
-    font-family:
-        -apple-system,
-        BlinkMacSystemFont,
-        "Segoe UI",
-        "Noto Sans",
-        Helvetica,
-        Arial,
-        sans-serif,
-        "Apple Color Emoji",
-        "Segoe UI Emoji";
+    font-family: var(--font-stack-sans);
     font-size: 16px;
     color: var(--color-text);
     margin: 0;
 }

1603-1608: Consider using subgrid for better layout control.

The grid template columns use minmax for responsive sizing, but the fixed 20rem for the TOC column might be too rigid on some screens.

 .container-main {
-    grid-template-columns:
-        minmax(0, 1fr) minmax(0, 2.5fr) minmax(
-        0,
-        20rem
-    );
+    grid-template-columns: minmax(0, 1fr) minmax(0, 2.5fr) minmax(0, min(20rem, 25vw));
     grid-template-areas: "sidebar content toc";
 }
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ec2d781 and 999132f.

📒 Files selected for processing (24)
  • docs/assets/hierarchy.js (1 hunks)
  • docs/assets/main.js (1 hunks)
  • docs/assets/navigation.js (1 hunks)
  • docs/assets/style.css (29 hunks)
  • docs/classes/ConnectionError.html (1 hunks)
  • docs/classes/DisconnectedError.html (1 hunks)
  • docs/classes/NotConnectedError.html (1 hunks)
  • docs/classes/NotFoundError.html (1 hunks)
  • docs/classes/ResponseFormatError.html (1 hunks)
  • docs/classes/RippledError.html (1 hunks)
  • docs/classes/RippledNotInitializedError.html (1 hunks)
  • docs/classes/TimeoutError.html (1 hunks)
  • docs/classes/UnexpectedError.html (1 hunks)
  • docs/classes/ValidationError.html (1 hunks)
  • docs/classes/XRPLFaucetError.html (1 hunks)
  • docs/classes/XrplError.html (1 hunks)
  • docs/enums/AMMClawbackFlags.html (1 hunks)
  • docs/enums/AMMDepositFlags.html (1 hunks)
  • docs/enums/AMMWithdrawFlags.html (1 hunks)
  • docs/enums/AccountSetAsfFlags.html (1 hunks)
  • docs/enums/AccountSetTfFlags.html (1 hunks)
  • docs/enums/ECDSA.html (1 hunks)
  • docs/enums/EnableAmendmentFlags.html (1 hunks)
  • docs/enums/LedgerEntry.AccountRootFlags.html (1 hunks)
✅ Files skipped from review due to trivial changes (22)
  • docs/assets/hierarchy.js
  • docs/assets/navigation.js
  • docs/enums/AMMClawbackFlags.html
  • docs/enums/EnableAmendmentFlags.html
  • docs/enums/ECDSA.html
  • docs/enums/AMMWithdrawFlags.html
  • docs/enums/AMMDepositFlags.html
  • docs/enums/AccountSetTfFlags.html
  • docs/classes/UnexpectedError.html
  • docs/classes/NotConnectedError.html
  • docs/enums/LedgerEntry.AccountRootFlags.html
  • docs/classes/ResponseFormatError.html
  • docs/classes/ConnectionError.html
  • docs/classes/XrplError.html
  • docs/classes/TimeoutError.html
  • docs/classes/DisconnectedError.html
  • docs/classes/RippledError.html
  • docs/classes/ValidationError.html
  • docs/enums/AccountSetAsfFlags.html
  • docs/classes/XRPLFaucetError.html
  • docs/classes/RippledNotInitializedError.html
  • docs/classes/NotFoundError.html
🧰 Additional context used
🪛 Biome (2.1.2)
docs/assets/main.js

[error] 4-4: Other switch clauses can erroneously access this declaration.
Wrap the declaration in a block to restrict its access to the switch clause.

The declaration is defined in this switch clause:

Safe fix: Wrap the declaration in a block.

(lint/correctness/noSwitchDeclarations)


[error] 4-4: Other switch clauses can erroneously access this declaration.
Wrap the declaration in a block to restrict its access to the switch clause.

The declaration is defined in this switch clause:

Safe fix: Wrap the declaration in a block.

(lint/correctness/noSwitchDeclarations)


[error] 4-4: Other switch clauses can erroneously access this declaration.
Wrap the declaration in a block to restrict its access to the switch clause.

The declaration is defined in this switch clause:

Safe fix: Wrap the declaration in a block.

(lint/correctness/noSwitchDeclarations)


[error] 4-4: Other switch clauses can erroneously access this declaration.
Wrap the declaration in a block to restrict its access to the switch clause.

The declaration is defined in this switch clause:

Safe fix: Wrap the declaration in a block.

(lint/correctness/noSwitchDeclarations)


[error] 4-4: Other switch clauses can erroneously access this declaration.
Wrap the declaration in a block to restrict its access to the switch clause.

The declaration is defined in this switch clause:

Safe fix: Wrap the declaration in a block.

(lint/correctness/noSwitchDeclarations)


[error] 4-4: Other switch clauses can erroneously access this declaration.
Wrap the declaration in a block to restrict its access to the switch clause.

The declaration is defined in this switch clause:

Safe fix: Wrap the declaration in a block.

(lint/correctness/noSwitchDeclarations)


[error] 4-4: Other switch clauses can erroneously access this declaration.
Wrap the declaration in a block to restrict its access to the switch clause.

The declaration is defined in this switch clause:

Safe fix: Wrap the declaration in a block.

(lint/correctness/noSwitchDeclarations)


[error] 4-4: Shouldn't redeclare 'b'. Consider to delete it or rename it.

'b' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'b'. Consider to delete it or rename it.

'b' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'b'. Consider to delete it or rename it.

'b' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'b'. Consider to delete it or rename it.

'b' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'b'. Consider to delete it or rename it.

'b' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'b'. Consider to delete it or rename it.

'b' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'b'. Consider to delete it or rename it.

'b' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'c'. Consider to delete it or rename it.

'c' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'l'. Consider to delete it or rename it.

'l' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'i'. Consider to delete it or rename it.

'i' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'c'. Consider to delete it or rename it.

'c' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'm'. Consider to delete it or rename it.

'm' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'g'. Consider to delete it or rename it.

'g' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'm'. Consider to delete it or rename it.

'm' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'g'. Consider to delete it or rename it.

'g' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'c'. Consider to delete it or rename it.

'c' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'g'. Consider to delete it or rename it.

'g' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'c'. Consider to delete it or rename it.

'c' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare '_'. Consider to delete it or rename it.

'_' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'c'. Consider to delete it or rename it.

'c' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'k'. Consider to delete it or rename it.

'k' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'l'. Consider to delete it or rename it.

'l' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'd'. Consider to delete it or rename it.

'd' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 's'. Consider to delete it or rename it.

's' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'r'. Consider to delete it or rename it.

'r' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'r'. Consider to delete it or rename it.

'r' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'i'. Consider to delete it or rename it.

'i' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'i'. Consider to delete it or rename it.

'i' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'i'. Consider to delete it or rename it.

'i' is defined here:

(lint/suspicious/noRedeclare)


[error] 4-4: Shouldn't redeclare 'i'. Consider to delete it or rename it.

'i' is defined here:

(lint/suspicious/noRedeclare)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (7)
  • GitHub Check: integration (22.x)
  • GitHub Check: integration (20.x)
  • GitHub Check: browser (22.x)
  • GitHub Check: unit (20.x)
  • GitHub Check: unit (22.x)
  • GitHub Check: build-and-lint (22.x)
  • GitHub Check: Analyze (javascript)
🔇 Additional comments (10)
docs/assets/style.css (7)

2-16: Well-structured CSS custom properties for layout dimensions.

The introduction of CSS custom properties for layout dimensions improves maintainability and consistency. The calculation for --dim-header-height correctly combines the toolbar height with border width.


22-30: Good addition of theme color variables.

The new background-active and contrast-text color variables enhance the theming system. The comment on line 22 helpfully clarifies that "active" refers to UI state, not the CSS :active pseudo-class.


378-383: Excellent accessibility improvements.

Setting color-scheme and implementing smooth scrolling with prefers-reduced-motion media query shows good attention to accessibility. This respects user preferences for motion sensitivity.


586-603: Modern scrollbar styling implementation.

Good cross-browser scrollbar styling using both standard scrollbar-* properties and webkit-specific pseudo-elements. The thin scrollbar with rounded thumb improves the visual design.


614-627: Smart overlay implementation for modal dialogs.

The overlay styling with fade animations and the closing class provides smooth transitions. Using CSS animations instead of JavaScript for visual effects is a performance best practice.


807-808: Valuable comment about Firefox opacity issue.

The comment warning about full opacity breaking event listeners on Firefox is crucial for maintainability. This kind of browser-specific quirk documentation prevents future bugs.


1135-1189: Comprehensive search dialog styling improvements.

The search dialog implementation with flex layout, proper sizing constraints, and responsive max-height calculation (considering virtual keyboard) shows excellent attention to mobile UX. The will-change property on line 1153 appropriately hints at animation optimization.

docs/assets/main.js (3)

2-2: Good addition of search-related translations.

The extended translations object now includes messages for search functionality failures and empty results, improving internationalization support.


3-4: Third-party library update appears correct.

The lunr.js search library has been updated. The static analysis warnings about switch declarations and variable redeclarations are false positives from the minified code and can be safely ignored.


5-6: Well-structured search UI implementation.

The search implementation includes proper accessibility features:

  • ARIA attributes for search results
  • Keyboard navigation support
  • Use of <mark> tags for highlighting matches
  • Proper focus management

The modal overlay handling with scroll locking is also well implemented.

…by a Gthub Actions CI pipelines. However, this commit ensures that readers of the code-repository use the latest docs. This is required until we completely retire the use of the docs/ folder in this code repository"

This reverts commit 999132f.
@ckeshava ckeshava merged commit e958705 into XRPLF:main Jul 29, 2025
13 checks passed
Sign up for free to 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.

3 participants