var __defProp = Object.defineProperty;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __publicField = (obj, key, value) => {
  __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
  return value;
};
import { echartOptionProfixHandle } from "../../../../public/chart.mjs";
import { PublicConfigClass } from "../../../../public/publicConfig.mjs";
import { GraphConfig } from "./index.mjs";
import cloneDeep from "../../../../../../node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/cloneDeep.mjs";
import dataJson from "./data.json.mjs";
const includes = [];
const GraphLayout = [
  { label: "无", value: "none" },
  { label: "环形", value: "circular" }
];
const LabelSwitch = [
  { label: "开启", value: 1 },
  { label: "关闭", value: 0 }
];
const LabelPosition = [
  { label: "左侧", value: "left" },
  { label: "右侧", value: "right" },
  { label: "顶部", value: "top" },
  { label: "底部", value: "bottom" },
  { label: "内部", value: "inside" }
];
const option = {
  dataset: { ...dataJson },
  tooltip: {},
  legend: {
    show: true,
    textStyle: {
      color: "#eee",
      fontSize: 14
    },
    data: dataJson.categories.map(function(a) {
      return a.name;
    })
  },
  series: [
    {
      type: "graph",
      layout: "none",
      // none circular环形布局
      data: dataJson.nodes,
      links: dataJson.links,
      categories: dataJson.categories,
      label: {
        // 标签
        show: 1,
        position: "right",
        formatter: "{b}"
      },
      labelLayout: {
        hideOverlap: true
      },
      lineStyle: {
        color: "source",
        // 线条颜色
        curveness: 0.2
        // 线条卷曲程度
      }
    }
  ]
};
class Config extends PublicConfigClass {
  constructor() {
    super(...arguments);
    __publicField(this, "key", GraphConfig.key);
    __publicField(this, "chartConfig", cloneDeep(GraphConfig));
    // 图表配置项
    __publicField(this, "option", echartOptionProfixHandle(option, includes));
  }
}
export {
  GraphLayout,
  LabelPosition,
  LabelSwitch,
  Config as default,
  includes,
  option
};
