@voplus/morpho-document 6.0.185 → 6.0.187

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 (40) hide show
  1. package/es/components/TextDefaultView/index.js +1 -1
  2. package/es/components/TextDefaultView/index.js.map +1 -1
  3. package/es/controls/PageMenu/index.js +5 -1
  4. package/es/controls/PageMenu/index.js.map +1 -1
  5. package/es/controls/ToolBar/buttons/Close.js +5 -1
  6. package/es/controls/ToolBar/buttons/Close.js.map +1 -1
  7. package/es/data/message-template/MessageTemplateStore.d.ts +2 -1
  8. package/es/data/message-template/MessageTemplateStore.js +9 -1
  9. package/es/data/message-template/MessageTemplateStore.js.map +1 -1
  10. package/es/data/message-template/metas.d.ts +5 -1
  11. package/es/data/message-template/metas.js +4 -0
  12. package/es/data/message-template/metas.js.map +1 -1
  13. package/es/data/quick-access/hooks.d.ts +1 -0
  14. package/es/data/quick-access/hooks.js.map +1 -1
  15. package/es/modules/message-template/components/MessageTemplateTableList/TableCell.d.ts +3 -0
  16. package/es/modules/message-template/components/MessageTemplateTableList/TableCell.js +25 -0
  17. package/es/modules/message-template/components/MessageTemplateTableList/TableCell.js.map +1 -0
  18. package/es/modules/message-template/components/MessageTemplateTableList/index.d.ts +10 -0
  19. package/es/modules/message-template/components/MessageTemplateTableList/index.js +122 -0
  20. package/es/modules/message-template/components/MessageTemplateTableList/index.js.map +1 -0
  21. package/es/modules/message-template/components/MessageTemplateTableList/index.less +14 -0
  22. package/es/modules/message-template/controls/MessageTemplateMenu/index.js +2 -2
  23. package/es/modules/message-template/controls/MessageTemplateMenu/index.js.map +1 -1
  24. package/es/modules/page/views/PageDefaultView/index.js +34 -11
  25. package/es/modules/page/views/PageDefaultView/index.js.map +1 -1
  26. package/es/modules/quick-access/AdvanceFilterForm/index.d.ts +2 -0
  27. package/es/modules/quick-access/AdvanceFilterForm/index.js +315 -148
  28. package/es/modules/quick-access/AdvanceFilterForm/index.js.map +1 -1
  29. package/es/modules/quick-access/AdvanceFilterForm/state.d.ts +50 -34
  30. package/es/modules/quick-access/AdvanceFilterForm/state.js +45 -46
  31. package/es/modules/quick-access/AdvanceFilterForm/state.js.map +1 -1
  32. package/es/modules/quick-access/QuickAccessPage/QuickAccessContext.d.ts +1 -0
  33. package/es/modules/quick-access/QuickAccessPage/QuickAccessContext.js +9 -0
  34. package/es/modules/quick-access/QuickAccessPage/QuickAccessContext.js.map +1 -1
  35. package/es/modules/quick-access/QuickAccessSearchList/index.js +18 -13
  36. package/es/modules/quick-access/QuickAccessSearchList/index.js.map +1 -1
  37. package/es/modules/quick-access/QuickAccessSearchList/state.d.ts +2 -0
  38. package/es/modules/quick-access/QuickAccessSearchList/state.js +9 -0
  39. package/es/modules/quick-access/QuickAccessSearchList/state.js.map +1 -1
  40. package/package.json +1 -1
@@ -1,44 +1,79 @@
1
- import React, { useState } from "react";
1
+ import React, { useEffect, useState } from "react";
2
2
  import { State } from "./state";
3
- import { useApplicationContext } from "@voplus/morpho-data";
4
- import { Input, InputNumber, DatePicker, Select, Row, Col, message } from "antd";
5
- import { useNodeInfoListEffect } from "../../../data/quick-access";
6
3
  import { observe, PropertiesSection } from "@voplus/morpho-ui";
7
4
  import { useDocumentStore } from "@voplus/morpho-document-core";
5
+ import { useApplicationContext } from "@voplus/morpho-data";
6
+ import { utcdayjs } from "@voplus/morpho-ui/es/controls/UTCDatePicker/state";
8
7
  import { currencyList } from "@voplus/morpho-ui/es/controls/CurrencySelect/state";
8
+ import { Input, InputNumber, DatePicker, Select, Switch, Row, Col, Skeleton, message } from "antd";
9
9
  import { useAsideContentContext } from "@voplus/morpho-ui/es/components/layout/AsideContent";
10
+ import UnitsSelectDialog from "@voplus/morpho-org/es/components/UnitsSelectDialog";
10
11
  import CenterSelect from "@voplus/morpho-org/es/components/CenterSelect";
11
12
  import AddFormView from "@voplus/morpho-ui/es/controls/AddFormView";
12
13
  import MentionList from "@voplus/morpho-org/es/controls/MentionList";
13
14
  import Prop from "@voplus/morpho-ui/es/controls/Prop";
14
15
  import classnames from "classnames";
15
- import dayjs from "dayjs";
16
16
  import styles from "./index.less";
17
+ import dayjs from "dayjs";
17
18
  const AdvanceFilterForm = (props) => {
18
19
  const { user } = useApplicationContext();
19
20
  const documentStore = useDocumentStore();
20
21
  const asideContext = useAsideContentContext();
21
22
  const [state] = useState(new State(documentStore));
22
- useNodeInfoListEffect((result) => (state.fileTypes = result));
23
+ const getToLocal = () => {
24
+ const t = localStorage.getItem("AdvanceFilter_DefaultType");
25
+ const v = localStorage.getItem("AdvanceFilter_DefaultValue");
26
+ const f = localStorage.getItem("AdvanceFilter_DefaultFilter");
27
+ return [
28
+ t ? JSON.parse(t) : undefined,
29
+ v ? JSON.parse(v) : undefined,
30
+ f ? JSON.parse(f) : undefined,
31
+ ];
32
+ };
33
+ const storeToLocal = (t, v, f) => {
34
+ localStorage.setItem("AdvanceFilter_DefaultType", JSON.stringify(t));
35
+ localStorage.setItem("AdvanceFilter_DefaultValue", JSON.stringify(v));
36
+ localStorage.setItem("AdvanceFilter_DefaultFilter", JSON.stringify(f));
37
+ };
38
+ useEffect(() => {
39
+ state.loading = false;
40
+ const [t, v, f] = getToLocal();
41
+ state.selectedType = t;
42
+ state.filterDefaultValue = v !== null && v !== void 0 ? v : {
43
+ selectedUnits: [],
44
+ amountFilter: { c: "", l: "And" },
45
+ unpaidFilter: { c: "", l: "And" },
46
+ registrationNo: { c: "", l: "And" },
47
+ invoiceNo: { c: "", l: "And" },
48
+ dateFilter: { c: "", l: "And" },
49
+ registrationDateFilter: { c: "", l: "And" },
50
+ createDateFilter: { c: "", l: "And" },
51
+ };
52
+ state.filerOptions = f !== null && f !== void 0 ? f : [];
53
+ setTimeout(() => (state.loading = true), 100);
54
+ }, []);
23
55
  const content = observe(() => {
24
- var _a, _b, _c, _d, _e, _f, _g;
25
- return (React.createElement("div", { className: classnames(styles["advance-filter-content"]) },
56
+ var _a, _b, _c, _d, _e, _f, _g, _h;
57
+ return state.loading ? (React.createElement("div", { className: classnames(styles["advance-filter-content"]) },
26
58
  React.createElement(PropertiesSection, { title: "GENERAL FIELDS", properties: () => {
27
- var _a;
59
+ var _a, _b;
28
60
  return (React.createElement(Prop, { label: "Type", flow: "vertical" },
29
- React.createElement(Select, { style: { width: "100%" }, placeholder: "Select File Type", options: (_a = state.fileTypes) === null || _a === void 0 ? void 0 : _a.map((f) => {
30
- return { value: f.type, label: f.type };
61
+ React.createElement(Select, { style: { width: "100%" }, placeholder: "Select File Type", defaultValue: (_a = state.selectedType) === null || _a === void 0 ? void 0 : _a.type, options: (_b = props.fileTypes) === null || _b === void 0 ? void 0 : _b.map((f) => {
62
+ var _a;
63
+ return { value: f.type, label: (_a = f === null || f === void 0 ? void 0 : f.name) !== null && _a !== void 0 ? _a : f.type };
31
64
  }), onChange: (t) => onChangeFileType(t) })));
32
65
  } }),
33
- ((_a = state.selectedType) === null || _a === void 0 ? void 0 : _a.type) && ((_b = state.selectedType) === null || _b === void 0 ? void 0 : _b.type) !== "Document" && (React.createElement(PropertiesSection, { title: `${(_d = (_c = state.selectedType) === null || _c === void 0 ? void 0 : _c.type) === null || _d === void 0 ? void 0 : _d.toLocaleUpperCase()} FIELDS`, properties: () => {
66
+ ((_a = state.selectedType) === null || _a === void 0 ? void 0 : _a.type) &&
67
+ ((_b = state.selectedType) === null || _b === void 0 ? void 0 : _b.type) !== "Document" &&
68
+ ((_c = state.selectedType.searchProps) === null || _c === void 0 ? void 0 : _c.length) > 0 && (React.createElement(PropertiesSection, { title: `${(_e = (_d = state.selectedType) === null || _d === void 0 ? void 0 : _d.type) === null || _e === void 0 ? void 0 : _e.toLocaleUpperCase()} FIELDS`, properties: () => {
34
69
  var _a, _b;
35
- return (_b = (_a = state.selectedType) === null || _a === void 0 ? void 0 : _a.searchProps) === null || _b === void 0 ? void 0 : _b.map((t, i) => (React.createElement(Prop, { key: i, label: t.name, flow: "vertical" }, state.loaded && renderProp(t))));
70
+ return (_b = (_a = state.selectedType) === null || _a === void 0 ? void 0 : _a.searchProps) === null || _b === void 0 ? void 0 : _b.map((t, i) => (React.createElement(Prop, { key: i, label: t.name, flow: "vertical" }, state.refresh && renderProp(t))));
36
71
  } })),
37
- (((_f = (_e = state.selectedType) === null || _e === void 0 ? void 0 : _e.searchPropIncludes) === null || _f === void 0 ? void 0 : _f.includes("Document")) ||
38
- ((_g = state.selectedType) === null || _g === void 0 ? void 0 : _g.type) === "Document") && (React.createElement(PropertiesSection, { title: "DOCUMENT FIELDS", properties: () => {
72
+ (((_g = (_f = state.selectedType) === null || _f === void 0 ? void 0 : _f.searchPropIncludes) === null || _g === void 0 ? void 0 : _g.includes("Document")) ||
73
+ ((_h = state.selectedType) === null || _h === void 0 ? void 0 : _h.type) === "Document") && (React.createElement(PropertiesSection, { title: "DOCUMENT FIELDS", properties: () => {
39
74
  var _a, _b, _c;
40
- return (_c = (_b = (_a = state.fileTypes) === null || _a === void 0 ? void 0 : _a.find((f) => f.type === "Document")) === null || _b === void 0 ? void 0 : _b.searchProps) === null || _c === void 0 ? void 0 : _c.map((t, i) => (React.createElement(Prop, { key: i, label: t.name, flow: "vertical" }, state.loaded && renderProp(t))));
41
- } }))));
75
+ return (_c = (_b = (_a = props.fileTypes) === null || _a === void 0 ? void 0 : _a.find((f) => f.type === "Document")) === null || _b === void 0 ? void 0 : _b.searchProps) === null || _c === void 0 ? void 0 : _c.map((t, i) => (React.createElement(Prop, { key: i, label: t.name, flow: "vertical" }, state.refresh && renderProp(t))));
76
+ } })))) : (React.createElement(Skeleton, null));
42
77
  });
43
78
  return observe(() => (React.createElement(AddFormView, { className: "advance-filter-form", title: "Advance filter", okText: "Filter", onCancel: () => asideContext === null || asideContext === void 0 ? void 0 : asideContext.closeAside(), onSubmit: () => {
44
79
  var _a;
@@ -46,34 +81,117 @@ const AdvanceFilterForm = (props) => {
46
81
  message.warning("The center cannot be empty!");
47
82
  return;
48
83
  }
84
+ storeToLocal(state.selectedType, state.filterDefaultValue, state.filerOptions);
49
85
  (_a = props.onFilter) === null || _a === void 0 ? void 0 : _a.call(props, state.filerOptions);
50
86
  } }, content)));
51
87
  function onChangeFileType(type) {
52
- var _a, _b, _c, _d, _e;
88
+ var _a, _b, _c, _d, _e, _f, _g, _h;
53
89
  state.filerOptions = [];
54
- state.selectedType = (_a = state.fileTypes) === null || _a === void 0 ? void 0 : _a.find((f) => f.type === type);
90
+ state.filterDefaultValue = {
91
+ selectedUnits: [],
92
+ amountFilter: { c: "", l: "And" },
93
+ unpaidFilter: { c: "", l: "And" },
94
+ registrationNo: { c: "", l: "And" },
95
+ invoiceNo: { c: "", l: "And" },
96
+ dateFilter: { c: "", l: "And" },
97
+ registrationDateFilter: { c: "", l: "And" },
98
+ createDateFilter: { c: "", l: "And" },
99
+ };
100
+ state.selectedType = (_a = props.fileTypes) === null || _a === void 0 ? void 0 : _a.find((f) => f.type === type);
55
101
  (_b = props.onChange) === null || _b === void 0 ? void 0 : _b.call(props, type);
56
102
  if (type === "Invoice") {
103
+ state.filterDefaultValue.financeCenter = (_e = (_d = (_c = user.info) === null || _c === void 0 ? void 0 : _c.organization) === null || _d === void 0 ? void 0 : _d.FinanceCenter) === null || _e === void 0 ? void 0 : _e.Id;
57
104
  state.filerOptions.push({
58
105
  c: "Center",
59
106
  o: "=",
60
107
  l: "And",
61
- v1: (_e = (_d = (_c = user.info) === null || _c === void 0 ? void 0 : _c.organization) === null || _d === void 0 ? void 0 : _d.FinanceCenter) === null || _e === void 0 ? void 0 : _e.Id,
108
+ v1: (_h = (_g = (_f = user.info) === null || _f === void 0 ? void 0 : _f.organization) === null || _g === void 0 ? void 0 : _g.FinanceCenter) === null || _h === void 0 ? void 0 : _h.Id,
62
109
  });
63
110
  }
64
- state.loaded = false;
111
+ state.refresh = false;
65
112
  setTimeout(() => {
66
- state.loaded = true;
113
+ state.refresh = true;
67
114
  }, 100);
115
+ storeToLocal(state.selectedType, state.filterDefaultValue, state.filerOptions);
68
116
  }
69
117
  // Number, String, Date, Unit, UnitList, TagList
70
118
  function renderProp(item) {
71
- var _a, _b, _c;
72
- switch (item.type) {
73
- case "Number":
74
- return item.name === "Amount" ? (React.createElement(Row, { gutter: 8 },
119
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35;
120
+ switch (item.name) {
121
+ case "Finance Center":
122
+ return (React.createElement(CenterSelect, { allowClear: true, filter: "FinanceCenter", defaultValue: (_a = state.filterDefaultValue) === null || _a === void 0 ? void 0 : _a.financeCenter, onChange: (id, center) => {
123
+ var _a, _b;
124
+ let filter;
125
+ if (id) {
126
+ state.filterDefaultValue.financeCenter = id;
127
+ filter = { c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name, o: "=", l: "And", v1: id };
128
+ }
129
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
130
+ } }));
131
+ case "Secretary Center":
132
+ return (React.createElement(CenterSelect, { allowClear: true, filter: "SecretaryCenter", defaultValue: (_b = state.filterDefaultValue) === null || _b === void 0 ? void 0 : _b.secretaryCenter, onChange: (id, center) => {
133
+ var _a, _b;
134
+ let filter;
135
+ if (id) {
136
+ state.filterDefaultValue.secretaryCenter = id;
137
+ filter = { c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name, o: "=", l: "And", v1: id };
138
+ }
139
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
140
+ } }));
141
+ case "Sales Center":
142
+ return (React.createElement(CenterSelect, { allowClear: true, filter: "SalesCenter", defaultValue: (_c = state.filterDefaultValue) === null || _c === void 0 ? void 0 : _c.salesCenter, onChange: (id, center) => {
143
+ var _a, _b;
144
+ let filter;
145
+ if (id) {
146
+ state.filterDefaultValue.salesCenter = id;
147
+ filter = { c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name, o: "=", l: "And", v1: id };
148
+ }
149
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
150
+ } }));
151
+ case "Invoice Number":
152
+ return (React.createElement(Row, { gutter: 8 },
75
153
  React.createElement(Col, { span: 8 },
76
- React.createElement(Select, { allowClear: true, style: { width: "100%" }, options: [
154
+ React.createElement(Select, { allowClear: true, defaultValue: (_e = (_d = state.filterDefaultValue) === null || _d === void 0 ? void 0 : _d.invoiceNo) === null || _e === void 0 ? void 0 : _e.o, style: { width: "100%" }, options: [
155
+ { value: "=", label: "equal" },
156
+ { value: "starts", label: "starts" },
157
+ { value: "contains", label: "contains" },
158
+ ], onChange: (v) => {
159
+ var _a, _b;
160
+ state.filterDefaultValue.invoiceNo.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
161
+ state.filterDefaultValue.invoiceNo.o = v;
162
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.invoiceNo);
163
+ } })),
164
+ React.createElement(Col, { span: 16 },
165
+ React.createElement(Input, { placeholder: "Input No", defaultValue: (_g = (_f = state.filterDefaultValue) === null || _f === void 0 ? void 0 : _f.invoiceNo) === null || _g === void 0 ? void 0 : _g.v1, style: { width: "100%" }, onChange: (e) => {
166
+ var _a, _b;
167
+ state.filterDefaultValue.invoiceNo.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
168
+ state.filterDefaultValue.invoiceNo.v1 = e.target.value;
169
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.invoiceNo);
170
+ } }))));
171
+ case "Registration Number":
172
+ return (React.createElement(Row, { gutter: 8 },
173
+ React.createElement(Col, { span: 8 },
174
+ React.createElement(Select, { allowClear: true, defaultValue: (_j = (_h = state.filterDefaultValue) === null || _h === void 0 ? void 0 : _h.registrationNo) === null || _j === void 0 ? void 0 : _j.o, style: { width: "100%" }, options: [
175
+ { value: "=", label: "equal" },
176
+ { value: "starts", label: "starts" },
177
+ { value: "contains", label: "contains" },
178
+ ], onChange: (v) => {
179
+ var _a, _b;
180
+ state.filterDefaultValue.registrationNo.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
181
+ state.filterDefaultValue.registrationNo.o = v;
182
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.registrationNo);
183
+ } })),
184
+ React.createElement(Col, { span: 16 },
185
+ React.createElement(Input, { placeholder: "Input No", defaultValue: (_l = (_k = state.filterDefaultValue) === null || _k === void 0 ? void 0 : _k.registrationNo) === null || _l === void 0 ? void 0 : _l.v1, style: { width: "100%" }, onChange: (e) => {
186
+ var _a, _b;
187
+ state.filterDefaultValue.registrationNo.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
188
+ state.filterDefaultValue.registrationNo.v1 = e.target.value;
189
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.registrationNo);
190
+ } }))));
191
+ case "Unpaid Amount":
192
+ return (React.createElement(Row, { gutter: 8 },
193
+ React.createElement(Col, { span: 8 },
194
+ React.createElement(Select, { allowClear: true, defaultValue: (_o = (_m = state.filterDefaultValue) === null || _m === void 0 ? void 0 : _m.unpaidFilter) === null || _o === void 0 ? void 0 : _o.o, style: { width: "100%" }, options: [
77
195
  { value: "=", label: "=" },
78
196
  { value: ">", label: ">" },
79
197
  { value: "<", label: "<" },
@@ -82,26 +200,28 @@ const AdvanceFilterForm = (props) => {
82
200
  { value: "between", label: "between" },
83
201
  ], onChange: (v) => {
84
202
  var _a, _b;
85
- state.amountFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
86
- state.amountFilter.o = v;
87
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.amountFilter);
203
+ state.filterDefaultValue.unpaidFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
204
+ state.filterDefaultValue.unpaidFilter.o = v;
205
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.unpaidFilter);
88
206
  } })),
89
- React.createElement(Col, { span: state.amountFilter.o === "between" ? 8 : 16 },
90
- React.createElement(InputNumber, { placeholder: "Input value1", style: { width: "100%" }, onChange: (v) => {
207
+ React.createElement(Col, { span: ((_q = (_p = state.filterDefaultValue) === null || _p === void 0 ? void 0 : _p.unpaidFilter) === null || _q === void 0 ? void 0 : _q.o) === "between" ? 8 : 16 },
208
+ React.createElement(InputNumber, { placeholder: "Input value1", defaultValue: (_s = (_r = state.filterDefaultValue) === null || _r === void 0 ? void 0 : _r.unpaidFilter) === null || _s === void 0 ? void 0 : _s.v1, style: { width: "100%" }, onChange: (v) => {
91
209
  var _a, _b;
92
- state.amountFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
93
- state.amountFilter.v1 = v;
94
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.amountFilter);
210
+ state.filterDefaultValue.unpaidFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
211
+ state.filterDefaultValue.unpaidFilter.v1 = v;
212
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.unpaidFilter);
95
213
  } })),
96
- state.amountFilter.o === "between" && (React.createElement(Col, { span: 8 },
97
- React.createElement(InputNumber, { placeholder: "Input value2", style: { width: "100%" }, onChange: (v) => {
214
+ state.filterDefaultValue.unpaidFilter.o === "between" && (React.createElement(Col, { span: 8 },
215
+ React.createElement(InputNumber, { placeholder: "Input value2", defaultValue: (_u = (_t = state.filterDefaultValue) === null || _t === void 0 ? void 0 : _t.unpaidFilter) === null || _u === void 0 ? void 0 : _u.v2, style: { width: "100%" }, onChange: (v) => {
98
216
  var _a, _b;
99
- state.amountFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
100
- state.amountFilter.v2 = v;
101
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.amountFilter);
102
- } }))))) : item.name === "Unpaid Amount" ? (React.createElement(Row, { gutter: 8 },
217
+ state.filterDefaultValue.unpaidFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
218
+ state.filterDefaultValue.unpaidFilter.v2 = v;
219
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.unpaidFilter);
220
+ } })))));
221
+ case "Amount":
222
+ return (React.createElement(Row, { gutter: 8 },
103
223
  React.createElement(Col, { span: 8 },
104
- React.createElement(Select, { allowClear: true, style: { width: "100%" }, options: [
224
+ React.createElement(Select, { allowClear: true, defaultValue: (_w = (_v = state.filterDefaultValue) === null || _v === void 0 ? void 0 : _v.amountFilter) === null || _w === void 0 ? void 0 : _w.o, style: { width: "100%" }, options: [
105
225
  { value: "=", label: "=" },
106
226
  { value: ">", label: ">" },
107
227
  { value: "<", label: "<" },
@@ -110,158 +230,205 @@ const AdvanceFilterForm = (props) => {
110
230
  { value: "between", label: "between" },
111
231
  ], onChange: (v) => {
112
232
  var _a, _b;
113
- state.unpaidFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
114
- state.unpaidFilter.o = v;
115
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.unpaidFilter);
233
+ state.filterDefaultValue.amountFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
234
+ state.filterDefaultValue.amountFilter.o = v;
235
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.amountFilter);
116
236
  } })),
117
- React.createElement(Col, { span: state.unpaidFilter.o === "between" ? 8 : 16 },
118
- React.createElement(InputNumber, { placeholder: "Input value1", style: { width: "100%" }, onChange: (v) => {
237
+ React.createElement(Col, { span: state.filterDefaultValue.amountFilter.o === "between" ? 8 : 16 },
238
+ React.createElement(InputNumber, { placeholder: "Input value1", defaultValue: (_y = (_x = state.filterDefaultValue) === null || _x === void 0 ? void 0 : _x.amountFilter) === null || _y === void 0 ? void 0 : _y.v1, style: { width: "100%" }, onChange: (v) => {
119
239
  var _a, _b;
120
- state.unpaidFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
121
- state.unpaidFilter.v1 = v;
122
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.unpaidFilter);
240
+ state.filterDefaultValue.amountFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
241
+ state.filterDefaultValue.amountFilter.v1 = v;
242
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.amountFilter);
123
243
  } })),
124
- state.unpaidFilter.o === "between" && (React.createElement(Col, { span: 8 },
125
- React.createElement(InputNumber, { placeholder: "Input value2", style: { width: "100%" }, onChange: (v) => {
244
+ state.filterDefaultValue.amountFilter.o === "between" && (React.createElement(Col, { span: 8 },
245
+ React.createElement(InputNumber, { placeholder: "Input value2", defaultValue: (_0 = (_z = state.filterDefaultValue) === null || _z === void 0 ? void 0 : _z.amountFilter) === null || _0 === void 0 ? void 0 : _0.v2, style: { width: "100%" }, onChange: (v) => {
126
246
  var _a, _b;
127
- state.unpaidFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
128
- state.unpaidFilter.v2 = v;
129
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.unpaidFilter);
130
- } }))))) : (React.createElement(InputNumber, { placeholder: "input value", style: { width: "100%" }, onChange: (v) => {
131
- var _a, _b;
132
- let filter;
133
- if (v) {
134
- filter = { c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name, o: "=", l: "And", v1: v };
135
- }
136
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
137
- } }));
138
- case "String":
139
- return item.name === "Registration Number" || item.name === "Invoice Number" ? (React.createElement(Row, { gutter: 8 },
247
+ state.filterDefaultValue.amountFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
248
+ state.filterDefaultValue.amountFilter.v2 = v;
249
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.amountFilter);
250
+ } })))));
251
+ case "Registration Date":
252
+ return (React.createElement(Row, { gutter: 8 },
140
253
  React.createElement(Col, { span: 8 },
141
- React.createElement(Select, { allowClear: true, style: { width: "100%" }, options: [
142
- { value: "=", label: "equal" },
143
- { value: "starts", label: "starts" },
144
- { value: "contains", label: "contains" },
254
+ React.createElement(Select, { allowClear: true, defaultValue: (_2 = (_1 = state.filterDefaultValue) === null || _1 === void 0 ? void 0 : _1.registrationDateFilter) === null || _2 === void 0 ? void 0 : _2.o, style: { width: "100%" }, options: [
255
+ { value: "=", label: "exact" },
256
+ { value: "<", label: "before" },
257
+ { value: ">", label: "after" },
258
+ { value: "between", label: "between" },
145
259
  ], onChange: (v) => {
146
260
  var _a, _b;
147
- state.registrationNo.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
148
- state.registrationNo.o = v;
149
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.registrationNo);
261
+ state.filterDefaultValue.registrationDateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
262
+ state.filterDefaultValue.registrationDateFilter.o = v;
263
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.registrationDateFilter);
150
264
  } })),
151
- React.createElement(Col, { span: 16 },
152
- React.createElement(Input, { placeholder: "Input No", style: { width: "100%" }, onChange: (e) => {
265
+ React.createElement(Col, { span: state.filterDefaultValue.registrationDateFilter.o === "between" ? 8 : 16 },
266
+ React.createElement(DatePicker, { placeholder: state.filterDefaultValue.registrationDateFilter.o === "between"
267
+ ? "From Date"
268
+ : "Anytime", defaultValue: ((_4 = (_3 = state.filterDefaultValue) === null || _3 === void 0 ? void 0 : _3.registrationDateFilter) === null || _4 === void 0 ? void 0 : _4.v1)
269
+ ? utcdayjs((_6 = (_5 = state.filterDefaultValue) === null || _5 === void 0 ? void 0 : _5.registrationDateFilter) === null || _6 === void 0 ? void 0 : _6.v1)
270
+ : undefined, style: { width: "100%" }, onChange: (date, dateString) => {
153
271
  var _a, _b;
154
- state.registrationNo.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
155
- state.registrationNo.v1 = e.target.value;
156
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.registrationNo);
157
- } })))) : (React.createElement(Input, { style: { width: "100%" }, onChange: (e) => {
158
- var _a, _b;
159
- let filter;
160
- if (e.target.value.trim()) {
161
- filter = { c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name, o: "=", l: "And", v1: e.target.value };
162
- }
163
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
164
- } }));
272
+ const v1 = date ? dayjs(date).format("YYYY-MM-DD HH:mm:ss") : "";
273
+ state.filterDefaultValue.registrationDateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
274
+ state.filterDefaultValue.registrationDateFilter.v1 = v1;
275
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.registrationDateFilter);
276
+ } })),
277
+ state.filterDefaultValue.registrationDateFilter.o === "between" && (React.createElement(Col, { span: 8 },
278
+ React.createElement(DatePicker, { placeholder: "To Date", style: { width: "100%" }, defaultValue: ((_8 = (_7 = state.filterDefaultValue) === null || _7 === void 0 ? void 0 : _7.registrationDateFilter) === null || _8 === void 0 ? void 0 : _8.v2)
279
+ ? utcdayjs((_10 = (_9 = state.filterDefaultValue) === null || _9 === void 0 ? void 0 : _9.registrationDateFilter) === null || _10 === void 0 ? void 0 : _10.v2)
280
+ : undefined, onChange: (date, dateString) => {
281
+ var _a, _b;
282
+ const v2 = date ? dayjs(date).format("YYYY-MM-DD HH:mm:ss") : "";
283
+ state.filterDefaultValue.registrationDateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
284
+ state.filterDefaultValue.registrationDateFilter.v2 = v2;
285
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.registrationDateFilter);
286
+ } })))));
287
+ case "Create Date":
288
+ return (React.createElement(Row, { gutter: 8 },
289
+ React.createElement(Col, { span: 8 },
290
+ React.createElement(Select, { allowClear: true, style: { width: "100%" }, defaultValue: (_12 = (_11 = state.filterDefaultValue) === null || _11 === void 0 ? void 0 : _11.createDateFilter) === null || _12 === void 0 ? void 0 : _12.o, options: [
291
+ { value: "=", label: "exact" },
292
+ { value: "<", label: "before" },
293
+ { value: ">", label: "after" },
294
+ { value: "between", label: "between" },
295
+ ], onChange: (v) => {
296
+ var _a, _b;
297
+ state.filterDefaultValue.createDateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
298
+ state.filterDefaultValue.createDateFilter.o = v;
299
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.createDateFilter);
300
+ } })),
301
+ React.createElement(Col, { span: state.filterDefaultValue.createDateFilter.o === "between" ? 8 : 16 },
302
+ React.createElement(DatePicker, { placeholder: state.filterDefaultValue.createDateFilter.o === "between"
303
+ ? "From Date"
304
+ : "Anytime", defaultValue: ((_14 = (_13 = state.filterDefaultValue) === null || _13 === void 0 ? void 0 : _13.createDateFilter) === null || _14 === void 0 ? void 0 : _14.v1)
305
+ ? utcdayjs((_16 = (_15 = state.filterDefaultValue) === null || _15 === void 0 ? void 0 : _15.createDateFilter) === null || _16 === void 0 ? void 0 : _16.v1)
306
+ : undefined, style: { width: "100%" }, onChange: (date, dateString) => {
307
+ var _a, _b;
308
+ const v1 = date ? dayjs(date).format("YYYY-MM-DD HH:mm:ss") : "";
309
+ state.filterDefaultValue.createDateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
310
+ state.filterDefaultValue.createDateFilter.v1 = v1;
311
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.createDateFilter);
312
+ } })),
313
+ state.filterDefaultValue.createDateFilter.o === "between" && (React.createElement(Col, { span: 8 },
314
+ React.createElement(DatePicker, { placeholder: "To Date", style: { width: "100%" }, defaultValue: ((_18 = (_17 = state.filterDefaultValue) === null || _17 === void 0 ? void 0 : _17.createDateFilter) === null || _18 === void 0 ? void 0 : _18.v2)
315
+ ? utcdayjs((_20 = (_19 = state.filterDefaultValue) === null || _19 === void 0 ? void 0 : _19.createDateFilter) === null || _20 === void 0 ? void 0 : _20.v2)
316
+ : undefined, onChange: (date, dateString) => {
317
+ var _a, _b;
318
+ const v2 = date ? dayjs(date).format("YYYY-MM-DD HH:mm:ss") : "";
319
+ state.filterDefaultValue.createDateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
320
+ state.filterDefaultValue.createDateFilter.v2 = v2;
321
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.createDateFilter);
322
+ } })))));
165
323
  case "Date":
166
324
  return (React.createElement(Row, { gutter: 8 },
167
325
  React.createElement(Col, { span: 8 },
168
- React.createElement(Select, { allowClear: true, style: { width: "100%" }, options: [
326
+ React.createElement(Select, { allowClear: true, style: { width: "100%" }, defaultValue: (_22 = (_21 = state.filterDefaultValue) === null || _21 === void 0 ? void 0 : _21.dateFilter) === null || _22 === void 0 ? void 0 : _22.o, options: [
169
327
  { value: "=", label: "exact" },
170
328
  { value: "<", label: "before" },
171
329
  { value: ">", label: "after" },
172
330
  { value: "between", label: "between" },
173
331
  ], onChange: (v) => {
174
332
  var _a, _b;
175
- state.dateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
176
- state.dateFilter.o = v;
177
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.dateFilter);
333
+ state.filterDefaultValue.dateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
334
+ state.filterDefaultValue.dateFilter.o = v;
335
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.dateFilter);
178
336
  } })),
179
- React.createElement(Col, { span: state.dateFilter.o === "between" ? 8 : 16 },
180
- React.createElement(DatePicker, { placeholder: state.dateFilter.o === "between" ? "From Date" : "Anytime", style: { width: "100%" }, onChange: (date, dateString) => {
337
+ React.createElement(Col, { span: state.filterDefaultValue.dateFilter.o === "between" ? 8 : 16 },
338
+ React.createElement(DatePicker, { placeholder: state.filterDefaultValue.dateFilter.o === "between" ? "From Date" : "Anytime", defaultValue: ((_24 = (_23 = state.filterDefaultValue) === null || _23 === void 0 ? void 0 : _23.dateFilter) === null || _24 === void 0 ? void 0 : _24.v1)
339
+ ? utcdayjs((_26 = (_25 = state.filterDefaultValue) === null || _25 === void 0 ? void 0 : _25.dateFilter) === null || _26 === void 0 ? void 0 : _26.v1)
340
+ : undefined, style: { width: "100%" }, onChange: (date, dateString) => {
181
341
  var _a, _b;
182
- const v1 = dayjs(date).format("YYYY-MM-DD HH:mm:ss");
183
- state.dateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
184
- state.dateFilter.v1 = v1;
185
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.dateFilter);
342
+ const v1 = date ? dayjs(date).format("YYYY-MM-DD HH:mm:ss") : "";
343
+ state.filterDefaultValue.dateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
344
+ state.filterDefaultValue.dateFilter.v1 = v1;
345
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.dateFilter);
186
346
  } })),
187
- state.dateFilter.o === "between" && (React.createElement(Col, { span: 8 },
188
- React.createElement(DatePicker, { placeholder: "To Date", style: { width: "100%" }, onChange: (date, dateString) => {
347
+ state.filterDefaultValue.dateFilter.o === "between" && (React.createElement(Col, { span: 8 },
348
+ React.createElement(DatePicker, { placeholder: "To Date", defaultValue: ((_28 = (_27 = state.filterDefaultValue) === null || _27 === void 0 ? void 0 : _27.dateFilter) === null || _28 === void 0 ? void 0 : _28.v2)
349
+ ? utcdayjs((_30 = (_29 = state.filterDefaultValue) === null || _29 === void 0 ? void 0 : _29.dateFilter) === null || _30 === void 0 ? void 0 : _30.v2)
350
+ : undefined, style: { width: "100%" }, onChange: (date, dateString) => {
189
351
  var _a, _b;
190
- const v2 = dayjs(date).format("YYYY-MM-DD HH:mm:ss");
191
- state.dateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
192
- state.dateFilter.v2 = v2;
193
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.dateFilter);
352
+ const v2 = date ? dayjs(date).format("YYYY-MM-DD HH:mm:ss") : "";
353
+ state.filterDefaultValue.dateFilter.c = (_a = item.filter) !== null && _a !== void 0 ? _a : item.name;
354
+ state.filterDefaultValue.dateFilter.v2 = v2;
355
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, state.filterDefaultValue.dateFilter);
194
356
  } })))));
195
- case "Unit":
196
- return (React.createElement(MentionList, { isEmptyData: true, multiple: item.multiSelect, contacts: state.selectedUnits, onChange: (list) => {
197
- var _a, _b;
198
- let filter;
199
- state.selectedUnits = list;
200
- const filterUnits = state.selectedUnits.map((u) => u.id);
201
- if (filterUnits === null || filterUnits === void 0 ? void 0 : filterUnits.length) {
202
- filter = {
203
- c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name,
204
- o: "contains",
205
- l: "And",
206
- v1: JSON.stringify(filterUnits),
207
- };
208
- }
209
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
210
- } }));
211
- case "Tag":
212
- return (React.createElement(Select, { mode: "tags", placeholder: "When the Tag is a radio button, the last selected option takes precedence.", style: { width: "100%" }, options: state.tagList, ...(!item.multiSelect ? { maxTagCount: 1 } : {}), onChange: (value) => {
357
+ case "Created By":
358
+ return (React.createElement(Row, { gutter: 8, align: "middle" },
359
+ React.createElement(Col, { span: 24 },
360
+ React.createElement(Select, { style: { width: "100%" }, options: [
361
+ { value: "me", label: "create by me" },
362
+ { value: "others", label: "select contact" },
363
+ ], onChange: (v) => {
364
+ var _a;
365
+ if (v === "me") {
366
+ state.filterDefaultValue.selectedUnits = [user.info.unit];
367
+ state.onChangeCreateBy((_a = item.filter) !== null && _a !== void 0 ? _a : item.name, [user.info.unit]);
368
+ }
369
+ else {
370
+ state.visible = true;
371
+ }
372
+ } })),
373
+ ((_31 = state.filterDefaultValue) === null || _31 === void 0 ? void 0 : _31.selectedUnits.length) > 0 ? (React.createElement(Col, { span: 24 },
374
+ React.createElement(MentionList, { isEmptyData: true, multiple: item.multiSelect, contacts: state.filterDefaultValue.selectedUnits, onChange: (units) => { var _a; return state.onChangeCreateBy((_a = item.filter) !== null && _a !== void 0 ? _a : item.name, units); } }))) : null,
375
+ state.visible && (React.createElement(UnitsSelectDialog, { type: "click", isEmptyData: true, multiSelect: item.multiSelect, onCancel: () => (state.visible = false), onSelect: (units) => {
376
+ var _a;
377
+ state.visible = false;
378
+ state.onChangeCreateBy((_a = item.filter) !== null && _a !== void 0 ? _a : item.name, units);
379
+ } }))));
380
+ case "Layout":
381
+ return (React.createElement(Switch, { defaultValue: (_32 = state.filterDefaultValue) === null || _32 === void 0 ? void 0 : _32.isLayout, onChange: (checked) => {
213
382
  var _a, _b;
214
383
  let filter;
215
- let v1 = "";
216
- if (value === null || value === void 0 ? void 0 : value.length) {
217
- v1 = item.multiSelect ? JSON.stringify(value) : value[value.length - 1];
218
- }
384
+ state.filterDefaultValue.isLayout = checked;
219
385
  filter = {
220
386
  c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name,
221
- o: item.multiSelect ? "contains" : "=",
387
+ o: "=",
222
388
  l: "And",
223
- v1: v1,
389
+ v1: JSON.stringify(checked),
224
390
  };
225
391
  state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
226
392
  } }));
227
- case "FinanceCenter":
228
- return (React.createElement(CenterSelect, { allowClear: true, filter: "FinanceCenter", defaultValue: (_c = (_b = (_a = user.info) === null || _a === void 0 ? void 0 : _a.organization) === null || _b === void 0 ? void 0 : _b.FinanceCenter) === null || _c === void 0 ? void 0 : _c.Id, onChange: (id, center) => {
393
+ case "Name":
394
+ return (React.createElement(Input, { style: { width: "100%" }, defaultValue: (_33 = state.filterDefaultValue) === null || _33 === void 0 ? void 0 : _33.name, onChange: (e) => {
229
395
  var _a, _b;
230
396
  let filter;
231
- if (id) {
232
- filter = { c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name, o: "=", l: "And", v1: id };
233
- }
234
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
235
- } }));
236
- case "SalesCenter":
237
- return (React.createElement(CenterSelect, { allowClear: true, filter: "SalesCenter", onChange: (id, center) => {
238
- var _a, _b;
239
- let filter;
240
- if (id) {
241
- filter = { c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name, o: "=", l: "And", v1: id };
242
- }
243
- state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
244
- } }));
245
- case "SecretaryCenter":
246
- return (React.createElement(CenterSelect, { allowClear: true, filter: "SecretaryCenter", onChange: (id, center) => {
247
- var _a, _b;
248
- let filter;
249
- if (id) {
250
- filter = { c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name, o: "=", l: "And", v1: id };
397
+ if (e.target.value.trim()) {
398
+ state.filterDefaultValue.name = e.target.value;
399
+ filter = { c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name, o: "=", l: "And", v1: e.target.value };
251
400
  }
252
401
  state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
253
402
  } }));
254
403
  case "Currency":
255
- return (React.createElement(Select, { allowClear: true, showSearch: true, style: { width: "100%" }, placeholder: "Select currency", optionFilterProp: "label", options: currencyList.map((c) => {
404
+ return (React.createElement(Select, { allowClear: true, showSearch: true, defaultValue: (_34 = state.filterDefaultValue) === null || _34 === void 0 ? void 0 : _34.currency, style: { width: "100%" }, placeholder: "Select currency", optionFilterProp: "label", options: currencyList.map((c) => {
256
405
  return { value: c, label: c };
257
406
  }), onChange: (currency) => {
258
407
  var _a, _b;
259
408
  let filter;
260
409
  if (currency) {
410
+ state.filterDefaultValue.currency = currency;
261
411
  filter = { c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name, o: "=", l: "And", v1: currency };
262
412
  }
263
413
  state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
264
414
  } }));
415
+ case "Tag":
416
+ return (React.createElement(Select, { mode: "tags", defaultValue: (_35 = state.filterDefaultValue) === null || _35 === void 0 ? void 0 : _35.tags, placeholder: "When the Tag is a radio button, the last selected option takes precedence.", style: { width: "100%" }, options: state.tagList, ...(!item.multiSelect ? { maxTagCount: 1 } : {}), onChange: (value) => {
417
+ var _a, _b;
418
+ let filter;
419
+ let v1 = "";
420
+ if (value === null || value === void 0 ? void 0 : value.length) {
421
+ state.filterDefaultValue.tags = item.multiSelect ? value : value.slice(-1);
422
+ v1 = item.multiSelect ? JSON.stringify(value) : value[value.length - 1];
423
+ }
424
+ filter = {
425
+ c: (_a = item.filter) !== null && _a !== void 0 ? _a : item.name,
426
+ o: item.multiSelect ? "contains" : "=",
427
+ l: "And",
428
+ v1: v1,
429
+ };
430
+ state.updateFilterOptions((_b = item.filter) !== null && _b !== void 0 ? _b : item.name, filter);
431
+ } }));
265
432
  }
266
433
  return React.createElement("span", null, "\u6682\u65E0\u5339\u914D\u5230\u5185\u5BB9");
267
434
  }