@yookue/ts-lang-utils
Version:
Common lang utilities for typescript
28 lines • 986 B
JavaScript
import { isPromise } from "../ObjectUtils";
export function detectSource(param, resolve, reject) {
if (!param) {
return;
}
if (typeof param === 'string') {
resolve === null || resolve === void 0 || resolve(param);
} else if (typeof param === 'function') {
var value = param();
if (typeof value === 'string') {
resolve === null || resolve === void 0 || resolve(value);
} else if (isPromise(value)) {
value.then(function (res) {
return resolve === null || resolve === void 0 ? void 0 : resolve(res);
}).catch(function () {
return reject === null || reject === void 0 ? void 0 : reject();
});
} else {
reject === null || reject === void 0 || reject();
}
} else if (isPromise(param)) {
param.then(function (res) {
return resolve === null || resolve === void 0 ? void 0 : resolve(res);
}).catch(function () {
return reject === null || reject === void 0 ? void 0 : reject();
});
}
}