Skip to content

Commit 45e1f91

Browse files
authored
feat: updated package scripts (#249)
1 parent 791114a commit 45e1f91

File tree

6 files changed

+63
-67
lines changed

6 files changed

+63
-67
lines changed

.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ root = true
55
charset = utf-8
66
indent_style = space
77
indent_size = 4
8-
# Unix-style newlines with a newline ending every file
8+
max_line_length = 120
99
end_of_line = lf
1010
insert_final_newline = true
1111
trim_trailing_whitespace = true

.vscode/settings.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,6 @@
1717
"javascript",
1818
"typescript",
1919
"html"
20-
]
20+
],
21+
"editor.rulers": [120]
2122
}

package.json

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -159,33 +159,25 @@
159159
"scripts": {
160160
"ng": "ng",
161161
"prepare": "husky",
162-
"validate:license": "ts-node --project ./tools/validate-licenses/tsconfig.json ./tools/validate-licenses/validate-licenses.ts",
162+
"postinstall": "tsc -p tools/builders/tsconfig.json",
163163
"build:cdk": "ng build cdk",
164164
"build:angular-moment-adapter": "ng build angular-moment-adapter",
165165
"build:angular-luxon-adapter": "ng build angular-luxon-adapter",
166166
"build:components": "ng build components",
167167
"build:docs-examples-module": "ts-node --project ./tools/example-module/tsconfig.json ./tools/example-module/index.ts",
168168
"build:docs-examples": "ng build docs-examples",
169-
"build:cli": "rimraf dist/cli && rollup -c ./packages/cli/rollup.config.js && node ./packages/cli/scripts/copy-meta-to-dist.mjs",
169+
"build:cli": "rimraf dist/cli && rollup -c ./packages/cli/rollup.config.js && node ./packages/cli/scripts/copy-meta-to-dist.js",
170170
"build:tokens:docs": "node ./apps/docs/scripts/build-tokens.js",
171171
"build:docs-content": "ts-node --project ./tools/markdown-to-html/tsconfig.json ./tools/markdown-to-html/transform-markdown.ts && yarn run docs:api-gen",
172172
"build:package-docs-content": "ts-node --project ./tools/package-docs-content/tsconfig.json ./tools/package-docs-content/package-docs-content.ts",
173173
"styles:built-all": "ts-node --project tools/scss-compiler/tsconfig.json tools/scss-compiler/scss-bundle.ts",
174-
"build:schematics": "rimraf packages/schematics/dist && rollup --failAfterWarnings -c packages/schematics/rollup.config.js && node ./packages/schematics/scripts/copy-meta-to-dist.mjs",
174+
"build:schematics": "rimraf packages/schematics/dist && rollup --failAfterWarnings -c packages/schematics/rollup.config.js && node ./packages/schematics/scripts/copy-meta-to-dist.js",
175175
"docs": "yarn run build:cdk && yarn run build:components && yarn run styles:built-all && yarn run build:angular-luxon-adapter && yarn run build:angular-moment-adapter && yarn run build:docs-content && yarn run build:package-docs-content && yarn run build:docs-examples-module && yarn run build:docs-examples && yarn run docs:start:dev",
176176
"docs:start:dev": "ng serve --configuration=development koobiq-docs",
177177
"docs:start:prod": "ng serve --configuration=production koobiq-docs",
178178
"docs:build": "ng build koobiq-docs --configuration production",
179179
"docs:update-versions": "ts-node --project tools/update-doc-versions/tsconfig.json tools/update-doc-versions/update-doc-versions.ts",
180180
"docs:api-gen": "rimraf dist/api-gen && rollup -c tools/api-gen/rollup.config.js && node dist/api-gen/generate-api-docs.mjs",
181-
"postinstall": "tsc -p tools/builders/tsconfig.json",
182-
"eslint": "eslint . --ext='.js,.ts,.html'",
183-
"eslint:fix": "yarn run eslint --fix",
184-
"stylelint": "stylelint '**/*.{css,scss}'",
185-
"stylelint:fix": "yarn run stylelint --fix",
186-
"cspell": "cspell '**/*.md' --unique",
187-
"prettier": "prettier '**/*.{css,scss,md,yml,json,js,ts,xml,html}' --check",
188-
"prettier:fix": "yarn run prettier --write",
189181
"release:extract-changelog": "ts-node --project tools/extract-release-notes/tsconfig.json tools/extract-release-notes",
190182
"release:stage": "ts-node --project packages/cli/tsconfig.lib.json packages/cli/src/cli stage",
191183
"release:stage:commit": "ts-node --project packages/cli/tsconfig.lib.json packages/cli/src/cli stage-commit",
@@ -261,7 +253,16 @@
261253
"unit:angular-luxon-adapter": "ng test angular-luxon-adapter",
262254
"unit:schematics": "jest --roots packages/schematics",
263255
"unit:koobiq-docs": "ng test koobiq-docs",
264-
"unit:api-gen": "jest --roots tools/api-gen"
256+
"unit:api-gen": "jest --roots tools/api-gen",
257+
"-----CI-----": "---------------------------------------------------------------------------------------------",
258+
"validate:license": "ts-node --project ./tools/validate-licenses/tsconfig.json ./tools/validate-licenses/validate-licenses.ts",
259+
"eslint": "eslint . --ext='.js,.ts,.html'",
260+
"eslint:fix": "yarn run eslint --fix",
261+
"stylelint": "stylelint '**/*.{css,scss}'",
262+
"stylelint:fix": "yarn run stylelint --fix",
263+
"cspell": "cspell '**/*.md' --unique",
264+
"prettier": "prettier '**/*.{css,scss,md,yml,json,js,ts,xml,html}' --check",
265+
"prettier:fix": "yarn run prettier --write"
265266
},
266267
"release": {
267268
"packages": [
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
const { copyFileSync, existsSync, mkdirSync, readFileSync, writeFileSync } = require('fs');
2+
const { resolve } = require('path');
3+
4+
const getSrcPckgPath = (root) => resolve(__dirname, '..', root);
5+
const getDistPath = (root) => resolve(__dirname, '../../../', root);
6+
const distCLIPath = 'dist/cli';
7+
8+
if (!existsSync(getDistPath('dist'))) {
9+
mkdirSync(getDistPath('dist'));
10+
}
11+
12+
if (!existsSync(getDistPath(distCLIPath))) {
13+
mkdirSync(getDistPath(distCLIPath));
14+
mkdirSync(getDistPath(`${distCLIPath}/bin`));
15+
mkdirSync(getDistPath(`${distCLIPath}/dist`));
16+
mkdirSync(getDistPath(`${distCLIPath}/dist/templates`));
17+
}
18+
19+
copyFileSync(getSrcPckgPath('package.json'), getDistPath(`${distCLIPath}/package.json`));
20+
copyFileSync(getSrcPckgPath('README.md'), getDistPath(`${distCLIPath}/README.md`));
21+
copyFileSync(getSrcPckgPath('LICENSE'), getDistPath(`${distCLIPath}/LICENSE`));
22+
copyFileSync(getSrcPckgPath('bin/cli'), getDistPath(`${distCLIPath}/bin/cli`));
23+
copyFileSync(getSrcPckgPath('dist/cli.js'), getDistPath(`${distCLIPath}/dist/cli.js`));
24+
copyFileSync(getSrcPckgPath('dist/cli.js.map'), getDistPath(`${distCLIPath}/dist/cli.js.map`));
25+
26+
// Add all templates to make cli work as external tool
27+
['commit', 'template', 'footer', 'header'].forEach((template) => {
28+
copyFileSync(
29+
getSrcPckgPath(`src/release/templates/${template}.hbs`),
30+
getDistPath(`${distCLIPath}/dist/templates/${template}.hbs`)
31+
);
32+
});
33+
34+
// Update package version
35+
const currentVersion = JSON.parse(readFileSync('package.json', 'utf8')).version;
36+
const packageContent = JSON.parse(readFileSync(`${distCLIPath}/package.json`, 'utf8'));
37+
packageContent.version = currentVersion;
38+
39+
writeFileSync(`${distCLIPath}/package.json`, JSON.stringify(packageContent, undefined, 4));

packages/cli/scripts/copy-meta-to-dist.mjs

Lines changed: 0 additions & 41 deletions
This file was deleted.

packages/schematics/scripts/copy-meta-to-dist.mjs renamed to packages/schematics/scripts/copy-meta-to-dist.js

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,7 @@
1-
import { access, copyFile, mkdir } from 'fs/promises';
2-
import path from 'path';
3-
import { fileURLToPath } from 'url';
1+
const { access, copyFile, mkdir } = require('fs/promises');
2+
const { resolve, join } = require('path');
43

5-
const __filename = fileURLToPath(import.meta.url);
6-
const __dirname = path.dirname(__filename);
7-
8-
const resolvePath = (...segments) => path.resolve(__dirname, ...segments);
4+
const resolvePath = (...segments) => resolve(__dirname, ...segments);
95

106
const ensureDirectoryExistence = async (filePath) => {
117
try {
@@ -26,18 +22,18 @@ const copyFileWrapper = async (src, dest) => {
2622

2723
const init = async () => {
2824
const distCLIPath = resolvePath('../../../dist/components');
29-
const schematicsPath = path.join(distCLIPath, 'schematics');
30-
const ngAddPath = path.join(schematicsPath, 'ng-add');
25+
const schematicsPath = join(distCLIPath, 'schematics');
26+
const ngAddPath = join(schematicsPath, 'ng-add');
3127

3228
// Ensure directories exist
3329
await ensureDirectoryExistence(distCLIPath);
3430
await ensureDirectoryExistence(schematicsPath);
3531
await ensureDirectoryExistence(ngAddPath);
3632

3733
// Copy files
38-
await copyFileWrapper(resolvePath('../dist/ng-add/index.js'), path.join(ngAddPath, 'index.js'));
39-
await copyFileWrapper(resolvePath('../src/ng-add/schema.json'), path.join(ngAddPath, 'schema.json'));
40-
await copyFileWrapper(resolvePath('../src/collection.json'), path.join(schematicsPath, 'collection.json'));
34+
await copyFileWrapper(resolvePath('../dist/ng-add/index.js'), join(ngAddPath, 'index.js'));
35+
await copyFileWrapper(resolvePath('../src/ng-add/schema.json'), join(ngAddPath, 'schema.json'));
36+
await copyFileWrapper(resolvePath('../src/collection.json'), join(schematicsPath, 'collection.json'));
4137
};
4238

4339
init().catch((error) => console.error(`Failed to initialize directories and copy files: ${error.message}`));

0 commit comments

Comments
 (0)