Files
boc/landvex/node_modules/standard-as-callback/built/index.js
T
Bernt 6989a98d75 feat: Passwordless cross-device authentication
- Arkitektur: docs/auth/passwordless-architecture.md
- Backend: iom/quixzoom-auth-service/ (FastAPI + Redis)
- Webb: quixzoom-market-pages/se/login/ (QR-kod + polling)
- App: iom/quixzoom-app/src/features/auth/ (push + deep links)

Flöde: QR-kod → app-godkännande → webb-inloggad
2026-07-07 07:11:50 +00:00

42 lines
1.3 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const utils_1 = require("./utils");
function throwLater(e) {
setTimeout(function () {
throw e;
}, 0);
}
function asCallback(promise, nodeback, options) {
if (typeof nodeback === "function") {
promise.then((val) => {
let ret;
if (options !== undefined &&
Object(options).spread &&
Array.isArray(val)) {
ret = utils_1.tryCatch(nodeback).apply(undefined, [null].concat(val));
}
else {
ret =
val === undefined
? utils_1.tryCatch(nodeback)(null)
: utils_1.tryCatch(nodeback)(null, val);
}
if (ret === utils_1.errorObj) {
throwLater(ret.e);
}
}, (cause) => {
if (!cause) {
const newReason = new Error(cause + "");
Object.assign(newReason, { cause });
cause = newReason;
}
const ret = utils_1.tryCatch(nodeback)(cause);
if (ret === utils_1.errorObj) {
throwLater(ret.e);
}
});
}
return promise;
}
exports.default = asCallback;