Skip to content

Commit eac4fab

Browse files
authored
Add angular config (#173)
1 parent a32e9fb commit eac4fab

File tree

4 files changed

+204
-37
lines changed

4 files changed

+204
-37
lines changed

.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,7 @@
1010
*.yml text eol=lf
1111
*.scss text eol=lf
1212
*.vue text eol=lf
13+
*.ts text eol=lf
14+
*.html text eol=lf
1315

1416
*.png binary

package-lock.json

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
module.exports = {
2+
sourcePath: 'packages/devextreme-cli/testing/sandbox/angular/my-app/',
3+
targetPath: 'packages/devextreme-schematics/',
4+
sourceGlob: '**/*.{js,scss,json,html,ts}',
5+
ignoreList: [
6+
'node_modules/**/*.*',
7+
'src/{themes/generated,environments}/**/*.*',
8+
'src/{polyfills,test,app/app.module,main}.ts',
9+
'src/{dx-styles,styles}.scss',
10+
'src/index.html',
11+
'e2e/{tsconfig.json,protractor.conf.js}',
12+
'{package-lock,package}.json',
13+
'tsconfig.{app,spec}.json',
14+
'tsconfig.json',
15+
'angular.json',
16+
'tslint.json',
17+
'karma.conf.js'
18+
],
19+
replaceRules: [
20+
{
21+
glob: 'src/themes/metadata.base.json',
22+
definitions: [
23+
{
24+
before: /"baseTheme": "[^"]*"/,
25+
after: '"baseTheme": "material.orange.light"'
26+
}
27+
]
28+
},
29+
{
30+
glob: 'src/themes/metadata.additional.json',
31+
definitions: [
32+
{
33+
before: /"baseTheme": "[^"]*"/,
34+
after: '"baseTheme": "material.orange.dark"'
35+
}
36+
]
37+
},
38+
{
39+
glob: 'src/themes/metadata.*.json',
40+
definitions: [
41+
{
42+
before: /"items": \[[^\]]*],/,
43+
after: '"items": [],'
44+
},
45+
{
46+
before: /"assetsBasePath": "[^"]*"/,
47+
after: '"assetsBasePath": "<%= path %>../../node_modules/devextreme/dist/css/"'
48+
}
49+
]
50+
},
51+
{
52+
glob: 'devextreme.json',
53+
definitions: [
54+
{
55+
before: 'angular',
56+
after: '<%= engine %>'
57+
},
58+
{
59+
before: /src/g,
60+
after: '<%= sourcePath %>'
61+
}
62+
]
63+
},
64+
{
65+
glob: '{src/app/shared/services/app-info.service.ts,e2e/src/app.e2e-spec.ts}',
66+
definitions: [
67+
{
68+
before: 'My App',
69+
after: '<%= title %>'
70+
}
71+
]
72+
},
73+
{
74+
glob: 'src/app/pages/home/home.component.html',
75+
definitions: [
76+
{
77+
before: 'My App',
78+
after: '<%= project %>'
79+
}
80+
]
81+
},
82+
{
83+
glob: 'src/app/app-navigation.ts',
84+
definitions: [
85+
{
86+
before: /export const navigation = [^;]*?;/,
87+
after: 'export const navigation = [];'
88+
}
89+
]
90+
},
91+
{
92+
glob: 'src/app/shared/components/side-navigation-menu/side-navigation-menu.component.ts',
93+
definitions: [
94+
{
95+
before: /\(DxTreeViewComponent[^\)]*?\)/,
96+
after: '(DxTreeViewComponent<% if(requireStaticFlag) { %>, { static: true }<% } %>)'
97+
}
98+
]
99+
},
100+
{
101+
glob: 'src/app/app.component.html',
102+
definitions: [
103+
{
104+
before: /side-nav-(inner|outer)-toolbar/g,
105+
after: '<%= layout %>'
106+
}
107+
]
108+
},
109+
{
110+
glob: 'src/app/app.component.ts',
111+
definitions: [
112+
{
113+
before: 'app',
114+
after: '<%= prefix %>'
115+
},
116+
{
117+
before: /app.component/g,
118+
after: '<%= name %>.component'
119+
},
120+
{
121+
before: 'AppComponent',
122+
after: '<%= strings.classify(name) %>Component'
123+
}
124+
]
125+
}
126+
],
127+
removeRules: [
128+
{
129+
glob: 'src/app/app-routing.module.ts',
130+
definitions: [
131+
/import { HomeComponent } [^\n]*?\n/,
132+
/import { ProfileComponent } [^\n]*?\n/,
133+
/import { DisplayDataComponent } [^\n]*?\n/,
134+
/import { DxDataGridModule, DxFormModule } [^\n]*?\n/,
135+
/{[^}]*?path: 'display-data'[^}]*?},\s+/,
136+
/{[^}]*?path: 'profile'[^}]*?},\s+/,
137+
/{[^}]*?path: 'home'[^}]*?},\s+/,
138+
/},[^}]*?path: '\*\*'[^}]*/,
139+
/, {\s?useHash: true\s?}/,
140+
', DxDataGridModule, DxFormModule',
141+
/,\s+declarations: [^\]]*?]/
142+
]
143+
}
144+
],
145+
moveRules: [
146+
{
147+
glob: 'src/app/pages/**/*.*',
148+
definition:
149+
{
150+
sourcePath: 'src/app/',
151+
targetPath: 'packages/devextreme-schematics/src/add-sample-views/files/'
152+
}
153+
},
154+
{
155+
glob: '{src/**/!(app.component).*,devextreme.json,e2e/**/*.*}',
156+
definition:
157+
{
158+
sourcePath: '',
159+
targetPath: 'packages/devextreme-schematics/src/add-layout/files/'
160+
}
161+
},
162+
{
163+
glob: 'src/app/app.component.{scss,ts,html}',
164+
definition:
165+
{
166+
sourcePath: 'src/app/app',
167+
targetPath: 'packages/devextreme-schematics/src/add-layout/files/src/app/__name__'
168+
}
169+
}
170+
]
171+
};

templates-generator/react-config.js

Lines changed: 27 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,18 @@ module.exports = {
22
sourcePath: 'packages/devextreme-cli/testing/sandbox/react/my-app/',
33
targetPath: 'packages/devextreme-cli/templates/react/application/',
44
sourceGlob: '**/*.{js,scss,json}',
5-
updateRules: [
5+
ignoreList: [
6+
'src/themes/generated/*.*',
7+
'node_modules/**/*.*',
8+
'public/*.*',
9+
'src/App.test.js',
10+
'src/setupTests.js',
11+
'src/serviceWorker.js',
12+
'src/index.js',
13+
'package.json',
14+
'package-lock.json'
15+
],
16+
replaceRules: [
617
{
718
glob: 'src/app-routes.js',
819
definitions: [
@@ -45,25 +56,9 @@ module.exports = {
4556
glob: 'src/App.js',
4657
definitions: [
4758
{
48-
before: 'SideNavOuterToolbar',
59+
before: /SideNav(Outer|Inner)Toolbar/,
4960
after: '<%=layout%>'
5061
},
51-
{
52-
before: 'SideNavInnerToolbar',
53-
after: '<%=layout%>'
54-
},
55-
{
56-
before: 'import \'devextreme/dist/css/dx.common.css\';\n',
57-
after: ''
58-
},
59-
{
60-
before: 'import \'./themes/generated/theme.base.css\';\n',
61-
after: ''
62-
},
63-
{
64-
before: 'import \'./themes/generated/theme.additional.css\';\n',
65-
after: ''
66-
},
6762
{
6863
before: '))}',
6964
after: '))}<%=^empty%>'
@@ -78,7 +73,7 @@ module.exports = {
7873
glob: 'src/themes/metadata.additional.json',
7974
definitions: [
8075
{
81-
before: /"baseTheme": ".*?"/,
76+
before: /"baseTheme": "[^"]*?"/,
8277
after: '"baseTheme": "material.orange.dark"'
8378
}
8479
]
@@ -87,21 +82,31 @@ module.exports = {
8782
glob: 'src/themes/metadata.base.json',
8883
definitions: [
8984
{
90-
before: /"baseTheme": ".*?"/,
85+
before: /baseTheme": "[^"]*?"/,
9186
after: '"baseTheme": "material.orange.light"'
9287
}
9388
]
9489
},
9590
{
96-
glob: 'src/themes/metadata.**.json',
91+
glob: 'src/themes/metadata.*.json',
9792
definitions: [
9893
{
99-
before: /"items":\s+\[[^]*?\]/,
94+
before: /"items":\s+\[[^\]]*?\]/,
10095
after: '"items": []'
10196
}
10297
]
10398
}
10499
],
100+
removeRules: [
101+
{
102+
glob: 'src/App.js',
103+
definitions: [
104+
'import \'devextreme/dist/css/dx.common.css\';\n',
105+
'import \'./themes/generated/theme.base.css\';\n',
106+
'import \'./themes/generated/theme.additional.css\';\n',
107+
]
108+
},
109+
],
105110
moveRules: [
106111
{
107112
glob: 'src/pages/**/*.*',
@@ -117,16 +122,5 @@ module.exports = {
117122
targetPath: 'packages/devextreme-cli/templates/react/application/'
118123
}
119124
}
120-
],
121-
ignoreList: [
122-
'src/themes/generated/*.*',
123-
'node_modules/**/*.*',
124-
'public/*.*',
125-
'src/App.test.js',
126-
'src/setupTests.js',
127-
'src/serviceWorker.js',
128-
'src/index.js',
129-
'package.json',
130-
'package-lock.json'
131125
]
132126
};

0 commit comments

Comments
 (0)