UNPKG

@aws/pdk

Version:

All documentation is located at: https://aws.github.io/aws-pdk

30 lines (27 loc) 715 B
'use strict'; var define = require('define-properties'); var gOPD = require('gopd'); var getPolyfill = require('./polyfill'); module.exports = function shimGlobal() { var polyfill = getPolyfill(); if (define.supportsDescriptors) { var descriptor = gOPD(polyfill, 'globalThis'); if ( !descriptor || ( descriptor.configurable && (descriptor.enumerable || !descriptor.writable || globalThis !== polyfill) ) ) { Object.defineProperty(polyfill, 'globalThis', { configurable: true, enumerable: false, value: polyfill, writable: true }); } } else if (typeof globalThis !== 'object' || globalThis !== polyfill) { polyfill.globalThis = polyfill; } return polyfill; };