Skip to content

18.0 poc frontend owl wbr #1120

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 12 commits into
base: 18.0
Choose a base branch
from
Draft

Conversation

Williambraecky
Copy link
Contributor

No description provided.

- Move libs from ./static/src/libs to ./static/libs
- Move img from ./static/src/img to ./static/img
- Remove the ./js subfolder of src
- Remove empty log_display.js file
- Remove the unused runbot.assets_frontend bundle
The lib exports its data through the global object, an odoo module then
re-exports the module to make it available to other odoo modules.
Adds the minimal requirements for owl and xml file based templating for
the frontend.
Copies the colibri + interaction framework from `web` module.
We also bootstrap interactions to be used in the frontend.
Rewrites runbot.js in modern js with the new Interaction framework.
Instead of hardcoding rels, move assets to the bundle.
Until now api routes on runbot have been created through custom website
pages in production.
We want to unify the API by making a 'public' api, inspired by the way
`web_search_read` works.

This commit adds:
 - A route to list all publicly available models
 - A route to do a read on a public model
 - A route to fetch the publicly available specification for a model
 - A public model mixin that provides all the tools required to support
   the above mentionned routes.

The mixin adds the ability to add the `public` attribute on fields.
Any field marked as public can then be publicly queried through the
controller.
Relational fields work in a nested manner (`fields` key in the field's
sub-specification) (up to a depth of 10).
The public api does not allow going through a relationship back and
front (parent->child->parent is NOT allowed).

Because we are based on `web_search_read`, we heavily focus on
validating the specification, for security reasons, and offset the load
of reading to the `web_read` function (we currently don't provide limit
metadata).
Implements the public model mixin for `runbot.bundle` and make enough
fields public to be able to render the runbot homepage.
@Williambraecky Williambraecky requested a review from Copilot April 7, 2025 12:29
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 102 out of 103 changed files in this pull request and generated 2 comments.

Files not reviewed (1)
  • runbot/security/ir.rule.csv: Language not supported

@Williambraecky Williambraecky force-pushed the 18.0-poc-frontend-owl-wbr branch from 5cb24db to a2d6d16 Compare April 9, 2025 10:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant