{"record":{"id":"85302d2b7f468089","repo":"octobercms/october","slug":"getrootproperties-must-be-implemented-in-cmsdocume","errorCode":null,"errorMessage":"getRootProperties must be implemented in CmsDocumentEditorComponentBase descendants.","messagePattern":"getRootProperties must be implemented in CmsDocumentEditorComponentBase descendants\\.","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"modules/cms/assets/js/cms.editor.extension.documentcomponent.base.js","lineNumber":78,"sourceCode":"\n        viewBagComponent: function computeViewBagComponent() {\n            if (!this.documentData.components) {\n                return undefined;\n            }\n\n            if (!Array.isArray(this.documentData.components)) {\n                return undefined;\n            }\n\n            return this.documentData.components.find((component) => {\n                return component.className === 'Cms\\\\Components\\\\ViewBag';\n            });\n        }\n    },\n\n    methods: {\n        getRootProperties: function getRootProperties() {\n            throw new Error('getRootProperties must be implemented in CmsDocumentEditorComponentBase descendants.');\n        },\n\n        monacoLoaded: function monacoLoaded() {\n            // Overwrite this method in subclasses\n        },\n\n        getInfoPopupItems: function getInfoPopupItems() {\n            const mtime = this.documentMetadata.mtime;\n            const storage = [this.trans('cms::lang.template.storage_filesystem')];\n\n            if (this.documentMetadata.canResetFromTemplateFile) {\n                storage.push(this.trans('cms::lang.template.storage_database'));\n            }\n\n            return [\n                {\n                    title: this.trans('cms::lang.template.last_modified'),\n                    value: moment.unix(mtime).format('ll LTS')","sourceCodeStart":60,"sourceCodeEnd":96,"githubUrl":"https://github.com/octobercms/october/blob/b608633a7e8922487d91a8161499020121c3b3bf/modules/cms/assets/js/cms.editor.extension.documentcomponent.base.js#L60-L96","documentation":"Error \"getRootProperties must be implemented in CmsDocumentEditorComponentBase descendants.\" thrown in octobercms/october.","triggerScenarios":"Thrown at modules/cms/assets/js/cms.editor.extension.documentcomponent.base.js:78 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"b608633a7e8922487d91a8161499020121c3b3bf","analyzedAt":"2026-08-21T04:24:57.515Z","schemaVersion":2},"datasetVersion":"2026-08-21T11:28:35.574Z"}