{"version":3,"file":"dialog.mjs","sources":["../../../../../../../packages/components/dialog/src/dialog.ts"],"sourcesContent":["import { buildProps, isBoolean, isFunction } from '@m-eleplus-crud/utils'\r\nimport { useSizeProp } from '@m-eleplus-crud/hooks'\r\n\r\nimport type { ExtractPropTypes } from 'vue'\r\n\r\nexport const dialogProps = buildProps({\r\n  /**\r\n   * @description 弹窗尺寸\r\n   */\r\n  size: useSizeProp,\r\n  /**\r\n   * @description 弹窗显示状态\r\n   */\r\n  modelValue: {\r\n    type: Boolean,\r\n    required: true,\r\n  },\r\n  /**\r\n   * @description 弹窗标题\r\n   */\r\n  title: {\r\n    type: String,\r\n    default: '',\r\n  },\r\n  /**\r\n   * @description 弹窗宽度\r\n   */\r\n  width: {\r\n    type: String,\r\n    default: '600px',\r\n  },\r\n  /**\r\n   * @description 顶部距离\r\n   */\r\n  top: {\r\n    type: String,\r\n    default: '2vh',\r\n  },\r\n  /**\r\n   * @description 插入body\r\n   */\r\n  appendToBody: {\r\n    type: Boolean,\r\n    default: true,\r\n  },\r\n  /**\r\n   * @description 是否可以通过点击modal关闭Dialog\r\n   */\r\n  closeOnClickModal: {\r\n    type: Boolean,\r\n    default: false,\r\n  },\r\n  /**\r\n   * @description 是否可以通过按下ESC关闭Dialog\r\n   */\r\n  closeOnnPressEscape: {\r\n    type: Boolean,\r\n    default: false,\r\n  },\r\n  /**\r\n   * @description 弹窗关闭前回调\r\n   */\r\n  beforeClose: {\r\n    type: Function,\r\n  },\r\n  /**\r\n   * @description 为dialog开启拖拽功能\r\n   */\r\n  draggable: {\r\n    type: Boolean,\r\n    default: true,\r\n  },\r\n  /**\r\n   * @description 当关闭Dialog时，销毁其中的元素\r\n   */\r\n  destroyOnClose: {\r\n    type: Boolean,\r\n    default: true,\r\n  },\r\n  /**\r\n   * @description 保存按钮是否展示\r\n   */\r\n  saveBtn: {\r\n    type: Boolean,\r\n    default: true,\r\n  },\r\n  /**\r\n   * @description 取消按钮是否展示\r\n   */\r\n  cancelBtn: {\r\n    type: Boolean,\r\n    default: true,\r\n  },\r\n  /**\r\n   * @description 保存按钮文字\r\n   */\r\n  saveBtnText: {\r\n    type: String,\r\n    default: '',\r\n  },\r\n  /**\r\n   * @description 保存按钮图标\r\n   */\r\n  saveBtnIcon: {\r\n    type: String,\r\n    default: 'CircleCheck',\r\n  },\r\n  /**\r\n   * @description 取消按钮图标\r\n   */\r\n  cancelBtnIcon: {\r\n    type: String,\r\n    default: 'CircleClose',\r\n  },\r\n  /**\r\n   * @description 取消按钮文字\r\n   */\r\n  cancelBtnText: {\r\n    type: String,\r\n    default: '',\r\n  },\r\n} as const)\r\nexport type DialogProps = ExtractPropTypes<typeof dialogProps>\r\n\r\nexport const dialogEmits = {\r\n  /**\r\n   * @description 更新弹窗状态\r\n   * @param value 弹窗显示状态\r\n   * @returns\r\n   */\r\n  'update:modelValue': (value: boolean) => isBoolean(value),\r\n  /**\r\n   * @description 弹窗关闭\r\n   * @returns\r\n   */\r\n  close: () => true,\r\n  /**\r\n   * @description 弹窗取消\r\n   * @returns\r\n   */\r\n  cancel: () => true,\r\n  /**\r\n   * @description 弹窗确认\r\n   * @param done 完成\r\n   * @param loading 加载完毕\r\n   * @returns\r\n   */\r\n  enter: (done: () => void, loading: () => void) =>\r\n    isFunction(done) && isFunction(loading),\r\n}\r\nexport type DialogEmits = typeof dialogEmits\r\n"],"names":[],"mappings":";;;;;AAKO,MAAM,cAAc,UAAW,CAAA;AAAA,EAIpC,IAAM,EAAA,WAAA;AAAA,EAIN,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,OAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EAIA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EAIA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,OAAA;AAAA,GACX;AAAA,EAIA,GAAK,EAAA;AAAA,IACH,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EAIA,iBAAmB,EAAA;AAAA,IACjB,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EAIA,mBAAqB,EAAA;AAAA,IACnB,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,QAAA;AAAA,GACR;AAAA,EAIA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EAIA,cAAgB,EAAA;AAAA,IACd,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EAIA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EAIA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,aAAA;AAAA,GACX;AAAA,EAIA,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,aAAA;AAAA,GACX;AAAA,EAIA,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AACF,CAAU,EAAA;AAGH,MAAM,WAAc,GAAA;AAAA,EAMzB,mBAAqB,EAAA,CAAC,KAAmB,KAAA,SAAA,CAAU,KAAK,CAAA;AAAA,EAKxD,OAAO,MAAM,IAAA;AAAA,EAKb,QAAQ,MAAM,IAAA;AAAA,EAOd,KAAA,EAAO,CAAC,IAAkB,EAAA,OAAA,KACxB,WAAW,IAAI,CAAA,IAAK,WAAW,OAAO,CAAA;AAC1C;;;;"}