From 1062413e0794450e3617ad8be8a3ee38279a2511 Mon Sep 17 00:00:00 2001 From: Kirk Swenson Date: Mon, 12 Aug 2024 14:31:24 -0700 Subject: [PATCH] fix: recalculate formulas on initial load of document (#1395) --- v3/src/models/document/create-document-model.ts | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/v3/src/models/document/create-document-model.ts b/v3/src/models/document/create-document-model.ts index d3e165040..210ba17b6 100644 --- a/v3/src/models/document/create-document-model.ts +++ b/v3/src/models/document/create-document-model.ts @@ -22,11 +22,6 @@ export const createDocumentModel = (snapshot?: IDocumentModelSnapshot) => { const sharedModelManager = new SharedModelDocumentManager() const formulaManager = new FormulaManager() const adapterApi = formulaManager.getAdapterApi() - formulaManager.addAdapters([ - new AttributeFormulaAdapter(adapterApi), - new PlottedValueFormulaAdapter(adapterApi), - new PlottedFunctionFormulaAdapter(adapterApi) - ]) const fullEnvironment: ITileEnvironment & {documentEnv: IDocumentEnvironment} = { sharedModelManager, formulaManager, @@ -34,6 +29,14 @@ export const createDocumentModel = (snapshot?: IDocumentModelSnapshot) => { } try { const document = DocumentModel.create(snapshot, fullEnvironment) + + // initialize formula adapters after the document has been created + formulaManager.addAdapters([ + new AttributeFormulaAdapter(adapterApi), + new PlottedValueFormulaAdapter(adapterApi), + new PlottedFunctionFormulaAdapter(adapterApi) + ]) + addDisposer(document, onAction(document, (call) => { if (!document.content || !call.path?.match(/\/content\/tileMap\//)) { return