react-native-builder-bob 0.28.0 → 0.29.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/babel-config.js +22 -13
- package/babel-preset.js +9 -5
- package/lib/__fixtures__/project/code/$alias-input.js.map +1 -1
- package/lib/__fixtures__/project/code/$alias-output.js.map +1 -1
- package/lib/__fixtures__/project/code/$exports-input.js +4 -6
- package/lib/__fixtures__/project/code/$exports-input.js.map +1 -1
- package/lib/__fixtures__/project/code/$exports-output.js +4 -6
- package/lib/__fixtures__/project/code/$exports-output.js.map +1 -1
- package/lib/__fixtures__/project/code/$imports-input.js.map +1 -1
- package/lib/__fixtures__/project/code/$imports-output.js.map +1 -1
- package/lib/__fixtures__/project/code/a.js.map +1 -1
- package/lib/__fixtures__/project/code/b.js.map +1 -1
- package/lib/__fixtures__/project/code/e.story.js.map +1 -1
- package/lib/__fixtures__/project/f.js.map +1 -1
- package/lib/__fixtures__/project/index.js.map +1 -1
- package/lib/__tests__/index.test.js +1 -1
- package/lib/__tests__/index.test.js.map +1 -1
- package/lib/babel.js +1 -1
- package/lib/babel.js.map +1 -1
- package/lib/index.js +38 -25
- package/lib/index.js.map +1 -1
- package/lib/targets/commonjs.js +1 -1
- package/lib/targets/commonjs.js.map +1 -1
- package/lib/targets/module.js +1 -1
- package/lib/targets/module.js.map +1 -1
- package/lib/targets/typescript.js +69 -31
- package/lib/targets/typescript.js.map +1 -1
- package/lib/types.js.map +1 -1
- package/lib/utils/androidAssemble.js +1 -1
- package/lib/utils/androidAssemble.js.map +1 -1
- package/lib/utils/compile.js +16 -6
- package/lib/utils/compile.js.map +1 -1
- package/lib/utils/logger.js +5 -9
- package/lib/utils/logger.js.map +1 -1
- package/lib/utils/prompts.js +1 -1
- package/lib/utils/prompts.js.map +1 -1
- package/metro-config.js +6 -1
- package/package.json +12 -8
package/babel-config.js
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
/* eslint-disable import/no-commonjs */
|
|
2
2
|
|
|
3
3
|
const path = require('path');
|
|
4
|
+
const { cosmiconfigSync } = require('cosmiconfig');
|
|
5
|
+
const { lstatSync } = require('fs');
|
|
6
|
+
const { name } = require('./package.json');
|
|
4
7
|
|
|
5
8
|
/**
|
|
6
9
|
* Get Babel configuration for the example project.
|
|
@@ -14,22 +17,28 @@ const path = require('path');
|
|
|
14
17
|
* @returns {import('@babel/core').TransformOptions} Babel configuration
|
|
15
18
|
*/
|
|
16
19
|
const getConfig = (defaultConfig, { root, pkg }) => {
|
|
17
|
-
|
|
20
|
+
const explorer = cosmiconfigSync(name, {
|
|
21
|
+
stopDir: root,
|
|
22
|
+
searchPlaces: ['package.json', 'bob.config.cjs', 'bob.config.js'],
|
|
23
|
+
});
|
|
18
24
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (segments[0] === '.') {
|
|
23
|
-
segments.shift();
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
src = segments[0];
|
|
27
|
-
}
|
|
25
|
+
const result = explorer.search();
|
|
26
|
+
const src = result ? result.config.source : null;
|
|
28
27
|
|
|
29
28
|
if (src == null) {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
29
|
+
if (
|
|
30
|
+
lstatSync(path.join(root, 'bob.config.mjs'), {
|
|
31
|
+
throwIfNoEntry: false,
|
|
32
|
+
}).isFile()
|
|
33
|
+
) {
|
|
34
|
+
throw new Error(
|
|
35
|
+
"Found a 'bob.config.mjs' file. However, ESM syntax is currently not supported for the Babel configuration."
|
|
36
|
+
);
|
|
37
|
+
} else {
|
|
38
|
+
throw new Error(
|
|
39
|
+
"Couldn't determine the source directory. Does your config specify a 'source' field?"
|
|
40
|
+
);
|
|
41
|
+
}
|
|
33
42
|
}
|
|
34
43
|
|
|
35
44
|
return {
|
package/babel-preset.js
CHANGED
|
@@ -17,11 +17,11 @@ module.exports = function (api, options, cwd) {
|
|
|
17
17
|
{
|
|
18
18
|
targets: browserslist.findConfig(cwd) || {
|
|
19
19
|
browsers: [
|
|
20
|
-
'>1%',
|
|
21
|
-
'
|
|
22
|
-
'
|
|
23
|
-
'
|
|
24
|
-
'
|
|
20
|
+
'> 1%',
|
|
21
|
+
'chrome 109',
|
|
22
|
+
'edge 124',
|
|
23
|
+
'firefox 127',
|
|
24
|
+
'safari 17.4',
|
|
25
25
|
'not dead',
|
|
26
26
|
'not ie <= 11',
|
|
27
27
|
'not op_mini all',
|
|
@@ -45,6 +45,10 @@ module.exports = function (api, options, cwd) {
|
|
|
45
45
|
],
|
|
46
46
|
plugins: [
|
|
47
47
|
require.resolve('@babel/plugin-transform-strict-mode'),
|
|
48
|
+
require.resolve('@babel/plugin-transform-private-methods'),
|
|
49
|
+
require.resolve('@babel/plugin-transform-private-property-in-object'),
|
|
50
|
+
require.resolve('@babel/plugin-transform-class-properties'),
|
|
51
|
+
require.resolve('@babel/plugin-transform-classes'),
|
|
48
52
|
[
|
|
49
53
|
require.resolve('./lib/babel'),
|
|
50
54
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"$alias-input.js","names":["require"],"sources":["../../../../src/__fixtures__/project/code/$alias-input.ts"],"sourcesContent":["import \"@\";\nimport f from \"@/f\";\nimport \"@something\";\nimport \"./@\";\nimport \"file\";\nimport { something } from \"something\";\nimport \"something/somefile\";\n"],"mappings":";;AAAAA,OAAA;AAEAA,OAAA;AACAA,OAAA;AACAA,OAAA;AAEAA,OAAA"}
|
|
1
|
+
{"version":3,"file":"$alias-input.js","names":["require"],"sources":["../../../../src/__fixtures__/project/code/$alias-input.ts"],"sourcesContent":["import \"@\";\nimport f from \"@/f\";\nimport \"@something\";\nimport \"./@\";\nimport \"file\";\nimport { something } from \"something\";\nimport \"something/somefile\";\n"],"mappings":";;AAAAA,OAAA;AAEAA,OAAA;AACAA,OAAA;AACAA,OAAA;AAEAA,OAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"$alias-output.js","names":["require"],"sources":["../../../../src/__fixtures__/project/code/$alias-output.ts"],"sourcesContent":["import \"..\";\nimport f from \"../f\";\nimport \"@something\";\nimport \"./@\";\nimport \"../f\";\nimport { something } from \"another\";\nimport \"another/somefile\";\n"],"mappings":";;AAAAA,OAAA;AAEAA,OAAA;AACAA,OAAA;AACAA,OAAA;AAEAA,OAAA"}
|
|
1
|
+
{"version":3,"file":"$alias-output.js","names":["require"],"sources":["../../../../src/__fixtures__/project/code/$alias-output.ts"],"sourcesContent":["import \"..\";\nimport f from \"../f\";\nimport \"@something\";\nimport \"./@\";\nimport \"../f\";\nimport { something } from \"another\";\nimport \"another/somefile\";\n"],"mappings":";;AAAAA,OAAA;AAEAA,OAAA;AACAA,OAAA;AACAA,OAAA;AAEAA,OAAA","ignoreList":[]}
|
|
@@ -55,10 +55,8 @@ exports.pak = _pak;
|
|
|
55
55
|
var _pax = _interopRequireWildcard(require("../index"));
|
|
56
56
|
exports.pax = _pax;
|
|
57
57
|
var _a3 = require("./a");
|
|
58
|
-
function _getRequireWildcardCache(
|
|
59
|
-
function _interopRequireWildcard(
|
|
60
|
-
const foo = "foo";
|
|
61
|
-
exports.
|
|
62
|
-
const bar = "bar";
|
|
63
|
-
exports.bar = bar;
|
|
58
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
59
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
60
|
+
const foo = exports.foo = "foo";
|
|
61
|
+
const bar = exports.bar = "bar";
|
|
64
62
|
//# sourceMappingURL=$exports-input.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"$exports-input.js","names":["_b","_interopRequireWildcard","require","exports","b","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","defineProperty","enumerable","get","_c","c","_d","d","_e","e","_f","f","_pac","pac","_pak","pak","_pax","pax","_a3","_getRequireWildcardCache","
|
|
1
|
+
{"version":3,"file":"$exports-input.js","names":["_b","_interopRequireWildcard","require","exports","b","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","defineProperty","enumerable","get","_c","c","_d","d","_e","e","_f","f","_pac","pac","_pak","pak","_pax","pax","_a3","_getRequireWildcardCache","WeakMap","r","t","__esModule","default","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set","foo","bar"],"sources":["../../../../src/__fixtures__/project/code/$exports-input.ts"],"sourcesContent":["export * as a from \"a\";\nexport * as b from \"./b\";\nexport * as c from \"./c\";\nexport * as d from \"./d\";\nexport * as e from \"./e.story\";\nexport * as f from \"../f\";\nexport * as pac from \"..\";\nexport * as pak from \"../\";\nexport * as pax from \"../index\";\n\nexport { a as a1 } from \"./a\";\nexport * from \"./b\";\n\nexport type { A } from \"./a\";\n\nexport const foo = \"foo\";\n\nconst bar = \"bar\";\n\nexport { bar };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -55,10 +55,8 @@ exports.pac = _pac;
|
|
|
55
55
|
exports.pak = _pac;
|
|
56
56
|
exports.pax = _pac;
|
|
57
57
|
var _a3 = require("./a.mjs");
|
|
58
|
-
function _getRequireWildcardCache(
|
|
59
|
-
function _interopRequireWildcard(
|
|
60
|
-
const foo = "foo";
|
|
61
|
-
exports.
|
|
62
|
-
const bar = "bar";
|
|
63
|
-
exports.bar = bar;
|
|
58
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
59
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
60
|
+
const foo = exports.foo = "foo";
|
|
61
|
+
const bar = exports.bar = "bar";
|
|
64
62
|
//# sourceMappingURL=$exports-output.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"$exports-output.js","names":["_b","_interopRequireWildcard","require","exports","b","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","defineProperty","enumerable","get","_c","c","_d","d","_e","e","_f","f","_pac","_pak","_pax","pac","pak","pax","_a3","_getRequireWildcardCache","
|
|
1
|
+
{"version":3,"file":"$exports-output.js","names":["_b","_interopRequireWildcard","require","exports","b","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","defineProperty","enumerable","get","_c","c","_d","d","_e","e","_f","f","_pac","_pak","_pax","pac","pak","pax","_a3","_getRequireWildcardCache","WeakMap","r","t","__esModule","default","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set","foo","bar"],"sources":["../../../../src/__fixtures__/project/code/$exports-output.ts"],"sourcesContent":["export * as a from \"a\";\nexport * as b from \"./b.mjs\";\nexport * as c from \"./c.mjs\";\nexport * as d from \"./d\";\nexport * as e from \"./e.story.mjs\";\nexport * as f from \"../f.mjs\";\nexport * as pac from \"../index.mjs\";\nexport * as pak from \"../index.mjs\";\nexport * as pax from \"../index.mjs\";\nexport { a as a1 } from \"./a.mjs\";\nexport * from \"./b.mjs\";\nexport type { A } from \"./a\";\nexport const foo = \"foo\";\nconst bar = \"bar\";\nexport { bar };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAAA,EAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAwBC,OAAA,CAAAC,CAAA,GAAAJ,EAAA;AAAxBK,MAAA,CAAAC,IAAA,CAAAN,EAAA,EAAAO,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAL,OAAA,IAAAA,OAAA,CAAAK,GAAA,MAAAR,EAAA,CAAAQ,GAAA;EAAAH,MAAA,CAAAQ,cAAA,CAAAV,OAAA,EAAAK,GAAA;IAAAM,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAf,EAAA,CAAAQ,GAAA;IAAA;EAAA;AAAA;AAAwB,IAAAQ,EAAA,GAAAf,uBAAA,CAAAC,OAAA;AAAAC,OAAA,CAAAc,CAAA,GAAAD,EAAA;AAAA,IAAAE,EAAA,GAAAjB,uBAAA,CAAAC,OAAA;AAAAC,OAAA,CAAAgB,CAAA,GAAAD,EAAA;AAAA,IAAAE,EAAA,GAAAnB,uBAAA,CAAAC,OAAA;AAAAC,OAAA,CAAAkB,CAAA,GAAAD,EAAA;AAAA,IAAAE,EAAA,GAAArB,uBAAA,CAAAC,OAAA;AAAAC,OAAA,CAAAoB,CAAA,GAAAD,EAAA;AAAA,IAAAE,IAAA,GAAAvB,uBAAA,CAAAC,OAAA;AAAA,IAAAuB,IAAA,GAAAD,IAAA;AAAA,IAAAE,IAAA,GAAAF,IAAA;AAAArB,OAAA,CAAAwB,GAAA,GAAAH,IAAA;AAAArB,OAAA,CAAAyB,GAAA,GAAAJ,IAAA;AAAArB,OAAA,CAAA0B,GAAA,GAAAL,IAAA;AADxB,IAAAM,GAAA,GAAA5B,OAAA;AAAkC,SAAA6B,yBAAAV,CAAA,6BAAAW,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,CAAAV,CAAA,WAAAA,CAAA,GAAAa,CAAA,GAAAD,CAAA,KAAAZ,CAAA;AAAA,SAAApB,wBAAAoB,CAAA,EAAAY,CAAA,SAAAA,CAAA,IAAAZ,CAAA,IAAAA,CAAA,CAAAc,UAAA,SAAAd,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAe,OAAA,EAAAf,CAAA,QAAAa,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAhB,CAAA,UAAAa,CAAA,CAAAnB,GAAA,CAAAM,CAAA,OAAAiB,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAnC,MAAA,CAAAQ,cAAA,IAAAR,MAAA,CAAAoC,wBAAA,WAAAC,CAAA,IAAArB,CAAA,oBAAAqB,CAAA,OAAAhC,cAAA,CAAAC,IAAA,CAAAU,CAAA,EAAAqB,CAAA,SAAAC,CAAA,GAAAH,CAAA,GAAAnC,MAAA,CAAAoC,wBAAA,CAAApB,CAAA,EAAAqB,CAAA,UAAAC,CAAA,KAAAA,CAAA,CAAA5B,GAAA,IAAA4B,CAAA,CAAAC,GAAA,IAAAvC,MAAA,CAAAQ,cAAA,CAAAyB,CAAA,EAAAI,CAAA,EAAAC,CAAA,IAAAL,CAAA,CAAAI,CAAA,IAAArB,CAAA,CAAAqB,CAAA,YAAAJ,CAAA,CAAAF,OAAA,GAAAf,CAAA,EAAAa,CAAA,IAAAA,CAAA,CAAAU,GAAA,CAAAvB,CAAA,EAAAiB,CAAA,GAAAA,CAAA;AAG3B,MAAMO,GAAG,GAAA1C,OAAA,CAAA0C,GAAA,GAAG,KAAK;AACxB,MAAMC,GAAG,GAAA3C,OAAA,CAAA2C,GAAA,GAAG,KAAK","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"$imports-input.js","names":["require"],"sources":["../../../../src/__fixtures__/project/code/$imports-input.ts"],"sourcesContent":["import \"./a\";\nimport a from \"a\";\nimport b from \"./b\";\nimport c from \"./c\";\nimport d from \"./d\";\nimport e from \"./e.story\";\nimport f from \"../f\";\nimport pac from \"..\";\nimport pak from \"../\";\nimport pax from \"../index\";\n\nimport { a as a1 } from \"./a\";\nimport * as b1 from \"./b\";\nimport something, { c as c1 } from \"./c\";\n\nimport type { A } from \"./a\";\n"],"mappings":";;AAAAA,OAAA"}
|
|
1
|
+
{"version":3,"file":"$imports-input.js","names":["require"],"sources":["../../../../src/__fixtures__/project/code/$imports-input.ts"],"sourcesContent":["import \"./a\";\nimport a from \"a\";\nimport b from \"./b\";\nimport c from \"./c\";\nimport d from \"./d\";\nimport e from \"./e.story\";\nimport f from \"../f\";\nimport pac from \"..\";\nimport pak from \"../\";\nimport pax from \"../index\";\n\nimport { a as a1 } from \"./a\";\nimport * as b1 from \"./b\";\nimport something, { c as c1 } from \"./c\";\n\nimport type { A } from \"./a\";\n"],"mappings":";;AAAAA,OAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"$imports-output.js","names":["require"],"sources":["../../../../src/__fixtures__/project/code/$imports-output.ts"],"sourcesContent":["import \"./a.mjs\";\nimport a from \"a\";\nimport b from \"./b.mjs\";\nimport c from \"./c.mjs\";\nimport d from \"./d\";\nimport e from \"./e.story.mjs\";\nimport f from \"../f.mjs\";\nimport pac from \"../index.mjs\";\nimport pak from \"../index.mjs\";\nimport pax from \"../index.mjs\";\nimport { a as a1 } from \"./a.mjs\";\nimport * as b1 from \"./b.mjs\";\nimport something, { c as c1 } from \"./c.mjs\";\nimport type { A } from \"./a\";\n"],"mappings":";;AAAAA,OAAA"}
|
|
1
|
+
{"version":3,"file":"$imports-output.js","names":["require"],"sources":["../../../../src/__fixtures__/project/code/$imports-output.ts"],"sourcesContent":["import \"./a.mjs\";\nimport a from \"a\";\nimport b from \"./b.mjs\";\nimport c from \"./c.mjs\";\nimport d from \"./d\";\nimport e from \"./e.story.mjs\";\nimport f from \"../f.mjs\";\nimport pac from \"../index.mjs\";\nimport pak from \"../index.mjs\";\nimport pax from \"../index.mjs\";\nimport { a as a1 } from \"./a.mjs\";\nimport * as b1 from \"./b.mjs\";\nimport something, { c as c1 } from \"./c.mjs\";\nimport type { A } from \"./a\";\n"],"mappings":";;AAAAA,OAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"a.js","names":[],"sources":["../../../../src/__fixtures__/project/code/a.ts"],"sourcesContent":[""],"mappings":""}
|
|
1
|
+
{"version":3,"file":"a.js","names":[],"sources":["../../../../src/__fixtures__/project/code/a.ts"],"sourcesContent":[""],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"b.js","names":[],"sources":["../../../../src/__fixtures__/project/code/b.ts"],"sourcesContent":[""],"mappings":""}
|
|
1
|
+
{"version":3,"file":"b.js","names":[],"sources":["../../../../src/__fixtures__/project/code/b.ts"],"sourcesContent":[""],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e.story.js","names":[],"sources":["../../../../src/__fixtures__/project/code/e.story.ts"],"sourcesContent":[""],"mappings":""}
|
|
1
|
+
{"version":3,"file":"e.story.js","names":[],"sources":["../../../../src/__fixtures__/project/code/e.story.ts"],"sourcesContent":[""],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"f.js","names":[],"sources":["../../../src/__fixtures__/project/f.ts"],"sourcesContent":[""],"mappings":""}
|
|
1
|
+
{"version":3,"file":"f.js","names":[],"sources":["../../../src/__fixtures__/project/f.ts"],"sourcesContent":[""],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../src/__fixtures__/project/index.ts"],"sourcesContent":[""],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/__fixtures__/project/index.ts"],"sourcesContent":[""],"mappings":"","ignoreList":[]}
|
|
@@ -4,7 +4,7 @@ var _globals = require("@jest/globals");
|
|
|
4
4
|
var _core = require("@babel/core");
|
|
5
5
|
var _nodeFs = _interopRequireDefault(require("node:fs"));
|
|
6
6
|
var _nodePath = _interopRequireDefault(require("node:path"));
|
|
7
|
-
function _interopRequireDefault(
|
|
7
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
8
8
|
_globals.it.each(['imports', 'exports'])(`adds extension to %s`, async name => {
|
|
9
9
|
const filepath = _nodePath.default.resolve(__dirname, `../__fixtures__/project/code/$${name}-input.ts`);
|
|
10
10
|
const result = await (0, _core.transformFileAsync)(filepath, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.js","names":["_globals","require","_core","_nodeFs","_interopRequireDefault","_nodePath","
|
|
1
|
+
{"version":3,"file":"index.test.js","names":["_globals","require","_core","_nodeFs","_interopRequireDefault","_nodePath","e","__esModule","default","it","each","name","filepath","path","resolve","__dirname","result","transformFileAsync","configFile","babelrc","plugins","extension","expected","fs","promises","readFile","expect","code","toEqual","trim"],"sources":["../../src/__tests__/index.test.ts"],"sourcesContent":["import { expect, it } from '@jest/globals';\nimport { transformFileAsync } from '@babel/core';\nimport fs from 'node:fs';\nimport path from 'node:path';\n\nit.each(['imports', 'exports'])(`adds extension to %s`, async (name) => {\n const filepath = path.resolve(\n __dirname,\n `../__fixtures__/project/code/$${name}-input.ts`\n );\n\n const result = await transformFileAsync(filepath, {\n configFile: false,\n babelrc: false,\n plugins: [\n '@babel/plugin-syntax-typescript',\n [require.resolve('../babel.ts'), { extension: 'mjs' }],\n ],\n });\n\n const expected = await fs.promises.readFile(\n path.resolve(__dirname, `../__fixtures__/project/code/$${name}-output.ts`),\n 'utf8'\n );\n\n expect(result?.code).toEqual(expected.trim());\n});\n"],"mappings":";;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,SAAA,GAAAD,sBAAA,CAAAH,OAAA;AAA6B,SAAAG,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE7BG,WAAE,CAACC,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,sBAAsB,EAAE,MAAOC,IAAI,IAAK;EACtE,MAAMC,QAAQ,GAAGC,iBAAI,CAACC,OAAO,CAC3BC,SAAS,EACT,iCAAiCJ,IAAI,WACvC,CAAC;EAED,MAAMK,MAAM,GAAG,MAAM,IAAAC,wBAAkB,EAACL,QAAQ,EAAE;IAChDM,UAAU,EAAE,KAAK;IACjBC,OAAO,EAAE,KAAK;IACdC,OAAO,EAAE,CACP,iCAAiC,EACjC,CAACnB,OAAO,CAACa,OAAO,CAAC,aAAa,CAAC,EAAE;MAAEO,SAAS,EAAE;IAAM,CAAC,CAAC;EAE1D,CAAC,CAAC;EAEF,MAAMC,QAAQ,GAAG,MAAMC,eAAE,CAACC,QAAQ,CAACC,QAAQ,CACzCZ,iBAAI,CAACC,OAAO,CAACC,SAAS,EAAE,iCAAiCJ,IAAI,YAAY,CAAC,EAC1E,MACF,CAAC;EAED,IAAAe,eAAM,EAACV,MAAM,EAAEW,IAAI,CAAC,CAACC,OAAO,CAACN,QAAQ,CAACO,IAAI,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC","ignoreList":[]}
|
package/lib/babel.js
CHANGED
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = _default;
|
|
7
7
|
var _fs = _interopRequireDefault(require("fs"));
|
|
8
8
|
var _path = _interopRequireDefault(require("path"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
const isFile = filename => {
|
|
11
11
|
const exists = _fs.default.lstatSync(filename, {
|
|
12
12
|
throwIfNoEntry: false
|
package/lib/babel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"babel.js","names":["_fs","_interopRequireDefault","require","_path","
|
|
1
|
+
{"version":3,"file":"babel.js","names":["_fs","_interopRequireDefault","require","_path","e","__esModule","default","isFile","filename","exists","fs","lstatSync","throwIfNoEntry","isDirectory","isModule","extension","platforms","exts","some","ext","every","platform","isTypeImport","node","importKind","exportKind","assertFilename","Error","_default","api","assertVersion","addExtension","state","source","value","startsWith","path","resolve","dirname","replace","join","name","visitor","ImportDeclaration","ExportNamedDeclaration","ExportAllDeclaration"],"sources":["../src/babel.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport type { ConfigAPI, NodePath, PluginObj, PluginPass } from '@babel/core';\nimport type {\n ImportDeclaration,\n ExportAllDeclaration,\n ExportNamedDeclaration,\n} from '@babel/types';\n\ntype Options = {\n /**\n * Extension to add to the imports\n * For commonjs use 'cjs' and for esm use 'mjs'\n * NodeJS requires explicit extension for esm\n * The `cjs` extension avoids disambiguity when package.json has \"type\": \"module\"\n */\n extension?: 'js' | 'cjs' | 'mjs';\n /**\n * Out of tree platforms to support\n * For `import './file'`, we skip adding extension if `file.${platform}.ts` exists\n * This is necessary for the platform specific extensions to be resolve correctly\n * Bundlers won't resolve the platform specific extension if explicit extension is present\n */\n platforms?: string[];\n};\n\nconst isFile = (filename: string): boolean => {\n const exists =\n fs.lstatSync(filename, { throwIfNoEntry: false })?.isFile() ?? false;\n\n return exists;\n};\n\nconst isDirectory = (filename: string): boolean => {\n const exists =\n fs.lstatSync(filename, { throwIfNoEntry: false })?.isDirectory() ?? false;\n\n return exists;\n};\n\nconst isModule = (\n filename: string,\n extension: string,\n platforms: string[]\n): boolean => {\n const exts = ['js', 'ts', 'jsx', 'tsx', extension];\n\n return exts.some(\n (ext) =>\n isFile(`${filename}.${ext}`) &&\n platforms.every((platform) => !isFile(`${filename}.${platform}.${ext}`))\n );\n};\n\nconst isTypeImport = (\n node: ImportDeclaration | ExportNamedDeclaration | ExportAllDeclaration\n) =>\n ('importKind' in node && node.importKind === 'type') ||\n ('exportKind' in node && node.exportKind === 'type');\n\nconst assertFilename: (\n filename: string | null | undefined\n) => asserts filename is string = (filename) => {\n if (filename == null) {\n throw new Error(\"Couldn't find a filename for the current file.\");\n }\n};\n\nexport default function (\n api: ConfigAPI,\n {\n extension,\n platforms = [\n 'native',\n 'android',\n 'ios',\n 'windows',\n 'macos',\n 'visionos',\n 'web',\n 'tv',\n 'android.tv',\n 'ios.tv',\n ],\n }: Options\n): PluginObj {\n api.assertVersion(7);\n\n function addExtension(\n {\n node,\n }: NodePath<\n ImportDeclaration | ExportNamedDeclaration | ExportAllDeclaration\n >,\n state: PluginPass\n ) {\n if (\n extension == null ||\n // Skip type imports as they'll be removed\n isTypeImport(node) ||\n // Skip non-relative imports\n !node.source?.value.startsWith('.')\n ) {\n return;\n }\n\n assertFilename(state.filename);\n\n // Skip folder imports\n const filename = path.resolve(\n path.dirname(state.filename),\n node.source.value\n );\n\n // Replace .ts extension with .js if file with extension is explicitly imported\n if (isFile(filename)) {\n node.source.value = node.source.value.replace(/\\.tsx?$/, `.${extension}`);\n return;\n }\n\n // Add extension if .ts file or file with extension exists\n if (isModule(filename, extension, platforms)) {\n node.source.value += `.${extension}`;\n return;\n }\n\n // Expand folder imports to index and add extension\n if (\n isDirectory(filename) &&\n isModule(path.join(filename, 'index'), extension, platforms)\n ) {\n node.source.value = node.source.value.replace(\n /\\/?$/,\n `/index.${extension}`\n );\n return;\n }\n }\n\n return {\n name: 'react-native-builder-bob',\n visitor: {\n ImportDeclaration(path, state) {\n addExtension(path, state);\n },\n ExportNamedDeclaration(path, state) {\n addExtension(path, state);\n },\n ExportAllDeclaration(path, state) {\n addExtension(path, state);\n },\n },\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
package/lib/index.js
CHANGED
|
@@ -12,9 +12,9 @@ var logger = _interopRequireWildcard(require("./utils/logger"));
|
|
|
12
12
|
var _commonjs = _interopRequireDefault(require("./targets/commonjs"));
|
|
13
13
|
var _module = _interopRequireDefault(require("./targets/module"));
|
|
14
14
|
var _typescript = _interopRequireDefault(require("./targets/typescript"));
|
|
15
|
-
function _getRequireWildcardCache(
|
|
16
|
-
function _interopRequireWildcard(
|
|
17
|
-
function _interopRequireDefault(
|
|
15
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
18
|
// eslint-disable-next-line import/no-commonjs, @typescript-eslint/no-var-requires
|
|
19
19
|
const {
|
|
20
20
|
name,
|
|
@@ -135,8 +135,11 @@ _yargs.default.command('init', 'configure the package to use bob', {}, async ()
|
|
|
135
135
|
} else {
|
|
136
136
|
entries.main = entries.source;
|
|
137
137
|
}
|
|
138
|
+
const types = {};
|
|
138
139
|
if (targets.includes('typescript')) {
|
|
139
|
-
|
|
140
|
+
types.require = `./${_path.default.join(output, 'typescript', 'commonjs', source, 'index.d.ts')}`;
|
|
141
|
+
types.import = `./${_path.default.join(output, 'typescript', 'module', source, 'index.d.ts')}`;
|
|
142
|
+
entries.types = types.require;
|
|
140
143
|
if (!(await _fsExtra.default.pathExists(_path.default.join(root, 'tsconfig.json')))) {
|
|
141
144
|
const {
|
|
142
145
|
tsconfig
|
|
@@ -201,15 +204,22 @@ _yargs.default.command('init', 'configure the package to use bob', {}, async ()
|
|
|
201
204
|
let replace = false;
|
|
202
205
|
const exports = {
|
|
203
206
|
'.': {
|
|
204
|
-
|
|
205
|
-
types
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
207
|
+
import: {
|
|
208
|
+
...(types.import ? {
|
|
209
|
+
types: types.import
|
|
210
|
+
} : null),
|
|
211
|
+
...(entries.module ? {
|
|
212
|
+
default: entries.module
|
|
213
|
+
} : null)
|
|
214
|
+
},
|
|
215
|
+
require: {
|
|
216
|
+
...(types.require ? {
|
|
217
|
+
types: types.require
|
|
218
|
+
} : null),
|
|
219
|
+
...(entries.main ? {
|
|
220
|
+
default: entries.main
|
|
221
|
+
} : null)
|
|
222
|
+
}
|
|
213
223
|
}
|
|
214
224
|
};
|
|
215
225
|
if (pkg.exports && JSON.stringify(pkg.exports) !== JSON.stringify(exports)) {
|
|
@@ -255,17 +265,20 @@ _yargs.default.command('init', 'configure the package to use bob', {}, async ()
|
|
|
255
265
|
pkg.scripts = pkg.scripts || {};
|
|
256
266
|
pkg.scripts.prepare = prepare;
|
|
257
267
|
}
|
|
258
|
-
if (pkg.files
|
|
259
|
-
const
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
268
|
+
if (pkg.files) {
|
|
269
|
+
const pkgFiles = pkg.files;
|
|
270
|
+
if (files?.some(file => !pkgFiles.includes(file))) {
|
|
271
|
+
const {
|
|
272
|
+
update
|
|
273
|
+
} = await (0, _prompts.default)({
|
|
274
|
+
type: 'confirm',
|
|
275
|
+
name: 'update',
|
|
276
|
+
message: `Your package.json already has a 'files' field.\n Do you want to update it?`,
|
|
277
|
+
initial: true
|
|
278
|
+
});
|
|
279
|
+
if (update) {
|
|
280
|
+
pkg.files = [...files, ...pkg.files.filter(file => !files.includes(file))];
|
|
281
|
+
}
|
|
269
282
|
}
|
|
270
283
|
} else {
|
|
271
284
|
pkg.files = files;
|
|
@@ -279,7 +292,7 @@ _yargs.default.command('init', 'configure the package to use bob', {}, async ()
|
|
|
279
292
|
copyFlow: true
|
|
280
293
|
}];
|
|
281
294
|
}
|
|
282
|
-
if (t === 'commonjs' || t === 'module') {
|
|
295
|
+
if (t === 'commonjs' || t === 'module' || t === 'typescript') {
|
|
283
296
|
return [t, {
|
|
284
297
|
esm
|
|
285
298
|
}];
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_path","_interopRequireDefault","require","_fsExtra","_kleur","_dedent","_yargs","_cosmiconfig","_isGitDirty","_prompts","logger","_interopRequireWildcard","_commonjs","_module","_typescript","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","name","version","root","process","cwd","explorer","cosmiconfig","stopDir","searchPlaces","FLOW_PRGAMA_REGEX","yargs","command","isGitDirty","shouldContinue","prompts","type","message","initial","exit","pak","path","join","fs","pathExists","pkg","JSON","parse","readFile","result","search","config","devDependencies","source","validate","input","Boolean","entryFile","fromEntries","entries","sort","a","b","localeCompare","questions","choices","title","value","selected","test","length","endsWith","push","keys","includes","output","targets","flow","target","undefined","esm","main","module","types","tsconfig","writeJSON","compilerOptions","rootDir","allowUnreachableCode","allowUnusedLabels","esModuleInterop","forceConsistentCasingInFileNames","jsx","lib","moduleResolution","noFallthroughCasesInSwitch","noImplicitReturns","noImplicitUseStrict","noStrictGenericChecks","noUncheckedIndexedAccess","noUnusedLocals","noUnusedParameters","resolveJsonModule","skipLibCheck","strict","verbatimModuleSyntax","spaces","prepare","files","entry","replace","exports","import","stringify","startsWith","remove","scripts","slice","update","filter","file","map","t","copyFlow","jest","modulePathIgnorePatterns","eslintIgnore","ignorefiles","ignorefile","content","split","writeFile","packageManager","console","log","dedent","kleur","yellow","magenta","bold","gray","argv","$0","options","relative","filepath","exclude","report","info","warn","error","success","targetName","Array","isArray","targetOptions","blue","buildCommonJS","resolve","buildModule","buildTypescript","demandCommand","recommendCommands"],"sources":["../src/index.ts"],"sourcesContent":["import path from 'path';\nimport fs from 'fs-extra';\nimport kleur from 'kleur';\nimport dedent from 'dedent';\nimport yargs from 'yargs';\nimport { cosmiconfig } from 'cosmiconfig';\nimport isGitDirty from 'is-git-dirty';\nimport prompts, { type PromptObject } from './utils/prompts';\nimport * as logger from './utils/logger';\nimport buildCommonJS from './targets/commonjs';\nimport buildModule from './targets/module';\nimport buildTypescript from './targets/typescript';\nimport type { Options } from './types';\n\n// eslint-disable-next-line import/no-commonjs, @typescript-eslint/no-var-requires\nconst { name, version } = require('../package.json');\n\nconst root = process.cwd();\nconst explorer = cosmiconfig(name, {\n stopDir: root,\n searchPlaces: [\n 'package.json',\n 'bob.config.mjs',\n 'bob.config.cjs',\n 'bob.config.js',\n ],\n});\n\nconst FLOW_PRGAMA_REGEX = /\\*?\\s*@(flow)\\b/m;\n\nyargs\n .command('init', 'configure the package to use bob', {}, async () => {\n if (isGitDirty()) {\n const { shouldContinue } = await prompts({\n type: 'confirm',\n name: 'shouldContinue',\n message: `The working directory is not clean.\\n You should commit or stash your changes before configuring bob.\\n Continue anyway?`,\n initial: false,\n });\n\n if (!shouldContinue) {\n process.exit(0);\n }\n }\n\n const pak = path.join(root, 'package.json');\n\n if (!(await fs.pathExists(pak))) {\n logger.exit(\n `Couldn't find a 'package.json' file in '${root}'.\\n Are you in a project folder?`\n );\n }\n\n const pkg = JSON.parse(await fs.readFile(pak, 'utf-8'));\n const result = await explorer.search();\n\n if (result?.config && pkg.devDependencies && name in pkg.devDependencies) {\n const { shouldContinue } = await prompts({\n type: 'confirm',\n name: 'shouldContinue',\n message: `The project seems to be already configured with bob.\\n Do you want to overwrite the existing configuration?`,\n initial: false,\n });\n\n if (!shouldContinue) {\n process.exit(0);\n }\n }\n\n const { source } = await prompts({\n type: 'text',\n name: 'source',\n message: 'Where are your source files?',\n initial: 'src',\n validate: (input) => Boolean(input),\n });\n\n let entryFile;\n\n if (await fs.pathExists(path.join(root, source, 'index.js'))) {\n entryFile = 'index.js';\n } else if (await fs.pathExists(path.join(root, source, 'index.ts'))) {\n entryFile = 'index.ts';\n } else if (await fs.pathExists(path.join(root, source, 'index.tsx'))) {\n entryFile = 'index.tsx';\n }\n\n if (!entryFile) {\n logger.exit(\n `Couldn't find a 'index.js'. 'index.ts' or 'index.tsx' file under '${source}'.\\n Please re-run the CLI after creating it.`\n );\n return;\n }\n\n pkg.devDependencies = Object.fromEntries(\n [\n ...Object.entries(pkg.devDependencies || {}),\n [name, `^${version}`],\n ].sort(([a], [b]) => a.localeCompare(b))\n );\n\n const questions: PromptObject[] = [\n {\n type: 'text',\n name: 'output',\n message: 'Where do you want to generate the output files?',\n initial: 'lib',\n validate: (input: string) => Boolean(input),\n },\n {\n type: 'multiselect',\n name: 'targets',\n message: 'Which targets do you want to build?',\n choices: [\n {\n title: 'commonjs - for running in Node (tests, SSR etc.)',\n value: 'commonjs',\n selected: true,\n },\n {\n title: 'module - for bundlers (metro, webpack etc.)',\n value: 'module',\n selected: true,\n },\n {\n title: 'typescript - declaration files for typechecking',\n value: 'typescript',\n selected: /\\.tsx?$/.test(entryFile),\n },\n ],\n validate: (input: string) => Boolean(input.length),\n },\n ];\n\n if (\n entryFile.endsWith('.js') &&\n FLOW_PRGAMA_REGEX.test(\n await fs.readFile(path.join(root, source, entryFile), 'utf-8')\n )\n ) {\n questions.push({\n type: 'confirm',\n name: 'flow',\n message: 'Do you want to publish definitions for flow?',\n initial: Object.keys(pkg.devDependencies || {}).includes('flow-bin'),\n });\n }\n\n const { output, targets, flow } = await prompts(questions);\n\n const target =\n targets[0] === 'commonjs' || targets[0] === 'module'\n ? targets[0]\n : undefined;\n\n const entries: {\n [key in 'source' | 'main' | 'module' | 'types']?: string;\n } = {\n source: `./${path.join(source, entryFile)}`,\n };\n\n let esm = false;\n\n if (targets.includes('module')) {\n esm = true;\n\n if (targets.includes('commonjs')) {\n entries.main = `./${path.join(output, 'commonjs', 'index.js')}`;\n }\n\n entries.module = `./${path.join(output, 'module', 'index.js')}`;\n } else if (targets.includes('commonjs')) {\n entries.main = `./${path.join(output, 'commonjs', 'index.js')}`;\n } else {\n entries.main = entries.source;\n }\n\n if (targets.includes('typescript')) {\n entries.types = `./${path.join(\n output,\n 'typescript',\n source,\n 'index.d.ts'\n )}`;\n\n if (!(await fs.pathExists(path.join(root, 'tsconfig.json')))) {\n const { tsconfig } = await prompts({\n type: 'confirm',\n name: 'tsconfig',\n message: `You have enabled 'typescript' compilation, but we couldn't find a 'tsconfig.json' in project root.\\n Generate one?`,\n initial: true,\n });\n\n if (tsconfig) {\n await fs.writeJSON(\n path.join(root, 'tsconfig.json'),\n {\n compilerOptions: {\n rootDir: '.',\n allowUnreachableCode: false,\n allowUnusedLabels: false,\n esModuleInterop: true,\n forceConsistentCasingInFileNames: true,\n jsx: 'react-jsx',\n lib: ['ESNext'],\n module: 'ESNext',\n moduleResolution: 'Bundler',\n noFallthroughCasesInSwitch: true,\n noImplicitReturns: true,\n noImplicitUseStrict: false,\n noStrictGenericChecks: false,\n noUncheckedIndexedAccess: true,\n noUnusedLocals: true,\n noUnusedParameters: true,\n resolveJsonModule: true,\n skipLibCheck: true,\n strict: true,\n target: 'ESNext',\n verbatimModuleSyntax: true,\n },\n },\n { spaces: 2 }\n );\n }\n }\n }\n\n const prepare = 'bob build';\n const files = [\n source,\n output,\n '!**/__tests__',\n '!**/__fixtures__',\n '!**/__mocks__',\n ];\n\n for (const key in entries) {\n const entry = entries[key as keyof typeof entries];\n\n if (pkg[key] && pkg[key] !== entry) {\n const { replace } = await prompts({\n type: 'confirm',\n name: 'replace',\n message: `Your package.json has the '${key}' field set to '${pkg[key]}'.\\n Do you want to replace it with '${entry}'?`,\n initial: true,\n });\n\n if (replace) {\n pkg[key] = entry;\n }\n } else {\n pkg[key] = entry;\n }\n }\n\n if (esm) {\n let replace = false;\n\n const exports = {\n '.': {\n ...(entries.types ? { types: entries.types } : null),\n ...(entries.module ? { import: entries.module } : null),\n ...(entries.main ? { require: entries.main } : null),\n },\n };\n\n if (\n pkg.exports &&\n JSON.stringify(pkg.exports) !== JSON.stringify(exports)\n ) {\n replace = (\n await prompts({\n type: 'confirm',\n name: 'replace',\n message: `Your package.json has 'exports' field set.\\n Do you want to replace it?`,\n initial: true,\n })\n ).replace;\n } else {\n replace = true;\n }\n\n if (replace) {\n pkg.exports = exports;\n }\n }\n\n if (\n pkg['react-native'] &&\n (pkg['react-native'].startsWith(source) ||\n pkg['react-native'].startsWith(`./${source}`))\n ) {\n const { remove } = await prompts({\n type: 'confirm',\n name: 'remove',\n message: `Your package.json has the 'react-native' field pointing to source code.\\n This can cause problems when customizing babel configuration.\\n Do you want to remove it?`,\n initial: true,\n });\n\n if (remove) {\n delete pkg['react-native'];\n }\n }\n\n if (pkg.scripts?.prepare && pkg.scripts.prepare !== prepare) {\n const { replace } = await prompts({\n type: 'confirm',\n name: 'replace',\n message: `Your package.json has the 'scripts.prepare' field set to '${pkg.scripts.prepare}'.\\n Do you want to replace it with '${prepare}'?`,\n initial: true,\n });\n\n if (replace) {\n pkg.scripts.prepare = prepare;\n }\n } else {\n pkg.scripts = pkg.scripts || {};\n pkg.scripts.prepare = prepare;\n }\n\n if (\n pkg.files &&\n JSON.stringify(pkg.files.slice().sort()) !==\n JSON.stringify(files.slice().sort())\n ) {\n const { update } = await prompts({\n type: 'confirm',\n name: 'update',\n message: `Your package.json already has a 'files' field.\\n Do you want to update it?`,\n initial: true,\n });\n\n if (update) {\n pkg.files = [\n ...files,\n ...pkg.files.filter(\n (file: string) => !files.includes(file.replace(/\\/$/g, ''))\n ),\n ];\n }\n } else {\n pkg.files = files;\n }\n\n pkg[name] = {\n source,\n output,\n targets: targets.map((t: string) => {\n if (t === target && flow) {\n return [t, { copyFlow: true }];\n }\n\n if (t === 'commonjs' || t === 'module') {\n return [t, { esm }];\n }\n\n return t;\n }),\n };\n\n if (pkg.jest) {\n const entry = `<rootDir>/${output}/`;\n\n if (pkg.jest.modulePathIgnorePatterns) {\n const { modulePathIgnorePatterns } = pkg.jest;\n\n if (!modulePathIgnorePatterns.includes(entry)) {\n modulePathIgnorePatterns.push(entry);\n }\n } else {\n pkg.jest.modulePathIgnorePatterns = [entry];\n }\n }\n\n pkg.eslintIgnore = pkg.eslintIgnore || ['node_modules/'];\n\n if (!pkg.eslintIgnore.includes(`${output}/`)) {\n pkg.eslintIgnore.push(`${output}/`);\n }\n\n await fs.writeJSON(pak, pkg, {\n spaces: 2,\n });\n\n const ignorefiles = [\n path.join(root, '.gitignore'),\n path.join(root, '.eslintignore'),\n ];\n\n for (const ignorefile of ignorefiles) {\n if (await fs.pathExists(ignorefile)) {\n const content = await fs.readFile(ignorefile, 'utf-8');\n\n if (!content.split('\\n').includes(`${output}/`)) {\n await fs.writeFile(\n ignorefile,\n `${content}\\n# generated by bob\\n${output}/\\n`\n );\n }\n }\n }\n\n const packageManager = (await fs.pathExists(path.join(root, 'yarn.lock')))\n ? 'yarn'\n : 'npm';\n\n console.log(\n dedent(`\n Project ${kleur.yellow(pkg.name)} configured successfully!\n\n ${kleur.magenta(\n `${kleur.bold('Perform last steps')} by running`\n )}${kleur.gray(':')}\n\n ${kleur.gray('$')} ${packageManager} install\n\n ${kleur.yellow('Good luck!')}\n `)\n );\n })\n .command('build', 'build files for publishing', {}, async (argv) => {\n const result = await explorer.search();\n\n if (!result?.config) {\n logger.exit(\n `No configuration found. Run '${argv.$0} init' to create one automatically.`\n );\n }\n\n const options: Options = result!.config;\n\n if (!options.targets?.length) {\n logger.exit(\n `No targets found in the configuration in '${path.relative(\n root,\n result!.filepath\n )}'.`\n );\n }\n\n const source = options.source;\n\n if (!source) {\n logger.exit(\n `No source option found in the configuration in '${path.relative(\n root,\n result!.filepath\n )}'.`\n );\n }\n\n const output = options.output;\n\n if (!output) {\n logger.exit(\n `No source option found in the configuration in '${path.relative(\n root,\n result!.filepath\n )}'.`\n );\n }\n\n const exclude =\n options.exclude ?? '**/{__tests__,__fixtures__,__mocks__}/**';\n\n const report = {\n info: logger.info,\n warn: logger.warn,\n error: logger.error,\n success: logger.success,\n };\n\n for (const target of options.targets!) {\n const targetName = Array.isArray(target) ? target[0] : target;\n const targetOptions = Array.isArray(target) ? target[1] : undefined;\n\n report.info(`Building target ${kleur.blue(targetName)}`);\n\n switch (targetName) {\n case 'commonjs':\n await buildCommonJS({\n root,\n source: path.resolve(root, source as string),\n output: path.resolve(root, output as string, 'commonjs'),\n exclude,\n options: targetOptions,\n report,\n });\n break;\n case 'module':\n await buildModule({\n root,\n source: path.resolve(root, source as string),\n output: path.resolve(root, output as string, 'module'),\n exclude,\n options: targetOptions,\n report,\n });\n break;\n case 'typescript':\n await buildTypescript({\n root,\n source: path.resolve(root, source as string),\n output: path.resolve(root, output as string, 'typescript'),\n options: targetOptions,\n report,\n });\n break;\n default:\n logger.exit(`Invalid target ${kleur.blue(targetName)}.`);\n }\n }\n })\n .demandCommand()\n .recommendCommands()\n .strict().argv;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_path","_interopRequireDefault","require","_fsExtra","_kleur","_dedent","_yargs","_cosmiconfig","_isGitDirty","_prompts","logger","_interopRequireWildcard","_commonjs","_module","_typescript","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","name","version","root","process","cwd","explorer","cosmiconfig","stopDir","searchPlaces","FLOW_PRGAMA_REGEX","yargs","command","isGitDirty","shouldContinue","prompts","type","message","initial","exit","pak","path","join","fs","pathExists","pkg","JSON","parse","readFile","result","search","config","devDependencies","source","validate","input","Boolean","entryFile","fromEntries","entries","sort","b","localeCompare","questions","choices","title","value","selected","test","length","endsWith","push","keys","includes","output","targets","flow","target","undefined","esm","main","module","types","import","tsconfig","writeJSON","compilerOptions","rootDir","allowUnreachableCode","allowUnusedLabels","esModuleInterop","forceConsistentCasingInFileNames","jsx","lib","moduleResolution","noFallthroughCasesInSwitch","noImplicitReturns","noImplicitUseStrict","noStrictGenericChecks","noUncheckedIndexedAccess","noUnusedLocals","noUnusedParameters","resolveJsonModule","skipLibCheck","strict","verbatimModuleSyntax","spaces","prepare","files","key","entry","replace","exports","stringify","startsWith","remove","scripts","pkgFiles","some","file","update","filter","map","copyFlow","jest","modulePathIgnorePatterns","eslintIgnore","ignorefiles","ignorefile","content","split","writeFile","packageManager","console","log","dedent","kleur","yellow","magenta","bold","gray","argv","$0","options","relative","filepath","exclude","report","info","warn","error","success","targetName","Array","isArray","targetOptions","blue","buildCommonJS","resolve","buildModule","buildTypescript","demandCommand","recommendCommands"],"sources":["../src/index.ts"],"sourcesContent":["import path from 'path';\nimport fs from 'fs-extra';\nimport kleur from 'kleur';\nimport dedent from 'dedent';\nimport yargs from 'yargs';\nimport { cosmiconfig } from 'cosmiconfig';\nimport isGitDirty from 'is-git-dirty';\nimport prompts, { type PromptObject } from './utils/prompts';\nimport * as logger from './utils/logger';\nimport buildCommonJS from './targets/commonjs';\nimport buildModule from './targets/module';\nimport buildTypescript from './targets/typescript';\nimport type { Options } from './types';\n\n// eslint-disable-next-line import/no-commonjs, @typescript-eslint/no-var-requires\nconst { name, version } = require('../package.json');\n\nconst root = process.cwd();\nconst explorer = cosmiconfig(name, {\n stopDir: root,\n searchPlaces: [\n 'package.json',\n 'bob.config.mjs',\n 'bob.config.cjs',\n 'bob.config.js',\n ],\n});\n\nconst FLOW_PRGAMA_REGEX = /\\*?\\s*@(flow)\\b/m;\n\nyargs\n .command('init', 'configure the package to use bob', {}, async () => {\n if (isGitDirty()) {\n const { shouldContinue } = await prompts({\n type: 'confirm',\n name: 'shouldContinue',\n message: `The working directory is not clean.\\n You should commit or stash your changes before configuring bob.\\n Continue anyway?`,\n initial: false,\n });\n\n if (!shouldContinue) {\n process.exit(0);\n }\n }\n\n const pak = path.join(root, 'package.json');\n\n if (!(await fs.pathExists(pak))) {\n logger.exit(\n `Couldn't find a 'package.json' file in '${root}'.\\n Are you in a project folder?`\n );\n }\n\n const pkg = JSON.parse(await fs.readFile(pak, 'utf-8'));\n const result = await explorer.search();\n\n if (result?.config && pkg.devDependencies && name in pkg.devDependencies) {\n const { shouldContinue } = await prompts({\n type: 'confirm',\n name: 'shouldContinue',\n message: `The project seems to be already configured with bob.\\n Do you want to overwrite the existing configuration?`,\n initial: false,\n });\n\n if (!shouldContinue) {\n process.exit(0);\n }\n }\n\n const { source } = await prompts({\n type: 'text',\n name: 'source',\n message: 'Where are your source files?',\n initial: 'src',\n validate: (input) => Boolean(input),\n });\n\n let entryFile;\n\n if (await fs.pathExists(path.join(root, source, 'index.js'))) {\n entryFile = 'index.js';\n } else if (await fs.pathExists(path.join(root, source, 'index.ts'))) {\n entryFile = 'index.ts';\n } else if (await fs.pathExists(path.join(root, source, 'index.tsx'))) {\n entryFile = 'index.tsx';\n }\n\n if (!entryFile) {\n logger.exit(\n `Couldn't find a 'index.js'. 'index.ts' or 'index.tsx' file under '${source}'.\\n Please re-run the CLI after creating it.`\n );\n return;\n }\n\n pkg.devDependencies = Object.fromEntries(\n [\n ...Object.entries(pkg.devDependencies || {}),\n [name, `^${version}`],\n ].sort(([a], [b]) => a.localeCompare(b))\n );\n\n const questions: PromptObject[] = [\n {\n type: 'text',\n name: 'output',\n message: 'Where do you want to generate the output files?',\n initial: 'lib',\n validate: (input: string) => Boolean(input),\n },\n {\n type: 'multiselect',\n name: 'targets',\n message: 'Which targets do you want to build?',\n choices: [\n {\n title: 'commonjs - for running in Node (tests, SSR etc.)',\n value: 'commonjs',\n selected: true,\n },\n {\n title: 'module - for bundlers (metro, webpack etc.)',\n value: 'module',\n selected: true,\n },\n {\n title: 'typescript - declaration files for typechecking',\n value: 'typescript',\n selected: /\\.tsx?$/.test(entryFile),\n },\n ],\n validate: (input: string) => Boolean(input.length),\n },\n ];\n\n if (\n entryFile.endsWith('.js') &&\n FLOW_PRGAMA_REGEX.test(\n await fs.readFile(path.join(root, source, entryFile), 'utf-8')\n )\n ) {\n questions.push({\n type: 'confirm',\n name: 'flow',\n message: 'Do you want to publish definitions for flow?',\n initial: Object.keys(pkg.devDependencies || {}).includes('flow-bin'),\n });\n }\n\n const { output, targets, flow } = await prompts(questions);\n\n const target =\n targets[0] === 'commonjs' || targets[0] === 'module'\n ? targets[0]\n : undefined;\n\n const entries: {\n [key in 'source' | 'main' | 'module' | 'types']?: string;\n } = {\n source: `./${path.join(source, entryFile)}`,\n };\n\n let esm = false;\n\n if (targets.includes('module')) {\n esm = true;\n\n if (targets.includes('commonjs')) {\n entries.main = `./${path.join(output, 'commonjs', 'index.js')}`;\n }\n\n entries.module = `./${path.join(output, 'module', 'index.js')}`;\n } else if (targets.includes('commonjs')) {\n entries.main = `./${path.join(output, 'commonjs', 'index.js')}`;\n } else {\n entries.main = entries.source;\n }\n\n const types: {\n [key in 'require' | 'import']?: string;\n } = {};\n\n if (targets.includes('typescript')) {\n types.require = `./${path.join(\n output,\n 'typescript',\n 'commonjs',\n source,\n 'index.d.ts'\n )}`;\n\n types.import = `./${path.join(\n output,\n 'typescript',\n 'module',\n source,\n 'index.d.ts'\n )}`;\n\n entries.types = types.require;\n\n if (!(await fs.pathExists(path.join(root, 'tsconfig.json')))) {\n const { tsconfig } = await prompts({\n type: 'confirm',\n name: 'tsconfig',\n message: `You have enabled 'typescript' compilation, but we couldn't find a 'tsconfig.json' in project root.\\n Generate one?`,\n initial: true,\n });\n\n if (tsconfig) {\n await fs.writeJSON(\n path.join(root, 'tsconfig.json'),\n {\n compilerOptions: {\n rootDir: '.',\n allowUnreachableCode: false,\n allowUnusedLabels: false,\n esModuleInterop: true,\n forceConsistentCasingInFileNames: true,\n jsx: 'react-jsx',\n lib: ['ESNext'],\n module: 'ESNext',\n moduleResolution: 'Bundler',\n noFallthroughCasesInSwitch: true,\n noImplicitReturns: true,\n noImplicitUseStrict: false,\n noStrictGenericChecks: false,\n noUncheckedIndexedAccess: true,\n noUnusedLocals: true,\n noUnusedParameters: true,\n resolveJsonModule: true,\n skipLibCheck: true,\n strict: true,\n target: 'ESNext',\n verbatimModuleSyntax: true,\n },\n },\n { spaces: 2 }\n );\n }\n }\n }\n\n const prepare = 'bob build';\n const files = [\n source,\n output,\n '!**/__tests__',\n '!**/__fixtures__',\n '!**/__mocks__',\n ];\n\n for (const key in entries) {\n const entry = entries[key as keyof typeof entries];\n\n if (pkg[key] && pkg[key] !== entry) {\n const { replace } = await prompts({\n type: 'confirm',\n name: 'replace',\n message: `Your package.json has the '${key}' field set to '${pkg[key]}'.\\n Do you want to replace it with '${entry}'?`,\n initial: true,\n });\n\n if (replace) {\n pkg[key] = entry;\n }\n } else {\n pkg[key] = entry;\n }\n }\n\n if (esm) {\n let replace = false;\n\n const exports = {\n '.': {\n import: {\n ...(types.import ? { types: types.import } : null),\n ...(entries.module ? { default: entries.module } : null),\n },\n require: {\n ...(types.require ? { types: types.require } : null),\n ...(entries.main ? { default: entries.main } : null),\n },\n },\n };\n\n if (\n pkg.exports &&\n JSON.stringify(pkg.exports) !== JSON.stringify(exports)\n ) {\n replace = (\n await prompts({\n type: 'confirm',\n name: 'replace',\n message: `Your package.json has 'exports' field set.\\n Do you want to replace it?`,\n initial: true,\n })\n ).replace;\n } else {\n replace = true;\n }\n\n if (replace) {\n pkg.exports = exports;\n }\n }\n\n if (\n pkg['react-native'] &&\n (pkg['react-native'].startsWith(source) ||\n pkg['react-native'].startsWith(`./${source}`))\n ) {\n const { remove } = await prompts({\n type: 'confirm',\n name: 'remove',\n message: `Your package.json has the 'react-native' field pointing to source code.\\n This can cause problems when customizing babel configuration.\\n Do you want to remove it?`,\n initial: true,\n });\n\n if (remove) {\n delete pkg['react-native'];\n }\n }\n\n if (pkg.scripts?.prepare && pkg.scripts.prepare !== prepare) {\n const { replace } = await prompts({\n type: 'confirm',\n name: 'replace',\n message: `Your package.json has the 'scripts.prepare' field set to '${pkg.scripts.prepare}'.\\n Do you want to replace it with '${prepare}'?`,\n initial: true,\n });\n\n if (replace) {\n pkg.scripts.prepare = prepare;\n }\n } else {\n pkg.scripts = pkg.scripts || {};\n pkg.scripts.prepare = prepare;\n }\n\n if (pkg.files) {\n const pkgFiles = pkg.files;\n\n if (files?.some((file) => !pkgFiles.includes(file))) {\n const { update } = await prompts({\n type: 'confirm',\n name: 'update',\n message: `Your package.json already has a 'files' field.\\n Do you want to update it?`,\n initial: true,\n });\n\n if (update) {\n pkg.files = [\n ...files,\n ...pkg.files.filter((file: string) => !files.includes(file)),\n ];\n }\n }\n } else {\n pkg.files = files;\n }\n\n pkg[name] = {\n source,\n output,\n targets: targets.map((t: string) => {\n if (t === target && flow) {\n return [t, { copyFlow: true }];\n }\n\n if (t === 'commonjs' || t === 'module' || t === 'typescript') {\n return [t, { esm }];\n }\n\n return t;\n }),\n };\n\n if (pkg.jest) {\n const entry = `<rootDir>/${output}/`;\n\n if (pkg.jest.modulePathIgnorePatterns) {\n const { modulePathIgnorePatterns } = pkg.jest;\n\n if (!modulePathIgnorePatterns.includes(entry)) {\n modulePathIgnorePatterns.push(entry);\n }\n } else {\n pkg.jest.modulePathIgnorePatterns = [entry];\n }\n }\n\n pkg.eslintIgnore = pkg.eslintIgnore || ['node_modules/'];\n\n if (!pkg.eslintIgnore.includes(`${output}/`)) {\n pkg.eslintIgnore.push(`${output}/`);\n }\n\n await fs.writeJSON(pak, pkg, {\n spaces: 2,\n });\n\n const ignorefiles = [\n path.join(root, '.gitignore'),\n path.join(root, '.eslintignore'),\n ];\n\n for (const ignorefile of ignorefiles) {\n if (await fs.pathExists(ignorefile)) {\n const content = await fs.readFile(ignorefile, 'utf-8');\n\n if (!content.split('\\n').includes(`${output}/`)) {\n await fs.writeFile(\n ignorefile,\n `${content}\\n# generated by bob\\n${output}/\\n`\n );\n }\n }\n }\n\n const packageManager = (await fs.pathExists(path.join(root, 'yarn.lock')))\n ? 'yarn'\n : 'npm';\n\n console.log(\n dedent(`\n Project ${kleur.yellow(pkg.name)} configured successfully!\n\n ${kleur.magenta(\n `${kleur.bold('Perform last steps')} by running`\n )}${kleur.gray(':')}\n\n ${kleur.gray('$')} ${packageManager} install\n\n ${kleur.yellow('Good luck!')}\n `)\n );\n })\n .command('build', 'build files for publishing', {}, async (argv) => {\n const result = await explorer.search();\n\n if (!result?.config) {\n logger.exit(\n `No configuration found. Run '${argv.$0} init' to create one automatically.`\n );\n }\n\n const options: Options = result!.config;\n\n if (!options.targets?.length) {\n logger.exit(\n `No targets found in the configuration in '${path.relative(\n root,\n result!.filepath\n )}'.`\n );\n }\n\n const source = options.source;\n\n if (!source) {\n logger.exit(\n `No source option found in the configuration in '${path.relative(\n root,\n result!.filepath\n )}'.`\n );\n }\n\n const output = options.output;\n\n if (!output) {\n logger.exit(\n `No source option found in the configuration in '${path.relative(\n root,\n result!.filepath\n )}'.`\n );\n }\n\n const exclude =\n options.exclude ?? '**/{__tests__,__fixtures__,__mocks__}/**';\n\n const report = {\n info: logger.info,\n warn: logger.warn,\n error: logger.error,\n success: logger.success,\n };\n\n for (const target of options.targets!) {\n const targetName = Array.isArray(target) ? target[0] : target;\n const targetOptions = Array.isArray(target) ? target[1] : undefined;\n\n report.info(`Building target ${kleur.blue(targetName)}`);\n\n switch (targetName) {\n case 'commonjs':\n await buildCommonJS({\n root,\n source: path.resolve(root, source as string),\n output: path.resolve(root, output as string, 'commonjs'),\n exclude,\n options: targetOptions,\n report,\n });\n break;\n case 'module':\n await buildModule({\n root,\n source: path.resolve(root, source as string),\n output: path.resolve(root, output as string, 'module'),\n exclude,\n options: targetOptions,\n report,\n });\n break;\n case 'typescript':\n await buildTypescript({\n root,\n source: path.resolve(root, source as string),\n output: path.resolve(root, output as string, 'typescript'),\n options: targetOptions,\n report,\n });\n break;\n default:\n logger.exit(`Invalid target ${kleur.blue(targetName)}.`);\n }\n }\n })\n .demandCommand()\n .recommendCommands()\n .strict().argv;\n"],"mappings":";;AAAA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,OAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,MAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,YAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,QAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,MAAA,GAAAC,uBAAA,CAAAT,OAAA;AACA,IAAAU,SAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,OAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,WAAA,GAAAb,sBAAA,CAAAC,OAAA;AAAmD,SAAAa,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAL,wBAAAK,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAvB,uBAAAe,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAI,UAAA,GAAAJ,CAAA,KAAAK,OAAA,EAAAL,CAAA;AAGnD;AACA,MAAM;EAAEmB,IAAI;EAAEC;AAAQ,CAAC,GAAGlC,OAAO,CAAC,iBAAiB,CAAC;AAEpD,MAAMmC,IAAI,GAAGC,OAAO,CAACC,GAAG,CAAC,CAAC;AAC1B,MAAMC,QAAQ,GAAG,IAAAC,wBAAW,EAACN,IAAI,EAAE;EACjCO,OAAO,EAAEL,IAAI;EACbM,YAAY,EAAE,CACZ,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,eAAe;AAEnB,CAAC,CAAC;AAEF,MAAMC,iBAAiB,GAAG,kBAAkB;AAE5CC,cAAK,CACFC,OAAO,CAAC,MAAM,EAAE,kCAAkC,EAAE,CAAC,CAAC,EAAE,YAAY;EACnE,IAAI,IAAAC,mBAAU,EAAC,CAAC,EAAE;IAChB,MAAM;MAAEC;IAAe,CAAC,GAAG,MAAM,IAAAC,gBAAO,EAAC;MACvCC,IAAI,EAAE,SAAS;MACff,IAAI,EAAE,gBAAgB;MACtBgB,OAAO,EAAE,4HAA4H;MACrIC,OAAO,EAAE;IACX,CAAC,CAAC;IAEF,IAAI,CAACJ,cAAc,EAAE;MACnBV,OAAO,CAACe,IAAI,CAAC,CAAC,CAAC;IACjB;EACF;EAEA,MAAMC,GAAG,GAAGC,aAAI,CAACC,IAAI,CAACnB,IAAI,EAAE,cAAc,CAAC;EAE3C,IAAI,EAAE,MAAMoB,gBAAE,CAACC,UAAU,CAACJ,GAAG,CAAC,CAAC,EAAE;IAC/B5C,MAAM,CAAC2C,IAAI,CACT,2CAA2ChB,IAAI,oCACjD,CAAC;EACH;EAEA,MAAMsB,GAAG,GAAGC,IAAI,CAACC,KAAK,CAAC,MAAMJ,gBAAE,CAACK,QAAQ,CAACR,GAAG,EAAE,OAAO,CAAC,CAAC;EACvD,MAAMS,MAAM,GAAG,MAAMvB,QAAQ,CAACwB,MAAM,CAAC,CAAC;EAEtC,IAAID,MAAM,EAAEE,MAAM,IAAIN,GAAG,CAACO,eAAe,IAAI/B,IAAI,IAAIwB,GAAG,CAACO,eAAe,EAAE;IACxE,MAAM;MAAElB;IAAe,CAAC,GAAG,MAAM,IAAAC,gBAAO,EAAC;MACvCC,IAAI,EAAE,SAAS;MACff,IAAI,EAAE,gBAAgB;MACtBgB,OAAO,EAAE,8GAA8G;MACvHC,OAAO,EAAE;IACX,CAAC,CAAC;IAEF,IAAI,CAACJ,cAAc,EAAE;MACnBV,OAAO,CAACe,IAAI,CAAC,CAAC,CAAC;IACjB;EACF;EAEA,MAAM;IAAEc;EAAO,CAAC,GAAG,MAAM,IAAAlB,gBAAO,EAAC;IAC/BC,IAAI,EAAE,MAAM;IACZf,IAAI,EAAE,QAAQ;IACdgB,OAAO,EAAE,8BAA8B;IACvCC,OAAO,EAAE,KAAK;IACdgB,QAAQ,EAAGC,KAAK,IAAKC,OAAO,CAACD,KAAK;EACpC,CAAC,CAAC;EAEF,IAAIE,SAAS;EAEb,IAAI,MAAMd,gBAAE,CAACC,UAAU,CAACH,aAAI,CAACC,IAAI,CAACnB,IAAI,EAAE8B,MAAM,EAAE,UAAU,CAAC,CAAC,EAAE;IAC5DI,SAAS,GAAG,UAAU;EACxB,CAAC,MAAM,IAAI,MAAMd,gBAAE,CAACC,UAAU,CAACH,aAAI,CAACC,IAAI,CAACnB,IAAI,EAAE8B,MAAM,EAAE,UAAU,CAAC,CAAC,EAAE;IACnEI,SAAS,GAAG,UAAU;EACxB,CAAC,MAAM,IAAI,MAAMd,gBAAE,CAACC,UAAU,CAACH,aAAI,CAACC,IAAI,CAACnB,IAAI,EAAE8B,MAAM,EAAE,WAAW,CAAC,CAAC,EAAE;IACpEI,SAAS,GAAG,WAAW;EACzB;EAEA,IAAI,CAACA,SAAS,EAAE;IACd7D,MAAM,CAAC2C,IAAI,CACT,qEAAqEc,MAAM,gDAC7E,CAAC;IACD;EACF;EAEAR,GAAG,CAACO,eAAe,GAAGvC,MAAM,CAAC6C,WAAW,CACtC,CACE,GAAG7C,MAAM,CAAC8C,OAAO,CAACd,GAAG,CAACO,eAAe,IAAI,CAAC,CAAC,CAAC,EAC5C,CAAC/B,IAAI,EAAE,IAAIC,OAAO,EAAE,CAAC,CACtB,CAACsC,IAAI,CAAC,CAAC,CAAChD,CAAC,CAAC,EAAE,CAACiD,CAAC,CAAC,KAAKjD,CAAC,CAACkD,aAAa,CAACD,CAAC,CAAC,CACzC,CAAC;EAED,MAAME,SAAyB,GAAG,CAChC;IACE3B,IAAI,EAAE,MAAM;IACZf,IAAI,EAAE,QAAQ;IACdgB,OAAO,EAAE,iDAAiD;IAC1DC,OAAO,EAAE,KAAK;IACdgB,QAAQ,EAAGC,KAAa,IAAKC,OAAO,CAACD,KAAK;EAC5C,CAAC,EACD;IACEnB,IAAI,EAAE,aAAa;IACnBf,IAAI,EAAE,SAAS;IACfgB,OAAO,EAAE,qCAAqC;IAC9C2B,OAAO,EAAE,CACP;MACEC,KAAK,EAAE,kDAAkD;MACzDC,KAAK,EAAE,UAAU;MACjBC,QAAQ,EAAE;IACZ,CAAC,EACD;MACEF,KAAK,EAAE,6CAA6C;MACpDC,KAAK,EAAE,QAAQ;MACfC,QAAQ,EAAE;IACZ,CAAC,EACD;MACEF,KAAK,EAAE,iDAAiD;MACxDC,KAAK,EAAE,YAAY;MACnBC,QAAQ,EAAE,SAAS,CAACC,IAAI,CAACX,SAAS;IACpC,CAAC,CACF;IACDH,QAAQ,EAAGC,KAAa,IAAKC,OAAO,CAACD,KAAK,CAACc,MAAM;EACnD,CAAC,CACF;EAED,IACEZ,SAAS,CAACa,QAAQ,CAAC,KAAK,CAAC,IACzBxC,iBAAiB,CAACsC,IAAI,CACpB,MAAMzB,gBAAE,CAACK,QAAQ,CAACP,aAAI,CAACC,IAAI,CAACnB,IAAI,EAAE8B,MAAM,EAAEI,SAAS,CAAC,EAAE,OAAO,CAC/D,CAAC,EACD;IACAM,SAAS,CAACQ,IAAI,CAAC;MACbnC,IAAI,EAAE,SAAS;MACff,IAAI,EAAE,MAAM;MACZgB,OAAO,EAAE,8CAA8C;MACvDC,OAAO,EAAEzB,MAAM,CAAC2D,IAAI,CAAC3B,GAAG,CAACO,eAAe,IAAI,CAAC,CAAC,CAAC,CAACqB,QAAQ,CAAC,UAAU;IACrE,CAAC,CAAC;EACJ;EAEA,MAAM;IAAEC,MAAM;IAAEC,OAAO;IAAEC;EAAK,CAAC,GAAG,MAAM,IAAAzC,gBAAO,EAAC4B,SAAS,CAAC;EAE1D,MAAMc,MAAM,GACVF,OAAO,CAAC,CAAC,CAAC,KAAK,UAAU,IAAIA,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,GAChDA,OAAO,CAAC,CAAC,CAAC,GACVG,SAAS;EAEf,MAAMnB,OAEL,GAAG;IACFN,MAAM,EAAE,KAAKZ,aAAI,CAACC,IAAI,CAACW,MAAM,EAAEI,SAAS,CAAC;EAC3C,CAAC;EAED,IAAIsB,GAAG,GAAG,KAAK;EAEf,IAAIJ,OAAO,CAACF,QAAQ,CAAC,QAAQ,CAAC,EAAE;IAC9BM,GAAG,GAAG,IAAI;IAEV,IAAIJ,OAAO,CAACF,QAAQ,CAAC,UAAU,CAAC,EAAE;MAChCd,OAAO,CAACqB,IAAI,GAAG,KAAKvC,aAAI,CAACC,IAAI,CAACgC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE;IACjE;IAEAf,OAAO,CAACsB,MAAM,GAAG,KAAKxC,aAAI,CAACC,IAAI,CAACgC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE;EACjE,CAAC,MAAM,IAAIC,OAAO,CAACF,QAAQ,CAAC,UAAU,CAAC,EAAE;IACvCd,OAAO,CAACqB,IAAI,GAAG,KAAKvC,aAAI,CAACC,IAAI,CAACgC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE;EACjE,CAAC,MAAM;IACLf,OAAO,CAACqB,IAAI,GAAGrB,OAAO,CAACN,MAAM;EAC/B;EAEA,MAAM6B,KAEL,GAAG,CAAC,CAAC;EAEN,IAAIP,OAAO,CAACF,QAAQ,CAAC,YAAY,CAAC,EAAE;IAClCS,KAAK,CAAC9F,OAAO,GAAG,KAAKqD,aAAI,CAACC,IAAI,CAC5BgC,MAAM,EACN,YAAY,EACZ,UAAU,EACVrB,MAAM,EACN,YACF,CAAC,EAAE;IAEH6B,KAAK,CAACC,MAAM,GAAG,KAAK1C,aAAI,CAACC,IAAI,CAC3BgC,MAAM,EACN,YAAY,EACZ,QAAQ,EACRrB,MAAM,EACN,YACF,CAAC,EAAE;IAEHM,OAAO,CAACuB,KAAK,GAAGA,KAAK,CAAC9F,OAAO;IAE7B,IAAI,EAAE,MAAMuD,gBAAE,CAACC,UAAU,CAACH,aAAI,CAACC,IAAI,CAACnB,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE;MAC5D,MAAM;QAAE6D;MAAS,CAAC,GAAG,MAAM,IAAAjD,gBAAO,EAAC;QACjCC,IAAI,EAAE,SAAS;QACff,IAAI,EAAE,UAAU;QAChBgB,OAAO,EAAE,qHAAqH;QAC9HC,OAAO,EAAE;MACX,CAAC,CAAC;MAEF,IAAI8C,QAAQ,EAAE;QACZ,MAAMzC,gBAAE,CAAC0C,SAAS,CAChB5C,aAAI,CAACC,IAAI,CAACnB,IAAI,EAAE,eAAe,CAAC,EAChC;UACE+D,eAAe,EAAE;YACfC,OAAO,EAAE,GAAG;YACZC,oBAAoB,EAAE,KAAK;YAC3BC,iBAAiB,EAAE,KAAK;YACxBC,eAAe,EAAE,IAAI;YACrBC,gCAAgC,EAAE,IAAI;YACtCC,GAAG,EAAE,WAAW;YAChBC,GAAG,EAAE,CAAC,QAAQ,CAAC;YACfZ,MAAM,EAAE,QAAQ;YAChBa,gBAAgB,EAAE,SAAS;YAC3BC,0BAA0B,EAAE,IAAI;YAChCC,iBAAiB,EAAE,IAAI;YACvBC,mBAAmB,EAAE,KAAK;YAC1BC,qBAAqB,EAAE,KAAK;YAC5BC,wBAAwB,EAAE,IAAI;YAC9BC,cAAc,EAAE,IAAI;YACpBC,kBAAkB,EAAE,IAAI;YACxBC,iBAAiB,EAAE,IAAI;YACvBC,YAAY,EAAE,IAAI;YAClBC,MAAM,EAAE,IAAI;YACZ3B,MAAM,EAAE,QAAQ;YAChB4B,oBAAoB,EAAE;UACxB;QACF,CAAC,EACD;UAAEC,MAAM,EAAE;QAAE,CACd,CAAC;MACH;IACF;EACF;EAEA,MAAMC,OAAO,GAAG,WAAW;EAC3B,MAAMC,KAAK,GAAG,CACZvD,MAAM,EACNqB,MAAM,EACN,eAAe,EACf,kBAAkB,EAClB,eAAe,CAChB;EAED,KAAK,MAAMmC,GAAG,IAAIlD,OAAO,EAAE;IACzB,MAAMmD,KAAK,GAAGnD,OAAO,CAACkD,GAAG,CAAyB;IAElD,IAAIhE,GAAG,CAACgE,GAAG,CAAC,IAAIhE,GAAG,CAACgE,GAAG,CAAC,KAAKC,KAAK,EAAE;MAClC,MAAM;QAAEC;MAAQ,CAAC,GAAG,MAAM,IAAA5E,gBAAO,EAAC;QAChCC,IAAI,EAAE,SAAS;QACff,IAAI,EAAE,SAAS;QACfgB,OAAO,EAAE,8BAA8BwE,GAAG,mBAAmBhE,GAAG,CAACgE,GAAG,CAAC,yCAAyCC,KAAK,IAAI;QACvHxE,OAAO,EAAE;MACX,CAAC,CAAC;MAEF,IAAIyE,OAAO,EAAE;QACXlE,GAAG,CAACgE,GAAG,CAAC,GAAGC,KAAK;MAClB;IACF,CAAC,MAAM;MACLjE,GAAG,CAACgE,GAAG,CAAC,GAAGC,KAAK;IAClB;EACF;EAEA,IAAI/B,GAAG,EAAE;IACP,IAAIgC,OAAO,GAAG,KAAK;IAEnB,MAAMC,OAAO,GAAG;MACd,GAAG,EAAE;QACH7B,MAAM,EAAE;UACN,IAAID,KAAK,CAACC,MAAM,GAAG;YAAED,KAAK,EAAEA,KAAK,CAACC;UAAO,CAAC,GAAG,IAAI,CAAC;UAClD,IAAIxB,OAAO,CAACsB,MAAM,GAAG;YAAE1E,OAAO,EAAEoD,OAAO,CAACsB;UAAO,CAAC,GAAG,IAAI;QACzD,CAAC;QACD7F,OAAO,EAAE;UACP,IAAI8F,KAAK,CAAC9F,OAAO,GAAG;YAAE8F,KAAK,EAAEA,KAAK,CAAC9F;UAAQ,CAAC,GAAG,IAAI,CAAC;UACpD,IAAIuE,OAAO,CAACqB,IAAI,GAAG;YAAEzE,OAAO,EAAEoD,OAAO,CAACqB;UAAK,CAAC,GAAG,IAAI;QACrD;MACF;IACF,CAAC;IAED,IACEnC,GAAG,CAACmE,OAAO,IACXlE,IAAI,CAACmE,SAAS,CAACpE,GAAG,CAACmE,OAAO,CAAC,KAAKlE,IAAI,CAACmE,SAAS,CAACD,OAAO,CAAC,EACvD;MACAD,OAAO,GAAG,CACR,MAAM,IAAA5E,gBAAO,EAAC;QACZC,IAAI,EAAE,SAAS;QACff,IAAI,EAAE,SAAS;QACfgB,OAAO,EAAE,0EAA0E;QACnFC,OAAO,EAAE;MACX,CAAC,CAAC,EACFyE,OAAO;IACX,CAAC,MAAM;MACLA,OAAO,GAAG,IAAI;IAChB;IAEA,IAAIA,OAAO,EAAE;MACXlE,GAAG,CAACmE,OAAO,GAAGA,OAAO;IACvB;EACF;EAEA,IACEnE,GAAG,CAAC,cAAc,CAAC,KAClBA,GAAG,CAAC,cAAc,CAAC,CAACqE,UAAU,CAAC7D,MAAM,CAAC,IACrCR,GAAG,CAAC,cAAc,CAAC,CAACqE,UAAU,CAAC,KAAK7D,MAAM,EAAE,CAAC,CAAC,EAChD;IACA,MAAM;MAAE8D;IAAO,CAAC,GAAG,MAAM,IAAAhF,gBAAO,EAAC;MAC/BC,IAAI,EAAE,SAAS;MACff,IAAI,EAAE,QAAQ;MACdgB,OAAO,EAAE,uKAAuK;MAChLC,OAAO,EAAE;IACX,CAAC,CAAC;IAEF,IAAI6E,MAAM,EAAE;MACV,OAAOtE,GAAG,CAAC,cAAc,CAAC;IAC5B;EACF;EAEA,IAAIA,GAAG,CAACuE,OAAO,EAAET,OAAO,IAAI9D,GAAG,CAACuE,OAAO,CAACT,OAAO,KAAKA,OAAO,EAAE;IAC3D,MAAM;MAAEI;IAAQ,CAAC,GAAG,MAAM,IAAA5E,gBAAO,EAAC;MAChCC,IAAI,EAAE,SAAS;MACff,IAAI,EAAE,SAAS;MACfgB,OAAO,EAAE,6DAA6DQ,GAAG,CAACuE,OAAO,CAACT,OAAO,yCAAyCA,OAAO,IAAI;MAC7IrE,OAAO,EAAE;IACX,CAAC,CAAC;IAEF,IAAIyE,OAAO,EAAE;MACXlE,GAAG,CAACuE,OAAO,CAACT,OAAO,GAAGA,OAAO;IAC/B;EACF,CAAC,MAAM;IACL9D,GAAG,CAACuE,OAAO,GAAGvE,GAAG,CAACuE,OAAO,IAAI,CAAC,CAAC;IAC/BvE,GAAG,CAACuE,OAAO,CAACT,OAAO,GAAGA,OAAO;EAC/B;EAEA,IAAI9D,GAAG,CAAC+D,KAAK,EAAE;IACb,MAAMS,QAAQ,GAAGxE,GAAG,CAAC+D,KAAK;IAE1B,IAAIA,KAAK,EAAEU,IAAI,CAAEC,IAAI,IAAK,CAACF,QAAQ,CAAC5C,QAAQ,CAAC8C,IAAI,CAAC,CAAC,EAAE;MACnD,MAAM;QAAEC;MAAO,CAAC,GAAG,MAAM,IAAArF,gBAAO,EAAC;QAC/BC,IAAI,EAAE,SAAS;QACff,IAAI,EAAE,QAAQ;QACdgB,OAAO,EAAE,6EAA6E;QACtFC,OAAO,EAAE;MACX,CAAC,CAAC;MAEF,IAAIkF,MAAM,EAAE;QACV3E,GAAG,CAAC+D,KAAK,GAAG,CACV,GAAGA,KAAK,EACR,GAAG/D,GAAG,CAAC+D,KAAK,CAACa,MAAM,CAAEF,IAAY,IAAK,CAACX,KAAK,CAACnC,QAAQ,CAAC8C,IAAI,CAAC,CAAC,CAC7D;MACH;IACF;EACF,CAAC,MAAM;IACL1E,GAAG,CAAC+D,KAAK,GAAGA,KAAK;EACnB;EAEA/D,GAAG,CAACxB,IAAI,CAAC,GAAG;IACVgC,MAAM;IACNqB,MAAM;IACNC,OAAO,EAAEA,OAAO,CAAC+C,GAAG,CAAErH,CAAS,IAAK;MAClC,IAAIA,CAAC,KAAKwE,MAAM,IAAID,IAAI,EAAE;QACxB,OAAO,CAACvE,CAAC,EAAE;UAAEsH,QAAQ,EAAE;QAAK,CAAC,CAAC;MAChC;MAEA,IAAItH,CAAC,KAAK,UAAU,IAAIA,CAAC,KAAK,QAAQ,IAAIA,CAAC,KAAK,YAAY,EAAE;QAC5D,OAAO,CAACA,CAAC,EAAE;UAAE0E;QAAI,CAAC,CAAC;MACrB;MAEA,OAAO1E,CAAC;IACV,CAAC;EACH,CAAC;EAED,IAAIwC,GAAG,CAAC+E,IAAI,EAAE;IACZ,MAAMd,KAAK,GAAG,aAAapC,MAAM,GAAG;IAEpC,IAAI7B,GAAG,CAAC+E,IAAI,CAACC,wBAAwB,EAAE;MACrC,MAAM;QAAEA;MAAyB,CAAC,GAAGhF,GAAG,CAAC+E,IAAI;MAE7C,IAAI,CAACC,wBAAwB,CAACpD,QAAQ,CAACqC,KAAK,CAAC,EAAE;QAC7Ce,wBAAwB,CAACtD,IAAI,CAACuC,KAAK,CAAC;MACtC;IACF,CAAC,MAAM;MACLjE,GAAG,CAAC+E,IAAI,CAACC,wBAAwB,GAAG,CAACf,KAAK,CAAC;IAC7C;EACF;EAEAjE,GAAG,CAACiF,YAAY,GAAGjF,GAAG,CAACiF,YAAY,IAAI,CAAC,eAAe,CAAC;EAExD,IAAI,CAACjF,GAAG,CAACiF,YAAY,CAACrD,QAAQ,CAAC,GAAGC,MAAM,GAAG,CAAC,EAAE;IAC5C7B,GAAG,CAACiF,YAAY,CAACvD,IAAI,CAAC,GAAGG,MAAM,GAAG,CAAC;EACrC;EAEA,MAAM/B,gBAAE,CAAC0C,SAAS,CAAC7C,GAAG,EAAEK,GAAG,EAAE;IAC3B6D,MAAM,EAAE;EACV,CAAC,CAAC;EAEF,MAAMqB,WAAW,GAAG,CAClBtF,aAAI,CAACC,IAAI,CAACnB,IAAI,EAAE,YAAY,CAAC,EAC7BkB,aAAI,CAACC,IAAI,CAACnB,IAAI,EAAE,eAAe,CAAC,CACjC;EAED,KAAK,MAAMyG,UAAU,IAAID,WAAW,EAAE;IACpC,IAAI,MAAMpF,gBAAE,CAACC,UAAU,CAACoF,UAAU,CAAC,EAAE;MACnC,MAAMC,OAAO,GAAG,MAAMtF,gBAAE,CAACK,QAAQ,CAACgF,UAAU,EAAE,OAAO,CAAC;MAEtD,IAAI,CAACC,OAAO,CAACC,KAAK,CAAC,IAAI,CAAC,CAACzD,QAAQ,CAAC,GAAGC,MAAM,GAAG,CAAC,EAAE;QAC/C,MAAM/B,gBAAE,CAACwF,SAAS,CAChBH,UAAU,EACV,GAAGC,OAAO,yBAAyBvD,MAAM,KAC3C,CAAC;MACH;IACF;EACF;EAEA,MAAM0D,cAAc,GAAG,CAAC,MAAMzF,gBAAE,CAACC,UAAU,CAACH,aAAI,CAACC,IAAI,CAACnB,IAAI,EAAE,WAAW,CAAC,CAAC,IACrE,MAAM,GACN,KAAK;EAET8G,OAAO,CAACC,GAAG,CACT,IAAAC,eAAM,EAAC;AACb,gBAAgBC,cAAK,CAACC,MAAM,CAAC5F,GAAG,CAACxB,IAAI,CAAC;AACtC;AACA,QAAQmH,cAAK,CAACE,OAAO,CACb,GAAGF,cAAK,CAACG,IAAI,CAAC,oBAAoB,CAAC,aACrC,CAAC,GAAGH,cAAK,CAACI,IAAI,CAAC,GAAG,CAAC;AACzB;AACA,UAAUJ,cAAK,CAACI,IAAI,CAAC,GAAG,CAAC,IAAIR,cAAc;AAC3C;AACA,QAAQI,cAAK,CAACC,MAAM,CAAC,YAAY,CAAC;AAClC,KAAK,CACD,CAAC;AACH,CAAC,CAAC,CACDzG,OAAO,CAAC,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC,EAAE,MAAO6G,IAAI,IAAK;EAClE,MAAM5F,MAAM,GAAG,MAAMvB,QAAQ,CAACwB,MAAM,CAAC,CAAC;EAEtC,IAAI,CAACD,MAAM,EAAEE,MAAM,EAAE;IACnBvD,MAAM,CAAC2C,IAAI,CACT,gCAAgCsG,IAAI,CAACC,EAAE,qCACzC,CAAC;EACH;EAEA,MAAMC,OAAgB,GAAG9F,MAAM,CAAEE,MAAM;EAEvC,IAAI,CAAC4F,OAAO,CAACpE,OAAO,EAAEN,MAAM,EAAE;IAC5BzE,MAAM,CAAC2C,IAAI,CACT,6CAA6CE,aAAI,CAACuG,QAAQ,CACxDzH,IAAI,EACJ0B,MAAM,CAAEgG,QACV,CAAC,IACH,CAAC;EACH;EAEA,MAAM5F,MAAM,GAAG0F,OAAO,CAAC1F,MAAM;EAE7B,IAAI,CAACA,MAAM,EAAE;IACXzD,MAAM,CAAC2C,IAAI,CACT,mDAAmDE,aAAI,CAACuG,QAAQ,CAC9DzH,IAAI,EACJ0B,MAAM,CAAEgG,QACV,CAAC,IACH,CAAC;EACH;EAEA,MAAMvE,MAAM,GAAGqE,OAAO,CAACrE,MAAM;EAE7B,IAAI,CAACA,MAAM,EAAE;IACX9E,MAAM,CAAC2C,IAAI,CACT,mDAAmDE,aAAI,CAACuG,QAAQ,CAC9DzH,IAAI,EACJ0B,MAAM,CAAEgG,QACV,CAAC,IACH,CAAC;EACH;EAEA,MAAMC,OAAO,GACXH,OAAO,CAACG,OAAO,IAAI,0CAA0C;EAE/D,MAAMC,MAAM,GAAG;IACbC,IAAI,EAAExJ,MAAM,CAACwJ,IAAI;IACjBC,IAAI,EAAEzJ,MAAM,CAACyJ,IAAI;IACjBC,KAAK,EAAE1J,MAAM,CAAC0J,KAAK;IACnBC,OAAO,EAAE3J,MAAM,CAAC2J;EAClB,CAAC;EAED,KAAK,MAAM1E,MAAM,IAAIkE,OAAO,CAACpE,OAAO,EAAG;IACrC,MAAM6E,UAAU,GAAGC,KAAK,CAACC,OAAO,CAAC7E,MAAM,CAAC,GAAGA,MAAM,CAAC,CAAC,CAAC,GAAGA,MAAM;IAC7D,MAAM8E,aAAa,GAAGF,KAAK,CAACC,OAAO,CAAC7E,MAAM,CAAC,GAAGA,MAAM,CAAC,CAAC,CAAC,GAAGC,SAAS;IAEnEqE,MAAM,CAACC,IAAI,CAAC,mBAAmBZ,cAAK,CAACoB,IAAI,CAACJ,UAAU,CAAC,EAAE,CAAC;IAExD,QAAQA,UAAU;MAChB,KAAK,UAAU;QACb,MAAM,IAAAK,iBAAa,EAAC;UAClBtI,IAAI;UACJ8B,MAAM,EAAEZ,aAAI,CAACqH,OAAO,CAACvI,IAAI,EAAE8B,MAAgB,CAAC;UAC5CqB,MAAM,EAAEjC,aAAI,CAACqH,OAAO,CAACvI,IAAI,EAAEmD,MAAM,EAAY,UAAU,CAAC;UACxDwE,OAAO;UACPH,OAAO,EAAEY,aAAa;UACtBR;QACF,CAAC,CAAC;QACF;MACF,KAAK,QAAQ;QACX,MAAM,IAAAY,eAAW,EAAC;UAChBxI,IAAI;UACJ8B,MAAM,EAAEZ,aAAI,CAACqH,OAAO,CAACvI,IAAI,EAAE8B,MAAgB,CAAC;UAC5CqB,MAAM,EAAEjC,aAAI,CAACqH,OAAO,CAACvI,IAAI,EAAEmD,MAAM,EAAY,QAAQ,CAAC;UACtDwE,OAAO;UACPH,OAAO,EAAEY,aAAa;UACtBR;QACF,CAAC,CAAC;QACF;MACF,KAAK,YAAY;QACf,MAAM,IAAAa,mBAAe,EAAC;UACpBzI,IAAI;UACJ8B,MAAM,EAAEZ,aAAI,CAACqH,OAAO,CAACvI,IAAI,EAAE8B,MAAgB,CAAC;UAC5CqB,MAAM,EAAEjC,aAAI,CAACqH,OAAO,CAACvI,IAAI,EAAEmD,MAAM,EAAY,YAAY,CAAC;UAC1DqE,OAAO,EAAEY,aAAa;UACtBR;QACF,CAAC,CAAC;QACF;MACF;QACEvJ,MAAM,CAAC2C,IAAI,CAAC,kBAAkBiG,cAAK,CAACoB,IAAI,CAACJ,UAAU,CAAC,GAAG,CAAC;IAC5D;EACF;AACF,CAAC,CAAC,CACDS,aAAa,CAAC,CAAC,CACfC,iBAAiB,CAAC,CAAC,CACnB1D,MAAM,CAAC,CAAC,CAACqC,IAAI","ignoreList":[]}
|
package/lib/targets/commonjs.js
CHANGED
|
@@ -8,7 +8,7 @@ var _path = _interopRequireDefault(require("path"));
|
|
|
8
8
|
var _kleur = _interopRequireDefault(require("kleur"));
|
|
9
9
|
var _del = _interopRequireDefault(require("del"));
|
|
10
10
|
var _compile = _interopRequireDefault(require("../utils/compile"));
|
|
11
|
-
function _interopRequireDefault(
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
12
|
async function build({
|
|
13
13
|
root,
|
|
14
14
|
source,
|