ember-cli / ember-cli/broccoli-asset-rev
Support adding to the default fingerprinted extensions
- Dominant language
- JavaScript
- Stars
- 86
- Forks
- 79
- PR merge metrics
- No merged PRs in 30d
Description
* ember-cli 2.13.0
* broccoli-asset-rev 2.5.0
It looks like setting `extensions: ["foo"]` will override and replace and the default extensions configuration. There doesn't seem to be a configurable way of extending that list of default extensions.
----
When using `fingerprintOptions` via ember-cli, I noticed that `"svg"` isn't part of [the default extension options](https://github.com/rickharrison/broccoli-asset-rev/blob/5b3c480ad241b2503acfd30bb1c3c45e19a27dab/lib/default-options.js#L5), which was causing some discrepancies with `url('/assets/images/.../foo.svg')` vs `url('/images/.../foo.svg')` in CSS.
To fix that, I tried setting this configuration:
```js
var app = new EmberApp(defaults, {
fingerprint: {
enabled: true,
exclude: ['fonts'],
extensions: ["svg"]
},
/* ... */
});
```
However, looking at the code, [that seems to override and remove the default options](https://github.com/rickharrison/broccoli-asset-rev/blob/5b3c480ad241b2503acfd30bb1c3c45e19a27dab/lib/asset-rev.js#L15), since `options.extensions` takes precedence over `defaults.extensions`.
Also, setting `extensions: ["svg"]` caused my app to not build correctly, for reasons I can't quite explain.
It would be great to be able to _add_ to the default extensions list.
I worked around that manually like so:
```js
var defaultFingerprintExtensions = require('broccoli-asset-rev/lib/default-options').extensions;
/* ... */
var app = new EmberApp(defaults, {
fingerprint: {
enabled: true,
exclude: ['fonts'],
extensions: defaultFingerprintExtensions.concat(["svg"])
},
/* ... */
});
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.