react-crud-mui 0.0.1-beta.1 → 0.0.1-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/{settings-provider/SettingsProvider.d.ts → crud-mui-provider/CrudMuiProvider.d.ts} +3 -3
- package/dist/components/{settings-provider → crud-mui-provider}/settings.d.ts +0 -2
- package/dist/components/detail-page/hooks/useDetailPageModal.d.ts +1 -1
- package/dist/components/form/Field.d.ts +2 -0
- package/dist/components/form/controls/FormSearchInput.d.ts +7 -0
- package/dist/components/i18n/hooks/useLangWatch.d.ts +5 -0
- package/dist/components/i18n/resources/en.json.d.ts +1 -0
- package/dist/components/i18n/resources/tr.json.d.ts +1 -0
- package/dist/components/labels/MailFormat.d.ts +7 -0
- package/dist/components/labels/PhoneFormat.d.ts +8 -0
- package/dist/components/labels/index.d.ts +4 -0
- package/dist/components/list-page/constants.d.ts +1 -1
- package/dist/components/list-page/hooks/useListPage.d.ts +1 -2
- package/dist/components/list-page/hooks/useURLSearchFilter.d.ts +17 -9
- package/dist/components/list-page/pages/ListPage.d.ts +2 -2
- package/dist/components/list-page/pages/ListPageContent.d.ts +6 -3
- package/dist/components/list-page/pages/ListPageFilter.d.ts +7 -14
- package/dist/components/list-page/pages/ListPageForm.d.ts +2 -2
- package/dist/components/list-page/pages/ListPageRoute.d.ts +2 -3
- package/dist/components/misc/removeFalsy.d.ts +3 -0
- package/dist/components/page/Page.d.ts +2 -2
- package/dist/components/page/components/DefaultTabs.d.ts +4 -0
- package/dist/components/table/Table.d.ts +1 -1
- package/dist/components/table/components/EmptyText.d.ts +2 -1
- package/dist/components/theme/index.d.ts +2 -0
- package/dist/components/theme/provider/ThemeProvider.d.ts +1 -1
- package/dist/coreui.js +12249 -12385
- package/dist/index.d.ts +4 -6
- package/dist/style.css +1 -1
- package/package.json +4 -6
- package/dist/components/query/axios/index.d.ts +0 -2
- package/dist/components/query/axios/paramsSerializer.d.ts +0 -3
- package/dist/components/query/index.d.ts +0 -4
- package/dist/components/query/useAppLazyQuery.d.ts +0 -85
- package/dist/components/query/useAppMutation.d.ts +0 -10
- package/dist/components/query/useAppQuery.d.ts +0 -13
- package/dist/components/query/useAppQueryKey.d.ts +0 -4
- package/dist/components/query/useCommonHeaders.d.ts +0 -3
- package/dist/components/query/useMakeFullURI.d.ts +0 -10
- /package/dist/components/{settings-provider → crud-mui-provider}/SettingsContext.d.ts +0 -0
- /package/dist/components/{settings-provider → crud-mui-provider}/hooks/useSettings.d.ts +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { PropsWithChildren } from 'react';
|
|
2
2
|
import { Settings } from './settings';
|
|
3
|
-
export type
|
|
3
|
+
export type CrudMuiProviderProps = Partial<Settings>;
|
|
4
4
|
/**
|
|
5
5
|
* All Providers needed for @arkas/ui components.This is client component obviously
|
|
6
6
|
* @description Respectively Antd ConfigProvider => Emotion themeProvider => App =>
|
|
7
7
|
*/
|
|
8
|
-
declare function
|
|
9
|
-
export default
|
|
8
|
+
declare function CrudMuiProvider({ children, validationOptions, ...rest }: PropsWithChildren<CrudMuiProviderProps>): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export default CrudMuiProvider;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { RawAxiosRequestHeaders } from 'axios';
|
|
2
1
|
import { ValidationOptions } from '../form/hooks/useForm';
|
|
3
2
|
import { ThemeSettings } from '../theme';
|
|
4
3
|
export interface CommonHotKeys {
|
|
@@ -25,7 +24,6 @@ export interface CommonHotKeys {
|
|
|
25
24
|
tabchangePrev: string;
|
|
26
25
|
}
|
|
27
26
|
export type Settings = {
|
|
28
|
-
requestCommonHeaders?: RawAxiosRequestHeaders;
|
|
29
27
|
enableDevTool?: boolean;
|
|
30
28
|
appTitle?: string;
|
|
31
29
|
uniqueIdParamName: string;
|
|
@@ -425,7 +425,7 @@ declare function useDetailPageModal<TModel extends FieldValues>({ models, unique
|
|
|
425
425
|
readonly showHeader?: boolean;
|
|
426
426
|
readonly disableShortCuts?: boolean;
|
|
427
427
|
readonly selectedTabIndex?: number;
|
|
428
|
-
readonly onTabChanged?: (
|
|
428
|
+
readonly onTabChanged?: (selected: import('../../page/components/DefaultTabs').TabChangedPayload) => void;
|
|
429
429
|
readonly onTabs?: (props: import('../../page/components/DefaultTabs').DefaultTabsProps) => import('react').ReactNode;
|
|
430
430
|
readonly enableClose?: boolean;
|
|
431
431
|
readonly enableCopy?: boolean;
|
|
@@ -12,6 +12,7 @@ import { default as FormMoneyInput } from './controls/FormMoneyInput';
|
|
|
12
12
|
import { default as FormNumberInput } from './controls/FormNumberInput';
|
|
13
13
|
import { default as FormPhoneInput } from './controls/FormPhoneInput';
|
|
14
14
|
import { default as FormRadioGroup } from './controls/FormRadioGroup';
|
|
15
|
+
import { default as FormSearchInput } from './controls/FormSearchInput';
|
|
15
16
|
import { default as FormSelect } from './controls/FormSelect';
|
|
16
17
|
import { default as FormSwitch } from './controls/FormSwitch';
|
|
17
18
|
export type ControlCommonProps<TFieldValues extends FieldValues = FieldValues> = {
|
|
@@ -34,6 +35,7 @@ export type FieldProps<TFieldValues extends FieldValues = FieldValues> = Omit<Us
|
|
|
34
35
|
declare function Field<TFieldValues extends FieldValues = FieldValues>({ children, control, defaultValue, disabled: fieldDisabled, name, render, rules, shouldUnregister, formControlProps, }: FieldProps<TFieldValues>): string | number | boolean | Iterable<ReactNode> | import("react/jsx-runtime").JSX.Element | null | undefined;
|
|
35
36
|
declare namespace Field {
|
|
36
37
|
var Input: typeof FormInput;
|
|
38
|
+
var Search: typeof FormSearchInput;
|
|
37
39
|
var NumberInput: typeof FormNumberInput;
|
|
38
40
|
var MoneyInput: typeof FormMoneyInput;
|
|
39
41
|
var PhoneInput: typeof FormPhoneInput;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { FieldValues } from 'react-hook-form';
|
|
2
|
+
import { SearchInputProps } from '../../search-input/SearchInput';
|
|
3
|
+
import { ControlCommonProps } from '../Field';
|
|
4
|
+
export interface FormInputProps<TFieldValues extends FieldValues = FieldValues> extends Omit<SearchInputProps, 'name' | 'onSearch'>, ControlCommonProps<TFieldValues> {
|
|
5
|
+
}
|
|
6
|
+
declare function FormSearchInput<TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, ...inputProps }: FormInputProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default FormSearchInput;
|
|
@@ -46,6 +46,7 @@ declare const _default: {
|
|
|
46
46
|
"uniqueconstraint": "Unique check constraint on '{{fields}}' fields",
|
|
47
47
|
"leave": "Leave",
|
|
48
48
|
"finish": "Finish",
|
|
49
|
+
"search": "Search...",
|
|
49
50
|
"listpage.createnewitem": "Create new item",
|
|
50
51
|
"listpage.extrafilter.columnOptions": "Table columns options",
|
|
51
52
|
"listpage.listbuttons.callout.search.title": "Search failed",
|
|
@@ -47,6 +47,7 @@ declare const _default: {
|
|
|
47
47
|
"uniqueconstraint": "'{{fields}}' alanlarında benzersiz alan kısıtı mevcut",
|
|
48
48
|
"leave": "Ayrıl",
|
|
49
49
|
"finish": "Son",
|
|
50
|
+
"search": "Ara...",
|
|
50
51
|
"listpage.createnewitem": "Yeni kayıt yarat",
|
|
51
52
|
"listpage.extrafilter.columnOptions": "Liste kolon ayarları",
|
|
52
53
|
"listpage.listbuttons.callout.search.title": "Arama başarısız",
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { BoxProps } from '@mui/material';
|
|
2
|
+
interface MailLabelProps extends BoxProps {
|
|
3
|
+
value?: string;
|
|
4
|
+
showIcon?: boolean;
|
|
5
|
+
}
|
|
6
|
+
declare function MailFormat({ value: email, showIcon, ...rest }: MailLabelProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default MailFormat;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { BoxProps } from '@mui/material';
|
|
2
|
+
interface PhoneLabelProps extends BoxProps {
|
|
3
|
+
value?: string;
|
|
4
|
+
showIcon?: boolean;
|
|
5
|
+
}
|
|
6
|
+
export declare const formatPhoneNumber: (phoneNumber: string) => string;
|
|
7
|
+
declare function PhoneFormat({ value: phoneNumber, showIcon, ...rest }: PhoneLabelProps): import("react/jsx-runtime").JSX.Element | null;
|
|
8
|
+
export default PhoneFormat;
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { default as CurrencyFormat } from './CurrencyFormat';
|
|
2
2
|
import { default as DateFormat } from './DateFormat';
|
|
3
|
+
import { default as MailFormat } from './MailFormat';
|
|
3
4
|
import { default as NumberFormat } from './NumberFormat';
|
|
5
|
+
import { default as PhoneFormat } from './PhoneFormat';
|
|
4
6
|
import * as React from 'react';
|
|
5
7
|
declare const Labels: React.FunctionComponent & {
|
|
6
8
|
DateFormat: typeof DateFormat;
|
|
7
9
|
CurrencyFormat: typeof CurrencyFormat;
|
|
8
10
|
NumberFormat: typeof NumberFormat;
|
|
11
|
+
PhoneFormat: typeof PhoneFormat;
|
|
12
|
+
MailFormat: typeof MailFormat;
|
|
9
13
|
};
|
|
10
14
|
export default Labels;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare const LISTPAGE_FORM_NAME = "listpage-filter-form";
|
|
2
2
|
export declare const EXTRA_FILTER_FORM_GROUP = "extra-filter-group";
|
|
3
|
-
export declare const
|
|
3
|
+
export declare const DEFAULT_PAGEINDEX = 0;
|
|
4
4
|
export declare const DEFAULT_PAGESIZE = 25;
|
|
5
5
|
export declare const MAX_PAGE_SIZE = 999;
|
|
6
6
|
export declare const SCROLL_ELEMENT_NAME = "scroll-to-list";
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { FieldValues } from 'react-hook-form';
|
|
3
3
|
import { ListPageProps } from '../pages/ListPage';
|
|
4
|
-
import { ListPageModel } from '../pages/ListPageFilter';
|
|
5
4
|
export type ListPageContextType<TModel extends FieldValues> = {
|
|
6
|
-
data?:
|
|
5
|
+
data?: TModel[];
|
|
7
6
|
/**
|
|
8
7
|
* Clear all form controls in filter
|
|
9
8
|
*/
|
|
@@ -1,11 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { FieldValues } from 'react-hook-form';
|
|
2
|
+
import { default as qs } from 'qs';
|
|
3
|
+
import { ListPageMeta } from '../pages/ListPageFilter';
|
|
4
|
+
declare function useURLSearchFilter<TFilter extends FieldValues>(): {
|
|
5
|
+
getFiltersInQS: () => {
|
|
6
|
+
filter: {
|
|
7
|
+
[key: string]: string | string[] | qs.ParsedQs | qs.ParsedQs[] | undefined;
|
|
8
|
+
};
|
|
9
|
+
meta: {
|
|
10
|
+
pagination: {
|
|
11
|
+
pageIndex: number;
|
|
12
|
+
pageSize: number;
|
|
13
|
+
};
|
|
14
|
+
sorting: string | string[] | qs.ParsedQs | qs.ParsedQs[];
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
setFiltersInQS: (filter: TFilter, _meta: ListPageMeta) => void;
|
|
8
18
|
};
|
|
9
|
-
export type FilterSource<TFilter> = Partial<Record<keyof TFilter, boolean | AdvancedFilterSource>>;
|
|
10
|
-
declare function useURLSearchFilter<TFilter>({ enableQueryStringFilter, params, }: UseURLSearchFilterOptions<TFilter>): () => TFilter | undefined;
|
|
11
19
|
export default useURLSearchFilter;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FieldValues } from 'react-hook-form';
|
|
2
|
-
import {
|
|
2
|
+
import { ListPageMeta } from './ListPageFilter';
|
|
3
3
|
import { ListPageFormProps } from './ListPageForm';
|
|
4
4
|
import { default as ListPageModal } from './ListPageModal';
|
|
5
5
|
import { default as ListPageRoute } from './ListPageRoute';
|
|
@@ -8,7 +8,7 @@ export interface ListPageProps<TModel extends FieldValues, TFilter extends Field
|
|
|
8
8
|
/**
|
|
9
9
|
* Data fetcher function with given filter
|
|
10
10
|
*/
|
|
11
|
-
onNeedData?: (filter:
|
|
11
|
+
onNeedData?: (filter: TFilter, _meta: ListPageMeta) => void;
|
|
12
12
|
}
|
|
13
13
|
declare function ListPage<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues>(props: ListPageProps<TModel, TFilter, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
|
|
14
14
|
declare namespace ListPage {
|
|
@@ -9,7 +9,6 @@ import { TableColumn, TableProps } from '../../table/Table';
|
|
|
9
9
|
import { ServerError } from '../../utils';
|
|
10
10
|
import { ListPageCommandsProps } from '../components/ListPageCommands';
|
|
11
11
|
import { ListPageHeaderProps } from '../components/ListPageHeader';
|
|
12
|
-
import { ListPageModel } from './ListPageFilter';
|
|
13
12
|
export type ListPageWrapperLayoutProps = {
|
|
14
13
|
content: ReactNode;
|
|
15
14
|
pageContent: ReactNode;
|
|
@@ -93,7 +92,11 @@ export interface ListPageContentProps<TModel extends FieldValues, TDetailPageMod
|
|
|
93
92
|
/**
|
|
94
93
|
* Datasource
|
|
95
94
|
*/
|
|
96
|
-
data?:
|
|
95
|
+
data?: TModel[];
|
|
96
|
+
/**
|
|
97
|
+
* Total data row count of paging
|
|
98
|
+
*/
|
|
99
|
+
dataCount?: number;
|
|
97
100
|
/**
|
|
98
101
|
* Custom list region component
|
|
99
102
|
*/
|
|
@@ -128,5 +131,5 @@ export interface ListPageContentProps<TModel extends FieldValues, TDetailPageMod
|
|
|
128
131
|
*/
|
|
129
132
|
onDelete?: (model: TModel) => void;
|
|
130
133
|
}
|
|
131
|
-
declare function ListPageContent<TModel extends FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ activeSegmentIndex, actionCommandsProps, alerts, autoSearch, columns, createCommandLabel, data, detailPage: EmbededDetailPageComponent, disabled, disableShortCuts, enableActionCommands, enableClear, enableCreateItem, enableExport, enableSearch, error, filterContent, hotkeyScopes, list: ListComponent, loading, onClear, onClose, onCommands, onCreateItem, onDelete, onExcelExport, onExtraCommands, onHeader, onSearch, onTabChanged, tableProps, onWrapperLayout, showHeader, ...pageProps }: ListPageContentProps<TModel, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
|
|
134
|
+
declare function ListPageContent<TModel extends FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ activeSegmentIndex, actionCommandsProps, alerts, autoSearch, columns, createCommandLabel, data, dataCount, detailPage: EmbededDetailPageComponent, disabled, disableShortCuts, enableActionCommands, enableClear, enableCreateItem, enableExport, enableSearch, error, filterContent, hotkeyScopes, list: ListComponent, loading, onClear, onClose, onCommands, onCreateItem, onDelete, onExcelExport, onExtraCommands, onHeader, onSearch, onTabChanged, tableProps, onWrapperLayout, showHeader, ...pageProps }: ListPageContentProps<TModel, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
|
|
132
135
|
export default ListPageContent;
|
|
@@ -1,24 +1,13 @@
|
|
|
1
1
|
import { DeepPartial, FieldValues } from 'react-hook-form';
|
|
2
2
|
import { TableState } from '@tanstack/react-table';
|
|
3
3
|
import { UseFormReturn } from '../../form/hooks/useForm';
|
|
4
|
+
import { TabChangedPayload } from '../../page/components/DefaultTabs';
|
|
4
5
|
import { TableProps } from '../../table/Table';
|
|
5
6
|
import { ListPageContentProps } from './ListPageContent';
|
|
6
|
-
export
|
|
7
|
-
data: TModel[];
|
|
8
|
-
dataCount: number;
|
|
9
|
-
}
|
|
10
|
-
export type ListPageModel<TModel> = PagingListModel<TModel>;
|
|
11
|
-
export type ListPageMeta = Pick<TableState, 'pagination' | 'sorting' | 'columnFilters'> & {
|
|
12
|
-
segmentIndex: number;
|
|
7
|
+
export type ListPageMeta = Pick<TableState, 'pagination' | 'sorting' | 'columnFilters'> & TabChangedPayload & {
|
|
13
8
|
reason: SearchReason;
|
|
14
9
|
};
|
|
15
10
|
export type SearchReason = 'search' | 'sorting' | 'pagination' | 'init' | 'clear' | 'export' | 'tabChanged' | 'columnfilter';
|
|
16
|
-
export type ListPageFilter<TFilter extends FieldValues> = TFilter & {
|
|
17
|
-
_meta?: ListPageMeta;
|
|
18
|
-
};
|
|
19
|
-
export type NeedDataPayload<TFilter extends FieldValues> = {
|
|
20
|
-
filter: ListPageFilter<TFilter>;
|
|
21
|
-
};
|
|
22
11
|
export interface ListPageFilterProps<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues> extends Omit<ListPageContentProps<TModel, TDetailPageModel>, 'onSearch' | 'onExcelExport' | 'tableProps' | 'onTabChanged'> {
|
|
23
12
|
/**
|
|
24
13
|
* Table states as partial for providing extra props to table
|
|
@@ -31,7 +20,7 @@ export interface ListPageFilterProps<TModel extends FieldValues, TFilter extends
|
|
|
31
20
|
/**
|
|
32
21
|
* Form filter values change event
|
|
33
22
|
*/
|
|
34
|
-
onChange?: (filter: TFilter, meta
|
|
23
|
+
onChange?: (filter: TFilter, meta: DeepPartial<ListPageMeta>) => void;
|
|
35
24
|
/**
|
|
36
25
|
* Default index of tab
|
|
37
26
|
*/
|
|
@@ -40,6 +29,10 @@ export interface ListPageFilterProps<TModel extends FieldValues, TFilter extends
|
|
|
40
29
|
* Meta data of listpage
|
|
41
30
|
*/
|
|
42
31
|
meta: ListPageMeta;
|
|
32
|
+
/**
|
|
33
|
+
* Meta data of listpage
|
|
34
|
+
*/
|
|
35
|
+
defaultMeta?: DeepPartial<ListPageMeta>;
|
|
43
36
|
}
|
|
44
37
|
declare function ListPageFilter<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues>(props: ListPageFilterProps<TModel, TFilter, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
|
|
45
38
|
export default ListPageFilter;
|
|
@@ -2,14 +2,14 @@ import { FieldValues } from 'react-hook-form';
|
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import { UseFormOptions, UseFormReturn, ValidationOptions } from '../../form/hooks/useForm';
|
|
4
4
|
import { DeepNullable } from '../../utils';
|
|
5
|
-
import { ListPageFilterProps
|
|
5
|
+
import { ListPageFilterProps } from './ListPageFilter';
|
|
6
6
|
export interface ListPageFormProps<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues> extends Omit<ListPageFilterProps<TModel, TFilter, TDetailPageModel>, 'form'>, Partial<Pick<UseFormOptions<TFilter>, 'schema'>> {
|
|
7
7
|
form?: UseFormReturn<TFilter>;
|
|
8
8
|
schema?: z.ZodType<Partial<TFilter>>;
|
|
9
9
|
/**
|
|
10
10
|
* External filter criteries
|
|
11
11
|
*/
|
|
12
|
-
defaultFilter?:
|
|
12
|
+
defaultFilter?: Partial<TFilter>;
|
|
13
13
|
/**
|
|
14
14
|
* Default form fields values
|
|
15
15
|
*/
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { FieldValues } from 'react-hook-form';
|
|
2
2
|
import { UseSegmentParamsOptions } from '../../detail-page/hooks/useSegmentParams';
|
|
3
|
-
import { UseURLSearchFilterOptions } from '../hooks/useURLSearchFilter';
|
|
4
3
|
import { ListPageProps } from './ListPage';
|
|
5
4
|
export interface ListPageRouteProps<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues> extends ListPageProps<TModel, TFilter, TDetailPageModel>, Omit<UseSegmentParamsOptions, 'paths' | 'enableSegmentRouting'> {
|
|
6
|
-
enableQueryStringFilter?:
|
|
5
|
+
enableQueryStringFilter?: boolean;
|
|
7
6
|
}
|
|
8
|
-
declare function ListPageRoute<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ enableQueryStringFilter, enableNestedSegments, fallbackSegmentIndex, defaultFilter, tabs, onNeedData, ...listPageProps }: ListPageRouteProps<TModel, TFilter, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
declare function ListPageRoute<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ enableQueryStringFilter, enableNestedSegments, fallbackSegmentIndex, defaultFilter, tabs, onNeedData, defaultMeta, ...listPageProps }: ListPageRouteProps<TModel, TFilter, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
|
|
9
8
|
export default ListPageRoute;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { HeaderProps } from '../header/Header';
|
|
3
3
|
import { default as DefaultLayout, PageLayoutProps } from './components/DefaultLayout';
|
|
4
|
-
import { default as DefaultTabs, DefaultTabsProps, TabPane } from './components/DefaultTabs';
|
|
4
|
+
import { default as DefaultTabs, DefaultTabsProps, TabChangedPayload, TabPane } from './components/DefaultTabs';
|
|
5
5
|
import { default as PageContent } from './components/PageContent';
|
|
6
6
|
import { default as PageDivider } from './components/PageDivider';
|
|
7
7
|
import { PaddingSize } from './components/PageProvider';
|
|
@@ -22,7 +22,7 @@ export interface PageProps extends Omit<HeaderProps, 'rightContent'> {
|
|
|
22
22
|
disableShortCuts?: boolean;
|
|
23
23
|
tabs?: TabPane[];
|
|
24
24
|
selectedTabIndex?: number;
|
|
25
|
-
onTabChanged?: (
|
|
25
|
+
onTabChanged?: (selected: TabChangedPayload) => void;
|
|
26
26
|
onTabs?: (props: DefaultTabsProps) => ReactNode;
|
|
27
27
|
}
|
|
28
28
|
export declare const PagePadding: Record<PaddingSize, number>;
|
|
@@ -7,5 +7,9 @@ export type TabPane = Omit<TabProps, 'children' | 'key'> & {
|
|
|
7
7
|
export interface DefaultTabsProps extends TabsProps {
|
|
8
8
|
tabs: TabPane[];
|
|
9
9
|
}
|
|
10
|
+
export type TabChangedPayload = {
|
|
11
|
+
selectedTabIndex: number;
|
|
12
|
+
selectedTabValue: string;
|
|
13
|
+
};
|
|
10
14
|
declare function DefaultTabs({ tabs, ...tabsProps }: DefaultTabsProps): import("react/jsx-runtime").JSX.Element;
|
|
11
15
|
export default DefaultTabs;
|
|
@@ -28,7 +28,7 @@ export type TableColumn<D extends object = object> = {
|
|
|
28
28
|
icon?: ReactNode;
|
|
29
29
|
export?: boolean;
|
|
30
30
|
} & ColumnDef<D>;
|
|
31
|
-
export interface TableProps<TData extends FieldValues> extends Omit<TableOptions<TData>, 'getCoreRowModel' | 'columns'>, Partial<Pick<EmptyTextProps, 'emptyText' | 'showEmptyImage'>>, Pick<MuiTableProps, 'size' | 'stickyHeader' | 'sx'> {
|
|
31
|
+
export interface TableProps<TData extends FieldValues> extends Omit<TableOptions<TData>, 'getCoreRowModel' | 'columns'>, Partial<Pick<EmptyTextProps, 'emptyText' | 'showEmptyImage' | 'emptyImageUrl'>>, Pick<MuiTableProps, 'size' | 'stickyHeader' | 'sx'> {
|
|
32
32
|
autoFocus?: boolean;
|
|
33
33
|
bordered?: boolean;
|
|
34
34
|
columns: TableColumn<TData>[];
|
|
@@ -3,6 +3,7 @@ import { BoxProps } from '@mui/material';
|
|
|
3
3
|
export interface EmptyTextProps extends BoxProps {
|
|
4
4
|
emptyText: React.ReactNode;
|
|
5
5
|
showEmptyImage?: boolean;
|
|
6
|
+
emptyImageUrl?: string;
|
|
6
7
|
}
|
|
7
|
-
declare function EmptyText({ emptyText, showEmptyImage, children, ...boxProps }: PropsWithChildren<EmptyTextProps>): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
declare function EmptyText({ emptyText, showEmptyImage, children, emptyImageUrl, ...boxProps }: PropsWithChildren<EmptyTextProps>): import("react/jsx-runtime").JSX.Element;
|
|
8
9
|
export default EmptyText;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { ThemeOptions } from '@mui/material/styles/createTheme';
|
|
1
2
|
export type ThemeSettings = {
|
|
2
3
|
theme: string;
|
|
3
4
|
direction: 'ltr' | 'rtl';
|
|
4
5
|
responsiveFontSizes?: boolean;
|
|
6
|
+
themeOptions?: ThemeOptions;
|
|
5
7
|
};
|
|
6
8
|
export declare const createCustomTheme: (settings: ThemeSettings) => import('@mui/material').Theme;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { PropsWithChildren } from 'react';
|
|
2
2
|
import { ThemeSettings } from '..';
|
|
3
|
-
declare function ThemeProvider({ theme, direction, responsiveFontSizes, children, }: PropsWithChildren<ThemeSettings>): import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
declare function ThemeProvider({ theme, themeOptions, direction, responsiveFontSizes, children, }: PropsWithChildren<ThemeSettings>): import("react/jsx-runtime").JSX.Element;
|
|
4
4
|
export default ThemeProvider;
|