generator-nitro 7.5.4 → 8.0.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.
Files changed (32) hide show
  1. package/generators/app/index.js +0 -2
  2. package/generators/app/templates/.node-version +1 -1
  3. package/generators/app/templates/CUTAWAYpackage.json +22 -29
  4. package/generators/app/templates/project/docs/nitro.md +1 -5
  5. package/generators/app/templates/project/routes/_themes.js +1 -1
  6. package/generators/app/templates/project/routes/countries.js +6 -3
  7. package/generators/app/templates/project/routes/lottie.js +6 -3
  8. package/generators/app/templates/readme.md +0 -4
  9. package/generators/app/templates/src/patterns/atoms/button/css/button.scss +3 -1
  10. package/generators/app/templates/src/patterns/atoms/cta/css/cta.scss +3 -1
  11. package/generators/app/templates/src/patterns/atoms/stage/css/stage.scss +15 -3
  12. package/generators/app/templates/src/patterns/molecules/example/js/example.js +2 -2
  13. package/generators/app/templates/src/patterns/molecules/example/js/example.ts +2 -2
  14. package/generators/app/templates/src/proto/utils/develop-helpers/index.js +0 -2
  15. package/generators/app/templates/src/proto/utils/develop-helpers/index.ts +0 -2
  16. package/generators/app/templates/src/proto/utils/develop-helpers/js/key1Breakpoint.js +1 -1
  17. package/generators/app/templates/src/proto/utils/develop-helpers/js/key1Breakpoint.ts +1 -1
  18. package/generators/app/templates/src/proto/utils/develop-helpers/js/key2BootstrapGrid.js +1 -1
  19. package/generators/app/templates/src/proto/utils/develop-helpers/js/key2BootstrapGrid.ts +1 -1
  20. package/generators/app/templates/src/proto/utils/develop-helpers/readme.md +0 -1
  21. package/generators/app/templates/src/shared/base/webfonts/css/webfont-gaegu.scss +12 -3
  22. package/generators/app/templates/src/shared/base/webfonts/css/webfont-playfair-display.scss +12 -4
  23. package/generators/app/templates/tests/backstop/engine_scripts/puppet/loadCookies.js +33 -33
  24. package/package.json +6 -6
  25. package/readme.md +1 -1
  26. package/generators/app/templates/.dockerignore +0 -10
  27. package/generators/app/templates/docker-compose-dev.yml +0 -13
  28. package/generators/app/templates/docker-compose.yml +0 -9
  29. package/generators/app/templates/project/docs/nitro-docker.md +0 -35
  30. package/generators/app/templates/src/proto/utils/develop-helpers/css/key4Tota11y.scss +0 -5
  31. package/generators/app/templates/src/proto/utils/develop-helpers/js/key4Tota11y.js +0 -24
  32. package/generators/app/templates/src/proto/utils/develop-helpers/js/key4Tota11y.ts +0 -24
@@ -316,8 +316,6 @@ module.exports = class extends Generator {
316
316
  'src/proto.ts',
317
317
  'tests/cypress/cypress/e2e/examples/index.cy.js',
318
318
  '.eslintrc.js',
319
- 'docker-compose.yml',
320
- 'docker-compose-dev.yml',
321
319
  'gulpfile.js',
322
320
  'CUTAWAYpackage.json',
323
321
  ];
@@ -1 +1 @@
1
- 18.17.0
1
+ 18.17.1
@@ -6,8 +6,8 @@
6
6
  "private": true,
7
7
  "author": "The Nitro Team",
8
8
  "engines": {
9
- "node": ">=14.15.0 <19",
10
- "npm": ">=6.14.8 <10"
9
+ "node": ">=16.13.0 <19",
10
+ "npm": ">=8.1.0 <10"
11
11
  },
12
12
  "scripts": {
13
13
  "\n# PROJECT ------- ": "",
@@ -66,14 +66,8 @@
66
66
  "prod:serve": "cross-env NODE_ENV=production nitro-app-serve",<% if (options.themes) { %>
67
67
  "start": "npm run start:light",
68
68
  "start:light": "cross-env THEME=light PORT=8081 PROXY=8082 npm run dev",
69
- "start:dark": "cross-env THEME=dark PORT=8083 PROXY=8084 npm run dev",<% } else { %>
70
- "start": "npm run dev",<% } %>
71
- "\n# DOCKER ------- ": "",
72
- "docker:update": "docker-compose build",
73
- "docker:start": "npm run docker:dev:start",
74
- "docker:dev:start": "docker-compose -f docker-compose-dev.yml up",
75
- "docker:dev:console": "docker exec -it <%= name %>_server-dev bash",
76
- "docker:prod": "docker-compose up"
69
+ "start:dark": "cross-env THEME=dark PORT=8083 PROXY=8084 npm run dev"<% } else { %>
70
+ "start": "npm run dev"<% } %>
77
71
  },
78
72
  "keywords": [
79
73
  "frontend",
@@ -86,32 +80,31 @@
86
80
  "dependencies": {<% if (options.exampleCode) { %>
87
81
  "@gondel/core": "1.2.8",
88
82
  "@gondel/plugin-hot": "1.2.8",
89
- "bootstrap": "5.3.0",<% } %>
90
- "core-js": "3.31.1"<% if (options.exampleCode) { %>,
83
+ "bootstrap": "5.3.1",<% } %>
84
+ "core-js": "3.32.1"<% if (options.exampleCode) { %>,
91
85
  "flatpickr": "4.6.13",
92
- "handlebars": "4.7.7",
86
+ "handlebars": "4.7.8",
93
87
  "jquery": "3.7.0",
94
88
  "lazysizes": "5.3.2",
95
89
  "lottie-web": "5.12.2",
96
90
  "prevent-window-opener-attacks": "0.3.1"<% } %><% if (options.jsCompiler === 'js') { %>,
97
- "regenerator-runtime": "0.13.11"<% } %><% if (options.exampleCode) { %>,
91
+ "regenerator-runtime": "0.14.0"<% } %><% if (options.exampleCode) { %>,
98
92
  "svg4everybody": "2.1.9"<% } %>
99
93
  },
100
94
  "devDependencies": {<% if (options.jsCompiler === 'js') { %>
101
- "@babel/eslint-parser": "7.22.9",<% } %>
102
- "@khanacademy/tota11y": "0.2.0",
103
- "@merkle-open/eslint-config": "1.0.0",
95
+ "@babel/eslint-parser": "7.22.10",<% } %>
96
+ "@merkle-open/eslint-config": "3.0.0",
104
97
  "@merkle-open/html-validate-config": "1.0.1",
105
- "@merkle-open/prettier-config": "1.1.0",
106
- "@merkle-open/stylelint-config": "3.0.0",
98
+ "@merkle-open/prettier-config": "1.2.0",
99
+ "@merkle-open/stylelint-config": "3.1.0",
107
100
  "@merkle-open/ts-config": "1.1.0",
108
101
  "@nitro/app": "<%= version %>",
109
102
  "@nitro/exporter": "<%= version %>",
110
103
  "@nitro/gulp": "<%= version %>",
111
104
  "@nitro/webpack": "<%= version %>",
112
- "@playwright/test": "1.36.1",<% if (options.jsCompiler === 'ts') { %>
105
+ "@playwright/test": "1.37.1",<% if (options.jsCompiler === 'ts') { %>
113
106
  "@types/bootstrap": "5.2.6",<% if (options.exampleCode ) { %>
114
- "@types/jquery": "3.5.16",<% } %>
107
+ "@types/jquery": "3.5.17",<% } %>
115
108
  "@types/svg4everybody": "2.1.2",
116
109
  "@types/webpack-env": "1.18.1",<% } %>
117
110
  "backstopjs": "6.2.2",
@@ -119,25 +112,25 @@
119
112
  "commitizen": "4.3.0",
120
113
  "config": "3.3.9",
121
114
  "cross-env": "7.0.3",
122
- "cypress": "12.17.2",
115
+ "cypress": "12.17.4",
123
116
  "cz-conventional-changelog": "3.3.0",
124
117
  "env-linter": "1.0.0",
125
- "eslint": "7.32.0",
126
- "eslint-plugin-import": "2.27.5",
118
+ "eslint": "8.46.0",
119
+ "eslint-plugin-import": "2.28.1",
127
120
  "extend": "3.0.2",
128
121
  "generator-nitro": "<%= version %>",
129
122
  "gulp": "4.0.2",
130
123
  "html-validate": "7.18.1",
131
124
  "husky": "8.0.3",
132
125
  "license-checker": "25.0.1",
133
- "lighthouse": "10.4.0",
134
- "lint-staged": "13.2.3",<% if (options.themes) { %>
126
+ "lighthouse": "11.0.0",
127
+ "lint-staged": "14.0.1",<% if (options.themes) { %>
135
128
  "node-sass": "8.0.0",<% } %>
136
- "npm-check-updates": "16.10.16",
129
+ "npm-check-updates": "16.13.0",
137
130
  "npm-run-all": "4.1.5",
138
- "prettier": "2.8.8",
131
+ "prettier": "3.0.2",
139
132
  "rimraf": "5.0.1",
140
- "stylelint": "15.10.2",<% if (options.jsCompiler === 'ts') { %>
133
+ "stylelint": "15.10.3",<% if (options.jsCompiler === 'ts') { %>
141
134
  "typescript": "5.1.6",<% } %>
142
135
  "webpack-cli": "4.10.0",
143
136
  "yo": "4.3.1"
@@ -22,7 +22,7 @@ Nitro is simple, fast and flexible. Use this app for all your frontend work.
22
22
  This application was created by the yeoman generator for nitro.
23
23
  Before using, you need of course [node](https://nodejs.org/) installed.
24
24
  Nitro is tested with the current ["Active" LTS version](https://github.com/nodejs/Release#release-schedule)
25
- and with the LTS maintenance versions (release 16.x and 14.x).
25
+ and with the LTS maintenance versions.
26
26
 
27
27
  Install the project dependencies in the project root:
28
28
 
@@ -72,10 +72,6 @@ set PORT=8000 && set PROXY=8001 && npm start
72
72
  set PORT=3001 && npm run prod
73
73
  ```
74
74
 
75
- ### Usage with docker
76
-
77
- For information on how to use Nitro with docker, please refer to [nitro-docker.md](./nitro-docker.md).
78
-
79
75
  ## Configuring
80
76
 
81
77
  ### Config Package
@@ -52,7 +52,7 @@ module.exports = (app) => {
52
52
  cookieSession({
53
53
  name: 'theme',
54
54
  keys: ['keeeeeeeeeeey', 'schlüssel'],
55
- })
55
+ }),
56
56
  );
57
57
 
58
58
  for (const theme of validThemes) {
@@ -28,9 +28,12 @@ function search(req, res, next) {
28
28
  items = items.filter((item) => regex.test(item.name) || regex.test(item.code));
29
29
  }
30
30
 
31
- setTimeout(() => {
32
- return res.json(items);
33
- }, utils.getRandomInt(250, 1000));
31
+ setTimeout(
32
+ () => {
33
+ return res.json(items);
34
+ },
35
+ utils.getRandomInt(250, 1000),
36
+ );
34
37
  }
35
38
 
36
39
  module.exports = (app) => {
@@ -19,9 +19,12 @@ function animation(req, res, next) {
19
19
  data = JSON.parse(fs.readFileSync(file));
20
20
  }
21
21
 
22
- setTimeout(() => {
23
- return res.json(data);
24
- }, utils.getRandomInt(250, 1000));
22
+ setTimeout(
23
+ () => {
24
+ return res.json(data);
25
+ },
26
+ utils.getRandomInt(250, 1000),
27
+ );
25
28
  }
26
29
 
27
30
  module.exports = (app) => {
@@ -25,10 +25,6 @@ and start in development mode
25
25
  npm start
26
26
  ```
27
27
 
28
- ### Usage with docker (experimental)
29
-
30
- For information on how to use Nitro with docker, please refer to [nitro-docker.md](./project/docs/nitro-docker.md).
31
-
32
28
  ## Nitro
33
29
 
34
30
  For information on how to use Nitro, please refer to [nitro.md](./project/docs/nitro.md).
@@ -15,7 +15,9 @@
15
15
  margin: 1rem 0;
16
16
  outline: none;
17
17
  position: relative;
18
- transition: transform 0.3s ease, box-shadow 0.3s ease;
18
+ transition:
19
+ transform 0.3s ease,
20
+ box-shadow 0.3s ease;
19
21
 
20
22
  &[disabled] {
21
23
  opacity: 0.4;
@@ -84,7 +84,9 @@
84
84
  bottom: -1.3em;
85
85
  width: 100%;
86
86
 
87
- transition: color 0.3s ease-in, opacity 0.3s ease-in;
87
+ transition:
88
+ color 0.3s ease-in,
89
+ opacity 0.3s ease-in;
88
90
  }
89
91
 
90
92
  @keyframes animation-a-cta--pulse-m {
@@ -7,7 +7,11 @@
7
7
  height: 190px;
8
8
  background-image: url('../img/space-ship.svg'), url('../img/satellite.svg'), url('../img/ufo.svg'),
9
9
  url('../img/clouds.png');
10
- background-position: 10vw 200px, 50% 200px, 70% -100px, 0 0;
10
+ background-position:
11
+ 10vw 200px,
12
+ 50% 200px,
13
+ 70% -100px,
14
+ 0 0;
11
15
  background-size: 8vw, 5vw, 7vw, auto;
12
16
  background-repeat: no-repeat, no-repeat, no-repeat, repeat-x;
13
17
 
@@ -16,9 +20,17 @@
16
20
 
17
21
  @keyframes a-stage-sky {
18
22
  from {
19
- background-position: 10vw 600px, 50% 200px, 70% -170px, 0 0;
23
+ background-position:
24
+ 10vw 600px,
25
+ 50% 200px,
26
+ 70% -170px,
27
+ 0 0;
20
28
  }
21
29
  to {
22
- background-position: 20vw -200px, 120% -100px, 30% 300px, 100% 0;
30
+ background-position:
31
+ 20vw -200px,
32
+ 120% -100px,
33
+ 30% 300px,
34
+ 100% 0;
23
35
  }
24
36
  }
@@ -24,12 +24,12 @@ class Example extends GondelBaseComponent {
24
24
  console.log(
25
25
  'everything ok?'.startsWith('every')
26
26
  ? 'ES2015/ES6 startWith string method works'
27
- : 'broken ES2015/ES6 startWith string method'
27
+ : 'broken ES2015/ES6 startWith string method',
28
28
  );
29
29
  console.log(
30
30
  [2, 4, 16, 256].includes(16)
31
31
  ? 'ES2016/ES7 includes array method works'
32
- : 'broken ES2016/ES7 includes array method'
32
+ : 'broken ES2016/ES7 includes array method',
33
33
  );
34
34
  /* eslint-enable no-console */
35
35
  }
@@ -30,12 +30,12 @@ export class Example extends GondelBaseComponent {
30
30
  console.log(
31
31
  'everything ok?'.startsWith('every')
32
32
  ? 'ES2015/ES6 startWith string method works'
33
- : 'broken ES2015/ES6 startWith string method'
33
+ : 'broken ES2015/ES6 startWith string method',
34
34
  );
35
35
  console.log(
36
36
  [2, 4, 16, 256].includes(16)
37
37
  ? 'ES2016/ES7 includes array method works'
38
- : 'broken ES2016/ES7 includes array method'
38
+ : 'broken ES2016/ES7 includes array method',
39
39
  );
40
40
  /* eslint-enable no-console */
41
41
  }
@@ -1,5 +1,3 @@
1
1
  import './js/key1Breakpoint';
2
2
  import './js/key2BootstrapGrid';
3
3
  import './js/key3BootstrapContainer';
4
- import './js/key4Tota11y';
5
- import './css/key4Tota11y.scss';
@@ -1,5 +1,3 @@
1
1
  import './js/key1Breakpoint';
2
2
  import './js/key2BootstrapGrid';
3
3
  import './js/key3BootstrapContainer';
4
- import './js/key4Tota11y';
5
- import './css/key4Tota11y.scss';
@@ -28,7 +28,7 @@ const breakpointMarkup = [
28
28
  'opacity:0.8',
29
29
  'background:rgba(200,200,200,0.9)',
30
30
  'border:1px solid rgba(200,200,200,1)',
31
- ].join(';')
31
+ ].join(';'),
32
32
  );
33
33
  document.body.appendChild(div);
34
34
  function toggleBreakpointHelper() {
@@ -28,7 +28,7 @@ const breakpointMarkup = [
28
28
  'opacity:0.8',
29
29
  'background:rgba(200,200,200,0.9)',
30
30
  'border:1px solid rgba(200,200,200,1)',
31
- ].join(';')
31
+ ].join(';'),
32
32
  );
33
33
  document.body.appendChild(div);
34
34
  function toggleBreakpointHelper() {
@@ -35,7 +35,7 @@ const gridMarkup = [
35
35
  'bottom: 0',
36
36
  'pointer-events:none',
37
37
  'z-index: 2147483647',
38
- ].join(';')
38
+ ].join(';'),
39
39
  );
40
40
  document.body.appendChild(div);
41
41
  function toggleGrid() {
@@ -35,7 +35,7 @@ const gridMarkup = [
35
35
  'bottom: 0',
36
36
  'pointer-events:none',
37
37
  'z-index: 2147483647',
38
- ].join(';')
38
+ ].join(';'),
39
39
  );
40
40
  document.body.appendChild(div);
41
41
  function toggleGrid() {
@@ -5,4 +5,3 @@ They are included in "proto" entry point
5
5
  - press `ctrl`|`alt` and `1` to show & hide a banner with current viewport size
6
6
  - press `ctrl`|`alt` and `2` to show & hide grid columns in your page
7
7
  - press `ctrl`|`alt` and `3` to show & hide component, row and col wrappers in your page
8
- - press `ctrl`|`alt` and `4` to show & hide accessibility helper tota11y
@@ -4,7 +4,10 @@
4
4
  font-style: normal;
5
5
  font-weight: 300;
6
6
  font-display: fallback;
7
- src: local('Gaegu Light'), local('Gaegu-Light'), url('../fonts/gaegu-v2-latin-300.woff2') format('woff2'),
7
+ src:
8
+ local('Gaegu Light'),
9
+ local('Gaegu-Light'),
10
+ url('../fonts/gaegu-v2-latin-300.woff2') format('woff2'),
8
11
  url('../fonts/gaegu-v2-latin-300.woff') format('woff');
9
12
  }
10
13
 
@@ -14,7 +17,10 @@
14
17
  font-style: normal;
15
18
  font-weight: 400;
16
19
  font-display: fallback;
17
- src: local('Gaegu Regular'), local('Gaegu-Regular'), url('../fonts/gaegu-v2-latin-regular.woff2') format('woff2'),
20
+ src:
21
+ local('Gaegu Regular'),
22
+ local('Gaegu-Regular'),
23
+ url('../fonts/gaegu-v2-latin-regular.woff2') format('woff2'),
18
24
  url('../fonts/gaegu-v2-latin-regular.woff') format('woff');
19
25
  }
20
26
 
@@ -24,6 +30,9 @@
24
30
  font-style: normal;
25
31
  font-weight: 700;
26
32
  font-display: fallback;
27
- src: local('Gaegu Bold'), local('Gaegu-Bold'), url('../fonts/gaegu-v2-latin-700.woff2') format('woff2'),
33
+ src:
34
+ local('Gaegu Bold'),
35
+ local('Gaegu-Bold'),
36
+ url('../fonts/gaegu-v2-latin-700.woff2') format('woff2'),
28
37
  url('../fonts/gaegu-v2-latin-700.woff') format('woff');
29
38
  }
@@ -4,7 +4,9 @@
4
4
  font-style: normal;
5
5
  font-weight: 400;
6
6
  font-display: fallback;
7
- src: local('Playfair Display Regular'), local('PlayfairDisplay-Regular'),
7
+ src:
8
+ local('Playfair Display Regular'),
9
+ local('PlayfairDisplay-Regular'),
8
10
  url('../fonts/playfair-display-v13-latin-regular.woff2') format('woff2'),
9
11
  url('../fonts/playfair-display-v13-latin-regular.woff') format('woff');
10
12
  }
@@ -15,7 +17,9 @@
15
17
  font-style: italic;
16
18
  font-weight: 400;
17
19
  font-display: fallback;
18
- src: local('Playfair Display Italic'), local('PlayfairDisplay-Italic'),
20
+ src:
21
+ local('Playfair Display Italic'),
22
+ local('PlayfairDisplay-Italic'),
19
23
  url('../fonts/playfair-display-v13-latin-italic.woff2') format('woff2'),
20
24
  url('../fonts/playfair-display-v13-latin-italic.woff') format('woff');
21
25
  }
@@ -26,7 +30,9 @@
26
30
  font-style: normal;
27
31
  font-weight: 700;
28
32
  font-display: fallback;
29
- src: local('Playfair Display Bold'), local('PlayfairDisplay-Bold'),
33
+ src:
34
+ local('Playfair Display Bold'),
35
+ local('PlayfairDisplay-Bold'),
30
36
  url('../fonts/playfair-display-v13-latin-700.woff2') format('woff2'),
31
37
  url('../fonts/playfair-display-v13-latin-700.woff') format('woff');
32
38
  }
@@ -37,7 +43,9 @@
37
43
  font-style: normal;
38
44
  font-weight: 900;
39
45
  font-display: fallback;
40
- src: local('Playfair Display Black'), local('PlayfairDisplay-Black'),
46
+ src:
47
+ local('Playfair Display Black'),
48
+ local('PlayfairDisplay-Black'),
41
49
  url('../fonts/playfair-display-v13-latin-900.woff2') format('woff2'),
42
50
  url('../fonts/playfair-display-v13-latin-900.woff') format('woff');
43
51
  }
@@ -1,33 +1,33 @@
1
- const fs = require('fs');
2
-
3
- module.exports = async (page, scenario) => {
4
- let cookies = [];
5
- const cookiePath = scenario.cookiePath;
6
-
7
- // READ COOKIES FROM FILE IF EXISTS
8
- if (fs.existsSync(cookiePath)) {
9
- cookies = JSON.parse(fs.readFileSync(cookiePath));
10
- }
11
-
12
- // MUNGE COOKIE DOMAIN
13
- cookies = cookies.map((cookie) => {
14
- if (cookie.domain.startsWith('http://') || cookie.domain.startsWith('https://')) {
15
- cookie.url = cookie.domain;
16
- } else {
17
- cookie.url = 'https://' + cookie.domain;
18
- }
19
- delete cookie.domain;
20
- return cookie;
21
- });
22
-
23
- // SET COOKIES
24
- const setCookies = async () => {
25
- return Promise.all(
26
- cookies.map(async (cookie) => {
27
- await page.setCookie(cookie);
28
- })
29
- );
30
- };
31
- await setCookies();
32
- console.log('Cookie state restored with:', JSON.stringify(cookies, null, 2));
33
- };
1
+ const fs = require('fs');
2
+
3
+ module.exports = async (page, scenario) => {
4
+ let cookies = [];
5
+ const cookiePath = scenario.cookiePath;
6
+
7
+ // READ COOKIES FROM FILE IF EXISTS
8
+ if (fs.existsSync(cookiePath)) {
9
+ cookies = JSON.parse(fs.readFileSync(cookiePath));
10
+ }
11
+
12
+ // MUNGE COOKIE DOMAIN
13
+ cookies = cookies.map((cookie) => {
14
+ if (cookie.domain.startsWith('http://') || cookie.domain.startsWith('https://')) {
15
+ cookie.url = cookie.domain;
16
+ } else {
17
+ cookie.url = 'https://' + cookie.domain;
18
+ }
19
+ delete cookie.domain;
20
+ return cookie;
21
+ });
22
+
23
+ // SET COOKIES
24
+ const setCookies = async () => {
25
+ return Promise.all(
26
+ cookies.map(async (cookie) => {
27
+ await page.setCookie(cookie);
28
+ }),
29
+ );
30
+ };
31
+ await setCookies();
32
+ console.log('Cookie state restored with:', JSON.stringify(cookies, null, 2));
33
+ };
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "generator-nitro",
3
- "version": "7.5.4",
3
+ "version": "8.0.0",
4
4
  "description": "Yeoman generator for the nitro frontend framework",
5
5
  "license": "MIT",
6
6
  "repository": "merkle-open/generator-nitro",
7
7
  "author": "The Nitro Team",
8
8
  "engines": {
9
- "node": ">=14.15.0 <19",
10
- "npm": ">=6.14.8 <10"
9
+ "node": ">=16.13.0 <19",
10
+ "npm": ">=8.1.0 <10"
11
11
  },
12
12
  "main": "generators/app/index.js",
13
13
  "scripts": {
@@ -44,10 +44,10 @@
44
44
  "yosay": "2.0.2"
45
45
  },
46
46
  "devDependencies": {
47
- "@merkle-open/eslint-config": "1.0.0",
47
+ "@merkle-open/eslint-config": "3.0.0",
48
48
  "ejs": "3.1.9",
49
- "eslint": "7.32.0",
50
- "eslint-plugin-import": "2.27.5",
49
+ "eslint": "8.46.0",
50
+ "eslint-plugin-import": "2.28.1",
51
51
  "fs-extra": "11.1.1",
52
52
  "jasmine": "4.6.0",
53
53
  "yeoman-assert": "3.1.1",
package/readme.md CHANGED
@@ -17,7 +17,7 @@ Nitro is simple, fast and flexible. It works on macOS, Windows and Linux. Use th
17
17
 
18
18
  Before using, you need of course [node](https://nodejs.org/) installed.
19
19
  Nitro and the Nitro generator are tested with the current ["Active" LTS version](https://github.com/nodejs/Release#release-schedule)
20
- and with the LTS maintenance versions (release 16.x and 14.x).
20
+ and with the LTS maintenance versions.
21
21
 
22
22
  ### Create a new project
23
23
 
@@ -1,10 +0,0 @@
1
- .git
2
- .idea
3
- .vscode
4
- dist
5
- node_modules
6
- project/docs
7
- project/tmp
8
- public/assets
9
- public/reports
10
- npm-debug.log
@@ -1,13 +0,0 @@
1
- # docker-compose.yaml
2
- version: "3"
3
- services:
4
- server:
5
- build: .
6
- container_name: <%= name %>_server-dev
7
- command: npm start
8
- ports:
9
- - 8081:8081
10
- - 3001:3001
11
- volumes:
12
- - .:/app:rw
13
- - /app/node_modules
@@ -1,9 +0,0 @@
1
- # docker-compose.yaml for production (prototype)
2
- version: "3"
3
- services:
4
- server:
5
- build: .
6
- container_name: <%= name %>_server
7
- command: npm run prod
8
- ports:
9
- - 8080:8080
@@ -1,35 +0,0 @@
1
- # Nitro usage with docker
2
-
3
- This feature is currently in experimental status.
4
-
5
- Of course docker must be installed.
6
-
7
- ## Production mode
8
-
9
- To start in production mode (prototype server):
10
-
11
- ```
12
- npm run docker:prod
13
- ```
14
-
15
- ## Development mode
16
-
17
- To start in development mode:
18
-
19
- ```
20
- npm run docker:start
21
- ```
22
-
23
- If you need a console to the docker image, run:
24
-
25
- ```
26
- npm run docker:dev:console
27
- ```
28
-
29
- ## Update Docker Image
30
-
31
- If you make changes to package.json or the Dockerfile you should recreate the docker image.
32
-
33
- ```
34
- npm run docker:update
35
- ```
@@ -1,5 +0,0 @@
1
- /* stylelint-disable plugin/stylelint-bem-namics, declaration-no-important */
2
- div.tota11y-plugin-description {
3
- font-size: 12px !important;
4
- }
5
- /* stylelint-enable plugin/stylelint-bem-namics, declaration-no-important */
@@ -1,24 +0,0 @@
1
- import '@khanacademy/tota11y/dist/tota11y';
2
- import { addKeyboardAction, getFromLocalStorage, setToLocalStorage } from './developHelpers';
3
-
4
- // toggle tota11y helper on CTRL+4 / ALT+4
5
- (function tota11yHelper() {
6
- const style = document.createElement('style');
7
- style.innerHTML = '.tota11y { display: none; }';
8
- document.head.appendChild(style);
9
- function toggleTota11y() {
10
- if (style.parentElement) {
11
- style.parentElement.removeChild(style);
12
- } else {
13
- document.head.appendChild(style);
14
- }
15
- setToLocalStorage('dev-helper-tota11y', !Boolean(style.parentElement));
16
- }
17
-
18
- // 52 = keycode for 4
19
- addKeyboardAction(52, toggleTota11y);
20
- // Local Storage
21
- if (getFromLocalStorage('dev-helper-tota11y')) {
22
- toggleTota11y();
23
- }
24
- })();
@@ -1,24 +0,0 @@
1
- import '@khanacademy/tota11y/dist/tota11y';
2
- import { addKeyboardAction, getFromLocalStorage, setToLocalStorage } from './developHelpers';
3
-
4
- // toggle tota11y helper on CTRL+4 / ALT+4
5
- (function tota11yHelper() {
6
- const style = document.createElement('style');
7
- style.innerHTML = '.tota11y { display: none; }';
8
- document.head.appendChild(style);
9
- function toggleTota11y() {
10
- if (style.parentElement) {
11
- style.parentElement.removeChild(style);
12
- } else {
13
- document.head.appendChild(style);
14
- }
15
- setToLocalStorage('dev-helper-tota11y', !Boolean(style.parentElement));
16
- }
17
-
18
- // 52 = keycode for 4
19
- addKeyboardAction(52, toggleTota11y);
20
- // Local Storage
21
- if (getFromLocalStorage('dev-helper-tota11y')) {
22
- toggleTota11y();
23
- }
24
- })();