@platox/pivot-table 0.0.33 → 0.0.35

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 (165) 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 +169 -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 +13 -0
  8. package/es/dashboard-workbench/components/add-module-modal/add-calendar-modal/index.js +82 -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 +29 -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 +13 -0
  17. package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/index.js +114 -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 +13 -0
  26. package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/index.js +111 -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 +229 -0
  40. package/es/dashboard-workbench/components/module-content/calendar-module/index.js.map +1 -0
  41. package/es/dashboard-workbench/components/module-content/calendar-module/locales/en.d.ts +7 -0
  42. package/es/dashboard-workbench/components/module-content/calendar-module/locales/en.js +10 -0
  43. package/es/dashboard-workbench/components/module-content/calendar-module/locales/en.js.map +1 -0
  44. package/es/dashboard-workbench/components/module-content/calendar-module/locales/zh.d.ts +22 -0
  45. package/es/dashboard-workbench/components/module-content/calendar-module/locales/zh.js +29 -0
  46. package/es/dashboard-workbench/components/module-content/calendar-module/locales/zh.js.map +1 -0
  47. package/es/dashboard-workbench/components/module-content/chart-module/Empty.d.ts +5 -0
  48. package/es/dashboard-workbench/components/module-content/chart-module/Empty.js +30 -0
  49. package/es/dashboard-workbench/components/module-content/chart-module/Empty.js.map +1 -0
  50. package/es/dashboard-workbench/components/module-content/chart-module/base-chart/index.d.ts +8 -0
  51. package/es/dashboard-workbench/components/module-content/chart-module/base-chart/index.js +62 -0
  52. package/es/dashboard-workbench/components/module-content/chart-module/base-chart/index.js.map +1 -0
  53. package/es/dashboard-workbench/components/module-content/chart-module/index.d.ts +14 -0
  54. package/es/dashboard-workbench/components/module-content/chart-module/index.js +406 -0
  55. package/es/dashboard-workbench/components/module-content/chart-module/index.js.map +1 -0
  56. package/es/dashboard-workbench/components/module-content/chart-module/utils.d.ts +9 -0
  57. package/es/dashboard-workbench/components/module-content/chart-module/utils.js +200 -0
  58. package/es/dashboard-workbench/components/module-content/chart-module/utils.js.map +1 -0
  59. package/es/dashboard-workbench/components/module-content/index.d.ts +31 -0
  60. package/es/dashboard-workbench/components/module-content/index.js +81 -0
  61. package/es/dashboard-workbench/components/module-content/index.js.map +1 -0
  62. package/es/dashboard-workbench/components/module-content/statistics-module/index.d.ts +15 -0
  63. package/es/dashboard-workbench/components/module-content/statistics-module/index.js +305 -0
  64. package/es/dashboard-workbench/components/module-content/statistics-module/index.js.map +1 -0
  65. package/es/dashboard-workbench/components/module-content/statistics-module/utils.d.ts +4 -0
  66. package/es/dashboard-workbench/components/module-content/statistics-module/utils.js +41 -0
  67. package/es/dashboard-workbench/components/module-content/statistics-module/utils.js.map +1 -0
  68. package/es/dashboard-workbench/components/module-content/text-module/editor/index.d.ts +7 -0
  69. package/es/dashboard-workbench/components/module-content/text-module/editor/index.js +224 -0
  70. package/es/dashboard-workbench/components/module-content/text-module/editor/index.js.map +1 -0
  71. package/es/dashboard-workbench/components/module-content/text-module/editor/useDebounce.d.ts +2 -0
  72. package/es/dashboard-workbench/components/module-content/text-module/editor/useDebounce.js +24 -0
  73. package/es/dashboard-workbench/components/module-content/text-module/editor/useDebounce.js.map +1 -0
  74. package/es/dashboard-workbench/components/module-content/text-module/index.d.ts +7 -0
  75. package/es/dashboard-workbench/components/module-content/text-module/index.js +11 -0
  76. package/es/dashboard-workbench/components/module-content/text-module/index.js.map +1 -0
  77. package/es/dashboard-workbench/components/module-content/utils.d.ts +15 -0
  78. package/es/dashboard-workbench/components/module-content/utils.js +113 -0
  79. package/es/dashboard-workbench/components/module-content/utils.js.map +1 -0
  80. package/es/dashboard-workbench/components/module-header/index.d.ts +12 -0
  81. package/es/dashboard-workbench/components/module-header/index.js +115 -0
  82. package/es/dashboard-workbench/components/module-header/index.js.map +1 -0
  83. package/es/dashboard-workbench/components/ui/modal/editor-header.d.ts +12 -0
  84. package/es/dashboard-workbench/components/ui/modal/editor-header.js +59 -0
  85. package/es/dashboard-workbench/components/ui/modal/editor-header.js.map +1 -0
  86. package/es/dashboard-workbench/components/ui/modal/index.module.less.js +9 -0
  87. package/es/dashboard-workbench/components/ui/modal/index.module.less.js.map +1 -0
  88. package/es/dashboard-workbench/context.d.ts +16 -0
  89. package/es/dashboard-workbench/context.js +21 -0
  90. package/es/dashboard-workbench/context.js.map +1 -0
  91. package/es/dashboard-workbench/icon/icon-bar-percentage.d.ts +2 -0
  92. package/es/dashboard-workbench/icon/icon-bar-percentage.js +17 -0
  93. package/es/dashboard-workbench/icon/icon-bar-percentage.js.map +1 -0
  94. package/es/dashboard-workbench/icon/icon-bar-pile.d.ts +2 -0
  95. package/es/dashboard-workbench/icon/icon-bar-pile.js +17 -0
  96. package/es/dashboard-workbench/icon/icon-bar-pile.js.map +1 -0
  97. package/es/dashboard-workbench/icon/icon-bar.d.ts +2 -0
  98. package/es/dashboard-workbench/icon/icon-bar.js +13 -0
  99. package/es/dashboard-workbench/icon/icon-bar.js.map +1 -0
  100. package/es/dashboard-workbench/icon/icon-calendar.d.ts +2 -0
  101. package/es/dashboard-workbench/icon/icon-calendar.js +40 -0
  102. package/es/dashboard-workbench/icon/icon-calendar.js.map +1 -0
  103. package/es/dashboard-workbench/icon/icon-drag.d.ts +2 -0
  104. package/es/dashboard-workbench/icon/icon-drag.js +25 -0
  105. package/es/dashboard-workbench/icon/icon-drag.js.map +1 -0
  106. package/es/dashboard-workbench/icon/icon-editor.d.ts +2 -0
  107. package/es/dashboard-workbench/icon/icon-editor.js +40 -0
  108. package/es/dashboard-workbench/icon/icon-editor.js.map +1 -0
  109. package/es/dashboard-workbench/icon/icon-empty.d.ts +2 -0
  110. package/es/dashboard-workbench/icon/icon-empty.js +139 -0
  111. package/es/dashboard-workbench/icon/icon-empty.js.map +1 -0
  112. package/es/dashboard-workbench/icon/icon-line-smooth.d.ts +2 -0
  113. package/es/dashboard-workbench/icon/icon-line-smooth.js +28 -0
  114. package/es/dashboard-workbench/icon/icon-line-smooth.js.map +1 -0
  115. package/es/dashboard-workbench/icon/icon-line.d.ts +2 -0
  116. package/es/dashboard-workbench/icon/icon-line.js +28 -0
  117. package/es/dashboard-workbench/icon/icon-line.js.map +1 -0
  118. package/es/dashboard-workbench/icon/icon-move.d.ts +2 -0
  119. package/es/dashboard-workbench/icon/icon-move.js +25 -0
  120. package/es/dashboard-workbench/icon/icon-move.js.map +1 -0
  121. package/es/dashboard-workbench/icon/icon-pie-circular.d.ts +2 -0
  122. package/es/dashboard-workbench/icon/icon-pie-circular.js +30 -0
  123. package/es/dashboard-workbench/icon/icon-pie-circular.js.map +1 -0
  124. package/es/dashboard-workbench/icon/icon-pie.d.ts +2 -0
  125. package/es/dashboard-workbench/icon/icon-pie.js +24 -0
  126. package/es/dashboard-workbench/icon/icon-pie.js.map +1 -0
  127. package/es/dashboard-workbench/icon/icon-statistics.d.ts +2 -0
  128. package/es/dashboard-workbench/icon/icon-statistics.js +37 -0
  129. package/es/dashboard-workbench/icon/icon-statistics.js.map +1 -0
  130. package/es/dashboard-workbench/icon/icon-strip-bar-percentage.d.ts +2 -0
  131. package/es/dashboard-workbench/icon/icon-strip-bar-percentage.js +105 -0
  132. package/es/dashboard-workbench/icon/icon-strip-bar-percentage.js.map +1 -0
  133. package/es/dashboard-workbench/icon/icon-strip-bar-pile.d.ts +2 -0
  134. package/es/dashboard-workbench/icon/icon-strip-bar-pile.js +105 -0
  135. package/es/dashboard-workbench/icon/icon-strip-bar-pile.js.map +1 -0
  136. package/es/dashboard-workbench/icon/icon-strip-bar.d.ts +2 -0
  137. package/es/dashboard-workbench/icon/icon-strip-bar.js +57 -0
  138. package/es/dashboard-workbench/icon/icon-strip-bar.js.map +1 -0
  139. package/es/dashboard-workbench/index.d.ts +33 -0
  140. package/es/dashboard-workbench/index.js +414 -0
  141. package/es/dashboard-workbench/index.js.map +1 -0
  142. package/es/dashboard-workbench/lang/en-US.d.ts +147 -0
  143. package/es/dashboard-workbench/lang/en-US.js +158 -0
  144. package/es/dashboard-workbench/lang/en-US.js.map +1 -0
  145. package/es/dashboard-workbench/lang/index.d.ts +2 -0
  146. package/es/dashboard-workbench/lang/index.js +25 -0
  147. package/es/dashboard-workbench/lang/index.js.map +1 -0
  148. package/es/dashboard-workbench/lang/zh-CN.d.ts +147 -0
  149. package/es/dashboard-workbench/lang/zh-CN.js +158 -0
  150. package/es/dashboard-workbench/lang/zh-CN.js.map +1 -0
  151. package/es/dashboard-workbench/types.d.ts +22 -0
  152. package/es/dashboard-workbench/utils/index.d.ts +9 -0
  153. package/es/dashboard-workbench/utils/index.js +30 -0
  154. package/es/dashboard-workbench/utils/index.js.map +1 -0
  155. package/es/index.d.ts +1 -0
  156. package/es/index.js +5 -0
  157. package/es/index.js.map +1 -0
  158. package/es/style.css +1 -0
  159. package/package.json +25 -24
  160. package/umd/pivot-table.umd.cjs +178 -0
  161. package/umd/style.css +1 -0
  162. package/index.d.ts +0 -98
  163. package/lib/index.js +0 -52222
  164. package/lib/index.umd.cjs +0 -178
  165. package/lib/style.css +0 -1
@@ -0,0 +1,414 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import React, { useEffect, useState } from "react";
3
+ import { WidthProvider, Responsive } from "react-grid-layout";
4
+ import ModuleContent from "./components/module-content/index.js";
5
+ import AddModuleBtn from "./components/add-module-btn/index.js";
6
+ /* empty css */
7
+ import { AppProvider, useAppContext } from "./context.js";
8
+ import AddStatisticsModal from "./components/add-module-modal/add-statistics-modal/index.js";
9
+ import AddStatisticsModal$1 from "./components/add-module-modal/add-calendar-modal/index.js";
10
+ import AddStatisticsModal$2 from "./components/add-module-modal/add-chart-modal/index.js";
11
+ import "./lang/index.js";
12
+ import { useTranslation } from "react-i18next";
13
+ /* empty css */
14
+ import { Modal, message } from "antd";
15
+ import { ExclamationCircleOutlined } from "@ant-design/icons";
16
+ import ModuleHeader from "./components/module-header/index.js";
17
+ import { findChangedItems } from "./utils/index.js";
18
+ import { omit } from "lodash-es";
19
+ const ResponsiveReactGridLayout = WidthProvider(Responsive);
20
+ const DashboardWorkbench = ({
21
+ sourceData,
22
+ moduleConfigData,
23
+ fieldMap,
24
+ moduleDataApi,
25
+ enumDataApi,
26
+ onCreateModule,
27
+ onUpdateModule,
28
+ onDeleteModule,
29
+ lang,
30
+ // onLayoutChange,
31
+ className = "layout",
32
+ cols = { lg: 12, md: 12, sm: 12, xs: 12, xxs: 12 },
33
+ rowHeight = 79
34
+ }) => {
35
+ const { setGlobalData } = useAppContext();
36
+ useEffect(() => {
37
+ setGlobalData({ fieldMap, sourceData });
38
+ }, [fieldMap, setGlobalData, sourceData]);
39
+ const { i18n, t } = useTranslation();
40
+ useEffect(() => {
41
+ i18n.changeLanguage(lang || "zh_CN");
42
+ }, [i18n, lang]);
43
+ const [modules, setModules] = useState([]);
44
+ const [activeId, setActiveId] = useState();
45
+ useEffect(() => {
46
+ setModules(
47
+ (moduleConfigData == null ? void 0 : moduleConfigData.map((item) => ({
48
+ ...item,
49
+ i: item.i ? item.i : item.id
50
+ }))) || []
51
+ );
52
+ }, [moduleConfigData]);
53
+ const addModule = async (data) => {
54
+ const wMultiple = data.type === "calendar" ? 5 : 4;
55
+ const hMultiple = data.type === "calendar" ? 5 : 3;
56
+ if (Array.isArray(modules) && data.type) {
57
+ const newModuleData = {
58
+ x: 0,
59
+ y: 0,
60
+ w: wMultiple,
61
+ h: hMultiple,
62
+ title: data.type.includes("chart") ? t("chartText") : title[data.type],
63
+ ...data,
64
+ type: data.type
65
+ };
66
+ await (onCreateModule == null ? void 0 : onCreateModule(newModuleData).then((res) => {
67
+ var _a, _b;
68
+ if (!res.success) {
69
+ message.error(res.message);
70
+ return;
71
+ }
72
+ setModules([...modules, { ...newModuleData, i: (_a = res.data) == null ? void 0 : _a.id, id: (_b = res.data) == null ? void 0 : _b.id }]);
73
+ }));
74
+ }
75
+ };
76
+ const updateModule = async (id, updatedProps) => {
77
+ if (modules == null ? void 0 : modules.length) {
78
+ const oldData = modules.find((m) => m.id === id);
79
+ const updatedModule = {
80
+ ...oldData,
81
+ ...updatedProps
82
+ };
83
+ const modulesData = modules.map((m) => m.id === id ? updatedModule : m);
84
+ setModules(modulesData);
85
+ await (onUpdateModule == null ? void 0 : onUpdateModule(updatedModule).then((res) => {
86
+ if (!res.success) {
87
+ message.error(res.message);
88
+ return;
89
+ }
90
+ }));
91
+ }
92
+ };
93
+ const updateModules = async (updatedItems) => {
94
+ if (!(modules == null ? void 0 : modules.length) || !(updatedItems == null ? void 0 : updatedItems.length)) return;
95
+ const updatedModules = modules.map((module) => {
96
+ const update = updatedItems.find((item) => item.id === module.id);
97
+ return update ? { ...module, ...update } : module;
98
+ });
99
+ setModules(updatedModules);
100
+ try {
101
+ for (const updatedItem of updatedItems) {
102
+ const res = await (onUpdateModule == null ? void 0 : onUpdateModule(updatedItem));
103
+ if (!(res == null ? void 0 : res.success)) {
104
+ throw new Error((res == null ? void 0 : res.message) || `Failed to update module: ${updatedItem.id}`);
105
+ }
106
+ }
107
+ } catch (error) {
108
+ setModules(modules);
109
+ message.error(error.message || "Failed to update modules");
110
+ }
111
+ };
112
+ const deleteModule = async (id) => {
113
+ if (modules == null ? void 0 : modules.length) {
114
+ setModules(modules.filter((m) => m.id !== id));
115
+ await (onDeleteModule == null ? void 0 : onDeleteModule(id || ""));
116
+ }
117
+ };
118
+ const margins = [10, 10];
119
+ const [rowWidth, setRowWidth] = useState(0);
120
+ const [, setCurrentCols] = useState(cols.lg);
121
+ const [isDragOrResize, setIsDragOrResize] = useState(false);
122
+ const [isDragOrResizeEnd, setIsDragOrResizeEnd] = useState(false);
123
+ const onBreakpointChange = (_breakpoint, cols2) => {
124
+ setCurrentCols(cols2);
125
+ };
126
+ const onDragResizeStop = (newLayout) => {
127
+ const changedItems = findChangedItems(newLayout, modules);
128
+ const newChangedItems = changedItems.map((item) => {
129
+ const module = modules == null ? void 0 : modules.find((module2) => module2.i === item.i);
130
+ return { ...module, ...item };
131
+ });
132
+ updateModules(newChangedItems);
133
+ };
134
+ const onDragStartOrEnd = (type, newLayout) => {
135
+ if (type === "start") {
136
+ setIsDragOrResize(true);
137
+ setIsDragOrResizeEnd(true);
138
+ } else {
139
+ setIsDragOrResize(false);
140
+ setTimeout(() => {
141
+ setIsDragOrResizeEnd(false);
142
+ }, 500);
143
+ onDragResizeStop(newLayout || []);
144
+ }
145
+ };
146
+ const [selectModuleData, setSelectModuleData] = useState();
147
+ const [isShowAddStatisticsModal, setIsShowAddStatisticsModal] = useState(false);
148
+ const [isShowAddCalendarModal, setIsShowAddCalendarModal] = useState(false);
149
+ const [isShowAddChartModal, setIsShowAddChartModal] = useState(false);
150
+ const handleOpenCreateModal = (val) => {
151
+ if (val === "text") {
152
+ const data = {
153
+ type: val,
154
+ customData: {
155
+ title: t("text"),
156
+ editor: [
157
+ {
158
+ type: "paragraph",
159
+ children: [
160
+ {
161
+ text: ""
162
+ }
163
+ ]
164
+ }
165
+ ]
166
+ }
167
+ };
168
+ addModule(data);
169
+ } else if (val === "statistics") {
170
+ setIsShowAddStatisticsModal(true);
171
+ } else if (val === "calendar") {
172
+ setIsShowAddCalendarModal(true);
173
+ } else if (val == null ? void 0 : val.includes("chart")) {
174
+ setIsShowAddChartModal(true);
175
+ }
176
+ setSelectModuleData({
177
+ title: "",
178
+ type: val,
179
+ w: 0,
180
+ h: 0,
181
+ x: 0,
182
+ y: 0
183
+ });
184
+ };
185
+ const commonModalProps = {
186
+ moduleDataApi,
187
+ enumDataApi,
188
+ selectModuleData
189
+ };
190
+ const handleModalSubmit = (data) => {
191
+ if (data.id) {
192
+ updateModule(data.id, omit(data, "id"));
193
+ } else {
194
+ addModule(data);
195
+ }
196
+ };
197
+ const title = {
198
+ text: t("pb.text"),
199
+ calendar: t("calendarText"),
200
+ statistics: t("chartText")
201
+ };
202
+ return /* @__PURE__ */ jsxs("div", { className: "pivot-table", children: [
203
+ /* @__PURE__ */ jsxs("div", { className: "bitable-block-dashboard", children: [
204
+ /* @__PURE__ */ jsx("div", { className: "bitable-block-dashboard-toolbar bitable-toolbar", children: /* @__PURE__ */ jsx("div", { className: "bitable-block-dashboard-toolbar--left", children: /* @__PURE__ */ jsx(
205
+ AddModuleBtn,
206
+ {
207
+ onOk: (val) => {
208
+ handleOpenCreateModal(val);
209
+ }
210
+ }
211
+ ) }) }),
212
+ /* @__PURE__ */ jsx("div", { className: "bitable-block-dashboard__mount", children: /* @__PURE__ */ jsx("div", { className: "dashboard-container", children: /* @__PURE__ */ jsx(
213
+ "div",
214
+ {
215
+ className: `dashboard-content-container ${isDragOrResize ? "isDragOrResize" : ""} ${isDragOrResizeEnd ? "isDragOrResizeEnd" : ""}`,
216
+ children: /* @__PURE__ */ jsx(
217
+ ResponsiveReactGridLayout,
218
+ {
219
+ onBreakpointChange,
220
+ className,
221
+ compactType: "vertical",
222
+ preventCollision: false,
223
+ cols,
224
+ margin: margins,
225
+ rowHeight,
226
+ measureBeforeMount: false,
227
+ draggableHandle: ".isCanDrag",
228
+ onWidthChange: (containerWidth, _margin, cols2) => {
229
+ setRowWidth(containerWidth / cols2 - 1);
230
+ },
231
+ onDragStart: () => {
232
+ onDragStartOrEnd("start");
233
+ },
234
+ onDragStop: (newLayout) => {
235
+ onDragStartOrEnd("end", newLayout);
236
+ },
237
+ onResizeStart: () => {
238
+ onDragStartOrEnd("start");
239
+ },
240
+ onResizeStop: (newLayout) => {
241
+ onDragStartOrEnd("end", newLayout);
242
+ },
243
+ style: {
244
+ backgroundSize: `${rowWidth}px ${rowHeight + margins[0]}px`,
245
+ backgroundPosition: `${margins[0]}px ${margins[0]}px`,
246
+ minHeight: "100vh"
247
+ },
248
+ children: modules == null ? void 0 : modules.map((module) => /* @__PURE__ */ jsxs(
249
+ "div",
250
+ {
251
+ className: `box-dashboard ${activeId === module.id ? "active" : ""}`,
252
+ onClick: () => {
253
+ setActiveId(module.id);
254
+ },
255
+ "data-grid": {
256
+ i: module.id,
257
+ x: module.x || 0,
258
+ y: module.y || 0,
259
+ // puts it at the bottom
260
+ w: module.w || 2,
261
+ h: module.h || 2,
262
+ minW: 2,
263
+ minH: 2
264
+ },
265
+ children: [
266
+ /* @__PURE__ */ jsx(
267
+ ModuleHeader,
268
+ {
269
+ module,
270
+ defaultValue: module.title,
271
+ onChange: (val) => updateModule(module.id, {
272
+ title: val
273
+ }),
274
+ onDropdownItem: (key) => {
275
+ var _a;
276
+ if (key === "edit") {
277
+ setActiveId(module.id);
278
+ setSelectModuleData(module);
279
+ if (module.type === "statistics") {
280
+ setIsShowAddStatisticsModal(true);
281
+ }
282
+ if ((_a = module.type) == null ? void 0 : _a.includes("chart")) {
283
+ setIsShowAddChartModal(true);
284
+ }
285
+ if (module.type === "calendar") {
286
+ setIsShowAddCalendarModal(true);
287
+ }
288
+ } else if (key === "delete") {
289
+ Modal.confirm({
290
+ title: t("promptTitle"),
291
+ icon: /* @__PURE__ */ jsx(ExclamationCircleOutlined, {}),
292
+ content: t("promptContentDeleteComponents"),
293
+ onOk() {
294
+ deleteModule(module.id);
295
+ }
296
+ });
297
+ } else if (key === "copy") {
298
+ const data = JSON.parse(JSON.stringify(module));
299
+ delete data.id;
300
+ delete data.i;
301
+ addModule(data);
302
+ }
303
+ }
304
+ }
305
+ ),
306
+ /* @__PURE__ */ jsx(
307
+ ModuleContent,
308
+ {
309
+ module,
310
+ onUpdate: updateModule,
311
+ moduleDataApi,
312
+ activeId,
313
+ onClick: () => {
314
+ setActiveId(module.id);
315
+ },
316
+ rowWidth,
317
+ rowHeight,
318
+ onEdit: () => {
319
+ var _a;
320
+ setActiveId(module.id);
321
+ setSelectModuleData(module);
322
+ if (module.type === "statistics") {
323
+ setIsShowAddStatisticsModal(true);
324
+ }
325
+ if ((_a = module.type) == null ? void 0 : _a.includes("chart")) {
326
+ setIsShowAddChartModal(true);
327
+ }
328
+ if (module.type === "calendar") {
329
+ setIsShowAddCalendarModal(true);
330
+ }
331
+ },
332
+ onDelete: () => {
333
+ deleteModule(module.id);
334
+ },
335
+ onCopy: () => {
336
+ const data = JSON.parse(JSON.stringify(module));
337
+ delete data.id;
338
+ delete data.i;
339
+ addModule(data);
340
+ },
341
+ onStartDragOrResize: () => {
342
+ setIsDragOrResize(true);
343
+ },
344
+ onStopDragOrResize: () => {
345
+ setIsDragOrResize(false);
346
+ }
347
+ }
348
+ )
349
+ ]
350
+ },
351
+ module.id
352
+ ))
353
+ }
354
+ )
355
+ }
356
+ ) }) })
357
+ ] }),
358
+ /* @__PURE__ */ jsx(
359
+ AddStatisticsModal,
360
+ {
361
+ ...commonModalProps,
362
+ open: isShowAddStatisticsModal,
363
+ onClose: () => {
364
+ setIsShowAddStatisticsModal(false);
365
+ },
366
+ onOk: (data) => {
367
+ handleModalSubmit({
368
+ ...data,
369
+ type: "statistics"
370
+ });
371
+ setIsShowAddStatisticsModal(false);
372
+ }
373
+ }
374
+ ),
375
+ /* @__PURE__ */ jsx(
376
+ AddStatisticsModal$1,
377
+ {
378
+ ...commonModalProps,
379
+ open: isShowAddCalendarModal,
380
+ onClose: () => {
381
+ setIsShowAddCalendarModal(false);
382
+ },
383
+ onOk: (data) => {
384
+ handleModalSubmit({
385
+ ...data,
386
+ type: "calendar"
387
+ });
388
+ setIsShowAddCalendarModal(false);
389
+ }
390
+ }
391
+ ),
392
+ /* @__PURE__ */ jsx(
393
+ AddStatisticsModal$2,
394
+ {
395
+ ...commonModalProps,
396
+ open: isShowAddChartModal,
397
+ onClose: () => {
398
+ setIsShowAddChartModal(false);
399
+ },
400
+ onOk: (data) => {
401
+ handleModalSubmit(data);
402
+ setIsShowAddChartModal(false);
403
+ }
404
+ }
405
+ )
406
+ ] });
407
+ };
408
+ const index = React.memo((props) => {
409
+ return /* @__PURE__ */ jsx(AppProvider, { children: /* @__PURE__ */ jsx(DashboardWorkbench, { ...props }) });
410
+ });
411
+ export {
412
+ index as default
413
+ };
414
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../packages/dashboard-workbench/index.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useState, useEffect, useMemo } from 'react'\nimport { WidthProvider, Responsive, Layout } from 'react-grid-layout'\nimport ModuleContent, { ModuleData } from './components/module-content'\nimport AddModuleBtn, { ModuleValueType } from './components/add-module-btn'\nimport './styles/index.less'\nimport { EnumDataApi, ModuleConfigDataTypes, ModuleDataApi, SourceDataTypes } from './types'\nimport { AppProvider, useAppContext } from './context'\nimport AddStatisticsModal from './components/add-module-modal/add-statistics-modal'\nimport AddCalendarModal from './components/add-module-modal/add-calendar-modal'\nimport AddChartModal from './components/add-module-modal/add-chart-modal'\nimport './lang/index'\nimport { useTranslation } from 'react-i18next'\nimport '/node_modules/react-grid-layout/css/styles.css'\n\nimport { message, Modal } from 'antd'\nimport { ExclamationCircleOutlined } from '@ant-design/icons'\n\nimport ModuleHeader from './components/module-header'\nimport { findChangedItems } from './utils'\nimport { omit } from 'lodash-es'\n\nconst ResponsiveReactGridLayout = WidthProvider(Responsive)\n\ninterface DashboardWorkbenchProps {\n sourceData?: SourceDataTypes[]\n moduleConfigData?: ModuleConfigDataTypes\n fieldMap?: Record<string, string>\n lang?: 'zh-CN' | 'en-US'\n moduleDataApi?: ModuleDataApi\n enumDataApi?: EnumDataApi\n onCreateModule?: (val: ModuleData) => Promise<{ data: ModuleData }>\n onUpdateModule?: (val: ModuleData) => Promise<{ data: ModuleData }>\n onDeleteModule?: (val: string) => Promise<{ data: ModuleData }>\n onLayoutChange?: (layout: Layout[]) => void\n className?: string\n cols?: { lg: number; md: number; sm: number; xs: number; xxs: number }\n rowHeight?: number\n}\n\nconst DashboardWorkbench: React.FC<DashboardWorkbenchProps> = ({\n sourceData,\n moduleConfigData,\n fieldMap,\n moduleDataApi,\n enumDataApi,\n onCreateModule,\n onUpdateModule,\n onDeleteModule,\n lang,\n // onLayoutChange,\n className = 'layout',\n cols = { lg: 12, md: 12, sm: 12, xs: 12, xxs: 12 },\n rowHeight = 79,\n}) => {\n /* ============================== global =============================== */\n const { setGlobalData } = useAppContext()\n\n useEffect(() => {\n setGlobalData({ fieldMap, sourceData })\n }, [fieldMap, setGlobalData, sourceData])\n\n /* ============================== i18n =============================== */\n\n const { i18n, t } = useTranslation()\n useEffect(() => {\n i18n.changeLanguage(lang || 'zh_CN')\n }, [i18n, lang])\n\n /* ============================== modules =============================== */\n const [modules, setModules] = useState<ModuleData[] | undefined>([])\n const [activeId, setActiveId] = useState<ModuleData['id']>()\n\n useEffect(() => {\n setModules(\n moduleConfigData?.map(item => ({\n ...item,\n i: item.i ? item.i : item.id,\n })) || []\n )\n }, [moduleConfigData])\n\n const addModule = async (data: ModuleValueType) => {\n const wMultiple = data.type === 'calendar' ? 5 : 4\n const hMultiple = data.type === 'calendar' ? 5 : 3\n\n if (Array.isArray(modules) && data.type) {\n const newModuleData = {\n x: 0,\n y: 0,\n w: wMultiple,\n h: hMultiple,\n title: data.type.includes('chart') ? t('chartText') : title[data.type],\n ...data,\n type: data.type,\n }\n await onCreateModule?.(newModuleData).then((res: any) => {\n if (!res.success) {\n message.error(res.message)\n return\n }\n setModules([...modules, { ...newModuleData, i: res.data?.id, id: res.data?.id }])\n })\n }\n }\n\n // 单个\n const updateModule = async (id: ModuleData['id'], updatedProps: Partial<ModuleData>) => {\n if (modules?.length) {\n const oldData = modules.find(m => m.id === id)\n const updatedModule = {\n ...oldData!,\n ...updatedProps,\n }\n const modulesData = modules.map(m => (m.id === id ? updatedModule : m))\n setModules(modulesData)\n await onUpdateModule?.(updatedModule).then((res: any) => {\n if (!res.success) {\n message.error(res.message)\n return\n }\n })\n }\n }\n\n // 批量\n const updateModules = async (updatedItems: Partial<ModuleData>[]) => {\n if (!modules?.length || !updatedItems?.length) return\n const updatedModules = modules.map(module => {\n const update = updatedItems.find(item => item.id === module.id)\n return update ? { ...module, ...update } : module\n })\n setModules(updatedModules)\n try {\n for (const updatedItem of updatedItems) {\n const res: any = await onUpdateModule?.(updatedItem as ModuleData)\n if (!res?.success) {\n throw new Error(res?.message || `Failed to update module: ${updatedItem.id}`)\n }\n }\n } catch (error: any) {\n setModules(modules)\n message.error(error.message || 'Failed to update modules')\n }\n }\n\n const deleteModule = async (id: ModuleData['id']) => {\n if (modules?.length) {\n setModules(modules.filter(m => m.id !== id))\n await onDeleteModule?.(id || '')\n }\n }\n\n /* ============================== drag =============================== */\n\n const margins: [number, number] = [10, 10]\n const [rowWidth, setRowWidth] = useState(0)\n const [, setCurrentCols] = useState<number>(cols.lg)\n\n const [isDragOrResize, setIsDragOrResize] = useState(false)\n const [isDragOrResizeEnd, setIsDragOrResizeEnd] = useState(false)\n\n const onBreakpointChange = (_breakpoint: string, cols: number) => {\n setCurrentCols(cols)\n }\n\n const onDragResizeStop = (newLayout: Layout[]) => {\n const changedItems = findChangedItems(newLayout, modules as any)\n const newChangedItems = changedItems.map(item => {\n const module = modules?.find(module => module.i === item.i)\n return { ...module, ...item }\n })\n updateModules(newChangedItems)\n }\n\n const onDragStartOrEnd = (type: 'start' | 'end', newLayout?: Layout[]) => {\n if (type === 'start') {\n setIsDragOrResize(true)\n setIsDragOrResizeEnd(true)\n } else {\n setIsDragOrResize(false)\n setTimeout(() => {\n setIsDragOrResizeEnd(false)\n }, 500)\n onDragResizeStop(newLayout || [])\n }\n }\n\n /* ============================== split =============================== */\n\n const [selectModuleData, setSelectModuleData] = useState<ModuleData>()\n\n const [isShowAddStatisticsModal, setIsShowAddStatisticsModal] = useState<boolean>(false)\n const [isShowAddCalendarModal, setIsShowAddCalendarModal] = useState<boolean>(false)\n const [isShowAddChartModal, setIsShowAddChartModal] = useState<boolean>(false)\n\n const handleOpenCreateModal = (val: any) => {\n if (val === 'text') {\n const data = {\n type: val,\n customData: {\n title: t('text'),\n editor: [\n {\n type: 'paragraph',\n children: [\n {\n text: '',\n },\n ],\n },\n ],\n },\n }\n addModule(data)\n } else if (val === 'statistics') {\n setIsShowAddStatisticsModal(true)\n } else if (val === 'calendar') {\n setIsShowAddCalendarModal(true)\n } else if (val?.includes('chart')) {\n setIsShowAddChartModal(true)\n }\n\n setSelectModuleData({\n title: '',\n type: val,\n w: 0,\n h: 0,\n x: 0,\n y: 0,\n })\n }\n\n const commonModalProps = {\n moduleDataApi: moduleDataApi,\n enumDataApi: enumDataApi,\n selectModuleData: selectModuleData,\n }\n const handleModalSubmit = (data: Partial<ModuleData>) => {\n if (data.id) {\n updateModule(data.id, omit(data, 'id'))\n } else {\n addModule(data)\n }\n }\n\n /* ============================== split =============================== */\n\n const title: any = {\n text: t('pb.text'),\n calendar: t('calendarText'),\n statistics: t('chartText'),\n }\n\n return (\n <div className=\"pivot-table\">\n <div className=\"bitable-block-dashboard\">\n <div className=\"bitable-block-dashboard-toolbar bitable-toolbar\">\n <div className=\"bitable-block-dashboard-toolbar--left\">\n <AddModuleBtn\n onOk={val => {\n handleOpenCreateModal(val)\n }}\n />\n </div>\n </div>\n <div className=\"bitable-block-dashboard__mount\">\n <div className=\"dashboard-container\">\n <div\n className={`dashboard-content-container ${isDragOrResize ? 'isDragOrResize' : ''} ${\n isDragOrResizeEnd ? 'isDragOrResizeEnd' : ''\n }`}\n >\n <ResponsiveReactGridLayout\n onBreakpointChange={onBreakpointChange}\n className={className}\n compactType=\"vertical\"\n preventCollision={false}\n cols={cols}\n margin={margins}\n rowHeight={rowHeight}\n measureBeforeMount={false}\n draggableHandle=\".isCanDrag\"\n // draggableCancel=\".isNoCanDrag\"\n onWidthChange={(containerWidth, _margin, cols) => {\n setRowWidth(containerWidth / cols - 1)\n }}\n onDragStart={() => {\n onDragStartOrEnd('start')\n }}\n onDragStop={newLayout => {\n onDragStartOrEnd('end', newLayout)\n }}\n onResizeStart={() => {\n onDragStartOrEnd('start')\n }}\n onResizeStop={newLayout => {\n onDragStartOrEnd('end', newLayout)\n }}\n style={{\n backgroundSize: `${rowWidth}px ${rowHeight + margins[0]}px`,\n backgroundPosition: `${margins[0]}px ${margins[0]}px`,\n minHeight: '100vh',\n }}\n >\n {modules?.map(module => (\n <div\n className={`box-dashboard ${activeId === module.id ? 'active' : ''}`}\n onClick={() => {\n setActiveId(module.id)\n }}\n key={module.id}\n data-grid={{\n i: module.id,\n x: module.x || 0,\n y: module.y || 0, // puts it at the bottom\n w: module.w || 2,\n h: module.h || 2,\n minW: 2,\n minH: 2,\n }}\n >\n <ModuleHeader\n module={module}\n defaultValue={module.title}\n onChange={val =>\n updateModule(module.id, {\n title: val,\n })\n }\n onDropdownItem={key => {\n if (key === 'edit') {\n setActiveId(module.id)\n setSelectModuleData(module)\n if (module.type === 'statistics') {\n setIsShowAddStatisticsModal(true)\n }\n if (module.type?.includes('chart')) {\n setIsShowAddChartModal(true)\n }\n if (module.type === 'calendar') {\n setIsShowAddCalendarModal(true)\n }\n } else if (key === 'delete') {\n Modal.confirm({\n title: t('promptTitle'),\n icon: <ExclamationCircleOutlined />,\n content: t('promptContentDeleteComponents'),\n onOk() {\n deleteModule(module.id)\n },\n })\n } else if (key === 'copy') {\n const data = JSON.parse(JSON.stringify(module))\n delete data.id\n delete data.i\n addModule(data)\n }\n }}\n />\n\n <ModuleContent\n module={module}\n onUpdate={updateModule}\n moduleDataApi={moduleDataApi}\n activeId={activeId}\n onClick={() => {\n setActiveId(module.id)\n }}\n rowWidth={rowWidth}\n rowHeight={rowHeight}\n onEdit={() => {\n setActiveId(module.id)\n setSelectModuleData(module)\n if (module.type === 'statistics') {\n setIsShowAddStatisticsModal(true)\n }\n if (module.type?.includes('chart')) {\n setIsShowAddChartModal(true)\n }\n if (module.type === 'calendar') {\n setIsShowAddCalendarModal(true)\n }\n }}\n onDelete={() => {\n deleteModule(module.id)\n }}\n onCopy={() => {\n const data = JSON.parse(JSON.stringify(module))\n delete data.id\n delete data.i\n addModule(data)\n }}\n onStartDragOrResize={() => {\n setIsDragOrResize(true)\n }}\n onStopDragOrResize={() => {\n setIsDragOrResize(false)\n }}\n />\n </div>\n ))}\n </ResponsiveReactGridLayout>\n </div>\n </div>\n </div>\n </div>\n\n <AddStatisticsModal\n {...commonModalProps}\n open={isShowAddStatisticsModal}\n onClose={() => {\n setIsShowAddStatisticsModal(false)\n }}\n onOk={data => {\n handleModalSubmit({\n ...data,\n type: 'statistics',\n })\n setIsShowAddStatisticsModal(false)\n }}\n />\n\n <AddCalendarModal\n {...commonModalProps}\n open={isShowAddCalendarModal}\n onClose={() => {\n setIsShowAddCalendarModal(false)\n }}\n onOk={data => {\n handleModalSubmit({\n ...data,\n type: 'calendar',\n })\n setIsShowAddCalendarModal(false)\n }}\n />\n\n <AddChartModal\n {...commonModalProps}\n open={isShowAddChartModal}\n onClose={() => {\n setIsShowAddChartModal(false)\n }}\n onOk={data => {\n handleModalSubmit(data)\n setIsShowAddChartModal(false)\n }}\n />\n </div>\n )\n}\n\nexport default React.memo((props: DashboardWorkbenchProps) => {\n return (\n <AppProvider>\n <DashboardWorkbench {...props} />\n </AppProvider>\n )\n})\n"],"names":["cols","module","AddCalendarModal","AddChartModal"],"mappings":";;;;;;;;;;;;;;;;;;AAsBA,MAAM,4BAA4B,cAAc,UAAU;AAkB1D,MAAM,qBAAwD,CAAC;AAAA,EAC7D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA,YAAY;AAAA,EACZ,OAAO,EAAE,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,GAAG;AAAA,EACjD,YAAY;AACd,MAAM;AAEE,QAAA,EAAE,cAAc,IAAI,cAAc;AAExC,YAAU,MAAM;AACA,kBAAA,EAAE,UAAU,YAAY;AAAA,EACrC,GAAA,CAAC,UAAU,eAAe,UAAU,CAAC;AAIxC,QAAM,EAAE,MAAM,EAAE,IAAI,eAAe;AACnC,YAAU,MAAM;AACT,SAAA,eAAe,QAAQ,OAAO;AAAA,EAAA,GAClC,CAAC,MAAM,IAAI,CAAC;AAGf,QAAM,CAAC,SAAS,UAAU,IAAI,SAAmC,CAAA,CAAE;AACnE,QAAM,CAAC,UAAU,WAAW,IAAI,SAA2B;AAE3D,YAAU,MAAM;AACd;AAAA,OACE,qDAAkB,IAAI,CAAS,UAAA;AAAA,QAC7B,GAAG;AAAA,QACH,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK;AAAA,MAC5B,QAAO,CAAA;AAAA,IACT;AAAA,EAAA,GACC,CAAC,gBAAgB,CAAC;AAEf,QAAA,YAAY,OAAO,SAA0B;AACjD,UAAM,YAAY,KAAK,SAAS,aAAa,IAAI;AACjD,UAAM,YAAY,KAAK,SAAS,aAAa,IAAI;AAEjD,QAAI,MAAM,QAAQ,OAAO,KAAK,KAAK,MAAM;AACvC,YAAM,gBAAgB;AAAA,QACpB,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,OAAO,KAAK,KAAK,SAAS,OAAO,IAAI,EAAE,WAAW,IAAI,MAAM,KAAK,IAAI;AAAA,QACrE,GAAG;AAAA,QACH,MAAM,KAAK;AAAA,MACb;AACA,aAAM,iDAAiB,eAAe,KAAK,CAAC,QAAa;;AACnD,YAAA,CAAC,IAAI,SAAS;AACR,kBAAA,MAAM,IAAI,OAAO;AACzB;AAAA,QAAA;AAEF,mBAAW,CAAC,GAAG,SAAS,EAAE,GAAG,eAAe,IAAG,SAAI,SAAJ,mBAAU,IAAI,KAAI,SAAI,SAAJ,mBAAU,GAAI,CAAA,CAAC;AAAA,MAAA;AAAA,IACjF;AAAA,EAEL;AAGM,QAAA,eAAe,OAAO,IAAsB,iBAAsC;AACtF,QAAI,mCAAS,QAAQ;AACnB,YAAM,UAAU,QAAQ,KAAK,CAAK,MAAA,EAAE,OAAO,EAAE;AAC7C,YAAM,gBAAgB;AAAA,QACpB,GAAG;AAAA,QACH,GAAG;AAAA,MACL;AACM,YAAA,cAAc,QAAQ,IAAI,CAAA,MAAM,EAAE,OAAO,KAAK,gBAAgB,CAAE;AACtE,iBAAW,WAAW;AACtB,aAAM,iDAAiB,eAAe,KAAK,CAAC,QAAa;AACnD,YAAA,CAAC,IAAI,SAAS;AACR,kBAAA,MAAM,IAAI,OAAO;AACzB;AAAA,QAAA;AAAA,MACF;AAAA,IACD;AAAA,EAEL;AAGM,QAAA,gBAAgB,OAAO,iBAAwC;AACnE,QAAI,EAAC,mCAAS,WAAU,EAAC,6CAAc,QAAQ;AACzC,UAAA,iBAAiB,QAAQ,IAAI,CAAU,WAAA;AAC3C,YAAM,SAAS,aAAa,KAAK,UAAQ,KAAK,OAAO,OAAO,EAAE;AAC9D,aAAO,SAAS,EAAE,GAAG,QAAQ,GAAG,OAAW,IAAA;AAAA,IAAA,CAC5C;AACD,eAAW,cAAc;AACrB,QAAA;AACF,iBAAW,eAAe,cAAc;AAChC,cAAA,MAAW,OAAM,iDAAiB;AACpC,YAAA,EAAC,2BAAK,UAAS;AACjB,gBAAM,IAAI,OAAM,2BAAK,YAAW,4BAA4B,YAAY,EAAE,EAAE;AAAA,QAAA;AAAA,MAC9E;AAAA,aAEK,OAAY;AACnB,iBAAW,OAAO;AACV,cAAA,MAAM,MAAM,WAAW,0BAA0B;AAAA,IAAA;AAAA,EAE7D;AAEM,QAAA,eAAe,OAAO,OAAyB;AACnD,QAAI,mCAAS,QAAQ;AACnB,iBAAW,QAAQ,OAAO,CAAA,MAAK,EAAE,OAAO,EAAE,CAAC;AACrC,aAAA,iDAAiB,MAAM;AAAA,IAAE;AAAA,EAEnC;AAIM,QAAA,UAA4B,CAAC,IAAI,EAAE;AACzC,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,CAAC;AAC1C,QAAM,CAAG,EAAA,cAAc,IAAI,SAAiB,KAAK,EAAE;AAEnD,QAAM,CAAC,gBAAgB,iBAAiB,IAAI,SAAS,KAAK;AAC1D,QAAM,CAAC,mBAAmB,oBAAoB,IAAI,SAAS,KAAK;AAE1D,QAAA,qBAAqB,CAAC,aAAqBA,UAAiB;AAChE,mBAAeA,KAAI;AAAA,EACrB;AAEM,QAAA,mBAAmB,CAAC,cAAwB;AAC1C,UAAA,eAAe,iBAAiB,WAAW,OAAc;AACzD,UAAA,kBAAkB,aAAa,IAAI,CAAQ,SAAA;AACzC,YAAA,SAAS,mCAAS,KAAK,CAAAC,YAAUA,QAAO,MAAM,KAAK;AACzD,aAAO,EAAE,GAAG,QAAQ,GAAG,KAAK;AAAA,IAAA,CAC7B;AACD,kBAAc,eAAe;AAAA,EAC/B;AAEM,QAAA,mBAAmB,CAAC,MAAuB,cAAyB;AACxE,QAAI,SAAS,SAAS;AACpB,wBAAkB,IAAI;AACtB,2BAAqB,IAAI;AAAA,IAAA,OACpB;AACL,wBAAkB,KAAK;AACvB,iBAAW,MAAM;AACf,6BAAqB,KAAK;AAAA,SACzB,GAAG;AACW,uBAAA,aAAa,EAAE;AAAA,IAAA;AAAA,EAEpC;AAIA,QAAM,CAAC,kBAAkB,mBAAmB,IAAI,SAAqB;AAErE,QAAM,CAAC,0BAA0B,2BAA2B,IAAI,SAAkB,KAAK;AACvF,QAAM,CAAC,wBAAwB,yBAAyB,IAAI,SAAkB,KAAK;AACnF,QAAM,CAAC,qBAAqB,sBAAsB,IAAI,SAAkB,KAAK;AAEvE,QAAA,wBAAwB,CAAC,QAAa;AAC1C,QAAI,QAAQ,QAAQ;AAClB,YAAM,OAAO;AAAA,QACX,MAAM;AAAA,QACN,YAAY;AAAA,UACV,OAAO,EAAE,MAAM;AAAA,UACf,QAAQ;AAAA,YACN;AAAA,cACE,MAAM;AAAA,cACN,UAAU;AAAA,gBACR;AAAA,kBACE,MAAM;AAAA,gBAAA;AAAA,cACR;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAAA,MAEJ;AACA,gBAAU,IAAI;AAAA,IAAA,WACL,QAAQ,cAAc;AAC/B,kCAA4B,IAAI;AAAA,IAAA,WACvB,QAAQ,YAAY;AAC7B,gCAA0B,IAAI;AAAA,IACrB,WAAA,2BAAK,SAAS,UAAU;AACjC,6BAAuB,IAAI;AAAA,IAAA;AAGT,wBAAA;AAAA,MAClB,OAAO;AAAA,MACP,MAAM;AAAA,MACN,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,IAAA,CACJ;AAAA,EACH;AAEA,QAAM,mBAAmB;AAAA,IACvB;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACM,QAAA,oBAAoB,CAAC,SAA8B;AACvD,QAAI,KAAK,IAAI;AACX,mBAAa,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;AAAA,IAAA,OACjC;AACL,gBAAU,IAAI;AAAA,IAAA;AAAA,EAElB;AAIA,QAAM,QAAa;AAAA,IACjB,MAAM,EAAE,SAAS;AAAA,IACjB,UAAU,EAAE,cAAc;AAAA,IAC1B,YAAY,EAAE,WAAW;AAAA,EAC3B;AAGE,SAAA,qBAAC,OAAI,EAAA,WAAU,eACb,UAAA;AAAA,IAAC,qBAAA,OAAA,EAAI,WAAU,2BACb,UAAA;AAAA,MAAA,oBAAC,SAAI,WAAU,mDACb,UAAC,oBAAA,OAAA,EAAI,WAAU,yCACb,UAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,MAAM,CAAO,QAAA;AACX,kCAAsB,GAAG;AAAA,UAAA;AAAA,QAC3B;AAAA,SAEJ,EACF,CAAA;AAAA,0BACC,OAAI,EAAA,WAAU,kCACb,UAAC,oBAAA,OAAA,EAAI,WAAU,uBACb,UAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAW,+BAA+B,iBAAiB,mBAAmB,EAAE,KAC9E,oBAAoB,sBAAsB,EAC5C;AAAA,UAEA,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC;AAAA,cACA;AAAA,cACA,aAAY;AAAA,cACZ,kBAAkB;AAAA,cAClB;AAAA,cACA,QAAQ;AAAA,cACR;AAAA,cACA,oBAAoB;AAAA,cACpB,iBAAgB;AAAA,cAEhB,eAAe,CAAC,gBAAgB,SAASD,UAAS;AACpC,4BAAA,iBAAiBA,QAAO,CAAC;AAAA,cACvC;AAAA,cACA,aAAa,MAAM;AACjB,iCAAiB,OAAO;AAAA,cAC1B;AAAA,cACA,YAAY,CAAa,cAAA;AACvB,iCAAiB,OAAO,SAAS;AAAA,cACnC;AAAA,cACA,eAAe,MAAM;AACnB,iCAAiB,OAAO;AAAA,cAC1B;AAAA,cACA,cAAc,CAAa,cAAA;AACzB,iCAAiB,OAAO,SAAS;AAAA,cACnC;AAAA,cACA,OAAO;AAAA,gBACL,gBAAgB,GAAG,QAAQ,MAAM,YAAY,QAAQ,CAAC,CAAC;AAAA,gBACvD,oBAAoB,GAAG,QAAQ,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC;AAAA,gBACjD,WAAW;AAAA,cACb;AAAA,cAEC,UAAA,mCAAS,IAAI,CACZ,WAAA;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,WAAW,iBAAiB,aAAa,OAAO,KAAK,WAAW,EAAE;AAAA,kBAClE,SAAS,MAAM;AACb,gCAAY,OAAO,EAAE;AAAA,kBACvB;AAAA,kBAEA,aAAW;AAAA,oBACT,GAAG,OAAO;AAAA,oBACV,GAAG,OAAO,KAAK;AAAA,oBACf,GAAG,OAAO,KAAK;AAAA;AAAA,oBACf,GAAG,OAAO,KAAK;AAAA,oBACf,GAAG,OAAO,KAAK;AAAA,oBACf,MAAM;AAAA,oBACN,MAAM;AAAA,kBACR;AAAA,kBAEA,UAAA;AAAA,oBAAA;AAAA,sBAAC;AAAA,sBAAA;AAAA,wBACC;AAAA,wBACA,cAAc,OAAO;AAAA,wBACrB,UAAU,CAAA,QACR,aAAa,OAAO,IAAI;AAAA,0BACtB,OAAO;AAAA,wBAAA,CACR;AAAA,wBAEH,gBAAgB,CAAO,QAAA;;AACrB,8BAAI,QAAQ,QAAQ;AAClB,wCAAY,OAAO,EAAE;AACrB,gDAAoB,MAAM;AACtB,gCAAA,OAAO,SAAS,cAAc;AAChC,0DAA4B,IAAI;AAAA,4BAAA;AAElC,iCAAI,YAAO,SAAP,mBAAa,SAAS,UAAU;AAClC,qDAAuB,IAAI;AAAA,4BAAA;AAEzB,gCAAA,OAAO,SAAS,YAAY;AAC9B,wDAA0B,IAAI;AAAA,4BAAA;AAAA,0BAChC,WACS,QAAQ,UAAU;AAC3B,kCAAM,QAAQ;AAAA,8BACZ,OAAO,EAAE,aAAa;AAAA,8BACtB,0BAAO,2BAA0B,EAAA;AAAA,8BACjC,SAAS,EAAE,+BAA+B;AAAA,8BAC1C,OAAO;AACL,6CAAa,OAAO,EAAE;AAAA,8BAAA;AAAA,4BACxB,CACD;AAAA,0BAAA,WACQ,QAAQ,QAAQ;AACzB,kCAAM,OAAO,KAAK,MAAM,KAAK,UAAU,MAAM,CAAC;AAC9C,mCAAO,KAAK;AACZ,mCAAO,KAAK;AACZ,sCAAU,IAAI;AAAA,0BAAA;AAAA,wBAChB;AAAA,sBACF;AAAA,oBACF;AAAA,oBAEA;AAAA,sBAAC;AAAA,sBAAA;AAAA,wBACC;AAAA,wBACA,UAAU;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA,SAAS,MAAM;AACb,sCAAY,OAAO,EAAE;AAAA,wBACvB;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA,QAAQ,MAAM;;AACZ,sCAAY,OAAO,EAAE;AACrB,8CAAoB,MAAM;AACtB,8BAAA,OAAO,SAAS,cAAc;AAChC,wDAA4B,IAAI;AAAA,0BAAA;AAElC,+BAAI,YAAO,SAAP,mBAAa,SAAS,UAAU;AAClC,mDAAuB,IAAI;AAAA,0BAAA;AAEzB,8BAAA,OAAO,SAAS,YAAY;AAC9B,sDAA0B,IAAI;AAAA,0BAAA;AAAA,wBAElC;AAAA,wBACA,UAAU,MAAM;AACd,uCAAa,OAAO,EAAE;AAAA,wBACxB;AAAA,wBACA,QAAQ,MAAM;AACZ,gCAAM,OAAO,KAAK,MAAM,KAAK,UAAU,MAAM,CAAC;AAC9C,iCAAO,KAAK;AACZ,iCAAO,KAAK;AACZ,oCAAU,IAAI;AAAA,wBAChB;AAAA,wBACA,qBAAqB,MAAM;AACzB,4CAAkB,IAAI;AAAA,wBACxB;AAAA,wBACA,oBAAoB,MAAM;AACxB,4CAAkB,KAAK;AAAA,wBAAA;AAAA,sBACzB;AAAA,oBAAA;AAAA,kBACF;AAAA,gBAAA;AAAA,gBAxFK,OAAO;AAAA,cA0Ff;AAAA,YAAA;AAAA,UAAA;AAAA,QACH;AAAA,SAEJ,EACF,CAAA;AAAA,IAAA,GACF;AAAA,IAEA;AAAA,MAAC;AAAA,MAAA;AAAA,QACE,GAAG;AAAA,QACJ,MAAM;AAAA,QACN,SAAS,MAAM;AACb,sCAA4B,KAAK;AAAA,QACnC;AAAA,QACA,MAAM,CAAQ,SAAA;AACM,4BAAA;AAAA,YAChB,GAAG;AAAA,YACH,MAAM;AAAA,UAAA,CACP;AACD,sCAA4B,KAAK;AAAA,QAAA;AAAA,MACnC;AAAA,IACF;AAAA,IAEA;AAAA,MAACE;AAAAA,MAAA;AAAA,QACE,GAAG;AAAA,QACJ,MAAM;AAAA,QACN,SAAS,MAAM;AACb,oCAA0B,KAAK;AAAA,QACjC;AAAA,QACA,MAAM,CAAQ,SAAA;AACM,4BAAA;AAAA,YAChB,GAAG;AAAA,YACH,MAAM;AAAA,UAAA,CACP;AACD,oCAA0B,KAAK;AAAA,QAAA;AAAA,MACjC;AAAA,IACF;AAAA,IAEA;AAAA,MAACC;AAAAA,MAAA;AAAA,QACE,GAAG;AAAA,QACJ,MAAM;AAAA,QACN,SAAS,MAAM;AACb,iCAAuB,KAAK;AAAA,QAC9B;AAAA,QACA,MAAM,CAAQ,SAAA;AACZ,4BAAkB,IAAI;AACtB,iCAAuB,KAAK;AAAA,QAAA;AAAA,MAC9B;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;AAEA,MAAA,QAAe,MAAM,KAAK,CAAC,UAAmC;AAC5D,6BACG,aACC,EAAA,UAAA,oBAAC,oBAAoB,EAAA,GAAG,MAAO,CAAA,GACjC;AAEJ,CAAC;"}
@@ -0,0 +1,147 @@
1
+ declare const _default: {
2
+ pb: {
3
+ text: string;
4
+ statisticsText: string;
5
+ unknown: string;
6
+ };
7
+ statistics: {
8
+ t1: string;
9
+ t2: string;
10
+ t3: string;
11
+ t4: string;
12
+ t5: string;
13
+ t6: string;
14
+ t7: string;
15
+ t8: string;
16
+ t9: string;
17
+ t10: string;
18
+ t11: string;
19
+ t12: string;
20
+ t13: string;
21
+ };
22
+ chart: {
23
+ t1: string;
24
+ t2: string;
25
+ t3: string;
26
+ t4: string;
27
+ t5: string;
28
+ t6: string;
29
+ t7: string;
30
+ t8: string;
31
+ t9: string;
32
+ t10: string;
33
+ t11: string;
34
+ t12: string;
35
+ t13: string;
36
+ t14: string;
37
+ t15: string;
38
+ t16: string;
39
+ t17: string;
40
+ t18: string;
41
+ t19: string;
42
+ t20: string;
43
+ t21: string;
44
+ t22: string;
45
+ t23: string;
46
+ t24: string;
47
+ t25: string;
48
+ t26: string;
49
+ t27: string;
50
+ t28: string;
51
+ t29: string;
52
+ t30: string;
53
+ t31: string;
54
+ t32: string;
55
+ t33: string;
56
+ t34: string;
57
+ t35: string;
58
+ t36: string;
59
+ t37: string;
60
+ t38: string;
61
+ };
62
+ calendar: {
63
+ t1: string;
64
+ t2: string;
65
+ t3: string;
66
+ t4: string;
67
+ };
68
+ add: {
69
+ add1: string;
70
+ add2: string;
71
+ add3: string;
72
+ add4: string;
73
+ add5: string;
74
+ add6: string;
75
+ add7: string;
76
+ add8: string;
77
+ add9: string;
78
+ add10: string;
79
+ add11: string;
80
+ add12: string;
81
+ add13: string;
82
+ add14: string;
83
+ add15: string;
84
+ add16: string;
85
+ add17: string;
86
+ add18: string;
87
+ add19: string;
88
+ add20: string;
89
+ add21: string;
90
+ add22: string;
91
+ add23: string;
92
+ add24: string;
93
+ add25: string;
94
+ add26: string;
95
+ add27: string;
96
+ add28: string;
97
+ add29: string;
98
+ add30: string;
99
+ add31: string;
100
+ add32: string;
101
+ add33: string;
102
+ add34: string;
103
+ };
104
+ title: string;
105
+ text: string;
106
+ confirm: string;
107
+ pleaseEnter: string;
108
+ configuration: string;
109
+ copy: string;
110
+ delete: string;
111
+ calendarText: string;
112
+ chartText: string;
113
+ promptTitle: string;
114
+ promptContentDeleteComponents: string;
115
+ unnamedRecord: string;
116
+ setFilteringCriteria: string;
117
+ all: string;
118
+ everyone: string;
119
+ condition: string;
120
+ addCondition: string;
121
+ equalto: string;
122
+ notequalto: string;
123
+ contain: string;
124
+ notcontain: string;
125
+ null: string;
126
+ notnull: string;
127
+ conformTo: string;
128
+ statisticsText: string;
129
+ typeData: string;
130
+ customStyle: string;
131
+ dataSource: string;
132
+ dataRange: string;
133
+ data: string;
134
+ filterData: string;
135
+ selectNcondition: string;
136
+ allData: string;
137
+ statisticstMethods: string;
138
+ statisticstRecordNum: string;
139
+ statisticstFieldVal: string;
140
+ selectField: string;
141
+ sumVal: string;
142
+ maxVal: string;
143
+ minVal: string;
144
+ averageVal: string;
145
+ empty: string;
146
+ };
147
+ export default _default;