{"version":3,"file":"run.mjs","sources":["../../src/utils/run.ts"],"sourcesContent":["/* eslint-disable  */\nconst obj = Object.prototype.toString\n\n/**\n * 是否函数\n * @param val 值\n * @returns bool\n */\nexport function isFunction(val: any): val is Function {\n  return (\n    obj.call(val) === '[object Function]' ||\n    obj.call(val) === '[object AsyncFunction]'\n  )\n}\n\n/**\n * 是否promise\n * @param val 值\n * @returns bool\n */\nexport function isPromise(val: any): val is Promise<any> {\n  return obj.call(val) === '[object Promise]'\n}\n/**\n * 执行对象，获取真正的值\n * @param val 值或函数或promise\n * @param args 可传参\n * @returns promise\n *\n */\nexport const run = async (val: any, ...args: any): Promise<any> => {\n  if (isFunction(val)) {\n    const result = val(...args)\n    return run(result)\n  }\n  if (isPromise(val)) {\n    return val.then((resolvedResult: any) => run(resolvedResult))\n  }\n  return Promise.resolve(val)\n}\n"],"names":[],"mappings":"AACA,MAAM,GAAA,GAAM,OAAO,SAAU,CAAA,QAAA,CAAA;AAOtB,SAAS,WAAW,GAA2B,EAAA;AACpD,EACE,OAAA,GAAA,CAAI,KAAK,GAAG,CAAA,KAAM,uBAClB,GAAI,CAAA,IAAA,CAAK,GAAG,CAAM,KAAA,wBAAA,CAAA;AAEtB,CAAA;AAOO,SAAS,UAAU,GAA+B,EAAA;AACvD,EAAO,OAAA,GAAA,CAAI,IAAK,CAAA,GAAG,CAAM,KAAA,kBAAA,CAAA;AAC3B,CAAA;AAQa,MAAA,GAAA,GAAM,OAAO,GAAA,EAAA,GAAa,IAA4B,KAAA;AACjE,EAAI,IAAA,UAAA,CAAW,GAAG,CAAG,EAAA;AACnB,IAAM,MAAA,MAAA,GAAS,GAAI,CAAA,GAAG,IAAI,CAAA,CAAA;AAC1B,IAAA,OAAO,IAAI,MAAM,CAAA,CAAA;AAAA,GACnB;AACA,EAAI,IAAA,SAAA,CAAU,GAAG,CAAG,EAAA;AAClB,IAAA,OAAO,IAAI,IAAK,CAAA,CAAC,cAAwB,KAAA,GAAA,CAAI,cAAc,CAAC,CAAA,CAAA;AAAA,GAC9D;AACA,EAAO,OAAA,OAAA,CAAQ,QAAQ,GAAG,CAAA,CAAA;AAC5B;;;;"}