@teleporthq/teleport-project-generator-react 0.18.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/LICENSE +21 -0
- package/README.md +14 -0
- package/__tests__/end2end/index.ts +114 -0
- package/__tests__/end2end/template-definition.json +27 -0
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/index.js +67 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/project-template.d.ts +10 -0
- package/dist/cjs/project-template.js +14 -0
- package/dist/cjs/project-template.js.map +1 -0
- package/dist/cjs/react-project-mapping.d.ts +2 -0
- package/dist/cjs/react-project-mapping.js +22 -0
- package/dist/cjs/react-project-mapping.js.map +1 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -0
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.js +59 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/project-template.d.ts +10 -0
- package/dist/esm/project-template.js +12 -0
- package/dist/esm/project-template.js.map +1 -0
- package/dist/esm/react-project-mapping.d.ts +2 -0
- package/dist/esm/react-project-mapping.js +19 -0
- package/dist/esm/react-project-mapping.js.map +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -0
- package/package.json +40 -0
- package/src/index.ts +65 -0
- package/src/project-template.ts +40 -0
- package/src/react-project-mapping.ts +20 -0
- package/tsconfig.json +9 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2020 teleporthq
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# teleport-project-generator-react
|
|
2
|
+
|
|
3
|
+
Project generator using React and React-Router, on top of a standard create-react-app structure.
|
|
4
|
+
|
|
5
|
+
> This package is part of the [teleport ecosystem](https://github.com/teleporthq/teleport-code-generators). For a complete guide, check out the [official documentation](https://docs.teleporthq.io/).
|
|
6
|
+
|
|
7
|
+
## Install
|
|
8
|
+
```bash
|
|
9
|
+
npm install @teleporthq/teleport-project-generator-react
|
|
10
|
+
```
|
|
11
|
+
or
|
|
12
|
+
```bash
|
|
13
|
+
yarn add @teleporthq/teleport-project-generator-react
|
|
14
|
+
```
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { FileType } from '@teleporthq/teleport-types'
|
|
2
|
+
import uidlSampleWithExternalDependencies from '../../../../examples/test-samples/project-sample-with-dependency.json'
|
|
3
|
+
import uidlSample from '../../../../examples/test-samples/project-sample.json'
|
|
4
|
+
import uidlSampleWithJustTokens from '../../../../examples/test-samples/project-with-only-tokens.json'
|
|
5
|
+
import invalidUidlSample from '../../../../examples/test-samples/project-invalid-sample.json'
|
|
6
|
+
import template from './template-definition.json'
|
|
7
|
+
import { createReactProjectGenerator } from '../../src'
|
|
8
|
+
|
|
9
|
+
describe('React Project Generator', () => {
|
|
10
|
+
const generator = createReactProjectGenerator()
|
|
11
|
+
|
|
12
|
+
it('runs without crashing', async () => {
|
|
13
|
+
const outputFolder = await generator.generateProject(
|
|
14
|
+
uidlSample as unknown as Record<string, unknown>,
|
|
15
|
+
template
|
|
16
|
+
)
|
|
17
|
+
const assetsPath = generator.getAssetsPath()
|
|
18
|
+
const srcFolder = outputFolder.subFolders[0]
|
|
19
|
+
const publicFolder = outputFolder.subFolders[1]
|
|
20
|
+
const packageJSON = outputFolder.files[0]
|
|
21
|
+
const componentsFoler = srcFolder.subFolders[0]
|
|
22
|
+
|
|
23
|
+
expect(assetsPath).toBeDefined()
|
|
24
|
+
expect(outputFolder.name).toBe(template.name)
|
|
25
|
+
expect(packageJSON.name).toBe('package')
|
|
26
|
+
expect(srcFolder.files[0].name).toBe('index')
|
|
27
|
+
expect(srcFolder.files[0].fileType).toBe('js')
|
|
28
|
+
expect(publicFolder.files[0].name).toBe('manifest')
|
|
29
|
+
expect(publicFolder.files[0].fileType).toBe('json')
|
|
30
|
+
expect(publicFolder.files[1].name).toBe('index')
|
|
31
|
+
expect(publicFolder.files[1].fileType).toBe('html')
|
|
32
|
+
expect(componentsFoler.name).toBe('components')
|
|
33
|
+
expect(srcFolder.subFolders[1].name).toBe('pages')
|
|
34
|
+
})
|
|
35
|
+
|
|
36
|
+
it('runs without crashing with external dependencies', async () => {
|
|
37
|
+
const outputFolder = await generator.generateProject(
|
|
38
|
+
uidlSampleWithExternalDependencies as unknown as Record<string, unknown>,
|
|
39
|
+
template
|
|
40
|
+
)
|
|
41
|
+
const assetsPath = generator.getAssetsPath()
|
|
42
|
+
const srcFolder = outputFolder.subFolders[0]
|
|
43
|
+
const publicFolder = outputFolder.subFolders[1]
|
|
44
|
+
const viewsFolder = srcFolder.subFolders[3]
|
|
45
|
+
const packageJSON = outputFolder.files[0]
|
|
46
|
+
const componentsFoler = srcFolder.subFolders[0]
|
|
47
|
+
const modalComponent = componentsFoler.files[3]
|
|
48
|
+
|
|
49
|
+
expect(assetsPath).toBeDefined()
|
|
50
|
+
expect(outputFolder.name).toBe(template.name)
|
|
51
|
+
expect(packageJSON.name).toBe('package')
|
|
52
|
+
expect(srcFolder.files[0].name).toBe('index')
|
|
53
|
+
expect(srcFolder.files[0].fileType).toBe('js')
|
|
54
|
+
expect(srcFolder.files[0].content).not.toContain(`import './style.module.css'`)
|
|
55
|
+
expect(publicFolder.files[0].name).toBe('manifest')
|
|
56
|
+
expect(publicFolder.files[0].fileType).toBe('json')
|
|
57
|
+
expect(publicFolder.files[1].name).toBe('index')
|
|
58
|
+
expect(publicFolder.files[1].fileType).toBe('html')
|
|
59
|
+
expect(componentsFoler.name).toBe('components')
|
|
60
|
+
expect(srcFolder.subFolders[1].name).toBe('pages')
|
|
61
|
+
|
|
62
|
+
/*
|
|
63
|
+
* For react based projects we just import the componetns wherever they are being used
|
|
64
|
+
* and external dependencies are added to package.json
|
|
65
|
+
*
|
|
66
|
+
* External dependencies have first class support for react. For other frameworks and variants,
|
|
67
|
+
* please refer --> https://github.com/teleporthq/teleport-code-generators/pull/478
|
|
68
|
+
*/
|
|
69
|
+
|
|
70
|
+
expect(packageJSON.content).toContain(`{
|
|
71
|
+
"name": "myvueproject",
|
|
72
|
+
"version": "1.0.0",
|
|
73
|
+
"description": "Project generated based on a UIDL document",
|
|
74
|
+
"dependencies": {
|
|
75
|
+
"react-helmet": "^6.1.0",
|
|
76
|
+
"prop-types": "15.7.2",
|
|
77
|
+
"antd": "4.5.4"
|
|
78
|
+
}
|
|
79
|
+
}`)
|
|
80
|
+
expect(modalComponent).toBeDefined()
|
|
81
|
+
expect(modalComponent.content).toContain(`import { Button } from 'antd'`)
|
|
82
|
+
expect(modalComponent.content).toContain(
|
|
83
|
+
`<Button type="primary" onClick={() => setIsOpen(true)}>
|
|
84
|
+
Show Popup
|
|
85
|
+
</Button>`
|
|
86
|
+
)
|
|
87
|
+
expect(viewsFolder.files[0].content).toContain(`import Modal from '../components/modal'`)
|
|
88
|
+
expect(viewsFolder.files[0].content).toContain(`Page 1<Modal></Modal>`)
|
|
89
|
+
/* Imports that are just need to be inserted are added to router file by default */
|
|
90
|
+
expect(srcFolder.files[0].content).toContain(`import 'antd/dist/antd.css'`)
|
|
91
|
+
})
|
|
92
|
+
|
|
93
|
+
it('runs without crashing and using only tokens', async () => {
|
|
94
|
+
const result = await generator.generateProject(uidlSampleWithJustTokens, template)
|
|
95
|
+
const srcFolder = result.subFolders.find((folder) => folder.name === 'src')
|
|
96
|
+
const styleSheet = srcFolder.files.find(
|
|
97
|
+
(file) => file.name === 'style.module' && file.fileType === FileType.CSS
|
|
98
|
+
)
|
|
99
|
+
const index = srcFolder.files.find(
|
|
100
|
+
(file) => file.name === 'index' && file.fileType === FileType.JS
|
|
101
|
+
)
|
|
102
|
+
|
|
103
|
+
expect(styleSheet).toBeDefined()
|
|
104
|
+
expect(styleSheet.content).toContain(`--greys-500: #595959`)
|
|
105
|
+
expect(index).toBeDefined()
|
|
106
|
+
expect(index.content).toContain(`import './style.module.css'`)
|
|
107
|
+
})
|
|
108
|
+
|
|
109
|
+
it('throws error when invalid UIDL sample is used', async () => {
|
|
110
|
+
const result = generator.generateProject(invalidUidlSample, template)
|
|
111
|
+
|
|
112
|
+
await expect(result).rejects.toThrow(Error)
|
|
113
|
+
})
|
|
114
|
+
})
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "react",
|
|
3
|
+
"files": [],
|
|
4
|
+
"subFolders": [
|
|
5
|
+
{
|
|
6
|
+
"name": "src",
|
|
7
|
+
"files": [],
|
|
8
|
+
"subFolders": [
|
|
9
|
+
{
|
|
10
|
+
"name": "components",
|
|
11
|
+
"files": [],
|
|
12
|
+
"subFolders": []
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "pages",
|
|
16
|
+
"files": [],
|
|
17
|
+
"subFolders": []
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"name": "static",
|
|
21
|
+
"files": [],
|
|
22
|
+
"subFolders": []
|
|
23
|
+
}
|
|
24
|
+
]
|
|
25
|
+
}
|
|
26
|
+
]
|
|
27
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ReactProjectMapping } from './react-project-mapping';
|
|
2
|
+
import ReactTemplate from './project-template';
|
|
3
|
+
declare const createReactProjectGenerator: () => import("@teleporthq/teleport-project-generator").ProjectGenerator;
|
|
4
|
+
export { createReactProjectGenerator, ReactProjectMapping, ReactTemplate };
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ReactTemplate = exports.ReactProjectMapping = exports.createReactProjectGenerator = void 0;
|
|
7
|
+
var teleport_project_generator_1 = require("@teleporthq/teleport-project-generator");
|
|
8
|
+
var teleport_component_generator_react_1 = require("@teleporthq/teleport-component-generator-react");
|
|
9
|
+
var teleport_component_generator_1 = require("@teleporthq/teleport-component-generator");
|
|
10
|
+
var teleport_plugin_react_app_routing_1 = __importDefault(require("@teleporthq/teleport-plugin-react-app-routing"));
|
|
11
|
+
var teleport_plugin_import_statements_1 = __importDefault(require("@teleporthq/teleport-plugin-import-statements"));
|
|
12
|
+
var teleport_plugin_jsx_head_config_1 = __importDefault(require("@teleporthq/teleport-plugin-jsx-head-config"));
|
|
13
|
+
var teleport_postprocessor_prettier_js_1 = __importDefault(require("@teleporthq/teleport-postprocessor-prettier-js"));
|
|
14
|
+
var teleport_postprocessor_prettier_html_1 = __importDefault(require("@teleporthq/teleport-postprocessor-prettier-html"));
|
|
15
|
+
var teleport_types_1 = require("@teleporthq/teleport-types");
|
|
16
|
+
var teleport_plugin_css_modules_1 = require("@teleporthq/teleport-plugin-css-modules");
|
|
17
|
+
var react_project_mapping_1 = require("./react-project-mapping");
|
|
18
|
+
Object.defineProperty(exports, "ReactProjectMapping", { enumerable: true, get: function () { return react_project_mapping_1.ReactProjectMapping; } });
|
|
19
|
+
var project_template_1 = __importDefault(require("./project-template"));
|
|
20
|
+
exports.ReactTemplate = project_template_1.default;
|
|
21
|
+
var createReactProjectGenerator = function () {
|
|
22
|
+
var generator = teleport_project_generator_1.createProjectGenerator({
|
|
23
|
+
id: 'teleport-project-react',
|
|
24
|
+
style: teleport_types_1.ReactStyleVariation.CSSModules,
|
|
25
|
+
components: {
|
|
26
|
+
generator: teleport_component_generator_react_1.createReactComponentGenerator,
|
|
27
|
+
mappings: [react_project_mapping_1.ReactProjectMapping],
|
|
28
|
+
path: ['src', 'components'],
|
|
29
|
+
},
|
|
30
|
+
pages: {
|
|
31
|
+
generator: teleport_component_generator_react_1.createReactComponentGenerator,
|
|
32
|
+
mappings: [react_project_mapping_1.ReactProjectMapping],
|
|
33
|
+
plugins: [teleport_plugin_jsx_head_config_1.default],
|
|
34
|
+
path: ['src', 'views'],
|
|
35
|
+
},
|
|
36
|
+
projectStyleSheet: {
|
|
37
|
+
generator: teleport_component_generator_1.createComponentGenerator,
|
|
38
|
+
plugins: [teleport_plugin_css_modules_1.createStyleSheetPlugin({ moduleExtension: true })],
|
|
39
|
+
fileName: 'style',
|
|
40
|
+
path: ['src'],
|
|
41
|
+
importFile: true,
|
|
42
|
+
},
|
|
43
|
+
router: {
|
|
44
|
+
generator: teleport_component_generator_1.createComponentGenerator,
|
|
45
|
+
plugins: [
|
|
46
|
+
teleport_plugin_css_modules_1.createCSSModulesPlugin({ moduleExtension: true }),
|
|
47
|
+
teleport_plugin_react_app_routing_1.default,
|
|
48
|
+
teleport_plugin_import_statements_1.default,
|
|
49
|
+
],
|
|
50
|
+
postprocessors: [teleport_postprocessor_prettier_js_1.default],
|
|
51
|
+
fileName: 'index',
|
|
52
|
+
path: ['src'],
|
|
53
|
+
},
|
|
54
|
+
entry: {
|
|
55
|
+
postprocessors: [teleport_postprocessor_prettier_html_1.default],
|
|
56
|
+
fileName: 'index',
|
|
57
|
+
path: ['public'],
|
|
58
|
+
},
|
|
59
|
+
static: {
|
|
60
|
+
prefix: '',
|
|
61
|
+
path: ['public'],
|
|
62
|
+
},
|
|
63
|
+
});
|
|
64
|
+
return generator;
|
|
65
|
+
};
|
|
66
|
+
exports.createReactProjectGenerator = createReactProjectGenerator;
|
|
67
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,qFAA+E;AAC/E,qGAA8F;AAC9F,yFAAmF;AACnF,oHAAiF;AACjF,oHAAkF;AAClF,gHAA0E;AAC1E,sHAAuE;AACvE,0HAA2E;AAC3E,6DAAgE;AAChE,uFAGgD;AAEhD,iEAA6D;AAkDvB,oGAlD7B,2CAAmB,OAkD6B;AAjDzD,wEAA8C;AAiDa,wBAjDpD,0BAAa,CAiDoD;AA/CxE,IAAM,2BAA2B,GAAG;IAClC,IAAM,SAAS,GAAG,mDAAsB,CAAC;QACvC,EAAE,EAAE,wBAAwB;QAC5B,KAAK,EAAE,oCAAmB,CAAC,UAAU;QACrC,UAAU,EAAE;YACV,SAAS,EAAE,kEAA6B;YACxC,QAAQ,EAAE,CAAC,2CAAmB,CAAC;YAC/B,IAAI,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;SAC5B;QACD,KAAK,EAAE;YACL,SAAS,EAAE,kEAA6B;YACxC,QAAQ,EAAE,CAAC,2CAAmB,CAAC;YAC/B,OAAO,EAAE,CAAC,yCAAgB,CAAC;YAC3B,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC;SACvB;QACD,iBAAiB,EAAE;YACjB,SAAS,EAAE,uDAAwB;YACnC,OAAO,EAAE,CAAC,oDAAsB,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,KAAK,CAAC;YACb,UAAU,EAAE,IAAI;SACjB;QACD,MAAM,EAAE;YACN,SAAS,EAAE,uDAAwB;YACnC,OAAO,EAAE;gBACP,oDAAsB,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;gBACjD,2CAAqB;gBACrB,2CAAsB;aACvB;YACD,cAAc,EAAE,CAAC,4CAAU,CAAC;YAC5B,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,KAAK,CAAC;SACd;QACD,KAAK,EAAE;YACL,cAAc,EAAE,CAAC,8CAAY,CAAC;YAC9B,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,QAAQ,CAAC;SACjB;QACD,MAAM,EAAE;YACN,MAAM,EAAE,EAAE;YACV,IAAI,EAAE,CAAC,QAAQ,CAAC;SACjB;KACF,CAAC,CAAA;IAEF,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAEQ,kEAA2B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.default = {
|
|
4
|
+
name: 'teleport-project-react',
|
|
5
|
+
files: [
|
|
6
|
+
{
|
|
7
|
+
name: 'package',
|
|
8
|
+
content: "\n{\n \"name\": \"teleport-project-react\",\n \"version\": \"1.0.0\",\n \"private\": true,\n \"dependencies\": {\n \"react\": \"^17.0.2\",\n \"react-dom\": \"^17.0.2\",\n \"react-router-dom\": \"^5.2.0\",\n \"react-scripts\": \"4.0.3\"\n },\n \"scripts\": {\n \"start\": \"react-scripts start\",\n \"build\": \"react-scripts build\",\n \"test\": \"react-scripts test --env=jsdom\",\n \"eject\": \"react-scripts eject\"\n },\n \"browserslist\": {\n \"production\": [\n \">0.2%\",\n \"not dead\",\n \"not op_mini all\"\n ],\n \"development\": [\n \"last 1 chrome version\",\n \"last 1 firefox version\",\n \"last 1 safari version\"\n ]\n }\n}",
|
|
9
|
+
fileType: 'json',
|
|
10
|
+
},
|
|
11
|
+
],
|
|
12
|
+
subFolders: [],
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=project-template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-template.js","sourceRoot":"","sources":["../../src/project-template.ts"],"names":[],"mappings":";;AAAA,kBAAe;IACb,IAAI,EAAE,wBAAwB;IAC9B,KAAK,EAAE;QACL;YACE,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,6sBA6Bb;YACI,QAAQ,EAAE,MAAM;SACjB;KACF;IACD,UAAU,EAAE,EAAE;CACf,CAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ReactProjectMapping = void 0;
|
|
4
|
+
exports.ReactProjectMapping = {
|
|
5
|
+
elements: {
|
|
6
|
+
navlink: {
|
|
7
|
+
elementType: 'Link',
|
|
8
|
+
dependency: {
|
|
9
|
+
type: 'library',
|
|
10
|
+
path: 'react-router-dom',
|
|
11
|
+
version: '^5.2.0',
|
|
12
|
+
meta: {
|
|
13
|
+
namedImport: true,
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
attrs: {
|
|
17
|
+
to: { type: 'dynamic', content: { referenceType: 'attr', id: 'transitionTo' } },
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=react-project-mapping.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-project-mapping.js","sourceRoot":"","sources":["../../src/react-project-mapping.ts"],"names":[],"mappings":";;;AAEa,QAAA,mBAAmB,GAAY;IAC1C,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE;gBACV,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,QAAQ;gBACjB,IAAI,EAAE;oBACJ,WAAW,EAAE,IAAI;iBAClB;aACF;YACD,KAAK,EAAE;gBACL,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE;aAChF;SACF;KACF;CACF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../teleport-types/dist/cjs/uidl.d.ts","../../../teleport-types/dist/cjs/generators.d.ts","../../../teleport-types/dist/cjs/errors.d.ts","../../../teleport-types/dist/cjs/vuidl.d.ts","../../../teleport-types/dist/cjs/index.d.ts","../../../teleport-project-generator/dist/cjs/index.d.ts","../../../teleport-component-generator-react/dist/cjs/react-mapping.d.ts","../../../teleport-component-generator-react/dist/cjs/index.d.ts","../../../teleport-component-generator/dist/cjs/index.d.ts","../../../teleport-plugin-react-app-routing/dist/cjs/index.d.ts","../../../teleport-plugin-import-statements/dist/cjs/index.d.ts","../../../teleport-plugin-jsx-head-config/dist/cjs/index.d.ts","../../../teleport-postprocessor-prettier-js/dist/cjs/index.d.ts","../../../teleport-postprocessor-prettier-html/dist/cjs/index.d.ts","../../../teleport-plugin-css-modules/dist/cjs/style-sheet.d.ts","../../../teleport-plugin-css-modules/dist/cjs/index.d.ts","../../src/react-project-mapping.ts","../../src/project-template.ts","../../src/index.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/@types/node/globals.d.ts","../../../../node_modules/@types/node/async_hooks.d.ts","../../../../node_modules/@types/node/buffer.d.ts","../../../../node_modules/@types/node/child_process.d.ts","../../../../node_modules/@types/node/cluster.d.ts","../../../../node_modules/@types/node/console.d.ts","../../../../node_modules/@types/node/constants.d.ts","../../../../node_modules/@types/node/crypto.d.ts","../../../../node_modules/@types/node/dgram.d.ts","../../../../node_modules/@types/node/diagnostic_channel.d.ts","../../../../node_modules/@types/node/dns.d.ts","../../../../node_modules/@types/node/dns/promises.d.ts","../../../../node_modules/@types/node/domain.d.ts","../../../../node_modules/@types/node/events.d.ts","../../../../node_modules/@types/node/fs.d.ts","../../../../node_modules/@types/node/fs/promises.d.ts","../../../../node_modules/@types/node/http.d.ts","../../../../node_modules/@types/node/http2.d.ts","../../../../node_modules/@types/node/https.d.ts","../../../../node_modules/@types/node/inspector.d.ts","../../../../node_modules/@types/node/module.d.ts","../../../../node_modules/@types/node/net.d.ts","../../../../node_modules/@types/node/os.d.ts","../../../../node_modules/@types/node/path.d.ts","../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../node_modules/@types/node/process.d.ts","../../../../node_modules/@types/node/punycode.d.ts","../../../../node_modules/@types/node/querystring.d.ts","../../../../node_modules/@types/node/readline.d.ts","../../../../node_modules/@types/node/repl.d.ts","../../../../node_modules/@types/node/stream.d.ts","../../../../node_modules/@types/node/stream/promises.d.ts","../../../../node_modules/@types/node/string_decoder.d.ts","../../../../node_modules/@types/node/timers.d.ts","../../../../node_modules/@types/node/timers/promises.d.ts","../../../../node_modules/@types/node/tls.d.ts","../../../../node_modules/@types/node/trace_events.d.ts","../../../../node_modules/@types/node/tty.d.ts","../../../../node_modules/@types/node/url.d.ts","../../../../node_modules/@types/node/util.d.ts","../../../../node_modules/@types/node/util/types.d.ts","../../../../node_modules/@types/node/v8.d.ts","../../../../node_modules/@types/node/vm.d.ts","../../../../node_modules/@types/node/worker_threads.d.ts","../../../../node_modules/@types/node/zlib.d.ts","../../../../node_modules/@types/node/globals.global.d.ts","../../../../node_modules/@types/node/wasi.d.ts","../../../../node_modules/@types/node/ts3.6/base.d.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/base.d.ts","../../../../node_modules/@types/node/index.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/diffLines.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/printDiffs.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../../../node_modules/@types/jest/index.d.ts","../../../../node_modules/@types/jest/ts3.2/index.d.ts"],"fileInfos":[{"version":"ac3a8c4040e183ce38da69d23b96939112457d1936198e6542672b7963cf0fce","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06",{"version":"1dad4fe1561d99dfd6709127608b99a76e5c2643626c800434f99c48038567ee","affectsGlobalScope":true},{"version":"cce43d02223f8049864f8568bed322c39424013275cd3bcc3f51492d8b546cb3","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"8dff1b4c2df638fcd976cbb0e636f23ab5968e836cd45084cc31d47d1ab19c49","affectsGlobalScope":true},{"version":"2bb4b3927299434052b37851a47bf5c39764f2ba88a888a107b32262e9292b7c","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"8f4c9f651c8294a2eb1cbd12581fe25bfb901ab1d474bb93cd38c7e2f4be7a30","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"df9c8a72ca8b0ed62f5470b41208a0587f0f73f0a7db28e5a1272cf92537518e","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"60761e6ea886034af0f294f025a7199360ce4e2c8ba4ec6408bc049cf9b89799","affectsGlobalScope":true},{"version":"506b80b9951c9381dc5f11897b31fca5e2a65731d96ddefa19687fbc26b23c6e","affectsGlobalScope":true},"d1e076bd03d792a96993f458172927e0c5ac3cb8e1b566f54f925e6ef19bbebb","6a55786dc1b8e3c25bc00e1700a7eb297e20bccae7d4bb5e4a020b97daa2052f","eccf9c0b6e420c47b3e3eb87e8f0dc9df312a9583a6cce96756b18ebff176b70","75ecadee387dde7be130c85ed277fdfcee3923e452260ffaf217ebaefe7bd305","cd619820771edb23926bb084906215ab9c491255fa707488d15748b38909b747","26de024c2ce80ff168f7194c32f845cadd9f7aced3949360d6084e6e342c343c","f7259d8fdba499d2f6248c2d06f8abd6697a955fd90c85492a46a1e462ff6ebe","45a2137aa9e55e05886a9f441c94a4a461dab548e859d4dff1d4ad922b7c9842","df523941bde95bfd71391d3ed998c090242390d0e3e84de5d9a4cc0621b0bef0","60beedb433021a9afa49b0ff49a815903ed74cc299600760bb035b7c1ad06d48","e2b7ea200b9d72f09d664fdae9763c5384df4e8569c0c2c9fab72402486b8399","52ddce0cc60e0995975eae3813904b6177c0c9e63fe27100569dc66c57839cb6","4e5d030ad6fde95fc998a8950489c59ee6a1d61ddf485cbde8fcda73d35bee18","4baa255974c1ce42bb55535d493cf2d80e9e2c41773a4391466340e8f9944bb6","41eb064197443ceae7565b91f337730f931f75c0114ba9afee5331a7b919cdca","53801d33d5b6842237a09976d47b68900914c99dd2b7b44c27edab42c2e29213","61af6ec704d033387566bdd6e92a82dc161f0bf47575df2e418ad3fdfe362249","35762995dab19490d74fb923fca388ffc818433e5d4b50a2016833a6a29059e3","8182304741c5b46b2defc33663fabe53a36966ec10e8370ecd8b5d42723b85f0","c7bdc99177a2a94d25fb13722adaaf5b3291bf70b4d1b27584ba189dd3889ba3",{"version":"d1c92b66c4105659fcad4eb76a1481f7311033e117d0678a1ec545e8ddb8d4c6","affectsGlobalScope":true},"e23424b97418eca3226fd24de079f1203eb70360622e4e093af2aff14d4be6ec","dee93c07b4df5e26010dc9ec4cdf4d6e4076bb4474d2a8371529217c8b2740a4","d55bc773f71c50f55decb39b64a5d8b9889a7c9e94305b36656ebf30e4f47469","04eaa93bd75f937f9184dcb95a7983800c5770cf8ddd8ac0f3734dc02f5b20ef",{"version":"c8155caf28fc7b0a564156a5df28ad8a844a3bd32d331d148d8f3ce88025c870","affectsGlobalScope":true},"45ac321f2e15d268fd74a90ddaa6467dcaaff2c5b13f95b4b85831520fb7a491","dfc747ab8dd5f623055a4c26fd35e8cceca869fd3f1cf09701c941ca3679665a","c9f5f2920ff61d7158417b8440d5181ddc34a3dfef811a5677dd8a9fb91471e9","5cc0a492da3602510b8f5ed1852b1e0390002780d8758fbc8c0cd023ca7085f8","ec7dafafe751a5121f8f1c80201ebe7e7238c47e6329280a73c4d1ca4bb7fa28","64debeb10e4b7ae4ec9e89bfb4e04c6101ab98c3cc806d14e5488607cfec2753",{"version":"2866a528b2708aa272ec3eaafd3c980abb23aec1ef831cfc5eb2186b98c37ce5","affectsGlobalScope":true},{"version":"a5782d6cea81fe43d2db7ed41e789458c933ab3ab60602f7b5b14c4da3370496","affectsGlobalScope":true},"b86b7ff709a82ef3cba2184136c025989958bad483ffb13e4ca35d720245adf4","6194335ee3353f7226ba31f31d6301d0c6be87228419c0a08976ccd9d4f1213e","5a173b7da4e6d073f9c18a02f387816a934614e7af306193995935fbb95f10b8","b447e123210c68f205f67b20c996c04a1eb64b0e591c5e06e164cd3d3a869b28","13257840c0850d4ebd7c2b17604a9e006f752de76c2400ebc752bc465c330452","42176966283d3835c34278b9b5c0f470d484c0c0c6a55c20a2c916a1ce69b6e8","0cff7901aedfe78e314f7d44088f07e2afa1b6e4f0473a4169b8456ca2fb245d","c55776aa1db2b963a5fb820c0650362e721cba51ebf83b069696f2501378c0f3","e2236264a811ed1d09a2487a433e8f5216ae62378cf233954ae220cf886f6717","3ec1e108d587a5661ec790db607f482605ba9f3830e118ce578e3ffa3c42e22b","100b3bb9d39d2b1b5340f1bf45a52e94ef1692b45232b4ba00fac5c3cc56d331",{"version":"ec1a29ddaecb683aa360df0bd98ab5d4171d2d549554f7c5ab2a5c183a3dcb67","affectsGlobalScope":true},"7f77304372efe3c9967e5f9ea2061f1b4bf41dc3cda3c83cdd676f2e5af6b7e6","992c6f6be16c0a1d2eec13ece33adeea2c747ba27fcd078353a8f4bb5b4fea58","2597718d91e306949d89e285bf34c44192014ef541c3bd7cbb825c022749e974","a6b0abdb67d63ebe964ba5fee31bc3daf10c12eecd46b24d778426010c04c67e","ac4801ebc2355ba32329070123b1cd15891bf71b41dcaf9e75b4744832126a59","fd2298fba0640e7295e7bd545e2dfbfcccbb00c27019e501c87965a02bbdebf6","4fd3c4debadce3e9ab9dec3eb45f7f5e2e3d4ad65cf975a6d938d883cfb25a50","71ddd49185b68f27bfac127ef5d22cb2672c278e53e5370d9020ef50ca9c377d","b1ea7a6eaa7608e0e0529aebd323b526a79c6c05a4e519ae5c779675004dcdf1","9fcb033a6208485d8f3fadde31eb5cbcaf99149cff3e40c0dc53ebc6d0dff4e9","7df562288f949945cf69c21cd912100c2afedeeb7cdb219085f7f4b46cb7dde4","9d16690485ff1eb4f6fc57aebe237728fd8e03130c460919da3a35f4d9bd97f5","dcc6910d95a3625fd2b0487fda055988e46ab46c357a1b3618c27b4a8dd739c9","f4149f1aa299474c7040a35fe8f8ac2ad078cc1b190415adc1fff3ed52d490ea","3730099ed008776216268a97771de31753ef71e0a7d0ec650f588cba2a06ce44","8d649dbc429d7139a1d9a14ea2bf8af1dc089e0a879447539587463d4b6c248c","60c9e27816ec8ac8df7240598bb086e95b47edfb454c5cbf4003c812e0ed6e39","e361aecf17fc4034b4c122a1564471cdcd22ef3a51407803cb5a5fc020c04d02","4926467de88a92a4fc9971d8c6f21b91eca1c0e7fc2a46cc4638ab9440c73875",{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true},"fc0ae4a8ad3c762b96f9d2c3700cb879a373458cb0bf3175478e3b4f85f7ef2f","fabbec378e1ddd86fcf2662e716c2b8318acedb664ee3a4cba6f9e8ee8269cf1","b3593bd345ebea5e4d0a894c03251a3774b34df3d6db57075c18e089a599ba76","e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b","efd55e8ca79171bf26c0d0e30221cb8ee1f5a31dd0c791ec4b2e886f42bab124","e222104af6cb9415238ad358488b74d76eceeff238c1268ec6e85655b05341da","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","eba230221317c985ab1953ccc3edc517f248b37db4fef7875cb2c8d08aff7be7","b83e796810e475da3564c6515bc0ae9577070596a33d89299b7d99f94ecfd921","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"f624e578325b8c58e55b30c998b1f4c3ec1b61a9fa66373da4250c89b7880d44","affectsGlobalScope":true},{"version":"d3002f620eab4bf6476c9da5c0efb2041d46f7df8b3032a5631bd206abef2c75","affectsGlobalScope":true}],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":1,"noImplicitAny":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","sourceMap":true,"target":1},"fileIdsList":[[104,106],[100,101],[100,101,102,103],[105],[107],[97],[96,97],[51,56],[62,63,70,79],[52,62,70],[88],[56,63,71],[79,84],[59,62,70],[60],[59],[62],[62,64,79,87],[62,63,79],[70,79,87],[62,63,65,70,79,84,87],[65,84,87],[98],[87],[59,62,79],[72],[50],[86],[77,88,91],[62,80],[79],[82],[56,70],[48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],[70],[76],[89],[51,56,62,64,73,79,87,91],[33,35],[33],[33,43],[33,34,36,37,38,39,40,41,42,44,45,46],[29],[29,30,31,32]],"referencedMap":[[107,1],[102,2],[104,3],[103,2],[106,4],[108,5],[48,6],[98,7],[51,8],[52,9],[53,10],[54,11],[55,12],[56,13],[57,14],[59,15],[60,16],[61,17],[62,17],[63,18],[64,19],[65,20],[66,21],[67,22],[99,23],[68,17],[69,24],[70,25],[72,26],[73,27],[74,28],[77,17],[78,29],[79,30],[80,31],[82,17],[83,32],[84,33],[96,34],[86,35],[87,36],[88,37],[90,31],[92,38],[93,31],[36,39],[35,40],[37,40],[44,41],[43,40],[39,40],[40,40],[38,40],[42,40],[41,40],[47,42],[45,40],[34,40],[30,43],[33,44],[32,43]],"exportedModulesMap":[[107,1],[102,2],[104,3],[103,2],[106,4],[108,5],[48,6],[98,7],[51,8],[52,9],[53,10],[54,11],[55,12],[56,13],[57,14],[59,15],[60,16],[61,17],[62,17],[63,18],[64,19],[65,20],[66,21],[67,22],[99,23],[68,17],[69,24],[70,25],[72,26],[73,27],[74,28],[77,17],[78,29],[79,30],[80,31],[82,17],[83,32],[84,33],[96,34],[86,35],[87,36],[88,37],[90,31],[92,38],[93,31],[36,39],[35,40],[37,40],[44,41],[43,40],[39,40],[40,40],[38,40],[42,40],[41,40],[47,42],[45,40],[34,40],[30,43],[33,44],[32,43]],"semanticDiagnosticsPerFile":[107,100,102,104,103,101,106,105,108,97,48,50,98,51,52,53,54,55,56,57,58,59,60,61,62,63,64,49,94,65,66,67,99,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,96,86,87,88,89,90,91,95,92,93,6,8,7,2,9,10,11,12,13,14,15,16,3,4,20,17,18,19,21,22,23,5,24,25,26,27,1,28,36,35,37,44,43,39,40,38,42,41,47,46,45,34,31,30,33,29,32]},"version":"4.3.5"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ReactProjectMapping } from './react-project-mapping';
|
|
2
|
+
import ReactTemplate from './project-template';
|
|
3
|
+
declare const createReactProjectGenerator: () => import("@teleporthq/teleport-project-generator").ProjectGenerator;
|
|
4
|
+
export { createReactProjectGenerator, ReactProjectMapping, ReactTemplate };
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { createProjectGenerator } from '@teleporthq/teleport-project-generator';
|
|
2
|
+
import { createReactComponentGenerator } from '@teleporthq/teleport-component-generator-react';
|
|
3
|
+
import { createComponentGenerator } from '@teleporthq/teleport-component-generator';
|
|
4
|
+
import reactAppRoutingPlugin from '@teleporthq/teleport-plugin-react-app-routing';
|
|
5
|
+
import importStatementsPlugin from '@teleporthq/teleport-plugin-import-statements';
|
|
6
|
+
import headConfigPlugin from '@teleporthq/teleport-plugin-jsx-head-config';
|
|
7
|
+
import prettierJS from '@teleporthq/teleport-postprocessor-prettier-js';
|
|
8
|
+
import prettierHTML from '@teleporthq/teleport-postprocessor-prettier-html';
|
|
9
|
+
import { ReactStyleVariation } from '@teleporthq/teleport-types';
|
|
10
|
+
import { createStyleSheetPlugin, createCSSModulesPlugin, } from '@teleporthq/teleport-plugin-css-modules';
|
|
11
|
+
import { ReactProjectMapping } from './react-project-mapping';
|
|
12
|
+
import ReactTemplate from './project-template';
|
|
13
|
+
var createReactProjectGenerator = function () {
|
|
14
|
+
var generator = createProjectGenerator({
|
|
15
|
+
id: 'teleport-project-react',
|
|
16
|
+
style: ReactStyleVariation.CSSModules,
|
|
17
|
+
components: {
|
|
18
|
+
generator: createReactComponentGenerator,
|
|
19
|
+
mappings: [ReactProjectMapping],
|
|
20
|
+
path: ['src', 'components'],
|
|
21
|
+
},
|
|
22
|
+
pages: {
|
|
23
|
+
generator: createReactComponentGenerator,
|
|
24
|
+
mappings: [ReactProjectMapping],
|
|
25
|
+
plugins: [headConfigPlugin],
|
|
26
|
+
path: ['src', 'views'],
|
|
27
|
+
},
|
|
28
|
+
projectStyleSheet: {
|
|
29
|
+
generator: createComponentGenerator,
|
|
30
|
+
plugins: [createStyleSheetPlugin({ moduleExtension: true })],
|
|
31
|
+
fileName: 'style',
|
|
32
|
+
path: ['src'],
|
|
33
|
+
importFile: true,
|
|
34
|
+
},
|
|
35
|
+
router: {
|
|
36
|
+
generator: createComponentGenerator,
|
|
37
|
+
plugins: [
|
|
38
|
+
createCSSModulesPlugin({ moduleExtension: true }),
|
|
39
|
+
reactAppRoutingPlugin,
|
|
40
|
+
importStatementsPlugin,
|
|
41
|
+
],
|
|
42
|
+
postprocessors: [prettierJS],
|
|
43
|
+
fileName: 'index',
|
|
44
|
+
path: ['src'],
|
|
45
|
+
},
|
|
46
|
+
entry: {
|
|
47
|
+
postprocessors: [prettierHTML],
|
|
48
|
+
fileName: 'index',
|
|
49
|
+
path: ['public'],
|
|
50
|
+
},
|
|
51
|
+
static: {
|
|
52
|
+
prefix: '',
|
|
53
|
+
path: ['public'],
|
|
54
|
+
},
|
|
55
|
+
});
|
|
56
|
+
return generator;
|
|
57
|
+
};
|
|
58
|
+
export { createReactProjectGenerator, ReactProjectMapping, ReactTemplate };
|
|
59
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAA;AAC/E,OAAO,EAAE,6BAA6B,EAAE,MAAM,gDAAgD,CAAA;AAC9F,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAA;AACnF,OAAO,qBAAqB,MAAM,+CAA+C,CAAA;AACjF,OAAO,sBAAsB,MAAM,+CAA+C,CAAA;AAClF,OAAO,gBAAgB,MAAM,6CAA6C,CAAA;AAC1E,OAAO,UAAU,MAAM,gDAAgD,CAAA;AACvE,OAAO,YAAY,MAAM,kDAAkD,CAAA;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yCAAyC,CAAA;AAEhD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,aAAa,MAAM,oBAAoB,CAAA;AAE9C,IAAM,2BAA2B,GAAG;IAClC,IAAM,SAAS,GAAG,sBAAsB,CAAC;QACvC,EAAE,EAAE,wBAAwB;QAC5B,KAAK,EAAE,mBAAmB,CAAC,UAAU;QACrC,UAAU,EAAE;YACV,SAAS,EAAE,6BAA6B;YACxC,QAAQ,EAAE,CAAC,mBAAmB,CAAC;YAC/B,IAAI,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;SAC5B;QACD,KAAK,EAAE;YACL,SAAS,EAAE,6BAA6B;YACxC,QAAQ,EAAE,CAAC,mBAAmB,CAAC;YAC/B,OAAO,EAAE,CAAC,gBAAgB,CAAC;YAC3B,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC;SACvB;QACD,iBAAiB,EAAE;YACjB,SAAS,EAAE,wBAAwB;YACnC,OAAO,EAAE,CAAC,sBAAsB,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,KAAK,CAAC;YACb,UAAU,EAAE,IAAI;SACjB;QACD,MAAM,EAAE;YACN,SAAS,EAAE,wBAAwB;YACnC,OAAO,EAAE;gBACP,sBAAsB,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;gBACjD,qBAAqB;gBACrB,sBAAsB;aACvB;YACD,cAAc,EAAE,CAAC,UAAU,CAAC;YAC5B,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,KAAK,CAAC;SACd;QACD,KAAK,EAAE;YACL,cAAc,EAAE,CAAC,YAAY,CAAC;YAC9B,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,QAAQ,CAAC;SACjB;QACD,MAAM,EAAE;YACN,MAAM,EAAE,EAAE;YACV,IAAI,EAAE,CAAC,QAAQ,CAAC;SACjB;KACF,CAAC,CAAA;IAEF,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,OAAO,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
name: 'teleport-project-react',
|
|
3
|
+
files: [
|
|
4
|
+
{
|
|
5
|
+
name: 'package',
|
|
6
|
+
content: "\n{\n \"name\": \"teleport-project-react\",\n \"version\": \"1.0.0\",\n \"private\": true,\n \"dependencies\": {\n \"react\": \"^17.0.2\",\n \"react-dom\": \"^17.0.2\",\n \"react-router-dom\": \"^5.2.0\",\n \"react-scripts\": \"4.0.3\"\n },\n \"scripts\": {\n \"start\": \"react-scripts start\",\n \"build\": \"react-scripts build\",\n \"test\": \"react-scripts test --env=jsdom\",\n \"eject\": \"react-scripts eject\"\n },\n \"browserslist\": {\n \"production\": [\n \">0.2%\",\n \"not dead\",\n \"not op_mini all\"\n ],\n \"development\": [\n \"last 1 chrome version\",\n \"last 1 firefox version\",\n \"last 1 safari version\"\n ]\n }\n}",
|
|
7
|
+
fileType: 'json',
|
|
8
|
+
},
|
|
9
|
+
],
|
|
10
|
+
subFolders: [],
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=project-template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-template.js","sourceRoot":"","sources":["../../src/project-template.ts"],"names":[],"mappings":"AAAA,eAAe;IACb,IAAI,EAAE,wBAAwB;IAC9B,KAAK,EAAE;QACL;YACE,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,6sBA6Bb;YACI,QAAQ,EAAE,MAAM;SACjB;KACF;IACD,UAAU,EAAE,EAAE;CACf,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export var ReactProjectMapping = {
|
|
2
|
+
elements: {
|
|
3
|
+
navlink: {
|
|
4
|
+
elementType: 'Link',
|
|
5
|
+
dependency: {
|
|
6
|
+
type: 'library',
|
|
7
|
+
path: 'react-router-dom',
|
|
8
|
+
version: '^5.2.0',
|
|
9
|
+
meta: {
|
|
10
|
+
namedImport: true,
|
|
11
|
+
},
|
|
12
|
+
},
|
|
13
|
+
attrs: {
|
|
14
|
+
to: { type: 'dynamic', content: { referenceType: 'attr', id: 'transitionTo' } },
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=react-project-mapping.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-project-mapping.js","sourceRoot":"","sources":["../../src/react-project-mapping.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,IAAM,mBAAmB,GAAY;IAC1C,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE;gBACV,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,QAAQ;gBACjB,IAAI,EAAE;oBACJ,WAAW,EAAE,IAAI;iBAClB;aACF;YACD,KAAK,EAAE;gBACL,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE;aAChF;SACF;KACF;CACF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../teleport-types/dist/cjs/uidl.d.ts","../../../teleport-types/dist/cjs/generators.d.ts","../../../teleport-types/dist/cjs/errors.d.ts","../../../teleport-types/dist/cjs/vuidl.d.ts","../../../teleport-types/dist/cjs/index.d.ts","../../../teleport-project-generator/dist/cjs/index.d.ts","../../../teleport-component-generator-react/dist/cjs/react-mapping.d.ts","../../../teleport-component-generator-react/dist/cjs/index.d.ts","../../../teleport-component-generator/dist/cjs/index.d.ts","../../../teleport-plugin-react-app-routing/dist/cjs/index.d.ts","../../../teleport-plugin-import-statements/dist/cjs/index.d.ts","../../../teleport-plugin-jsx-head-config/dist/cjs/index.d.ts","../../../teleport-postprocessor-prettier-js/dist/cjs/index.d.ts","../../../teleport-postprocessor-prettier-html/dist/cjs/index.d.ts","../../../teleport-plugin-css-modules/dist/cjs/style-sheet.d.ts","../../../teleport-plugin-css-modules/dist/cjs/index.d.ts","../../src/react-project-mapping.ts","../../src/project-template.ts","../../src/index.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/@types/node/globals.d.ts","../../../../node_modules/@types/node/async_hooks.d.ts","../../../../node_modules/@types/node/buffer.d.ts","../../../../node_modules/@types/node/child_process.d.ts","../../../../node_modules/@types/node/cluster.d.ts","../../../../node_modules/@types/node/console.d.ts","../../../../node_modules/@types/node/constants.d.ts","../../../../node_modules/@types/node/crypto.d.ts","../../../../node_modules/@types/node/dgram.d.ts","../../../../node_modules/@types/node/diagnostic_channel.d.ts","../../../../node_modules/@types/node/dns.d.ts","../../../../node_modules/@types/node/dns/promises.d.ts","../../../../node_modules/@types/node/domain.d.ts","../../../../node_modules/@types/node/events.d.ts","../../../../node_modules/@types/node/fs.d.ts","../../../../node_modules/@types/node/fs/promises.d.ts","../../../../node_modules/@types/node/http.d.ts","../../../../node_modules/@types/node/http2.d.ts","../../../../node_modules/@types/node/https.d.ts","../../../../node_modules/@types/node/inspector.d.ts","../../../../node_modules/@types/node/module.d.ts","../../../../node_modules/@types/node/net.d.ts","../../../../node_modules/@types/node/os.d.ts","../../../../node_modules/@types/node/path.d.ts","../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../node_modules/@types/node/process.d.ts","../../../../node_modules/@types/node/punycode.d.ts","../../../../node_modules/@types/node/querystring.d.ts","../../../../node_modules/@types/node/readline.d.ts","../../../../node_modules/@types/node/repl.d.ts","../../../../node_modules/@types/node/stream.d.ts","../../../../node_modules/@types/node/stream/promises.d.ts","../../../../node_modules/@types/node/string_decoder.d.ts","../../../../node_modules/@types/node/timers.d.ts","../../../../node_modules/@types/node/timers/promises.d.ts","../../../../node_modules/@types/node/tls.d.ts","../../../../node_modules/@types/node/trace_events.d.ts","../../../../node_modules/@types/node/tty.d.ts","../../../../node_modules/@types/node/url.d.ts","../../../../node_modules/@types/node/util.d.ts","../../../../node_modules/@types/node/util/types.d.ts","../../../../node_modules/@types/node/v8.d.ts","../../../../node_modules/@types/node/vm.d.ts","../../../../node_modules/@types/node/worker_threads.d.ts","../../../../node_modules/@types/node/zlib.d.ts","../../../../node_modules/@types/node/globals.global.d.ts","../../../../node_modules/@types/node/wasi.d.ts","../../../../node_modules/@types/node/ts3.6/base.d.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/base.d.ts","../../../../node_modules/@types/node/index.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/diffLines.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/printDiffs.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../../../node_modules/@types/jest/index.d.ts","../../../../node_modules/@types/jest/ts3.2/index.d.ts"],"fileInfos":[{"version":"ac3a8c4040e183ce38da69d23b96939112457d1936198e6542672b7963cf0fce","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06",{"version":"1dad4fe1561d99dfd6709127608b99a76e5c2643626c800434f99c48038567ee","affectsGlobalScope":true},{"version":"cce43d02223f8049864f8568bed322c39424013275cd3bcc3f51492d8b546cb3","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"8dff1b4c2df638fcd976cbb0e636f23ab5968e836cd45084cc31d47d1ab19c49","affectsGlobalScope":true},{"version":"2bb4b3927299434052b37851a47bf5c39764f2ba88a888a107b32262e9292b7c","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"8f4c9f651c8294a2eb1cbd12581fe25bfb901ab1d474bb93cd38c7e2f4be7a30","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"df9c8a72ca8b0ed62f5470b41208a0587f0f73f0a7db28e5a1272cf92537518e","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"60761e6ea886034af0f294f025a7199360ce4e2c8ba4ec6408bc049cf9b89799","affectsGlobalScope":true},{"version":"506b80b9951c9381dc5f11897b31fca5e2a65731d96ddefa19687fbc26b23c6e","affectsGlobalScope":true},"d1e076bd03d792a96993f458172927e0c5ac3cb8e1b566f54f925e6ef19bbebb","6a55786dc1b8e3c25bc00e1700a7eb297e20bccae7d4bb5e4a020b97daa2052f","eccf9c0b6e420c47b3e3eb87e8f0dc9df312a9583a6cce96756b18ebff176b70","75ecadee387dde7be130c85ed277fdfcee3923e452260ffaf217ebaefe7bd305","cd619820771edb23926bb084906215ab9c491255fa707488d15748b38909b747","26de024c2ce80ff168f7194c32f845cadd9f7aced3949360d6084e6e342c343c","f7259d8fdba499d2f6248c2d06f8abd6697a955fd90c85492a46a1e462ff6ebe","45a2137aa9e55e05886a9f441c94a4a461dab548e859d4dff1d4ad922b7c9842","df523941bde95bfd71391d3ed998c090242390d0e3e84de5d9a4cc0621b0bef0","60beedb433021a9afa49b0ff49a815903ed74cc299600760bb035b7c1ad06d48","e2b7ea200b9d72f09d664fdae9763c5384df4e8569c0c2c9fab72402486b8399","52ddce0cc60e0995975eae3813904b6177c0c9e63fe27100569dc66c57839cb6","4e5d030ad6fde95fc998a8950489c59ee6a1d61ddf485cbde8fcda73d35bee18","4baa255974c1ce42bb55535d493cf2d80e9e2c41773a4391466340e8f9944bb6","41eb064197443ceae7565b91f337730f931f75c0114ba9afee5331a7b919cdca","53801d33d5b6842237a09976d47b68900914c99dd2b7b44c27edab42c2e29213","61af6ec704d033387566bdd6e92a82dc161f0bf47575df2e418ad3fdfe362249","35762995dab19490d74fb923fca388ffc818433e5d4b50a2016833a6a29059e3","8182304741c5b46b2defc33663fabe53a36966ec10e8370ecd8b5d42723b85f0","c7bdc99177a2a94d25fb13722adaaf5b3291bf70b4d1b27584ba189dd3889ba3",{"version":"d1c92b66c4105659fcad4eb76a1481f7311033e117d0678a1ec545e8ddb8d4c6","affectsGlobalScope":true},"e23424b97418eca3226fd24de079f1203eb70360622e4e093af2aff14d4be6ec","dee93c07b4df5e26010dc9ec4cdf4d6e4076bb4474d2a8371529217c8b2740a4","d55bc773f71c50f55decb39b64a5d8b9889a7c9e94305b36656ebf30e4f47469","04eaa93bd75f937f9184dcb95a7983800c5770cf8ddd8ac0f3734dc02f5b20ef",{"version":"c8155caf28fc7b0a564156a5df28ad8a844a3bd32d331d148d8f3ce88025c870","affectsGlobalScope":true},"45ac321f2e15d268fd74a90ddaa6467dcaaff2c5b13f95b4b85831520fb7a491","dfc747ab8dd5f623055a4c26fd35e8cceca869fd3f1cf09701c941ca3679665a","c9f5f2920ff61d7158417b8440d5181ddc34a3dfef811a5677dd8a9fb91471e9","5cc0a492da3602510b8f5ed1852b1e0390002780d8758fbc8c0cd023ca7085f8","ec7dafafe751a5121f8f1c80201ebe7e7238c47e6329280a73c4d1ca4bb7fa28","64debeb10e4b7ae4ec9e89bfb4e04c6101ab98c3cc806d14e5488607cfec2753",{"version":"2866a528b2708aa272ec3eaafd3c980abb23aec1ef831cfc5eb2186b98c37ce5","affectsGlobalScope":true},{"version":"a5782d6cea81fe43d2db7ed41e789458c933ab3ab60602f7b5b14c4da3370496","affectsGlobalScope":true},"b86b7ff709a82ef3cba2184136c025989958bad483ffb13e4ca35d720245adf4","6194335ee3353f7226ba31f31d6301d0c6be87228419c0a08976ccd9d4f1213e","5a173b7da4e6d073f9c18a02f387816a934614e7af306193995935fbb95f10b8","b447e123210c68f205f67b20c996c04a1eb64b0e591c5e06e164cd3d3a869b28","13257840c0850d4ebd7c2b17604a9e006f752de76c2400ebc752bc465c330452","42176966283d3835c34278b9b5c0f470d484c0c0c6a55c20a2c916a1ce69b6e8","0cff7901aedfe78e314f7d44088f07e2afa1b6e4f0473a4169b8456ca2fb245d","c55776aa1db2b963a5fb820c0650362e721cba51ebf83b069696f2501378c0f3","e2236264a811ed1d09a2487a433e8f5216ae62378cf233954ae220cf886f6717","3ec1e108d587a5661ec790db607f482605ba9f3830e118ce578e3ffa3c42e22b","100b3bb9d39d2b1b5340f1bf45a52e94ef1692b45232b4ba00fac5c3cc56d331",{"version":"ec1a29ddaecb683aa360df0bd98ab5d4171d2d549554f7c5ab2a5c183a3dcb67","affectsGlobalScope":true},"7f77304372efe3c9967e5f9ea2061f1b4bf41dc3cda3c83cdd676f2e5af6b7e6","992c6f6be16c0a1d2eec13ece33adeea2c747ba27fcd078353a8f4bb5b4fea58","2597718d91e306949d89e285bf34c44192014ef541c3bd7cbb825c022749e974","a6b0abdb67d63ebe964ba5fee31bc3daf10c12eecd46b24d778426010c04c67e","ac4801ebc2355ba32329070123b1cd15891bf71b41dcaf9e75b4744832126a59","fd2298fba0640e7295e7bd545e2dfbfcccbb00c27019e501c87965a02bbdebf6","4fd3c4debadce3e9ab9dec3eb45f7f5e2e3d4ad65cf975a6d938d883cfb25a50","71ddd49185b68f27bfac127ef5d22cb2672c278e53e5370d9020ef50ca9c377d","b1ea7a6eaa7608e0e0529aebd323b526a79c6c05a4e519ae5c779675004dcdf1","9fcb033a6208485d8f3fadde31eb5cbcaf99149cff3e40c0dc53ebc6d0dff4e9","7df562288f949945cf69c21cd912100c2afedeeb7cdb219085f7f4b46cb7dde4","9d16690485ff1eb4f6fc57aebe237728fd8e03130c460919da3a35f4d9bd97f5","dcc6910d95a3625fd2b0487fda055988e46ab46c357a1b3618c27b4a8dd739c9","f4149f1aa299474c7040a35fe8f8ac2ad078cc1b190415adc1fff3ed52d490ea","3730099ed008776216268a97771de31753ef71e0a7d0ec650f588cba2a06ce44","8d649dbc429d7139a1d9a14ea2bf8af1dc089e0a879447539587463d4b6c248c","60c9e27816ec8ac8df7240598bb086e95b47edfb454c5cbf4003c812e0ed6e39","e361aecf17fc4034b4c122a1564471cdcd22ef3a51407803cb5a5fc020c04d02","4926467de88a92a4fc9971d8c6f21b91eca1c0e7fc2a46cc4638ab9440c73875",{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true},"fc0ae4a8ad3c762b96f9d2c3700cb879a373458cb0bf3175478e3b4f85f7ef2f","fabbec378e1ddd86fcf2662e716c2b8318acedb664ee3a4cba6f9e8ee8269cf1","b3593bd345ebea5e4d0a894c03251a3774b34df3d6db57075c18e089a599ba76","e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b","efd55e8ca79171bf26c0d0e30221cb8ee1f5a31dd0c791ec4b2e886f42bab124","e222104af6cb9415238ad358488b74d76eceeff238c1268ec6e85655b05341da","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","eba230221317c985ab1953ccc3edc517f248b37db4fef7875cb2c8d08aff7be7","b83e796810e475da3564c6515bc0ae9577070596a33d89299b7d99f94ecfd921","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"f624e578325b8c58e55b30c998b1f4c3ec1b61a9fa66373da4250c89b7880d44","affectsGlobalScope":true},{"version":"d3002f620eab4bf6476c9da5c0efb2041d46f7df8b3032a5631bd206abef2c75","affectsGlobalScope":true}],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":99,"noImplicitAny":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","sourceMap":true,"target":1},"fileIdsList":[[104,106],[100,101],[100,101,102,103],[105],[107],[97],[96,97],[51,56],[62,63,70,79],[52,62,70],[88],[56,63,71],[79,84],[59,62,70],[60],[59],[62],[62,64,79,87],[62,63,79],[70,79,87],[62,63,65,70,79,84,87],[65,84,87],[98],[87],[59,62,79],[72],[50],[86],[77,88,91],[62,80],[79],[82],[56,70],[48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],[70],[76],[89],[51,56,62,64,73,79,87,91],[33,35],[33],[33,43],[33,34,36,37,38,39,40,41,42,44,45,46],[29],[29,30,31,32]],"referencedMap":[[107,1],[102,2],[104,3],[103,2],[106,4],[108,5],[48,6],[98,7],[51,8],[52,9],[53,10],[54,11],[55,12],[56,13],[57,14],[59,15],[60,16],[61,17],[62,17],[63,18],[64,19],[65,20],[66,21],[67,22],[99,23],[68,17],[69,24],[70,25],[72,26],[73,27],[74,28],[77,17],[78,29],[79,30],[80,31],[82,17],[83,32],[84,33],[96,34],[86,35],[87,36],[88,37],[90,31],[92,38],[93,31],[36,39],[35,40],[37,40],[44,41],[43,40],[39,40],[40,40],[38,40],[42,40],[41,40],[47,42],[45,40],[34,40],[30,43],[33,44],[32,43]],"exportedModulesMap":[[107,1],[102,2],[104,3],[103,2],[106,4],[108,5],[48,6],[98,7],[51,8],[52,9],[53,10],[54,11],[55,12],[56,13],[57,14],[59,15],[60,16],[61,17],[62,17],[63,18],[64,19],[65,20],[66,21],[67,22],[99,23],[68,17],[69,24],[70,25],[72,26],[73,27],[74,28],[77,17],[78,29],[79,30],[80,31],[82,17],[83,32],[84,33],[96,34],[86,35],[87,36],[88,37],[90,31],[92,38],[93,31],[36,39],[35,40],[37,40],[44,41],[43,40],[39,40],[40,40],[38,40],[42,40],[41,40],[47,42],[45,40],[34,40],[30,43],[33,44],[32,43]],"semanticDiagnosticsPerFile":[107,100,102,104,103,101,106,105,108,97,48,50,98,51,52,53,54,55,56,57,58,59,60,61,62,63,64,49,94,65,66,67,99,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,96,86,87,88,89,90,91,95,92,93,6,8,7,2,9,10,11,12,13,14,15,16,3,4,20,17,18,19,21,22,23,5,24,25,26,27,1,28,36,35,37,44,43,39,40,38,42,41,47,46,45,34,31,30,33,29,32]},"version":"4.3.5"}
|
package/package.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@teleporthq/teleport-project-generator-react",
|
|
3
|
+
"version": "0.18.0",
|
|
4
|
+
"description": "Project generator using React and React-Router, on top of a standard create-react-app structure",
|
|
5
|
+
"author": "teleportHQ",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"homepage": "https://teleporthq.io/",
|
|
8
|
+
"main": "dist/cjs/index.js",
|
|
9
|
+
"module": "dist/esm/index.js",
|
|
10
|
+
"types": "dist/cjs/index.d.ts",
|
|
11
|
+
"sideEffects": false,
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "git+ssh://git@github.com/teleporthq/teleport-code-generators.git"
|
|
15
|
+
},
|
|
16
|
+
"bugs": {
|
|
17
|
+
"url": "https://github.com/teleporthq/teleport-code-generators/issues"
|
|
18
|
+
},
|
|
19
|
+
"publishConfig": {
|
|
20
|
+
"access": "public"
|
|
21
|
+
},
|
|
22
|
+
"scripts": {
|
|
23
|
+
"clean": "rimraf dist",
|
|
24
|
+
"build": "tsc -p tsconfig.json && tsc -p tsconfig.json --module commonjs --outDir dist/cjs"
|
|
25
|
+
},
|
|
26
|
+
"dependencies": {
|
|
27
|
+
"@teleporthq/teleport-component-generator": "^0.18.0",
|
|
28
|
+
"@teleporthq/teleport-component-generator-react": "^0.18.0",
|
|
29
|
+
"@teleporthq/teleport-plugin-css-modules": "^0.18.0",
|
|
30
|
+
"@teleporthq/teleport-plugin-import-statements": "^0.18.0",
|
|
31
|
+
"@teleporthq/teleport-plugin-jsx-head-config": "^0.18.0",
|
|
32
|
+
"@teleporthq/teleport-plugin-react-app-routing": "^0.18.0",
|
|
33
|
+
"@teleporthq/teleport-postprocessor-prettier-html": "^0.18.0",
|
|
34
|
+
"@teleporthq/teleport-postprocessor-prettier-js": "^0.18.0",
|
|
35
|
+
"@teleporthq/teleport-project-generator": "^0.18.0",
|
|
36
|
+
"@teleporthq/teleport-types": "^0.18.0",
|
|
37
|
+
"@teleporthq/teleport-uidl-validator": "^0.18.0"
|
|
38
|
+
},
|
|
39
|
+
"gitHead": "7b47f013bf1889e19b31875a8f3abdc43b22615a"
|
|
40
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { createProjectGenerator } from '@teleporthq/teleport-project-generator'
|
|
2
|
+
import { createReactComponentGenerator } from '@teleporthq/teleport-component-generator-react'
|
|
3
|
+
import { createComponentGenerator } from '@teleporthq/teleport-component-generator'
|
|
4
|
+
import reactAppRoutingPlugin from '@teleporthq/teleport-plugin-react-app-routing'
|
|
5
|
+
import importStatementsPlugin from '@teleporthq/teleport-plugin-import-statements'
|
|
6
|
+
import headConfigPlugin from '@teleporthq/teleport-plugin-jsx-head-config'
|
|
7
|
+
import prettierJS from '@teleporthq/teleport-postprocessor-prettier-js'
|
|
8
|
+
import prettierHTML from '@teleporthq/teleport-postprocessor-prettier-html'
|
|
9
|
+
import { ReactStyleVariation } from '@teleporthq/teleport-types'
|
|
10
|
+
import {
|
|
11
|
+
createStyleSheetPlugin,
|
|
12
|
+
createCSSModulesPlugin,
|
|
13
|
+
} from '@teleporthq/teleport-plugin-css-modules'
|
|
14
|
+
|
|
15
|
+
import { ReactProjectMapping } from './react-project-mapping'
|
|
16
|
+
import ReactTemplate from './project-template'
|
|
17
|
+
|
|
18
|
+
const createReactProjectGenerator = () => {
|
|
19
|
+
const generator = createProjectGenerator({
|
|
20
|
+
id: 'teleport-project-react',
|
|
21
|
+
style: ReactStyleVariation.CSSModules,
|
|
22
|
+
components: {
|
|
23
|
+
generator: createReactComponentGenerator,
|
|
24
|
+
mappings: [ReactProjectMapping],
|
|
25
|
+
path: ['src', 'components'],
|
|
26
|
+
},
|
|
27
|
+
pages: {
|
|
28
|
+
generator: createReactComponentGenerator,
|
|
29
|
+
mappings: [ReactProjectMapping],
|
|
30
|
+
plugins: [headConfigPlugin],
|
|
31
|
+
path: ['src', 'views'],
|
|
32
|
+
},
|
|
33
|
+
projectStyleSheet: {
|
|
34
|
+
generator: createComponentGenerator,
|
|
35
|
+
plugins: [createStyleSheetPlugin({ moduleExtension: true })],
|
|
36
|
+
fileName: 'style',
|
|
37
|
+
path: ['src'],
|
|
38
|
+
importFile: true,
|
|
39
|
+
},
|
|
40
|
+
router: {
|
|
41
|
+
generator: createComponentGenerator,
|
|
42
|
+
plugins: [
|
|
43
|
+
createCSSModulesPlugin({ moduleExtension: true }),
|
|
44
|
+
reactAppRoutingPlugin,
|
|
45
|
+
importStatementsPlugin,
|
|
46
|
+
],
|
|
47
|
+
postprocessors: [prettierJS],
|
|
48
|
+
fileName: 'index',
|
|
49
|
+
path: ['src'],
|
|
50
|
+
},
|
|
51
|
+
entry: {
|
|
52
|
+
postprocessors: [prettierHTML],
|
|
53
|
+
fileName: 'index',
|
|
54
|
+
path: ['public'],
|
|
55
|
+
},
|
|
56
|
+
static: {
|
|
57
|
+
prefix: '',
|
|
58
|
+
path: ['public'],
|
|
59
|
+
},
|
|
60
|
+
})
|
|
61
|
+
|
|
62
|
+
return generator
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export { createReactProjectGenerator, ReactProjectMapping, ReactTemplate }
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
name: 'teleport-project-react',
|
|
3
|
+
files: [
|
|
4
|
+
{
|
|
5
|
+
name: 'package',
|
|
6
|
+
content: `
|
|
7
|
+
{
|
|
8
|
+
"name": "teleport-project-react",
|
|
9
|
+
"version": "1.0.0",
|
|
10
|
+
"private": true,
|
|
11
|
+
"dependencies": {
|
|
12
|
+
"react": "^17.0.2",
|
|
13
|
+
"react-dom": "^17.0.2",
|
|
14
|
+
"react-router-dom": "^5.2.0",
|
|
15
|
+
"react-scripts": "4.0.3"
|
|
16
|
+
},
|
|
17
|
+
"scripts": {
|
|
18
|
+
"start": "react-scripts start",
|
|
19
|
+
"build": "react-scripts build",
|
|
20
|
+
"test": "react-scripts test --env=jsdom",
|
|
21
|
+
"eject": "react-scripts eject"
|
|
22
|
+
},
|
|
23
|
+
"browserslist": {
|
|
24
|
+
"production": [
|
|
25
|
+
">0.2%",
|
|
26
|
+
"not dead",
|
|
27
|
+
"not op_mini all"
|
|
28
|
+
],
|
|
29
|
+
"development": [
|
|
30
|
+
"last 1 chrome version",
|
|
31
|
+
"last 1 firefox version",
|
|
32
|
+
"last 1 safari version"
|
|
33
|
+
]
|
|
34
|
+
}
|
|
35
|
+
}`,
|
|
36
|
+
fileType: 'json',
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
subFolders: [],
|
|
40
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Mapping } from '@teleporthq/teleport-types'
|
|
2
|
+
|
|
3
|
+
export const ReactProjectMapping: Mapping = {
|
|
4
|
+
elements: {
|
|
5
|
+
navlink: {
|
|
6
|
+
elementType: 'Link',
|
|
7
|
+
dependency: {
|
|
8
|
+
type: 'library',
|
|
9
|
+
path: 'react-router-dom',
|
|
10
|
+
version: '^5.2.0',
|
|
11
|
+
meta: {
|
|
12
|
+
namedImport: true,
|
|
13
|
+
},
|
|
14
|
+
},
|
|
15
|
+
attrs: {
|
|
16
|
+
to: { type: 'dynamic', content: { referenceType: 'attr', id: 'transitionTo' } },
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
}
|