mirror of
https://github.com/krahets/hello-algo.git
synced 2024-12-24 03:26:27 +08:00
feat(TypeScript): Add the workflow file for CI check (#1280)
* feat(TypeScript): Add the workflow file for CI check * fix: Install TypeScript Execute (tsx) * test: Test failed * test: Test successful * test: on windows * Add a bug * feat: type checking * test: Test successful * feat: add main * fix: use process * feat: use es-main * Test failure * feat: streamlined configuration * Apply suggestions from code review Co-authored-by: Yudong Jin <krahets@163.com> * feat: remove lock file * Test failure * Test success --------- Co-authored-by: Yudong Jin <krahets@163.com>
This commit is contained in:
parent
499419e4ce
commit
587344da62
8 changed files with 52 additions and 17 deletions
26
.github/workflows/typescript.yml
vendored
Normal file
26
.github/workflows/typescript.yml
vendored
Normal file
|
@ -0,0 +1,26 @@
|
|||
name: TypeScript
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: ['main']
|
||||
paths: ['codes/typescript/**/*.ts']
|
||||
pull_request:
|
||||
branches: ['main']
|
||||
paths: ['codes/typescript/**/*.ts']
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 20.x
|
||||
- name: Install dependencies
|
||||
run: cd codes/typescript && npm install
|
||||
- name: Check TypeScript code
|
||||
run: cd codes/typescript && npm run check
|
2
codes/typescript/.gitignore
vendored
2
codes/typescript/.gitignore
vendored
|
@ -1,4 +1,2 @@
|
|||
node_modules
|
||||
out
|
||||
package.json
|
||||
package-lock.json
|
||||
|
|
|
@ -91,9 +91,8 @@ class GraphAdjList {
|
|||
}
|
||||
}
|
||||
|
||||
// need to add the package @types/node contains type definitions for Node.js, npm i --save-dev @types/node
|
||||
if (require.main === module) {
|
||||
/* Driver Code */
|
||||
/* Driver Code */
|
||||
if (import.meta.url.endsWith(process.argv[1])) {
|
||||
/* 初始化无向图 */
|
||||
const v0 = new Vertex(1),
|
||||
v1 = new Vertex(3),
|
||||
|
|
|
@ -122,7 +122,7 @@ class MaxHeap {
|
|||
}
|
||||
|
||||
/* Driver Code */
|
||||
if (require.main === module) {
|
||||
if (import.meta.url.endsWith(process.argv[1])) {
|
||||
/* 初始化大顶堆 */
|
||||
const maxHeap = new MaxHeap([9, 8, 6, 6, 7, 5, 2, 1, 4, 3, 6, 2]);
|
||||
console.log('\n输入列表并建堆后');
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
* Author: yuan0221 (yl1452491917@gmail.com)
|
||||
*/
|
||||
|
||||
const { arrToTree } = require('../modules/TreeNode');
|
||||
const { printTree } = require('../modules/PrintUtil');
|
||||
import { arrToTree } from '../modules/TreeNode';
|
||||
import { printTree } from '../modules/PrintUtil';
|
||||
|
||||
type Order = 'pre' | 'in' | 'post';
|
||||
|
||||
|
@ -148,4 +148,4 @@ console.log('中序遍历为:' + res);
|
|||
res = abt.postOrder();
|
||||
console.log('后序遍历为:' + res);
|
||||
|
||||
export { };
|
||||
export {};
|
||||
|
|
|
@ -79,9 +79,6 @@ function showTrunks(p: Trunk | null) {
|
|||
|
||||
showTrunks(p.prev);
|
||||
process.stdout.write(p.str);
|
||||
// ts-node to execute, we need to install type definitions for node
|
||||
// solve: npm i --save-dev @types/node
|
||||
// restart the vscode
|
||||
}
|
||||
|
||||
/* 打印堆 */
|
||||
|
|
11
codes/typescript/package.json
Normal file
11
codes/typescript/package.json
Normal file
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"check": "tsc"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^20.12.7",
|
||||
"typescript": "^5.4.5"
|
||||
}
|
||||
}
|
|
@ -1,8 +1,12 @@
|
|||
{
|
||||
"compilerOptions": {
|
||||
"target": "ES6",
|
||||
"module": "CommonJS",
|
||||
"outDir": "out",
|
||||
"sourceMap": true
|
||||
}
|
||||
"baseUrl": ".",
|
||||
"module": "esnext",
|
||||
"moduleResolution": "node",
|
||||
"types": ["@types/node"],
|
||||
"noEmit": true,
|
||||
"target": "esnext",
|
||||
},
|
||||
"include": ["chapter_*/*.ts"],
|
||||
"exclude": ["node_modules"]
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue