')
+ .addClass('fas fa-fw o_button_icon')
+ .addClass(node.attrs.solid_icon)
+ .prependTo($button);
+ }
+ if (node.attrs.regular_icon) {
+ $('
')
+ .addClass('far fa-fw o_button_icon')
+ .addClass(node.attrs.regular_icon)
+ .prependTo($button);
+ }
+ return $button;
+ }
+});
+
+});
diff --git a/base_fontawesome/static/src/js/list_renderer.js b/base_fontawesome/static/src/js/list_renderer.js
new file mode 100644
index 000000000..9a04ea680
--- /dev/null
+++ b/base_fontawesome/static/src/js/list_renderer.js
@@ -0,0 +1,34 @@
+odoo.define('base_fontawesome5.ListRenderer', function (require) {
+"use strict";
+
+var ListRenderer = require('web.ListRenderer');
+
+
+ListRenderer.include({
+
+ _renderButton: function (record, node) {
+ var $button = this._super.apply(this, arguments);
+
+ if (node.attrs.brand_icon) {
+ $('
')
+ .addClass('fab fa-fw o_button_icon')
+ .addClass(node.attrs.brand_icon)
+ .prependTo($button);
+ }
+ if (node.attrs.solid_icon) {
+ $('
')
+ .addClass('fas fa-fw o_button_icon')
+ .addClass(node.attrs.solid_icon)
+ .prependTo($button);
+ }
+ if (node.attrs.regular_icon) {
+ $('
')
+ .addClass('far fa-fw o_button_icon')
+ .addClass(node.attrs.regular_icon)
+ .prependTo($button);
+ }
+ return $button;
+ }
+});
+
+});
diff --git a/base_fontawesome/templates/assets.xml b/base_fontawesome/templates/assets.xml
new file mode 100644
index 000000000..82eb7f217
--- /dev/null
+++ b/base_fontawesome/templates/assets.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+