Skip to content

[OGUI-1917] Add shareable url button - #3586

Draft
isaachilly wants to merge 7 commits into
devfrom
feature/ILG/OGUI-1917/Add-shareable-url-button
Draft

[OGUI-1917] Add shareable url button#3586
isaachilly wants to merge 7 commits into
devfrom
feature/ILG/OGUI-1917/Add-shareable-url-button

Conversation

@isaachilly

Copy link
Copy Markdown
Collaborator

I have JIRA issue created

  • branch and/or PR name(s) includes JIRA ID
  • issue has "Fix version" assigned
  • issue "Status" is set to "In review"
  • PR labels are selected
  • FLP integration tests were ran successful

Add a new share action to the toolbar that copies a URL for the current view (path + active query params) to the clipboard and displays a notification on success/error.
Add new tests to verify successful clipboard copying and correct error handling when the Clipboard API is missing or fails.
@isaachilly isaachilly self-assigned this Aug 21, 2026
Replace manual per-field encoding in LogFilter with a single encodeURIComponent call on the full JSON query string in the router.
The share button now copies `window.location.href` directly instead of rebuilding the URL from parsed query params. This ensures the copied link exactly matches what the user sees in the address bar.

Tests updated to validate exact URL copying, proper percent-encoding/round-trip of filters, and remove redundant test.
The `+` matched a run of consecutive quotes and collapsed it to a single escaped quote/

A backslash was encoded to `%5C` so JSON.Stringify saw nothing to escape. URLSearchParams then decoded it back to `\` and JSON.parse read it together with the character after it so something like `C:\temp` would be returned as `C:<tab>emp`.

Both follow escaping before encoding, whilst JSON.parse runs only following the router's URLSearchParams decoding, unsymmetrical.

Now that we encode the whole `q` parameter, this per-value pass is redundant and actively harmful, so it is removed.
Update expected URL params to use fully percent-encoded form.
Extend the InfoLogger filter action suite with a dedicated URL round-trip section.

The new tests verify message filter values survive reloads across tricky cases (double quotes, valid/invalid backslash escapes, multiline input, and URL-special characters), and assert the model keeps unencoded values internally.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

1 participant