diff --git a/package-lock.json b/package-lock.json
index b371e658092c..499463ff02b5 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -10,6 +10,7 @@
"addons-linter": "7.8.0",
"clean-css": "5.3.3",
"clean-css-cli": "5.6.3",
+ "highcharts": "^12.1.2",
"jqmodal": "1.4.2",
"jquery": "3.7.1",
"jquery-pjax": "2.0.1",
@@ -20,7 +21,7 @@
"less": "4.2.2",
"netmask": "2.0.2",
"source-map": "0.7.4",
- "timeago": "1.6.7",
+ "timeago.js": "^4.0.2",
"underscore": "1.13.7"
},
"devDependencies": {
@@ -2805,6 +2806,11 @@
"node": ">=8"
}
},
+ "node_modules/highcharts": {
+ "version": "12.1.2",
+ "resolved": "https://registry.npmjs.org/highcharts/-/highcharts-12.1.2.tgz",
+ "integrity": "sha512-paZ72q1um0zZT1sS+O/3JfXVSOLPmZ0zlo8SgRc0rEplPFPQUPc4VpkgQS8IUTueeOBgIWwVpAWyC9tBYbQ0kg=="
+ },
"node_modules/html-encoding-sniffer": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz",
@@ -4452,13 +4458,10 @@
"real-require": "^0.2.0"
}
},
- "node_modules/timeago": {
- "version": "1.6.7",
- "resolved": "https://registry.npmjs.org/timeago/-/timeago-1.6.7.tgz",
- "integrity": "sha512-FikcjN98+ij0siKH4VO4dZ358PR3oDDq4Vdl1+sN9gWz1/+JXGr3uZbUShYH/hL7bMhcTpPbplJU5Tej4b4jbQ==",
- "dependencies": {
- "jquery": ">=1.5.0 <4.0"
- }
+ "node_modules/timeago.js": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/timeago.js/-/timeago.js-4.0.2.tgz",
+ "integrity": "sha512-a7wPxPdVlQL7lqvitHGGRsofhdwtkoSXPGATFuSOA2i1ZNQEPLrGnj68vOp2sOJTCFAQVXPeNMX/GctBaO9L2w=="
},
"node_modules/tinybench": {
"version": "2.9.0",
@@ -7842,6 +7845,11 @@
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
},
+ "highcharts": {
+ "version": "12.1.2",
+ "resolved": "https://registry.npmjs.org/highcharts/-/highcharts-12.1.2.tgz",
+ "integrity": "sha512-paZ72q1um0zZT1sS+O/3JfXVSOLPmZ0zlo8SgRc0rEplPFPQUPc4VpkgQS8IUTueeOBgIWwVpAWyC9tBYbQ0kg=="
+ },
"html-encoding-sniffer": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz",
@@ -9066,13 +9074,10 @@
"real-require": "^0.2.0"
}
},
- "timeago": {
- "version": "1.6.7",
- "resolved": "https://registry.npmjs.org/timeago/-/timeago-1.6.7.tgz",
- "integrity": "sha512-FikcjN98+ij0siKH4VO4dZ358PR3oDDq4Vdl1+sN9gWz1/+JXGr3uZbUShYH/hL7bMhcTpPbplJU5Tej4b4jbQ==",
- "requires": {
- "jquery": ">=1.5.0 <4.0"
- }
+ "timeago.js": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/timeago.js/-/timeago.js-4.0.2.tgz",
+ "integrity": "sha512-a7wPxPdVlQL7lqvitHGGRsofhdwtkoSXPGATFuSOA2i1ZNQEPLrGnj68vOp2sOJTCFAQVXPeNMX/GctBaO9L2w=="
},
"tinybench": {
"version": "2.9.0",
diff --git a/package.json b/package.json
index d92cc3b4c00f..5316302f39ac 100644
--- a/package.json
+++ b/package.json
@@ -16,6 +16,7 @@
"addons-linter": "7.8.0",
"clean-css": "5.3.3",
"clean-css-cli": "5.6.3",
+ "highcharts": "^12.1.2",
"jqmodal": "1.4.2",
"jquery": "3.7.1",
"jquery-pjax": "2.0.1",
@@ -26,7 +27,7 @@
"less": "4.2.2",
"netmask": "2.0.2",
"source-map": "0.7.4",
- "timeago": "1.6.7",
+ "timeago.js": "^4.0.2",
"underscore": "1.13.7"
},
"devDependencies": {
diff --git a/src/olympia/abuse/admin.py b/src/olympia/abuse/admin.py
index ceb648000faf..87ed64ad7a21 100644
--- a/src/olympia/abuse/admin.py
+++ b/src/olympia/abuse/admin.py
@@ -92,12 +92,7 @@ def queryset(self, request, queryset):
class AbuseReportAdmin(AMOModelAdmin):
class Media(AMOModelAdmin.Media):
- css = {
- 'all': (
- 'css/admin/amoadmin.css',
- 'css/admin/abuse_reports.css',
- )
- }
+ css = {'all': ('css/admin-abuse-report.css',)}
date_hierarchy = 'modified'
list_display = (
diff --git a/src/olympia/addons/admin.py b/src/olympia/addons/admin.py
index 7429598e5104..f8b7ad1dd662 100644
--- a/src/olympia/addons/admin.py
+++ b/src/olympia/addons/admin.py
@@ -176,18 +176,8 @@ def get_queryset(self, request):
class AddonAdmin(AMOModelAdmin):
class Media(AMOModelAdmin.Media):
- css = {
- 'all': (
- 'css/admin/amoadmin.css',
- 'css/admin/l10n.css',
- 'css/admin/pagination.css',
- 'css/admin/addons.css',
- )
- }
- js = AMOModelAdmin.Media.js + (
- 'admin/js/jquery.init.js',
- 'js/admin/l10n.js',
- )
+ css = {'all': ('css/admin-addon.css',)}
+ js = AMOModelAdmin.Media.js + ('js/admin-addon.js',)
list_display = (
'__str__',
diff --git a/src/olympia/amo/admin.py b/src/olympia/amo/admin.py
index 1fc71257ee60..4c59f44fac37 100644
--- a/src/olympia/amo/admin.py
+++ b/src/olympia/amo/admin.py
@@ -180,12 +180,8 @@ def get_query_string(self, new_params=None, remove=None):
class AMOModelAdmin(admin.ModelAdmin):
class Media:
- js = (
- 'js/admin/ip_address_search.js',
- 'js/exports.js',
- 'netmask/lib/netmask.js',
- )
- css = {'all': ('css/admin/amoadmin.css',)}
+ js = ('js/admin.js',)
+ css = {'all': ('css/admin.css',)}
# Classes that want to implement search by ip can override these if needed.
search_by_ip_actions = () # Deactivated by default.
diff --git a/src/olympia/blocklist/templates/admin/blocklist/blocklistsubmission_add_form.html b/src/olympia/blocklist/templates/admin/blocklist/blocklistsubmission_add_form.html
index b60b5b9f9209..ac4e864779b3 100644
--- a/src/olympia/blocklist/templates/admin/blocklist/blocklistsubmission_add_form.html
+++ b/src/olympia/blocklist/templates/admin/blocklist/blocklistsubmission_add_form.html
@@ -2,8 +2,8 @@
{% load admin_urls static admin_modify %}
{% block extrahead %}{{ block.super }}
-
-
+
+{{ vite_asset('js/blocklist_blocklistsubmission.js') }}
{{ media }}
{% endblock %}
diff --git a/src/olympia/blocklist/templates/admin/blocklist/blocklistsubmission_change_form.html b/src/olympia/blocklist/templates/admin/blocklist/blocklistsubmission_change_form.html
index fbd8a582aa0e..59fbed2910c3 100644
--- a/src/olympia/blocklist/templates/admin/blocklist/blocklistsubmission_change_form.html
+++ b/src/olympia/blocklist/templates/admin/blocklist/blocklistsubmission_change_form.html
@@ -2,7 +2,7 @@
{% load admin_urls static %}
{% block admin_change_form_document_ready %}
{{ block.super }}
-
+{{ vite_asset('js/blocklist_blocklistsubmission.js') }}
{% endblock %}
{% block submit_buttons_bottom %}
diff --git a/src/olympia/blocklist/templates/admin/blocklist/multi_guid_input.html b/src/olympia/blocklist/templates/admin/blocklist/multi_guid_input.html
index 79f6940cee3b..15d8b5228c0a 100644
--- a/src/olympia/blocklist/templates/admin/blocklist/multi_guid_input.html
+++ b/src/olympia/blocklist/templates/admin/blocklist/multi_guid_input.html
@@ -2,7 +2,7 @@
{% load admin_urls static admin_modify %}
{% block extrahead %}{{ block.super }}
-
+
{{ media }}
{% endblock %}
diff --git a/src/olympia/devhub/templates/devhub/base.html b/src/olympia/devhub/templates/devhub/base.html
index 2d8f701942a8..a92f7a10f041 100644
--- a/src/olympia/devhub/templates/devhub/base.html
+++ b/src/olympia/devhub/templates/devhub/base.html
@@ -21,7 +21,7 @@
{% block title %}{{ dev_page_title() }}{% endblock %}
{% block extrahead %}
- {{ css('zamboni/devhub') }}
+ {{ vite_asset('css/devhub.less') }}
{% endblock %}
{% block site_header_title %}
@@ -29,7 +29,7 @@
{% endblock %}
{% block js %}
- {{ js('zamboni/devhub') }}
+ {{ vite_asset('js/devhub.js') }}
{% endblock %}
{% block footer_extras %}
diff --git a/src/olympia/devhub/templates/devhub/index.html b/src/olympia/devhub/templates/devhub/index.html
index 1402492474c1..5a2c9b571b14 100644
--- a/src/olympia/devhub/templates/devhub/index.html
+++ b/src/olympia/devhub/templates/devhub/index.html
@@ -23,9 +23,9 @@
href="{{ url('amo.opensearch') }}" />
{% block site_css %}
- {{ css('common/fonts') }}
- {{ css('devhub/new-landing/css') }}
- {{ css('common/footer') }}
+ {{ vite_asset('css/fonts.less') }}
+ {{ vite_asset('css/devhub-new-landing.less') }}
+ {{ vite_asset('css/footer.less') }}
{% endblock %}
{% block extrahead %}{% endblock %}
@@ -35,13 +35,9 @@
{% endif %}
{% if settings.DEV_MODE %}
- {% if settings.LESS_LIVE_REFRESH %}
-
- {% endif %}
- {{ js('debug') }}
+ {{ vite_hmr_client() }}
{% endif %}
- {{ js('jquery_base') }}
{{ vite_asset('js/preload.js') }}
{% set user_authenticated = request.user.is_authenticated %}
@@ -81,7 +77,7 @@
{% block site_js %}
- {{ js('devhub/new-landing/js') }}
+ {{ vite_asset('js/devhub-new-landing.js') }}
{% endblock %}