add-platform-specific-polyfills.js 871 B

123456789101112131415161718192021
  1. "use strict";
  2. exports.__esModule = true;
  3. exports.default = _default;
  4. function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
  5. const webPolyfills = {
  6. "web.timers": {},
  7. "web.immediate": {},
  8. "web.dom.iterable": {}
  9. };
  10. const purePolyfills = {
  11. "es6.parse-float": {},
  12. "es6.parse-int": {},
  13. "es7.string.at": {}
  14. };
  15. function _default(targets, method, polyfills) {
  16. const targetNames = Object.keys(targets);
  17. const isAnyTarget = !targetNames.length;
  18. const isWebTarget = targetNames.some(name => name !== "node");
  19. return _extends({}, polyfills, method === "usage-pure" ? purePolyfills : null, isAnyTarget || isWebTarget ? webPolyfills : null);
  20. }