@chevre/domain
Version:
Chevre Domain Library for Node.js
51 lines (50 loc) • 2.58 kB
JavaScript
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.call = call;
const factory = require("../../factory");
const action_1 = require("../../repo/action");
const assetTransaction_1 = require("../../repo/assetTransaction");
const authorization_1 = require("../../repo/authorization");
const order_1 = require("../../repo/order");
const reservation_1 = require("../../repo/reservation");
const setting_1 = require("../../repo/setting");
const task_1 = require("../../repo/task");
const useReservation_1 = require("../reserve/useReservation");
/**
* タスク実行関数
*/
function call(data) {
return (_a) => __awaiter(this, [_a], void 0, function* ({ connection }) {
var _b, _c;
let instrument;
// support array(2025-02-17~)
if (Array.isArray(data.instrument)) {
instrument = data.instrument;
}
else {
if (((_b = data.instrument) === null || _b === void 0 ? void 0 : _b.typeOf) === factory.action.check.token.ObjectType.Ticket) {
instrument = [data.instrument];
}
}
yield (0, useReservation_1.useReservation)(Object.assign({ project: data.project, agent: data.agent, object: data.object, instrument }, (typeof ((_c = data.location) === null || _c === void 0 ? void 0 : _c.typeOf) === 'string') ? { location: data.location } : undefined))({
action: new action_1.ActionRepo(connection),
assetTransaction: new assetTransaction_1.AssetTransactionRepo(connection),
code: new authorization_1.AuthorizationRepo(connection),
order: new order_1.OrderRepo(connection),
reservation: new reservation_1.ReservationRepo(connection),
setting: new setting_1.SettingRepo(connection),
task: new task_1.TaskRepo(connection)
}
// settings
);
});
}
;