Opened 2 years ago
Last modified 2 weeks ago
#34563 assigned New feature
ManifestStaticFilesStorage support for CSS module scripts in Javascript files.
Reported by: | Michael | Owned by: | blighj |
---|---|---|---|
Component: | contrib.staticfiles | Version: | 4.2 |
Severity: | Normal | Keywords: | Manifest Static Files Storage, javascript css html module scripts |
Cc: | Adam Johnson | Triage Stage: | Someday/Maybe |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
CSS modules scripts are becomming a thing, see https://web.dev/css-module-scripts/#:~:text=CSS%20module%20scripts%20are%20available,Safari%20is%20not%20yet%20available.
Current we only support JavaScript modules and not CSS modules with the ManifestStaticFilesStorage.
The following import paths in JS files files will need to be converted when collecting static with ManifestStaticFilesStorage:
import sheet from './styles.css' assert { type: 'css' };
Additionally WHATWG is firming up HTML modules, so we could proactively handle this too while we are at it:
import content from './template.html' assert { type: 'html };
Change History (4)
comment:1 by , 2 years ago
Cc: | added |
---|---|
Triage Stage: | Unreviewed → Someday/Maybe |
comment:2 by , 2 years ago
I agree, let’s get multiple browser support before modifying Django. You can implement support in your project or a third party package beforehand.
comment:3 by , 5 weeks ago
This package I've been working on, and hoping to get feedback on, handles the assert syntax and will change the path of css/html files in an import statement, https://github.com/blighj/django-manifeststaticfiles-enhanced
comment:4 by , 2 weeks ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
https://github.com/django/django/pull/19561 Will solve this ticket too. This ticket can be closed if that is approved
I think it's too early for this as Firefox and Safari still don't support it, and there doesn't seem to be any ongoing work on supporting it in the last 2 years.