diff --git a/packages/babel-plugin-inject-polyfills/src/index.js b/packages/babel-plugin-inject-polyfills/src/index.js index 71b4e334..96601a42 100644 --- a/packages/babel-plugin-inject-polyfills/src/index.js +++ b/packages/babel-plugin-inject-polyfills/src/index.js @@ -29,12 +29,13 @@ import type { Targets, MetaDescriptor, PolyfillProvider, + Utils, } from "./types"; import createMetaResolver from "./meta-resolver"; export { resolveProvider } from "./config"; -export type { PolyfillProvider, MetaDescriptor }; +export type { PolyfillProvider, MetaDescriptor, Utils }; export default declare((api, options: Options, dirname: string) => { api.assertVersion(7); diff --git a/packages/babel-polyfill-provider-es-shims/src/index.js b/packages/babel-polyfill-provider-es-shims/src/index.js index 4a8795eb..c0f1c0ed 100644 --- a/packages/babel-polyfill-provider-es-shims/src/index.js +++ b/packages/babel-polyfill-provider-es-shims/src/index.js @@ -1,6 +1,6 @@ // @flow -import { type PolyfillProvider } from "@babel/plugin-inject-polyfills"; +import type { PolyfillProvider, Utils } from "@babel/plugin-inject-polyfills"; import resolve from "resolve"; import debounce from "lodash.debounce"; @@ -43,7 +43,7 @@ export default (( } } - function createDescIterator(cb) { + function createDescIterator(cb: (Descriptor, Utils, Object) => void) { return (meta, utils, path) => { const resolved = resolvePolyfill(meta); if (!resolved) return; diff --git a/packages/babel-polyfill-provider-es-shims/src/mappings.js b/packages/babel-polyfill-provider-es-shims/src/mappings.js index cae07deb..c89d9cd4 100644 --- a/packages/babel-polyfill-provider-es-shims/src/mappings.js +++ b/packages/babel-polyfill-provider-es-shims/src/mappings.js @@ -1,5 +1,8 @@ // @flow +// $FlowIgnore +const has = Function.call.bind(Object.hasOwnProperty); + export type Descriptor = { name: string, version: string, @@ -8,9 +11,9 @@ export type Descriptor = { global?: false, }; -export const Globals = Object.create(null); -export const StaticProperties = Object.create(null); -export const InstanceProperties = Object.create(null); +export const Globals = {}; +export const StaticProperties = {}; +export const InstanceProperties = {}; defineGlobal("globalThis", "1.0.0", "globalThis"); @@ -58,7 +61,7 @@ function defineGlobal(name, version, pkg) { } function defineStatic(object, property, version, pkg) { - if (!StaticProperties[object]) StaticProperties[object] = Object.create(null); + if (!has(StaticProperties, object)) StaticProperties[object] = {}; StaticProperties[object][property] = [ createDescriptor(`${object}.${property}`, version, pkg), @@ -66,7 +69,7 @@ function defineStatic(object, property, version, pkg) { } function defineInstance(object, property, version, pkg) { - if (!InstanceProperties[property]) InstanceProperties[property] = []; + if (!has(InstanceProperties, property)) InstanceProperties[property] = []; InstanceProperties[property].push({ ...createDescriptor(`${object}.prototype.${property}`, version, pkg),