Compare commits
17 Commits
Author | SHA1 | Date | |
---|---|---|---|
4f0fb26a15 | |||
00f06b48f3 | |||
74f4cb3034 | |||
b98dc7a9fa | |||
924470407a | |||
f346a397d5 | |||
c05f2d35e5 | |||
c0a409bbc9 | |||
7cb798077d | |||
fc4409bea4 | |||
27ee8195e8 | |||
2f80abafc2 | |||
0d95cda8b5 | |||
4a9d98b3f9 | |||
c99ff2556e | |||
f1d75a3aba | |||
377fa83fe7 |
@ -18,12 +18,12 @@ fileName: package.json
|
|||||||
"author": "{{author.name}}",
|
"author": "{{author.name}}",
|
||||||
"license": "{{module.license}}",
|
"license": "{{module.license}}",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@api.global/typedserver": "^1.0.16",
|
"@api.global/typedserver": "^3.0.51",
|
||||||
"@consentsoftware_private/catalog": "^1.0.73",
|
"@consentsoftware_private/catalog": "^1.0.73",
|
||||||
"@design.estate/dees-domtools": "^2.0.23",
|
"@design.estate/dees-domtools": "^2.0.23",
|
||||||
"@design.estate/dees-element": "^2.0.15",
|
"@design.estate/dees-element": "^2.0.15",
|
||||||
"@push.rocks/smartlog": "^2.0.1",
|
"@push.rocks/qenv": "^6.0.5",
|
||||||
"@push.rocks/qenv": "^5.0.2",
|
"@push.rocks/smartlog": "^3.0.7",
|
||||||
"@push.rocks/smartpath": "^5.0.5",
|
"@push.rocks/smartpath": "^5.0.5",
|
||||||
"@push.rocks/smartstate": "^2.0.0",
|
"@push.rocks/smartstate": "^2.0.0",
|
||||||
"@push.rocks/websetup": "^3.0.15"
|
"@push.rocks/websetup": "^3.0.15"
|
||||||
|
@ -3,10 +3,10 @@ import * as paths from './ffb.paths.js';
|
|||||||
|
|
||||||
export const runCli = async () => {
|
export const runCli = async () => {
|
||||||
const serviceQenv = new plugins.qenv.Qenv('./', './.nogit', false);
|
const serviceQenv = new plugins.qenv.Qenv('./', './.nogit', false);
|
||||||
const websiteServer = new plugins.loleWebsiteserver.LoleWebsiteServer({
|
const websiteServer = new plugins.typedserver.utilityservers.UtilityWebsiteServer({
|
||||||
feedMetadata: null,
|
feedMetadata: null,
|
||||||
domain: '{{module.projectDomain}}',
|
domain: '{{module.projectDomain}}',
|
||||||
serveDir: paths.distWebDir
|
serveDir: paths.distWebDir,
|
||||||
});
|
});
|
||||||
await websiteServer.start();
|
await websiteServer.start();
|
||||||
};
|
};
|
||||||
|
@ -45,7 +45,7 @@ const run = async () => {
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
const serviceWorker = serviceworker.getServiceWorker();
|
const serviceWorker = serviceworker.getServiceworkerClient();
|
||||||
|
|
||||||
const mainTemplate = html`
|
const mainTemplate = html`
|
||||||
<style>
|
<style>
|
||||||
|
61
changelog.md
61
changelog.md
@ -1,32 +1,82 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 2024-10-27 - 1.10.0 - feat(mod_format)
|
||||||
|
Add support for tsconfig.json formatting
|
||||||
|
|
||||||
|
- Added a new script to format tsconfig.json.
|
||||||
|
- Updated package.json to include `@git.zone/tspublish` as a dependency.
|
||||||
|
|
||||||
|
## 2024-10-23 - 1.9.126 - fix(format)
|
||||||
|
Remove redundant package.json property checks
|
||||||
|
|
||||||
|
- Removed property checks for `main`, `typings`, and `browserslist` from format.packagejson.ts
|
||||||
|
- This change streamlines the formatting process by removing unnecessary exits
|
||||||
|
|
||||||
|
## 2024-09-29 - 1.9.125 - fix(cli)
|
||||||
|
Fix package version configuration and formatting issues
|
||||||
|
|
||||||
|
- Updated metadata fields in package.json (repository URL, bugs URL, and homepage).
|
||||||
|
- Ensured presence and correctness of essential fields in package.json (main, typings, files, scripts, etc.).
|
||||||
|
- Added missing Prettier default TypeScript and Markdown configurations.
|
||||||
|
|
||||||
|
## 2024-09-27 - 1.9.124 - fix(cli)
|
||||||
|
Ensured proper existence and initialization of readme files
|
||||||
|
|
||||||
|
- Ensured readme.md and readme.hints.md files are created and initialized if they do not exist.
|
||||||
|
|
||||||
|
## 2024-09-27 - 1.9.123 - fix(core)
|
||||||
|
No changes detected
|
||||||
|
|
||||||
|
|
||||||
|
## 2024-09-27 - 1.9.123 - fix(core)
|
||||||
|
Update dependencies and improve build configurations
|
||||||
|
|
||||||
|
- Updated several dependencies in package.json for better compatibility
|
||||||
|
- Changed typedserver dependency version in website template
|
||||||
|
- Adjusted website server and service worker in templates
|
||||||
|
- Added security and test workflows for Gitea repositories
|
||||||
|
- Added and configured .gitignore, .npmrc, .vscode settings for the project
|
||||||
|
- Provided initial structure for readme and readme hints
|
||||||
|
|
||||||
|
## 2024-06-24 - 1.9.122 - fix(mod_commit)
|
||||||
|
Update package.json dependencies: @git.zone/tsdoc and @push.rocks/smartpromise to latest versions.
|
||||||
|
|
||||||
|
- - Updated @git.zone/tsdoc to ^1.3.12
|
||||||
|
- - Updated @push.rocks/smartfile to ^11.0.21
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.9.121 - fix(mod_commit)
|
||||||
|
Fix changelog template rendering by removing extra new line when no version details are provided.
|
||||||
|
|
||||||
|
- Update package.json dependencies: @git.zone/tsdoc and @push.rocks/smartpromise to latest versions.
|
||||||
|
|
||||||
|
## 2024-06-23 - 1.9.120 - fix(mod_commit)
|
||||||
|
Handle edge case for empty version details in changelog formatting
|
||||||
|
|
||||||
|
- Added check for the length of the recommendedNextVersionDetails array
|
||||||
|
- Ensure no extra newline in changelog if there are no version details
|
||||||
|
|
||||||
## 2024-06-23 - 1.9.119 - fix(dependencies)
|
## 2024-06-23 - 1.9.119 - fix(dependencies)
|
||||||
Update @git.zone/tsdoc to v1.3.8
|
Update @git.zone/tsdoc to v1.3.8
|
||||||
|
|
||||||
- Updated @git.zone/tsdoc from v1.3.7 to v1.3.8 in package.json
|
- Updated @git.zone/tsdoc from v1.3.7 to v1.3.8 in package.json
|
||||||
|
|
||||||
|
|
||||||
## 2024-06-23 - 1.9.118 - fix(dependencies)
|
## 2024-06-23 - 1.9.118 - fix(dependencies)
|
||||||
Update @git.zone/tsdoc to version 1.3.7
|
Update @git.zone/tsdoc to version 1.3.7
|
||||||
|
|
||||||
- Bump @git.zone/tsdoc from 1.3.6 to 1.3.7 in both package.json and pnpm-lock.yaml
|
- Bump @git.zone/tsdoc from 1.3.6 to 1.3.7 in both package.json and pnpm-lock.yaml
|
||||||
|
|
||||||
|
|
||||||
## 2024-06-23 - 1.9.117 - fix(dependencies)
|
## 2024-06-23 - 1.9.117 - fix(dependencies)
|
||||||
Update @git.zone/tsdoc dependency to v1.3.6
|
Update @git.zone/tsdoc dependency to v1.3.6
|
||||||
|
|
||||||
- Updated @git.zone/tsdoc version from 1.3.5 to 1.3.6 in package.json
|
- Updated @git.zone/tsdoc version from 1.3.5 to 1.3.6 in package.json
|
||||||
- Updated pnpm-lock.yaml to reflect the new version of @git.zone/tsdoc
|
- Updated pnpm-lock.yaml to reflect the new version of @git.zone/tsdoc
|
||||||
|
|
||||||
|
|
||||||
## 2024-06-23 - 1.9.116 - fix(dependencies)
|
## 2024-06-23 - 1.9.116 - fix(dependencies)
|
||||||
Update @git.zone/tsdoc to version 1.3.5
|
Update @git.zone/tsdoc to version 1.3.5
|
||||||
|
|
||||||
- Updated the @git.zone/tsdoc dependency in package.json and pnpm-lock.yaml from version 1.3.4 to 1.3.5
|
- Updated the @git.zone/tsdoc dependency in package.json and pnpm-lock.yaml from version 1.3.4 to 1.3.5
|
||||||
- Removed the outdated changelog.md file.
|
- Removed the outdated changelog.md file.
|
||||||
|
|
||||||
|
|
||||||
```
|
|
||||||
## 2024-06-23 - 1.9.114 - fix(format)
|
## 2024-06-23 - 1.9.114 - fix(format)
|
||||||
Fixed formatting issues across multiple TypeScript files.
|
Fixed formatting issues across multiple TypeScript files.
|
||||||
|
|
||||||
@ -74,4 +124,3 @@ Updated @git.zone/tsdoc dependency version to ^1.2.2 in package.json and pnpm-lo
|
|||||||
|
|
||||||
## 2024-06-23 - 1.9.99 - fix(mod_commit)
|
## 2024-06-23 - 1.9.99 - fix(mod_commit)
|
||||||
Fix variable reassignment issue in changelog writing step.
|
Fix variable reassignment issue in changelog writing step.
|
||||||
```
|
|
||||||
|
19
package.json
19
package.json
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@git.zone/cli",
|
"name": "@git.zone/cli",
|
||||||
"private": false,
|
"private": false,
|
||||||
"version": "1.9.119",
|
"version": "1.10.0",
|
||||||
"description": "A CLI toolbelt to streamline local development cycles by using various gitzone utilities.",
|
"description": "A CLI toolbelt to streamline local development cycles by using various gitzone utilities.",
|
||||||
"main": "dist_ts/index.ts",
|
"main": "dist_ts/index.ts",
|
||||||
"typings": "dist_ts/index.d.ts",
|
"typings": "dist_ts/index.d.ts",
|
||||||
@ -52,13 +52,14 @@
|
|||||||
},
|
},
|
||||||
"homepage": "https://pages.foss.global/git.zone/cli",
|
"homepage": "https://pages.foss.global/git.zone/cli",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@git.zone/tsbuild": "^2.1.80",
|
"@git.zone/tsbuild": "^2.1.84",
|
||||||
"@git.zone/tsrun": "^1.2.46",
|
"@git.zone/tsrun": "^1.2.49",
|
||||||
"@git.zone/tstest": "^1.0.90",
|
"@git.zone/tstest": "^1.0.90",
|
||||||
"@types/node": "^20.14.8"
|
"@types/node": "^22.8.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@git.zone/tsdoc": "^1.3.8",
|
"@git.zone/tsdoc": "^1.3.12",
|
||||||
|
"@git.zone/tspublish": "^1.4.0",
|
||||||
"@push.rocks/commitinfo": "^1.0.12",
|
"@push.rocks/commitinfo": "^1.0.12",
|
||||||
"@push.rocks/early": "^4.0.4",
|
"@push.rocks/early": "^4.0.4",
|
||||||
"@push.rocks/gulp-function": "^3.0.7",
|
"@push.rocks/gulp-function": "^3.0.7",
|
||||||
@ -68,7 +69,7 @@
|
|||||||
"@push.rocks/smartchok": "^1.0.34",
|
"@push.rocks/smartchok": "^1.0.34",
|
||||||
"@push.rocks/smartcli": "^4.0.11",
|
"@push.rocks/smartcli": "^4.0.11",
|
||||||
"@push.rocks/smartdelay": "^3.0.5",
|
"@push.rocks/smartdelay": "^3.0.5",
|
||||||
"@push.rocks/smartfile": "^11.0.20",
|
"@push.rocks/smartfile": "^11.0.21",
|
||||||
"@push.rocks/smartgulp": "^3.0.4",
|
"@push.rocks/smartgulp": "^3.0.4",
|
||||||
"@push.rocks/smartinteract": "^2.0.15",
|
"@push.rocks/smartinteract": "^2.0.15",
|
||||||
"@push.rocks/smartjson": "^5.0.20",
|
"@push.rocks/smartjson": "^5.0.20",
|
||||||
@ -80,14 +81,14 @@
|
|||||||
"@push.rocks/smartobject": "^1.0.12",
|
"@push.rocks/smartobject": "^1.0.12",
|
||||||
"@push.rocks/smartopen": "^2.0.0",
|
"@push.rocks/smartopen": "^2.0.0",
|
||||||
"@push.rocks/smartpath": "^5.0.18",
|
"@push.rocks/smartpath": "^5.0.18",
|
||||||
"@push.rocks/smartpromise": "^4.0.3",
|
"@push.rocks/smartpromise": "^4.0.4",
|
||||||
"@push.rocks/smartscaf": "^4.0.15",
|
"@push.rocks/smartscaf": "^4.0.15",
|
||||||
"@push.rocks/smartshell": "^3.0.5",
|
"@push.rocks/smartshell": "^3.0.6",
|
||||||
"@push.rocks/smartstream": "^3.0.44",
|
"@push.rocks/smartstream": "^3.0.44",
|
||||||
"@push.rocks/smartunique": "^3.0.9",
|
"@push.rocks/smartunique": "^3.0.9",
|
||||||
"@push.rocks/smartupdate": "^2.0.6",
|
"@push.rocks/smartupdate": "^2.0.6",
|
||||||
"@types/through2": "^2.0.41",
|
"@types/through2": "^2.0.41",
|
||||||
"prettier": "^3.3.2",
|
"prettier": "^3.3.3",
|
||||||
"through2": "^4.0.2"
|
"through2": "^4.0.2"
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
|
8764
pnpm-lock.yaml
generated
8764
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
@ -3,6 +3,6 @@
|
|||||||
*/
|
*/
|
||||||
export const commitinfo = {
|
export const commitinfo = {
|
||||||
name: '@git.zone/cli',
|
name: '@git.zone/cli',
|
||||||
version: '1.9.119',
|
version: '1.10.0',
|
||||||
description: 'A CLI toolbelt to streamline local development cycles by using various gitzone utilities.'
|
description: 'A CLI toolbelt to streamline local development cycles by using various gitzone utilities.'
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,12 @@ import * as paths from '../paths.js';
|
|||||||
import { logger } from '../gitzone.logging.js';
|
import { logger } from '../gitzone.logging.js';
|
||||||
|
|
||||||
export const run = async (argvArg: any) => {
|
export const run = async (argvArg: any) => {
|
||||||
|
if (argvArg.format) {
|
||||||
|
const formatMod = await import('../mod_format/index.js');
|
||||||
|
await formatMod.run();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
logger.log('info', `gathering facts...`);
|
logger.log('info', `gathering facts...`);
|
||||||
const aidoc = new plugins.tsdoc.AiDoc();
|
const aidoc = new plugins.tsdoc.AiDoc();
|
||||||
await aidoc.start();
|
await aidoc.start();
|
||||||
@ -74,7 +80,11 @@ export const run = async (argvArg: any) => {
|
|||||||
changelog = changelog.replaceAll('{{nextVersion}}', (await commitInfo.getNextPlannedVersion()).versionString);
|
changelog = changelog.replaceAll('{{nextVersion}}', (await commitInfo.getNextPlannedVersion()).versionString);
|
||||||
changelog = changelog.replaceAll('{{nextVersionScope}}', `${await answerBucket.getAnswerFor('commitType')}(${await answerBucket.getAnswerFor('commitScope')})`);
|
changelog = changelog.replaceAll('{{nextVersionScope}}', `${await answerBucket.getAnswerFor('commitType')}(${await answerBucket.getAnswerFor('commitScope')})`);
|
||||||
changelog = changelog.replaceAll('{{nextVersionMessage}}', nextCommitObject.recommendedNextVersionMessage);
|
changelog = changelog.replaceAll('{{nextVersionMessage}}', nextCommitObject.recommendedNextVersionMessage);
|
||||||
|
if (nextCommitObject.recommendedNextVersionDetails?.length > 0) {
|
||||||
changelog = changelog.replaceAll('{{nextVersionDetails}}', '- ' + nextCommitObject.recommendedNextVersionDetails.join('\n- '));
|
changelog = changelog.replaceAll('{{nextVersionDetails}}', '- ' + nextCommitObject.recommendedNextVersionDetails.join('\n- '));
|
||||||
|
} else {
|
||||||
|
changelog = changelog.replaceAll('\n{{nextVersionDetails}}', '');
|
||||||
|
}
|
||||||
|
|
||||||
await plugins.smartfile.memory.toFs(changelog, plugins.path.join(paths.cwd, `changelog.md`));
|
await plugins.smartfile.memory.toFs(changelog, plugins.path.join(paths.cwd, `changelog.md`));
|
||||||
|
|
||||||
|
@ -70,23 +70,6 @@ export const run = async (projectArg: Project) => {
|
|||||||
packageJson.scripts.buildDocs = `tsdoc`;
|
packageJson.scripts.buildDocs = `tsdoc`;
|
||||||
}
|
}
|
||||||
|
|
||||||
// check package.json
|
|
||||||
if (!packageJson.main) {
|
|
||||||
logger.log('error', 'no "main" property');
|
|
||||||
process.exit(0);
|
|
||||||
}
|
|
||||||
if (!packageJson.typings) {
|
|
||||||
logger.log('error', 'no "typings" property');
|
|
||||||
process.exit(0);
|
|
||||||
}
|
|
||||||
if (!packageJson.browserslist) {
|
|
||||||
packageJson.browserslist = ['last 1 chrome versions'];
|
|
||||||
}
|
|
||||||
if (!packageJson.main.includes('dist_') || !packageJson.typings.includes('dist_')) {
|
|
||||||
logger.log('error', 'check packagesJson main and typings');
|
|
||||||
process.exit(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
// check for files
|
// check for files
|
||||||
packageJson.files = [
|
packageJson.files = [
|
||||||
'ts/**/*',
|
'ts/**/*',
|
||||||
|
23
ts/mod_format/format.tsconfig.ts
Normal file
23
ts/mod_format/format.tsconfig.ts
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
import * as plugins from './mod.plugins.js';
|
||||||
|
import * as paths from '../paths.js';
|
||||||
|
|
||||||
|
import { logger } from '../gitzone.logging.js';
|
||||||
|
import { Project } from '../classes.project.js';
|
||||||
|
|
||||||
|
export const run = async (projectArg: Project) => {
|
||||||
|
// lets care about tsconfig.json
|
||||||
|
const tsconfigSmartfile = await plugins.smartfile.SmartFile.fromFilePath(plugins.path.join(paths.cwd, 'tsconfig.json'));
|
||||||
|
const tsconfigObject = JSON.parse(tsconfigSmartfile.contentBuffer.toString());
|
||||||
|
tsconfigObject.compilerOptions = tsconfigObject.compilerOptions || {};
|
||||||
|
tsconfigObject.compilerOptions.baseUrl = '.';
|
||||||
|
tsconfigObject.compilerOptions.paths = {};
|
||||||
|
const tsPublishMod = await import('@git.zone/tspublish');
|
||||||
|
const tsPublishInstance = new tsPublishMod.TsPublish();
|
||||||
|
const publishModules = tsPublishInstance.getModuleSubDirs(paths.cwd);
|
||||||
|
for (const publishModule of Object.keys(publishModules)) {
|
||||||
|
const publishConfig = publishModules[publishModule];
|
||||||
|
tsconfigObject.compilerOptions.paths[`${publishConfig.moduleName}`] = [`./${publishModule}/index.ts`];
|
||||||
|
}
|
||||||
|
tsconfigSmartfile.setContentsFromString(JSON.stringify(tsconfigObject, null, 2));
|
||||||
|
await tsconfigSmartfile.write();
|
||||||
|
};
|
@ -1,7 +1,7 @@
|
|||||||
import * as plugins from './mod.plugins.js';
|
import * as plugins from './mod.plugins.js';
|
||||||
import { Project } from '../classes.project.js';
|
import { Project } from '../classes.project.js';
|
||||||
|
|
||||||
export let run = async (write: boolean = true): Promise<any> => {
|
export let run = async (writeArg: boolean = true): Promise<any> => {
|
||||||
const project = await Project.fromCwd();
|
const project = await Project.fromCwd();
|
||||||
|
|
||||||
// cleanup
|
// cleanup
|
||||||
@ -31,6 +31,8 @@ export let run = async (write: boolean = true): Promise<any> => {
|
|||||||
// format TypeScript
|
// format TypeScript
|
||||||
const formatPrettier = await import('./format.prettier.js');
|
const formatPrettier = await import('./format.prettier.js');
|
||||||
await formatPrettier.run(project);
|
await formatPrettier.run(project);
|
||||||
|
const formatTsConfig = await import('./format.tsconfig.js');
|
||||||
|
await formatTsConfig.run(project);
|
||||||
|
|
||||||
// format readme.md
|
// format readme.md
|
||||||
const formatReadme = await import('./format.readme.js');
|
const formatReadme = await import('./format.readme.js');
|
||||||
|
Reference in New Issue
Block a user