@joelbarron/react-web-dev-kit 0.1.5 → 0.1.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/auth/fuse/fuseIntegration.d.ts +2 -0
- package/dist/auth/fuse/fuseIntegration.d.ts.map +1 -1
- package/dist/auth/fuse/fuseIntegration.js +18 -0
- package/dist/auth/social/providerAuth.d.ts.map +1 -1
- package/dist/auth/social/providerAuth.js +12 -4
- package/dist/config/createConfig.d.ts.map +1 -1
- package/dist/config/createConfig.js +38 -1
- package/dist/config/defaults.js +1 -1
- package/dist/core/dialogs/JBConfirmDialog.d.ts +15 -0
- package/dist/core/dialogs/JBConfirmDialog.d.ts.map +1 -0
- package/dist/core/dialogs/JBConfirmDialog.js +6 -0
- package/dist/core/dialogs/index.d.ts +2 -0
- package/dist/core/dialogs/index.d.ts.map +1 -0
- package/dist/core/dialogs/index.js +1 -0
- package/dist/core/index.d.ts +4 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +3 -0
- package/dist/core/layout/JBContentContainer.d.ts +27 -0
- package/dist/core/layout/JBContentContainer.d.ts.map +1 -0
- package/dist/core/layout/JBContentContainer.js +42 -0
- package/dist/core/layout/JBFormHeader.d.ts +3 -0
- package/dist/core/layout/JBFormHeader.d.ts.map +1 -0
- package/dist/core/layout/JBFormHeader.js +156 -0
- package/dist/core/layout/index.d.ts +3 -0
- package/dist/core/layout/index.d.ts.map +1 -0
- package/dist/core/layout/index.js +2 -0
- package/dist/core/skeletons/JBFormContentSkeleton.d.ts +5 -0
- package/dist/core/skeletons/JBFormContentSkeleton.d.ts.map +1 -0
- package/dist/core/skeletons/JBFormContentSkeleton.js +12 -0
- package/dist/core/skeletons/JBFormHeaderSkeleton.d.ts +6 -0
- package/dist/core/skeletons/JBFormHeaderSkeleton.d.ts.map +1 -0
- package/dist/core/skeletons/JBFormHeaderSkeleton.js +19 -0
- package/dist/core/skeletons/index.d.ts +3 -0
- package/dist/core/skeletons/index.d.ts.map +1 -0
- package/dist/core/skeletons/index.js +2 -0
- package/dist/forms/index.d.ts +1 -0
- package/dist/forms/index.d.ts.map +1 -1
- package/dist/forms/index.js +1 -0
- package/dist/forms/zod.d.ts +4 -0
- package/dist/forms/zod.d.ts.map +1 -0
- package/dist/forms/zod.js +9 -0
- package/dist/grid/JBFormHeader.d.ts +2 -0
- package/dist/grid/JBFormHeader.d.ts.map +1 -0
- package/dist/grid/JBFormHeader.js +1 -0
- package/dist/grid/JBGrid.d.ts.map +1 -1
- package/dist/grid/JBGrid.js +210 -18
- package/dist/grid/JBGridHeader.d.ts.map +1 -1
- package/dist/grid/JBGridHeader.js +84 -15
- package/dist/grid/JBGridLoading.d.ts +9 -0
- package/dist/grid/JBGridLoading.d.ts.map +1 -0
- package/dist/grid/JBGridLoading.js +14 -0
- package/dist/grid/JBGridProviders.d.ts +3 -0
- package/dist/grid/JBGridProviders.d.ts.map +1 -1
- package/dist/grid/JBGridProviders.js +16 -0
- package/dist/grid/JBGridSkeleton.d.ts +7 -0
- package/dist/grid/JBGridSkeleton.d.ts.map +1 -0
- package/dist/grid/JBGridSkeleton.js +6 -0
- package/dist/grid/defaults.d.ts +4 -0
- package/dist/grid/defaults.d.ts.map +1 -0
- package/dist/grid/defaults.js +27 -0
- package/dist/grid/index.d.ts +3 -0
- package/dist/grid/index.d.ts.map +1 -1
- package/dist/grid/index.js +3 -0
- package/dist/grid/types.d.ts +110 -3
- package/dist/grid/types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/query/index.d.ts +1 -0
- package/dist/query/index.d.ts.map +1 -1
- package/dist/query/index.js +1 -0
- package/dist/query/types.d.ts +7 -0
- package/dist/query/types.d.ts.map +1 -0
- package/dist/query/types.js +1 -0
- package/dist/utils/errors.d.ts +10 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +55 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/package.json +7 -1
package/dist/grid/types.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
export type JBGridDefaults = {
|
|
3
|
-
pageSize
|
|
3
|
+
pageSize?: number;
|
|
4
|
+
virtualScrolling?: boolean;
|
|
5
|
+
estimatedRowHeight?: number;
|
|
6
|
+
virtualTableHeight?: number;
|
|
7
|
+
virtualTableHeightMode?: 'fixed' | 'fill';
|
|
8
|
+
virtualTableHeightRatio?: number;
|
|
4
9
|
allowSorting?: boolean;
|
|
5
10
|
allowColumnResizing?: boolean;
|
|
6
11
|
allowSelection?: boolean;
|
|
@@ -30,10 +35,11 @@ export type JBGridConfig = {
|
|
|
30
35
|
imageColumns?: string[];
|
|
31
36
|
booleanColumns?: string[];
|
|
32
37
|
currencyColumns?: string[];
|
|
38
|
+
dateColumns?: string[];
|
|
33
39
|
totalSummaryItems?: unknown[];
|
|
34
40
|
groupSummaryItems?: unknown[];
|
|
35
41
|
tableColumnExtensions?: unknown[];
|
|
36
|
-
defaults
|
|
42
|
+
defaults?: JBGridDefaults;
|
|
37
43
|
};
|
|
38
44
|
export type JBGridListResponse<TData> = {
|
|
39
45
|
data?: {
|
|
@@ -60,15 +66,65 @@ export type JBGridProps<TData extends Record<string, unknown>> = {
|
|
|
60
66
|
gridConfig: JBGridConfig;
|
|
61
67
|
service?: JBGridService<TData>;
|
|
62
68
|
rows?: TData[];
|
|
69
|
+
totalCount?: number;
|
|
70
|
+
loading?: boolean;
|
|
71
|
+
error?: ReactNode;
|
|
72
|
+
currentPage?: number;
|
|
73
|
+
onCurrentPageChange?: (page: number) => void;
|
|
74
|
+
pageSize?: number;
|
|
75
|
+
onPageSizeChange?: (pageSize: number) => void;
|
|
63
76
|
searchText: string;
|
|
64
77
|
onSearchTextChange: (text: string) => void;
|
|
65
78
|
onRowSelected?: (row: TData) => void;
|
|
66
79
|
loadData?: (args: JBGridLoadDataArgs<TData>) => void | Promise<void>;
|
|
67
80
|
loadingComponent?: ReactNode;
|
|
81
|
+
emptyComponent?: ReactNode;
|
|
68
82
|
getRowId?: (row: TData) => string | number;
|
|
83
|
+
paginationPosition?: 'top' | 'bottom' | 'both' | 'none';
|
|
84
|
+
stickyPagination?: boolean;
|
|
85
|
+
height?: number | string;
|
|
86
|
+
stickyHeader?: boolean;
|
|
87
|
+
infiniteScroll?: boolean;
|
|
88
|
+
hasMore?: boolean;
|
|
89
|
+
isLoadingMore?: boolean;
|
|
90
|
+
loadMoreThreshold?: number;
|
|
91
|
+
onLoadMore?: () => void;
|
|
92
|
+
};
|
|
93
|
+
export type JBModuleTextsConfig = {
|
|
94
|
+
moduleName?: string;
|
|
95
|
+
iconName?: string;
|
|
96
|
+
newText?: string;
|
|
97
|
+
editText?: string;
|
|
98
|
+
searchPlaceholder?: string;
|
|
99
|
+
goBackOnItemNotFoundText?: string;
|
|
100
|
+
goBackToGrid?: string;
|
|
101
|
+
formHeaderSubtitle?: string;
|
|
102
|
+
};
|
|
103
|
+
export type JBModuleUrlsConfig = {
|
|
104
|
+
base?: string;
|
|
105
|
+
list?: string;
|
|
106
|
+
new?: string;
|
|
107
|
+
edit?: string;
|
|
108
|
+
};
|
|
109
|
+
export type JBModuleApiConfig = {
|
|
110
|
+
basePath: string;
|
|
111
|
+
[key: string]: unknown;
|
|
112
|
+
};
|
|
113
|
+
export type JBModuleConfig = {
|
|
114
|
+
urls?: JBModuleUrlsConfig;
|
|
115
|
+
texts?: JBModuleTextsConfig;
|
|
116
|
+
api?: JBModuleApiConfig;
|
|
69
117
|
};
|
|
70
118
|
export type JBGridHeaderProps = {
|
|
71
|
-
|
|
119
|
+
moduleConfig?: JBModuleConfig;
|
|
120
|
+
iconNameRenderer?: (iconName: string) => ReactNode;
|
|
121
|
+
animated?: boolean;
|
|
122
|
+
animationDurationMs?: number;
|
|
123
|
+
animationStaggerMs?: number;
|
|
124
|
+
animationPreset?: 'vertical' | 'sides';
|
|
125
|
+
breadcrumb?: ReactNode;
|
|
126
|
+
title?: string;
|
|
127
|
+
subtitle?: string;
|
|
72
128
|
icon?: ReactNode;
|
|
73
129
|
searchText: string;
|
|
74
130
|
onSearchTextChange: (value: string) => void;
|
|
@@ -78,4 +134,55 @@ export type JBGridHeaderProps = {
|
|
|
78
134
|
onCreateClick?: () => void;
|
|
79
135
|
rightContent?: ReactNode;
|
|
80
136
|
};
|
|
137
|
+
export type JBFormHeaderProps = {
|
|
138
|
+
moduleConfig?: JBModuleConfig;
|
|
139
|
+
iconNameRenderer?: (iconName: string) => ReactNode;
|
|
140
|
+
animated?: boolean;
|
|
141
|
+
animationDurationMs?: number;
|
|
142
|
+
animationStaggerMs?: number;
|
|
143
|
+
animationPreset?: 'vertical' | 'sides';
|
|
144
|
+
breadcrumb?: ReactNode;
|
|
145
|
+
showBackButton?: boolean;
|
|
146
|
+
backLabel?: string;
|
|
147
|
+
onBackClick?: () => void;
|
|
148
|
+
backContent?: ReactNode;
|
|
149
|
+
isNew?: boolean;
|
|
150
|
+
title?: string;
|
|
151
|
+
dynamicTitle?: string;
|
|
152
|
+
formValues?: Record<string, unknown>;
|
|
153
|
+
getDynamicTitle?: (args: {
|
|
154
|
+
isNew: boolean;
|
|
155
|
+
values?: Record<string, unknown>;
|
|
156
|
+
}) => string | undefined;
|
|
157
|
+
subtitle?: string;
|
|
158
|
+
dynamicSubtitle?: string;
|
|
159
|
+
getDynamicSubtitle?: (args: {
|
|
160
|
+
isNew: boolean;
|
|
161
|
+
values?: Record<string, unknown>;
|
|
162
|
+
}) => string | undefined;
|
|
163
|
+
icon?: ReactNode;
|
|
164
|
+
actions?: {
|
|
165
|
+
formDisabled?: boolean;
|
|
166
|
+
allowEdit?: boolean;
|
|
167
|
+
allowDelete?: boolean;
|
|
168
|
+
showDeleteWhenEditing?: boolean;
|
|
169
|
+
disableSave?: boolean;
|
|
170
|
+
disableCancel?: boolean;
|
|
171
|
+
disableEdit?: boolean;
|
|
172
|
+
disableDelete?: boolean;
|
|
173
|
+
saveLabel?: string;
|
|
174
|
+
cancelLabel?: string;
|
|
175
|
+
editLabel?: string;
|
|
176
|
+
deleteLabel?: string;
|
|
177
|
+
saveIcon?: ReactNode;
|
|
178
|
+
cancelIcon?: ReactNode;
|
|
179
|
+
editIcon?: ReactNode;
|
|
180
|
+
deleteIcon?: ReactNode;
|
|
181
|
+
onSave?: () => void;
|
|
182
|
+
onCancel?: () => void;
|
|
183
|
+
onStartEdit?: () => void;
|
|
184
|
+
onDelete?: () => void;
|
|
185
|
+
};
|
|
186
|
+
rightContent?: ReactNode;
|
|
187
|
+
};
|
|
81
188
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/grid/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/grid/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/grid/types.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/query/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/query/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/query/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,qBAAqB,CAAC;AACpC,cAAc,SAAS,CAAC"}
|
package/dist/query/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/query/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,CAAC,EAAE,CAAC;CACd,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type ApiErrorData = {
|
|
2
|
+
detail?: string;
|
|
3
|
+
message?: string;
|
|
4
|
+
nonFieldErrors?: string[];
|
|
5
|
+
non_field_errors?: string[];
|
|
6
|
+
errors?: Record<string, unknown>;
|
|
7
|
+
[key: string]: unknown;
|
|
8
|
+
};
|
|
9
|
+
export declare const getApiErrorMessage: (error: unknown, fallback: string) => string;
|
|
10
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAkBF,eAAO,MAAM,kBAAkB,GAAI,OAAO,OAAO,EAAE,UAAU,MAAM,KAAG,MAgDrE,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
const isRecord = (value) => typeof value === 'object' && value !== null;
|
|
2
|
+
const readFirstString = (value) => {
|
|
3
|
+
if (typeof value === 'string' && value.trim())
|
|
4
|
+
return value;
|
|
5
|
+
if (Array.isArray(value)) {
|
|
6
|
+
const firstString = value.find((item) => typeof item === 'string' && item.trim());
|
|
7
|
+
return typeof firstString === 'string' ? firstString : undefined;
|
|
8
|
+
}
|
|
9
|
+
if (isRecord(value)) {
|
|
10
|
+
if (typeof value.detail === 'string' && value.detail.trim())
|
|
11
|
+
return value.detail;
|
|
12
|
+
if (typeof value.message === 'string' && value.message.trim())
|
|
13
|
+
return value.message;
|
|
14
|
+
}
|
|
15
|
+
return undefined;
|
|
16
|
+
};
|
|
17
|
+
export const getApiErrorMessage = (error, fallback) => {
|
|
18
|
+
const raw = error;
|
|
19
|
+
const payload = (raw.response?.data ?? raw.data);
|
|
20
|
+
if (!payload) {
|
|
21
|
+
return fallback;
|
|
22
|
+
}
|
|
23
|
+
if (typeof payload === 'string' && payload.trim()) {
|
|
24
|
+
return payload;
|
|
25
|
+
}
|
|
26
|
+
if (!isRecord(payload)) {
|
|
27
|
+
return raw.message?.trim() || fallback;
|
|
28
|
+
}
|
|
29
|
+
const data = payload;
|
|
30
|
+
const detail = readFirstString(data.detail);
|
|
31
|
+
if (detail)
|
|
32
|
+
return detail;
|
|
33
|
+
const message = readFirstString(data.message);
|
|
34
|
+
if (message)
|
|
35
|
+
return message;
|
|
36
|
+
const nonField = readFirstString(data.nonFieldErrors) ?? readFirstString(data.non_field_errors);
|
|
37
|
+
if (nonField)
|
|
38
|
+
return nonField;
|
|
39
|
+
if (isRecord(data.errors)) {
|
|
40
|
+
for (const value of Object.values(data.errors)) {
|
|
41
|
+
const nestedMessage = readFirstString(value);
|
|
42
|
+
if (nestedMessage)
|
|
43
|
+
return nestedMessage;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
for (const [key, value] of Object.entries(data)) {
|
|
47
|
+
if (['detail', 'message', 'nonFieldErrors', 'non_field_errors', 'errors'].includes(key)) {
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
const nestedMessage = readFirstString(value);
|
|
51
|
+
if (nestedMessage)
|
|
52
|
+
return nestedMessage;
|
|
53
|
+
}
|
|
54
|
+
return raw.message?.trim() || fallback;
|
|
55
|
+
};
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
|
package/dist/utils/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@joelbarron/react-web-dev-kit",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
4
4
|
"private": false,
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -22,6 +22,11 @@
|
|
|
22
22
|
"import": "./dist/config/index.js",
|
|
23
23
|
"default": "./dist/config/index.js"
|
|
24
24
|
},
|
|
25
|
+
"./core": {
|
|
26
|
+
"types": "./dist/core/index.d.ts",
|
|
27
|
+
"import": "./dist/core/index.js",
|
|
28
|
+
"default": "./dist/core/index.js"
|
|
29
|
+
},
|
|
25
30
|
"./forms": {
|
|
26
31
|
"types": "./dist/forms/index.d.ts",
|
|
27
32
|
"import": "./dist/forms/index.js",
|
|
@@ -72,6 +77,7 @@
|
|
|
72
77
|
"@hookform/resolvers": ">=5",
|
|
73
78
|
"zod": ">=4",
|
|
74
79
|
"@mui/material": ">=5",
|
|
80
|
+
"@mui/icons-material": ">=5",
|
|
75
81
|
"@mui/x-date-pickers": ">=6",
|
|
76
82
|
"@devexpress/dx-react-grid": ">=4",
|
|
77
83
|
"@devexpress/dx-react-grid-material-ui": ">=4"
|