@ecan-bi/indicator-library 1.1.39 → 1.1.40

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index-c34874c5.mjs","sources":["../src/utils/withInstall.ts","../src/utils/constant.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/bar/props.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/line/props.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/pie/props.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/custom-graph/props.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/combo-graph/props.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/index.ts","../src/indicator/indicator-library/data-config/style-config-group/table-props/props.ts","../src/utils/loadAsyncComponent.ts","../node_modules/@ecan-bi/tools/lib/index.es.js","../src/utils/util.ts","../src/indicator/indicator-library/IndicatorLibrary.vue","../src/indicator/indicator-library/IndicatorLibrary.vue","../src/indicator/indicator-library/index.ts","../src/hooks/useIndicatorData.ts","../src/indicator/chart-graph/ChartGraph.vue","../src/indicator/chart-graph/ChartGraph.vue","../src/indicator/chart-graph/index.ts","../src/index.ts"],"sourcesContent":["// import { NOOP } from '@vue/shared'\n// import { Plugin } from 'vue'\n\n// export type SFCWithInstall<T> = T & Plugin\n\n// export const withInstall = <T, E extends Record<string, any>>(\n// main: T,\n// extra?: E\n// ) => {\n// (main as SFCWithInstall<T>).install = (app): void => {\n// for (const comp of [main, ...Object.values(extra ?? {})]) {\n// app.component(comp.name, comp)\n// }\n// }\n\n// if (extra) {\n// for (const [key, comp] of Object.entries(extra)) {\n// (main as any)[key] = comp\n// }\n// }\n// return main as SFCWithInstall<T> & E\n// }\n\n// export const withInstallFunction = <T>(fn: T, name: string) => {\n// (fn as SFCWithInstall<T>).install = (app) => {\n// app.config.globalProperties[name] = fn\n// }\n\n// return fn as SFCWithInstall<T>\n// }\n\n// export const withNoopInstall = <T>(component: T) => {\n// (component as SFCWithInstall<T>).install = NOOP\n\n// return component as SFCWithInstall<T>\n// }\nexport const withInstall = (comp) => {\n comp.install = (app) => {\n // 注册组件\n app.component(comp.name, comp)\n }\n return comp\n}\n","export const REQUEST = '$request'\n// @ts-ignore\nexport const INDICATOR_URL = window?.config?.indicatorURL || ''\n\nexport const INDICATOR_TOKEN = 'INDICATOR_TOKEN'\n\nexport const CONTAINER_TYPES = ['tabs', 'border']\n\nexport const CACHE_STEP = 'CACHE_STEP'\n\nexport const UPDATE_SNAPSHOT_LIST = 'UPDATE_SNAPSHOT_LIST'\n\nexport const REQUEST_MODEL = 'REQUEST_MODEL'\n\nexport const DATA_LIST = 'DATA_LIST'\n\nexport const SELECTED_COMPONENT = 'SELECTED_COMPONENT'\n\nexport const GRAPHIC_CONFIG = 'GRAPHIC_CONFIG'\n\nexport const UPDATE_GRAPHIC_CONFIG = 'UPDATE_GRAPHIC_CONFIG'\n\nexport const SHOW_STYLE_CONFIG = 'SHOW_STYLE_CONFIG'\n\nexport const REFRESH_DATA = 'REFRESH_DATA'\n\nexport const CHARTS_OPTIONS = 'CHARTS_OPTIONS'\n\nexport const TABLE_OPTIONS = 'TABLE_OPTIONS'\n\nexport const ZOOM_FONT_SIZE = 18\n\nexport const UPDATE_CHARTS_OPTIONS = 'UPDATE_CHARTS_OPTIONS'\n\nexport const UPDATE_TABLE_OPTIONS = 'UPDATE_TABLE_OPTIONS'\n\nexport const SOURCE_TYPE = 'SOURCE_TYPE'\n\nexport const CHANGE_CONDITION = 'CHANGE_CONDITION'\n\nexport const DATA_VIEW_COLUMNS = 'DATA_VIEW_COLUMNS'\n\nexport const RENDER_USED_COMPONENTS = 'RENDER_USED_COMPONENTS'\n\nexport const UPDATE_USED_COMPONENT = 'UPDATE_USED_COMPONENT'\n\nexport const UPDATE_COMPONENTS_CONFIG = 'UPDATE_COMPONENTS_CONFIG'\n\nexport const MAP_ATTRIBUTE_PROPS = 'MAP_ATTRIBUTE_PROPS'\n\nexport const PAGE_CONFIG = 'PAGE_CONFIG'\n\nexport const IS_PIVOT_TABLE = 'IS_PIVOT_TABLE'\n\nexport const IS_IFRAME_MODE = 'IS_IFRAME_MODE'\n","export interface BarProps {\n name: String,\n type: String,\n width: string // 图表宽度\n height: string // 图表高度\n titleText: string\n titleSubtext: string\n titleFontSize: string\n titleColor: string\n fontWeight: number\n textAlign: 'left' | 'right' | 'center'\n colors: string []\n legendShow: boolean\n legendTextStyleColor: string\n legendLeft: 'left' | 'center' | 'right'\n legendTop: 'top' | 'middle' | 'bottom'\n legendOrient: 'vertical' | 'horizontal'\n xAxisLabelInterval: number\n xAxisSplitLineShow: boolean // x轴展示分割线\n xAxisSplitAreaShow: boolean // x轴展示分割区域\n xAxisSplitLineInterval: number // x轴分割线间隔\n xAxisLabelColor: string // x轴名称颜色\n xAxisLabelWidth: number | undefined // x轴名称宽度\n xAxisLabelOverflow: 'none' | 'truncate' | 'break' | 'breakAll' // x轴名称溢出操作\n xAxisLabelRotate: number // x轴名称旋转\n xAxisLineShow: boolean // x轴线显示\n xAxisLineStyleColor: string // x轴名称颜色\n xAxisTickShow: boolean // 展示刻度\n xAxisLabelFormatter: string\n xAxisSplitLineStyleColor: string // x轴分割线颜色\n xAxisInverse: boolean\n xAxisMinInterval: number\n yAxisMinInterval: number\n yAxisInverse: boolean\n yAxisLabelWidth: number | undefined // y轴名称宽度\n yAxisLabelOverflow: 'none' | 'truncate' | 'break' | 'breakAll' // y轴名称溢出操作\n yAxisLabelRotate: number // y轴名称旋转\n yAxisSplitLineShow: boolean // y轴展示分割线\n yAxisSplitAreaShow: boolean // y轴展示分割区域\n yAxisSplitLineStyleColor: string // y轴分割线颜色\n yAxisLabelColor: string // y轴名称颜色\n yAxisLineStyleColor: string // y轴名称颜色\n yAxisLabelFormatter: string\n yAxisLineAlwaysDisplay: boolean // 总是显示y轴\n valueTypeDataFieldNames: any\n keyTypeDataFieldNames: any\n dataFieldConfigType: 'key' | 'value'\n tooltipShow: boolean\n tooltipTextStyleColor: string\n tooltipFormatter: string,\n tooltipPosition: string\n gridContainLabel: boolean\n gridTop: string\n gridBottom: string\n gridLeft: string\n gridRight: string\n barWidth: string\n graphicConfig: { [key:string]: any }\n toolboxShow: boolean\n toolboxLocation: boolean\n toolboxDownloadShow:boolean\n toolboxDataZoomShow: boolean\n toolboxInfoShow: boolean\n toolboxOrient: 'horizontal' | 'vertical'\n toolboxItemSize: number // 工具栏 icon 的大小。\n toolboxItemGap: number // 工具栏 icon 每项之间的间隔。横向布局时为水平间隔,纵向布局时为纵向间隔。\n toolboxLeft: 'left' | 'center' | 'right'\n toolboxTop: 'top'| 'middle'| 'bottom'\n toolboxIconStyleBorderColor: string\n toolboxDownloadUrl: string\n toolboxInfoText: string\n isUseHorizontalAxis: boolean\n axisInverse: boolean\n isStack: boolean\n stackColumns: string[],\n labelShow: boolean\n labelFontSize: string\n labelPosition: 'inside' | 'top' | 'bottom' | 'right' | 'left'\n labelColor: string\n labelWidth: number\n labelOverflow: 'none' | 'truncate' | 'break'\n labelFormatter: string\n gradientShow: boolean // 柱状图渐变设置\n gradientColors: string []\n gradientOffset: number\n barBorderRadius: string // 柱状图圆角设置\n yAxisLabelShow: boolean // 是否显示y轴坐标轴刻度标签\n yAxisSplitLineType: 'solid' | 'dashed' | 'dotted' // 分割线类型\n xAxisSplitLineType: 'solid' | 'dashed' | 'dotted' // 分割线类型\n legendItemGap: number\n legendItemWidth: number\n legendItemHeight: number\n showBarBackground: boolean\n legendType: string\n legendFontSize: string\n xAxisLabelFontSize: string\n yAxisLabelFontSize: string\n graphicType: string\n isShowMarkLine: boolean\n markLineType: 'min' | 'max' | 'average' | 'median'\n legendFormatter: string\n legendWidth: number | null\n legendHeight: number | null\n legendTextWidth: number | null\n legendScroll: boolean\n yAxisName: string\n xAxisName: string\n defaultRangeValue: boolean\n startValue: string\n endValue: string\n xAxisMaxValue: number\n yAxisMaxValue: number\n colorsType: string\n}\n\nexport const barProps: BarProps = {\n name: '柱状图',\n type: 'bar',\n width: '400px',\n height: '400px',\n xAxisLabelFormatter: '{value}',\n yAxisLabelFormatter: '{value}',\n yAxisLineAlwaysDisplay: false,\n titleText: '',\n titleSubtext: '',\n titleFontSize: '12px',\n titleColor: '#333',\n fontWeight: 400,\n textAlign: 'left',\n colors: ['#5470c6', '#91cc75', '#fac858', '#ee6666', '#73c0de', '#3ba272', '#fc8452', '#9a60b4', '#ea7ccc'],\n legendShow: true,\n legendTextStyleColor: '#333',\n legendOrient: 'horizontal',\n legendTop: 'top',\n legendLeft: 'center',\n tooltipShow: true,\n tooltipTextStyleColor: '',\n tooltipFormatter: '{marker} {a} {c}',\n xAxisSplitLineShow: true,\n xAxisSplitLineInterval: 0,\n xAxisSplitAreaShow: false,\n xAxisSplitLineStyleColor: '#333',\n xAxisLabelInterval: 0,\n xAxisLabelColor: '#333',\n xAxisLabelWidth: undefined,\n xAxisLabelRotate: 0,\n xAxisLabelOverflow: 'none',\n xAxisLineShow: true,\n xAxisLineStyleColor: '#333',\n xAxisTickShow: true,\n xAxisMinInterval: 0,\n yAxisMinInterval: 0,\n yAxisLabelWidth: undefined,\n yAxisLabelRotate: 0,\n yAxisLabelOverflow: 'none',\n yAxisSplitLineShow: true,\n yAxisSplitAreaShow: false,\n yAxisSplitLineStyleColor: '#333',\n yAxisLabelColor: '#333',\n yAxisLineStyleColor: '#333',\n valueTypeDataFieldNames: { name: 'name', value: 'value', type: 'type' },\n keyTypeDataFieldNames: { name: 'name', types: [] },\n dataFieldConfigType: 'value',\n barWidth: '40%',\n gridContainLabel: true,\n gridTop: '10%',\n gridBottom: '10%',\n gridLeft: '5%',\n gridRight: '5%',\n graphicConfig: {},\n toolboxShow: false,\n toolboxOrient: 'horizontal',\n toolboxItemSize: 16,\n toolboxItemGap: 8,\n toolboxLeft: 'right',\n toolboxTop: 'top',\n toolboxIconStyleBorderColor: '#666',\n toolboxDownloadUrl: '',\n toolboxInfoText: '当前无说明信息',\n isUseHorizontalAxis: false,\n axisInverse: false,\n xAxisInverse: false,\n yAxisInverse: false,\n isStack: false,\n stackColumns: [],\n labelShow: false,\n labelFontSize: '12px',\n labelPosition: 'inside',\n labelColor: '',\n labelWidth: 100,\n labelOverflow: 'none',\n labelFormatter: '{c}',\n toolboxLocation: false,\n toolboxDownloadShow: true,\n toolboxDataZoomShow: true,\n toolboxInfoShow: true,\n gradientShow: false,\n gradientColors: ['#5470c6', '#91cc75', '#fac858', '#ee6666', '#73c0de', '#3ba272', '#fc8452', '#9a60b4', '#ea7ccc'],\n gradientOffset: 1,\n barBorderRadius: '',\n yAxisLabelShow: true,\n yAxisSplitLineType: 'solid',\n xAxisSplitLineType: 'solid',\n legendItemGap: 10,\n legendItemWidth: 25,\n legendItemHeight: 14,\n showBarBackground: false,\n legendType: '',\n legendFontSize: '12px',\n xAxisLabelFontSize: '12px',\n yAxisLabelFontSize: '12px',\n graphicType: 'ecanBar',\n tooltipPosition: '',\n isShowMarkLine: false,\n markLineType: 'average',\n legendFormatter: '{name}',\n legendWidth: null,\n legendHeight: null,\n legendTextWidth: null,\n legendScroll: false,\n yAxisName: '',\n xAxisName: '',\n defaultRangeValue: false,\n startValue: '',\n endValue: '',\n xAxisMaxValue: null,\n yAxisMaxValue: null,\n colorsType: '默认'\n}\n","export interface LineProps {\n name: String\n type: String\n width: string // 图表宽度\n height: string // 图表高度\n colors: string[]\n colorsType: string\n titleText: string\n titleSubtext: string\n legendShow: boolean\n legendLeft: 'left' | 'center' | 'right'\n legendCustomPosition: boolean\n legendTop: 'top' | 'middle' | 'bottom'\n legendOrient: 'vertical' | 'horizontal' // 标记点大小\n legendTextStyleColor: string\n legendTextStyleFontSize: number\n legendTextItemGap: number\n symbolSize: number // 线宽度\n lineStyleWidth: number // 线宽\n smooth: boolean // 光滑\n xAxisName: string\n xAxisShow: boolean\n xAxisLabelInterval: number\n xAxisSplitLineShow: boolean // x轴展示分割线\n xAxisLabelColor: string // x轴名称颜色\n xAxisLineStyleColor: string // x轴名称颜色\n xAxisSplitLineStyleColor: string // x轴分割线颜色\n xAxisTickShow: boolean // 展示刻度\n xAxisLabelFormatter: string // 格式化\n xAxisInverse: boolean\n xAxisMinInterval: number\n xAxisLabelWidth: number | undefined // x轴名称宽度\n xAxisLabelOverflow: 'none' | 'truncate' | 'break' | 'breakAll' // x轴名称溢出操作\n xAxisLabelRotate: number // x轴名称旋转\n xAxisType: 'value' | 'category' | 'time' | 'log'\n yAxisName: string\n yAxisMinInterval: number\n yAxisInverse: boolean\n yAxisSplitLineShow: boolean // y轴展示分割线\n yAxisSplitLineStyleColor: string // y轴分割线颜色\n yAxisLabelColor: string // y轴名称颜色\n yAxisLineStyleColor: string // y轴名称颜色\n yAxisLineAlwaysDisplay: boolean // 总是显示y轴\n yAxisLabelFormatter: string // 格式化\n yAxisLabelShow: boolean\n yAxisSplitLineType: 'solid' | 'dashed' | 'dotted' // 分割线类型\n xAxisSplitLineType: 'solid' | 'dashed' | 'dotted' // 分割线类型\n gridContainLabel: boolean\n gridTop: string\n gridBottom: string\n gridLeft: string\n gridRight: string\n tooltipShow: boolean\n tooltipTextStyleColor: string\n tooltipFormatter: string\n tooltipBorderColor: string\n tooltipBackgroundColor: string\n toolboxShow: boolean\n toolboxDownloadShow: boolean\n toolboxDataZoomShow: boolean\n toolboxInfoShow: boolean\n toolboxOrient: 'horizontal' | 'vertical'\n toolboxItemSize: number // 工具栏 icon 的大小。\n toolboxItemGap: number // 工具栏 icon 每项之间的间隔。横向布局时为水平间隔,纵向布局时为纵向间隔。\n toolboxLeft: 'left' | 'center' | 'right'\n toolboxTop: 'top' | 'middle' | 'bottom'\n toolboxIconStyleBorderColor: string\n toolboxDownloadUrl: string\n toolboxInfoText: string\n areaStyleOpacity: number\n // 新加属性\n titleFontSize: string\n titleColor: string\n fontWeight: number\n textAlign: 'left' | 'right' | 'center'\n titleLeft: string\n xAxisSplitAreaShow: boolean // x轴展示分割区域\n xAxisSplitLineInterval: number // x轴分割间隔\n xAxisLineShow: boolean // 显示轴线\n valueTypeDataFieldNames: any\n keyTypeDataFieldNames: any\n dataFieldConfigType: 'key' | 'value'\n graphicConfig: { [key:string]: any }\n areaGradientShow: boolean // 分隔区域渐变\n areaGradientColor: string // 分隔区域渐变颜色\n isBoundaryGap: boolean // 是否两边留白\n legendItemGap: number\n legendItemWidth: number\n legendItemHeight: number\n legendType: string // 图例类型\n shadowColor: string // 阴影颜色\n shadowBlur: number // 阴影模糊度\n shadowOffsetY: number // 阴影偏移量-Y\n shadowOffsetX: number // 阴影偏移量-X\n legendFontSize: string\n xAxisLabelFontSize: string\n yAxisLabelFontSize: string\n graphicType: string\n tooltipPosition: string\n isShowMarkLine: boolean\n markLineType: 'min' | 'max' | 'average' | 'median'\n legendFormatter: string\n legendWidth: number | null\n legendHeight: number | null\n legendTextWidth: number | null\n legendScroll: boolean\n xAxisMaxValue: number\n yAxisMaxValue: number\n}\n\nexport const lineProps = {\n name: '折线图',\n type: 'line',\n width: '400px',\n height: '400px',\n\n colors: ['#FFBF53', '#04B1C2', '#F07474', '#C55784', '#9A5FB3', '#CF62D7', '#5E78EA', '#51B3F0', '#69D4DC', '#49B788', '#9CCC66', '#C18C00'],\n colorsType: '默认',\n\n legendShow: true,\n legendOrient: 'horizontal',\n legendTop: 'top',\n legendLeft: 'center',\n legendCustomPosition: false,\n legendTextStyleColor: '#333',\n legendTextStyleFontSize: '12px',\n legendTextItemGap: 10,\n legendTopPadding: 10,\n legendBottomPadding: 10,\n legendLeftPadding: 10,\n legendRightPadding: 10,\n titleText: '',\n titleSubtext: '',\n symbolSize: 4,\n lineStyleWidth: 2,\n smooth: false,\n xAxisName: '',\n xAxisType: 'category',\n xAxisShow: true,\n xAxisLabelWidth: undefined,\n xAxisLabelRotate: 0,\n xAxisLabelOverflow: 'none',\n xAxisLabelInterval: 0,\n xAxisSplitLineShow: true,\n xAxisSplitLineStyleColor: '#333',\n xAxisLabelColor: '#333',\n xAxisLineStyleColor: '#333',\n xAxisTickShow: true,\n xAxisLabelFormatter: '{value}', // 格式化\n xAxisMinInterval: 0,\n yAxisName: '',\n yAxisMinInterval: 0,\n yAxisSplitLineShow: true,\n yAxisSplitLineStyleColor: '#333',\n yAxisLabelColor: '#333',\n yAxisLineStyleColor: '#333',\n yAxisLineAlwaysDisplay: false,\n yAxisLabelShow: true,\n yAxisLabelFormatter: '{value}',\n yAxisSplitLineType: 'solid',\n xAxisSplitLineType: 'solid',\n gridContainLabel: true,\n gridTop: '10%',\n gridBottom: '10%',\n gridLeft: '5%',\n gridRight: '5%',\n tooltipShow: true,\n tooltipTextStyleColor: '',\n tooltipFormatter: '{marker} {a} {c}',\n tooltipBorderColor: '#333',\n tooltipBackgroundColor: '#fff',\n toolboxShow: false,\n toolboxDownloadShow: true,\n toolboxDataZoomShow: true,\n toolboxInfoShow: true,\n toolboxOrient: 'horizontal',\n toolboxItemSize: 16,\n toolboxItemGap: 8,\n toolboxLeft: 'right',\n toolboxTop: 'top',\n toolboxIconStyleBorderColor: '#666',\n toolboxDownloadUrl: '',\n toolboxInfoText: '当前无说明信息',\n areaStyleOpacity: 0,\n\n // 新加属性\n titleFontSize: '12px',\n titleColor: '#333',\n fontWeight: 400,\n textAlign: 'left',\n titleLeft: '',\n xAxisSplitAreaShow: false,\n xAxisSplitLineInterval: 0,\n xAxisLineShow: true,\n yAxisSplitAreaShow: false,\n valueTypeDataFieldNames: { name: 'name', value: 'value', type: 'type' },\n keyTypeDataFieldNames: { name: 'name', types: [] },\n dataFieldConfigType: 'value',\n graphicConfig: {},\n areaGradientShow: false,\n areaGradientColor: '',\n isBoundaryGap: true,\n legendItemGap: 10,\n legendItemWidth: 25,\n legendItemHeight: 14,\n legendType: '',\n shadowColor: '',\n shadowBlur: 0,\n shadowOffsetY: 0,\n shadowOffsetX: 0,\n legendFontSize: '12px',\n xAxisLabelFontSize: '12px',\n yAxisLabelFontSize: '12px',\n graphicType: 'ecanLine',\n tooltipPosition: '',\n isShowMarkLine: false,\n markLineType: 'average',\n legendFormatter: '{name}',\n legendWidth: null,\n legendHeight: null,\n legendTextWidth: null,\n legendScroll: false,\n xAxisMaxValue: null,\n yAxisMaxValue: null\n}\n","\nexport interface PieProps {\n name: String,\n type: String,\n width: string // 图表宽度\n height: string // 图表高度\n colors: string[]\n colorsType: string\n titleText: string\n titleSubtext: string\n backgroundColor: string\n toolboxDownloadShow: boolean\n toolboxDataZoomShow: boolean\n toolboxInfoShow: boolean\n tooltipShow: boolean\n tooltipTrigger: 'item' | 'axis' | 'none'\n tooltipTextStyleColor: string\n tooltipFormatter: string\n tooltipBorderColor: string\n tooltipBackgroundColor: string\n legendShow: boolean\n legendLeft: 'left' | 'center' | 'right'\n legendTop: 'top' | 'middle' | 'bottom'\n legendOrient: 'vertical' | 'horizontal'\n legendTextStyleColor: string\n innerRadius: string\n outerRadius: string\n centerLeft: string\n centerTop: string\n minAngle: number\n labelShow: boolean\n labelFormatter: string\n labelFontSize: number\n labelPosition: 'outside' | 'inside' | 'center'\n labelLineShow: boolean\n labelColor: string\n isUseLabelColors: boolean\n labelLineLength: number\n labelLineLength2: number\n roseType: '' | 'radius' | 'area'\n gridContainLabel: boolean\n gridTop: string\n gridBottom: string\n gridLeft: string\n gridRight: string\n toolboxShow: boolean\n toolboxOrient: 'horizontal' | 'vertical'\n toolboxItemSize: number // 工具栏 icon 的大小。\n toolboxItemGap: number // 工具栏 icon 每项之间的间隔。横向布局时为水平间隔,纵向布局时为纵向间隔。\n toolboxLeft: 'left' | 'center' | 'right'\n toolboxTop: 'top' | 'middle' | 'bottom'\n toolboxIconStyleBorderColor: string\n toolboxDownloadUrl: string\n toolboxInfoText: string\n\n titleFontSize: string\n titleColor: string\n fontWeight: number\n textAlign: 'left' | 'right' | 'center'\n titleLeft: string\n labelWidth: number\n labelOverflow: 'none' | 'truncate' | 'break'\n valueTypeDataFieldNames: any,\n dataFieldConfigType: 'key' | 'value',\n graphicConfig: { [key:string]: any }\n legendItemGap: number\n legendItemWidth: number\n legendItemHeight: number\n legendFormatter: string\n legendFontSize: string\n graphicType: string\n legendWidth: number | null\n legendHeight: number | null\n legendTextWidth: number | null\n legendScroll: boolean\n}\n\nexport const pieProps: PieProps = {\n name: '饼图',\n type: 'pie',\n width: '400px',\n height: '400px',\n titleText: '',\n titleSubtext: '',\n\n colors: ['#FFBF53', '#04B1C2', '#F07474', '#C55784', '#9A5FB3', '#CF62D7', '#5E78EA', '#51B3F0', '#69D4DC', '#49B788', '#9CCC66', '#C18C00'],\n colorsType: '默认',\n\n backgroundColor: '',\n toolboxDownloadShow: true,\n toolboxDataZoomShow: true,\n toolboxInfoShow: true,\n\n tooltipShow: true,\n tooltipTextStyleColor: '',\n tooltipTrigger: 'item',\n tooltipFormatter: '{marker} {b} {c} ({d}%)',\n tooltipBorderColor: '#333',\n tooltipBackgroundColor: '#fff',\n\n legendShow: true,\n legendTextStyleColor: '#333',\n legendOrient: 'vertical',\n legendTop: 'top',\n legendLeft: 'left',\n innerRadius: '0%',\n outerRadius: '60%',\n centerLeft: '50%',\n centerTop: '50%',\n minAngle: 0,\n labelShow: true,\n labelColor: '#333',\n isUseLabelColors: false,\n labelFontSize: 12,\n labelPosition: 'outside',\n labelFormatter: '{b}\\\\n{d}%',\n labelLineShow: true,\n labelLineLength: 10,\n labelLineLength2: 15,\n roseType: '',\n gridContainLabel: true,\n gridTop: '10%',\n gridBottom: '10%',\n gridLeft: '5%',\n gridRight: '5%',\n toolboxShow: false,\n toolboxOrient: 'horizontal',\n toolboxItemSize: 16,\n toolboxItemGap: 8,\n toolboxLeft: 'right',\n toolboxTop: 'top',\n toolboxIconStyleBorderColor: '#666',\n toolboxDownloadUrl: '',\n toolboxInfoText: '当前无说明信息',\n\n titleFontSize: '12px',\n titleColor: '#333',\n fontWeight: 400,\n textAlign: 'left',\n titleLeft: '',\n labelWidth: 100,\n labelOverflow: 'none',\n valueTypeDataFieldNames: { name: 'name', value: 'value', type: 'type' },\n dataFieldConfigType: 'value',\n graphicConfig: {},\n legendItemGap: 10,\n legendItemWidth: 25,\n legendItemHeight: 14,\n legendFormatter: '{name}',\n legendFontSize: '12px',\n graphicType: 'ecanPie',\n legendWidth: null,\n legendHeight: null,\n legendTextWidth: null,\n legendScroll: false\n}\n","export interface CustomGraphProps {\n name: String,\n type: String,\n width: string // 图表宽度\n height: string // 图表高度\n option: { [key: string]: any }\n optionCode: string\n}\n\nexport const customGraphProps: CustomGraphProps = {\n name: '自定义图表',\n type: 'customGraph',\n width: '400px',\n height: '400px',\n option: {},\n optionCode: ''\n}\n","\nexport interface ComboGraphProps {\n name: String,\n type: String,\n width: string // 图表宽度\n height: string // 图表高度\n colors: string[]\n colorsType: string\n titleText: string\n titleSubtext: string\n legendShow: boolean\n legendTextStyleColor: string\n legendLeft: 'left' | 'center' | 'right'\n legendTop: 'top' | 'middle' | 'bottom'\n legendOrient: 'vertical' | 'horizontal'\n xAxisLabelInterval: number\n xAxisSplitLineShow: boolean // x轴展示分割线\n xAxisMinInterval: number // 最小间距\n xAxisLabelColor: string // x轴名称颜色\n xAxisLabelRotate: number\n xAxisLabelOverflow: string\n xAxisLabelWidth: number | undefined // x轴名称宽度\n xAxisLineStyleColor: string // x轴名称颜色\n xAxisTickShow: boolean // 展示刻度\n yAxisSplitLineShow: boolean // y轴展示分割线\n xAxisSplitLineStyleColor: string // x轴分割线颜色\n yAxisSplitLineStyleColor: string // y轴分割线颜色\n yAxisLabelColor: string // y轴名称颜色\n yAxisLineStyleColor: string // y轴名称颜色\n yAxisLineAlwaysDisplay: boolean // 总是显示y轴\n yAxisLabelShow: boolean\n\n tooltipShow: boolean\n tooltipTextStyleColor: string\n tooltipFormatter: string\n tooltipBorderColor: string\n tooltipBackgroundColor: string\n tooltipTrigger: 'item' | 'axis' | 'none'\n\n seriesTypes: { [key: string]: any }[]\n yAxis: { [key: string]: any }[]\n yAxisMinInterval: number\n gridContainLabel: boolean\n gridTop: string\n gridBottom: string\n gridLeft: string\n gridRight: string\n toolboxShow: boolean\n toolboxLocation: boolean\n toolboxDownloadShow: boolean\n toolboxDataZoomShow: boolean\n toolboxInfoShow: boolean\n toolboxOrient: 'horizontal' | 'vertical'\n toolboxItemSize: number // 工具栏 icon 的大小。\n toolboxItemGap: number // 工具栏 icon 每项之间的间隔。横向布局时为水平间隔,纵向布局时为纵向间隔。\n toolboxLeft: 'left' | 'center' | 'right'\n toolboxTop: 'top' | 'middle' | 'bottom'\n toolboxIconStyleBorderColor: string\n toolboxDownloadUrl: string\n toolboxInfoText: string\n symbolSize: number // 线宽度\n lineStyleWidth: number // 线宽\n smooth: boolean // 光滑\n areaStyleOpacity: number\n barWidth: string\n}\n\nexport const comboGraphProps: ComboGraphProps = {\n name: '组合图表',\n type: 'comboGraph',\n width: '400px',\n height: '400px',\n titleText: '',\n titleSubtext: '',\n colors: ['#FFBF53', '#04B1C2', '#F07474', '#C55784', '#9A5FB3', '#CF62D7', '#5E78EA', '#51B3F0', '#69D4DC', '#49B788', '#9CCC66', '#C18C00'],\n colorsType: '默认',\n legendShow: true,\n legendTextStyleColor: '#333',\n legendOrient: 'horizontal',\n legendTop: 'top',\n legendLeft: 'center',\n\n tooltipShow: true,\n tooltipTextStyleColor: '',\n tooltipTrigger: 'item',\n tooltipFormatter: '{marker} {a} {c}',\n tooltipBorderColor: '#333',\n tooltipBackgroundColor: '#fff',\n\n xAxisLabelInterval: 0,\n xAxisSplitLineShow: true,\n xAxisLabelRotate: 0,\n xAxisLabelOverflow: 'none',\n xAxisLabelWidth: undefined,\n xAxisSplitLineStyleColor: '#333',\n xAxisLabelColor: '#333',\n xAxisLineStyleColor: '#333',\n xAxisTickShow: true,\n xAxisMinInterval: 0,\n yAxisMinInterval: 0,\n yAxisSplitLineShow: true,\n yAxisSplitLineStyleColor: '#333',\n yAxisLabelColor: '#333',\n yAxisLineStyleColor: '#333',\n yAxisLineAlwaysDisplay: false,\n yAxisLabelShow: true,\n seriesTypes: [\n {\n type: 'bar',\n axisIndex: 0\n },\n {\n type: 'line',\n axisIndex: 0\n }\n ],\n yAxis: [\n {\n axisLabelFormatter: '{value}'\n },\n {\n axisLabelFormatter: '{value}'\n }\n ],\n gridContainLabel: true,\n gridTop: '10%',\n gridBottom: '10%',\n gridLeft: '5%',\n gridRight: '5%',\n toolboxShow: false,\n toolboxLocation: false,\n toolboxDownloadShow: true,\n toolboxDataZoomShow: true,\n toolboxInfoShow: true,\n toolboxOrient: 'horizontal',\n toolboxItemSize: 16,\n toolboxItemGap: 8,\n toolboxLeft: 'right',\n toolboxTop: 'top',\n toolboxIconStyleBorderColor: '#666',\n toolboxDownloadUrl: '',\n toolboxInfoText: '当前无说明信息',\n areaStyleOpacity: 0,\n symbolSize: 4,\n lineStyleWidth: 2,\n smooth: false,\n barWidth: '40%'\n}\n","import { barProps } from './bar'\nimport { lineProps } from './line'\nimport { pieProps } from './pie'\nimport { customGraphProps } from './custom-graph'\nimport { comboGraphProps } from './combo-graph'\n\nexport default {\n bar: barProps,\n line: lineProps,\n pie: pieProps,\n customGraph: customGraphProps,\n comboGraph: comboGraphProps\n}\n","\r\nexport interface TableProps {\r\n name: String\r\n type: String\r\n size: String // 尺寸\r\n allOverflow: String // 内容超出\r\n hoverRow: Boolean // 点击行高亮\r\n hoverColor: String // hover行颜色\r\n headerCellStyleMethod: String // 表头单元格样式\r\n rowStyleMethod: String // 行样式\r\n boderList: Array<String> // 边框不显示\r\n columnDropEnable: Boolean // 列拖拽\r\n showTotalBool: Boolean // 显示汇总行\r\n totalName: String // 汇总行名\r\n expandAll: Boolean // 展开所有节点\r\n}\r\n\r\nexport const tableProps: TableProps = {\r\n name: '表格',\r\n type: 'table',\r\n size: 'medium',\r\n allOverflow: 'title',\r\n hoverRow: true,\r\n hoverColor: '#f5f7fa',\r\n headerCellStyleMethod: '',\r\n rowStyleMethod: '',\r\n boderList: [],\r\n columnDropEnable: true,\r\n showTotalBool: false,\r\n totalName: '',\r\n expandAll: false\r\n}\r\n","import { defineAsyncComponent, AsyncComponentLoader } from 'vue'\nconst loadAsyncComponent = (loader: AsyncComponentLoader<any>) => defineAsyncComponent({\n loader,\n delay: 200\n})\n\nexport default loadAsyncComponent\n","function e(e,t){var o={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(o[n]=e[n]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(n=Object.getOwnPropertySymbols(e);r<n.length;r++)t.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(e,n[r])&&(o[n[r]]=e[n[r]])}return o}function t(e,t,o,n){return new(o||(o=Promise))((function(r,i){function a(e){try{s(n.next(e))}catch(e){i(e)}}function l(e){try{s(n.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?r(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(a,l)}s((n=n.apply(e,t||[])).next())}))}function o(e,t){const o=Object.create(null),n=e.split(\",\");for(let e=0;e<n.length;e++)o[n[e]]=!0;return e=>!!o[e]}const n=()=>{},r=Object.assign,i=Object.prototype.hasOwnProperty,a=(e,t)=>i.call(e,t),l=Array.isArray,s=e=>\"[object Map]\"===h(e),c=e=>\"function\"==typeof e,u=e=>\"string\"==typeof e,d=e=>\"symbol\"==typeof e,f=e=>null!==e&&\"object\"==typeof e,p=Object.prototype.toString,h=e=>p.call(e),y=e=>h(e).slice(8,-1),m=e=>u(e)&&\"NaN\"!==e&&\"-\"!==e[0]&&\"\"+parseInt(e,10)===e,g=(e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))})((e=>e.charAt(0).toUpperCase()+e.slice(1))),v=(e,t)=>!Object.is(e,t);let b;const x=()=>b||(b=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:{});function w(e,...t){console.warn(`[Vue warn] ${e}`,...t)}const S=e=>{const t=new Set(e);return t.w=0,t.n=0,t},A=e=>(e.w&C)>0,_=e=>(e.n&C)>0,L=new WeakMap;let O=0,C=1;let j;const N=Symbol(\"production\"!==process.env.NODE_ENV?\"iterate\":\"\"),T=Symbol(\"production\"!==process.env.NODE_ENV?\"Map key iterate\":\"\");class M{constructor(e,t=null,o){this.fn=e,this.scheduler=t,this.active=!0,this.deps=[],this.parent=void 0,function(e,t){t&&t.active&&t.effects.push(e)}(this,o)}run(){if(!this.active)return this.fn();let e=j,t=D;for(;e;){if(e===this)return;e=e.parent}try{return this.parent=j,j=this,D=!0,C=1<<++O,O<=30?(({deps:e})=>{if(e.length)for(let t=0;t<e.length;t++)e[t].w|=C})(this):k(this),this.fn()}finally{O<=30&&(e=>{const{deps:t}=e;if(t.length){let o=0;for(let n=0;n<t.length;n++){const r=t[n];A(r)&&!_(r)?r.delete(e):t[o++]=r,r.w&=~C,r.n&=~C}t.length=o}})(this),C=1<<--O,j=this.parent,D=t,this.parent=void 0,this.deferStop&&this.stop()}}stop(){j===this?this.deferStop=!0:this.active&&(k(this),this.onStop&&this.onStop(),this.active=!1)}}function k(e){const{deps:t}=e;if(t.length){for(let o=0;o<t.length;o++)t[o].delete(e);t.length=0}}let D=!0;const $=[];function E(){$.push(D),D=!1}function F(){const e=$.pop();D=void 0===e||e}function V(e,t,o){if(D&&j){let n=L.get(e);n||L.set(e,n=new Map);let r=n.get(o);r||n.set(o,r=S());z(r,\"production\"!==process.env.NODE_ENV?{effect:j,target:e,type:t,key:o}:void 0)}}function z(e,t){let o=!1;O<=30?_(e)||(e.n|=C,o=!A(e)):o=!e.has(j),o&&(e.add(j),j.deps.push(e),\"production\"!==process.env.NODE_ENV&&j.onTrack&&j.onTrack(r({effect:j},t)))}function I(e,t,o,n,r,i){const a=L.get(e);if(!a)return;let c=[];if(\"clear\"===t)c=[...a.values()];else if(\"length\"===o&&l(e)){const e=Number(n);a.forEach(((t,o)=>{(\"length\"===o||!d(o)&&o>=e)&&c.push(t)}))}else switch(void 0!==o&&c.push(a.get(o)),t){case\"add\":l(e)?m(o)&&c.push(a.get(\"length\")):(c.push(a.get(N)),s(e)&&c.push(a.get(T)));break;case\"delete\":l(e)||(c.push(a.get(N)),s(e)&&c.push(a.get(T)));break;case\"set\":s(e)&&c.push(a.get(N))}const u=\"production\"!==process.env.NODE_ENV?{target:e,type:t,key:o,newValue:n,oldValue:r,oldTarget:i}:void 0;if(1===c.length)c[0]&&(\"production\"!==process.env.NODE_ENV?R(c[0],u):R(c[0]));else{const e=[];for(const t of c)t&&e.push(...t);\"production\"!==process.env.NODE_ENV?R(S(e),u):R(S(e))}}function R(e,t){const o=l(e)?e:[...e];for(const e of o)e.computed&&P(e,t);for(const e of o)e.computed||P(e,t)}function P(e,t){(e!==j||e.allowRecurse)&&(\"production\"!==process.env.NODE_ENV&&e.onTrigger&&e.onTrigger(r({effect:e},t)),e.scheduler?e.scheduler():e.run())}const W=o(\"__proto__,__v_isRef,__isVue\"),H=new Set(Object.getOwnPropertyNames(Symbol).filter((e=>\"arguments\"!==e&&\"caller\"!==e)).map((e=>Symbol[e])).filter(d)),G=U();function U(){const e={};return[\"includes\",\"indexOf\",\"lastIndexOf\"].forEach((t=>{e[t]=function(...e){const o=je(this);for(let e=0,t=this.length;e<t;e++)V(o,\"get\",e+\"\");const n=o[t](...e);return-1===n||!1===n?o[t](...e.map(je)):n}})),[\"push\",\"pop\",\"shift\",\"unshift\",\"splice\"].forEach((t=>{e[t]=function(...e){E();const o=je(this)[t].apply(this,e);return F(),o}})),e}function Y(e){const t=je(this);return V(t,\"has\",e),t.hasOwnProperty(e)}class K{constructor(e=!1,t=!1){this._isReadonly=e,this._shallow=t}get(e,t,o){const n=this._isReadonly,r=this._shallow;if(\"__v_isReactive\"===t)return!n;if(\"__v_isReadonly\"===t)return n;if(\"__v_isShallow\"===t)return r;if(\"__v_raw\"===t&&o===(n?r?Se:we:r?xe:be).get(e))return e;const i=l(e);if(!n){if(i&&a(G,t))return Reflect.get(G,t,o);if(\"hasOwnProperty\"===t)return Y}const s=Reflect.get(e,t,o);return(d(t)?H.has(t):W(t))?s:(n||V(e,\"get\",t),r?s:De(s)?i&&m(t)?s:s.value:f(s)?n?_e(s):Ae(s):s)}}class B extends K{constructor(e=!1){super(!1,e)}set(e,t,o,n){let r=e[t];if(Oe(r)&&De(r)&&!De(o))return!1;if(!this._shallow&&(Ce(o)||Oe(o)||(r=je(r),o=je(o)),!l(e)&&De(r)&&!De(o)))return r.value=o,!0;const i=l(e)&&m(t)?Number(t)<e.length:a(e,t),s=Reflect.set(e,t,o,n);return e===je(n)&&(i?v(o,r)&&I(e,\"set\",t,o,r):I(e,\"add\",t,o)),s}deleteProperty(e,t){const o=a(e,t),n=e[t],r=Reflect.deleteProperty(e,t);return r&&o&&I(e,\"delete\",t,void 0,n),r}has(e,t){const o=Reflect.has(e,t);return d(t)&&H.has(t)||V(e,\"has\",t),o}ownKeys(e){return V(e,\"iterate\",l(e)?\"length\":N),Reflect.ownKeys(e)}}class q extends K{constructor(e=!1){super(!0,e)}set(e,t){return\"production\"!==process.env.NODE_ENV&&w(`Set operation on key \"${String(t)}\" failed: target is readonly.`,e),!0}deleteProperty(e,t){return\"production\"!==process.env.NODE_ENV&&w(`Delete operation on key \"${String(t)}\" failed: target is readonly.`,e),!0}}const Q=new B,Z=new q,X=e=>e,J=e=>Reflect.getPrototypeOf(e);function ee(e,t,o=!1,n=!1){const r=je(e=e.__v_raw),i=je(t);o||(v(t,i)&&V(r,\"get\",t),V(r,\"get\",i));const{has:a}=J(r),l=n?X:o?Te:Ne;return a.call(r,t)?l(e.get(t)):a.call(r,i)?l(e.get(i)):void(e!==r&&e.get(t))}function te(e,t=!1){const o=this.__v_raw,n=je(o),r=je(e);return t||(v(e,r)&&V(n,\"has\",e),V(n,\"has\",r)),e===r?o.has(e):o.has(e)||o.has(r)}function oe(e,t=!1){return e=e.__v_raw,!t&&V(je(e),\"iterate\",N),Reflect.get(e,\"size\",e)}function ne(e){e=je(e);const t=je(this);return J(t).has.call(t,e)||(t.add(e),I(t,\"add\",e,e)),this}function re(e,t){t=je(t);const o=je(this),{has:n,get:r}=J(o);let i=n.call(o,e);i?\"production\"!==process.env.NODE_ENV&&ve(o,n,e):(e=je(e),i=n.call(o,e));const a=r.call(o,e);return o.set(e,t),i?v(t,a)&&I(o,\"set\",e,t,a):I(o,\"add\",e,t),this}function ie(e){const t=je(this),{has:o,get:n}=J(t);let r=o.call(t,e);r?\"production\"!==process.env.NODE_ENV&&ve(t,o,e):(e=je(e),r=o.call(t,e));const i=n?n.call(t,e):void 0,a=t.delete(e);return r&&I(t,\"delete\",e,void 0,i),a}function ae(){const e=je(this),t=0!==e.size,o=\"production\"!==process.env.NODE_ENV?s(e)?new Map(e):new Set(e):void 0,n=e.clear();return t&&I(e,\"clear\",void 0,void 0,o),n}function le(e,t){return function(o,n){const r=this,i=r.__v_raw,a=je(i),l=t?X:e?Te:Ne;return!e&&V(a,\"iterate\",N),i.forEach(((e,t)=>o.call(n,l(e),l(t),r)))}}function se(e,t,o){return function(...n){const r=this.__v_raw,i=je(r),a=s(i),l=\"entries\"===e||e===Symbol.iterator&&a,c=\"keys\"===e&&a,u=r[e](...n),d=o?X:t?Te:Ne;return!t&&V(i,\"iterate\",c?T:N),{next(){const{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:l?[d(e[0]),d(e[1])]:d(e),done:t}},[Symbol.iterator](){return this}}}}function ce(e){return function(...t){if(\"production\"!==process.env.NODE_ENV){const o=t[0]?`on key \"${t[0]}\" `:\"\";console.warn(`${g(e)} operation ${o}failed: target is readonly.`,je(this))}return\"delete\"!==e&&this}}function ue(){const e={get(e){return ee(this,e)},get size(){return oe(this)},has:te,add:ne,set:re,delete:ie,clear:ae,forEach:le(!1,!1)},t={get(e){return ee(this,e,!1,!0)},get size(){return oe(this)},has:te,add:ne,set:re,delete:ie,clear:ae,forEach:le(!1,!0)},o={get(e){return ee(this,e,!0)},get size(){return oe(this,!0)},has(e){return te.call(this,e,!0)},add:ce(\"add\"),set:ce(\"set\"),delete:ce(\"delete\"),clear:ce(\"clear\"),forEach:le(!0,!1)},n={get(e){return ee(this,e,!0,!0)},get size(){return oe(this,!0)},has(e){return te.call(this,e,!0)},add:ce(\"add\"),set:ce(\"set\"),delete:ce(\"delete\"),clear:ce(\"clear\"),forEach:le(!0,!0)};return[\"keys\",\"values\",\"entries\",Symbol.iterator].forEach((r=>{e[r]=se(r,!1,!1),o[r]=se(r,!0,!1),t[r]=se(r,!1,!0),n[r]=se(r,!0,!0)})),[e,o,t,n]}const[de,fe,pe,he]=ue();function ye(e,t){const o=t?e?he:pe:e?fe:de;return(t,n,r)=>\"__v_isReactive\"===n?!e:\"__v_isReadonly\"===n?e:\"__v_raw\"===n?t:Reflect.get(a(o,n)&&n in t?o:t,n,r)}const me={get:ye(!1,!1)},ge={get:ye(!0,!1)};function ve(e,t,o){const n=je(o);if(n!==o&&t.call(e,n)){const t=y(e);console.warn(`Reactive ${t} contains both the raw and reactive versions of the same object${\"Map\"===t?\" as keys\":\"\"}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`)}}const be=new WeakMap,xe=new WeakMap,we=new WeakMap,Se=new WeakMap;function Ae(e){return Oe(e)?e:Le(e,!1,Q,me,be)}function _e(e){return Le(e,!0,Z,ge,we)}function Le(e,t,o,n,r){if(!f(e))return\"production\"!==process.env.NODE_ENV&&console.warn(`value cannot be made reactive: ${String(e)}`),e;if(e.__v_raw&&(!t||!e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const a=(l=e).__v_skip||!Object.isExtensible(l)?0:function(e){switch(e){case\"Object\":case\"Array\":return 1;case\"Map\":case\"Set\":case\"WeakMap\":case\"WeakSet\":return 2;default:return 0}}(y(l));var l;if(0===a)return e;const s=new Proxy(e,2===a?n:o);return r.set(e,s),s}function Oe(e){return!(!e||!e.__v_isReadonly)}function Ce(e){return!(!e||!e.__v_isShallow)}function je(e){const t=e&&e.__v_raw;return t?je(t):e}const Ne=e=>f(e)?Ae(e):e,Te=e=>f(e)?_e(e):e;function Me(e){D&&j&&(e=je(e),\"production\"!==process.env.NODE_ENV?z(e.dep||(e.dep=S()),{target:e,type:\"get\",key:\"value\"}):z(e.dep||(e.dep=S())))}function ke(e,t){const o=(e=je(e)).dep;o&&(\"production\"!==process.env.NODE_ENV?R(o,{target:e,type:\"set\",key:\"value\",newValue:t}):R(o))}function De(e){return!(!e||!0!==e.__v_isRef)}function $e(e){return function(e,t){if(De(e))return e;return new Ee(e,t)}(e,!1)}class Ee{constructor(e,t){this.__v_isShallow=t,this.dep=void 0,this.__v_isRef=!0,this._rawValue=t?e:je(e),this._value=t?e:Ne(e)}get value(){return Me(this),this._value}set value(e){const t=this.__v_isShallow||Ce(e)||Oe(e);e=t?e:je(e),v(e,this._rawValue)&&(this._rawValue=e,this._value=t?e:Ne(e),ke(this,e))}}function Fe(e){return De(e)?e.value:e}class Ve{constructor(e,t,o,n){this._setter=t,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this._dirty=!0,this.effect=new M(e,(()=>{this._dirty||(this._dirty=!0,ke(this))})),this.effect.computed=this,this.effect.active=this._cacheable=!n,this.__v_isReadonly=o}get value(){const e=je(this);return Me(e),!e._dirty&&e._cacheable||(e._dirty=!1,e._value=e.effect.run()),e._value}set value(e){this._setter(e)}}const ze=[];function Ie(e,...t){if(\"production\"===process.env.NODE_ENV)return;E();const o=ze.length?ze[ze.length-1].component:null,n=o&&o.appContext.config.warnHandler,r=function(){let e=ze[ze.length-1];if(!e)return[];const t=[];for(;e;){const o=t[0];o&&o.vnode===e?o.recurseCount++:t.push({vnode:e,recurseCount:0});const n=e.component&&e.component.parent;e=n&&n.vnode}return t}();if(n)He(n,o,11,[e+t.join(\"\"),o&&o.proxy,r.map((({vnode:e})=>`at <${yt(o,e.type)}>`)).join(\"\\n\"),r]);else{const o=[`[Vue warn]: ${e}`,...t];r.length&&o.push(\"\\n\",...function(e){const t=[];return e.forEach(((e,o)=>{t.push(...0===o?[]:[\"\\n\"],...function({vnode:e,recurseCount:t}){const o=t>0?`... (${t} recursive calls)`:\"\",n=!!e.component&&null==e.component.parent,r=` at <${yt(e.component,e.type,n)}`,i=\">\"+o;return e.props?[r,...Re(e.props),i]:[r+i]}(e))})),t}(r)),console.warn(...o)}F()}function Re(e){const t=[],o=Object.keys(e);return o.slice(0,3).forEach((o=>{t.push(...Pe(o,e[o]))})),o.length>3&&t.push(\" ...\"),t}function Pe(e,t,o){return u(t)?(t=JSON.stringify(t),o?t:[`${e}=${t}`]):\"number\"==typeof t||\"boolean\"==typeof t||null==t?o?t:[`${e}=${t}`]:De(t)?(t=Pe(e,je(t.value),!0),o?t:[`${e}=Ref<`,t,\">\"]):c(t)?[`${e}=fn${t.name?`<${t.name}>`:\"\"}`]:(t=je(t),o?t:[`${e}=`,t])}const We={sp:\"serverPrefetch hook\",bc:\"beforeCreate hook\",c:\"created hook\",bm:\"beforeMount hook\",m:\"mounted hook\",bu:\"beforeUpdate hook\",u:\"updated\",bum:\"beforeUnmount hook\",um:\"unmounted hook\",a:\"activated hook\",da:\"deactivated hook\",ec:\"errorCaptured hook\",rtc:\"renderTracked hook\",rtg:\"renderTriggered hook\",0:\"setup function\",1:\"render function\",2:\"watcher getter\",3:\"watcher callback\",4:\"watcher cleanup function\",5:\"native event handler\",6:\"component event handler\",7:\"vnode hook\",8:\"directive hook\",9:\"transition hook\",10:\"app errorHandler\",11:\"app warnHandler\",12:\"ref function\",13:\"async component loader\",14:\"scheduler flush. This is likely a Vue internals bug. Please open an issue at https://new-issue.vuejs.org/?repo=vuejs/core\"};function He(e,t,o,n){let r;try{r=n?e(...n):e()}catch(e){!function(e,t,o,n=!0){const r=t?t.vnode:null;if(t){let n=t.parent;const r=t.proxy,i=\"production\"!==process.env.NODE_ENV?We[o]:o;for(;n;){const t=n.ec;if(t)for(let o=0;o<t.length;o++)if(!1===t[o](e,r,i))return;n=n.parent}const a=t.appContext.config.errorHandler;if(a)return void He(a,null,10,[e,r,i])}!function(e,t,o,n=!0){if(\"production\"!==process.env.NODE_ENV){const i=We[t];if(o&&(r=o,ze.push(r)),Ie(\"Unhandled error\"+(i?` during execution of ${i}`:\"\")),o&&ze.pop(),n)throw e;console.error(e)}else console.error(e);var r}(e,o,r,n)}(e,t,o)}return r}let Ge=!1,Ue=!1;const Ye=[];let Ke=0;const Be=[];let qe=null,Qe=0;const Ze=Promise.resolve();function Xe(e){Ye.length&&Ye.includes(e,Ge&&e.allowRecurse?Ke+1:Ke)||(null==e.id?Ye.push(e):Ye.splice(function(e){let t=Ke+1,o=Ye.length;for(;t<o;){const n=t+o>>>1,r=Ye[n],i=et(r);i<e||i===e&&r.pre?t=n+1:o=n}return t}(e.id),0,e),Je())}function Je(){Ge||Ue||(Ue=!0,Ze.then(ot))}const et=e=>null==e.id?1/0:e.id,tt=(e,t)=>{const o=et(e)-et(t);if(0===o){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return o};function ot(e){Ue=!1,Ge=!0,\"production\"!==process.env.NODE_ENV&&(e=e||new Map),Ye.sort(tt);const t=\"production\"!==process.env.NODE_ENV?t=>nt(e,t):n;try{for(Ke=0;Ke<Ye.length;Ke++){const e=Ye[Ke];if(e&&!1!==e.active){if(\"production\"!==process.env.NODE_ENV&&t(e))continue;He(e,null,14)}}}finally{Ke=0,Ye.length=0,function(e){if(Be.length){const t=[...new Set(Be)];if(Be.length=0,qe)return void qe.push(...t);for(qe=t,\"production\"!==process.env.NODE_ENV&&(e=e||new Map),qe.sort(((e,t)=>et(e)-et(t))),Qe=0;Qe<qe.length;Qe++)\"production\"!==process.env.NODE_ENV&&nt(e,qe[Qe])||qe[Qe]();qe=null,Qe=0}}(e),Ge=!1,(Ye.length||Be.length)&&ot(e)}}function nt(e,t){if(e.has(t)){const o=e.get(t);if(o>100){const e=t.ownerInstance,o=e&&ht(e.type);return Ie(`Maximum recursive updates exceeded${o?` in component <${o}>`:\"\"}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`),!0}e.set(t,o+1)}else e.set(t,1)}const rt=new Set;\"production\"!==process.env.NODE_ENV&&(x().__VUE_HMR_RUNTIME__={createRecord:st((function(e,t){if(it.has(e))return!1;return it.set(e,{initialDef:at(t),instances:new Set}),!0})),rerender:st((function(e,t){const o=it.get(e);if(!o)return;o.initialDef.render=t,[...o.instances].forEach((e=>{t&&(e.render=t,at(e.type).render=t),e.renderCache=[],e.update()}))})),reload:st((function(e,t){const o=it.get(e);if(!o)return;t=at(t),lt(o.initialDef,t);const n=[...o.instances];for(const e of n){const n=at(e.type);rt.has(n)||(n!==o.initialDef&&lt(n,t),rt.add(n)),e.appContext.propsCache.delete(e.type),e.appContext.emitsCache.delete(e.type),e.appContext.optionsCache.delete(e.type),e.ceReload?(rt.add(n),e.ceReload(t.styles),rt.delete(n)):e.parent?Xe(e.parent.update):e.appContext.reload?e.appContext.reload():\"undefined\"!=typeof window?window.location.reload():console.warn(\"[HMR] Root or manually mounted instance modified. Full reload required.\")}r=()=>{for(const e of n)rt.delete(at(e.type))},l(r)?Be.push(...r):qe&&qe.includes(r,r.allowRecurse?Qe+1:Qe)||Be.push(r),Je();var r}))});const it=new Map;function at(e){return c(t=e)&&\"__vccOpts\"in t?e.__vccOpts:e;var t}function lt(e,t){r(e,t);for(const o in e)\"__file\"===o||o in t||delete e[o]}function st(e){return(t,o)=>{try{return e(t,o)}catch(e){console.error(e),console.warn(\"[HMR] Something went wrong during Vue component hot-reload. Full reload required.\")}}}const ct={};let ut;\"production\"!==process.env.NODE_ENV&&(ct.ownKeys=e=>(Ie(\"Avoid app logic that relies on enumerating keys on a component instance. The keys will be empty in production mode to avoid performance overhead.\"),Reflect.ownKeys(e)));let dt=\"__VUE_INSTANCE_SETTERS__\";(ut=x()[dt])||(ut=x()[dt]=[]),ut.push((e=>e));const ft=/(?:^|[-_])(\\w)/g,pt=e=>e.replace(ft,(e=>e.toUpperCase())).replace(/[-_]/g,\"\");function ht(e,t=!0){return c(e)?e.displayName||e.name:e.name||t&&e.__name}function yt(e,t,o=!1){let n=ht(t);if(!n&&t.__file){const e=t.__file.match(/([^/\\\\]+)\\.\\w+$/);e&&(n=e[1])}if(!n&&e&&e.parent){const o=e=>{for(const o in e)if(e[o]===t)return o};n=o(e.components||e.parent.type.components)||o(e.appContext.components)}return n?pt(n):o?\"App\":\"Anonymous\"}const mt=(e,t)=>function(e,t,o=!1){let r,i;const a=c(e);return a?(r=e,i=\"production\"!==process.env.NODE_ENV?()=>{console.warn(\"Write operation failed: computed value is readonly\")}:n):(r=e.get,i=e.set),new Ve(r,i,a||!i,o)}(e,0,false);function gt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,\"default\")?e.default:e}var vt,bt={exports:{}};function xt(){return vt||(vt=1,bt.exports=function(){var e=1e3,t=6e4,o=36e5,n=\"millisecond\",r=\"second\",i=\"minute\",a=\"hour\",l=\"day\",s=\"week\",c=\"month\",u=\"quarter\",d=\"year\",f=\"date\",p=\"Invalid Date\",h=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,m={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(e){var t=[\"th\",\"st\",\"nd\",\"rd\"],o=e%100;return\"[\"+e+(t[(o-20)%10]||t[o]||t[0])+\"]\"}},g=function(e,t,o){var n=String(e);return!n||n.length>=t?e:\"\"+Array(t+1-n.length).join(o)+e},v={s:g,z:function(e){var t=-e.utcOffset(),o=Math.abs(t),n=Math.floor(o/60),r=o%60;return(t<=0?\"+\":\"-\")+g(n,2,\"0\")+\":\"+g(r,2,\"0\")},m:function e(t,o){if(t.date()<o.date())return-e(o,t);var n=12*(o.year()-t.year())+(o.month()-t.month()),r=t.clone().add(n,c),i=o-r<0,a=t.clone().add(n+(i?-1:1),c);return+(-(n+(o-r)/(i?r-a:a-r))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(e){return{M:c,y:d,w:s,d:l,D:f,h:a,m:i,s:r,ms:n,Q:u}[e]||String(e||\"\").toLowerCase().replace(/s$/,\"\")},u:function(e){return void 0===e}},b=\"en\",x={};x[b]=m;var w=\"$isDayjsObject\",S=function(e){return e instanceof O||!(!e||!e[w])},A=function e(t,o,n){var r;if(!t)return b;if(\"string\"==typeof t){var i=t.toLowerCase();x[i]&&(r=i),o&&(x[i]=o,r=i);var a=t.split(\"-\");if(!r&&a.length>1)return e(a[0])}else{var l=t.name;x[l]=t,r=l}return!n&&r&&(b=r),r||!n&&b},_=function(e,t){if(S(e))return e.clone();var o=\"object\"==typeof t?t:{};return o.date=e,o.args=arguments,new O(o)},L=v;L.l=A,L.i=S,L.w=function(e,t){return _(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var O=function(){function m(e){this.$L=A(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[w]=!0}var g=m.prototype;return g.parse=function(e){this.$d=function(e){var t=e.date,o=e.utc;if(null===t)return new Date(NaN);if(L.u(t))return new Date;if(t instanceof Date)return new Date(t);if(\"string\"==typeof t&&!/Z$/i.test(t)){var n=t.match(h);if(n){var r=n[2]-1||0,i=(n[7]||\"0\").substring(0,3);return o?new Date(Date.UTC(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,i)):new Date(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,i)}}return new Date(t)}(e),this.init()},g.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},g.$utils=function(){return L},g.isValid=function(){return!(this.$d.toString()===p)},g.isSame=function(e,t){var o=_(e);return this.startOf(t)<=o&&o<=this.endOf(t)},g.isAfter=function(e,t){return _(e)<this.startOf(t)},g.isBefore=function(e,t){return this.endOf(t)<_(e)},g.$g=function(e,t,o){return L.u(e)?this[t]:this.set(o,e)},g.unix=function(){return Math.floor(this.valueOf()/1e3)},g.valueOf=function(){return this.$d.getTime()},g.startOf=function(e,t){var o=this,n=!!L.u(t)||t,u=L.p(e),p=function(e,t){var r=L.w(o.$u?Date.UTC(o.$y,t,e):new Date(o.$y,t,e),o);return n?r:r.endOf(l)},h=function(e,t){return L.w(o.toDate()[e].apply(o.toDate(\"s\"),(n?[0,0,0,0]:[23,59,59,999]).slice(t)),o)},y=this.$W,m=this.$M,g=this.$D,v=\"set\"+(this.$u?\"UTC\":\"\");switch(u){case d:return n?p(1,0):p(31,11);case c:return n?p(1,m):p(0,m+1);case s:var b=this.$locale().weekStart||0,x=(y<b?y+7:y)-b;return p(n?g-x:g+(6-x),m);case l:case f:return h(v+\"Hours\",0);case a:return h(v+\"Minutes\",1);case i:return h(v+\"Seconds\",2);case r:return h(v+\"Milliseconds\",3);default:return this.clone()}},g.endOf=function(e){return this.startOf(e,!1)},g.$set=function(e,t){var o,s=L.p(e),u=\"set\"+(this.$u?\"UTC\":\"\"),p=(o={},o[l]=u+\"Date\",o[f]=u+\"Date\",o[c]=u+\"Month\",o[d]=u+\"FullYear\",o[a]=u+\"Hours\",o[i]=u+\"Minutes\",o[r]=u+\"Seconds\",o[n]=u+\"Milliseconds\",o)[s],h=s===l?this.$D+(t-this.$W):t;if(s===c||s===d){var y=this.clone().set(f,1);y.$d[p](h),y.init(),this.$d=y.set(f,Math.min(this.$D,y.daysInMonth())).$d}else p&&this.$d[p](h);return this.init(),this},g.set=function(e,t){return this.clone().$set(e,t)},g.get=function(e){return this[L.p(e)]()},g.add=function(n,u){var f,p=this;n=Number(n);var h=L.p(u),y=function(e){var t=_(p);return L.w(t.date(t.date()+Math.round(e*n)),p)};if(h===c)return this.set(c,this.$M+n);if(h===d)return this.set(d,this.$y+n);if(h===l)return y(1);if(h===s)return y(7);var m=(f={},f[i]=t,f[a]=o,f[r]=e,f)[h]||1,g=this.$d.getTime()+n*m;return L.w(g,this)},g.subtract=function(e,t){return this.add(-1*e,t)},g.format=function(e){var t=this,o=this.$locale();if(!this.isValid())return o.invalidDate||p;var n=e||\"YYYY-MM-DDTHH:mm:ssZ\",r=L.z(this),i=this.$H,a=this.$m,l=this.$M,s=o.weekdays,c=o.months,u=o.meridiem,d=function(e,o,r,i){return e&&(e[o]||e(t,n))||r[o].slice(0,i)},f=function(e){return L.s(i%12||12,e,\"0\")},h=u||function(e,t,o){var n=e<12?\"AM\":\"PM\";return o?n.toLowerCase():n};return n.replace(y,(function(e,n){return n||function(e){switch(e){case\"YY\":return String(t.$y).slice(-2);case\"YYYY\":return L.s(t.$y,4,\"0\");case\"M\":return l+1;case\"MM\":return L.s(l+1,2,\"0\");case\"MMM\":return d(o.monthsShort,l,c,3);case\"MMMM\":return d(c,l);case\"D\":return t.$D;case\"DD\":return L.s(t.$D,2,\"0\");case\"d\":return String(t.$W);case\"dd\":return d(o.weekdaysMin,t.$W,s,2);case\"ddd\":return d(o.weekdaysShort,t.$W,s,3);case\"dddd\":return s[t.$W];case\"H\":return String(i);case\"HH\":return L.s(i,2,\"0\");case\"h\":return f(1);case\"hh\":return f(2);case\"a\":return h(i,a,!0);case\"A\":return h(i,a,!1);case\"m\":return String(a);case\"mm\":return L.s(a,2,\"0\");case\"s\":return String(t.$s);case\"ss\":return L.s(t.$s,2,\"0\");case\"SSS\":return L.s(t.$ms,3,\"0\");case\"Z\":return r}return null}(e)||r.replace(\":\",\"\")}))},g.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},g.diff=function(n,f,p){var h,y=this,m=L.p(f),g=_(n),v=(g.utcOffset()-this.utcOffset())*t,b=this-g,x=function(){return L.m(y,g)};switch(m){case d:h=x()/12;break;case c:h=x();break;case u:h=x()/3;break;case s:h=(b-v)/6048e5;break;case l:h=(b-v)/864e5;break;case a:h=b/o;break;case i:h=b/t;break;case r:h=b/e;break;default:h=b}return p?h:L.a(h)},g.daysInMonth=function(){return this.endOf(c).$D},g.$locale=function(){return x[this.$L]},g.locale=function(e,t){if(!e)return this.$L;var o=this.clone(),n=A(e,t,!0);return n&&(o.$L=n),o},g.clone=function(){return L.w(this.$d,this)},g.toDate=function(){return new Date(this.valueOf())},g.toJSON=function(){return this.isValid()?this.toISOString():null},g.toISOString=function(){return this.$d.toISOString()},g.toString=function(){return this.$d.toUTCString()},m}(),C=O.prototype;return _.prototype=C,[[\"$ms\",n],[\"$s\",r],[\"$m\",i],[\"$H\",a],[\"$W\",l],[\"$M\",c],[\"$y\",d],[\"$D\",f]].forEach((function(e){C[e[1]]=function(t){return this.$g(t,e[0],e[1])}})),_.extend=function(e,t){return e.$i||(e(t,O,_),e.$i=!0),_},_.locale=A,_.isDayjs=S,_.unix=function(e){return _(1e3*e)},_.en=x[b],_.Ls=x,_.p={},_}()),bt.exports}var wt=gt(xt()),St=\"object\"==typeof global&&global&&global.Object===Object&&global,At=\"object\"==typeof self&&self&&self.Object===Object&&self,_t=St||At||Function(\"return this\")(),Lt=_t.Symbol,Ot=Object.prototype,Ct=Ot.hasOwnProperty,jt=Ot.toString,Nt=Lt?Lt.toStringTag:void 0;var Tt=Object.prototype.toString;var Mt=Lt?Lt.toStringTag:void 0;function kt(e){return null==e?void 0===e?\"[object Undefined]\":\"[object Null]\":Mt&&Mt in Object(e)?function(e){var t=Ct.call(e,Nt),o=e[Nt];try{e[Nt]=void 0;var n=!0}catch(e){}var r=jt.call(e);return n&&(t?e[Nt]=o:delete e[Nt]),r}(e):function(e){return Tt.call(e)}(e)}function Dt(e){return null!=e&&\"object\"==typeof e}var $t=Array.isArray;function Et(e){var t=typeof e;return null!=e&&(\"object\"==t||\"function\"==t)}function Ft(e){if(!Et(e))return!1;var t=kt(e);return\"[object Function]\"==t||\"[object GeneratorFunction]\"==t||\"[object AsyncFunction]\"==t||\"[object Proxy]\"==t}var Vt,zt=_t[\"__core-js_shared__\"],It=(Vt=/[^.]+$/.exec(zt&&zt.keys&&zt.keys.IE_PROTO||\"\"))?\"Symbol(src)_1.\"+Vt:\"\";var Rt=Function.prototype.toString;function Pt(e){if(null!=e){try{return Rt.call(e)}catch(e){}try{return e+\"\"}catch(e){}}return\"\"}var Wt=/^\\[object .+?Constructor\\]$/,Ht=Function.prototype,Gt=Object.prototype,Ut=Ht.toString,Yt=Gt.hasOwnProperty,Kt=RegExp(\"^\"+Ut.call(Yt).replace(/[\\\\^$.*+?()[\\]{}|]/g,\"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g,\"$1.*?\")+\"$\");function Bt(e){return!(!Et(e)||(t=e,It&&It in t))&&(Ft(e)?Kt:Wt).test(Pt(e));var t}function qt(e,t){var o=function(e,t){return null==e?void 0:e[t]}(e,t);return Bt(o)?o:void 0}var Qt=qt(_t,\"WeakMap\"),Zt=Object.create,Xt=function(){function e(){}return function(t){if(!Et(t))return{};if(Zt)return Zt(t);e.prototype=t;var o=new e;return e.prototype=void 0,o}}(),Jt=function(){try{var e=qt(Object,\"defineProperty\");return e({},\"\",{}),e}catch(e){}}();var eo=/^(?:0|[1-9]\\d*)$/;function to(e,t){var o=typeof e;return!!(t=null==t?9007199254740991:t)&&(\"number\"==o||\"symbol\"!=o&&eo.test(e))&&e>-1&&e%1==0&&e<t}function oo(e,t){return e===t||e!=e&&t!=t}var no=Object.prototype.hasOwnProperty;function ro(e,t,o){var n=e[t];no.call(e,t)&&oo(n,o)&&(void 0!==o||t in e)||function(e,t,o){\"__proto__\"==t&&Jt?Jt(e,t,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[t]=o}(e,t,o)}function io(e){return\"number\"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}var ao=Object.prototype;function lo(e){var t=e&&e.constructor;return e===(\"function\"==typeof t&&t.prototype||ao)}function so(e){return Dt(e)&&\"[object Arguments]\"==kt(e)}var co=Object.prototype,uo=co.hasOwnProperty,fo=co.propertyIsEnumerable,po=so(function(){return arguments}())?so:function(e){return Dt(e)&&uo.call(e,\"callee\")&&!fo.call(e,\"callee\")};var ho=\"object\"==typeof exports&&exports&&!exports.nodeType&&exports,yo=ho&&\"object\"==typeof module&&module&&!module.nodeType&&module,mo=yo&&yo.exports===ho?_t.Buffer:void 0,go=(mo?mo.isBuffer:void 0)||function(){return!1},vo={};function bo(e){return function(t){return e(t)}}vo[\"[object Float32Array]\"]=vo[\"[object Float64Array]\"]=vo[\"[object Int8Array]\"]=vo[\"[object Int16Array]\"]=vo[\"[object Int32Array]\"]=vo[\"[object Uint8Array]\"]=vo[\"[object Uint8ClampedArray]\"]=vo[\"[object Uint16Array]\"]=vo[\"[object Uint32Array]\"]=!0,vo[\"[object Arguments]\"]=vo[\"[object Array]\"]=vo[\"[object ArrayBuffer]\"]=vo[\"[object Boolean]\"]=vo[\"[object DataView]\"]=vo[\"[object Date]\"]=vo[\"[object Error]\"]=vo[\"[object Function]\"]=vo[\"[object Map]\"]=vo[\"[object Number]\"]=vo[\"[object Object]\"]=vo[\"[object RegExp]\"]=vo[\"[object Set]\"]=vo[\"[object String]\"]=vo[\"[object WeakMap]\"]=!1;var xo=\"object\"==typeof exports&&exports&&!exports.nodeType&&exports,wo=xo&&\"object\"==typeof module&&module&&!module.nodeType&&module,So=wo&&wo.exports===xo&&St.process,Ao=function(){try{var e=wo&&wo.require&&wo.require(\"util\").types;return e||So&&So.binding&&So.binding(\"util\")}catch(e){}}(),_o=Ao&&Ao.isTypedArray,Lo=_o?bo(_o):function(e){return Dt(e)&&io(e.length)&&!!vo[kt(e)]},Oo=Object.prototype.hasOwnProperty;function Co(e,t){var o=$t(e),n=!o&&po(e),r=!o&&!n&&go(e),i=!o&&!n&&!r&&Lo(e),a=o||n||r||i,l=a?function(e,t){for(var o=-1,n=Array(e);++o<e;)n[o]=t(o);return n}(e.length,String):[],s=l.length;for(var c in e)!Oo.call(e,c)||a&&(\"length\"==c||r&&(\"offset\"==c||\"parent\"==c)||i&&(\"buffer\"==c||\"byteLength\"==c||\"byteOffset\"==c)||to(c,s))||l.push(c);return l}function jo(e,t){return function(o){return e(t(o))}}var No=jo(Object.keys,Object),To=Object.prototype.hasOwnProperty;function Mo(e){return null!=(t=e)&&io(t.length)&&!Ft(t)?Co(e):function(e){if(!lo(e))return No(e);var t=[];for(var o in Object(e))To.call(e,o)&&\"constructor\"!=o&&t.push(o);return t}(e);var t}var ko=qt(Object,\"create\");var Do=Object.prototype.hasOwnProperty;var $o=Object.prototype.hasOwnProperty;function Eo(e){var t=-1,o=null==e?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}function Fo(e,t){for(var o=e.length;o--;)if(oo(e[o][0],t))return o;return-1}Eo.prototype.clear=function(){this.__data__=ko?ko(null):{},this.size=0},Eo.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Eo.prototype.get=function(e){var t=this.__data__;if(ko){var o=t[e];return\"__lodash_hash_undefined__\"===o?void 0:o}return Do.call(t,e)?t[e]:void 0},Eo.prototype.has=function(e){var t=this.__data__;return ko?void 0!==t[e]:$o.call(t,e)},Eo.prototype.set=function(e,t){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=ko&&void 0===t?\"__lodash_hash_undefined__\":t,this};var Vo=Array.prototype.splice;function zo(e){var t=-1,o=null==e?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}zo.prototype.clear=function(){this.__data__=[],this.size=0},zo.prototype.delete=function(e){var t=this.__data__,o=Fo(t,e);return!(o<0)&&(o==t.length-1?t.pop():Vo.call(t,o,1),--this.size,!0)},zo.prototype.get=function(e){var t=this.__data__,o=Fo(t,e);return o<0?void 0:t[o][1]},zo.prototype.has=function(e){return Fo(this.__data__,e)>-1},zo.prototype.set=function(e,t){var o=this.__data__,n=Fo(o,e);return n<0?(++this.size,o.push([e,t])):o[n][1]=t,this};var Io=qt(_t,\"Map\");function Ro(e,t){var o,n,r=e.__data__;return(\"string\"==(n=typeof(o=t))||\"number\"==n||\"symbol\"==n||\"boolean\"==n?\"__proto__\"!==o:null===o)?r[\"string\"==typeof t?\"string\":\"hash\"]:r.map}function Po(e){var t=-1,o=null==e?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}Po.prototype.clear=function(){this.size=0,this.__data__={hash:new Eo,map:new(Io||zo),string:new Eo}},Po.prototype.delete=function(e){var t=Ro(this,e).delete(e);return this.size-=t?1:0,t},Po.prototype.get=function(e){return Ro(this,e).get(e)},Po.prototype.has=function(e){return Ro(this,e).has(e)},Po.prototype.set=function(e,t){var o=Ro(this,e),n=o.size;return o.set(e,t),this.size+=o.size==n?0:1,this};var Wo=jo(Object.getPrototypeOf,Object);function Ho(e){var t=this.__data__=new zo(e);this.size=t.size}Ho.prototype.clear=function(){this.__data__=new zo,this.size=0},Ho.prototype.delete=function(e){var t=this.__data__,o=t.delete(e);return this.size=t.size,o},Ho.prototype.get=function(e){return this.__data__.get(e)},Ho.prototype.has=function(e){return this.__data__.has(e)},Ho.prototype.set=function(e,t){var o=this.__data__;if(o instanceof zo){var n=o.__data__;if(!Io||n.length<199)return n.push([e,t]),this.size=++o.size,this;o=this.__data__=new Po(n)}return o.set(e,t),this.size=o.size,this};var Go=Object.prototype.propertyIsEnumerable,Uo=Object.getOwnPropertySymbols,Yo=Uo?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var o=-1,n=null==e?0:e.length,r=0,i=[];++o<n;){var a=e[o];t(a,o,e)&&(i[r++]=a)}return i}(Uo(e),(function(t){return Go.call(e,t)})))}:function(){return[]};function Ko(e){return function(e,t,o){var n=t(e);return $t(e)?n:function(e,t){for(var o=-1,n=t.length,r=e.length;++o<n;)e[r+o]=t[o];return e}(n,o(e))}(e,Mo,Yo)}var Bo=qt(_t,\"DataView\"),qo=qt(_t,\"Promise\"),Qo=qt(_t,\"Set\"),Zo=\"[object Map]\",Xo=\"[object Promise]\",Jo=\"[object Set]\",en=\"[object WeakMap]\",tn=\"[object DataView]\",on=Pt(Bo),nn=Pt(Io),rn=Pt(qo),an=Pt(Qo),ln=Pt(Qt),sn=kt;(Bo&&sn(new Bo(new ArrayBuffer(1)))!=tn||Io&&sn(new Io)!=Zo||qo&&sn(qo.resolve())!=Xo||Qo&&sn(new Qo)!=Jo||Qt&&sn(new Qt)!=en)&&(sn=function(e){var t=kt(e),o=\"[object Object]\"==t?e.constructor:void 0,n=o?Pt(o):\"\";if(n)switch(n){case on:return tn;case nn:return Zo;case rn:return Xo;case an:return Jo;case ln:return en}return t});var cn=Object.prototype.hasOwnProperty;var un=_t.Uint8Array;function dn(e){var t=new e.constructor(e.byteLength);return new un(t).set(new un(e)),t}var fn=/\\w*$/;var pn=Lt?Lt.prototype:void 0,hn=pn?pn.valueOf:void 0;function yn(e,t,o){var n,r,i,a,l,s=e.constructor;switch(t){case\"[object ArrayBuffer]\":return dn(e);case\"[object Boolean]\":case\"[object Date]\":return new s(+e);case\"[object DataView]\":return l=dn((a=e).buffer),new a.constructor(l,a.byteOffset,a.byteLength);case\"[object Float32Array]\":case\"[object Float64Array]\":case\"[object Int8Array]\":case\"[object Int16Array]\":case\"[object Int32Array]\":case\"[object Uint8Array]\":case\"[object Uint8ClampedArray]\":case\"[object Uint16Array]\":case\"[object Uint32Array]\":return function(e){var t=dn(e.buffer);return new e.constructor(t,e.byteOffset,e.length)}(e);case\"[object Map]\":case\"[object Set]\":return new s;case\"[object Number]\":case\"[object String]\":return new s(e);case\"[object RegExp]\":return(i=new(r=e).constructor(r.source,fn.exec(r))).lastIndex=r.lastIndex,i;case\"[object Symbol]\":return n=e,hn?Object(hn.call(n)):{}}}var mn=Ao&&Ao.isMap,gn=mn?bo(mn):function(e){return Dt(e)&&\"[object Map]\"==sn(e)};var vn=Ao&&Ao.isSet,bn=vn?bo(vn):function(e){return Dt(e)&&\"[object Set]\"==sn(e)},xn=\"[object Arguments]\",wn=\"[object Function]\",Sn=\"[object Object]\",An={};function _n(e,t,o,n,r,i){var a;if(void 0!==a)return a;if(!Et(e))return e;var l=$t(e);if(l)a=function(e){var t=e.length,o=new e.constructor(t);return t&&\"string\"==typeof e[0]&&cn.call(e,\"index\")&&(o.index=e.index,o.input=e.input),o}(e);else{var s=sn(e),c=s==wn||\"[object GeneratorFunction]\"==s;if(go(e))return e.slice();if(s==Sn||s==xn||c&&!r)a=c?{}:function(e){return\"function\"!=typeof e.constructor||lo(e)?{}:Xt(Wo(e))}(e);else{if(!An[s])return r?e:{};a=yn(e,s)}}i||(i=new Ho);var u=i.get(e);if(u)return u;i.set(e,a),bn(e)?e.forEach((function(n){a.add(_n(n,t,o,n,e,i))})):gn(e)&&e.forEach((function(n,r){a.set(r,_n(n,t,o,r,e,i))}));var d=l?void 0:Ko(e);return function(e,t){for(var o=-1,n=null==e?0:e.length;++o<n&&!1!==t(e[o],o,e););}(d||e,(function(n,r){d&&(n=e[r=n]),ro(a,r,_n(n,t,o,r,e,i))})),a}An[xn]=An[\"[object Array]\"]=An[\"[object ArrayBuffer]\"]=An[\"[object DataView]\"]=An[\"[object Boolean]\"]=An[\"[object Date]\"]=An[\"[object Float32Array]\"]=An[\"[object Float64Array]\"]=An[\"[object Int8Array]\"]=An[\"[object Int16Array]\"]=An[\"[object Int32Array]\"]=An[\"[object Map]\"]=An[\"[object Number]\"]=An[Sn]=An[\"[object RegExp]\"]=An[\"[object Set]\"]=An[\"[object String]\"]=An[\"[object Symbol]\"]=An[\"[object Uint8Array]\"]=An[\"[object Uint8ClampedArray]\"]=An[\"[object Uint16Array]\"]=An[\"[object Uint32Array]\"]=!0,An[\"[object Error]\"]=An[wn]=An[\"[object WeakMap]\"]=!1;function Ln(e){return _n(e,5)}let On=(e,t)=>()=>{let o=\"\",n=t;for(;n--;)o+=e[Math.random()*e.length|0];return o};const Cn=(e,t)=>{let o=e;const n=/[.*+?^${}()()\\-|[\\]\\\\]/,r=Object.assign({dayjs:wt},t);let i=\"\";const a=[];for(const e in r){let t=e;n.test(e)&&(t=On(\"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\",6)(),o=o.split(e).join(t)),i+=`${t},`,a.push(r[e])}i=i.replace(/,$/,\"\");const l=`function (${i}){return ${o}}`;let s;try{s=Function(`\"use strict\";return (${l})`)()(...a)}catch(t){return e}return s},jn=(e=\"\",{textData:t,codeData:o}={},{useNewline:n=!1,useSpace:r=!1}={})=>{const i=En,a=$n,l=window.config||{},s=Object.assign(Object.assign({},l),t),c=String(e||\"\").match(/\\{(.+?)\\}/g);if(null==c||0===c.length)return e;for(let t=0;t<c.length;t++){const n=c[t];let r=n.slice(1,-1).trim();const i=/[\\u4e00-\\u9fa5a-z-_A-Z0-9]*/g,a=r.match(i);for(let e=0;e<a.length;e++){const t=a[e],o=s[t];null!=o&&\"function\"!=typeof o&&(r=r.replace(t,o))}(/\\(.*\\)/g.test(r)||/[+/\\\\*]/g.test(r))&&(r=Cn(r,o)),e=e.replace(n,r)}return n&&(e=null==e?void 0:e.replace(/\\n|\\\\n/g,\"<br/>\")),r&&(e=null==e?void 0:e.replace(/\\s{2,}?/g,\"&nbsp;&nbsp;\")),e=(e=e.replace(/Qfw\\((.*?)\\)/g,((e,t)=>i(t)))).replace(/QwfFixed\\((.*?)\\)/g,((e,t)=>a(t)))},Nn=(e,t)=>{if(\"string\"==typeof e&&\"string\"==typeof t)return e.toLocaleLowerCase().includes(t.toLocaleLowerCase());if(\"string\"==typeof e&&Array.isArray(t)){const o=t.length;for(let n=0;n<o;n++){const o=t[n];if(\"string\"==typeof o&&e.toLocaleLowerCase().includes(o.toLocaleLowerCase()))return!0}}return!1},Tn=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),Mn=e=>{const t=[];for(const o of e)o.conditions?t.push(...Mn(o.conditions)):\"component\"===(null==o?void 0:o.dataType)&&t.push(o);return t};const kn=(e=\"\",t)=>{var o;const n=e.match(/\\{(.+?)\\}/g),r=(null===(o=e.split(\"\\n\"))||void 0===o?void 0:o.length)-1;let i=\"\";if(r)for(let e=0;e<r;e++)i+=\"\\n\";let a=e;if(null==n?void 0:n.length){for(const e of n){const o=jn(e,{textData:t},{useNewline:!1,useSpace:!1});o&&(a=a.replace(e,o))}return`${i}{text|${a}}`}return e};function Dn(e){return t(this,arguments,void 0,(function*({graphicConfig:e,request:t,INDICATOR_URL:o=\"\",PAGE_ID:n,dataSourceId:r}){var i;try{const{leftAxisList:a=[],rightAxisList:l=[],queryColumnList:s=[],indicators:c=[]}=Fe(e),u=[...a,...l,...s,...c],d={};for(const e of u){const{indexCode:t=\"\",parentId:o=\"\"}=e;!o||Tn(e,\"calcType\")||d[o]||(d[o]=t)}if(null===(i=Object.keys(d))||void 0===i?void 0:i.length){const e=[];for(const i in d)e.push(new Promise(((e,a)=>{t.post(`${o}/diagram/hrpIndexWithComplex`,{pageId:n,indexGuid:i,indexCode:d[i],dataSourceId:r}).then((t=>{var o;const{success:n,data:r=[]}=t.data;n&&(null===(o=null==r?void 0:r.dataViewColumns)||void 0===o?void 0:o.length)?e(r.dataViewColumns):a(r)})).catch((e=>{console.error(e),a(e)}))})));const i=yield Promise.all(e);return i.reduce(((e,t)=>e.filter((e=>t.find((t=>t.typeGuid===e.typeGuid)))))).filter((e=>e.typeGuid))}}catch(e){console.error(e)}return[]}))}function $n(e){return Number(e).toLocaleString(\"zh-CN\",{minimumFractionDigits:2,maximumFractionDigits:2})}function En(e){return Number(e).toLocaleString()}const Fn=[\"table\",\"bar\",\"combograph\",\"line\",\"pie\",\"radar\",\"scatter\",\"list\",\"circulate\"];let Vn=new Map,zn=[];const In=[\"keyValue\",\"conditionKey\",\"conditionLabel\",\"conditionName\",\"conditionValueType\",\"customValue\",\"id\",\"keyName\"],Rn=e=>Vn.get(e),Pn=(e,t)=>{if(t)Tn(e,\"indexCode\")&&(e.hrpIndexCode=e.indexCode,delete e.indexCode),Tn(e,\"indexCodeNum\")&&(e.hrpIndexCodeNum=e.indexCodeNum,delete e.indexCodeNum),Tn(e,\"dataType\")&&delete e.dataType,e.fieldValue||delete e.fieldValue;else{const{calcWays:t=[],dateCalcTypes:o=[],activeKey:n,componentId:r=\"\"}=e;if(5===n&&(null==t?void 0:t.length)&&(null==o?void 0:o.length)&&r){const n=t[0].split(\"-\");(null==n?void 0:n.length)>1&&\"rangeValue\"===n[0]&&(e.calcWays=((e,t={})=>{const{around:o,unit:n,id:r}=e;let i=\"\";const{pageMode:a=\"\",componentList:l=[]}=(null==t?void 0:t.graphicConfig)||{};let s=null,c=null;if(\"design\"===a){const e=null==l?void 0:l.find((e=>e.id===r));if(!e)return[];const{interval:t,intervalUnit:o,startTime:n,endTime:i,operate:a,useCurrentTime:u}=e||{};if(u&&(s=wt().subtract(t,o),c=wt()),n&&(s=wt(n)),i&&(c=wt(i)),a){const{type:e,value:t,mode:o}=a;switch(e){case\"add\":s=s?s.add(t,o):s,c=c?c.add(t,o):c;break;case\"minus\":s=s?s.subtract(t,o):s,c=c?c.subtract(t,o):c}}}else{const e=Rn(r)||{};Fe(e.startTime)&&(s=wt(Fe(e.startTime))),Fe(e.endTime)&&(c=wt(Fe(e.endTime)))}s&&c&&(i=`${\"before\"===o?\"-\":\"\"}${c.diff(s,n.toLowerCase())+1}`);return i?[i]:[]})({around:n[1],unit:o[0],id:r})),delete e.radioValue}if(Tn(e,\"dataType\")){if(\"DATE\"===e.fieldType&&(e.label=e.fieldName),\"component\"===e.dataType)if(\"PARENT\"===e.fieldValue){let t=e.modelKey;t&&e.prop&&(t+=`-${e.prop}`),e.fieldValue=\"${\"+t+\"}\"}else e.fieldValue=\"${\"+Gn(e.componentId,e.fieldValue)+\"}\";delete e.dataType}Tn(e,\"activeKey\")&&delete e.activeKey,Tn(e,\"radioValue\")&&delete e.radioValue,Tn(e,\"indexCode\")&&(e.hrpIndexCode=e.indexCode,delete e.indexCode),Tn(e,\"indexCodeNum\")&&(e.hrpIndexCodeNum=e.indexCodeNum,delete e.indexCodeNum),\"component\"!==e.dataType&&e.useCurrentTime&&(e.fieldValue=wt().format(e.dateFormat)),Tn(e,\"modelKey\")&&delete e.modelKey,Tn(e,\"prop\")&&delete e.prop,delete e.useCurrentTime}},Wn=(e,t)=>{const o=[];return(null==e?void 0:e.length)&&Ln(e).forEach((e=>{if(e.join&&e.conditions){const n=!e.conditions.some((e=>e.join&&e.conditions));e.conditions.forEach(((r,i)=>{Pn(r,t);const a={};if(i<e.conditions.length-1&&(a.join=e.join),n)o.push(Object.assign(Object.assign({},a),r));else if(r.join&&r.conditions){const e=t?\"sqlConditions\":\"conditions\";o.push(Object.assign({[e]:Wn([r],t)},a))}else o.push(Object.assign(Object.assign({},a),r))}))}else Pn(e,t),o.push(e)})),o},Hn=(e={},t)=>{if((null==e?void 0:e.sortCpnts)&&t){const o=Qn(e);o&&(t.sort=o)}const{label:o,name:n,location:r,show:i,indexCode:a,indexCodeNum:l,calcType:s=\"COLUMN\",builtInFormula:c,builtInValueSource:u,builtInCalcWay:d,formula:f,conditions:p,aggregate:h,distinct:y,dimByCount:m,dataTo:g,sort:v}=e;let b;if(p&&(b=Wn(p)),\"COMPONENT\"===s){const e={};return Bn(e,u),{label:o.trim(),columnName:n,show:i,calcType:s,componentAlias:d,componentValue:e.fieldValue||null}}const x={label:o.trim(),columnName:n,location:r,show:i,calcType:\"1\"===g?\"VIEW\":s,hrpIndexCode:a,hrpIndexCodeNum:l,aggregate:h,builtInFormula:c,builtInValueSource:u,formula:f,conditions:b};if(v&&(x.sort={columnName:n,label:x.label,order:v,type:\"NORMAL\"}),\"DATE_OFFSET\"!==c)return\"the_count\"===n&&(x.calcType=\"AGGREGATE\",x.distinct=!!y,x.typeGuid=m),Object.assign(Object.assign({},x),{builtInCalcWay:d});{const e=d.split(\"-\");if(3===(null==e?void 0:e.length)){let t=e[0];return\"before\"===e[2]&&\"0\"!==e[0]&&(t=`-${e[0]}`),Object.assign(Object.assign({},x),{calcWays:[t],dateCalcTypes:[e[1]]})}}},Gn=(e,t)=>{const o=zn.find((t=>t.id===e)),{keyName:n}=o||{};if(n){const e=/-(startTime|endTime)/g,o=t.match(e);return(null==o?void 0:o.length)?`${n}${o[0]}`:n}return t||\"\"},Un=e=>{if(!e)return[];const t=Ln((null==e?void 0:e.controlList)||[]).filter((e=>\"parentCode\"!==e.conditionKey)),{classificationList:o=[],rowHeaderList:n=[],dimensionList:r=[],seriesList:i=[],leftAxisList:a=[],rightAxisList:l=[],queryColumnList:s=[],indexLibColumns:c=[],indicators:u=[],specialIndicators:d=[]}=e;Kn(t);const f=[...o,...n,...r,...i,...a,...l,...s,...c,...u,...d],p=[];for(const e of f){const t=Mn((null==e?void 0:e.conditions)||[]);if(null==t?void 0:t.length){const e=t.filter((e=>\"component\"===(null==e?void 0:e.dataType))).map((e=>{const t={};return(null==e?void 0:e.dateFormat)&&(t.format=e.dateFormat),\"PARENT\"===e.fieldValue&&(t.id=\"PARENT\",t.keyName=e.modelKey,t.modelKey=e.modelKey,t.prop=e.prop),Object.assign({conditionKey:e.fieldName,conditionLabel:e.fieldName,conditionName:e.fieldName,conditionValueType:e.fieldType,id:e.componentId,keyName:e.fieldValue,rule:e.rule,notGlobal:!0,indexCode:e.indexCode,typeGuid:e.typeGuid,indexCodeNum:e.indexCodeNum},t)}));if(null==e?void 0:e.length)for(const t of e)p.find((e=>e.keyName===t.keyName))||p.push(t)}}const h=p.length,y=t;for(let e=0;e<h;e++){const t=p[e];if(\"parentCode\"===(null==t?void 0:t.conditionKey))continue;const{id:o,keyName:n,prop:r,format:i,modelKey:a,dataType:l=\"component\",customValue:s}=t,c=Gn(o,n),u=Yn(t);Bn(u,o,{prop:r,dateFormat:i,modelKey:a,keyName:c}),\"\"===l&&(u.fieldValue=s||\"\"),y.push(u)}for(let e=y.length-1;e>=0;e--){const t=y[e];if(!t.globalCondition){Mn(y).find((e=>e.alias===t.alias&&e.globalCondition))&&y.splice(e,1)}}return y};function Yn(e){const{id:t,keyName:o,conditionLabel:n,conditionKey:r,conditionValueType:i,prop:a,rule:l=\"NONE\",notGlobal:s=!1,indexCode:c,typeGuid:u,indexCodeNum:d,dataType:f=\"component\",isExtProperty:p}=e,h=Gn(t,o);let y=h||t;y&&a&&(y+=`-${a}`);let m=l;return\"NONE\"===m&&(m=[\"startTime\",\"endTime\"].includes(a)?\"startTime\"===a?\"GREATER_EQUAL\":\"LESS_EQUAL\":(null==h?void 0:h.includes(\"startTime\"))?\"GREATER_EQUAL\"===a:(null==h?void 0:h.includes(\"endTime\"))?\"LESS_EQUAL\"===a:\"EQUAL\"),\"PARENT\"===t&&(y=e.modelKey,y&&a&&(y+=`-${a}`),m=l),{rule:m,label:n,fieldName:r,fieldValue:\"\",valueType:i,alias:y,globalCondition:!s,indexCode:c,typeGuid:u,indexCodeNum:d,dataType:f,isExtProperty:p}}function Kn(e){if(null==e?void 0:e.length)for(const t of e)if(null==t?void 0:t.conditions)Kn(t.conditions);else{const{id:e,keyName:o,prop:n,modelKey:r,format:i,dataType:a=\"component\",customValue:l}=t,s=Gn(e,o),c=Yn(t);Bn(c,e,{prop:n,dateFormat:i,modelKey:r,keyName:s}),\"\"===a&&(c.fieldValue=l||\"\");for(const e in c)t[e]=c[e];for(const e of In)delete t[e]}}function Bn(e,t,o){const{prop:n=\"\",dateFormat:r=\"\",modelKey:i=\"\",keyName:a=\"\",operateValue:l,operateMode:s,operateType:c}=o||{},u=i||a;if(\"PARENT\"===t&&u&&n){const t=window.config.record;let o=n,i=r;const a=n.match(/\\{(.+?)\\}/g);if(null==a?void 0:a.length){const t=a[0].slice(1,-1).trim();o=n.replace(a[0],\"\"),i=t,e.dateFormat=i}if(t&&t[u]){const n=Fe(t[u][o]);wt.isDayjs(n)?e.fieldValue=n.format(i||\"YYYY-MM-DD\"):e.fieldValue=n}return}const d=Rn(t)||{},{value:f,format:p=\"YYYY-MM-DD\",type:h=\"\",useCurrentTime:y,RECORD:m}=d||{},g=r||p;if(Nn(h,\"date\")){let t;if(t=y?f?Fe(f):wt():Fe(f),\"string\"==typeof t&&(t=wt(t)),l&&s&&c)switch(c){case\"add\":t=t.add(l,s);break;case\"minus\":t=t.subtract(l,s)}e.fieldValue=null==t?void 0:t.format(g),e.dateFormat=g}else if(Nn(h,\"rangepicker\")){let t=n;if(!n){const e=a&&a.split(\"-\");(null==e?void 0:e.length)&&(t=e[e.length-1])}if(!t)return;let o=null;if(Fe(d[t])&&(o=wt(Fe(d[t]))),l&&s&&c)if(\"rangeValue\"===l){if(d.startTime&&d.endTime){const e=Fe(d.endTime).diff(Fe(d.startTime),s)+1;switch(c){case\"add\":o=o?o.add(e,s):o;break;case\"minus\":o=o?o.subtract(e,s):o}}}else if(!isNaN(+l))switch(c){case\"add\":o=o?o.add(l,s):o;break;case\"minus\":o=o?o.subtract(l,s):o}if(o&&(e.fieldValue=null==o?void 0:o.format(g)),\"rangeValue\"===t&&d.startTime&&d.endTime){const t=function(e){const t=e.split(\"-\");let o=\"\";if(null==t?void 0:t.length)switch(t[t.length-1]){case\"YYYY\":o=\"year\";break;case\"MM\":o=\"month\";break;case\"DD\":o=\"day\"}return o}(g);t&&(e.fieldValue=Fe(d.endTime).diff(Fe(d.startTime),t)+1)}e.dateFormat=g}else Nn(h,Fn)?e.fieldValue=i&&m?m[i]:!i&&m?m.value:Fe(f):Nn(h,\"select\")&&Array.isArray(Fe(f))?e.fieldValue=Fe(f).join(\",\"):e.fieldValue=Fe(f)}const qn=e=>{if(e){const t=Array.isArray(e)?Ln(e):[Ln(e)];let o=\"\",n=[];const r=[],i=[],a=[];for(const e of t){let t=e.label,l=e.columnName;if(e.defaultCode&&(t=e.columnName,delete e.defaultCode),\"component-value\"===l&&e.componentId){const o=Rn(e.componentId)||{},{value:n}=o;Fe(n)&&(t=l=Fe(n))}o=e.type,\"CUSTOM\"===o&&(n=e.customOrderColumns),r.push(t),i.push(l),a.push(e.order)}return\"CUSTOM\"!==o&&(null==r?void 0:r.length)>1&&(o=\"COMBINATION\"),\"CUSTOM\"===o?{label:r.join(\",\"),columnName:i.join(\",\"),type:o,customOrderColumns:n}:{label:r.join(\",\"),columnName:i.join(\",\"),order:a.join(\",\"),type:o}}return e},Qn=e=>{const{sortCpnts:t=[]}=e;let o,n=\"\";for(const e of t){const t=Rn(e)||{},{type:o,RECORD:r}=t;if(Nn(o,\"image\")&&Nn(null==r?void 0:r.value,[\"asc\",\"desc\"])){n=r.value.toUpperCase();break}}return n&&(o={label:e.label,columnName:e.name,order:n,type:\"NORMAL\"}),o},Zn=(t,o={})=>{var n,r,i,a,l,s,c,u;const{graphicConfig:d,type:f,globalModel:p,isGroupTable:h=!1,allComponentList:y}=t;p&&(Vn=p),(null==y?void 0:y.length)&&(zn=y);const m=Nn(f,\"pivottable\");let g,{source:v,dataViewId:b,plugin:x=\"1\",layer:w,chartType:S,classificationList:A=[],rowHeaderList:_=[],dimensionList:L=[],seriesList:O=[],leftAxisList:C=[],rightAxisList:j=[],queryColumnList:N=[],indexLibColumns:T=[],indicators:M=[],specialIndicators:k=[],controlList:D=[],formFields:$={},variableList:E=[],variableConditions:F=[],dataSourceId:V=\"\",idxLibMode:z,preview:I=!1,edvDataSetId:R,compositeIndicator:P}=d||{},W=[];if(\"design\"===(null==d?void 0:d.pageMode)?(W=(null!==(n=d.sqlConditions)&&void 0!==n?n:[]).map((e=>{const t={};if(Tn(e,\"globalCondition\")||e.join||(t.globalCondition=!0),!e.join){const o=e.rule||\"EQUAL\";t.rule=\"NONE\"===o?\"EQUAL\":o}return Object.assign(Object.assign({},e),t)})),(null==F?void 0:F.length)&&(W=W.concat(F))):(W=Un(d),(null==E?void 0:E.length)&&(W=W.concat(function(e){const t=[];if(null==e?void 0:e.length)for(const o of e)if(o.variableName){const e=Gn(o.id,o.keyName),n={variateName:o.variableName,globalCondition:o.globalCondition||!1,valueType:o.variableType,alias:e||\"\"};Bn(n,o.id,{dateFormat:o.format,prop:o.dateTypeValue,keyName:e,operateType:o.operateType,operateMode:o.operateMode,operateValue:o.operateValue}),\"\"===o.dataType&&(n.fieldValue=o.variableValue),o.format&&(n.dateFormat=o.format),o.label&&(n.label=o.label),t.push(n)}return t}(E)))),null==W?void 0:W.length){const e=W.filter((e=>e.globalCondition)),t=W.filter((e=>!e.globalCondition));(null==e?void 0:e.length)>1&&(W=[{join:\"&&\",conditions:e},...t])}(null==W?void 0:W.length)&&(W=Wn(W,\"1\")),null==w&&(w=Nn(f,[\"table\",\"card\"])||Nn(f,[\"list\",\"circulate\"])&&(null==A?void 0:A.length)>1?\"1\":Nn(f,[\"select\",\"checkbox\",\"radio\",\"treeSelect\"])?\"3\":Nn(f,[\"indexPanel\"])?\"4\":\"2\"),Nn(f,[\"indexPanel\"])&&(x=\"3\");const H=[];let G,U=\"\";if(Array.isArray(A)&&A.length>0&&(![\"ecanList\",\"ecanCirculate\"].includes(f)||1===(null==A?void 0:A.length))){const e=A.length;for(let t=0;t<e;t++){const o=A[t]||{},{label:n=\"\",name:i=\"\",show:a=!1,sort:l,customGroup:s,conditions:c,dateFormat:u,typeGuid:d=\"\",truncations:p=[],isExtProperty:h}=o;if(a||1===e){U=d,g={label:n.trim(),columnName:i,show:a,sort:Qn(o)||qn(l)||l,customGroup:s,conditions:Wn(c),typeGuid:d},u&&(g.dateFormat=u),\"the_date\"!==i||g.dateFormat||(g.dateFormat=\"YYYY-MM-DD\"),h&&(g.isExtProperty=h);const e={};if(Array.isArray(p)&&p.length>0){const t=p.length;for(let o=0;o<t;o++){const t=p[o]||{},{rule:n=\"\",num:r=0,name:i=\"\"}=t;n&&r&&(e.num=r,e.rule=n,i&&(e.otherGroupName=i))}}if((null===(r=Object.keys(e))||void 0===r?void 0:r.length)&&(g.truncation=e),!Nn(f,[\"scatter\",\"valueline\"]))break;H.push(g)}}}if(Array.isArray(O)&&O.length>0){const e=O.length;for(let t=0;t<e;t++){const o=O[t]||{},{label:n=\"\",name:r=\"\",show:i=!1,sort:a,customGroup:l,conditions:s,typeGuid:c,dateFormat:u=\"\"}=o;if(i||1===e){G={label:n.trim(),columnName:r,show:i,sort:qn(a),customGroup:l,conditions:Wn(s),typeGuid:c},u?G.dateFormat=u:\"the_date\"===r&&(G.dateFormat=\"YYYY-MM-DD\");break}}}const Y=[];null==C||C.forEach((e=>{e.location=\"LEFT\",Y.push(Hn(e,g))})),null==j||j.forEach((e=>{e.location=\"RIGHT\",Y.push(Hn(e,g))}));let K=M;(null==o?void 0:o.pivotTableCal)&&(K=(null===(i=o.pivotTableCal)||void 0===i?void 0:i.indicators)||[]),null==K||K.forEach((e=>{e.location=\"LEFT\",Y.push(Hn(e,g))}));const B=[];null==k||k.forEach((e=>{e.location=\"LEFT\",B.push(Hn(e,g))}));const q=[];[\"ecanList\",\"ecanCirculate\"].includes(f)&&(null==A?void 0:A.length)>1&&(N=A),(null==o?void 0:o.pivotTableCal)&&(N=(null===(a=o.pivotTableCal)||void 0===a?void 0:a.dimensions)||[]),null==N||N.forEach((e=>{const{label:t,name:n,location:r,show:i,indexCode:a,sort:l,typeGuid:s,indexCodeNum:c,dateFormat:u,conditions:d,isExtProperty:f}=e;let p=qn(l);if(o.sort){const{field:n,order:r}=o.sort;let i=Y.find((e=>e.label===n));i||t!==n||(i=e),i&&(p={columnName:i.columnName,label:o.sort.field,order:r.toUpperCase(),type:\"NORMAL\"})}const h={label:t,columnName:n,location:r,show:i,sort:p,calcType:\"COLUMN\",hrpIndexCode:a,hrpIndexCodeNum:c,conditions:Wn(d),typeGuid:s};u&&(h.dateFormat=u),\"the_date\"!==n||h.dateFormat||(h.dateFormat=\"YYYY-MM-DD\"),f&&(h.isExtProperty=f),q.push(h)}));const Q=[];[\"ecanTable\"].includes(f)&&d.isIndexSet&&T.forEach((e=>{const t={label:e.label,calcType:e.calcType,show:e.show};e.formula&&(t.formula=e.formula),Q.push(t)}));let Z=[],X=[];if(Array.isArray(_)&&_.length>0?X=_:Array.isArray(L)&&L.length>0&&(X=L),null==X?void 0:X.length){const e=X.length;for(let t=0;t<e;t++){const e=X[t]||{},{label:n=\"\",name:r=\"\",show:i=!1,sort:a,customGroup:s,conditions:c,truncations:u,typeGuid:d=\"\",dateFormat:f,isExtProperty:p}=e;let h=qn(a);if(o.sort){const{field:t,order:n}=o.sort;let r=Y.find((e=>e.label===t));r||e.label!==t||(r=e),r&&(h={columnName:r.columnName,label:o.sort.field,order:n.toUpperCase(),type:\"NORMAL\"})}const y={label:n.trim(),columnName:r,show:i,sort:h,customGroup:s,conditions:Wn(c),typeGuid:d};f&&(y.dateFormat=f),\"the_date\"!==r||y.dateFormat||(y.dateFormat=\"YYYY-MM-DD\"),p&&(y.isExtProperty=p);const m={};if(Array.isArray(u)&&u.length>0){const e=u.length;for(let t=0;t<e;t++){const e=u[t]||{},{rule:o=\"\",num:n=0,name:r=\"\"}=e;o&&n&&(m.num=n,m.rule=o,r&&(m.otherGroupName=r))}}(null===(l=Object.keys(m))||void 0===l?void 0:l.length)&&(y.truncation=m),Z.push(y)}}let J,ee=[];const te=[];if(null==o?void 0:o.pivotTableCal){let t=[];const{calc:n=[],filter:r=[],truncations:i=[],sorts:a=[],aggregateMethod:l=[],rowDimensionKeys:u=[],colDimensionKeys:d=[]}=o.pivotTableCal;if(Y.push(...n),null==r?void 0:r.length){const o=function e(t){const o=[];for(const n of t)n.conditions?o.push(...e(n.conditions)):\"the_date\"===n.conditionKey&&o.push(n);return o}(D);for(const n of r){const{type:r}=n,i=e(n,[\"type\"]);\"indicators\"===r?t=Y:\"dimension\"===r&&(t=q);const a=t.find((e=>e.columnName===n.fieldName&&e.label===n.label));if(a)if(\"indicators\"===r)a.filter={rule:i.rule,fieldValue:i.fieldValue};else if(\"dimension\"===r){let e=!0;\"the_date\"===i.fieldName&&2===(null==o?void 0:o.length)&&(e=!1,te.push(i)),e&&(a.conditions||(a.conditions=[]),a.conditions.push(i))}}}if(null==i?void 0:i.length)for(const e of i){const t=q.find((t=>t.label===e.key));t&&(t.truncation={num:e.num,rule:e.rule})}if(null==a?void 0:a.length)for(const o of a){const{fieldType:n,columnData:r}=o,i=e(o,[\"fieldType\",\"columnData\"]);\"indicators\"===n?(t=Y,J=r):\"dimension\"===n&&(t=q);const a=t.find((e=>e.label===i.label));a&&(a.sort=Object.assign(Object.assign({},i),{columnName:a.columnName}))}if(null===(s=Object.keys(l))||void 0===s?void 0:s.length)for(const e in l){const t=q.find((t=>t.label===e));t&&(null===(c=l[e])||void 0===c?void 0:c.length)&&(t.aggregateMethod=l[e])}Z=[],ee=[];for(const e of q)u.includes(e.columnName)?Z.push(e):d.includes(e.columnName)&&ee.push(e)}if(Nn(f,[\"text\",\"proportion\",\"counter\",\"gauge\"])?S=\"zb\":Nn(f,[\"valueline\"])?S=\"valueline\":Nn(f,[\"indexPanel\"])?S=\"indexPanel\":Nn(f,[\"boxplot\"])?S=\"boxplot\":Nn(f,[\"budget\"])&&(S=\"budget\"),h||\"card\"===f){if(0===Z.length||0===Y.length)return;S=\"grouptable\"}else{if(\"1\"===w&&!q.length&&!Q.length)return;if([\"2\",\"4\"].includes(w)&&0===Y.length)return;if(!(\"3\"!==w||(U||\"EDV_DATA_SET\"===v)&&$.labelField&&$.valueField))return;if(\"3\"===w&&\"ecanDataSelect\"===f&&0===Y.length)return}let oe;if((null==L?void 0:L.length)&&(w=\"1\",S=\"grouptable\"),m||Nn(f,[\"scatter\",\"valueline\"])||!(null===(u=Object.keys($))||void 0===u?void 0:u.length)){let e={};e=Nn(f,[\"scatter\",\"valueline\"])?{classifications:H}:{classification:g},(null==Q?void 0:Q.length)&&(e.indexLibColumns=Q,e.isIndexSet=!0),(null==B?void 0:B.length)&&(e.specialIndicatorList=B),Nn(f,\"table\")&&d.isIndexSet&&(e.compositeIndicator=P),d.isIndexQuery&&(e.isIndexQuery=d.isIndexQuery);const o=W.map((e=>{const{fieldValue:t}=e,o={};return t&&Array.isArray(t)&&(o.fieldValue=JSON.stringify(t)),Object.assign(Object.assign({},e),o)}));(null==te?void 0:te.length)&&function e(t){for(const o of t)if(o.sqlConditions)e(o.sqlConditions);else if(\"the_date\"===o.fieldName){const e=te.find((e=>e.prop===o.prop));e&&(o.fieldValue=e.fieldValue)}}(o),oe=Object.assign({url:\"/diagram\",source:v,dataViewId:b,plugin:m?\"5\":x,layer:w,chartType:m?\"pivot-table\":S,series:G,indicatorList:Y,queryColumns:h?[]:q,pageFlag:!0,edvDataSetId:R||\"\",sqlConditions:o,idxLibMode:z,dataSourceId:V,preview:I,rowHeaders:Z,keyName:t.keyName,columnData:J,columnHeaders:ee},e)}else{const e=Mn(D).find((e=>\"parentCode\"===e.conditionKey)),o={};if(e){const t=Rn(e.id)||{};(null==t?void 0:t.itemCodes)?o.parentItemCodes=t.itemCodes:o.parentItemCodes=null}\"ecanDataSelect\"===f&&(o.indicatorList=Y.filter((e=>e.show))),\"EDV_DATA_SET\"===v&&(o.edvDataSetId=R),(null==g?void 0:g.sort)&&(o.sort=g.sort);let n=\"normalSelect\";\"ecanDataSelect\"===f?n=\"normalSelectData\":\"ecanTreeSelect\"===f&&(n=\"treeSelect\"),oe=Object.assign({url:\"/diagram/formData\",source:v,dataViewId:b,plugin:\"4\",layer:w,chartType:\"ecanTreeSelect\"===f?\"treeSelect\":\"normalSelect\",rangeIndexTypeGuid:U,type:n,labelField:$.labelField,valueField:$.valueField,parentField:$.parentField,sqlConditions:W,idxLibMode:\"WITH_DATE_DIM_TABLE\",dataSourceId:V,keyName:t.keyName},o)}return oe},Xn=(e=[],t,o=!1)=>{let{name:n=\"name\",types:r=[]}=t||{};n=(null==n?void 0:n.trim())||n;const i=new Set,a=new Map,l=e.length,s=r.length;if(1!==l||o)for(let t=0;t<l;t++){const o=e[t],l=o[n];i.add(l);for(let e=0;e<s;e++){const t=r[e],{label:n,value:i}=t,l=Object.assign(Object.assign({},o),{value:o[i]});if(a.has(n)){const e=a.get(n);e.push(l),a.set(n,e)}else a.set(n,[l])}}else{const t=[];for(let o=0;o<s;o++){const n=r[o],{label:a,value:l}=n,s=Object.assign(Object.assign({},e[0]),{value:e[0][l]});i.add(a),t.push(s)}const o=e[0][n]||\"\";a.set(o,t)}const c=Array.from(i),u=[];for(const[e,t]of a)u.push({name:e,data:t});return{dimensions:c,dataset:u}},Jn=(e,t)=>{let{name:o=\"name\",value:n=\"value\",type:r=\"type\"}=t||{};o=null==o?void 0:o.trim(),n=null==n?void 0:n.trim(),r=null==r?void 0:r.trim();const i=new Map,a=e.length;for(let t=0;t<a;t++){const a=e[t],l=a[o]||\"\",s=a[n]||\"\",c=a[r]||\"\";if(i.has(c)){const e=i.get(c);e.push(Object.assign({name:l,value:s},a)),i.set(c,e)}else i.set(c,[Object.assign({name:l,value:s},a)])}const l=[],s=[];for(const[e,t]of i)if(s.push({name:e,data:t}),null==t?void 0:t.length)if(l.length)for(const e of t)l.includes(e.name)||l.push(e.name);else l.push(...t.map((e=>e.name)));return{dimensions:l,dataset:s}},er=(e,t)=>{var o;if(null==e)return t;const n=e.match(/\\{.*\\}/g);if(null==n||0===n.length)return t;const r=n.length;for(let i=0;i<r;i++){const r=n[i];if(null==r||\"\"===r)break;let a=null===(o=r.slice(1,-1))||void 0===o?void 0:o.trim();a=null==a?void 0:a.replace(/value/g,t);try{let t=a;(/\\(.*\\)/g.test(a)||/[+/\\\\*]/g.test(a))&&(t=Cn(a)),e=e.replace(r,t)}catch(t){e=e.replace(r,a)}}return e},tr=(e,t,o)=>{let n=e.dataFieldNames;if(\"indicator\"===e.dataType&&\"design\"!==(null==o?void 0:o.pageMode)&&t){const{formFields:e={}}=t;(null==e?void 0:e.labelField)&&(null==e?void 0:e.valueField)&&(n={name:e.labelField,value:e.valueField})}return n},or=e=>{const t=null==e?void 0:e.chart.getModel().getComponent(\"yAxis\").axis.scale._extent,o=null==e?void 0:e.chart.getModel().getComponent(\"xAxis\").axis.scale._extent;let n={};return o&&t&&(n={xAxisMinValue:o[0],xAxisMaxValue:o[1],yAxisMinValue:t[0],yAxisMaxValue:t[1]}),n};function nr(e,t,o){switch(t){case\"startX\":e[0].coord[0]=+o;break;case\"startY\":e[0].coord[1]=+o;break;case\"endX\":e[1].coord[0]=+o;break;case\"endY\":e[1].coord[1]=+o}}const rr=(e,t,o)=>{let n=0,r=[];switch(t.x?r=Fe(o).map((e=>e.value[0])):t.y&&(r=Fe(o).map((e=>e.value[1]))),e){case\"max\":n=Math.max(...r);break;case\"min\":n=Math.min(...r);break;case\"average\":i=r,n=Array.isArray(i)&&0!==i.length?i.reduce(((e,t)=>e+t),0)/i.length:0;break;case\"median\":n=function(e){if(!Array.isArray(e)||0===e.length)return 0;const t=[...e].sort(((e,t)=>e-t)),o=t.length,n=Math.floor(o/2);return o%2!=0?t[n]:(t[n-1]+t[n])/2}(r)}var i;return n},ir={\"最大值\":\"{max}\",\"最小值\":\"{min}\",\"平均值\":\"{average}\",\"中位数\":\"{median}\"};function ar(e,t,o,n,r,i,a){const l=tr(e,n,a),s=e.xAxisLabelFormatter,c=e.yAxisLabelFormatter,u=r?((e,t,o,n)=>{const{xAxisMarkLineValue:r=[],yAxisMarkLineValue:i=[]}=e,{xAxisMinValue:a,xAxisMaxValue:l,yAxisMinValue:s,yAxisMaxValue:c}=t,u=r.map((e=>Object.assign(Object.assign({},e),{x:!0}))),d=i.map((e=>Object.assign(Object.assign({},e),{y:!0}))),f=u.concat(d);if(null==f?void 0:f.length){const e=[];for(const t of f){const r={label:{show:!0,formatter:\"\",rich:{ft:{}}}},i={};let u=t.value;const d=null==u?void 0:u.match(/\\{(.+?)\\}/g);let f=\"\";if(r.label.formatter=t.label?`{ft|${t.label}}`:\"\",(t.offsetHorizontal||t.offsetVertical)&&(t.x?r.label.rich.ft.padding=[0,t.offsetHorizontal||0,t.offsetVertical||0,0]:t.y&&(r.label.rich.ft.padding=[t.offsetVertical||0,0,0,t.offsetHorizontal||0])),t.labelColor&&(r.label.rich.ft.color=t.labelColor),t.lineColor&&(i.color=t.lineColor),t.lineType&&(i.type=t.lineType),t.x?f=\"xAxis\":t.y&&(f=\"yAxis\"),null==d?void 0:d.length){for(const e of d)u=u.replace(e,e.slice(1,-1));if(u){let d;d=n&&n.value[u]?Fe(n)[u]:Cn(u,{axisMax:t.x?Fe(l):t.y?Fe(c):0,axisMin:t.x?Fe(a):t.y?Fe(s):0,max:rr(\"max\",t,o),min:rr(\"min\",t,o),average:rr(\"average\",t,o),median:rr(\"median\",t,o)}),isNaN(+d)||e.push(Object.assign({[f]:+d,lineStyle:i},r))}}else isNaN(+t.value)||e.push(Object.assign({[f]:t.value,lineStyle:i},r))}return{symbol:[\"none\",\"none\"],data:e}}return{data:[]}})(e,r,t,i):void 0,d=r?((e,t,o)=>{const{axisMarkArea:n=[]}=e,{xAxisMinValue:r,xAxisMaxValue:i,yAxisMinValue:a,yAxisMaxValue:l}=t;if(null==n?void 0:n.length){const e=[];for(const t of n){const n=[{name:t.label||\"\",coord:[],itemStyle:{color:t.color||\"transparent\"},label:{show:!!t.label,position:\"inside\",fontSize:16,color:\"#000\"}},{coord:[]}];for(const e in t)if([\"startX\",\"startY\",\"endX\",\"endY\"].includes(e)){let s=ir[t[e]]||t[e];const c=null==s?void 0:s.match(/\\{(.+?)\\}/g);if(null==c?void 0:c.length){for(const e of c)s=s.replace(e,e.slice(1,-1));if(s){const t={x:e.includes(\"X\"),y:e.includes(\"Y\")},c=Cn(s,{xMax:Fe(i),xMin:Fe(r),yMax:Fe(l),yMin:Fe(a),max:rr(\"max\",t,o),min:rr(\"min\",t,o),average:rr(\"average\",t,o),median:rr(\"median\",t,o)});isNaN(+c)||nr(n,e,c)}}else isNaN(+t[e])||nr(n,e,t[e])}n.every((e=>{var t;return null===(t=e.coord)||void 0===t?void 0:t.length}))&&e.push(n)}return{data:e}}return{data:[]}})(e,r,t):void 0,{visualColorKey:f,visualColorCondition:p,visualSizeKey:h,visualSizeCondition:y}=e;let m;f&&(m=function(e,t,o){const n=e=>{if(e.name)return e.name;const t=!!(null==e?void 0:e.value1),o=!!(null==e?void 0:e.value2);return t&&!o?`${e.rule1}${e.value1}`:!t&&o?`${e.rule2}${e.value2}`:`${e.value1}-${e.value2}`},r={};return o.forEach((e=>{(e.value1||e.value2)&&(r[n(e)]={data:[],color:e.color})})),r[\"其他\"]={data:[]},e.forEach((e=>{const i=Number(e.record[t]);let a=!1;for(const t of o){if(!t.value1&&!t.value2)continue;const o=t.value1?Number(t.value1):-1/0,l=t.value2?Number(t.value2):1/0;let s=!0,c=!0;if(\">=\"===t.rule1?s=i>=o:\">\"===t.rule1?s=i>o:\"<=\"===t.rule1?s=i<=o:\"<\"===t.rule1?s=i<o:\"==\"===t.rule1&&(s=i===o),\"\"!==t.value2&&(\">=\"===t.rule2?c=i>=l:\">\"===t.rule2?c=i>l:\"<=\"===t.rule2?c=i<=l:\"<\"===t.rule2?c=i<l:\"==\"===t.rule2&&(c=i===l)),s&&c){r[n(t)].data.push(e),a=!0;break}}a||r[\"其他\"].data.push(e)})),r}(t,f,Ln(p).reverse()));const g=t=>{var o;let n=\"\",r=e.labelFormatter;\"\"===r&&(r=\"{c}\");const{seriesName:i,data:a}=t||{},s=null!==(o=null==a?void 0:a.record)&&void 0!==o?o:{},c=s[l.name],u=s[l.value];return n+=jn(r,{textData:Object.assign({name:c,value:u,a:i,b:c,c:u||0},s)},{useNewline:!0,useSpace:!0}),n},v=function(e){const t=[];for(const o of e){let e=\"\";o.value1&&(e+=`value ${o.rule1} ${o.value1}`),o.value2&&(e+=`${o.value1?\"&&\":\"\"} value ${o.rule2} ${o.value2}`),e&&t.push({rule:e,size:o.size})}return t.reverse()}(y),b=(t,o)=>{if(h){const{record:e={}}=o.data||{},t=e[h],n=v.find((e=>Cn(e.rule,{value:t})));if(n)return n.size}return e.symbolSize},x={type:\"scatter\",data:Fe(t),symbolSize:b,itemStyle:{color:e.symbolColor},label:{show:e.labelShow,fontSize:e.labelFontSize,position:e.labelPosition,color:e.labelColor,width:e.labelWidth,overflow:e.labelOverflow,formatter:g},markLine:u,markArea:d},w=[],S=[];if(m)for(const t in m){const o=m[t],n=Ln(x);n.symbolSize=b,n.label.formatter=g,n.itemStyle.color=o.color||e.symbolColor,n.data=o.data,n.name=t,S.push(n),w.push(t)}else S.push(x);return{xAxis:{z:5,splitLine:{show:e.xAxisSplitLineShow,lineStyle:{color:e.xAxisSplitLineStyleColor},interval:e.xAxisSplitLineInterval},splitArea:{show:e.xAxisSplitAreaShow},axisLabel:{show:e.xAxisLabelShow,fontSize:e.xAxisLabelFontSize,color:e.xAxisLabelColor,interval:e.xAxisLabelInterval||0,rotate:e.xAxisLabelRotate,width:e.xAxisLabelWidth,overflow:e.xAxisLabelOverflow,formatter:e=>(\"string\"!=typeof e||\"0\"!==e[0]||isNaN(+e)||(e=(+e).toString()),er(s,e))},axisLine:{lineStyle:{color:e.xAxisLineStyleColor},symbol:[\"none\",e.showXAxisLineArrow?\"arrow\":\"none\"],symbolSize:[8,12],onZero:!1},axisTick:{show:e.xAxisTickShow},name:e.xAxisName,nameLocation:e.xAxisLineInverse?\"start\":\"end\",nameTextStyle:{fontSize:e.xAxisLabelFontSize,color:e.xAxisLabelColor,align:\"left\"},inverse:e.xAxisLineInverse,max:e.xAxisMax,min:e.xAxisMin},yAxis:{z:5,splitLine:{show:e.yAxisSplitLineShow,lineStyle:{color:e.yAxisSplitLineStyleColor,type:e.yAxisSplitLineType}},axisTick:{show:e.yAxisTickShow},splitArea:{show:e.yAxisSplitAreaShow},axisLabel:{show:e.yAxisLabelShow,fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,formatter:e=>er(c,e)},axisLine:{show:e.yAxisLineAlwaysDisplay,lineStyle:{color:e.yAxisLineStyleColor},symbol:[\"none\",e.showYAxisLineArrow?\"arrow\":\"none\"],symbolSize:[8,12],onZero:!1},name:e.yAxisName,nameLocation:e.yAxisLineInverse?\"start\":\"end\",nameTextStyle:{fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,align:\"right\"},inverse:e.yAxisLineInverse,max:e.yAxisMax,min:e.yAxisMin},tooltip:{show:e.tooltipShow,trigger:e.tooltipTrigger,formatter(t){var o,n;const{marker:r,seriesName:i,componentType:a}=t,s=null!==(n=null===(o=null==t?void 0:t.data)||void 0===o?void 0:o.record)&&void 0!==n?n:{},c=s[l.name],u=s[l.value];return[\"markLine\",\"markArea\"].includes(a)?\"\":jn(e.tooltipFormatter,{textData:Object.assign({marker:r,seriesName:i,a:i,b:c,c:u},s)},{useNewline:!0,useSpace:!0})},axisPointer:{type:e.crossShow||void 0===e.crossShow?\"cross\":\"\"},textStyle:{fontSize:Fe(o)},position:e.tooltipPosition||void 0},legend:{show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,textStyle:{color:e.legendTextStyleColor,fontSize:o},data:w},series:S}}function lr(e){let t=\"\";switch(e){case 1:t=\"万\";break;case 3:t=\"百万\";break;case 4:t=\"千万\"}return t}const sr=(e,t,o,n,r,i,a)=>{switch(((e,t)=>{if(!e)return e||\"\";if(e.toLowerCase().startsWith(t.toLowerCase())){const o=e.slice(t.length);return o?o.charAt(0).toLowerCase()+o.slice(1):\"\"}return e})(e.type,\"ecan\")){case\"bar\":return function(e,t,o,n){const r=e.yAxisLabelFormatter,i=e.xAxisLabelFormatter,a=$e(t.dataset),l=$e(t.dimensions),s=mt((()=>{const{gradientShow:t,gradientColors:o,gradientOffset:n,barBorderRadius:r}=e,i=Fe(a),l=i.length,s=[];for(let a=0;a<l;a++){const c=Object.assign(Object.assign({},i[a]),{type:\"bar\",barWidth:e.barWidth.value+e.barWidth.suffix,showBackground:e.showBarBackground});if(e.isStack&&(c.stack=\"stack\"),c.label={show:e.labelShow,fontSize:e.labelFontSize,position:e.labelPosition,color:e.labelColor,width:e.labelWidth,overflow:e.labelOverflow,formatter:t=>{let o=\"\",n=e.labelFormatter;\"\"===n&&(n=\"{c}\");const{seriesName:r,name:i,value:a,data:l}=t||{};return o+=jn(n,{textData:Object.assign({name:i,value:a,a:r,b:i,c:a||0},l)},{useNewline:!0,useSpace:!0}),o}},c.itemStyle={},t){let t=e.colors[a];if(!t&&e.colors.length){const o=(a+1)%e.colors.length-1;t=o>0?e.colors[o]:e.colors[0]}t||(t=\"#5470C6\"),c.itemStyle={color:{x:e.isUseHorizontalAxis?1:0,y:0,x2:0,y2:e.isUseHorizontalAxis?0:1,colorStops:[{offset:0,color:t},{offset:n,color:o[a]},{offset:1,color:o[a]}]}}}if(r&&(!e.isStack||a===l-1)){const e=r.split(\",\");if(null==e?void 0:e.length){const t=[];for(const o of e){const e=parseFloat(o);isNaN(e)||t.push(e)}c.itemStyle.borderRadius=t}}e.isShowMarkLine&&(c.markLine={data:[{type:e.markLineType}]}),s.push(c)}return s})),c=mt((()=>Fe(l).map((e=>{let t={};return t=e&&\"object\"==typeof e?Object.assign(Object.assign({},e),{textStyle:{fontSize:o}}):{value:e,textStyle:{fontSize:o}},t}))));return{tooltip:{trigger:\"axis\",show:e.tooltipShow,formatter:t=>{var o;const r=t.length;let a=\"\",l=e.tooltipFormatter;(null==n?void 0:n.getCurrentData)&&n.getCurrentData(null===(o=t[0])||void 0===o?void 0:o.data),\"\"===l&&(l=\"{marker} {a} {c}\");for(let e=0;e<r;e++){const{marker:o,seriesName:n,name:r,value:s,data:c}=t[e]||{};if(0===e){let e=r;\"undefined\"===r&&(e=\"\"),\"string\"!=typeof r||\"0\"!==r[0]||isNaN(+r)||(e=(+r).toString()),a+=`${er(i,e)}${e?\"<br/>\":\"\"}`}a+=jn(l,{textData:Object.assign({marker:o,name:r,value:s,a:n,b:r,c:c.sourceValue||s||0},c)},{useNewline:!0,useSpace:!0}),a+=\"<br/>\"}return a},textStyle:{color:e.tooltipTextStyleColor,fontSize:o.value},position:e.tooltipPosition||void 0},legend:{type:e.legendScroll?\"scroll\":\"plain\",width:e.legendWidth,height:e.legendHeight,show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,textStyle:{rich:{text:{width:e.legendTextWidth,color:e.legendTextStyleColor}}},itemHeight:e.legendItemHeight,itemWidth:e.legendItemWidth,itemGap:e.legendItemGap,data:Fe(a).map(((t,o)=>({name:t.name,itemStyle:{color:e.colors[o]},icon:e.legendType}))),formatter:t=>kn(e.legendFormatter,{name:t})},xAxis:{type:e.isUseHorizontalAxis?\"value\":\"category\",data:e.isUseHorizontalAxis?null:Fe(c),inverse:e.isUseHorizontalAxis?e.xAxisInverse:e.axisInverse,minInterval:e.xAxisMinInterval,splitLine:{show:e.xAxisSplitLineShow,lineStyle:{color:e.xAxisSplitLineStyleColor,type:e.xAxisSplitLineType},interval:e.xAxisSplitLineInterval},splitArea:{show:e.xAxisSplitAreaShow},axisLabel:{show:e.xAxisLabelShow,color:e.xAxisLabelColor,interval:e.xAxisLabelInterval||0,rotate:e.xAxisLabelRotate,width:e.xAxisLabelWidth,overflow:e.xAxisLabelOverflow,fontSize:e.xAxisLabelFontSize,formatter:e=>(\"string\"!=typeof e||\"0\"!==e[0]||isNaN(+e)||(e=(+e).toString()),er(i,e))},axisLine:{show:e.xAxisLineShow,lineStyle:{color:e.xAxisLineStyleColor}},axisTick:{show:e.xAxisTickShow},name:e.xAxisName,nameTextStyle:{fontSize:e.xAxisLabelFontSize,color:e.xAxisLabelColor,align:\"left\"},max:e.xAxisMaxValue||null},yAxis:{type:e.isUseHorizontalAxis?\"category\":\"value\",data:e.isUseHorizontalAxis?Fe(l):null,inverse:e.isUseHorizontalAxis?e.axisInverse:e.yAxisInverse,minInterval:e.yAxisMinInterval,splitLine:{show:e.yAxisSplitLineShow,lineStyle:{color:e.yAxisSplitLineStyleColor,type:e.yAxisSplitLineType}},splitArea:{show:e.yAxisSplitAreaShow},axisTick:{show:e.yAxisTickShow},axisLabel:{show:e.yAxisLabelShow,fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,rotate:e.yAxisLabelRotate,width:e.yAxisLabelWidth,overflow:e.yAxisLabelOverflow,formatter:e=>er(r,e)},axisLine:{show:e.yAxisLineAlwaysDisplay,lineStyle:{color:e.yAxisLineStyleColor}},name:e.yAxisName,nameTextStyle:{fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,align:\"right\"},max:e.yAxisMaxValue||null},series:Fe(s)}}(e,t,o,a);case\"line\":return function(e,t,o,n){const r=e.yAxisLabelFormatter,i=e.xAxisLabelFormatter,a=$e(t.dataset),l=$e(t.dimensions),s=t.dataset,c=mt((()=>{const t=[],o=s.length;for(let r=0;r<o;r++){const o={};e.shadowColor&&(o.shadowColor=e.shadowColor,o.shadowBlur=e.shadowBlur,o.shadowOffsetY=e.shadowOffsetY,o.shadowOffsetX=e.shadowOffsetX);let i=e.colors[r];if(!i&&e.colors.length){const t=(r+1)%e.colors.length-1;i=t>0?e.colors[t]:e.colors[0]}i||(i=\"#5470C6\"),t.push(Object.assign(Object.assign(Object.assign({type:\"line\"},s[r]),{symbolSize:e.symbolSize,smooth:e.smooth,areaStyle:{color:e.areaGradientShow?{type:\"linear\",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:i},{offset:1,color:e.areaGradientColor||\"transparent\"}],global:!1}:i,opacity:e.areaStyleOpacity},lineStyle:Object.assign({width:e.lineStyleWidth},o)}),(n=e).isShowMarkLine?{markLine:{data:[{type:n.markLineType}]}}:{}))}var n;return t}));return{tooltip:{trigger:\"axis\",textStyle:{fontSize:o.value,color:e.tooltipTextStyleColor},show:e.tooltipShow,formatter:t=>{var o;const r=t.length;let a=\"\",l=e.tooltipFormatter;(null==n?void 0:n.getCurrentData)&&n.getCurrentData(null===(o=t[0])||void 0===o?void 0:o.data),\"\"===l&&(l=\"{marker} {a} {c}\");for(let e=0;e<r;e++){const{marker:o,seriesName:n,name:r,value:s,data:c}=t[e]||{};if(0===e){let e=r;\"string\"!=typeof r||\"0\"!==r[0]||isNaN(+r)||(e=(+r).toString()),a+=`${er(i,e)}<br/>`}a+=jn(l,{textData:Object.assign({marker:o,name:r,value:s,a:n,b:r,c:s||0},c)},{useNewline:!0,useSpace:!0}),a+=\"<br/>\"}return a},position:e.tooltipPosition||void 0},xAxis:{type:\"category\",boundaryGap:e.isBoundaryGap,data:Fe(l).map((e=>{let t={};return t=e&&\"object\"==typeof e?Object.assign({},e):{value:e},t})),minInterval:e.xAxisMinInterval,splitLine:{show:e.xAxisSplitLineShow,lineStyle:{color:e.xAxisSplitLineStyleColor},interval:e.xAxisSplitLineInterval},splitArea:{show:e.xAxisSplitAreaShow},axisLabel:{show:e.xAxisLabelShow,color:e.xAxisLabelColor,interval:e.xAxisLabelInterval||0,rotate:e.xAxisLabelRotate,width:e.xAxisLabelWidth,overflow:e.xAxisLabelOverflow,fontSize:e.xAxisLabelFontSize,formatter:e=>(\"string\"!=typeof e||\"0\"!==e[0]||isNaN(+e)||(e=(+e).toString()),er(i,e))},axisLine:{show:e.xAxisLineShow,lineStyle:{color:e.xAxisLineStyleColor}},axisTick:{show:e.xAxisTickShow},name:e.xAxisName,nameTextStyle:{fontSize:e.xAxisLabelFontSize,color:e.xAxisLabelColor,align:\"left\"},max:e.xAxisMaxValue||null},yAxis:{type:\"value\",minInterval:e.yAxisMinInterval,splitLine:{show:e.yAxisSplitLineShow,lineStyle:{color:e.yAxisSplitLineStyleColor,type:e.yAxisSplitLineType}},splitArea:{show:e.yAxisSplitAreaShow},axisLabel:{show:e.yAxisLabelShow,fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,formatter:e=>er(r,e)},axisLine:{show:e.yAxisLineAlwaysDisplay,lineStyle:{color:e.yAxisLineStyleColor}},name:e.yAxisName,nameTextStyle:{fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,align:\"right\"},max:e.yAxisMaxValue||null},legend:{type:e.legendScroll?\"scroll\":\"plain\",width:e.legendWidth,height:e.legendHeight,show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,textStyle:{lineHeight:parseFloat(e.legendFontSize)+8,rich:{text:{width:e.legendTextWidth,color:e.legendTextStyleColor,fontSize:e.legendFontSize}}},itemHeight:e.legendItemHeight,itemWidth:e.legendItemWidth,itemGap:e.legendItemGap,data:Fe(a).map((t=>({name:t.name,icon:e.legendType}))),formatter:t=>kn(e.legendFormatter,{name:t})},series:Fe(c)}}(e,t,o,a);case\"pie\":return function(e,t,o){var n,r;const i=$e(t.dataset);let{data:a=[]}=Fe(i)[0]||{};if(Array.isArray(e.colors)){const t=e.isUseLabelColors,o=e.colors;a=a.map(((e,n)=>Object.assign({label:t?{color:o[n]}:{}},e)))}return{tooltip:{show:e.tooltipShow,trigger:e.tooltipTrigger,formatter:t=>{const{marker:o,seriesName:n,name:r,value:i,percent:a,data:l}=t||{};return jn(e.tooltipFormatter,{textData:Object.assign({marker:o,name:r,value:i,percent:a,a:n,b:r,c:i,d:a},l)},{useNewline:!0,useSpace:!0})},textStyle:{color:e.tooltipTextStyleColor},position:e.tooltipPosition||void 0},legend:{type:e.legendScroll?\"scroll\":\"plain\",width:e.legendWidth,height:e.legendHeight,show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,align:\"left\",textStyle:{lineHeight:o+8,rich:{text:{width:e.legendTextWidth,color:e.legendTextStyleColor,fontSize:o}}},itemHeight:e.legendItemHeight,itemWidth:e.legendItemWidth,itemGap:e.legendItemGap,data:null===(r=null===(n=Fe(i)[0])||void 0===n?void 0:n.data)||void 0===r?void 0:r.map((t=>({name:t.name,icon:e.legendType}))),formatter:t=>{const{data:o}=i.value[0]||{};let n,r=0,a=\"0%\";if(o)for(const e of o)e.name===t&&(n=+e.value),r+=+e.value;return r&&(a=`${(n/r*100).toFixed(2)}%`),kn(e.legendFormatter,{name:t,value:n,percent:a})}},series:[{data:a,type:\"pie\",radius:[e.innerRadius,e.outerRadius],center:[e.centerLeft,e.centerTop],roseType:e.roseType,avoidLabelOverlap:!0,minAngle:e.minAngle,label:{show:\"center\"!==e.labelPosition&&e.labelShow,color:e.labelColor,fontSize:e.labelFontSize,position:e.labelPosition,formatter:t=>{let o=\"\",n=e.labelFormatter;\"\"===n&&(n=\"{b}\\n{d}%\"),n=n.replace(/\\\\n/g,\"\\n\");const{name:r,value:i,data:a,percent:l}=t||{};return o+=jn(n,{textData:Object.assign({name:r,value:i,b:r,d:i||0,percent:l},a)},{useNewline:!1,useSpace:!1}),o},width:e.labelWidth,overflow:e.labelOverflow},labelLine:{show:e.labelLineShow,length:e.labelLineLength,length2:e.labelLineLength2},emphasis:{itemStyle:{shadowBlur:10,shadowOffsetX:0,shadowColor:\"rgba(0, 0, 0, 0.5)\"},label:{}}}]}}(e,t,o);case\"radar\":return function(e,t,o){const n=$e(t.dimensions),r=$e(t.dataset),i=mt((()=>{var e;const t=[],o=[],i=Fe(r),a=i.length;for(let e=0;e<a;e++){const{data:t=[]}=i[e];for(let e=0;e<t.length;e++)o.push(t[e].value)}if(null===(e=n.value)||void 0===e?void 0:e.length){const e=(null==o?void 0:o.length)?1.2*Math.max(...o):0;for(const o of n.value)t.push({name:o,max:e})}return t})),a=mt((()=>{const t=Fe(r),o=t.length,n=[];for(let r=0;r<o;r++){const{name:o,data:i=[]}=t[r],a=[{name:o,value:i.map((e=>e.value))}];let l=e.colors[r];if(!l&&e.colors.length){const t=(r+1)%e.colors.length-1;l=t>0?e.colors[t]:e.colors[0]}l||(l=\"#5470C6\");let s=l;if(e.gradientShow){const{gradientOffset:t,gradientColors:o}=e;s={x:.7,y:0,x2:0,y2:0,colorStops:[{offset:0,color:l},{offset:t,color:o[r]},{offset:1,color:o[r]}]}}const c={type:\"radar\",name:o,data:a,areaStyle:{color:s,opacity:e.areaStyleOpacity},tooltip:{trigger:\"item\"},symbolSize:e.symbolSize,lineStyle:{width:e.lineStyleWidth},label:{show:e.labelShow,fontSize:e.labelFontSize,position:e.labelPosition,color:e.labelColor,width:e.labelWidth,overflow:e.labelOverflow,formatter:t=>{const{data:o,value:n}=t;let r=0,i=\"0%\";if(o)for(const e of o.value)r+=+e;return r&&(i=`${(n/r*100).toFixed(2)}%`),jn(e.labelFormatter,{textData:{value:n,percent:i}},{useNewline:!1,useSpace:!1})}}};n.push(c)}return n})),l=mt((()=>({tooltip:{trigger:\"axis\",textStyle:{fontSize:o.value},show:e.tooltipShow,formatter:t=>{let o=\"\",n=e.tooltipFormatter;\"\"===n&&(n=\"{marker} {a} {c}\");for(let e=0;e<Fe(i).length;e++){const r=Fe(i)[e],{marker:a,seriesName:l,value:s}=t||{};0===e&&l&&(o+=`${l}<br/>`),o+=jn(n,{textData:{marker:a,name:r.name,value:s[e],a:r.name,b:r.name,c:s[e]||0,type:l}},{useNewline:!0,useSpace:!0}),o+=\"<br/>\"}return o},position:e.tooltipPosition||void 0},radar:{indicator:Fe(i),axisName:{color:e.axisNameColor}},legend:{type:e.legendScroll?\"scroll\":\"plain\",width:e.legendWidth,height:e.legendHeight,show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,textStyle:{lineHeight:parseFloat(e.legendFontSize)+8,rich:{text:{width:e.legendTextWidth,color:e.legendTextStyleColor,fontSize:e.legendFontSize}}},itemHeight:e.legendItemHeight,itemWidth:e.legendItemWidth,itemGap:e.legendItemGap,data:Fe(r).map((t=>({name:t.name,icon:e.legendType}))),formatter:t=>kn(e.legendFormatter,{name:t})},series:Fe(a)})));return Fe(l)}(e,t,o);case\"scatter\":return ar(e,t,o,n,r,i,a);case\"comboGraph\":return function(e,t,o,n){const r=$e(t.dimensions),i=$e(t.dataset),a=t.dataset,l=t=>{const o=[];let n=0;return e.seriesTypes.forEach(((e,n)=>{var r,a;e.axisIndex===t&&(null===(a=null===(r=Fe(i)[n])||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)&&o.push(...Fe(i)[n].data.map((e=>+e.value)))})),o.some((e=>e>=1e7))?n=4:o.some((e=>e>=1e6))?n=3:o.some((e=>e>=1e4))&&(n=1),n},s=$e([0,0]),c=mt((()=>{const t=e.yAxis;return null==t?void 0:t.map(((t,o)=>{const n=s.value[o];let r;return n&&(r=1e4*Math.pow(10,n-1)),{type:\"value\",minInterval:e.yAxisMinInterval,splitLine:{show:0===o?e.yAxisLeftSplitLineShow:e.yAxisRightSplitLineShow,lineStyle:{color:e.yAxisSplitLineStyleColor,type:0===o?e.yAxisLeftSplitLineType:e.yAxisRightSplitLineType}},splitArea:{show:e.yAxisSplitAreaShow},axisLabel:{show:e.yAxisLabelShow,fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,formatter(e){let o=e;return r&&(o=(+e/r).toString()),er(t.axisLabelFormatter,o)}},axisLine:{show:e.yAxisLineAlwaysDisplay,lineStyle:{color:e.yAxisLineStyleColor}},name:lr(n)+(0===o?e.yAxisLeftName:e.yAxisRightName),nameTextStyle:{fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,align:0===o?\"right\":\"left\"},max:e.yAxisMaxValue||null}}))}));s.value[0]=e.yAxisLeftUnitAdapt?l(0):0,s.value[1]=e.yAxisRightUnitAdapt?l(1):0;const u={legend:{type:e.legendScroll?\"scroll\":\"plain\",width:e.legendWidth,height:e.legendHeight,show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,textStyle:{lineHeight:parseFloat(e.legendFontSize)+8,rich:{text:{width:e.legendTextWidth,color:e.legendTextStyleColor,fontSize:e.legendFontSize}}},itemHeight:e.legendItemHeight,itemWidth:e.legendItemWidth,itemGap:e.legendItemGap,data:Fe(i).map(((t,o)=>({name:t.name,itemStyle:{color:e.colors[o]},icon:e.legendType}))),formatter:t=>kn(e.legendFormatter,{name:t})},tooltip:{trigger:\"axis\",show:e.tooltipShow,formatter:t=>{var o;const r=t.length;let i=\"\",a=e.tooltipFormatter;(null==n?void 0:n.getCurrentData)&&n.getCurrentData(null===(o=t[0])||void 0===o?void 0:o.data),\"\"===a&&(a=\"{marker} {a} {c}\");const l=e.seriesTypes;for(let o=0;o<r;o++){const n=l[o],{tooltipFormatter:r}=n||{},{marker:s,seriesName:c,name:u,value:d,data:f}=t[o]||{};if(0===o){let t=u;\"string\"!=typeof u||\"0\"!==u[0]||isNaN(+u)||(t=(+u).toString()),i+=`${er(e.xAxisLabelFormatter,t)}<br/>`}i+=jn(r||a,{textData:Object.assign({marker:s,name:u,value:d,seriesName:c,a:c,b:u,c:d||0},f)},{useNewline:!0,useSpace:!0}),i+=\"<br/>\"}return i},textStyle:{color:e.tooltipTextStyleColor,fontSize:o.value},position:e.tooltipPosition||void 0},xAxis:{minInterval:e.xAxisMinInterval,type:\"category\",data:Fe(r).map((e=>{let t={};return t=e&&\"object\"==typeof e?Object.assign({},e):{value:e},t})),splitLine:{show:e.xAxisSplitLineShow,lineStyle:{color:e.xAxisSplitLineStyleColor},interval:e.xAxisSplitLineInterval},splitArea:{show:e.xAxisSplitAreaShow},axisLabel:{show:e.xAxisLabelShow,color:e.xAxisLabelColor,interval:e.xAxisLabelInterval||0,rotate:e.xAxisLabelRotate,width:e.xAxisLabelWidth,overflow:e.xAxisLabelOverflow,fontSize:e.xAxisLabelFontSize,formatter:t=>(\"string\"!=typeof t||\"0\"!==t[0]||isNaN(+t)||(t=(+t).toString()),er(e.xAxisLabelFormatter,t))},axisLine:{show:e.xAxisLineShow,lineStyle:{color:e.xAxisLineStyleColor}},axisTick:{show:e.xAxisTickShow},name:e.xAxisName,nameTextStyle:{fontSize:e.xAxisLabelFontSize,color:e.xAxisLabelColor,align:\"left\"},max:e.xAxisMaxValue||null},yAxis:Fe(c),series:function(t){const o=[],n=t.length,r=e.seriesTypes;for(let i=0;i<n;i++){const n=r[i],{type:a,axisIndex:l}=n||{};let s=Object.assign({type:a,yAxisIndex:l},t[i]),c=e.colors[i];if(!c&&e.colors.length){const t=(i+1)%e.colors.length-1;c=t>0?e.colors[t]:e.colors[0]}if(c||(c=\"#5470C6\"),\"line\"===a){const t={};e.shadowColor&&(t.shadowColor=e.shadowColor,t.shadowBlur=e.shadowBlur,t.shadowOffsetY=e.shadowOffsetY,t.shadowOffsetX=e.shadowOffsetX),s=Object.assign(Object.assign({},s),{symbolSize:e.symbolSize,smooth:e.smooth,itemStyle:{color:c},areaStyle:{color:e.areaGradientShow?{type:\"linear\",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:c},{offset:1,color:e.areaGradientColor||\"transparent\"}],global:!1}:c,opacity:e.areaStyleOpacity},lineStyle:Object.assign({width:e.lineStyleWidth},t)})}if(\"bar\"===a){const{gradientShow:t,gradientColors:o,gradientOffset:n}=e,r={color:c};if(e.barBorderRadius){const t=e.barBorderRadius.split(\",\");if(null==t?void 0:t.length){const e=[];for(const o of t){const t=parseFloat(o);isNaN(t)||e.push(t)}r.borderRadius=e}}t&&(r.color={x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:c},{offset:n,color:o[i]},{offset:1,color:o[i]}]}),s=Object.assign(Object.assign({},s),{barWidth:e.barWidth.value+e.barWidth.suffix,itemStyle:r,label:{show:e.labelShow,fontSize:e.labelFontSize,position:e.labelPosition,color:e.labelColor,width:e.labelWidth,overflow:e.labelOverflow,formatter:t=>{let o=\"\",n=e.labelFormatter;\"\"===n&&(n=\"{c}\");const{seriesName:r,name:i,value:a,data:l}=t||{};return o+=jn(n,{textData:Object.assign({name:i,value:a,a:r,b:i,c:a||0},l)},{useNewline:!0,useSpace:!0}),o}}})}e.isShowMarkLine&&(s.markLine={data:[{type:e.markLineType}]}),o.push(s)}return o}(a)};return u}(e,t,o,a);default:return{}}},cr=(e,t,{fontSize:o=12,graphicConfig:n={},maxValueObj:r={},fontFamily:i=null,componentValues:a=null,callBackMethodMap:l={}})=>Object.assign(Object.assign({},function(e,t,o){return{textStyle:{fontFamily:Fe(t)},toolbox:{show:e.toolboxShow,left:e.toolboxLeft,top:e.toolboxTop,itemSize:e.toolboxItemSize,itemGap:e.toolboxItemGap,feature:{myLocation:{show:!!e.toolboxLocation,title:\"快速定位\",icon:\"path://M512 512m-80 0a80 80 0 1 0 160 0 80 80 0 1 0-160 0Z, M960 480h-33.632C910.752 276.16 747.84 113.248 544 97.632V64a32 32 0 1 0-64 0v33.632C276.16 113.248 113.248 276.16 97.632 480H64a32 32 0 0 0 0 64h33.632C113.248 747.84 276.16 910.752 480 926.368V960a32 32 0 1 0 64 0v-33.632C747.84 910.752 910.752 747.84 926.368 544H960a32 32 0 1 0 0-64zM544 862.368V800a32 32 0 1 0-64 0v62.368C311.424 847.104 176.896 712.576 161.632 544H224a32 32 0 1 0 0-64H161.632C176.896 311.424 311.424 176.896 480 161.632V224a32 32 0 0 0 64 0V161.632c168.576 15.296 303.104 149.792 318.368 318.368H800a32 32 0 1 0 0 64h62.368c-15.264 168.576-149.792 303.104-318.368 318.368z\",onclick(){o.toolboxLocationFun&&o.toolboxLocationFun(e)}},myDownload:{show:e.toolboxDownloadUrl&&e.toolboxDownloadShow,title:\"数据下载\",icon:\"path://M502.010485 765.939573c3.773953 3.719718 8.686846 5.573949 13.596669 5.573949 0.075725 0 0.151449-0.010233 0.227174-0.011256 0.329505 0.016373 0.654916 0.050142 0.988514 0.050142 0.706081 0 1.400906-0.042979 2.087545-0.116657 4.352121-0.366344 8.607028-2.190899 11.961426-5.496178l335.053985-330.166675c7.619538-7.509021 7.709589-19.773346 0.200568-27.393907s-19.774369-7.711636-27.39493-0.201591L536.193005 706.304358 536.193005 50.019207c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 657.032164-306.881342-302.44838c-7.618515-7.509021-19.883863-7.419993-27.393907 0.199545-7.509021 7.619538-7.419993 19.884886 0.199545 27.393907L502.010485 765.939573z, M867.170139 711.020776c-10.698666 0-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 13.054317-10.620895 23.675212-23.676236 23.675212L205.182103 919.486668c-13.054317 0-23.676236-10.620895-23.676236-23.675212L181.505867 730.391962c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 34.416857 28.000728 62.416562 62.417585 62.416562l618.941638 0c34.417881 0 62.417585-27.999704 62.417585-62.416562L886.540302 730.391962C886.541325 719.693296 877.868805 711.020776 867.170139 711.020776z\",onclick(){o.toolboxDownloadShowFun&&o.toolboxDownloadShowFun(e)}},myDataZoom:{show:e.toolboxDataZoomShow,title:\"放大\",icon:\"path://M932.42 902.246667L792 761.793333A403.84 403.84 0 0 0 896 490.666667c0-223.86-181.473333-405.333333-405.333333-405.333334S85.333333 266.806667 85.333333 490.666667s181.473333 405.333333 405.333334 405.333333a403.84 403.84 0 0 0 271.126666-104l140.453334 140.453333a21.333333 21.333333 0 0 0 30.173333-30.173333zM128 490.666667c0-200.293333 162.373333-362.666667 362.666667-362.666667s362.666667 162.373333 362.666666 362.666667-162.373333 362.666667-362.666666 362.666666-362.666667-162.373333-362.666667-362.666666z m512 0a21.333333 21.333333 0 0 1-21.333333 21.333333H512v106.666667a21.333333 21.333333 0 0 1-42.666667 0V512H362.666667a21.333333 21.333333 0 0 1 0-42.666667h106.666666V362.666667a21.333333 21.333333 0 0 1 42.666667 0v106.666666h106.666667a21.333333 21.333333 0 0 1 21.333333 21.333334z\",onclick(){o.toolboxDataZoomShowFun&&o.toolboxDataZoomShowFun(e)}},myInfo:{show:e.toolboxInfoShow,title:\"详情\",icon:\"path://M512.50142 958.397886c-119.320573 0-231.499491-46.465265-315.871087-130.837884C112.258737 743.188406 65.792449 631.010511 65.792449 511.688915c0-119.319549 46.466288-231.499491 130.837884-315.871087C281.002952 111.445208 393.180847 64.979944 512.50142 64.979944s231.499491 46.465265 315.871087 130.837884c84.372619 84.372619 130.837884 196.551538 130.837884 315.871087 0 119.321596-46.465265 231.499491-130.837884 315.871087C744.000911 911.932622 631.821993 958.397886 512.50142 958.397886zM512.50142 105.962334c-223.718271 0-405.726581 182.00831-405.726581 405.726581s182.00831 405.726581 405.726581 405.726581c223.718271 0 405.727605-182.00831 405.727605-405.726581S736.220714 105.962334 512.50142 105.962334z M510.150886 775.953647c-18.107403 0-32.745798-14.678304-32.745798-32.785707L477.405087 452.191846c0-18.108426 14.638395-32.785707 32.745798-32.785707 18.107403 0 32.745798 14.678304 32.745798 32.785707l0 290.976094C542.896684 761.275343 528.258289 775.953647 510.150886 775.953647z M511.357364 296.458969m-45.080731 0a44.054 44.054 0 1 0 90.161463 0 44.054 44.054 0 1 0-90.161463 0Z\",onclick(){o.toolboxInfoShowFun&&o.toolboxInfoShowFun(e)}},mySource:{show:e.toolboxInfoSource,title:\"指标来源\",icon:\"path://M473 71a8 8 0 0 1 8-8h64a8 8 0 0 1 8 8v77.161C722.848 166.622 857.812 301.289 876.729 471H952a8 8 0 0 1 8 8v64a8 8 0 0 1-8 8h-75.053C858.871 721.652 723.515 857.305 553 875.839V951a8 8 0 0 1-8 8h-64a8 8 0 0 1-8-8v-75.161C302.818 857.341 167.659 722.182 149.161 552H72a8 8 0 0 1-8-8v-64a8 8 0 0 1 8-8h77.161C167.659 301.818 302.818 166.659 473 148.161V71z m326 441c0-157.953-128.047-286-286-286S227 354.047 227 512s128.047 286 286 286 286-128.047 286-286z m-286 60c33.137 0 60-26.863 60-60s-26.863-60-60-60-60 26.863-60 60 26.863 60 60 60z\",onclick(){o.toolboxSourceShowFun&&o.toolboxSourceShowFun(e)}}}},title:{text:e.titleText,subtext:e.titleSubtext,textStyle:{fontSize:e.titleFontSize,fontWeight:e.fontWeight,color:e.titleColor},left:e.textAlign},grid:{top:e.gridTop,bottom:e.gridBottom,left:e.gridLeft,right:e.gridRight,containLabel:e.gridContainLabel},color:e.colors}}(e,i,l)),sr(e,t,o,n,r,a,l));export{Zn as formatIndicatorParams,tr as getFieldConfig,Dn as getIndicatorParams,Tn as hasOwn,Nn as lowerCaseIncludes,Cn as runCode,or as setAxisExtremum,cr as transformProps,Xn as useTransformChartDataByAttrKey,Jn as useTransformChartDataByAttrValue,er as useValueFormatter,jn as useVariablesInText};\n","import dayjs from 'dayjs'\r\nimport { cloneDeep } from 'lodash-es'\r\nimport { useVariablesInText, lowerCaseIncludes, hasOwn } from '@ecan-bi/tools'\r\n// import { Big } from 'big.js'\r\nimport { unref } from 'vue'\r\n\r\nexport const handleFormatter = (formatter: string) => {\r\n return formatter.replace(/\\\\n/g, '\\n')\r\n}\r\n\r\nexport const getConditions = (conditions: { [key: string]: any }[]) => {\r\n const result = []\r\n if (conditions?.length) {\r\n for (const item of conditions) {\r\n if (item.conditions) {\r\n result.push(...getConditions(item.conditions))\r\n } else if (item?.dataType === 'component') {\r\n result.push(item)\r\n }\r\n }\r\n }\r\n return result\r\n}\r\nexport const getSqlConditions = (graphicConfig: { [key: string]: any }, renderUsedComponents: { [key: string]: any }[]) => {\r\n const controlList = cloneDeep(graphicConfig?.controlList || [])\r\n const {\r\n classificationList = [],\r\n rowHeaderList = [],\r\n dimensionList = [],\r\n seriesList = [],\r\n leftAxisList = [],\r\n rightAxisList = [],\r\n queryColumnList = [],\r\n indicators = []\r\n } = graphicConfig\r\n handleControlList(controlList, renderUsedComponents)\r\n const sqlConditions = controlList\r\n // console.log('controlList', controlList)\r\n const otherList = [\r\n ...classificationList,\r\n ...rowHeaderList,\r\n ...dimensionList,\r\n ...seriesList,\r\n ...leftAxisList,\r\n ...rightAxisList,\r\n ...queryColumnList,\r\n ...indicators\r\n ]\r\n const conditionList = []\r\n for (const ol of otherList) {\r\n const conditions = getConditions(ol?.conditions || [])\r\n if (conditions?.length) {\r\n const list = conditions\r\n .filter((v: any) => {\r\n const target = getComponent(v, renderUsedComponents)\r\n if (target) {\r\n return v?.dataType === 'component'\r\n }\r\n return false\r\n })\r\n .map((item: any) => {\r\n const target = getComponent(item, renderUsedComponents)\r\n const params: any = {}\r\n if (item?.dateFormat) {\r\n params.format = item.dateFormat\r\n }\r\n return {\r\n conditionKey: item.fieldName,\r\n conditionLabel: item.fieldName,\r\n conditionName: item.fieldName,\r\n conditionValueType: item.fieldType,\r\n id: target.id,\r\n keyName: item.fieldValue,\r\n rule: item.rule,\r\n notGlobal: true,\r\n indexCode: item.indexCode,\r\n typeGuid: item.typeGuid,\r\n indexCodeNum: item.indexCodeNum,\r\n ...params\r\n }\r\n })\r\n if (list?.length) {\r\n for (const l of list) {\r\n if (!conditionList.find(cItem => cItem.keyName === l.keyName)) {\r\n conditionList.push(l)\r\n }\r\n }\r\n }\r\n }\r\n }\r\n const len = conditionList.length\r\n for (let i = 0; i < len; i++) {\r\n const control = conditionList[i]\r\n if (control && !Object.keys(control)?.length) {\r\n continue\r\n }\r\n if (control?.conditionKey === 'parentCode') {\r\n continue\r\n }\r\n const {\r\n id,\r\n keyName,\r\n prop,\r\n format: dateFormat,\r\n dataType = 'component',\r\n customValue\r\n } = control\r\n let alias = keyName || id\r\n if (alias && prop) {\r\n alias += `-${prop}`\r\n }\r\n const sqlCondition: { [key: string]: any } = getConditionItem(control)\r\n setFieldValue({\r\n sqlCondition,\r\n renderUsedComponents,\r\n id,\r\n dateFormat,\r\n prop,\r\n keyName,\r\n dataType,\r\n customValue\r\n })\r\n sqlConditions.push(sqlCondition)\r\n }\r\n // globalCondition=false时,如果全局过滤里面已经配置了该组件的信息,则不用再传globalCondition=false的组件信息\r\n for (let j = sqlConditions.length - 1; j >= 0; j--) {\r\n const item = sqlConditions[j]\r\n if (!item.globalCondition) {\r\n const cond = getConditions(sqlConditions).find(v => v.alias === item.alias && v.globalCondition)\r\n if (cond) {\r\n sqlConditions.splice(j, 1)\r\n }\r\n }\r\n }\r\n return sqlConditions\r\n}\r\n\r\nexport const handleVariableList = (variableList: { [key: string]: any }[], renderUsedComponents: { [key:string]: any }[]) => {\r\n const handleVarList = []\r\n if (variableList?.length) {\r\n for (const item of variableList) {\r\n if (item.variableName) {\r\n const variableItem: any = {\r\n variateName: item.variableName,\r\n globalCondition: item.globalCondition || false,\r\n valueType: item.variableType,\r\n alias: item.keyName || ''\r\n }\r\n setFieldValue({\r\n sqlCondition: variableItem,\r\n renderUsedComponents,\r\n id: item.id,\r\n dateFormat: item.format,\r\n prop: item.dateTypeValue,\r\n keyName: item.keyName,\r\n dataType: item.dataType,\r\n customValue: item.variableValue,\r\n operateType: item.operateType,\r\n operateMode: item.operateMode,\r\n operateValue: item.operateValue\r\n })\r\n if (item.format) {\r\n // 日期格式化\r\n variableItem.dateFormat = item.format\r\n }\r\n if (item.label) {\r\n variableItem.label = item.label\r\n }\r\n handleVarList.push(variableItem)\r\n }\r\n }\r\n }\r\n return handleVarList\r\n}\r\n\r\nfunction getConditionItem (control: { [key:string]:any }) {\r\n const {\r\n id,\r\n keyName,\r\n conditionLabel,\r\n conditionKey,\r\n conditionValueType,\r\n prop,\r\n rule = 'NONE',\r\n notGlobal = false,\r\n indexCode,\r\n indexCodeNum,\r\n typeGuid,\r\n dataType = 'component',\r\n isExtProperty\r\n } = control\r\n let alias = keyName || id\r\n if (alias && prop) {\r\n alias += `-${prop}`\r\n }\r\n return {\r\n rule,\r\n label: conditionLabel,\r\n fieldName: conditionKey,\r\n fieldValue: '', // 在关联控件中取\r\n valueType: conditionValueType,\r\n alias,\r\n globalCondition: !notGlobal,\r\n indexCode,\r\n indexCodeNum,\r\n typeGuid,\r\n dataType,\r\n isExtProperty\r\n }\r\n}\r\n\r\nconst excludeAttr = [\r\n 'keyValue',\r\n 'conditionKey',\r\n 'conditionLabel',\r\n 'conditionName',\r\n 'conditionValueType',\r\n 'customValue',\r\n 'id',\r\n 'keyName'\r\n]\r\nfunction handleControlList (controlList: { [key: string]: any }[], renderUsedComponents: { [key: string]: any }[]) {\r\n if (controlList?.length) {\r\n for (const control of controlList) {\r\n if (control?.conditions) {\r\n handleControlList(control.conditions, renderUsedComponents)\r\n } else {\r\n const {\r\n id,\r\n keyName,\r\n prop,\r\n format: dateFormat,\r\n dataType = 'component',\r\n customValue\r\n } = control\r\n let alias = keyName || id\r\n if (alias && prop) {\r\n alias += `-${prop}`\r\n }\r\n const sqlCondition: { [key: string]: any } = getConditionItem(control)\r\n setFieldValue({\r\n sqlCondition,\r\n renderUsedComponents,\r\n id,\r\n dateFormat,\r\n prop,\r\n keyName,\r\n dataType,\r\n customValue\r\n })\r\n for (const key in sqlCondition) {\r\n control[key] = sqlCondition[key]\r\n }\r\n for (const attr of excludeAttr) {\r\n delete control[attr]\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\nfunction setFieldValue (data: any) {\r\n const {\r\n sqlCondition,\r\n renderUsedComponents,\r\n id,\r\n dateFormat,\r\n prop,\r\n keyName,\r\n dataType,\r\n customValue,\r\n operateValue,\r\n operateMode,\r\n operateType\r\n } = data\r\n const component: any = unref(renderUsedComponents).find((v: { [key: string]: any }) => v.id === id)\r\n // 获取组件属性\r\n const { value, format = 'YYYY-MM-DD', operate, type = '', useCurrentTime } = component || {}\r\n const customFormat = dateFormat || format\r\n if (lowerCaseIncludes(type, 'date')) {\r\n let dateValue\r\n if (useCurrentTime) {\r\n dateValue = dayjs()\r\n } else {\r\n dateValue = dayjs(value)\r\n }\r\n if (operate && value) {\r\n const { mode, type: opType, value: opValue } = operate\r\n if (opValue) {\r\n switch (opType) {\r\n case 'add':\r\n dateValue = dateValue.add(opValue, mode)\r\n break\r\n case 'minus':\r\n dateValue = dateValue.subtract(opValue, mode)\r\n break\r\n }\r\n }\r\n }\r\n if (operateValue && operateMode && operateType) {\r\n switch (operateType) {\r\n case 'add':\r\n dateValue = dateValue.add(operateValue, operateMode)\r\n break\r\n case 'minus':\r\n dateValue = dateValue.subtract(operateValue, operateMode)\r\n break\r\n }\r\n }\r\n sqlCondition.fieldValue = dateValue?.format(customFormat) || ''\r\n sqlCondition.dateFormat = customFormat\r\n } else if (type === 'ecanRangePicker') {\r\n const { interval, intervalUnit, startTime, endTime } = component || {}\r\n let propValue = prop\r\n if (!prop) {\r\n const knList = keyName?.split('-')\r\n if (knList?.length) {\r\n propValue = knList[knList.length - 1]\r\n }\r\n }\r\n if (!propValue) {\r\n return\r\n }\r\n let _time = null\r\n if (useCurrentTime) {\r\n if (propValue === 'startTime') {\r\n _time = dayjs().subtract(interval, intervalUnit)\r\n } else if (propValue === 'endTime') {\r\n _time = dayjs()\r\n }\r\n }\r\n if (component[propValue]) {\r\n _time = dayjs(component[propValue])\r\n }\r\n if (operate) {\r\n const { type, value, mode } = operate\r\n switch (type) {\r\n case 'add':\r\n _time = _time ? _time.add(value, mode) : _time\r\n break\r\n case 'minus':\r\n _time = _time ? _time.subtract(value, mode) : _time\r\n }\r\n }\r\n if (operateValue && operateMode && operateType) {\r\n if (operateValue === 'rangeValue') {\r\n // 自定义偏移,目前只有范围差\r\n if (startTime && endTime) {\r\n const interval = dayjs(endTime).diff(dayjs(startTime), operateMode) + 1\r\n switch (operateType) {\r\n case 'add':\r\n _time = _time ? _time.add(interval, operateMode) : _time\r\n break\r\n case 'minus':\r\n _time = _time ? _time.subtract(interval, operateMode) : _time\r\n }\r\n }\r\n } else if (!isNaN(+operateValue)) {\r\n switch (operateType) {\r\n case 'add':\r\n _time = _time ? _time.add(operateValue, operateMode) : _time\r\n break\r\n case 'minus':\r\n _time = _time ? _time.subtract(operateValue, operateMode) : _time\r\n }\r\n }\r\n }\r\n if (_time) {\r\n sqlCondition.fieldValue = _time?.format(customFormat)\r\n }\r\n\r\n if (propValue === 'rangeValue') {\r\n // 全局变量的日期范围间隔值计算\r\n if (startTime && endTime) {\r\n const step: any = getFormatStep(customFormat)\r\n if (step) {\r\n sqlCondition.fieldValue = dayjs(endTime).diff(dayjs(startTime), step) + 1\r\n }\r\n }\r\n }\r\n sqlCondition.dateFormat = customFormat\r\n } else {\r\n const variables = value && (value).match(/\\{(.+?)\\}/g)\r\n if (variables?.length) {\r\n // 使用了表达式\r\n sqlCondition.fieldValue = ''\r\n } else {\r\n sqlCondition.fieldValue = value\r\n }\r\n }\r\n if (dataType === '') {\r\n sqlCondition.fieldValue = customValue || ''\r\n }\r\n}\r\n\r\nexport const getEventName = (type: string) => {\r\n let event = ''\r\n switch (type) {\r\n case 'ecanDatePicker':\r\n case 'ecanRangePicker':\r\n event = 'dateChange'\r\n break\r\n case 'ecanTimeDisplay':\r\n event = 'timeChange'\r\n break\r\n case 'ecanSelect':\r\n case 'ecanTreeSelect':\r\n event = 'selectChange'\r\n break\r\n case 'ecanTabs':\r\n event = 'tabChange'\r\n break\r\n case 'ecanInput':\r\n event = 'inputChange'\r\n break\r\n case 'ecanCheckbox':\r\n case 'ecanRadio':\r\n event = 'checkboxChange'\r\n break\r\n case 'ecanText':\r\n event = 'valueChange'\r\n break\r\n case 'ecanImage':\r\n event = 'click'\r\n break\r\n default:\r\n break\r\n }\r\n return event\r\n}\r\n\r\nfunction getComponent (data: any, componentList: any) {\r\n if (data.componentId) {\r\n return componentList.find((f: any) => f.id === data.componentId)\r\n } else {\r\n if (data.dataType === 'component') {\r\n if (data.fieldType === 'DATE') {\r\n const dateList = data.fieldValue?.split('-')\r\n if (dateList?.length) {\r\n return dateList[0]\r\n } else {\r\n return null\r\n }\r\n } else {\r\n return componentList.find((f: any) => f.keyName === data.fieldValue)\r\n }\r\n } else {\r\n return null\r\n }\r\n }\r\n}\r\n\r\nexport function getFormatStep (format: string) {\r\n const value = format.split('-')\r\n let formatStep = ''\r\n if (value?.length) {\r\n switch (value[value.length - 1]) {\r\n case 'YYYY':\r\n formatStep = 'year'\r\n break\r\n case 'MM':\r\n formatStep = 'month'\r\n break\r\n case 'DD':\r\n formatStep = 'day'\r\n break\r\n default:\r\n break\r\n }\r\n }\r\n return formatStep\r\n}\r\n// 格式化\r\nexport function handleFormat (row: any, item: any) {\r\n let value = row[item.label]\r\n if ((value || value === 0) && value !== '') {\r\n // 值不为空\r\n if (item.dataFormat && item.dataFormat.length !== 0) {\r\n // 保留两位小数需得提前执行\r\n if (item.dataFormat.includes('#.00')) {\r\n // 先执行保留小数\r\n if (typeof value !== 'number') {\r\n value = value.replace(/,/g, '')\r\n }\r\n // 排除输入为 字符类型 ,保留不转化\r\n if (Number(value) || Number(value) === 0) {\r\n const retentiondigit = item.retentiondigit ? item.retentiondigit - 0 : item.retentiondigit\r\n value = Number(value).toFixed(retentiondigit)\r\n }\r\n }\r\n if (item.dataFormat.includes('#,000')) {\r\n // 千分位处理部分\r\n const str = value.toString()\r\n if (!str.includes(',')) {\r\n value = formatQfw(str)\r\n }\r\n }\r\n }\r\n }\r\n return value\r\n}\r\n// 千分位转换\r\nexport function formatQfw (str: string) {\r\n let result = ''\r\n let str1 = ''\r\n let str2 = ''\r\n let value = ''\r\n if (str.indexOf('.') > -1) {\r\n str1 = str.split('.')[0] // 千分位处理部分\r\n str2 = str.split('.')[1] // 小数值\r\n } else {\r\n str1 = str\r\n }\r\n let index = 0\r\n let len = 0\r\n len = str1.length - 1\r\n while (len >= 0) {\r\n index % 3 === 0 && index !== 0\r\n ? str1[len] === '-'\r\n ? (result += str1[len])\r\n : (result += ',' + str1[len])\r\n : (result += str1[len])\r\n len--\r\n index++\r\n }\r\n result = result\r\n .split('')\r\n .reverse()\r\n .join('')\r\n if (str.indexOf('.') > -1) {\r\n value = result + '.' + str2\r\n } else {\r\n value = result\r\n }\r\n return value\r\n}\r\n// 根据指标获取其他参数-用于条件查询\r\nexport async function getIndicatorParams ({ graphicConfig, request, INDICATOR_URL = '', PAGE_ID, dataSourceId }) {\r\n try {\r\n const { leftAxisList = [], rightAxisList = [], queryColumnList = [], indicators = [] } = unref(graphicConfig)\r\n const otherList = [...leftAxisList, ...rightAxisList, ...queryColumnList, ...indicators]\r\n const idMap: any = {}\r\n for (const item of otherList) {\r\n const { indexCode = '', parentId = '' } = item\r\n if (parentId && !hasOwn(item, 'calcType') && !idMap[parentId]) {\r\n idMap[parentId] = indexCode\r\n }\r\n }\r\n if (Object.keys(idMap)?.length) {\r\n const promiseList = []\r\n for (const id in idMap) {\r\n promiseList.push(\r\n new Promise((resolve, reject) => {\r\n request\r\n .post(\r\n `${INDICATOR_URL}/diagram/hrpIndexWithComplex`,\r\n {\r\n pageId: PAGE_ID,\r\n indexGuid: id,\r\n indexCode: idMap[id],\r\n dataSourceId\r\n }\r\n )\r\n .then((res: any) => {\r\n const { success, data = [] } = res.data\r\n if (success && data?.dataViewColumns?.length) {\r\n resolve(data.dataViewColumns)\r\n } else {\r\n reject(data)\r\n }\r\n })\r\n .catch((e) => {\r\n reject(e)\r\n })\r\n })\r\n )\r\n }\r\n const res = await Promise.all(promiseList)\r\n const resultList = res.reduce((a: any, b: any) =>\r\n a.filter((c: any) => b.find((v: any) => v.typeGuid === c.typeGuid))\r\n )\r\n return resultList.filter((v: any) => v.typeGuid)\r\n }\r\n } catch (err) { }\r\n return ([])\r\n}\r\n/**\r\n * 图表的图例格式化\r\n * @param format 表达式\r\n * @param textData 传入参数\r\n * @returns 显示的图例文本\r\n */\r\nexport const getLegendFormat = (format: string = '', textData: any) => {\r\n const variables = format.match(/\\{(.+?)\\}/g)\r\n // 换行符个数\r\n const lineBreakCount = format.split('\\n')?.length - 1\r\n let lineBreakStr = ''\r\n if (lineBreakCount) {\r\n for (let i = 0; i < lineBreakCount; i++) {\r\n lineBreakStr += '\\n'\r\n }\r\n }\r\n let text = format\r\n if (variables?.length) {\r\n for (const item of variables) {\r\n const str = useVariablesInText(\r\n item,\r\n {\r\n textData\r\n },\r\n {\r\n useNewline: false,\r\n useSpace: false\r\n }\r\n )\r\n if (str) {\r\n text = text.replace(item, str)\r\n }\r\n }\r\n return `${lineBreakStr}{text|${text}}`\r\n } else {\r\n return format\r\n }\r\n}\r\nexport const mapScope = (scope: 'DIM' | 'IDX' | 'BUILT_IN_DIM') => {\r\n const map = {\r\n DIM: '维度',\r\n BUILT_IN_DIM: '维度',\r\n IDX: '指标',\r\n BUILT_IN_IDX: '指标',\r\n FIELD: '数据集'\r\n }\r\n return map[scope]\r\n}\r\nexport const mapDataSetScope = (scope: '0' | '1' | '2') => {\r\n const map = {\r\n 0: '文本',\r\n 1: '数值',\r\n 2: '日期'\r\n\r\n }\r\n return map[scope]\r\n}\r\n\r\nexport const getLoadType = (type: string) => {\r\n if (!type) {\r\n return ''\r\n }\r\n const list = type.split(',')\r\n const result = []\r\n for (const item of list) {\r\n if (item === '0') {\r\n result.push('手工录入')\r\n } else if (item === '1') {\r\n result.push('系统取数')\r\n } else if (item === '2') {\r\n result.push('运算加工')\r\n }\r\n }\r\n return result.join('、')\r\n}\r\n\r\nexport const getUseType = (type: string) => {\r\n if (!type) {\r\n return ''\r\n }\r\n const list = type.split(',')\r\n const result = []\r\n for (const item of list) {\r\n switch (item) {\r\n case '1':\r\n result.push('人力系统')\r\n break\r\n case '2':\r\n result.push('绩效系统')\r\n break\r\n case '3':\r\n result.push('预算系统')\r\n break\r\n case '4':\r\n result.push('财务系统')\r\n break\r\n case '5':\r\n result.push('成本系统')\r\n break\r\n case '6':\r\n result.push('物流系统')\r\n break\r\n case '7':\r\n result.push('固定资产系统')\r\n break\r\n case '8':\r\n result.push('OA办公系统')\r\n break\r\n case '9':\r\n result.push('电子档案系统')\r\n break\r\n case '10':\r\n result.push('个人收入系统')\r\n break\r\n case '11':\r\n result.push('奖金二次分配系统')\r\n break\r\n case '12':\r\n result.push('财务管理系统')\r\n break\r\n case '13':\r\n result.push('报销系统')\r\n break\r\n case '14':\r\n result.push('科研管理系统')\r\n break\r\n case '15':\r\n result.push('审计系统')\r\n break\r\n case '16':\r\n result.push('分组器系统')\r\n break\r\n case '17':\r\n result.push('消毒供应系统')\r\n break\r\n default:\r\n break\r\n }\r\n }\r\n return result.join('、')\r\n}\r\n\r\nexport const getSourceType = (dataTo: string) => {\r\n if (dataTo === '0') {\r\n return '指标库'\r\n } else if (dataTo === '1') {\r\n return '视图'\r\n } else if (dataTo === '2') {\r\n return '数据集'\r\n } else {\r\n return '其他'\r\n }\r\n}\r\n","<template>\n <div class=\"config-modal\" v-if=\"!isUpdate\">\n <div class=\"config-modal-left\" v-if=\"!isPivotTable\">\n <data-list />\n </div>\n <div class=\"config-modal-right\" :class=\"isPivotTable ? 'full' : ''\">\n <data-config ref=\"dataConfigRef\" :sqlConditions=\"sqlConditions\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, unref, ref, provide, nextTick, PropType } from 'vue'\nimport { cloneDeep } from 'lodash-es'\nimport {\n DATA_LIST,\n INDICATOR_TOKEN,\n GRAPHIC_CONFIG,\n CHARTS_OPTIONS,\n TABLE_OPTIONS,\n SOURCE_TYPE,\n SHOW_STYLE_CONFIG,\n UPDATE_GRAPHIC_CONFIG,\n UPDATE_CHARTS_OPTIONS,\n UPDATE_TABLE_OPTIONS,\n SELECTED_COMPONENT,\n REQUEST,\n RENDER_USED_COMPONENTS,\n UPDATE_USED_COMPONENT,\n UPDATE_COMPONENTS_CONFIG,\n MAP_ATTRIBUTE_PROPS,\n PAGE_CONFIG,\n IS_PIVOT_TABLE,\n IS_IFRAME_MODE\n} from '@/utils/constant'\nimport propsMap from './data-config/style-config-group/chart-props'\nimport tableProps from './data-config/style-config-group/table-props'\nimport loadAsyncComponent from '@/utils/loadAsyncComponent'\nimport { getSqlConditions } from '@/utils/util'\nexport default defineComponent({\n name: 'IndicatorLibrary',\n components: {\n DataList: loadAsyncComponent(() => import('./data-list')),\n DataConfig: loadAsyncComponent(() => import('./data-config'))\n },\n props: {\n isShowStyleConfig: {\n // 是否显示样式配置\n type: Boolean,\n default: false\n },\n sourceType: {\n // 数据源类型\n type: String,\n default: ''\n },\n indicatorToken: {\n // 指标库token\n type: String,\n default: ''\n },\n selectedComponent: {\n // 当前组件\n type: Object,\n default: () => {}\n },\n request: {\n // 外部请求方法\n default: null\n },\n renderUsedComponentList: {\n // 当前画布上渲染的组件\n type: Array as PropType<any[]>,\n default: () => []\n },\n mapAttributeProps: {\n type: Object,\n default: () => ({\n startTime: {\n label: '开始时间值',\n component: 'time-pick'\n },\n endTime: {\n label: '结束时间值',\n component: 'time-pick'\n }\n })\n },\n pageConfig: {\n type: Object,\n default: () => {}\n },\n isIframeMode: {\n type: Boolean,\n default: false\n }\n },\n setup (props, { expose, emit }) {\n const dataConfigRef = ref()\n const isUpdate = ref(false)\n const sourceType = computed(() => props.sourceType)\n const indicatorToken = computed(() => props.indicatorToken || '')\n const component = computed(() => props.selectedComponent)\n const usedComponentList = computed(() => props.renderUsedComponentList)\n const tableColumns = computed(\n () => unref(component)?.tableColumns || []\n )\n const isShowStyleConfig = computed(() => props.isShowStyleConfig)\n const isPivotTable = computed(() => unref(component)?.type?.includes('PivotTable'))\n // 图形化配置\n let graphicConfig = unref(component).graphicConfig\n ? cloneDeep(unref(component).graphicConfig)\n : ref({})\n graphicConfig = ref(graphicConfig)\n // 图表样式配置\n let chartsOptions = unref(component).chartsOptions\n ? cloneDeep(unref(component).chartsOptions)\n : ref(cloneDeep(propsMap.line))\n chartsOptions = ref(chartsOptions)\n let tableOptions = unref(component).tableOptions\n ? cloneDeep(unref(component).tableOptions)\n : ref(cloneDeep(tableProps))\n tableOptions = ref(tableOptions)\n // 设置数据列表\n const dataList = ref<{ [key: string]: any }[]>([])\n const setDataList = (list: { [key: string]: any }[]) => {\n dataList.value = list\n }\n const updateGraphicConfig = (config: { [key: string]: any }) => {\n graphicConfig.value = {\n ...unref(graphicConfig),\n ...unref(config)\n }\n }\n const updateChartsOptions = (\n options: { [key: string]: any },\n isMerge: Boolean = true\n ) => {\n if (isMerge) {\n chartsOptions.value = {\n ...unref(chartsOptions),\n ...unref(options)\n }\n } else {\n chartsOptions.value = {\n ...unref(options)\n }\n }\n }\n const updateTableOptions = (options: { [key: string]: any }) => {\n tableOptions.value = {\n ...unref(tableOptions),\n ...unref(options)\n }\n }\n const getDataList = () => dataList\n const updateIndicatorData = () => {\n isUpdate.value = true\n if (unref(component).graphicConfig) {\n graphicConfig.value = cloneDeep(unref(component).graphicConfig)\n }\n if (unref(component).chartsOptions) {\n chartsOptions.value = cloneDeep(unref(component).chartsOptions || propsMap.line)\n }\n nextTick(() => {\n isUpdate.value = false\n })\n }\n const getIndicatorData = () => {\n return {\n graphicConfig: unref(graphicConfig),\n chartsOptions: unref(chartsOptions),\n tableOptions: unref(tableOptions),\n tableColumns: unref(tableColumns),\n columnsConfigMap: unref(component).columnsConfigMap\n }\n }\n const getPivotGraphicData = () => {\n const pivotTableData = unref(dataConfigRef).getSaveData()\n return {\n ...pivotTableData,\n graphicConfig: unref(graphicConfig)\n }\n }\n (window as any).getIndicatorData = getIndicatorData;\n (window as any).getPivotGraphicData = getPivotGraphicData\n if (props.request) {\n provide(REQUEST, props.request)\n }\n provide(DATA_LIST, {\n setDataList,\n getDataList\n })\n\n const updateUsedComponent = (data: any) => {\n emit('updateUsedComponent', data)\n }\n const updateComponentsConfig = (ids: string[], controlList: any[]) => {\n emit('updateComponentsConfig', ids, { controlList })\n }\n\n const sqlConditions = computed(() => getSqlConditions(graphicConfig.value, usedComponentList.value))\n\n provide(IS_PIVOT_TABLE, isPivotTable)\n provide(IS_IFRAME_MODE, props.isIframeMode)\n provide(SELECTED_COMPONENT, component)\n provide(GRAPHIC_CONFIG, graphicConfig)\n provide(CHARTS_OPTIONS, chartsOptions)\n provide(TABLE_OPTIONS, tableOptions)\n provide(SOURCE_TYPE, sourceType)\n provide(SHOW_STYLE_CONFIG, isShowStyleConfig)\n provide(INDICATOR_TOKEN, indicatorToken)\n provide(UPDATE_GRAPHIC_CONFIG, updateGraphicConfig)\n provide(UPDATE_CHARTS_OPTIONS, updateChartsOptions)\n provide(UPDATE_TABLE_OPTIONS, updateTableOptions)\n provide(RENDER_USED_COMPONENTS, usedComponentList)\n provide(UPDATE_USED_COMPONENT, updateUsedComponent)\n provide(UPDATE_COMPONENTS_CONFIG, updateComponentsConfig)\n provide(MAP_ATTRIBUTE_PROPS, props.mapAttributeProps)\n provide(PAGE_CONFIG, props.pageConfig)\n expose({\n graphicConfig,\n chartsOptions,\n updateIndicatorData\n })\n return {\n sqlConditions,\n isUpdate,\n isPivotTable,\n dataConfigRef\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n.config-modal {\n width: 100%;\n height: 100%;\n display: flex;\n padding: 10px;\n}\n\n.config-modal-left {\n width: 300px;\n height: 100%;\n margin-right: 10px;\n padding: 10px;\n}\n\n.config-modal-right {\n width: calc(100% - 310px);\n &.full {\n width: 100%;\n }\n}\n</style>\n","<template>\n <div class=\"config-modal\" v-if=\"!isUpdate\">\n <div class=\"config-modal-left\" v-if=\"!isPivotTable\">\n <data-list />\n </div>\n <div class=\"config-modal-right\" :class=\"isPivotTable ? 'full' : ''\">\n <data-config ref=\"dataConfigRef\" :sqlConditions=\"sqlConditions\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, unref, ref, provide, nextTick, PropType } from 'vue'\nimport { cloneDeep } from 'lodash-es'\nimport {\n DATA_LIST,\n INDICATOR_TOKEN,\n GRAPHIC_CONFIG,\n CHARTS_OPTIONS,\n TABLE_OPTIONS,\n SOURCE_TYPE,\n SHOW_STYLE_CONFIG,\n UPDATE_GRAPHIC_CONFIG,\n UPDATE_CHARTS_OPTIONS,\n UPDATE_TABLE_OPTIONS,\n SELECTED_COMPONENT,\n REQUEST,\n RENDER_USED_COMPONENTS,\n UPDATE_USED_COMPONENT,\n UPDATE_COMPONENTS_CONFIG,\n MAP_ATTRIBUTE_PROPS,\n PAGE_CONFIG,\n IS_PIVOT_TABLE,\n IS_IFRAME_MODE\n} from '@/utils/constant'\nimport propsMap from './data-config/style-config-group/chart-props'\nimport tableProps from './data-config/style-config-group/table-props'\nimport loadAsyncComponent from '@/utils/loadAsyncComponent'\nimport { getSqlConditions } from '@/utils/util'\nexport default defineComponent({\n name: 'IndicatorLibrary',\n components: {\n DataList: loadAsyncComponent(() => import('./data-list')),\n DataConfig: loadAsyncComponent(() => import('./data-config'))\n },\n props: {\n isShowStyleConfig: {\n // 是否显示样式配置\n type: Boolean,\n default: false\n },\n sourceType: {\n // 数据源类型\n type: String,\n default: ''\n },\n indicatorToken: {\n // 指标库token\n type: String,\n default: ''\n },\n selectedComponent: {\n // 当前组件\n type: Object,\n default: () => {}\n },\n request: {\n // 外部请求方法\n default: null\n },\n renderUsedComponentList: {\n // 当前画布上渲染的组件\n type: Array as PropType<any[]>,\n default: () => []\n },\n mapAttributeProps: {\n type: Object,\n default: () => ({\n startTime: {\n label: '开始时间值',\n component: 'time-pick'\n },\n endTime: {\n label: '结束时间值',\n component: 'time-pick'\n }\n })\n },\n pageConfig: {\n type: Object,\n default: () => {}\n },\n isIframeMode: {\n type: Boolean,\n default: false\n }\n },\n setup (props, { expose, emit }) {\n const dataConfigRef = ref()\n const isUpdate = ref(false)\n const sourceType = computed(() => props.sourceType)\n const indicatorToken = computed(() => props.indicatorToken || '')\n const component = computed(() => props.selectedComponent)\n const usedComponentList = computed(() => props.renderUsedComponentList)\n const tableColumns = computed(\n () => unref(component)?.tableColumns || []\n )\n const isShowStyleConfig = computed(() => props.isShowStyleConfig)\n const isPivotTable = computed(() => unref(component)?.type?.includes('PivotTable'))\n // 图形化配置\n let graphicConfig = unref(component).graphicConfig\n ? cloneDeep(unref(component).graphicConfig)\n : ref({})\n graphicConfig = ref(graphicConfig)\n // 图表样式配置\n let chartsOptions = unref(component).chartsOptions\n ? cloneDeep(unref(component).chartsOptions)\n : ref(cloneDeep(propsMap.line))\n chartsOptions = ref(chartsOptions)\n let tableOptions = unref(component).tableOptions\n ? cloneDeep(unref(component).tableOptions)\n : ref(cloneDeep(tableProps))\n tableOptions = ref(tableOptions)\n // 设置数据列表\n const dataList = ref<{ [key: string]: any }[]>([])\n const setDataList = (list: { [key: string]: any }[]) => {\n dataList.value = list\n }\n const updateGraphicConfig = (config: { [key: string]: any }) => {\n graphicConfig.value = {\n ...unref(graphicConfig),\n ...unref(config)\n }\n }\n const updateChartsOptions = (\n options: { [key: string]: any },\n isMerge: Boolean = true\n ) => {\n if (isMerge) {\n chartsOptions.value = {\n ...unref(chartsOptions),\n ...unref(options)\n }\n } else {\n chartsOptions.value = {\n ...unref(options)\n }\n }\n }\n const updateTableOptions = (options: { [key: string]: any }) => {\n tableOptions.value = {\n ...unref(tableOptions),\n ...unref(options)\n }\n }\n const getDataList = () => dataList\n const updateIndicatorData = () => {\n isUpdate.value = true\n if (unref(component).graphicConfig) {\n graphicConfig.value = cloneDeep(unref(component).graphicConfig)\n }\n if (unref(component).chartsOptions) {\n chartsOptions.value = cloneDeep(unref(component).chartsOptions || propsMap.line)\n }\n nextTick(() => {\n isUpdate.value = false\n })\n }\n const getIndicatorData = () => {\n return {\n graphicConfig: unref(graphicConfig),\n chartsOptions: unref(chartsOptions),\n tableOptions: unref(tableOptions),\n tableColumns: unref(tableColumns),\n columnsConfigMap: unref(component).columnsConfigMap\n }\n }\n const getPivotGraphicData = () => {\n const pivotTableData = unref(dataConfigRef).getSaveData()\n return {\n ...pivotTableData,\n graphicConfig: unref(graphicConfig)\n }\n }\n (window as any).getIndicatorData = getIndicatorData;\n (window as any).getPivotGraphicData = getPivotGraphicData\n if (props.request) {\n provide(REQUEST, props.request)\n }\n provide(DATA_LIST, {\n setDataList,\n getDataList\n })\n\n const updateUsedComponent = (data: any) => {\n emit('updateUsedComponent', data)\n }\n const updateComponentsConfig = (ids: string[], controlList: any[]) => {\n emit('updateComponentsConfig', ids, { controlList })\n }\n\n const sqlConditions = computed(() => getSqlConditions(graphicConfig.value, usedComponentList.value))\n\n provide(IS_PIVOT_TABLE, isPivotTable)\n provide(IS_IFRAME_MODE, props.isIframeMode)\n provide(SELECTED_COMPONENT, component)\n provide(GRAPHIC_CONFIG, graphicConfig)\n provide(CHARTS_OPTIONS, chartsOptions)\n provide(TABLE_OPTIONS, tableOptions)\n provide(SOURCE_TYPE, sourceType)\n provide(SHOW_STYLE_CONFIG, isShowStyleConfig)\n provide(INDICATOR_TOKEN, indicatorToken)\n provide(UPDATE_GRAPHIC_CONFIG, updateGraphicConfig)\n provide(UPDATE_CHARTS_OPTIONS, updateChartsOptions)\n provide(UPDATE_TABLE_OPTIONS, updateTableOptions)\n provide(RENDER_USED_COMPONENTS, usedComponentList)\n provide(UPDATE_USED_COMPONENT, updateUsedComponent)\n provide(UPDATE_COMPONENTS_CONFIG, updateComponentsConfig)\n provide(MAP_ATTRIBUTE_PROPS, props.mapAttributeProps)\n provide(PAGE_CONFIG, props.pageConfig)\n expose({\n graphicConfig,\n chartsOptions,\n updateIndicatorData\n })\n return {\n sqlConditions,\n isUpdate,\n isPivotTable,\n dataConfigRef\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n.config-modal {\n width: 100%;\n height: 100%;\n display: flex;\n padding: 10px;\n}\n\n.config-modal-left {\n width: 300px;\n height: 100%;\n margin-right: 10px;\n padding: 10px;\n}\n\n.config-modal-right {\n width: calc(100% - 310px);\n &.full {\n width: 100%;\n }\n}\n</style>\n","import { withInstall } from '@/utils/withInstall'\r\nimport IndicatorLibrary from './IndicatorLibrary.vue'\r\nexport const EcanIndicatorLibrary = withInstall(IndicatorLibrary)\r\nexport default EcanIndicatorLibrary\r\n","import { lowerCaseIncludes, hasOwn } from '@ecan-bi/tools'\r\nimport {\r\n INDICATOR_URL\r\n} from '@/utils/constant'\r\n\r\nexport const useIndicatorData = (props: { [key:string]: any } = {}) => {\r\n const handleQueryColumn = (queryColumn: { [key:string]: any } = {}) => {\r\n const { label, name, location, show, indexCode, typeGuid } = queryColumn\r\n return {\r\n label,\r\n columnName: name,\r\n location,\r\n show,\r\n calcType: 'COLUMN',\r\n hrpIndexCode: indexCode,\r\n typeGuid\r\n }\r\n }\r\n\r\n const handleParams = (params: any) => {\r\n if (hasOwn(params, 'dataType')) {\r\n if (params.fieldType === 'DATE') {\r\n params.label = params.fieldName\r\n if (params.dataType === 'component') {\r\n params.fieldValue = '${' + params.fieldValue + '}'\r\n }\r\n }\r\n delete params.dataType\r\n }\r\n if (hasOwn(params, 'activeKey')) {\r\n delete params.activeKey\r\n }\r\n if (hasOwn(params, 'radioValue')) {\r\n delete params.radioValue\r\n }\r\n }\r\n // 递归格式化conditions的数据\r\n const handleConditions = (list: { [key: string]: any } []) => {\r\n const result = []\r\n if (list?.length) {\r\n list.forEach((item) => {\r\n if (item.join && item.conditions) {\r\n const isSameLevel = !item.conditions.some((v: any) => v.join && v.conditions)\r\n item.conditions.forEach((cs: any, index: number) => {\r\n handleParams(cs)\r\n if (isSameLevel) {\r\n if (index < item.conditions.length - 1) {\r\n result.push({\r\n join: item.join,\r\n ...cs\r\n })\r\n } else {\r\n result.push(cs)\r\n }\r\n } else {\r\n if (cs.join && cs.conditions) {\r\n result.push({\r\n conditions: handleConditions([cs]),\r\n join: item.join\r\n })\r\n } else {\r\n result.push(cs)\r\n }\r\n }\r\n })\r\n } else {\r\n handleParams(item)\r\n result.push(item)\r\n }\r\n })\r\n }\r\n return result\r\n }\r\n\r\n const handleIndicator = (indicator: { [key:string]: any } = {}) => {\r\n const {\r\n label,\r\n name,\r\n location,\r\n show,\r\n indexCode,\r\n calcType = 'COLUMN',\r\n builtInFormula,\r\n builtInValueSource,\r\n builtInCalcWay,\r\n formula,\r\n conditions,\r\n aggregate\r\n } = indicator\r\n let conditionData\r\n if (conditions) {\r\n conditionData = handleConditions(conditions)\r\n }\r\n return {\r\n label: label.trim(),\r\n columnName: name,\r\n location,\r\n show,\r\n calcType,\r\n hrpIndexCode: indexCode,\r\n aggregate,\r\n builtInFormula,\r\n builtInValueSource,\r\n builtInCalcWay,\r\n formula,\r\n conditions: conditionData\r\n }\r\n }\r\n\r\n return async () => {\r\n const { graphicConfig, type, request, isGroupTable } = props\r\n // 全部属性, 为了属性可拓展,所以在设计器中自由添加\r\n let {\r\n source,\r\n dataViewId,\r\n plugin = '1', // 插件类型\r\n layer, // 后台图表类型,值分0,1\r\n chartType, // 前端图表类型,实测没用\r\n classificationList = [],\r\n seriesList = [],\r\n leftAxisList = [],\r\n rightAxisList = [],\r\n queryColumnList = [],\r\n indicators = [],\r\n // controlList = [],\r\n dataSourceId, // 所属数据源ID\r\n idxLibMode, // 指标库模式, source= INDICATOR_LIB时候必填, NORMAL_YEAR_TABLE = 普通年表, WITH_DATE_DIM_TABLE = 带有时间维度表\r\n preview = false, // 预览开关\r\n sqlConditions = [],\r\n rowHeaderList = []\r\n } = graphicConfig || {}\r\n // 图类型,1=表 2=图\r\n if (layer == null) {\r\n if (lowerCaseIncludes(type, ['table', 'card'])) {\r\n layer = '1'\r\n } else {\r\n layer = '2'\r\n }\r\n }\r\n // console.log('classificationList', classificationList)\r\n // console.log('seriesList', seriesList)\r\n // console.log('leftAxisList', leftAxisList)\r\n // console.log('rightAxisList', rightAxisList)\r\n // console.log('indicators', indicators)\r\n // console.log('controlList', controlList)\r\n // 重点处理 classificationList、seriesList、leftAxisList、rightAxisList、indicators\r\n // classificationList (取第一项) => classification\r\n let classification: Object\r\n if (Array.isArray(classificationList) && classificationList.length > 0) {\r\n const len = classificationList.length\r\n for (let i = 0; i < len; i++) {\r\n const item = classificationList[i] || {}\r\n const { label = '', name = '', show = false, sort, customGroup, conditions, typeGuid } = item\r\n // 如果是 show 直接提取 classification,停止遍历\r\n if (show || len === 1) {\r\n classification = {\r\n label: label.trim(),\r\n columnName: name,\r\n show,\r\n sort,\r\n customGroup,\r\n typeGuid,\r\n conditions: handleConditions(conditions)\r\n }\r\n break\r\n }\r\n }\r\n }\r\n // seriesList (取第一项) => series\r\n let series: Object\r\n if (Array.isArray(seriesList) && seriesList.length > 0) {\r\n const len = seriesList.length\r\n for (let i = 0; i < len; i++) {\r\n const item = seriesList[i] || {}\r\n const { label = '', name = '', show = false, sort, customGroup, conditions, typeGuid } = item\r\n // 如果是 show 直接提取 seriesList,停止遍历\r\n if (show || len === 1) {\r\n series = {\r\n label: label.trim(),\r\n columnName: name,\r\n show,\r\n sort,\r\n customGroup,\r\n conditions: handleConditions(conditions),\r\n typeGuid\r\n }\r\n break\r\n }\r\n }\r\n }\r\n // 行表头\r\n const rowHeaders = []\r\n if (Array.isArray(rowHeaderList) && rowHeaderList.length > 0) {\r\n const len = rowHeaderList.length\r\n for (let i = 0; i < len; i++) {\r\n const item = rowHeaderList[i] || {}\r\n const { label = '', name = '', show = false, sort, customGroup, conditions, typeGuid } = item\r\n rowHeaders.push({\r\n typeGuid,\r\n label: label.trim(),\r\n columnName: name,\r\n show,\r\n sort,\r\n customGroup,\r\n conditions: handleConditions(conditions)\r\n })\r\n }\r\n }\r\n // queryColumnList => queryColumns\r\n const queryColumns = []\r\n queryColumnList?.forEach((queryColumn: { [key:string]: any }) => {\r\n queryColumns.push(handleQueryColumn(queryColumn))\r\n })\r\n\r\n // leftAxisList + rightAxisList + indicators => indicatorList\r\n const indicatorList = []\r\n leftAxisList?.forEach((leftAxis: { [key:string]: any }) => {\r\n leftAxis.location = 'LEFT'\r\n indicatorList.push(handleIndicator(leftAxis))\r\n })\r\n rightAxisList?.forEach((rightAxis: { [key:string]: any }) => {\r\n rightAxis.location = 'RIGHT'\r\n indicatorList.push(handleIndicator(rightAxis))\r\n })\r\n indicators?.forEach((indicator: { [key:string]: any }) => {\r\n indicator.location = 'LEFT'\r\n indicatorList.push(handleIndicator(indicator))\r\n })\r\n\r\n if (isGroupTable || type === 'card') {\r\n // 分组表和指标卡片\r\n chartType = 'grouptable'\r\n if (indicatorList.length === 0 || rowHeaders.length === 0) {\r\n return\r\n }\r\n // queryColumns 表格配置为空返回\r\n } else if (layer === '1' && queryColumns.length === 0) {\r\n return\r\n // queryColumns 图表配置为空返回\r\n } else if (layer === '2' && indicatorList.length === 0) {\r\n return\r\n }\r\n try {\r\n // @ts-ignore\r\n const res = await request.post(`${INDICATOR_URL}/diagram`, {\r\n source,\r\n dataViewId,\r\n plugin,\r\n layer,\r\n chartType,\r\n classification,\r\n series,\r\n indicatorList,\r\n queryColumns,\r\n pageFlag: true,\r\n sqlConditions,\r\n rowHeaders,\r\n dataSourceId,\r\n idxLibMode,\r\n preview\r\n })\r\n return res\r\n } catch (e) {\r\n console.error(e)\r\n }\r\n }\r\n}\r\n\r\nexport default useIndicatorData\r\n","<template>\r\n <div class=\"ecan-chart-graph\" ref=\"chartWrapRef\">\r\n <a-spin :spinning=\"loading\" wrapperClassName=\"chart-spin\" tip=\"数据加载中...\">\r\n <div style=\"width: 100%; height: 100%\" ref=\"echartRef\"></div>\r\n </a-spin>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport * as echarts from 'echarts'\r\nimport { defineComponent, onMounted, onBeforeUnmount, computed, ref, inject, unref, watch } from 'vue'\r\nimport { Spin as ASpin } from 'ant-design-vue'\r\nimport useIndicatorData from '@/hooks/useIndicatorData'\r\nimport * as generalTools from '@ecan-bi/tools'\r\nimport { CHARTS_OPTIONS, GRAPHIC_CONFIG, ZOOM_FONT_SIZE, REQUEST, INDICATOR_TOKEN } from '@/utils/constant'\r\nexport default defineComponent({\r\n name: 'ChartGraph',\r\n components: {\r\n ASpin\r\n },\r\n props: {\r\n graphicConfig: {\r\n // 指标库配置\r\n type: Object,\r\n default: () => {}\r\n },\r\n chartsOptions: {\r\n // 图表配置\r\n type: Object,\r\n default: () => {}\r\n }\r\n },\r\n setup (props, { expose }) {\r\n interface KeyTypeDataFieldNames {\r\n name: string\r\n types: {\r\n label: string\r\n value: string\r\n } []\r\n }\r\n\r\n interface ValueTypeDataFieldNames {\r\n name: string\r\n value: string\r\n type: string\r\n }\r\n\r\n const chartsOptions = computed(() => {\r\n if (props.chartsOptions) {\r\n return unref(props.chartsOptions)\r\n } else {\r\n return chartGraphicOptions as {\r\n [key: string]: any\r\n }\r\n }\r\n })\r\n const graphicConfig = computed(() => {\r\n if (props.graphicConfig) {\r\n return unref(props.graphicConfig)\r\n } else {\r\n return chartGraphicConfig as {\r\n [key: string]: any\r\n }\r\n }\r\n })\r\n const request = inject(REQUEST)\r\n let observer: ResizeObserver | null = null\r\n const indicatorToken = inject(INDICATOR_TOKEN) || ''\r\n const chartGraphicConfig = inject(GRAPHIC_CONFIG) || {}\r\n const chartGraphicOptions = inject(CHARTS_OPTIONS) || {}\r\n const echartRef = ref<HTMLElement>(null)\r\n const chartWrapRef = ref<HTMLElement>(null)\r\n const myChart = ref<any>()\r\n const loading = ref(false)\r\n const visible = ref(false)\r\n const fontSize = computed(() => (visible.value ? ZOOM_FONT_SIZE : 12))\r\n const chartData = ref<any>({})\r\n const myOption = ref()\r\n const chartOption = computed(() => {\r\n // 这样写为了触发响应式\r\n const chartsOptionsValue = unref(chartsOptions.value)\r\n if (chartsOptionsValue?.type === 'customGraph') {\r\n return myOption.value\r\n }\r\n return generalTools.transformProps(chartsOptionsValue, unref(chartData), fontSize.value)\r\n })\r\n const handleIndicatorDataset = (\r\n data: any = [],\r\n keyTypeDataFieldNames: KeyTypeDataFieldNames,\r\n useDataFieldNames: boolean = false\r\n ) => {\r\n const dataFieldNames = useDataFieldNames ? keyTypeDataFieldNames : null\r\n chartData.value = generalTools.useTransformChartDataByAttrKey(data, dataFieldNames)\r\n }\r\n const handleIndicatorPieDataset = (data: any = [], dataFieldNames?: ValueTypeDataFieldNames) => {\r\n chartData.value = generalTools.useTransformChartDataByAttrValue(data, dataFieldNames)\r\n }\r\n const handleIndicatorData = async () => {\r\n try {\r\n const indicatorData = useIndicatorData({\r\n graphicConfig: unref(graphicConfig.value),\r\n type: unref(chartsOptions.value)?.type,\r\n request,\r\n indicatorToken\r\n })\r\n loading.value = true\r\n const res = await indicatorData()\r\n const { columns = [], rows = [] } = res?.data?.data ?? {}\r\n if (unref(chartsOptions.value)?.type === 'pie') {\r\n let arr = []\r\n if (columns.length > 0) {\r\n const name = columns[0]\r\n const value = columns[1]\r\n arr = rows.map((item) => {\r\n return {\r\n name: item[name],\r\n value: item[value]\r\n }\r\n })\r\n }\r\n handleIndicatorPieDataset(arr)\r\n } else {\r\n let fieldNames\r\n if (columns.length > 0) {\r\n fieldNames = {\r\n name: columns[0],\r\n types: columns.slice(1).map((column) => {\r\n return {\r\n label: column,\r\n value: column\r\n }\r\n })\r\n }\r\n }\r\n handleIndicatorDataset(rows, fieldNames, true)\r\n }\r\n } catch (e) {\r\n console.error(e)\r\n } finally {\r\n loading.value = false\r\n }\r\n }\r\n const emptyOption = {\r\n title: {\r\n text: '暂无数据',\r\n x: 'center',\r\n y: 'center',\r\n textStyle: {\r\n fontSize: 14,\r\n fontWeight: 'normal'\r\n }\r\n }\r\n }\r\n const setChartOption = () => {\r\n const isEmpty = unref(chartData).dataset.length === 0\r\n if (isEmpty) {\r\n myChart.value.setOption(emptyOption, true)\r\n } else {\r\n myChart.value.setOption(chartOption.value, true)\r\n }\r\n }\r\n const refreshData = () => {\r\n if (unref(chartsOptions.value).type !== 'customGraph') {\r\n handleIndicatorData()\r\n }\r\n }\r\n const handleResize = () => {\r\n myChart.value?.resize()\r\n }\r\n watch(\r\n chartOption,\r\n () => {\r\n setChartOption()\r\n },\r\n {\r\n deep: true\r\n }\r\n )\r\n watch(\r\n () => unref(chartsOptions.value).optionCode,\r\n (optionCode: string) => {\r\n try {\r\n // eslint-disable-next-line\r\n const evalCopy = eval\r\n myOption.value = evalCopy(optionCode)\r\n } catch (e) {\r\n console.error(e)\r\n }\r\n },\r\n {\r\n immediate: true\r\n }\r\n )\r\n onMounted(() => {\r\n if (chartWrapRef.value) {\r\n observer = new ResizeObserver(handleResize)\r\n observer.observe(chartWrapRef.value)\r\n }\r\n myChart.value = echarts.init(echartRef.value)\r\n })\r\n onBeforeUnmount(() => {\r\n myChart.value.dispose()\r\n if (observer) {\r\n observer.disconnect()\r\n observer = null\r\n }\r\n })\r\n expose({\r\n refreshData\r\n })\r\n return {\r\n echartRef,\r\n loading\r\n }\r\n }\r\n})\r\n</script>\r\n\r\n<style lang=\"less\" scoped>\r\n.ecan-chart-graph {\r\n width: 100%;\r\n height: 100%;\r\n .chart-spin {\r\n width: 100%;\r\n height: 100%;\r\n :deep(.ant-spin-container) {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n }\r\n}\r\n</style>\r\n","<template>\r\n <div class=\"ecan-chart-graph\" ref=\"chartWrapRef\">\r\n <a-spin :spinning=\"loading\" wrapperClassName=\"chart-spin\" tip=\"数据加载中...\">\r\n <div style=\"width: 100%; height: 100%\" ref=\"echartRef\"></div>\r\n </a-spin>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport * as echarts from 'echarts'\r\nimport { defineComponent, onMounted, onBeforeUnmount, computed, ref, inject, unref, watch } from 'vue'\r\nimport { Spin as ASpin } from 'ant-design-vue'\r\nimport useIndicatorData from '@/hooks/useIndicatorData'\r\nimport * as generalTools from '@ecan-bi/tools'\r\nimport { CHARTS_OPTIONS, GRAPHIC_CONFIG, ZOOM_FONT_SIZE, REQUEST, INDICATOR_TOKEN } from '@/utils/constant'\r\nexport default defineComponent({\r\n name: 'ChartGraph',\r\n components: {\r\n ASpin\r\n },\r\n props: {\r\n graphicConfig: {\r\n // 指标库配置\r\n type: Object,\r\n default: () => {}\r\n },\r\n chartsOptions: {\r\n // 图表配置\r\n type: Object,\r\n default: () => {}\r\n }\r\n },\r\n setup (props, { expose }) {\r\n interface KeyTypeDataFieldNames {\r\n name: string\r\n types: {\r\n label: string\r\n value: string\r\n } []\r\n }\r\n\r\n interface ValueTypeDataFieldNames {\r\n name: string\r\n value: string\r\n type: string\r\n }\r\n\r\n const chartsOptions = computed(() => {\r\n if (props.chartsOptions) {\r\n return unref(props.chartsOptions)\r\n } else {\r\n return chartGraphicOptions as {\r\n [key: string]: any\r\n }\r\n }\r\n })\r\n const graphicConfig = computed(() => {\r\n if (props.graphicConfig) {\r\n return unref(props.graphicConfig)\r\n } else {\r\n return chartGraphicConfig as {\r\n [key: string]: any\r\n }\r\n }\r\n })\r\n const request = inject(REQUEST)\r\n let observer: ResizeObserver | null = null\r\n const indicatorToken = inject(INDICATOR_TOKEN) || ''\r\n const chartGraphicConfig = inject(GRAPHIC_CONFIG) || {}\r\n const chartGraphicOptions = inject(CHARTS_OPTIONS) || {}\r\n const echartRef = ref<HTMLElement>(null)\r\n const chartWrapRef = ref<HTMLElement>(null)\r\n const myChart = ref<any>()\r\n const loading = ref(false)\r\n const visible = ref(false)\r\n const fontSize = computed(() => (visible.value ? ZOOM_FONT_SIZE : 12))\r\n const chartData = ref<any>({})\r\n const myOption = ref()\r\n const chartOption = computed(() => {\r\n // 这样写为了触发响应式\r\n const chartsOptionsValue = unref(chartsOptions.value)\r\n if (chartsOptionsValue?.type === 'customGraph') {\r\n return myOption.value\r\n }\r\n return generalTools.transformProps(chartsOptionsValue, unref(chartData), fontSize.value)\r\n })\r\n const handleIndicatorDataset = (\r\n data: any = [],\r\n keyTypeDataFieldNames: KeyTypeDataFieldNames,\r\n useDataFieldNames: boolean = false\r\n ) => {\r\n const dataFieldNames = useDataFieldNames ? keyTypeDataFieldNames : null\r\n chartData.value = generalTools.useTransformChartDataByAttrKey(data, dataFieldNames)\r\n }\r\n const handleIndicatorPieDataset = (data: any = [], dataFieldNames?: ValueTypeDataFieldNames) => {\r\n chartData.value = generalTools.useTransformChartDataByAttrValue(data, dataFieldNames)\r\n }\r\n const handleIndicatorData = async () => {\r\n try {\r\n const indicatorData = useIndicatorData({\r\n graphicConfig: unref(graphicConfig.value),\r\n type: unref(chartsOptions.value)?.type,\r\n request,\r\n indicatorToken\r\n })\r\n loading.value = true\r\n const res = await indicatorData()\r\n const { columns = [], rows = [] } = res?.data?.data ?? {}\r\n if (unref(chartsOptions.value)?.type === 'pie') {\r\n let arr = []\r\n if (columns.length > 0) {\r\n const name = columns[0]\r\n const value = columns[1]\r\n arr = rows.map((item) => {\r\n return {\r\n name: item[name],\r\n value: item[value]\r\n }\r\n })\r\n }\r\n handleIndicatorPieDataset(arr)\r\n } else {\r\n let fieldNames\r\n if (columns.length > 0) {\r\n fieldNames = {\r\n name: columns[0],\r\n types: columns.slice(1).map((column) => {\r\n return {\r\n label: column,\r\n value: column\r\n }\r\n })\r\n }\r\n }\r\n handleIndicatorDataset(rows, fieldNames, true)\r\n }\r\n } catch (e) {\r\n console.error(e)\r\n } finally {\r\n loading.value = false\r\n }\r\n }\r\n const emptyOption = {\r\n title: {\r\n text: '暂无数据',\r\n x: 'center',\r\n y: 'center',\r\n textStyle: {\r\n fontSize: 14,\r\n fontWeight: 'normal'\r\n }\r\n }\r\n }\r\n const setChartOption = () => {\r\n const isEmpty = unref(chartData).dataset.length === 0\r\n if (isEmpty) {\r\n myChart.value.setOption(emptyOption, true)\r\n } else {\r\n myChart.value.setOption(chartOption.value, true)\r\n }\r\n }\r\n const refreshData = () => {\r\n if (unref(chartsOptions.value).type !== 'customGraph') {\r\n handleIndicatorData()\r\n }\r\n }\r\n const handleResize = () => {\r\n myChart.value?.resize()\r\n }\r\n watch(\r\n chartOption,\r\n () => {\r\n setChartOption()\r\n },\r\n {\r\n deep: true\r\n }\r\n )\r\n watch(\r\n () => unref(chartsOptions.value).optionCode,\r\n (optionCode: string) => {\r\n try {\r\n // eslint-disable-next-line\r\n const evalCopy = eval\r\n myOption.value = evalCopy(optionCode)\r\n } catch (e) {\r\n console.error(e)\r\n }\r\n },\r\n {\r\n immediate: true\r\n }\r\n )\r\n onMounted(() => {\r\n if (chartWrapRef.value) {\r\n observer = new ResizeObserver(handleResize)\r\n observer.observe(chartWrapRef.value)\r\n }\r\n myChart.value = echarts.init(echartRef.value)\r\n })\r\n onBeforeUnmount(() => {\r\n myChart.value.dispose()\r\n if (observer) {\r\n observer.disconnect()\r\n observer = null\r\n }\r\n })\r\n expose({\r\n refreshData\r\n })\r\n return {\r\n echartRef,\r\n loading\r\n }\r\n }\r\n})\r\n</script>\r\n\r\n<style lang=\"less\" scoped>\r\n.ecan-chart-graph {\r\n width: 100%;\r\n height: 100%;\r\n .chart-spin {\r\n width: 100%;\r\n height: 100%;\r\n :deep(.ant-spin-container) {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n }\r\n}\r\n</style>\r\n","import { withInstall } from '@/utils/withInstall'\r\nimport ChartGraph from './ChartGraph.vue'\r\nexport const EcanChartGraph = withInstall(ChartGraph)\r\nexport default EcanChartGraph\r\n","import { App } from 'vue'\nimport * as components from './components'\nconst install = (app: App, options: any) => {\n const { request } = options\n app.provide('$request', request)\n Object.keys(components).forEach((key) => {\n const component = components[key]\n if (component.install) {\n app.use(component)\n }\n })\n}\n\n// 部分导出\nexport * from './components'\n// 全局安装\nexport default {\n install\n}\n"],"names":["withInstall","comp","app","REQUEST","INDICATOR_URL","_a","INDICATOR_TOKEN","DATA_LIST","SELECTED_COMPONENT","GRAPHIC_CONFIG","UPDATE_GRAPHIC_CONFIG","SHOW_STYLE_CONFIG","REFRESH_DATA","CHARTS_OPTIONS","TABLE_OPTIONS","ZOOM_FONT_SIZE","UPDATE_CHARTS_OPTIONS","UPDATE_TABLE_OPTIONS","SOURCE_TYPE","CHANGE_CONDITION","DATA_VIEW_COLUMNS","RENDER_USED_COMPONENTS","UPDATE_USED_COMPONENT","UPDATE_COMPONENTS_CONFIG","MAP_ATTRIBUTE_PROPS","PAGE_CONFIG","IS_PIVOT_TABLE","IS_IFRAME_MODE","barProps","lineProps","pieProps","customGraphProps","comboGraphProps","propsMap","tableProps","loadAsyncComponent","loader","defineAsyncComponent","e","o","n","r","i","a","l","s","h","c","u","d","f","p","y","m","g","v","b","x","w","S","A","C","_","L","O","j","N","T","M","t","D","k","$","E","F","V","z","I","R","P","W","H","G","U","je","Y","K","Se","we","xe","be","De","_e","Ae","B","Oe","Ce","q","Q","Z","X","J","ee","Te","Ne","te","oe","ne","re","ve","ie","ae","le","se","ce","ue","de","fe","pe","he","ye","me","ge","Le","Me","ke","$e","Ee","Fe","Ve","ze","Ie","He","yt","Re","Pe","We","Ge","Ue","Ye","Ke","Be","qe","Qe","Ze","Xe","et","Je","ot","tt","nt","ht","rt","st","it","at","lt","ut","dt","ft","pt","mt","gt","vt","bt","xt","wt","St","At","_t","Lt","Ot","Ct","jt","Nt","Tt","Mt","kt","Dt","$t","Et","Ft","Vt","zt","It","Rt","Pt","Wt","Ht","Gt","Ut","Yt","Kt","Bt","qt","Qt","Zt","Xt","Jt","eo","to","oo","no","ro","io","ao","lo","so","co","uo","fo","po","ho","yo","mo","go","vo","bo","xo","wo","So","Ao","_o","Lo","Oo","Co","jo","No","To","Mo","ko","Do","$o","Eo","Fo","Vo","zo","Io","Ro","Po","Wo","Ho","Go","Uo","Yo","Ko","Bo","qo","Qo","Zo","Xo","Jo","en","tn","on","nn","rn","an","ln","sn","cn","un","dn","fn","pn","hn","yn","mn","gn","vn","bn","xn","wn","Sn","An","_n","Ln","On","Cn","jn","En","$n","Nn","Tn","Mn","kn","Fn","Vn","zn","In","Rn","Pn","Gn","Wn","Hn","Qn","Bn","Un","Kn","Yn","qn","Zn","Xn","Jn","er","tr","nr","rr","ir","ar","lr","sr","cr","getConditions","conditions","result","item","getSqlConditions","graphicConfig","renderUsedComponents","controlList","cloneDeep","classificationList","rowHeaderList","dimensionList","seriesList","leftAxisList","rightAxisList","queryColumnList","indicators","handleControlList","sqlConditions","otherList","conditionList","ol","list","getComponent","target","params","cItem","len","control","id","keyName","prop","dateFormat","dataType","customValue","sqlCondition","getConditionItem","setFieldValue","handleVariableList","variableList","handleVarList","variableItem","conditionLabel","conditionKey","conditionValueType","rule","notGlobal","indexCode","indexCodeNum","typeGuid","isExtProperty","alias","excludeAttr","key","attr","data","operateValue","operateMode","operateType","component","unref","value","format","operate","type","useCurrentTime","customFormat","lowerCaseIncludes","dateValue","dayjs","mode","opType","opValue","interval","intervalUnit","startTime","endTime","propValue","knList","_time","step","getFormatStep","variables","getEventName","event","componentList","dateList","formatStep","handleFormat","row","retentiondigit","str","formatQfw","str1","str2","index","mapScope","scope","mapDataSetScope","getLoadType","getUseType","getSourceType","dataTo","_sfc_main$1","defineComponent","props","expose","emit","dataConfigRef","ref","isUpdate","sourceType","computed","indicatorToken","usedComponentList","tableColumns","isShowStyleConfig","isPivotTable","_b","chartsOptions","tableOptions","dataList","setDataList","updateGraphicConfig","config","updateChartsOptions","options","isMerge","updateTableOptions","getDataList","updateIndicatorData","nextTick","getIndicatorData","getPivotGraphicData","provide","updateUsedComponent","updateComponentsConfig","ids","_hoisted_1","_hoisted_2","_component_data_config","_resolveComponent","_ctx","_openBlock","_createElementBlock","_createCommentVNode","_createElementVNode","_normalizeClass","EcanIndicatorLibrary","IndicatorLibrary","useIndicatorData","handleQueryColumn","queryColumn","label","name","location","show","handleParams","hasOwn","handleConditions","isSameLevel","cs","handleIndicator","indicator","calcType","builtInFormula","builtInValueSource","builtInCalcWay","formula","aggregate","conditionData","request","isGroupTable","source","dataViewId","plugin","layer","chartType","dataSourceId","idxLibMode","preview","classification","sort","customGroup","series","rowHeaders","queryColumns","indicatorList","leftAxis","rightAxis","_sfc_main","ASpin","chartGraphicOptions","chartGraphicConfig","inject","observer","echartRef","chartWrapRef","myChart","loading","visible","fontSize","chartData","myOption","chartOption","chartsOptionsValue","generalTools.transformProps","handleIndicatorDataset","keyTypeDataFieldNames","useDataFieldNames","dataFieldNames","generalTools.useTransformChartDataByAttrKey","handleIndicatorPieDataset","generalTools.useTransformChartDataByAttrValue","handleIndicatorData","indicatorData","res","columns","rows","_c","arr","fieldNames","column","emptyOption","setChartOption","refreshData","handleResize","watch","optionCode","evalCopy","onMounted","echarts","onBeforeUnmount","_component_a_spin","_createVNode","EcanChartGraph","ChartGraph","install","components"],"mappings":"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","x_google_ignoreList":[10]}
1
+ {"version":3,"file":"index-48f3aa1b.mjs","sources":["../src/utils/withInstall.ts","../src/utils/constant.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/bar/props.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/line/props.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/pie/props.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/custom-graph/props.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/combo-graph/props.ts","../src/indicator/indicator-library/data-config/style-config-group/chart-props/index.ts","../src/indicator/indicator-library/data-config/style-config-group/table-props/props.ts","../src/utils/loadAsyncComponent.ts","../node_modules/@ecan-bi/tools/lib/index.es.js","../src/utils/util.ts","../src/indicator/indicator-library/IndicatorLibrary.vue","../src/indicator/indicator-library/IndicatorLibrary.vue","../src/indicator/indicator-library/index.ts","../src/hooks/useIndicatorData.ts","../src/indicator/chart-graph/ChartGraph.vue","../src/indicator/chart-graph/ChartGraph.vue","../src/indicator/chart-graph/index.ts","../src/index.ts"],"sourcesContent":["// import { NOOP } from '@vue/shared'\n// import { Plugin } from 'vue'\n\n// export type SFCWithInstall<T> = T & Plugin\n\n// export const withInstall = <T, E extends Record<string, any>>(\n// main: T,\n// extra?: E\n// ) => {\n// (main as SFCWithInstall<T>).install = (app): void => {\n// for (const comp of [main, ...Object.values(extra ?? {})]) {\n// app.component(comp.name, comp)\n// }\n// }\n\n// if (extra) {\n// for (const [key, comp] of Object.entries(extra)) {\n// (main as any)[key] = comp\n// }\n// }\n// return main as SFCWithInstall<T> & E\n// }\n\n// export const withInstallFunction = <T>(fn: T, name: string) => {\n// (fn as SFCWithInstall<T>).install = (app) => {\n// app.config.globalProperties[name] = fn\n// }\n\n// return fn as SFCWithInstall<T>\n// }\n\n// export const withNoopInstall = <T>(component: T) => {\n// (component as SFCWithInstall<T>).install = NOOP\n\n// return component as SFCWithInstall<T>\n// }\nexport const withInstall = (comp) => {\n comp.install = (app) => {\n // 注册组件\n app.component(comp.name, comp)\n }\n return comp\n}\n","export const REQUEST = '$request'\n// @ts-ignore\nexport const INDICATOR_URL = window?.config?.indicatorURL || ''\n\nexport const INDICATOR_TOKEN = 'INDICATOR_TOKEN'\n\nexport const CONTAINER_TYPES = ['tabs', 'border']\n\nexport const CACHE_STEP = 'CACHE_STEP'\n\nexport const UPDATE_SNAPSHOT_LIST = 'UPDATE_SNAPSHOT_LIST'\n\nexport const REQUEST_MODEL = 'REQUEST_MODEL'\n\nexport const DATA_LIST = 'DATA_LIST'\n\nexport const SELECTED_COMPONENT = 'SELECTED_COMPONENT'\n\nexport const GRAPHIC_CONFIG = 'GRAPHIC_CONFIG'\n\nexport const UPDATE_GRAPHIC_CONFIG = 'UPDATE_GRAPHIC_CONFIG'\n\nexport const SHOW_STYLE_CONFIG = 'SHOW_STYLE_CONFIG'\n\nexport const REFRESH_DATA = 'REFRESH_DATA'\n\nexport const CHARTS_OPTIONS = 'CHARTS_OPTIONS'\n\nexport const TABLE_OPTIONS = 'TABLE_OPTIONS'\n\nexport const ZOOM_FONT_SIZE = 18\n\nexport const UPDATE_CHARTS_OPTIONS = 'UPDATE_CHARTS_OPTIONS'\n\nexport const UPDATE_TABLE_OPTIONS = 'UPDATE_TABLE_OPTIONS'\n\nexport const SOURCE_TYPE = 'SOURCE_TYPE'\n\nexport const CHANGE_CONDITION = 'CHANGE_CONDITION'\n\nexport const DATA_VIEW_COLUMNS = 'DATA_VIEW_COLUMNS'\n\nexport const RENDER_USED_COMPONENTS = 'RENDER_USED_COMPONENTS'\n\nexport const UPDATE_USED_COMPONENT = 'UPDATE_USED_COMPONENT'\n\nexport const UPDATE_COMPONENTS_CONFIG = 'UPDATE_COMPONENTS_CONFIG'\n\nexport const MAP_ATTRIBUTE_PROPS = 'MAP_ATTRIBUTE_PROPS'\n\nexport const PAGE_CONFIG = 'PAGE_CONFIG'\n\nexport const IS_PIVOT_TABLE = 'IS_PIVOT_TABLE'\n\nexport const IS_IFRAME_MODE = 'IS_IFRAME_MODE'\n","export interface BarProps {\n name: String,\n type: String,\n width: string // 图表宽度\n height: string // 图表高度\n titleText: string\n titleSubtext: string\n titleFontSize: string\n titleColor: string\n fontWeight: number\n textAlign: 'left' | 'right' | 'center'\n colors: string []\n legendShow: boolean\n legendTextStyleColor: string\n legendLeft: 'left' | 'center' | 'right'\n legendTop: 'top' | 'middle' | 'bottom'\n legendOrient: 'vertical' | 'horizontal'\n xAxisLabelInterval: number\n xAxisSplitLineShow: boolean // x轴展示分割线\n xAxisSplitAreaShow: boolean // x轴展示分割区域\n xAxisSplitLineInterval: number // x轴分割线间隔\n xAxisLabelColor: string // x轴名称颜色\n xAxisLabelWidth: number | undefined // x轴名称宽度\n xAxisLabelOverflow: 'none' | 'truncate' | 'break' | 'breakAll' // x轴名称溢出操作\n xAxisLabelRotate: number // x轴名称旋转\n xAxisLineShow: boolean // x轴线显示\n xAxisLineStyleColor: string // x轴名称颜色\n xAxisTickShow: boolean // 展示刻度\n xAxisLabelFormatter: string\n xAxisSplitLineStyleColor: string // x轴分割线颜色\n xAxisInverse: boolean\n xAxisMinInterval: number\n yAxisMinInterval: number\n yAxisInverse: boolean\n yAxisLabelWidth: number | undefined // y轴名称宽度\n yAxisLabelOverflow: 'none' | 'truncate' | 'break' | 'breakAll' // y轴名称溢出操作\n yAxisLabelRotate: number // y轴名称旋转\n yAxisSplitLineShow: boolean // y轴展示分割线\n yAxisSplitAreaShow: boolean // y轴展示分割区域\n yAxisSplitLineStyleColor: string // y轴分割线颜色\n yAxisLabelColor: string // y轴名称颜色\n yAxisLineStyleColor: string // y轴名称颜色\n yAxisLabelFormatter: string\n yAxisLineAlwaysDisplay: boolean // 总是显示y轴\n valueTypeDataFieldNames: any\n keyTypeDataFieldNames: any\n dataFieldConfigType: 'key' | 'value'\n tooltipShow: boolean\n tooltipTextStyleColor: string\n tooltipFormatter: string,\n tooltipPosition: string\n gridContainLabel: boolean\n gridTop: string\n gridBottom: string\n gridLeft: string\n gridRight: string\n barWidth: string\n graphicConfig: { [key:string]: any }\n toolboxShow: boolean\n toolboxLocation: boolean\n toolboxDownloadShow:boolean\n toolboxDataZoomShow: boolean\n toolboxInfoShow: boolean\n toolboxOrient: 'horizontal' | 'vertical'\n toolboxItemSize: number // 工具栏 icon 的大小。\n toolboxItemGap: number // 工具栏 icon 每项之间的间隔。横向布局时为水平间隔,纵向布局时为纵向间隔。\n toolboxLeft: 'left' | 'center' | 'right'\n toolboxTop: 'top'| 'middle'| 'bottom'\n toolboxIconStyleBorderColor: string\n toolboxDownloadUrl: string\n toolboxInfoText: string\n isUseHorizontalAxis: boolean\n axisInverse: boolean\n isStack: boolean\n stackColumns: string[],\n labelShow: boolean\n labelFontSize: string\n labelPosition: 'inside' | 'top' | 'bottom' | 'right' | 'left'\n labelColor: string\n labelWidth: number\n labelOverflow: 'none' | 'truncate' | 'break'\n labelFormatter: string\n gradientShow: boolean // 柱状图渐变设置\n gradientColors: string []\n gradientOffset: number\n barBorderRadius: string // 柱状图圆角设置\n yAxisLabelShow: boolean // 是否显示y轴坐标轴刻度标签\n yAxisSplitLineType: 'solid' | 'dashed' | 'dotted' // 分割线类型\n xAxisSplitLineType: 'solid' | 'dashed' | 'dotted' // 分割线类型\n legendItemGap: number\n legendItemWidth: number\n legendItemHeight: number\n showBarBackground: boolean\n legendType: string\n legendFontSize: string\n xAxisLabelFontSize: string\n yAxisLabelFontSize: string\n graphicType: string\n isShowMarkLine: boolean\n markLineType: 'min' | 'max' | 'average' | 'median'\n legendFormatter: string\n legendWidth: number | null\n legendHeight: number | null\n legendTextWidth: number | null\n legendScroll: boolean\n yAxisName: string\n xAxisName: string\n defaultRangeValue: boolean\n startValue: string\n endValue: string\n xAxisMaxValue: number\n yAxisMaxValue: number\n colorsType: string\n}\n\nexport const barProps: BarProps = {\n name: '柱状图',\n type: 'bar',\n width: '400px',\n height: '400px',\n xAxisLabelFormatter: '{value}',\n yAxisLabelFormatter: '{value}',\n yAxisLineAlwaysDisplay: false,\n titleText: '',\n titleSubtext: '',\n titleFontSize: '12px',\n titleColor: '#333',\n fontWeight: 400,\n textAlign: 'left',\n colors: ['#5470c6', '#91cc75', '#fac858', '#ee6666', '#73c0de', '#3ba272', '#fc8452', '#9a60b4', '#ea7ccc'],\n legendShow: true,\n legendTextStyleColor: '#333',\n legendOrient: 'horizontal',\n legendTop: 'top',\n legendLeft: 'center',\n tooltipShow: true,\n tooltipTextStyleColor: '',\n tooltipFormatter: '{marker} {a} {c}',\n xAxisSplitLineShow: true,\n xAxisSplitLineInterval: 0,\n xAxisSplitAreaShow: false,\n xAxisSplitLineStyleColor: '#333',\n xAxisLabelInterval: 0,\n xAxisLabelColor: '#333',\n xAxisLabelWidth: undefined,\n xAxisLabelRotate: 0,\n xAxisLabelOverflow: 'none',\n xAxisLineShow: true,\n xAxisLineStyleColor: '#333',\n xAxisTickShow: true,\n xAxisMinInterval: 0,\n yAxisMinInterval: 0,\n yAxisLabelWidth: undefined,\n yAxisLabelRotate: 0,\n yAxisLabelOverflow: 'none',\n yAxisSplitLineShow: true,\n yAxisSplitAreaShow: false,\n yAxisSplitLineStyleColor: '#333',\n yAxisLabelColor: '#333',\n yAxisLineStyleColor: '#333',\n valueTypeDataFieldNames: { name: 'name', value: 'value', type: 'type' },\n keyTypeDataFieldNames: { name: 'name', types: [] },\n dataFieldConfigType: 'value',\n barWidth: '40%',\n gridContainLabel: true,\n gridTop: '10%',\n gridBottom: '10%',\n gridLeft: '5%',\n gridRight: '5%',\n graphicConfig: {},\n toolboxShow: false,\n toolboxOrient: 'horizontal',\n toolboxItemSize: 16,\n toolboxItemGap: 8,\n toolboxLeft: 'right',\n toolboxTop: 'top',\n toolboxIconStyleBorderColor: '#666',\n toolboxDownloadUrl: '',\n toolboxInfoText: '当前无说明信息',\n isUseHorizontalAxis: false,\n axisInverse: false,\n xAxisInverse: false,\n yAxisInverse: false,\n isStack: false,\n stackColumns: [],\n labelShow: false,\n labelFontSize: '12px',\n labelPosition: 'inside',\n labelColor: '',\n labelWidth: 100,\n labelOverflow: 'none',\n labelFormatter: '{c}',\n toolboxLocation: false,\n toolboxDownloadShow: true,\n toolboxDataZoomShow: true,\n toolboxInfoShow: true,\n gradientShow: false,\n gradientColors: ['#5470c6', '#91cc75', '#fac858', '#ee6666', '#73c0de', '#3ba272', '#fc8452', '#9a60b4', '#ea7ccc'],\n gradientOffset: 1,\n barBorderRadius: '',\n yAxisLabelShow: true,\n yAxisSplitLineType: 'solid',\n xAxisSplitLineType: 'solid',\n legendItemGap: 10,\n legendItemWidth: 25,\n legendItemHeight: 14,\n showBarBackground: false,\n legendType: '',\n legendFontSize: '12px',\n xAxisLabelFontSize: '12px',\n yAxisLabelFontSize: '12px',\n graphicType: 'ecanBar',\n tooltipPosition: '',\n isShowMarkLine: false,\n markLineType: 'average',\n legendFormatter: '{name}',\n legendWidth: null,\n legendHeight: null,\n legendTextWidth: null,\n legendScroll: false,\n yAxisName: '',\n xAxisName: '',\n defaultRangeValue: false,\n startValue: '',\n endValue: '',\n xAxisMaxValue: null,\n yAxisMaxValue: null,\n colorsType: '默认'\n}\n","export interface LineProps {\n name: String\n type: String\n width: string // 图表宽度\n height: string // 图表高度\n colors: string[]\n colorsType: string\n titleText: string\n titleSubtext: string\n legendShow: boolean\n legendLeft: 'left' | 'center' | 'right'\n legendCustomPosition: boolean\n legendTop: 'top' | 'middle' | 'bottom'\n legendOrient: 'vertical' | 'horizontal' // 标记点大小\n legendTextStyleColor: string\n legendTextStyleFontSize: number\n legendTextItemGap: number\n symbolSize: number // 线宽度\n lineStyleWidth: number // 线宽\n smooth: boolean // 光滑\n xAxisName: string\n xAxisShow: boolean\n xAxisLabelInterval: number\n xAxisSplitLineShow: boolean // x轴展示分割线\n xAxisLabelColor: string // x轴名称颜色\n xAxisLineStyleColor: string // x轴名称颜色\n xAxisSplitLineStyleColor: string // x轴分割线颜色\n xAxisTickShow: boolean // 展示刻度\n xAxisLabelFormatter: string // 格式化\n xAxisInverse: boolean\n xAxisMinInterval: number\n xAxisLabelWidth: number | undefined // x轴名称宽度\n xAxisLabelOverflow: 'none' | 'truncate' | 'break' | 'breakAll' // x轴名称溢出操作\n xAxisLabelRotate: number // x轴名称旋转\n xAxisType: 'value' | 'category' | 'time' | 'log'\n yAxisName: string\n yAxisMinInterval: number\n yAxisInverse: boolean\n yAxisSplitLineShow: boolean // y轴展示分割线\n yAxisSplitLineStyleColor: string // y轴分割线颜色\n yAxisLabelColor: string // y轴名称颜色\n yAxisLineStyleColor: string // y轴名称颜色\n yAxisLineAlwaysDisplay: boolean // 总是显示y轴\n yAxisLabelFormatter: string // 格式化\n yAxisLabelShow: boolean\n yAxisSplitLineType: 'solid' | 'dashed' | 'dotted' // 分割线类型\n xAxisSplitLineType: 'solid' | 'dashed' | 'dotted' // 分割线类型\n gridContainLabel: boolean\n gridTop: string\n gridBottom: string\n gridLeft: string\n gridRight: string\n tooltipShow: boolean\n tooltipTextStyleColor: string\n tooltipFormatter: string\n tooltipBorderColor: string\n tooltipBackgroundColor: string\n toolboxShow: boolean\n toolboxDownloadShow: boolean\n toolboxDataZoomShow: boolean\n toolboxInfoShow: boolean\n toolboxOrient: 'horizontal' | 'vertical'\n toolboxItemSize: number // 工具栏 icon 的大小。\n toolboxItemGap: number // 工具栏 icon 每项之间的间隔。横向布局时为水平间隔,纵向布局时为纵向间隔。\n toolboxLeft: 'left' | 'center' | 'right'\n toolboxTop: 'top' | 'middle' | 'bottom'\n toolboxIconStyleBorderColor: string\n toolboxDownloadUrl: string\n toolboxInfoText: string\n areaStyleOpacity: number\n // 新加属性\n titleFontSize: string\n titleColor: string\n fontWeight: number\n textAlign: 'left' | 'right' | 'center'\n titleLeft: string\n xAxisSplitAreaShow: boolean // x轴展示分割区域\n xAxisSplitLineInterval: number // x轴分割间隔\n xAxisLineShow: boolean // 显示轴线\n valueTypeDataFieldNames: any\n keyTypeDataFieldNames: any\n dataFieldConfigType: 'key' | 'value'\n graphicConfig: { [key:string]: any }\n areaGradientShow: boolean // 分隔区域渐变\n areaGradientColor: string // 分隔区域渐变颜色\n isBoundaryGap: boolean // 是否两边留白\n legendItemGap: number\n legendItemWidth: number\n legendItemHeight: number\n legendType: string // 图例类型\n shadowColor: string // 阴影颜色\n shadowBlur: number // 阴影模糊度\n shadowOffsetY: number // 阴影偏移量-Y\n shadowOffsetX: number // 阴影偏移量-X\n legendFontSize: string\n xAxisLabelFontSize: string\n yAxisLabelFontSize: string\n graphicType: string\n tooltipPosition: string\n isShowMarkLine: boolean\n markLineType: 'min' | 'max' | 'average' | 'median'\n legendFormatter: string\n legendWidth: number | null\n legendHeight: number | null\n legendTextWidth: number | null\n legendScroll: boolean\n xAxisMaxValue: number\n yAxisMaxValue: number\n}\n\nexport const lineProps = {\n name: '折线图',\n type: 'line',\n width: '400px',\n height: '400px',\n\n colors: ['#FFBF53', '#04B1C2', '#F07474', '#C55784', '#9A5FB3', '#CF62D7', '#5E78EA', '#51B3F0', '#69D4DC', '#49B788', '#9CCC66', '#C18C00'],\n colorsType: '默认',\n\n legendShow: true,\n legendOrient: 'horizontal',\n legendTop: 'top',\n legendLeft: 'center',\n legendCustomPosition: false,\n legendTextStyleColor: '#333',\n legendTextStyleFontSize: '12px',\n legendTextItemGap: 10,\n legendTopPadding: 10,\n legendBottomPadding: 10,\n legendLeftPadding: 10,\n legendRightPadding: 10,\n titleText: '',\n titleSubtext: '',\n symbolSize: 4,\n lineStyleWidth: 2,\n smooth: false,\n xAxisName: '',\n xAxisType: 'category',\n xAxisShow: true,\n xAxisLabelWidth: undefined,\n xAxisLabelRotate: 0,\n xAxisLabelOverflow: 'none',\n xAxisLabelInterval: 0,\n xAxisSplitLineShow: true,\n xAxisSplitLineStyleColor: '#333',\n xAxisLabelColor: '#333',\n xAxisLineStyleColor: '#333',\n xAxisTickShow: true,\n xAxisLabelFormatter: '{value}', // 格式化\n xAxisMinInterval: 0,\n yAxisName: '',\n yAxisMinInterval: 0,\n yAxisSplitLineShow: true,\n yAxisSplitLineStyleColor: '#333',\n yAxisLabelColor: '#333',\n yAxisLineStyleColor: '#333',\n yAxisLineAlwaysDisplay: false,\n yAxisLabelShow: true,\n yAxisLabelFormatter: '{value}',\n yAxisSplitLineType: 'solid',\n xAxisSplitLineType: 'solid',\n gridContainLabel: true,\n gridTop: '10%',\n gridBottom: '10%',\n gridLeft: '5%',\n gridRight: '5%',\n tooltipShow: true,\n tooltipTextStyleColor: '',\n tooltipFormatter: '{marker} {a} {c}',\n tooltipBorderColor: '#333',\n tooltipBackgroundColor: '#fff',\n toolboxShow: false,\n toolboxDownloadShow: true,\n toolboxDataZoomShow: true,\n toolboxInfoShow: true,\n toolboxOrient: 'horizontal',\n toolboxItemSize: 16,\n toolboxItemGap: 8,\n toolboxLeft: 'right',\n toolboxTop: 'top',\n toolboxIconStyleBorderColor: '#666',\n toolboxDownloadUrl: '',\n toolboxInfoText: '当前无说明信息',\n areaStyleOpacity: 0,\n\n // 新加属性\n titleFontSize: '12px',\n titleColor: '#333',\n fontWeight: 400,\n textAlign: 'left',\n titleLeft: '',\n xAxisSplitAreaShow: false,\n xAxisSplitLineInterval: 0,\n xAxisLineShow: true,\n yAxisSplitAreaShow: false,\n valueTypeDataFieldNames: { name: 'name', value: 'value', type: 'type' },\n keyTypeDataFieldNames: { name: 'name', types: [] },\n dataFieldConfigType: 'value',\n graphicConfig: {},\n areaGradientShow: false,\n areaGradientColor: '',\n isBoundaryGap: true,\n legendItemGap: 10,\n legendItemWidth: 25,\n legendItemHeight: 14,\n legendType: '',\n shadowColor: '',\n shadowBlur: 0,\n shadowOffsetY: 0,\n shadowOffsetX: 0,\n legendFontSize: '12px',\n xAxisLabelFontSize: '12px',\n yAxisLabelFontSize: '12px',\n graphicType: 'ecanLine',\n tooltipPosition: '',\n isShowMarkLine: false,\n markLineType: 'average',\n legendFormatter: '{name}',\n legendWidth: null,\n legendHeight: null,\n legendTextWidth: null,\n legendScroll: false,\n xAxisMaxValue: null,\n yAxisMaxValue: null\n}\n","\nexport interface PieProps {\n name: String,\n type: String,\n width: string // 图表宽度\n height: string // 图表高度\n colors: string[]\n colorsType: string\n titleText: string\n titleSubtext: string\n backgroundColor: string\n toolboxDownloadShow: boolean\n toolboxDataZoomShow: boolean\n toolboxInfoShow: boolean\n tooltipShow: boolean\n tooltipTrigger: 'item' | 'axis' | 'none'\n tooltipTextStyleColor: string\n tooltipFormatter: string\n tooltipBorderColor: string\n tooltipBackgroundColor: string\n legendShow: boolean\n legendLeft: 'left' | 'center' | 'right'\n legendTop: 'top' | 'middle' | 'bottom'\n legendOrient: 'vertical' | 'horizontal'\n legendTextStyleColor: string\n innerRadius: string\n outerRadius: string\n centerLeft: string\n centerTop: string\n minAngle: number\n labelShow: boolean\n labelFormatter: string\n labelFontSize: number\n labelPosition: 'outside' | 'inside' | 'center'\n labelLineShow: boolean\n labelColor: string\n isUseLabelColors: boolean\n labelLineLength: number\n labelLineLength2: number\n roseType: '' | 'radius' | 'area'\n gridContainLabel: boolean\n gridTop: string\n gridBottom: string\n gridLeft: string\n gridRight: string\n toolboxShow: boolean\n toolboxOrient: 'horizontal' | 'vertical'\n toolboxItemSize: number // 工具栏 icon 的大小。\n toolboxItemGap: number // 工具栏 icon 每项之间的间隔。横向布局时为水平间隔,纵向布局时为纵向间隔。\n toolboxLeft: 'left' | 'center' | 'right'\n toolboxTop: 'top' | 'middle' | 'bottom'\n toolboxIconStyleBorderColor: string\n toolboxDownloadUrl: string\n toolboxInfoText: string\n\n titleFontSize: string\n titleColor: string\n fontWeight: number\n textAlign: 'left' | 'right' | 'center'\n titleLeft: string\n labelWidth: number\n labelOverflow: 'none' | 'truncate' | 'break'\n valueTypeDataFieldNames: any,\n dataFieldConfigType: 'key' | 'value',\n graphicConfig: { [key:string]: any }\n legendItemGap: number\n legendItemWidth: number\n legendItemHeight: number\n legendFormatter: string\n legendFontSize: string\n graphicType: string\n legendWidth: number | null\n legendHeight: number | null\n legendTextWidth: number | null\n legendScroll: boolean\n}\n\nexport const pieProps: PieProps = {\n name: '饼图',\n type: 'pie',\n width: '400px',\n height: '400px',\n titleText: '',\n titleSubtext: '',\n\n colors: ['#FFBF53', '#04B1C2', '#F07474', '#C55784', '#9A5FB3', '#CF62D7', '#5E78EA', '#51B3F0', '#69D4DC', '#49B788', '#9CCC66', '#C18C00'],\n colorsType: '默认',\n\n backgroundColor: '',\n toolboxDownloadShow: true,\n toolboxDataZoomShow: true,\n toolboxInfoShow: true,\n\n tooltipShow: true,\n tooltipTextStyleColor: '',\n tooltipTrigger: 'item',\n tooltipFormatter: '{marker} {b} {c} ({d}%)',\n tooltipBorderColor: '#333',\n tooltipBackgroundColor: '#fff',\n\n legendShow: true,\n legendTextStyleColor: '#333',\n legendOrient: 'vertical',\n legendTop: 'top',\n legendLeft: 'left',\n innerRadius: '0%',\n outerRadius: '60%',\n centerLeft: '50%',\n centerTop: '50%',\n minAngle: 0,\n labelShow: true,\n labelColor: '#333',\n isUseLabelColors: false,\n labelFontSize: 12,\n labelPosition: 'outside',\n labelFormatter: '{b}\\\\n{d}%',\n labelLineShow: true,\n labelLineLength: 10,\n labelLineLength2: 15,\n roseType: '',\n gridContainLabel: true,\n gridTop: '10%',\n gridBottom: '10%',\n gridLeft: '5%',\n gridRight: '5%',\n toolboxShow: false,\n toolboxOrient: 'horizontal',\n toolboxItemSize: 16,\n toolboxItemGap: 8,\n toolboxLeft: 'right',\n toolboxTop: 'top',\n toolboxIconStyleBorderColor: '#666',\n toolboxDownloadUrl: '',\n toolboxInfoText: '当前无说明信息',\n\n titleFontSize: '12px',\n titleColor: '#333',\n fontWeight: 400,\n textAlign: 'left',\n titleLeft: '',\n labelWidth: 100,\n labelOverflow: 'none',\n valueTypeDataFieldNames: { name: 'name', value: 'value', type: 'type' },\n dataFieldConfigType: 'value',\n graphicConfig: {},\n legendItemGap: 10,\n legendItemWidth: 25,\n legendItemHeight: 14,\n legendFormatter: '{name}',\n legendFontSize: '12px',\n graphicType: 'ecanPie',\n legendWidth: null,\n legendHeight: null,\n legendTextWidth: null,\n legendScroll: false\n}\n","export interface CustomGraphProps {\n name: String,\n type: String,\n width: string // 图表宽度\n height: string // 图表高度\n option: { [key: string]: any }\n optionCode: string\n}\n\nexport const customGraphProps: CustomGraphProps = {\n name: '自定义图表',\n type: 'customGraph',\n width: '400px',\n height: '400px',\n option: {},\n optionCode: ''\n}\n","\nexport interface ComboGraphProps {\n name: String,\n type: String,\n width: string // 图表宽度\n height: string // 图表高度\n colors: string[]\n colorsType: string\n titleText: string\n titleSubtext: string\n legendShow: boolean\n legendTextStyleColor: string\n legendLeft: 'left' | 'center' | 'right'\n legendTop: 'top' | 'middle' | 'bottom'\n legendOrient: 'vertical' | 'horizontal'\n xAxisLabelInterval: number\n xAxisSplitLineShow: boolean // x轴展示分割线\n xAxisMinInterval: number // 最小间距\n xAxisLabelColor: string // x轴名称颜色\n xAxisLabelRotate: number\n xAxisLabelOverflow: string\n xAxisLabelWidth: number | undefined // x轴名称宽度\n xAxisLineStyleColor: string // x轴名称颜色\n xAxisTickShow: boolean // 展示刻度\n yAxisSplitLineShow: boolean // y轴展示分割线\n xAxisSplitLineStyleColor: string // x轴分割线颜色\n yAxisSplitLineStyleColor: string // y轴分割线颜色\n yAxisLabelColor: string // y轴名称颜色\n yAxisLineStyleColor: string // y轴名称颜色\n yAxisLineAlwaysDisplay: boolean // 总是显示y轴\n yAxisLabelShow: boolean\n\n tooltipShow: boolean\n tooltipTextStyleColor: string\n tooltipFormatter: string\n tooltipBorderColor: string\n tooltipBackgroundColor: string\n tooltipTrigger: 'item' | 'axis' | 'none'\n\n seriesTypes: { [key: string]: any }[]\n yAxis: { [key: string]: any }[]\n yAxisMinInterval: number\n gridContainLabel: boolean\n gridTop: string\n gridBottom: string\n gridLeft: string\n gridRight: string\n toolboxShow: boolean\n toolboxLocation: boolean\n toolboxDownloadShow: boolean\n toolboxDataZoomShow: boolean\n toolboxInfoShow: boolean\n toolboxOrient: 'horizontal' | 'vertical'\n toolboxItemSize: number // 工具栏 icon 的大小。\n toolboxItemGap: number // 工具栏 icon 每项之间的间隔。横向布局时为水平间隔,纵向布局时为纵向间隔。\n toolboxLeft: 'left' | 'center' | 'right'\n toolboxTop: 'top' | 'middle' | 'bottom'\n toolboxIconStyleBorderColor: string\n toolboxDownloadUrl: string\n toolboxInfoText: string\n symbolSize: number // 线宽度\n lineStyleWidth: number // 线宽\n smooth: boolean // 光滑\n areaStyleOpacity: number\n barWidth: string\n}\n\nexport const comboGraphProps: ComboGraphProps = {\n name: '组合图表',\n type: 'comboGraph',\n width: '400px',\n height: '400px',\n titleText: '',\n titleSubtext: '',\n colors: ['#FFBF53', '#04B1C2', '#F07474', '#C55784', '#9A5FB3', '#CF62D7', '#5E78EA', '#51B3F0', '#69D4DC', '#49B788', '#9CCC66', '#C18C00'],\n colorsType: '默认',\n legendShow: true,\n legendTextStyleColor: '#333',\n legendOrient: 'horizontal',\n legendTop: 'top',\n legendLeft: 'center',\n\n tooltipShow: true,\n tooltipTextStyleColor: '',\n tooltipTrigger: 'item',\n tooltipFormatter: '{marker} {a} {c}',\n tooltipBorderColor: '#333',\n tooltipBackgroundColor: '#fff',\n\n xAxisLabelInterval: 0,\n xAxisSplitLineShow: true,\n xAxisLabelRotate: 0,\n xAxisLabelOverflow: 'none',\n xAxisLabelWidth: undefined,\n xAxisSplitLineStyleColor: '#333',\n xAxisLabelColor: '#333',\n xAxisLineStyleColor: '#333',\n xAxisTickShow: true,\n xAxisMinInterval: 0,\n yAxisMinInterval: 0,\n yAxisSplitLineShow: true,\n yAxisSplitLineStyleColor: '#333',\n yAxisLabelColor: '#333',\n yAxisLineStyleColor: '#333',\n yAxisLineAlwaysDisplay: false,\n yAxisLabelShow: true,\n seriesTypes: [\n {\n type: 'bar',\n axisIndex: 0\n },\n {\n type: 'line',\n axisIndex: 0\n }\n ],\n yAxis: [\n {\n axisLabelFormatter: '{value}'\n },\n {\n axisLabelFormatter: '{value}'\n }\n ],\n gridContainLabel: true,\n gridTop: '10%',\n gridBottom: '10%',\n gridLeft: '5%',\n gridRight: '5%',\n toolboxShow: false,\n toolboxLocation: false,\n toolboxDownloadShow: true,\n toolboxDataZoomShow: true,\n toolboxInfoShow: true,\n toolboxOrient: 'horizontal',\n toolboxItemSize: 16,\n toolboxItemGap: 8,\n toolboxLeft: 'right',\n toolboxTop: 'top',\n toolboxIconStyleBorderColor: '#666',\n toolboxDownloadUrl: '',\n toolboxInfoText: '当前无说明信息',\n areaStyleOpacity: 0,\n symbolSize: 4,\n lineStyleWidth: 2,\n smooth: false,\n barWidth: '40%'\n}\n","import { barProps } from './bar'\nimport { lineProps } from './line'\nimport { pieProps } from './pie'\nimport { customGraphProps } from './custom-graph'\nimport { comboGraphProps } from './combo-graph'\n\nexport default {\n bar: barProps,\n line: lineProps,\n pie: pieProps,\n customGraph: customGraphProps,\n comboGraph: comboGraphProps\n}\n","\r\nexport interface TableProps {\r\n name: String\r\n type: String\r\n size: String // 尺寸\r\n allOverflow: String // 内容超出\r\n hoverRow: Boolean // 点击行高亮\r\n hoverColor: String // hover行颜色\r\n headerCellStyleMethod: String // 表头单元格样式\r\n rowStyleMethod: String // 行样式\r\n boderList: Array<String> // 边框不显示\r\n columnDropEnable: Boolean // 列拖拽\r\n showTotalBool: Boolean // 显示汇总行\r\n totalName: String // 汇总行名\r\n expandAll: Boolean // 展开所有节点\r\n}\r\n\r\nexport const tableProps: TableProps = {\r\n name: '表格',\r\n type: 'table',\r\n size: 'medium',\r\n allOverflow: 'title',\r\n hoverRow: true,\r\n hoverColor: '#f5f7fa',\r\n headerCellStyleMethod: '',\r\n rowStyleMethod: '',\r\n boderList: [],\r\n columnDropEnable: true,\r\n showTotalBool: false,\r\n totalName: '',\r\n expandAll: false\r\n}\r\n","import { defineAsyncComponent, AsyncComponentLoader } from 'vue'\nconst loadAsyncComponent = (loader: AsyncComponentLoader<any>) => defineAsyncComponent({\n loader,\n delay: 200\n})\n\nexport default loadAsyncComponent\n","function e(e,t){var o={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(o[n]=e[n]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var r=0;for(n=Object.getOwnPropertySymbols(e);r<n.length;r++)t.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(e,n[r])&&(o[n[r]]=e[n[r]])}return o}function t(e,t,o,n){return new(o||(o=Promise))((function(r,i){function a(e){try{s(n.next(e))}catch(e){i(e)}}function l(e){try{s(n.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?r(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(a,l)}s((n=n.apply(e,t||[])).next())}))}function o(e,t){const o=Object.create(null),n=e.split(\",\");for(let e=0;e<n.length;e++)o[n[e]]=!0;return e=>!!o[e]}const n=()=>{},r=Object.assign,i=Object.prototype.hasOwnProperty,a=(e,t)=>i.call(e,t),l=Array.isArray,s=e=>\"[object Map]\"===h(e),c=e=>\"function\"==typeof e,u=e=>\"string\"==typeof e,d=e=>\"symbol\"==typeof e,f=e=>null!==e&&\"object\"==typeof e,p=Object.prototype.toString,h=e=>p.call(e),y=e=>h(e).slice(8,-1),m=e=>u(e)&&\"NaN\"!==e&&\"-\"!==e[0]&&\"\"+parseInt(e,10)===e,g=(e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))})((e=>e.charAt(0).toUpperCase()+e.slice(1))),v=(e,t)=>!Object.is(e,t);let b;const x=()=>b||(b=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:{});function w(e,...t){console.warn(`[Vue warn] ${e}`,...t)}const S=e=>{const t=new Set(e);return t.w=0,t.n=0,t},A=e=>(e.w&C)>0,_=e=>(e.n&C)>0,L=new WeakMap;let O=0,C=1;let j;const N=Symbol(\"production\"!==process.env.NODE_ENV?\"iterate\":\"\"),T=Symbol(\"production\"!==process.env.NODE_ENV?\"Map key iterate\":\"\");class M{constructor(e,t=null,o){this.fn=e,this.scheduler=t,this.active=!0,this.deps=[],this.parent=void 0,function(e,t){t&&t.active&&t.effects.push(e)}(this,o)}run(){if(!this.active)return this.fn();let e=j,t=D;for(;e;){if(e===this)return;e=e.parent}try{return this.parent=j,j=this,D=!0,C=1<<++O,O<=30?(({deps:e})=>{if(e.length)for(let t=0;t<e.length;t++)e[t].w|=C})(this):k(this),this.fn()}finally{O<=30&&(e=>{const{deps:t}=e;if(t.length){let o=0;for(let n=0;n<t.length;n++){const r=t[n];A(r)&&!_(r)?r.delete(e):t[o++]=r,r.w&=~C,r.n&=~C}t.length=o}})(this),C=1<<--O,j=this.parent,D=t,this.parent=void 0,this.deferStop&&this.stop()}}stop(){j===this?this.deferStop=!0:this.active&&(k(this),this.onStop&&this.onStop(),this.active=!1)}}function k(e){const{deps:t}=e;if(t.length){for(let o=0;o<t.length;o++)t[o].delete(e);t.length=0}}let D=!0;const $=[];function E(){$.push(D),D=!1}function F(){const e=$.pop();D=void 0===e||e}function V(e,t,o){if(D&&j){let n=L.get(e);n||L.set(e,n=new Map);let r=n.get(o);r||n.set(o,r=S());z(r,\"production\"!==process.env.NODE_ENV?{effect:j,target:e,type:t,key:o}:void 0)}}function z(e,t){let o=!1;O<=30?_(e)||(e.n|=C,o=!A(e)):o=!e.has(j),o&&(e.add(j),j.deps.push(e),\"production\"!==process.env.NODE_ENV&&j.onTrack&&j.onTrack(r({effect:j},t)))}function I(e,t,o,n,r,i){const a=L.get(e);if(!a)return;let c=[];if(\"clear\"===t)c=[...a.values()];else if(\"length\"===o&&l(e)){const e=Number(n);a.forEach(((t,o)=>{(\"length\"===o||!d(o)&&o>=e)&&c.push(t)}))}else switch(void 0!==o&&c.push(a.get(o)),t){case\"add\":l(e)?m(o)&&c.push(a.get(\"length\")):(c.push(a.get(N)),s(e)&&c.push(a.get(T)));break;case\"delete\":l(e)||(c.push(a.get(N)),s(e)&&c.push(a.get(T)));break;case\"set\":s(e)&&c.push(a.get(N))}const u=\"production\"!==process.env.NODE_ENV?{target:e,type:t,key:o,newValue:n,oldValue:r,oldTarget:i}:void 0;if(1===c.length)c[0]&&(\"production\"!==process.env.NODE_ENV?R(c[0],u):R(c[0]));else{const e=[];for(const t of c)t&&e.push(...t);\"production\"!==process.env.NODE_ENV?R(S(e),u):R(S(e))}}function R(e,t){const o=l(e)?e:[...e];for(const e of o)e.computed&&P(e,t);for(const e of o)e.computed||P(e,t)}function P(e,t){(e!==j||e.allowRecurse)&&(\"production\"!==process.env.NODE_ENV&&e.onTrigger&&e.onTrigger(r({effect:e},t)),e.scheduler?e.scheduler():e.run())}const W=o(\"__proto__,__v_isRef,__isVue\"),H=new Set(Object.getOwnPropertyNames(Symbol).filter((e=>\"arguments\"!==e&&\"caller\"!==e)).map((e=>Symbol[e])).filter(d)),G=U();function U(){const e={};return[\"includes\",\"indexOf\",\"lastIndexOf\"].forEach((t=>{e[t]=function(...e){const o=je(this);for(let e=0,t=this.length;e<t;e++)V(o,\"get\",e+\"\");const n=o[t](...e);return-1===n||!1===n?o[t](...e.map(je)):n}})),[\"push\",\"pop\",\"shift\",\"unshift\",\"splice\"].forEach((t=>{e[t]=function(...e){E();const o=je(this)[t].apply(this,e);return F(),o}})),e}function Y(e){const t=je(this);return V(t,\"has\",e),t.hasOwnProperty(e)}class K{constructor(e=!1,t=!1){this._isReadonly=e,this._shallow=t}get(e,t,o){const n=this._isReadonly,r=this._shallow;if(\"__v_isReactive\"===t)return!n;if(\"__v_isReadonly\"===t)return n;if(\"__v_isShallow\"===t)return r;if(\"__v_raw\"===t&&o===(n?r?Se:we:r?xe:be).get(e))return e;const i=l(e);if(!n){if(i&&a(G,t))return Reflect.get(G,t,o);if(\"hasOwnProperty\"===t)return Y}const s=Reflect.get(e,t,o);return(d(t)?H.has(t):W(t))?s:(n||V(e,\"get\",t),r?s:De(s)?i&&m(t)?s:s.value:f(s)?n?_e(s):Ae(s):s)}}class B extends K{constructor(e=!1){super(!1,e)}set(e,t,o,n){let r=e[t];if(Oe(r)&&De(r)&&!De(o))return!1;if(!this._shallow&&(Ce(o)||Oe(o)||(r=je(r),o=je(o)),!l(e)&&De(r)&&!De(o)))return r.value=o,!0;const i=l(e)&&m(t)?Number(t)<e.length:a(e,t),s=Reflect.set(e,t,o,n);return e===je(n)&&(i?v(o,r)&&I(e,\"set\",t,o,r):I(e,\"add\",t,o)),s}deleteProperty(e,t){const o=a(e,t),n=e[t],r=Reflect.deleteProperty(e,t);return r&&o&&I(e,\"delete\",t,void 0,n),r}has(e,t){const o=Reflect.has(e,t);return d(t)&&H.has(t)||V(e,\"has\",t),o}ownKeys(e){return V(e,\"iterate\",l(e)?\"length\":N),Reflect.ownKeys(e)}}class q extends K{constructor(e=!1){super(!0,e)}set(e,t){return\"production\"!==process.env.NODE_ENV&&w(`Set operation on key \"${String(t)}\" failed: target is readonly.`,e),!0}deleteProperty(e,t){return\"production\"!==process.env.NODE_ENV&&w(`Delete operation on key \"${String(t)}\" failed: target is readonly.`,e),!0}}const Q=new B,Z=new q,X=e=>e,J=e=>Reflect.getPrototypeOf(e);function ee(e,t,o=!1,n=!1){const r=je(e=e.__v_raw),i=je(t);o||(v(t,i)&&V(r,\"get\",t),V(r,\"get\",i));const{has:a}=J(r),l=n?X:o?Te:Ne;return a.call(r,t)?l(e.get(t)):a.call(r,i)?l(e.get(i)):void(e!==r&&e.get(t))}function te(e,t=!1){const o=this.__v_raw,n=je(o),r=je(e);return t||(v(e,r)&&V(n,\"has\",e),V(n,\"has\",r)),e===r?o.has(e):o.has(e)||o.has(r)}function oe(e,t=!1){return e=e.__v_raw,!t&&V(je(e),\"iterate\",N),Reflect.get(e,\"size\",e)}function ne(e){e=je(e);const t=je(this);return J(t).has.call(t,e)||(t.add(e),I(t,\"add\",e,e)),this}function re(e,t){t=je(t);const o=je(this),{has:n,get:r}=J(o);let i=n.call(o,e);i?\"production\"!==process.env.NODE_ENV&&ve(o,n,e):(e=je(e),i=n.call(o,e));const a=r.call(o,e);return o.set(e,t),i?v(t,a)&&I(o,\"set\",e,t,a):I(o,\"add\",e,t),this}function ie(e){const t=je(this),{has:o,get:n}=J(t);let r=o.call(t,e);r?\"production\"!==process.env.NODE_ENV&&ve(t,o,e):(e=je(e),r=o.call(t,e));const i=n?n.call(t,e):void 0,a=t.delete(e);return r&&I(t,\"delete\",e,void 0,i),a}function ae(){const e=je(this),t=0!==e.size,o=\"production\"!==process.env.NODE_ENV?s(e)?new Map(e):new Set(e):void 0,n=e.clear();return t&&I(e,\"clear\",void 0,void 0,o),n}function le(e,t){return function(o,n){const r=this,i=r.__v_raw,a=je(i),l=t?X:e?Te:Ne;return!e&&V(a,\"iterate\",N),i.forEach(((e,t)=>o.call(n,l(e),l(t),r)))}}function se(e,t,o){return function(...n){const r=this.__v_raw,i=je(r),a=s(i),l=\"entries\"===e||e===Symbol.iterator&&a,c=\"keys\"===e&&a,u=r[e](...n),d=o?X:t?Te:Ne;return!t&&V(i,\"iterate\",c?T:N),{next(){const{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:l?[d(e[0]),d(e[1])]:d(e),done:t}},[Symbol.iterator](){return this}}}}function ce(e){return function(...t){if(\"production\"!==process.env.NODE_ENV){const o=t[0]?`on key \"${t[0]}\" `:\"\";console.warn(`${g(e)} operation ${o}failed: target is readonly.`,je(this))}return\"delete\"!==e&&this}}function ue(){const e={get(e){return ee(this,e)},get size(){return oe(this)},has:te,add:ne,set:re,delete:ie,clear:ae,forEach:le(!1,!1)},t={get(e){return ee(this,e,!1,!0)},get size(){return oe(this)},has:te,add:ne,set:re,delete:ie,clear:ae,forEach:le(!1,!0)},o={get(e){return ee(this,e,!0)},get size(){return oe(this,!0)},has(e){return te.call(this,e,!0)},add:ce(\"add\"),set:ce(\"set\"),delete:ce(\"delete\"),clear:ce(\"clear\"),forEach:le(!0,!1)},n={get(e){return ee(this,e,!0,!0)},get size(){return oe(this,!0)},has(e){return te.call(this,e,!0)},add:ce(\"add\"),set:ce(\"set\"),delete:ce(\"delete\"),clear:ce(\"clear\"),forEach:le(!0,!0)};return[\"keys\",\"values\",\"entries\",Symbol.iterator].forEach((r=>{e[r]=se(r,!1,!1),o[r]=se(r,!0,!1),t[r]=se(r,!1,!0),n[r]=se(r,!0,!0)})),[e,o,t,n]}const[de,fe,pe,he]=ue();function ye(e,t){const o=t?e?he:pe:e?fe:de;return(t,n,r)=>\"__v_isReactive\"===n?!e:\"__v_isReadonly\"===n?e:\"__v_raw\"===n?t:Reflect.get(a(o,n)&&n in t?o:t,n,r)}const me={get:ye(!1,!1)},ge={get:ye(!0,!1)};function ve(e,t,o){const n=je(o);if(n!==o&&t.call(e,n)){const t=y(e);console.warn(`Reactive ${t} contains both the raw and reactive versions of the same object${\"Map\"===t?\" as keys\":\"\"}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`)}}const be=new WeakMap,xe=new WeakMap,we=new WeakMap,Se=new WeakMap;function Ae(e){return Oe(e)?e:Le(e,!1,Q,me,be)}function _e(e){return Le(e,!0,Z,ge,we)}function Le(e,t,o,n,r){if(!f(e))return\"production\"!==process.env.NODE_ENV&&console.warn(`value cannot be made reactive: ${String(e)}`),e;if(e.__v_raw&&(!t||!e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const a=(l=e).__v_skip||!Object.isExtensible(l)?0:function(e){switch(e){case\"Object\":case\"Array\":return 1;case\"Map\":case\"Set\":case\"WeakMap\":case\"WeakSet\":return 2;default:return 0}}(y(l));var l;if(0===a)return e;const s=new Proxy(e,2===a?n:o);return r.set(e,s),s}function Oe(e){return!(!e||!e.__v_isReadonly)}function Ce(e){return!(!e||!e.__v_isShallow)}function je(e){const t=e&&e.__v_raw;return t?je(t):e}const Ne=e=>f(e)?Ae(e):e,Te=e=>f(e)?_e(e):e;function Me(e){D&&j&&(e=je(e),\"production\"!==process.env.NODE_ENV?z(e.dep||(e.dep=S()),{target:e,type:\"get\",key:\"value\"}):z(e.dep||(e.dep=S())))}function ke(e,t){const o=(e=je(e)).dep;o&&(\"production\"!==process.env.NODE_ENV?R(o,{target:e,type:\"set\",key:\"value\",newValue:t}):R(o))}function De(e){return!(!e||!0!==e.__v_isRef)}function $e(e){return function(e,t){if(De(e))return e;return new Ee(e,t)}(e,!1)}class Ee{constructor(e,t){this.__v_isShallow=t,this.dep=void 0,this.__v_isRef=!0,this._rawValue=t?e:je(e),this._value=t?e:Ne(e)}get value(){return Me(this),this._value}set value(e){const t=this.__v_isShallow||Ce(e)||Oe(e);e=t?e:je(e),v(e,this._rawValue)&&(this._rawValue=e,this._value=t?e:Ne(e),ke(this,e))}}function Fe(e){return De(e)?e.value:e}class Ve{constructor(e,t,o,n){this._setter=t,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this._dirty=!0,this.effect=new M(e,(()=>{this._dirty||(this._dirty=!0,ke(this))})),this.effect.computed=this,this.effect.active=this._cacheable=!n,this.__v_isReadonly=o}get value(){const e=je(this);return Me(e),!e._dirty&&e._cacheable||(e._dirty=!1,e._value=e.effect.run()),e._value}set value(e){this._setter(e)}}const ze=[];function Ie(e,...t){if(\"production\"===process.env.NODE_ENV)return;E();const o=ze.length?ze[ze.length-1].component:null,n=o&&o.appContext.config.warnHandler,r=function(){let e=ze[ze.length-1];if(!e)return[];const t=[];for(;e;){const o=t[0];o&&o.vnode===e?o.recurseCount++:t.push({vnode:e,recurseCount:0});const n=e.component&&e.component.parent;e=n&&n.vnode}return t}();if(n)He(n,o,11,[e+t.join(\"\"),o&&o.proxy,r.map((({vnode:e})=>`at <${yt(o,e.type)}>`)).join(\"\\n\"),r]);else{const o=[`[Vue warn]: ${e}`,...t];r.length&&o.push(\"\\n\",...function(e){const t=[];return e.forEach(((e,o)=>{t.push(...0===o?[]:[\"\\n\"],...function({vnode:e,recurseCount:t}){const o=t>0?`... (${t} recursive calls)`:\"\",n=!!e.component&&null==e.component.parent,r=` at <${yt(e.component,e.type,n)}`,i=\">\"+o;return e.props?[r,...Re(e.props),i]:[r+i]}(e))})),t}(r)),console.warn(...o)}F()}function Re(e){const t=[],o=Object.keys(e);return o.slice(0,3).forEach((o=>{t.push(...Pe(o,e[o]))})),o.length>3&&t.push(\" ...\"),t}function Pe(e,t,o){return u(t)?(t=JSON.stringify(t),o?t:[`${e}=${t}`]):\"number\"==typeof t||\"boolean\"==typeof t||null==t?o?t:[`${e}=${t}`]:De(t)?(t=Pe(e,je(t.value),!0),o?t:[`${e}=Ref<`,t,\">\"]):c(t)?[`${e}=fn${t.name?`<${t.name}>`:\"\"}`]:(t=je(t),o?t:[`${e}=`,t])}const We={sp:\"serverPrefetch hook\",bc:\"beforeCreate hook\",c:\"created hook\",bm:\"beforeMount hook\",m:\"mounted hook\",bu:\"beforeUpdate hook\",u:\"updated\",bum:\"beforeUnmount hook\",um:\"unmounted hook\",a:\"activated hook\",da:\"deactivated hook\",ec:\"errorCaptured hook\",rtc:\"renderTracked hook\",rtg:\"renderTriggered hook\",0:\"setup function\",1:\"render function\",2:\"watcher getter\",3:\"watcher callback\",4:\"watcher cleanup function\",5:\"native event handler\",6:\"component event handler\",7:\"vnode hook\",8:\"directive hook\",9:\"transition hook\",10:\"app errorHandler\",11:\"app warnHandler\",12:\"ref function\",13:\"async component loader\",14:\"scheduler flush. This is likely a Vue internals bug. Please open an issue at https://new-issue.vuejs.org/?repo=vuejs/core\"};function He(e,t,o,n){let r;try{r=n?e(...n):e()}catch(e){!function(e,t,o,n=!0){const r=t?t.vnode:null;if(t){let n=t.parent;const r=t.proxy,i=\"production\"!==process.env.NODE_ENV?We[o]:o;for(;n;){const t=n.ec;if(t)for(let o=0;o<t.length;o++)if(!1===t[o](e,r,i))return;n=n.parent}const a=t.appContext.config.errorHandler;if(a)return void He(a,null,10,[e,r,i])}!function(e,t,o,n=!0){if(\"production\"!==process.env.NODE_ENV){const i=We[t];if(o&&(r=o,ze.push(r)),Ie(\"Unhandled error\"+(i?` during execution of ${i}`:\"\")),o&&ze.pop(),n)throw e;console.error(e)}else console.error(e);var r}(e,o,r,n)}(e,t,o)}return r}let Ge=!1,Ue=!1;const Ye=[];let Ke=0;const Be=[];let qe=null,Qe=0;const Ze=Promise.resolve();function Xe(e){Ye.length&&Ye.includes(e,Ge&&e.allowRecurse?Ke+1:Ke)||(null==e.id?Ye.push(e):Ye.splice(function(e){let t=Ke+1,o=Ye.length;for(;t<o;){const n=t+o>>>1,r=Ye[n],i=et(r);i<e||i===e&&r.pre?t=n+1:o=n}return t}(e.id),0,e),Je())}function Je(){Ge||Ue||(Ue=!0,Ze.then(ot))}const et=e=>null==e.id?1/0:e.id,tt=(e,t)=>{const o=et(e)-et(t);if(0===o){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return o};function ot(e){Ue=!1,Ge=!0,\"production\"!==process.env.NODE_ENV&&(e=e||new Map),Ye.sort(tt);const t=\"production\"!==process.env.NODE_ENV?t=>nt(e,t):n;try{for(Ke=0;Ke<Ye.length;Ke++){const e=Ye[Ke];if(e&&!1!==e.active){if(\"production\"!==process.env.NODE_ENV&&t(e))continue;He(e,null,14)}}}finally{Ke=0,Ye.length=0,function(e){if(Be.length){const t=[...new Set(Be)];if(Be.length=0,qe)return void qe.push(...t);for(qe=t,\"production\"!==process.env.NODE_ENV&&(e=e||new Map),qe.sort(((e,t)=>et(e)-et(t))),Qe=0;Qe<qe.length;Qe++)\"production\"!==process.env.NODE_ENV&&nt(e,qe[Qe])||qe[Qe]();qe=null,Qe=0}}(e),Ge=!1,(Ye.length||Be.length)&&ot(e)}}function nt(e,t){if(e.has(t)){const o=e.get(t);if(o>100){const e=t.ownerInstance,o=e&&ht(e.type);return Ie(`Maximum recursive updates exceeded${o?` in component <${o}>`:\"\"}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`),!0}e.set(t,o+1)}else e.set(t,1)}const rt=new Set;\"production\"!==process.env.NODE_ENV&&(x().__VUE_HMR_RUNTIME__={createRecord:st((function(e,t){if(it.has(e))return!1;return it.set(e,{initialDef:at(t),instances:new Set}),!0})),rerender:st((function(e,t){const o=it.get(e);if(!o)return;o.initialDef.render=t,[...o.instances].forEach((e=>{t&&(e.render=t,at(e.type).render=t),e.renderCache=[],e.update()}))})),reload:st((function(e,t){const o=it.get(e);if(!o)return;t=at(t),lt(o.initialDef,t);const n=[...o.instances];for(const e of n){const n=at(e.type);rt.has(n)||(n!==o.initialDef&&lt(n,t),rt.add(n)),e.appContext.propsCache.delete(e.type),e.appContext.emitsCache.delete(e.type),e.appContext.optionsCache.delete(e.type),e.ceReload?(rt.add(n),e.ceReload(t.styles),rt.delete(n)):e.parent?Xe(e.parent.update):e.appContext.reload?e.appContext.reload():\"undefined\"!=typeof window?window.location.reload():console.warn(\"[HMR] Root or manually mounted instance modified. Full reload required.\")}r=()=>{for(const e of n)rt.delete(at(e.type))},l(r)?Be.push(...r):qe&&qe.includes(r,r.allowRecurse?Qe+1:Qe)||Be.push(r),Je();var r}))});const it=new Map;function at(e){return c(t=e)&&\"__vccOpts\"in t?e.__vccOpts:e;var t}function lt(e,t){r(e,t);for(const o in e)\"__file\"===o||o in t||delete e[o]}function st(e){return(t,o)=>{try{return e(t,o)}catch(e){console.error(e),console.warn(\"[HMR] Something went wrong during Vue component hot-reload. Full reload required.\")}}}const ct={};let ut;\"production\"!==process.env.NODE_ENV&&(ct.ownKeys=e=>(Ie(\"Avoid app logic that relies on enumerating keys on a component instance. The keys will be empty in production mode to avoid performance overhead.\"),Reflect.ownKeys(e)));let dt=\"__VUE_INSTANCE_SETTERS__\";(ut=x()[dt])||(ut=x()[dt]=[]),ut.push((e=>e));const ft=/(?:^|[-_])(\\w)/g,pt=e=>e.replace(ft,(e=>e.toUpperCase())).replace(/[-_]/g,\"\");function ht(e,t=!0){return c(e)?e.displayName||e.name:e.name||t&&e.__name}function yt(e,t,o=!1){let n=ht(t);if(!n&&t.__file){const e=t.__file.match(/([^/\\\\]+)\\.\\w+$/);e&&(n=e[1])}if(!n&&e&&e.parent){const o=e=>{for(const o in e)if(e[o]===t)return o};n=o(e.components||e.parent.type.components)||o(e.appContext.components)}return n?pt(n):o?\"App\":\"Anonymous\"}const mt=(e,t)=>function(e,t,o=!1){let r,i;const a=c(e);return a?(r=e,i=\"production\"!==process.env.NODE_ENV?()=>{console.warn(\"Write operation failed: computed value is readonly\")}:n):(r=e.get,i=e.set),new Ve(r,i,a||!i,o)}(e,0,false);function gt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,\"default\")?e.default:e}var vt,bt={exports:{}};function xt(){return vt||(vt=1,bt.exports=function(){var e=1e3,t=6e4,o=36e5,n=\"millisecond\",r=\"second\",i=\"minute\",a=\"hour\",l=\"day\",s=\"week\",c=\"month\",u=\"quarter\",d=\"year\",f=\"date\",p=\"Invalid Date\",h=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,m={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(e){var t=[\"th\",\"st\",\"nd\",\"rd\"],o=e%100;return\"[\"+e+(t[(o-20)%10]||t[o]||t[0])+\"]\"}},g=function(e,t,o){var n=String(e);return!n||n.length>=t?e:\"\"+Array(t+1-n.length).join(o)+e},v={s:g,z:function(e){var t=-e.utcOffset(),o=Math.abs(t),n=Math.floor(o/60),r=o%60;return(t<=0?\"+\":\"-\")+g(n,2,\"0\")+\":\"+g(r,2,\"0\")},m:function e(t,o){if(t.date()<o.date())return-e(o,t);var n=12*(o.year()-t.year())+(o.month()-t.month()),r=t.clone().add(n,c),i=o-r<0,a=t.clone().add(n+(i?-1:1),c);return+(-(n+(o-r)/(i?r-a:a-r))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(e){return{M:c,y:d,w:s,d:l,D:f,h:a,m:i,s:r,ms:n,Q:u}[e]||String(e||\"\").toLowerCase().replace(/s$/,\"\")},u:function(e){return void 0===e}},b=\"en\",x={};x[b]=m;var w=\"$isDayjsObject\",S=function(e){return e instanceof O||!(!e||!e[w])},A=function e(t,o,n){var r;if(!t)return b;if(\"string\"==typeof t){var i=t.toLowerCase();x[i]&&(r=i),o&&(x[i]=o,r=i);var a=t.split(\"-\");if(!r&&a.length>1)return e(a[0])}else{var l=t.name;x[l]=t,r=l}return!n&&r&&(b=r),r||!n&&b},_=function(e,t){if(S(e))return e.clone();var o=\"object\"==typeof t?t:{};return o.date=e,o.args=arguments,new O(o)},L=v;L.l=A,L.i=S,L.w=function(e,t){return _(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var O=function(){function m(e){this.$L=A(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[w]=!0}var g=m.prototype;return g.parse=function(e){this.$d=function(e){var t=e.date,o=e.utc;if(null===t)return new Date(NaN);if(L.u(t))return new Date;if(t instanceof Date)return new Date(t);if(\"string\"==typeof t&&!/Z$/i.test(t)){var n=t.match(h);if(n){var r=n[2]-1||0,i=(n[7]||\"0\").substring(0,3);return o?new Date(Date.UTC(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,i)):new Date(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,i)}}return new Date(t)}(e),this.init()},g.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},g.$utils=function(){return L},g.isValid=function(){return!(this.$d.toString()===p)},g.isSame=function(e,t){var o=_(e);return this.startOf(t)<=o&&o<=this.endOf(t)},g.isAfter=function(e,t){return _(e)<this.startOf(t)},g.isBefore=function(e,t){return this.endOf(t)<_(e)},g.$g=function(e,t,o){return L.u(e)?this[t]:this.set(o,e)},g.unix=function(){return Math.floor(this.valueOf()/1e3)},g.valueOf=function(){return this.$d.getTime()},g.startOf=function(e,t){var o=this,n=!!L.u(t)||t,u=L.p(e),p=function(e,t){var r=L.w(o.$u?Date.UTC(o.$y,t,e):new Date(o.$y,t,e),o);return n?r:r.endOf(l)},h=function(e,t){return L.w(o.toDate()[e].apply(o.toDate(\"s\"),(n?[0,0,0,0]:[23,59,59,999]).slice(t)),o)},y=this.$W,m=this.$M,g=this.$D,v=\"set\"+(this.$u?\"UTC\":\"\");switch(u){case d:return n?p(1,0):p(31,11);case c:return n?p(1,m):p(0,m+1);case s:var b=this.$locale().weekStart||0,x=(y<b?y+7:y)-b;return p(n?g-x:g+(6-x),m);case l:case f:return h(v+\"Hours\",0);case a:return h(v+\"Minutes\",1);case i:return h(v+\"Seconds\",2);case r:return h(v+\"Milliseconds\",3);default:return this.clone()}},g.endOf=function(e){return this.startOf(e,!1)},g.$set=function(e,t){var o,s=L.p(e),u=\"set\"+(this.$u?\"UTC\":\"\"),p=(o={},o[l]=u+\"Date\",o[f]=u+\"Date\",o[c]=u+\"Month\",o[d]=u+\"FullYear\",o[a]=u+\"Hours\",o[i]=u+\"Minutes\",o[r]=u+\"Seconds\",o[n]=u+\"Milliseconds\",o)[s],h=s===l?this.$D+(t-this.$W):t;if(s===c||s===d){var y=this.clone().set(f,1);y.$d[p](h),y.init(),this.$d=y.set(f,Math.min(this.$D,y.daysInMonth())).$d}else p&&this.$d[p](h);return this.init(),this},g.set=function(e,t){return this.clone().$set(e,t)},g.get=function(e){return this[L.p(e)]()},g.add=function(n,u){var f,p=this;n=Number(n);var h=L.p(u),y=function(e){var t=_(p);return L.w(t.date(t.date()+Math.round(e*n)),p)};if(h===c)return this.set(c,this.$M+n);if(h===d)return this.set(d,this.$y+n);if(h===l)return y(1);if(h===s)return y(7);var m=(f={},f[i]=t,f[a]=o,f[r]=e,f)[h]||1,g=this.$d.getTime()+n*m;return L.w(g,this)},g.subtract=function(e,t){return this.add(-1*e,t)},g.format=function(e){var t=this,o=this.$locale();if(!this.isValid())return o.invalidDate||p;var n=e||\"YYYY-MM-DDTHH:mm:ssZ\",r=L.z(this),i=this.$H,a=this.$m,l=this.$M,s=o.weekdays,c=o.months,u=o.meridiem,d=function(e,o,r,i){return e&&(e[o]||e(t,n))||r[o].slice(0,i)},f=function(e){return L.s(i%12||12,e,\"0\")},h=u||function(e,t,o){var n=e<12?\"AM\":\"PM\";return o?n.toLowerCase():n};return n.replace(y,(function(e,n){return n||function(e){switch(e){case\"YY\":return String(t.$y).slice(-2);case\"YYYY\":return L.s(t.$y,4,\"0\");case\"M\":return l+1;case\"MM\":return L.s(l+1,2,\"0\");case\"MMM\":return d(o.monthsShort,l,c,3);case\"MMMM\":return d(c,l);case\"D\":return t.$D;case\"DD\":return L.s(t.$D,2,\"0\");case\"d\":return String(t.$W);case\"dd\":return d(o.weekdaysMin,t.$W,s,2);case\"ddd\":return d(o.weekdaysShort,t.$W,s,3);case\"dddd\":return s[t.$W];case\"H\":return String(i);case\"HH\":return L.s(i,2,\"0\");case\"h\":return f(1);case\"hh\":return f(2);case\"a\":return h(i,a,!0);case\"A\":return h(i,a,!1);case\"m\":return String(a);case\"mm\":return L.s(a,2,\"0\");case\"s\":return String(t.$s);case\"ss\":return L.s(t.$s,2,\"0\");case\"SSS\":return L.s(t.$ms,3,\"0\");case\"Z\":return r}return null}(e)||r.replace(\":\",\"\")}))},g.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},g.diff=function(n,f,p){var h,y=this,m=L.p(f),g=_(n),v=(g.utcOffset()-this.utcOffset())*t,b=this-g,x=function(){return L.m(y,g)};switch(m){case d:h=x()/12;break;case c:h=x();break;case u:h=x()/3;break;case s:h=(b-v)/6048e5;break;case l:h=(b-v)/864e5;break;case a:h=b/o;break;case i:h=b/t;break;case r:h=b/e;break;default:h=b}return p?h:L.a(h)},g.daysInMonth=function(){return this.endOf(c).$D},g.$locale=function(){return x[this.$L]},g.locale=function(e,t){if(!e)return this.$L;var o=this.clone(),n=A(e,t,!0);return n&&(o.$L=n),o},g.clone=function(){return L.w(this.$d,this)},g.toDate=function(){return new Date(this.valueOf())},g.toJSON=function(){return this.isValid()?this.toISOString():null},g.toISOString=function(){return this.$d.toISOString()},g.toString=function(){return this.$d.toUTCString()},m}(),C=O.prototype;return _.prototype=C,[[\"$ms\",n],[\"$s\",r],[\"$m\",i],[\"$H\",a],[\"$W\",l],[\"$M\",c],[\"$y\",d],[\"$D\",f]].forEach((function(e){C[e[1]]=function(t){return this.$g(t,e[0],e[1])}})),_.extend=function(e,t){return e.$i||(e(t,O,_),e.$i=!0),_},_.locale=A,_.isDayjs=S,_.unix=function(e){return _(1e3*e)},_.en=x[b],_.Ls=x,_.p={},_}()),bt.exports}var wt=gt(xt()),St=\"object\"==typeof global&&global&&global.Object===Object&&global,At=\"object\"==typeof self&&self&&self.Object===Object&&self,_t=St||At||Function(\"return this\")(),Lt=_t.Symbol,Ot=Object.prototype,Ct=Ot.hasOwnProperty,jt=Ot.toString,Nt=Lt?Lt.toStringTag:void 0;var Tt=Object.prototype.toString;var Mt=Lt?Lt.toStringTag:void 0;function kt(e){return null==e?void 0===e?\"[object Undefined]\":\"[object Null]\":Mt&&Mt in Object(e)?function(e){var t=Ct.call(e,Nt),o=e[Nt];try{e[Nt]=void 0;var n=!0}catch(e){}var r=jt.call(e);return n&&(t?e[Nt]=o:delete e[Nt]),r}(e):function(e){return Tt.call(e)}(e)}function Dt(e){return null!=e&&\"object\"==typeof e}var $t=Array.isArray;function Et(e){var t=typeof e;return null!=e&&(\"object\"==t||\"function\"==t)}function Ft(e){if(!Et(e))return!1;var t=kt(e);return\"[object Function]\"==t||\"[object GeneratorFunction]\"==t||\"[object AsyncFunction]\"==t||\"[object Proxy]\"==t}var Vt,zt=_t[\"__core-js_shared__\"],It=(Vt=/[^.]+$/.exec(zt&&zt.keys&&zt.keys.IE_PROTO||\"\"))?\"Symbol(src)_1.\"+Vt:\"\";var Rt=Function.prototype.toString;function Pt(e){if(null!=e){try{return Rt.call(e)}catch(e){}try{return e+\"\"}catch(e){}}return\"\"}var Wt=/^\\[object .+?Constructor\\]$/,Ht=Function.prototype,Gt=Object.prototype,Ut=Ht.toString,Yt=Gt.hasOwnProperty,Kt=RegExp(\"^\"+Ut.call(Yt).replace(/[\\\\^$.*+?()[\\]{}|]/g,\"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g,\"$1.*?\")+\"$\");function Bt(e){return!(!Et(e)||(t=e,It&&It in t))&&(Ft(e)?Kt:Wt).test(Pt(e));var t}function qt(e,t){var o=function(e,t){return null==e?void 0:e[t]}(e,t);return Bt(o)?o:void 0}var Qt=qt(_t,\"WeakMap\"),Zt=Object.create,Xt=function(){function e(){}return function(t){if(!Et(t))return{};if(Zt)return Zt(t);e.prototype=t;var o=new e;return e.prototype=void 0,o}}(),Jt=function(){try{var e=qt(Object,\"defineProperty\");return e({},\"\",{}),e}catch(e){}}();var eo=/^(?:0|[1-9]\\d*)$/;function to(e,t){var o=typeof e;return!!(t=null==t?9007199254740991:t)&&(\"number\"==o||\"symbol\"!=o&&eo.test(e))&&e>-1&&e%1==0&&e<t}function oo(e,t){return e===t||e!=e&&t!=t}var no=Object.prototype.hasOwnProperty;function ro(e,t,o){var n=e[t];no.call(e,t)&&oo(n,o)&&(void 0!==o||t in e)||function(e,t,o){\"__proto__\"==t&&Jt?Jt(e,t,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[t]=o}(e,t,o)}function io(e){return\"number\"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}var ao=Object.prototype;function lo(e){var t=e&&e.constructor;return e===(\"function\"==typeof t&&t.prototype||ao)}function so(e){return Dt(e)&&\"[object Arguments]\"==kt(e)}var co=Object.prototype,uo=co.hasOwnProperty,fo=co.propertyIsEnumerable,po=so(function(){return arguments}())?so:function(e){return Dt(e)&&uo.call(e,\"callee\")&&!fo.call(e,\"callee\")};var ho=\"object\"==typeof exports&&exports&&!exports.nodeType&&exports,yo=ho&&\"object\"==typeof module&&module&&!module.nodeType&&module,mo=yo&&yo.exports===ho?_t.Buffer:void 0,go=(mo?mo.isBuffer:void 0)||function(){return!1},vo={};function bo(e){return function(t){return e(t)}}vo[\"[object Float32Array]\"]=vo[\"[object Float64Array]\"]=vo[\"[object Int8Array]\"]=vo[\"[object Int16Array]\"]=vo[\"[object Int32Array]\"]=vo[\"[object Uint8Array]\"]=vo[\"[object Uint8ClampedArray]\"]=vo[\"[object Uint16Array]\"]=vo[\"[object Uint32Array]\"]=!0,vo[\"[object Arguments]\"]=vo[\"[object Array]\"]=vo[\"[object ArrayBuffer]\"]=vo[\"[object Boolean]\"]=vo[\"[object DataView]\"]=vo[\"[object Date]\"]=vo[\"[object Error]\"]=vo[\"[object Function]\"]=vo[\"[object Map]\"]=vo[\"[object Number]\"]=vo[\"[object Object]\"]=vo[\"[object RegExp]\"]=vo[\"[object Set]\"]=vo[\"[object String]\"]=vo[\"[object WeakMap]\"]=!1;var xo=\"object\"==typeof exports&&exports&&!exports.nodeType&&exports,wo=xo&&\"object\"==typeof module&&module&&!module.nodeType&&module,So=wo&&wo.exports===xo&&St.process,Ao=function(){try{var e=wo&&wo.require&&wo.require(\"util\").types;return e||So&&So.binding&&So.binding(\"util\")}catch(e){}}(),_o=Ao&&Ao.isTypedArray,Lo=_o?bo(_o):function(e){return Dt(e)&&io(e.length)&&!!vo[kt(e)]},Oo=Object.prototype.hasOwnProperty;function Co(e,t){var o=$t(e),n=!o&&po(e),r=!o&&!n&&go(e),i=!o&&!n&&!r&&Lo(e),a=o||n||r||i,l=a?function(e,t){for(var o=-1,n=Array(e);++o<e;)n[o]=t(o);return n}(e.length,String):[],s=l.length;for(var c in e)!Oo.call(e,c)||a&&(\"length\"==c||r&&(\"offset\"==c||\"parent\"==c)||i&&(\"buffer\"==c||\"byteLength\"==c||\"byteOffset\"==c)||to(c,s))||l.push(c);return l}function jo(e,t){return function(o){return e(t(o))}}var No=jo(Object.keys,Object),To=Object.prototype.hasOwnProperty;function Mo(e){return null!=(t=e)&&io(t.length)&&!Ft(t)?Co(e):function(e){if(!lo(e))return No(e);var t=[];for(var o in Object(e))To.call(e,o)&&\"constructor\"!=o&&t.push(o);return t}(e);var t}var ko=qt(Object,\"create\");var Do=Object.prototype.hasOwnProperty;var $o=Object.prototype.hasOwnProperty;function Eo(e){var t=-1,o=null==e?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}function Fo(e,t){for(var o=e.length;o--;)if(oo(e[o][0],t))return o;return-1}Eo.prototype.clear=function(){this.__data__=ko?ko(null):{},this.size=0},Eo.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Eo.prototype.get=function(e){var t=this.__data__;if(ko){var o=t[e];return\"__lodash_hash_undefined__\"===o?void 0:o}return Do.call(t,e)?t[e]:void 0},Eo.prototype.has=function(e){var t=this.__data__;return ko?void 0!==t[e]:$o.call(t,e)},Eo.prototype.set=function(e,t){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=ko&&void 0===t?\"__lodash_hash_undefined__\":t,this};var Vo=Array.prototype.splice;function zo(e){var t=-1,o=null==e?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}zo.prototype.clear=function(){this.__data__=[],this.size=0},zo.prototype.delete=function(e){var t=this.__data__,o=Fo(t,e);return!(o<0)&&(o==t.length-1?t.pop():Vo.call(t,o,1),--this.size,!0)},zo.prototype.get=function(e){var t=this.__data__,o=Fo(t,e);return o<0?void 0:t[o][1]},zo.prototype.has=function(e){return Fo(this.__data__,e)>-1},zo.prototype.set=function(e,t){var o=this.__data__,n=Fo(o,e);return n<0?(++this.size,o.push([e,t])):o[n][1]=t,this};var Io=qt(_t,\"Map\");function Ro(e,t){var o,n,r=e.__data__;return(\"string\"==(n=typeof(o=t))||\"number\"==n||\"symbol\"==n||\"boolean\"==n?\"__proto__\"!==o:null===o)?r[\"string\"==typeof t?\"string\":\"hash\"]:r.map}function Po(e){var t=-1,o=null==e?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}Po.prototype.clear=function(){this.size=0,this.__data__={hash:new Eo,map:new(Io||zo),string:new Eo}},Po.prototype.delete=function(e){var t=Ro(this,e).delete(e);return this.size-=t?1:0,t},Po.prototype.get=function(e){return Ro(this,e).get(e)},Po.prototype.has=function(e){return Ro(this,e).has(e)},Po.prototype.set=function(e,t){var o=Ro(this,e),n=o.size;return o.set(e,t),this.size+=o.size==n?0:1,this};var Wo=jo(Object.getPrototypeOf,Object);function Ho(e){var t=this.__data__=new zo(e);this.size=t.size}Ho.prototype.clear=function(){this.__data__=new zo,this.size=0},Ho.prototype.delete=function(e){var t=this.__data__,o=t.delete(e);return this.size=t.size,o},Ho.prototype.get=function(e){return this.__data__.get(e)},Ho.prototype.has=function(e){return this.__data__.has(e)},Ho.prototype.set=function(e,t){var o=this.__data__;if(o instanceof zo){var n=o.__data__;if(!Io||n.length<199)return n.push([e,t]),this.size=++o.size,this;o=this.__data__=new Po(n)}return o.set(e,t),this.size=o.size,this};var Go=Object.prototype.propertyIsEnumerable,Uo=Object.getOwnPropertySymbols,Yo=Uo?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var o=-1,n=null==e?0:e.length,r=0,i=[];++o<n;){var a=e[o];t(a,o,e)&&(i[r++]=a)}return i}(Uo(e),(function(t){return Go.call(e,t)})))}:function(){return[]};function Ko(e){return function(e,t,o){var n=t(e);return $t(e)?n:function(e,t){for(var o=-1,n=t.length,r=e.length;++o<n;)e[r+o]=t[o];return e}(n,o(e))}(e,Mo,Yo)}var Bo=qt(_t,\"DataView\"),qo=qt(_t,\"Promise\"),Qo=qt(_t,\"Set\"),Zo=\"[object Map]\",Xo=\"[object Promise]\",Jo=\"[object Set]\",en=\"[object WeakMap]\",tn=\"[object DataView]\",on=Pt(Bo),nn=Pt(Io),rn=Pt(qo),an=Pt(Qo),ln=Pt(Qt),sn=kt;(Bo&&sn(new Bo(new ArrayBuffer(1)))!=tn||Io&&sn(new Io)!=Zo||qo&&sn(qo.resolve())!=Xo||Qo&&sn(new Qo)!=Jo||Qt&&sn(new Qt)!=en)&&(sn=function(e){var t=kt(e),o=\"[object Object]\"==t?e.constructor:void 0,n=o?Pt(o):\"\";if(n)switch(n){case on:return tn;case nn:return Zo;case rn:return Xo;case an:return Jo;case ln:return en}return t});var cn=Object.prototype.hasOwnProperty;var un=_t.Uint8Array;function dn(e){var t=new e.constructor(e.byteLength);return new un(t).set(new un(e)),t}var fn=/\\w*$/;var pn=Lt?Lt.prototype:void 0,hn=pn?pn.valueOf:void 0;function yn(e,t,o){var n,r,i,a,l,s=e.constructor;switch(t){case\"[object ArrayBuffer]\":return dn(e);case\"[object Boolean]\":case\"[object Date]\":return new s(+e);case\"[object DataView]\":return l=dn((a=e).buffer),new a.constructor(l,a.byteOffset,a.byteLength);case\"[object Float32Array]\":case\"[object Float64Array]\":case\"[object Int8Array]\":case\"[object Int16Array]\":case\"[object Int32Array]\":case\"[object Uint8Array]\":case\"[object Uint8ClampedArray]\":case\"[object Uint16Array]\":case\"[object Uint32Array]\":return function(e){var t=dn(e.buffer);return new e.constructor(t,e.byteOffset,e.length)}(e);case\"[object Map]\":case\"[object Set]\":return new s;case\"[object Number]\":case\"[object String]\":return new s(e);case\"[object RegExp]\":return(i=new(r=e).constructor(r.source,fn.exec(r))).lastIndex=r.lastIndex,i;case\"[object Symbol]\":return n=e,hn?Object(hn.call(n)):{}}}var mn=Ao&&Ao.isMap,gn=mn?bo(mn):function(e){return Dt(e)&&\"[object Map]\"==sn(e)};var vn=Ao&&Ao.isSet,bn=vn?bo(vn):function(e){return Dt(e)&&\"[object Set]\"==sn(e)},xn=\"[object Arguments]\",wn=\"[object Function]\",Sn=\"[object Object]\",An={};function _n(e,t,o,n,r,i){var a;if(void 0!==a)return a;if(!Et(e))return e;var l=$t(e);if(l)a=function(e){var t=e.length,o=new e.constructor(t);return t&&\"string\"==typeof e[0]&&cn.call(e,\"index\")&&(o.index=e.index,o.input=e.input),o}(e);else{var s=sn(e),c=s==wn||\"[object GeneratorFunction]\"==s;if(go(e))return e.slice();if(s==Sn||s==xn||c&&!r)a=c?{}:function(e){return\"function\"!=typeof e.constructor||lo(e)?{}:Xt(Wo(e))}(e);else{if(!An[s])return r?e:{};a=yn(e,s)}}i||(i=new Ho);var u=i.get(e);if(u)return u;i.set(e,a),bn(e)?e.forEach((function(n){a.add(_n(n,t,o,n,e,i))})):gn(e)&&e.forEach((function(n,r){a.set(r,_n(n,t,o,r,e,i))}));var d=l?void 0:Ko(e);return function(e,t){for(var o=-1,n=null==e?0:e.length;++o<n&&!1!==t(e[o],o,e););}(d||e,(function(n,r){d&&(n=e[r=n]),ro(a,r,_n(n,t,o,r,e,i))})),a}An[xn]=An[\"[object Array]\"]=An[\"[object ArrayBuffer]\"]=An[\"[object DataView]\"]=An[\"[object Boolean]\"]=An[\"[object Date]\"]=An[\"[object Float32Array]\"]=An[\"[object Float64Array]\"]=An[\"[object Int8Array]\"]=An[\"[object Int16Array]\"]=An[\"[object Int32Array]\"]=An[\"[object Map]\"]=An[\"[object Number]\"]=An[Sn]=An[\"[object RegExp]\"]=An[\"[object Set]\"]=An[\"[object String]\"]=An[\"[object Symbol]\"]=An[\"[object Uint8Array]\"]=An[\"[object Uint8ClampedArray]\"]=An[\"[object Uint16Array]\"]=An[\"[object Uint32Array]\"]=!0,An[\"[object Error]\"]=An[wn]=An[\"[object WeakMap]\"]=!1;function Ln(e){return _n(e,5)}let On=(e,t)=>()=>{let o=\"\",n=t;for(;n--;)o+=e[Math.random()*e.length|0];return o};const Cn=(e,t)=>{let o=e;const n=/[.*+?^${}()()\\-|[\\]\\\\]/,r=Object.assign({dayjs:wt},t);let i=\"\";const a=[];for(const e in r){let t=e;n.test(e)&&(t=On(\"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\",6)(),o=o.split(e).join(t)),i+=`${t},`,a.push(r[e])}i=i.replace(/,$/,\"\");const l=`function (${i}){return ${o}}`;let s;try{s=Function(`\"use strict\";return (${l})`)()(...a)}catch(t){return e}return s},jn=(e=\"\",{textData:t,codeData:o}={},{useNewline:n=!1,useSpace:r=!1}={})=>{const i=En,a=$n,l=window.config||{},s=Object.assign(Object.assign({},l),t),c=String(e||\"\").match(/\\{(.+?)\\}/g);if(null==c||0===c.length)return e;for(let t=0;t<c.length;t++){const n=c[t];let r=n.slice(1,-1).trim();const i=/[\\u4e00-\\u9fa5a-z-_A-Z0-9]*/g,a=r.match(i);for(let e=0;e<a.length;e++){const t=a[e],o=s[t];null!=o&&\"function\"!=typeof o&&(r=r.replace(t,o))}(/\\(.*\\)/g.test(r)||/[+/\\\\*]/g.test(r))&&(r=Cn(r,o)),e=e.replace(n,r)}return n&&(e=null==e?void 0:e.replace(/\\n|\\\\n/g,\"<br/>\")),r&&(e=null==e?void 0:e.replace(/\\s{2,}?/g,\"&nbsp;&nbsp;\")),e=(e=e.replace(/Qfw\\((.*?)\\)/g,((e,t)=>i(t)))).replace(/QwfFixed\\((.*?)\\)/g,((e,t)=>a(t)))},Nn=(e,t)=>{if(\"string\"==typeof e&&\"string\"==typeof t)return e.toLocaleLowerCase().includes(t.toLocaleLowerCase());if(\"string\"==typeof e&&Array.isArray(t)){const o=t.length;for(let n=0;n<o;n++){const o=t[n];if(\"string\"==typeof o&&e.toLocaleLowerCase().includes(o.toLocaleLowerCase()))return!0}}return!1},Tn=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),Mn=e=>{const t=[];for(const o of e)o.conditions?t.push(...Mn(o.conditions)):\"component\"===(null==o?void 0:o.dataType)&&t.push(o);return t};const kn=(e=\"\",t)=>{var o;const n=e.match(/\\{(.+?)\\}/g),r=(null===(o=e.split(\"\\n\"))||void 0===o?void 0:o.length)-1;let i=\"\";if(r)for(let e=0;e<r;e++)i+=\"\\n\";let a=e;if(null==n?void 0:n.length){for(const e of n){const o=jn(e,{textData:t},{useNewline:!1,useSpace:!1});o&&(a=a.replace(e,o))}return`${i}{text|${a}}`}return e};function Dn(e){return t(this,arguments,void 0,(function*({graphicConfig:e,request:t,INDICATOR_URL:o=\"\",PAGE_ID:n,dataSourceId:r}){var i;try{const{leftAxisList:a=[],rightAxisList:l=[],queryColumnList:s=[],indicators:c=[]}=Fe(e),u=[...a,...l,...s,...c],d={};for(const e of u){const{indexCode:t=\"\",parentId:o=\"\"}=e;!o||Tn(e,\"calcType\")||d[o]||(d[o]=t)}if(null===(i=Object.keys(d))||void 0===i?void 0:i.length){const e=[];for(const i in d)e.push(new Promise(((e,a)=>{t.post(`${o}/diagram/hrpIndexWithComplex`,{pageId:n,indexGuid:i,indexCode:d[i],dataSourceId:r}).then((t=>{var o;const{success:n,data:r=[]}=t.data;n&&(null===(o=null==r?void 0:r.dataViewColumns)||void 0===o?void 0:o.length)?e(r.dataViewColumns):a(r)})).catch((e=>{console.error(e),a(e)}))})));const i=yield Promise.all(e);return i.reduce(((e,t)=>e.filter((e=>t.find((t=>t.typeGuid===e.typeGuid)))))).filter((e=>e.typeGuid))}}catch(e){console.error(e)}return[]}))}function $n(e){return Number(e).toLocaleString(\"zh-CN\",{minimumFractionDigits:2,maximumFractionDigits:2})}function En(e){return Number(e).toLocaleString()}const Fn=[\"table\",\"bar\",\"combograph\",\"line\",\"pie\",\"radar\",\"scatter\",\"list\",\"circulate\"];let Vn=new Map,zn=[];const In=[\"keyValue\",\"conditionKey\",\"conditionLabel\",\"conditionName\",\"conditionValueType\",\"customValue\",\"id\",\"keyName\"],Rn=e=>Vn.get(e),Pn=(e,t)=>{if(t)Tn(e,\"indexCode\")&&(e.hrpIndexCode=e.indexCode,delete e.indexCode),Tn(e,\"indexCodeNum\")&&(e.hrpIndexCodeNum=e.indexCodeNum,delete e.indexCodeNum),Tn(e,\"dataType\")&&delete e.dataType,e.fieldValue||delete e.fieldValue;else{const{calcWays:t=[],dateCalcTypes:o=[],activeKey:n,componentId:r=\"\"}=e;if(5===n&&(null==t?void 0:t.length)&&(null==o?void 0:o.length)&&r){const n=t[0].split(\"-\");(null==n?void 0:n.length)>1&&\"rangeValue\"===n[0]&&(e.calcWays=((e,t={})=>{const{around:o,unit:n,id:r}=e;let i=\"\";const{pageMode:a=\"\",componentList:l=[]}=(null==t?void 0:t.graphicConfig)||{};let s=null,c=null;if(\"design\"===a){const e=null==l?void 0:l.find((e=>e.id===r));if(!e)return[];const{interval:t,intervalUnit:o,startTime:n,endTime:i,operate:a,useCurrentTime:u}=e||{};if(u&&(s=wt().subtract(t,o),c=wt()),n&&(s=wt(n)),i&&(c=wt(i)),a){const{type:e,value:t,mode:o}=a;switch(e){case\"add\":s=s?s.add(t,o):s,c=c?c.add(t,o):c;break;case\"minus\":s=s?s.subtract(t,o):s,c=c?c.subtract(t,o):c}}}else{const e=Rn(r)||{};Fe(e.startTime)&&(s=wt(Fe(e.startTime))),Fe(e.endTime)&&(c=wt(Fe(e.endTime)))}s&&c&&(i=`${\"before\"===o?\"-\":\"\"}${c.diff(s,n.toLowerCase())+1}`);return i?[i]:[]})({around:n[1],unit:o[0],id:r})),delete e.radioValue}if(Tn(e,\"dataType\")){if(\"DATE\"===e.fieldType&&(e.label=e.fieldName),\"component\"===e.dataType)if(\"PARENT\"===e.fieldValue){let t=e.modelKey;t&&e.prop&&(t+=`-${e.prop}`),e.fieldValue=\"${\"+t+\"}\"}else e.fieldValue=\"${\"+Gn(e.componentId,e.fieldValue)+\"}\";delete e.dataType}Tn(e,\"activeKey\")&&delete e.activeKey,Tn(e,\"radioValue\")&&delete e.radioValue,Tn(e,\"indexCode\")&&(e.hrpIndexCode=e.indexCode,delete e.indexCode),Tn(e,\"indexCodeNum\")&&(e.hrpIndexCodeNum=e.indexCodeNum,delete e.indexCodeNum),\"component\"!==e.dataType&&e.useCurrentTime&&(e.fieldValue=wt().format(e.dateFormat)),Tn(e,\"modelKey\")&&delete e.modelKey,Tn(e,\"prop\")&&delete e.prop,delete e.useCurrentTime}},Wn=(e,t)=>{const o=[];return(null==e?void 0:e.length)&&Ln(e).forEach((e=>{if(e.join&&e.conditions){const n=!e.conditions.some((e=>e.join&&e.conditions));e.conditions.forEach(((r,i)=>{Pn(r,t);const a={};if(i<e.conditions.length-1&&(a.join=e.join),n)o.push(Object.assign(Object.assign({},a),r));else if(r.join&&r.conditions){const e=t?\"sqlConditions\":\"conditions\";o.push(Object.assign({[e]:Wn([r],t)},a))}else o.push(Object.assign(Object.assign({},a),r))}))}else Pn(e,t),o.push(e)})),o},Hn=(e={},t)=>{if((null==e?void 0:e.sortCpnts)&&t){const o=Qn(e);o&&(t.sort=o)}const{label:o,name:n,location:r,show:i,indexCode:a,indexCodeNum:l,calcType:s=\"COLUMN\",builtInFormula:c,builtInValueSource:u,builtInCalcWay:d,formula:f,conditions:p,aggregate:h,distinct:y,dimByCount:m,dataTo:g,sort:v}=e;let b;if(p&&(b=Wn(p)),\"COMPONENT\"===s){const e={};return Bn(e,u),{label:o.trim(),columnName:n,show:i,calcType:s,componentAlias:d,componentValue:e.fieldValue||null}}const x={label:o.trim(),columnName:n,location:r,show:i,calcType:\"1\"===g?\"VIEW\":s,hrpIndexCode:a,hrpIndexCodeNum:l,aggregate:h,builtInFormula:c,builtInValueSource:u,formula:f,conditions:b};if(v&&(x.sort={columnName:n,label:x.label,order:v,type:\"NORMAL\"}),\"DATE_OFFSET\"!==c)return\"the_count\"===n&&(x.calcType=\"AGGREGATE\",x.distinct=!!y,x.typeGuid=m),Object.assign(Object.assign({},x),{builtInCalcWay:d});{const e=d.split(\"-\");if(3===(null==e?void 0:e.length)){let t=e[0];return\"before\"===e[2]&&\"0\"!==e[0]&&(t=`-${e[0]}`),Object.assign(Object.assign({},x),{calcWays:[t],dateCalcTypes:[e[1]]})}}},Gn=(e,t)=>{const o=zn.find((t=>t.id===e)),{keyName:n}=o||{};if(n){const e=/-(startTime|endTime)/g,o=t.match(e);return(null==o?void 0:o.length)?`${n}${o[0]}`:n}return t||\"\"},Un=e=>{if(!e)return[];const t=Ln((null==e?void 0:e.controlList)||[]).filter((e=>\"parentCode\"!==e.conditionKey)),{classificationList:o=[],rowHeaderList:n=[],dimensionList:r=[],seriesList:i=[],leftAxisList:a=[],rightAxisList:l=[],queryColumnList:s=[],indexLibColumns:c=[],indicators:u=[],specialIndicators:d=[]}=e;Kn(t);const f=[...o,...n,...r,...i,...a,...l,...s,...c,...u,...d],p=[];for(const e of f){const t=Mn((null==e?void 0:e.conditions)||[]);if(null==t?void 0:t.length){const e=t.filter((e=>\"component\"===(null==e?void 0:e.dataType))).map((e=>{const t={};return(null==e?void 0:e.dateFormat)&&(t.format=e.dateFormat),\"PARENT\"===e.fieldValue&&(t.id=\"PARENT\",t.keyName=e.modelKey,t.modelKey=e.modelKey,t.prop=e.prop),Object.assign({conditionKey:e.fieldName,conditionLabel:e.fieldName,conditionName:e.fieldName,conditionValueType:e.fieldType,id:e.componentId,keyName:e.fieldValue,rule:e.rule,notGlobal:!0,indexCode:e.indexCode,typeGuid:e.typeGuid,indexCodeNum:e.indexCodeNum},t)}));if(null==e?void 0:e.length)for(const t of e)p.find((e=>e.keyName===t.keyName))||p.push(t)}}const h=p.length,y=t;for(let e=0;e<h;e++){const t=p[e];if(\"parentCode\"===(null==t?void 0:t.conditionKey))continue;const{id:o,keyName:n,prop:r,format:i,modelKey:a,dataType:l=\"component\",customValue:s}=t,c=Gn(o,n),u=Yn(t);Bn(u,o,{prop:r,dateFormat:i,modelKey:a,keyName:c}),\"\"===l&&(u.fieldValue=s||\"\"),y.push(u)}for(let e=y.length-1;e>=0;e--){const t=y[e];if(!t.globalCondition){Mn(y).find((e=>e.alias===t.alias&&e.globalCondition))&&y.splice(e,1)}}return y};function Yn(e){const{id:t,keyName:o,conditionLabel:n,conditionKey:r,conditionValueType:i,prop:a,rule:l=\"NONE\",notGlobal:s=!1,indexCode:c,typeGuid:u,indexCodeNum:d,dataType:f=\"component\",isExtProperty:p}=e,h=Gn(t,o);let y=h||t;y&&a&&(y+=`-${a}`);let m=l;return\"NONE\"===m&&(m=[\"startTime\",\"endTime\"].includes(a)?\"startTime\"===a?\"GREATER_EQUAL\":\"LESS_EQUAL\":(null==h?void 0:h.includes(\"startTime\"))?\"GREATER_EQUAL\"===a:(null==h?void 0:h.includes(\"endTime\"))?\"LESS_EQUAL\"===a:\"EQUAL\"),\"PARENT\"===t&&(y=e.modelKey,y&&a&&(y+=`-${a}`),m=l),{rule:m,label:n,fieldName:r,fieldValue:\"\",valueType:i,alias:y,globalCondition:!s,indexCode:c,typeGuid:u,indexCodeNum:d,dataType:f,isExtProperty:p}}function Kn(e){if(null==e?void 0:e.length)for(const t of e)if(null==t?void 0:t.conditions)Kn(t.conditions);else{const{id:e,keyName:o,prop:n,modelKey:r,format:i,dataType:a=\"component\",customValue:l}=t,s=Gn(e,o),c=Yn(t);Bn(c,e,{prop:n,dateFormat:i,modelKey:r,keyName:s}),\"\"===a&&(c.fieldValue=l||\"\");for(const e in c)t[e]=c[e];for(const e of In)delete t[e]}}function Bn(e,t,o){const{prop:n=\"\",dateFormat:r=\"\",modelKey:i=\"\",keyName:a=\"\",operateValue:l,operateMode:s,operateType:c}=o||{},u=i||a;if(\"PARENT\"===t&&u&&n){const t=window.config.record;let o=n,i=r;const a=n.match(/\\{(.+?)\\}/g);if(null==a?void 0:a.length){const t=a[0].slice(1,-1).trim();o=n.replace(a[0],\"\"),i=t,e.dateFormat=i}if(t&&t[u]){const n=Fe(t[u][o]);wt.isDayjs(n)?e.fieldValue=n.format(i||\"YYYY-MM-DD\"):e.fieldValue=n}return}const d=Rn(t)||{},{value:f,format:p=\"YYYY-MM-DD\",type:h=\"\",useCurrentTime:y,RECORD:m}=d||{},g=r||p;if(Nn(h,\"date\")){let t;if(t=y?f?Fe(f):wt():Fe(f),\"string\"==typeof t&&(t=wt(t)),l&&s&&c)switch(c){case\"add\":t=t.add(l,s);break;case\"minus\":t=t.subtract(l,s)}e.fieldValue=null==t?void 0:t.format(g),e.dateFormat=g}else if(Nn(h,\"rangepicker\")){let t=n;if(!n){const e=a&&a.split(\"-\");(null==e?void 0:e.length)&&(t=e[e.length-1])}if(!t)return;let o=null;if(Fe(d[t])&&(o=wt(Fe(d[t]))),l&&s&&c)if(\"rangeValue\"===l){if(d.startTime&&d.endTime){const e=Fe(d.endTime).diff(Fe(d.startTime),s)+1;switch(c){case\"add\":o=o?o.add(e,s):o;break;case\"minus\":o=o?o.subtract(e,s):o}}}else if(!isNaN(+l))switch(c){case\"add\":o=o?o.add(l,s):o;break;case\"minus\":o=o?o.subtract(l,s):o}if(o&&(e.fieldValue=null==o?void 0:o.format(g)),\"rangeValue\"===t&&d.startTime&&d.endTime){const t=function(e){const t=e.split(\"-\");let o=\"\";if(null==t?void 0:t.length)switch(t[t.length-1]){case\"YYYY\":o=\"year\";break;case\"MM\":o=\"month\";break;case\"DD\":o=\"day\"}return o}(g);t&&(e.fieldValue=Fe(d.endTime).diff(Fe(d.startTime),t)+1)}e.dateFormat=g}else Nn(h,Fn)?e.fieldValue=i&&m?m[i]:!i&&m?m.value:Fe(f):Nn(h,\"select\")&&Array.isArray(Fe(f))?e.fieldValue=Fe(f).join(\",\"):e.fieldValue=Fe(f)}const qn=e=>{if(e){const t=Array.isArray(e)?Ln(e):[Ln(e)];let o=\"\",n=[];const r=[],i=[],a=[];for(const e of t){let t=e.label,l=e.columnName;if(e.defaultCode&&(t=e.columnName,delete e.defaultCode),\"component-value\"===l&&e.componentId){const o=Rn(e.componentId)||{},{value:n}=o;Fe(n)&&(t=l=Fe(n))}o=e.type,\"CUSTOM\"===o&&(n=e.customOrderColumns),r.push(t),i.push(l),a.push(e.order)}return\"CUSTOM\"!==o&&(null==r?void 0:r.length)>1&&(o=\"COMBINATION\"),\"CUSTOM\"===o?{label:r.join(\",\"),columnName:i.join(\",\"),type:o,customOrderColumns:n}:{label:r.join(\",\"),columnName:i.join(\",\"),order:a.join(\",\"),type:o}}return e},Qn=e=>{const{sortCpnts:t=[]}=e;let o,n=\"\";for(const e of t){const t=Rn(e)||{},{type:o,RECORD:r}=t;if(Nn(o,\"image\")&&Nn(null==r?void 0:r.value,[\"asc\",\"desc\"])){n=r.value.toUpperCase();break}}return n&&(o={label:e.label,columnName:e.name,order:n,type:\"NORMAL\"}),o},Zn=(t,o={})=>{var n,r,i,a,l,s,c,u;const{graphicConfig:d,type:f,globalModel:p,isGroupTable:h=!1,allComponentList:y}=t;p&&(Vn=p),(null==y?void 0:y.length)&&(zn=y);const m=Nn(f,\"pivottable\");let g,{source:v,dataViewId:b,plugin:x=\"1\",layer:w,chartType:S,classificationList:A=[],rowHeaderList:_=[],dimensionList:L=[],seriesList:O=[],leftAxisList:C=[],rightAxisList:j=[],queryColumnList:N=[],indexLibColumns:T=[],indicators:M=[],specialIndicators:k=[],controlList:D=[],formFields:$={},variableList:E=[],variableConditions:F=[],dataSourceId:V=\"\",idxLibMode:z,preview:I=!1,edvDataSetId:R,compositeIndicator:P}=d||{},W=[];if(\"design\"===(null==d?void 0:d.pageMode)?(W=(null!==(n=d.sqlConditions)&&void 0!==n?n:[]).map((e=>{const t={};if(Tn(e,\"globalCondition\")||e.join||(t.globalCondition=!0),!e.join){const o=e.rule||\"EQUAL\";t.rule=\"NONE\"===o?\"EQUAL\":o}return Object.assign(Object.assign({},e),t)})),(null==F?void 0:F.length)&&(W=W.concat(F))):(W=Un(d),(null==E?void 0:E.length)&&(W=W.concat(function(e){const t=[];if(null==e?void 0:e.length)for(const o of e)if(o.variableName){const e=Gn(o.id,o.keyName),n={variateName:o.variableName,globalCondition:o.globalCondition||!1,valueType:o.variableType,alias:e||\"\"};Bn(n,o.id,{dateFormat:o.format,prop:o.dateTypeValue,keyName:e,operateType:o.operateType,operateMode:o.operateMode,operateValue:o.operateValue}),\"\"===o.dataType&&(n.fieldValue=o.variableValue),o.format&&(n.dateFormat=o.format),o.label&&(n.label=o.label),t.push(n)}return t}(E)))),null==W?void 0:W.length){const e=W.filter((e=>e.globalCondition)),t=W.filter((e=>!e.globalCondition));(null==e?void 0:e.length)>1&&(W=[{join:\"&&\",conditions:e},...t])}(null==W?void 0:W.length)&&(W=Wn(W,\"1\")),null==w&&(w=Nn(f,[\"table\",\"card\"])||Nn(f,[\"list\",\"circulate\"])&&(null==A?void 0:A.length)>1?\"1\":Nn(f,[\"select\",\"checkbox\",\"radio\",\"treeSelect\"])?\"3\":Nn(f,[\"indexPanel\"])?\"4\":\"2\"),Nn(f,[\"indexPanel\"])&&(x=\"3\");const H=[];let G,U=\"\";if(Array.isArray(A)&&A.length>0&&(![\"ecanList\",\"ecanCirculate\"].includes(f)||1===(null==A?void 0:A.length))){const e=A.length;for(let t=0;t<e;t++){const o=A[t]||{},{label:n=\"\",name:i=\"\",show:a=!1,sort:l,customGroup:s,conditions:c,dateFormat:u,typeGuid:d=\"\",truncations:p=[],isExtProperty:h}=o;if(a||1===e){U=d,g={label:n.trim(),columnName:i,show:a,sort:Qn(o)||qn(l)||l,customGroup:s,conditions:Wn(c),typeGuid:d},u&&(g.dateFormat=u),\"the_date\"!==i||g.dateFormat||(g.dateFormat=\"YYYY-MM-DD\"),h&&(g.isExtProperty=h);const e={};if(Array.isArray(p)&&p.length>0){const t=p.length;for(let o=0;o<t;o++){const t=p[o]||{},{rule:n=\"\",num:r=0,name:i=\"\"}=t;n&&r&&(e.num=r,e.rule=n,i&&(e.otherGroupName=i))}}if((null===(r=Object.keys(e))||void 0===r?void 0:r.length)&&(g.truncation=e),!Nn(f,[\"scatter\",\"valueline\"]))break;H.push(g)}}}if(Array.isArray(O)&&O.length>0){const e=O.length;for(let t=0;t<e;t++){const o=O[t]||{},{label:n=\"\",name:r=\"\",show:i=!1,sort:a,customGroup:l,conditions:s,typeGuid:c,dateFormat:u=\"\"}=o;if(i||1===e){G={label:n.trim(),columnName:r,show:i,sort:qn(a),customGroup:l,conditions:Wn(s),typeGuid:c},u?G.dateFormat=u:\"the_date\"===r&&(G.dateFormat=\"YYYY-MM-DD\");break}}}const Y=[];null==C||C.forEach((e=>{e.location=\"LEFT\",Y.push(Hn(e,g))})),null==j||j.forEach((e=>{e.location=\"RIGHT\",Y.push(Hn(e,g))}));let K=M;(null==o?void 0:o.pivotTableCal)&&(K=(null===(i=o.pivotTableCal)||void 0===i?void 0:i.indicators)||[]),null==K||K.forEach((e=>{e.location=\"LEFT\",Y.push(Hn(e,g))}));const B=[];null==k||k.forEach((e=>{e.location=\"LEFT\",B.push(Hn(e,g))}));const q=[];[\"ecanList\",\"ecanCirculate\"].includes(f)&&(null==A?void 0:A.length)>1&&(N=A),(null==o?void 0:o.pivotTableCal)&&(N=(null===(a=o.pivotTableCal)||void 0===a?void 0:a.dimensions)||[]),null==N||N.forEach((e=>{const{label:t,name:n,location:r,show:i,indexCode:a,sort:l,typeGuid:s,indexCodeNum:c,dateFormat:u,conditions:d,isExtProperty:f}=e;let p=qn(l);if(o.sort){const{field:n,order:r}=o.sort;let i=Y.find((e=>e.label===n));i||t!==n||(i=e),i&&(p={columnName:i.columnName,label:o.sort.field,order:r.toUpperCase(),type:\"NORMAL\"})}const h={label:t,columnName:n,location:r,show:i,sort:p,calcType:\"COLUMN\",hrpIndexCode:a,hrpIndexCodeNum:c,conditions:Wn(d),typeGuid:s};u&&(h.dateFormat=u),\"the_date\"!==n||h.dateFormat||(h.dateFormat=\"YYYY-MM-DD\"),f&&(h.isExtProperty=f),q.push(h)}));const Q=[];[\"ecanTable\"].includes(f)&&d.isIndexSet&&T.forEach((e=>{const t={label:e.label,calcType:e.calcType,show:e.show};e.formula&&(t.formula=e.formula),Q.push(t)}));let Z=[],X=[];if(Array.isArray(_)&&_.length>0?X=_:Array.isArray(L)&&L.length>0&&(X=L),null==X?void 0:X.length){const e=X.length;for(let t=0;t<e;t++){const e=X[t]||{},{label:n=\"\",name:r=\"\",show:i=!1,sort:a,customGroup:s,conditions:c,truncations:u,typeGuid:d=\"\",dateFormat:f,isExtProperty:p}=e;let h=qn(a);if(o.sort){const{field:t,order:n}=o.sort;let r=Y.find((e=>e.label===t));r||e.label!==t||(r=e),r&&(h={columnName:r.columnName,label:o.sort.field,order:n.toUpperCase(),type:\"NORMAL\"})}const y={label:n.trim(),columnName:r,show:i,sort:h,customGroup:s,conditions:Wn(c),typeGuid:d};f&&(y.dateFormat=f),\"the_date\"!==r||y.dateFormat||(y.dateFormat=\"YYYY-MM-DD\"),p&&(y.isExtProperty=p);const m={};if(Array.isArray(u)&&u.length>0){const e=u.length;for(let t=0;t<e;t++){const e=u[t]||{},{rule:o=\"\",num:n=0,name:r=\"\"}=e;o&&n&&(m.num=n,m.rule=o,r&&(m.otherGroupName=r))}}(null===(l=Object.keys(m))||void 0===l?void 0:l.length)&&(y.truncation=m),Z.push(y)}}let J,ee=[];const te=[];if(null==o?void 0:o.pivotTableCal){let t=[];const{calc:n=[],filter:r=[],truncations:i=[],sorts:a=[],aggregateMethod:l=[],rowDimensionKeys:u=[],colDimensionKeys:d=[]}=o.pivotTableCal;if(Y.push(...n),null==r?void 0:r.length){const o=function e(t){const o=[];for(const n of t)n.conditions?o.push(...e(n.conditions)):\"the_date\"===n.conditionKey&&o.push(n);return o}(D);for(const n of r){const{type:r}=n,i=e(n,[\"type\"]);\"indicators\"===r?t=Y:\"dimension\"===r&&(t=q);const a=t.find((e=>e.columnName===n.fieldName&&e.label===n.label));if(a)if(\"indicators\"===r)a.filter={rule:i.rule,fieldValue:i.fieldValue};else if(\"dimension\"===r){let e=!0;\"the_date\"===i.fieldName&&2===(null==o?void 0:o.length)&&(e=!1,te.push(i)),e&&(a.conditions||(a.conditions=[]),a.conditions.push(i))}}}if(null==i?void 0:i.length)for(const e of i){const t=q.find((t=>t.label===e.key));t&&(t.truncation={num:e.num,rule:e.rule})}if(null==a?void 0:a.length)for(const o of a){const{fieldType:n,columnData:r}=o,i=e(o,[\"fieldType\",\"columnData\"]);\"indicators\"===n?(t=Y,J=r):\"dimension\"===n&&(t=q);const a=t.find((e=>e.label===i.label));a&&(a.sort=Object.assign(Object.assign({},i),{columnName:a.columnName}))}if(null===(s=Object.keys(l))||void 0===s?void 0:s.length)for(const e in l){const t=q.find((t=>t.label===e));t&&(null===(c=l[e])||void 0===c?void 0:c.length)&&(t.aggregateMethod=l[e])}Z=[],ee=[];for(const e of q)u.includes(e.columnName)?Z.push(e):d.includes(e.columnName)&&ee.push(e)}if(Nn(f,[\"text\",\"proportion\",\"counter\",\"gauge\"])?S=\"zb\":Nn(f,[\"valueline\"])?S=\"valueline\":Nn(f,[\"indexPanel\"])?S=\"indexPanel\":Nn(f,[\"boxplot\"])?S=\"boxplot\":Nn(f,[\"budget\"])&&(S=\"budget\"),h||\"card\"===f){if(0===Z.length||0===Y.length)return;S=\"grouptable\"}else{if(\"1\"===w&&!q.length&&!Q.length)return;if([\"2\",\"4\"].includes(w)&&0===Y.length)return;if(!(\"3\"!==w||(U||\"EDV_DATA_SET\"===v)&&$.labelField&&$.valueField))return;if(\"3\"===w&&\"ecanDataSelect\"===f&&0===Y.length)return}let oe;if((null==L?void 0:L.length)&&(w=\"1\",S=\"grouptable\"),m||Nn(f,[\"scatter\",\"valueline\"])||!(null===(u=Object.keys($))||void 0===u?void 0:u.length)){let e={};e=Nn(f,[\"scatter\",\"valueline\"])?{classifications:H}:{classification:g},(null==Q?void 0:Q.length)&&(e.indexLibColumns=Q,e.isIndexSet=!0),(null==B?void 0:B.length)&&(e.specialIndicatorList=B),Nn(f,\"table\")&&d.isIndexSet&&(e.compositeIndicator=P),d.isIndexQuery&&(e.isIndexQuery=d.isIndexQuery);const o=W.map((e=>{const{fieldValue:t}=e,o={};return t&&Array.isArray(t)&&(o.fieldValue=JSON.stringify(t)),Object.assign(Object.assign({},e),o)}));(null==te?void 0:te.length)&&function e(t){for(const o of t)if(o.sqlConditions)e(o.sqlConditions);else if(\"the_date\"===o.fieldName){const e=te.find((e=>e.prop===o.prop));e&&(o.fieldValue=e.fieldValue)}}(o),oe=Object.assign({url:\"/diagram\",source:v,dataViewId:b,plugin:m?\"5\":x,layer:w,chartType:m?\"pivot-table\":S,series:G,indicatorList:Y,queryColumns:h?[]:q,pageFlag:!0,edvDataSetId:R||\"\",sqlConditions:o,idxLibMode:z,dataSourceId:V,preview:I,rowHeaders:Z,keyName:t.keyName,columnData:J,columnHeaders:ee},e)}else{const e=Mn(D).find((e=>\"parentCode\"===e.conditionKey)),o={};if(e){const t=Rn(e.id)||{};(null==t?void 0:t.itemCodes)?o.parentItemCodes=t.itemCodes:o.parentItemCodes=null}\"ecanDataSelect\"===f&&(o.indicatorList=Y.filter((e=>e.show))),\"EDV_DATA_SET\"===v&&(o.edvDataSetId=R),(null==g?void 0:g.sort)&&(o.sort=g.sort);let n=\"normalSelect\";\"ecanDataSelect\"===f?n=\"normalSelectData\":\"ecanTreeSelect\"===f&&(n=\"treeSelect\"),oe=Object.assign({url:\"/diagram/formData\",source:v,dataViewId:b,plugin:\"4\",layer:w,chartType:\"ecanTreeSelect\"===f?\"treeSelect\":\"normalSelect\",rangeIndexTypeGuid:U,type:n,labelField:$.labelField,valueField:$.valueField,parentField:$.parentField,sqlConditions:W,idxLibMode:\"WITH_DATE_DIM_TABLE\",dataSourceId:V,keyName:t.keyName},o)}return oe},Xn=(e=[],t,o=!1)=>{let{name:n=\"name\",types:r=[]}=t||{};n=(null==n?void 0:n.trim())||n;const i=new Set,a=new Map,l=e.length,s=r.length;if(1!==l||o)for(let t=0;t<l;t++){const o=e[t],l=o[n];i.add(l);for(let e=0;e<s;e++){const t=r[e],{label:n,value:i}=t,l=Object.assign(Object.assign({},o),{value:o[i]});if(a.has(n)){const e=a.get(n);e.push(l),a.set(n,e)}else a.set(n,[l])}}else{const t=[];for(let o=0;o<s;o++){const n=r[o],{label:a,value:l}=n,s=Object.assign(Object.assign({},e[0]),{value:e[0][l]});i.add(a),t.push(s)}const o=e[0][n]||\"\";a.set(o,t)}const c=Array.from(i),u=[];for(const[e,t]of a)u.push({name:e,data:t});return{dimensions:c,dataset:u}},Jn=(e,t)=>{let{name:o=\"name\",value:n=\"value\",type:r=\"type\"}=t||{};o=null==o?void 0:o.trim(),n=null==n?void 0:n.trim(),r=null==r?void 0:r.trim();const i=new Map,a=e.length;for(let t=0;t<a;t++){const a=e[t],l=a[o]||\"\",s=a[n]||\"\",c=a[r]||\"\";if(i.has(c)){const e=i.get(c);e.push(Object.assign({name:l,value:s},a)),i.set(c,e)}else i.set(c,[Object.assign({name:l,value:s},a)])}const l=[],s=[];for(const[e,t]of i)if(s.push({name:e,data:t}),null==t?void 0:t.length)if(l.length)for(const e of t)l.includes(e.name)||l.push(e.name);else l.push(...t.map((e=>e.name)));return{dimensions:l,dataset:s}},er=(e,t)=>{var o;if(null==e)return t;const n=e.match(/\\{.*\\}/g);if(null==n||0===n.length)return t;const r=n.length;for(let i=0;i<r;i++){const r=n[i];if(null==r||\"\"===r)break;let a=null===(o=r.slice(1,-1))||void 0===o?void 0:o.trim();a=null==a?void 0:a.replace(/value/g,t);try{let t=a;(/\\(.*\\)/g.test(a)||/[+/\\\\*]/g.test(a))&&(t=Cn(a)),e=e.replace(r,t)}catch(t){e=e.replace(r,a)}}return e},tr=(e,t,o)=>{let n=e.dataFieldNames;if(\"indicator\"===e.dataType&&\"design\"!==(null==o?void 0:o.pageMode)&&t){const{formFields:e={}}=t;(null==e?void 0:e.labelField)&&(null==e?void 0:e.valueField)&&(n={name:e.labelField,value:e.valueField})}return n},or=e=>{const t=null==e?void 0:e.chart.getModel().getComponent(\"yAxis\").axis.scale._extent,o=null==e?void 0:e.chart.getModel().getComponent(\"xAxis\").axis.scale._extent;let n={};return o&&t&&(n={xAxisMinValue:o[0],xAxisMaxValue:o[1],yAxisMinValue:t[0],yAxisMaxValue:t[1]}),n};function nr(e,t,o){switch(t){case\"startX\":e[0].coord[0]=+o;break;case\"startY\":e[0].coord[1]=+o;break;case\"endX\":e[1].coord[0]=+o;break;case\"endY\":e[1].coord[1]=+o}}const rr=(e,t,o)=>{let n=0,r=[];switch(t.x?r=Fe(o).map((e=>e.value[0])):t.y&&(r=Fe(o).map((e=>e.value[1]))),e){case\"max\":n=Math.max(...r);break;case\"min\":n=Math.min(...r);break;case\"average\":i=r,n=Array.isArray(i)&&0!==i.length?i.reduce(((e,t)=>e+t),0)/i.length:0;break;case\"median\":n=function(e){if(!Array.isArray(e)||0===e.length)return 0;const t=[...e].sort(((e,t)=>e-t)),o=t.length,n=Math.floor(o/2);return o%2!=0?t[n]:(t[n-1]+t[n])/2}(r)}var i;return n},ir={\"最大值\":\"{max}\",\"最小值\":\"{min}\",\"平均值\":\"{average}\",\"中位数\":\"{median}\"};function ar(e,t,o,n,r,i,a){const l=tr(e,n,a),s=e.xAxisLabelFormatter,c=e.yAxisLabelFormatter,u=r?((e,t,o,n)=>{const{xAxisMarkLineValue:r=[],yAxisMarkLineValue:i=[]}=e,{xAxisMinValue:a,xAxisMaxValue:l,yAxisMinValue:s,yAxisMaxValue:c}=t,u=r.map((e=>Object.assign(Object.assign({},e),{x:!0}))),d=i.map((e=>Object.assign(Object.assign({},e),{y:!0}))),f=u.concat(d);if(null==f?void 0:f.length){const e=[];for(const t of f){const r={label:{show:!0,formatter:\"\",rich:{ft:{}}}},i={};let u=t.value;const d=null==u?void 0:u.match(/\\{(.+?)\\}/g);let f=\"\";if(r.label.formatter=t.label?`{ft|${t.label}}`:\"\",(t.offsetHorizontal||t.offsetVertical)&&(t.x?r.label.rich.ft.padding=[0,t.offsetHorizontal||0,t.offsetVertical||0,0]:t.y&&(r.label.rich.ft.padding=[t.offsetVertical||0,0,0,t.offsetHorizontal||0])),t.labelColor&&(r.label.rich.ft.color=t.labelColor),t.lineColor&&(i.color=t.lineColor),t.lineType&&(i.type=t.lineType),t.x?f=\"xAxis\":t.y&&(f=\"yAxis\"),null==d?void 0:d.length){for(const e of d)u=u.replace(e,e.slice(1,-1));if(u){let d;d=n&&n.value[u]?Fe(n)[u]:Cn(u,{axisMax:t.x?Fe(l):t.y?Fe(c):0,axisMin:t.x?Fe(a):t.y?Fe(s):0,max:rr(\"max\",t,o),min:rr(\"min\",t,o),average:rr(\"average\",t,o),median:rr(\"median\",t,o)}),isNaN(+d)||e.push(Object.assign({[f]:+d,lineStyle:i},r))}}else isNaN(+t.value)||e.push(Object.assign({[f]:t.value,lineStyle:i},r))}return{symbol:[\"none\",\"none\"],data:e}}return{data:[]}})(e,r,t,i):void 0,d=r?((e,t,o)=>{const{axisMarkArea:n=[]}=e,{xAxisMinValue:r,xAxisMaxValue:i,yAxisMinValue:a,yAxisMaxValue:l}=t;if(null==n?void 0:n.length){const e=[];for(const t of n){const n=[{name:t.label||\"\",coord:[],itemStyle:{color:t.color||\"transparent\"},label:{show:!!t.label,position:\"inside\",fontSize:16,color:\"#000\"}},{coord:[]}];for(const e in t)if([\"startX\",\"startY\",\"endX\",\"endY\"].includes(e)){let s=ir[t[e]]||t[e];const c=null==s?void 0:s.match(/\\{(.+?)\\}/g);if(null==c?void 0:c.length){for(const e of c)s=s.replace(e,e.slice(1,-1));if(s){const t={x:e.includes(\"X\"),y:e.includes(\"Y\")},c=Cn(s,{xMax:Fe(i),xMin:Fe(r),yMax:Fe(l),yMin:Fe(a),max:rr(\"max\",t,o),min:rr(\"min\",t,o),average:rr(\"average\",t,o),median:rr(\"median\",t,o)});isNaN(+c)||nr(n,e,c)}}else isNaN(+t[e])||nr(n,e,t[e])}n.every((e=>{var t;return null===(t=e.coord)||void 0===t?void 0:t.length}))&&e.push(n)}return{data:e}}return{data:[]}})(e,r,t):void 0,{visualColorKey:f,visualColorCondition:p,visualSizeKey:h,visualSizeCondition:y}=e;let m;f&&(m=function(e,t,o){const n=e=>{if(e.name)return e.name;const t=!!(null==e?void 0:e.value1),o=!!(null==e?void 0:e.value2);return t&&!o?`${e.rule1}${e.value1}`:!t&&o?`${e.rule2}${e.value2}`:`${e.value1}-${e.value2}`},r={};return o.forEach((e=>{(e.value1||e.value2)&&(r[n(e)]={data:[],color:e.color})})),r[\"其他\"]={data:[]},e.forEach((e=>{const i=Number(e.record[t]);let a=!1;for(const t of o){if(!t.value1&&!t.value2)continue;const o=t.value1?Number(t.value1):-1/0,l=t.value2?Number(t.value2):1/0;let s=!0,c=!0;if(\">=\"===t.rule1?s=i>=o:\">\"===t.rule1?s=i>o:\"<=\"===t.rule1?s=i<=o:\"<\"===t.rule1?s=i<o:\"==\"===t.rule1&&(s=i===o),\"\"!==t.value2&&(\">=\"===t.rule2?c=i>=l:\">\"===t.rule2?c=i>l:\"<=\"===t.rule2?c=i<=l:\"<\"===t.rule2?c=i<l:\"==\"===t.rule2&&(c=i===l)),s&&c){r[n(t)].data.push(e),a=!0;break}}a||r[\"其他\"].data.push(e)})),r}(t,f,Ln(p).reverse()));const g=t=>{var o;let n=\"\",r=e.labelFormatter;\"\"===r&&(r=\"{c}\");const{seriesName:i,data:a}=t||{},s=null!==(o=null==a?void 0:a.record)&&void 0!==o?o:{},c=s[l.name],u=s[l.value];return n+=jn(r,{textData:Object.assign({name:c,value:u,a:i,b:c,c:u||0},s)},{useNewline:!0,useSpace:!0}),n},v=function(e){const t=[];for(const o of e){let e=\"\";o.value1&&(e+=`value ${o.rule1} ${o.value1}`),o.value2&&(e+=`${o.value1?\"&&\":\"\"} value ${o.rule2} ${o.value2}`),e&&t.push({rule:e,size:o.size})}return t.reverse()}(y),b=(t,o)=>{if(h){const{record:e={}}=o.data||{},t=e[h],n=v.find((e=>Cn(e.rule,{value:t})));if(n)return n.size}return e.symbolSize},x={type:\"scatter\",data:Fe(t),symbolSize:b,itemStyle:{color:e.symbolColor},label:{show:e.labelShow,fontSize:e.labelFontSize,position:e.labelPosition,color:e.labelColor,width:e.labelWidth,overflow:e.labelOverflow,formatter:g},markLine:u,markArea:d},w=[],S=[];if(m)for(const t in m){const o=m[t],n=Ln(x);n.symbolSize=b,n.label.formatter=g,n.itemStyle.color=o.color||e.symbolColor,n.data=o.data,n.name=t,S.push(n),w.push(t)}else S.push(x);return{xAxis:{z:5,splitLine:{show:e.xAxisSplitLineShow,lineStyle:{color:e.xAxisSplitLineStyleColor},interval:e.xAxisSplitLineInterval},splitArea:{show:e.xAxisSplitAreaShow},axisLabel:{show:e.xAxisLabelShow,fontSize:e.xAxisLabelFontSize,color:e.xAxisLabelColor,interval:e.xAxisLabelInterval||0,rotate:e.xAxisLabelRotate,width:e.xAxisLabelWidth,overflow:e.xAxisLabelOverflow,formatter:e=>(\"string\"!=typeof e||\"0\"!==e[0]||isNaN(+e)||(e=(+e).toString()),er(s,e))},axisLine:{lineStyle:{color:e.xAxisLineStyleColor},symbol:[\"none\",e.showXAxisLineArrow?\"arrow\":\"none\"],symbolSize:[8,12],onZero:!1},axisTick:{show:e.xAxisTickShow},name:e.xAxisName,nameLocation:e.xAxisLineInverse?\"start\":\"end\",nameTextStyle:{fontSize:e.xAxisLabelFontSize,color:e.xAxisLabelColor,align:\"left\"},inverse:e.xAxisLineInverse,max:e.xAxisMax,min:e.xAxisMin},yAxis:{z:5,splitLine:{show:e.yAxisSplitLineShow,lineStyle:{color:e.yAxisSplitLineStyleColor,type:e.yAxisSplitLineType}},axisTick:{show:e.yAxisTickShow},splitArea:{show:e.yAxisSplitAreaShow},axisLabel:{show:e.yAxisLabelShow,fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,formatter:e=>er(c,e)},axisLine:{show:e.yAxisLineAlwaysDisplay,lineStyle:{color:e.yAxisLineStyleColor},symbol:[\"none\",e.showYAxisLineArrow?\"arrow\":\"none\"],symbolSize:[8,12],onZero:!1},name:e.yAxisName,nameLocation:e.yAxisLineInverse?\"start\":\"end\",nameTextStyle:{fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,align:\"right\"},inverse:e.yAxisLineInverse,max:e.yAxisMax,min:e.yAxisMin},tooltip:{show:e.tooltipShow,trigger:e.tooltipTrigger,formatter(t){var o,n;const{marker:r,seriesName:i,componentType:a}=t,s=null!==(n=null===(o=null==t?void 0:t.data)||void 0===o?void 0:o.record)&&void 0!==n?n:{},c=s[l.name],u=s[l.value];return[\"markLine\",\"markArea\"].includes(a)?\"\":jn(e.tooltipFormatter,{textData:Object.assign({marker:r,seriesName:i,a:i,b:c,c:u},s)},{useNewline:!0,useSpace:!0})},axisPointer:{type:e.crossShow||void 0===e.crossShow?\"cross\":\"\"},textStyle:{fontSize:Fe(o)},position:e.tooltipPosition||void 0},legend:{show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,textStyle:{color:e.legendTextStyleColor,fontSize:o},data:w},series:S}}function lr(e){let t=\"\";switch(e){case 1:t=\"万\";break;case 3:t=\"百万\";break;case 4:t=\"千万\"}return t}const sr=(e,t,o,n,r,i,a)=>{switch(((e,t)=>{if(!e)return e||\"\";if(e.toLowerCase().startsWith(t.toLowerCase())){const o=e.slice(t.length);return o?o.charAt(0).toLowerCase()+o.slice(1):\"\"}return e})(e.type,\"ecan\")){case\"bar\":return function(e,t,o,n){const r=e.yAxisLabelFormatter,i=e.xAxisLabelFormatter,a=$e(t.dataset),l=$e(t.dimensions),s=mt((()=>{const{gradientShow:t,gradientColors:o,gradientOffset:n,barBorderRadius:r}=e,i=Fe(a),l=i.length,s=[];for(let a=0;a<l;a++){const c=Object.assign(Object.assign({},i[a]),{type:\"bar\",barWidth:e.barWidth.value+e.barWidth.suffix,showBackground:e.showBarBackground});if(e.isStack&&(c.stack=\"stack\"),c.label={show:e.labelShow,fontSize:e.labelFontSize,position:e.labelPosition,color:e.labelColor,width:e.labelWidth,overflow:e.labelOverflow,formatter:t=>{let o=\"\",n=e.labelFormatter;\"\"===n&&(n=\"{c}\");const{seriesName:r,name:i,value:a,data:l}=t||{};return o+=jn(n,{textData:Object.assign({name:i,value:a,a:r,b:i,c:a||0},l)},{useNewline:!0,useSpace:!0}),o}},c.itemStyle={},t){let t=e.colors[a];if(!t&&e.colors.length){const o=(a+1)%e.colors.length-1;t=o>0?e.colors[o]:e.colors[0]}t||(t=\"#5470C6\"),c.itemStyle={color:{x:e.isUseHorizontalAxis?1:0,y:0,x2:0,y2:e.isUseHorizontalAxis?0:1,colorStops:[{offset:0,color:t},{offset:n,color:o[a]},{offset:1,color:o[a]}]}}}if(r&&(!e.isStack||a===l-1)){const e=r.split(\",\");if(null==e?void 0:e.length){const t=[];for(const o of e){const e=parseFloat(o);isNaN(e)||t.push(e)}c.itemStyle.borderRadius=t}}e.isShowMarkLine&&(c.markLine={data:[{type:e.markLineType}]}),s.push(c)}return s})),c=mt((()=>Fe(l).map((e=>{let t={};return t=e&&\"object\"==typeof e?Object.assign(Object.assign({},e),{textStyle:{fontSize:o}}):{value:e,textStyle:{fontSize:o}},t}))));return{tooltip:{trigger:\"axis\",show:e.tooltipShow,formatter:t=>{var o;const r=t.length;let a=\"\",l=e.tooltipFormatter;(null==n?void 0:n.getCurrentData)&&n.getCurrentData(null===(o=t[0])||void 0===o?void 0:o.data),\"\"===l&&(l=\"{marker} {a} {c}\");for(let e=0;e<r;e++){const{marker:o,seriesName:n,name:r,value:s,data:c}=t[e]||{};if(0===e){let e=r;\"undefined\"===r&&(e=\"\"),\"string\"!=typeof r||\"0\"!==r[0]||isNaN(+r)||(e=(+r).toString()),a+=`${er(i,e)}${e?\"<br/>\":\"\"}`}a+=jn(l,{textData:Object.assign({marker:o,name:r,value:s,a:n,b:r,c:c.sourceValue||s||0},c)},{useNewline:!0,useSpace:!0}),a+=\"<br/>\"}return a},textStyle:{color:e.tooltipTextStyleColor,fontSize:o.value},position:e.tooltipPosition||void 0},legend:{type:e.legendScroll?\"scroll\":\"plain\",width:e.legendWidth,height:e.legendHeight,show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,textStyle:{rich:{text:{width:e.legendTextWidth,color:e.legendTextStyleColor}}},itemHeight:e.legendItemHeight,itemWidth:e.legendItemWidth,itemGap:e.legendItemGap,data:Fe(a).map(((t,o)=>({name:t.name,itemStyle:{color:e.colors[o]},icon:e.legendType}))),formatter:t=>kn(e.legendFormatter,{name:t})},xAxis:{type:e.isUseHorizontalAxis?\"value\":\"category\",data:e.isUseHorizontalAxis?null:Fe(c),inverse:e.isUseHorizontalAxis?e.xAxisInverse:e.axisInverse,minInterval:e.xAxisMinInterval,splitLine:{show:e.xAxisSplitLineShow,lineStyle:{color:e.xAxisSplitLineStyleColor,type:e.xAxisSplitLineType},interval:e.xAxisSplitLineInterval},splitArea:{show:e.xAxisSplitAreaShow},axisLabel:{show:e.xAxisLabelShow,color:e.xAxisLabelColor,interval:e.xAxisLabelInterval||0,rotate:e.xAxisLabelRotate,width:e.xAxisLabelWidth,overflow:e.xAxisLabelOverflow,fontSize:e.xAxisLabelFontSize,formatter:e=>(\"string\"!=typeof e||\"0\"!==e[0]||isNaN(+e)||(e=(+e).toString()),er(i,e))},axisLine:{show:e.xAxisLineShow,lineStyle:{color:e.xAxisLineStyleColor}},axisTick:{show:e.xAxisTickShow},name:e.xAxisName,nameTextStyle:{fontSize:e.xAxisLabelFontSize,color:e.xAxisLabelColor,align:\"left\"},max:e.xAxisMaxValue||null},yAxis:{type:e.isUseHorizontalAxis?\"category\":\"value\",data:e.isUseHorizontalAxis?Fe(l):null,inverse:e.isUseHorizontalAxis?e.axisInverse:e.yAxisInverse,minInterval:e.yAxisMinInterval,splitLine:{show:e.yAxisSplitLineShow,lineStyle:{color:e.yAxisSplitLineStyleColor,type:e.yAxisSplitLineType}},splitArea:{show:e.yAxisSplitAreaShow},axisTick:{show:e.yAxisTickShow},axisLabel:{show:e.yAxisLabelShow,fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,rotate:e.yAxisLabelRotate,width:e.yAxisLabelWidth,overflow:e.yAxisLabelOverflow,formatter:e=>er(r,e)},axisLine:{show:e.yAxisLineAlwaysDisplay,lineStyle:{color:e.yAxisLineStyleColor}},name:e.yAxisName,nameTextStyle:{fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,align:\"right\"},max:e.yAxisMaxValue||null},series:Fe(s)}}(e,t,o,a);case\"line\":return function(e,t,o,n){const r=e.yAxisLabelFormatter,i=e.xAxisLabelFormatter,a=$e(t.dataset),l=$e(t.dimensions),s=t.dataset,c=mt((()=>{const t=[],o=s.length;for(let r=0;r<o;r++){const o={};e.shadowColor&&(o.shadowColor=e.shadowColor,o.shadowBlur=e.shadowBlur,o.shadowOffsetY=e.shadowOffsetY,o.shadowOffsetX=e.shadowOffsetX);let i=e.colors[r];if(!i&&e.colors.length){const t=(r+1)%e.colors.length-1;i=t>0?e.colors[t]:e.colors[0]}i||(i=\"#5470C6\"),t.push(Object.assign(Object.assign(Object.assign({type:\"line\"},s[r]),{symbolSize:e.symbolSize,smooth:e.smooth,areaStyle:{color:e.areaGradientShow?{type:\"linear\",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:i},{offset:1,color:e.areaGradientColor||\"transparent\"}],global:!1}:i,opacity:e.areaStyleOpacity},lineStyle:Object.assign({width:e.lineStyleWidth},o)}),(n=e).isShowMarkLine?{markLine:{data:[{type:n.markLineType}]}}:{}))}var n;return t}));return{tooltip:{trigger:\"axis\",textStyle:{fontSize:o.value,color:e.tooltipTextStyleColor},show:e.tooltipShow,formatter:t=>{var o;const r=t.length;let a=\"\",l=e.tooltipFormatter;(null==n?void 0:n.getCurrentData)&&n.getCurrentData(null===(o=t[0])||void 0===o?void 0:o.data),\"\"===l&&(l=\"{marker} {a} {c}\");for(let e=0;e<r;e++){const{marker:o,seriesName:n,name:r,value:s,data:c}=t[e]||{};if(0===e){let e=r;\"string\"!=typeof r||\"0\"!==r[0]||isNaN(+r)||(e=(+r).toString()),a+=`${er(i,e)}<br/>`}a+=jn(l,{textData:Object.assign({marker:o,name:r,value:s,a:n,b:r,c:s||0},c)},{useNewline:!0,useSpace:!0}),a+=\"<br/>\"}return a},position:e.tooltipPosition||void 0},xAxis:{type:\"category\",boundaryGap:e.isBoundaryGap,data:Fe(l).map((e=>{let t={};return t=e&&\"object\"==typeof e?Object.assign({},e):{value:e},t})),minInterval:e.xAxisMinInterval,splitLine:{show:e.xAxisSplitLineShow,lineStyle:{color:e.xAxisSplitLineStyleColor},interval:e.xAxisSplitLineInterval},splitArea:{show:e.xAxisSplitAreaShow},axisLabel:{show:e.xAxisLabelShow,color:e.xAxisLabelColor,interval:e.xAxisLabelInterval||0,rotate:e.xAxisLabelRotate,width:e.xAxisLabelWidth,overflow:e.xAxisLabelOverflow,fontSize:e.xAxisLabelFontSize,formatter:e=>(\"string\"!=typeof e||\"0\"!==e[0]||isNaN(+e)||(e=(+e).toString()),er(i,e))},axisLine:{show:e.xAxisLineShow,lineStyle:{color:e.xAxisLineStyleColor}},axisTick:{show:e.xAxisTickShow},name:e.xAxisName,nameTextStyle:{fontSize:e.xAxisLabelFontSize,color:e.xAxisLabelColor,align:\"left\"},max:e.xAxisMaxValue||null},yAxis:{type:\"value\",minInterval:e.yAxisMinInterval,splitLine:{show:e.yAxisSplitLineShow,lineStyle:{color:e.yAxisSplitLineStyleColor,type:e.yAxisSplitLineType}},splitArea:{show:e.yAxisSplitAreaShow},axisLabel:{show:e.yAxisLabelShow,fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,formatter:e=>er(r,e)},axisLine:{show:e.yAxisLineAlwaysDisplay,lineStyle:{color:e.yAxisLineStyleColor}},name:e.yAxisName,nameTextStyle:{fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,align:\"right\"},max:e.yAxisMaxValue||null},legend:{type:e.legendScroll?\"scroll\":\"plain\",width:e.legendWidth,height:e.legendHeight,show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,textStyle:{lineHeight:parseFloat(e.legendFontSize)+8,rich:{text:{width:e.legendTextWidth,color:e.legendTextStyleColor,fontSize:e.legendFontSize}}},itemHeight:e.legendItemHeight,itemWidth:e.legendItemWidth,itemGap:e.legendItemGap,data:Fe(a).map((t=>({name:t.name,icon:e.legendType}))),formatter:t=>kn(e.legendFormatter,{name:t})},series:Fe(c)}}(e,t,o,a);case\"pie\":return function(e,t,o){var n,r;const i=$e(t.dataset);let{data:a=[]}=Fe(i)[0]||{};if(Array.isArray(e.colors)){const t=e.isUseLabelColors,o=e.colors;a=a.map(((e,n)=>Object.assign({label:t?{color:o[n]}:{}},e)))}return{tooltip:{show:e.tooltipShow,trigger:e.tooltipTrigger,formatter:t=>{const{marker:o,seriesName:n,name:r,value:i,percent:a,data:l}=t||{};return jn(e.tooltipFormatter,{textData:Object.assign({marker:o,name:r,value:i,percent:a,a:n,b:r,c:i,d:a},l)},{useNewline:!0,useSpace:!0})},textStyle:{color:e.tooltipTextStyleColor},position:e.tooltipPosition||void 0},legend:{type:e.legendScroll?\"scroll\":\"plain\",width:e.legendWidth,height:e.legendHeight,show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,align:\"left\",textStyle:{lineHeight:o+8,rich:{text:{width:e.legendTextWidth,color:e.legendTextStyleColor,fontSize:o}}},itemHeight:e.legendItemHeight,itemWidth:e.legendItemWidth,itemGap:e.legendItemGap,data:null===(r=null===(n=Fe(i)[0])||void 0===n?void 0:n.data)||void 0===r?void 0:r.map((t=>({name:t.name,icon:e.legendType}))),formatter:t=>{const{data:o}=i.value[0]||{};let n,r=0,a=\"0%\";if(o)for(const e of o)e.name===t&&(n=+e.value),r+=+e.value;return r&&(a=`${(n/r*100).toFixed(2)}%`),kn(e.legendFormatter,{name:t,value:n,percent:a})}},series:[{data:a,type:\"pie\",radius:[e.innerRadius,e.outerRadius],center:[e.centerLeft,e.centerTop],roseType:e.roseType,avoidLabelOverlap:!0,minAngle:e.minAngle,label:{show:\"center\"!==e.labelPosition&&e.labelShow,color:e.labelColor,fontSize:e.labelFontSize,position:e.labelPosition,formatter:t=>{let o=\"\",n=e.labelFormatter;\"\"===n&&(n=\"{b}\\n{d}%\"),n=n.replace(/\\\\n/g,\"\\n\");const{name:r,value:i,data:a,percent:l}=t||{};return o+=jn(n,{textData:Object.assign({name:r,value:i,b:r,d:i||0,percent:l},a)},{useNewline:!1,useSpace:!1}),o},width:e.labelWidth,overflow:e.labelOverflow},labelLine:{show:e.labelLineShow,length:e.labelLineLength,length2:e.labelLineLength2},emphasis:{itemStyle:{shadowBlur:10,shadowOffsetX:0,shadowColor:\"rgba(0, 0, 0, 0.5)\"},label:{}}}]}}(e,t,o);case\"radar\":return function(e,t,o){const n=$e(t.dimensions),r=$e(t.dataset),i=mt((()=>{var e;const t=[],o=[],i=Fe(r),a=i.length;for(let e=0;e<a;e++){const{data:t=[]}=i[e];for(let e=0;e<t.length;e++)o.push(t[e].value)}if(null===(e=n.value)||void 0===e?void 0:e.length){const e=(null==o?void 0:o.length)?1.2*Math.max(...o):0;for(const o of n.value)t.push({name:o,max:e})}return t})),a=mt((()=>{const t=Fe(r),o=t.length,n=[];for(let r=0;r<o;r++){const{name:o,data:i=[]}=t[r],a=[{name:o,value:i.map((e=>e.value))}];let l=e.colors[r];if(!l&&e.colors.length){const t=(r+1)%e.colors.length-1;l=t>0?e.colors[t]:e.colors[0]}l||(l=\"#5470C6\");let s=l;if(e.gradientShow){const{gradientOffset:t,gradientColors:o}=e;s={x:.7,y:0,x2:0,y2:0,colorStops:[{offset:0,color:l},{offset:t,color:o[r]},{offset:1,color:o[r]}]}}const c={type:\"radar\",name:o,data:a,areaStyle:{color:s,opacity:e.areaStyleOpacity},tooltip:{trigger:\"item\"},symbolSize:e.symbolSize,lineStyle:{width:e.lineStyleWidth},label:{show:e.labelShow,fontSize:e.labelFontSize,position:e.labelPosition,color:e.labelColor,width:e.labelWidth,overflow:e.labelOverflow,formatter:t=>{const{data:o,value:n}=t;let r=0,i=\"0%\";if(o)for(const e of o.value)r+=+e;return r&&(i=`${(n/r*100).toFixed(2)}%`),jn(e.labelFormatter,{textData:{value:n,percent:i}},{useNewline:!1,useSpace:!1})}}};n.push(c)}return n})),l=mt((()=>({tooltip:{trigger:\"axis\",textStyle:{fontSize:o.value},show:e.tooltipShow,formatter:t=>{let o=\"\",n=e.tooltipFormatter;\"\"===n&&(n=\"{marker} {a} {c}\");for(let e=0;e<Fe(i).length;e++){const r=Fe(i)[e],{marker:a,seriesName:l,value:s}=t||{};0===e&&l&&(o+=`${l}<br/>`),o+=jn(n,{textData:{marker:a,name:r.name,value:s[e],a:r.name,b:r.name,c:s[e]||0,type:l}},{useNewline:!0,useSpace:!0}),o+=\"<br/>\"}return o},position:e.tooltipPosition||void 0},radar:{indicator:Fe(i),axisName:{color:e.axisNameColor}},legend:{type:e.legendScroll?\"scroll\":\"plain\",width:e.legendWidth,height:e.legendHeight,show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,textStyle:{lineHeight:parseFloat(e.legendFontSize)+8,rich:{text:{width:e.legendTextWidth,color:e.legendTextStyleColor,fontSize:e.legendFontSize}}},itemHeight:e.legendItemHeight,itemWidth:e.legendItemWidth,itemGap:e.legendItemGap,data:Fe(r).map((t=>({name:t.name,icon:e.legendType}))),formatter:t=>kn(e.legendFormatter,{name:t})},series:Fe(a)})));return Fe(l)}(e,t,o);case\"scatter\":return ar(e,t,o,n,r,i,a);case\"comboGraph\":return function(e,t,o,n){const r=$e(t.dimensions),i=$e(t.dataset),a=t.dataset,l=t=>{const o=[];let n=0;return e.seriesTypes.forEach(((e,n)=>{var r,a;e.axisIndex===t&&(null===(a=null===(r=Fe(i)[n])||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)&&o.push(...Fe(i)[n].data.map((e=>+e.value)))})),o.some((e=>e>=1e7))?n=4:o.some((e=>e>=1e6))?n=3:o.some((e=>e>=1e4))&&(n=1),n},s=$e([0,0]),c=mt((()=>{const t=e.yAxis;return null==t?void 0:t.map(((t,o)=>{const n=s.value[o];let r;return n&&(r=1e4*Math.pow(10,n-1)),{type:\"value\",minInterval:e.yAxisMinInterval,splitLine:{show:0===o?e.yAxisLeftSplitLineShow:e.yAxisRightSplitLineShow,lineStyle:{color:e.yAxisSplitLineStyleColor,type:0===o?e.yAxisLeftSplitLineType:e.yAxisRightSplitLineType}},splitArea:{show:e.yAxisSplitAreaShow},axisLabel:{show:e.yAxisLabelShow,fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,formatter(e){let o=e;return r&&(o=(+e/r).toString()),er(t.axisLabelFormatter,o)}},axisLine:{show:e.yAxisLineAlwaysDisplay,lineStyle:{color:e.yAxisLineStyleColor}},name:lr(n)+(0===o?e.yAxisLeftName:e.yAxisRightName),nameTextStyle:{fontSize:e.yAxisLabelFontSize,color:e.yAxisLabelColor,align:0===o?\"right\":\"left\"},max:e.yAxisMaxValue||null}}))}));s.value[0]=e.yAxisLeftUnitAdapt?l(0):0,s.value[1]=e.yAxisRightUnitAdapt?l(1):0;const u={legend:{type:e.legendScroll?\"scroll\":\"plain\",width:e.legendWidth,height:e.legendHeight,show:e.legendShow,orient:e.legendOrient,top:e.legendTop,left:e.legendLeft,textStyle:{lineHeight:parseFloat(e.legendFontSize)+8,rich:{text:{width:e.legendTextWidth,color:e.legendTextStyleColor,fontSize:e.legendFontSize}}},itemHeight:e.legendItemHeight,itemWidth:e.legendItemWidth,itemGap:e.legendItemGap,data:Fe(i).map(((t,o)=>({name:t.name,itemStyle:{color:e.colors[o]},icon:e.legendType}))),formatter:t=>kn(e.legendFormatter,{name:t})},tooltip:{trigger:\"axis\",show:e.tooltipShow,formatter:t=>{var o;const r=t.length;let i=\"\",a=e.tooltipFormatter;(null==n?void 0:n.getCurrentData)&&n.getCurrentData(null===(o=t[0])||void 0===o?void 0:o.data),\"\"===a&&(a=\"{marker} {a} {c}\");const l=e.seriesTypes;for(let o=0;o<r;o++){const n=l[o],{tooltipFormatter:r}=n||{},{marker:s,seriesName:c,name:u,value:d,data:f}=t[o]||{};if(0===o){let t=u;\"string\"!=typeof u||\"0\"!==u[0]||isNaN(+u)||(t=(+u).toString()),i+=`${er(e.xAxisLabelFormatter,t)}<br/>`}i+=jn(r||a,{textData:Object.assign({marker:s,name:u,value:d,seriesName:c,a:c,b:u,c:d||0},f)},{useNewline:!0,useSpace:!0}),i+=\"<br/>\"}return i},textStyle:{color:e.tooltipTextStyleColor,fontSize:o.value},position:e.tooltipPosition||void 0},xAxis:{minInterval:e.xAxisMinInterval,type:\"category\",data:Fe(r).map((e=>{let t={};return t=e&&\"object\"==typeof e?Object.assign({},e):{value:e},t})),splitLine:{show:e.xAxisSplitLineShow,lineStyle:{color:e.xAxisSplitLineStyleColor},interval:e.xAxisSplitLineInterval},splitArea:{show:e.xAxisSplitAreaShow},axisLabel:{show:e.xAxisLabelShow,color:e.xAxisLabelColor,interval:e.xAxisLabelInterval||0,rotate:e.xAxisLabelRotate,width:e.xAxisLabelWidth,overflow:e.xAxisLabelOverflow,fontSize:e.xAxisLabelFontSize,formatter:t=>(\"string\"!=typeof t||\"0\"!==t[0]||isNaN(+t)||(t=(+t).toString()),er(e.xAxisLabelFormatter,t))},axisLine:{show:e.xAxisLineShow,lineStyle:{color:e.xAxisLineStyleColor}},axisTick:{show:e.xAxisTickShow},name:e.xAxisName,nameTextStyle:{fontSize:e.xAxisLabelFontSize,color:e.xAxisLabelColor,align:\"left\"},max:e.xAxisMaxValue||null},yAxis:Fe(c),series:function(t){const o=[],n=t.length,r=e.seriesTypes;for(let i=0;i<n;i++){const n=r[i],{type:a,axisIndex:l}=n||{};let s=Object.assign({type:a,yAxisIndex:l},t[i]),c=e.colors[i];if(!c&&e.colors.length){const t=(i+1)%e.colors.length-1;c=t>0?e.colors[t]:e.colors[0]}if(c||(c=\"#5470C6\"),\"line\"===a){const t={};e.shadowColor&&(t.shadowColor=e.shadowColor,t.shadowBlur=e.shadowBlur,t.shadowOffsetY=e.shadowOffsetY,t.shadowOffsetX=e.shadowOffsetX),s=Object.assign(Object.assign({},s),{symbolSize:e.symbolSize,smooth:e.smooth,itemStyle:{color:c},areaStyle:{color:e.areaGradientShow?{type:\"linear\",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:c},{offset:1,color:e.areaGradientColor||\"transparent\"}],global:!1}:c,opacity:e.areaStyleOpacity},lineStyle:Object.assign({width:e.lineStyleWidth},t)})}if(\"bar\"===a){const{gradientShow:t,gradientColors:o,gradientOffset:n}=e,r={color:c};if(e.barBorderRadius){const t=e.barBorderRadius.split(\",\");if(null==t?void 0:t.length){const e=[];for(const o of t){const t=parseFloat(o);isNaN(t)||e.push(t)}r.borderRadius=e}}t&&(r.color={x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:c},{offset:n,color:o[i]},{offset:1,color:o[i]}]}),s=Object.assign(Object.assign({},s),{barWidth:e.barWidth.value+e.barWidth.suffix,itemStyle:r,label:{show:e.labelShow,fontSize:e.labelFontSize,position:e.labelPosition,color:e.labelColor,width:e.labelWidth,overflow:e.labelOverflow,formatter:t=>{let o=\"\",n=e.labelFormatter;\"\"===n&&(n=\"{c}\");const{seriesName:r,name:i,value:a,data:l}=t||{};return o+=jn(n,{textData:Object.assign({name:i,value:a,a:r,b:i,c:a||0},l)},{useNewline:!0,useSpace:!0}),o}}})}e.isShowMarkLine&&(s.markLine={data:[{type:e.markLineType}]}),o.push(s)}return o}(a)};return u}(e,t,o,a);default:return{}}},cr=(e,t,{fontSize:o=12,graphicConfig:n={},maxValueObj:r={},fontFamily:i=null,componentValues:a=null,callBackMethodMap:l={}})=>Object.assign(Object.assign({},function(e,t,o){return{textStyle:{fontFamily:Fe(t)},toolbox:{show:e.toolboxShow,left:e.toolboxLeft,top:e.toolboxTop,itemSize:e.toolboxItemSize,itemGap:e.toolboxItemGap,feature:{myLocation:{show:!!e.toolboxLocation,title:\"快速定位\",icon:\"path://M512 512m-80 0a80 80 0 1 0 160 0 80 80 0 1 0-160 0Z, M960 480h-33.632C910.752 276.16 747.84 113.248 544 97.632V64a32 32 0 1 0-64 0v33.632C276.16 113.248 113.248 276.16 97.632 480H64a32 32 0 0 0 0 64h33.632C113.248 747.84 276.16 910.752 480 926.368V960a32 32 0 1 0 64 0v-33.632C747.84 910.752 910.752 747.84 926.368 544H960a32 32 0 1 0 0-64zM544 862.368V800a32 32 0 1 0-64 0v62.368C311.424 847.104 176.896 712.576 161.632 544H224a32 32 0 1 0 0-64H161.632C176.896 311.424 311.424 176.896 480 161.632V224a32 32 0 0 0 64 0V161.632c168.576 15.296 303.104 149.792 318.368 318.368H800a32 32 0 1 0 0 64h62.368c-15.264 168.576-149.792 303.104-318.368 318.368z\",onclick(){o.toolboxLocationFun&&o.toolboxLocationFun(e)}},myDownload:{show:e.toolboxDownloadUrl&&e.toolboxDownloadShow,title:\"数据下载\",icon:\"path://M502.010485 765.939573c3.773953 3.719718 8.686846 5.573949 13.596669 5.573949 0.075725 0 0.151449-0.010233 0.227174-0.011256 0.329505 0.016373 0.654916 0.050142 0.988514 0.050142 0.706081 0 1.400906-0.042979 2.087545-0.116657 4.352121-0.366344 8.607028-2.190899 11.961426-5.496178l335.053985-330.166675c7.619538-7.509021 7.709589-19.773346 0.200568-27.393907s-19.774369-7.711636-27.39493-0.201591L536.193005 706.304358 536.193005 50.019207c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 657.032164-306.881342-302.44838c-7.618515-7.509021-19.883863-7.419993-27.393907 0.199545-7.509021 7.619538-7.419993 19.884886 0.199545 27.393907L502.010485 765.939573z, M867.170139 711.020776c-10.698666 0-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 13.054317-10.620895 23.675212-23.676236 23.675212L205.182103 919.486668c-13.054317 0-23.676236-10.620895-23.676236-23.675212L181.505867 730.391962c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 34.416857 28.000728 62.416562 62.417585 62.416562l618.941638 0c34.417881 0 62.417585-27.999704 62.417585-62.416562L886.540302 730.391962C886.541325 719.693296 877.868805 711.020776 867.170139 711.020776z\",onclick(){o.toolboxDownloadShowFun&&o.toolboxDownloadShowFun(e)}},myDataZoom:{show:e.toolboxDataZoomShow,title:\"放大\",icon:\"path://M932.42 902.246667L792 761.793333A403.84 403.84 0 0 0 896 490.666667c0-223.86-181.473333-405.333333-405.333333-405.333334S85.333333 266.806667 85.333333 490.666667s181.473333 405.333333 405.333334 405.333333a403.84 403.84 0 0 0 271.126666-104l140.453334 140.453333a21.333333 21.333333 0 0 0 30.173333-30.173333zM128 490.666667c0-200.293333 162.373333-362.666667 362.666667-362.666667s362.666667 162.373333 362.666666 362.666667-162.373333 362.666667-362.666666 362.666666-362.666667-162.373333-362.666667-362.666666z m512 0a21.333333 21.333333 0 0 1-21.333333 21.333333H512v106.666667a21.333333 21.333333 0 0 1-42.666667 0V512H362.666667a21.333333 21.333333 0 0 1 0-42.666667h106.666666V362.666667a21.333333 21.333333 0 0 1 42.666667 0v106.666666h106.666667a21.333333 21.333333 0 0 1 21.333333 21.333334z\",onclick(){o.toolboxDataZoomShowFun&&o.toolboxDataZoomShowFun(e)}},myInfo:{show:e.toolboxInfoShow,title:\"详情\",icon:\"path://M512.50142 958.397886c-119.320573 0-231.499491-46.465265-315.871087-130.837884C112.258737 743.188406 65.792449 631.010511 65.792449 511.688915c0-119.319549 46.466288-231.499491 130.837884-315.871087C281.002952 111.445208 393.180847 64.979944 512.50142 64.979944s231.499491 46.465265 315.871087 130.837884c84.372619 84.372619 130.837884 196.551538 130.837884 315.871087 0 119.321596-46.465265 231.499491-130.837884 315.871087C744.000911 911.932622 631.821993 958.397886 512.50142 958.397886zM512.50142 105.962334c-223.718271 0-405.726581 182.00831-405.726581 405.726581s182.00831 405.726581 405.726581 405.726581c223.718271 0 405.727605-182.00831 405.727605-405.726581S736.220714 105.962334 512.50142 105.962334z M510.150886 775.953647c-18.107403 0-32.745798-14.678304-32.745798-32.785707L477.405087 452.191846c0-18.108426 14.638395-32.785707 32.745798-32.785707 18.107403 0 32.745798 14.678304 32.745798 32.785707l0 290.976094C542.896684 761.275343 528.258289 775.953647 510.150886 775.953647z M511.357364 296.458969m-45.080731 0a44.054 44.054 0 1 0 90.161463 0 44.054 44.054 0 1 0-90.161463 0Z\",onclick(){o.toolboxInfoShowFun&&o.toolboxInfoShowFun(e)}},mySource:{show:e.toolboxInfoSource,title:\"指标来源\",icon:\"path://M473 71a8 8 0 0 1 8-8h64a8 8 0 0 1 8 8v77.161C722.848 166.622 857.812 301.289 876.729 471H952a8 8 0 0 1 8 8v64a8 8 0 0 1-8 8h-75.053C858.871 721.652 723.515 857.305 553 875.839V951a8 8 0 0 1-8 8h-64a8 8 0 0 1-8-8v-75.161C302.818 857.341 167.659 722.182 149.161 552H72a8 8 0 0 1-8-8v-64a8 8 0 0 1 8-8h77.161C167.659 301.818 302.818 166.659 473 148.161V71z m326 441c0-157.953-128.047-286-286-286S227 354.047 227 512s128.047 286 286 286 286-128.047 286-286z m-286 60c33.137 0 60-26.863 60-60s-26.863-60-60-60-60 26.863-60 60 26.863 60 60 60z\",onclick(){o.toolboxSourceShowFun&&o.toolboxSourceShowFun(e)}}}},title:{text:e.titleText,subtext:e.titleSubtext,textStyle:{fontSize:e.titleFontSize,fontWeight:e.fontWeight,color:e.titleColor},left:e.textAlign},grid:{top:e.gridTop,bottom:e.gridBottom,left:e.gridLeft,right:e.gridRight,containLabel:e.gridContainLabel},color:e.colors}}(e,i,l)),sr(e,t,o,n,r,a,l));export{Zn as formatIndicatorParams,tr as getFieldConfig,Dn as getIndicatorParams,Tn as hasOwn,Nn as lowerCaseIncludes,Cn as runCode,or as setAxisExtremum,cr as transformProps,Xn as useTransformChartDataByAttrKey,Jn as useTransformChartDataByAttrValue,er as useValueFormatter,jn as useVariablesInText};\n","import dayjs from 'dayjs'\r\nimport { cloneDeep } from 'lodash-es'\r\nimport { useVariablesInText, lowerCaseIncludes, hasOwn } from '@ecan-bi/tools'\r\n// import { Big } from 'big.js'\r\nimport { unref } from 'vue'\r\n\r\nexport const handleFormatter = (formatter: string) => {\r\n return formatter.replace(/\\\\n/g, '\\n')\r\n}\r\n\r\nexport const getConditions = (conditions: { [key: string]: any }[]) => {\r\n const result = []\r\n if (conditions?.length) {\r\n for (const item of conditions) {\r\n if (item.conditions) {\r\n result.push(...getConditions(item.conditions))\r\n } else if (item?.dataType === 'component') {\r\n result.push(item)\r\n }\r\n }\r\n }\r\n return result\r\n}\r\nexport const getSqlConditions = (graphicConfig: { [key: string]: any }, renderUsedComponents: { [key: string]: any }[]) => {\r\n const controlList = cloneDeep(graphicConfig?.controlList || [])\r\n const {\r\n classificationList = [],\r\n rowHeaderList = [],\r\n dimensionList = [],\r\n seriesList = [],\r\n leftAxisList = [],\r\n rightAxisList = [],\r\n queryColumnList = [],\r\n indicators = []\r\n } = graphicConfig\r\n handleControlList(controlList, renderUsedComponents)\r\n const sqlConditions = controlList\r\n // console.log('controlList', controlList)\r\n const otherList = [\r\n ...classificationList,\r\n ...rowHeaderList,\r\n ...dimensionList,\r\n ...seriesList,\r\n ...leftAxisList,\r\n ...rightAxisList,\r\n ...queryColumnList,\r\n ...indicators\r\n ]\r\n const conditionList = []\r\n for (const ol of otherList) {\r\n const conditions = getConditions(ol?.conditions || [])\r\n if (conditions?.length) {\r\n const list = conditions\r\n .filter((v: any) => {\r\n const target = getComponent(v, renderUsedComponents)\r\n if (target) {\r\n return v?.dataType === 'component'\r\n }\r\n return false\r\n })\r\n .map((item: any) => {\r\n const target = getComponent(item, renderUsedComponents)\r\n const params: any = {}\r\n if (item?.dateFormat) {\r\n params.format = item.dateFormat\r\n }\r\n return {\r\n conditionKey: item.fieldName,\r\n conditionLabel: item.fieldName,\r\n conditionName: item.fieldName,\r\n conditionValueType: item.fieldType,\r\n id: target.id,\r\n keyName: item.fieldValue,\r\n rule: item.rule,\r\n notGlobal: true,\r\n indexCode: item.indexCode,\r\n typeGuid: item.typeGuid,\r\n indexCodeNum: item.indexCodeNum,\r\n ...params\r\n }\r\n })\r\n if (list?.length) {\r\n for (const l of list) {\r\n if (!conditionList.find(cItem => cItem.keyName === l.keyName)) {\r\n conditionList.push(l)\r\n }\r\n }\r\n }\r\n }\r\n }\r\n const len = conditionList.length\r\n for (let i = 0; i < len; i++) {\r\n const control = conditionList[i]\r\n if (control && !Object.keys(control)?.length) {\r\n continue\r\n }\r\n if (control?.conditionKey === 'parentCode') {\r\n continue\r\n }\r\n const {\r\n id,\r\n keyName,\r\n prop,\r\n format: dateFormat,\r\n dataType = 'component',\r\n customValue\r\n } = control\r\n let alias = keyName || id\r\n if (alias && prop) {\r\n alias += `-${prop}`\r\n }\r\n const sqlCondition: { [key: string]: any } = getConditionItem(control)\r\n setFieldValue({\r\n sqlCondition,\r\n renderUsedComponents,\r\n id,\r\n dateFormat,\r\n prop,\r\n keyName,\r\n dataType,\r\n customValue\r\n })\r\n sqlConditions.push(sqlCondition)\r\n }\r\n // globalCondition=false时,如果全局过滤里面已经配置了该组件的信息,则不用再传globalCondition=false的组件信息\r\n for (let j = sqlConditions.length - 1; j >= 0; j--) {\r\n const item = sqlConditions[j]\r\n if (!item.globalCondition) {\r\n const cond = getConditions(sqlConditions).find(v => v.alias === item.alias && v.globalCondition)\r\n if (cond) {\r\n sqlConditions.splice(j, 1)\r\n }\r\n }\r\n }\r\n return sqlConditions\r\n}\r\n\r\nexport const handleVariableList = (variableList: { [key: string]: any }[], renderUsedComponents: { [key:string]: any }[]) => {\r\n const handleVarList = []\r\n if (variableList?.length) {\r\n for (const item of variableList) {\r\n if (item.variableName) {\r\n const variableItem: any = {\r\n variateName: item.variableName,\r\n globalCondition: item.globalCondition || false,\r\n valueType: item.variableType,\r\n alias: item.keyName || ''\r\n }\r\n setFieldValue({\r\n sqlCondition: variableItem,\r\n renderUsedComponents,\r\n id: item.id,\r\n dateFormat: item.format,\r\n prop: item.dateTypeValue,\r\n keyName: item.keyName,\r\n dataType: item.dataType,\r\n customValue: item.variableValue,\r\n operateType: item.operateType,\r\n operateMode: item.operateMode,\r\n operateValue: item.operateValue\r\n })\r\n if (item.format) {\r\n // 日期格式化\r\n variableItem.dateFormat = item.format\r\n }\r\n if (item.label) {\r\n variableItem.label = item.label\r\n }\r\n handleVarList.push(variableItem)\r\n }\r\n }\r\n }\r\n return handleVarList\r\n}\r\n\r\nfunction getConditionItem (control: { [key:string]:any }) {\r\n const {\r\n id,\r\n keyName,\r\n conditionLabel,\r\n conditionKey,\r\n conditionValueType,\r\n prop,\r\n rule = 'NONE',\r\n notGlobal = false,\r\n indexCode,\r\n indexCodeNum,\r\n typeGuid,\r\n dataType = 'component',\r\n isExtProperty\r\n } = control\r\n let alias = keyName || id\r\n if (alias && prop) {\r\n alias += `-${prop}`\r\n }\r\n return {\r\n rule,\r\n label: conditionLabel,\r\n fieldName: conditionKey,\r\n fieldValue: '', // 在关联控件中取\r\n valueType: conditionValueType,\r\n alias,\r\n globalCondition: !notGlobal,\r\n indexCode,\r\n indexCodeNum,\r\n typeGuid,\r\n dataType,\r\n isExtProperty\r\n }\r\n}\r\n\r\nconst excludeAttr = [\r\n 'keyValue',\r\n 'conditionKey',\r\n 'conditionLabel',\r\n 'conditionName',\r\n 'conditionValueType',\r\n 'customValue',\r\n 'id',\r\n 'keyName'\r\n]\r\nfunction handleControlList (controlList: { [key: string]: any }[], renderUsedComponents: { [key: string]: any }[]) {\r\n if (controlList?.length) {\r\n for (const control of controlList) {\r\n if (control?.conditions) {\r\n handleControlList(control.conditions, renderUsedComponents)\r\n } else {\r\n const {\r\n id,\r\n keyName,\r\n prop,\r\n format: dateFormat,\r\n dataType = 'component',\r\n customValue\r\n } = control\r\n let alias = keyName || id\r\n if (alias && prop) {\r\n alias += `-${prop}`\r\n }\r\n const sqlCondition: { [key: string]: any } = getConditionItem(control)\r\n setFieldValue({\r\n sqlCondition,\r\n renderUsedComponents,\r\n id,\r\n dateFormat,\r\n prop,\r\n keyName,\r\n dataType,\r\n customValue\r\n })\r\n for (const key in sqlCondition) {\r\n control[key] = sqlCondition[key]\r\n }\r\n for (const attr of excludeAttr) {\r\n delete control[attr]\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\nfunction setFieldValue (data: any) {\r\n const {\r\n sqlCondition,\r\n renderUsedComponents,\r\n id,\r\n dateFormat,\r\n prop,\r\n keyName,\r\n dataType,\r\n customValue,\r\n operateValue,\r\n operateMode,\r\n operateType\r\n } = data\r\n const component: any = unref(renderUsedComponents).find((v: { [key: string]: any }) => v.id === id)\r\n // 获取组件属性\r\n const { value, format = 'YYYY-MM-DD', operate, type = '', useCurrentTime } = component || {}\r\n const customFormat = dateFormat || format\r\n if (lowerCaseIncludes(type, 'date')) {\r\n let dateValue\r\n if (useCurrentTime) {\r\n dateValue = dayjs()\r\n } else {\r\n dateValue = dayjs(value)\r\n }\r\n if (operate && value) {\r\n const { mode, type: opType, value: opValue } = operate\r\n if (opValue) {\r\n switch (opType) {\r\n case 'add':\r\n dateValue = dateValue.add(opValue, mode)\r\n break\r\n case 'minus':\r\n dateValue = dateValue.subtract(opValue, mode)\r\n break\r\n }\r\n }\r\n }\r\n if (operateValue && operateMode && operateType) {\r\n switch (operateType) {\r\n case 'add':\r\n dateValue = dateValue.add(operateValue, operateMode)\r\n break\r\n case 'minus':\r\n dateValue = dateValue.subtract(operateValue, operateMode)\r\n break\r\n }\r\n }\r\n sqlCondition.fieldValue = dateValue?.format(customFormat) || ''\r\n sqlCondition.dateFormat = customFormat\r\n } else if (type === 'ecanRangePicker') {\r\n const { interval, intervalUnit, startTime, endTime } = component || {}\r\n let propValue = prop\r\n if (!prop) {\r\n const knList = keyName?.split('-')\r\n if (knList?.length) {\r\n propValue = knList[knList.length - 1]\r\n }\r\n }\r\n if (!propValue) {\r\n return\r\n }\r\n let _time = null\r\n if (useCurrentTime) {\r\n if (propValue === 'startTime') {\r\n _time = dayjs().subtract(interval, intervalUnit)\r\n } else if (propValue === 'endTime') {\r\n _time = dayjs()\r\n }\r\n }\r\n if (component[propValue]) {\r\n _time = dayjs(component[propValue])\r\n }\r\n if (operate) {\r\n const { type, value, mode } = operate\r\n switch (type) {\r\n case 'add':\r\n _time = _time ? _time.add(value, mode) : _time\r\n break\r\n case 'minus':\r\n _time = _time ? _time.subtract(value, mode) : _time\r\n }\r\n }\r\n if (operateValue && operateMode && operateType) {\r\n if (operateValue === 'rangeValue') {\r\n // 自定义偏移,目前只有范围差\r\n if (startTime && endTime) {\r\n const interval = dayjs(endTime).diff(dayjs(startTime), operateMode) + 1\r\n switch (operateType) {\r\n case 'add':\r\n _time = _time ? _time.add(interval, operateMode) : _time\r\n break\r\n case 'minus':\r\n _time = _time ? _time.subtract(interval, operateMode) : _time\r\n }\r\n }\r\n } else if (!isNaN(+operateValue)) {\r\n switch (operateType) {\r\n case 'add':\r\n _time = _time ? _time.add(operateValue, operateMode) : _time\r\n break\r\n case 'minus':\r\n _time = _time ? _time.subtract(operateValue, operateMode) : _time\r\n }\r\n }\r\n }\r\n if (_time) {\r\n sqlCondition.fieldValue = _time?.format(customFormat)\r\n }\r\n\r\n if (propValue === 'rangeValue') {\r\n // 全局变量的日期范围间隔值计算\r\n if (startTime && endTime) {\r\n const step: any = getFormatStep(customFormat)\r\n if (step) {\r\n sqlCondition.fieldValue = dayjs(endTime).diff(dayjs(startTime), step) + 1\r\n }\r\n }\r\n }\r\n sqlCondition.dateFormat = customFormat\r\n } else {\r\n const variables = value && (value).match(/\\{(.+?)\\}/g)\r\n if (variables?.length) {\r\n // 使用了表达式\r\n sqlCondition.fieldValue = ''\r\n } else {\r\n sqlCondition.fieldValue = value\r\n }\r\n }\r\n if (dataType === '') {\r\n sqlCondition.fieldValue = customValue || ''\r\n }\r\n}\r\n\r\nexport const getEventName = (type: string) => {\r\n let event = ''\r\n switch (type) {\r\n case 'ecanDatePicker':\r\n case 'ecanRangePicker':\r\n event = 'dateChange'\r\n break\r\n case 'ecanTimeDisplay':\r\n event = 'timeChange'\r\n break\r\n case 'ecanSelect':\r\n case 'ecanTreeSelect':\r\n event = 'selectChange'\r\n break\r\n case 'ecanTabs':\r\n event = 'tabChange'\r\n break\r\n case 'ecanInput':\r\n event = 'inputChange'\r\n break\r\n case 'ecanCheckbox':\r\n case 'ecanRadio':\r\n event = 'checkboxChange'\r\n break\r\n case 'ecanText':\r\n event = 'valueChange'\r\n break\r\n case 'ecanImage':\r\n event = 'click'\r\n break\r\n default:\r\n break\r\n }\r\n return event\r\n}\r\n\r\nfunction getComponent (data: any, componentList: any) {\r\n if (data.componentId) {\r\n return componentList.find((f: any) => f.id === data.componentId)\r\n } else {\r\n if (data.dataType === 'component') {\r\n if (data.fieldType === 'DATE') {\r\n const dateList = data.fieldValue?.split('-')\r\n if (dateList?.length) {\r\n return dateList[0]\r\n } else {\r\n return null\r\n }\r\n } else {\r\n return componentList.find((f: any) => f.keyName === data.fieldValue)\r\n }\r\n } else {\r\n return null\r\n }\r\n }\r\n}\r\n\r\nexport function getFormatStep (format: string) {\r\n const value = format.split('-')\r\n let formatStep = ''\r\n if (value?.length) {\r\n switch (value[value.length - 1]) {\r\n case 'YYYY':\r\n formatStep = 'year'\r\n break\r\n case 'MM':\r\n formatStep = 'month'\r\n break\r\n case 'DD':\r\n formatStep = 'day'\r\n break\r\n default:\r\n break\r\n }\r\n }\r\n return formatStep\r\n}\r\n// 格式化\r\nexport function handleFormat (row: any, item: any) {\r\n let value = row[item.label]\r\n if ((value || value === 0) && value !== '') {\r\n // 值不为空\r\n if (item.dataFormat && item.dataFormat.length !== 0) {\r\n // 保留两位小数需得提前执行\r\n if (item.dataFormat.includes('#.00')) {\r\n // 先执行保留小数\r\n if (typeof value !== 'number') {\r\n value = value.replace(/,/g, '')\r\n }\r\n // 排除输入为 字符类型 ,保留不转化\r\n if (Number(value) || Number(value) === 0) {\r\n const retentiondigit = item.retentiondigit ? item.retentiondigit - 0 : item.retentiondigit\r\n value = Number(value).toFixed(retentiondigit)\r\n }\r\n }\r\n if (item.dataFormat.includes('#,000')) {\r\n // 千分位处理部分\r\n const str = value.toString()\r\n if (!str.includes(',')) {\r\n value = formatQfw(str)\r\n }\r\n }\r\n }\r\n }\r\n return value\r\n}\r\n// 千分位转换\r\nexport function formatQfw (str: string) {\r\n let result = ''\r\n let str1 = ''\r\n let str2 = ''\r\n let value = ''\r\n if (str.indexOf('.') > -1) {\r\n str1 = str.split('.')[0] // 千分位处理部分\r\n str2 = str.split('.')[1] // 小数值\r\n } else {\r\n str1 = str\r\n }\r\n let index = 0\r\n let len = 0\r\n len = str1.length - 1\r\n while (len >= 0) {\r\n index % 3 === 0 && index !== 0\r\n ? str1[len] === '-'\r\n ? (result += str1[len])\r\n : (result += ',' + str1[len])\r\n : (result += str1[len])\r\n len--\r\n index++\r\n }\r\n result = result\r\n .split('')\r\n .reverse()\r\n .join('')\r\n if (str.indexOf('.') > -1) {\r\n value = result + '.' + str2\r\n } else {\r\n value = result\r\n }\r\n return value\r\n}\r\n// 根据指标获取其他参数-用于条件查询\r\nexport async function getIndicatorParams ({ graphicConfig, request, INDICATOR_URL = '', PAGE_ID, dataSourceId }) {\r\n try {\r\n const { leftAxisList = [], rightAxisList = [], queryColumnList = [], indicators = [] } = unref(graphicConfig)\r\n const otherList = [...leftAxisList, ...rightAxisList, ...queryColumnList, ...indicators]\r\n const idMap: any = {}\r\n for (const item of otherList) {\r\n const { indexCode = '', parentId = '' } = item\r\n if (parentId && !hasOwn(item, 'calcType') && !idMap[parentId]) {\r\n idMap[parentId] = indexCode\r\n }\r\n }\r\n if (Object.keys(idMap)?.length) {\r\n const promiseList = []\r\n for (const id in idMap) {\r\n promiseList.push(\r\n new Promise((resolve, reject) => {\r\n request\r\n .post(\r\n `${INDICATOR_URL}/diagram/hrpIndexWithComplex`,\r\n {\r\n pageId: PAGE_ID,\r\n indexGuid: id,\r\n indexCode: idMap[id],\r\n dataSourceId\r\n }\r\n )\r\n .then((res: any) => {\r\n const { success, data = [] } = res.data\r\n if (success && data?.dataViewColumns?.length) {\r\n resolve(data.dataViewColumns)\r\n } else {\r\n reject(data)\r\n }\r\n })\r\n .catch((e) => {\r\n reject(e)\r\n })\r\n })\r\n )\r\n }\r\n const res = await Promise.all(promiseList)\r\n const resultList = res.reduce((a: any, b: any) =>\r\n a.filter((c: any) => b.find((v: any) => v.typeGuid === c.typeGuid))\r\n )\r\n return resultList.filter((v: any) => v.typeGuid)\r\n }\r\n } catch (err) { }\r\n return ([])\r\n}\r\n/**\r\n * 图表的图例格式化\r\n * @param format 表达式\r\n * @param textData 传入参数\r\n * @returns 显示的图例文本\r\n */\r\nexport const getLegendFormat = (format: string = '', textData: any) => {\r\n const variables = format.match(/\\{(.+?)\\}/g)\r\n // 换行符个数\r\n const lineBreakCount = format.split('\\n')?.length - 1\r\n let lineBreakStr = ''\r\n if (lineBreakCount) {\r\n for (let i = 0; i < lineBreakCount; i++) {\r\n lineBreakStr += '\\n'\r\n }\r\n }\r\n let text = format\r\n if (variables?.length) {\r\n for (const item of variables) {\r\n const str = useVariablesInText(\r\n item,\r\n {\r\n textData\r\n },\r\n {\r\n useNewline: false,\r\n useSpace: false\r\n }\r\n )\r\n if (str) {\r\n text = text.replace(item, str)\r\n }\r\n }\r\n return `${lineBreakStr}{text|${text}}`\r\n } else {\r\n return format\r\n }\r\n}\r\nexport const mapScope = (scope: 'DIM' | 'IDX' | 'BUILT_IN_DIM') => {\r\n const map = {\r\n DIM: '维度',\r\n BUILT_IN_DIM: '维度',\r\n IDX: '指标',\r\n BUILT_IN_IDX: '指标',\r\n FIELD: '数据集'\r\n }\r\n return map[scope]\r\n}\r\nexport const mapDataSetScope = (scope: '0' | '1' | '2') => {\r\n const map = {\r\n 0: '文本',\r\n 1: '数值',\r\n 2: '日期'\r\n\r\n }\r\n return map[scope]\r\n}\r\n\r\nexport const getLoadType = (type: string) => {\r\n if (!type) {\r\n return ''\r\n }\r\n const list = type.split(',')\r\n const result = []\r\n for (const item of list) {\r\n if (item === '0') {\r\n result.push('手工录入')\r\n } else if (item === '1') {\r\n result.push('系统取数')\r\n } else if (item === '2') {\r\n result.push('运算加工')\r\n }\r\n }\r\n return result.join('、')\r\n}\r\n\r\nexport const getUseType = (type: string) => {\r\n if (!type) {\r\n return ''\r\n }\r\n const list = type.split(',')\r\n const result = []\r\n for (const item of list) {\r\n switch (item) {\r\n case '1':\r\n result.push('人力系统')\r\n break\r\n case '2':\r\n result.push('绩效系统')\r\n break\r\n case '3':\r\n result.push('预算系统')\r\n break\r\n case '4':\r\n result.push('财务系统')\r\n break\r\n case '5':\r\n result.push('成本系统')\r\n break\r\n case '6':\r\n result.push('物流系统')\r\n break\r\n case '7':\r\n result.push('固定资产系统')\r\n break\r\n case '8':\r\n result.push('OA办公系统')\r\n break\r\n case '9':\r\n result.push('电子档案系统')\r\n break\r\n case '10':\r\n result.push('个人收入系统')\r\n break\r\n case '11':\r\n result.push('奖金二次分配系统')\r\n break\r\n case '12':\r\n result.push('财务管理系统')\r\n break\r\n case '13':\r\n result.push('报销系统')\r\n break\r\n case '14':\r\n result.push('科研管理系统')\r\n break\r\n case '15':\r\n result.push('审计系统')\r\n break\r\n case '16':\r\n result.push('分组器系统')\r\n break\r\n case '17':\r\n result.push('消毒供应系统')\r\n break\r\n default:\r\n break\r\n }\r\n }\r\n return result.join('、')\r\n}\r\n\r\nexport const getSourceType = (dataTo: string) => {\r\n if (dataTo === '0') {\r\n return '指标库'\r\n } else if (dataTo === '1') {\r\n return '视图'\r\n } else if (dataTo === '2') {\r\n return '数据集'\r\n } else {\r\n return '其他'\r\n }\r\n}\r\n","<template>\n <div class=\"config-modal\" v-if=\"!isUpdate\">\n <div class=\"config-modal-left\" v-if=\"!isPivotTable\">\n <data-list />\n </div>\n <div class=\"config-modal-right\" :class=\"isPivotTable ? 'full' : ''\">\n <data-config ref=\"dataConfigRef\" :sqlConditions=\"sqlConditions\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, unref, ref, provide, nextTick, PropType } from 'vue'\nimport { cloneDeep } from 'lodash-es'\nimport {\n DATA_LIST,\n INDICATOR_TOKEN,\n GRAPHIC_CONFIG,\n CHARTS_OPTIONS,\n TABLE_OPTIONS,\n SOURCE_TYPE,\n SHOW_STYLE_CONFIG,\n UPDATE_GRAPHIC_CONFIG,\n UPDATE_CHARTS_OPTIONS,\n UPDATE_TABLE_OPTIONS,\n SELECTED_COMPONENT,\n REQUEST,\n RENDER_USED_COMPONENTS,\n UPDATE_USED_COMPONENT,\n UPDATE_COMPONENTS_CONFIG,\n MAP_ATTRIBUTE_PROPS,\n PAGE_CONFIG,\n IS_PIVOT_TABLE,\n IS_IFRAME_MODE\n} from '@/utils/constant'\nimport propsMap from './data-config/style-config-group/chart-props'\nimport tableProps from './data-config/style-config-group/table-props'\nimport loadAsyncComponent from '@/utils/loadAsyncComponent'\nimport { getSqlConditions } from '@/utils/util'\nexport default defineComponent({\n name: 'IndicatorLibrary',\n components: {\n DataList: loadAsyncComponent(() => import('./data-list')),\n DataConfig: loadAsyncComponent(() => import('./data-config'))\n },\n props: {\n isShowStyleConfig: {\n // 是否显示样式配置\n type: Boolean,\n default: false\n },\n sourceType: {\n // 数据源类型\n type: String,\n default: ''\n },\n indicatorToken: {\n // 指标库token\n type: String,\n default: ''\n },\n selectedComponent: {\n // 当前组件\n type: Object,\n default: () => {}\n },\n request: {\n // 外部请求方法\n default: null\n },\n renderUsedComponentList: {\n // 当前画布上渲染的组件\n type: Array as PropType<any[]>,\n default: () => []\n },\n mapAttributeProps: {\n type: Object,\n default: () => ({\n startTime: {\n label: '开始时间值',\n component: 'time-pick'\n },\n endTime: {\n label: '结束时间值',\n component: 'time-pick'\n }\n })\n },\n pageConfig: {\n type: Object,\n default: () => {}\n },\n isIframeMode: {\n type: Boolean,\n default: false\n }\n },\n setup (props, { expose, emit }) {\n const dataConfigRef = ref()\n const isUpdate = ref(false)\n const sourceType = computed(() => props.sourceType)\n const indicatorToken = computed(() => props.indicatorToken || '')\n const component = computed(() => props.selectedComponent)\n const usedComponentList = computed(() => props.renderUsedComponentList)\n const tableColumns = computed(\n () => unref(component)?.tableColumns || []\n )\n const isShowStyleConfig = computed(() => props.isShowStyleConfig)\n const isPivotTable = computed(() => unref(component)?.type?.includes('PivotTable'))\n // 图形化配置\n let graphicConfig = unref(component).graphicConfig\n ? cloneDeep(unref(component).graphicConfig)\n : ref({})\n graphicConfig = ref(graphicConfig)\n // 图表样式配置\n let chartsOptions = unref(component).chartsOptions\n ? cloneDeep(unref(component).chartsOptions)\n : ref(cloneDeep(propsMap.line))\n chartsOptions = ref(chartsOptions)\n let tableOptions = unref(component).tableOptions\n ? cloneDeep(unref(component).tableOptions)\n : ref(cloneDeep(tableProps))\n tableOptions = ref(tableOptions)\n // 设置数据列表\n const dataList = ref<{ [key: string]: any }[]>([])\n const setDataList = (list: { [key: string]: any }[]) => {\n dataList.value = list\n }\n const updateGraphicConfig = (config: { [key: string]: any }) => {\n graphicConfig.value = {\n ...unref(graphicConfig),\n ...unref(config)\n }\n }\n const updateChartsOptions = (\n options: { [key: string]: any },\n isMerge: Boolean = true\n ) => {\n if (isMerge) {\n chartsOptions.value = {\n ...unref(chartsOptions),\n ...unref(options)\n }\n } else {\n chartsOptions.value = {\n ...unref(options)\n }\n }\n }\n const updateTableOptions = (options: { [key: string]: any }) => {\n tableOptions.value = {\n ...unref(tableOptions),\n ...unref(options)\n }\n }\n const getDataList = () => dataList\n const updateIndicatorData = () => {\n isUpdate.value = true\n if (unref(component).graphicConfig) {\n graphicConfig.value = cloneDeep(unref(component).graphicConfig)\n }\n if (unref(component).chartsOptions) {\n chartsOptions.value = cloneDeep(unref(component).chartsOptions || propsMap.line)\n }\n nextTick(() => {\n isUpdate.value = false\n })\n }\n const getIndicatorData = () => {\n return {\n graphicConfig: unref(graphicConfig),\n chartsOptions: unref(chartsOptions),\n tableOptions: unref(tableOptions),\n tableColumns: unref(tableColumns),\n columnsConfigMap: unref(component).columnsConfigMap\n }\n }\n const getPivotGraphicData = () => {\n const pivotTableData = unref(dataConfigRef).getSaveData()\n return {\n ...pivotTableData,\n graphicConfig: unref(graphicConfig)\n }\n }\n (window as any).getIndicatorData = getIndicatorData;\n (window as any).getPivotGraphicData = getPivotGraphicData\n if (props.request) {\n provide(REQUEST, props.request)\n }\n provide(DATA_LIST, {\n setDataList,\n getDataList\n })\n\n const updateUsedComponent = (data: any) => {\n emit('updateUsedComponent', data)\n }\n const updateComponentsConfig = (ids: string[], controlList: any[]) => {\n emit('updateComponentsConfig', ids, { controlList })\n }\n\n const sqlConditions = computed(() => getSqlConditions(graphicConfig.value, usedComponentList.value))\n\n provide(IS_PIVOT_TABLE, isPivotTable)\n provide(IS_IFRAME_MODE, props.isIframeMode)\n provide(SELECTED_COMPONENT, component)\n provide(GRAPHIC_CONFIG, graphicConfig)\n provide(CHARTS_OPTIONS, chartsOptions)\n provide(TABLE_OPTIONS, tableOptions)\n provide(SOURCE_TYPE, sourceType)\n provide(SHOW_STYLE_CONFIG, isShowStyleConfig)\n provide(INDICATOR_TOKEN, indicatorToken)\n provide(UPDATE_GRAPHIC_CONFIG, updateGraphicConfig)\n provide(UPDATE_CHARTS_OPTIONS, updateChartsOptions)\n provide(UPDATE_TABLE_OPTIONS, updateTableOptions)\n provide(RENDER_USED_COMPONENTS, usedComponentList)\n provide(UPDATE_USED_COMPONENT, updateUsedComponent)\n provide(UPDATE_COMPONENTS_CONFIG, updateComponentsConfig)\n provide(MAP_ATTRIBUTE_PROPS, props.mapAttributeProps)\n provide(PAGE_CONFIG, props.pageConfig)\n expose({\n graphicConfig,\n chartsOptions,\n updateIndicatorData\n })\n return {\n sqlConditions,\n isUpdate,\n isPivotTable,\n dataConfigRef\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n.config-modal {\n width: 100%;\n height: 100%;\n display: flex;\n padding: 10px;\n}\n\n.config-modal-left {\n width: 300px;\n height: 100%;\n margin-right: 10px;\n padding: 10px;\n}\n\n.config-modal-right {\n width: calc(100% - 310px);\n &.full {\n width: 100%;\n }\n}\n</style>\n","<template>\n <div class=\"config-modal\" v-if=\"!isUpdate\">\n <div class=\"config-modal-left\" v-if=\"!isPivotTable\">\n <data-list />\n </div>\n <div class=\"config-modal-right\" :class=\"isPivotTable ? 'full' : ''\">\n <data-config ref=\"dataConfigRef\" :sqlConditions=\"sqlConditions\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, unref, ref, provide, nextTick, PropType } from 'vue'\nimport { cloneDeep } from 'lodash-es'\nimport {\n DATA_LIST,\n INDICATOR_TOKEN,\n GRAPHIC_CONFIG,\n CHARTS_OPTIONS,\n TABLE_OPTIONS,\n SOURCE_TYPE,\n SHOW_STYLE_CONFIG,\n UPDATE_GRAPHIC_CONFIG,\n UPDATE_CHARTS_OPTIONS,\n UPDATE_TABLE_OPTIONS,\n SELECTED_COMPONENT,\n REQUEST,\n RENDER_USED_COMPONENTS,\n UPDATE_USED_COMPONENT,\n UPDATE_COMPONENTS_CONFIG,\n MAP_ATTRIBUTE_PROPS,\n PAGE_CONFIG,\n IS_PIVOT_TABLE,\n IS_IFRAME_MODE\n} from '@/utils/constant'\nimport propsMap from './data-config/style-config-group/chart-props'\nimport tableProps from './data-config/style-config-group/table-props'\nimport loadAsyncComponent from '@/utils/loadAsyncComponent'\nimport { getSqlConditions } from '@/utils/util'\nexport default defineComponent({\n name: 'IndicatorLibrary',\n components: {\n DataList: loadAsyncComponent(() => import('./data-list')),\n DataConfig: loadAsyncComponent(() => import('./data-config'))\n },\n props: {\n isShowStyleConfig: {\n // 是否显示样式配置\n type: Boolean,\n default: false\n },\n sourceType: {\n // 数据源类型\n type: String,\n default: ''\n },\n indicatorToken: {\n // 指标库token\n type: String,\n default: ''\n },\n selectedComponent: {\n // 当前组件\n type: Object,\n default: () => {}\n },\n request: {\n // 外部请求方法\n default: null\n },\n renderUsedComponentList: {\n // 当前画布上渲染的组件\n type: Array as PropType<any[]>,\n default: () => []\n },\n mapAttributeProps: {\n type: Object,\n default: () => ({\n startTime: {\n label: '开始时间值',\n component: 'time-pick'\n },\n endTime: {\n label: '结束时间值',\n component: 'time-pick'\n }\n })\n },\n pageConfig: {\n type: Object,\n default: () => {}\n },\n isIframeMode: {\n type: Boolean,\n default: false\n }\n },\n setup (props, { expose, emit }) {\n const dataConfigRef = ref()\n const isUpdate = ref(false)\n const sourceType = computed(() => props.sourceType)\n const indicatorToken = computed(() => props.indicatorToken || '')\n const component = computed(() => props.selectedComponent)\n const usedComponentList = computed(() => props.renderUsedComponentList)\n const tableColumns = computed(\n () => unref(component)?.tableColumns || []\n )\n const isShowStyleConfig = computed(() => props.isShowStyleConfig)\n const isPivotTable = computed(() => unref(component)?.type?.includes('PivotTable'))\n // 图形化配置\n let graphicConfig = unref(component).graphicConfig\n ? cloneDeep(unref(component).graphicConfig)\n : ref({})\n graphicConfig = ref(graphicConfig)\n // 图表样式配置\n let chartsOptions = unref(component).chartsOptions\n ? cloneDeep(unref(component).chartsOptions)\n : ref(cloneDeep(propsMap.line))\n chartsOptions = ref(chartsOptions)\n let tableOptions = unref(component).tableOptions\n ? cloneDeep(unref(component).tableOptions)\n : ref(cloneDeep(tableProps))\n tableOptions = ref(tableOptions)\n // 设置数据列表\n const dataList = ref<{ [key: string]: any }[]>([])\n const setDataList = (list: { [key: string]: any }[]) => {\n dataList.value = list\n }\n const updateGraphicConfig = (config: { [key: string]: any }) => {\n graphicConfig.value = {\n ...unref(graphicConfig),\n ...unref(config)\n }\n }\n const updateChartsOptions = (\n options: { [key: string]: any },\n isMerge: Boolean = true\n ) => {\n if (isMerge) {\n chartsOptions.value = {\n ...unref(chartsOptions),\n ...unref(options)\n }\n } else {\n chartsOptions.value = {\n ...unref(options)\n }\n }\n }\n const updateTableOptions = (options: { [key: string]: any }) => {\n tableOptions.value = {\n ...unref(tableOptions),\n ...unref(options)\n }\n }\n const getDataList = () => dataList\n const updateIndicatorData = () => {\n isUpdate.value = true\n if (unref(component).graphicConfig) {\n graphicConfig.value = cloneDeep(unref(component).graphicConfig)\n }\n if (unref(component).chartsOptions) {\n chartsOptions.value = cloneDeep(unref(component).chartsOptions || propsMap.line)\n }\n nextTick(() => {\n isUpdate.value = false\n })\n }\n const getIndicatorData = () => {\n return {\n graphicConfig: unref(graphicConfig),\n chartsOptions: unref(chartsOptions),\n tableOptions: unref(tableOptions),\n tableColumns: unref(tableColumns),\n columnsConfigMap: unref(component).columnsConfigMap\n }\n }\n const getPivotGraphicData = () => {\n const pivotTableData = unref(dataConfigRef).getSaveData()\n return {\n ...pivotTableData,\n graphicConfig: unref(graphicConfig)\n }\n }\n (window as any).getIndicatorData = getIndicatorData;\n (window as any).getPivotGraphicData = getPivotGraphicData\n if (props.request) {\n provide(REQUEST, props.request)\n }\n provide(DATA_LIST, {\n setDataList,\n getDataList\n })\n\n const updateUsedComponent = (data: any) => {\n emit('updateUsedComponent', data)\n }\n const updateComponentsConfig = (ids: string[], controlList: any[]) => {\n emit('updateComponentsConfig', ids, { controlList })\n }\n\n const sqlConditions = computed(() => getSqlConditions(graphicConfig.value, usedComponentList.value))\n\n provide(IS_PIVOT_TABLE, isPivotTable)\n provide(IS_IFRAME_MODE, props.isIframeMode)\n provide(SELECTED_COMPONENT, component)\n provide(GRAPHIC_CONFIG, graphicConfig)\n provide(CHARTS_OPTIONS, chartsOptions)\n provide(TABLE_OPTIONS, tableOptions)\n provide(SOURCE_TYPE, sourceType)\n provide(SHOW_STYLE_CONFIG, isShowStyleConfig)\n provide(INDICATOR_TOKEN, indicatorToken)\n provide(UPDATE_GRAPHIC_CONFIG, updateGraphicConfig)\n provide(UPDATE_CHARTS_OPTIONS, updateChartsOptions)\n provide(UPDATE_TABLE_OPTIONS, updateTableOptions)\n provide(RENDER_USED_COMPONENTS, usedComponentList)\n provide(UPDATE_USED_COMPONENT, updateUsedComponent)\n provide(UPDATE_COMPONENTS_CONFIG, updateComponentsConfig)\n provide(MAP_ATTRIBUTE_PROPS, props.mapAttributeProps)\n provide(PAGE_CONFIG, props.pageConfig)\n expose({\n graphicConfig,\n chartsOptions,\n updateIndicatorData\n })\n return {\n sqlConditions,\n isUpdate,\n isPivotTable,\n dataConfigRef\n }\n }\n})\n</script>\n\n<style scoped lang=\"less\">\n.config-modal {\n width: 100%;\n height: 100%;\n display: flex;\n padding: 10px;\n}\n\n.config-modal-left {\n width: 300px;\n height: 100%;\n margin-right: 10px;\n padding: 10px;\n}\n\n.config-modal-right {\n width: calc(100% - 310px);\n &.full {\n width: 100%;\n }\n}\n</style>\n","import { withInstall } from '@/utils/withInstall'\r\nimport IndicatorLibrary from './IndicatorLibrary.vue'\r\nexport const EcanIndicatorLibrary = withInstall(IndicatorLibrary)\r\nexport default EcanIndicatorLibrary\r\n","import { lowerCaseIncludes, hasOwn } from '@ecan-bi/tools'\r\nimport {\r\n INDICATOR_URL\r\n} from '@/utils/constant'\r\n\r\nexport const useIndicatorData = (props: { [key:string]: any } = {}) => {\r\n const handleQueryColumn = (queryColumn: { [key:string]: any } = {}) => {\r\n const { label, name, location, show, indexCode, typeGuid } = queryColumn\r\n return {\r\n label,\r\n columnName: name,\r\n location,\r\n show,\r\n calcType: 'COLUMN',\r\n hrpIndexCode: indexCode,\r\n typeGuid\r\n }\r\n }\r\n\r\n const handleParams = (params: any) => {\r\n if (hasOwn(params, 'dataType')) {\r\n if (params.fieldType === 'DATE') {\r\n params.label = params.fieldName\r\n if (params.dataType === 'component') {\r\n params.fieldValue = '${' + params.fieldValue + '}'\r\n }\r\n }\r\n delete params.dataType\r\n }\r\n if (hasOwn(params, 'activeKey')) {\r\n delete params.activeKey\r\n }\r\n if (hasOwn(params, 'radioValue')) {\r\n delete params.radioValue\r\n }\r\n }\r\n // 递归格式化conditions的数据\r\n const handleConditions = (list: { [key: string]: any } []) => {\r\n const result = []\r\n if (list?.length) {\r\n list.forEach((item) => {\r\n if (item.join && item.conditions) {\r\n const isSameLevel = !item.conditions.some((v: any) => v.join && v.conditions)\r\n item.conditions.forEach((cs: any, index: number) => {\r\n handleParams(cs)\r\n if (isSameLevel) {\r\n if (index < item.conditions.length - 1) {\r\n result.push({\r\n join: item.join,\r\n ...cs\r\n })\r\n } else {\r\n result.push(cs)\r\n }\r\n } else {\r\n if (cs.join && cs.conditions) {\r\n result.push({\r\n conditions: handleConditions([cs]),\r\n join: item.join\r\n })\r\n } else {\r\n result.push(cs)\r\n }\r\n }\r\n })\r\n } else {\r\n handleParams(item)\r\n result.push(item)\r\n }\r\n })\r\n }\r\n return result\r\n }\r\n\r\n const handleIndicator = (indicator: { [key:string]: any } = {}) => {\r\n const {\r\n label,\r\n name,\r\n location,\r\n show,\r\n indexCode,\r\n calcType = 'COLUMN',\r\n builtInFormula,\r\n builtInValueSource,\r\n builtInCalcWay,\r\n formula,\r\n conditions,\r\n aggregate\r\n } = indicator\r\n let conditionData\r\n if (conditions) {\r\n conditionData = handleConditions(conditions)\r\n }\r\n return {\r\n label: label.trim(),\r\n columnName: name,\r\n location,\r\n show,\r\n calcType,\r\n hrpIndexCode: indexCode,\r\n aggregate,\r\n builtInFormula,\r\n builtInValueSource,\r\n builtInCalcWay,\r\n formula,\r\n conditions: conditionData\r\n }\r\n }\r\n\r\n return async () => {\r\n const { graphicConfig, type, request, isGroupTable } = props\r\n // 全部属性, 为了属性可拓展,所以在设计器中自由添加\r\n let {\r\n source,\r\n dataViewId,\r\n plugin = '1', // 插件类型\r\n layer, // 后台图表类型,值分0,1\r\n chartType, // 前端图表类型,实测没用\r\n classificationList = [],\r\n seriesList = [],\r\n leftAxisList = [],\r\n rightAxisList = [],\r\n queryColumnList = [],\r\n indicators = [],\r\n // controlList = [],\r\n dataSourceId, // 所属数据源ID\r\n idxLibMode, // 指标库模式, source= INDICATOR_LIB时候必填, NORMAL_YEAR_TABLE = 普通年表, WITH_DATE_DIM_TABLE = 带有时间维度表\r\n preview = false, // 预览开关\r\n sqlConditions = [],\r\n rowHeaderList = []\r\n } = graphicConfig || {}\r\n // 图类型,1=表 2=图\r\n if (layer == null) {\r\n if (lowerCaseIncludes(type, ['table', 'card'])) {\r\n layer = '1'\r\n } else {\r\n layer = '2'\r\n }\r\n }\r\n // console.log('classificationList', classificationList)\r\n // console.log('seriesList', seriesList)\r\n // console.log('leftAxisList', leftAxisList)\r\n // console.log('rightAxisList', rightAxisList)\r\n // console.log('indicators', indicators)\r\n // console.log('controlList', controlList)\r\n // 重点处理 classificationList、seriesList、leftAxisList、rightAxisList、indicators\r\n // classificationList (取第一项) => classification\r\n let classification: Object\r\n if (Array.isArray(classificationList) && classificationList.length > 0) {\r\n const len = classificationList.length\r\n for (let i = 0; i < len; i++) {\r\n const item = classificationList[i] || {}\r\n const { label = '', name = '', show = false, sort, customGroup, conditions, typeGuid } = item\r\n // 如果是 show 直接提取 classification,停止遍历\r\n if (show || len === 1) {\r\n classification = {\r\n label: label.trim(),\r\n columnName: name,\r\n show,\r\n sort,\r\n customGroup,\r\n typeGuid,\r\n conditions: handleConditions(conditions)\r\n }\r\n break\r\n }\r\n }\r\n }\r\n // seriesList (取第一项) => series\r\n let series: Object\r\n if (Array.isArray(seriesList) && seriesList.length > 0) {\r\n const len = seriesList.length\r\n for (let i = 0; i < len; i++) {\r\n const item = seriesList[i] || {}\r\n const { label = '', name = '', show = false, sort, customGroup, conditions, typeGuid } = item\r\n // 如果是 show 直接提取 seriesList,停止遍历\r\n if (show || len === 1) {\r\n series = {\r\n label: label.trim(),\r\n columnName: name,\r\n show,\r\n sort,\r\n customGroup,\r\n conditions: handleConditions(conditions),\r\n typeGuid\r\n }\r\n break\r\n }\r\n }\r\n }\r\n // 行表头\r\n const rowHeaders = []\r\n if (Array.isArray(rowHeaderList) && rowHeaderList.length > 0) {\r\n const len = rowHeaderList.length\r\n for (let i = 0; i < len; i++) {\r\n const item = rowHeaderList[i] || {}\r\n const { label = '', name = '', show = false, sort, customGroup, conditions, typeGuid } = item\r\n rowHeaders.push({\r\n typeGuid,\r\n label: label.trim(),\r\n columnName: name,\r\n show,\r\n sort,\r\n customGroup,\r\n conditions: handleConditions(conditions)\r\n })\r\n }\r\n }\r\n // queryColumnList => queryColumns\r\n const queryColumns = []\r\n queryColumnList?.forEach((queryColumn: { [key:string]: any }) => {\r\n queryColumns.push(handleQueryColumn(queryColumn))\r\n })\r\n\r\n // leftAxisList + rightAxisList + indicators => indicatorList\r\n const indicatorList = []\r\n leftAxisList?.forEach((leftAxis: { [key:string]: any }) => {\r\n leftAxis.location = 'LEFT'\r\n indicatorList.push(handleIndicator(leftAxis))\r\n })\r\n rightAxisList?.forEach((rightAxis: { [key:string]: any }) => {\r\n rightAxis.location = 'RIGHT'\r\n indicatorList.push(handleIndicator(rightAxis))\r\n })\r\n indicators?.forEach((indicator: { [key:string]: any }) => {\r\n indicator.location = 'LEFT'\r\n indicatorList.push(handleIndicator(indicator))\r\n })\r\n\r\n if (isGroupTable || type === 'card') {\r\n // 分组表和指标卡片\r\n chartType = 'grouptable'\r\n if (indicatorList.length === 0 || rowHeaders.length === 0) {\r\n return\r\n }\r\n // queryColumns 表格配置为空返回\r\n } else if (layer === '1' && queryColumns.length === 0) {\r\n return\r\n // queryColumns 图表配置为空返回\r\n } else if (layer === '2' && indicatorList.length === 0) {\r\n return\r\n }\r\n try {\r\n // @ts-ignore\r\n const res = await request.post(`${INDICATOR_URL}/diagram`, {\r\n source,\r\n dataViewId,\r\n plugin,\r\n layer,\r\n chartType,\r\n classification,\r\n series,\r\n indicatorList,\r\n queryColumns,\r\n pageFlag: true,\r\n sqlConditions,\r\n rowHeaders,\r\n dataSourceId,\r\n idxLibMode,\r\n preview\r\n })\r\n return res\r\n } catch (e) {\r\n console.error(e)\r\n }\r\n }\r\n}\r\n\r\nexport default useIndicatorData\r\n","<template>\r\n <div class=\"ecan-chart-graph\" ref=\"chartWrapRef\">\r\n <a-spin :spinning=\"loading\" wrapperClassName=\"chart-spin\" tip=\"数据加载中...\">\r\n <div style=\"width: 100%; height: 100%\" ref=\"echartRef\"></div>\r\n </a-spin>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport * as echarts from 'echarts'\r\nimport { defineComponent, onMounted, onBeforeUnmount, computed, ref, inject, unref, watch } from 'vue'\r\nimport { Spin as ASpin } from 'ant-design-vue'\r\nimport useIndicatorData from '@/hooks/useIndicatorData'\r\nimport * as generalTools from '@ecan-bi/tools'\r\nimport { CHARTS_OPTIONS, GRAPHIC_CONFIG, ZOOM_FONT_SIZE, REQUEST, INDICATOR_TOKEN } from '@/utils/constant'\r\nexport default defineComponent({\r\n name: 'ChartGraph',\r\n components: {\r\n ASpin\r\n },\r\n props: {\r\n graphicConfig: {\r\n // 指标库配置\r\n type: Object,\r\n default: () => {}\r\n },\r\n chartsOptions: {\r\n // 图表配置\r\n type: Object,\r\n default: () => {}\r\n }\r\n },\r\n setup (props, { expose }) {\r\n interface KeyTypeDataFieldNames {\r\n name: string\r\n types: {\r\n label: string\r\n value: string\r\n } []\r\n }\r\n\r\n interface ValueTypeDataFieldNames {\r\n name: string\r\n value: string\r\n type: string\r\n }\r\n\r\n const chartsOptions = computed(() => {\r\n if (props.chartsOptions) {\r\n return unref(props.chartsOptions)\r\n } else {\r\n return chartGraphicOptions as {\r\n [key: string]: any\r\n }\r\n }\r\n })\r\n const graphicConfig = computed(() => {\r\n if (props.graphicConfig) {\r\n return unref(props.graphicConfig)\r\n } else {\r\n return chartGraphicConfig as {\r\n [key: string]: any\r\n }\r\n }\r\n })\r\n const request = inject(REQUEST)\r\n let observer: ResizeObserver | null = null\r\n const indicatorToken = inject(INDICATOR_TOKEN) || ''\r\n const chartGraphicConfig = inject(GRAPHIC_CONFIG) || {}\r\n const chartGraphicOptions = inject(CHARTS_OPTIONS) || {}\r\n const echartRef = ref<HTMLElement>(null)\r\n const chartWrapRef = ref<HTMLElement>(null)\r\n const myChart = ref<any>()\r\n const loading = ref(false)\r\n const visible = ref(false)\r\n const fontSize = computed(() => (visible.value ? ZOOM_FONT_SIZE : 12))\r\n const chartData = ref<any>({})\r\n const myOption = ref()\r\n const chartOption = computed(() => {\r\n // 这样写为了触发响应式\r\n const chartsOptionsValue = unref(chartsOptions.value)\r\n if (chartsOptionsValue?.type === 'customGraph') {\r\n return myOption.value\r\n }\r\n return generalTools.transformProps(chartsOptionsValue, unref(chartData), fontSize.value)\r\n })\r\n const handleIndicatorDataset = (\r\n data: any = [],\r\n keyTypeDataFieldNames: KeyTypeDataFieldNames,\r\n useDataFieldNames: boolean = false\r\n ) => {\r\n const dataFieldNames = useDataFieldNames ? keyTypeDataFieldNames : null\r\n chartData.value = generalTools.useTransformChartDataByAttrKey(data, dataFieldNames)\r\n }\r\n const handleIndicatorPieDataset = (data: any = [], dataFieldNames?: ValueTypeDataFieldNames) => {\r\n chartData.value = generalTools.useTransformChartDataByAttrValue(data, dataFieldNames)\r\n }\r\n const handleIndicatorData = async () => {\r\n try {\r\n const indicatorData = useIndicatorData({\r\n graphicConfig: unref(graphicConfig.value),\r\n type: unref(chartsOptions.value)?.type,\r\n request,\r\n indicatorToken\r\n })\r\n loading.value = true\r\n const res = await indicatorData()\r\n const { columns = [], rows = [] } = res?.data?.data ?? {}\r\n if (unref(chartsOptions.value)?.type === 'pie') {\r\n let arr = []\r\n if (columns.length > 0) {\r\n const name = columns[0]\r\n const value = columns[1]\r\n arr = rows.map((item) => {\r\n return {\r\n name: item[name],\r\n value: item[value]\r\n }\r\n })\r\n }\r\n handleIndicatorPieDataset(arr)\r\n } else {\r\n let fieldNames\r\n if (columns.length > 0) {\r\n fieldNames = {\r\n name: columns[0],\r\n types: columns.slice(1).map((column) => {\r\n return {\r\n label: column,\r\n value: column\r\n }\r\n })\r\n }\r\n }\r\n handleIndicatorDataset(rows, fieldNames, true)\r\n }\r\n } catch (e) {\r\n console.error(e)\r\n } finally {\r\n loading.value = false\r\n }\r\n }\r\n const emptyOption = {\r\n title: {\r\n text: '暂无数据',\r\n x: 'center',\r\n y: 'center',\r\n textStyle: {\r\n fontSize: 14,\r\n fontWeight: 'normal'\r\n }\r\n }\r\n }\r\n const setChartOption = () => {\r\n const isEmpty = unref(chartData).dataset.length === 0\r\n if (isEmpty) {\r\n myChart.value.setOption(emptyOption, true)\r\n } else {\r\n myChart.value.setOption(chartOption.value, true)\r\n }\r\n }\r\n const refreshData = () => {\r\n if (unref(chartsOptions.value).type !== 'customGraph') {\r\n handleIndicatorData()\r\n }\r\n }\r\n const handleResize = () => {\r\n myChart.value?.resize()\r\n }\r\n watch(\r\n chartOption,\r\n () => {\r\n setChartOption()\r\n },\r\n {\r\n deep: true\r\n }\r\n )\r\n watch(\r\n () => unref(chartsOptions.value).optionCode,\r\n (optionCode: string) => {\r\n try {\r\n // eslint-disable-next-line\r\n const evalCopy = eval\r\n myOption.value = evalCopy(optionCode)\r\n } catch (e) {\r\n console.error(e)\r\n }\r\n },\r\n {\r\n immediate: true\r\n }\r\n )\r\n onMounted(() => {\r\n if (chartWrapRef.value) {\r\n observer = new ResizeObserver(handleResize)\r\n observer.observe(chartWrapRef.value)\r\n }\r\n myChart.value = echarts.init(echartRef.value)\r\n })\r\n onBeforeUnmount(() => {\r\n myChart.value.dispose()\r\n if (observer) {\r\n observer.disconnect()\r\n observer = null\r\n }\r\n })\r\n expose({\r\n refreshData\r\n })\r\n return {\r\n echartRef,\r\n loading\r\n }\r\n }\r\n})\r\n</script>\r\n\r\n<style lang=\"less\" scoped>\r\n.ecan-chart-graph {\r\n width: 100%;\r\n height: 100%;\r\n .chart-spin {\r\n width: 100%;\r\n height: 100%;\r\n :deep(.ant-spin-container) {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n }\r\n}\r\n</style>\r\n","<template>\r\n <div class=\"ecan-chart-graph\" ref=\"chartWrapRef\">\r\n <a-spin :spinning=\"loading\" wrapperClassName=\"chart-spin\" tip=\"数据加载中...\">\r\n <div style=\"width: 100%; height: 100%\" ref=\"echartRef\"></div>\r\n </a-spin>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport * as echarts from 'echarts'\r\nimport { defineComponent, onMounted, onBeforeUnmount, computed, ref, inject, unref, watch } from 'vue'\r\nimport { Spin as ASpin } from 'ant-design-vue'\r\nimport useIndicatorData from '@/hooks/useIndicatorData'\r\nimport * as generalTools from '@ecan-bi/tools'\r\nimport { CHARTS_OPTIONS, GRAPHIC_CONFIG, ZOOM_FONT_SIZE, REQUEST, INDICATOR_TOKEN } from '@/utils/constant'\r\nexport default defineComponent({\r\n name: 'ChartGraph',\r\n components: {\r\n ASpin\r\n },\r\n props: {\r\n graphicConfig: {\r\n // 指标库配置\r\n type: Object,\r\n default: () => {}\r\n },\r\n chartsOptions: {\r\n // 图表配置\r\n type: Object,\r\n default: () => {}\r\n }\r\n },\r\n setup (props, { expose }) {\r\n interface KeyTypeDataFieldNames {\r\n name: string\r\n types: {\r\n label: string\r\n value: string\r\n } []\r\n }\r\n\r\n interface ValueTypeDataFieldNames {\r\n name: string\r\n value: string\r\n type: string\r\n }\r\n\r\n const chartsOptions = computed(() => {\r\n if (props.chartsOptions) {\r\n return unref(props.chartsOptions)\r\n } else {\r\n return chartGraphicOptions as {\r\n [key: string]: any\r\n }\r\n }\r\n })\r\n const graphicConfig = computed(() => {\r\n if (props.graphicConfig) {\r\n return unref(props.graphicConfig)\r\n } else {\r\n return chartGraphicConfig as {\r\n [key: string]: any\r\n }\r\n }\r\n })\r\n const request = inject(REQUEST)\r\n let observer: ResizeObserver | null = null\r\n const indicatorToken = inject(INDICATOR_TOKEN) || ''\r\n const chartGraphicConfig = inject(GRAPHIC_CONFIG) || {}\r\n const chartGraphicOptions = inject(CHARTS_OPTIONS) || {}\r\n const echartRef = ref<HTMLElement>(null)\r\n const chartWrapRef = ref<HTMLElement>(null)\r\n const myChart = ref<any>()\r\n const loading = ref(false)\r\n const visible = ref(false)\r\n const fontSize = computed(() => (visible.value ? ZOOM_FONT_SIZE : 12))\r\n const chartData = ref<any>({})\r\n const myOption = ref()\r\n const chartOption = computed(() => {\r\n // 这样写为了触发响应式\r\n const chartsOptionsValue = unref(chartsOptions.value)\r\n if (chartsOptionsValue?.type === 'customGraph') {\r\n return myOption.value\r\n }\r\n return generalTools.transformProps(chartsOptionsValue, unref(chartData), fontSize.value)\r\n })\r\n const handleIndicatorDataset = (\r\n data: any = [],\r\n keyTypeDataFieldNames: KeyTypeDataFieldNames,\r\n useDataFieldNames: boolean = false\r\n ) => {\r\n const dataFieldNames = useDataFieldNames ? keyTypeDataFieldNames : null\r\n chartData.value = generalTools.useTransformChartDataByAttrKey(data, dataFieldNames)\r\n }\r\n const handleIndicatorPieDataset = (data: any = [], dataFieldNames?: ValueTypeDataFieldNames) => {\r\n chartData.value = generalTools.useTransformChartDataByAttrValue(data, dataFieldNames)\r\n }\r\n const handleIndicatorData = async () => {\r\n try {\r\n const indicatorData = useIndicatorData({\r\n graphicConfig: unref(graphicConfig.value),\r\n type: unref(chartsOptions.value)?.type,\r\n request,\r\n indicatorToken\r\n })\r\n loading.value = true\r\n const res = await indicatorData()\r\n const { columns = [], rows = [] } = res?.data?.data ?? {}\r\n if (unref(chartsOptions.value)?.type === 'pie') {\r\n let arr = []\r\n if (columns.length > 0) {\r\n const name = columns[0]\r\n const value = columns[1]\r\n arr = rows.map((item) => {\r\n return {\r\n name: item[name],\r\n value: item[value]\r\n }\r\n })\r\n }\r\n handleIndicatorPieDataset(arr)\r\n } else {\r\n let fieldNames\r\n if (columns.length > 0) {\r\n fieldNames = {\r\n name: columns[0],\r\n types: columns.slice(1).map((column) => {\r\n return {\r\n label: column,\r\n value: column\r\n }\r\n })\r\n }\r\n }\r\n handleIndicatorDataset(rows, fieldNames, true)\r\n }\r\n } catch (e) {\r\n console.error(e)\r\n } finally {\r\n loading.value = false\r\n }\r\n }\r\n const emptyOption = {\r\n title: {\r\n text: '暂无数据',\r\n x: 'center',\r\n y: 'center',\r\n textStyle: {\r\n fontSize: 14,\r\n fontWeight: 'normal'\r\n }\r\n }\r\n }\r\n const setChartOption = () => {\r\n const isEmpty = unref(chartData).dataset.length === 0\r\n if (isEmpty) {\r\n myChart.value.setOption(emptyOption, true)\r\n } else {\r\n myChart.value.setOption(chartOption.value, true)\r\n }\r\n }\r\n const refreshData = () => {\r\n if (unref(chartsOptions.value).type !== 'customGraph') {\r\n handleIndicatorData()\r\n }\r\n }\r\n const handleResize = () => {\r\n myChart.value?.resize()\r\n }\r\n watch(\r\n chartOption,\r\n () => {\r\n setChartOption()\r\n },\r\n {\r\n deep: true\r\n }\r\n )\r\n watch(\r\n () => unref(chartsOptions.value).optionCode,\r\n (optionCode: string) => {\r\n try {\r\n // eslint-disable-next-line\r\n const evalCopy = eval\r\n myOption.value = evalCopy(optionCode)\r\n } catch (e) {\r\n console.error(e)\r\n }\r\n },\r\n {\r\n immediate: true\r\n }\r\n )\r\n onMounted(() => {\r\n if (chartWrapRef.value) {\r\n observer = new ResizeObserver(handleResize)\r\n observer.observe(chartWrapRef.value)\r\n }\r\n myChart.value = echarts.init(echartRef.value)\r\n })\r\n onBeforeUnmount(() => {\r\n myChart.value.dispose()\r\n if (observer) {\r\n observer.disconnect()\r\n observer = null\r\n }\r\n })\r\n expose({\r\n refreshData\r\n })\r\n return {\r\n echartRef,\r\n loading\r\n }\r\n }\r\n})\r\n</script>\r\n\r\n<style lang=\"less\" scoped>\r\n.ecan-chart-graph {\r\n width: 100%;\r\n height: 100%;\r\n .chart-spin {\r\n width: 100%;\r\n height: 100%;\r\n :deep(.ant-spin-container) {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n }\r\n}\r\n</style>\r\n","import { withInstall } from '@/utils/withInstall'\r\nimport ChartGraph from './ChartGraph.vue'\r\nexport const EcanChartGraph = withInstall(ChartGraph)\r\nexport default EcanChartGraph\r\n","import { App } from 'vue'\nimport * as components from './components'\nconst install = (app: App, options: any) => {\n const { request } = options\n app.provide('$request', request)\n Object.keys(components).forEach((key) => {\n const component = components[key]\n if (component.install) {\n app.use(component)\n }\n })\n}\n\n// 部分导出\nexport * from './components'\n// 全局安装\nexport default {\n install\n}\n"],"names":["withInstall","comp","app","REQUEST","INDICATOR_URL","_a","INDICATOR_TOKEN","DATA_LIST","SELECTED_COMPONENT","GRAPHIC_CONFIG","UPDATE_GRAPHIC_CONFIG","SHOW_STYLE_CONFIG","REFRESH_DATA","CHARTS_OPTIONS","TABLE_OPTIONS","ZOOM_FONT_SIZE","UPDATE_CHARTS_OPTIONS","UPDATE_TABLE_OPTIONS","SOURCE_TYPE","CHANGE_CONDITION","DATA_VIEW_COLUMNS","RENDER_USED_COMPONENTS","UPDATE_USED_COMPONENT","UPDATE_COMPONENTS_CONFIG","MAP_ATTRIBUTE_PROPS","PAGE_CONFIG","IS_PIVOT_TABLE","IS_IFRAME_MODE","barProps","lineProps","pieProps","customGraphProps","comboGraphProps","propsMap","tableProps","loadAsyncComponent","loader","defineAsyncComponent","e","o","n","r","i","a","l","s","h","c","u","d","f","p","y","m","g","v","b","x","w","S","A","C","_","L","O","j","N","T","M","t","D","k","$","E","F","V","z","I","R","P","W","H","G","U","je","Y","K","Se","we","xe","be","De","_e","Ae","B","Oe","Ce","q","Q","Z","X","J","ee","Te","Ne","te","oe","ne","re","ve","ie","ae","le","se","ce","ue","de","fe","pe","he","ye","me","ge","Le","Me","ke","$e","Ee","Fe","Ve","ze","Ie","He","yt","Re","Pe","We","Ge","Ue","Ye","Ke","Be","qe","Qe","Ze","Xe","et","Je","ot","tt","nt","ht","rt","st","it","at","lt","ut","dt","ft","pt","mt","gt","vt","bt","xt","wt","St","At","_t","Lt","Ot","Ct","jt","Nt","Tt","Mt","kt","Dt","$t","Et","Ft","Vt","zt","It","Rt","Pt","Wt","Ht","Gt","Ut","Yt","Kt","Bt","qt","Qt","Zt","Xt","Jt","eo","to","oo","no","ro","io","ao","lo","so","co","uo","fo","po","ho","yo","mo","go","vo","bo","xo","wo","So","Ao","_o","Lo","Oo","Co","jo","No","To","Mo","ko","Do","$o","Eo","Fo","Vo","zo","Io","Ro","Po","Wo","Ho","Go","Uo","Yo","Ko","Bo","qo","Qo","Zo","Xo","Jo","en","tn","on","nn","rn","an","ln","sn","cn","un","dn","fn","pn","hn","yn","mn","gn","vn","bn","xn","wn","Sn","An","_n","Ln","On","Cn","jn","En","$n","Nn","Tn","Mn","kn","Fn","Vn","zn","In","Rn","Pn","Gn","Wn","Hn","Qn","Bn","Un","Kn","Yn","qn","Zn","Xn","Jn","er","tr","nr","rr","ir","ar","lr","sr","cr","getConditions","conditions","result","item","getSqlConditions","graphicConfig","renderUsedComponents","controlList","cloneDeep","classificationList","rowHeaderList","dimensionList","seriesList","leftAxisList","rightAxisList","queryColumnList","indicators","handleControlList","sqlConditions","otherList","conditionList","ol","list","getComponent","target","params","cItem","len","control","id","keyName","prop","dateFormat","dataType","customValue","sqlCondition","getConditionItem","setFieldValue","handleVariableList","variableList","handleVarList","variableItem","conditionLabel","conditionKey","conditionValueType","rule","notGlobal","indexCode","indexCodeNum","typeGuid","isExtProperty","alias","excludeAttr","key","attr","data","operateValue","operateMode","operateType","component","unref","value","format","operate","type","useCurrentTime","customFormat","lowerCaseIncludes","dateValue","dayjs","mode","opType","opValue","interval","intervalUnit","startTime","endTime","propValue","knList","_time","step","getFormatStep","variables","getEventName","event","componentList","dateList","formatStep","handleFormat","row","retentiondigit","str","formatQfw","str1","str2","index","mapScope","scope","mapDataSetScope","getLoadType","getUseType","getSourceType","dataTo","_sfc_main$1","defineComponent","props","expose","emit","dataConfigRef","ref","isUpdate","sourceType","computed","indicatorToken","usedComponentList","tableColumns","isShowStyleConfig","isPivotTable","_b","chartsOptions","tableOptions","dataList","setDataList","updateGraphicConfig","config","updateChartsOptions","options","isMerge","updateTableOptions","getDataList","updateIndicatorData","nextTick","getIndicatorData","getPivotGraphicData","provide","updateUsedComponent","updateComponentsConfig","ids","_hoisted_1","_hoisted_2","_component_data_config","_resolveComponent","_ctx","_openBlock","_createElementBlock","_createCommentVNode","_createElementVNode","_normalizeClass","EcanIndicatorLibrary","IndicatorLibrary","useIndicatorData","handleQueryColumn","queryColumn","label","name","location","show","handleParams","hasOwn","handleConditions","isSameLevel","cs","handleIndicator","indicator","calcType","builtInFormula","builtInValueSource","builtInCalcWay","formula","aggregate","conditionData","request","isGroupTable","source","dataViewId","plugin","layer","chartType","dataSourceId","idxLibMode","preview","classification","sort","customGroup","series","rowHeaders","queryColumns","indicatorList","leftAxis","rightAxis","_sfc_main","ASpin","chartGraphicOptions","chartGraphicConfig","inject","observer","echartRef","chartWrapRef","myChart","loading","visible","fontSize","chartData","myOption","chartOption","chartsOptionsValue","generalTools.transformProps","handleIndicatorDataset","keyTypeDataFieldNames","useDataFieldNames","dataFieldNames","generalTools.useTransformChartDataByAttrKey","handleIndicatorPieDataset","generalTools.useTransformChartDataByAttrValue","handleIndicatorData","indicatorData","res","columns","rows","_c","arr","fieldNames","column","emptyOption","setChartOption","refreshData","handleResize","watch","optionCode","evalCopy","onMounted","echarts","onBeforeUnmount","_component_a_spin","_createVNode","EcanChartGraph","ChartGraph","install","components"],"mappings":"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","x_google_ignoreList":[10]}