Compare commits
34 Commits
Author | SHA1 | Date | |
---|---|---|---|
43f5643ab1 | |||
99e4dcb2e8 | |||
52f6afb69a | |||
75c1e3d8f2 | |||
2a1ed874b2 | |||
58fb0bc3d5 | |||
b1fbd38dba | |||
fad5e046d3 | |||
eb1498c242 | |||
6b3d4d1ecf | |||
16ea9bb8bd | |||
7e7aa098f9 | |||
df4350d29d | |||
81eb713dee | |||
90637b1466 | |||
6c3b78d0fe | |||
f0c7cf34e6 | |||
b9b5736e5e | |||
b73acf904a | |||
6614529122 | |||
9ff5e9a70f | |||
9dbf511d50 | |||
b7a239abca | |||
181fad27fd | |||
59c3deb83a | |||
c76403a34c | |||
23b361f26a | |||
9f7d447bc7 | |||
8904bf9427 | |||
3c5a8282ab | |||
4f0fb26a15 | |||
00f06b48f3 | |||
74f4cb3034 | |||
b98dc7a9fa |
3
assets/overrides.json
Normal file
3
assets/overrides.json
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"peek-readable": "5.3.1"
|
||||||
|
}
|
@ -6,8 +6,8 @@ on:
|
|||||||
- '**'
|
- '**'
|
||||||
|
|
||||||
env:
|
env:
|
||||||
IMAGE: code.foss.global/hosttoday/ht-docker-node:npmci
|
IMAGE: code.foss.global/host.today/ht-docker-node:npmci
|
||||||
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{git.host}}/${-{gitea.repository}-}.git
|
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{module.githost}}/${-{gitea.repository}-}.git
|
||||||
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
||||||
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
||||||
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
||||||
|
@ -6,8 +6,8 @@ on:
|
|||||||
- '*'
|
- '*'
|
||||||
|
|
||||||
env:
|
env:
|
||||||
IMAGE: code.foss.global/hosttoday/ht-docker-node:npmci
|
IMAGE: code.foss.global/host.today/ht-docker-node:npmci
|
||||||
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{git.host}}/${-{gitea.repository}-}.git
|
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{module.githost}}/${-{gitea.repository}-}.git
|
||||||
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
||||||
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
||||||
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
||||||
|
@ -7,7 +7,7 @@ on:
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
IMAGE: code.foss.global/hosttoday/ht-docker-node:npmci
|
IMAGE: code.foss.global/hosttoday/ht-docker-node:npmci
|
||||||
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{git.host}}/${-{gitea.repository}-}.git
|
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{module.githost}}/${-{gitea.repository}-}.git
|
||||||
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
||||||
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
||||||
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
||||||
|
@ -7,7 +7,7 @@ on:
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
IMAGE: code.foss.global/hosttoday/ht-docker-node:npmci
|
IMAGE: code.foss.global/hosttoday/ht-docker-node:npmci
|
||||||
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{git.host}}/${-{gitea.repository}-}.git
|
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{module.githost}}/${-{gitea.repository}-}.git
|
||||||
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
||||||
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
||||||
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
||||||
|
@ -7,7 +7,7 @@ on:
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
IMAGE: code.foss.global/hosttoday/ht-docker-node:npmci
|
IMAGE: code.foss.global/hosttoday/ht-docker-node:npmci
|
||||||
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{gi.host}}/${-{gitea.repository}-}.git
|
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{module.githost}}/${-{gitea.repository}-}.git
|
||||||
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
||||||
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
||||||
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
||||||
|
@ -7,7 +7,7 @@ on:
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
IMAGE: code.foss.global/hosttoday/ht-docker-node:npmci
|
IMAGE: code.foss.global/hosttoday/ht-docker-node:npmci
|
||||||
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{git.host}}/${-{gitea.repository}-}.git
|
NPMCI_COMPUTED_REPOURL: https://${-{gitea.repository_owner}-}:${-{secrets.GITEA_TOKEN}-}@{{module.githost}}/${-{gitea.repository}-}.git
|
||||||
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
NPMCI_TOKEN_NPM: ${-{secrets.NPMCI_TOKEN_NPM}-}
|
||||||
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
NPMCI_TOKEN_NPM2: ${-{secrets.NPMCI_TOKEN_NPM2}-}
|
||||||
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
NPMCI_GIT_GITHUBTOKEN: ${-{secrets.NPMCI_GIT_GITHUBTOKEN}-}
|
||||||
@ -89,8 +89,8 @@ jobs:
|
|||||||
npmci docker login
|
npmci docker login
|
||||||
npmci docker build
|
npmci docker build
|
||||||
npmci docker test
|
npmci docker test
|
||||||
# npmci docker push {{git.host}}
|
# npmci docker push {{module.githost}}
|
||||||
npmci docker push {{git.host}}
|
npmci docker push {{module.githost}}
|
||||||
|
|
||||||
metadata:
|
metadata:
|
||||||
needs: test
|
needs: test
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# gitzone dockerfile_service
|
# gitzone dockerfile_service
|
||||||
## STAGE 1 // BUILD
|
## STAGE 1 // BUILD
|
||||||
FROM code.foss.global/hosttoday/ht-docker-node:npmci as node1
|
FROM code.foss.global/host.today/ht-docker-node:npmci as node1
|
||||||
COPY ./ /app
|
COPY ./ /app
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
ARG NPMCI_TOKEN_NPM2
|
ARG NPMCI_TOKEN_NPM2
|
||||||
@ -12,7 +12,7 @@ RUN pnpm run build
|
|||||||
|
|
||||||
# gitzone dockerfile_service
|
# gitzone dockerfile_service
|
||||||
## STAGE 2 // install production
|
## STAGE 2 // install production
|
||||||
FROM code.foss.global/hosttoday/ht-docker-node:npmci as node2
|
FROM code.foss.global/host.today/ht-docker-node:npmci as node2
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY --from=node1 /app /app
|
COPY --from=node1 /app /app
|
||||||
RUN rm -rf .pnpm-store
|
RUN rm -rf .pnpm-store
|
||||||
@ -24,7 +24,7 @@ RUN rm -rf node_modules/ && pnpm install --prod
|
|||||||
|
|
||||||
|
|
||||||
## STAGE 3 // rebuild dependencies for alpine
|
## STAGE 3 // rebuild dependencies for alpine
|
||||||
FROM code.foss.global/hosttoday/ht-docker-node:alpinenpmci as node3
|
FROM code.foss.global/host.today/ht-docker-node:alpine_npmci as node3
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY --from=node2 /app /app
|
COPY --from=node2 /app /app
|
||||||
ARG NPMCI_TOKEN_NPM2
|
ARG NPMCI_TOKEN_NPM2
|
||||||
@ -34,7 +34,7 @@ RUN pnpm config set store-dir .pnpm-store
|
|||||||
RUN pnpm rebuild -r
|
RUN pnpm rebuild -r
|
||||||
|
|
||||||
## STAGE 4 // the final production image with all dependencies in place
|
## STAGE 4 // the final production image with all dependencies in place
|
||||||
FROM code.foss.global/hosttoday/ht-docker-node:alpine as node4
|
FROM code.foss.global/host.today/ht-docker-node:alpine as node4
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY --from=node3 /app /app
|
COPY --from=node3 /app /app
|
||||||
|
|
||||||
|
@ -6,7 +6,6 @@ fileName: .gitignore
|
|||||||
# artifacts
|
# artifacts
|
||||||
coverage/
|
coverage/
|
||||||
public/
|
public/
|
||||||
pages/
|
|
||||||
|
|
||||||
# installs
|
# installs
|
||||||
node_modules/
|
node_modules/
|
||||||
@ -20,4 +19,4 @@ node_modules/
|
|||||||
dist/
|
dist/
|
||||||
dist_*/
|
dist_*/
|
||||||
|
|
||||||
# custom
|
#------# custom
|
@ -21,14 +21,14 @@ fileName: package.json
|
|||||||
"@git.zone/tsrun": "^1.2.8",
|
"@git.zone/tsrun": "^1.2.8",
|
||||||
"@git.zone/tstest": "^1.0.28",
|
"@git.zone/tstest": "^1.0.28",
|
||||||
"@git.zone/tswatch": "^2.0.1",
|
"@git.zone/tswatch": "^2.0.1",
|
||||||
"@push.rocks/tapbundle": "^5.0.3"
|
"@push.rocks/tapbundle": "^5.5.4"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@api.global/typedserver": "^1.0.24",
|
"@api.global/typedserver": "^3.0.53",
|
||||||
"@push.rocks/projectinfo": "^5.0.1",
|
"@push.rocks/projectinfo": "^5.0.1",
|
||||||
"@push.rocks/qenv": "^4.0.10",
|
"@push.rocks/qenv": "^6.1.0",
|
||||||
"@push.rocks/smartdata": "^5.0.7",
|
"@push.rocks/smartdata": "^5.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"
|
||||||
}
|
},
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
---
|
---
|
||||||
fileName: {{module.name}}.classes.{{module.name}}db.ts
|
fileName: classes.{{module.name}}db.ts
|
||||||
---
|
---
|
||||||
import * as plugins from './{{module.name}}.plugins.js';
|
import * as plugins from './{{module.name}}.plugins.js';
|
||||||
import { {{module.name}} } from './{{module.name}}.classes.{{module.name}}.js';
|
import { {{module.name}} } from './classes.{{module.name}}.js';
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
|||||||
---
|
---
|
||||||
fileName: {{module.name}}.classes.{{module.name}}.ts
|
fileName: classes.{{module.name}}.ts
|
||||||
---
|
---
|
||||||
import * as plugins from './{{module.name}}.plugins.js';
|
import * as plugins from './{{module.name}}.plugins.js';
|
||||||
import * as paths from './{{module.name}}.paths.js';
|
import * as paths from './{{module.name}}.paths.js';
|
||||||
import { {{module.name}}Db } from './{{module.name}}.db.js'
|
import { {{module.name}}Db } from './classes.{{module.name}}db.js'
|
||||||
|
|
||||||
export class {{module.name}} {
|
export class {{module.name}} {
|
||||||
public projectinfo: plugins.projectinfo.ProjectInfo;
|
public projectinfo: plugins.projectinfo.ProjectInfo;
|
@ -15,8 +15,7 @@ export {
|
|||||||
loleServiceserver
|
loleServiceserver
|
||||||
}
|
}
|
||||||
|
|
||||||
// pushrocks scope
|
// @push.rocks scope
|
||||||
// pushrocks scope
|
|
||||||
import * as projectinfo from '@push.rocks/projectinfo';
|
import * as projectinfo from '@push.rocks/projectinfo';
|
||||||
import * as qenv from '@push.rocks/qenv';
|
import * as qenv from '@push.rocks/qenv';
|
||||||
import * as smartdata from '@push.rocks/smartdata';
|
import * as smartdata from '@push.rocks/smartdata';
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"experimentalDecorators": true,
|
"experimentalDecorators": true,
|
||||||
|
"emitDecoratorMetadata": true,
|
||||||
"useDefineForClassFields": false,
|
"useDefineForClassFields": false,
|
||||||
"target": "ES2022",
|
"target": "ES2022",
|
||||||
"module": "NodeNext",
|
"module": "NodeNext",
|
||||||
|
@ -6,7 +6,7 @@ import {
|
|||||||
cssManager,
|
cssManager,
|
||||||
unsafeCSS,
|
unsafeCSS,
|
||||||
css,
|
css,
|
||||||
TemplateResult,
|
type TemplateResult,
|
||||||
} from '@design.estate/dees-element';
|
} from '@design.estate/dees-element';
|
||||||
|
|
||||||
@customElement('default-header')
|
@customElement('default-header')
|
||||||
|
89
changelog.md
89
changelog.md
@ -1,5 +1,94 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 2025-01-29 - 1.12.2 - fix(format)
|
||||||
|
Add overrides for peek-readable in package.json formatting
|
||||||
|
|
||||||
|
- Added a URL correction in the packageJson repository information.
|
||||||
|
- Introduced support for pnpm overrides by including an `overrides.json` file.
|
||||||
|
|
||||||
|
## 2025-01-18 - 1.12.1 - fix(dependencies)
|
||||||
|
Update various package dependencies and Dockerfile base image
|
||||||
|
|
||||||
|
- Updated Dockerfile base image from 'alpinenpmci' to 'alpine_npmci'.
|
||||||
|
- Upgraded @git.zone/tsbuild, @git.zone/tsrun, @git.zone/tsdoc, and other dependencies to their latest versions.
|
||||||
|
|
||||||
|
## 2025-01-17 - 1.12.0 - feat(build)
|
||||||
|
Update TypeScript configuration to support emit decorator metadata
|
||||||
|
|
||||||
|
- Added emitDecoratorMetadata to the tsconfig.json template in assets/templates/tsconfig_update.
|
||||||
|
|
||||||
|
## 2025-01-08 - 1.11.0 - feat(cli)
|
||||||
|
Add Docker command for cleaning up Docker system and extend deprecation command for multiple registries
|
||||||
|
|
||||||
|
- Added a new command 'docker' to handle Docker system cleanup operations.
|
||||||
|
- Improved the 'deprecate' command to support deprecating packages across multiple npm registry URLs.
|
||||||
|
|
||||||
|
## 2025-01-01 - 1.10.10 - fix(templates)
|
||||||
|
Corrected typo in template file comment
|
||||||
|
|
||||||
|
- Fixed repeated comment in the template file for services under 'assets/templates/service/ts/some.plugins.ts'.
|
||||||
|
|
||||||
|
## 2025-01-01 - 1.10.9 - fix(templates)
|
||||||
|
Correct template file paths and organization for service projects
|
||||||
|
|
||||||
|
- Moved 'some.classes.some.ts' to 'classes.some.ts'
|
||||||
|
- Moved 'some.classes.some.db.ts' to 'classes.some.db.ts'
|
||||||
|
- Resolved incorrect import paths in service templates
|
||||||
|
|
||||||
|
## 2025-01-01 - 1.10.8 - fix(assets/templates)
|
||||||
|
Update CI template configurations to use module.githost
|
||||||
|
|
||||||
|
- Replaced occurrences of {{git.host}} with {{module.githost}} in CI workflow files
|
||||||
|
- Updated package dependencies for service template
|
||||||
|
|
||||||
|
## 2024-12-26 - 1.10.7 - fix(assets)
|
||||||
|
Correct URLs in templates and fix TypeScript declaration
|
||||||
|
|
||||||
|
- Updated incorrect URLs in Dockerfile templates to 'host.today'.
|
||||||
|
- Fixed type declaration for 'TemplateResult' in header.ts file.
|
||||||
|
|
||||||
|
## 2024-12-08 - 1.10.6 - fix(ci)
|
||||||
|
Corrected Docker image URL in CI templates
|
||||||
|
|
||||||
|
- Updated Docker image URL from 'code.foss.global/hosttoday' to 'code.foss.global/host.today' in default_nottags.yaml and default_tags.yaml.
|
||||||
|
- Adjusted gitignore template to include a custom section delineation.
|
||||||
|
|
||||||
|
## 2024-12-02 - 1.10.5 - fix(assets)
|
||||||
|
Update .gitignore template to remove pages directory
|
||||||
|
|
||||||
|
- Removed 'pages/' from the ignored directories in the .gitignore template.
|
||||||
|
|
||||||
|
## 2024-11-05 - 1.10.4 - fix(mod_format)
|
||||||
|
Correct file extension for TypeScript path configuration
|
||||||
|
|
||||||
|
- Fixed the TypeScript configuration to use correct file extensions for module subdirectories.
|
||||||
|
|
||||||
|
## 2024-10-27 - 1.10.3 - fix(mod_format)
|
||||||
|
Reorder TypeScript formatting steps in mod_format module
|
||||||
|
|
||||||
|
- Moved TypeScript configuration formatting earlier in the sequence for better logical consistency.
|
||||||
|
|
||||||
|
## 2024-10-27 - 1.10.2 - fix(format)
|
||||||
|
Add logging for tsconfig.json formatting
|
||||||
|
|
||||||
|
- Added an info log message for tsconfig.json formatting in format.tsconfig.ts.
|
||||||
|
|
||||||
|
## 2024-10-27 - 1.10.1 - fix(format)
|
||||||
|
Fixed async issue in tsconfig module lookup and corrected property access
|
||||||
|
|
||||||
|
|
||||||
|
## 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)
|
## 2024-09-29 - 1.9.125 - fix(cli)
|
||||||
Fix package version configuration and formatting issues
|
Fix package version configuration and formatting issues
|
||||||
|
|
||||||
|
28
package.json
28
package.json
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@git.zone/cli",
|
"name": "@git.zone/cli",
|
||||||
"private": false,
|
"private": false,
|
||||||
"version": "1.9.125",
|
"version": "1.12.3",
|
||||||
"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,23 +52,24 @@
|
|||||||
},
|
},
|
||||||
"homepage": "https://pages.foss.global/git.zone/cli",
|
"homepage": "https://pages.foss.global/git.zone/cli",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@git.zone/tsbuild": "^2.1.84",
|
"@git.zone/tsbuild": "^2.2.0",
|
||||||
"@git.zone/tsrun": "^1.2.49",
|
"@git.zone/tsrun": "^1.3.3",
|
||||||
"@git.zone/tstest": "^1.0.90",
|
"@git.zone/tstest": "^1.0.90",
|
||||||
"@types/node": "^22.7.4"
|
"@types/node": "^22.10.7"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@git.zone/tsdoc": "^1.3.12",
|
"@git.zone/tsdoc": "^1.4.3",
|
||||||
|
"@git.zone/tspublish": "^1.9.1",
|
||||||
"@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",
|
||||||
"@push.rocks/lik": "^6.0.15",
|
"@push.rocks/lik": "^6.0.15",
|
||||||
"@push.rocks/npmextra": "^5.0.23",
|
"@push.rocks/npmextra": "^5.1.2",
|
||||||
"@push.rocks/projectinfo": "^5.0.2",
|
"@push.rocks/projectinfo": "^5.0.2",
|
||||||
"@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.21",
|
"@push.rocks/smartfile": "^11.1.5",
|
||||||
"@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,16 +81,21 @@
|
|||||||
"@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.4",
|
"@push.rocks/smartpromise": "^4.1.0",
|
||||||
"@push.rocks/smartscaf": "^4.0.15",
|
"@push.rocks/smartscaf": "^4.0.15",
|
||||||
"@push.rocks/smartshell": "^3.0.6",
|
"@push.rocks/smartshell": "^3.2.2",
|
||||||
"@push.rocks/smartstream": "^3.0.44",
|
"@push.rocks/smartstream": "^3.2.5",
|
||||||
"@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.3",
|
"prettier": "^3.4.2",
|
||||||
"through2": "^4.0.2"
|
"through2": "^4.0.2"
|
||||||
},
|
},
|
||||||
|
"pnpm": {
|
||||||
|
"overrides": {
|
||||||
|
"peek-readable": "5.3.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"files": [
|
"files": [
|
||||||
"ts/**/*",
|
"ts/**/*",
|
||||||
"ts_web/**/*",
|
"ts_web/**/*",
|
||||||
|
2098
pnpm-lock.yaml
generated
2098
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.125',
|
version: '1.12.2',
|
||||||
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.'
|
||||||
}
|
}
|
||||||
|
@ -48,6 +48,14 @@ export let run = async () => {
|
|||||||
await modDeprecate.run();
|
await modDeprecate.run();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/**
|
||||||
|
* docker
|
||||||
|
*/
|
||||||
|
gitzoneSmartcli.addCommand('docker').subscribe(async (argvArg) => {
|
||||||
|
const modDocker = await import('./mod_docker/index.js');
|
||||||
|
await modDocker.run(argvArg);
|
||||||
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Update all files that comply with the gitzone standard
|
* Update all files that comply with the gitzone standard
|
||||||
*/
|
*/
|
||||||
|
@ -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();
|
||||||
|
@ -4,6 +4,15 @@ import { logger } from '../gitzone.logging.js';
|
|||||||
|
|
||||||
export const run = async () => {
|
export const run = async () => {
|
||||||
const smartInteract = new plugins.smartinteract.SmartInteract([
|
const smartInteract = new plugins.smartinteract.SmartInteract([
|
||||||
|
{
|
||||||
|
name: `registryUrls`,
|
||||||
|
message: `What are the comma separated registry URLs?`,
|
||||||
|
type: `input`,
|
||||||
|
default: `https://registry.npmjs.org`,
|
||||||
|
validate: (stringInput) => {
|
||||||
|
return stringInput !== '' && !process.env.CI;
|
||||||
|
},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: `oldPackageName`,
|
name: `oldPackageName`,
|
||||||
message: `Whats the name of the OLD package?`,
|
message: `Whats the name of the OLD package?`,
|
||||||
@ -24,14 +33,17 @@ export const run = async () => {
|
|||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
const answerBucket = await smartInteract.runQueue();
|
const answerBucket = await smartInteract.runQueue();
|
||||||
|
const registryUrls = answerBucket.getAnswerFor(`registryUrls`).split(',');
|
||||||
const oldPackageName = answerBucket.getAnswerFor(`oldPackageName`);
|
const oldPackageName = answerBucket.getAnswerFor(`oldPackageName`);
|
||||||
const newPackageName = answerBucket.getAnswerFor(`newPackageName`);
|
const newPackageName = answerBucket.getAnswerFor(`newPackageName`);
|
||||||
logger.log('info', `Deprecating package ${oldPackageName} in favour of ${newPackageName}`);
|
logger.log('info', `Deprecating package ${oldPackageName} in favour of ${newPackageName}`);
|
||||||
const smartshellInstance = new plugins.smartshell.Smartshell({
|
const smartshellInstance = new plugins.smartshell.Smartshell({
|
||||||
executor: 'bash',
|
executor: 'bash',
|
||||||
});
|
});
|
||||||
await smartshellInstance.exec(
|
for (const registryUrl of registryUrls) {
|
||||||
`npm deprecate ${oldPackageName}@* ` +
|
await smartshellInstance.exec(
|
||||||
`"${oldPackageName} has been deprecated in favour of ${newPackageName} - please upgrade asap!!!"`
|
`npm deprecate ${oldPackageName}@* ` +
|
||||||
);
|
`"${oldPackageName} has been deprecated in favour of ${newPackageName} - please upgrade asap!!!" --registry ${registryUrl}`,
|
||||||
|
);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
12
ts/mod_docker/index.ts
Normal file
12
ts/mod_docker/index.ts
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
import * as plugins from './mod.plugins.js';
|
||||||
|
|
||||||
|
export const run = async (argvArg) => {
|
||||||
|
const smartshellInstance = new plugins.smartshell.Smartshell({
|
||||||
|
executor: 'bash',
|
||||||
|
});
|
||||||
|
switch (argvArg._[1]) {
|
||||||
|
case 'prune':
|
||||||
|
await smartshellInstance.exec(`docker system prune -a -f --volumes`);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
};
|
4
ts/mod_docker/mod.plugins.ts
Normal file
4
ts/mod_docker/mod.plugins.ts
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
export * from '../plugins.js';
|
||||||
|
|
||||||
|
import * as smartshell from '@push.rocks/smartshell';
|
||||||
|
export { smartshell };
|
@ -27,7 +27,7 @@ export const run = async (projectArg: Project) => {
|
|||||||
// metadata
|
// metadata
|
||||||
packageJson.repository = {
|
packageJson.repository = {
|
||||||
type: 'git',
|
type: 'git',
|
||||||
url: `git+https://${gitzoneData.module.githost}/${gitzoneData.module.gitscope}/${gitzoneData.module.gitrepo}.git`,
|
url: `https://${gitzoneData.module.githost}/${gitzoneData.module.gitscope}/${gitzoneData.module.gitrepo}.git`,
|
||||||
};
|
};
|
||||||
(packageJson.bugs = {
|
(packageJson.bugs = {
|
||||||
url: `https://${gitzoneData.module.githost}/${gitzoneData.module.gitscope}/${gitzoneData.module.gitrepo}/issues`,
|
url: `https://${gitzoneData.module.githost}/${gitzoneData.module.gitscope}/${gitzoneData.module.gitrepo}/issues`,
|
||||||
@ -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/**/*',
|
||||||
@ -106,6 +89,13 @@ export const run = async (projectArg: Project) => {
|
|||||||
await ensureDependency(packageJson, 'devDep', 'latest', '@git.zone/tstest');
|
await ensureDependency(packageJson, 'devDep', 'latest', '@git.zone/tstest');
|
||||||
await ensureDependency(packageJson, 'devDep', 'latest', '@git.zone/tsbuild');
|
await ensureDependency(packageJson, 'devDep', 'latest', '@git.zone/tsbuild');
|
||||||
|
|
||||||
|
// set overrides
|
||||||
|
const overrides = plugins.smartfile.fs.toObjectSync(
|
||||||
|
plugins.path.join(paths.assetsDir, 'overrides.json'),
|
||||||
|
)
|
||||||
|
packageJson.pnpm = packageJson.pnpm || {};
|
||||||
|
packageJson.pnpm.overrides = overrides;
|
||||||
|
|
||||||
// exclude
|
// exclude
|
||||||
// TODO
|
// TODO
|
||||||
|
|
||||||
|
24
ts/mod_format/format.tsconfig.ts
Normal file
24
ts/mod_format/format.tsconfig.ts
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
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
|
||||||
|
logger.log('info', 'Formatting 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 = await tsPublishInstance.getModuleSubDirs(paths.cwd);
|
||||||
|
for (const publishModule of Object.keys(publishModules)) {
|
||||||
|
const publishConfig = publishModules[publishModule];
|
||||||
|
tsconfigObject.compilerOptions.paths[`${publishConfig.name}`] = [`./${publishModule}/index.js`];
|
||||||
|
}
|
||||||
|
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
|
||||||
@ -29,6 +29,8 @@ export let run = async (write: boolean = true): Promise<any> => {
|
|||||||
await formatGitignore.run(project);
|
await formatGitignore.run(project);
|
||||||
|
|
||||||
// format TypeScript
|
// format TypeScript
|
||||||
|
const formatTsConfig = await import('./format.tsconfig.js');
|
||||||
|
await formatTsConfig.run(project);
|
||||||
const formatPrettier = await import('./format.prettier.js');
|
const formatPrettier = await import('./format.prettier.js');
|
||||||
await formatPrettier.run(project);
|
await formatPrettier.run(project);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user