@central-design-system/components 3.0.0-alpha.4 → 3.0.0-alpha.6
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/cds.css +1 -1
- package/dist/cds.d.ts +51 -47
- package/dist/cds.es.js +4479 -3571
- package/dist/cds.umd.js +1 -1
- package/dist/components/CdsButton/CdsButton.vue.d.ts +10 -0
- package/dist/components/CdsCheckbox/CdsCheckbox.vue.d.ts +11 -11
- package/dist/components/CdsCheckbox/CdsCheckboxGroup.vue.d.ts +18 -18
- package/dist/components/CdsCombobox/CdsCombobox.vue.d.ts +127 -185
- package/dist/components/CdsDatePicker/CdsDatePicker.vue.d.ts +17 -17
- package/dist/components/CdsDatePicker/composable/calendar.d.ts +3 -1
- package/dist/components/CdsDropdown/CdsDropdown.vue.d.ts +94 -95
- package/dist/components/CdsForm/CdsForm.vue.d.ts +1 -1
- package/dist/components/CdsGrid/composable/grid.d.ts +2 -1
- package/dist/components/CdsInput/CdsInput.vue.d.ts +11 -11
- package/dist/components/CdsMenu/CdsMenu.vue.d.ts +24 -18
- package/dist/components/CdsOverlay/CdsOverlay.vue.d.ts +9 -13
- package/dist/components/CdsOverlay/composable/locationStrategies.d.ts +3 -0
- package/dist/components/CdsPagination/CdsPagination.vue.d.ts +142 -0
- package/dist/components/CdsRadioButton/CdsRadio.vue.d.ts +18 -18
- package/dist/components/CdsRadioButton/CdsRadioButton.vue.d.ts +18 -18
- package/dist/components/CdsSelect/CdsSelect.vue.d.ts +51 -33
- package/dist/components/CdsTextArea/CdsTextArea.vue.d.ts +83 -62
- package/dist/components/CdsTextInput/CdsTextInput.vue.d.ts +37 -73
- package/dist/components/CdsTimePicker/CdsTimePicker.vue.d.ts +171 -0
- package/dist/components/CdsTimePicker/composable/index.d.ts +1 -0
- package/dist/components/CdsTimePicker/composable/time.d.ts +134 -0
- package/dist/components/CdsTooltip/CdsTooltip.vue.d.ts +765 -0
- package/dist/components/index.d.ts +4 -1
- package/dist/composable/datetime.d.ts +2 -17
- package/dist/composable/dimensions.d.ts +23 -5
- package/dist/composable/display.d.ts +56 -0
- package/dist/composable/index.d.ts +4 -0
- package/dist/composable/overlay.d.ts +1 -1
- package/dist/composable/readonly.d.ts +19 -0
- package/dist/composable/refs.d.ts +6 -0
- package/dist/composable/resizeObserver.d.ts +7 -0
- package/dist/composable/validation.d.ts +0 -16
- package/dist/create.d.ts +21 -0
- package/dist/globals.d.ts +2 -0
- package/dist/utils/date.d.ts +2 -1
- package/dist/utils/helpers.d.ts +3 -0
- package/package.json +1 -2
- package/src/scss/themes/index.ts +1 -1
- package/dist/types/CdsOptions.d.ts +0 -3
- package/src/utils/__test__/helper.test.ts +0 -59
- package/src/utils/__test__/mocks/helper.mock.ts +0 -362
- package/src/utils/__test__/mocks/propFactory.mock.ts +0 -88
- package/src/utils/__test__/propFactory.test.ts +0 -9
- package/src/utils/anchor.ts +0 -76
- package/src/utils/animation.ts +0 -62
- package/src/utils/box.ts +0 -39
- package/src/utils/cache.ts +0 -12
- package/src/utils/changeCase/__test__/lowerCase.test.ts +0 -12
- package/src/utils/changeCase/__test__/mocks/lowerCase.mock.ts +0 -80
- package/src/utils/changeCase/__test__/mocks/noCase.mock.ts +0 -131
- package/src/utils/changeCase/__test__/mocks/paramCase.mock.ts +0 -39
- package/src/utils/changeCase/__test__/mocks/pascalCase.mock.ts +0 -46
- package/src/utils/changeCase/__test__/noCase.test.ts +0 -8
- package/src/utils/changeCase/__test__/paramCase.test.ts +0 -8
- package/src/utils/changeCase/__test__/pascalCase.test.ts +0 -8
- package/src/utils/changeCase/lowerCase.ts +0 -56
- package/src/utils/changeCase/noCase.ts +0 -45
- package/src/utils/changeCase/paramCase.ts +0 -11
- package/src/utils/changeCase/pascalCase.ts +0 -24
- package/src/utils/date.ts +0 -1100
- package/src/utils/dom.ts +0 -24
- package/src/utils/getCurrentInstance.ts +0 -43
- package/src/utils/getScrollParent.ts +0 -29
- package/src/utils/globals.ts +0 -8
- package/src/utils/helpers.ts +0 -311
- package/src/utils/index.ts +0 -19
- package/src/utils/propsFactory.ts +0 -92
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Automatically generated by CDS CLI
|
|
3
|
-
* Generated on
|
|
3
|
+
* Generated on 6/1/2023, 2:01:09 PM
|
|
4
4
|
**/
|
|
5
5
|
export { default as CdsBadge } from './CdsBadge/CdsBadge.vue';
|
|
6
6
|
export { default as CdsBreadcrumbs } from './CdsBreadcrumbs/CdsBreadcrumbs.vue';
|
|
@@ -30,6 +30,7 @@ export { default as CdsListItem } from './CdsList/CdsListItem.vue';
|
|
|
30
30
|
export { default as CdsLoader } from './CdsLoader/CdsLoader.vue';
|
|
31
31
|
export { default as CdsMenu } from './CdsMenu/CdsMenu.vue';
|
|
32
32
|
export { default as CdsOverlay } from './CdsOverlay/CdsOverlay.vue';
|
|
33
|
+
export { default as CdsPagination } from './CdsPagination/CdsPagination.vue';
|
|
33
34
|
export { default as CdsRadio } from './CdsRadioButton/CdsRadio.vue';
|
|
34
35
|
export { default as CdsRadioButton } from './CdsRadioButton/CdsRadioButton.vue';
|
|
35
36
|
export { default as CdsSelect } from './CdsSelect/CdsSelect.vue';
|
|
@@ -39,3 +40,5 @@ export { default as CdsStatus } from './CdsStatus/CdsStatus.vue';
|
|
|
39
40
|
export { default as CdsTag } from './CdsTag/CdsTag.vue';
|
|
40
41
|
export { default as CdsTextArea } from './CdsTextArea/CdsTextArea.vue';
|
|
41
42
|
export { default as CdsTextInput } from './CdsTextInput/CdsTextInput.vue';
|
|
43
|
+
export { default as CdsTimePicker } from './CdsTimePicker/CdsTimePicker.vue';
|
|
44
|
+
export { default as CdsTooltip } from './CdsTooltip/CdsTooltip.vue';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { IRawDate, TDateLocale } from '../utils';
|
|
2
1
|
import type { ComputedRef, PropType } from 'vue';
|
|
2
|
+
import type { IRawDate, TDateLocale } from '../utils';
|
|
3
3
|
export interface IDatetimeProps {
|
|
4
4
|
modelValue: string | TDatetimeValueRange | Array<string | TDatetimeValueRange>;
|
|
5
5
|
mask: string;
|
|
@@ -25,8 +25,6 @@ export declare const makeDatetimeProps: <Defaults extends {
|
|
|
25
25
|
modelValue?: unknown;
|
|
26
26
|
mask?: unknown;
|
|
27
27
|
locale?: unknown;
|
|
28
|
-
readonly?: unknown;
|
|
29
|
-
disabled?: unknown;
|
|
30
28
|
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
31
29
|
/**
|
|
32
30
|
* Значение модели
|
|
@@ -58,19 +56,6 @@ export declare const makeDatetimeProps: <Defaults extends {
|
|
|
58
56
|
}>;
|
|
59
57
|
default: null;
|
|
60
58
|
};
|
|
61
|
-
/**
|
|
62
|
-
* Только для чтения
|
|
63
|
-
*/
|
|
64
|
-
readonly: {
|
|
65
|
-
type: PropType<boolean>;
|
|
66
|
-
default: boolean;
|
|
67
|
-
};
|
|
68
|
-
/**
|
|
69
|
-
* Заблокированный
|
|
70
|
-
*/
|
|
71
|
-
disabled: {
|
|
72
|
-
type: PropType<boolean>;
|
|
73
|
-
default: boolean;
|
|
74
|
-
};
|
|
75
59
|
}, Defaults>;
|
|
76
60
|
export declare function useDatetime(props: IDatetimeProps): IUseDatetime;
|
|
61
|
+
export declare function getDayHash(date: IRawDate): string;
|
|
@@ -13,35 +13,53 @@ export interface IUseDimensions {
|
|
|
13
13
|
}
|
|
14
14
|
export declare const makeDimensionProps: <Defaults extends {
|
|
15
15
|
height?: unknown;
|
|
16
|
+
width?: unknown;
|
|
16
17
|
maxHeight?: unknown;
|
|
17
18
|
maxWidth?: unknown;
|
|
18
19
|
minHeight?: unknown;
|
|
19
20
|
minWidth?: unknown;
|
|
20
|
-
width?: unknown;
|
|
21
21
|
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
22
|
+
/**
|
|
23
|
+
* Высота
|
|
24
|
+
*/
|
|
22
25
|
height: {
|
|
23
26
|
type: PropType<string | number>;
|
|
24
27
|
default: string;
|
|
25
28
|
};
|
|
29
|
+
/**
|
|
30
|
+
* Ширина
|
|
31
|
+
*/
|
|
32
|
+
width: {
|
|
33
|
+
type: PropType<string | number>;
|
|
34
|
+
default: string;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Максимальная высота
|
|
38
|
+
*/
|
|
26
39
|
maxHeight: {
|
|
27
40
|
type: PropType<string | number>;
|
|
28
41
|
default: string;
|
|
29
42
|
};
|
|
43
|
+
/**
|
|
44
|
+
* Максимальная ширина
|
|
45
|
+
*/
|
|
30
46
|
maxWidth: {
|
|
31
47
|
type: PropType<string | number>;
|
|
32
48
|
default: string;
|
|
33
49
|
};
|
|
50
|
+
/**
|
|
51
|
+
* Минимальная высота
|
|
52
|
+
*/
|
|
34
53
|
minHeight: {
|
|
35
54
|
type: PropType<string | number>;
|
|
36
55
|
default: string;
|
|
37
56
|
};
|
|
57
|
+
/**
|
|
58
|
+
* Минимальная ширина
|
|
59
|
+
*/
|
|
38
60
|
minWidth: {
|
|
39
61
|
type: PropType<string | number>;
|
|
40
62
|
default: string;
|
|
41
63
|
};
|
|
42
|
-
width: {
|
|
43
|
-
type: PropType<string | number>;
|
|
44
|
-
default: string;
|
|
45
|
-
};
|
|
46
64
|
}, Defaults>;
|
|
47
65
|
export declare function useDimensions(props: IDimensionsProps): IUseDimensions;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { InjectionKey, Ref } from 'vue';
|
|
2
|
+
export declare const breakpoints: readonly ["xs", "sm", "md", "lg", "xl"];
|
|
3
|
+
export declare type TBreakpoint = typeof breakpoints[number];
|
|
4
|
+
export interface IDisplayOptions {
|
|
5
|
+
mobileBreakpoint?: number | TBreakpoint;
|
|
6
|
+
thresholds?: Partial<TDisplayThresholds>;
|
|
7
|
+
}
|
|
8
|
+
export interface IDisplayInstance {
|
|
9
|
+
name: Ref<TBreakpoint>;
|
|
10
|
+
xs: Ref<boolean>;
|
|
11
|
+
sm: Ref<boolean>;
|
|
12
|
+
md: Ref<boolean>;
|
|
13
|
+
lg: Ref<boolean>;
|
|
14
|
+
xl: Ref<boolean>;
|
|
15
|
+
smUp: Ref<boolean>;
|
|
16
|
+
mdUp: Ref<boolean>;
|
|
17
|
+
lgUp: Ref<boolean>;
|
|
18
|
+
xlUp: Ref<boolean>;
|
|
19
|
+
smDown: Ref<boolean>;
|
|
20
|
+
mdDown: Ref<boolean>;
|
|
21
|
+
lgDown: Ref<boolean>;
|
|
22
|
+
xlDown: Ref<boolean>;
|
|
23
|
+
mobile: Ref<boolean>;
|
|
24
|
+
mobileBreakpoint: Ref<number | TBreakpoint>;
|
|
25
|
+
width: Ref<number>;
|
|
26
|
+
height: Ref<number>;
|
|
27
|
+
platform: Ref<TDisplayPlatform>;
|
|
28
|
+
thresholds: Ref<TDisplayThresholds>;
|
|
29
|
+
ssr: boolean;
|
|
30
|
+
update(): void;
|
|
31
|
+
}
|
|
32
|
+
export declare type TDisplayThresholds = {
|
|
33
|
+
[key in TBreakpoint]: number;
|
|
34
|
+
};
|
|
35
|
+
export declare type TDisplayPlatform = {
|
|
36
|
+
android: boolean;
|
|
37
|
+
ios: boolean;
|
|
38
|
+
cordova: boolean;
|
|
39
|
+
electron: boolean;
|
|
40
|
+
chrome: boolean;
|
|
41
|
+
edge: boolean;
|
|
42
|
+
firefox: boolean;
|
|
43
|
+
opera: boolean;
|
|
44
|
+
win: boolean;
|
|
45
|
+
mac: boolean;
|
|
46
|
+
linux: boolean;
|
|
47
|
+
touch: boolean;
|
|
48
|
+
ssr: boolean;
|
|
49
|
+
};
|
|
50
|
+
export declare type TSSROptions = boolean | {
|
|
51
|
+
clientWidth: number;
|
|
52
|
+
clientHeight?: number;
|
|
53
|
+
};
|
|
54
|
+
export declare const DisplaySymbol: InjectionKey<IDisplayInstance>;
|
|
55
|
+
export declare function createDisplay(options?: IDisplayOptions, ssr?: TSSROptions): IDisplayInstance;
|
|
56
|
+
export declare function useDisplay(): IDisplayInstance;
|
|
@@ -6,6 +6,7 @@ export * from './loading';
|
|
|
6
6
|
export * from './appearance';
|
|
7
7
|
export * from './size';
|
|
8
8
|
export * from './disabled';
|
|
9
|
+
export * from './readonly';
|
|
9
10
|
export * from './dark';
|
|
10
11
|
export * from './color';
|
|
11
12
|
export * from './status';
|
|
@@ -33,3 +34,6 @@ export * from './select';
|
|
|
33
34
|
export * from './filter';
|
|
34
35
|
export * from './menu';
|
|
35
36
|
export * from './datetime';
|
|
37
|
+
export * from './resizeObserver';
|
|
38
|
+
export * from './refs';
|
|
39
|
+
export * from './display';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ComputedRef, PropType } from 'vue';
|
|
2
|
+
export interface IReadonlyProps {
|
|
3
|
+
readonly: boolean;
|
|
4
|
+
}
|
|
5
|
+
export interface IUseReadonly {
|
|
6
|
+
readonlyClasses: ComputedRef<string | undefined>;
|
|
7
|
+
}
|
|
8
|
+
export declare const makeReadonlyProps: <Defaults extends {
|
|
9
|
+
readonly?: unknown;
|
|
10
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
11
|
+
/**
|
|
12
|
+
* Только для чтения
|
|
13
|
+
*/
|
|
14
|
+
readonly: {
|
|
15
|
+
type: PropType<boolean>;
|
|
16
|
+
default: boolean;
|
|
17
|
+
};
|
|
18
|
+
}, Defaults>;
|
|
19
|
+
export declare function useReadonly(props: IReadonlyProps): IUseReadonly;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { DeepReadonly, Ref } from 'vue';
|
|
2
|
+
interface IUseResizeObserver {
|
|
3
|
+
resizeRef: Ref<HTMLElement | undefined>;
|
|
4
|
+
contentRect: DeepReadonly<Ref<DOMRectReadOnly | undefined>>;
|
|
5
|
+
}
|
|
6
|
+
export declare function useResizeObserver(callback?: ResizeObserverCallback): IUseResizeObserver;
|
|
7
|
+
export {};
|
|
@@ -33,25 +33,16 @@ export interface IUseValidation {
|
|
|
33
33
|
}
|
|
34
34
|
export declare const allowedValidationOn: readonly ["blur", "input", "submit"];
|
|
35
35
|
export declare const makeValidationProps: <Defaults extends {
|
|
36
|
-
disabled?: unknown;
|
|
37
36
|
error?: unknown;
|
|
38
37
|
errorMessages?: unknown;
|
|
39
38
|
maxErrors?: unknown;
|
|
40
39
|
name?: unknown;
|
|
41
|
-
readonly?: unknown;
|
|
42
40
|
rules?: unknown;
|
|
43
41
|
modelValue?: unknown;
|
|
44
42
|
validateOn?: unknown;
|
|
45
43
|
validationValue?: unknown;
|
|
46
44
|
hideMessages?: unknown;
|
|
47
45
|
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
48
|
-
/**
|
|
49
|
-
* Заблокированное состояние
|
|
50
|
-
*/
|
|
51
|
-
disabled: {
|
|
52
|
-
type: PropType<boolean>;
|
|
53
|
-
default: boolean;
|
|
54
|
-
};
|
|
55
46
|
/**
|
|
56
47
|
* Состояние ошибки
|
|
57
48
|
*/
|
|
@@ -80,13 +71,6 @@ export declare const makeValidationProps: <Defaults extends {
|
|
|
80
71
|
type: PropType<string | undefined>;
|
|
81
72
|
default: undefined;
|
|
82
73
|
};
|
|
83
|
-
/**
|
|
84
|
-
* Только для чтения
|
|
85
|
-
*/
|
|
86
|
-
readonly: {
|
|
87
|
-
type: PropType<boolean>;
|
|
88
|
-
default: boolean;
|
|
89
|
-
};
|
|
90
74
|
/**
|
|
91
75
|
* Правила валидации
|
|
92
76
|
*/
|
package/dist/create.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { App } from 'vue';
|
|
2
|
+
import type { IDisplayOptions } from './composable';
|
|
3
|
+
export interface ICdsOptions {
|
|
4
|
+
components?: Record<string, any>;
|
|
5
|
+
directives?: Record<string, any>;
|
|
6
|
+
icons?: Record<string, any>;
|
|
7
|
+
illustrations?: Record<string, any>;
|
|
8
|
+
display?: IDisplayOptions;
|
|
9
|
+
cssGrid?: boolean;
|
|
10
|
+
ssr?: boolean;
|
|
11
|
+
}
|
|
12
|
+
interface NuxtApp {
|
|
13
|
+
$nuxt?: {
|
|
14
|
+
hook: (name: string, fn: () => void) => void;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
export declare function createCds(options?: ICdsOptions): {
|
|
18
|
+
install: (app: App & NuxtApp) => void;
|
|
19
|
+
display: import("./composable").IDisplayInstance;
|
|
20
|
+
};
|
|
21
|
+
export {};
|
package/dist/globals.d.ts
CHANGED
package/dist/utils/date.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ export interface IRawDate {
|
|
|
11
11
|
dateHash?: string;
|
|
12
12
|
timeHash?: string;
|
|
13
13
|
date?: number;
|
|
14
|
+
changed?: boolean;
|
|
14
15
|
}
|
|
15
16
|
export declare type TDateLocale = ILocale['date'];
|
|
16
17
|
/**
|
|
@@ -43,7 +44,7 @@ export declare function extractDate(str: string, mask: string, dateLocale: TDate
|
|
|
43
44
|
* @param dateLocale
|
|
44
45
|
* @param defaultModel
|
|
45
46
|
*/
|
|
46
|
-
export declare function splitDate(str
|
|
47
|
+
export declare function splitDate(str?: string | any, mask?: string, dateLocale?: TDateLocale, defaultModel?: IRawDate): IRawDate;
|
|
47
48
|
/**
|
|
48
49
|
* Check a date string for validity.
|
|
49
50
|
* @param date
|
package/dist/utils/helpers.d.ts
CHANGED
|
@@ -30,6 +30,7 @@ export declare const classesStates: Readonly<{
|
|
|
30
30
|
invalid: "cds-state-invalid";
|
|
31
31
|
empty: "cds-state-empty";
|
|
32
32
|
loading: "cds-state-loading";
|
|
33
|
+
readonly: "cds-state-readonly";
|
|
33
34
|
}>;
|
|
34
35
|
/**
|
|
35
36
|
* Check if value is a object.
|
|
@@ -100,6 +101,7 @@ export declare function convertToUnit(str: string | number | null | undefined, u
|
|
|
100
101
|
* @param max
|
|
101
102
|
*/
|
|
102
103
|
export declare function clamp(value: number, min?: number, max?: number): number;
|
|
104
|
+
export declare function createRange(length: number, start?: number): number[];
|
|
103
105
|
/**
|
|
104
106
|
* Is value an like event
|
|
105
107
|
* @param key
|
|
@@ -110,6 +112,7 @@ export declare function isComponentInstance(obj: any): obj is ComponentPublicIns
|
|
|
110
112
|
export declare function isFixedPosition(el?: HTMLElement): boolean;
|
|
111
113
|
export declare function padStart(string: number | string, targetLength: number, padString: string): string;
|
|
112
114
|
export declare function pad(n: string | number, length?: number): string;
|
|
115
|
+
export declare function refElement<T extends Record<string, any> | undefined>(obj: T): Exclude<T, ComponentPublicInstance> | HTMLElement;
|
|
113
116
|
/**
|
|
114
117
|
* Types
|
|
115
118
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@central-design-system/components",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.6",
|
|
4
4
|
"description": "Central Design System on the Vue 3.0 and TypeScript",
|
|
5
5
|
"author": "magersoft",
|
|
6
6
|
"license": "ISC",
|
|
@@ -19,7 +19,6 @@
|
|
|
19
19
|
},
|
|
20
20
|
"files": [
|
|
21
21
|
"dist",
|
|
22
|
-
"src/utils",
|
|
23
22
|
"src/scss",
|
|
24
23
|
"nuxt.js"
|
|
25
24
|
],
|
package/src/scss/themes/index.ts
CHANGED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { pick, isObject, mergeDeep, getNestedValue, getObjectValueByPath, getPropertyFromItem } from '../helpers';
|
|
2
|
-
import {
|
|
3
|
-
mockHelpersIsObject,
|
|
4
|
-
mockHelpersMergeDeep,
|
|
5
|
-
mockHelpersGetNestedValue,
|
|
6
|
-
mockHelpersGetObjectValueByPath,
|
|
7
|
-
mockHelpersGetPropertyFromItem,
|
|
8
|
-
mockHelpersPick
|
|
9
|
-
} from './mocks/helper.mock';
|
|
10
|
-
|
|
11
|
-
describe('isObject', () => {
|
|
12
|
-
mockHelpersIsObject.forEach(({ name, initial, expected }) => {
|
|
13
|
-
it(name, () => {
|
|
14
|
-
expect(isObject(initial)).toEqual(expected);
|
|
15
|
-
});
|
|
16
|
-
});
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
describe('mergeDeep', () => {
|
|
20
|
-
mockHelpersMergeDeep.forEach(({ name, initial, expected }) => {
|
|
21
|
-
it(name, () => {
|
|
22
|
-
expect(mergeDeep(initial.source, initial.target, initial.arrayFn)).toEqual(expected);
|
|
23
|
-
});
|
|
24
|
-
});
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
describe('getNestedValue', () => {
|
|
28
|
-
mockHelpersGetNestedValue.forEach(({ name, initial, expected }) => {
|
|
29
|
-
it(name, () => {
|
|
30
|
-
expect(getNestedValue(initial.obj, initial.path, initial.fallback)).toEqual(expected);
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
describe('getObjectValueByPath', () => {
|
|
36
|
-
mockHelpersGetObjectValueByPath.forEach(({ name, initial, expected }) => {
|
|
37
|
-
it(name, () => {
|
|
38
|
-
expect(getObjectValueByPath(initial.obj, initial.path, initial.fallback)).toEqual(expected);
|
|
39
|
-
});
|
|
40
|
-
});
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
describe('getPropertyFromItem', () => {
|
|
44
|
-
mockHelpersGetPropertyFromItem.forEach(({ name, initial, expected }) => {
|
|
45
|
-
it(name, () => {
|
|
46
|
-
expect(getPropertyFromItem(initial.item, initial.property, initial.fallback)).toEqual(expected);
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
|
|
51
|
-
describe('pick', () => {
|
|
52
|
-
mockHelpersPick.forEach(({ name, initial, expected }) => {
|
|
53
|
-
it(name, () => {
|
|
54
|
-
const [yes, no] = pick(initial.obj, initial.paths);
|
|
55
|
-
expect(yes).toEqual(expected.yes);
|
|
56
|
-
expect(no).toEqual(expected.no);
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
});
|