@pragmatic-divops/cli 1.7.172 → 1.8.0-alpha.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/README.md
CHANGED
|
@@ -9,6 +9,8 @@ cli for various organization tools
|
|
|
9
9
|
|
|
10
10
|
<!--status-badges end -->
|
|
11
11
|
|
|
12
|
+
## Usage
|
|
13
|
+
|
|
12
14
|
<!--consumer-badges start -->
|
|
13
15
|
|
|
14
16
|
[![MIT license][license-badge]][license-link]
|
|
@@ -16,6 +18,12 @@ cli for various organization tools
|
|
|
16
18
|
|
|
17
19
|
<!--consumer-badges end -->
|
|
18
20
|
|
|
21
|
+
### Installation
|
|
22
|
+
|
|
23
|
+
```sh
|
|
24
|
+
$ npm install @pragmatic-divops/cli --global
|
|
25
|
+
```
|
|
26
|
+
|
|
19
27
|
## Table of Contents
|
|
20
28
|
|
|
21
29
|
* [Contributing](#contributing)
|
|
@@ -1,31 +1,24 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
var eslintConfigExtender = require('@form8ion/eslint-config-extender');
|
|
15
|
-
var gatsby = require('@form8ion/gatsby');
|
|
16
|
-
var netlifyScaffolder = require('@travi/netlify-scaffolder');
|
|
17
|
-
|
|
18
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
19
|
-
|
|
20
|
-
var yargs__default = /*#__PURE__*/_interopDefaultLegacy(yargs);
|
|
21
|
-
var updateNotifier__default = /*#__PURE__*/_interopDefaultLegacy(updateNotifier);
|
|
2
|
+
import yargs from 'yargs';
|
|
3
|
+
import updateNotifier from 'update-notifier';
|
|
4
|
+
import { questionNames, scaffold as scaffold$8 } from '@form8ion/project';
|
|
5
|
+
import { scaffold as scaffold$7 } from '@form8ion/renovate-scaffolder';
|
|
6
|
+
import { scaffold, questionNames as questionNames$1 } from '@form8ion/javascript';
|
|
7
|
+
import { packageManagers } from '@form8ion/javascript-core';
|
|
8
|
+
import { prompt, scaffold as scaffold$6 } from '@travi/github-scaffolder';
|
|
9
|
+
import { scaffold as scaffold$1 } from '@form8ion/github-actions-node-ci';
|
|
10
|
+
import { scaffold as scaffold$5 } from '@form8ion/mocha-scaffolder';
|
|
11
|
+
import { scaffold as scaffold$4, extendEslintConfig } from '@form8ion/eslint-config-extender';
|
|
12
|
+
import { scaffold as scaffold$3 } from '@form8ion/gatsby';
|
|
13
|
+
import { scaffold as scaffold$2 } from '@travi/netlify-scaffolder';
|
|
22
14
|
|
|
23
15
|
var name = "@pragmatic-divops/cli";
|
|
24
16
|
var description = "cli for various organization tools";
|
|
25
17
|
var license = "MIT";
|
|
26
|
-
var version = "1.
|
|
18
|
+
var version = "1.8.0-alpha.1";
|
|
19
|
+
var type = "module";
|
|
27
20
|
var bin = {
|
|
28
|
-
"pragmatic-divops": "bin/pragmatic-divops.
|
|
21
|
+
"pragmatic-divops": "bin/pragmatic-divops.mjs"
|
|
29
22
|
};
|
|
30
23
|
var files = [
|
|
31
24
|
"bin/"
|
|
@@ -52,11 +45,11 @@ var scripts = {
|
|
|
52
45
|
prepack: "run-s build",
|
|
53
46
|
"test:unit": "nyc run-s test:unit:base",
|
|
54
47
|
"coverage:report": "nyc report --reporter=text-lcov > coverage.lcov && codecov",
|
|
55
|
-
"test:unit:base": "DEBUG=any mocha 'src/**/*-test.js'",
|
|
48
|
+
"test:unit:base": "DEBUG=any mocha --loader=testdouble 'src/**/*-test.js'",
|
|
56
49
|
"lint:peer": "npm ls >/dev/null",
|
|
57
50
|
"lint:gherkin": "gherkin-lint",
|
|
58
51
|
"test:integration": "run-s 'test:integration:base -- --profile noWip'",
|
|
59
|
-
"test:integration:base": "DEBUG=any cucumber-js test/integration
|
|
52
|
+
"test:integration:base": "NODE_OPTIONS=\"--loader=testdouble\" DEBUG=any cucumber-js test/integration",
|
|
60
53
|
"test:integration:debug": "DEBUG=test run-s test:integration",
|
|
61
54
|
"test:integration:wip": "run-s 'test:integration:base -- --profile wip'",
|
|
62
55
|
"test:integration:wip:debug": "DEBUG=test run-s 'test:integration:wip'",
|
|
@@ -67,31 +60,26 @@ var dependencies = {
|
|
|
67
60
|
"@form8ion/eslint-config-extender": "3.1.2",
|
|
68
61
|
"@form8ion/gatsby": "1.0.0",
|
|
69
62
|
"@form8ion/github-actions-node-ci": "3.6.3",
|
|
70
|
-
"@form8ion/javascript": "6.0.
|
|
63
|
+
"@form8ion/javascript": "6.0.9",
|
|
71
64
|
"@form8ion/javascript-core": "6.0.1",
|
|
72
|
-
"@form8ion/mocha-scaffolder": "2.0.
|
|
65
|
+
"@form8ion/mocha-scaffolder": "2.0.2",
|
|
73
66
|
"@form8ion/project": "13.2.1",
|
|
74
67
|
"@form8ion/renovate-scaffolder": "1.7.0",
|
|
75
68
|
"@travi/github-scaffolder": "8.0.1",
|
|
76
69
|
"@travi/netlify-scaffolder": "1.6.0",
|
|
77
|
-
"source-map-support": "0.5.21",
|
|
78
70
|
"update-notifier": "6.0.2",
|
|
79
71
|
yargs: "17.5.1"
|
|
80
72
|
};
|
|
81
73
|
var devDependencies = {
|
|
82
|
-
"@babel/register": "7.17.7",
|
|
83
74
|
"@cucumber/cucumber": "8.3.1",
|
|
84
75
|
"@form8ion/core": "1.8.0",
|
|
85
|
-
"@
|
|
86
|
-
"@pragmatic-divops/
|
|
87
|
-
"@pragmatic-divops/eslint-config": "1.0.
|
|
88
|
-
"@pragmatic-divops/eslint-config-
|
|
89
|
-
"@pragmatic-divops/
|
|
90
|
-
"@pragmatic-divops/remark-preset": "2.0.10",
|
|
76
|
+
"@pragmatic-divops/commitlint-config": "1.0.8",
|
|
77
|
+
"@pragmatic-divops/eslint-config": "1.0.28",
|
|
78
|
+
"@pragmatic-divops/eslint-config-cucumber": "1.0.0",
|
|
79
|
+
"@pragmatic-divops/eslint-config-mocha": "1.0.2",
|
|
80
|
+
"@pragmatic-divops/remark-preset": "2.0.6",
|
|
91
81
|
"@rollup/plugin-node-resolve": "13.3.0",
|
|
92
|
-
"@travi/any": "2.
|
|
93
|
-
"@travi/babel-preset": "3.0.88",
|
|
94
|
-
"babel-plugin-istanbul": "6.1.1",
|
|
82
|
+
"@travi/any": "2.0.18",
|
|
95
83
|
"ban-sensitive-files": "1.9.18",
|
|
96
84
|
chai: "4.3.6",
|
|
97
85
|
codecov: "3.8.3",
|
|
@@ -120,6 +108,7 @@ var pkg = {
|
|
|
120
108
|
description: description,
|
|
121
109
|
license: license,
|
|
122
110
|
version: version,
|
|
111
|
+
type: type,
|
|
123
112
|
bin: bin,
|
|
124
113
|
files: files,
|
|
125
114
|
publishConfig: publishConfig,
|
|
@@ -135,7 +124,7 @@ var pkg = {
|
|
|
135
124
|
function javascriptScaffolderFactory(decisions) {
|
|
136
125
|
const scope = '@pragmatic-divops';
|
|
137
126
|
|
|
138
|
-
return options =>
|
|
127
|
+
return options => scaffold({
|
|
139
128
|
...options,
|
|
140
129
|
configs: {
|
|
141
130
|
eslint: {scope},
|
|
@@ -144,17 +133,17 @@ function javascriptScaffolderFactory(decisions) {
|
|
|
144
133
|
commitlint: {name: scope, packageName: `${scope}/commitlint-config`}
|
|
145
134
|
},
|
|
146
135
|
overrides: {npmAccount: 'form8ion'},
|
|
147
|
-
ciServices: {'GitHub Actions': {scaffolder:
|
|
148
|
-
hosts: {Netlify: {projectTypes: ['static'], scaffolder:
|
|
149
|
-
applicationTypes: {Gatsby: {scaffolder:
|
|
150
|
-
packageTypes: {'ESLint Config': {scaffolder:
|
|
151
|
-
unitTestFrameworks: {mocha: {scaffolder:
|
|
136
|
+
ciServices: {'GitHub Actions': {scaffolder: scaffold$1, public: true}},
|
|
137
|
+
hosts: {Netlify: {projectTypes: ['static'], scaffolder: scaffold$2}},
|
|
138
|
+
applicationTypes: {Gatsby: {scaffolder: scaffold$3}},
|
|
139
|
+
packageTypes: {'ESLint Config': {scaffolder: scaffold$4}},
|
|
140
|
+
unitTestFrameworks: {mocha: {scaffolder: scaffold$5}},
|
|
152
141
|
decisions
|
|
153
142
|
});
|
|
154
143
|
}
|
|
155
144
|
|
|
156
145
|
function githubPromptFactory(decisions) {
|
|
157
|
-
return () =>
|
|
146
|
+
return () => prompt({account: 'pragmatic-divops', decisions});
|
|
158
147
|
}
|
|
159
148
|
|
|
160
149
|
const traviName = 'Matt Travi';
|
|
@@ -163,32 +152,32 @@ const orgName = 'pragmatic-divops';
|
|
|
163
152
|
function defineDecisions(providedDecisions) {
|
|
164
153
|
return {
|
|
165
154
|
...providedDecisions,
|
|
166
|
-
[
|
|
167
|
-
[
|
|
168
|
-
[
|
|
169
|
-
[
|
|
170
|
-
[
|
|
171
|
-
[
|
|
172
|
-
[
|
|
173
|
-
[
|
|
174
|
-
[
|
|
175
|
-
[
|
|
176
|
-
[
|
|
155
|
+
[questionNames.COPYRIGHT_HOLDER]: traviName,
|
|
156
|
+
[questionNames.REPO_HOST]: 'GitHub',
|
|
157
|
+
[questionNames.REPO_OWNER]: orgName,
|
|
158
|
+
[questionNames.DEPENDENCY_UPDATER]: 'Renovate',
|
|
159
|
+
[questionNames$1.AUTHOR_NAME]: traviName,
|
|
160
|
+
[questionNames$1.AUTHOR_EMAIL]: 'npm@travi.org',
|
|
161
|
+
[questionNames$1.AUTHOR_URL]: 'https://matt.travi.org',
|
|
162
|
+
[questionNames$1.UNIT_TEST_FRAMEWORK]: 'mocha',
|
|
163
|
+
[questionNames$1.SCOPE]: orgName,
|
|
164
|
+
[questionNames$1.CI_SERVICE]: 'GitHub Actions',
|
|
165
|
+
[questionNames$1.PACKAGE_MANAGER]: packageManagers.NPM
|
|
177
166
|
};
|
|
178
167
|
}
|
|
179
168
|
|
|
180
169
|
function defineScaffoldOptions(decisions) {
|
|
181
170
|
return {
|
|
182
171
|
languages: {JavaScript: javascriptScaffolderFactory(decisions)},
|
|
183
|
-
vcsHosts: {GitHub: {scaffolder:
|
|
172
|
+
vcsHosts: {GitHub: {scaffolder: scaffold$6, prompt: githubPromptFactory(decisions), public: true}},
|
|
184
173
|
overrides: {copyrightHolder: traviName},
|
|
185
|
-
dependencyUpdaters: {Renovate: {scaffolder:
|
|
174
|
+
dependencyUpdaters: {Renovate: {scaffolder: scaffold$7}},
|
|
186
175
|
decisions
|
|
187
176
|
};
|
|
188
177
|
}
|
|
189
178
|
|
|
190
179
|
function handler$1(providedDecisions) {
|
|
191
|
-
return
|
|
180
|
+
return scaffold$8(defineScaffoldOptions(defineDecisions(providedDecisions)));
|
|
192
181
|
}
|
|
193
182
|
|
|
194
183
|
const command$1 = 'scaffold';
|
|
@@ -202,7 +191,9 @@ var scaffoldCommand = /*#__PURE__*/Object.freeze({
|
|
|
202
191
|
});
|
|
203
192
|
|
|
204
193
|
function handler(providedDecisions) {
|
|
205
|
-
return
|
|
194
|
+
// return extendEslintConfig(defineScaffoldOptions(defineDecisions(providedDecisions)), javascriptScaffolderFactory);
|
|
195
|
+
|
|
196
|
+
return extendEslintConfig(defineScaffoldOptions(defineDecisions(providedDecisions)), javascriptScaffolderFactory);
|
|
206
197
|
}
|
|
207
198
|
|
|
208
199
|
const command = 'extend-eslint-config';
|
|
@@ -227,7 +218,7 @@ function cli (yargs) {
|
|
|
227
218
|
.argv;
|
|
228
219
|
}
|
|
229
220
|
|
|
230
|
-
cli(
|
|
221
|
+
cli(yargs);
|
|
231
222
|
|
|
232
|
-
|
|
233
|
-
//# sourceMappingURL=pragmatic-divops.
|
|
223
|
+
updateNotifier({pkg}).notify();
|
|
224
|
+
//# sourceMappingURL=pragmatic-divops.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pragmatic-divops.mjs","sources":["../src/common/enhanced-scaffolders.js","../src/common/options.js","../src/commands/scaffold/command.js","../src/commands/extend-eslint-config/command.js","../src/cli.js","../src/index.js"],"sourcesContent":["import {scaffold as scaffoldJavaScript} from '@form8ion/javascript';\nimport {scaffold as scaffoldGitHubActionsCi} from '@form8ion/github-actions-node-ci';\nimport {scaffold as scaffoldMocha} from '@form8ion/mocha-scaffolder';\nimport {scaffold as scaffoldEslintConfig} from '@form8ion/eslint-config-extender';\nimport {scaffold as scaffoldGatsby} from '@form8ion/gatsby';\nimport {scaffold as scaffoldNetlify} from '@travi/netlify-scaffolder';\nimport {prompt} from '@travi/github-scaffolder';\n\nexport function javascriptScaffolderFactory(decisions) {\n const scope = '@pragmatic-divops';\n\n return options => scaffoldJavaScript({\n ...options,\n configs: {\n eslint: {scope},\n remark: `${scope}/remark-preset`,\n babelPreset: {name: '@form8ion', packageName: '@form8ion/babel-preset'},\n commitlint: {name: scope, packageName: `${scope}/commitlint-config`}\n },\n overrides: {npmAccount: 'form8ion'},\n ciServices: {'GitHub Actions': {scaffolder: scaffoldGitHubActionsCi, public: true}},\n hosts: {Netlify: {projectTypes: ['static'], scaffolder: scaffoldNetlify}},\n applicationTypes: {Gatsby: {scaffolder: scaffoldGatsby}},\n packageTypes: {'ESLint Config': {scaffolder: scaffoldEslintConfig}},\n unitTestFrameworks: {mocha: {scaffolder: scaffoldMocha}},\n decisions\n });\n}\n\nexport function githubPromptFactory(decisions) {\n return () => prompt({account: 'pragmatic-divops', decisions});\n}\n","import {scaffold as scaffoldRenovate} from '@form8ion/renovate-scaffolder';\nimport {questionNames as projectQuestionNames} from '@form8ion/project';\nimport {questionNames as jsQuestionNames} from '@form8ion/javascript';\nimport {packageManagers} from '@form8ion/javascript-core';\nimport {scaffold as scaffoldGithub} from '@travi/github-scaffolder';\nimport {githubPromptFactory, javascriptScaffolderFactory} from './enhanced-scaffolders.js';\n\nconst traviName = 'Matt Travi';\nconst orgName = 'pragmatic-divops';\n\nexport function defineDecisions(providedDecisions) {\n return {\n ...providedDecisions,\n [projectQuestionNames.COPYRIGHT_HOLDER]: traviName,\n [projectQuestionNames.REPO_HOST]: 'GitHub',\n [projectQuestionNames.REPO_OWNER]: orgName,\n [projectQuestionNames.DEPENDENCY_UPDATER]: 'Renovate',\n [jsQuestionNames.AUTHOR_NAME]: traviName,\n [jsQuestionNames.AUTHOR_EMAIL]: 'npm@travi.org',\n [jsQuestionNames.AUTHOR_URL]: 'https://matt.travi.org',\n [jsQuestionNames.UNIT_TEST_FRAMEWORK]: 'mocha',\n [jsQuestionNames.SCOPE]: orgName,\n [jsQuestionNames.CI_SERVICE]: 'GitHub Actions',\n [jsQuestionNames.PACKAGE_MANAGER]: packageManagers.NPM\n };\n}\n\nexport function defineScaffoldOptions(decisions) {\n return {\n languages: {JavaScript: javascriptScaffolderFactory(decisions)},\n vcsHosts: {GitHub: {scaffolder: scaffoldGithub, prompt: githubPromptFactory(decisions), public: true}},\n overrides: {copyrightHolder: traviName},\n dependencyUpdaters: {Renovate: {scaffolder: scaffoldRenovate}},\n decisions\n };\n}\n","import {scaffold} from '@form8ion/project';\nimport {defineDecisions, defineScaffoldOptions} from '../../common/options.js';\n\nexport function handler(providedDecisions) {\n return scaffold(defineScaffoldOptions(defineDecisions(providedDecisions)));\n}\n\nexport const command = 'scaffold';\nexport const describe = 'Scaffold a new project';\n","import {extendEslintConfig} from '@form8ion/eslint-config-extender';\n\nimport {defineDecisions, defineScaffoldOptions} from '../../common/options.js';\nimport {javascriptScaffolderFactory} from '../../common/enhanced-scaffolders.js';\n\nexport function handler(providedDecisions) {\n // return extendEslintConfig(defineScaffoldOptions(defineDecisions(providedDecisions)), javascriptScaffolderFactory);\n\n return extendEslintConfig(defineScaffoldOptions(defineDecisions(providedDecisions)), javascriptScaffolderFactory);\n}\n\nexport const command = 'extend-eslint-config';\nexport const describe = 'Extend a @form8ion shareable ESLint config';\n","import * as scaffoldCommand from './commands/scaffold/index.js';\nimport * as extendEslintConfigCommand from './commands/extend-eslint-config/index.js';\n\nexport default function (yargs) {\n return yargs\n .scriptName('pragmatic-divops')\n .usage('Usage: $0 <cmd> [args]')\n .command(scaffoldCommand)\n .command(extendEslintConfigCommand)\n .demandCommand(1, 'You need at least one command before moving on')\n .help('h')\n .alias('h', 'help')\n .argv;\n}\n","import yargs from 'yargs';\nimport updateNotifier from 'update-notifier';\nimport pkg from '../package.json';\nimport cli from './cli';\n\ncli(yargs);\n\nupdateNotifier({pkg}).notify();\n"],"names":["scaffoldJavaScript","scaffoldGitHubActionsCi","scaffoldNetlify","scaffoldGatsby","scaffoldEslintConfig","scaffoldMocha","projectQuestionNames","jsQuestionNames","scaffoldGithub","scaffoldRenovate","handler","scaffold","command","describe"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
"name": "@pragmatic-divops/cli",
|
|
3
3
|
"description": "cli for various organization tools",
|
|
4
4
|
"license": "MIT",
|
|
5
|
-
"version": "1.
|
|
5
|
+
"version": "1.8.0-alpha.1",
|
|
6
|
+
"type": "module",
|
|
6
7
|
"bin": {
|
|
7
|
-
"pragmatic-divops": "bin/pragmatic-divops.
|
|
8
|
+
"pragmatic-divops": "bin/pragmatic-divops.mjs"
|
|
8
9
|
},
|
|
9
10
|
"files": [
|
|
10
11
|
"bin/"
|
|
@@ -31,11 +32,11 @@
|
|
|
31
32
|
"prepack": "run-s build",
|
|
32
33
|
"test:unit": "nyc run-s test:unit:base",
|
|
33
34
|
"coverage:report": "nyc report --reporter=text-lcov > coverage.lcov && codecov",
|
|
34
|
-
"test:unit:base": "DEBUG=any mocha 'src/**/*-test.js'",
|
|
35
|
+
"test:unit:base": "DEBUG=any mocha --loader=testdouble 'src/**/*-test.js'",
|
|
35
36
|
"lint:peer": "npm ls >/dev/null",
|
|
36
37
|
"lint:gherkin": "gherkin-lint",
|
|
37
38
|
"test:integration": "run-s 'test:integration:base -- --profile noWip'",
|
|
38
|
-
"test:integration:base": "DEBUG=any cucumber-js test/integration
|
|
39
|
+
"test:integration:base": "NODE_OPTIONS=\"--loader=testdouble\" DEBUG=any cucumber-js test/integration",
|
|
39
40
|
"test:integration:debug": "DEBUG=test run-s test:integration",
|
|
40
41
|
"test:integration:wip": "run-s 'test:integration:base -- --profile wip'",
|
|
41
42
|
"test:integration:wip:debug": "DEBUG=test run-s 'test:integration:wip'",
|
|
@@ -46,31 +47,26 @@
|
|
|
46
47
|
"@form8ion/eslint-config-extender": "3.1.2",
|
|
47
48
|
"@form8ion/gatsby": "1.0.0",
|
|
48
49
|
"@form8ion/github-actions-node-ci": "3.6.3",
|
|
49
|
-
"@form8ion/javascript": "6.0.
|
|
50
|
+
"@form8ion/javascript": "6.0.9",
|
|
50
51
|
"@form8ion/javascript-core": "6.0.1",
|
|
51
|
-
"@form8ion/mocha-scaffolder": "2.0.
|
|
52
|
+
"@form8ion/mocha-scaffolder": "2.0.2",
|
|
52
53
|
"@form8ion/project": "13.2.1",
|
|
53
54
|
"@form8ion/renovate-scaffolder": "1.7.0",
|
|
54
55
|
"@travi/github-scaffolder": "8.0.1",
|
|
55
56
|
"@travi/netlify-scaffolder": "1.6.0",
|
|
56
|
-
"source-map-support": "0.5.21",
|
|
57
57
|
"update-notifier": "6.0.2",
|
|
58
58
|
"yargs": "17.5.1"
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
61
|
-
"@babel/register": "7.17.7",
|
|
62
61
|
"@cucumber/cucumber": "8.3.1",
|
|
63
62
|
"@form8ion/core": "1.8.0",
|
|
64
|
-
"@
|
|
65
|
-
"@pragmatic-divops/
|
|
66
|
-
"@pragmatic-divops/eslint-config": "1.0.
|
|
67
|
-
"@pragmatic-divops/eslint-config-
|
|
68
|
-
"@pragmatic-divops/
|
|
69
|
-
"@pragmatic-divops/remark-preset": "2.0.10",
|
|
63
|
+
"@pragmatic-divops/commitlint-config": "1.0.8",
|
|
64
|
+
"@pragmatic-divops/eslint-config": "1.0.28",
|
|
65
|
+
"@pragmatic-divops/eslint-config-cucumber": "1.0.0",
|
|
66
|
+
"@pragmatic-divops/eslint-config-mocha": "1.0.2",
|
|
67
|
+
"@pragmatic-divops/remark-preset": "2.0.6",
|
|
70
68
|
"@rollup/plugin-node-resolve": "13.3.0",
|
|
71
|
-
"@travi/any": "2.
|
|
72
|
-
"@travi/babel-preset": "3.0.88",
|
|
73
|
-
"babel-plugin-istanbul": "6.1.1",
|
|
69
|
+
"@travi/any": "2.0.18",
|
|
74
70
|
"ban-sensitive-files": "1.9.18",
|
|
75
71
|
"chai": "4.3.6",
|
|
76
72
|
"codecov": "3.8.3",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pragmatic-divops.js","sources":["../src/common/enhanced-scaffolders.js","../src/common/options.js","../src/commands/scaffold/command.js","../src/commands/extend-eslint-config/command.js","../src/cli.js","../src/index.js"],"sourcesContent":["import {scaffold as scaffoldJavaScript} from '@form8ion/javascript';\nimport {scaffold as scaffoldGitHubActionsCi} from '@form8ion/github-actions-node-ci';\nimport {scaffold as scaffoldMocha} from '@form8ion/mocha-scaffolder';\nimport {scaffold as scaffoldEslintConfig} from '@form8ion/eslint-config-extender';\nimport {scaffold as scaffoldGatsby} from '@form8ion/gatsby';\nimport {scaffold as scaffoldNetlify} from '@travi/netlify-scaffolder';\nimport {prompt} from '@travi/github-scaffolder';\n\nexport function javascriptScaffolderFactory(decisions) {\n const scope = '@pragmatic-divops';\n\n return options => scaffoldJavaScript({\n ...options,\n configs: {\n eslint: {scope},\n remark: `${scope}/remark-preset`,\n babelPreset: {name: '@form8ion', packageName: '@form8ion/babel-preset'},\n commitlint: {name: scope, packageName: `${scope}/commitlint-config`}\n },\n overrides: {npmAccount: 'form8ion'},\n ciServices: {'GitHub Actions': {scaffolder: scaffoldGitHubActionsCi, public: true}},\n hosts: {Netlify: {projectTypes: ['static'], scaffolder: scaffoldNetlify}},\n applicationTypes: {Gatsby: {scaffolder: scaffoldGatsby}},\n packageTypes: {'ESLint Config': {scaffolder: scaffoldEslintConfig}},\n unitTestFrameworks: {mocha: {scaffolder: scaffoldMocha}},\n decisions\n });\n}\n\nexport function githubPromptFactory(decisions) {\n return () => prompt({account: 'pragmatic-divops', decisions});\n}\n","import {scaffold as scaffoldRenovate} from '@form8ion/renovate-scaffolder';\nimport {questionNames as projectQuestionNames} from '@form8ion/project';\nimport {questionNames as jsQuestionNames} from '@form8ion/javascript';\nimport {packageManagers} from '@form8ion/javascript-core';\nimport {scaffold as scaffoldGithub} from '@travi/github-scaffolder';\nimport {githubPromptFactory, javascriptScaffolderFactory} from './enhanced-scaffolders';\n\nconst traviName = 'Matt Travi';\nconst orgName = 'pragmatic-divops';\n\nexport function defineDecisions(providedDecisions) {\n return {\n ...providedDecisions,\n [projectQuestionNames.COPYRIGHT_HOLDER]: traviName,\n [projectQuestionNames.REPO_HOST]: 'GitHub',\n [projectQuestionNames.REPO_OWNER]: orgName,\n [projectQuestionNames.DEPENDENCY_UPDATER]: 'Renovate',\n [jsQuestionNames.AUTHOR_NAME]: traviName,\n [jsQuestionNames.AUTHOR_EMAIL]: 'npm@travi.org',\n [jsQuestionNames.AUTHOR_URL]: 'https://matt.travi.org',\n [jsQuestionNames.UNIT_TEST_FRAMEWORK]: 'mocha',\n [jsQuestionNames.SCOPE]: orgName,\n [jsQuestionNames.CI_SERVICE]: 'GitHub Actions',\n [jsQuestionNames.PACKAGE_MANAGER]: packageManagers.NPM\n };\n}\n\nexport function defineScaffoldOptions(decisions) {\n return {\n languages: {JavaScript: javascriptScaffolderFactory(decisions)},\n vcsHosts: {GitHub: {scaffolder: scaffoldGithub, prompt: githubPromptFactory(decisions), public: true}},\n overrides: {copyrightHolder: traviName},\n dependencyUpdaters: {Renovate: {scaffolder: scaffoldRenovate}},\n decisions\n };\n}\n","import {scaffold} from '@form8ion/project';\nimport {defineDecisions, defineScaffoldOptions} from '../../common/options';\n\nexport function handler(providedDecisions) {\n return scaffold(defineScaffoldOptions(defineDecisions(providedDecisions)));\n}\n\nexport const command = 'scaffold';\nexport const describe = 'Scaffold a new project';\n","import {extendEslintConfig} from '@form8ion/eslint-config-extender';\nimport {defineDecisions, defineScaffoldOptions} from '../../common/options';\nimport {javascriptScaffolderFactory} from '../../common/enhanced-scaffolders';\n\nexport function handler(providedDecisions) {\n return extendEslintConfig(defineScaffoldOptions(defineDecisions(providedDecisions)), javascriptScaffolderFactory);\n}\n\nexport const command = 'extend-eslint-config';\nexport const describe = 'Extend a @form8ion shareable ESLint config';\n","import 'source-map-support/register';\nimport * as scaffoldCommand from './commands/scaffold';\nimport * as extendEslintConfigCommand from './commands/extend-eslint-config';\n\nexport default function (yargs) {\n return yargs\n .scriptName('pragmatic-divops')\n .usage('Usage: $0 <cmd> [args]')\n .command(scaffoldCommand)\n .command(extendEslintConfigCommand)\n .demandCommand(1, 'You need at least one command before moving on')\n .help('h')\n .alias('h', 'help')\n .argv;\n}\n","import yargs from 'yargs';\nimport updateNotifier from 'update-notifier';\nimport pkg from '../package.json';\nimport cli from './cli';\n\ncli(yargs);\n\nupdateNotifier({pkg}).notify();\n"],"names":["scaffoldJavaScript","scaffoldGitHubActionsCi","scaffoldNetlify","scaffoldGatsby","scaffoldEslintConfig","scaffoldMocha","prompt","projectQuestionNames","jsQuestionNames","packageManagers","scaffoldGithub","scaffoldRenovate","handler","scaffold","command","describe","extendEslintConfig","yargs","updateNotifier"],"mappings":"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"}
|