babel-plugin-polyfill-regenerator 0.2.3 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/esm/index.mjs CHANGED
@@ -2,12 +2,20 @@ import defineProvider from '@babel/helper-define-polyfill-provider';
2
2
 
3
3
  const runtimeCompat = "#__secret_key__@babel/runtime__compatibility";
4
4
  var index = defineProvider(({
5
- debug
5
+ debug,
6
+ targets,
7
+ babel
6
8
  }, options) => {
9
+ if (!shallowEqual(targets, babel.targets())) {
10
+ throw new Error("This plugin does not use the targets option. Only preset-env's targets" + " or top-level targets need to be configured for this plugin to work." + " See https://github.com/babel/babel-polyfills/issues/36 for more" + " details.");
11
+ }
12
+
7
13
  const {
8
14
  [runtimeCompat]: {
9
15
  useBabelRuntime
10
- } = {}
16
+ } = {
17
+ useBabelRuntime: ""
18
+ }
11
19
  } = options;
12
20
  const pureName = useBabelRuntime ? `${useBabelRuntime}/regenerator` : "regenerator-runtime";
13
21
  return {
@@ -32,5 +40,9 @@ var index = defineProvider(({
32
40
 
33
41
  const isRegenerator = meta => meta.kind === "global" && meta.name === "regeneratorRuntime";
34
42
 
43
+ function shallowEqual(obj1, obj2) {
44
+ return JSON.stringify(obj1) === JSON.stringify(obj2);
45
+ }
46
+
35
47
  export default index;
36
48
  //# sourceMappingURL=index.mjs.map
package/esm/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/index.js"],"sourcesContent":["// @flow\n\nimport defineProvider from \"@babel/helper-define-polyfill-provider\";\n\nconst runtimeCompat = \"#__secret_key__@babel/runtime__compatibility\";\n\nexport default defineProvider(({ debug }, options) => {\n const { [runtimeCompat]: { useBabelRuntime } = {} } = options;\n\n const pureName = useBabelRuntime\n ? `${useBabelRuntime}/regenerator`\n : \"regenerator-runtime\";\n\n return {\n name: \"regenerator\",\n\n polyfills: [\"regenerator-runtime\"],\n\n usageGlobal(meta, utils) {\n if (isRegenerator(meta)) {\n debug(\"regenerator-runtime\");\n utils.injectGlobalImport(\"regenerator-runtime/runtime.js\");\n }\n },\n usagePure(meta, utils, path) {\n if (isRegenerator(meta)) {\n path.replaceWith(\n utils.injectDefaultImport(pureName, \"regenerator-runtime\"),\n );\n }\n },\n };\n});\n\nconst isRegenerator = meta =>\n meta.kind === \"global\" && meta.name === \"regeneratorRuntime\";\n"],"names":["runtimeCompat","defineProvider","debug","options","useBabelRuntime","pureName","name","polyfills","usageGlobal","meta","utils","isRegenerator","injectGlobalImport","usagePure","path","replaceWith","injectDefaultImport","kind"],"mappings":";;AAIA,MAAMA,aAAa,GAAG,8CAAtB;AAEA,YAAeC,cAAc,CAAC,CAAC;AAAEC,EAAAA;AAAF,CAAD,EAAYC,OAAZ,KAAwB;AACpD,QAAM;AAAE,KAACH,aAAD,GAAiB;AAAEI,MAAAA;AAAF,QAAsB;AAAzC,MAAgDD,OAAtD;AAEA,QAAME,QAAQ,GAAGD,eAAe,GAC3B,GAAEA,eAAgB,cADS,GAE5B,qBAFJ;AAIA,SAAO;AACLE,IAAAA,IAAI,EAAE,aADD;AAGLC,IAAAA,SAAS,EAAE,CAAC,qBAAD,CAHN;;AAKLC,IAAAA,WAAW,CAACC,IAAD,EAAOC,KAAP,EAAc;AACvB,UAAIC,aAAa,CAACF,IAAD,CAAjB,EAAyB;AACvBP,QAAAA,KAAK,CAAC,qBAAD,CAAL;AACAQ,QAAAA,KAAK,CAACE,kBAAN,CAAyB,gCAAzB;AACD;AACF,KAVI;;AAWLC,IAAAA,SAAS,CAACJ,IAAD,EAAOC,KAAP,EAAcI,IAAd,EAAoB;AAC3B,UAAIH,aAAa,CAACF,IAAD,CAAjB,EAAyB;AACvBK,QAAAA,IAAI,CAACC,WAAL,CACEL,KAAK,CAACM,mBAAN,CAA0BX,QAA1B,EAAoC,qBAApC,CADF;AAGD;AACF;;AAjBI,GAAP;AAmBD,CA1B4B,CAA7B;;AA4BA,MAAMM,aAAa,GAAGF,IAAI,IACxBA,IAAI,CAACQ,IAAL,KAAc,QAAd,IAA0BR,IAAI,CAACH,IAAL,KAAc,oBAD1C;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/index.ts"],"sourcesContent":["import defineProvider from \"@babel/helper-define-polyfill-provider\";\n\nconst runtimeCompat = \"#__secret_key__@babel/runtime__compatibility\";\n\ntype Options = {\n \"#__secret_key__@babel/runtime__compatibility\": void | {\n useBabelRuntime: string;\n };\n};\n\nexport default defineProvider<Options>(({ debug, targets, babel }, options) => {\n if (!shallowEqual(targets, babel.targets())) {\n throw new Error(\n \"This plugin does not use the targets option. Only preset-env's targets\" +\n \" or top-level targets need to be configured for this plugin to work.\" +\n \" See https://github.com/babel/babel-polyfills/issues/36 for more\" +\n \" details.\",\n );\n }\n\n const { [runtimeCompat]: { useBabelRuntime } = { useBabelRuntime: \"\" } } =\n options;\n\n const pureName = useBabelRuntime\n ? `${useBabelRuntime}/regenerator`\n : \"regenerator-runtime\";\n\n return {\n name: \"regenerator\",\n\n polyfills: [\"regenerator-runtime\"],\n\n usageGlobal(meta, utils) {\n if (isRegenerator(meta)) {\n debug(\"regenerator-runtime\");\n utils.injectGlobalImport(\"regenerator-runtime/runtime.js\");\n }\n },\n usagePure(meta, utils, path) {\n if (isRegenerator(meta)) {\n path.replaceWith(\n utils.injectDefaultImport(pureName, \"regenerator-runtime\"),\n );\n }\n },\n };\n});\n\nconst isRegenerator = meta =>\n meta.kind === \"global\" && meta.name === \"regeneratorRuntime\";\n\nfunction shallowEqual(obj1: any, obj2: any) {\n return JSON.stringify(obj1) === JSON.stringify(obj2);\n}\n"],"names":["runtimeCompat","defineProvider","debug","targets","babel","options","shallowEqual","Error","useBabelRuntime","pureName","name","polyfills","usageGlobal","meta","utils","isRegenerator","injectGlobalImport","usagePure","path","replaceWith","injectDefaultImport","kind","obj1","obj2","JSON","stringify"],"mappings":";;AAEA,MAAMA,aAAa,GAAG,8CAAtB;AAQA,YAAeC,cAAc,CAAU,CAAC;AAAEC,EAAAA,KAAF;AAASC,EAAAA,OAAT;AAAkBC,EAAAA;AAAlB,CAAD,EAA4BC,OAA5B,KAAwC;AAC7E,MAAI,CAACC,YAAY,CAACH,OAAD,EAAUC,KAAK,CAACD,OAAN,EAAV,CAAjB,EAA6C;AAC3C,UAAM,IAAII,KAAJ,CACJ,2EACE,sEADF,GAEE,kEAFF,GAGE,WAJE,CAAN;AAMD;;AAED,QAAM;AAAE,KAACP,aAAD,GAAiB;AAAEQ,MAAAA;AAAF,QAAsB;AAAEA,MAAAA,eAAe,EAAE;AAAnB;AAAzC,MACJH,OADF;AAGA,QAAMI,QAAQ,GAAGD,eAAe,GAC3B,GAAEA,eAAgB,cADS,GAE5B,qBAFJ;AAIA,SAAO;AACLE,IAAAA,IAAI,EAAE,aADD;AAGLC,IAAAA,SAAS,EAAE,CAAC,qBAAD,CAHN;;AAKLC,IAAAA,WAAW,CAACC,IAAD,EAAOC,KAAP,EAAc;AACvB,UAAIC,aAAa,CAACF,IAAD,CAAjB,EAAyB;AACvBX,QAAAA,KAAK,CAAC,qBAAD,CAAL;AACAY,QAAAA,KAAK,CAACE,kBAAN,CAAyB,gCAAzB;AACD;AACF,KAVI;;AAWLC,IAAAA,SAAS,CAACJ,IAAD,EAAOC,KAAP,EAAcI,IAAd,EAAoB;AAC3B,UAAIH,aAAa,CAACF,IAAD,CAAjB,EAAyB;AACvBK,QAAAA,IAAI,CAACC,WAAL,CACEL,KAAK,CAACM,mBAAN,CAA0BX,QAA1B,EAAoC,qBAApC,CADF;AAGD;AACF;;AAjBI,GAAP;AAmBD,CApC4B,CAA7B;;AAsCA,MAAMM,aAAa,GAAGF,IAAI,IACxBA,IAAI,CAACQ,IAAL,KAAc,QAAd,IAA0BR,IAAI,CAACH,IAAL,KAAc,oBAD1C;;AAGA,SAASJ,YAAT,CAAsBgB,IAAtB,EAAiCC,IAAjC,EAA4C;AAC1C,SAAOC,IAAI,CAACC,SAAL,CAAeH,IAAf,MAAyBE,IAAI,CAACC,SAAL,CAAeF,IAAf,CAAhC;AACD;;;;"}
package/lib/index.js CHANGED
@@ -10,12 +10,20 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
10
10
  const runtimeCompat = "#__secret_key__@babel/runtime__compatibility";
11
11
 
12
12
  var _default = (0, _helperDefinePolyfillProvider.default)(({
13
- debug
13
+ debug,
14
+ targets,
15
+ babel
14
16
  }, options) => {
17
+ if (!shallowEqual(targets, babel.targets())) {
18
+ throw new Error("This plugin does not use the targets option. Only preset-env's targets" + " or top-level targets need to be configured for this plugin to work." + " See https://github.com/babel/babel-polyfills/issues/36 for more" + " details.");
19
+ }
20
+
15
21
  const {
16
22
  [runtimeCompat]: {
17
23
  useBabelRuntime
18
- } = {}
24
+ } = {
25
+ useBabelRuntime: ""
26
+ }
19
27
  } = options;
20
28
  const pureName = useBabelRuntime ? `${useBabelRuntime}/regenerator` : "regenerator-runtime";
21
29
  return {
@@ -40,4 +48,8 @@ var _default = (0, _helperDefinePolyfillProvider.default)(({
40
48
 
41
49
  exports.default = _default;
42
50
 
43
- const isRegenerator = meta => meta.kind === "global" && meta.name === "regeneratorRuntime";
51
+ const isRegenerator = meta => meta.kind === "global" && meta.name === "regeneratorRuntime";
52
+
53
+ function shallowEqual(obj1, obj2) {
54
+ return JSON.stringify(obj1) === JSON.stringify(obj2);
55
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "babel-plugin-polyfill-regenerator",
3
- "version": "0.2.3",
3
+ "version": "0.4.0",
4
4
  "description": "A Babel plugin to inject imports to regenerator-runtime",
5
5
  "repository": {
6
6
  "type": "git",
@@ -26,14 +26,14 @@
26
26
  "babel-plugin"
27
27
  ],
28
28
  "dependencies": {
29
- "@babel/helper-define-polyfill-provider": "^0.2.4"
29
+ "@babel/helper-define-polyfill-provider": "^0.3.2"
30
30
  },
31
31
  "devDependencies": {
32
- "@babel/core": "^7.13.0",
33
- "@babel/helper-plugin-test-runner": "^7.10.4"
32
+ "@babel/core": "^7.17.8",
33
+ "@babel/helper-plugin-test-runner": "^7.16.7"
34
34
  },
35
35
  "peerDependencies": {
36
36
  "@babel/core": "^7.0.0-0"
37
37
  },
38
- "gitHead": "de48880e867791eaa94c00ce7132dc259f3c777b"
38
+ "gitHead": "62b9025beeec450a1ff5d61fadcf63963aec5015"
39
39
  }