aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwxiaoguang <wxiaoguang@gmail.com>2023-03-20 23:17:56 +0800
committerGitHub <noreply@github.com>2023-03-20 23:17:56 +0800
commit529bac1950adf4fb72433cb67f66b0eec49224fe (patch)
tree2d92f6b183a7e8bb53dc724bfdda93c5657f6353
parentccd3a55bf4f07a390e13d48100c58fb937fd3dcf (diff)
downloadgitea-529bac1950adf4fb72433cb67f66b0eec49224fe.tar.gz
gitea-529bac1950adf4fb72433cb67f66b0eec49224fe.zip
Polyfill the window.customElements (#23592)
Related: #23590 Reference: https://github.com/webcomponents/polyfills/tree/master/packages/webcomponentsjs It seems that there are some users using old browsers, so the `window.customElements` need polyfill. The Custom Elements would help a lot for Gitea's UI problems, including: * `<span class="js-pretty-number">` * `<time data-format>` So it's worth get polyfill. --------- Co-authored-by: delvh <dev.lh@web.de>
-rw-r--r--package-lock.json6
-rw-r--r--package.json1
-rw-r--r--web_src/js/webcomponents/GiteaOriginUrl.js2
3 files changed, 9 insertions, 0 deletions
diff --git a/package-lock.json b/package-lock.json
index ea3c539c91..353e0ab655 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -15,6 +15,7 @@
"@mcaptcha/vanilla-glue": "0.1.0-alpha-3",
"@primer/octicons": "18.2.0",
"@vue/compiler-sfc": "3.2.47",
+ "@webcomponents/custom-elements": "1.5.1",
"add-asset-webpack-plugin": "2.0.1",
"ansi-to-html": "0.7.2",
"asciinema-player": "3.2.0",
@@ -1915,6 +1916,11 @@
"@xtuc/long": "4.2.2"
}
},
+ "node_modules/@webcomponents/custom-elements": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/@webcomponents/custom-elements/-/custom-elements-1.5.1.tgz",
+ "integrity": "sha512-6T/XT3S1UHDlRWFSxRXdeSoYWczEl78sygNPS7jDyHVrfZcF/pUtWGYgxF4uviH59iPVw1eOWbhubm8CqO0MpA=="
+ },
"node_modules/@webpack-cli/configtest": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.0.1.tgz",
diff --git a/package.json b/package.json
index 9ff4ac2783..db7cf1154b 100644
--- a/package.json
+++ b/package.json
@@ -15,6 +15,7 @@
"@mcaptcha/vanilla-glue": "0.1.0-alpha-3",
"@primer/octicons": "18.2.0",
"@vue/compiler-sfc": "3.2.47",
+ "@webcomponents/custom-elements": "1.5.1",
"add-asset-webpack-plugin": "2.0.1",
"ansi-to-html": "0.7.2",
"asciinema-player": "3.2.0",
diff --git a/web_src/js/webcomponents/GiteaOriginUrl.js b/web_src/js/webcomponents/GiteaOriginUrl.js
index 47fd13bfc1..c8736ac5c5 100644
--- a/web_src/js/webcomponents/GiteaOriginUrl.js
+++ b/web_src/js/webcomponents/GiteaOriginUrl.js
@@ -1,3 +1,5 @@
+import '@webcomponents/custom-elements'; // automatically adds custom elements for older browsers that don't support it
+
// this is a Gitea's private HTML component, it converts an absolute or relative URL to an absolute URL with the current origin
window.customElements.define('gitea-origin-url', class extends HTMLElement {
connectedCallback() {