@gisce/react-ooui 1.2.0-rc.42 → 1.2.0-rc.44

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.
@@ -8,6 +8,12 @@ declare const DefaultGraphOptions: {
8
8
  maxWidthRatio: number;
9
9
  maxItemWidth: number;
10
10
  };
11
+ tooltip: {
12
+ formatter: (object: any) => {
13
+ name: any;
14
+ value: any;
15
+ };
16
+ };
11
17
  };
12
18
  pie: {
13
19
  appendPadding: number;
@@ -25,6 +31,12 @@ declare const DefaultGraphOptions: {
25
31
  maxWidthRatio: number;
26
32
  maxItemWidth: number;
27
33
  };
34
+ tooltip: {
35
+ formatter: (object: any) => {
36
+ name: any;
37
+ value: any;
38
+ };
39
+ };
28
40
  interactions: {
29
41
  type: string;
30
42
  }[];
@@ -35,6 +47,12 @@ declare const DefaultGraphOptions: {
35
47
  maxWidthRatio: number;
36
48
  maxItemWidth: number;
37
49
  };
50
+ tooltip: {
51
+ formatter: (object: any) => {
52
+ name: any;
53
+ value: any;
54
+ };
55
+ };
38
56
  label: {
39
57
  position: string;
40
58
  layout: {
@@ -1 +1 @@
1
- {"version":3,"file":"GraphDefaults.d.ts","sourceRoot":"","sources":["GraphDefaults.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;mCAiBI,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqC/B,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"GraphDefaults.d.ts","sourceRoot":"","sources":["GraphDefaults.ts"],"names":[],"mappings":"AAUA,QAAA,MAAM,mBAAmB;;;;;;;;;;;gCATP,GAAG;;;;;;;;;;;;mCA6BQ,GAAG;;;;;;;;;;;gCA7Bd,GAAG;;;;;;;;;;;;;;;;gCAAH,GAAG;;;;;;;;;;;;CAwEpB,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -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;;AA8SF,wBAAsC"}
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;;AA+SF,wBAAsC"}
@@ -14,6 +14,7 @@ declare type Props = {
14
14
  searchError?: string;
15
15
  searchValues?: any;
16
16
  showLimitOptions?: boolean;
17
+ formXml: string;
17
18
  };
18
19
  declare function SearchFilter(props: Props): JSX.Element;
19
20
  export default SearchFilter;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchFilter.d.ts","sourceRoot":"","sources":["SearchFilter.tsx"],"names":[],"mappings":";AAYA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAMvC,aAAK,KAAK,GAAG;IACX,MAAM,EAAE,GAAG,CAAC;IACZ,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,iBAAS,YAAY,CAAC,KAAK,EAAE,KAAK,eAmHjC;AAED,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"SearchFilter.d.ts","sourceRoot":"","sources":["SearchFilter.tsx"],"names":[],"mappings":";AAYA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAMvC,aAAK,KAAK,GAAG;IACX,MAAM,EAAE,GAAG,CAAC;IACZ,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,iBAAS,YAAY,CAAC,KAAK,EAAE,KAAK,eAwHjC;AAED,eAAe,YAAY,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gisce/react-ooui",
3
- "version": "1.2.0-rc.42",
3
+ "version": "1.2.0-rc.44",
4
4
  "files": [
5
5
  "dist",
6
6
  "src",
@@ -36,7 +36,7 @@
36
36
  },
37
37
  "dependencies": {
38
38
  "@ant-design/plots": "^1.0.9",
39
- "@gisce/ooui": "^0.17.14-rc.0",
39
+ "@gisce/ooui": "^0.17.14-rc.1",
40
40
  "@gisce/react-formiga-components": "^1.0.9-rc.14",
41
41
  "@gisce/react-formiga-table": "^0.5.0",
42
42
  "@monaco-editor/react": "^4.4.5",
@@ -5,14 +5,14 @@ const convertBooleanParamIfNeeded = (value: any) => {
5
5
  return value;
6
6
  };
7
7
 
8
- export const getParamsForFields = (values: any, fields: any) => {
8
+ export const getParamsForFields = (values: any, widgetContainer: any) => {
9
9
  const filteredValues = removeUndefinedFields(values);
10
10
  const groupedDateTime = groupDateTimeValuesIfNeeded(filteredValues);
11
- const groupedValues = ungroupDateValuesIfNeeded(groupedDateTime, fields);
11
+ const groupedValues = ungroupDateValuesIfNeeded(groupedDateTime, widgetContainer);
12
12
 
13
13
  const params = [
14
14
  ...Object.keys(groupedValues).map((key) => {
15
- return getParamForField(key, groupedValues[key], fields);
15
+ return getParamForField(key, groupedValues[key], widgetContainer);
16
16
  }),
17
17
  ];
18
18
 
@@ -27,9 +27,9 @@ export const getParamsForFields = (values: any, fields: any) => {
27
27
  return paramsForFields;
28
28
  };
29
29
 
30
- const getParamForField = (key: string, value: any, fields: any) => {
30
+ const getParamForField = (key: string, value: any, widgetContainer: any) => {
31
31
  const filteredKey = key.split("#")[0];
32
- const type = fields[filteredKey].type;
32
+ const type = widgetContainer.findById(filteredKey)?.type;
33
33
 
34
34
  if (
35
35
  type === "char" ||
@@ -127,9 +127,10 @@ export const groupDateTimeValuesIfNeeded = (values: any) => {
127
127
  return newValues;
128
128
  };
129
129
 
130
- const ungroupDateValuesIfNeeded = (values: any, fields: any) => {
130
+ const ungroupDateValuesIfNeeded = (values: any, widgetContainer: any) => {
131
131
  const dateFields = Object.keys(values).filter((key) => {
132
- return fields[key] && fields[key].type === "date";
132
+ const widget = widgetContainer.findById(key);
133
+ return widget && widget.type === "date";
133
134
  });
134
135
 
135
136
  let newValues: any = { ...values };
@@ -1,3 +1,13 @@
1
+ const formatter = (graphType: "pie" | "default" | "barGrouped") => {
2
+ return (object: any) => {
3
+ const formattedValue = object.value.toLocaleString("en-US", {
4
+ useGrouping: true,
5
+ });
6
+ const name = graphType === "pie" ? object.x : object.type;
7
+ return { name, value: formattedValue };
8
+ };
9
+ };
10
+
1
11
  const DefaultGraphOptions = {
2
12
  default: {
3
13
  padding: "auto",
@@ -8,6 +18,9 @@ const DefaultGraphOptions = {
8
18
  maxWidthRatio: 0.5,
9
19
  maxItemWidth: 1000,
10
20
  },
21
+ tooltip: {
22
+ formatter: formatter("default"),
23
+ },
11
24
  },
12
25
  pie: {
13
26
  appendPadding: 10,
@@ -25,6 +38,9 @@ const DefaultGraphOptions = {
25
38
  maxWidthRatio: 0.5,
26
39
  maxItemWidth: 1000,
27
40
  },
41
+ tooltip: {
42
+ formatter: formatter("pie"),
43
+ },
28
44
  interactions: [
29
45
  {
30
46
  type: "element-active",
@@ -37,6 +53,9 @@ const DefaultGraphOptions = {
37
53
  maxWidthRatio: 0.5,
38
54
  maxItemWidth: 1000,
39
55
  },
56
+ tooltip: {
57
+ formatter: formatter("barGrouped"),
58
+ },
40
59
  label: {
41
60
  position: "middle",
42
61
  layout: [
@@ -295,6 +295,7 @@ function SearchTree(props: Props, ref: any) {
295
295
  formView.search_fields,
296
296
  treeView.search_fields,
297
297
  ])}
298
+ formXml={formView.arch}
298
299
  onClear={clear}
299
300
  limit={limit}
300
301
  offset={offset}
@@ -1,4 +1,4 @@
1
- import React, { useEffect, useState } from "react";
1
+ import React, { useEffect, useRef, useState } from "react";
2
2
  import { Form, Row, Col, Alert } from "antd";
3
3
  import useDeepCompareEffect from "use-deep-compare-effect";
4
4
 
@@ -30,6 +30,7 @@ type Props = {
30
30
  searchError?: string;
31
31
  searchValues?: any;
32
32
  showLimitOptions?: boolean;
33
+ formXml: string;
33
34
  };
34
35
 
35
36
  function SearchFilter(props: Props) {
@@ -47,11 +48,13 @@ function SearchFilter(props: Props) {
47
48
  searchError,
48
49
  searchValues,
49
50
  showLimitOptions = true,
51
+ formXml,
50
52
  } = props;
51
53
 
52
54
  const [simpleSearchFields, setSimpleSearchFields] = useState<Container>();
53
55
  const [advancedSearchFields, setAdvancedSearchFields] = useState<Container>();
54
56
  const [advancedFilter, setAdvancedFilter] = useState(false);
57
+ const sfo = useRef<SearchFilterOoui>();
55
58
 
56
59
  const [form] = Form.useForm();
57
60
 
@@ -84,10 +87,10 @@ function SearchFilter(props: Props) {
84
87
 
85
88
  useDeepCompareEffect(() => {
86
89
  setAdvancedFilter(false);
87
- const sfo = new SearchFilterOoui(searchFields, fields);
88
- sfo.parse();
89
- setSimpleSearchFields(sfo._simpleSearchContainer);
90
- setAdvancedSearchFields(sfo._advancedSearchContainer);
90
+ sfo.current = new SearchFilterOoui(searchFields, fields, formXml);
91
+ sfo.current.parse();
92
+ setSimpleSearchFields(sfo.current._simpleSearchContainer);
93
+ setAdvancedSearchFields(sfo.current._advancedSearchContainer);
91
94
  }, [fields, searchFields]);
92
95
 
93
96
  const rows = getRowsAndCols();
@@ -96,7 +99,10 @@ function SearchFilter(props: Props) {
96
99
  const { limit, offset } = values;
97
100
  delete values.offset;
98
101
  delete values.limit;
99
- const newParams = getParamsForFields(values, fields);
102
+ const newParams = getParamsForFields(
103
+ values,
104
+ sfo.current?._advancedSearchContainer
105
+ );
100
106
 
101
107
  onSubmit({ params: newParams, offset, limit, searchValues: values });
102
108
  };