aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/nodes/DataVizBox/DocCreatorMenu/TemplateManager.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/views/nodes/DataVizBox/DocCreatorMenu/TemplateManager.tsx')
-rw-r--r--src/client/views/nodes/DataVizBox/DocCreatorMenu/TemplateManager.tsx12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/client/views/nodes/DataVizBox/DocCreatorMenu/TemplateManager.tsx b/src/client/views/nodes/DataVizBox/DocCreatorMenu/TemplateManager.tsx
index 50ae4d72a..09b4ce029 100644
--- a/src/client/views/nodes/DataVizBox/DocCreatorMenu/TemplateManager.tsx
+++ b/src/client/views/nodes/DataVizBox/DocCreatorMenu/TemplateManager.tsx
@@ -1,3 +1,4 @@
+import { makeAutoObservable } from "mobx";
import { Col } from "./DocCreatorMenu";
import { FieldSettings } from "./FieldTypes/Field";
import { Template } from "./Template";
@@ -7,6 +8,7 @@ export class TemplateManager {
templates: Template[] = [];
constructor(templateSettings: FieldSettings[]) {
+ makeAutoObservable(this);
this.templates = this.initializeTemplates(templateSettings);
}
@@ -17,6 +19,16 @@ export class TemplateManager {
}
getValidTemplates = (cols: Col[]): Template[] => {
+ console.log('called in manager with templates: ', this.templates)
return this.templates.filter(template => template.isValidTemplate(cols));
}
+
+ addTemplate = (newTemplate: Template) =>{
+ this.templates.push(newTemplate);
+ }
+
+ removeTemplate = (template: Template) => {
+ this.templates.splice(this.templates.indexOf(template), 1);
+ template.cleanup();
+ }
} \ No newline at end of file