react-crud-mui 0.0.1-beta.2 → 0.0.1-beta.21

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.
Files changed (70) hide show
  1. package/dist/components/combobox/ComboBox.d.ts +1 -1
  2. package/dist/components/{settings-provider/SettingsProvider.d.ts → crud-mui-provider/CrudMuiProvider.d.ts} +3 -3
  3. package/dist/components/{settings-provider → crud-mui-provider}/settings.d.ts +0 -2
  4. package/dist/components/detail-page/components/DetailPageStepCommands.d.ts +3 -2
  5. package/dist/components/detail-page/components/DetailPageSteps.d.ts +2 -1
  6. package/dist/components/detail-page/hooks/useDetailPageModal.d.ts +9 -7
  7. package/dist/components/detail-page/hooks/useSegmentParams.d.ts +3 -1
  8. package/dist/components/detail-page/pages/DetailPage.d.ts +2 -0
  9. package/dist/components/detail-page/pages/DetailPageData.d.ts +3 -15
  10. package/dist/components/detail-page/pages/DetailPageForm.d.ts +2 -2
  11. package/dist/components/detail-page/pages/DetailPageModal.d.ts +2 -2
  12. package/dist/components/editable-list/EditableList.d.ts +3 -3
  13. package/dist/components/form/Field.d.ts +2 -1
  14. package/dist/components/form/components/FormControl.d.ts +6 -2
  15. package/dist/components/form/controls/FormComboBox.d.ts +1 -1
  16. package/dist/components/form/controls/FormDatePicker.d.ts +1 -1
  17. package/dist/components/form/controls/FormInput.d.ts +3 -3
  18. package/dist/components/form/controls/FormMoneyInput.d.ts +1 -1
  19. package/dist/components/form/controls/FormNumberInput.d.ts +1 -1
  20. package/dist/components/form/controls/FormPhoneInput.d.ts +1 -1
  21. package/dist/components/form/controls/FormSearchInput.d.ts +7 -0
  22. package/dist/components/form/controls/FormSelect.d.ts +1 -1
  23. package/dist/components/form/schema/id-name.shema.d.ts +3 -3
  24. package/dist/components/form/schema/index.d.ts +1 -0
  25. package/dist/components/form/schema/phone.schema.d.ts +3 -0
  26. package/dist/components/header/Header.d.ts +2 -1
  27. package/dist/components/hooks/index.d.ts +0 -1
  28. package/dist/components/i18n/hooks/useLangWatch.d.ts +5 -0
  29. package/dist/components/i18n/resources/en.json.d.ts +6 -1
  30. package/dist/components/i18n/resources/tr.json.d.ts +6 -1
  31. package/dist/components/input/Input.d.ts +10 -0
  32. package/dist/components/input/index.d.ts +1 -0
  33. package/dist/components/labels/MailFormat.d.ts +7 -0
  34. package/dist/components/labels/PhoneFormat.d.ts +7 -0
  35. package/dist/components/labels/index.d.ts +4 -0
  36. package/dist/components/list-page/constants.d.ts +1 -1
  37. package/dist/components/list-page/hooks/useListPage.d.ts +1 -2
  38. package/dist/components/list-page/hooks/useURLSearchFilter.d.ts +20 -9
  39. package/dist/components/list-page/pages/ListPage.d.ts +10 -3
  40. package/dist/components/list-page/pages/ListPageContent.d.ts +26 -7
  41. package/dist/components/list-page/pages/ListPageFilter.d.ts +15 -15
  42. package/dist/components/list-page/pages/ListPageForm.d.ts +6 -3
  43. package/dist/components/list-page/pages/ListPageRoute.d.ts +6 -4
  44. package/dist/components/misc/removeFalsy.d.ts +3 -0
  45. package/dist/components/modal/Modal.d.ts +2 -1
  46. package/dist/components/more-panel/MorePanel.d.ts +8 -0
  47. package/dist/components/page/Page.d.ts +8 -3
  48. package/dist/components/page/components/DefaultLayout.d.ts +2 -1
  49. package/dist/components/page/components/DefaultTabs.d.ts +5 -0
  50. package/dist/components/phone-input/PhoneInput.d.ts +11 -13
  51. package/dist/components/table/utils/getPinningStyle.d.ts +3 -0
  52. package/dist/components/theme/index.d.ts +2 -0
  53. package/dist/components/theme/provider/ThemeProvider.d.ts +1 -1
  54. package/dist/components/utils/base.d.ts +6 -0
  55. package/dist/coreui.js +7832 -21305
  56. package/dist/index.d.ts +6 -6
  57. package/package.json +19 -16
  58. package/dist/components/hooks/useScroll.d.ts +0 -5
  59. package/dist/components/query/axios/index.d.ts +0 -2
  60. package/dist/components/query/axios/paramsSerializer.d.ts +0 -3
  61. package/dist/components/query/index.d.ts +0 -4
  62. package/dist/components/query/useAppLazyQuery.d.ts +0 -85
  63. package/dist/components/query/useAppMutation.d.ts +0 -10
  64. package/dist/components/query/useAppQuery.d.ts +0 -13
  65. package/dist/components/query/useAppQueryKey.d.ts +0 -4
  66. package/dist/components/query/useCommonHeaders.d.ts +0 -3
  67. package/dist/components/query/useMakeFullURI.d.ts +0 -10
  68. package/dist/style.css +0 -1
  69. /package/dist/components/{settings-provider → crud-mui-provider}/SettingsContext.d.ts +0 -0
  70. /package/dist/components/{settings-provider → crud-mui-provider}/hooks/useSettings.d.ts +0 -0
@@ -12,7 +12,7 @@ type CreatableModelProps = {
12
12
  export interface ComboBoxProps<T extends CreatableModel, Creatable extends boolean = false> extends Partial<AutocompleteProps<T, false, true, Creatable>>, Pick<StandardTextFieldProps, 'autoFocus' | 'label' | 'error' | 'helperText'> {
13
13
  data?: T[];
14
14
  direction?: 'row' | 'column';
15
- optionTemplate: ComboboxTemplate<T>;
15
+ optionTemplate?: ComboboxTemplate<T>;
16
16
  displayTemplate?: ComboboxTemplate<T>;
17
17
  descriptionTemplate?: ComboboxTemplate<T>;
18
18
  creatable?: Creatable;
@@ -1,9 +1,9 @@
1
1
  import { PropsWithChildren } from 'react';
2
2
  import { Settings } from './settings';
3
- export type SettingsProviderProps = Partial<Settings>;
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 SettingsProvider({ children, validationOptions, ...rest }: PropsWithChildren<SettingsProviderProps>): import("react/jsx-runtime").JSX.Element;
9
- export default SettingsProvider;
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;
@@ -10,6 +10,7 @@ export type StepsButtonsOptions = {
10
10
  activeStepIndex: number;
11
11
  steps: StepPane[];
12
12
  showFinishButton?: boolean;
13
+ finishButtonText?: string;
13
14
  loading?: boolean;
14
15
  };
15
16
  export type StepCommandsStates = {
@@ -27,11 +28,11 @@ export type StepCommandsLayout = {
27
28
  };
28
29
  export type StepCommandsComponentProps = StepCommandsStates & StepCommandsLayout;
29
30
  export interface DetailPageStepCommandsProps extends StepCommandsStates {
30
- commands?: React.ComponentType<StepCommandsComponentProps>;
31
+ onCommands?: (props: StepCommandsComponentProps) => ReactNode;
31
32
  }
32
33
  export declare enum DetailPageStepCommandNames {
33
34
  PREV = "prev",
34
35
  NEXT = "next"
35
36
  }
36
- declare function DetailPageStepCommands({ commands: CustomCommands, ...options }: DetailPageStepCommandsProps): import("react/jsx-runtime").JSX.Element;
37
+ declare function DetailPageStepCommands({ onCommands, ...stepCommandProps }: DetailPageStepCommandsProps): import("react/jsx-runtime").JSX.Element;
37
38
  export default DetailPageStepCommands;
@@ -5,7 +5,8 @@ export interface DetailPageStepsProps extends Omit<StepperProps, 'onChange'> {
5
5
  items: StepPane[];
6
6
  status?: StepStatus;
7
7
  showFinishButton?: DetailPageStepCommandsProps['options']['showFinishButton'];
8
- commands?: DetailPageStepCommandsProps['commands'];
8
+ finishButtonText?: DetailPageStepCommandsProps['options']['finishButtonText'];
9
+ onCommands?: DetailPageStepCommandsProps['onCommands'];
9
10
  }
10
11
  export type StepPane = Omit<StepProps & StepLabelProps, 'children' | 'key'> & {
11
12
  key: string;
@@ -1,6 +1,5 @@
1
1
  import { FieldValues } from 'react-hook-form';
2
2
  import { NeedDataReason } from '../pages/DetailPageContent';
3
- import { NavigatePayload } from '../pages/DetailPageData';
4
3
  import { DetailPageModalProps } from '../pages/DetailPageModal';
5
4
  export type SelectedModelOptions<TModel> = {
6
5
  data?: TModel;
@@ -14,7 +13,6 @@ type HelperModelFields = {
14
13
  export type UseDetailPageModalReturn<TModel extends FieldValues> = Pick<DetailPageModalProps<TModel>, 'reason' | 'open' | 'onReasonChange' | 'data' | 'disabled'> & HelperModelFields & {
15
14
  onOpen(model?: SelectedModelOptions<TModel>): void;
16
15
  onClose(): void;
17
- onNavigate(paylaod: Pick<NavigatePayload<TModel>, 'direction'>): void;
18
16
  };
19
17
  export interface UseDetailPageModalProps {
20
18
  models?: unknown[];
@@ -22,16 +20,15 @@ export interface UseDetailPageModalProps {
22
20
  onVisibleChange?: (open: boolean) => void;
23
21
  }
24
22
  declare function useDetailPageModal<TModel extends FieldValues>({ models, uniqueIdParamName, onVisibleChange, }?: UseDetailPageModalProps): readonly [({ data, disabled, reason }?: SelectedModelOptions<TModel>) => void, {
25
- readonly onNavigate: ({ direction }: Pick<NavigatePayload<TModel>, "direction">) => void;
26
23
  readonly onReasonChange: (reason: NeedDataReason) => void;
27
24
  readonly onClose: () => void;
28
- readonly modalProps?: Omit<import('../../..').ModalProps, "children">;
25
+ readonly modalProps?: Omit<import('../../..').ModalProps, "children" | "open">;
29
26
  readonly open?: boolean;
30
27
  readonly confirmDirtyChanges?: boolean;
31
28
  readonly defaultReason?: NeedDataReason;
32
29
  readonly defaultSegmentIndex?: number;
33
30
  readonly form?: import('../../form/hooks/useForm').UseFormReturn<TModel> | undefined;
34
- readonly schema?: import('zod').ZodType<Partial<TModel>, import('zod').ZodTypeDef, Partial<TModel>> | import('zod').ZodType<Partial<TModel>, import('zod').ZodTypeDef, Partial<TModel>>[] | undefined;
31
+ readonly schema?: import('zod').ZodType<Partial<TModel>, import('zod').ZodTypeDef, Partial<TModel>> | undefined;
35
32
  readonly defaultValues?: import('../../utils').DeepNullable<TModel> | undefined;
36
33
  readonly validationOptions?: import('../../form/hooks/useForm').ValidationOptions<TModel> | undefined;
37
34
  readonly className?: string;
@@ -406,6 +403,7 @@ declare function useDetailPageModal<TModel extends FieldValues>({ models, unique
406
403
  readonly onAnimationIterationCapture?: import('react').AnimationEventHandler<HTMLDivElement> | undefined;
407
404
  readonly onTransitionEnd?: import('react').TransitionEventHandler<HTMLDivElement> | undefined;
408
405
  readonly onTransitionEndCapture?: import('react').TransitionEventHandler<HTMLDivElement> | undefined;
406
+ readonly component?: React.ElementType;
409
407
  readonly disabled?: boolean;
410
408
  readonly loading?: boolean;
411
409
  readonly size?: import('../../page/components/PageProvider').PaddingSize;
@@ -414,19 +412,23 @@ declare function useDetailPageModal<TModel extends FieldValues>({ models, unique
414
412
  readonly helperText?: import('react').ReactNode;
415
413
  readonly headerProps?: import('@mui/material').BoxProps;
416
414
  readonly moreOptions?: import('../../..').MoreButtonProps["options"];
415
+ readonly useIconWrapper?: boolean;
417
416
  readonly error?: import('../../utils').ServerError;
418
417
  readonly onDelete?: import('../pages/DetailPageData').DataEvent<TModel, import('../pages/DetailPageData').DeletePayload<TModel>> | undefined;
419
418
  readonly onCreate?: () => void;
420
419
  readonly footerContent?: import('react').ReactNode;
420
+ readonly moreContent?: import('react').ReactNode;
421
421
  readonly tabs?: import('../../page/components/DefaultTabs').TabPane[];
422
422
  readonly commandsPosition?: import('../../page/Page').CommandsPosition;
423
423
  readonly onHeader?: (props: import('../components/DetailPageHeader').DetailPageHeaderProps) => import('react').ReactNode;
424
424
  readonly onLayout?: (props: import('../../page/components/DefaultLayout').PageLayoutProps) => import('react').ReactNode;
425
425
  readonly showHeader?: boolean;
426
+ readonly morePanelProps?: import('../../more-panel/MorePanel').MorePanelProps;
426
427
  readonly disableShortCuts?: boolean;
428
+ readonly tabsPosition?: import('../../page/Page').TabsPosition;
427
429
  readonly selectedTabIndex?: number;
428
- readonly onTabChanged?: (index: number) => void;
429
- readonly onTabs?: (props: import('../../page/components/DefaultTabs').DefaultTabsProps) => import('react').ReactNode;
430
+ readonly onTabChanged?: (selected: import('../../page/components/DefaultTabs').TabChangedPayload) => void;
431
+ readonly onTabs?: (props: import('../../..').DefaultTabsProps) => import('react').ReactNode;
430
432
  readonly enableClose?: boolean;
431
433
  readonly enableCopy?: boolean;
432
434
  readonly enableCreate?: boolean;
@@ -6,5 +6,7 @@ export interface UseSegmentParamsOptions {
6
6
  fallbackSegmentIndex?: number;
7
7
  paths?: SegmentModel[];
8
8
  }
9
- declare function useSegmentParams({ segmentParamName: customSegmentParamName, enableNestedSegments, enableSegmentRouting, fallbackSegmentIndex, paths, }?: UseSegmentParamsOptions): readonly [number | undefined, (index: number) => void];
9
+ declare function useSegmentParams({ segmentParamName: customSegmentParamName, enableNestedSegments, enableSegmentRouting, fallbackSegmentIndex, paths, }?: UseSegmentParamsOptions): readonly [number | undefined, (index: number) => void, {
10
+ readonly segmentParamName: string;
11
+ }];
10
12
  export default useSegmentParams;
@@ -1,6 +1,7 @@
1
1
  import { FieldValues } from 'react-hook-form';
2
2
  import { default as DetailPageDefaultLayout } from '../components/DetailPageDefaultLayout';
3
3
  import { default as DetailPageHeader } from '../components/DetailPageHeader';
4
+ import { default as DetailPageSteps } from '../components/DetailPageSteps';
4
5
  import { NeedDataReason } from './DetailPageContent';
5
6
  import { default as DetailPageDrawer } from './DetailPageDrawer';
6
7
  import { DetailPageFormProps } from './DetailPageForm';
@@ -21,5 +22,6 @@ declare namespace DetailPage {
21
22
  var Drawer: typeof DetailPageDrawer;
22
23
  var Route: typeof DetailPageRoute;
23
24
  var Layout: typeof DetailPageDefaultLayout;
25
+ var Steps: typeof DetailPageSteps;
24
26
  }
25
27
  export default DetailPage;
@@ -1,6 +1,5 @@
1
1
  import { FieldValues } from 'react-hook-form';
2
- import { UseFormOptions, UseFormReturn } from '../../form/hooks/useForm';
3
- import { DeepNullable } from '../../utils';
2
+ import { UseFormReturn } from '../../form/hooks/useForm';
4
3
  import { DetailPageContentProps, NeedDataReason } from './DetailPageContent';
5
4
  export type DataResult<TModel> = TModel | Promise<TModel | void | undefined> | undefined | void;
6
5
  export interface DataEvent<TModel, TVariables> {
@@ -19,19 +18,8 @@ export interface DeletePayload<TModel = FieldValues> extends BasePayload {
19
18
  model: TModel;
20
19
  data?: TModel;
21
20
  }
22
- export interface NavigatePayload<TModel = FieldValues> extends BasePayload {
23
- direction: NavigationDirection;
24
- model: TModel;
25
- }
26
- export type NavigationDirection = 'next' | 'prev';
27
- export interface DetailPageDataProps<TModel extends FieldValues> extends Omit<DetailPageContentProps<TModel>, 'onSave' | 'onDelete' | 'onDiscardChanges' | 'onCopy' | 'onSaveCreate' | 'onSaveClose'>, Pick<UseFormOptions<TModel>, 'schema'> {
21
+ export interface DetailPageDataProps<TModel extends FieldValues> extends Omit<DetailPageContentProps<TModel>, 'onSave' | 'onDelete' | 'onDiscardChanges' | 'onCopy' | 'onSaveCreate' | 'onSaveClose'> {
28
22
  form: UseFormReturn<TModel>;
29
- defaultValues?: Readonly<DeepNullable<TModel>>;
30
- /**
31
- * Navigation buttons event when navigation is active
32
- * @returns if returns data,either in promise or object will bind to form data
33
- */
34
- onNavigate?: DataEvent<TModel, NavigatePayload<TModel>>;
35
23
  /**
36
24
  * Save event
37
25
  * @returns if returns data,either in promise or object will bind to form data
@@ -66,5 +54,5 @@ export interface DetailPageDataProps<TModel extends FieldValues> extends Omit<De
66
54
  /**
67
55
  * Page component that all data manupulation is handled
68
56
  */
69
- declare function DetailPageData<TModel extends FieldValues>({ alerts, autoSave, data, defaultValues, error, form, loading, onAfterDelete, onAfterSave, onClose, onDelete, onDiscardChanges, onReasonChange, onSave, reason, schema, showSuccessMessages, ...dpProps }: DetailPageDataProps<TModel>): import("react/jsx-runtime").JSX.Element;
57
+ declare function DetailPageData<TModel extends FieldValues>({ alerts, autoSave, data, error, form, loading, onAfterDelete, onAfterSave, onClose, onDelete, onDiscardChanges, onReasonChange, onSave, reason, showSuccessMessages, ...dpProps }: DetailPageDataProps<TModel>): import("react/jsx-runtime").JSX.Element;
70
58
  export default DetailPageData;
@@ -5,12 +5,12 @@ import { DeepNullable } from '../../utils';
5
5
  import { DetailPageDataProps } from './DetailPageData';
6
6
  export interface DetailPageFormProps<TModel extends FieldValues> extends Omit<DetailPageDataProps<TModel>, 'form' | 'defaultValues' | 'schema'> {
7
7
  form?: UseFormReturn<TModel>;
8
- schema?: z.ZodType<Partial<TModel>> | z.ZodType<Partial<TModel>>[];
8
+ schema?: z.ZodType<Partial<TModel>>;
9
9
  defaultValues?: DeepNullable<TModel>;
10
10
  /**
11
11
  * Optional validation options
12
12
  */
13
13
  validationOptions?: ValidationOptions<TModel>;
14
14
  }
15
- declare function DetailPageForm<TModel extends FieldValues>(props: DetailPageFormProps<TModel>): import("react/jsx-runtime").JSX.Element;
15
+ declare function DetailPageForm<TModel extends FieldValues>({ activeSegmentIndex, schema, defaultValues, validationOptions, ...dpProps }: DetailPageFormProps<TModel>): import("react/jsx-runtime").JSX.Element;
16
16
  export default DetailPageForm;
@@ -5,7 +5,7 @@ export interface DetailPageModalProps<TModel extends FieldValues> extends Detail
5
5
  /**
6
6
  * Antd modal options
7
7
  */
8
- modalProps?: Omit<ModalProps, 'children'>;
8
+ modalProps?: Omit<ModalProps, 'children' | 'open'>;
9
9
  /**
10
10
  * Shortcut to open prop of Modal
11
11
  */
@@ -15,5 +15,5 @@ export interface DetailPageModalProps<TModel extends FieldValues> extends Detail
15
15
  */
16
16
  confirmDirtyChanges?: boolean;
17
17
  }
18
- declare function DetailPageModal<TModel extends FieldValues>({ modalProps, onClose, open, confirmDirtyChanges, ...rest }: DetailPageModalProps<TModel>): import("react/jsx-runtime").JSX.Element;
18
+ declare function DetailPageModal<TModel extends FieldValues>({ modalProps, onClose, open, confirmDirtyChanges, enableClose, ...rest }: DetailPageModalProps<TModel>): import("react/jsx-runtime").JSX.Element;
19
19
  export default DetailPageModal;
@@ -19,7 +19,7 @@ export interface EditingListCommandsProps<TModel extends FieldValues = FieldValu
19
19
  onCancel?: () => void;
20
20
  model?: TModel;
21
21
  }
22
- export interface EditableListProps<TModel extends FieldValues, TArrayModel extends FieldArray<TModel, TFieldArrayName> & FieldValues, TFieldArrayName extends FieldArrayPath<TModel> = FieldArrayPath<TModel>> extends TableProps<TArrayModel>, Pick<ActionCommandsProps, 'canCopy' | 'canDelete' | 'canEdit'>, PropsWithChildren {
22
+ export interface EditableListProps<TModel extends FieldValues, TArrayModel extends FieldArray<TModel, TFieldArrayName> & FieldValues, TFieldArrayName extends FieldArrayPath<TModel> = FieldArrayPath<TModel>> extends Omit<TableProps<TArrayModel>, 'data'>, Pick<ActionCommandsProps, 'canCopy' | 'canDelete' | 'canEdit'>, PropsWithChildren {
23
23
  /**
24
24
  * Array model name of form
25
25
  */
@@ -73,7 +73,7 @@ export interface EditableListProps<TModel extends FieldValues, TArrayModel exten
73
73
  /**
74
74
  * Custom Commands on header
75
75
  */
76
- commands?: (props: EditableListCommandsProps<TModel, TFieldArrayName>) => React.ReactNode;
76
+ onCommands?: (props: EditableListCommandsProps<TModel, TFieldArrayName>) => React.ReactNode;
77
77
  /**
78
78
  * Custom commands when needed to override the default buttons
79
79
  */
@@ -83,7 +83,7 @@ export interface EditableListProps<TModel extends FieldValues, TArrayModel exten
83
83
  */
84
84
  commandColProps?: TableColumn<TArrayModel>;
85
85
  }
86
- declare function EditableList<TModel extends FieldValues, TArrayModel extends FieldArray<TModel, TFieldArrayName> & FieldValues, TFieldArrayName extends FieldArrayPath<TModel> = FieldArrayPath<TModel>>({ canCopy, canDelete, canEdit, children, columns, commandColProps, commands, onLayout, detailPageProps, detailType, disabled, enableDeleteAllButton, headerProps, name, newItemTitle, onDelete, onSave, rowCommands, uniqueFields, ...tableProps }: EditableListProps<TModel, TArrayModel, TFieldArrayName>): import("react/jsx-runtime").JSX.Element;
86
+ declare function EditableList<TModel extends FieldValues, TArrayModel extends FieldArray<TModel, TFieldArrayName> & FieldValues, TFieldArrayName extends FieldArrayPath<TModel> = FieldArrayPath<TModel>>({ canCopy, canDelete, canEdit, children, columns, commandColProps, onCommands, onLayout, detailPageProps, detailType, disabled, enableDeleteAllButton, headerProps, name, newItemTitle, onDelete, onSave, rowCommands, uniqueFields, ...tableProps }: EditableListProps<TModel, TArrayModel, TFieldArrayName>): import("react/jsx-runtime").JSX.Element;
87
87
  declare namespace EditableList {
88
88
  var Commands: typeof EditableListCommands;
89
89
  var RowCommands: typeof ActionCommands;
@@ -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;
@@ -45,7 +47,6 @@ declare namespace Field {
45
47
  var DatePicker: typeof FormDatePicker;
46
48
  var Button: typeof FormButton;
47
49
  var Watch: typeof FieldWatch;
48
- var schemas: typeof import("./schema");
49
50
  var Group: typeof FieldGroupProvider;
50
51
  }
51
52
  export default Field;
@@ -1,9 +1,13 @@
1
- import { PropsWithChildren, ReactNode } from 'react';
1
+ import { default as React, PropsWithChildren, ReactNode } from 'react';
2
2
  import { ControllerFieldState } from 'react-hook-form';
3
+ import { BoxProps } from '@mui/material';
4
+ import { FlexBox } from '../../flexbox';
3
5
  export interface FormControlProps {
4
6
  label?: ReactNode;
5
7
  helperText?: ReactNode;
6
8
  placement?: 'left' | 'right' | 'top' | 'bottom';
9
+ labelProps?: BoxProps;
10
+ wrapperProps?: React.ComponentProps<typeof FlexBox>;
7
11
  }
8
- declare function FormControl({ placement, children, label, helperText, error, invalid, }: PropsWithChildren<FormControlProps> & ControllerFieldState): import("react/jsx-runtime").JSX.Element;
12
+ declare function FormControl({ placement, children, label, helperText, error, invalid, labelProps, wrapperProps, }: PropsWithChildren<FormControlProps> & Partial<ControllerFieldState>): import("react/jsx-runtime").JSX.Element;
9
13
  export default FormControl;
@@ -3,5 +3,5 @@ import { ComboBoxProps, CreatableModel } from '../../combobox/ComboBox';
3
3
  import { ControlCommonProps } from '../Field';
4
4
  export interface FormComboBoxProps<T extends CreatableModel, Creatable extends boolean = false, TFieldValues extends FieldValues = FieldValues> extends Omit<ComboBoxProps<T, Creatable>, 'name'>, ControlCommonProps<TFieldValues> {
5
5
  }
6
- declare function FormComboBox<T extends CreatableModel, Creatable extends boolean, TFieldValues extends FieldValues>({ name, fieldProps, ...comboBoxProps }: FormComboBoxProps<T, Creatable, TFieldValues>): import("react/jsx-runtime").JSX.Element;
6
+ declare function FormComboBox<T extends CreatableModel, Creatable extends boolean, TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, disabled, ...comboBoxProps }: FormComboBoxProps<T, Creatable, TFieldValues>): import("react/jsx-runtime").JSX.Element;
7
7
  export default FormComboBox;
@@ -4,5 +4,5 @@ import { DatePickerProps as MuiDatePickerProps } from '@mui/x-date-pickers';
4
4
  import { Dayjs } from 'dayjs';
5
5
  import { ControlCommonProps } from '../Field';
6
6
  export type FormDatePickerProps<TFieldValues extends FieldValues = FieldValues> = Partial<MuiDatePickerProps<Dayjs>> & Pick<StandardTextFieldProps, 'size'> & ControlCommonProps<TFieldValues>;
7
- declare function FormDatePicker<TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, slotProps, autoFocus, size, ...dateProps }: FormDatePickerProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
7
+ declare function FormDatePicker<TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, slotProps, autoFocus, size, disabled, ...dateProps }: FormDatePickerProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
8
8
  export default FormDatePicker;
@@ -1,7 +1,7 @@
1
1
  import { FieldValues } from 'react-hook-form';
2
- import { TextFieldProps } from '@mui/material';
2
+ import { InputProps } from '../../input/Input';
3
3
  import { ControlCommonProps } from '../Field';
4
- export interface FormInputProps<TFieldValues extends FieldValues = FieldValues> extends Omit<TextFieldProps<'standard'>, 'name'>, ControlCommonProps<TFieldValues> {
4
+ export interface FormInputProps<TFieldValues extends FieldValues = FieldValues> extends Omit<InputProps, 'name'>, ControlCommonProps<TFieldValues> {
5
5
  }
6
- declare function FormInput<TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, ...inputProps }: FormInputProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
6
+ declare function FormInput<TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, disabled, ...inputProps }: FormInputProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
7
7
  export default FormInput;
@@ -3,5 +3,5 @@ import { MoneyInputProps } from '../../money-input/MoneyInput';
3
3
  import { ControlCommonProps } from '../Field';
4
4
  export interface FormMoneyInputProps<TFieldValues extends FieldValues = FieldValues> extends Omit<MoneyInputProps, 'name'>, ControlCommonProps<TFieldValues> {
5
5
  }
6
- declare function FormMoneyInput<TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, ...inputProps }: FormMoneyInputProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
6
+ declare function FormMoneyInput<TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, disabled, ...inputProps }: FormMoneyInputProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
7
7
  export default FormMoneyInput;
@@ -3,5 +3,5 @@ import { NumberInputProps } from '../../number-input/NumberInput';
3
3
  import { ControlCommonProps } from '../Field';
4
4
  export interface FormNumberInputProps<TFieldValues extends FieldValues = FieldValues> extends Omit<NumberInputProps, 'name'>, ControlCommonProps<TFieldValues> {
5
5
  }
6
- declare function FormNumberInput<TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, ...inputProps }: FormNumberInputProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
6
+ declare function FormNumberInput<TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, disabled, ...inputProps }: FormNumberInputProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
7
7
  export default FormNumberInput;
@@ -3,5 +3,5 @@ import { PhoneInputProps } from '../../phone-input/PhoneInput';
3
3
  import { ControlCommonProps } from '../Field';
4
4
  export interface FormPhoneInputProps<TFieldValues extends FieldValues = FieldValues> extends Omit<PhoneInputProps, 'name'>, ControlCommonProps<TFieldValues> {
5
5
  }
6
- declare function FormPhoneInput<TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, ...inputProps }: FormPhoneInputProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
6
+ declare function FormPhoneInput<TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, disabled, ...inputProps }: FormPhoneInputProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
7
7
  export default 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;
@@ -3,5 +3,5 @@ import { SelectProps } from '../../select/Select';
3
3
  import { ControlCommonProps } from '../Field';
4
4
  export interface FormSelectProps<T extends FieldValues, TFieldValues extends FieldValues = FieldValues> extends Omit<SelectProps<T>, 'name'>, ControlCommonProps<TFieldValues> {
5
5
  }
6
- declare function FormSelect<T extends FieldValues, TFieldValues extends FieldValues>({ name, fieldProps, ...selectProps }: FormSelectProps<T, TFieldValues>): import("react/jsx-runtime").JSX.Element;
6
+ declare function FormSelect<T extends FieldValues, TFieldValues extends FieldValues = FieldValues>({ name, fieldProps, disabled, ...selectProps }: FormSelectProps<T, TFieldValues>): import("react/jsx-runtime").JSX.Element;
7
7
  export default FormSelect;
@@ -1,12 +1,12 @@
1
1
  import { z } from 'zod';
2
2
  declare const idNameSchema: z.ZodObject<{
3
3
  id: z.ZodNumber;
4
- name: z.ZodString;
4
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
5
5
  }, "strip", z.ZodTypeAny, {
6
6
  id: number;
7
- name: string;
7
+ name?: string | null | undefined;
8
8
  }, {
9
9
  id: number;
10
- name: string;
10
+ name?: string | null | undefined;
11
11
  }>;
12
12
  export default idNameSchema;
@@ -1,2 +1,3 @@
1
1
  export { default as dateSchema } from './date.schema';
2
2
  export { default as idNameSchema } from './id-name.shema';
3
+ export { default as phoneSchema } from './phone.schema';
@@ -0,0 +1,3 @@
1
+ import { z } from 'zod';
2
+ declare const phoneSchema: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string | null, string>;
3
+ export default phoneSchema;
@@ -10,6 +10,7 @@ export interface HeaderProps extends React.ComponentProps<typeof FlexBetween> {
10
10
  headerProps?: BoxProps;
11
11
  icon?: ReactNode;
12
12
  moreOptions?: MoreButtonProps['options'];
13
+ useIconWrapper?: boolean;
13
14
  }
14
- declare function Header({ moreOptions, header, headerProps, icon, rightContent, helperText, centerContent, ...flexProps }: HeaderProps): import("react/jsx-runtime").JSX.Element;
15
+ declare function Header({ moreOptions, header, headerProps, icon, rightContent, helperText, centerContent, children, useIconWrapper, ...flexProps }: HeaderProps): import("react/jsx-runtime").JSX.Element;
15
16
  export default Header;
@@ -10,5 +10,4 @@ export { default as usePrompt } from './usePrompt';
10
10
  export { default as useMountEffect } from './useMountEffect';
11
11
  export { default as useTemplate } from '../combobox/hooks/useComboboxTemplate';
12
12
  export { default as useUpdateEffect } from './useUpdateEffect';
13
- export { default as useScroll } from './useScroll';
14
13
  export { default as useZodRefine } from './useZodRefine';
@@ -0,0 +1,5 @@
1
+ interface UseLangChangeCallback {
2
+ (lng: string): void;
3
+ }
4
+ declare function useLangWatch(callBack: UseLangChangeCallback): void;
5
+ export default useLangWatch;
@@ -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",
@@ -180,7 +181,11 @@ declare const _default: {
180
181
  "export": "Export",
181
182
  "import": "Import",
182
183
  "report.initiate": "Initiating report download...",
183
- "new_row": "Add new row"
184
+ "new_row": "Add new row",
185
+ "phone_number": "Phone number",
186
+ "phone_number_val_message": "Please specify a valid phone number (include the international prefix).",
187
+ "show_less": "Show less",
188
+ "show_more": "Show more"
184
189
  };
185
190
 
186
191
  export default _default;
@@ -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",
@@ -180,7 +181,11 @@ declare const _default: {
180
181
  "export": "Dışa aktar",
181
182
  "import": "İçe aktar",
182
183
  "report.initiate": "Rapor indiriliyor...",
183
- "new_row": "Yeni Satır Ekle"
184
+ "new_row": "Yeni Satır Ekle",
185
+ "phone_number": "Telefon num.",
186
+ "phone_number_val_message": "Geçerli bir telefon numarası giriniz (Ülke kodu ile ile birlikte)",
187
+ "show_less": "Daha az göster",
188
+ "show_more": "Daha fazla göster"
184
189
  };
185
190
 
186
191
  export default _default;
@@ -0,0 +1,10 @@
1
+ import { default as React, Ref } from 'react';
2
+ import { TextFieldProps } from '@mui/material';
3
+ export type CaseType = 'firstUpper' | 'upperCase' | 'lowerCase' | 'normal';
4
+ export interface InputProps extends TextFieldProps<'standard'> {
5
+ caseType?: CaseType;
6
+ getRef?: Ref<any>;
7
+ }
8
+ declare function Input({ caseType, getRef, ...inputProps }: InputProps): import("react/jsx-runtime").JSX.Element;
9
+ declare const _default: React.ForwardRefExoticComponent<Omit<InputProps, "ref"> & React.RefAttributes<typeof Input>>;
10
+ export default _default;
@@ -0,0 +1 @@
1
+ export { default } from './Input';
@@ -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,7 @@
1
+ import { BoxProps } from '@mui/material';
2
+ interface PhoneLabelProps extends BoxProps {
3
+ value?: string;
4
+ showIcon?: boolean;
5
+ }
6
+ declare function PhoneFormat({ value: phoneNumber, showIcon, ...rest }: PhoneLabelProps): import("react/jsx-runtime").JSX.Element | null;
7
+ 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 INITIAL_PAGEINDEX = 0;
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?: ListPageModel<TModel>;
5
+ data?: TModel[];
7
6
  /**
8
7
  * Clear all form controls in filter
9
8
  */
@@ -1,11 +1,22 @@
1
- export interface UseURLSearchFilterOptions<TFilter> {
2
- enableQueryStringFilter?: boolean | FilterSource<TFilter>;
3
- params?: URLSearchParams;
4
- }
5
- export type AdvancedFilterSource = {
6
- type: 'number' | 'string' | 'date';
7
- isArray?: boolean;
1
+ import { FieldValues } from 'react-hook-form';
2
+ import { ListPageMeta } from '../pages/ListPageFilter';
3
+ type UseURLSearchFilterOptions = {
4
+ defaultValues?: Record<string, unknown>;
5
+ };
6
+ declare function useURLSearchFilter<TFilter extends FieldValues>({ defaultValues, }: UseURLSearchFilterOptions): {
7
+ getFiltersInQS: () => {
8
+ filter: {
9
+ [key: string]: unknown;
10
+ };
11
+ meta: {
12
+ pagination: {
13
+ pageIndex: number;
14
+ pageSize: number;
15
+ };
16
+ sorting: unknown;
17
+ selectedTabIndex: unknown;
18
+ };
19
+ };
20
+ setFiltersInQS: (filter: TFilter, meta: ListPageMeta, extraFilter?: Record<string, unknown>) => void;
8
21
  };
9
- export type FilterSource<TFilter> = Partial<Record<keyof TFilter, boolean | AdvancedFilterSource>>;
10
- declare function useURLSearchFilter<TFilter>({ enableQueryStringFilter, params, }: UseURLSearchFilterOptions<TFilter>): () => TFilter | undefined;
11
22
  export default useURLSearchFilter;
@@ -1,5 +1,5 @@
1
1
  import { FieldValues } from 'react-hook-form';
2
- import { ListPageFilter } from './ListPageFilter';
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,9 +8,16 @@ export interface ListPageProps<TModel extends FieldValues, TFilter extends Field
8
8
  /**
9
9
  * Data fetcher function with given filter
10
10
  */
11
- onNeedData?: (filter: ListPageFilter<TFilter> | undefined) => void;
11
+ onNeedData?: (filter: TFilter, _meta: ListPageMeta) => void;
12
+ /**
13
+ * Remove falsy values of filter before call OnNeedData
14
+ */
15
+ removeFalsyFilterValues?: boolean;
12
16
  }
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;
17
+ /**
18
+ * Simple list with filter and table
19
+ */
20
+ declare function ListPage<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ onNeedData, defaultSegmentIndex, activeSegmentIndex, tabs, defaultMeta, removeFalsyFilterValues, ...lpProps }: ListPageProps<TModel, TFilter, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
14
21
  declare namespace ListPage {
15
22
  var Selection: typeof ListPageSelection;
16
23
  var Modal: typeof ListPageModal;