package com.qqchen.deploy.backend.framework.annotation.formily;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

@Retention(RetentionPolicy.RUNTIME)
public @interface FormilyEditorProps {
    /**
     * 编程语言
     */
    String language() default "javascript";

    /**
     * 主题
     */
    String theme() default "vs";

    /**
     * 是否显示小地图
     */
    boolean minimap() default true;

    /**
     * 是否显示行号
     */
    boolean lineNumbers() default true;

    /**
     * 是否自动换行
     */
    String wordWrap() default "off";

    /**
     * 字体大小
     */
    int fontSize() default 14;

    /**
     * Tab大小
     */
    int tabSize() default 4;

    /**
     * 是否自动布局
     */
    boolean automaticLayout() default true;

    /**
     * 是否启用代码折叠
     */
    boolean folding() default true;

    /**
     * 是否允许滚动到最后一行之后
     */
    boolean scrollBeyondLastLine() default false;

    /**
     * 是否启用建议
     */
    boolean suggestOnTriggerCharacters() default true;

    /**
     * 是否启用代码片段建议
     */
    boolean snippetsPreventQuickSuggestions() default false;

    /**
     * 垂直滚动条
     */
    String scrollbarVertical() default "auto";

    /**
     * 水平滚动条
     */
    String scrollbarHorizontal() default "auto";

    /**
     * 防抖时间(ms)
     */
    int debounceTime() default 300;

    /**
     * 是否只读
     */
    boolean readOnly() default false;
} 