dinocollab-core 2.2.13 → 2.2.14

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 (36) hide show
  1. package/dist/data-surface/index.js +1 -1
  2. package/dist/form/index.js +1 -1
  3. package/dist/src/data-surface/button-switch.js +1 -1
  4. package/dist/src/data-surface/button-switch.js.map +1 -1
  5. package/dist/src/data-surface/ui.units.js +1 -1
  6. package/dist/src/data-surface/ui.units.js.map +1 -1
  7. package/dist/src/form/create.date-expired.js +1 -1
  8. package/dist/src/form/create.date-expired.js.map +1 -1
  9. package/dist/src/form/create.form-base.js +1 -1
  10. package/dist/src/form/create.form-base.js.map +1 -1
  11. package/dist/src/form/create.form-grid-layout.js +1 -1
  12. package/dist/src/form/create.form-grid-layout.js.map +1 -1
  13. package/dist/src/form/create.form-grid-layout.units.js +1 -1
  14. package/dist/src/form/create.form-grid-layout.units.js.map +1 -1
  15. package/dist/src/form/create.select-simple.js +1 -1
  16. package/dist/src/form/create.select-simple.js.map +1 -1
  17. package/dist/src/form/create.select-with-api.js +1 -1
  18. package/dist/src/form/create.select-with-api.js.map +1 -1
  19. package/dist/src/form/dino-form.js.map +1 -1
  20. package/dist/src/table/create.table.js +1 -1
  21. package/dist/src/table/create.table.js.map +1 -1
  22. package/dist/src/utils/helpers.js +1 -1
  23. package/dist/src/utils/helpers.js.map +1 -1
  24. package/dist/types/data-surface/button-switch.d.ts +1 -0
  25. package/dist/types/data-surface/ui.units.d.ts +4 -2
  26. package/dist/types/data-view/dino.d.ts +1 -1
  27. package/dist/types/data-view/query-param-url.d.ts +1 -1
  28. package/dist/types/form/create.date-expired.d.ts +10 -5
  29. package/dist/types/form/create.form-base.d.ts +1 -0
  30. package/dist/types/form/create.form-grid-layout.d.ts +6 -4
  31. package/dist/types/form/create.form-grid-layout.units.d.ts +12 -6
  32. package/dist/types/form/create.select-simple.d.ts +13 -3
  33. package/dist/types/form/create.select-with-api.d.ts +56 -4
  34. package/dist/types/form/dino-form.d.ts +4 -3
  35. package/dist/types/form/index.d.ts +2 -1
  36. package/package.json +1 -1
@@ -15,6 +15,7 @@ export interface IFormBaseConfigs<T> {
15
15
  export interface IFormBaseParams<T> extends IFormBaseConfigs<T> {
16
16
  }
17
17
  export interface IFormBaseProps<T> extends PropsWithChildren, IFormBaseConfigs<T> {
18
+ className?: string;
18
19
  onSubmit: (data: Partial<T>, e: React.FormEvent<HTMLFormElement>) => Promise<void>;
19
20
  onError?: (error: IPartialError<T>) => void;
20
21
  slots?: IFormBaseSlots;
@@ -9,13 +9,13 @@ export interface IFormGridLayoutConfig<T> {
9
9
  placeholder?: string;
10
10
  sizes?: RegularBreakpoints;
11
11
  defaultValue?: any;
12
+ className?: string;
12
13
  inputElement?: ComponentType<IFormInputBase<T>>;
13
14
  }
14
15
  export type IPreSubmitEvent<T> = (value: Partial<T>, oldValue?: T) => Partial<T>;
15
16
  export interface IFormGridLayoutMergedConfigs<T> {
16
- hiddenFields?: Partial<Record<keyof T, boolean>>;
17
- getHiddenFields?: (state: Partial<T>, model?: Partial<T>) => Partial<Record<keyof T, boolean>>;
18
- disabledFields?: Partial<Record<keyof T, boolean>>;
17
+ hiddenFields?: Partial<Record<keyof T, boolean>> | ((state: Partial<T>, model?: Partial<T>) => Partial<Record<keyof T, boolean>>);
18
+ disabledFields?: Partial<Record<keyof T, boolean>> | ((state: Partial<T>, model?: Partial<T>) => Partial<Record<keyof T, boolean>>);
19
19
  }
20
20
  export interface IFormGridLayoutSlots<T> extends IFormGridLayoutMergedConfigs<T> {
21
21
  action?: ComponentType<IFormBase<T>>;
@@ -26,13 +26,14 @@ export interface IFormGridLayoutSlots<T> extends IFormGridLayoutMergedConfigs<T>
26
26
  Success?: boolean;
27
27
  Fail?: boolean;
28
28
  };
29
- contentProps?: BoxProps;
29
+ rootProps?: BoxProps;
30
30
  preSubmit?: IPreSubmitEvent<T>;
31
31
  formSlots?: IFormBaseSlots;
32
32
  }
33
33
  export interface IFormGridLayoutParams<T> extends IFormGridLayoutSlots<T> {
34
34
  configs: IFormGridLayoutConfig<T>[];
35
35
  validate: FormValidator<Partial<T>>;
36
+ autoHeight?: boolean;
36
37
  }
37
38
  export interface IFormGridLayoutProps<T> {
38
39
  data?: T;
@@ -42,6 +43,7 @@ export interface IFormGridLayoutProps<T> {
42
43
  onClose?: () => void;
43
44
  sx?: SxProps<Theme>;
44
45
  slots?: IFormGridLayoutSlots<T>;
46
+ autoHeight?: boolean;
45
47
  }
46
48
  export interface IFormGridLayoutState {
47
49
  loadding?: boolean;
@@ -1,12 +1,18 @@
1
- import React, { ReactNode } from 'react';
1
+ import { FC, ReactNode } from 'react';
2
2
  import { IFormBase } from './types';
3
- export declare const ContentWrap: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
4
- ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
3
+ export declare const formGridLayoutClasses: {
4
+ root: string;
5
+ form: string;
6
+ bottomBar: string;
7
+ autoHeight: string;
8
+ };
9
+ export declare const FormGridLayoutStyled: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
10
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
5
11
  }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
6
12
  export interface IFormBottomBarProps<T> extends IFormBase<T> {
7
13
  before?: ReactNode;
8
14
  }
9
- export declare function CreateFormBottomBar<T>(): React.FC<IFormBottomBarProps<T>>;
10
- export declare const FormBottomBarWrap: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
11
- ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
15
+ export declare function CreateFormBottomBar<T>(): FC<IFormBottomBarProps<T>>;
16
+ export declare const FormBottomBarWrap: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
17
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
12
18
  }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
@@ -1,6 +1,6 @@
1
1
  import type { ComponentType } from 'react';
2
2
  import type { SelectProps } from '@mui/material';
3
- import { IFormInputBase } from './types';
3
+ import type { IFormInputBase } from '../form/types';
4
4
  import type { IRichTooltipPanelConfig } from '../components/rich-tooltip';
5
5
  export interface ISelectSimpleOption<T extends string = string> {
6
6
  name: string;
@@ -11,10 +11,12 @@ export interface ISelectSimpleSlots {
11
11
  }
12
12
  export interface ISelectSimpleProps<T> extends Partial<IFormInputBase<T>> {
13
13
  options?: ISelectSimpleOption[];
14
+ value?: any;
14
15
  onChange?: (value: ISelectSimpleOption) => void;
15
16
  slots?: ISelectSimpleSlots;
16
17
  fullWidth?: boolean;
17
18
  tooltip?: IRichTooltipPanelConfig;
19
+ endAdornment?: React.ReactNode;
18
20
  }
19
21
  export interface ISelectSimpleState {
20
22
  value?: string;
@@ -22,6 +24,14 @@ export interface ISelectSimpleState {
22
24
  export interface ISelectSimpleParams extends ISelectSimpleSlots {
23
25
  options?: ISelectSimpleOption[];
24
26
  tooltip?: IRichTooltipPanelConfig;
27
+ endAdornment?: React.ReactNode;
25
28
  }
26
- declare function CreateSelectSimple<T>(args?: ISelectSimpleParams): ComponentType<ISelectSimpleProps<T>>;
27
- export default CreateSelectSimple;
29
+ declare function createSelectSimple<T>(args?: ISelectSimpleParams): ComponentType<ISelectSimpleProps<T>>;
30
+ export default createSelectSimple;
31
+ export declare const selectSimpleClasses: {
32
+ root: string;
33
+ tooltipWrap: string;
34
+ small: string;
35
+ tooltip: string;
36
+ endAdornment: string;
37
+ };
@@ -1,6 +1,6 @@
1
- import type { ComponentType } from 'react';
2
- import type { TextFieldProps, AutocompleteRenderOptionState } from '@mui/material';
1
+ /// <reference types="react" />
3
2
  import { IFormInputBase } from './types';
3
+ import type { FilterOptionsState, TextFieldProps, AutocompleteRenderOptionState } from '@mui/material';
4
4
  import type { IRichTooltipPanelConfig } from '../components/rich-tooltip';
5
5
  export interface ISelectWithApiOption<TOther = any> {
6
6
  Id: string;
@@ -30,5 +30,57 @@ export interface ISelectWithApiParams<O extends ISelectWithApiOption> {
30
30
  tooltip?: IRichTooltipPanelConfig;
31
31
  renderOption?: (props: React.HTMLAttributes<HTMLElement>, option: O, state: AutocompleteRenderOptionState) => React.ReactNode;
32
32
  }
33
- declare const CreateSelectWithApi: <T, O extends ISelectWithApiOption<any> = ISelectWithApiOption<any>>(params?: ISelectWithApiParams<O> | undefined) => ComponentType<ISelectWithApiProps<T, O>>;
34
- export default CreateSelectWithApi;
33
+ export interface ISelectWithApiHandle {
34
+ clear: () => void;
35
+ }
36
+ declare function createSelectWithApi<T, O extends ISelectWithApiOption = ISelectWithApiOption>(params?: ISelectWithApiParams<O>): {
37
+ new (props: ISelectWithApiProps<T, O>): {
38
+ abortController: {
39
+ signalController: AbortController;
40
+ };
41
+ refInput: HTMLInputElement | null;
42
+ existedIds: string[];
43
+ componentDidMount(): void;
44
+ componentWillUnmount(): void;
45
+ componentDidUpdate(prevProps: Readonly<ISelectWithApiProps<T, O>>): void;
46
+ render(): import("react/jsx-runtime").JSX.Element;
47
+ renderTooltip: () => import("react/jsx-runtime").JSX.Element | null;
48
+ getRootClasses: () => string;
49
+ getFetchDataFunc: () => ISelectWithApiFetchData<O>;
50
+ getWrappedRenderOption: () => ((props: any, option: O, state: AutocompleteRenderOptionState) => import("react/jsx-runtime").JSX.Element) | undefined;
51
+ timer: {
52
+ _timer: number;
53
+ _second: number;
54
+ callback: (value: string) => Promise<void>;
55
+ start: (text: string) => void;
56
+ clear: () => void;
57
+ };
58
+ fetchData: () => Promise<void>;
59
+ handleChange: (_: React.SyntheticEvent, value: O | null) => void;
60
+ handleInputChange: (_: React.SyntheticEvent, value: string) => void;
61
+ fillterOptions: (options: O[], state: FilterOptionsState<O>) => O[];
62
+ getLabel: () => string | number | boolean | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | undefined;
63
+ getDefaultValue: () => any;
64
+ getOptionsFilter<O_1 extends ISelectWithApiOption<any> = ISelectWithApiOption<any>>(options: O_1[], existedId?: string[]): O_1[];
65
+ clear: () => void;
66
+ context: unknown;
67
+ setState<K extends keyof ISelectWithApiState<O>>(state: ISelectWithApiState<O> | ((prevState: Readonly<ISelectWithApiState<O>>, props: Readonly<ISelectWithApiProps<T, O>>) => ISelectWithApiState<O> | Pick<ISelectWithApiState<O>, K> | null) | Pick<ISelectWithApiState<O>, K> | null, callback?: (() => void) | undefined): void;
68
+ forceUpdate(callback?: (() => void) | undefined): void;
69
+ readonly props: Readonly<ISelectWithApiProps<T, O>>;
70
+ state: Readonly<ISelectWithApiState<O>>;
71
+ refs: {
72
+ [key: string]: import("react").ReactInstance;
73
+ };
74
+ shouldComponentUpdate?(nextProps: Readonly<ISelectWithApiProps<T, O>>, nextState: Readonly<ISelectWithApiState<O>>, nextContext: any): boolean;
75
+ componentDidCatch?(error: Error, errorInfo: import("react").ErrorInfo): void;
76
+ getSnapshotBeforeUpdate?(prevProps: Readonly<ISelectWithApiProps<T, O>>, prevState: Readonly<ISelectWithApiState<O>>): any;
77
+ componentWillMount?(): void;
78
+ UNSAFE_componentWillMount?(): void;
79
+ componentWillReceiveProps?(nextProps: Readonly<ISelectWithApiProps<T, O>>, nextContext: any): void;
80
+ UNSAFE_componentWillReceiveProps?(nextProps: Readonly<ISelectWithApiProps<T, O>>, nextContext: any): void;
81
+ componentWillUpdate?(nextProps: Readonly<ISelectWithApiProps<T, O>>, nextState: Readonly<ISelectWithApiState<O>>, nextContext: any): void;
82
+ UNSAFE_componentWillUpdate?(nextProps: Readonly<ISelectWithApiProps<T, O>>, nextState: Readonly<ISelectWithApiState<O>>, nextContext: any): void;
83
+ };
84
+ contextType?: import("react").Context<any> | undefined;
85
+ };
86
+ export default createSelectWithApi;
@@ -5,7 +5,8 @@ import CreateInputFile from './create.input.file';
5
5
  import CreateTextEditor from './create.text-editor';
6
6
  import createColorPicker from './create.color-picker';
7
7
  import CreateDateExpired from './create.date-expired';
8
- import CreateSelectSimple from './create.select-simple';
8
+ import createSelectSimple from './create.select-simple';
9
+ import createSelectWithApi from './create.select-with-api';
9
10
  import createInputImageFile from './create.input.image-file';
10
11
  import CreateAutocompleteChip from './create.autocomplete.chips';
11
12
  declare class DinoFormBase {
@@ -28,8 +29,8 @@ declare class DinoFormBase {
28
29
  createInputFile: typeof CreateInputFile;
29
30
  createInputImageFile: typeof createInputImageFile;
30
31
  createInput: <T>(params?: import("./create.input").IInputParams<T> | undefined) => import("react").ComponentType<import("./create.input").IInputProps<T>>;
31
- createSelectSimple: typeof CreateSelectSimple;
32
- createSelectWithApi: <T, O extends import("./create.select-with-api").ISelectWithApiOption<any> = import("./create.select-with-api").ISelectWithApiOption<any>>(params?: import("./create.select-with-api").ISelectWithApiParams<O> | undefined) => import("react").ComponentType<import("./create.select-with-api").ISelectWithApiProps<T, O>>;
32
+ createSelectSimple: typeof createSelectSimple;
33
+ createSelectWithApi: typeof createSelectWithApi;
33
34
  createTextEditor: typeof CreateTextEditor;
34
35
  }
35
36
  declare const DinoForm: DinoFormBase;
@@ -3,8 +3,9 @@ export { default as FormValidator } from './validator';
3
3
  export * from './validator';
4
4
  export { default as DinoForm } from './dino-form';
5
5
  export { getErrorMessage, convertFormDataToJson, validateCsvModel } from './helpers';
6
- export type { ISelectWithApiOption, ISelectWithApiFetchData, ISelectWithApiParams } from './create.select-with-api';
6
+ export type { ISelectWithApiOption, ISelectWithApiFetchData, ISelectWithApiParams, ISelectWithApiHandle } from './create.select-with-api';
7
7
  export type { InputBaseImage } from './create.input';
8
8
  export type { ISelectSimpleOption } from './create.select-simple';
9
9
  export * from './decorator';
10
10
  export * from './decorator.form';
11
+ export { formGridLayoutClasses } from './create.form-grid-layout.units';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dinocollab-core",
3
- "version": "2.2.13",
3
+ "version": "2.2.14",
4
4
  "description": "Dinocollab core - libraries for building collaborative applications with React 18",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",