@nx/expo 16.0.0-beta.1
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/.eslintrc.json +19 -0
- package/CHANGELOG.md +8 -0
- package/LICENSE +22 -0
- package/README.md +63 -0
- package/collection.json +0 -0
- package/docs/build-list-examples.md +71 -0
- package/docs/prebuild-examples.md +70 -0
- package/docs/run-examples.md +91 -0
- package/docs/start-examples.md +98 -0
- package/executors.json +116 -0
- package/generators.json +61 -0
- package/index.d.ts +4 -0
- package/index.js +12 -0
- package/index.js.map +1 -0
- package/migrations.json +734 -0
- package/package.json +59 -0
- package/plugins/jest/svg-mock.d.ts +0 -0
- package/plugins/jest/svg-mock.js +4 -0
- package/plugins/jest/svg-mock.js.map +1 -0
- package/plugins/metro-resolver.d.ts +1 -0
- package/plugins/metro-resolver.js +135 -0
- package/plugins/metro-resolver.js.map +1 -0
- package/plugins/with-nx-metro.d.ts +8 -0
- package/plugins/with-nx-metro.js +31 -0
- package/plugins/with-nx-metro.js.map +1 -0
- package/plugins/with-nx-webpack.d.ts +5 -0
- package/plugins/with-nx-webpack.js +52 -0
- package/plugins/with-nx-webpack.js.map +1 -0
- package/project.json +61 -0
- package/src/executors/build/build.impl.d.ts +6 -0
- package/src/executors/build/build.impl.js +62 -0
- package/src/executors/build/build.impl.js.map +1 -0
- package/src/executors/build/compat.d.ts +2 -0
- package/src/executors/build/compat.js +6 -0
- package/src/executors/build/compat.js.map +1 -0
- package/src/executors/build/schema.d.ts +14 -0
- package/src/executors/build/schema.json +60 -0
- package/src/executors/build-list/build-fragment.d.ts +54 -0
- package/src/executors/build-list/build-list.impl.d.ts +7 -0
- package/src/executors/build-list/build-list.impl.js +86 -0
- package/src/executors/build-list/build-list.impl.js.map +1 -0
- package/src/executors/build-list/compat.d.ts +2 -0
- package/src/executors/build-list/compat.js +6 -0
- package/src/executors/build-list/compat.js.map +1 -0
- package/src/executors/build-list/schema.d.ts +25 -0
- package/src/executors/build-list/schema.json +79 -0
- package/src/executors/download/compat.d.ts +2 -0
- package/src/executors/download/compat.js +6 -0
- package/src/executors/download/compat.js.map +1 -0
- package/src/executors/download/download.impl.d.ts +15 -0
- package/src/executors/download/download.impl.js +101 -0
- package/src/executors/download/download.impl.js.map +1 -0
- package/src/executors/download/schema.d.ts +3 -0
- package/src/executors/download/schema.json +59 -0
- package/src/executors/ensure-symlink/compat.d.ts +2 -0
- package/src/executors/ensure-symlink/compat.js +6 -0
- package/src/executors/ensure-symlink/compat.js.map +1 -0
- package/src/executors/ensure-symlink/ensure-symlink.impl.d.ts +5 -0
- package/src/executors/ensure-symlink/ensure-symlink.impl.js +13 -0
- package/src/executors/ensure-symlink/ensure-symlink.impl.js.map +1 -0
- package/src/executors/ensure-symlink/schema.json +11 -0
- package/src/executors/export/compat.d.ts +2 -0
- package/src/executors/export/compat.js +6 -0
- package/src/executors/export/compat.js.map +1 -0
- package/src/executors/export/export.impl.d.ts +6 -0
- package/src/executors/export/export.impl.js +69 -0
- package/src/executors/export/export.impl.js.map +1 -0
- package/src/executors/export/schema.d.ts +11 -0
- package/src/executors/export/schema.json +48 -0
- package/src/executors/install/compat.d.ts +2 -0
- package/src/executors/install/compat.js +6 -0
- package/src/executors/install/compat.js.map +1 -0
- package/src/executors/install/install.impl.d.ts +7 -0
- package/src/executors/install/install.impl.js +70 -0
- package/src/executors/install/install.impl.js.map +1 -0
- package/src/executors/install/schema.d.ts +7 -0
- package/src/executors/install/schema.json +34 -0
- package/src/executors/prebuild/compat.d.ts +2 -0
- package/src/executors/prebuild/compat.js +6 -0
- package/src/executors/prebuild/compat.js.map +1 -0
- package/src/executors/prebuild/prebuild.impl.d.ts +7 -0
- package/src/executors/prebuild/prebuild.impl.js +70 -0
- package/src/executors/prebuild/prebuild.impl.js.map +1 -0
- package/src/executors/prebuild/schema.d.ts +7 -0
- package/src/executors/prebuild/schema.json +35 -0
- package/src/executors/run/compat.d.ts +2 -0
- package/src/executors/run/compat.js +6 -0
- package/src/executors/run/compat.js.map +1 -0
- package/src/executors/run/run.impl.d.ts +6 -0
- package/src/executors/run/run.impl.js +112 -0
- package/src/executors/run/run.impl.js.map +1 -0
- package/src/executors/run/schema.d.ts +25 -0
- package/src/executors/run/schema.json +71 -0
- package/src/executors/start/compat.d.ts +2 -0
- package/src/executors/start/compat.js +6 -0
- package/src/executors/start/compat.js.map +1 -0
- package/src/executors/start/schema.d.ts +22 -0
- package/src/executors/start/schema.json +93 -0
- package/src/executors/start/start.impl.d.ts +7 -0
- package/src/executors/start/start.impl.js +73 -0
- package/src/executors/start/start.impl.js.map +1 -0
- package/src/executors/sync-deps/compat.d.ts +2 -0
- package/src/executors/sync-deps/compat.js +6 -0
- package/src/executors/sync-deps/compat.js.map +1 -0
- package/src/executors/sync-deps/schema.d.ts +4 -0
- package/src/executors/sync-deps/schema.json +28 -0
- package/src/executors/sync-deps/sync-deps.impl.d.ts +8 -0
- package/src/executors/sync-deps/sync-deps.impl.js +62 -0
- package/src/executors/sync-deps/sync-deps.impl.js.map +1 -0
- package/src/executors/update/compat.d.ts +2 -0
- package/src/executors/update/compat.js +6 -0
- package/src/executors/update/compat.js.map +1 -0
- package/src/executors/update/schema.d.ts +15 -0
- package/src/executors/update/schema.json +65 -0
- package/src/executors/update/update.impl.d.ts +6 -0
- package/src/executors/update/update.impl.js +59 -0
- package/src/executors/update/update.impl.js.map +1 -0
- package/src/generators/application/application.d.ts +5 -0
- package/src/generators/application/application.js +33 -0
- package/src/generators/application/application.js.map +1 -0
- package/src/generators/application/files/app.json.template +33 -0
- package/src/generators/application/files/assets/adaptive-icon.png +0 -0
- package/src/generators/application/files/assets/favicon.png +0 -0
- package/src/generators/application/files/assets/icon.png +0 -0
- package/src/generators/application/files/assets/splash.png +0 -0
- package/src/generators/application/files/babel.config.js.template +6 -0
- package/src/generators/application/files/eas.json.template +28 -0
- package/src/generators/application/files/index.js.template +8 -0
- package/src/generators/application/files/metro.config.js.template +25 -0
- package/src/generators/application/files/package.json.template +17 -0
- package/src/generators/application/files/src/app/App.spec.tsx.template +9 -0
- package/src/generators/application/files/src/app/App.tsx.template +694 -0
- package/src/generators/application/files/test-setup.ts.template +1 -0
- package/src/generators/application/files/tsconfig.app.json.template +9 -0
- package/src/generators/application/files/tsconfig.json.template +26 -0
- package/src/generators/application/lib/add-detox.d.ts +3 -0
- package/src/generators/application/lib/add-detox.js +16 -0
- package/src/generators/application/lib/add-detox.js.map +1 -0
- package/src/generators/application/lib/add-project.d.ts +3 -0
- package/src/generators/application/lib/add-project.js +91 -0
- package/src/generators/application/lib/add-project.js.map +1 -0
- package/src/generators/application/lib/create-application-files.d.ts +3 -0
- package/src/generators/application/lib/create-application-files.js +24 -0
- package/src/generators/application/lib/create-application-files.js.map +1 -0
- package/src/generators/application/lib/normalize-options.d.ts +10 -0
- package/src/generators/application/lib/normalize-options.js +30 -0
- package/src/generators/application/lib/normalize-options.js.map +1 -0
- package/src/generators/application/schema.d.ts +19 -0
- package/src/generators/application/schema.json +88 -0
- package/src/generators/component/component.d.ts +5 -0
- package/src/generators/component/component.js +51 -0
- package/src/generators/component/component.js.map +1 -0
- package/src/generators/component/files/__fileName__.spec.tsx.template +11 -0
- package/src/generators/component/files/__fileName__.tsx.template +32 -0
- package/src/generators/component/lib/add-import.d.ts +3 -0
- package/src/generators/component/lib/add-import.js +30 -0
- package/src/generators/component/lib/add-import.js.map +1 -0
- package/src/generators/component/lib/normalize-options.d.ts +8 -0
- package/src/generators/component/lib/normalize-options.js +58 -0
- package/src/generators/component/lib/normalize-options.js.map +1 -0
- package/src/generators/component/schema.d.ts +15 -0
- package/src/generators/component/schema.json +83 -0
- package/src/generators/init/init.d.ts +6 -0
- package/src/generators/init/init.js +69 -0
- package/src/generators/init/init.js.map +1 -0
- package/src/generators/init/lib/add-git-ignore-entry.d.ts +2 -0
- package/src/generators/init/lib/add-git-ignore-entry.js +19 -0
- package/src/generators/init/lib/add-git-ignore-entry.js.map +1 -0
- package/src/generators/init/lib/gitignore-entries.d.ts +1 -0
- package/src/generators/init/lib/gitignore-entries.js +20 -0
- package/src/generators/init/lib/gitignore-entries.js.map +1 -0
- package/src/generators/init/lib/init-root-babel-config.d.ts +2 -0
- package/src/generators/init/lib/init-root-babel-config.js +14 -0
- package/src/generators/init/lib/init-root-babel-config.js.map +1 -0
- package/src/generators/init/schema.d.ts +7 -0
- package/src/generators/init/schema.json +38 -0
- package/src/generators/library/files/lib/README.md +7 -0
- package/src/generators/library/files/lib/babel.config.json +17 -0
- package/src/generators/library/files/lib/package.json.template +5 -0
- package/src/generators/library/files/lib/src/index.ts.template +0 -0
- package/src/generators/library/files/lib/test-setup.ts.template +1 -0
- package/src/generators/library/files/lib/tsconfig.json.template +16 -0
- package/src/generators/library/files/lib/tsconfig.lib.json.template +9 -0
- package/src/generators/library/lib/normalize-options.d.ts +12 -0
- package/src/generators/library/lib/normalize-options.js +27 -0
- package/src/generators/library/lib/normalize-options.js.map +1 -0
- package/src/generators/library/library.d.ts +5 -0
- package/src/generators/library/library.js +101 -0
- package/src/generators/library/library.js.map +1 -0
- package/src/generators/library/schema.d.ts +22 -0
- package/src/generators/library/schema.json +99 -0
- package/src/migrations/update-14-0-0/add-project-root-metro-config-14-0-0.d.ts +6 -0
- package/src/migrations/update-14-0-0/add-project-root-metro-config-14-0-0.js +35 -0
- package/src/migrations/update-14-0-0/add-project-root-metro-config-14-0-0.js.map +1 -0
- package/src/migrations/update-14-1-2/add-eject-target-14-1-2.d.ts +5 -0
- package/src/migrations/update-14-1-2/add-eject-target-14-1-2.js +25 -0
- package/src/migrations/update-14-1-2/add-eject-target-14-1-2.js.map +1 -0
- package/src/migrations/update-14-4-3/add-eas-build-target.d.ts +5 -0
- package/src/migrations/update-14-4-3/add-eas-build-target.js +42 -0
- package/src/migrations/update-14-4-3/add-eas-build-target.js.map +1 -0
- package/src/migrations/update-14-5-1/add-eas-update-target.d.ts +5 -0
- package/src/migrations/update-14-5-1/add-eas-update-target.js +27 -0
- package/src/migrations/update-14-5-1/add-eas-update-target.js.map +1 -0
- package/src/migrations/update-15-0-3/add-new-expo-cli-targets.d.ts +9 -0
- package/src/migrations/update-15-0-3/add-new-expo-cli-targets.js +66 -0
- package/src/migrations/update-15-0-3/add-new-expo-cli-targets.js.map +1 -0
- package/src/migrations/update-15-0-3/change-jest-preset.d.ts +8 -0
- package/src/migrations/update-15-0-3/change-jest-preset.js +74 -0
- package/src/migrations/update-15-0-3/change-jest-preset.js.map +1 -0
- package/src/migrations/update-15-8-3/change-webpack-to-metro.d.ts +8 -0
- package/src/migrations/update-15-8-3/change-webpack-to-metro.js +37 -0
- package/src/migrations/update-15-8-3/change-webpack-to-metro.js.map +1 -0
- package/src/migrations/update-16-0-0/remove-deprecated-targets.d.ts +5 -0
- package/src/migrations/update-16-0-0/remove-deprecated-targets.js +36 -0
- package/src/migrations/update-16-0-0/remove-deprecated-targets.js.map +1 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.d.ts +2 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +13 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js.map +1 -0
- package/src/utils/add-jest.d.ts +2 -0
- package/src/utils/add-jest.js +39 -0
- package/src/utils/add-jest.js.map +1 -0
- package/src/utils/add-linting.d.ts +3 -0
- package/src/utils/add-linting.js +37 -0
- package/src/utils/add-linting.js.map +1 -0
- package/src/utils/ensure-node-modules-symlink.d.ts +9 -0
- package/src/utils/ensure-node-modules-symlink.js +29 -0
- package/src/utils/ensure-node-modules-symlink.js.map +1 -0
- package/src/utils/find-all-npm-dependencies.d.ts +2 -0
- package/src/utils/find-all-npm-dependencies.js +26 -0
- package/src/utils/find-all-npm-dependencies.js.map +1 -0
- package/src/utils/pod-install-task.d.ts +8 -0
- package/src/utils/pod-install-task.js +53 -0
- package/src/utils/pod-install-task.js.map +1 -0
- package/src/utils/symlink-task.d.ts +2 -0
- package/src/utils/symlink-task.js +19 -0
- package/src/utils/symlink-task.js.map +1 -0
- package/src/utils/versions.d.ts +20 -0
- package/src/utils/versions.js +24 -0
- package/src/utils/versions.js.map +1 -0
- package/tsconfig.json +13 -0
- package/tsconfig.lib.json +11 -0
- package/tsconfig.spec.json +20 -0
- package/typings/svg.d.ts +6 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cli": "nx",
|
|
3
|
+
"$id": "NxExpoComponent",
|
|
4
|
+
"$schema": "http://json-schema.org/schema",
|
|
5
|
+
"description": "Create a Expo Component for Nx.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"examples": [
|
|
8
|
+
{
|
|
9
|
+
"command": "g @nrwl/expo:component my-component --project=mylib",
|
|
10
|
+
"description": "Generate a component in the mylib library"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"command": "g @nrwl/expo:component my-component --project=mylib --classComponent",
|
|
14
|
+
"description": "Generate a class component in the mylib library"
|
|
15
|
+
}
|
|
16
|
+
],
|
|
17
|
+
"properties": {
|
|
18
|
+
"project": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"description": "The name of the project.",
|
|
21
|
+
"alias": "p",
|
|
22
|
+
"$default": {
|
|
23
|
+
"$source": "projectName"
|
|
24
|
+
},
|
|
25
|
+
"x-prompt": "What is the name of the project for this component?"
|
|
26
|
+
},
|
|
27
|
+
"name": {
|
|
28
|
+
"type": "string",
|
|
29
|
+
"description": "The name of the component.",
|
|
30
|
+
"$default": {
|
|
31
|
+
"$source": "argv",
|
|
32
|
+
"index": 0
|
|
33
|
+
},
|
|
34
|
+
"x-prompt": "What name would you like to use for the component?"
|
|
35
|
+
},
|
|
36
|
+
"js": {
|
|
37
|
+
"type": "boolean",
|
|
38
|
+
"description": "Generate JavaScript files rather than TypeScript files.",
|
|
39
|
+
"default": false
|
|
40
|
+
},
|
|
41
|
+
"skipFormat": {
|
|
42
|
+
"description": "Skip formatting files.",
|
|
43
|
+
"type": "boolean",
|
|
44
|
+
"default": false,
|
|
45
|
+
"x-priority": "internal"
|
|
46
|
+
},
|
|
47
|
+
"skipTests": {
|
|
48
|
+
"type": "boolean",
|
|
49
|
+
"description": "When true, does not create \"spec.ts\" test files for the new component.",
|
|
50
|
+
"default": false
|
|
51
|
+
},
|
|
52
|
+
"directory": {
|
|
53
|
+
"type": "string",
|
|
54
|
+
"description": "Create the component under this directory (can be nested).",
|
|
55
|
+
"x-priority": "important"
|
|
56
|
+
},
|
|
57
|
+
"flat": {
|
|
58
|
+
"type": "boolean",
|
|
59
|
+
"description": "Create component at the source root rather than its own directory.",
|
|
60
|
+
"default": false
|
|
61
|
+
},
|
|
62
|
+
"export": {
|
|
63
|
+
"type": "boolean",
|
|
64
|
+
"description": "When true, the component is exported from the project index.ts (if it exists).",
|
|
65
|
+
"alias": "e",
|
|
66
|
+
"default": false,
|
|
67
|
+
"x-prompt": "Should this component be exported in the project?"
|
|
68
|
+
},
|
|
69
|
+
"pascalCaseFiles": {
|
|
70
|
+
"type": "boolean",
|
|
71
|
+
"description": "Use pascal case component file name (e.g. App.tsx).",
|
|
72
|
+
"alias": "P",
|
|
73
|
+
"default": false
|
|
74
|
+
},
|
|
75
|
+
"classComponent": {
|
|
76
|
+
"type": "boolean",
|
|
77
|
+
"alias": "C",
|
|
78
|
+
"description": "Use class components instead of functional component.",
|
|
79
|
+
"default": false
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
"required": ["name", "project"]
|
|
83
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { GeneratorCallback, Tree } from '@nx/devkit';
|
|
2
|
+
import { Schema } from './schema';
|
|
3
|
+
export declare function expoInitGenerator(host: Tree, schema: Schema): Promise<GeneratorCallback>;
|
|
4
|
+
export declare function updateDependencies(host: Tree): GeneratorCallback;
|
|
5
|
+
export default expoInitGenerator;
|
|
6
|
+
export declare const expoInitSchematic: (generatorOptions: Schema) => (tree: any, context: any) => Promise<any>;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.expoInitSchematic = exports.updateDependencies = exports.expoInitGenerator = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const devkit_1 = require("@nx/devkit");
|
|
6
|
+
const versions_1 = require("../../utils/versions");
|
|
7
|
+
const jest_1 = require("@nx/jest");
|
|
8
|
+
const detox_1 = require("@nx/detox");
|
|
9
|
+
const js_1 = require("@nx/js");
|
|
10
|
+
const add_git_ignore_entry_1 = require("./lib/add-git-ignore-entry");
|
|
11
|
+
const init_root_babel_config_1 = require("./lib/init-root-babel-config");
|
|
12
|
+
function expoInitGenerator(host, schema) {
|
|
13
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
14
|
+
(0, add_git_ignore_entry_1.addGitIgnoreEntry)(host);
|
|
15
|
+
(0, init_root_babel_config_1.initRootBabelConfig)(host);
|
|
16
|
+
const tasks = [];
|
|
17
|
+
tasks.push(yield (0, js_1.initGenerator)(host, Object.assign(Object.assign({}, schema), { skipFormat: true })));
|
|
18
|
+
if (!schema.skipPackageJson) {
|
|
19
|
+
tasks.push(moveDependency(host));
|
|
20
|
+
tasks.push(updateDependencies(host));
|
|
21
|
+
}
|
|
22
|
+
if (!schema.unitTestRunner || schema.unitTestRunner === 'jest') {
|
|
23
|
+
const jestTask = yield (0, jest_1.jestInitGenerator)(host, schema);
|
|
24
|
+
tasks.push(jestTask);
|
|
25
|
+
}
|
|
26
|
+
if (!schema.e2eTestRunner || schema.e2eTestRunner === 'detox') {
|
|
27
|
+
const detoxTask = yield (0, detox_1.detoxInitGenerator)(host, Object.assign(Object.assign({}, schema), { skipFormat: true }));
|
|
28
|
+
tasks.push(detoxTask);
|
|
29
|
+
}
|
|
30
|
+
if (!schema.skipFormat) {
|
|
31
|
+
yield (0, devkit_1.formatFiles)(host);
|
|
32
|
+
}
|
|
33
|
+
return (0, devkit_1.runTasksInSerial)(...tasks);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
exports.expoInitGenerator = expoInitGenerator;
|
|
37
|
+
function updateDependencies(host) {
|
|
38
|
+
return (0, devkit_1.addDependenciesToPackageJson)(host, {
|
|
39
|
+
react: versions_1.reactVersion,
|
|
40
|
+
'react-dom': versions_1.reactDomVersion,
|
|
41
|
+
'react-native': versions_1.reactNativeVersion,
|
|
42
|
+
expo: versions_1.expoVersion,
|
|
43
|
+
'expo-splash-screen': versions_1.expoSplashScreenVersion,
|
|
44
|
+
'expo-status-bar': versions_1.expoStatusBarVersion,
|
|
45
|
+
'react-native-web': versions_1.reactNativeWebVersion,
|
|
46
|
+
'@expo/metro-config': versions_1.expoMetroConfigVersion,
|
|
47
|
+
'react-native-svg-transformer': versions_1.reactNativeSvgTransformerVersion,
|
|
48
|
+
'react-native-svg': versions_1.reactNativeSvgVersion,
|
|
49
|
+
}, {
|
|
50
|
+
'@nrwl/expo': versions_1.nxVersion,
|
|
51
|
+
'@types/react': versions_1.typesReactVersion,
|
|
52
|
+
'@types/react-native': versions_1.typesReactNativeVersion,
|
|
53
|
+
metro: versions_1.metroVersion,
|
|
54
|
+
'metro-resolver': versions_1.metroVersion,
|
|
55
|
+
'react-test-renderer': versions_1.reactTestRendererVersion,
|
|
56
|
+
'@testing-library/react-native': versions_1.testingLibraryReactNativeVersion,
|
|
57
|
+
'@testing-library/jest-native': versions_1.testingLibraryJestNativeVersion,
|
|
58
|
+
'@expo/cli': versions_1.expoCliVersion,
|
|
59
|
+
'eas-cli': versions_1.easCliVersion,
|
|
60
|
+
'babel-preset-expo': versions_1.babelPresetExpoVersion,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
exports.updateDependencies = updateDependencies;
|
|
64
|
+
function moveDependency(host) {
|
|
65
|
+
return (0, devkit_1.removeDependenciesFromPackageJson)(host, ['@nrwl/react-native'], []);
|
|
66
|
+
}
|
|
67
|
+
exports.default = expoInitGenerator;
|
|
68
|
+
exports.expoInitSchematic = (0, devkit_1.convertNxGenerator)(expoInitGenerator);
|
|
69
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../packages/expo/src/generators/init/init.ts"],"names":[],"mappings":";;;;AAAA,uCAQoB;AAEpB,mDAqB8B;AAE9B,mCAA6C;AAC7C,qCAA+C;AAC/C,+BAA0D;AAE1D,qEAA+D;AAC/D,yEAAmE;AAEnE,SAAsB,iBAAiB,CAAC,IAAU,EAAE,MAAc;;QAChE,IAAA,wCAAiB,EAAC,IAAI,CAAC,CAAC;QACxB,IAAA,4CAAmB,EAAC,IAAI,CAAC,CAAC;QAE1B,MAAM,KAAK,GAAwB,EAAE,CAAC;QAEtC,KAAK,CAAC,IAAI,CACR,MAAM,IAAA,kBAAe,EAAC,IAAI,kCACrB,MAAM,KACT,UAAU,EAAE,IAAI,IAChB,CACH,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;YAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;SACtC;QAED,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,cAAc,KAAK,MAAM,EAAE;YAC9D,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAiB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACvD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACtB;QAED,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa,KAAK,OAAO,EAAE;YAC7D,MAAM,SAAS,GAAG,MAAM,IAAA,0BAAkB,EAAC,IAAI,kCAC1C,MAAM,KACT,UAAU,EAAE,IAAI,IAChB,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACvB;QAED,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YACtB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,IAAA,yBAAgB,EAAC,GAAG,KAAK,CAAC,CAAC;IACpC,CAAC;CAAA;AApCD,8CAoCC;AAED,SAAgB,kBAAkB,CAAC,IAAU;IAC3C,OAAO,IAAA,qCAA4B,EACjC,IAAI,EACJ;QACE,KAAK,EAAE,uBAAY;QACnB,WAAW,EAAE,0BAAe;QAC5B,cAAc,EAAE,6BAAkB;QAClC,IAAI,EAAE,sBAAW;QACjB,oBAAoB,EAAE,kCAAuB;QAC7C,iBAAiB,EAAE,+BAAoB;QACvC,kBAAkB,EAAE,gCAAqB;QACzC,oBAAoB,EAAE,iCAAsB;QAC5C,8BAA8B,EAAE,2CAAgC;QAChE,kBAAkB,EAAE,gCAAqB;KAC1C,EACD;QACE,YAAY,EAAE,oBAAS;QACvB,cAAc,EAAE,4BAAiB;QACjC,qBAAqB,EAAE,kCAAuB;QAC9C,KAAK,EAAE,uBAAY;QACnB,gBAAgB,EAAE,uBAAY;QAC9B,qBAAqB,EAAE,mCAAwB;QAC/C,+BAA+B,EAAE,2CAAgC;QACjE,8BAA8B,EAAE,0CAA+B;QAC/D,WAAW,EAAE,yBAAc;QAC3B,SAAS,EAAE,wBAAa;QACxB,mBAAmB,EAAE,iCAAsB;KAC5C,CACF,CAAC;AACJ,CAAC;AA7BD,gDA6BC;AAED,SAAS,cAAc,CAAC,IAAU;IAChC,OAAO,IAAA,0CAAiC,EAAC,IAAI,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,kBAAe,iBAAiB,CAAC;AACpB,QAAA,iBAAiB,GAAG,IAAA,2BAAkB,EAAC,iBAAiB,CAAC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addGitIgnoreEntry = void 0;
|
|
4
|
+
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
const gitignore_entries_1 = require("./gitignore-entries");
|
|
6
|
+
function addGitIgnoreEntry(host) {
|
|
7
|
+
var _a;
|
|
8
|
+
if (!host.exists('.gitignore')) {
|
|
9
|
+
devkit_1.logger.warn(`Couldn't find .gitignore file to update`);
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
let content = (_a = host.read('.gitignore')) === null || _a === void 0 ? void 0 : _a.toString('utf-8').trimEnd();
|
|
13
|
+
if (!/\.expo\/$/gm.test(content)) {
|
|
14
|
+
content = `${content}\n${gitignore_entries_1.gitIgnoreEntriesForExpo}\n`;
|
|
15
|
+
}
|
|
16
|
+
host.write('.gitignore', content);
|
|
17
|
+
}
|
|
18
|
+
exports.addGitIgnoreEntry = addGitIgnoreEntry;
|
|
19
|
+
//# sourceMappingURL=add-git-ignore-entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-git-ignore-entry.js","sourceRoot":"","sources":["../../../../../../../packages/expo/src/generators/init/lib/add-git-ignore-entry.ts"],"names":[],"mappings":";;;AAAA,uCAA0C;AAC1C,2DAA8D;AAE9D,SAAgB,iBAAiB,CAAC,IAAU;;IAC1C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;QAC9B,eAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QACvD,OAAO;KACR;IAED,IAAI,OAAO,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,0CAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;IAEnE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;QAChC,OAAO,GAAG,GAAG,OAAO,KAAK,2CAAuB,IAAI,CAAC;KACtD;IAED,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AAbD,8CAaC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const gitIgnoreEntriesForExpo = "\n# Expo\nnode_modules/\n.expo/\n.yarn/\ndist/\nnpm-debug.*\n*.jks\n*.p8\n*.p12\n*.key\n*.mobileprovision\n*.orig.*\nweb-build/\ncache/\n";
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.gitIgnoreEntriesForExpo = void 0;
|
|
4
|
+
exports.gitIgnoreEntriesForExpo = `
|
|
5
|
+
# Expo
|
|
6
|
+
node_modules/
|
|
7
|
+
.expo/
|
|
8
|
+
.yarn/
|
|
9
|
+
dist/
|
|
10
|
+
npm-debug.*
|
|
11
|
+
*.jks
|
|
12
|
+
*.p8
|
|
13
|
+
*.p12
|
|
14
|
+
*.key
|
|
15
|
+
*.mobileprovision
|
|
16
|
+
*.orig.*
|
|
17
|
+
web-build/
|
|
18
|
+
cache/
|
|
19
|
+
`;
|
|
20
|
+
//# sourceMappingURL=gitignore-entries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitignore-entries.js","sourceRoot":"","sources":["../../../../../../../packages/expo/src/generators/init/lib/gitignore-entries.ts"],"names":[],"mappings":";;;AAAa,QAAA,uBAAuB,GAAG;;;;;;;;;;;;;;;CAetC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.initRootBabelConfig = void 0;
|
|
4
|
+
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
function initRootBabelConfig(tree) {
|
|
6
|
+
if (tree.exists('/babel.config.json') || tree.exists('/babel.config.js')) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
(0, devkit_1.writeJson)(tree, '/babel.config.json', {
|
|
10
|
+
babelrcRoots: ['*'], // Make sure .babelrc files other than root can be loaded in a monorepo
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
exports.initRootBabelConfig = initRootBabelConfig;
|
|
14
|
+
//# sourceMappingURL=init-root-babel-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init-root-babel-config.js","sourceRoot":"","sources":["../../../../../../../packages/expo/src/generators/init/lib/init-root-babel-config.ts"],"names":[],"mappings":";;;AAAA,uCAA6C;AAE7C,SAAgB,mBAAmB,CAAC,IAAU;IAC5C,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE;QACxE,OAAO;KACR;IAED,IAAA,kBAAS,EAAC,IAAI,EAAE,oBAAoB,EAAE;QACpC,YAAY,EAAE,CAAC,GAAG,CAAC,EAAE,uEAAuE;KAC7F,CAAC,CAAC;AACL,CAAC;AARD,kDAQC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cli": "nx",
|
|
3
|
+
"$id": "NxExpoInit",
|
|
4
|
+
"$schema": "http://json-schema.org/schema",
|
|
5
|
+
"description": "Add Nx Expo Schematics.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"unitTestRunner": {
|
|
9
|
+
"description": "Adds the specified unit test runner",
|
|
10
|
+
"type": "string",
|
|
11
|
+
"enum": ["jest", "none"],
|
|
12
|
+
"default": "jest"
|
|
13
|
+
},
|
|
14
|
+
"skipFormat": {
|
|
15
|
+
"description": "Skip formatting files",
|
|
16
|
+
"type": "boolean",
|
|
17
|
+
"default": false,
|
|
18
|
+
"x-priority": "internal"
|
|
19
|
+
},
|
|
20
|
+
"e2eTestRunner": {
|
|
21
|
+
"description": "Adds the specified e2e test runner",
|
|
22
|
+
"type": "string",
|
|
23
|
+
"enum": ["detox", "none"],
|
|
24
|
+
"default": "detox"
|
|
25
|
+
},
|
|
26
|
+
"skipPackageJson": {
|
|
27
|
+
"type": "boolean",
|
|
28
|
+
"default": false,
|
|
29
|
+
"description": "Do not add dependencies to `package.json`."
|
|
30
|
+
},
|
|
31
|
+
"js": {
|
|
32
|
+
"type": "boolean",
|
|
33
|
+
"default": false,
|
|
34
|
+
"description": "Use JavaScript instead of TypeScript"
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"required": []
|
|
38
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@testing-library/jest-native/extend-expect';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": "<%= offsetFromRoot %>tsconfig.base.json",
|
|
3
|
+
"compilerOptions": {
|
|
4
|
+
"jsx": "react-native",
|
|
5
|
+
"allowJs": true,
|
|
6
|
+
"esModuleInterop": true,
|
|
7
|
+
"allowSyntheticDefaultImports": true
|
|
8
|
+
},
|
|
9
|
+
"files": [],
|
|
10
|
+
"include": [],
|
|
11
|
+
"references": [
|
|
12
|
+
{
|
|
13
|
+
"path": "./tsconfig.lib.json"
|
|
14
|
+
}
|
|
15
|
+
]
|
|
16
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Tree } from '@nx/devkit';
|
|
2
|
+
import { Schema } from '../schema';
|
|
3
|
+
export interface NormalizedSchema extends Schema {
|
|
4
|
+
name: string;
|
|
5
|
+
fileName: string;
|
|
6
|
+
projectRoot: string;
|
|
7
|
+
routePath: string;
|
|
8
|
+
projectDirectory: string;
|
|
9
|
+
parsedTags: string[];
|
|
10
|
+
appMain: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function normalizeOptions(host: Tree, options: Schema): NormalizedSchema;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.normalizeOptions = void 0;
|
|
4
|
+
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
function normalizeOptions(host, options) {
|
|
6
|
+
const name = (0, devkit_1.names)(options.name).fileName;
|
|
7
|
+
const projectDirectory = options.directory
|
|
8
|
+
? `${(0, devkit_1.names)(options.directory).fileName}/${name}`
|
|
9
|
+
: name;
|
|
10
|
+
const projectName = projectDirectory.replace(new RegExp('/', 'g'), '-');
|
|
11
|
+
const fileName = projectName;
|
|
12
|
+
const { libsDir, npmScope } = (0, devkit_1.getWorkspaceLayout)(host);
|
|
13
|
+
const projectRoot = (0, devkit_1.joinPathFragments)(libsDir, projectDirectory);
|
|
14
|
+
const parsedTags = options.tags
|
|
15
|
+
? options.tags.split(',').map((s) => s.trim())
|
|
16
|
+
: [];
|
|
17
|
+
const importPath = options.importPath || (0, devkit_1.getImportPath)(npmScope, projectDirectory);
|
|
18
|
+
const appMain = options.js ? 'src/index.js' : 'src/index.ts';
|
|
19
|
+
const normalized = Object.assign(Object.assign({}, options), { fileName, routePath: `/${name}`, name: projectName, projectRoot,
|
|
20
|
+
projectDirectory,
|
|
21
|
+
parsedTags,
|
|
22
|
+
importPath,
|
|
23
|
+
appMain });
|
|
24
|
+
return normalized;
|
|
25
|
+
}
|
|
26
|
+
exports.normalizeOptions = normalizeOptions;
|
|
27
|
+
//# sourceMappingURL=normalize-options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalize-options.js","sourceRoot":"","sources":["../../../../../../../packages/expo/src/generators/library/lib/normalize-options.ts"],"names":[],"mappings":";;;AAAA,uCAMoB;AAapB,SAAgB,gBAAgB,CAC9B,IAAU,EACV,OAAe;IAEf,MAAM,IAAI,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC;IAC1C,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS;QACxC,CAAC,CAAC,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,IAAI,IAAI,EAAE;QAChD,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,WAAW,CAAC;IAC7B,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAA,2BAAkB,EAAC,IAAI,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,IAAA,0BAAiB,EAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAEjE,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI;QAC7B,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9C,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,UAAU,GACd,OAAO,CAAC,UAAU,IAAI,IAAA,sBAAa,EAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IAElE,MAAM,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;IAE7D,MAAM,UAAU,mCACX,OAAO,KACV,QAAQ,EACR,SAAS,EAAE,IAAI,IAAI,EAAE,EACrB,IAAI,EAAE,WAAW,EACjB,WAAW;QACX,gBAAgB;QAChB,UAAU;QACV,UAAU;QACV,OAAO,GACR,CAAC;IAEF,OAAO,UAAU,CAAC;AACpB,CAAC;AApCD,4CAoCC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { GeneratorCallback, Tree } from '@nx/devkit';
|
|
2
|
+
import { Schema } from './schema';
|
|
3
|
+
export declare function expoLibraryGenerator(host: Tree, schema: Schema): Promise<GeneratorCallback>;
|
|
4
|
+
export default expoLibraryGenerator;
|
|
5
|
+
export declare const expoLibrarySchematic: (generatorOptions: Schema) => (tree: any, context: any) => Promise<any>;
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.expoLibrarySchematic = exports.expoLibraryGenerator = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const devkit_1 = require("@nx/devkit");
|
|
6
|
+
const js_1 = require("@nx/js");
|
|
7
|
+
const init_1 = require("../init/init");
|
|
8
|
+
const add_linting_1 = require("../../utils/add-linting");
|
|
9
|
+
const add_jest_1 = require("../../utils/add-jest");
|
|
10
|
+
const normalize_options_1 = require("./lib/normalize-options");
|
|
11
|
+
function expoLibraryGenerator(host, schema) {
|
|
12
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
13
|
+
const options = (0, normalize_options_1.normalizeOptions)(host, schema);
|
|
14
|
+
if (options.publishable === true && !schema.importPath) {
|
|
15
|
+
throw new Error(`For publishable libs you have to provide a proper "--importPath" which needs to be a valid npm package name (e.g. my-awesome-lib or @myorg/my-lib)`);
|
|
16
|
+
}
|
|
17
|
+
addProject(host, options);
|
|
18
|
+
createFiles(host, options);
|
|
19
|
+
const initTask = yield (0, init_1.default)(host, Object.assign(Object.assign({}, options), { skipFormat: true, e2eTestRunner: 'none' }));
|
|
20
|
+
const lintTask = yield (0, add_linting_1.addLinting)(host, options.name, options.projectRoot, [(0, devkit_1.joinPathFragments)(options.projectRoot, 'tsconfig.lib.json')], options.linter, options.setParserOptionsProject);
|
|
21
|
+
if (!options.skipTsConfig) {
|
|
22
|
+
(0, js_1.addTsConfigPath)(host, options.importPath, [
|
|
23
|
+
(0, devkit_1.joinPathFragments)(options.projectRoot, './src', 'index.' + (options.js ? 'js' : 'ts')),
|
|
24
|
+
]);
|
|
25
|
+
}
|
|
26
|
+
const jestTask = yield (0, add_jest_1.addJest)(host, options.unitTestRunner, options.name, options.projectRoot, options.js);
|
|
27
|
+
if (options.publishable || options.buildable) {
|
|
28
|
+
updateLibPackageNpmScope(host, options);
|
|
29
|
+
}
|
|
30
|
+
if (!options.skipFormat) {
|
|
31
|
+
yield (0, devkit_1.formatFiles)(host);
|
|
32
|
+
}
|
|
33
|
+
return (0, devkit_1.runTasksInSerial)(initTask, lintTask, jestTask);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
exports.expoLibraryGenerator = expoLibraryGenerator;
|
|
37
|
+
function addProject(host, options) {
|
|
38
|
+
const targets = {};
|
|
39
|
+
if (options.publishable || options.buildable) {
|
|
40
|
+
const { libsDir } = (0, devkit_1.getWorkspaceLayout)(host);
|
|
41
|
+
const external = ['react/jsx-runtime', 'react-native'];
|
|
42
|
+
targets.build = {
|
|
43
|
+
executor: '@nrwl/web:rollup',
|
|
44
|
+
outputs: ['{options.outputPath}'],
|
|
45
|
+
options: {
|
|
46
|
+
outputPath: `dist/${libsDir}/${options.projectDirectory}`,
|
|
47
|
+
tsConfig: `${options.projectRoot}/tsconfig.lib.json`,
|
|
48
|
+
project: `${options.projectRoot}/package.json`,
|
|
49
|
+
entryFile: maybeJs(options, `${options.projectRoot}/src/index.ts`),
|
|
50
|
+
external,
|
|
51
|
+
rollupConfig: `@nrwl/react/plugins/bundle-rollup`,
|
|
52
|
+
assets: [
|
|
53
|
+
{
|
|
54
|
+
glob: `${options.projectRoot}/README.md`,
|
|
55
|
+
input: '.',
|
|
56
|
+
output: '.',
|
|
57
|
+
},
|
|
58
|
+
],
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
(0, devkit_1.addProjectConfiguration)(host, options.name, {
|
|
63
|
+
root: options.projectRoot,
|
|
64
|
+
sourceRoot: (0, devkit_1.joinPathFragments)(options.projectRoot, 'src'),
|
|
65
|
+
projectType: 'library',
|
|
66
|
+
tags: options.parsedTags,
|
|
67
|
+
targets,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
function updateTsConfig(tree, options) {
|
|
71
|
+
(0, devkit_1.updateJson)(tree, (0, devkit_1.joinPathFragments)(options.projectRoot, 'tsconfig.json'), (json) => {
|
|
72
|
+
if (options.strict) {
|
|
73
|
+
json.compilerOptions = Object.assign(Object.assign({}, json.compilerOptions), { forceConsistentCasingInFileNames: true, strict: true, noImplicitReturns: true, noFallthroughCasesInSwitch: true });
|
|
74
|
+
}
|
|
75
|
+
return json;
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
function createFiles(host, options) {
|
|
79
|
+
(0, devkit_1.generateFiles)(host, (0, devkit_1.joinPathFragments)(__dirname, './files/lib'), options.projectRoot, Object.assign(Object.assign(Object.assign({}, options), (0, devkit_1.names)(options.name)), { tmpl: '', offsetFromRoot: (0, devkit_1.offsetFromRoot)(options.projectRoot) }));
|
|
80
|
+
if (!options.publishable && !options.buildable) {
|
|
81
|
+
host.delete(`${options.projectRoot}/package.json`);
|
|
82
|
+
}
|
|
83
|
+
if (options.js) {
|
|
84
|
+
(0, devkit_1.toJS)(host);
|
|
85
|
+
}
|
|
86
|
+
updateTsConfig(host, options);
|
|
87
|
+
}
|
|
88
|
+
function updateLibPackageNpmScope(host, options) {
|
|
89
|
+
return (0, devkit_1.updateJson)(host, `${options.projectRoot}/package.json`, (json) => {
|
|
90
|
+
json.name = options.importPath;
|
|
91
|
+
return json;
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
function maybeJs(options, path) {
|
|
95
|
+
return options.js && (path.endsWith('.ts') || path.endsWith('.tsx'))
|
|
96
|
+
? path.replace(/\.tsx?$/, '.js')
|
|
97
|
+
: path;
|
|
98
|
+
}
|
|
99
|
+
exports.default = expoLibraryGenerator;
|
|
100
|
+
exports.expoLibrarySchematic = (0, devkit_1.convertNxGenerator)(expoLibraryGenerator);
|
|
101
|
+
//# sourceMappingURL=library.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"library.js","sourceRoot":"","sources":["../../../../../../packages/expo/src/generators/library/library.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Linter } from '@nx/linter';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Same as the @nrwl/react library schema, except it removes keys: style, component, routing, appProject
|
|
5
|
+
*/
|
|
6
|
+
export interface Schema {
|
|
7
|
+
name: string;
|
|
8
|
+
directory?: string;
|
|
9
|
+
skipTsConfig: boolean; // default is false
|
|
10
|
+
skipFormat: boolean; // default is false
|
|
11
|
+
tags?: string;
|
|
12
|
+
pascalCaseFiles?: boolean;
|
|
13
|
+
unitTestRunner: 'jest' | 'none';
|
|
14
|
+
linter: Linter; // default is eslint
|
|
15
|
+
publishable?: boolean;
|
|
16
|
+
buildable?: boolean;
|
|
17
|
+
importPath?: string;
|
|
18
|
+
js: boolean; // default is false
|
|
19
|
+
strict: boolean; // default is true
|
|
20
|
+
setParserOptionsProject?: boolean;
|
|
21
|
+
skipPackageJson?: boolean; // default is false
|
|
22
|
+
}
|