index.ts 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import { Dict_Imgs } from "@/dict";
  2. import { createAttrsForm } from "../../defines/createAttrsForm";
  3. import { createCompHooks } from "../../defines/createCompHooks";
  4. import { InputNumber, Switch } from "ant-design-vue";
  5. import { createColorOpts } from "../../defines/formOpts/createColorOpts";
  6. import Slider from "../../formItems/Slider";
  7. export { Component } from "./component";
  8. export const options = {
  9. name: "直线",
  10. thumbnail: require("@/modules/editor/assets/icons/line.svg"),
  11. };
  12. export const { createComp, useCompData } = createCompHooks({
  13. value: {
  14. lineColor: "black",
  15. lineWidth: 1,
  16. dashX: 0,
  17. dashY: 0,
  18. },
  19. layout: {
  20. size: [400, 30],
  21. },
  22. });
  23. export const Form = createAttrsForm([
  24. {
  25. label: "线宽",
  26. dataIndex: "value.lineWidth",
  27. component: InputNumber,
  28. },
  29. {
  30. label:"颜色",
  31. dataIndex: "value.lineColor",
  32. ...createColorOpts(),
  33. },
  34. {
  35. label: "实线长",
  36. dataIndex: "value.dashX",
  37. component: Slider,
  38. props: {
  39. defaultValue: 0,
  40. min: 0,
  41. max: 750,
  42. step: 1,
  43. },
  44. },
  45. {
  46. label: "空白长",
  47. dataIndex: "value.dashY",
  48. component: Slider,
  49. props: {
  50. defaultValue: 0,
  51. min: 0,
  52. max: 750,
  53. step: 1,
  54. },
  55. },
  56. ]);