{"version":3,"file":"formSubmit-d5291a3cabc.js","sources":["../../client/src/utils/formSubmit.ts"],"sourcesContent":["export enum ISubmitTarget {\n BLANK = \"_blank\", // 默认,在新窗口中打开\n SELF = \"_self\", // 在相同的框架中打开\n PARENT = \"_parent\", // 在父框架集中打开\n TOP = \"_top\", // 在整个窗口中打开\n}\ninterface IOptions {\n url: string;\n data?: IObject;\n formAttributes?: IObject;\n target?: string;\n onBeforeSubmit?: () => void;\n}\n\nexport function formSubmit({\n url,\n data = {},\n formAttributes = {},\n target = ISubmitTarget.SELF,\n onBeforeSubmit,\n}: IOptions) {\n const form = document.createElement(\"form\");\n\n const formAttrs = {\n method: \"post\",\n action: url,\n target,\n ...(formAttributes || {}),\n };\n Object.keys(formAttrs).forEach((key) => {\n form.setAttribute(key, formAttrs[key as keyof typeof formAttrs]);\n });\n\n const fields = Object.keys(data)\n .map((key) => {\n const name = key.replace(/\\[\\d+\\]/g, \"[]\");\n const value = data[key];\n return ``;\n })\n .join(\"\");\n\n form.insertAdjacentHTML(\"beforeend\", fields);\n\n form.style.display = \"none\";\n form.style.width = \"0px\";\n form.style.height = \"0px\";\n\n document.body.appendChild(form);\n setTimeout(() => {\n if (typeof onBeforeSubmit === \"function\") onBeforeSubmit();\n form.submit();\n document.body.removeChild(form);\n }, 0);\n}\n"],"names":["formSubmit","url","data","formAttributes","target","ISubmitTarget","onBeforeSubmit","form","document","createElement","formAttrs","method","action","Object","keys","forEach","key","setAttribute","fields","map","name","replace","value","join","insertAdjacentHTML","style","display","width","height","body","appendChild","setTimeout","submit","removeChild"],"mappings":"AAcO,SAASA,EAAW,CACzBC,IAAAA,EACAC,KAAAA,EAAO,CAFkB,EAGzBC,eAAAA,EAAiB,CAHQ,EAIzBC,OAAAA,EAASC,QACTC,eAAAA,CALyB,EAMd,CACLC,MAAAA,EAAOC,SAASC,cAAc,MAAvBD,EAEPE,EAAY,CAChBC,OAAQ,OACRC,OAAQX,EACRG,OAAAA,EACA,GAAID,GAAkB,CAAA,GAExBU,OAAOC,KAAKJ,CAAZG,EAAuBE,QAAiBC,GAAA,CACjCC,EAAAA,aAAaD,EAAKN,EAAUM,EAA5BC,EADPJ,EAIA,MAAMK,EAASL,OAAOC,KAAKZ,CAAZW,EACZM,IAAaH,GAAA,CACZ,MAAMI,EAAOJ,EAAIK,QAAQ,WAAY,IAAxBL,EACPM,EAAQpB,EAAKc,GACnB,oCAAqCI,aAAgBE,OAJ1C,CAAAT,EAMZU,KAAK,EANOV,EAQVW,EAAAA,mBAAmB,YAAaN,CAAhCM,EAELjB,EAAKkB,MAAMC,QAAU,OACrBnB,EAAKkB,MAAME,MAAQ,MACnBpB,EAAKkB,MAAMG,OAAS,MAEXC,SAAAA,KAAKC,YAAYvB,CAAjBsB,EACTE,WAAW,IAAM,CACX,OAAOzB,GAAmB,YAA0BA,IACxDC,EAAKyB,OAALzB,EACSsB,SAAAA,KAAKI,YAAY1B,CAAjBsB,CAHXE,EAIG,CAJHA,CAKD"}