import type { PopsConfirmConfig } from "./types";

export const PopsConfirmDefaultConfig = (): DeepRequired<PopsConfirmConfig> => {
  return {
    title: {
      text: "默认标题",
      position: "left",
      html: false,
      style: "",
    },
    content: {
      text: "默认内容",
      html: false,
      style: "",
    },
    btn: {
      merge: false,
      mergeReverse: false,
      reverse: false,
      position: "flex-end",
      ok: {
        enable: true,
        size: void 0 as any,
        icon: void 0 as any,
        rightIcon: false,
        iconIsLoading: false,
        text: "确定",
        type: "primary",
        callback(eventConfig) {
          eventConfig.close();
        },
      },
      cancel: {
        enable: true,
        size: void 0 as any,
        icon: void 0 as any,
        rightIcon: false,
        iconIsLoading: false,
        text: "关闭",
        type: "default",
        callback(eventConfig) {
          eventConfig.close();
        },
      },
      other: {
        enable: false,
        size: void 0 as any,
        icon: void 0 as any,
        rightIcon: false,
        iconIsLoading: false,
        text: "其它按钮",
        type: "default",
        callback(eventConfig) {
          eventConfig.close();
        },
      },
      close: {
        enable: true,
        callback(eventConfig) {
          eventConfig.close();
        },
      },
    },
    useShadowRoot: true,
    class: "",
    only: false,
    width: window.innerWidth < 550 ? "88vw" : "350px",
    height: window.innerHeight < 450 ? "70vh" : "200px",
    position: "center",
    animation: "pops-anim-fadein-zoom",
    zIndex: 10000,
    mask: {
      enable: false,
      clickEvent: {
        toClose: false,
        toHide: false,
      },
      clickCallBack: null,
    },
    drag: false,
    dragLimit: true,
    dragExtraDistance: 3,
    dragMoveCallBack() {},
    dragEndCallBack() {},
    forbiddenScroll: false,

    style: null,
    lightStyle: null,
    darkStyle: null,
    stopKeyDownEventPropagation: true,
    emitter: null,
  } as DeepRequired<PopsConfirmConfig>;
};
