@gisce/react-ooui 0.13.2 → 0.15.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.
Files changed (33) hide show
  1. package/dist/context/FormContext.d.ts +3 -0
  2. package/dist/context/FormContext.d.ts.map +1 -1
  3. package/dist/context/FormContext.js +2 -1
  4. package/dist/context/FormContext.js.map +1 -1
  5. package/dist/index.d.ts +2 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/widgets/WidgetFactory.d.ts.map +1 -1
  10. package/dist/widgets/WidgetFactory.js +2 -0
  11. package/dist/widgets/WidgetFactory.js.map +1 -1
  12. package/dist/widgets/custom/MultiCheckbox.d.ts +14 -0
  13. package/dist/widgets/custom/MultiCheckbox.d.ts.map +1 -0
  14. package/dist/widgets/custom/MultiCheckbox.js +203 -0
  15. package/dist/widgets/custom/MultiCheckbox.js.map +1 -0
  16. package/dist/widgets/custom/Tags.d.ts.map +1 -1
  17. package/dist/widgets/custom/Tags.js +34 -21
  18. package/dist/widgets/custom/Tags.js.map +1 -1
  19. package/dist/widgets/views/Form.d.ts.map +1 -1
  20. package/dist/widgets/views/Form.js +29 -1
  21. package/dist/widgets/views/Form.js.map +1 -1
  22. package/dist/widgets/views/Graph/GraphIndicator.d.ts.map +1 -1
  23. package/dist/widgets/views/Graph/GraphIndicator.js +3 -0
  24. package/dist/widgets/views/Graph/GraphIndicator.js.map +1 -1
  25. package/package.json +1 -1
  26. package/src/context/FormContext.tsx +3 -0
  27. package/src/index.ts +2 -0
  28. package/src/stories/custom/MultiCheckbox.stories.tsx +52 -0
  29. package/src/widgets/WidgetFactory.tsx +3 -0
  30. package/src/widgets/custom/MultiCheckbox.tsx +153 -0
  31. package/src/widgets/custom/Tags.tsx +21 -10
  32. package/src/widgets/views/Form.tsx +36 -1
  33. package/src/widgets/views/Graph/GraphIndicator.tsx +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"GraphIndicator.js","sourceRoot":"","sources":["../../../../src/widgets/views/Graph/GraphIndicator.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GraphIndicator.js","sourceRoot":"","sources":["../../../../src/widgets/views/Graph/GraphIndicator.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gisce/react-ooui",
3
- "version": "0.13.2",
3
+ "version": "0.15.1",
4
4
  "main": "dist/index.js",
5
5
  "files": [
6
6
  "dist",
@@ -16,6 +16,7 @@ export type FormContextType = {
16
16
  }) => Promise<void>;
17
17
  getContext: () => Promise<any>;
18
18
  getValues: () => Promise<any>;
19
+ getPlainValues: () => { [key: string]: any };
19
20
  getFields: () => Promise<any>;
20
21
  setOriginalValue: (field: string, value: any) => void;
21
22
  domain: any[];
@@ -43,6 +44,7 @@ const FormProvider = (props: FormProviderProps): any => {
43
44
  executeButtonAction,
44
45
  getContext,
45
46
  getValues,
47
+ getPlainValues,
46
48
  setOriginalValue,
47
49
  domain,
48
50
  submitForm,
@@ -57,6 +59,7 @@ const FormProvider = (props: FormProviderProps): any => {
57
59
  value={{
58
60
  domain,
59
61
  getValues,
62
+ getPlainValues,
60
63
  getFields,
61
64
  activeId,
62
65
  activeModel,
package/src/index.ts CHANGED
@@ -35,6 +35,7 @@ import { Image } from "@/widgets/base/Image";
35
35
  import showConfirmDialog from "@/ui/ConfirmDialog";
36
36
  import Dashboard from "@/widgets/views/Dashboard/Dashboard";
37
37
  import { Tags } from "@/widgets/custom/Tags";
38
+ import { MultiCheckbox } from "./widgets/custom/MultiCheckbox";
38
39
  import { Radio } from "@/widgets/custom/Radio";
39
40
  import { Switch } from "@/widgets/custom/Switch";
40
41
  import {
@@ -139,6 +140,7 @@ export {
139
140
  DashboardGridItem,
140
141
  DashboardGrid,
141
142
  Tags,
143
+ MultiCheckbox,
142
144
  Radio,
143
145
  Switch,
144
146
  };
@@ -0,0 +1,52 @@
1
+ import React from "react";
2
+
3
+ import { MultiCheckboxInput } from "../../widgets/custom/MultiCheckbox";
4
+ import { Checkbox, Space, Row, Col } from "antd";
5
+ import { MultiCheckbox as MultiCheckboxOoui } from "@gisce/ooui";
6
+ import "antd/dist/antd.css";
7
+ import LocaleProvider from "../../context/LocaleContext";
8
+
9
+ export default {
10
+ title: "Components/Widgets/Custom/MultiCheckbox",
11
+ };
12
+
13
+ export const Default = (): React.ReactElement => {
14
+ const ooui = new MultiCheckboxOoui({
15
+ name: "button_field",
16
+ string: "Lorem ipsum",
17
+ field: "name",
18
+ relation: "res.partner.category"
19
+ });
20
+
21
+ return (
22
+ <LocaleProvider lang="en_US">
23
+ <MultiCheckboxInput ooui={ooui} value={{items: [
24
+ {id: 1, operation: "original"},
25
+ {id: 2, operation: "original"},
26
+ {id: 3, operation: "pendingRemove"}
27
+ ]}}
28
+ />
29
+ </LocaleProvider>
30
+ );
31
+ };
32
+
33
+ export const Readonly = (): React.ReactElement => {
34
+ const ooui = new MultiCheckboxOoui({
35
+ name: "button_field",
36
+ string: "Lorem ipsum",
37
+ field: "name",
38
+ readonly: true,
39
+ relation: "res.partner.category",
40
+ });
41
+
42
+ return (
43
+ <LocaleProvider lang="en_US">
44
+ <MultiCheckboxInput ooui={ooui} value={{items: [
45
+ {id: 1, operation: "original"},
46
+ {id: 2, operation: "original"},
47
+ {id: 3, operation: "pendingRemove"}
48
+ ]}}
49
+ />
50
+ </LocaleProvider>
51
+ );
52
+ };
@@ -24,6 +24,7 @@ import {
24
24
  Email,
25
25
  FloatTime,
26
26
  ProgressBar,
27
+ MultiCheckbox,
27
28
  Radio,
28
29
  Switch,
29
30
  } from "@/index";
@@ -93,6 +94,8 @@ const getWidgetType = (type: string) => {
93
94
  return Indicator;
94
95
  case "tags":
95
96
  return Tags;
97
+ case "multicheckbox":
98
+ return MultiCheckbox;
96
99
  case "radio":
97
100
  return Radio;
98
101
  case "switch":
@@ -0,0 +1,153 @@
1
+ import React, { useContext, useState } from "react";
2
+ import { MultiCheckbox as MultiCheckboxOoui } from "@gisce/ooui";
3
+ import Field from "@/common/Field";
4
+ import { One2manyItem, One2manyValue } from "../base/one2many/One2manyInput";
5
+ import useDeepCompareEffect from "use-deep-compare-effect";
6
+ import { FormContext, FormContextType } from "@/context/FormContext";
7
+ import { Alert, Checkbox, Spin, Col, Row, Button, Space } from "antd";
8
+ import ConnectionProvider from "@/ConnectionProvider";
9
+
10
+ type MultiCheckboxProps = {
11
+ ooui: MultiCheckboxOoui;
12
+ };
13
+
14
+ type MultiCheckboxInputProps = MultiCheckboxProps & {
15
+ value?: One2manyValue;
16
+ onChange?: (value: One2manyValue) => void;
17
+ };
18
+
19
+ export const MultiCheckbox = (props: MultiCheckboxProps) => {
20
+ const { ooui } = props;
21
+
22
+ return (
23
+ <Field type={"array"} {...props}>
24
+ <MultiCheckboxInput ooui={ooui} />
25
+ </Field>
26
+ );
27
+ };
28
+
29
+ export const MultiCheckboxInput = (props: MultiCheckboxInputProps) => {
30
+ const { value, ooui, onChange } = props;
31
+ const { items = [] } = value || {};
32
+ const itemsToShow = items.filter(
33
+ (item) => item.operation !== "pendingRemove"
34
+ ).map((item) => item.id) as number[];
35
+
36
+ const [options, setOptions] = useState<any[]>([]);
37
+ const [error, setError] = useState<string>();
38
+ const [isLoadingOptions, setIsLoadingOptions] = useState<boolean>(false);
39
+ const { relation, context, readOnly, field, columns } = ooui;
40
+
41
+
42
+ const formContext = useContext(FormContext) as FormContextType;
43
+ const { getContext } = formContext || {};
44
+
45
+ useDeepCompareEffect(() => {
46
+ fetchOptions();
47
+ }, [items]);
48
+
49
+ const triggerChange = (changedValue: Array<One2manyItem>) => {
50
+ onChange?.({
51
+ items: changedValue,
52
+ });
53
+ };
54
+
55
+ async function fetchOptions() {
56
+ setIsLoadingOptions(true);
57
+ let params: any = [];
58
+ if (ooui.domain) {
59
+ const evaluatedDomain = await ConnectionProvider.getHandler().evalDomain(
60
+ {
61
+ domain: ooui.domain,
62
+ values: formContext.getPlainValues(),
63
+ context: formContext.getContext(),
64
+ }
65
+ );
66
+ params = [...params, ...evaluatedDomain];
67
+ }
68
+ try {
69
+ const optionsRead = await ConnectionProvider.getHandler().search({
70
+ model: relation,
71
+ params: params,
72
+ fields: [field],
73
+ context: { ...getContext?.(), ...context },
74
+ });
75
+ const options = optionsRead.map((item:any) => {
76
+ const value = item[field];
77
+ let formattedValue = value;
78
+ if (Array.isArray(value)) {
79
+ formattedValue = value[1];
80
+ }
81
+ return {label: formattedValue, value: item.id}
82
+ });
83
+ setOptions(options);
84
+
85
+ } catch (err) {
86
+ setError(err as any)
87
+ } finally {
88
+ setIsLoadingOptions(false);
89
+ }
90
+ if (error) {
91
+ return <Alert className="mt-10" message={error} type="error" banner />;
92
+ }
93
+
94
+
95
+ };
96
+
97
+ const checkAll = () => {
98
+ onChangeSelected(options.map(option => option.value));
99
+ }
100
+
101
+ const uncheckAll = () => {
102
+ onChangeSelected([]);
103
+ }
104
+
105
+ const onChangeSelected = (ids: any[]) => {
106
+ const newItems: One2manyItem[] = items.map((item) => {
107
+ if (ids.includes(item.id as number)) {
108
+ if (item.operation == "pendingRemove") {
109
+ return {
110
+ ...item,
111
+ operation: "original"
112
+ }
113
+ } else {
114
+ return item
115
+ }
116
+ } else {
117
+ return {id: item.id, operation: 'pendingRemove'}
118
+ }
119
+ })
120
+ const currentIds = newItems.map(item => item.id)
121
+ ids.filter(id => !currentIds.includes(id)).map((id) => {
122
+ newItems.push({id, operation: 'pendingLink'});
123
+ });
124
+ triggerChange(newItems);
125
+ };
126
+
127
+ if (isLoadingOptions && options.length === 0) {
128
+ return <Spin />
129
+ }
130
+
131
+ return (
132
+ <>
133
+ <div style={{ padding: "1rem" }}>
134
+ <Checkbox.Group value={options.length ? itemsToShow : []} disabled={readOnly} onChange={onChangeSelected} style={{width: '100%'}}>
135
+ <Row>
136
+ {options.map((option) => (
137
+ <Col span={Math.floor(24 / columns)}>
138
+ <Checkbox value={option.value}>{option.label}</Checkbox>
139
+ </Col>
140
+ ))}
141
+ </Row>
142
+ </Checkbox.Group>
143
+ {!readOnly &&
144
+ <Space>
145
+ <Button onClick={checkAll} disabled={itemsToShow.length == options.length}>Check all</Button>
146
+ <Button onClick={uncheckAll} disabled={itemsToShow.length === 0}>Uncheck all</Button>
147
+ </Space>
148
+ }
149
+ </div>
150
+ </>
151
+ );
152
+
153
+ };
@@ -55,11 +55,22 @@ export const TagsInput = (props: TagsInputProps) => {
55
55
 
56
56
  async function fetchOptions() {
57
57
  setIsLoadingOptions(true);
58
- let params = formContext?.domain || [];
59
- if (readOnly) {
60
- params = [['id', 'in', itemsToShow]]
61
- }
58
+ let params: any[] = [];
62
59
  try {
60
+ if (readOnly) {
61
+ params = [["id", "in", itemsToShow]];
62
+ }
63
+ if (ooui.domain) {
64
+ const evaluatedDomain = await ConnectionProvider.getHandler().evalDomain(
65
+ {
66
+ domain: ooui.domain,
67
+ values: formContext.getPlainValues(),
68
+ context: formContext.getContext(),
69
+ }
70
+ );
71
+ params = [...params, ...evaluatedDomain];
72
+ }
73
+
63
74
  const optionsRead = await ConnectionProvider.getHandler().search({
64
75
  model: relation,
65
76
  params: params,
@@ -81,11 +92,7 @@ export const TagsInput = (props: TagsInputProps) => {
81
92
  } finally {
82
93
  setIsLoadingOptions(false);
83
94
  }
84
- if (error) {
85
- return <Alert className="mt-10" message={error} type="error" banner />;
86
- }
87
-
88
- };
95
+ }
89
96
 
90
97
  const onChangeSelected = (ids: number[]) => {
91
98
  const newItems: One2manyItem[] = items.map((item) => {
@@ -126,7 +133,11 @@ export const TagsInput = (props: TagsInputProps) => {
126
133
  </AntTag>
127
134
  );
128
135
  };
129
-
136
+
137
+ if (error) {
138
+ return <Alert className="mt-10" message={error} type="error" banner />;
139
+ }
140
+
130
141
  return (
131
142
  <>
132
143
  <div style={{ padding: "1rem" }}>
@@ -38,7 +38,7 @@ import FormProvider, {
38
38
  FormContext,
39
39
  FormContextType,
40
40
  } from "@/context/FormContext";
41
- import { FormView } from "@/index";
41
+ import { FormView, One2manyItem } from "@/index";
42
42
  import {
43
43
  FormModalContext,
44
44
  FormModalContextType,
@@ -148,6 +148,7 @@ function Form(props: FormProps, ref: any) {
148
148
  submitForm,
149
149
  getFields,
150
150
  getValues,
151
+ getPlainValues,
151
152
  getContext,
152
153
  fetchValues,
153
154
  cancelUnsavedChanges,
@@ -232,6 +233,39 @@ function Form(props: FormProps, ref: any) {
232
233
  return values;
233
234
  }
234
235
 
236
+ function getPlainValues() {
237
+ const values: any = getValues();
238
+ const fields: any = getFields();
239
+ let reformattedValues: { [key: string]: any } = {};
240
+
241
+ Object.keys(values).forEach((key) => {
242
+ const value = values[key];
243
+
244
+ if (
245
+ fields[key] &&
246
+ fields[key].type === "many2one" &&
247
+ value &&
248
+ Array.isArray(value) &&
249
+ value.length === 2
250
+ ) {
251
+ reformattedValues[key] = value[0];
252
+ } else if (
253
+ fields[key] &&
254
+ (fields[key].type === "one2many" || fields[key].type === "many2many") &&
255
+ value &&
256
+ value.items
257
+ ) {
258
+ reformattedValues[key] = value.items
259
+ .filter((item: One2manyItem) => item.operation !== "pendingRemove")
260
+ .map((val: any) => val.id);
261
+ } else {
262
+ reformattedValues[key] = value;
263
+ }
264
+ });
265
+
266
+ return reformattedValues;
267
+ }
268
+
235
269
  function getFormValues() {
236
270
  const values = {
237
271
  ...getCurrentValues(fields),
@@ -937,6 +971,7 @@ function Form(props: FormProps, ref: any) {
937
971
  <>
938
972
  <FormProvider
939
973
  getValues={getValues}
974
+ getPlainValues={getPlainValues}
940
975
  getFields={getFields}
941
976
  domain={actionDomain}
942
977
  activeId={id}
@@ -104,6 +104,8 @@ export const GraphIndicator = (props: GraphInidicatorProps) => {
104
104
  percent =
105
105
  Math.round((retrievedValue / totalRetrievedValue) * 100 * 100) / 100;
106
106
  setPercent(percent);
107
+ } else {
108
+ setPercent(0);
107
109
  }
108
110
 
109
111
  if (colorCondition) {