@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.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, writeConfigFile, applyEnhancers } from '@form8ion/core';
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$5 } from '@form8ion/commit-convention';
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$4 } from '@form8ion/husky';
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 { scaffold as scaffold$1, lift as lift$4, test as test$1 } from '@form8ion/eslint';
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 lift$4(options);
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 ({packageName, visibility, projectRoot, dialect, publishRegistry}) {
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 [rollupResults, publishableResults] = await Promise.all([
636
- scaffold$3({projectRoot, dialect, projectType: projectTypes$1.CLI}),
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
- rollupResults,
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({packageName, visibility, projectRoot, dialect, publishRegistry});
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$4({projectRoot, packageManager, pathWithinParent})
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$5({projectRoot, projectType, configs, pathWithinParent})
1737
+ scaffold$4({projectRoot, projectType, configs, pathWithinParent})
1722
1738
  ])),
1723
1739
  projectTypeResults,
1724
1740
  verificationResults,