@platox/pivot-table 0.0.69 → 0.0.72
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.
- package/es/dashboard-workbench/components/InputWrapper/index.d.ts +5 -1
- package/es/dashboard-workbench/components/InputWrapper/index.js +10 -4
- package/es/dashboard-workbench/components/InputWrapper/index.js.map +1 -1
- package/es/dashboard-workbench/components/SelectWrapper/index.js +15 -17
- package/es/dashboard-workbench/components/SelectWrapper/index.js.map +1 -1
- package/es/dashboard-workbench/components/add-module-modal/add-calendar-modal/custome-data.js +5 -6
- package/es/dashboard-workbench/components/add-module-modal/add-calendar-modal/custome-data.js.map +1 -1
- package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/components/GroupFieldConfigPicker.js.map +1 -1
- package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-data.js +9 -10
- package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-data.js.map +1 -1
- package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-styles.js +4 -3
- package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-styles.js.map +1 -1
- package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-data.js +7 -6
- package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-data.js.map +1 -1
- package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-styles.js +4 -4
- package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-styles.js.map +1 -1
- package/es/dashboard-workbench/components/add-module-modal/components/condition-modal/EnumSelect.js +5 -5
- package/es/dashboard-workbench/components/add-module-modal/components/condition-modal/EnumSelect.js.map +1 -1
- package/es/dashboard-workbench/components/add-module-modal/components/condition-modal/index.js +197 -167
- package/es/dashboard-workbench/components/add-module-modal/components/condition-modal/index.js.map +1 -1
- package/es/dashboard-workbench/components/global-filter-condition/ConditionSymbolAndValuePicker.js +25 -6
- package/es/dashboard-workbench/components/global-filter-condition/ConditionSymbolAndValuePicker.js.map +1 -1
- package/es/dashboard-workbench/components/global-filter-condition/FieldPicker.d.ts +1 -0
- package/es/dashboard-workbench/components/global-filter-condition/FieldPicker.js +2 -3
- package/es/dashboard-workbench/components/global-filter-condition/FieldPicker.js.map +1 -1
- package/es/dashboard-workbench/components/global-filter-condition/index.js +5 -4
- package/es/dashboard-workbench/components/global-filter-condition/index.js.map +1 -1
- package/es/dashboard-workbench/components/module-content/calendar-module/index.js +1 -0
- package/es/dashboard-workbench/components/module-content/calendar-module/index.js.map +1 -1
- package/es/dashboard-workbench/components/module-content/chart-module/index.js +7 -0
- package/es/dashboard-workbench/components/module-content/chart-module/index.js.map +1 -1
- package/es/dashboard-workbench/components/module-content/utils.d.ts +1 -0
- package/es/dashboard-workbench/components/module-content/utils.js +1 -0
- package/es/dashboard-workbench/components/module-content/utils.js.map +1 -1
- package/es/dashboard-workbench/context.d.ts +2 -0
- package/es/dashboard-workbench/context.js.map +1 -1
- package/es/dashboard-workbench/index.js +8 -13
- package/es/dashboard-workbench/index.js.map +1 -1
- package/es/dashboard-workbench/types.d.ts +1 -0
- package/es/dashboard-workbench/utils/index.js.map +1 -1
- package/package.json +1 -1
- package/umd/pivot-table.umd.cjs +46 -46
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { InputProps } from 'antd';
|
|
2
|
+
export type InputWrapperProps = Omit<InputProps, 'onChange'> & {
|
|
3
|
+
value?: string;
|
|
4
|
+
onChange?: (v?: string) => void;
|
|
5
|
+
};
|
|
2
6
|
export declare const InputWrapper: {
|
|
3
|
-
(props:
|
|
7
|
+
(props: InputWrapperProps): import("react/jsx-runtime").JSX.Element;
|
|
4
8
|
displayName: string;
|
|
5
9
|
};
|
|
6
10
|
export default InputWrapper;
|
|
@@ -1,15 +1,21 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useRef } from "react";
|
|
2
3
|
import { Input } from "antd";
|
|
3
4
|
const InputWrapper = (props) => {
|
|
5
|
+
const valueRef = useRef(props.value);
|
|
4
6
|
return /* @__PURE__ */ jsx(
|
|
5
7
|
Input,
|
|
6
8
|
{
|
|
7
9
|
...props,
|
|
8
10
|
onChange: (e) => {
|
|
9
|
-
var _a
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
var _a;
|
|
12
|
+
valueRef.current = e.target.value;
|
|
13
|
+
(_a = props == null ? void 0 : props.onChange) == null ? void 0 : _a.call(props, e.target.value);
|
|
14
|
+
},
|
|
15
|
+
onBlur: () => {
|
|
16
|
+
var _a;
|
|
17
|
+
let value = `${(props == null ? void 0 : props.value) || valueRef.current || ""}`;
|
|
18
|
+
(_a = props == null ? void 0 : props.onChange) == null ? void 0 : _a.call(props, value.trim());
|
|
13
19
|
}
|
|
14
20
|
}
|
|
15
21
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../packages/dashboard-workbench/components/InputWrapper/index.tsx"],"sourcesContent":["import { Input, InputProps } from 'antd'\n\nexport const InputWrapper = (props:
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../packages/dashboard-workbench/components/InputWrapper/index.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { Input, InputProps } from 'antd'\nimport { useControllableValue } from 'ahooks'\n\nexport type InputWrapperProps = Omit<InputProps, 'onChange'> & {\n value?: string\n onChange?: (v?: string) => void\n}\n\nexport const InputWrapper = (props: InputWrapperProps) => {\n const valueRef = useRef(props.value)\n return (\n <Input\n {...props}\n onChange={e => {\n valueRef.current = e.target.value\n props?.onChange?.(e.target.value)\n }}\n onBlur={() => {\n let value = `${props?.value || valueRef.current || ''}`\n props?.onChange?.(value.trim())\n }}\n />\n )\n}\n\nInputWrapper.displayName = 'InputWrapper'\n\nexport default InputWrapper\n"],"names":[],"mappings":";;;AASa,MAAA,eAAe,CAAC,UAA6B;AAClD,QAAA,WAAW,OAAO,MAAM,KAAK;AAEjC,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,MACJ,UAAU,CAAK,MAAA;;AACJ,iBAAA,UAAU,EAAE,OAAO;AACrB,6CAAA,aAAA,+BAAW,EAAE,OAAO;AAAA,MAC7B;AAAA,MACA,QAAQ,MAAM;;AACZ,YAAI,QAAQ,IAAG,+BAAO,UAAS,SAAS,WAAW,EAAE;AAC9C,6CAAA,aAAA,+BAAW,MAAM;MAAM;AAAA,IAChC;AAAA,EACF;AAEJ;AAEA,aAAa,cAAc;"}
|
|
@@ -1,20 +1,18 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
SelectWrapper.displayName = "SelectWrapper";
|
|
1
|
+
import "react/jsx-runtime";
|
|
2
|
+
import "react";
|
|
3
|
+
import "antd";
|
|
4
|
+
function getSafeRegExp(str) {
|
|
5
|
+
if (!str) {
|
|
6
|
+
return null;
|
|
7
|
+
}
|
|
8
|
+
try {
|
|
9
|
+
const safePattern = str.trim().replace(/([\^\$\.\|\*\+\?\{\\\[\(\)])/g, "\\$1");
|
|
10
|
+
return new RegExp(safePattern, "i");
|
|
11
|
+
} catch (error) {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
16
15
|
export {
|
|
17
|
-
|
|
18
|
-
SelectWrapper as default
|
|
16
|
+
getSafeRegExp
|
|
19
17
|
};
|
|
20
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../packages/dashboard-workbench/components/SelectWrapper/index.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { Select, SelectProps } from 'antd'\nimport type { BaseOptionType, DefaultOptionType } from 'antd/es/select'\n\nexport const SelectWrapper = <\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ValueType = any,\n OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType,\n>(\n props: SelectProps<ValueType, OptionType>\n) => {\n const [searchText, setSearchText] = useState<string>('')\n\n return (\n <Select\n
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../packages/dashboard-workbench/components/SelectWrapper/index.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { Select, SelectProps } from 'antd'\nimport type { BaseOptionType, DefaultOptionType } from 'antd/es/select'\n\nexport const SelectWrapper = <\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ValueType = any,\n OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType,\n>(\n props: SelectProps<ValueType, OptionType>\n) => {\n const [searchText, setSearchText] = useState<string>('')\n\n return (\n <Select\n searchValue={searchText}\n onSearch={text => setSearchText(text.trim())}\n {...props}\n // filterOption={(input, option) => {\n // const reg = getSafeRegExp(input)\n // return reg ? reg?.test(option?.label ?? '') : false\n // }}\n />\n )\n}\n\nSelectWrapper.displayName = 'SelectWrapper'\n\nexport default SelectWrapper\n\n/* ============================== split =============================== */\n\n/**\n * @description escape Regular_Expressions special_characters '^$.|*+?{\\\\[()'\n * eg: '^\\+[1-9]\\d{1,14}$' 导致正则报错\n */\nexport function getSafeRegExp(str?: string) {\n if (!str) {\n return null\n }\n try {\n // see: https://github.com/rsuite/rsuite/blob/17c6f7dfb7afa5861ec0528bf8d303f6c0227caf/src/internals/utils/getSafeRegExpString.ts\n // eslint-disable-next-line no-useless-escape\n const safePattern = str.trim().replace(/([\\^\\$\\.\\|\\*\\+\\?\\{\\\\\\[\\(\\)])/g, '\\\\$1')\n return new RegExp(safePattern, 'i')\n } catch (error) {\n return null\n }\n}\n"],"names":[],"mappings":";;;AAoCO,SAAS,cAAc,KAAc;AAC1C,MAAI,CAAC,KAAK;AACD,WAAA;AAAA,EAAA;AAEL,MAAA;AAGF,UAAM,cAAc,IAAI,KAAO,EAAA,QAAQ,iCAAiC,MAAM;AACvE,WAAA,IAAI,OAAO,aAAa,GAAG;AAAA,WAC3B,OAAO;AACP,WAAA;AAAA,EAAA;AAEX;"}
|
package/es/dashboard-workbench/components/add-module-modal/add-calendar-modal/custome-data.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useMemo, useState, useRef, useEffect } from "react";
|
|
3
|
-
import { Form, Button, Divider } from "antd";
|
|
3
|
+
import { Form, Select, Button, Divider } from "antd";
|
|
4
4
|
import { useTranslation } from "react-i18next";
|
|
5
5
|
import { useMemoizedFn, useDebounceFn } from "ahooks";
|
|
6
6
|
import { useAppContext } from "../../../context.js";
|
|
7
|
-
import { SelectWrapper } from "../../SelectWrapper/index.js";
|
|
8
7
|
import ConditionModal from "../components/condition-modal/index.js";
|
|
9
8
|
const CustomData = ({
|
|
10
9
|
selectModuleData,
|
|
@@ -128,7 +127,7 @@ const CustomData = ({
|
|
|
128
127
|
children: t("data")
|
|
129
128
|
}
|
|
130
129
|
),
|
|
131
|
-
/* @__PURE__ */ jsx(Form.Item, { label: t("dataSource"), name: "dataSourceId", children: /* @__PURE__ */ jsx(
|
|
130
|
+
/* @__PURE__ */ jsx(Form.Item, { label: t("dataSource"), name: "dataSourceId", children: /* @__PURE__ */ jsx(Select, { options: dataSourceOptions }) }),
|
|
132
131
|
/* @__PURE__ */ jsxs(Form.Item, { label: t("dataRange"), children: [
|
|
133
132
|
/* @__PURE__ */ jsx(
|
|
134
133
|
Button,
|
|
@@ -144,9 +143,9 @@ const CustomData = ({
|
|
|
144
143
|
conditionDataNum > 0 ? `${t("selectNcondition", { n: conditionDataNum })}` : null
|
|
145
144
|
] }),
|
|
146
145
|
/* @__PURE__ */ jsx(Divider, { orientation: "left", orientationMargin: "0", children: t("calendar.t1") }),
|
|
147
|
-
/* @__PURE__ */ jsx(Form.Item, { label: t("calendar.t2"), name: "startDateField", children: /* @__PURE__ */ jsx(
|
|
148
|
-
/* @__PURE__ */ jsx(Form.Item, { label: t("calendar.t3"), name: "endDateField", children: /* @__PURE__ */ jsx(
|
|
149
|
-
/* @__PURE__ */ jsx(Form.Item, { label: t("calendar.t4"), name: "titleField", children: /* @__PURE__ */ jsx(
|
|
146
|
+
/* @__PURE__ */ jsx(Form.Item, { label: t("calendar.t2"), name: "startDateField", children: /* @__PURE__ */ jsx(Select, { options: timeFieldOptions }) }),
|
|
147
|
+
/* @__PURE__ */ jsx(Form.Item, { label: t("calendar.t3"), name: "endDateField", children: /* @__PURE__ */ jsx(Select, { options: timeFieldOptions }) }),
|
|
148
|
+
/* @__PURE__ */ jsx(Form.Item, { label: t("calendar.t4"), name: "titleField", children: /* @__PURE__ */ jsx(Select, { options: fieldOptions }) })
|
|
150
149
|
]
|
|
151
150
|
}
|
|
152
151
|
),
|
package/es/dashboard-workbench/components/add-module-modal/add-calendar-modal/custome-data.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custome-data.js","sources":["../../../../../packages/dashboard-workbench/components/add-module-modal/add-calendar-modal/custome-data.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { useEffect, useMemo, useRef, useState } from 'react'\nimport { Button, Divider, Form, Select } from 'antd'\nimport { useTranslation } from 'react-i18next'\nimport { useDebounceFn, useMemoizedFn } from 'ahooks'\nimport { ConditionListItem } from '@platox/pivot-table/components/add-module-modal/components/condition-modal/interface'\nimport { useAppContext } from '../../../context'\nimport { EnumDataApi } from '../../../types'\nimport { ModuleData } from '../../module-content'\nimport SelectWrapper from '../../SelectWrapper'\nimport ConditionModal from '../components/condition-modal'\n\nexport type CalendarCustomeDataTypes = {\n dataSourceId?: string\n conditionData?: {\n conditionList: ConditionListItem[]\n conditionType: 'all' | 'any'\n }\n startDateField?: string\n endDateField?: string\n titleField: 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 /* ============================== split =============================== */\n const { globalData } = useAppContext()\n const { t } = useTranslation()\n\n /* ============================== split =============================== */\n const initialValues = {\n dataSourceId: '',\n startDateField: '',\n endDateField: '',\n titleField: '',\n }\n const [form] = Form.useForm()\n const dataSourceId = Form.useWatch('dataSourceId', form)\n\n const getDataSourceOption = useMemoizedFn(() => {\n // 产品约定过滤字段\n const filterField: string[] = ['customers', 'vendors', 'payees']\n let ret = (globalData?.sourceData ?? []).filter(v => {\n return !filterField.includes(v.value)\n })\n return ret\n })\n\n const dataSourceOptions = useMemo(() => {\n return getDataSourceOption()\n }, [globalData?.sourceData])\n\n const getFieldOptions = useMemoizedFn((dataSourceId?: string) => {\n const list = globalData?.sourceData?.find(item => item.value === dataSourceId)?.fields ?? []\n return list\n })\n const { fieldOptions, timeFieldOptions } = useMemo(() => {\n const fieldOptions = getFieldOptions(dataSourceId)\n const timeFieldOptions = fieldOptions?.filter(item => item.type === 'timestamp')\n return {\n fieldOptions,\n timeFieldOptions,\n }\n }, [dataSourceId])\n\n /* ============================== split =============================== */\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\n /* ============================== split =============================== */\n // debounc 2个作用 一个默认值的设置会延后,另一个是防止多次请求\n const { run: debounceSubmit } = useDebounceFn(\n useMemoizedFn(() => {\n onAllValuesChange?.({\n ...form.getFieldsValue(),\n conditionData: conditionDataRef.current,\n })\n }),\n {\n wait: 100,\n }\n )\n\n const handleValuesChange = useMemoizedFn((changedValues, allValues) => {\n if (changedValues.dataSourceId) {\n const newFieldOptions = getFieldOptions(changedValues.dataSourceId)\n const timeFieldOptions = fieldOptions.filter(item => item.type === 'timestamp')\n form.setFieldsValue({\n titleField: newFieldOptions?.[0]?.value,\n startDateField: timeFieldOptions?.[0]?.value,\n endDateField: timeFieldOptions?.[0]?.value,\n })\n setCondition({\n conditionList: [],\n conditionType: 'all',\n })\n }\n\n debounceSubmit()\n })\n\n useEffect(() => {\n if (selectModuleData?.customData) {\n const customData = selectModuleData.customData\n form.setFieldsValue(customData)\n } else {\n const dataSourceOptions = getDataSourceOption()\n const dataSourceId = dataSourceOptions?.[0]?.value\n const fieldOptions = getFieldOptions(dataSourceId)\n const timeFieldOptions = fieldOptions.filter(item => item.type === 'timestamp')\n form.setFieldsValue({\n ...initialValues,\n dataSourceId: dataSourceId,\n titleField: fieldOptions?.[0]?.value,\n startDateField: timeFieldOptions?.[0].value,\n endDateField: timeFieldOptions?.[0].value,\n })\n debounceSubmit()\n }\n setCondition(selectModuleData?.customData?.conditionData)\n }, [selectModuleData, globalData])\n\n return (\n <>\n <Form\n form={form}\n name=\"customData\"\n labelCol={{ span: 8 }}\n wrapperCol={{ span: 16 }}\n labelAlign=\"left\"\n onValuesChange={handleValuesChange}\n initialValues={initialValues}\n >\n <div\n style={{\n fontSize: '14px',\n marginBottom: '5px',\n }}\n >\n {t('data')}\n </div>\n\n <Form.Item<CalendarCustomeDataTypes> label={t('dataSource')} name=\"dataSourceId\">\n <SelectWrapper options={dataSourceOptions} />\n </Form.Item>\n\n <Form.Item<CalendarCustomeDataTypes> 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 orientation=\"left\" orientationMargin=\"0\">\n {t('calendar.t1')}\n </Divider>\n\n <Form.Item<CalendarCustomeDataTypes> label={t('calendar.t2')} name=\"startDateField\">\n <SelectWrapper options={timeFieldOptions} />\n </Form.Item>\n\n <Form.Item<CalendarCustomeDataTypes> label={t('calendar.t3')} name=\"endDateField\">\n <SelectWrapper options={timeFieldOptions} />\n </Form.Item>\n\n <Form.Item<CalendarCustomeDataTypes> label={t('calendar.t4')} name=\"titleField\">\n <SelectWrapper options={fieldOptions} />\n </Form.Item>\n </Form>\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 debounceSubmit()\n }}\n />\n </>\n )\n}\nexport default CustomData\n"],"names":["dataSourceId","fieldOptions","timeFieldOptions","dataSourceOptions"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"custome-data.js","sources":["../../../../../packages/dashboard-workbench/components/add-module-modal/add-calendar-modal/custome-data.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { useEffect, useMemo, useRef, useState } from 'react'\nimport { Button, Divider, Form, Select } from 'antd'\nimport { useTranslation } from 'react-i18next'\nimport { useDebounceFn, useMemoizedFn } from 'ahooks'\nimport { ConditionListItem } from '@platox/pivot-table/components/add-module-modal/components/condition-modal/interface'\nimport { useAppContext } from '../../../context'\nimport { EnumDataApi } from '../../../types'\nimport { ModuleData } from '../../module-content'\nimport ConditionModal from '../components/condition-modal'\n\nexport type CalendarCustomeDataTypes = {\n dataSourceId?: string\n conditionData?: {\n conditionList: ConditionListItem[]\n conditionType: 'all' | 'any'\n }\n startDateField?: string\n endDateField?: string\n titleField: 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 /* ============================== split =============================== */\n const { globalData } = useAppContext()\n const { t } = useTranslation()\n\n /* ============================== split =============================== */\n const initialValues = {\n dataSourceId: '',\n startDateField: '',\n endDateField: '',\n titleField: '',\n }\n const [form] = Form.useForm()\n const dataSourceId = Form.useWatch('dataSourceId', form)\n\n const getDataSourceOption = useMemoizedFn(() => {\n // 产品约定过滤字段\n const filterField: string[] = ['customers', 'vendors', 'payees']\n let ret = (globalData?.sourceData ?? []).filter(v => {\n return !filterField.includes(v.value)\n })\n return ret\n })\n\n const dataSourceOptions = useMemo(() => {\n return getDataSourceOption()\n }, [globalData?.sourceData])\n\n const getFieldOptions = useMemoizedFn((dataSourceId?: string) => {\n const list = globalData?.sourceData?.find(item => item.value === dataSourceId)?.fields ?? []\n return list\n })\n const { fieldOptions, timeFieldOptions } = useMemo(() => {\n const fieldOptions = getFieldOptions(dataSourceId)\n const timeFieldOptions = fieldOptions?.filter(item => item.type === 'timestamp')\n\n return {\n fieldOptions,\n timeFieldOptions,\n }\n }, [dataSourceId])\n\n /* ============================== split =============================== */\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\n /* ============================== split =============================== */\n // debounc 2个作用 一个默认值的设置会延后,另一个是防止多次请求\n const { run: debounceSubmit } = useDebounceFn(\n useMemoizedFn(() => {\n onAllValuesChange?.({\n ...form.getFieldsValue(),\n conditionData: conditionDataRef.current,\n })\n }),\n {\n wait: 100,\n }\n )\n\n const handleValuesChange = useMemoizedFn((changedValues, allValues) => {\n if (changedValues.dataSourceId) {\n const newFieldOptions = getFieldOptions(changedValues.dataSourceId)\n const timeFieldOptions = fieldOptions.filter(item => item.type === 'timestamp')\n form.setFieldsValue({\n titleField: newFieldOptions?.[0]?.value,\n startDateField: timeFieldOptions?.[0]?.value,\n endDateField: timeFieldOptions?.[0]?.value,\n })\n setCondition({\n conditionList: [],\n conditionType: 'all',\n })\n }\n\n debounceSubmit()\n })\n\n useEffect(() => {\n if (selectModuleData?.customData) {\n const customData = selectModuleData.customData\n form.setFieldsValue(customData)\n } else {\n const dataSourceOptions = getDataSourceOption()\n const dataSourceId = dataSourceOptions?.[0]?.value\n const fieldOptions = getFieldOptions(dataSourceId)\n const timeFieldOptions = fieldOptions.filter(item => item.type === 'timestamp')\n form.setFieldsValue({\n ...initialValues,\n dataSourceId: dataSourceId,\n titleField: fieldOptions?.[0]?.value,\n startDateField: timeFieldOptions?.[0].value,\n endDateField: timeFieldOptions?.[0].value,\n })\n debounceSubmit()\n }\n setCondition(selectModuleData?.customData?.conditionData)\n }, [selectModuleData, globalData])\n\n return (\n <>\n <Form\n form={form}\n name=\"customData\"\n labelCol={{ span: 8 }}\n wrapperCol={{ span: 16 }}\n labelAlign=\"left\"\n onValuesChange={handleValuesChange}\n initialValues={initialValues}\n >\n <div\n style={{\n fontSize: '14px',\n marginBottom: '5px',\n }}\n >\n {t('data')}\n </div>\n\n <Form.Item<CalendarCustomeDataTypes> label={t('dataSource')} name=\"dataSourceId\">\n <Select options={dataSourceOptions} />\n </Form.Item>\n\n <Form.Item<CalendarCustomeDataTypes> 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 orientation=\"left\" orientationMargin=\"0\">\n {t('calendar.t1')}\n </Divider>\n\n <Form.Item<CalendarCustomeDataTypes> label={t('calendar.t2')} name=\"startDateField\">\n <Select options={timeFieldOptions} />\n </Form.Item>\n\n <Form.Item<CalendarCustomeDataTypes> label={t('calendar.t3')} name=\"endDateField\">\n <Select options={timeFieldOptions} />\n </Form.Item>\n\n <Form.Item<CalendarCustomeDataTypes> label={t('calendar.t4')} name=\"titleField\">\n <Select options={fieldOptions} />\n </Form.Item>\n </Form>\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 debounceSubmit()\n }}\n />\n </>\n )\n}\nexport default CustomData\n"],"names":["dataSourceId","fieldOptions","timeFieldOptions","dataSourceOptions"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupFieldConfigPicker.js","sources":["../../../../../../packages/dashboard-workbench/components/add-module-modal/add-chart-modal/components/GroupFieldConfigPicker.tsx"],"sourcesContent":["import { useEffect, useMemo, type CSSProperties } from 'react'\nimport clsx from 'clsx'\nimport { Input, Tooltip } from 'antd'\nimport { useControllableValue, useMemoizedFn } from 'ahooks'\nimport InputWrapper from '@platox/pivot-table/components/InputWrapper'\nimport { ChartCustomDataType, ChartType, CombinationChartConfig } from '../interface'\nimport { CombinationChartOptionPicker } from './CombinationChartOptionPicker'\nimport styles from './index.module.less'\n\nconst componentName = 'group-field-config-picker'\n\nconst empty: unknown[] = []\n\nexport type GroupFieldConfigPickerProps<T> = {\n style?: CSSProperties\n className?: string\n\n options?: T[]\n\n value?: ChartCustomDataType['groupFieldConfig']\n onChange?: (v: ChartCustomDataType['groupFieldConfig']) => void\n}\n\nexport const GroupFieldConfigPicker = <T,>(props: GroupFieldConfigPickerProps<T>) => {\n const { style, className, options = empty as T[] } = props\n\n const [value = empty as ChartCustomDataType['groupFieldConfig'], setValue] =\n useControllableValue<ChartCustomDataType['groupFieldConfig']>(props)\n\n const getFieldValue = useMemoizedFn((key: T) => {\n let match = (value ?? []).find(v => v.value === key)\n return match ? match.config : undefined\n })\n\n const handleFieldChange = useMemoizedFn((key: T, config: CombinationChartConfig) => {\n let newData = [...(value ?? [])]\n let match = newData.find(v => v.value === key)\n if (match) {\n match.config = config\n } else {\n newData.push({ value: key, config })\n }\n setValue(newData)\n return\n })\n\n /* ============================== 默认值 =============================== */\n useEffect(() => {\n if (options?.length > 0) {\n let newData: ChartCustomDataType['groupFieldConfig'] = options.map(v => {\n return {\n value: v,\n config: {\n chartType: ChartType['ChartBar'],\n yAxisPos: 'left',\n ...(getFieldValue(v) ?? {}),\n },\n }\n })\n setValue(newData)\n }\n }, [options])\n\n return useMemo(\n () => (\n <div className={clsx(className, styles[`${componentName}`])} style={style}>\n <div>\n {(props?.options ?? []).map(fieldName => {\n let str = `${fieldName}`\n const value = getFieldValue(fieldName)\n return (\n <div className={clsx(styles[`${componentName}__item`])} key={str}>\n <Tooltip title={str}>\n <div className={clsx(styles[`${componentName}__input`])}>\n <InputWrapper\n value={str}\n disabled={true}\n style={{\n width: 200,\n pointerEvents: 'none',\n }}\n
|
|
1
|
+
{"version":3,"file":"GroupFieldConfigPicker.js","sources":["../../../../../../packages/dashboard-workbench/components/add-module-modal/add-chart-modal/components/GroupFieldConfigPicker.tsx"],"sourcesContent":["import { useEffect, useMemo, type CSSProperties } from 'react'\nimport clsx from 'clsx'\nimport { Input, Tooltip } from 'antd'\nimport { useControllableValue, useMemoizedFn } from 'ahooks'\nimport InputWrapper from '@platox/pivot-table/components/InputWrapper'\nimport { ChartCustomDataType, ChartType, CombinationChartConfig } from '../interface'\nimport { CombinationChartOptionPicker } from './CombinationChartOptionPicker'\nimport styles from './index.module.less'\n\nconst componentName = 'group-field-config-picker'\n\nconst empty: unknown[] = []\n\nexport type GroupFieldConfigPickerProps<T> = {\n style?: CSSProperties\n className?: string\n\n options?: T[]\n\n value?: ChartCustomDataType['groupFieldConfig']\n onChange?: (v: ChartCustomDataType['groupFieldConfig']) => void\n}\n\nexport const GroupFieldConfigPicker = <T,>(props: GroupFieldConfigPickerProps<T>) => {\n const { style, className, options = empty as T[] } = props\n\n const [value = empty as ChartCustomDataType['groupFieldConfig'], setValue] =\n useControllableValue<ChartCustomDataType['groupFieldConfig']>(props)\n\n const getFieldValue = useMemoizedFn((key: T) => {\n let match = (value ?? []).find(v => v.value === key)\n return match ? match.config : undefined\n })\n\n const handleFieldChange = useMemoizedFn((key: T, config: CombinationChartConfig) => {\n let newData = [...(value ?? [])]\n let match = newData.find(v => v.value === key)\n if (match) {\n match.config = config\n } else {\n newData.push({ value: key, config })\n }\n setValue(newData)\n return\n })\n\n /* ============================== 默认值 =============================== */\n useEffect(() => {\n if (options?.length > 0) {\n let newData: ChartCustomDataType['groupFieldConfig'] = options.map(v => {\n return {\n value: v,\n config: {\n chartType: ChartType['ChartBar'],\n yAxisPos: 'left',\n ...(getFieldValue(v) ?? {}),\n },\n }\n })\n setValue(newData)\n }\n }, [options])\n\n return useMemo(\n () => (\n <div className={clsx(className, styles[`${componentName}`])} style={style}>\n <div>\n {(props?.options ?? []).map(fieldName => {\n let str = `${fieldName}`\n const value = getFieldValue(fieldName)\n return (\n <div className={clsx(styles[`${componentName}__item`])} key={str}>\n <Tooltip title={str}>\n <div className={clsx(styles[`${componentName}__input`])}>\n <InputWrapper\n value={str}\n disabled={true}\n style={{\n width: 200,\n pointerEvents: 'none',\n }}\n ></InputWrapper>\n </div>\n </Tooltip>\n\n <CombinationChartOptionPicker\n value={value}\n onChange={v => {\n handleFieldChange(fieldName, v)\n }}\n />\n </div>\n )\n })}\n </div>\n </div>\n ),\n [value, options]\n )\n}\n\nGroupFieldConfigPicker.displayName = 'GroupFieldConfigPicker'\n\nexport default GroupFieldConfigPicker\n"],"names":["value"],"mappings":";;;;;;;;;AASA,MAAM,gBAAgB;AAEtB,MAAM,QAAmB,CAAC;AAYb,MAAA,yBAAyB,CAAK,UAA0C;AACnF,QAAM,EAAE,OAAO,WAAW,UAAU,MAAiB,IAAA;AAErD,QAAM,CAAC,QAAQ,OAAkD,QAAQ,IACvE,qBAA8D,KAAK;AAE/D,QAAA,gBAAgB,cAAc,CAAC,QAAW;AAC1C,QAAA,SAAS,SAAS,IAAI,KAAK,CAAK,MAAA,EAAE,UAAU,GAAG;AAC5C,WAAA,QAAQ,MAAM,SAAS;AAAA,EAAA,CAC/B;AAED,QAAM,oBAAoB,cAAc,CAAC,KAAQ,WAAmC;AAClF,QAAI,UAAU,CAAC,GAAI,SAAS,EAAG;AAC/B,QAAI,QAAQ,QAAQ,KAAK,CAAK,MAAA,EAAE,UAAU,GAAG;AAC7C,QAAI,OAAO;AACT,YAAM,SAAS;AAAA,IAAA,OACV;AACL,cAAQ,KAAK,EAAE,OAAO,KAAK,QAAQ;AAAA,IAAA;AAErC,aAAS,OAAO;AAChB;AAAA,EAAA,CACD;AAGD,YAAU,MAAM;AACV,SAAA,mCAAS,UAAS,GAAG;AACnB,UAAA,UAAmD,QAAQ,IAAI,CAAK,MAAA;AAC/D,eAAA;AAAA,UACL,OAAO;AAAA,UACP,QAAQ;AAAA,YACN,WAAW,UAAU,UAAU;AAAA,YAC/B,UAAU;AAAA,YACV,GAAI,cAAc,CAAC,KAAK,CAAA;AAAA,UAAC;AAAA,QAE7B;AAAA,MAAA,CACD;AACD,eAAS,OAAO;AAAA,IAAA;AAAA,EAClB,GACC,CAAC,OAAO,CAAC;AAEL,SAAA;AAAA,IACL,0BACG,OAAI,EAAA,WAAW,KAAK,WAAW,OAAO,GAAG,aAAa,EAAE,CAAC,GAAG,OAC3D,8BAAC,OACG,EAAA,YAAA,+BAAO,YAAW,CAAC,GAAG,IAAI,CAAa,cAAA;AACnC,UAAA,MAAM,GAAG,SAAS;AAChBA,YAAAA,SAAQ,cAAc,SAAS;AAEnC,aAAA,qBAAC,SAAI,WAAW,KAAK,OAAO,GAAG,aAAa,QAAQ,CAAC,GACnD,UAAA;AAAA,QAAA,oBAAC,SAAQ,EAAA,OAAO,KACd,UAAA,oBAAC,OAAI,EAAA,WAAW,KAAK,OAAO,GAAG,aAAa,SAAS,CAAC,GACpD,UAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,OAAO;AAAA,YACP,UAAU;AAAA,YACV,OAAO;AAAA,cACL,OAAO;AAAA,cACP,eAAe;AAAA,YAAA;AAAA,UACjB;AAAA,WAEJ,EACF,CAAA;AAAA,QAEA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,OAAOA;AAAAA,YACP,UAAU,CAAK,MAAA;AACb,gCAAkB,WAAW,CAAC;AAAA,YAAA;AAAA,UAChC;AAAA,QAAA;AAAA,MACF,EAAA,GAnB2D,GAoB7D;AAAA,IAAA,CAEH,GACH,EACF,CAAA;AAAA,IAEF,CAAC,OAAO,OAAO;AAAA,EACjB;AACF;AAEA,uBAAuB,cAAc;"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { jsxs, jsx, Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useRef, useMemo, useState, useEffect } from "react";
|
|
3
3
|
import clsx from "clsx";
|
|
4
|
-
import { Form, Button, Flex, Checkbox, Divider, Radio, Space, Spin } from "antd";
|
|
4
|
+
import { Form, Select, Button, Flex, Checkbox, Divider, Radio, Space, Spin } from "antd";
|
|
5
5
|
import { useTranslation } from "react-i18next";
|
|
6
6
|
import { useMemoizedFn, useRequest, useDebounceFn } from "ahooks";
|
|
7
7
|
import { getTransformValue } from "../../../utils/index.js";
|
|
8
8
|
import { useAppContext } from "../../../context.js";
|
|
9
9
|
import { mapConditionsToPostgrest } from "../../module-content/utils.js";
|
|
10
|
-
import { SelectWrapper } from "../../SelectWrapper/index.js";
|
|
11
10
|
import ConditionModal from "../components/condition-modal/index.js";
|
|
12
11
|
import { GroupFieldConfigPicker } from "./components/GroupFieldConfigPicker.js";
|
|
13
12
|
import { useChartTypeOption, useTimeGroupIntervalOption, useDisplayRangeOption } from "./config.js";
|
|
@@ -204,7 +203,7 @@ const CustomData = ({
|
|
|
204
203
|
onValuesChange: handleValuesChange,
|
|
205
204
|
initialValues,
|
|
206
205
|
children: [
|
|
207
|
-
/* @__PURE__ */ jsx(Form.Item, { label: t("dataSource"), name: "dataSourceId", children: /* @__PURE__ */ jsx(
|
|
206
|
+
/* @__PURE__ */ jsx(Form.Item, { label: t("dataSource"), name: "dataSourceId", children: /* @__PURE__ */ jsx(Select, { options: (globalData == null ? void 0 : globalData.sourceData) ?? [] }) }),
|
|
208
207
|
/* @__PURE__ */ jsxs(Form.Item, { label: t("dataRange"), children: [
|
|
209
208
|
/* @__PURE__ */ jsx(
|
|
210
209
|
Button,
|
|
@@ -220,7 +219,7 @@ const CustomData = ({
|
|
|
220
219
|
conditionDataNum > 0 ? `${t("selectNcondition", { n: conditionDataNum })}` : null
|
|
221
220
|
] }),
|
|
222
221
|
/* @__PURE__ */ jsx(Form.Item, { label: t("chart.t1"), name: "type", children: /* @__PURE__ */ jsx(
|
|
223
|
-
|
|
222
|
+
Select,
|
|
224
223
|
{
|
|
225
224
|
options: ChartTypeOption,
|
|
226
225
|
optionRender: (option) => /* @__PURE__ */ jsxs(Flex, { align: "center", children: [
|
|
@@ -243,10 +242,10 @@ const CustomData = ({
|
|
|
243
242
|
{
|
|
244
243
|
label: (type == null ? void 0 : type.includes("pie")) ? t("chart.t17") : t("chart.t18"),
|
|
245
244
|
name: "xAxis",
|
|
246
|
-
children: /* @__PURE__ */ jsx(
|
|
245
|
+
children: /* @__PURE__ */ jsx(Select, { options: xAxisFieldOption })
|
|
247
246
|
}
|
|
248
247
|
),
|
|
249
|
-
/* @__PURE__ */ jsx(Form.Item, { noStyle: true, dependencies: ["type", "xAxis"], children: ({ getFieldValue }) => isTimeField(getFieldValue("xAxis")) ? /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(Form.Item, { name: "timeGroupInterval", label: t("chart.t39"), children: /* @__PURE__ */ jsx(
|
|
248
|
+
/* @__PURE__ */ jsx(Form.Item, { noStyle: true, dependencies: ["type", "xAxis"], children: ({ getFieldValue }) => isTimeField(getFieldValue("xAxis")) ? /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(Form.Item, { name: "timeGroupInterval", label: t("chart.t39"), children: /* @__PURE__ */ jsx(Select, { options: TimeGroupIntervalOption }) }) }) : /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(Form.Item, { name: "displayRange", label: t("displayRange.title"), children: /* @__PURE__ */ jsx(Select, { options: DisplayRangeOption }) }) }) }),
|
|
250
249
|
/* @__PURE__ */ jsx(Form.Item, { dependencies: ["type"], noStyle: true, children: ({ getFieldValue }) => {
|
|
251
250
|
var _a;
|
|
252
251
|
return !((_a = getFieldValue("type")) == null ? void 0 : _a.includes("pie")) ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
@@ -267,7 +266,7 @@ const CustomData = ({
|
|
|
267
266
|
label: (type == null ? void 0 : type.includes("pie")) ? t("chart.t19") : t("chart.t20"),
|
|
268
267
|
name: "yAxis",
|
|
269
268
|
children: /* @__PURE__ */ jsx(
|
|
270
|
-
|
|
269
|
+
Select,
|
|
271
270
|
{
|
|
272
271
|
options: [
|
|
273
272
|
{
|
|
@@ -288,9 +287,9 @@ const CustomData = ({
|
|
|
288
287
|
justifyContent: "space-between"
|
|
289
288
|
},
|
|
290
289
|
children: /* @__PURE__ */ jsxs(Space.Compact, { children: [
|
|
291
|
-
/* @__PURE__ */ jsx(Form.Item, { noStyle: true, name: "yAxisField", children: /* @__PURE__ */ jsx(
|
|
290
|
+
/* @__PURE__ */ jsx(Form.Item, { noStyle: true, name: "yAxisField", children: /* @__PURE__ */ jsx(Select, { style: { width: "100px" }, options: yAxisFieldOption }) }),
|
|
292
291
|
/* @__PURE__ */ jsx(Form.Item, { name: "yAxisFieldType", noStyle: true, children: /* @__PURE__ */ jsx(
|
|
293
|
-
|
|
292
|
+
Select,
|
|
294
293
|
{
|
|
295
294
|
style: { width: "100px" },
|
|
296
295
|
options: [
|
|
@@ -320,7 +319,7 @@ const CustomData = ({
|
|
|
320
319
|
var _a;
|
|
321
320
|
return !((_a = getFieldValue("type")) == null ? void 0 : _a.includes("pie")) ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
322
321
|
/* @__PURE__ */ jsx(Form.Item, { name: "isGroup", valuePropName: "checked", noStyle: true, children: /* @__PURE__ */ jsx(Checkbox, { style: { marginBottom: "5px" }, children: t("chart.t38") }) }),
|
|
323
|
-
/* @__PURE__ */ jsx(Form.Item, { dependencies: ["isGroup"], noStyle: true, children: ({ getFieldValue: getFieldValue2 }) => getFieldValue2("isGroup") ? /* @__PURE__ */ jsx(Form.Item, { name: "groupField", children: /* @__PURE__ */ jsx(
|
|
322
|
+
/* @__PURE__ */ jsx(Form.Item, { dependencies: ["isGroup"], noStyle: true, children: ({ getFieldValue: getFieldValue2 }) => getFieldValue2("isGroup") ? /* @__PURE__ */ jsx(Form.Item, { name: "groupField", children: /* @__PURE__ */ jsx(Select, { options: groupFieldOption }) }) : null }),
|
|
324
323
|
/* @__PURE__ */ jsx(Spin, { spinning: isGetCombinationGroupOptionsLoading, children: /* @__PURE__ */ jsx(
|
|
325
324
|
Form.Item,
|
|
326
325
|
{
|
package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-data.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custome-data.js","sources":["../../../../../packages/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-data.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { useEffect, useMemo, useRef, useState } from 'react'\nimport clsx from 'clsx'\nimport { Button, Checkbox, Divider, Flex, Form, message, Radio, Select, Space, Spin } from 'antd'\nimport { useTranslation } from 'react-i18next'\nimport { useDebounceFn, useMemoizedFn, useRequest } from 'ahooks'\nimport { getTransformValue } from '@platox/pivot-table/utils'\nimport { useAppContext } from '../../../context'\nimport { EnumDataApi } from '../../../types'\nimport { ModuleData } from '../../module-content'\nimport { mapConditionsToPostgrest } from '../../module-content/utils'\nimport SelectWrapper from '../../SelectWrapper'\nimport ConditionModal from '../components/condition-modal'\nimport CombinationChartOptionPicker from './components/CombinationChartOptionPicker'\nimport GroupFieldConfigPicker from './components/GroupFieldConfigPicker'\nimport { useChartTypeOption, useDisplayRangeOption, useTimeGroupIntervalOption } from './config'\nimport styles from './index.module.less'\nimport { ChartCustomDataType, ChartType } from './interface'\n\nconst componentName = 'chart-modal'\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 const containerRef = useRef<HTMLDivElement>(null)\n\n const ChartTypeOption = useChartTypeOption()\n const TimeGroupIntervalOption = useTimeGroupIntervalOption()\n const DisplayRangeOption = useDisplayRangeOption()\n\n /* ============================== split =============================== */\n const initialValues = {\n dataSourceId: '',\n yAxis: 'recordTotal',\n chartOptions: ['legend', 'label', 'axis', 'splitLine'],\n sortField: 'xAxis',\n sortOrder: 'asc',\n timeGroupInterval: 'day',\n displayRange: 'ALL',\n yAxisFieldConfig: {\n chartType: ChartType.ChartBar,\n yAxisPos: 'left',\n },\n }\n const [form] = Form.useForm()\n\n const type = Form.useWatch('type', form)\n const dataSourceId = Form.useWatch('dataSourceId', form)\n const isGroup = Form.useWatch('isGroup', form)\n const xAxis = Form.useWatch('xAxis', form)\n const yAxisField = Form.useWatch('yAxisField', form)\n const groupField = Form.useWatch('groupField', form)\n\n /* ============================== split =============================== */\n const getFieldOptions = useMemoizedFn((dataSourceId?: string) => {\n const list = globalData?.sourceData?.find(item => item.value === dataSourceId)?.fields ?? []\n return list\n })\n\n const { fieldOptions, xAxisFieldOption, yAxisFieldOption, groupFieldOption } = useMemo(() => {\n const fieldOptions = getFieldOptions(dataSourceId)\n\n const xAxisFieldOption = fieldOptions.filter(item => {\n let hasPicked = [yAxisField, groupField].includes(item.value)\n return !hasPicked\n })\n\n const yAxisFieldOption = fieldOptions.filter(item => {\n let isNumberField = item.type === 'int' || item.type === 'float'\n let hasPicked = [xAxis, groupField].includes(item.value)\n return isNumberField && !hasPicked\n })\n\n const groupFieldOption = fieldOptions.filter(item => {\n let hasPicked = [xAxis, yAxisField].includes(item.value)\n return !hasPicked\n })\n\n return {\n fieldOptions,\n xAxisFieldOption,\n yAxisFieldOption,\n groupFieldOption,\n }\n }, [dataSourceId, xAxis, yAxisField, groupField])\n\n const isTimeField = useMemoizedFn(fieldName => {\n return fieldOptions.find(item => item.value === fieldName)?.type === 'timestamp'\n })\n\n /* ============================== split =============================== */\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\n /* ============================== 获取分组聚合的字段数据 =============================== */\n const { service } = useAppContext()\n const { data: CombinationGroupOptions, loading: isGetCombinationGroupOptionsLoading } =\n useRequest(\n async () => {\n if (isGroup && type === ChartType['chartCombination'] && !!groupField) {\n const newGroupField = groupField === 'tags' ? 'tag' : groupField\n\n let queryString = `select=${newGroupField}`\n if (conditionData?.conditionList?.length > 0) {\n let DSLStr = mapConditionsToPostgrest(conditionData)\n queryString += !!DSLStr ? `&${DSLStr}` : ''\n }\n let res = await service?.moduleDataApi?.({\n id: dataSourceId,\n query: queryString,\n })\n //获取分组聚合的字段数据\n let options = res?.data?.map((item: any) => {\n return getTransformValue({\n fieldOptions,\n val: item[newGroupField],\n field: newGroupField,\n fieldMap: globalData?.fieldMap,\n })\n })\n return [...new Set(options)]\n } else {\n return []\n }\n },\n {\n refreshDeps: [type, isGroup, groupField, conditionData, dataSourceId],\n }\n )\n\n /* ============================== split =============================== */\n // debounce 2个作用 一个默认值的设置会延后,另一个是防止多次请求\n const { run: debounceSubmit } = useDebounceFn(\n useMemoizedFn(() => {\n onAllValuesChange?.({\n ...initialValues,\n ...form.getFieldsValue(),\n conditionData: conditionDataRef.current,\n })\n }),\n {\n wait: 100,\n }\n )\n const handleValuesChange = useMemoizedFn((changedValues, allValues) => {\n if (changedValues.dataSourceId) {\n const newFieldOptions = getFieldOptions(changedValues.dataSourceId)\n form.setFieldsValue({\n xAxis: newFieldOptions?.[0]?.value,\n yAxis: 'recordTotal',\n isGroup: false,\n })\n setCondition({\n conditionList: [],\n conditionType: 'all',\n })\n }\n if (changedValues.xAxis) {\n form.setFieldsValue(\n isTimeField(changedValues.xAxis)\n ? {\n timeGroupInterval: initialValues?.timeGroupInterval,\n }\n : {\n displayRange: initialValues?.displayRange,\n }\n )\n }\n\n if (changedValues.yAxis) {\n let value = changedValues.yAxis\n form.setFieldsValue({\n yAxisField: value === 'fieldValue' ? yAxisFieldOption?.[0]?.value : '',\n yAxisFieldType: 'sum',\n })\n }\n\n if (changedValues.isGroup) {\n form.setFieldsValue({\n groupField: groupFieldOption?.[0]?.value,\n })\n }\n\n debounceSubmit()\n })\n\n useEffect(() => {\n if (selectModuleData?.customData) {\n const customData = selectModuleData.customData\n form.setFieldsValue(customData)\n } else {\n const currSourceData = globalData?.sourceData?.[0]\n const list = getFieldOptions(currSourceData?.value) || []\n form.setFieldsValue({\n ...initialValues,\n dataSourceId: currSourceData?.value,\n type: selectModuleData?.type,\n xAxis: list?.[0]?.value,\n })\n }\n setCondition(selectModuleData?.customData?.conditionData)\n debounceSubmit()\n }, [selectModuleData, globalData])\n\n return (\n <div\n style={{ height: '50vh', overflowX: 'auto' }}\n className={clsx(styles[`${componentName}`])}\n ref={containerRef}\n >\n <Form\n form={form}\n name=\"customData\"\n layout=\"vertical\"\n onValuesChange={handleValuesChange}\n initialValues={initialValues}\n >\n <Form.Item<ChartCustomDataType> label={t('dataSource')} name=\"dataSourceId\">\n <SelectWrapper options={globalData?.sourceData ?? []} />\n </Form.Item>\n\n <Form.Item<ChartCustomDataType> 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 <Form.Item<ChartCustomDataType> label={t('chart.t1')} name=\"type\">\n <SelectWrapper\n options={ChartTypeOption}\n optionRender={option => (\n <Flex align=\"center\">\n <span role=\"img\" style={{ marginTop: '5px' }} aria-label={option.data.label}>\n {option.data.icon}\n </span>\n {option.data.label}\n </Flex>\n )}\n />\n </Form.Item>\n\n <Form.Item name=\"chartOptions\" label={t('chart.t12')}>\n <Checkbox.Group>\n <Checkbox value=\"legend\" className=\"ow-checkbox\" style={{ lineHeight: '32px' }}>\n {t('chart.t13')}\n </Checkbox>\n\n <Checkbox value=\"label\" className=\"ow-checkbox\" style={{ lineHeight: '32px' }}>\n {t('chart.t14')}\n </Checkbox>\n\n {!['chart-pie', 'chart-pie-circular'].includes(type) ? (\n <>\n <Checkbox value=\"axis\" className=\"ow-checkbox\" style={{ lineHeight: '32px' }}>\n {t('chart.t15')}\n </Checkbox>\n <Checkbox value=\"splitLine\" className=\"ow-checkbox\" style={{ lineHeight: '32px' }}>\n {t('chart.t16')}\n </Checkbox>\n </>\n ) : null}\n </Checkbox.Group>\n </Form.Item>\n\n <Divider style={{ borderColor: '#e2e2e2', marginTop: 0 }} />\n\n <Form.Item<ChartCustomDataType>\n label={type?.includes('pie') ? t('chart.t17') : t('chart.t18')}\n name=\"xAxis\"\n >\n <SelectWrapper options={xAxisFieldOption} />\n </Form.Item>\n\n {/* 时间分组 */}\n <Form.Item noStyle dependencies={['type', 'xAxis']}>\n {({ getFieldValue }) =>\n isTimeField(getFieldValue('xAxis')) ? (\n <>\n <Form.Item<ChartCustomDataType> name=\"timeGroupInterval\" label={t('chart.t39')}>\n <SelectWrapper options={TimeGroupIntervalOption} />\n </Form.Item>\n </>\n ) : (\n <>\n <Form.Item<ChartCustomDataType> name=\"displayRange\" label={t('displayRange.title')}>\n <SelectWrapper options={DisplayRangeOption} />\n </Form.Item>\n </>\n )\n }\n </Form.Item>\n\n <Form.Item dependencies={['type']} noStyle>\n {({ getFieldValue }) =>\n !getFieldValue('type')?.includes('pie') ? (\n <>\n <Form.Item<ChartCustomDataType> name=\"sortField\" label={t('chart.t31')}>\n <Radio.Group>\n <Radio value=\"xAxis\">{t('chart.t32')}</Radio>\n <Radio value=\"yAxisField\">{t('chart.t33')}</Radio>\n <Radio value=\"recordValue\">{t('chart.t34')}</Radio>\n </Radio.Group>\n </Form.Item>\n <Form.Item<ChartCustomDataType> name=\"sortOrder\" label={t('chart.t35')}>\n <Radio.Group>\n <Radio value=\"asc\">{t('chart.t36')}</Radio>\n <Radio value=\"desc\">{t('chart.t37')}</Radio>\n </Radio.Group>\n </Form.Item>\n </>\n ) : null\n }\n </Form.Item>\n\n <Form.Item<ChartCustomDataType>\n label={type?.includes('pie') ? t('chart.t19') : t('chart.t20')}\n name=\"yAxis\"\n >\n <SelectWrapper\n options={[\n {\n value: 'recordTotal',\n label: t('statisticstRecordNum'),\n },\n { value: 'fieldValue', label: t('statisticstFieldVal') },\n ]}\n />\n </Form.Item>\n\n <Form.Item dependencies={['yAxis', 'type', 'isGroup']} noStyle>\n {({ getFieldValue }) =>\n getFieldValue('yAxis') === 'fieldValue' ? (\n <Form.Item label={t('selectField')}>\n <div\n style={{\n display: 'flex',\n justifyContent: 'space-between',\n }}\n >\n <Space.Compact>\n <Form.Item noStyle name=\"yAxisField\">\n <SelectWrapper style={{ width: '100px' }} options={yAxisFieldOption} />\n </Form.Item>\n <Form.Item name=\"yAxisFieldType\" noStyle>\n <SelectWrapper\n style={{ width: '100px' }}\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\n {/* <Form.Item\n noStyle\n name=\"yAxisFieldConfig\"\n dependencies={['type', 'isGroup']}\n hidden={\n !(\n getFieldValue('type') === ChartType['chartCombination'] &&\n !getFieldValue('isGroup')\n )\n }\n >\n <CombinationChartOptionPicker />\n </Form.Item> */}\n </div>\n </Form.Item>\n ) : null\n }\n </Form.Item>\n\n <Form.Item dependencies={['type', 'isGroup']} noStyle>\n {({ getFieldValue }) =>\n !getFieldValue('type')?.includes('pie') ? (\n <>\n <Form.Item<ChartCustomDataType> name=\"isGroup\" valuePropName=\"checked\" noStyle>\n <Checkbox style={{ marginBottom: '5px' }}>{t('chart.t38')}</Checkbox>\n </Form.Item>\n <Form.Item dependencies={['isGroup']} noStyle>\n {({ getFieldValue }) =>\n getFieldValue('isGroup') ? (\n <Form.Item<ChartCustomDataType> name=\"groupField\">\n <SelectWrapper options={groupFieldOption} />\n </Form.Item>\n ) : null\n }\n </Form.Item>\n\n <Spin spinning={isGetCombinationGroupOptionsLoading}>\n <Form.Item<ChartCustomDataType>\n name=\"groupFieldConfig\"\n label={t('chart.groupFieldConfig')}\n hidden={\n !(\n getFieldValue('type') === ChartType['chartCombination'] &&\n getFieldValue('isGroup')\n )\n }\n >\n <GroupFieldConfigPicker options={CombinationGroupOptions} />\n </Form.Item>\n </Spin>\n </>\n ) : null\n }\n </Form.Item>\n </Form>\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 debounceSubmit()\n }}\n />\n </div>\n )\n}\nexport default CustomData\n"],"names":["dataSourceId","fieldOptions","xAxisFieldOption","yAxisFieldOption","groupFieldOption","getFieldValue"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"custome-data.js","sources":["../../../../../packages/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-data.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { useEffect, useMemo, useRef, useState } from 'react'\nimport clsx from 'clsx'\nimport { Button, Checkbox, Divider, Flex, Form, message, Radio, Select, Space, Spin } from 'antd'\nimport { useTranslation } from 'react-i18next'\nimport { useDebounceFn, useMemoizedFn, useRequest } from 'ahooks'\nimport { getTransformValue } from '@platox/pivot-table/utils'\nimport { useAppContext } from '../../../context'\nimport { EnumDataApi } from '../../../types'\nimport { ModuleData } from '../../module-content'\nimport {\n filterConditionBlockByDisabledField,\n mapConditionsToPostgrest,\n} from '../../module-content/utils'\nimport ConditionModal from '../components/condition-modal'\nimport CombinationChartOptionPicker from './components/CombinationChartOptionPicker'\nimport GroupFieldConfigPicker from './components/GroupFieldConfigPicker'\nimport { useChartTypeOption, useDisplayRangeOption, useTimeGroupIntervalOption } from './config'\nimport styles from './index.module.less'\nimport { ChartCustomDataType, ChartType } from './interface'\n\nconst componentName = 'chart-modal'\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 const containerRef = useRef<HTMLDivElement>(null)\n\n const ChartTypeOption = useChartTypeOption()\n const TimeGroupIntervalOption = useTimeGroupIntervalOption()\n const DisplayRangeOption = useDisplayRangeOption()\n\n /* ============================== split =============================== */\n const initialValues = {\n dataSourceId: '',\n yAxis: 'recordTotal',\n chartOptions: ['legend', 'label', 'axis', 'splitLine'],\n sortField: 'xAxis',\n sortOrder: 'asc',\n timeGroupInterval: 'day',\n displayRange: 'ALL',\n yAxisFieldConfig: {\n chartType: ChartType.ChartBar,\n yAxisPos: 'left',\n },\n }\n const [form] = Form.useForm()\n\n const type = Form.useWatch('type', form)\n const dataSourceId = Form.useWatch('dataSourceId', form)\n const isGroup = Form.useWatch('isGroup', form)\n const xAxis = Form.useWatch('xAxis', form)\n const yAxisField = Form.useWatch('yAxisField', form)\n const groupField = Form.useWatch('groupField', form)\n\n /* ============================== split =============================== */\n const getFieldOptions = useMemoizedFn((dataSourceId?: string) => {\n const list = globalData?.sourceData?.find(item => item.value === dataSourceId)?.fields ?? []\n return list\n })\n\n const { fieldOptions, xAxisFieldOption, yAxisFieldOption, groupFieldOption } = useMemo(() => {\n const fieldOptions = getFieldOptions(dataSourceId)\n\n const xAxisFieldOption = fieldOptions.filter(item => {\n let hasPicked = [yAxisField, groupField].includes(item.value)\n return !hasPicked\n })\n\n const yAxisFieldOption = fieldOptions.filter(item => {\n let isNumberField = item.type === 'int' || item.type === 'float'\n let hasPicked = [xAxis, groupField].includes(item.value)\n return isNumberField && !hasPicked\n })\n\n const groupFieldOption = fieldOptions.filter(item => {\n let hasPicked = [xAxis, yAxisField].includes(item.value)\n return !hasPicked\n })\n\n return {\n fieldOptions,\n xAxisFieldOption,\n yAxisFieldOption,\n groupFieldOption,\n }\n }, [dataSourceId, xAxis, yAxisField, groupField])\n\n const isTimeField = useMemoizedFn(fieldName => {\n return fieldOptions.find(item => item.value === fieldName)?.type === 'timestamp'\n })\n\n /* ============================== split =============================== */\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\n /* ============================== 获取分组聚合的字段数据 =============================== */\n const { service } = useAppContext()\n const { data: CombinationGroupOptions, loading: isGetCombinationGroupOptionsLoading } =\n useRequest(\n async () => {\n if (isGroup && type === ChartType['chartCombination'] && !!groupField) {\n const newGroupField = groupField === 'tags' ? 'tag' : groupField\n let queryString = `select=${newGroupField}`\n if (conditionData?.conditionList?.length > 0) {\n let DSLStr = mapConditionsToPostgrest(conditionData)\n queryString += !!DSLStr ? `&${DSLStr}` : ''\n }\n let res = await service?.moduleDataApi?.({\n id: dataSourceId,\n query: queryString,\n })\n\n //获取分组聚合的字段数据\n let options = res?.data?.map((item: any) => {\n return getTransformValue({\n fieldOptions,\n val: item[newGroupField],\n field: newGroupField,\n fieldMap: globalData?.fieldMap,\n })\n })\n return [...new Set(options)]\n } else {\n return []\n }\n },\n {\n refreshDeps: [type, isGroup, groupField, conditionData, dataSourceId],\n }\n )\n\n /* ============================== split =============================== */\n // debounce 2个作用 一个默认值的设置会延后,另一个是防止多次请求\n const { run: debounceSubmit } = useDebounceFn(\n useMemoizedFn(() => {\n onAllValuesChange?.({\n ...initialValues,\n ...form.getFieldsValue(),\n conditionData: conditionDataRef.current,\n })\n }),\n {\n wait: 100,\n }\n )\n const handleValuesChange = useMemoizedFn((changedValues, allValues) => {\n if (changedValues.dataSourceId) {\n const newFieldOptions = getFieldOptions(changedValues.dataSourceId)\n form.setFieldsValue({\n xAxis: newFieldOptions?.[0]?.value,\n yAxis: 'recordTotal',\n isGroup: false,\n })\n setCondition({\n conditionList: [],\n conditionType: 'all',\n })\n }\n if (changedValues.xAxis) {\n form.setFieldsValue(\n isTimeField(changedValues.xAxis)\n ? {\n timeGroupInterval: initialValues?.timeGroupInterval,\n }\n : {\n displayRange: initialValues?.displayRange,\n }\n )\n }\n\n if (changedValues.yAxis) {\n let value = changedValues.yAxis\n form.setFieldsValue({\n yAxisField: value === 'fieldValue' ? yAxisFieldOption?.[0]?.value : '',\n yAxisFieldType: 'sum',\n })\n }\n\n if (changedValues.isGroup) {\n form.setFieldsValue({\n groupField: groupFieldOption?.[0]?.value,\n })\n }\n\n debounceSubmit()\n })\n\n useEffect(() => {\n if (selectModuleData?.customData) {\n const customData = selectModuleData.customData\n form.setFieldsValue(customData)\n } else {\n const currSourceData = globalData?.sourceData?.[0]\n const list = getFieldOptions(currSourceData?.value) || []\n form.setFieldsValue({\n ...initialValues,\n dataSourceId: currSourceData?.value,\n type: selectModuleData?.type,\n xAxis: list?.[0]?.value,\n })\n }\n setCondition(selectModuleData?.customData?.conditionData)\n debounceSubmit()\n }, [selectModuleData, globalData])\n\n return (\n <div\n style={{ height: '50vh', overflowX: 'auto' }}\n className={clsx(styles[`${componentName}`])}\n ref={containerRef}\n >\n <Form\n form={form}\n name=\"customData\"\n layout=\"vertical\"\n onValuesChange={handleValuesChange}\n initialValues={initialValues}\n >\n <Form.Item<ChartCustomDataType> label={t('dataSource')} name=\"dataSourceId\">\n <Select options={globalData?.sourceData ?? []} />\n </Form.Item>\n\n <Form.Item<ChartCustomDataType> 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 <Form.Item<ChartCustomDataType> label={t('chart.t1')} name=\"type\">\n <Select\n options={ChartTypeOption}\n optionRender={option => (\n <Flex align=\"center\">\n <span role=\"img\" style={{ marginTop: '5px' }} aria-label={option.data.label}>\n {option.data.icon}\n </span>\n {option.data.label}\n </Flex>\n )}\n />\n </Form.Item>\n\n <Form.Item name=\"chartOptions\" label={t('chart.t12')}>\n <Checkbox.Group>\n <Checkbox value=\"legend\" className=\"ow-checkbox\" style={{ lineHeight: '32px' }}>\n {t('chart.t13')}\n </Checkbox>\n\n <Checkbox value=\"label\" className=\"ow-checkbox\" style={{ lineHeight: '32px' }}>\n {t('chart.t14')}\n </Checkbox>\n\n {!['chart-pie', 'chart-pie-circular'].includes(type) ? (\n <>\n <Checkbox value=\"axis\" className=\"ow-checkbox\" style={{ lineHeight: '32px' }}>\n {t('chart.t15')}\n </Checkbox>\n <Checkbox value=\"splitLine\" className=\"ow-checkbox\" style={{ lineHeight: '32px' }}>\n {t('chart.t16')}\n </Checkbox>\n </>\n ) : null}\n </Checkbox.Group>\n </Form.Item>\n\n <Divider style={{ borderColor: '#e2e2e2', marginTop: 0 }} />\n\n <Form.Item<ChartCustomDataType>\n label={type?.includes('pie') ? t('chart.t17') : t('chart.t18')}\n name=\"xAxis\"\n >\n <Select options={xAxisFieldOption} />\n </Form.Item>\n\n {/* 时间分组 */}\n <Form.Item noStyle dependencies={['type', 'xAxis']}>\n {({ getFieldValue }) =>\n isTimeField(getFieldValue('xAxis')) ? (\n <>\n <Form.Item<ChartCustomDataType> name=\"timeGroupInterval\" label={t('chart.t39')}>\n <Select options={TimeGroupIntervalOption} />\n </Form.Item>\n </>\n ) : (\n <>\n <Form.Item<ChartCustomDataType> name=\"displayRange\" label={t('displayRange.title')}>\n <Select options={DisplayRangeOption} />\n </Form.Item>\n </>\n )\n }\n </Form.Item>\n\n <Form.Item dependencies={['type']} noStyle>\n {({ getFieldValue }) =>\n !getFieldValue('type')?.includes('pie') ? (\n <>\n <Form.Item<ChartCustomDataType> name=\"sortField\" label={t('chart.t31')}>\n <Radio.Group>\n <Radio value=\"xAxis\">{t('chart.t32')}</Radio>\n <Radio value=\"yAxisField\">{t('chart.t33')}</Radio>\n <Radio value=\"recordValue\">{t('chart.t34')}</Radio>\n </Radio.Group>\n </Form.Item>\n <Form.Item<ChartCustomDataType> name=\"sortOrder\" label={t('chart.t35')}>\n <Radio.Group>\n <Radio value=\"asc\">{t('chart.t36')}</Radio>\n <Radio value=\"desc\">{t('chart.t37')}</Radio>\n </Radio.Group>\n </Form.Item>\n </>\n ) : null\n }\n </Form.Item>\n\n <Form.Item<ChartCustomDataType>\n label={type?.includes('pie') ? t('chart.t19') : t('chart.t20')}\n name=\"yAxis\"\n >\n <Select\n options={[\n {\n value: 'recordTotal',\n label: t('statisticstRecordNum'),\n },\n { value: 'fieldValue', label: t('statisticstFieldVal') },\n ]}\n />\n </Form.Item>\n\n <Form.Item dependencies={['yAxis', 'type', 'isGroup']} noStyle>\n {({ getFieldValue }) =>\n getFieldValue('yAxis') === 'fieldValue' ? (\n <Form.Item label={t('selectField')}>\n <div\n style={{\n display: 'flex',\n justifyContent: 'space-between',\n }}\n >\n <Space.Compact>\n <Form.Item noStyle name=\"yAxisField\">\n <Select style={{ width: '100px' }} options={yAxisFieldOption} />\n </Form.Item>\n <Form.Item name=\"yAxisFieldType\" noStyle>\n <Select\n style={{ width: '100px' }}\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\n {/* <Form.Item\n noStyle\n name=\"yAxisFieldConfig\"\n dependencies={['type', 'isGroup']}\n hidden={\n !(\n getFieldValue('type') === ChartType['chartCombination'] &&\n !getFieldValue('isGroup')\n )\n }\n >\n <CombinationChartOptionPicker />\n </Form.Item> */}\n </div>\n </Form.Item>\n ) : null\n }\n </Form.Item>\n\n <Form.Item dependencies={['type', 'isGroup']} noStyle>\n {({ getFieldValue }) =>\n !getFieldValue('type')?.includes('pie') ? (\n <>\n <Form.Item<ChartCustomDataType> name=\"isGroup\" valuePropName=\"checked\" noStyle>\n <Checkbox style={{ marginBottom: '5px' }}>{t('chart.t38')}</Checkbox>\n </Form.Item>\n <Form.Item dependencies={['isGroup']} noStyle>\n {({ getFieldValue }) =>\n getFieldValue('isGroup') ? (\n <Form.Item<ChartCustomDataType> name=\"groupField\">\n <Select options={groupFieldOption} />\n </Form.Item>\n ) : null\n }\n </Form.Item>\n\n <Spin spinning={isGetCombinationGroupOptionsLoading}>\n <Form.Item<ChartCustomDataType>\n name=\"groupFieldConfig\"\n label={t('chart.groupFieldConfig')}\n hidden={\n !(\n getFieldValue('type') === ChartType['chartCombination'] &&\n getFieldValue('isGroup')\n )\n }\n >\n <GroupFieldConfigPicker options={CombinationGroupOptions} />\n </Form.Item>\n </Spin>\n </>\n ) : null\n }\n </Form.Item>\n </Form>\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 debounceSubmit()\n }}\n />\n </div>\n )\n}\nexport default CustomData\n"],"names":["dataSourceId","fieldOptions","xAxisFieldOption","yAxisFieldOption","groupFieldOption","getFieldValue"],"mappings":"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"}
|
package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-styles.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect } from "react";
|
|
3
|
-
import { Form, Divider
|
|
3
|
+
import { Form, Divider } from "antd";
|
|
4
4
|
import { useTranslation } from "react-i18next";
|
|
5
|
+
import { InputWrapper } from "../../InputWrapper/index.js";
|
|
5
6
|
const CustomeStyles = ({
|
|
6
7
|
customData,
|
|
7
8
|
selectModuleData,
|
|
@@ -32,7 +33,7 @@ const CustomeStyles = ({
|
|
|
32
33
|
return /* @__PURE__ */ jsx("div", { style: { height: "50vh", overflowX: "auto" }, children: /* @__PURE__ */ jsxs(Form, { form, name: "customeStyle", layout: "vertical", initialValues, children: [
|
|
33
34
|
/* @__PURE__ */ jsx(Divider, { orientation: "left", orientationMargin: "0", children: t("chart.t21") }),
|
|
34
35
|
!((_b = customData == null ? void 0 : customData.type) == null ? void 0 : _b.includes("pie")) ? /* @__PURE__ */ jsx(Form.Item, { label: t("chart.t22"), name: "xtitle", children: /* @__PURE__ */ jsx(
|
|
35
|
-
|
|
36
|
+
InputWrapper,
|
|
36
37
|
{
|
|
37
38
|
onChange: () => {
|
|
38
39
|
allValuesChange();
|
|
@@ -41,7 +42,7 @@ const CustomeStyles = ({
|
|
|
41
42
|
) }) : null,
|
|
42
43
|
/* @__PURE__ */ jsx(Divider, { orientation: "left", orientationMargin: "0", children: t("chart.t26") }),
|
|
43
44
|
!((_c = customData == null ? void 0 : customData.type) == null ? void 0 : _c.includes("pie")) ? /* @__PURE__ */ jsx(Form.Item, { label: t("chart.t27"), name: "ytitle", children: /* @__PURE__ */ jsx(
|
|
44
|
-
|
|
45
|
+
InputWrapper,
|
|
45
46
|
{
|
|
46
47
|
onChange: () => {
|
|
47
48
|
allValuesChange();
|
package/es/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-styles.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custome-styles.js","sources":["../../../../../packages/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-styles.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { useEffect } from 'react'\nimport { Checkbox, Col, Divider, Form, Input, Row } from 'antd'\nimport { useTranslation } from 'react-i18next'\nimport { ModuleData } from '../../module-content'\nimport { ChartCustomeStylesTypes } from './interface'\n\ninterface CustomeStylesProps {\n customData?: any\n selectModuleData?: ModuleData\n onAllValuesChange?: ((values: any) => void) | undefined\n customeStylesRef?: any\n}\nconst CustomeStyles: React.FC<CustomeStylesProps> = ({\n customData,\n selectModuleData,\n onAllValuesChange,\n}) => {\n const [form] = Form.useForm()\n const { t } = useTranslation()\n const initialValues = {\n xtitle: '',\n ytitle: '',\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 if (customData?.type?.includes('pie')) {\n return <div style={{ height: '50vh', overflowX: 'auto' }}></div>\n }\n\n return (\n <div style={{ height: '50vh', overflowX: 'auto' }}>\n <Form form={form} name=\"customeStyle\" layout=\"vertical\" initialValues={initialValues}>\n <Divider orientation=\"left\" orientationMargin=\"0\">\n {t('chart.t21')}\n </Divider>\n\n {!customData?.type?.includes('pie') ? (\n <Form.Item label={t('chart.t22')} name=\"xtitle\">\n <
|
|
1
|
+
{"version":3,"file":"custome-styles.js","sources":["../../../../../packages/dashboard-workbench/components/add-module-modal/add-chart-modal/custome-styles.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { useEffect } from 'react'\nimport { Checkbox, Col, Divider, Form, Input, Row } from 'antd'\nimport { useTranslation } from 'react-i18next'\nimport InputWrapper from '../../InputWrapper'\nimport { ModuleData } from '../../module-content'\nimport { ChartCustomeStylesTypes } from './interface'\n\ninterface CustomeStylesProps {\n customData?: any\n selectModuleData?: ModuleData\n onAllValuesChange?: ((values: any) => void) | undefined\n customeStylesRef?: any\n}\nconst CustomeStyles: React.FC<CustomeStylesProps> = ({\n customData,\n selectModuleData,\n onAllValuesChange,\n}) => {\n const [form] = Form.useForm()\n const { t } = useTranslation()\n const initialValues = {\n xtitle: '',\n ytitle: '',\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 if (customData?.type?.includes('pie')) {\n return <div style={{ height: '50vh', overflowX: 'auto' }}></div>\n }\n\n return (\n <div style={{ height: '50vh', overflowX: 'auto' }}>\n <Form form={form} name=\"customeStyle\" layout=\"vertical\" initialValues={initialValues}>\n <Divider orientation=\"left\" orientationMargin=\"0\">\n {t('chart.t21')}\n </Divider>\n\n {!customData?.type?.includes('pie') ? (\n <Form.Item label={t('chart.t22')} name=\"xtitle\">\n <InputWrapper\n onChange={() => {\n allValuesChange()\n }}\n />\n </Form.Item>\n ) : null}\n\n <Divider orientation=\"left\" orientationMargin=\"0\">\n {t('chart.t26')}\n </Divider>\n\n {!customData?.type?.includes('pie') ? (\n <Form.Item label={t('chart.t27')} name=\"ytitle\">\n <InputWrapper\n onChange={() => {\n allValuesChange()\n }}\n />\n </Form.Item>\n ) : null}\n </Form>\n </div>\n )\n}\nexport default CustomeStyles\n"],"names":[],"mappings":";;;;;AAcA,MAAM,gBAA8C,CAAC;AAAA,EACnD;AAAA,EACA;AAAA,EACA;AACF,MAAM;;AACJ,QAAM,CAAC,IAAI,IAAI,KAAK,QAAQ;AACtB,QAAA,EAAE,EAAE,IAAI,eAAe;AAC7B,QAAM,gBAAgB;AAAA,IACpB,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV;AAEA,QAAM,kBAAkB,MAAM;AAC5B,eAAW,MAAM;AACK,6DAAA,KAAK;IAAgB,CAC1C;AAAA,EACH;AAEA,YAAU,MAAM;AACd,QAAI,qDAAkB,cAAc;AAC7B,WAAA,eAAe,iBAAiB,YAAY;AAAA,IAAA,OAC5C;AACL,WAAK,eAAe,aAAa;AAAA,IAAA;AAAA,EACnC,GACC,CAAC,gBAAgB,CAAC;AAErB,OAAI,8CAAY,SAAZ,mBAAkB,SAAS,QAAQ;AAC9B,WAAA,oBAAC,SAAI,OAAO,EAAE,QAAQ,QAAQ,WAAW,UAAU;AAAA,EAAA;AAG5D,6BACG,OAAI,EAAA,OAAO,EAAE,QAAQ,QAAQ,WAAW,UACvC,UAAA,qBAAC,QAAK,MAAY,MAAK,gBAAe,QAAO,YAAW,eACtD,UAAA;AAAA,IAAA,oBAAC,WAAQ,aAAY,QAAO,mBAAkB,KAC3C,UAAA,EAAE,WAAW,GAChB;AAAA,IAEC,GAAC,8CAAY,SAAZ,mBAAkB,SAAS,UAC3B,oBAAC,KAAK,MAAL,EAAU,OAAO,EAAE,WAAW,GAAG,MAAK,UACrC,UAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,UAAU,MAAM;AACE,0BAAA;AAAA,QAAA;AAAA,MAClB;AAAA,OAEJ,IACE;AAAA,IAEJ,oBAAC,WAAQ,aAAY,QAAO,mBAAkB,KAC3C,UAAA,EAAE,WAAW,GAChB;AAAA,IAEC,GAAC,8CAAY,SAAZ,mBAAkB,SAAS,UAC3B,oBAAC,KAAK,MAAL,EAAU,OAAO,EAAE,WAAW,GAAG,MAAK,UACrC,UAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,UAAU,MAAM;AACE,0BAAA;AAAA,QAAA;AAAA,MAClB;AAAA,OAEJ,IACE;AAAA,EAAA,EAAA,CACN,EACF,CAAA;AAEJ;"}
|
package/es/dashboard-workbench/components/add-module-modal/add-statistics-modal/custome-data.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useState, useRef, useEffect } from "react";
|
|
3
|
-
import { Form, Button, Divider, Space } from "antd";
|
|
3
|
+
import { Form, Select, Button, Divider, Space } from "antd";
|
|
4
4
|
import { useTranslation } from "react-i18next";
|
|
5
5
|
import { useAppContext } from "../../../context.js";
|
|
6
|
-
import { SelectWrapper } from "../../SelectWrapper/index.js";
|
|
7
6
|
import ConditionModal from "../components/condition-modal/index.js";
|
|
8
7
|
const CustomData = ({
|
|
9
8
|
selectModuleData,
|
|
@@ -67,7 +66,7 @@ const CustomData = ({
|
|
|
67
66
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
68
67
|
/* @__PURE__ */ jsxs(Form, { form, name: "customData", layout: "vertical", initialValues, children: [
|
|
69
68
|
/* @__PURE__ */ jsx(Form.Item, { label: t("dataSource"), name: "dataSourceId", children: /* @__PURE__ */ jsx(
|
|
70
|
-
|
|
69
|
+
Select,
|
|
71
70
|
{
|
|
72
71
|
options: globalData == null ? void 0 : globalData.sourceData,
|
|
73
72
|
onChange: (val) => {
|
|
@@ -104,7 +103,7 @@ const CustomData = ({
|
|
|
104
103
|
label: t("statisticstMethods"),
|
|
105
104
|
name: "statisticalMethod",
|
|
106
105
|
children: /* @__PURE__ */ jsx(
|
|
107
|
-
|
|
106
|
+
Select,
|
|
108
107
|
{
|
|
109
108
|
onChange: (val) => {
|
|
110
109
|
form.setFieldsValue({
|
|
@@ -123,9 +122,10 @@ const CustomData = ({
|
|
|
123
122
|
),
|
|
124
123
|
/* @__PURE__ */ jsx(Form.Item, { dependencies: ["statisticalMethod"], children: ({ getFieldValue }) => getFieldValue("statisticalMethod") === "fieldValue" ? /* @__PURE__ */ jsx(Form.Item, { label: t("selectField"), children: /* @__PURE__ */ jsxs(Space.Compact, { children: [
|
|
125
124
|
/* @__PURE__ */ jsx(Form.Item, { noStyle: true, name: "field", children: /* @__PURE__ */ jsx(
|
|
126
|
-
|
|
125
|
+
Select,
|
|
127
126
|
{
|
|
128
127
|
style: { width: "100px" },
|
|
128
|
+
dropdownStyle: { width: 250 },
|
|
129
129
|
onChange: () => {
|
|
130
130
|
allValuesChange();
|
|
131
131
|
},
|
|
@@ -133,9 +133,10 @@ const CustomData = ({
|
|
|
133
133
|
}
|
|
134
134
|
) }),
|
|
135
135
|
/* @__PURE__ */ jsx(Form.Item, { name: "statisticalType", noStyle: true, children: /* @__PURE__ */ jsx(
|
|
136
|
-
|
|
136
|
+
Select,
|
|
137
137
|
{
|
|
138
138
|
style: { width: "100px" },
|
|
139
|
+
dropdownStyle: { width: 180 },
|
|
139
140
|
onChange: () => {
|
|
140
141
|
allValuesChange();
|
|
141
142
|
},
|