@scbt-ecom/ui 0.137.0 → 0.138.1
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/lib/widgets/authProvider/AuthProvider.js +1 -1
- package/dist/lib/widgets/authProvider/AuthProvider.js.map +1 -1
- package/dist/lib/widgets/authProvider/model/index.js +2 -0
- package/dist/lib/widgets/authProvider/model/index.js.map +1 -0
- package/dist/lib/widgets/authProvider/ui/Esia.js.map +1 -1
- package/dist/lib/widgets/authProvider/ui/MobileId.js.map +1 -1
- package/dist/lib/widgets/authProvider/ui/ui/Links.js.map +1 -1
- package/dist/lib/widgets/dynamicForm/DynamicForm.js +1 -1
- package/dist/lib/widgets/dynamicForm/DynamicForm.js.map +1 -1
- package/dist/lib/widgets/dynamicForm/model/helpers.js +2 -0
- package/dist/lib/widgets/dynamicForm/model/helpers.js.map +1 -0
- package/dist/lib/widgets/dynamicForm/model/index.js +1 -1
- package/dist/lib/widgets/dynamicFormDialog/DynamicFormDialog.js +1 -1
- package/dist/lib/widgets/dynamicFormDialog/DynamicFormDialog.js.map +1 -1
- package/dist/lib/widgets/model/helpers.js +2 -2
- package/dist/stats.html +1 -1
- package/dist/types/lib/widgets/authProvider/AuthProvider.d.ts +2 -3
- package/dist/types/lib/widgets/authProvider/model/index.d.ts +2 -0
- package/dist/types/lib/widgets/authProvider/model/types.d.ts +12 -15
- package/dist/types/lib/widgets/authProvider/ui/Esia.d.ts +2 -2
- package/dist/types/lib/widgets/authProvider/ui/MobileId.d.ts +2 -2
- package/dist/types/lib/widgets/authProvider/ui/ui/Links.d.ts +2 -2
- package/dist/types/lib/widgets/dynamicForm/DynamicForm.d.ts +4 -15
- package/dist/types/lib/widgets/dynamicForm/model/helpers.d.ts +10 -0
- package/dist/types/lib/widgets/dynamicForm/model/index.d.ts +1 -1
- package/dist/types/lib/widgets/dynamicForm/model/types.d.ts +14 -28
- package/dist/types/lib/widgets/dynamicFormDialog/DynamicFormDialog.d.ts +2 -1
- package/dist/types/lib/widgets/model/helpers.d.ts +2 -2
- package/package.json +1 -1
- package/dist/lib/widgets/dynamicForm/model/getFieldsProgress.js +0 -2
- package/dist/lib/widgets/dynamicForm/model/getFieldsProgress.js.map +0 -1
- package/dist/types/lib/widgets/dynamicForm/model/getFieldsProgress.d.ts +0 -7
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
export declare const AuthProvider: (props: AuthProviderProps) => React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
1
|
+
import { AuthVariant } from './model';
|
|
2
|
+
export declare const AuthProvider: (props: AuthVariant) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -29,43 +29,40 @@ type EsiaClasses = {
|
|
|
29
29
|
badge?: string;
|
|
30
30
|
links?: TLinksClasses;
|
|
31
31
|
};
|
|
32
|
-
export type
|
|
32
|
+
export type BaseAuthSchema = {
|
|
33
33
|
mainLink: {
|
|
34
34
|
title: string;
|
|
35
35
|
mobileTitle: string;
|
|
36
36
|
};
|
|
37
|
-
ssoAuthorizationTop?: boolean;
|
|
38
37
|
linkDescription?: string;
|
|
39
38
|
classes?: CombineClasses;
|
|
40
39
|
badge?: string;
|
|
41
40
|
loaderProps?: LoaderProps;
|
|
42
41
|
isLoading?: boolean;
|
|
42
|
+
onClick?: React.MouseEventHandler<HTMLButtonElement>;
|
|
43
43
|
};
|
|
44
|
-
type CombineAuthSchema = {
|
|
45
|
-
esiaConfig: Omit<
|
|
46
|
-
mobileIdConfig: Omit<
|
|
44
|
+
export type CombineAuthSchema = {
|
|
45
|
+
esiaConfig: Omit<BaseAuthSchema, 'badge'> & Pick<AuthEsia, 'classes'>;
|
|
46
|
+
mobileIdConfig: Omit<BaseAuthSchema, 'badge'> & Pick<AuthMobileId, 'classes'>;
|
|
47
47
|
subtitle?: string;
|
|
48
48
|
badge?: string;
|
|
49
49
|
classes?: CombineClasses;
|
|
50
50
|
};
|
|
51
|
-
type
|
|
51
|
+
export type AuthEsia = BaseAuthSchema & {
|
|
52
52
|
classes?: EsiaClasses;
|
|
53
53
|
} & {
|
|
54
54
|
mode: typeof AUTH_PROVIDER_MODE.ESIA;
|
|
55
|
-
onClick?: React.MouseEventHandler<HTMLButtonElement>;
|
|
56
55
|
};
|
|
57
|
-
type
|
|
56
|
+
export type AuthMobileId = BaseAuthSchema & {
|
|
58
57
|
classes?: MobileIdClasses;
|
|
59
58
|
} & {
|
|
60
59
|
mode: typeof AUTH_PROVIDER_MODE.MOBILE_ID;
|
|
61
|
-
onClick?: React.MouseEventHandler<HTMLButtonElement>;
|
|
62
60
|
};
|
|
63
|
-
type
|
|
61
|
+
export type AuthCombine = CombineAuthSchema & {
|
|
64
62
|
mode: typeof AUTH_PROVIDER_MODE.COMBINE;
|
|
65
|
-
onClick?: React.MouseEventHandler<HTMLButtonElement>;
|
|
66
63
|
};
|
|
67
|
-
export type
|
|
68
|
-
export type
|
|
69
|
-
export type
|
|
70
|
-
export type
|
|
64
|
+
export type AuthVariant = AuthCombine | AuthMobileId | AuthEsia;
|
|
65
|
+
export type EsiaProps = Omit<AuthEsia, 'mode'>;
|
|
66
|
+
export type MobileIdProps = Omit<AuthMobileId, 'mode'>;
|
|
67
|
+
export type CombineProps = Omit<AuthCombine, 'mode'>;
|
|
71
68
|
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const Esia: ({ mainLink, linkDescription, isLoading, badge, loaderProps, classes, onClick }:
|
|
1
|
+
import { EsiaProps } from '../model';
|
|
2
|
+
export declare const Esia: ({ mainLink, linkDescription, isLoading, badge, loaderProps, classes, onClick }: EsiaProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const MobileId: ({ mainLink, linkDescription, isLoading, badge, loaderProps, classes, onClick }:
|
|
1
|
+
import { MobileIdProps } from '../model';
|
|
2
|
+
export declare const MobileId: ({ mainLink, linkDescription, isLoading, badge, loaderProps, classes, onClick }: MobileIdProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BaseAuthSchema } from '../../model/types';
|
|
2
2
|
export type TLinksClasses = {
|
|
3
3
|
linksWrapper?: string;
|
|
4
4
|
linksMainLink?: string;
|
|
5
5
|
linksSubLink?: string;
|
|
6
6
|
};
|
|
7
|
-
interface ILinksProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, Pick<
|
|
7
|
+
interface ILinksProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, Pick<BaseAuthSchema, 'linkDescription' | 'mainLink'> {
|
|
8
8
|
isMobile: boolean;
|
|
9
9
|
classes?: TLinksClasses;
|
|
10
10
|
}
|
|
@@ -1,19 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Approvement, ApprovementType, Auth, AuthMode, Chips, ChipsType, Progress, ProgressField, ProgressType } from './model';
|
|
1
|
+
import { Approvement, ApprovementClasses, ApprovementType, Auth, AuthMode, Chips, ChipsClasses, ChipsType, Progress, ProgressField, ProgressType, SubmitProps } from './model';
|
|
3
2
|
import { FieldValidation } from '../../../src/shared/utils';
|
|
4
|
-
import { ButtonProps,
|
|
3
|
+
import { ButtonProps, ProgressBar } from '../../shared/ui';
|
|
5
4
|
import { FieldElement } from '../fieldMapper';
|
|
6
|
-
type SubmitProps = {
|
|
7
|
-
submitCallback: <T extends FieldValues>(values: T) => void;
|
|
8
|
-
};
|
|
9
|
-
type ChipsClasses = {
|
|
10
|
-
root?: string;
|
|
11
|
-
icon?: string;
|
|
12
|
-
};
|
|
13
|
-
type ApprovementClasses = {
|
|
14
|
-
checkbox?: React.ComponentProps<typeof CheckboxBase>['classes'];
|
|
15
|
-
content?: string;
|
|
16
|
-
};
|
|
17
5
|
type DynamicFormClasses = {
|
|
18
6
|
root?: string;
|
|
19
7
|
title?: string;
|
|
@@ -29,6 +17,7 @@ export type DynamicFormProps<AType extends ApprovementType, CType extends ChipsT
|
|
|
29
17
|
validation: FieldValidation;
|
|
30
18
|
progress: ProgressField;
|
|
31
19
|
}>[];
|
|
20
|
+
ssoAuthorizationTop: boolean;
|
|
32
21
|
title: string;
|
|
33
22
|
progress: Progress<PType>;
|
|
34
23
|
approvement: Approvement<AType>;
|
|
@@ -38,5 +27,5 @@ export type DynamicFormProps<AType extends ApprovementType, CType extends ChipsT
|
|
|
38
27
|
buttonGroup: ButtonProps[];
|
|
39
28
|
auth: Auth<AuthType>;
|
|
40
29
|
};
|
|
41
|
-
export declare const DynamicForm: <AType extends ApprovementType, CType extends ChipsType, PType extends ProgressType, AuthType extends AuthMode>({ fields, title, progress, approvement, chips, submitProps, auth, classes, buttonGroup }: DynamicFormProps<AType, CType, PType, AuthType>) => import("react/jsx-runtime").JSX.Element;
|
|
30
|
+
export declare const DynamicForm: <AType extends ApprovementType, CType extends ChipsType, PType extends ProgressType, AuthType extends AuthMode>({ fields, title, progress, approvement, chips, submitProps, auth, classes, buttonGroup, ssoAuthorizationTop }: DynamicFormProps<AType, CType, PType, AuthType>) => import("react/jsx-runtime").JSX.Element;
|
|
42
31
|
export default DynamicForm;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { FieldValues } from 'react-hook-form';
|
|
2
|
+
import { Approvement, ApprovementClasses, ApprovementType, Auth, AuthMode, Progress, ProgressField, ProgressType } from './types';
|
|
3
|
+
import { ISubscribedField } from '../../../shared/hooks';
|
|
4
|
+
import { CheckedState } from '../../../shared/ui';
|
|
5
|
+
import { FieldElement } from '../../fieldMapper';
|
|
6
|
+
export declare const withAuthProvider: <Mode extends AuthMode>(auth: Auth<Mode>) => import("react/jsx-runtime").JSX.Element | null;
|
|
7
|
+
export declare const withApprovement: <Type extends ApprovementType>(approvement: Approvement<Type>, checked: CheckedState, onCheckedChange: (checked: CheckedState) => void, classes?: ApprovementClasses) => React.ReactNode;
|
|
8
|
+
export declare const getFieldsProgress: <TFieldValues extends FieldValues, Type extends ProgressType>(progress: Progress<Type>, fields: FieldElement<any, any, {
|
|
9
|
+
progress: ProgressField;
|
|
10
|
+
}>[]) => ISubscribedField<TFieldValues>[] | null;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FieldValues } from 'react-hook-form';
|
|
2
|
+
import { AuthCombine, AuthEsia, AuthMobileId } from '../../authProvider';
|
|
3
|
+
import { AllowedIcons, CheckboxBase } from '../../../shared/ui';
|
|
2
4
|
type ApprovementDisabled = {
|
|
3
5
|
type: 'off';
|
|
4
6
|
};
|
|
@@ -38,36 +40,20 @@ export type ProgressField = {
|
|
|
38
40
|
progress: number;
|
|
39
41
|
maxPercent: number;
|
|
40
42
|
};
|
|
41
|
-
type
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
};
|
|
52
|
-
badge?: string;
|
|
53
|
-
onClick?: React.MouseEventHandler<HTMLButtonElement>;
|
|
43
|
+
export type SubmitProps = {
|
|
44
|
+
submitCallback: <T extends FieldValues>(values: T) => void;
|
|
45
|
+
};
|
|
46
|
+
export type ChipsClasses = {
|
|
47
|
+
root?: string;
|
|
48
|
+
icon?: string;
|
|
49
|
+
};
|
|
50
|
+
export type ApprovementClasses = {
|
|
51
|
+
checkbox?: React.ComponentProps<typeof CheckboxBase>['classes'];
|
|
52
|
+
content?: string;
|
|
54
53
|
};
|
|
55
54
|
export type AuthMode = 'off' | 'esia' | 'mobileId' | 'combine';
|
|
56
55
|
type AuthDisabled = {
|
|
57
56
|
mode: 'off';
|
|
58
57
|
};
|
|
59
|
-
type
|
|
60
|
-
mode: 'esia';
|
|
61
|
-
};
|
|
62
|
-
type AuthMobileId = BaseAuth & {
|
|
63
|
-
mode: 'mobileId';
|
|
64
|
-
};
|
|
65
|
-
type AuthCombined = {
|
|
66
|
-
mode: 'combine';
|
|
67
|
-
esiaConfig: BaseAuth;
|
|
68
|
-
mobileIdConfig: BaseAuth;
|
|
69
|
-
subtitle?: string;
|
|
70
|
-
badge?: string;
|
|
71
|
-
};
|
|
72
|
-
export type Auth<Mode extends AuthMode> = Mode extends 'off' ? AuthDisabled : Mode extends 'esia' ? AuthEsia : Mode extends 'mobileId' ? AuthMobileId : AuthCombined;
|
|
58
|
+
export type Auth<Mode extends AuthMode> = Mode extends 'off' ? AuthDisabled : Mode extends 'esia' ? AuthEsia : Mode extends 'mobileId' ? AuthMobileId : AuthCombine;
|
|
73
59
|
export {};
|
|
@@ -30,6 +30,7 @@ export type DynamicFormDialogProps<AType extends ApprovementType, AuthType exten
|
|
|
30
30
|
classes?: DynamicFormDialogClasses;
|
|
31
31
|
buttonGroup: ButtonProps[];
|
|
32
32
|
auth: Auth<AuthType>;
|
|
33
|
+
ssoAuthorizationTop?: boolean;
|
|
33
34
|
};
|
|
34
|
-
export declare const DynamicFormDialog: <AType extends ApprovementType, AuthType extends AuthMode>({ fields, title, approvement, submitProps, dialogId, classes, auth, buttonGroup, ...props }: DynamicFormDialogProps<AType, AuthType>) => import("react/jsx-runtime").JSX.Element;
|
|
35
|
+
export declare const DynamicFormDialog: <AType extends ApprovementType, AuthType extends AuthMode>({ fields, title, approvement, submitProps, dialogId, classes, auth, buttonGroup, ssoAuthorizationTop, ...props }: DynamicFormDialogProps<AType, AuthType>) => import("react/jsx-runtime").JSX.Element;
|
|
35
36
|
export default DynamicFormDialog;
|
|
@@ -4,8 +4,8 @@ export declare const WIDGET_LIST_MAP: {
|
|
|
4
4
|
readonly seoHeader: import('react').LazyExoticComponent<({ categories, helpers, phone, breadcrumbs, classes }: import('..').SeoHeaderProps) => import("react/jsx-runtime").JSX.Element>;
|
|
5
5
|
readonly banner: import('react').LazyExoticComponent<({ variant, ...props }: import('..').BannerProps) => import("react/jsx-runtime").JSX.Element>;
|
|
6
6
|
readonly calculator: import('react').LazyExoticComponent<({ calculators, headline, classes }: import('..').CalculatorProps) => import("react/jsx-runtime").JSX.Element>;
|
|
7
|
-
readonly form: import('react').LazyExoticComponent<(<AType extends import('../dynamicForm/model').ApprovementType, CType extends import('../dynamicForm/model').ChipsType, PType extends import('../dynamicForm/model').ProgressType, AuthType extends import('../dynamicForm/model').AuthMode>({ fields, title, progress, approvement, chips, submitProps, auth, classes, buttonGroup }: import('..').DynamicFormProps<AType, CType, PType, AuthType>) => import("react/jsx-runtime").JSX.Element)>;
|
|
8
|
-
readonly formDialog: import('react').LazyExoticComponent<(<AType extends import('../dynamicFormDialog/model').ApprovementType, AuthType extends import('../dynamicForm/model').AuthMode>({ fields, title, approvement, submitProps, dialogId, classes, auth, buttonGroup, ...props }: import('../dynamicFormDialog/DynamicFormDialog').DynamicFormDialogProps<AType, AuthType>) => import("react/jsx-runtime").JSX.Element)>;
|
|
7
|
+
readonly form: import('react').LazyExoticComponent<(<AType extends import('../dynamicForm/model').ApprovementType, CType extends import('../dynamicForm/model').ChipsType, PType extends import('../dynamicForm/model').ProgressType, AuthType extends import('../dynamicForm/model').AuthMode>({ fields, title, progress, approvement, chips, submitProps, auth, classes, buttonGroup, ssoAuthorizationTop }: import('..').DynamicFormProps<AType, CType, PType, AuthType>) => import("react/jsx-runtime").JSX.Element)>;
|
|
8
|
+
readonly formDialog: import('react').LazyExoticComponent<(<AType extends import('../dynamicFormDialog/model').ApprovementType, AuthType extends import('../dynamicForm/model').AuthMode>({ fields, title, approvement, submitProps, dialogId, classes, auth, buttonGroup, ssoAuthorizationTop, ...props }: import('../dynamicFormDialog/DynamicFormDialog').DynamicFormDialogProps<AType, AuthType>) => import("react/jsx-runtime").JSX.Element)>;
|
|
9
9
|
readonly stepper: import('react').LazyExoticComponent<(<WithImages extends boolean>({ steppers, headline, classes }: import('..').StepperProps<WithImages>) => import("react/jsx-runtime").JSX.Element)>;
|
|
10
10
|
readonly benefit: import('react').LazyExoticComponent<({ headline, details, variant, classes }: import('..').BenefitProps) => import("react/jsx-runtime").JSX.Element>;
|
|
11
11
|
readonly longBanner: import('react').LazyExoticComponent<(<Enabled extends boolean>({ headline, buttonConfig, intent, details, image, backgroundColor, classes }: import('..').LongBannerProps<Enabled>) => import("react/jsx-runtime").JSX.Element)>;
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getFieldsProgress.js","sources":["../../../../../lib/widgets/dynamicForm/model/getFieldsProgress.ts"],"sourcesContent":["import { type FieldPath, type FieldValues } from 'react-hook-form'\nimport type { Progress, ProgressField, ProgressType } from './types'\nimport { type ISubscribedField } from '$/shared/hooks'\nimport type { FieldElement } from '$/widgets/fieldMapper'\n\nexport const getFieldsProgress = <TFieldValues extends FieldValues, Type extends ProgressType>(\n progress: Progress<Type>,\n fields: FieldElement<any, any, { progress: ProgressField }>[]\n) => {\n if (!progress.enabled) return null\n\n return fields.map<ISubscribedField<TFieldValues>>((field) => ({\n name: field.args.name as FieldPath<TFieldValues>,\n ...field.args.progress\n }))\n}\n"],"names":["getFieldsProgress","progress","fields","field"],"mappings":"AAKO,MAAMA,EAAoB,CAC/BC,EACAC,IAEKD,EAAS,QAEPC,EAAO,IAAqCC,IAAW,CAC5D,KAAMA,EAAM,KAAK,KACjB,GAAGA,EAAM,KAAK,QAAA,EACd,EAL4B"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { FieldValues } from 'react-hook-form';
|
|
2
|
-
import { Progress, ProgressField, ProgressType } from './types';
|
|
3
|
-
import { ISubscribedField } from '../../../shared/hooks';
|
|
4
|
-
import { FieldElement } from '../../fieldMapper';
|
|
5
|
-
export declare const getFieldsProgress: <TFieldValues extends FieldValues, Type extends ProgressType>(progress: Progress<Type>, fields: FieldElement<any, any, {
|
|
6
|
-
progress: ProgressField;
|
|
7
|
-
}>[]) => ISubscribedField<TFieldValues>[] | null;
|