@platox/pivot-table 0.0.32 → 0.0.34

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 (148) hide show
  1. package/es/dashboard-workbench/components/add-module-btn/index.d.ts +11 -0
  2. package/es/dashboard-workbench/components/add-module-btn/index.js +97 -0
  3. package/es/dashboard-workbench/components/add-module-btn/index.js.map +1 -0
  4. package/es/dashboard-workbench/components/add-module-modal/add-calendar-modal/custome-data.d.ts +20 -0
  5. package/es/dashboard-workbench/components/add-module-modal/add-calendar-modal/custome-data.js +178 -0
  6. package/es/dashboard-workbench/components/add-module-modal/add-calendar-modal/custome-data.js.map +1 -0
  7. package/es/dashboard-workbench/components/add-module-modal/add-calendar-modal/index.d.ts +17 -0
  8. package/es/dashboard-workbench/components/add-module-modal/add-calendar-modal/index.js +91 -0
  9. package/es/dashboard-workbench/components/add-module-modal/add-calendar-modal/index.js.map +1 -0
  10. package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-data.d.ts +27 -0
  11. package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-data.js +328 -0
  12. package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-data.js.map +1 -0
  13. package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-styles.d.ts +15 -0
  14. package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-styles.js +58 -0
  15. package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-styles.js.map +1 -0
  16. package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/index.d.ts +20 -0
  17. package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/index.js +123 -0
  18. package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/index.js.map +1 -0
  19. package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-data.d.ts +20 -0
  20. package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-data.js +180 -0
  21. package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-data.js.map +1 -0
  22. package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-styles.d.ts +13 -0
  23. package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-styles.js +119 -0
  24. package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-styles.js.map +1 -0
  25. package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/index.d.ts +19 -0
  26. package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/index.js +120 -0
  27. package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/index.js.map +1 -0
  28. package/es/dashboard-workbench/components/add-module-modal/components/condition-modal/debounce-select.d.ts +12 -0
  29. package/es/dashboard-workbench/components/add-module-modal/components/condition-modal/debounce-select.js +44 -0
  30. package/es/dashboard-workbench/components/add-module-modal/components/condition-modal/debounce-select.js.map +1 -0
  31. package/es/dashboard-workbench/components/add-module-modal/components/condition-modal/index.d.ts +21 -0
  32. package/es/dashboard-workbench/components/add-module-modal/components/condition-modal/index.js +510 -0
  33. package/es/dashboard-workbench/components/add-module-modal/components/condition-modal/index.js.map +1 -0
  34. package/es/dashboard-workbench/components/add-module-modal/components/condition-modal/utils.d.ts +25 -0
  35. package/es/dashboard-workbench/components/add-module-modal/components/select-color/index.d.ts +12 -0
  36. package/es/dashboard-workbench/components/add-module-modal/components/select-color/index.js +45 -0
  37. package/es/dashboard-workbench/components/add-module-modal/components/select-color/index.js.map +1 -0
  38. package/es/dashboard-workbench/components/module-content/calendar-module/index.d.ts +14 -0
  39. package/es/dashboard-workbench/components/module-content/calendar-module/index.js +231 -0
  40. package/es/dashboard-workbench/components/module-content/calendar-module/index.js.map +1 -0
  41. package/es/dashboard-workbench/components/module-content/chart-module/base-chart/index.d.ts +8 -0
  42. package/es/dashboard-workbench/components/module-content/chart-module/base-chart/index.js +62 -0
  43. package/es/dashboard-workbench/components/module-content/chart-module/base-chart/index.js.map +1 -0
  44. package/es/dashboard-workbench/components/module-content/chart-module/index.d.ts +14 -0
  45. package/es/dashboard-workbench/components/module-content/chart-module/index.js +384 -0
  46. package/es/dashboard-workbench/components/module-content/chart-module/index.js.map +1 -0
  47. package/es/dashboard-workbench/components/module-content/chart-module/utils.d.ts +9 -0
  48. package/es/dashboard-workbench/components/module-content/chart-module/utils.js +200 -0
  49. package/es/dashboard-workbench/components/module-content/chart-module/utils.js.map +1 -0
  50. package/es/dashboard-workbench/components/module-content/index.d.ts +31 -0
  51. package/es/dashboard-workbench/components/module-content/index.js +81 -0
  52. package/es/dashboard-workbench/components/module-content/index.js.map +1 -0
  53. package/es/dashboard-workbench/components/module-content/statistics-module/index.d.ts +15 -0
  54. package/es/dashboard-workbench/components/module-content/statistics-module/index.js +305 -0
  55. package/es/dashboard-workbench/components/module-content/statistics-module/index.js.map +1 -0
  56. package/es/dashboard-workbench/components/module-content/statistics-module/utils.d.ts +4 -0
  57. package/es/dashboard-workbench/components/module-content/statistics-module/utils.js +41 -0
  58. package/es/dashboard-workbench/components/module-content/statistics-module/utils.js.map +1 -0
  59. package/es/dashboard-workbench/components/module-content/text-module/editor/index.d.ts +7 -0
  60. package/es/dashboard-workbench/components/module-content/text-module/editor/index.js +224 -0
  61. package/es/dashboard-workbench/components/module-content/text-module/editor/index.js.map +1 -0
  62. package/es/dashboard-workbench/components/module-content/text-module/editor/useDebounce.d.ts +2 -0
  63. package/es/dashboard-workbench/components/module-content/text-module/editor/useDebounce.js +24 -0
  64. package/es/dashboard-workbench/components/module-content/text-module/editor/useDebounce.js.map +1 -0
  65. package/es/dashboard-workbench/components/module-content/text-module/index.d.ts +7 -0
  66. package/es/dashboard-workbench/components/module-content/text-module/index.js +11 -0
  67. package/es/dashboard-workbench/components/module-content/text-module/index.js.map +1 -0
  68. package/es/dashboard-workbench/components/module-content/utils.d.ts +15 -0
  69. package/es/dashboard-workbench/components/module-content/utils.js +113 -0
  70. package/es/dashboard-workbench/components/module-content/utils.js.map +1 -0
  71. package/es/dashboard-workbench/components/module-header/index.d.ts +12 -0
  72. package/es/dashboard-workbench/components/module-header/index.js +115 -0
  73. package/es/dashboard-workbench/components/module-header/index.js.map +1 -0
  74. package/es/dashboard-workbench/context.d.ts +16 -0
  75. package/es/dashboard-workbench/context.js +21 -0
  76. package/es/dashboard-workbench/context.js.map +1 -0
  77. package/es/dashboard-workbench/icon/icon-bar-percentage.d.ts +2 -0
  78. package/es/dashboard-workbench/icon/icon-bar-percentage.js +17 -0
  79. package/es/dashboard-workbench/icon/icon-bar-percentage.js.map +1 -0
  80. package/es/dashboard-workbench/icon/icon-bar-pile.d.ts +2 -0
  81. package/es/dashboard-workbench/icon/icon-bar-pile.js +17 -0
  82. package/es/dashboard-workbench/icon/icon-bar-pile.js.map +1 -0
  83. package/es/dashboard-workbench/icon/icon-bar.d.ts +2 -0
  84. package/es/dashboard-workbench/icon/icon-bar.js +13 -0
  85. package/es/dashboard-workbench/icon/icon-bar.js.map +1 -0
  86. package/es/dashboard-workbench/icon/icon-calendar.d.ts +2 -0
  87. package/es/dashboard-workbench/icon/icon-calendar.js +40 -0
  88. package/es/dashboard-workbench/icon/icon-calendar.js.map +1 -0
  89. package/es/dashboard-workbench/icon/icon-drag.d.ts +2 -0
  90. package/es/dashboard-workbench/icon/icon-drag.js +25 -0
  91. package/es/dashboard-workbench/icon/icon-drag.js.map +1 -0
  92. package/es/dashboard-workbench/icon/icon-editor.d.ts +2 -0
  93. package/es/dashboard-workbench/icon/icon-editor.js +40 -0
  94. package/es/dashboard-workbench/icon/icon-editor.js.map +1 -0
  95. package/es/dashboard-workbench/icon/icon-line-smooth.d.ts +2 -0
  96. package/es/dashboard-workbench/icon/icon-line-smooth.js +28 -0
  97. package/es/dashboard-workbench/icon/icon-line-smooth.js.map +1 -0
  98. package/es/dashboard-workbench/icon/icon-line.d.ts +2 -0
  99. package/es/dashboard-workbench/icon/icon-line.js +28 -0
  100. package/es/dashboard-workbench/icon/icon-line.js.map +1 -0
  101. package/es/dashboard-workbench/icon/icon-move.d.ts +2 -0
  102. package/es/dashboard-workbench/icon/icon-move.js +25 -0
  103. package/es/dashboard-workbench/icon/icon-move.js.map +1 -0
  104. package/es/dashboard-workbench/icon/icon-pie-circular.d.ts +2 -0
  105. package/es/dashboard-workbench/icon/icon-pie-circular.js +30 -0
  106. package/es/dashboard-workbench/icon/icon-pie-circular.js.map +1 -0
  107. package/es/dashboard-workbench/icon/icon-pie.d.ts +2 -0
  108. package/es/dashboard-workbench/icon/icon-pie.js +24 -0
  109. package/es/dashboard-workbench/icon/icon-pie.js.map +1 -0
  110. package/es/dashboard-workbench/icon/icon-statistics.d.ts +2 -0
  111. package/es/dashboard-workbench/icon/icon-statistics.js +37 -0
  112. package/es/dashboard-workbench/icon/icon-statistics.js.map +1 -0
  113. package/es/dashboard-workbench/icon/icon-strip-bar-percentage.d.ts +2 -0
  114. package/es/dashboard-workbench/icon/icon-strip-bar-percentage.js +105 -0
  115. package/es/dashboard-workbench/icon/icon-strip-bar-percentage.js.map +1 -0
  116. package/es/dashboard-workbench/icon/icon-strip-bar-pile.d.ts +2 -0
  117. package/es/dashboard-workbench/icon/icon-strip-bar-pile.js +105 -0
  118. package/es/dashboard-workbench/icon/icon-strip-bar-pile.js.map +1 -0
  119. package/es/dashboard-workbench/icon/icon-strip-bar.d.ts +2 -0
  120. package/es/dashboard-workbench/icon/icon-strip-bar.js +57 -0
  121. package/es/dashboard-workbench/icon/icon-strip-bar.js.map +1 -0
  122. package/es/dashboard-workbench/index.d.ts +33 -0
  123. package/es/dashboard-workbench/index.js +435 -0
  124. package/es/dashboard-workbench/index.js.map +1 -0
  125. package/es/dashboard-workbench/lang/en-US.d.ts +146 -0
  126. package/es/dashboard-workbench/lang/en-US.js +157 -0
  127. package/es/dashboard-workbench/lang/en-US.js.map +1 -0
  128. package/es/dashboard-workbench/lang/index.d.ts +2 -0
  129. package/es/dashboard-workbench/lang/index.js +25 -0
  130. package/es/dashboard-workbench/lang/index.js.map +1 -0
  131. package/es/dashboard-workbench/lang/zh-CN.d.ts +146 -0
  132. package/es/dashboard-workbench/lang/zh-CN.js +157 -0
  133. package/es/dashboard-workbench/lang/zh-CN.js.map +1 -0
  134. package/es/dashboard-workbench/types.d.ts +22 -0
  135. package/es/dashboard-workbench/utils/index.d.ts +9 -0
  136. package/es/dashboard-workbench/utils/index.js +30 -0
  137. package/es/dashboard-workbench/utils/index.js.map +1 -0
  138. package/es/index.d.ts +1 -0
  139. package/es/index.js +5 -0
  140. package/es/index.js.map +1 -0
  141. package/es/style.css +1 -0
  142. package/package.json +27 -24
  143. package/umd/pivot-table.umd.cjs +178 -0
  144. package/umd/style.css +1 -0
  145. package/index.d.ts +0 -98
  146. package/lib/index.js +0 -52233
  147. package/lib/index.umd.cjs +0 -178
  148. package/lib/style.css +0 -1
@@ -0,0 +1,180 @@
1
+ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
+ import { Form, Select, Button, Divider, Space } from "antd";
3
+ import { useState, useRef, useEffect } from "react";
4
+ import { useAppContext } from "../../../context.js";
5
+ import ConditionModal from "../components/condition-modal/index.js";
6
+ import { useTranslation } from "react-i18next";
7
+ const CustomData = ({
8
+ selectModuleData,
9
+ onAllValuesChange,
10
+ enumDataApi
11
+ }) => {
12
+ const { globalData } = useAppContext();
13
+ const { t } = useTranslation();
14
+ const [fieldOptions, setFieldOptions] = useState();
15
+ const [numberFieldOptions, setNumberFieldOptions] = useState();
16
+ const getFieldOptions = (name) => {
17
+ var _a, _b;
18
+ const list = (_b = (_a = globalData == null ? void 0 : globalData.sourceData) == null ? void 0 : _a.find((item) => item.value === name)) == null ? void 0 : _b.fields;
19
+ setFieldOptions(list);
20
+ setNumberFieldOptions(list == null ? void 0 : list.filter((item) => item.type === "int" || item.type === "float"));
21
+ };
22
+ const [form] = Form.useForm();
23
+ const initialValues = {
24
+ dataSourceId: "",
25
+ statisticalMethod: "recordTotal",
26
+ field: ""
27
+ };
28
+ const allValuesChange = () => {
29
+ setTimeout(() => {
30
+ onAllValuesChange == null ? void 0 : onAllValuesChange({
31
+ ...form.getFieldsValue(),
32
+ conditionData: conditionDataRef.current
33
+ });
34
+ });
35
+ };
36
+ const [isModalOpen, setIsModalOpen] = useState(false);
37
+ const conditionDataRef = useRef();
38
+ const [conditionData, setConditionData] = useState({
39
+ conditionList: [],
40
+ conditionType: "all"
41
+ });
42
+ const [conditionDataNum, setConditionDataNum] = useState(0);
43
+ const setCondition = (val) => {
44
+ var _a;
45
+ setConditionData(val);
46
+ conditionDataRef.current = val;
47
+ setConditionDataNum(((_a = val == null ? void 0 : val.conditionList) == null ? void 0 : _a.length) || 0);
48
+ };
49
+ useEffect(() => {
50
+ var _a, _b;
51
+ if (selectModuleData == null ? void 0 : selectModuleData.customData) {
52
+ const customData = selectModuleData.customData;
53
+ form.setFieldsValue(customData);
54
+ getFieldOptions(customData == null ? void 0 : customData.dataSourceId);
55
+ } else {
56
+ const currSourceData = (_a = globalData == null ? void 0 : globalData.sourceData) == null ? void 0 : _a[0];
57
+ form.setFieldsValue({
58
+ ...initialValues,
59
+ dataSourceId: currSourceData == null ? void 0 : currSourceData.value
60
+ });
61
+ getFieldOptions(currSourceData == null ? void 0 : currSourceData.value);
62
+ allValuesChange();
63
+ }
64
+ setCondition((_b = selectModuleData == null ? void 0 : selectModuleData.customData) == null ? void 0 : _b.conditionData);
65
+ }, [selectModuleData, globalData]);
66
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
67
+ /* @__PURE__ */ jsxs(Form, { form, name: "customData", layout: "vertical", initialValues, children: [
68
+ /* @__PURE__ */ jsx(Form.Item, { label: t("dataSource"), name: "dataSourceId", children: /* @__PURE__ */ jsx(
69
+ Select,
70
+ {
71
+ options: globalData == null ? void 0 : globalData.sourceData,
72
+ onChange: (val) => {
73
+ form.setFieldsValue({
74
+ statisticalMethod: "recordTotal"
75
+ });
76
+ getFieldOptions(val);
77
+ allValuesChange();
78
+ }
79
+ }
80
+ ) }),
81
+ /* @__PURE__ */ jsxs(Form.Item, { label: t("dataRange"), children: [
82
+ /* @__PURE__ */ jsx(
83
+ Button,
84
+ {
85
+ style: { marginLeft: "-15px" },
86
+ onClick: () => {
87
+ setIsModalOpen(true);
88
+ },
89
+ type: "link",
90
+ children: t("filterData")
91
+ }
92
+ ),
93
+ conditionDataNum > 0 ? `${t("selectNcondition", { n: conditionDataNum })}` : null
94
+ ] }),
95
+ /* @__PURE__ */ jsx(Divider, { style: { borderColor: "#e2e2e2", marginTop: 0 } }),
96
+ /* @__PURE__ */ jsx(
97
+ Form.Item,
98
+ {
99
+ label: t("statisticstMethods"),
100
+ name: "statisticalMethod",
101
+ children: /* @__PURE__ */ jsx(
102
+ Select,
103
+ {
104
+ onChange: (val) => {
105
+ form.setFieldsValue({
106
+ field: val === "fieldValue" ? numberFieldOptions == null ? void 0 : numberFieldOptions[0].value : "",
107
+ statisticalType: "sum"
108
+ });
109
+ allValuesChange();
110
+ },
111
+ options: [
112
+ { value: "recordTotal", label: t("statisticstRecordNum") },
113
+ { value: "fieldValue", label: t("statisticstFieldVal") }
114
+ ]
115
+ }
116
+ )
117
+ }
118
+ ),
119
+ /* @__PURE__ */ jsx(Form.Item, { dependencies: ["statisticalMethod"], children: ({ getFieldValue }) => getFieldValue("statisticalMethod") === "fieldValue" ? /* @__PURE__ */ jsx(Form.Item, { label: t("selectField"), children: /* @__PURE__ */ jsxs(Space.Compact, { children: [
120
+ /* @__PURE__ */ jsx(Form.Item, { noStyle: true, name: "field", children: /* @__PURE__ */ jsx(
121
+ Select,
122
+ {
123
+ style: { width: "100px" },
124
+ onChange: () => {
125
+ allValuesChange();
126
+ },
127
+ options: numberFieldOptions
128
+ }
129
+ ) }),
130
+ /* @__PURE__ */ jsx(Form.Item, { name: "statisticalType", noStyle: true, children: /* @__PURE__ */ jsx(
131
+ Select,
132
+ {
133
+ style: { width: "100px" },
134
+ onChange: () => {
135
+ allValuesChange();
136
+ },
137
+ options: [
138
+ {
139
+ value: "sum",
140
+ label: t("sumVal")
141
+ },
142
+ {
143
+ value: "max",
144
+ label: t("maxVal")
145
+ },
146
+ {
147
+ value: "min",
148
+ label: t("minVal")
149
+ },
150
+ {
151
+ value: "avg",
152
+ label: t("averageVal")
153
+ }
154
+ ]
155
+ }
156
+ ) })
157
+ ] }) }) : null })
158
+ ] }),
159
+ /* @__PURE__ */ jsx(
160
+ ConditionModal,
161
+ {
162
+ open: isModalOpen,
163
+ value: conditionData,
164
+ fieldOptions,
165
+ enumDataApi,
166
+ onClose: () => {
167
+ setIsModalOpen(false);
168
+ },
169
+ onOk: (val) => {
170
+ setCondition(val);
171
+ allValuesChange();
172
+ }
173
+ }
174
+ )
175
+ ] });
176
+ };
177
+ export {
178
+ CustomData as default
179
+ };
180
+ //# sourceMappingURL=custome-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custome-data.js","sources":["../../../../../packages/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-data.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Button, Divider, Form, Select, Space } from 'antd'\n\nimport { useEffect, useRef, useState } from 'react'\nimport { useAppContext } from '../../../context'\nimport { ModuleData } from '../../module-content'\nimport ConditionModal, { ConditionListItemTypes } from '../components/condition-modal'\nimport { EnumDataApi, SourceDataFieldsTypes } from '../../../types'\nimport { useTranslation } from 'react-i18next'\n\nexport type StatisticsCustomeDataTypes = {\n conditionData?: {\n conditionList: ConditionListItemTypes[]\n conditionType: 'all' | 'any'\n }\n dataSourceId?: string\n statisticalMethod?: string\n statisticalType?: 'sum' | 'max' | 'min' | 'avg'\n field: string\n}\n\ninterface CustomDataProps {\n selectModuleData?: ModuleData\n onAllValuesChange?: ((values: any) => void) | undefined\n enumDataApi?: EnumDataApi\n}\nconst CustomData: React.FC<CustomDataProps> = ({\n selectModuleData,\n onAllValuesChange,\n enumDataApi,\n}) => {\n const { globalData } = useAppContext()\n const { t } = useTranslation()\n\n /* ============================== split =============================== */\n const [fieldOptions, setFieldOptions] = useState<SourceDataFieldsTypes[]>()\n const [numberFieldOptions, setNumberFieldOptions] = useState<SourceDataFieldsTypes[]>()\n\n const getFieldOptions = (name?: string) => {\n const list = globalData?.sourceData?.find(item => item.value === name)?.fields\n setFieldOptions(list)\n setNumberFieldOptions(list?.filter(item => item.type === 'int' || item.type === 'float'))\n }\n\n /* ============================== split =============================== */\n const [form] = Form.useForm()\n\n const initialValues = {\n dataSourceId: '',\n statisticalMethod: 'recordTotal',\n field: '',\n }\n\n const allValuesChange = () => {\n setTimeout(() => {\n onAllValuesChange?.({\n ...form.getFieldsValue(),\n conditionData: conditionDataRef.current,\n })\n })\n }\n /* ============================== split =============================== */\n\n const [isModalOpen, setIsModalOpen] = useState(false)\n const conditionDataRef = useRef()\n const [conditionData, setConditionData] = useState<any>({\n conditionList: [],\n conditionType: 'all',\n })\n const [conditionDataNum, setConditionDataNum] = useState(0)\n\n const setCondition = (val: any) => {\n setConditionData(val)\n conditionDataRef.current = val\n setConditionDataNum(val?.conditionList?.length || 0)\n }\n /* ============================== split =============================== */\n\n useEffect(() => {\n if (selectModuleData?.customData) {\n const customData = selectModuleData.customData\n form.setFieldsValue(customData)\n getFieldOptions(customData?.dataSourceId)\n } else {\n const currSourceData = globalData?.sourceData?.[0]\n form.setFieldsValue({\n ...initialValues,\n dataSourceId: currSourceData?.value,\n })\n getFieldOptions(currSourceData?.value)\n allValuesChange()\n }\n setCondition(selectModuleData?.customData?.conditionData)\n }, [selectModuleData, globalData])\n\n return (\n <>\n <Form form={form} name=\"customData\" layout=\"vertical\" initialValues={initialValues}>\n <Form.Item<StatisticsCustomeDataTypes> label={t('dataSource')} name=\"dataSourceId\">\n <Select\n options={globalData?.sourceData}\n onChange={val => {\n form.setFieldsValue({\n statisticalMethod: 'recordTotal',\n })\n getFieldOptions(val)\n allValuesChange()\n }}\n />\n </Form.Item>\n\n <Form.Item<StatisticsCustomeDataTypes> label={t('dataRange')}>\n <Button\n style={{ marginLeft: '-15px' }}\n onClick={() => {\n setIsModalOpen(true)\n }}\n type=\"link\"\n >\n {t('filterData')}\n </Button>\n {conditionDataNum > 0 ? `${t('selectNcondition', { n: conditionDataNum })}` : null}\n </Form.Item>\n\n <Divider style={{ borderColor: '#e2e2e2', marginTop: 0 }} />\n\n <Form.Item<StatisticsCustomeDataTypes>\n label={t('statisticstMethods')}\n name=\"statisticalMethod\"\n >\n <Select\n onChange={val => {\n form.setFieldsValue({\n field: val === 'fieldValue' ? numberFieldOptions?.[0].value : '',\n statisticalType: 'sum',\n })\n allValuesChange()\n }}\n options={[\n { value: 'recordTotal', label: t('statisticstRecordNum') },\n { value: 'fieldValue', label: t('statisticstFieldVal') },\n ]}\n />\n </Form.Item>\n\n <Form.Item<StatisticsCustomeDataTypes> dependencies={['statisticalMethod']}>\n {({ getFieldValue }) =>\n getFieldValue('statisticalMethod') === 'fieldValue' ? (\n <Form.Item label={t('selectField')}>\n <Space.Compact>\n <Form.Item noStyle name=\"field\">\n <Select\n style={{ width: '100px' }}\n onChange={() => {\n allValuesChange()\n }}\n options={numberFieldOptions}\n />\n </Form.Item>\n <Form.Item name=\"statisticalType\" noStyle>\n <Select\n style={{ width: '100px' }}\n onChange={() => {\n allValuesChange()\n }}\n options={[\n {\n value: 'sum',\n label: t('sumVal'),\n },\n {\n value: 'max',\n label: t('maxVal'),\n },\n {\n value: 'min',\n label: t('minVal'),\n },\n {\n value: 'avg',\n label: t('averageVal'),\n },\n ]}\n />\n </Form.Item>\n </Space.Compact>\n </Form.Item>\n ) : null\n }\n </Form.Item>\n </Form>\n\n <ConditionModal\n open={isModalOpen}\n value={conditionData}\n fieldOptions={fieldOptions}\n enumDataApi={enumDataApi}\n onClose={() => {\n setIsModalOpen(false)\n }}\n onOk={val => {\n setCondition(val)\n allValuesChange()\n }}\n />\n </>\n )\n}\nexport default CustomData\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { ModuleData } from '../../module-content';
2
+ export type StatisticsCustomeStylesTypes = {
3
+ color?: string;
4
+ unit?: string;
5
+ precision?: number;
6
+ desc: string;
7
+ };
8
+ interface CustomeStylesProps {
9
+ selectModuleData?: ModuleData;
10
+ onAllValuesChange?: ((values: any) => void) | undefined;
11
+ }
12
+ declare const CustomeStyles: React.FC<CustomeStylesProps>;
13
+ export default CustomeStyles;
@@ -0,0 +1,119 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Form, Space, InputNumber, Select, Input } from "antd";
3
+ import { useMemo, useEffect } from "react";
4
+ import CustomeStyles$1 from "../components/select-color/index.js";
5
+ import { useTranslation } from "react-i18next";
6
+ const CustomeStyles = ({ selectModuleData, onAllValuesChange }) => {
7
+ const [form] = Form.useForm();
8
+ const { t, i18n } = useTranslation();
9
+ const UnitOptions = useMemo(() => {
10
+ return [
11
+ {
12
+ // 数字 千分位
13
+ value: 1,
14
+ label: t("statistics.t5")
15
+ },
16
+ {
17
+ // 数字
18
+ value: 2,
19
+ label: t("statistics.t6")
20
+ },
21
+ {
22
+ // 百分比
23
+ value: 3,
24
+ label: t("statistics.t7")
25
+ },
26
+ {
27
+ //人民币
28
+ value: 4,
29
+ label: t("statistics.t8")
30
+ },
31
+ {
32
+ //美元
33
+ value: 5,
34
+ label: t("statistics.t9")
35
+ },
36
+ {
37
+ // 欧元
38
+ value: 6,
39
+ label: t("statistics.t11")
40
+ },
41
+ {
42
+ // 英镑
43
+ value: 7,
44
+ label: t("statistics.t12")
45
+ },
46
+ {
47
+ // 泰铢
48
+ value: 8,
49
+ label: t("statistics.t13")
50
+ }
51
+ ];
52
+ }, [i18n.language]);
53
+ const initialValues = {
54
+ color: "#373c43",
55
+ unit: "1",
56
+ precision: "",
57
+ desc: ""
58
+ };
59
+ const allValuesChange = () => {
60
+ setTimeout(() => {
61
+ onAllValuesChange == null ? void 0 : onAllValuesChange(form.getFieldsValue());
62
+ });
63
+ };
64
+ useEffect(() => {
65
+ if (selectModuleData == null ? void 0 : selectModuleData.customeStyle) {
66
+ form.setFieldsValue(selectModuleData.customeStyle);
67
+ } else {
68
+ form.setFieldsValue(initialValues);
69
+ }
70
+ }, [selectModuleData]);
71
+ return /* @__PURE__ */ jsxs(Form, { form, name: "customeStyle", layout: "vertical", initialValues, children: [
72
+ /* @__PURE__ */ jsx(Form.Item, { label: t("statistics.t1"), name: "color", children: /* @__PURE__ */ jsx(
73
+ CustomeStyles$1,
74
+ {
75
+ onChange: () => {
76
+ allValuesChange();
77
+ }
78
+ }
79
+ ) }),
80
+ /* @__PURE__ */ jsx(Form.Item, { label: t("statistics.t2"), extra: t("statistics.t3"), children: /* @__PURE__ */ jsxs(Space.Compact, { children: [
81
+ /* @__PURE__ */ jsx(Form.Item, { name: "precision", noStyle: true, children: /* @__PURE__ */ jsx(
82
+ InputNumber,
83
+ {
84
+ min: 1,
85
+ max: 10,
86
+ style: { width: "60%" },
87
+ placeholder: t("statistics.t4"),
88
+ onChange: () => {
89
+ allValuesChange();
90
+ }
91
+ }
92
+ ) }),
93
+ /* @__PURE__ */ jsx(Form.Item, { name: "unit", noStyle: true, children: /* @__PURE__ */ jsx(
94
+ Select,
95
+ {
96
+ onChange: () => {
97
+ allValuesChange();
98
+ },
99
+ children: UnitOptions.map((v) => {
100
+ const { value, label } = v;
101
+ return /* @__PURE__ */ jsx(Select.Option, { value, children: label }, value);
102
+ })
103
+ }
104
+ ) })
105
+ ] }) }),
106
+ /* @__PURE__ */ jsx(Form.Item, { label: t("statistics.t10"), name: "desc", children: /* @__PURE__ */ jsx(
107
+ Input,
108
+ {
109
+ onChange: () => {
110
+ allValuesChange();
111
+ }
112
+ }
113
+ ) })
114
+ ] });
115
+ };
116
+ export {
117
+ CustomeStyles as default
118
+ };
119
+ //# sourceMappingURL=custome-styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custome-styles.js","sources":["../../../../../packages/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-styles.tsx"],"sourcesContent":["import { Form, Input, InputNumber, Select, Space } from 'antd'\nimport { useEffect, useMemo } from 'react'\nimport { ModuleData } from '../../module-content'\nimport SelectColor from '../components/select-color'\nimport { useTranslation } from 'react-i18next'\n\nexport type StatisticsCustomeStylesTypes = {\n color?: string\n unit?: string\n precision?: number\n desc: string\n}\n\ninterface CustomeStylesProps {\n selectModuleData?: ModuleData\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onAllValuesChange?: ((values: any) => void) | undefined\n}\nconst CustomeStyles: React.FC<CustomeStylesProps> = ({ selectModuleData, onAllValuesChange }) => {\n const [form] = Form.useForm()\n const { t, i18n } = useTranslation()\n\n const UnitOptions = useMemo(() => {\n return [\n {\n // 数字 千分位\n value: 1,\n label: t('statistics.t5'),\n },\n {\n // 数字\n value: 2,\n label: t('statistics.t6'),\n },\n {\n // 百分比\n value: 3,\n label: t('statistics.t7'),\n },\n {\n //人民币\n value: 4,\n label: t('statistics.t8'),\n },\n {\n //美元\n value: 5,\n label: t('statistics.t9'),\n },\n {\n // 欧元\n value: 6,\n label: t('statistics.t11'),\n },\n {\n // 英镑\n value: 7,\n label: t('statistics.t12'),\n },\n {\n // 泰铢\n value: 8,\n label: t('statistics.t13'),\n },\n ]\n }, [i18n.language])\n\n const initialValues = {\n color: '#373c43',\n unit: '1',\n precision: '',\n desc: '',\n }\n\n const allValuesChange = () => {\n setTimeout(() => {\n onAllValuesChange?.(form.getFieldsValue())\n })\n }\n\n useEffect(() => {\n if (selectModuleData?.customeStyle) {\n form.setFieldsValue(selectModuleData.customeStyle)\n } else {\n form.setFieldsValue(initialValues)\n }\n }, [selectModuleData])\n\n return (\n <Form form={form} name=\"customeStyle\" layout=\"vertical\" initialValues={initialValues}>\n <Form.Item label={t('statistics.t1')} name=\"color\">\n <SelectColor\n onChange={() => {\n allValuesChange()\n }}\n />\n </Form.Item>\n\n <Form.Item label={t('statistics.t2')} extra={t('statistics.t3')}>\n <Space.Compact>\n <Form.Item name=\"precision\" noStyle>\n <InputNumber\n min={1}\n max={10}\n style={{ width: '60%' }}\n placeholder={t('statistics.t4')}\n onChange={() => {\n allValuesChange()\n }}\n />\n </Form.Item>\n <Form.Item name=\"unit\" noStyle>\n <Select\n onChange={() => {\n allValuesChange()\n }}\n >\n {UnitOptions.map(v => {\n const { value, label } = v\n return (\n <Select.Option key={value} value={value}>\n {label}\n </Select.Option>\n )\n })}\n {/* <Select.Option value=\"1\">{t('statistics.t5')}</Select.Option>\n <Select.Option value=\"2\">{t('statistics.t6')}</Select.Option>\n <Select.Option value=\"3\">{t('statistics.t7')}</Select.Option>\n <Select.Option value=\"4\">{t('statistics.t8')}</Select.Option>\n <Select.Option value=\"5\">{t('statistics.t9')}</Select.Option>\n <Select.Option value=\"6\">{t('statistics.t11')}</Select.Option>\n <Select.Option value=\"7\">{t('statistics.t12')}</Select.Option>\n <Select.Option value=\"8\">{t('statistics.t13')}</Select.Option> */}\n </Select>\n </Form.Item>\n </Space.Compact>\n </Form.Item>\n\n <Form.Item label={t('statistics.t10')} name=\"desc\">\n <Input\n onChange={() => {\n allValuesChange()\n }}\n />\n </Form.Item>\n </Form>\n )\n}\nexport default CustomeStyles\n"],"names":["SelectColor"],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { default as React } from 'react';
2
+ import { StatisticsCustomeDataTypes } from './custome-data';
3
+ import { StatisticsCustomeStylesTypes } from './custome-styles';
4
+ import { ModuleDataApi } from '../../../types';
5
+ import { ModuleData } from '../../module-content';
6
+ interface AddStatisticsModalProps {
7
+ open: boolean;
8
+ onClose?: () => void;
9
+ selectModuleData?: ModuleData;
10
+ onOk?: ({ id, customData, customeStyle, }: {
11
+ id?: ModuleData['id'];
12
+ customData?: StatisticsCustomeDataTypes;
13
+ customeStyle?: StatisticsCustomeStylesTypes;
14
+ }) => void;
15
+ moduleDataApi?: ModuleDataApi;
16
+ enumDataApi?: any;
17
+ }
18
+ declare const AddStatisticsModal: React.FC<AddStatisticsModalProps>;
19
+ export default AddStatisticsModal;
@@ -0,0 +1,120 @@
1
+ import { jsx, Fragment, jsxs } from "react/jsx-runtime";
2
+ import { useState, useEffect } from "react";
3
+ import { Modal, Tabs, Button } from "antd";
4
+ import { CloseOutlined } from "@ant-design/icons";
5
+ import CustomData from "./custome-data.js";
6
+ import CustomeStyles from "./custome-styles.js";
7
+ import StatisticsModule from "../../module-content/statistics-module/index.js";
8
+ import { useTranslation } from "react-i18next";
9
+ const AddStatisticsModal = ({
10
+ open,
11
+ onClose,
12
+ onOk,
13
+ moduleDataApi,
14
+ selectModuleData,
15
+ enumDataApi
16
+ }) => {
17
+ const { t } = useTranslation();
18
+ const [customData, setCustomData] = useState();
19
+ const [customeStyle, setCustomeStyle] = useState();
20
+ const handleOk = () => {
21
+ onClose == null ? void 0 : onClose();
22
+ };
23
+ useEffect(() => {
24
+ if (selectModuleData) {
25
+ setCustomData(selectModuleData == null ? void 0 : selectModuleData.customData);
26
+ setCustomeStyle(selectModuleData == null ? void 0 : selectModuleData.customeStyle);
27
+ }
28
+ }, [selectModuleData]);
29
+ return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(
30
+ Modal,
31
+ {
32
+ width: "65%",
33
+ title: t("statisticsText"),
34
+ footer: null,
35
+ open,
36
+ onOk: handleOk,
37
+ onCancel: onClose,
38
+ closeIcon: /* @__PURE__ */ jsx(CloseOutlined, {}),
39
+ classNames: {
40
+ content: "ow"
41
+ },
42
+ styles: {
43
+ header: {
44
+ padding: "10px",
45
+ borderBottom: "1px solid #dee0e3",
46
+ marginBottom: "10px"
47
+ },
48
+ body: {
49
+ overflowY: "auto",
50
+ flex: 1
51
+ }
52
+ },
53
+ children: /* @__PURE__ */ jsxs("div", { className: "config-widget-dialog-container", children: [
54
+ /* @__PURE__ */ jsx("div", { className: "config-widget-dialog-content", children: /* @__PURE__ */ jsx("div", { className: "config-widget-dialog-preview", children: /* @__PURE__ */ jsx(
55
+ StatisticsModule,
56
+ {
57
+ customData,
58
+ customeStyle,
59
+ moduleDataApi
60
+ }
61
+ ) }) }),
62
+ /* @__PURE__ */ jsxs("div", { className: "config-widget-dialog-panel", children: [
63
+ /* @__PURE__ */ jsx("div", { className: "bitable-dashboard edit-panel-container", children: /* @__PURE__ */ jsx(
64
+ Tabs,
65
+ {
66
+ defaultActiveKey: "1",
67
+ items: [
68
+ {
69
+ key: "1",
70
+ label: t("typeData"),
71
+ children: /* @__PURE__ */ jsx(
72
+ CustomData,
73
+ {
74
+ selectModuleData,
75
+ enumDataApi,
76
+ onAllValuesChange: (allVal) => {
77
+ setCustomData(allVal);
78
+ }
79
+ }
80
+ )
81
+ },
82
+ {
83
+ key: "2",
84
+ label: t("customStyle"),
85
+ children: /* @__PURE__ */ jsx(
86
+ CustomeStyles,
87
+ {
88
+ selectModuleData,
89
+ onAllValuesChange: (allVal) => {
90
+ setCustomeStyle(allVal);
91
+ }
92
+ }
93
+ )
94
+ }
95
+ ]
96
+ }
97
+ ) }),
98
+ /* @__PURE__ */ jsx("div", { className: "button-container", children: /* @__PURE__ */ jsx(
99
+ Button,
100
+ {
101
+ type: "primary",
102
+ onClick: () => {
103
+ onOk == null ? void 0 : onOk({
104
+ id: selectModuleData == null ? void 0 : selectModuleData.id,
105
+ customData,
106
+ customeStyle
107
+ });
108
+ },
109
+ children: t("confirm")
110
+ }
111
+ ) })
112
+ ] })
113
+ ] })
114
+ }
115
+ ) });
116
+ };
117
+ export {
118
+ AddStatisticsModal as default
119
+ };
120
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../packages/dashboard-workbench/components/add-module-modal/add-statistics-modal/index.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect, useMemo, useState } from 'react'\nimport { Button, Modal, Tabs } from 'antd'\nimport { CloseOutlined } from '@ant-design/icons'\nimport CustomData, { StatisticsCustomeDataTypes } from './custome-data'\nimport CustomeStyles, { StatisticsCustomeStylesTypes } from './custome-styles'\nimport { ModuleDataApi } from '../../../types'\nimport StatisticsModule from '../../module-content/statistics-module'\nimport { ModuleData } from '../../module-content'\nimport { useTranslation } from 'react-i18next'\n\ninterface AddStatisticsModalProps {\n open: boolean\n onClose?: () => void\n selectModuleData?: ModuleData\n onOk?: ({\n id,\n customData,\n customeStyle,\n }: {\n id?: ModuleData['id']\n customData?: StatisticsCustomeDataTypes\n customeStyle?: StatisticsCustomeStylesTypes\n }) => void\n moduleDataApi?: ModuleDataApi\n\n enumDataApi?: any\n}\n\nconst AddStatisticsModal: React.FC<AddStatisticsModalProps> = ({\n open,\n onClose,\n onOk,\n moduleDataApi,\n selectModuleData,\n enumDataApi,\n}) => {\n const { t } = useTranslation()\n const [customData, setCustomData] = useState<StatisticsCustomeDataTypes>()\n const [customeStyle, setCustomeStyle] = useState<any>()\n const handleOk = () => {\n onClose?.()\n }\n\n useEffect(() => {\n if (selectModuleData) {\n setCustomData(selectModuleData?.customData)\n setCustomeStyle(selectModuleData?.customeStyle)\n }\n }, [selectModuleData])\n\n return (\n <>\n <Modal\n width=\"65%\"\n title={t('statisticsText')}\n footer={null}\n open={open}\n onOk={handleOk}\n onCancel={onClose}\n closeIcon={<CloseOutlined />}\n classNames={{\n content: 'ow',\n }}\n styles={{\n header: {\n padding: '10px',\n borderBottom: '1px solid #dee0e3',\n marginBottom: '10px',\n },\n body: {\n overflowY: 'auto',\n flex: 1,\n },\n }}\n >\n <div className=\"config-widget-dialog-container\">\n <div className=\"config-widget-dialog-content\">\n <div className=\"config-widget-dialog-preview\">\n <StatisticsModule\n customData={customData}\n customeStyle={customeStyle}\n moduleDataApi={moduleDataApi}\n />\n </div>\n </div>\n <div className=\"config-widget-dialog-panel\">\n <div className=\"bitable-dashboard edit-panel-container\">\n <Tabs\n defaultActiveKey=\"1\"\n items={[\n {\n key: '1',\n label: t('typeData'),\n children: (\n <CustomData\n selectModuleData={selectModuleData}\n enumDataApi={enumDataApi}\n onAllValuesChange={allVal => {\n setCustomData(allVal)\n }}\n />\n ),\n },\n {\n key: '2',\n label: t('customStyle'),\n children: (\n <CustomeStyles\n selectModuleData={selectModuleData}\n onAllValuesChange={allVal => {\n setCustomeStyle(allVal)\n }}\n />\n ),\n },\n ]}\n />\n </div>\n <div className=\"button-container\">\n <Button\n type=\"primary\"\n onClick={() => {\n onOk?.({\n id: selectModuleData?.id,\n customData,\n customeStyle,\n })\n }}\n >\n {t('confirm')}\n </Button>\n </div>\n </div>\n </div>\n </Modal>\n </>\n )\n}\n\nexport default AddStatisticsModal\n"],"names":[],"mappings":";;;;;;;;AA6BA,MAAM,qBAAwD,CAAC;AAAA,EAC7D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACE,QAAA,EAAE,EAAE,IAAI,eAAe;AAC7B,QAAM,CAAC,YAAY,aAAa,IAAI,SAAqC;AACzE,QAAM,CAAC,cAAc,eAAe,IAAI,SAAc;AACtD,QAAM,WAAW,MAAM;AACX;AAAA,EACZ;AAEA,YAAU,MAAM;AACd,QAAI,kBAAkB;AACpB,oBAAc,qDAAkB,UAAU;AAC1C,sBAAgB,qDAAkB,YAAY;AAAA,IAAA;AAAA,EAChD,GACC,CAAC,gBAAgB,CAAC;AAErB,SAEI,oBAAA,UAAA,EAAA,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,OAAM;AAAA,MACN,OAAO,EAAE,gBAAgB;AAAA,MACzB,QAAQ;AAAA,MACR;AAAA,MACA,MAAM;AAAA,MACN,UAAU;AAAA,MACV,+BAAY,eAAc,EAAA;AAAA,MAC1B,YAAY;AAAA,QACV,SAAS;AAAA,MACX;AAAA,MACA,QAAQ;AAAA,QACN,QAAQ;AAAA,UACN,SAAS;AAAA,UACT,cAAc;AAAA,UACd,cAAc;AAAA,QAChB;AAAA,QACA,MAAM;AAAA,UACJ,WAAW;AAAA,UACX,MAAM;AAAA,QAAA;AAAA,MAEV;AAAA,MAEA,UAAA,qBAAC,OAAI,EAAA,WAAU,kCACb,UAAA;AAAA,QAAA,oBAAC,SAAI,WAAU,gCACb,UAAC,oBAAA,OAAA,EAAI,WAAU,gCACb,UAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC;AAAA,YACA;AAAA,YACA;AAAA,UAAA;AAAA,WAEJ,EACF,CAAA;AAAA,QACA,qBAAC,OAAI,EAAA,WAAU,8BACb,UAAA;AAAA,UAAC,oBAAA,OAAA,EAAI,WAAU,0CACb,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,kBAAiB;AAAA,cACjB,OAAO;AAAA,gBACL;AAAA,kBACE,KAAK;AAAA,kBACL,OAAO,EAAE,UAAU;AAAA,kBACnB,UACE;AAAA,oBAAC;AAAA,oBAAA;AAAA,sBACC;AAAA,sBACA;AAAA,sBACA,mBAAmB,CAAU,WAAA;AAC3B,sCAAc,MAAM;AAAA,sBAAA;AAAA,oBACtB;AAAA,kBAAA;AAAA,gBAGN;AAAA,gBACA;AAAA,kBACE,KAAK;AAAA,kBACL,OAAO,EAAE,aAAa;AAAA,kBACtB,UACE;AAAA,oBAAC;AAAA,oBAAA;AAAA,sBACC;AAAA,sBACA,mBAAmB,CAAU,WAAA;AAC3B,wCAAgB,MAAM;AAAA,sBAAA;AAAA,oBACxB;AAAA,kBAAA;AAAA,gBACF;AAAA,cAEJ;AAAA,YACF;AAAA,UAAA,GAEJ;AAAA,UACA,oBAAC,OAAI,EAAA,WAAU,oBACb,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,MAAK;AAAA,cACL,SAAS,MAAM;AACN,6CAAA;AAAA,kBACL,IAAI,qDAAkB;AAAA,kBACtB;AAAA,kBACA;AAAA,gBAAA;AAAA,cAEJ;AAAA,cAEC,YAAE,SAAS;AAAA,YAAA;AAAA,UAAA,EAEhB,CAAA;AAAA,QAAA,EACF,CAAA;AAAA,MAAA,EACF,CAAA;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
@@ -0,0 +1,12 @@
1
+ import { default as React } from 'react';
2
+ import { SelectProps } from 'antd';
3
+ export interface DebounceSelectProps<ValueType = any> extends Omit<SelectProps<ValueType | ValueType[]>, 'options' | 'children'> {
4
+ fetchOptions: (search: string) => Promise<ValueType[]>;
5
+ debounceTimeout?: number;
6
+ }
7
+ declare function DebounceSelect<ValueType extends {
8
+ key?: string;
9
+ label: React.ReactNode;
10
+ value: string | number;
11
+ } = any>({ fetchOptions, debounceTimeout, ...props }: DebounceSelectProps<ValueType>): import("react/jsx-runtime").JSX.Element;
12
+ export default DebounceSelect;
@@ -0,0 +1,44 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useState, useRef, useMemo, useEffect } from "react";
3
+ import { Select, Spin } from "antd";
4
+ import { debounce } from "lodash-es";
5
+ function DebounceSelect({ fetchOptions, debounceTimeout = 800, ...props }) {
6
+ const [fetching, setFetching] = useState(false);
7
+ const [options, setOptions] = useState([]);
8
+ const fetchRef = useRef(0);
9
+ const debounceFetcher = useMemo(() => {
10
+ const loadOptions = (value) => {
11
+ fetchRef.current += 1;
12
+ const fetchId = fetchRef.current;
13
+ setOptions([]);
14
+ setFetching(true);
15
+ fetchOptions(value).then((newOptions) => {
16
+ if (fetchId !== fetchRef.current) {
17
+ return;
18
+ }
19
+ setOptions(newOptions);
20
+ setFetching(false);
21
+ });
22
+ };
23
+ return debounce(loadOptions, debounceTimeout);
24
+ }, [fetchOptions, debounceTimeout]);
25
+ useEffect(() => {
26
+ debounceFetcher("");
27
+ }, []);
28
+ return /* @__PURE__ */ jsx(
29
+ Select,
30
+ {
31
+ labelInValue: true,
32
+ showSearch: true,
33
+ filterOption: false,
34
+ onSearch: debounceFetcher,
35
+ notFoundContent: fetching ? /* @__PURE__ */ jsx(Spin, { size: "small" }) : null,
36
+ ...props,
37
+ options
38
+ }
39
+ );
40
+ }
41
+ export {
42
+ DebounceSelect as default
43
+ };
44
+ //# sourceMappingURL=debounce-select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debounce-select.js","sources":["../../../../../../packages/dashboard-workbench/components/add-module-modal/components/condition-modal/debounce-select.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect, useMemo, useRef, useState } from 'react'\nimport { Select, Spin } from 'antd'\nimport type { SelectProps } from 'antd'\nimport { debounce } from 'lodash-es'\n\nexport interface DebounceSelectProps<ValueType = any>\n extends Omit<SelectProps<ValueType | ValueType[]>, 'options' | 'children'> {\n fetchOptions: (search: string) => Promise<ValueType[]>\n debounceTimeout?: number\n}\n\nfunction DebounceSelect<\n ValueType extends {\n key?: string\n label: React.ReactNode\n value: string | number\n } = any,\n>({ fetchOptions, debounceTimeout = 800, ...props }: DebounceSelectProps<ValueType>) {\n const [fetching, setFetching] = useState(false)\n const [options, setOptions] = useState<ValueType[]>([])\n const fetchRef = useRef(0)\n\n const debounceFetcher = useMemo(() => {\n const loadOptions = (value: string) => {\n fetchRef.current += 1\n const fetchId = fetchRef.current\n setOptions([])\n setFetching(true)\n\n fetchOptions(value).then(newOptions => {\n if (fetchId !== fetchRef.current) {\n // for fetch callback order\n return\n }\n setOptions(newOptions)\n setFetching(false)\n })\n }\n\n return debounce(loadOptions, debounceTimeout)\n }, [fetchOptions, debounceTimeout])\n\n useEffect(() => {\n debounceFetcher('')\n }, [])\n\n return (\n <Select\n labelInValue\n showSearch\n filterOption={false}\n onSearch={debounceFetcher}\n notFoundContent={fetching ? <Spin size=\"small\" /> : null}\n {...props}\n options={options}\n />\n )\n}\n\nexport default DebounceSelect\n"],"names":[],"mappings":";;;;AAYA,SAAS,eAMP,EAAE,cAAc,kBAAkB,KAAK,GAAG,SAAyC;AACnF,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,KAAK;AAC9C,QAAM,CAAC,SAAS,UAAU,IAAI,SAAsB,CAAA,CAAE;AAChD,QAAA,WAAW,OAAO,CAAC;AAEnB,QAAA,kBAAkB,QAAQ,MAAM;AAC9B,UAAA,cAAc,CAAC,UAAkB;AACrC,eAAS,WAAW;AACpB,YAAM,UAAU,SAAS;AACzB,iBAAW,CAAA,CAAE;AACb,kBAAY,IAAI;AAEH,mBAAA,KAAK,EAAE,KAAK,CAAc,eAAA;AACjC,YAAA,YAAY,SAAS,SAAS;AAEhC;AAAA,QAAA;AAEF,mBAAW,UAAU;AACrB,oBAAY,KAAK;AAAA,MAAA,CAClB;AAAA,IACH;AAEO,WAAA,SAAS,aAAa,eAAe;AAAA,EAAA,GAC3C,CAAC,cAAc,eAAe,CAAC;AAElC,YAAU,MAAM;AACd,oBAAgB,EAAE;AAAA,EACpB,GAAG,EAAE;AAGH,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,cAAY;AAAA,MACZ,YAAU;AAAA,MACV,cAAc;AAAA,MACd,UAAU;AAAA,MACV,iBAAiB,WAAW,oBAAC,MAAK,EAAA,MAAK,QAAQ,CAAA,IAAK;AAAA,MACnD,GAAG;AAAA,MACJ;AAAA,IAAA;AAAA,EACF;AAEJ;"}
@@ -0,0 +1,21 @@
1
+ import { EnumDataApi, SourceDataFieldsTypes } from '../../../../types';
2
+ export interface ConditionListItemTypes {
3
+ field: string;
4
+ condition: '=' | '<' | '>' | 'contain' | 'null' | 'notnull' | '!=' | '>=' | '=<' | 'include' | 'notinclude';
5
+ val: any;
6
+ type: SourceDataFieldsTypes['type'];
7
+ }
8
+ interface ConditionModalProps {
9
+ open?: boolean;
10
+ fieldOptions?: SourceDataFieldsTypes[];
11
+ onSubmit?: ((values: any) => void) | undefined;
12
+ onClose?: () => void;
13
+ onOk?: ((values: any) => void) | undefined;
14
+ enumDataApi?: EnumDataApi;
15
+ value?: {
16
+ conditionList: ConditionListItemTypes[];
17
+ conditionType: 'all' | 'any';
18
+ };
19
+ }
20
+ declare const ConditionModal: React.FC<ConditionModalProps>;
21
+ export default ConditionModal;