Skip to content

Commit deeb13b

Browse files
committed
feat(filterWidget): add modalHeader, editButtonLabel, and filterDefaultFieldNameSourceFieldNames properties to FilterAndColumnsSetupData (output widget data for WidgetType.FILTER_AND_COLUMNS_SETUP)
1 parent 736aca6 commit deeb13b

File tree

1 file changed

+128
-0
lines changed

1 file changed

+128
-0
lines changed

qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/model/dashboard/widgets/FilterAndColumnsSetupData.java

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323

2424

2525
import java.util.List;
26+
import java.util.Map;
2627

2728

2829
/*******************************************************************************
@@ -40,6 +41,8 @@ public class FilterAndColumnsSetupData extends QWidgetData
4041
private List<String> filterDefaultFieldNames;
4142
private List<String> omitExposedJoins;
4243

44+
private Map<String, String> filterDefaultFieldNameSourceFieldNames;
45+
4346
private Boolean isApiVersioned = false;
4447
private String apiName;
4548
private String apiPath;
@@ -48,6 +51,9 @@ public class FilterAndColumnsSetupData extends QWidgetData
4851
private String filterFieldName = "queryFilterJson";
4952
private String columnFieldName = "columnsJson";
5053

54+
private String modalHeader;
55+
private String editButtonLabel;
56+
5157

5258

5359
/*******************************************************************************
@@ -521,4 +527,126 @@ public FilterAndColumnsSetupData withOmitExposedJoins(List<String> omitExposedJo
521527
}
522528

523529

530+
531+
/*******************************************************************************
532+
* Getter for modalHeader
533+
* @see #withModalHeader(String)
534+
*******************************************************************************/
535+
public String getModalHeader()
536+
{
537+
return (this.modalHeader);
538+
}
539+
540+
541+
542+
/*******************************************************************************
543+
* Setter for modalHeader
544+
* @see #withModalHeader(String)
545+
*******************************************************************************/
546+
public void setModalHeader(String modalHeader)
547+
{
548+
this.modalHeader = modalHeader;
549+
}
550+
551+
552+
553+
/*******************************************************************************
554+
* Fluent setter for modalHeader
555+
*
556+
* @param modalHeader
557+
* Customize the header text for the modal dialog that appears when editing filters.
558+
* Default value depends on the frontend, but "Edit Filters" is a reasonable default.
559+
* @return this
560+
*******************************************************************************/
561+
public FilterAndColumnsSetupData withModalHeader(String modalHeader)
562+
{
563+
this.modalHeader = modalHeader;
564+
return (this);
565+
}
566+
567+
568+
569+
/*******************************************************************************
570+
* Getter for editButtonLabel
571+
* @see #withEditButtonLabel(String)
572+
*******************************************************************************/
573+
public String getEditButtonLabel()
574+
{
575+
return (this.editButtonLabel);
576+
}
577+
578+
579+
580+
/*******************************************************************************
581+
* Setter for editButtonLabel
582+
* @see #withEditButtonLabel(String)
583+
*******************************************************************************/
584+
public void setEditButtonLabel(String editButtonLabel)
585+
{
586+
this.editButtonLabel = editButtonLabel;
587+
}
588+
589+
590+
591+
/*******************************************************************************
592+
* Fluent setter for editButtonLabel
593+
*
594+
* @param editButtonLabel
595+
* Customize the text text for an edit button to be displayed with the widget.
596+
* Default value depends on the frontend, but "Edit Filters" is a reasonable default.
597+
* @return this
598+
*******************************************************************************/
599+
public FilterAndColumnsSetupData withEditButtonLabel(String editButtonLabel)
600+
{
601+
this.editButtonLabel = editButtonLabel;
602+
return (this);
603+
}
604+
605+
606+
607+
/*******************************************************************************
608+
* Getter for filterDefaultFieldNameSourceFieldNames
609+
* @see #withFilterDefaultFieldNameSourceFieldNames(Map)
610+
*******************************************************************************/
611+
public Map<String, String> getFilterDefaultFieldNameSourceFieldNames()
612+
{
613+
return (this.filterDefaultFieldNameSourceFieldNames);
614+
}
615+
616+
617+
618+
/*******************************************************************************
619+
* Setter for filterDefaultFieldNameSourceFieldNames
620+
* @see #withFilterDefaultFieldNameSourceFieldNames(Map)
621+
*******************************************************************************/
622+
public void setFilterDefaultFieldNameSourceFieldNames(Map<String, String> filterDefaultFieldNameSourceFieldNames)
623+
{
624+
this.filterDefaultFieldNameSourceFieldNames = filterDefaultFieldNameSourceFieldNames;
625+
}
626+
627+
628+
629+
/*******************************************************************************
630+
* Fluent setter for filterDefaultFieldNameSourceFieldNames
631+
*
632+
* @param filterDefaultFieldNameSourceFieldNames
633+
* If there are filterDefaultFieldNames - the field names in that list must be
634+
* field names from the table being filtered. However - in case the source values
635+
* for those fields come from fields on the record with different names, then this
636+
* map allows you to specify the source field names for each filterDefaultFieldName.
637+
*
638+
* <p>
639+
* For example, if the base table has a field "type", and the table being filtered
640+
* has a field "typeName", then the map would contain an entry with key "type" and
641+
* value "typeName" (and filterDefaultFieldNames would contain "type").
642+
* </p>
643+
* @return this
644+
*******************************************************************************/
645+
public FilterAndColumnsSetupData withFilterDefaultFieldNameSourceFieldNames(Map<String, String> filterDefaultFieldNameSourceFieldNames)
646+
{
647+
this.filterDefaultFieldNameSourceFieldNames = filterDefaultFieldNameSourceFieldNames;
648+
return (this);
649+
}
650+
651+
524652
}

0 commit comments

Comments
 (0)