Odoo18-Base/addons/web_hierarchy/static/src/hierarchy_compiler.js
2025-01-06 10:57:38 +07:00

46 lines
1.2 KiB
JavaScript

/** @odoo-module **/
import { KanbanCompiler } from "@web/views/kanban/kanban_compiler";
export class HierarchyCompiler extends KanbanCompiler {
/**
* @override
* @param {Element} el
* @param {Object} params
* @returns {Element}
*/
compileField(el, params) {
const fieldName = el.getAttribute("name");
return super.compileField(el, {
...(params || {}),
recordExpr: "__record__",
dataPointIdExpr: "__comp__.props.node.id",
formattedValueExpr: `record['${fieldName}'].value`,
});
}
compileButton(el, params) {
return super.compileButton(el, {
...(params || {}),
recordExpr: "__record__",
});
}
/**
* Allow access to the record during compilation, to properly evaluate
* invisible on any hierarchy card nodes declared in the view.
*
* @override
*/
compileNode(node, params = {}, evalInvisible = true) {
return super.compileNode(
node,
{
...params,
recordExpr: "__record__",
},
evalInvisible
);
}
}