{"version":3,"file":"index.mjs","sources":["../../../../../../package/formily/reset/src/index.ts"],"sourcesContent":["import { IFieldResetOptions } from \"@formily/core\";\nimport { h, useParentForm } from \"@formily/vue\";\nimport { observer } from \"@formily/reactive-vue\";\nimport { defineComponent, toRef } from \"vue\";\n\nimport type { ElButton as ElButtonProps } from \"element-plus\";\nimport { ElButton, buttonProps } from \"element-plus\";\nimport { buildProps } from \"element-plus/es/utils/index\";\n\nexport type ResetProps = IFieldResetOptions & typeof ElButtonProps;\n\nexport const resetProps = buildProps({\n  forceClear: {\n    type: Boolean,\n    default: false\n  },\n  validate: {\n    type: Boolean,\n    default: false\n  },\n  loading: {\n    type: Boolean,\n    default: false\n  },\n  onClick: {\n    type: Function,\n    default: () => {}\n  },\n  resetValidateSuccess: {\n    type: Function,\n    default: () => {}\n  },\n  resetValidateFailed: {\n    type: Function,\n    default: () => {}\n  }\n});\n\nexport const Reset = observer(\n  defineComponent({\n    name: \"FReset\",\n    props: { ...buttonProps, ...resetProps },\n    setup(props, { slots }: any) {\n      const formRef = useParentForm();\n      const { forceClear, validate, resetValidateFailed, resetValidateSuccess, ...reset } = props;\n      const loading = toRef(props, \"loading\");\n      return () => {\n        const form = formRef?.value;\n        return h(\n          ElButton,\n          {\n            ...reset,\n            loading: loading.value,\n            onClick: (e: MouseEvent) => {\n              if (props?.onClick) {\n                if (props.onClick(e) === false) return;\n              }\n              form\n                ?.reset(\"*\", {\n                  forceClear,\n                  validate\n                })\n                .then(resetValidateSuccess as (e: any) => void)\n                .catch(resetValidateFailed as (e: any) => void);\n            }\n          },\n          slots\n        );\n      };\n    }\n  })\n);\n\nexport default Reset;\n"],"names":[],"mappings":";;;;;;AAWO,MAAM,aAAa,UAAW,CAAA;AAAA,EACnC,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,QAAA;AAAA,IACN,SAAS,MAAM;AAAA,KAAC;AAAA,GAClB;AAAA,EACA,oBAAsB,EAAA;AAAA,IACpB,IAAM,EAAA,QAAA;AAAA,IACN,SAAS,MAAM;AAAA,KAAC;AAAA,GAClB;AAAA,EACA,mBAAqB,EAAA;AAAA,IACnB,IAAM,EAAA,QAAA;AAAA,IACN,SAAS,MAAM;AAAA,KAAC;AAAA,GAClB;AACF,CAAC,EAAA;AAEM,MAAM,KAAQ,GAAA,QAAA;AAAA,EACnB,eAAgB,CAAA;AAAA,IACd,IAAM,EAAA,QAAA;AAAA,IACN,KAAO,EAAA,EAAE,GAAG,WAAA,EAAa,GAAG,UAAW,EAAA;AAAA,IACvC,KAAM,CAAA,KAAA,EAAO,EAAE,KAAA,EAAc,EAAA;AAC3B,MAAA,MAAM,UAAU,aAAc,EAAA,CAAA;AAC9B,MAAA,MAAM,EAAE,UAAY,EAAA,QAAA,EAAU,qBAAqB,oBAAsB,EAAA,GAAG,OAAU,GAAA,KAAA,CAAA;AACtF,MAAM,MAAA,OAAA,GAAU,KAAM,CAAA,KAAA,EAAO,SAAS,CAAA,CAAA;AACtC,MAAA,OAAO,MAAM;AACX,QAAA,MAAM,OAAO,OAAS,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,OAAA,CAAA,KAAA,CAAA;AACtB,QAAO,OAAA,CAAA;AAAA,UACL,QAAA;AAAA,UACA;AAAA,YACE,GAAG,KAAA;AAAA,YACH,SAAS,OAAQ,CAAA,KAAA;AAAA,YACjB,OAAA,EAAS,CAAC,CAAkB,KAAA;AAC1B,cAAA,IAAI,+BAAO,OAAS,EAAA;AAClB,gBAAI,IAAA,KAAA,CAAM,OAAQ,CAAA,CAAC,CAAM,KAAA,KAAA;AAAO,kBAAA,OAAA;AAAA,eAClC;AACA,cAAA,IAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CACI,MAAM,GAAK,EAAA;AAAA,gBACX,UAAA;AAAA,gBACA,QAAA;AAAA,eACF,CAAA,CACC,IAAK,CAAA,oBAAA,CAAA,CACL,KAAM,CAAA,mBAAA,CAAA,CAAA;AAAA,aACX;AAAA,WACF;AAAA,UACA,KAAA;AAAA,SACF,CAAA;AAAA,OACF,CAAA;AAAA,KACF;AAAA,GACD,CAAA;AACH;;;;"}