-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathhuge-angular-mf.conventions.ts
148 lines (147 loc) · 4.28 KB
/
huge-angular-mf.conventions.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
import { defineConventions } from '@huge-nx/conventions';
export default defineConventions({
version: '1.0',
generators: {
'@nx/angular:application': {
linter: 'eslint',
style: 'css',
unitTestRunner: 'jest',
bundler: 'esbuild',
e2eTestRunner: 'playwright',
inlineStyle: true,
inlineTemplate: true,
ssr: false,
},
'@nx/angular:host': {
style: 'css',
linter: 'eslint',
unitTestRunner: 'jest',
e2eTestRunner: 'playwright',
},
'@nx/angular:remote': {
style: 'css',
linter: 'eslint',
unitTestRunner: 'jest',
e2eTestRunner: 'playwright',
},
'@nx/angular:library': {
style: 'css',
linter: 'eslint',
unitTestRunner: 'jest',
},
'@nx/angular:component': {
style: 'css',
linter: 'eslint',
unitTestRunner: 'jest',
},
'@nx/js:lib': {
linter: 'eslint',
bundler: 'swc',
unitTestRunner: 'jest',
},
'@nx/storybook:configuration': {
interactionTests: 'true',
},
},
projectTypes: {
'global:angular:app': {
projectPattern: '*-app',
generators: [{ generator: '@nx/angular:application' }],
},
'mf:host:app': {
projectPattern: '*-host',
generators: [{ generator: '@nx/angular:host', options: { addTailwind: true } }],
},
'mf:remote:app': {
projectPattern: 'mf_*_remote',
generators: [{ generator: '@nx/angular:remote' }],
},
'global:angular:lib:data-access': {
projectPattern: '*-data-access',
generators: [{ generator: '@nx/angular:library' }],
},
'global:angular:lib:feature': {
projectPattern: '*-feature',
generators: [{ generator: '@nx/angular:library' }],
},
'global:angular:lib:ui': {
projectPattern: '*-ui',
generators: [{ generator: '@nx/angular:library' }],
},
'global:angular:lib:ui:storybook': {
projectPattern: '*-ui',
generators: [{ generator: '@nx/angular:library' }, { generator: '@nx/storybook:configuration', options: { uiFramework: '@storybook/angular' } }],
},
'global:angular:lib:utils': {
projectPattern: '*-utils',
generators: [{ generator: '@nx/angular:library' }],
},
'global:ts:lib:utils': {
projectPattern: '*-utils',
generators: [{ generator: '@nx/js:lib', options: { bundler: 'swc' } }],
},
},
workspace: {
apps: {
'hotel-host': 'mf:host:app',
mf_guest_services_remote: {
projectType: 'mf:remote:app',
options: {
'@nx/angular:remote': { host: 'hotel-host' },
},
},
mf_room_maintenance_remote: {
projectType: 'mf:remote:app',
options: {
'@nx/angular:remote': { host: 'hotel-host' },
},
},
mf_event_management_remote: {
projectType: 'mf:remote:app',
options: {
'@nx/angular:remote': { host: 'hotel-host' },
},
},
'admin-dashboard-app': 'global:angular:app',
},
libs: {
guest: {
'data-access': 'global:angular:lib:data-access',
'booking-feature': 'global:angular:lib:feature',
'feedback-feature': 'global:angular:lib:feature',
ui: 'global:angular:lib:ui',
utils: 'global:ts:lib:utils',
},
staff: {
'data-access': 'global:angular:lib:data-access',
'list-feature': 'global:angular:lib:feature',
'scheduling-feature': 'global:angular:lib:feature',
ui: 'global:angular:lib:ui',
utils: 'global:ts:lib:utils',
},
room: {
'data-access': 'global:angular:lib:data-access',
'list-feature': 'global:angular:lib:feature',
'request-feature': 'global:angular:lib:feature',
ui: 'global:angular:lib:ui',
utils: 'global:ts:lib:utils',
},
events: {
'data-access': 'global:angular:lib:data-access',
'booking-feature': 'global:angular:lib:feature',
'management-feature': 'global:angular:lib:feature',
ui: 'global:angular:lib:ui',
utils: 'global:ts:lib:utils',
},
shared: {
ui: {
projectType: 'global:angular:lib:ui:storybook',
options: {
'@nx/storybook:configuration': { project: 'shared-ui' },
},
},
utils: 'global:ts:lib:utils',
},
},
},
});