UNPKG

431 BJavaScriptView Raw
1function polyfillSymbol(key) {
2 if (typeof Symbol === 'function' && !Symbol[key]) {
3 Object.defineProperty(Symbol, key, {
4 value: Symbol(key)
5 });
6 }
7}
8
9polyfillSymbol('observable');
10
11module.exports = function (key) {
12 if (typeof Symbol !== 'undefined' && Symbol[key]) {
13 return Symbol[key];
14 } else if (typeof Symbol !== 'undefined' && typeof Symbol.for === 'function') {
15 return Symbol.for(key);
16 }
17
18 return '@@' + key;
19};