diff --git a/package.json b/package.json index d220978..a641859 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,8 @@ "scripts": { "start": "vite", "build": "vite build --base /formula/", - "test": "jest --watchAll", + "test": "jest", + "test:watch": "jest --watchAll", "format": "prettier --write .", "lint": "eslint .", "prepare": "husky install" diff --git a/src/controllers/writer/writer.ts b/src/controllers/writer/writer.ts index ee95ce9..02d2968 100644 --- a/src/controllers/writer/writer.ts +++ b/src/controllers/writer/writer.ts @@ -2,7 +2,11 @@ import { first, map } from 'rxjs'; import { ComponentOptionsBase, ComponentPublicInstance, createApp } from 'vue'; import { mergeObjects } from '../../core'; -import { findNextFormulaName, Formula } from '../../domain'; +import { + CalculusTreeFactory, + findNextFormulaName, + Formula, +} from '../../domain'; import { Encoder, Inject, @@ -28,8 +32,8 @@ type VueInstance = ComponentPublicInstance< ComponentOptionsBase >; -@Inject(Router, Encoder, MenuState, Window) -export default class Writer implements OnInit { +@Inject(Router, Encoder, MenuState, Window, CalculusTreeFactory) +export class Writer implements OnInit { private readonly writerDOMRoot: HTMLDivElement; private readonly vueInstance: VueInstance; @@ -37,7 +41,8 @@ export default class Writer implements OnInit { private readonly router: Router, private readonly encoder: Encoder, menuState: MenuState, - window: Window + window: Window, + calculusFactory: CalculusTreeFactory ) { const selectors = '#writer-root'; const writerDOMRoot = diff --git a/src/controllers/writer/writer.vue b/src/controllers/writer/writer.vue index b04739e..ef75ef7 100644 --- a/src/controllers/writer/writer.vue +++ b/src/controllers/writer/writer.vue @@ -34,6 +34,7 @@ }" v-model="formula.content" placeholder="Formula" + @keyup="onFormulaUpdated" >