@form8ion/javascript 3.0.0 → 3.1.0-alpha.3
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.
- package/lib/index.cjs.js +69 -30
- package/lib/index.cjs.js.map +1 -1
- package/lib/index.es.js +68 -29
- package/lib/index.es.js.map +1 -1
- package/package.json +4 -4
package/lib/index.cjs.js
CHANGED
|
@@ -5,15 +5,13 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var languageScaffolderPrompts = require('@travi/language-scaffolder-prompts');
|
|
6
6
|
var deepmerge = require('deepmerge');
|
|
7
7
|
var javascriptCore = require('@form8ion/javascript-core');
|
|
8
|
-
var codecov = require('@form8ion/codecov');
|
|
9
|
-
var fs = require('fs');
|
|
10
8
|
var joi = require('joi');
|
|
11
9
|
var inquirer = require('inquirer');
|
|
12
10
|
var overridablePrompts = require('@form8ion/overridable-prompts');
|
|
13
|
-
var
|
|
14
|
-
var
|
|
11
|
+
var codecov = require('@form8ion/codecov');
|
|
12
|
+
var fs = require('fs');
|
|
15
13
|
var core = require('@form8ion/core');
|
|
16
|
-
var
|
|
14
|
+
var cliMessages = require('@travi/cli-messages');
|
|
17
15
|
var commitConvention = require('@form8ion/commit-convention');
|
|
18
16
|
var hoek = require('@hapi/hoek');
|
|
19
17
|
var execa = require('execa');
|
|
@@ -26,6 +24,8 @@ var camelcase = require('camelcase');
|
|
|
26
24
|
var makeDir = require('make-dir');
|
|
27
25
|
var touch = require('touch');
|
|
28
26
|
var path = require('path');
|
|
27
|
+
var huskyPlugin = require('@form8ion/husky');
|
|
28
|
+
var eslint = require('@form8ion/eslint');
|
|
29
29
|
|
|
30
30
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
31
31
|
|
|
@@ -56,6 +56,7 @@ var mustache__default = /*#__PURE__*/_interopDefaultLegacy(mustache);
|
|
|
56
56
|
var camelcase__default = /*#__PURE__*/_interopDefaultLegacy(camelcase);
|
|
57
57
|
var makeDir__default = /*#__PURE__*/_interopDefaultLegacy(makeDir);
|
|
58
58
|
var touch__default = /*#__PURE__*/_interopDefaultLegacy(touch);
|
|
59
|
+
var huskyPlugin__namespace = /*#__PURE__*/_interopNamespace(huskyPlugin);
|
|
59
60
|
|
|
60
61
|
function ownKeys(object, enumerableOnly) {
|
|
61
62
|
var keys = Object.keys(object);
|
|
@@ -150,6 +151,58 @@ async function scaffoldCoverage ({
|
|
|
150
151
|
}));
|
|
151
152
|
}
|
|
152
153
|
|
|
154
|
+
function nycIsConfigured ({
|
|
155
|
+
projectRoot
|
|
156
|
+
}) {
|
|
157
|
+
return core.fileExists(`${projectRoot}/.nycrc`);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
async function removeDependencies ({
|
|
161
|
+
packageManager,
|
|
162
|
+
dependencies
|
|
163
|
+
}) {
|
|
164
|
+
await execa__default["default"](packageManager, ['remove', ...dependencies]);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
async function removeNyc ({
|
|
168
|
+
projectRoot,
|
|
169
|
+
packageManager
|
|
170
|
+
}) {
|
|
171
|
+
await Promise.all([fs.promises.unlink(`${projectRoot}/.nycrc`), fs.promises.rmdir(`${projectRoot}/.nyc_output`, {
|
|
172
|
+
recursive: true,
|
|
173
|
+
force: true
|
|
174
|
+
}), removeDependencies({
|
|
175
|
+
packageManager,
|
|
176
|
+
dependencies: ['nyc', '@istanbuljs/nyc-config-babel']
|
|
177
|
+
})]);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
async function lift$2({
|
|
181
|
+
projectRoot,
|
|
182
|
+
packageManager
|
|
183
|
+
}) {
|
|
184
|
+
if (await nycIsConfigured({
|
|
185
|
+
projectRoot
|
|
186
|
+
})) {
|
|
187
|
+
const [c8Results] = await Promise.all([scaffoldC8({
|
|
188
|
+
projectRoot
|
|
189
|
+
}), removeNyc({
|
|
190
|
+
projectRoot,
|
|
191
|
+
packageManager
|
|
192
|
+
})]);
|
|
193
|
+
return c8Results;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
return {};
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
var coveragePlugin = /*#__PURE__*/Object.freeze({
|
|
200
|
+
__proto__: null,
|
|
201
|
+
scaffold: scaffoldCoverage,
|
|
202
|
+
lift: lift$2,
|
|
203
|
+
test: nycIsConfigured
|
|
204
|
+
});
|
|
205
|
+
|
|
153
206
|
const unitTestFrameworksSchema = joi__namespace.object().required().pattern(/^/, joi__namespace.object({
|
|
154
207
|
scaffolder: joi__namespace.func().arity(1).required()
|
|
155
208
|
}));
|
|
@@ -198,18 +251,15 @@ async function scaffoldUnitTesting ({
|
|
|
198
251
|
async function applyEnhancers ({
|
|
199
252
|
results,
|
|
200
253
|
enhancers = {},
|
|
201
|
-
|
|
254
|
+
options
|
|
202
255
|
}) {
|
|
203
256
|
cliMessages.info('Applying Enhancers');
|
|
204
257
|
return Object.values(enhancers).reduce(async (acc, enhancer) => {
|
|
205
|
-
if (await enhancer.test({
|
|
206
|
-
projectRoot
|
|
207
|
-
})) {
|
|
258
|
+
if (await enhancer.test(options)) {
|
|
208
259
|
const previousResults = await acc;
|
|
209
|
-
return deepmerge__default["default"](previousResults, await enhancer.lift({
|
|
210
|
-
results: previousResults
|
|
211
|
-
|
|
212
|
-
}));
|
|
260
|
+
return deepmerge__default["default"](previousResults, await enhancer.lift(_objectSpread2({
|
|
261
|
+
results: previousResults
|
|
262
|
+
}, options)));
|
|
213
263
|
}
|
|
214
264
|
|
|
215
265
|
return acc;
|
|
@@ -295,20 +345,6 @@ async function resolvePackageManager ({
|
|
|
295
345
|
throw new Error('Package-manager could not be determined');
|
|
296
346
|
}
|
|
297
347
|
|
|
298
|
-
function enhanceHuskyEnhancer(packageManager) {
|
|
299
|
-
return {
|
|
300
|
-
test: husky.test,
|
|
301
|
-
lift: ({
|
|
302
|
-
projectRoot,
|
|
303
|
-
results
|
|
304
|
-
}) => husky.lift({
|
|
305
|
-
projectRoot,
|
|
306
|
-
results,
|
|
307
|
-
packageManager
|
|
308
|
-
})
|
|
309
|
-
};
|
|
310
|
-
}
|
|
311
|
-
|
|
312
348
|
async function lift ({
|
|
313
349
|
projectRoot,
|
|
314
350
|
results
|
|
@@ -332,8 +368,11 @@ async function lift ({
|
|
|
332
368
|
});
|
|
333
369
|
const enhancerResults = await applyEnhancers({
|
|
334
370
|
results,
|
|
335
|
-
enhancers: [
|
|
336
|
-
|
|
371
|
+
enhancers: [huskyPlugin__namespace, enginesEnhancer, coveragePlugin],
|
|
372
|
+
options: {
|
|
373
|
+
packageManager,
|
|
374
|
+
projectRoot
|
|
375
|
+
}
|
|
337
376
|
});
|
|
338
377
|
await liftPackage(deepmerge__default["default"].all([{
|
|
339
378
|
projectRoot,
|
|
@@ -1485,7 +1524,7 @@ async function scaffoldVerification({
|
|
|
1485
1524
|
decisions,
|
|
1486
1525
|
dialect,
|
|
1487
1526
|
pathWithinParent
|
|
1488
|
-
}),
|
|
1527
|
+
}), huskyPlugin.scaffold({
|
|
1489
1528
|
projectRoot,
|
|
1490
1529
|
packageManager
|
|
1491
1530
|
})]);
|