Represents a Search Modal component.

  • Type Parameters

    • FilterData extends {} = any

      The type of filter data.

    • RowData extends IRowData = any

      The type of row data.

    • Payload extends unknown = any

      The type of payload.

    • Field extends IField<any, any> = IField<FilterData, Payload>

      The type of field.

    Parameters

    • props: ISearchModalProps<FilterData, RowData, Payload, Field>

      The props of the component.

      Represents the properties for the Search Modal component.

      • Optionalactions?: IListAction<RowData, Payload>[]
      • OptionalactionSubject?: TSubject<string>

        Subject for trigger action externally

      • OptionalAfterActionList?: any

        Represents a React component for AfterActionList.

        FilterData - The type of filter data.

        RowData - The type of row data.

        Payload - The type of payload.

      • OptionalAfterChips?: any

        Represents a React component that will be rendered after the chip list.

      • OptionalAfterOperationList?: any

        Represents the AfterOperationList component.

        This component is a React component that renders a list of actions to be displayed after a specific operation. It is used to render the list of available actions, typically used for filtering or manipulating data.

        The type of data used for filtering.

        The type of data associated with each row.

        The type of payload used for each action.

      • OptionalAfterTitle?: any
      • OptionalapiRef?: any
      • OptionalBeforeActionList?: any

        Represents a React component type for BeforeActionList.

        The type of data used for filtering.

        The type of data used for individual rows.

        The type of payload for action.

      • OptionalBeforeOperationList?: any

        A React component that represents a list of position actions before an operation.

        The type of data used for filtering the list

        The type of data used for each row in the list

        The type of data sent as a payload during an operation

      • OptionalBeforeSelectionLabel?: any

        Represents a React component type for BeforeSelectionLabel.

        The type of data used for filtering.

        The type of data used for individual rows.

        The type of payload for action.

      • OptionalBeforeTitle?: any
      • OptionalchipData?: Partial<Record<keyof RowData, boolean>>
      • Optionalchips?: IListChip<RowData>[]
      • OptionalclassName?: string
      • columns: IColumn<FilterData, RowData, Payload>[]
      • OptionalcustomTemplate?: any

        Represents a custom template component for rendering a tile.

        The type of data for the tile row.

        The type of payload associated with the tile.

      • OptionalcustomTemplateMinHeight?: number

        Represents the minimum height for a custom template.

      • Optionaldata?: RowId[]
      • OptionaldenseHeight?: number

        Represents the height of an element, measured in pixels.

      • Optionalfallback?: (e: Error) => void
      • Optionalfeatures?: string[] | Record<string, Value> | () => string[] | Record<string, Value>
      • OptionalfetchDebounce?: number

        Represents the debounce time in milliseconds for performing fetch requests.

      • OptionalfilterData?: Partial<FilterData>
      • OptionalfilterLabel?: string
      • Optionalfilters?: Field[]
      • OptionalfullScreen?: boolean
      • handler: ListHandler<FilterData, RowData>
      • Optionalhidden?: boolean
      • OptionalincomingTransform?: (data: any, payload: any) => FilterData
      • OptionalisBaseline?: (field: IField) => boolean
      • OptionalisBaselineForRoot?: (field: IField) => boolean
      • OptionalisChooser?: boolean
      • OptionalisCustom?: boolean
      • OptionalisDense?: boolean
      • OptionalisInfinite?: boolean
      • OptionalisPageItem?: boolean
      • OptionalisRowDisabled?: (
            row: RowData,
            params: {
                chips: Partial<Record<keyof RowData, boolean>>;
                filterData: FilterData;
                pagination: ListHandlerPagination;
                payload: Payload;
                search: string;
                sortModel: ListHandlerSortModel<RowData>;
            },
        ) => boolean

        Determines if a row is disabled based on various parameters.

      • OptionalitemSx?: any
      • OptionallabelDisplayedRows?: (
            paginationInfo: {
                count: number;
                from: number;
                page: number;
                to: number;
            },
        ) => string

        Returns a string containing information about the displayed rows label.

      • Optionallimit?: number
      • OptionalmodalSizeRequest?: (size: ISize) => { height: number; sx?: any; width: number }

        Custom sizeRequest for modal filters

      • OptionalnoDisplayedRows?: boolean
      • OptionalonAction?: (
            action: string,
            selectedRows: RowData[],
            reload: (keepPagination?: boolean) => Promise<void>,
        ) => void
      • OptionalonChange?: (data: null | RowId[], initial: boolean) => void
      • OptionalonChipsChange?: (data: Partial<Record<keyof RowData, boolean>>) => void
      • OptionalonClose?: () => void
      • OptionalonColumnAction?: (
            field: string,
            action: string,
            selectedRows: RowData[],
            reload: (keepPagination?: boolean) => Promise<void>,
        ) => void
      • OptionalonFilterChange?: (data: FilterData) => void
      • OptionalonLimitChange?: (limit: number) => void
      • OptionalonLoadEnd?: (isOk: boolean) => void
      • OptionalonLoadStart?: () => void
      • OptionalonOperation?: (
            action: string,
            selectedRows: RowData[],
            isAll: boolean,
            reload: (keepPagination?: boolean) => Promise<void>,
        ) => void
      • OptionalonPageChange?: (page: number) => void
      • OptionalonRowAction?: (
            action: string,
            row: RowData,
            reload: (keepPagination?: boolean) => Promise<void>,
        ) => void
      • OptionalonRows?: (rows: RowData[]) => void
      • OptionalonSearchChange?: (search: string) => void
      • OptionalonSortModelChange?: (sort: ListHandlerSortModel<RowData>) => void
      • OptionalonSubmit?: (data: null | RowId[], payload: Payload) => boolean | Promise<boolean>
      • openSubject: TBehaviorSubject<boolean>
      • Optionaloperations?: IListOperation<RowData, Payload>[]
      • OptionaloutgoingTransform?: (data: any, payload: any) => FilterData
      • Optionalpage?: number
      • OptionalpageItemTemplate?: any

        Represents a custom template component for rendering a tile.

        The type of data for the tile row.

        The type of payload associated with the tile.

      • OptionalpageItemTemplateMinHeight?: number

        Represents the minimum height for a page template.

      • Optionalpayload?: Payload | () => Payload
      • OptionalreadTransform?: (
            value: string | string[],
            name: string,
            data: FilterData,
            payload: any,
        ) => Value
      • OptionalreloadSubject?: TSubject<void>
      • OptionalrerenderSubject?: TSubject<void>
      • OptionalrowActions?: IListRowAction<any, any>[]
      • OptionalrowColor?: (row: RowData) => string | (row: RowData) => Promise<string>
      • OptionalrowMark?: (row: RowData) => string | (row: RowData) => Promise<string>
      • OptionalrowsPerPage?: (number | { label: string; value: number })[]
      • Optionalsearch?: string
      • OptionalselectionLabel?: (size: number) => string | Promise<string>
      • OptionalselectionMode?: SelectionMode
      • OptionalsetFilterDataSubject?: TSubject<FilterData>
      • OptionalsetLimitSubject?: TSubject<number>
      • OptionalsetPageSubject?: TSubject<number>
      • OptionalsetRowsSubject?: TSubject<RowData[]>
      • OptionalsizeByElement?: boolean
      • OptionalsizeRequest?: (size: ISize) => { height: number; sx?: any; width: number }
      • Optionalslots?: Partial<ISlotFactoryContext>
      • OptionalsortModel?: ListHandlerSortModel<RowData>
      • Optionalstyle?: any
      • OptionalsubmitIcon?: any
      • OptionalsubmitLabel?: string
      • OptionalthrowError?: boolean
      • OptionaltileMode?: TileMode

        Tiling mode for custom template

      • Optionaltitle?: string
      • OptionalwithAllListOperations?: boolean
      • OptionalwithArrowPagination?: boolean
      • OptionalwithHideIfEmpty?: boolean
      • OptionalwithInitialLoader?: boolean
      • OptionalwithLoader?: boolean
      • OptionalwithMobile?: boolean
      • OptionalwithOutlinePaper?: boolean
      • OptionalwithRangePagination?: boolean
      • OptionalwithRawSearch?: boolean
      • OptionalwithRestorePos?: boolean
      • OptionalwithSearch?: boolean
      • OptionalwithSelectOnRowClick?: boolean
      • OptionalwithSingleChip?: boolean
      • OptionalwithSingleSort?: boolean
      • OptionalwithToggledFilters?: boolean
      • OptionalwithTransparentPaper?: boolean
      • OptionalwriteTransform?: (
            value: string | string[],
            name: string,
            data: FilterData,
            payload: any,
        ) => Value

    Returns Element

    The Search Modal component.