Fixed some types not being found and some errors Identified by typescript
This commit is contained in:
@@ -7,7 +7,7 @@ import CreatureVariables from '/imports/api/creature/creatures/CreatureVariables
|
||||
import computeCreature from '/imports/api/engine/computeCreature';
|
||||
import { loadCreature } from '/imports/api/engine/loadCreatures';
|
||||
import EngineActions, { EngineAction } from '/imports/api/engine/action/EngineActions';
|
||||
import { applyAction } from '/imports/api/engine/action/functions/applyAction';
|
||||
import applyAction from '/imports/api/engine/action/functions/applyAction';
|
||||
import { LogContent, Removal, Update } from '/imports/api/engine/action/tasks/TaskResult';
|
||||
import inputProvider from '/imports/api/engine/action/functions/inputProviderForTests.testFn';
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ import CreatureVariables from '/imports/api/creature/creatures/CreatureVariables
|
||||
import computeCreature from '/imports/api/engine/computeCreature';
|
||||
import { loadCreature } from '/imports/api/engine/loadCreatures';
|
||||
import EngineActions, { EngineAction } from '/imports/api/engine/action/EngineActions';
|
||||
import { applyAction } from '/imports/api/engine/action/functions/applyAction';
|
||||
import applyAction from '/imports/api/engine/action/functions/applyAction';
|
||||
import { LogContent, Mutation, Removal, Update } from '/imports/api/engine/action/tasks/TaskResult';
|
||||
import inputProvider from '/imports/api/engine/action/functions/inputProviderForTests.testFn';
|
||||
/**
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
import EngineActions, { EngineAction, ActionSchema } from '/imports/api/engine/action/EngineActions';
|
||||
import { EngineAction } from '/imports/api/engine/action/EngineActions';
|
||||
import { getSingleProperty } from '/imports/api/engine/loadCreatures';
|
||||
import applyTask from '/imports/api/engine/action/tasks/applyTask'
|
||||
import { isEmpty } from 'lodash';
|
||||
import InputProvider from '/imports/api/engine/action/functions/InputProvider';
|
||||
|
||||
// TODO create a function to get the effective value of a property,
|
||||
@@ -11,7 +10,7 @@ import InputProvider from '/imports/api/engine/action/functions/InputProvider';
|
||||
// This is run once as a simulation on the client awaiting all the various inputs or step through
|
||||
// clicks from the user, then it is run as part of the runAction method, where it is expected to
|
||||
// complete instantly on the client, and sent to the server as a method call
|
||||
export async function applyAction(action: EngineAction, userInput: InputProvider, options?: {
|
||||
export default async function applyAction(action: EngineAction, userInput: InputProvider, options?: {
|
||||
simulate?: boolean, stepThrough?: boolean
|
||||
}) {
|
||||
const { simulate, stepThrough } = options || {};
|
||||
@@ -29,15 +28,3 @@ export async function applyAction(action: EngineAction, userInput: InputProvider
|
||||
}, userInput);
|
||||
return { action, userInput };
|
||||
}
|
||||
|
||||
function writeChangedAction(original: EngineAction, changed: EngineAction) {
|
||||
const $set = {};
|
||||
for (const key of ActionSchema.objectKeys()) {
|
||||
if (!EJSON.equals(original[key], changed[key])) {
|
||||
$set[key] = changed[key];
|
||||
}
|
||||
}
|
||||
if (!isEmpty($set) && original._id) {
|
||||
return EngineActions.updateAsync(original._id, { $set });
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,14 @@
|
||||
import { EngineAction } from '/imports/api/engine/action/EngineActions';
|
||||
import { isEmpty } from 'lodash'
|
||||
import EngineActions, { EngineAction, ActionSchema } from '/imports/api/engine/action/EngineActions';
|
||||
|
||||
export async function writeChangedAction(originalAction: EngineAction, action: EngineAction) {
|
||||
console.warn('writeChangedAction not implemented.');
|
||||
export default async function writeChangedAction(original: EngineAction, changed: EngineAction) {
|
||||
const $set = {};
|
||||
for (const key of ActionSchema.objectKeys()) {
|
||||
if (!EJSON.equals(original[key], changed[key])) {
|
||||
$set[key] = changed[key];
|
||||
}
|
||||
}
|
||||
if (!isEmpty($set) && original._id) {
|
||||
return EngineActions.updateAsync(original._id, { $set });
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,9 +3,8 @@ import SimpleSchema from 'simpl-schema';
|
||||
import EngineActions from '/imports/api/engine/action/EngineActions';
|
||||
import { assertEditPermission } from '/imports/api/sharing/sharingPermissions';
|
||||
import { getCreature } from '/imports/api/engine/loadCreatures';
|
||||
import { EJSON } from 'meteor/ejson';
|
||||
import { applyAction } from '/imports/api/engine/action/functions/applyAction';
|
||||
import { writeChangedAction } from '../functions/writeChangedAction';
|
||||
import applyAction from '/imports/api/engine/action/functions/applyAction';
|
||||
import writeChangedAction from '../functions/writeChangedAction';
|
||||
|
||||
export const runAction = new ValidatedMethod({
|
||||
name: 'actions.runAction',
|
||||
|
||||
Reference in New Issue
Block a user