Skip to content

Conversation

@shahrokni
Copy link
Contributor

@shahrokni shahrokni commented Nov 25, 2025

Relates to perses/perses#3483

Description 🖊️

This PR adds Links and Actions setting section into the column settings.
Using this feature users will be able to generate dynamic links for each column of the table plugin.
The dynamic part of the URL is taken from the Cell Value.

As @AntoineThebaud explains in the issue A link should ...

A link should be dynamic by allowing to embed the current value of the cell as part of it.

Dynamic Link Settings 🔧 🔗

In settings users can define a link which includes three properties. URL, Title, and Open_New_Tab option.
The settings could be added, edited, and removed.

image image image

Test 🧪

You should be able to save/edit/remove link settings from column settings.

Checklist

  • Pull request has a descriptive title and context useful to a reviewer.
  • Pull request title follows the [<catalog_entry>] <commit message> naming convention using one of the
    following catalog_entry values: FEATURE, ENHANCEMENT, BUGFIX, BREAKINGCHANGE, DOC,IGNORE.
  • All commits have DCO signoffs.

UI Changes

  • Changes that impact the UI include screenshots and/or screencasts of the relevant changes.
  • Code follows the UI guidelines.

@shahrokni shahrokni force-pushed the feat/table_data_link branch 2 times, most recently from 2737172 to 02ce7e4 Compare November 27, 2025 13:25
@shahrokni shahrokni marked this pull request as ready for review November 27, 2025 14:15
Signed-off-by: Seyed Mahmoud SHAHROKNI <seyedmahmoud.shahrokni@amadeus.com>

Signed-off-by: Seyed Mahmoud SHAHROKNI <seyedmahmoud.shahrokni@amadeus.com>

Signed-off-by: Seyed Mahmoud SHAHROKNI <seyedmahmoud.shahrokni@amadeus.com>

Signed-off-by: Seyed Mahmoud SHAHROKNI <seyedmahmoud.shahrokni@amadeus.com>
Copy link
Member

@Gladorme Gladorme left a comment

Choose a reason for hiding this comment

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

I did not check in depth, but here is already some points that could improve the PR

open: boolean;
setOpen: (value: boolean) => void;
};
const LinkManagementDialogue = (props: LinkManagementDialogueProps): ReactElement => {
Copy link
Member

Choose a reason for hiding this comment

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

Rename + move to dedicated file

Suggested change
const LinkManagementDialogue = (props: LinkManagementDialogueProps): ReactElement => {
const LinkManagementDialog = (props: LinkManagementDialogueProps): ReactElement => {

};

return (
<Dialog
Copy link
Member

Choose a reason for hiding this comment

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

Use Perses Dialog component

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It is Perses
The last item.

import {
  AlignSelector,
  FormatControls,
  OptionsEditorColumn,
  OptionsEditorControl,
  OptionsEditorGrid,
  OptionsEditorGroup,
  SortSelectorButtons,
  Dialog,
} from '@perses-dev/components';

Copy link
Member

Choose a reason for hiding this comment

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

Ok, I'm crazy I though I saw it in MUI import 😓

<DialogTitle>{actionTitle}</DialogTitle>
<DialogContent>
<Stack spacing={2}>
<FormControl>
Copy link
Member

@Gladorme Gladorme Nov 27, 2025

Choose a reason for hiding this comment

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

We already have a form for editing links LinksEditor/LinkControl, can it be re-used (UI consistency and code re-usage)?

Signed-off-by: Seyed Mahmoud SHAHROKNI <seyedmahmoud.shahrokni@amadeus.com>
@shahrokni shahrokni force-pushed the feat/table_data_link branch from 02ce7e4 to 4883b7c Compare November 27, 2025 15:28
@shahrokni shahrokni marked this pull request as draft November 28, 2025 11:06
Signed-off-by: Seyed Mahmoud SHAHROKNI <seyedmahmoud.shahrokni@amadeus.com>
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.

2 participants