@nx/web 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.
Files changed (133) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/LICENSE +22 -0
  3. package/README.md +63 -0
  4. package/babel.d.ts +1 -0
  5. package/babel.js +7 -0
  6. package/babel.js.map +1 -0
  7. package/executors.json +46 -0
  8. package/generators.json +45 -0
  9. package/index.d.ts +3 -0
  10. package/index.js +10 -0
  11. package/index.js.map +1 -0
  12. package/migrations.json +90 -0
  13. package/package.json +47 -0
  14. package/src/executors/dev-server/compat.d.ts +2 -0
  15. package/src/executors/dev-server/compat.js +6 -0
  16. package/src/executors/dev-server/compat.js.map +1 -0
  17. package/src/executors/dev-server/dev-server.impl.d.ts +7 -0
  18. package/src/executors/dev-server/dev-server.impl.js +19 -0
  19. package/src/executors/dev-server/dev-server.impl.js.map +1 -0
  20. package/src/executors/dev-server/schema.json +81 -0
  21. package/src/executors/file-server/compat.d.ts +2 -0
  22. package/src/executors/file-server/compat.js +6 -0
  23. package/src/executors/file-server/compat.js.map +1 -0
  24. package/src/executors/file-server/file-server.impl.d.ts +8 -0
  25. package/src/executors/file-server/file-server.impl.js +181 -0
  26. package/src/executors/file-server/file-server.impl.js.map +1 -0
  27. package/src/executors/file-server/schema.d.ts +17 -0
  28. package/src/executors/file-server/schema.json +84 -0
  29. package/src/executors/rollup/compat.d.ts +2 -0
  30. package/src/executors/rollup/compat.js +6 -0
  31. package/src/executors/rollup/compat.js.map +1 -0
  32. package/src/executors/rollup/rollup.impl.d.ts +8 -0
  33. package/src/executors/rollup/rollup.impl.js +19 -0
  34. package/src/executors/rollup/rollup.impl.js.map +1 -0
  35. package/src/executors/rollup/schema.d.ts +29 -0
  36. package/src/executors/rollup/schema.json +153 -0
  37. package/src/executors/webpack/compat.d.ts +2 -0
  38. package/src/executors/webpack/compat.js +6 -0
  39. package/src/executors/webpack/compat.js.map +1 -0
  40. package/src/executors/webpack/schema.json +374 -0
  41. package/src/executors/webpack/webpack.impl.d.ts +7 -0
  42. package/src/executors/webpack/webpack.impl.js +19 -0
  43. package/src/executors/webpack/webpack.impl.js.map +1 -0
  44. package/src/generators/application/application.d.ts +5 -0
  45. package/src/generators/application/application.js +221 -0
  46. package/src/generators/application/application.js.map +1 -0
  47. package/src/generators/application/files/app-vite/.babelrc__tmpl__ +5 -0
  48. package/src/generators/application/files/app-vite/index.html__tmpl__ +16 -0
  49. package/src/generators/application/files/app-vite/public/favicon.ico +0 -0
  50. package/src/generators/application/files/app-vite/src/app/app.element.__style__ +416 -0
  51. package/src/generators/application/files/app-vite/src/app/app.element.spec.ts__tmpl__ +21 -0
  52. package/src/generators/application/files/app-vite/src/app/app.element.ts__tmpl__ +375 -0
  53. package/src/generators/application/files/app-vite/src/assets/.gitkeep +0 -0
  54. package/src/generators/application/files/app-vite/src/main.ts__tmpl__ +1 -0
  55. package/src/generators/application/files/app-vite/src/styles.__style__ +1 -0
  56. package/src/generators/application/files/app-vite/tsconfig.app.json +9 -0
  57. package/src/generators/application/files/app-vite/tsconfig.json__tmpl__ +27 -0
  58. package/src/generators/application/files/app-webpack/.babelrc__tmpl__ +5 -0
  59. package/src/generators/application/files/app-webpack/src/app/app.element.__style__ +416 -0
  60. package/src/generators/application/files/app-webpack/src/app/app.element.spec.ts__tmpl__ +21 -0
  61. package/src/generators/application/files/app-webpack/src/app/app.element.ts__tmpl__ +375 -0
  62. package/src/generators/application/files/app-webpack/src/assets/.gitkeep +0 -0
  63. package/src/generators/application/files/app-webpack/src/environments/environment.prod.ts__tmpl__ +3 -0
  64. package/src/generators/application/files/app-webpack/src/environments/environment.ts__tmpl__ +6 -0
  65. package/src/generators/application/files/app-webpack/src/favicon.ico +0 -0
  66. package/src/generators/application/files/app-webpack/src/index.html +14 -0
  67. package/src/generators/application/files/app-webpack/src/main.ts__tmpl__ +1 -0
  68. package/src/generators/application/files/app-webpack/src/styles.__style__ +1 -0
  69. package/src/generators/application/files/app-webpack/tsconfig.app.json +9 -0
  70. package/src/generators/application/files/app-webpack/tsconfig.json +10 -0
  71. package/src/generators/application/files/app-webpack/webpack.config.js__tmpl__ +8 -0
  72. package/src/generators/application/schema.d.ts +18 -0
  73. package/src/generators/application/schema.json +107 -0
  74. package/src/generators/init/init.d.ts +5 -0
  75. package/src/generators/init/init.js +57 -0
  76. package/src/generators/init/init.js.map +1 -0
  77. package/src/generators/init/schema.d.ts +8 -0
  78. package/src/generators/init/schema.json +45 -0
  79. package/src/generators/static-serve/schema.json +24 -0
  80. package/src/generators/static-serve/static-serve-configuration.d.ts +9 -0
  81. package/src/generators/static-serve/static-serve-configuration.js +72 -0
  82. package/src/generators/static-serve/static-serve-configuration.js.map +1 -0
  83. package/src/migrations/update-13-0-0/remove-deprecated-options-13-0-0.d.ts +2 -0
  84. package/src/migrations/update-13-0-0/remove-deprecated-options-13-0-0.js +34 -0
  85. package/src/migrations/update-13-0-0/remove-deprecated-options-13-0-0.js.map +1 -0
  86. package/src/migrations/update-13-0-0/remove-node-sass-13-0-0.d.ts +6 -0
  87. package/src/migrations/update-13-0-0/remove-node-sass-13-0-0.js +25 -0
  88. package/src/migrations/update-13-0-0/remove-node-sass-13-0-0.js.map +1 -0
  89. package/src/migrations/update-13-0-0/remove-webpack-5-packages-13-0-0.d.ts +2 -0
  90. package/src/migrations/update-13-0-0/remove-webpack-5-packages-13-0-0.js +33 -0
  91. package/src/migrations/update-13-0-0/remove-webpack-5-packages-13-0-0.js.map +1 -0
  92. package/src/migrations/update-13-3-0/rename-build-to-webpack.d.ts +2 -0
  93. package/src/migrations/update-13-3-0/rename-build-to-webpack.js +19 -0
  94. package/src/migrations/update-13-3-0/rename-build-to-webpack.js.map +1 -0
  95. package/src/migrations/update-13-3-0/rename-package-to-rollup.d.ts +2 -0
  96. package/src/migrations/update-13-3-0/rename-package-to-rollup.js +19 -0
  97. package/src/migrations/update-13-3-0/rename-package-to-rollup.js.map +1 -0
  98. package/src/migrations/update-13-8-0/add-postcss-config-option.d.ts +2 -0
  99. package/src/migrations/update-13-8-0/add-postcss-config-option.js +26 -0
  100. package/src/migrations/update-13-8-0/add-postcss-config-option.js.map +1 -0
  101. package/src/migrations/update-14-1-7/rollup-format-backwards-compatibility.d.ts +2 -0
  102. package/src/migrations/update-14-1-7/rollup-format-backwards-compatibility.js +23 -0
  103. package/src/migrations/update-14-1-7/rollup-format-backwards-compatibility.js.map +1 -0
  104. package/src/migrations/update-14-7-6/update-webpack-executor.d.ts +2 -0
  105. package/src/migrations/update-14-7-6/update-webpack-executor.js +27 -0
  106. package/src/migrations/update-14-7-6/update-webpack-executor.js.map +1 -0
  107. package/src/migrations/update-15-0-0/add-babel-inputs.d.ts +2 -0
  108. package/src/migrations/update-15-0-0/add-babel-inputs.js +13 -0
  109. package/src/migrations/update-15-0-0/add-babel-inputs.js.map +1 -0
  110. package/src/migrations/update-15-0-0/update-rollup-executor.d.ts +2 -0
  111. package/src/migrations/update-15-0-0/update-rollup-executor.js +38 -0
  112. package/src/migrations/update-15-0-0/update-rollup-executor.js.map +1 -0
  113. package/src/migrations/update-15-5-4/update-babel-preset.d.ts +2 -0
  114. package/src/migrations/update-15-5-4/update-babel-preset.js +37 -0
  115. package/src/migrations/update-15-5-4/update-babel-preset.js.map +1 -0
  116. package/src/migrations/update-15-9-1/add-dropped-dependencies.d.ts +2 -0
  117. package/src/migrations/update-15-9-1/add-dropped-dependencies.js +40 -0
  118. package/src/migrations/update-15-9-1/add-dropped-dependencies.js.map +1 -0
  119. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.d.ts +2 -0
  120. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +13 -0
  121. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js.map +1 -0
  122. package/src/plugins/webpack-nx-build-coordination-plugin.d.ts +1 -0
  123. package/src/plugins/webpack-nx-build-coordination-plugin.js +6 -0
  124. package/src/plugins/webpack-nx-build-coordination-plugin.js.map +1 -0
  125. package/src/utils/fs.d.ts +1 -0
  126. package/src/utils/fs.js +5 -0
  127. package/src/utils/fs.js.map +1 -0
  128. package/src/utils/normalize.d.ts +1 -0
  129. package/src/utils/normalize.js +5 -0
  130. package/src/utils/normalize.js.map +1 -0
  131. package/src/utils/versions.d.ts +4 -0
  132. package/src/utils/versions.js +8 -0
  133. package/src/utils/versions.js.map +1 -0
@@ -0,0 +1,375 @@
1
+ import './app.element.<%= style %>';
2
+
3
+ export class AppElement extends HTMLElement {
4
+ public static observedAttributes = [
5
+
6
+ ];
7
+
8
+ connectedCallback() {
9
+ const title = '<%= projectName %>';
10
+ this.innerHTML = `
11
+ <div class="wrapper">
12
+ <div class="container">
13
+ <!-- WELCOME -->
14
+ <div id="welcome">
15
+ <h1>
16
+ <span> Hello there, </span>
17
+ Welcome ${title} 👋
18
+ </h1>
19
+ </div>
20
+
21
+ <!-- HERO -->
22
+ <div id="hero" class="rounded">
23
+ <div class="text-container">
24
+ <h2>
25
+ <svg
26
+ fill="none"
27
+ stroke="currentColor"
28
+ viewBox="0 0 24 24"
29
+ xmlns="http://www.w3.org/2000/svg"
30
+ >
31
+ <path
32
+ stroke-linecap="round"
33
+ stroke-linejoin="round"
34
+ stroke-width="2"
35
+ d="M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"
36
+ />
37
+ </svg>
38
+ <span>You&apos;re up and running</span>
39
+ </h2>
40
+ <a href="#commands"> What&apos;s next? </a>
41
+ </div>
42
+ <div class="logo-container">
43
+ <svg
44
+ fill="currentColor"
45
+ role="img"
46
+ viewBox="0 0 24 24"
47
+ xmlns="http://www.w3.org/2000/svg"
48
+ >
49
+ <path
50
+ d="M11.987 14.138l-3.132 4.923-5.193-8.427-.012 8.822H0V4.544h3.691l5.247 8.833.005-3.998 3.044 4.759zm.601-5.761c.024-.048 0-3.784.008-3.833h-3.65c.002.059-.005 3.776-.003 3.833h3.645zm5.634 4.134a2.061 2.061 0 0 0-1.969 1.336 1.963 1.963 0 0 1 2.343-.739c.396.161.917.422 1.33.283a2.1 2.1 0 0 0-1.704-.88zm3.39 1.061c-.375-.13-.8-.277-1.109-.681-.06-.08-.116-.17-.176-.265a2.143 2.143 0 0 0-.533-.642c-.294-.216-.68-.322-1.18-.322a2.482 2.482 0 0 0-2.294 1.536 2.325 2.325 0 0 1 4.002.388.75.75 0 0 0 .836.334c.493-.105.46.36 1.203.518v-.133c-.003-.446-.246-.55-.75-.733zm2.024 1.266a.723.723 0 0 0 .347-.638c-.01-2.957-2.41-5.487-5.37-5.487a5.364 5.364 0 0 0-4.487 2.418c-.01-.026-1.522-2.39-1.538-2.418H8.943l3.463 5.423-3.379 5.32h3.54l1.54-2.366 1.568 2.366h3.541l-3.21-5.052a.7.7 0 0 1-.084-.32 2.69 2.69 0 0 1 2.69-2.691h.001c1.488 0 1.736.89 2.057 1.308.634.826 1.9.464 1.9 1.541a.707.707 0 0 0 1.066.596zm.35.133c-.173.372-.56.338-.755.639-.176.271.114.412.114.412s.337.156.538-.311c.104-.231.14-.488.103-.74z"
51
+ />
52
+ </svg>
53
+ </div>
54
+ </div>
55
+
56
+ <!-- MIDDLE CONTENT -->
57
+ <div id="middle-content">
58
+ <div id="learning-materials" class="rounded shadow">
59
+ <h2>Learning materials</h2>
60
+ <a href="https://nx.dev/getting-started/intro?utm_source=nx-project" target="_blank" rel="noreferrer" class="list-item-link">
61
+ <svg
62
+ fill="none"
63
+ stroke="currentColor"
64
+ viewBox="0 0 24 24"
65
+ xmlns="http://www.w3.org/2000/svg"
66
+ >
67
+ <path
68
+ stroke-linecap="round"
69
+ stroke-linejoin="round"
70
+ stroke-width="2"
71
+ d="M12 6.253v13m0-13C10.832 5.477 9.246 5 7.5 5S4.168 5.477 3 6.253v13C4.168 18.477 5.754 18 7.5 18s3.332.477 4.5 1.253m0-13C13.168 5.477 14.754 5 16.5 5c1.747 0 3.332.477 4.5 1.253v13C19.832 18.477 18.247 18 16.5 18c-1.746 0-3.332.477-4.5 1.253"
72
+ />
73
+ </svg>
74
+ <span>
75
+ Documentation
76
+ <span> Everything is in there </span>
77
+ </span>
78
+ <svg
79
+ fill="none"
80
+ stroke="currentColor"
81
+ viewBox="0 0 24 24"
82
+ xmlns="http://www.w3.org/2000/svg"
83
+ >
84
+ <path
85
+ stroke-linecap="round"
86
+ stroke-linejoin="round"
87
+ stroke-width="2"
88
+ d="M9 5l7 7-7 7"
89
+ />
90
+ </svg>
91
+ </a>
92
+ <a href="https://blog.nrwl.io/?utm_source=nx-project" target="_blank" rel="noreferrer" class="list-item-link">
93
+ <svg
94
+ fill="none"
95
+ stroke="currentColor"
96
+ viewBox="0 0 24 24"
97
+ xmlns="http://www.w3.org/2000/svg"
98
+ >
99
+ <path
100
+ stroke-linecap="round"
101
+ stroke-linejoin="round"
102
+ stroke-width="2"
103
+ d="M19 20H5a2 2 0 01-2-2V6a2 2 0 012-2h10a2 2 0 012 2v1m2 13a2 2 0 01-2-2V7m2 13a2 2 0 002-2V9a2 2 0 00-2-2h-2m-4-3H9M7 16h6M7 8h6v4H7V8z"
104
+ />
105
+ </svg>
106
+ <span>
107
+ Blog
108
+ <span> Changelog, features & events </span>
109
+ </span>
110
+ <svg
111
+ fill="none"
112
+ stroke="currentColor"
113
+ viewBox="0 0 24 24"
114
+ xmlns="http://www.w3.org/2000/svg"
115
+ >
116
+ <path
117
+ stroke-linecap="round"
118
+ stroke-linejoin="round"
119
+ stroke-width="2"
120
+ d="M9 5l7 7-7 7"
121
+ />
122
+ </svg>
123
+ </a>
124
+ <a href="https://www.youtube.com/@NxDevtools/videos?utm_source=nx-project&sub_confirmation=1" target="_blank" rel="noreferrer" class="list-item-link">
125
+ <svg
126
+ role="img"
127
+ viewBox="0 0 24 24"
128
+ fill="currentColor"
129
+ xmlns="http://www.w3.org/2000/svg"
130
+ >
131
+ <title>YouTube</title>
132
+ <path
133
+ d="M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z"
134
+ />
135
+ </svg>
136
+ <span>
137
+ YouTube channel
138
+ <span> Nx Show, talks & tutorials </span>
139
+ </span>
140
+ <svg
141
+ fill="none"
142
+ stroke="currentColor"
143
+ viewBox="0 0 24 24"
144
+ xmlns="http://www.w3.org/2000/svg"
145
+ >
146
+ <path
147
+ stroke-linecap="round"
148
+ stroke-linejoin="round"
149
+ stroke-width="2"
150
+ d="M9 5l7 7-7 7"
151
+ />
152
+ </svg>
153
+ </a>
154
+ <a href="https://nx.dev/react-tutorial/1-code-generation?utm_source=nx-project" target="_blank" rel="noreferrer" class="list-item-link">
155
+ <svg
156
+ fill="none"
157
+ stroke="currentColor"
158
+ viewBox="0 0 24 24"
159
+ xmlns="http://www.w3.org/2000/svg"
160
+ >
161
+ <path
162
+ stroke-linecap="round"
163
+ stroke-linejoin="round"
164
+ stroke-width="2"
165
+ d="M15 15l-2 5L9 9l11 4-5 2zm0 0l5 5M7.188 2.239l.777 2.897M5.136 7.965l-2.898-.777M13.95 4.05l-2.122 2.122m-5.657 5.656l-2.12 2.122"
166
+ />
167
+ </svg>
168
+ <span>
169
+ Interactive tutorials
170
+ <span> Create an app, step-by-step </span>
171
+ </span>
172
+ <svg
173
+ fill="none"
174
+ stroke="currentColor"
175
+ viewBox="0 0 24 24"
176
+ xmlns="http://www.w3.org/2000/svg"
177
+ >
178
+ <path
179
+ stroke-linecap="round"
180
+ stroke-linejoin="round"
181
+ stroke-width="2"
182
+ d="M9 5l7 7-7 7"
183
+ />
184
+ </svg>
185
+ </a>
186
+ <a href="https://nxplaybook.com/?utm_source=nx-project" target="_blank" rel="noreferrer" class="list-item-link">
187
+ <svg
188
+ fill="none"
189
+ stroke="currentColor"
190
+ viewBox="0 0 24 24"
191
+ xmlns="http://www.w3.org/2000/svg"
192
+ >
193
+ <path d="M12 14l9-5-9-5-9 5 9 5z" />
194
+ <path
195
+ d="M12 14l6.16-3.422a12.083 12.083 0 01.665 6.479A11.952 11.952 0 0012 20.055a11.952 11.952 0 00-6.824-2.998 12.078 12.078 0 01.665-6.479L12 14z"
196
+ />
197
+ <path
198
+ stroke-linecap="round"
199
+ stroke-linejoin="round"
200
+ stroke-width="2"
201
+ d="M12 14l9-5-9-5-9 5 9 5zm0 0l6.16-3.422a12.083 12.083 0 01.665 6.479A11.952 11.952 0 0012 20.055a11.952 11.952 0 00-6.824-2.998 12.078 12.078 0 01.665-6.479L12 14zm-4 6v-7.5l4-2.222"
202
+ />
203
+ </svg>
204
+ <span>
205
+ Video courses
206
+ <span> Nx custom courses </span>
207
+ </span>
208
+ <svg
209
+ fill="none"
210
+ stroke="currentColor"
211
+ viewBox="0 0 24 24"
212
+ xmlns="http://www.w3.org/2000/svg"
213
+ >
214
+ <path
215
+ stroke-linecap="round"
216
+ stroke-linejoin="round"
217
+ stroke-width="2"
218
+ d="M9 5l7 7-7 7"
219
+ />
220
+ </svg>
221
+ </a>
222
+ </div>
223
+ <div id="other-links">
224
+ <a id="nx-console" class="button-pill rounded shadow" href="https://marketplace.visualstudio.com/items?itemName=nrwl.angular-console&utm_source=nx-project" target="_blank" rel="noreferrer">
225
+ <svg
226
+ fill="currentColor"
227
+ role="img"
228
+ viewBox="0 0 24 24"
229
+ xmlns="http://www.w3.org/2000/svg"
230
+ >
231
+ <title>Visual Studio Code</title>
232
+ <path
233
+ d="M23.15 2.587L18.21.21a1.494 1.494 0 0 0-1.705.29l-9.46 8.63-4.12-3.128a.999.999 0 0 0-1.276.057L.327 7.261A1 1 0 0 0 .326 8.74L3.899 12 .326 15.26a1 1 0 0 0 .001 1.479L1.65 17.94a.999.999 0 0 0 1.276.057l4.12-3.128 9.46 8.63a1.492 1.492 0 0 0 1.704.29l4.942-2.377A1.5 1.5 0 0 0 24 20.06V3.939a1.5 1.5 0 0 0-.85-1.352zm-5.146 14.861L10.826 12l7.178-5.448v10.896z"
234
+ />
235
+ </svg>
236
+ <span>
237
+ Install Nx Console
238
+ <span>Plugin for VSCode</span>
239
+ </span>
240
+ </a>
241
+ <div id="nx-cloud" class="rounded shadow">
242
+ <div>
243
+ <svg id="nx-cloud-logo" role="img" xmlns="http://www.w3.org/2000/svg" stroke="currentColor" fill="transparent" viewBox="0 0 24 24">
244
+ <path stroke-width="2" d="M23 3.75V6.5c-3.036 0-5.5 2.464-5.5 5.5s-2.464 5.5-5.5 5.5-5.5 2.464-5.5 5.5H3.75C2.232 23 1 21.768 1 20.25V3.75C1 2.232 2.232 1 3.75 1h16.5C21.768 1 23 2.232 23 3.75Z" />
245
+ <path stroke-width="2" d="M23 6v14.1667C23 21.7307 21.7307 23 20.1667 23H6c0-3.128 2.53867-5.6667 5.6667-5.6667 3.128 0 5.6666-2.5386 5.6666-5.6666C17.3333 8.53867 19.872 6 23 6Z" />
246
+ </svg>
247
+ <h2>
248
+ NxCloud
249
+ <span>
250
+ Enable faster CI & better DX
251
+ </span>
252
+ </h2>
253
+ </div>
254
+ <p>
255
+ You can activate distributed tasks executions and caching by
256
+ running:
257
+ </p>
258
+ <pre>nx connect-to-nx-cloud</pre>
259
+ <a href="https://nx.app/?utm_source=nx-project" target="_blank" rel="noreferrer"> What is Nx Cloud? </a>
260
+ </div>
261
+ <a id="nx-repo" class="button-pill rounded shadow" href="https://github.com/nrwl/nx?utm_source=nx-project" target="_blank" rel="noreferrer">
262
+ <svg
263
+ fill="currentColor"
264
+ role="img"
265
+ viewBox="0 0 24 24"
266
+ xmlns="http://www.w3.org/2000/svg"
267
+ >
268
+ <path
269
+ d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"
270
+ />
271
+ </svg>
272
+ <span>
273
+ Nx is open source
274
+ <span> Love Nx? Give us a star! </span>
275
+ </span>
276
+ </a>
277
+ </div>
278
+ </div>
279
+
280
+ <!-- COMMANDS -->
281
+ <div id="commands" class="rounded shadow">
282
+ <h2>Next steps</h2>
283
+ <p>Here are some things you can do with Nx:</p>
284
+ <details>
285
+ <summary>
286
+ <svg
287
+ fill="none"
288
+ stroke="currentColor"
289
+ viewBox="0 0 24 24"
290
+ xmlns="http://www.w3.org/2000/svg"
291
+ >
292
+ <path
293
+ stroke-linecap="round"
294
+ stroke-linejoin="round"
295
+ stroke-width="2"
296
+ d="M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"
297
+ />
298
+ </svg>
299
+ Add UI library
300
+ </summary>
301
+ <pre><span># Generate UI lib</span>
302
+ nx g @nrwl/angular:lib ui
303
+
304
+ <span># Add a component</span>
305
+ nx g @nrwl/angular:component button --project ui</pre>
306
+ </details>
307
+ <details>
308
+ <summary>
309
+ <svg
310
+ fill="none"
311
+ stroke="currentColor"
312
+ viewBox="0 0 24 24"
313
+ xmlns="http://www.w3.org/2000/svg"
314
+ >
315
+ <path
316
+ stroke-linecap="round"
317
+ stroke-linejoin="round"
318
+ stroke-width="2"
319
+ d="M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"
320
+ />
321
+ </svg>
322
+ View interactive project graph
323
+ </summary>
324
+ <pre>nx graph</pre>
325
+ </details>
326
+ <details>
327
+ <summary>
328
+ <svg
329
+ fill="none"
330
+ stroke="currentColor"
331
+ viewBox="0 0 24 24"
332
+ xmlns="http://www.w3.org/2000/svg"
333
+ >
334
+ <path
335
+ stroke-linecap="round"
336
+ stroke-linejoin="round"
337
+ stroke-width="2"
338
+ d="M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"
339
+ />
340
+ </svg>
341
+ Run affected commands
342
+ </summary>
343
+ <pre><span># see what&apos;s been affected by changes</span>
344
+ nx affected:graph
345
+
346
+ <span># run tests for current changes</span>
347
+ nx affected:test
348
+
349
+ <span># run e2e tests for current changes</span>
350
+ nx affected:e2e</pre>
351
+ </details>
352
+ </div>
353
+
354
+ <p id="love">
355
+ Carefully crafted with
356
+ <svg
357
+ fill="currentColor"
358
+ stroke="none"
359
+ viewBox="0 0 24 24"
360
+ xmlns="http://www.w3.org/2000/svg"
361
+ >
362
+ <path
363
+ stroke-linecap="round"
364
+ stroke-linejoin="round"
365
+ stroke-width="2"
366
+ d="M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z"
367
+ />
368
+ </svg>
369
+ </p>
370
+ </div>
371
+ </div>
372
+ `;
373
+ }
374
+ }
375
+ customElements.define('<%= prefix %>-root', AppElement);
@@ -0,0 +1,3 @@
1
+ export const environment = {
2
+ production: true
3
+ };
@@ -0,0 +1,6 @@
1
+ // This file can be replaced during build by using the `fileReplacements` array.
2
+ // When building for production, this file is replaced with `environment.prod.ts`.
3
+
4
+ export const environment = {
5
+ production: false
6
+ };
@@ -0,0 +1,14 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title><%= className %></title>
6
+ <base href="/" />
7
+
8
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
9
+ <link rel="icon" type="image/x-icon" href="favicon.ico" />
10
+ </head>
11
+ <body>
12
+ <<%= prefix %>-root></<%= prefix %>-root>
13
+ </body>
14
+ </html>
@@ -0,0 +1 @@
1
+ import './app/app.element.ts';
@@ -0,0 +1 @@
1
+ /* You can add global styles to this file, and also import other style files */
@@ -0,0 +1,9 @@
1
+ {
2
+ "extends": "./tsconfig.json",
3
+ "compilerOptions": {
4
+ "outDir": "<%= offsetFromRoot %>dist/out-tsc",
5
+ "types": ["node"]
6
+ },
7
+ "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"],
8
+ "include": ["src/**/*.ts"]
9
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "extends": "<%= rootTsConfigPath %>",
3
+ "files": [],
4
+ "include": [],
5
+ "references": [
6
+ {
7
+ "path": "./tsconfig.app.json"
8
+ }
9
+ ]
10
+ }
@@ -0,0 +1,8 @@
1
+ const { composePlugins, withNx, withWeb } = require('@nrwl/webpack');
2
+
3
+ // Nx plugins for webpack.
4
+ module.exports = composePlugins(withNx(), withWeb(), (config) => {
5
+ // Update the webpack config as needed here.
6
+ // e.g. `config.plugins.push(new MyPlugin())`
7
+ return config;
8
+ });
@@ -0,0 +1,18 @@
1
+ import type { Linter } from '@nx/linter';
2
+
3
+ export interface Schema {
4
+ name: string;
5
+ prefix?: string;
6
+ style?: string;
7
+ bundler?: 'webpack' | 'none' | 'vite';
8
+ compiler?: 'babel' | 'swc';
9
+ skipFormat?: boolean;
10
+ directory?: string;
11
+ tags?: string;
12
+ unitTestRunner?: 'jest' | 'vitest' | 'none';
13
+ inSourceTests?: boolean;
14
+ e2eTestRunner?: 'cypress' | 'none';
15
+ linter?: Linter;
16
+ standaloneConfig?: boolean;
17
+ setParserOptionsProject?: boolean;
18
+ }
@@ -0,0 +1,107 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "cli": "nx",
4
+ "$id": "NxWebApp",
5
+ "title": "Create a Web Application for Nx",
6
+ "description": "Create a web application using `swc` or `babel` as compiler.",
7
+ "type": "object",
8
+ "properties": {
9
+ "name": {
10
+ "description": "The name of the application.",
11
+ "type": "string",
12
+ "$default": {
13
+ "$source": "argv",
14
+ "index": 0
15
+ },
16
+ "x-prompt": "What name would you like to use for the application?",
17
+ "pattern": "^[a-zA-Z].*$"
18
+ },
19
+ "directory": {
20
+ "description": "The directory of the new application.",
21
+ "type": "string"
22
+ },
23
+ "style": {
24
+ "description": "The file extension to be used for style files.",
25
+ "type": "string",
26
+ "default": "css",
27
+ "x-prompt": {
28
+ "message": "Which stylesheet format would you like to use?",
29
+ "type": "list",
30
+ "items": [
31
+ {
32
+ "value": "css",
33
+ "label": "CSS"
34
+ },
35
+ {
36
+ "value": "scss",
37
+ "label": "SASS(.scss) [ http://sass-lang.com ]"
38
+ },
39
+ {
40
+ "value": "less",
41
+ "label": "LESS [ http://lesscss.org ]"
42
+ }
43
+ ]
44
+ }
45
+ },
46
+ "compiler": {
47
+ "type": "string",
48
+ "description": "The compiler to use",
49
+ "enum": ["babel", "swc"],
50
+ "default": "babel",
51
+ "x-priority": "important"
52
+ },
53
+ "bundler": {
54
+ "type": "string",
55
+ "description": "The bundler to use.",
56
+ "enum": ["webpack", "none", "vite"],
57
+ "default": "webpack",
58
+ "x-prompt": "Which bundler do you want to use?",
59
+ "x-priority": "important"
60
+ },
61
+ "linter": {
62
+ "description": "The tool to use for running lint checks.",
63
+ "type": "string",
64
+ "enum": ["eslint", "none"],
65
+ "default": "eslint"
66
+ },
67
+ "skipFormat": {
68
+ "description": "Skip formatting files",
69
+ "type": "boolean",
70
+ "default": false,
71
+ "x-priority": "internal"
72
+ },
73
+ "unitTestRunner": {
74
+ "type": "string",
75
+ "enum": ["jest", "vitest", "none"],
76
+ "description": "Test runner to use for unit tests. Default value is 'jest' when using 'webpack' or 'none' as the bundler and 'vitest' when using 'vite' as the bundler"
77
+ },
78
+ "inSourceTests": {
79
+ "type": "boolean",
80
+ "default": false,
81
+ "description": "When using Vitest, separate spec files will not be generated and instead will be included within the source files."
82
+ },
83
+ "e2eTestRunner": {
84
+ "type": "string",
85
+ "enum": ["cypress", "none"],
86
+ "description": "Test runner to use for end to end (e2e) tests",
87
+ "default": "cypress"
88
+ },
89
+ "tags": {
90
+ "type": "string",
91
+ "description": "Add tags to the application (used for linting)"
92
+ },
93
+ "setParserOptionsProject": {
94
+ "type": "boolean",
95
+ "description": "Whether or not to configure the ESLint `parserOptions.project` option. We do not do this by default for lint performance reasons.",
96
+ "default": false
97
+ },
98
+ "standaloneConfig": {
99
+ "description": "Split the project configuration into `<projectRoot>/project.json` rather than including it inside workspace.json",
100
+ "type": "boolean",
101
+ "default": true,
102
+ "x-deprecated": "Nx only supports standaloneConfig"
103
+ }
104
+ },
105
+ "required": ["name"],
106
+ "examplesFile": "../../../docs/application-examples.md"
107
+ }
@@ -0,0 +1,5 @@
1
+ import { GeneratorCallback, Tree } from '@nx/devkit';
2
+ import { Schema } from './schema';
3
+ export declare function webInitGenerator(tree: Tree, schema: Schema): Promise<GeneratorCallback>;
4
+ export default webInitGenerator;
5
+ export declare const webInitSchematic: (generatorOptions: Schema) => (tree: any, context: any) => Promise<any>;
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.webInitSchematic = exports.webInitGenerator = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const devkit_1 = require("@nx/devkit");
6
+ const add_babel_inputs_1 = require("@nx/js/src/utils/add-babel-inputs");
7
+ const js_1 = require("@nx/js");
8
+ const versions_1 = require("../../utils/versions");
9
+ function updateDependencies(tree, schema) {
10
+ (0, devkit_1.removeDependenciesFromPackageJson)(tree, ['@nrwl/web'], []);
11
+ const devDependencies = {
12
+ '@nrwl/web': versions_1.nxVersion,
13
+ '@types/node': versions_1.typesNodeVersion,
14
+ };
15
+ return (0, devkit_1.addDependenciesToPackageJson)(tree, {
16
+ 'core-js': '^3.6.5',
17
+ 'regenerator-runtime': '0.13.7',
18
+ tslib: versions_1.tsLibVersion,
19
+ }, devDependencies);
20
+ }
21
+ function webInitGenerator(tree, schema) {
22
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
23
+ const tasks = [];
24
+ const jsInitTask = yield (0, js_1.initGenerator)(tree, {
25
+ js: false,
26
+ skipFormat: true,
27
+ });
28
+ tasks.push(jsInitTask);
29
+ if (!schema.unitTestRunner || schema.unitTestRunner === 'jest') {
30
+ const { jestInitGenerator } = yield (0, devkit_1.ensurePackage)('@nx/jest', versions_1.nxVersion);
31
+ const jestTask = yield jestInitGenerator(tree, {
32
+ skipPackageJson: schema.skipPackageJson,
33
+ });
34
+ tasks.push(jestTask);
35
+ }
36
+ if (!schema.e2eTestRunner || schema.e2eTestRunner === 'cypress') {
37
+ const { cypressInitGenerator } = yield (0, devkit_1.ensurePackage)('@nx/cypress', versions_1.nxVersion);
38
+ const cypressTask = yield cypressInitGenerator(tree, {
39
+ skipPackageJson: schema.skipPackageJson,
40
+ });
41
+ tasks.push(cypressTask);
42
+ }
43
+ if (!schema.skipPackageJson) {
44
+ const installTask = updateDependencies(tree, schema);
45
+ tasks.push(installTask);
46
+ }
47
+ (0, add_babel_inputs_1.addBabelInputs)(tree);
48
+ if (!schema.skipFormat) {
49
+ yield (0, devkit_1.formatFiles)(tree);
50
+ }
51
+ return (0, devkit_1.runTasksInSerial)(...tasks);
52
+ });
53
+ }
54
+ exports.webInitGenerator = webInitGenerator;
55
+ exports.default = webInitGenerator;
56
+ exports.webInitSchematic = (0, devkit_1.convertNxGenerator)(webInitGenerator);
57
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../packages/web/src/generators/init/init.ts"],"names":[],"mappings":";;;;AAAA,uCASoB;AAEpB,wEAAmE;AACnE,+BAA0D;AAC1D,mDAI8B;AAG9B,SAAS,kBAAkB,CAAC,IAAU,EAAE,MAAc;IACpD,IAAA,0CAAiC,EAAC,IAAI,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3D,MAAM,eAAe,GAAG;QACtB,WAAW,EAAE,oBAAS;QACtB,aAAa,EAAE,2BAAgB;KAChC,CAAC;IAEF,OAAO,IAAA,qCAA4B,EACjC,IAAI,EACJ;QACE,SAAS,EAAE,QAAQ;QACnB,qBAAqB,EAAE,QAAQ;QAC/B,KAAK,EAAE,uBAAY;KACpB,EACD,eAAe,CAChB,CAAC;AACJ,CAAC;AAED,SAAsB,gBAAgB,CAAC,IAAU,EAAE,MAAc;;QAC/D,MAAM,KAAK,GAAwB,EAAE,CAAC;QAEtC,MAAM,UAAU,GAAG,MAAM,IAAA,kBAAe,EAAC,IAAI,EAAE;YAC7C,EAAE,EAAE,KAAK;YACT,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEvB,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,cAAc,KAAK,MAAM,EAAE;YAC9D,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,IAAA,sBAAa,EAAC,UAAU,EAAE,oBAAS,CAAC,CAAC;YACzE,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE;gBAC7C,eAAe,EAAE,MAAM,CAAC,eAAe;aACxC,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACtB;QACD,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,EAAE;YAC/D,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,IAAA,sBAAa,EAClD,aAAa,EACb,oBAAS,CACV,CAAC;YACF,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAAC,IAAI,EAAE;gBACnD,eAAe,EAAE,MAAM,CAAC,eAAe;aACxC,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SACzB;QACD,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;YAC3B,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACrD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SACzB;QACD,IAAA,iCAAc,EAAC,IAAI,CAAC,CAAC;QAErB,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YACtB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QACD,OAAO,IAAA,yBAAgB,EAAC,GAAG,KAAK,CAAC,CAAC;IACpC,CAAC;CAAA;AApCD,4CAoCC;AAED,kBAAe,gBAAgB,CAAC;AACnB,QAAA,gBAAgB,GAAG,IAAA,2BAAkB,EAAC,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ export interface Schema {
2
+ bundler?: 'webpack' | 'none' | 'vite';
3
+ unitTestRunner?: 'jest' | 'vitest' | 'none';
4
+ e2eTestRunner?: 'cypress' | 'none';
5
+ skipFormat?: boolean;
6
+ skipPackageJson?: boolean;
7
+ skipBabelConfig?: boolean;
8
+ }