Skip to content

Commit 289e5fe

Browse files
committed
[IMP] awesome_dashboard: Implemented JS components and fixed schema warnings
- Removed deprecated attrs usage in ListView buttons - Ensured newline at end of XML cron file - Improved Python validation for property states - Corrected controller @route type to jsonrpc
1 parent c221253 commit 289e5fe

File tree

6 files changed

+3347
-14
lines changed

6 files changed

+3347
-14
lines changed

.eslintrc.json

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
{
2+
"extends": ["eslint:recommended", "plugin:prettier/recommended"],
3+
"parserOptions": {
4+
"sourceType": "module",
5+
"ecmaVersion": 2022
6+
},
7+
"env": {
8+
"browser": true,
9+
"es2022": true,
10+
"qunit": true
11+
},
12+
"rules": {
13+
"prettier/prettier": ["error", {
14+
"tabWidth": 4,
15+
"semi": true,
16+
"singleQuote": false,
17+
"printWidth": 100,
18+
"endOfLine": "auto"
19+
}],
20+
"no-undef": "error",
21+
"no-restricted-globals": ["error", "event", "self"],
22+
"no-const-assign": ["error"],
23+
"no-debugger": ["error"],
24+
"no-dupe-class-members": ["error"],
25+
"no-dupe-keys": ["error"],
26+
"no-dupe-args": ["error"],
27+
"no-dupe-else-if": ["error"],
28+
"no-unsafe-negation": ["error"],
29+
"no-duplicate-imports": ["error"],
30+
"valid-typeof": ["error"],
31+
"no-unused-vars": ["error", { "vars": "all", "args": "none", "ignoreRestSiblings": false, "caughtErrors": "all" }],
32+
"curly": ["error", "all"],
33+
"no-restricted-syntax": ["error", "PrivateIdentifier"],
34+
"prefer-const": ["error", {
35+
"destructuring": "all",
36+
"ignoreReadBeforeAssign": true
37+
}],
38+
"arrow-body-style": ["error", "as-needed"]
39+
},
40+
"globals": {
41+
"odoo": "readonly",
42+
"$": "readonly",
43+
"jQuery": "readonly",
44+
"Chart": "readonly",
45+
"fuzzy": "readonly",
46+
"StackTrace": "readonly",
47+
"QUnit": "readonly",
48+
"luxon": "readonly",
49+
"py": "readonly",
50+
"FullCalendar": "readonly",
51+
"globalThis": "readonly",
52+
"ScrollSpy": "readonly",
53+
"module": "readonly",
54+
"chai": "readonly",
55+
"describe": "readonly",
56+
"it": "readonly",
57+
"mocha": "readonly",
58+
"DOMPurify": "readonly",
59+
"Prism": "readonly",
60+
61+
"Alert": "readonly",
62+
"Collapse": "readonly",
63+
"Dropdown": "readonly",
64+
"Modal": "readonly",
65+
"Offcanvas": "readonly",
66+
"Popover": "readonly",
67+
"Tooltip": "readonly"
68+
}
69+
}

.gitignore

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,20 +25,13 @@ share/python-wheels/
2525
*.egg-info/
2626
.installed.cfg
2727
*.egg
28-
.eslint.json
29-
.eslintrc.json
30-
.vscode/
31-
.idea/
32-
*.vscode/
28+
29+
3330
*.sublime-project
3431
*.sublime-workspace
35-
jsconfig.json
36-
package-lock.json
37-
yarn.lock
38-
pnpm-lock.yaml
39-
package.json
4032

4133
node_modules/
34+
4235
MANIFEST
4336

4437
# PyInstaller

Estate/models/estate_property.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from datetime import timedelta
22

33
from odoo import models, fields, api
4-
from odoo.exceptions import ValidationError , UserError
4+
from odoo.exceptions import ValidationError, UserError
55
from odoo.tools.float_utils import float_compare, float_is_zero
66

77

@@ -56,7 +56,7 @@ class EstateProperty(models.Model):
5656
'CHECK(expected_price > 0 AND selling_price >= 0)',
5757
'The Price of a property must be strictly positive.',
5858
)
59-
59+
6060
@api.depends("living_area", "garden_area")
6161
def _compute_total_area(self):
6262
for record in self:
@@ -89,7 +89,7 @@ def _check_selling_price(self):
8989
if not float_is_zero(record.selling_price, precision_digits=2):
9090
if float_compare(record.selling_price, 0.9 * record.expected_price, precision_digits=2) < 0:
9191
raise ValidationError("The selling price cannot be lower than 90% of the expected price.")
92-
92+
9393
@api.onchange("garden")
9494
def _onchange_garden(self):
9595
if self.garden:
@@ -117,7 +117,7 @@ def write(self, vals):
117117
def action_set_sold(self):
118118
for record in self:
119119
if record.state != 'canceled':
120-
record.state = 'sold'
120+
record.state = 'sold'
121121
else:
122122
raise UserError("once sold cannot be canceled")
123123

jsconfig.json

Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
{
2+
"compilerOptions": {
3+
"moduleResolution": "node",
4+
"baseUrl": ".",
5+
"target": "ES2022",
6+
"noEmit": true,
7+
"disableSizeLimit": true,
8+
"typeRoots": [
9+
"*/static/src/@types",
10+
"../community/addons/mail/static/src/js/tooling/types",
11+
"../community/addons/web/tooling/types"
12+
],
13+
"paths": {
14+
"@web/*": ["../community/addons/web/static/src/*"],
15+
"@web_enterprise/*": ["web_enterprise/static/src/*"],
16+
"@web_unsplash/*": ["../community/addons/web_unsplash/static/src/*"],
17+
"@web_tour/*": ["../community/addons/web_tour/static/src/*"],
18+
"@web_gantt/*": ["web_gantt/static/src/*"],
19+
"@web_cohort/*": ["web_cohort/static/src/*"],
20+
"@web_map/*": ["web_map/static/src/*"],
21+
"@web_mobile/*": ["web_mobile/static/src/*"],
22+
"@web_grid/*": ["web_grid/static/src/*"],
23+
"@web_studio/*": ["web_studio/static/src/*"],
24+
"@bus/*": ["../community/addons/bus/static/src/*"],
25+
"@mail/*": ["../community/addons/mail/static/src/*"],
26+
"@im_livechat/*": ["../community/addons/im_livechat/static/src/*"],
27+
"@spreadsheet/*": ["../community/addons/spreadsheet/static/src/*"],
28+
"@whatsapp/*": ["../community/addons/whatsapp/static/src/*"],
29+
30+
"@website/*": ["../community/addons/website/static/src/*"],
31+
"@html_editor/*": ["../community/addons/html_editor/static/src/*"],
32+
"@html_builder/*": ["../community/addons/html_builder/static/src/*"],
33+
"@point_of_sale/*": ["../community/addons/point_of_sale/static/src/*"],
34+
"@hw_posbox_homepage/*": ["../community/addons/hw_posbox_homepage/static/src/*"],
35+
"@l10n_ar_pos/*": ["../community/addons/l10n_ar_pos/static/src/*"],
36+
"@l10n_co_pos/*": ["../community/addons/l10n_co_pos/static/src/*"],
37+
"@l10n_es_pos/*": ["../community/addons/l10n_es_pos/static/src/*"],
38+
"@l10n_fr_pos_cert/*": ["../community/addons/l10n_fr_pos_cert/static/src/*"],
39+
"@l10n_gcc_pos/*": ["../community/addons/l10n_gcc_pos/static/src/*"],
40+
"@l10n_in_pos/*": ["../community/addons/l10n_in_pos/static/src/*"],
41+
"@l10n_sa_pos/*": ["../community/addons/l10n_sa_pos/static/src/*"],
42+
"@pos_adyen/*": ["../community/addons/pos_adyen/static/src/*"],
43+
"@pos_discount/*": ["../community/addons/pos_discount/static/src/*"],
44+
"@pos_hr/*": ["../community/addons/pos_hr/static/src/*"],
45+
"@pos_hr_restaurant/*": ["../community/addons/pos_hr_restaurant/static/src/*"],
46+
"@pos_loyalty/*": ["../community/addons/pos_loyalty/static/src/*"],
47+
"@pos_mrp/*": ["../community/addons/pos_mrp/static/src/*"],
48+
"@pos_online_payment/*": ["../community/addons/pos_online_payment/static/src/*"],
49+
"@pos_online_payment_self_order/*": [
50+
"../community/addons/pos_online_payment_self_order/static/src/*"
51+
],
52+
"@pos_restaurant/*": ["../community/addons/pos_restaurant/static/src/*"],
53+
"@pos_restaurant_adyen/*": ["../community/addons/pos_restaurant_adyen/static/src/*"],
54+
"@pos_restaurant_stripe/*": ["../community/addons/pos_restaurant_stripe/static/src/*"],
55+
"@pos_sale/*": ["../community/addons/pos_sale/static/src/*"],
56+
"@pos_sale_loyalty/*": ["../community/addons/pos_sale_loyalty/static/src/*"],
57+
"@pos_sale_margin/*": ["../community/addons/pos_sale_margin/static/src/*"],
58+
"@pos_self_order/*": ["../community/addons/pos_self_order/static/src/*"],
59+
"@pos_self_order_adyen/*": ["../community/addons/pos_self_order_adyen/static/src/*"],
60+
"@pos_self_order_epson_printer/*": ["../community/addons/pos_self_order_epson_printer/static/src/*"],
61+
"@pos_self_order_sale/*": ["../community/addons/pos_self_order_sale/static/src/*"],
62+
"@pos_self_order_stripe/*": ["../community/addons/pos_self_order_stripe/static/src/*"],
63+
"@pos_stripe/*": ["../community/addons/pos_stripe/static/src/*"],
64+
"@spreadsheet_dashboard_pos_hr/*": ["../community/addons/spreadsheet_dashboard_pos_hr/static/src/*"],
65+
66+
"@l10n_cl_edi_pos/*": ["l10n_cl_edi_pos/static/src/*"],
67+
"@l10n_de_pos_cert/*": ["l10n_de_pos_cert/static/src/*"],
68+
"@l10n_de_pos_res_cert/*": ["l10n_de_pos_res_cert/static/src/*"],
69+
"@l10n_in_reports_gstr_pos/*": ["l10n_in_reports_gstr_pos/static/src/*"],
70+
"@l10n_mx_edi_pos/*": ["l10n_mx_edi_pos/static/src/*"],
71+
"@l10n_pl_reports_pos_jpk/*": ["l10n_pl_reports_pos_jpk/static/src/*"],
72+
"@pos_account_reports/*": ["pos_account_reports/static/src/*"],
73+
"@pos_blackbox_be/*": ["pos_blackbox_be/static/src/*"],
74+
"@pos_enterprise/*": ["pos_enterprise/static/src/*"],
75+
"@pos_hr_mobile/*": ["pos_hr_mobile/static/src/*"],
76+
"@pos_iot/*": ["pos_iot/static/src/*"],
77+
"@pos_iot_six/*": ["pos_iot_six/static/src/*"],
78+
"@l10n_se_pos/*": ["l10n_se_pos/static/src/*"],
79+
"@pos_online_payment_self_order_preparation_display/*": [
80+
"pos_online_payment_self_order_preparation_display/static/src/*"
81+
],
82+
"@pos_order_tracking_display/*": ["pos_order_tracking_display/static/src/*"],
83+
"@pos_restaurant_appointment/*": ["pos_restaurant_appointment/static/src/*"],
84+
"@pos_restaurant_preparation_display/*": [
85+
"pos_restaurant_preparation_display/static/src/*"
86+
],
87+
"@pos_sale_stock_renting/*": ["pos_sale_stock_renting/static/src/*"],
88+
"@pos_self_order_iot/*": ["pos_self_order_iot/static/src/*"],
89+
"@pos_self_order_preparation_display/*": [
90+
"pos_self_order_preparation_display/static/src/*"
91+
],
92+
"@pos_settle_due/*": ["pos_settle_due/static/src/*"],
93+
"@pos_tyro/*": ["pos_tyro/static/src/*"],
94+
"@whatsapp_pos/*": ["whatsapp_pos/static/src/*"],
95+
96+
"@test_mail/*": ["../community/addons/test_mail/static/src/*"]
97+
}
98+
},
99+
"include": ["**/*.js", "**/*.ts"],
100+
"exclude": [
101+
"node_modules",
102+
"setup",
103+
"doc",
104+
"**/lib/ace",
105+
"**/lib/bootstrap",
106+
"**/lib/Chart",
107+
"**/lib/chartjs-adapter-luxon",
108+
"**/lib/fullcalendar",
109+
"**/lib/jquery",
110+
"**/lib/luxon",
111+
"**/lib/odoo_ui_icons",
112+
"**/lib/owl",
113+
"**/lib/pdfjs",
114+
"**/lib/popper",
115+
"**/lib/qunit",
116+
"**/lib/signature_pad",
117+
"**/lib/stacktracejs",
118+
"**/lib/zxing-library",
119+
"**/l10n*",
120+
"../community/addons/spreadsheet/static/src/o_spreadsheet/o_spreadsheet.js"
121+
]
122+
}

0 commit comments

Comments
 (0)