@@ -4,7 +4,6 @@ const path = require("path");
4
4
const chalk = require ( "chalk" ) ;
5
5
const langsList = require ( "./countries.json" ) ;
6
6
const prompts = require ( "prompts" ) ;
7
- // const semver = require("semver");
8
7
const fuzzy = require ( "fuzzy" ) ;
9
8
const ora = require ( "ora" ) ;
10
9
const { extract } = require ( "pacote" ) ;
@@ -14,6 +13,7 @@ const os = require("os");
14
13
const packageName = "html5-boilerplate" ;
15
14
const tempDir = os . tmpdir ( ) + `/${ packageName } -staging` ;
16
15
const elapsed = require ( "elapsed-time-logger" ) ;
16
+ const compareVersions = require ( "compare-versions" ) ;
17
17
let spinner ;
18
18
19
19
module . exports = async ( argvs ) => {
@@ -97,20 +97,25 @@ const onLoad = async (targetDir, version, argv) => {
97
97
}
98
98
lang = langChoice || "" ;
99
99
}
100
- let { jquery } = await prompts ( {
101
- type : "confirm" ,
102
- name : "jquery" ,
103
- message : "Remove jQuery?" ,
104
- initial : true ,
105
- } ) ;
100
+ const isJqueryIncluded = compareVersions ( version . toString ( ) , "8.0.0" ) ; // jQuery removed in >= v8
101
+ let removeJqueryFlag = false ;
102
+ if ( isJqueryIncluded ) {
103
+ let { removeJquery } = await prompts ( {
104
+ type : "confirm" ,
105
+ name : "removeJquery" ,
106
+ message : "Remove jQuery?" ,
107
+ initial : true ,
108
+ } ) ;
109
+ removeJqueryFlag = removeJquery ;
110
+ }
106
111
try {
107
112
const indexFile = targetDir + "/index.html" ;
108
113
const sourceHTML = await fs . readFile ( indexFile , "utf-8" ) ;
109
114
let resultHTML = sourceHTML . replace (
110
115
/ ( < h t m l .* l a n g = ) \" ( [ ^ " ] * ) \" / gi,
111
116
`$1"${ lang } "`
112
117
) ;
113
- if ( jquery ) {
118
+ if ( removeJqueryFlag ) {
114
119
resultHTML = resultHTML . replace (
115
120
/ ( < s c r i p t > w i n d o w \. j Q u e r y .* < \/ s c r i p t > | < s c r i p t s r c = " .* j q u e r y .* < \/ s c r i p t > ) / gi,
116
121
""
0 commit comments