diff --git a/addons/web/static/src/views/relational_model.js b/addons/web/static/src/views/relational_model.js index a6d1c989a31..001160e5ad6 100644 --- a/addons/web/static/src/views/relational_model.js +++ b/addons/web/static/src/views/relational_model.js @@ -21,7 +21,14 @@ import { session } from "@web/session"; import { FormArchParser } from "@web/views/form/form_arch_parser"; import { ListConfirmationDialog } from "@web/views/list/list_confirmation_dialog"; import { Model } from "@web/views/model"; -import { archParseBoolean, evalDomain, isNumeric, isRelational, isX2Many } from "@web/views/utils"; +import { + archParseBoolean, + evalDomain, + isNumeric, + isRelational, + isX2Many, + orderByToString, +} from "@web/views/utils"; const { DateTime } = luxon; import { markRaw, markup, toRaw } from "@odoo/owl"; @@ -66,20 +73,6 @@ export function isAllowedDateField(groupByField) { ); } -/** - * @typedef {Object} OrderTerm ? - * @property {string} name - * @property {boolean} asc - */ - -/** - * @param {OrderTerm[]} orderBy - * @returns {string} - */ -function orderByToString(orderBy) { - return orderBy.map((o) => `${o.name} ${o.asc ? "ASC" : "DESC"}`).join(", "); -} - /** * @param {RawContext} rawContext * @param {Context} defaultContext diff --git a/addons/web/static/src/views/utils.js b/addons/web/static/src/views/utils.js index 822194ae2ed..b5d58444bd1 100644 --- a/addons/web/static/src/views/utils.js +++ b/addons/web/static/src/views/utils.js @@ -241,6 +241,20 @@ export function processMeasure(measure) { return measure === "__count__" ? "__count" : measure; } +/** + * @typedef {Object} OrderTerm ? + * @property {string} name + * @property {boolean} asc + */ + +/** + * @param {OrderTerm[]} orderBy + * @returns {string} + */ +export function orderByToString(orderBy) { + return orderBy.map((o) => `${o.name} ${o.asc ? "ASC" : "DESC"}`).join(", "); +} + /** * @param {any} string * @return {OrderTerm[]}