@form8ion/javascript 11.10.3 → 12.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.
- package/lib/index.js +26 -10
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +29 -13
- package/lib/index.mjs.map +1 -1
- package/package.json +8 -9
package/lib/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { questionNames as questionNames$2, questions } from '@travi/language-scaffolder-prompts';
|
|
2
2
|
import deepmerge from 'deepmerge';
|
|
3
|
-
import { fileTypes, fileExists, validateOptions,
|
|
3
|
+
import { fileTypes, fileExists, validateOptions, applyEnhancers, writeConfigFile } from '@form8ion/core';
|
|
4
4
|
import { scaffoldChoice, projectTypes as projectTypes$1, packageManagers, mergeIntoExistingPackageJson, dialects as dialects$1, writePackageJson, DEV_DEPENDENCY_TYPE, PROD_DEPENDENCY_TYPE } from '@form8ion/javascript-core';
|
|
5
5
|
import joi from 'joi';
|
|
6
6
|
import { prompt as prompt$1, Separator } from '@form8ion/overridable-prompts';
|
|
@@ -8,12 +8,11 @@ import { scaffold, lift as lift$3 } from '@form8ion/codecov';
|
|
|
8
8
|
import { write as write$1 } from '@form8ion/config-file';
|
|
9
9
|
import { info, warn, error } from '@travi/cli-messages';
|
|
10
10
|
import * as commitConventionPlugin from '@form8ion/commit-convention';
|
|
11
|
-
import { scaffold as scaffold$
|
|
11
|
+
import { scaffold as scaffold$4 } from '@form8ion/commit-convention';
|
|
12
12
|
import execa from '@form8ion/execa-wrapper';
|
|
13
13
|
import npmConf from 'npm-conf';
|
|
14
14
|
import { EOL } from 'os';
|
|
15
15
|
import validatePackageName from 'validate-npm-package-name';
|
|
16
|
-
import { scaffold as scaffold$3 } from '@form8ion/rollup';
|
|
17
16
|
import { promises } from 'fs';
|
|
18
17
|
import mustache from 'mustache';
|
|
19
18
|
import mkdir from 'make-dir';
|
|
@@ -22,10 +21,11 @@ import camelcase from 'camelcase';
|
|
|
22
21
|
import { resolve } from 'path';
|
|
23
22
|
import filedirname from 'filedirname';
|
|
24
23
|
import * as huskyPlugin from '@form8ion/husky';
|
|
25
|
-
import { scaffold as scaffold$
|
|
24
|
+
import { scaffold as scaffold$3 } from '@form8ion/husky';
|
|
26
25
|
import { stringify, parse } from 'ini';
|
|
27
26
|
import { scaffold as scaffold$2 } from '@form8ion/prettier';
|
|
28
|
-
import
|
|
27
|
+
import * as eslintPlugin from '@form8ion/eslint';
|
|
28
|
+
import { scaffold as scaffold$1, test as test$1 } from '@form8ion/eslint';
|
|
29
29
|
import { promises as promises$1 } from 'node:fs';
|
|
30
30
|
import sortProperties from 'sort-object-keys';
|
|
31
31
|
|
|
@@ -215,7 +215,7 @@ async function scaffoldCodeStyle ({
|
|
|
215
215
|
}
|
|
216
216
|
|
|
217
217
|
function lifter$3 (options) {
|
|
218
|
-
return
|
|
218
|
+
return applyEnhancers({options, enhancers: [eslintPlugin]});
|
|
219
219
|
}
|
|
220
220
|
|
|
221
221
|
function tester$3 (options) {
|
|
@@ -630,10 +630,18 @@ async function scaffoldMonorepoType ({projectRoot}) {
|
|
|
630
630
|
|
|
631
631
|
const defaultBuildDirectory = 'bin';
|
|
632
632
|
|
|
633
|
-
async function scaffoldCliType ({
|
|
633
|
+
async function scaffoldCliType ({
|
|
634
|
+
packageName,
|
|
635
|
+
visibility,
|
|
636
|
+
projectRoot,
|
|
637
|
+
dialect,
|
|
638
|
+
publishRegistry,
|
|
639
|
+
decisions,
|
|
640
|
+
packageBundlers
|
|
641
|
+
}) {
|
|
634
642
|
const packageAccessLevel = determinePackageAccessLevelFromProjectVisibility({projectVisibility: visibility});
|
|
635
|
-
const [
|
|
636
|
-
|
|
643
|
+
const [bundlerResults, publishableResults] = await Promise.all([
|
|
644
|
+
scaffoldBundler({bundlers: packageBundlers, projectRoot, dialect, decisions, projectType: projectTypes$1.CLI}),
|
|
637
645
|
scaffoldPublishable({packageName, packageAccessLevel}),
|
|
638
646
|
mergeIntoExistingPackageJson({
|
|
639
647
|
projectRoot,
|
|
@@ -650,7 +658,7 @@ async function scaffoldCliType ({packageName, visibility, projectRoot, dialect,
|
|
|
650
658
|
|
|
651
659
|
return deepmerge.all([
|
|
652
660
|
publishableResults,
|
|
653
|
-
|
|
661
|
+
bundlerResults,
|
|
654
662
|
{
|
|
655
663
|
scripts: {
|
|
656
664
|
clean: `rimraf ./${defaultBuildDirectory}`,
|
|
@@ -709,7 +717,15 @@ async function scaffoldProjectType ({
|
|
|
709
717
|
case projectTypes$1.APPLICATION:
|
|
710
718
|
return scaffoldApplicationType({projectRoot});
|
|
711
719
|
case projectTypes$1.CLI:
|
|
712
|
-
return scaffoldCliType({
|
|
720
|
+
return scaffoldCliType({
|
|
721
|
+
packageName,
|
|
722
|
+
visibility,
|
|
723
|
+
projectRoot,
|
|
724
|
+
dialect,
|
|
725
|
+
publishRegistry,
|
|
726
|
+
decisions,
|
|
727
|
+
packageBundlers
|
|
728
|
+
});
|
|
713
729
|
case projectTypes$1.MONOREPO:
|
|
714
730
|
return scaffoldMonorepoType({projectRoot});
|
|
715
731
|
case 'Other':
|
|
@@ -1593,7 +1609,7 @@ async function scaffoldVerification({
|
|
|
1593
1609
|
pathWithinParent
|
|
1594
1610
|
}),
|
|
1595
1611
|
scaffoldLinting({projectRoot, packageManager, registries, vcs, pathWithinParent}),
|
|
1596
|
-
scaffold$
|
|
1612
|
+
scaffold$3({projectRoot, packageManager, pathWithinParent})
|
|
1597
1613
|
]);
|
|
1598
1614
|
|
|
1599
1615
|
return deepmerge.all([testingResults, lintingResults, huskyResults]);
|
|
@@ -1718,7 +1734,7 @@ async function scaffolder (options) {
|
|
|
1718
1734
|
{buildDirectory: `./${projectTypeResults.buildDirectory}`, projectRoot, projectName, nodeVersion}
|
|
1719
1735
|
),
|
|
1720
1736
|
scaffoldChoice(ciServices, ci, {projectRoot, vcs, visibility, projectType, projectName, nodeVersion, tests}),
|
|
1721
|
-
scaffold$
|
|
1737
|
+
scaffold$4({projectRoot, projectType, configs, pathWithinParent})
|
|
1722
1738
|
])),
|
|
1723
1739
|
projectTypeResults,
|
|
1724
1740
|
verificationResults,
|