UNPKG

@aitianyu.cn/tianyu-store

Version:
62 lines 3.33 kB
"use strict"; /**@format */ Object.defineProperty(exports, "__esModule", { value: true }); exports.destroyStoreActionCreatorImpl = exports.createStoreActionCreatorImpl = exports.viewActionImpl = exports.actionImpl = void 0; const types_1 = require("@aitianyu.cn/types"); const ActionHelper_1 = require("../../common/ActionHelper"); const OperatorHelper_1 = require("../../common/OperatorHelper"); const Action_1 = require("../../types/Action"); const Model_1 = require("../../types/Model"); const ActionBaseImpl_1 = require("./ActionBaseImpl"); function actionImpl(id, handler, reducer, external, actionType) { const actionInstanceCaller = ((0, ActionBaseImpl_1.actionBaseImpl)(id, handler, actionType || Action_1.ActionType.ACTION, reducer, external)); actionInstanceCaller.asViewAction = function () { return viewActionImpl(actionInstanceCaller.id, actionInstanceCaller.handler, actionInstanceCaller.reducer, actionInstanceCaller.external, actionType); }; return actionInstanceCaller; } exports.actionImpl = actionImpl; function viewActionImpl(id, handler, reducer, external, actionType) { const actionInstanceCaller = (function (instanceId, params, viewInstanceId) { return { id: actionInstanceCaller.actionId, action: actionInstanceCaller.info.fullName, storeType: actionInstanceCaller.info.storeType, transaction: false, actionType: actionInstanceCaller.getType(), viewInstanceId, instanceId, params, }; }); actionInstanceCaller.id = id; actionInstanceCaller.info = (0, OperatorHelper_1.defaultInfoGenerator)(Model_1.OperatorInfoType.ACTION); actionInstanceCaller.actionId = actionInstanceCaller.id; actionInstanceCaller.handler = handler; actionInstanceCaller.reducer = reducer; actionInstanceCaller.external = external; actionInstanceCaller.getType = function () { return actionType || Action_1.ActionType.VIEW_ACTION; }; return actionInstanceCaller; } exports.viewActionImpl = viewActionImpl; function createStoreActionCreatorImpl() { const actionInstanceCaller = ((0, ActionBaseImpl_1.actionBaseImpl)((0, types_1.guid)(), (0, ActionHelper_1.createNonHandler)(), Action_1.ActionType.CREATE, (0, ActionHelper_1.createDefaultReducer)())); actionInstanceCaller.withReducer = function (reducer) { return actionImpl(actionInstanceCaller.id, actionInstanceCaller.handler, reducer, actionInstanceCaller.external, Action_1.ActionType.CREATE); }; return actionInstanceCaller; } exports.createStoreActionCreatorImpl = createStoreActionCreatorImpl; function destroyStoreActionCreatorImpl() { const actionInstanceCaller = ((0, ActionBaseImpl_1.actionBaseImpl)((0, types_1.guid)(), (0, ActionHelper_1.createVoidHandler)(), Action_1.ActionType.DESTROY, function () { return undefined; })); actionInstanceCaller.withReducer = function (reducer) { return actionImpl(actionInstanceCaller.id, actionInstanceCaller.handler, reducer, actionInstanceCaller.external, Action_1.ActionType.DESTROY); }; return actionInstanceCaller; } exports.destroyStoreActionCreatorImpl = destroyStoreActionCreatorImpl; //# sourceMappingURL=ActionImpl.js.map