This commit is contained in:
2026-01-15 01:55:21 +01:00
parent 6dfc59cd24
commit e3bf9f5c30

View File

@@ -79,7 +79,7 @@
            try {              try { 
                done && done();                  done && done(); 
            } catch(e){              } catch(e){ 
                if (e.message.includes('setting getter-only property "defaults"')) {                 if (e.message.includes('setting getter-only property "defaults"') || e.message.includes('Cannot set property defaults')) {
                    log('RUNTIME WARNING', `IGNORIERE Block-Konflikt in ${filename}: ${e.message}`, 'orange', 'warn');                     log('RUNTIME WARNING', `IGNORIERE Block-Konflikt in ${filename}: ${e.message}`, 'orange', 'warn');
                } else {                 } else {
                    // 🛑 KORREKTUR: force: true explizit auf false setzen (oder weglassen)                     // 🛑 KORREKTUR: force: true explizit auf false setzen (oder weglassen)
@@ -798,22 +798,34 @@
const BaseView = baseType.view; const BaseView = baseType.view;
domc.addType('bridge-table', { domc.addType('bridge-table', {
model: BaseModel.extend({ model: BaseModel.extend({
defaults: Object.assign({}, (typeof BaseModel.prototype.defaults === 'function' ? BaseModel.prototype.defaults() : (BaseModel.prototype.defaults || {})), { initialize(props = {}, opts = {}) {
tagName: 'table', if (BaseModel.prototype.initialize) {
attributes: { BaseModel.prototype.initialize.apply(this, [props, opts]);
}
const attrs = this.getAttributes ? this.getAttributes() : {};
const nextAttrs = Object.assign({
'data-bridge-table': '1', 'data-bridge-table': '1',
'data-bridge-rows': '3', 'data-bridge-rows': '3',
'data-bridge-cols': '2', 'data-bridge-cols': '2',
role: 'presentation', role: 'presentation',
}, }, attrs || {});
toolbar: [ if (this.addAttributes) {
{ this.addAttributes(nextAttrs);
label: tableIcon, } else if (this.set) {
command: 'bridge-table:edit', this.set('attributes', nextAttrs, { silent: true });
attributes: { title: 'Tabelle bearbeiten' }, }
}, const toolbar = this.get && this.get('toolbar');
], if (!Array.isArray(toolbar) || !toolbar.some(btn => btn && btn.command === 'bridge-table:edit')) {
}), this.set && this.set('toolbar', [
...(Array.isArray(toolbar) ? toolbar : []),
{
label: tableIcon,
command: 'bridge-table:edit',
attributes: { title: 'Tabelle bearbeiten' },
},
]);
}
},
}), }),
view: BaseView, view: BaseView,
isComponent: el => { isComponent: el => {
@@ -1165,13 +1177,16 @@
log('CONTENT', 'JSON-Projektzustand angewendet.', 'orange'); log('CONTENT', 'JSON-Projektzustand angewendet.', 'orange');
} catch (e) { } catch (e) {
log('CONTENT ERROR', `JSON loadProjectData Fehler: ${e.message}`, 'red', 'error'); log('CONTENT ERROR', `JSON loadProjectData Fehler: ${e.message}`, 'red', 'error');
if (!html) {
html = jsonPayload;
}
} finally { } finally {
window.__GJS_IS_PARSING = false; window.__GJS_IS_PARSING = false;
isParsing = false; isParsing = false;
} }
} }
if (!applied && html && !ed.getComponents().length) { if (!applied && html) {
window.__GJS_IS_PARSING = true;  window.__GJS_IS_PARSING = true; 
isParsing = true; isParsing = true;
eventCounts = {}; eventCounts = {};