awing-library 2.1.2-stable.39 → 2.1.2-stable.40
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/AWING/DirectoryPermission/components/PermissionTable.d.ts.map +1 -1
- package/dist/AWING/DirectoryPermission/components/PermissionTable.js +43 -2
- package/dist/AWING/DirectoryPermission/components/SchemaDetail.js +2 -2
- package/dist/AWING/DirectoryPermission/components/SchemaRow.d.ts +8 -1
- package/dist/AWING/DirectoryPermission/components/SchemaRow.d.ts.map +1 -1
- package/dist/AWING/DirectoryPermission/components/SchemaRow.js +22 -40
- package/dist/Features/SYSTEM/Schema/utils.d.ts +1 -0
- package/dist/Features/SYSTEM/Schema/utils.d.ts.map +1 -1
- package/dist/Features/SYSTEM/Schema/utils.js +22 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PermissionTable.d.ts","sourceRoot":"","sources":["../../../../src/AWING/DirectoryPermission/components/PermissionTable.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PermissionTable.d.ts","sourceRoot":"","sources":["../../../../src/AWING/DirectoryPermission/components/PermissionTable.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAMnD,MAAM,MAAM,QAAQ,GAAG;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,OAAO,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACnB,mBAAmB,EAAE,kBAAkB,EAAE,CAAC;IAC1C,oBAAoB,EAAE,kBAAkB,EAAE,CAAC;IAC3C,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACpE,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAClD,mBAAmB,EAAE,OAAO,CAAC;IAC7B,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACnE,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,QAAQ,2CAoGtD"}
|
|
@@ -1,14 +1,52 @@
|
|
|
1
1
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useEffect, useState } from "react";
|
|
2
3
|
import { CircularProgress, Stack, Table, TableBody, TableCell, TableRow } from "@mui/material";
|
|
3
4
|
import { schemasState, workflowStates } from "../Atoms.js";
|
|
4
5
|
import { headCells } from "../utils/index.js";
|
|
5
6
|
import TableHeader from "./TableHeader.js";
|
|
6
7
|
import SchemaRow from "./SchemaRow.js";
|
|
7
8
|
import { useAtomValue } from "jotai";
|
|
9
|
+
import { useGetDirectoryContext } from "../context.js";
|
|
10
|
+
import { OBJECT_TYPE_CODE_NONE } from "../constants.js";
|
|
8
11
|
function PermissionTable(props) {
|
|
9
12
|
const { disableSelectSchema, explicitPermissions, inheritedPermissions, onChangePermission, onDeleteSchema, onChangeStates, objectTypeCodeSelected, loading } = props;
|
|
10
13
|
const schemas = useAtomValue(schemasState);
|
|
11
14
|
const workflow = useAtomValue(workflowStates);
|
|
15
|
+
const { services } = useGetDirectoryContext();
|
|
16
|
+
const [typeDefinitions, setTypeDefinitions] = useState([]);
|
|
17
|
+
const [typeDefinitionsLoading, setTypeDefinitionsLoading] = useState(false);
|
|
18
|
+
const [hasLoadedSchemaDetails, setHasLoadedSchemaDetails] = useState(false);
|
|
19
|
+
useEffect(()=>{
|
|
20
|
+
setTypeDefinitions([]);
|
|
21
|
+
setHasLoadedSchemaDetails(false);
|
|
22
|
+
setTypeDefinitionsLoading(false);
|
|
23
|
+
}, [
|
|
24
|
+
objectTypeCodeSelected
|
|
25
|
+
]);
|
|
26
|
+
const handleLoadSchemaDetails = useCallback(()=>{
|
|
27
|
+
if (hasLoadedSchemaDetails || typeDefinitionsLoading) return;
|
|
28
|
+
if (!objectTypeCodeSelected || objectTypeCodeSelected === OBJECT_TYPE_CODE_NONE) return;
|
|
29
|
+
if (!services?.getSchemaDetails) return;
|
|
30
|
+
setTypeDefinitionsLoading(true);
|
|
31
|
+
services.getSchemaDetails({
|
|
32
|
+
objectTypeCode: objectTypeCodeSelected
|
|
33
|
+
}).then((res)=>{
|
|
34
|
+
setTypeDefinitions(res.map((schema)=>({
|
|
35
|
+
schemaId: schema.id,
|
|
36
|
+
schemaObjectDefinitions: schema.schemaObjectDefinitions?.map((d)=>({
|
|
37
|
+
...d.typeDefinition,
|
|
38
|
+
fieldPath: d.fieldPath,
|
|
39
|
+
isReadOnly: d.isReadOnly
|
|
40
|
+
}))
|
|
41
|
+
})));
|
|
42
|
+
setHasLoadedSchemaDetails(true);
|
|
43
|
+
}).finally(()=>setTypeDefinitionsLoading(false));
|
|
44
|
+
}, [
|
|
45
|
+
hasLoadedSchemaDetails,
|
|
46
|
+
typeDefinitionsLoading,
|
|
47
|
+
objectTypeCodeSelected,
|
|
48
|
+
services
|
|
49
|
+
]);
|
|
12
50
|
return /*#__PURE__*/ jsx(Stack, {
|
|
13
51
|
sx: {
|
|
14
52
|
width: '100%',
|
|
@@ -31,7 +69,7 @@ function PermissionTable(props) {
|
|
|
31
69
|
})
|
|
32
70
|
}) : explicitPermissions.map((item, idx)=>/*#__PURE__*/ jsx(SchemaRow, {
|
|
33
71
|
index: idx,
|
|
34
|
-
|
|
72
|
+
schema: schemas.find((s)=>s.id === item.schemaId) ?? {},
|
|
35
73
|
schemaId: item?.schemaId ?? null,
|
|
36
74
|
onChangePermission: onChangePermission,
|
|
37
75
|
disableSelectSchema: disableSelectSchema,
|
|
@@ -40,7 +78,10 @@ function PermissionTable(props) {
|
|
|
40
78
|
explicitPermission: item,
|
|
41
79
|
workflow: workflow,
|
|
42
80
|
onChangeStates: onChangeStates,
|
|
43
|
-
objectTypeCodeSelected: objectTypeCodeSelected
|
|
81
|
+
objectTypeCodeSelected: objectTypeCodeSelected,
|
|
82
|
+
typeDefinitions: typeDefinitions,
|
|
83
|
+
typeDefinitionsLoading: typeDefinitionsLoading,
|
|
84
|
+
onRequestSchemaDetails: handleLoadSchemaDetails
|
|
44
85
|
}, `schemaRow_${item.schemaId}`))
|
|
45
86
|
})
|
|
46
87
|
]
|
|
@@ -3,7 +3,7 @@ import { ChevronRight, ExpandMore } from "@mui/icons-material";
|
|
|
3
3
|
import { Box } from "@mui/material";
|
|
4
4
|
import { SimpleTreeView } from "@mui/x-tree-view";
|
|
5
5
|
import { FieldView } from "../../../Features/SYSTEM/Schema/index.js";
|
|
6
|
-
import { convertToDisplayData,
|
|
6
|
+
import { convertToDisplayData, convertToTreeWithMissingParents } from "../../../Features/SYSTEM/Schema/utils.js";
|
|
7
7
|
import { useState } from "react";
|
|
8
8
|
import { BORDER_LIGHTGRAY } from "../constants.js";
|
|
9
9
|
function SchemaDetail(props) {
|
|
@@ -14,7 +14,7 @@ function SchemaDetail(props) {
|
|
|
14
14
|
setExpanded(nodeIds);
|
|
15
15
|
};
|
|
16
16
|
const displayData = convertToDisplayData(objectDefinitions);
|
|
17
|
-
const treeDatas =
|
|
17
|
+
const treeDatas = convertToTreeWithMissingParents(displayData);
|
|
18
18
|
return /*#__PURE__*/ jsx(Box, {
|
|
19
19
|
style: {
|
|
20
20
|
borderBottom: BORDER_LIGHTGRAY
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { ExplicitPermission, Schema, Workflow } from '../types';
|
|
2
|
+
import type { TypeDefinitionCustom } from '../../../Features/SYSTEM/Schema';
|
|
2
3
|
export type OwnProps = {
|
|
3
4
|
index: number;
|
|
4
5
|
explicitPermission: ExplicitPermission;
|
|
5
6
|
inheritedPermissions: ExplicitPermission[];
|
|
6
|
-
|
|
7
|
+
schema: Schema;
|
|
7
8
|
schemaId: number | null;
|
|
8
9
|
onChangePermission: (code: number, schemaId: number | null) => void;
|
|
9
10
|
onDeleteSchema: (schemaId: number | null) => void;
|
|
@@ -11,6 +12,12 @@ export type OwnProps = {
|
|
|
11
12
|
workflow: Workflow;
|
|
12
13
|
onChangeStates: (stateId: string, schemaId: number | null) => void;
|
|
13
14
|
objectTypeCodeSelected?: string;
|
|
15
|
+
typeDefinitions: {
|
|
16
|
+
schemaId?: number;
|
|
17
|
+
schemaObjectDefinitions?: TypeDefinitionCustom[];
|
|
18
|
+
}[];
|
|
19
|
+
typeDefinitionsLoading: boolean;
|
|
20
|
+
onRequestSchemaDetails: () => void;
|
|
14
21
|
};
|
|
15
22
|
export default function Container(props: OwnProps): import("react/jsx-runtime").JSX.Element;
|
|
16
23
|
//# sourceMappingURL=SchemaRow.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaRow.d.ts","sourceRoot":"","sources":["../../../../src/AWING/DirectoryPermission/components/SchemaRow.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SchemaRow.d.ts","sourceRoot":"","sources":["../../../../src/AWING/DirectoryPermission/components/SchemaRow.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGrE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,MAAM,MAAM,QAAQ,GAAG;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,oBAAoB,EAAE,kBAAkB,EAAE,CAAC;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACpE,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAClD,mBAAmB,EAAE,OAAO,CAAC;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACnE,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,eAAe,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,uBAAuB,CAAC,EAAE,oBAAoB,EAAE,CAAA;KAAE,EAAE,CAAC;IAC3F,sBAAsB,EAAE,OAAO,CAAC;IAChC,sBAAsB,EAAE,MAAM,IAAI,CAAC;CACtC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,KAAK,EAAE,QAAQ,2CAsKhD"}
|
|
@@ -2,37 +2,24 @@ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { useState } from "react";
|
|
3
3
|
import { Box, Checkbox, CircularProgress, IconButton, TableCell, TableRow, Typography } from "@mui/material";
|
|
4
4
|
import { Clear, ExpandLess, ExpandMore } from "@mui/icons-material";
|
|
5
|
-
import { Constants
|
|
6
|
-
import { rootSchemasState } from "../Atoms.js";
|
|
5
|
+
import { Constants } from "../constants.js";
|
|
7
6
|
import StatePicker from "./StatePicker.js";
|
|
8
|
-
import { useAtomValue } from "jotai";
|
|
9
7
|
import SchemaDetail from "./SchemaDetail.js";
|
|
10
8
|
import { useGetDirectoryContext } from "../context.js";
|
|
11
9
|
function Container(props) {
|
|
12
|
-
const { index,
|
|
13
|
-
const rootSchemas = useAtomValue(rootSchemasState);
|
|
10
|
+
const { index, schema, schemaId, onChangePermission, disableSelectSchema, onDeleteSchema, inheritedPermissions, explicitPermission, workflow, onChangeStates, typeDefinitions, typeDefinitionsLoading, onRequestSchemaDetails } = props;
|
|
14
11
|
const inherit = inheritedPermissions?.find((i)=>i.schemaId === explicitPermission.schemaId);
|
|
15
12
|
const iPermissions = inherit?.permissions || [];
|
|
16
13
|
const iWorkflowStateIds = inherit?.workflowStateIds || [];
|
|
17
14
|
const ePermissions = explicitPermission.permissions;
|
|
18
15
|
const eWorkflowStateIds = explicitPermission.workflowStateIds;
|
|
19
|
-
const {
|
|
20
|
-
const [typeDefinitions, setTypeDefinitions] = useState([]);
|
|
21
|
-
const [loading, setLoading] = useState(false);
|
|
16
|
+
const { isCampaignPermissions } = useGetDirectoryContext();
|
|
22
17
|
const [open, setOpen] = useState(false);
|
|
23
18
|
const handleOpen = ()=>{
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}).then((schemas)=>{
|
|
29
|
-
const typeDefinitions = schemas.flatMap((s)=>s.schemaObjectDefinitions ?? []).map((d)=>({
|
|
30
|
-
...d.typeDefinition,
|
|
31
|
-
fieldPath: d.fieldPath,
|
|
32
|
-
isReadOnly: d.isReadOnly
|
|
33
|
-
}));
|
|
34
|
-
setTypeDefinitions(typeDefinitions);
|
|
35
|
-
}).finally(()=>setLoading(false));
|
|
19
|
+
const nextOpen = !open;
|
|
20
|
+
setOpen(nextOpen);
|
|
21
|
+
if (!nextOpen) return;
|
|
22
|
+
onRequestSchemaDetails();
|
|
36
23
|
};
|
|
37
24
|
const handleChangeStates = (stateId)=>{
|
|
38
25
|
onChangeStates(stateId, schemaId);
|
|
@@ -74,12 +61,7 @@ function Container(props) {
|
|
|
74
61
|
sx: {
|
|
75
62
|
fontWeight: 'bold'
|
|
76
63
|
},
|
|
77
|
-
children:
|
|
78
|
-
...rootSchemas,
|
|
79
|
-
...schemas
|
|
80
|
-
].find((s)=>s.id === schemaId) || {
|
|
81
|
-
name: 'Default'
|
|
82
|
-
}).name
|
|
64
|
+
children: schema?.name || 'Default'
|
|
83
65
|
})
|
|
84
66
|
]
|
|
85
67
|
})
|
|
@@ -149,21 +131,21 @@ function Container(props) {
|
|
|
149
131
|
}, `state_${state.id}`))
|
|
150
132
|
})
|
|
151
133
|
}),
|
|
152
|
-
open &&
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
})
|
|
134
|
+
open && /*#__PURE__*/ jsx(TableRow, {
|
|
135
|
+
children: typeDefinitionsLoading ? /*#__PURE__*/ jsx(CircularProgress, {
|
|
136
|
+
size: 20
|
|
137
|
+
}) : /*#__PURE__*/ jsx(TableCell, {
|
|
138
|
+
colSpan: 8,
|
|
139
|
+
children: /*#__PURE__*/ jsx(SchemaDetail, {
|
|
140
|
+
id: `SchemaView_${schema?.id}`,
|
|
141
|
+
objectDefinitions: typeDefinitions.find((t)=>t.schemaId === schema?.id)?.schemaObjectDefinitions ?? [],
|
|
142
|
+
schema: schema,
|
|
143
|
+
selectedSchemaIds: [
|
|
144
|
+
schemaId ?? 0
|
|
145
|
+
]
|
|
165
146
|
})
|
|
166
|
-
}
|
|
147
|
+
})
|
|
148
|
+
}, `schema_view_row_${schema?.id}`)
|
|
167
149
|
]
|
|
168
150
|
});
|
|
169
151
|
}
|
|
@@ -15,6 +15,7 @@ export declare const getRootSchema: (rootSchemas?: Schema[], schema?: Schema) =>
|
|
|
15
15
|
export declare const getChilds: (fields: ConvertTypeDefinition[], fieldInfo: ConvertTypeDefinition) => ConvertTypeDefinition[];
|
|
16
16
|
export declare const addChilds: (fields: ConvertTypeDefinition[], fieldInfo: ConvertTypeDefinition) => ConvertTypeDefinition;
|
|
17
17
|
export declare const convertToTreeData: (fields: ConvertTypeDefinition[]) => ConvertTypeDefinition[];
|
|
18
|
+
export declare const convertToTreeWithMissingParents: (fields: ConvertTypeDefinition[]) => ConvertTypeDefinition[];
|
|
18
19
|
/** Hàm này dùng cho hàm handleCheckBox để khi thêm phần tử tránh bị lặp (nếu có) */
|
|
19
20
|
export declare const pushIfNotExists: (restFields: CurrentSchemaDetail[], newField?: {
|
|
20
21
|
typeDefinitionId?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/Features/SYSTEM/Schema/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/Features/SYSTEM/Schema/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -95,6 +95,27 @@ const addChilds = (fields, fieldInfo)=>{
|
|
|
95
95
|
return result;
|
|
96
96
|
};
|
|
97
97
|
const convertToTreeData = (fields)=>fields.filter((field)=>field.fieldPath?.split('.').length === 3).map((field)=>addChilds(fields, field));
|
|
98
|
+
const convertToTreeWithMissingParents = (fields)=>{
|
|
99
|
+
const allFields = [
|
|
100
|
+
...fields
|
|
101
|
+
];
|
|
102
|
+
const existingPaths = new Set(fields.map((f)=>f.fieldPath));
|
|
103
|
+
fields.forEach((field)=>{
|
|
104
|
+
const parts = field.fieldPath?.split('.').filter(Boolean) ?? [];
|
|
105
|
+
for(let depth = 1; depth < parts.length; depth++){
|
|
106
|
+
const ancestorPath = `.${parts.slice(0, depth).join('.')}.`;
|
|
107
|
+
if (!existingPaths.has(ancestorPath)) {
|
|
108
|
+
existingPaths.add(ancestorPath);
|
|
109
|
+
allFields.push({
|
|
110
|
+
fieldPath: ancestorPath,
|
|
111
|
+
fieldName: parts[depth - 1],
|
|
112
|
+
isEnable: true
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
return allFields.filter((field)=>field.fieldPath?.split('.').length === 3).map((field)=>addChilds(allFields, field));
|
|
118
|
+
};
|
|
98
119
|
const pushIfNotExists = (restFields, newField)=>{
|
|
99
120
|
const exists = restFields.some((field)=>field.typeDefinition?.id === newField?.typeDefinition?.id);
|
|
100
121
|
if (!exists && newField) restFields.push(newField);
|
|
@@ -332,4 +353,4 @@ function convertDataSchemaToTreeView(fullField, schemaDetail, rootLabel = 'Root'
|
|
|
332
353
|
rootNode
|
|
333
354
|
];
|
|
334
355
|
}
|
|
335
|
-
export { addChilds, addFieldChildsToRestFields, convertDataSchemaToTreeView, convertToDisplayData, convertToTreeData, countEnableFields, getAllIncluded, getAllNearestMatchingFields, getChilds, getCurrentSchemaFields, getCurrentSchemaFieldsWithChecked, getExpandedItems, getFieldChildrentObjectDefinitionIDs, getFieldChilds, getObjectTypeCodes, getParentNames, getRootSchema, getSchemaInput, pushIfNotExists, recursionFields, validateJsonString };
|
|
356
|
+
export { addChilds, addFieldChildsToRestFields, convertDataSchemaToTreeView, convertToDisplayData, convertToTreeData, convertToTreeWithMissingParents, countEnableFields, getAllIncluded, getAllNearestMatchingFields, getChilds, getCurrentSchemaFields, getCurrentSchemaFieldsWithChecked, getExpandedItems, getFieldChildrentObjectDefinitionIDs, getFieldChilds, getObjectTypeCodes, getParentNames, getRootSchema, getSchemaInput, pushIfNotExists, recursionFields, validateJsonString };
|