Skip to content

Commit

Permalink
feat(js-configs): extracted common configs for use across scaffolding…
Browse files Browse the repository at this point in the history
… and lifting
  • Loading branch information
travi committed Jan 10, 2025
1 parent a106db9 commit a8c79e6
Show file tree
Hide file tree
Showing 5 changed files with 31 additions and 20 deletions.
13 changes: 12 additions & 1 deletion src/common/enhanced-lifters.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,18 @@ import {plugins} from './javascript-options.js';
export function javascript(options) {
return lift({
...options,
configs: {eslint: {scope: '@travi'}},
configs: {
eslint: {scope: '@travi'},
commitlint: {
name: 'travi',
packageName: 'commitlint-config-travi'
},
babelPreset: {
name: '@travi',
packageName: '@travi/babel-preset'
},
remark: 'remark-preset-lint-travi'
},
enhancers: ungroupObject(plugins())
});
}
3 changes: 2 additions & 1 deletion src/common/enhanced-lifters.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import {when} from 'jest-when';

import {plugins} from './javascript-options.js';
import {javascript} from './enhanced-lifters.js';
import configs from './javascript-configs.js';

vi.mock('@form8ion/core');
vi.mock('./javascript-options.js');
Expand All @@ -28,7 +29,7 @@ describe('enhanced lifters', () => {
plugins.mockReturnValue(groupedPlugins);
when(ungroupObject).calledWith(groupedPlugins).mockReturnValue(ungroupedPlugins);
when(jsLifter.lift)
.calledWith({...options, configs: {eslint: {scope: '@travi'}}, enhancers: ungroupedPlugins})
.calledWith({...options, configs, enhancers: ungroupedPlugins})
.mockResolvedValue(results);

expect(await javascript(options)).toEqual(results);
Expand Down
12 changes: 12 additions & 0 deletions src/common/javascript-configs.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
export default {
eslint: {scope: '@travi'},
commitlint: {
name: 'travi',
packageName: 'commitlint-config-travi'
},
babelPreset: {
name: '@travi',
packageName: '@travi/babel-preset'
},
remark: 'remark-preset-lint-travi'
};
15 changes: 3 additions & 12 deletions src/common/javascript-options.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,9 @@ import * as netlifyPlugin from '@travi/netlify-scaffolder';
import * as appEngineStandardPlugin from '@travi/node-app-engine-standard-scaffolder';
import * as githubWorkflowsPlugin from '@form8ion/github-actions-node-ci';
import * as circleCiPlugin from '@travi/circle-scaffolder-javascript';

import {unitTestFrameworks} from './test-frameworks.js';
import configs from './javascript-configs.js';

export function plugins() {
return {
Expand Down Expand Up @@ -53,18 +55,7 @@ export function plugins() {
export function defineScaffoldJavascriptOptions(decisions, options) {
return {
...options,
configs: {
eslint: {scope: '@travi'},
commitlint: {
name: 'travi',
packageName: 'commitlint-config-travi'
},
babelPreset: {
name: '@travi',
packageName: '@travi/babel-preset'
},
remark: 'remark-preset-lint-travi'
},
configs,
plugins: plugins(),
decisions: {
...decisions,
Expand Down
8 changes: 2 additions & 6 deletions src/common/javascript-options.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ import {describe, expect, it} from 'vitest';
import any from '@travi/any';

import {unitTestFrameworks} from './test-frameworks.js';
import configs from './javascript-configs.js';
import {defineScaffoldJavascriptOptions, plugins} from './javascript-options.js';

describe('common javascript config', () => {
Expand All @@ -30,12 +31,7 @@ describe('common javascript config', () => {

expect(defineScaffoldJavascriptOptions(decisions, options)).toEqual({
...options,
configs: {
eslint: {scope: '@travi'},
commitlint: {name: 'travi', packageName: 'commitlint-config-travi'},
babelPreset: {name: '@travi', packageName: '@travi/babel-preset'},
remark: 'remark-preset-lint-travi'
},
configs,
plugins: plugins(),
decisions: {
...decisions,
Expand Down

0 comments on commit a8c79e6

Please sign in to comment.