46 lines
1.2 KiB
JavaScript
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
|
|
);
|
|
}
|
|
}
|