FEATURE-4135 : Table URL columns pretty link
-- Add displayText field into property pane -- Display urls based on displayText -- Fix url alignment issue
This commit is contained in:
parent
99c302e018
commit
a5a0e0d85d
|
|
@ -85,7 +85,7 @@ function AutoToolTipComponent(props: Props) {
|
|||
updateToolTip(false);
|
||||
}
|
||||
}, [ref]);
|
||||
if (props.columnType === ColumnTypes.URL) {
|
||||
if (props.columnType === ColumnTypes.URL && props.title) {
|
||||
return <LinkWrapper {...props} />;
|
||||
}
|
||||
return (
|
||||
|
|
|
|||
|
|
@ -94,6 +94,7 @@ export interface CellLayoutProperties {
|
|||
buttonStyle?: string;
|
||||
buttonLabelColor?: string;
|
||||
buttonLabel?: string;
|
||||
displayText?: string;
|
||||
}
|
||||
|
||||
export interface TableColumnMetaProps {
|
||||
|
|
@ -144,6 +145,7 @@ export interface ColumnProperties {
|
|||
inputFormat?: string;
|
||||
dropdownOptions?: string;
|
||||
onOptionChange?: string;
|
||||
displayText?: string;
|
||||
}
|
||||
|
||||
export const ConditionFunctions: {
|
||||
|
|
|
|||
|
|
@ -413,6 +413,9 @@ export const CellWrapper = styled.div<{
|
|||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
text-align: ${(props) =>
|
||||
props?.cellProperties?.horizontalAlignment &&
|
||||
TEXT_ALIGN[props?.cellProperties?.horizontalAlignment]};
|
||||
}
|
||||
.hidden-icon {
|
||||
display: none;
|
||||
|
|
|
|||
|
|
@ -112,7 +112,15 @@ export const renderCell = (
|
|||
tableWidth={tableWidth}
|
||||
title={value.toString()}
|
||||
>
|
||||
{value.toString()}
|
||||
{value &&
|
||||
columnType === ColumnTypes.URL &&
|
||||
cellProperties.displayText ? (
|
||||
<a href={value.toString()} rel="noreferrer" target="_blank">
|
||||
{cellProperties.displayText}
|
||||
</a>
|
||||
) : (
|
||||
value.toString()
|
||||
)}
|
||||
</AutoToolTipComponent>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -201,6 +201,24 @@ export default [
|
|||
isBindProperty: false,
|
||||
isTriggerProperty: false,
|
||||
},
|
||||
{
|
||||
propertyName: "displayText",
|
||||
label: "Display Text",
|
||||
controlType: "INPUT_TEXT",
|
||||
customJSControl: "COMPUTE_VALUE",
|
||||
updateHook: updateDerivedColumnsHook,
|
||||
hidden: (props: TableWidgetProps, propertyPath: string) => {
|
||||
const baseProperty = getBasePropertyPath(propertyPath);
|
||||
const columnType = get(
|
||||
props,
|
||||
`${baseProperty}.columnType`,
|
||||
"",
|
||||
);
|
||||
return columnType !== "url";
|
||||
},
|
||||
isBindProperty: false,
|
||||
isTriggerProperty: false,
|
||||
},
|
||||
{
|
||||
propertyName: "computedValue",
|
||||
label: "Computed Value",
|
||||
|
|
|
|||
|
|
@ -120,6 +120,10 @@ class TableWidget extends BaseWidget<TableWidgetProps, WidgetState> {
|
|||
textSize: this.getPropertyValue(columnProperties.textSize, rowIndex),
|
||||
textColor: this.getPropertyValue(columnProperties.textColor, rowIndex),
|
||||
fontStyle: this.getPropertyValue(columnProperties.fontStyle, rowIndex), //Fix this
|
||||
displayText: this.getPropertyValue(
|
||||
columnProperties.displayText,
|
||||
rowIndex,
|
||||
),
|
||||
};
|
||||
return cellProperties;
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user