@gisce/react-ooui 1.2.0-rc.30 → 1.2.0-rc.32
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/helpers/one2manyHelper.d.ts +2 -1
- package/dist/helpers/one2manyHelper.d.ts.map +1 -1
- package/dist/helpers/treeHelper.d.ts +1 -1
- package/dist/helpers/treeHelper.d.ts.map +1 -1
- package/dist/react-ooui.es.js +1430 -1403
- package/dist/react-ooui.es.js.map +1 -1
- package/dist/react-ooui.umd.js +20 -20
- package/dist/react-ooui.umd.js.map +1 -1
- package/dist/widgets/base/ReferenceTree.d.ts +1 -0
- package/dist/widgets/base/ReferenceTree.d.ts.map +1 -1
- package/dist/widgets/base/one2many/One2manyInput.d.ts.map +1 -1
- package/dist/widgets/views/Dashboard/DashboardTree.d.ts.map +1 -1
- package/dist/widgets/views/Form.d.ts.map +1 -1
- package/dist/widgets/views/SearchTree.d.ts.map +1 -1
- package/dist/widgets/views/Tree.d.ts +1 -0
- package/dist/widgets/views/Tree.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/helpers/one2manyHelper.ts +27 -9
- package/src/helpers/treeHelper.ts +6 -2
- package/src/widgets/base/ReferenceTree.tsx +9 -2
- package/src/widgets/base/one2many/One2manyInput.tsx +1 -0
- package/src/widgets/views/Dashboard/DashboardTree.tsx +1 -0
- package/src/widgets/views/Form.tsx +8 -4
- package/src/widgets/views/SearchTree.tsx +1 -0
- package/src/widgets/views/Tree.tsx +34 -15
|
@@ -2,6 +2,7 @@ import React from "react";
|
|
|
2
2
|
export declare type ReferenceTreeProps = {
|
|
3
3
|
value: string;
|
|
4
4
|
context?: any;
|
|
5
|
+
selectionValues?: any;
|
|
5
6
|
};
|
|
6
7
|
export declare const ReferenceTree: (props: ReferenceTreeProps) => React.ReactElement;
|
|
7
8
|
//# sourceMappingURL=ReferenceTree.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReferenceTree.d.ts","sourceRoot":"","sources":["ReferenceTree.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAIhE,oBAAY,kBAAkB,GAAG;
|
|
1
|
+
{"version":3,"file":"ReferenceTree.d.ts","sourceRoot":"","sources":["ReferenceTree.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAIhE,oBAAY,kBAAkB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,eAAe,CAAC,EAAE,GAAG,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,aAAa,UACjB,kBAAkB,KACxB,MAAM,YA+CR,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"One2manyInput.d.ts","sourceRoot":"","sources":["One2manyInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AACvE,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AAWvD,OAAO,EAAE,KAAK,EAAY,MAAM,SAAS,CAAC;AAkB1C,aAAK,aAAa,GAAG;IACnB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;CAC5B,CAAC;AAQF,aAAK,YAAY,GAAG;IAClB,SAAS,CAAC,EACN,UAAU,GACV,eAAe,GACf,eAAe,GACf,eAAe,GACf,aAAa,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,aAAa,CAAC,EAAE,GAAG,CAAC;CACrB,CAAC;AAEF,UAAU,kBAAkB;IAC1B,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC1C,KAAK,EAAE,KAAK,CAAC;CACd;AAWD,QAAA,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"One2manyInput.d.ts","sourceRoot":"","sources":["One2manyInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AACvE,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AAWvD,OAAO,EAAE,KAAK,EAAY,MAAM,SAAS,CAAC;AAkB1C,aAAK,aAAa,GAAG;IACnB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;CAC5B,CAAC;AAQF,aAAK,YAAY,GAAG;IAClB,SAAS,CAAC,EACN,UAAU,GACV,eAAe,GACf,eAAe,GACf,eAAe,GACf,aAAa,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,aAAa,CAAC,EAAE,GAAG,CAAC;CACrB,CAAC;AAEF,UAAU,kBAAkB;IAC1B,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC1C,KAAK,EAAE,KAAK,CAAC;CACd;AAWD,QAAA,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA8kB/C,CAAC;AAEF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardTree.d.ts","sourceRoot":"","sources":["DashboardTree.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAY,QAAQ,EAAE,MAAM,eAAe,CAAC;AAQnD,aAAK,gBAAgB,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,aAAK,KAAK,GAAG;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC/C,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,GAAG,CAAC;CACrB,CAAC;AAEF,iBAAS,aAAa,CAAC,KAAK,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"DashboardTree.d.ts","sourceRoot":"","sources":["DashboardTree.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAY,QAAQ,EAAE,MAAM,eAAe,CAAC;AAQnD,aAAK,gBAAgB,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,aAAK,KAAK,GAAG;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC/C,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,GAAG,CAAC;CACrB,CAAC;AAEF,iBAAS,aAAa,CAAC,KAAK,EAAE,KAAK,sBA8MlC;AAED,eAAe,aAAa,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["Form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAkCf,OAAO,EAAE,QAAQ,EAAgB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["Form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAkCf,OAAO,EAAE,QAAQ,EAAgB,MAAM,SAAS,CAAC;AAkBjD,oBAAY,SAAS,GAAG;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC9B,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACxE,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB,CAAC;;AAm+BF,wBAAgC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchTree.d.ts","sourceRoot":"","sources":["SearchTree.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAKf,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAgBnD,aAAK,gBAAgB,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,aAAK,KAAK,GAAG;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,YAAY,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,uBAAuB,CAAC,EAAE,CAAC,eAAe,EAAE,GAAG,KAAK,IAAI,CAAC;CAC1D,CAAC;;
|
|
1
|
+
{"version":3,"file":"SearchTree.d.ts","sourceRoot":"","sources":["SearchTree.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAKf,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAgBnD,aAAK,gBAAgB,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,aAAK,KAAK,GAAG;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,YAAY,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,uBAAuB,CAAC,EAAE,CAAC,eAAe,EAAE,GAAG,KAAK,IAAI,CAAC;CAC1D,CAAC;;AA6SF,wBAAsC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tree.d.ts","sourceRoot":"","sources":["Tree.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAKvE,OAAO,EAAE,QAAQ,EAAU,MAAM,SAAS,CAAC;AAiB3C,aAAK,KAAK,GAAG;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAChE,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC7C,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,wBAAwB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"Tree.d.ts","sourceRoot":"","sources":["Tree.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAKvE,OAAO,EAAE,QAAQ,EAAU,MAAM,SAAS,CAAC;AAiB3C,aAAK,KAAK,GAAG;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAChE,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC7C,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,wBAAwB,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf,CAAC;AAmEF,iBAAS,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,YAAY,CA4L9C;AAED,eAAe,IAAI,CAAC"}
|
package/package.json
CHANGED
|
@@ -79,14 +79,8 @@ type RemoveItemOptions = {
|
|
|
79
79
|
};
|
|
80
80
|
|
|
81
81
|
const removeItems = async (options: RemoveItemOptions) => {
|
|
82
|
-
const {
|
|
83
|
-
|
|
84
|
-
activeId,
|
|
85
|
-
fieldName,
|
|
86
|
-
idsToRemove,
|
|
87
|
-
fields,
|
|
88
|
-
isMany2many,
|
|
89
|
-
} = options;
|
|
82
|
+
const { model, activeId, fieldName, idsToRemove, fields, isMany2many } =
|
|
83
|
+
options;
|
|
90
84
|
|
|
91
85
|
const values: any = {};
|
|
92
86
|
values[fieldName] = [];
|
|
@@ -136,4 +130,28 @@ const getNextPendingId = (items: One2manyItem[]) => {
|
|
|
136
130
|
}
|
|
137
131
|
};
|
|
138
132
|
|
|
139
|
-
|
|
133
|
+
const convertToPlain2ManyValues = (values: any, fields: any) => {
|
|
134
|
+
const result: any = {};
|
|
135
|
+
Object.keys(values).forEach((key) => {
|
|
136
|
+
if (
|
|
137
|
+
fields.hasOwnProperty(key) &&
|
|
138
|
+
(fields[key].type === "one2many" || fields[key].type === "many2many") &&
|
|
139
|
+
values[key] &&
|
|
140
|
+
values[key]?.items
|
|
141
|
+
) {
|
|
142
|
+
result[key] = values[key].items.filter(
|
|
143
|
+
(item: One2manyItem) => item.operation !== "pendingRemove"
|
|
144
|
+
);
|
|
145
|
+
} else {
|
|
146
|
+
result[key] = values[key];
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
return result;
|
|
150
|
+
};
|
|
151
|
+
export {
|
|
152
|
+
readObjectValues,
|
|
153
|
+
removeItems,
|
|
154
|
+
linkItem,
|
|
155
|
+
getNextPendingId,
|
|
156
|
+
convertToPlain2ManyValues,
|
|
157
|
+
};
|
|
@@ -15,7 +15,11 @@ const getTree = (treeView: TreeView): TreeOoui => {
|
|
|
15
15
|
return tree;
|
|
16
16
|
};
|
|
17
17
|
|
|
18
|
-
const getTableColumns = (
|
|
18
|
+
const getTableColumns = (
|
|
19
|
+
tree: TreeOoui,
|
|
20
|
+
components: any,
|
|
21
|
+
context: any
|
|
22
|
+
): Array<Column> => {
|
|
19
23
|
const tableColumns = tree.columns.map((column) => {
|
|
20
24
|
const type = column.type;
|
|
21
25
|
const key = column.id;
|
|
@@ -24,7 +28,7 @@ const getTableColumns = (tree: TreeOoui, components: any): Array<Column> => {
|
|
|
24
28
|
|
|
25
29
|
if (component) {
|
|
26
30
|
render = (item: any) => {
|
|
27
|
-
return component(item);
|
|
31
|
+
return component(item, key, tree.fields[key], context);
|
|
28
32
|
};
|
|
29
33
|
}
|
|
30
34
|
|
|
@@ -4,12 +4,16 @@ import React, { useCallback, useEffect, useState } from "react";
|
|
|
4
4
|
import { Many2oneSuffix } from "./many2one/Many2oneSuffix";
|
|
5
5
|
import { LoadingOutlined } from "@ant-design/icons";
|
|
6
6
|
|
|
7
|
-
export type ReferenceTreeProps = {
|
|
7
|
+
export type ReferenceTreeProps = {
|
|
8
|
+
value: string;
|
|
9
|
+
context?: any;
|
|
10
|
+
selectionValues?: any;
|
|
11
|
+
};
|
|
8
12
|
|
|
9
13
|
export const ReferenceTree = (
|
|
10
14
|
props: ReferenceTreeProps
|
|
11
15
|
): React.ReactElement => {
|
|
12
|
-
const { value, context } = props;
|
|
16
|
+
const { value, context, selectionValues } = props;
|
|
13
17
|
const [name, setName] = useState();
|
|
14
18
|
const [loading, setLoading] = useState(false);
|
|
15
19
|
|
|
@@ -46,8 +50,11 @@ export const ReferenceTree = (
|
|
|
46
50
|
return <LoadingOutlined />;
|
|
47
51
|
}
|
|
48
52
|
|
|
53
|
+
const selectionDescription = selectionValues.get(model);
|
|
54
|
+
|
|
49
55
|
return (
|
|
50
56
|
<Space>
|
|
57
|
+
<>{`${selectionDescription}:`}</>
|
|
51
58
|
<>{name}</>
|
|
52
59
|
<Many2oneSuffix id={intId} model={model} />
|
|
53
60
|
</Space>
|
|
@@ -55,6 +55,7 @@ import {
|
|
|
55
55
|
ContentRootContextType,
|
|
56
56
|
} from "@/context/ContentRootContext";
|
|
57
57
|
import { LocaleContext, LocaleContextType } from "@/context/LocaleContext";
|
|
58
|
+
import { convertToPlain2ManyValues } from "@/helpers/one2manyHelper";
|
|
58
59
|
|
|
59
60
|
export type FormProps = {
|
|
60
61
|
model: string;
|
|
@@ -663,10 +664,13 @@ function Form(props: FormProps, ref: any) {
|
|
|
663
664
|
// TODO: Here we must inject `values` to the ooui parser in order to evaluate arch+values and get the new form container
|
|
664
665
|
ooui.parse(arch, {
|
|
665
666
|
readOnly,
|
|
666
|
-
values:
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
667
|
+
values: convertToPlain2ManyValues(
|
|
668
|
+
{
|
|
669
|
+
...values,
|
|
670
|
+
...getAdditionalValues(),
|
|
671
|
+
},
|
|
672
|
+
fields
|
|
673
|
+
),
|
|
670
674
|
});
|
|
671
675
|
setFormOoui(ooui);
|
|
672
676
|
|
|
@@ -37,6 +37,7 @@ type Props = {
|
|
|
37
37
|
sorter?: any;
|
|
38
38
|
onFetchChildrenForRecord?: (item: any) => Promise<any[]>;
|
|
39
39
|
childField?: string;
|
|
40
|
+
context?: any;
|
|
40
41
|
};
|
|
41
42
|
|
|
42
43
|
const booleanComponentFn = (value: boolean): React.ReactElement => {
|
|
@@ -87,8 +88,21 @@ const imageComponent = (value: string): React.ReactElement => {
|
|
|
87
88
|
);
|
|
88
89
|
};
|
|
89
90
|
|
|
90
|
-
const referenceComponent = (
|
|
91
|
-
|
|
91
|
+
const referenceComponent = (
|
|
92
|
+
value: any,
|
|
93
|
+
key: string,
|
|
94
|
+
fieldDefinitions: any,
|
|
95
|
+
context: any
|
|
96
|
+
): React.ReactElement => {
|
|
97
|
+
return (
|
|
98
|
+
<>
|
|
99
|
+
<ReferenceTree
|
|
100
|
+
value={value}
|
|
101
|
+
selectionValues={new Map(fieldDefinitions?.selection)}
|
|
102
|
+
context={context}
|
|
103
|
+
/>
|
|
104
|
+
</>
|
|
105
|
+
);
|
|
92
106
|
};
|
|
93
107
|
|
|
94
108
|
function Tree(props: Props): React.ReactElement {
|
|
@@ -109,6 +123,7 @@ function Tree(props: Props): React.ReactElement {
|
|
|
109
123
|
sorter,
|
|
110
124
|
onFetchChildrenForRecord,
|
|
111
125
|
childField,
|
|
126
|
+
context,
|
|
112
127
|
} = props;
|
|
113
128
|
|
|
114
129
|
const [items, setItems] = useState<Array<any>>([]);
|
|
@@ -124,19 +139,23 @@ function Tree(props: Props): React.ReactElement {
|
|
|
124
139
|
useEffect(() => {
|
|
125
140
|
treeOoui.current = getTree(treeView);
|
|
126
141
|
|
|
127
|
-
const columns = getTableColumns(
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
142
|
+
const columns = getTableColumns(
|
|
143
|
+
treeOoui.current,
|
|
144
|
+
{
|
|
145
|
+
boolean: booleanComponentFn,
|
|
146
|
+
many2one: many2OneComponentFn,
|
|
147
|
+
text: textComponentFn,
|
|
148
|
+
one2many: one2ManyComponentFn,
|
|
149
|
+
many2many: one2ManyComponentFn,
|
|
150
|
+
progressbar: progressBarComponentFn,
|
|
151
|
+
float_time: floatTimeComponent,
|
|
152
|
+
image: imageComponent,
|
|
153
|
+
integer: numberComponent,
|
|
154
|
+
float: numberComponent,
|
|
155
|
+
reference: referenceComponent,
|
|
156
|
+
},
|
|
157
|
+
context
|
|
158
|
+
);
|
|
140
159
|
|
|
141
160
|
setColumns(columns);
|
|
142
161
|
}, [treeView]);
|