mirror of
https://github.com/go-gitea/gitea.git
synced 2025-05-07 08:22:54 +00:00
parent
d28a7f9fea
commit
d70be9d0fe
7
web_src/js/webcomponents/polyfill.test.ts
Normal file
7
web_src/js/webcomponents/polyfill.test.ts
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
import {weakRefClass} from './polyfills.ts';
|
||||||
|
|
||||||
|
test('polyfillWeakRef', () => {
|
||||||
|
const WeakRef = weakRefClass();
|
||||||
|
const r = new WeakRef(123);
|
||||||
|
expect(r.deref()).toEqual(123);
|
||||||
|
});
|
@ -16,3 +16,19 @@ try {
|
|||||||
return intlNumberFormat(locales, options);
|
return intlNumberFormat(locales, options);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function weakRefClass() {
|
||||||
|
const weakMap = new WeakMap();
|
||||||
|
return class {
|
||||||
|
constructor(target: any) {
|
||||||
|
weakMap.set(this, target);
|
||||||
|
}
|
||||||
|
deref() {
|
||||||
|
return weakMap.get(this);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!window.WeakRef) {
|
||||||
|
window.WeakRef = weakRefClass() as any;
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user