UNPKG

25.1 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../src/cli.ts"],"names":["name","version","require","root","process","cwd","explorer","searchPlaces","FLOW_PRGAMA_REGEX","yargs","command","CreateArgs","create","pak","path","join","shouldContinue","type","message","initial","exit","fs","pathExists","logger","source","validate","input","Boolean","entryFile","pkg","JSON","parse","readFile","devDependencies","Object","fromEntries","entries","sort","a","b","localeCompare","questions","choices","title","value","selected","test","length","endsWith","push","keys","includes","output","targets","flow","target","undefined","module","types","tsconfig","writeFile","stringify","compilerOptions","allowUnreachableCode","allowUnusedLabels","esModuleInterop","forceConsistentCasingInFileNames","jsx","lib","moduleResolution","noFallthroughCasesInSwitch","noImplicitReturns","noImplicitUseStrict","noStrictGenericChecks","noUnusedLocals","noUnusedParameters","resolveJsonModule","skipLibCheck","strict","prepare","files","key","entry","replace","scripts","slice","update","filter","file","map","t","jest","modulePathIgnorePatterns","eslintIgnore","ignorefiles","ignorefile","content","split","console","log","argv","result","search","config","$0","options","relative","filepath","report","info","warn","error","success","targetName","Array","isArray","targetOptions","chalk","blue","resolve","demandCommand","recommendCommands"],"mappings":"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","sourcesContent":["import path from 'path';\nimport fs from 'fs-extra';\nimport chalk from 'chalk';\nimport dedent from 'dedent';\nimport yargs from 'yargs';\nimport { cosmiconfigSync } from 'cosmiconfig';\nimport isGitDirty from 'is-git-dirty';\nimport create, { args as CreateArgs } from './create';\nimport prompts, { PromptObject } from './utils/prompts';\nimport * as logger from './utils/logger';\nimport buildAAR from './targets/aar';\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\nconst { name, version } = require('../package.json');\n\nconst root = process.cwd();\nconst explorer = cosmiconfigSync(name, {\n searchPlaces: ['package.json', `bob.config.js`],\n});\n\nconst FLOW_PRGAMA_REGEX = /\\*?\\s*@(flow)\\b/m;\n\n// eslint-disable-next-line babel/no-unused-expressions\nyargs\n .command('create <name>', 'create a react native library', CreateArgs, create)\n .command('init', 'configure the package to use bob', {}, async () => {\n const pak = path.join(root, 'package.json');\n\n if (isGitDirty()) {\n const { shouldContinue } = await prompts({\n type: 'confirm',\n name: 'shouldContinue',\n message: `The working directory is not clean. You should commit or stash your changes before configuring bob. Continue anyway?`,\n initial: false,\n });\n\n if (!shouldContinue) {\n process.exit(1);\n }\n }\n\n if (!(await fs.pathExists(pak))) {\n logger.exit(\n `Couldn't find a 'package.json' file in '${root}'. Are you in a project folder?`\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}'. Please re-run the CLI after creating it.`\n );\n return;\n }\n\n const pkg = JSON.parse(await fs.readFile(pak, 'utf-8'));\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 title: 'aar - bundle android code to a binary',\n value: 'aar',\n selected: false,\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: { [key: string]: string } = {\n 'main': target\n ? path.join(output, target, 'index.js')\n : path.join(source, entryFile),\n 'react-native': path.join(source, entryFile),\n };\n\n if (targets.includes('module')) {\n entries.module = path.join(output, 'module', 'index.js');\n }\n\n if (targets.includes('typescript')) {\n entries.types = path.join(output, 'typescript', source, 'index.d.ts');\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. Generate one?`,\n initial: true,\n });\n\n if (tsconfig) {\n await fs.writeFile(\n path.join(root, 'tsconfig.json'),\n JSON.stringify(\n {\n compilerOptions: {\n allowUnreachableCode: false,\n allowUnusedLabels: false,\n esModuleInterop: true,\n forceConsistentCasingInFileNames: true,\n jsx: 'react',\n lib: ['esnext'],\n module: 'esnext',\n moduleResolution: 'node',\n noFallthroughCasesInSwitch: true,\n noImplicitReturns: true,\n noImplicitUseStrict: false,\n noStrictGenericChecks: false,\n noUnusedLocals: true,\n noUnusedParameters: true,\n resolveJsonModule: true,\n skipLibCheck: true,\n strict: true,\n target: 'esnext',\n },\n },\n null,\n 2\n )\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];\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]}'. 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 (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}'. 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. 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, { flow }];\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.writeFile(pak, JSON.stringify(pkg, null, 2));\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 console.log(\n dedent(chalk`\n Project {yellow ${pkg.name}} configured successfully!\n\n {magenta {bold Perform last steps} by running}{gray :}\n\n {gray $} yarn\n\n {yellow Good luck!}\n `)\n );\n })\n .command('build', 'build files for publishing', {}, async (argv) => {\n const result = 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 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 ${chalk.blue(targetName)}`);\n\n switch (targetName) {\n case 'aar':\n await buildAAR({\n root,\n source: path.resolve(root, source as string),\n output: path.resolve(root, output as string, 'aar'),\n options: targetOptions,\n report,\n });\n break;\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 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 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 ${chalk.blue(targetName)}.`);\n }\n }\n })\n .demandCommand()\n .recommendCommands()\n .strict().argv;\n"],"file":"cli.js"}
\No newline at end of file