Add minimum polyfill to support "relative-time-element" in PaleMoon (#26575)
Close #26525
This commit is contained in:
parent
445dbda276
commit
e5b3f53d36
2 changed files with 19 additions and 0 deletions
17
web_src/js/webcomponents/polyfill.js
Normal file
17
web_src/js/webcomponents/polyfill.js
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
try {
|
||||||
|
// some browsers like PaleMoon don't have full support for Intl.NumberFormat, so do the minimum polyfill to support "relative-time-element"
|
||||||
|
// https://repo.palemoon.org/MoonchildProductions/UXP/issues/2289
|
||||||
|
new Intl.NumberFormat('en', {style: 'unit', unit: 'minute'}).format(1);
|
||||||
|
} catch {
|
||||||
|
const intlNumberFormat = Intl.NumberFormat;
|
||||||
|
Intl.NumberFormat = function(locales, options) {
|
||||||
|
if (options.style === 'unit') {
|
||||||
|
return {
|
||||||
|
format(value) {
|
||||||
|
return ` ${value} ${options.unit}`;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return intlNumberFormat(locales, options);
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,3 +1,5 @@
|
||||||
import '@webcomponents/custom-elements'; // polyfill for some browsers like Pale Moon
|
import '@webcomponents/custom-elements'; // polyfill for some browsers like Pale Moon
|
||||||
|
import './polyfill.js';
|
||||||
|
|
||||||
import '@github/relative-time-element';
|
import '@github/relative-time-element';
|
||||||
import './GiteaOriginUrl.js';
|
import './GiteaOriginUrl.js';
|
||||||
|
|
Loading…
Reference in a new issue