Skip to content

Commit

Permalink
feat(core/types): support cjs and esm both by tshy
Browse files Browse the repository at this point in the history
BREAKING CHANGE: drop Node.js < 18.19.0 support

part of eggjs/egg#3644

eggjs/egg#5257
  • Loading branch information
fengmk2 committed Feb 15, 2025
1 parent 35ed348 commit f9d99a2
Show file tree
Hide file tree
Showing 100 changed files with 419 additions and 230 deletions.
15 changes: 3 additions & 12 deletions .github/workflows/nodejs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node-version: [ 16, 18, 20, 22 ]
node-version: [ 18, 20, 22 ]
steps:
- name: Checkout Git Source
uses: actions/checkout@master
Expand All @@ -30,9 +30,6 @@ jobs:
with:
node-version: ${{ matrix.node-version }}

- name: Install Npm
run: npm i -g npm@9

- name: Install Dependencies
run: npm i

Expand All @@ -51,7 +48,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node-version: [ 16, 18, 20 ]
node-version: [ 18, 20, 22 ]
steps:
- name: Checkout Git Source
uses: actions/checkout@master
Expand All @@ -68,9 +65,6 @@ jobs:
## arm64/x86 homebrew mysql path different
run: brew services start mysql

- name: Install Npm
run: npm i -g npm@9

- name: Install Dependencies
run: npm i

Expand All @@ -88,7 +82,7 @@ jobs:
# strategy:
# fail-fast: false
# matrix:
# node-version: [ 16, 18, 20 ]
# node-version: [ 18, 20, 22 ]
# steps:
# - name: Checkout Git Source
# uses: actions/checkout@master
Expand All @@ -98,9 +92,6 @@ jobs:
# with:
# node-version: ${{ matrix.node-version }}
#
# - name: Install Npm
# run: npm i -g npm@8
#
# - name: Install Dependencies
# run: npm i
#
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,10 @@ run
.DS_Store
.tmp
.vscode
.eslintcache

package-lock.json
.package-lock.json
yarn.lock
.editorconfig
*clinic-flame*
Expand Down Expand Up @@ -48,3 +50,5 @@ plugin/tegg/test/fixtures/apps/**/*.js
!plugin/config/test/fixtures/**/node_modules
.node
.egg

!**/*/__snapshots__/**/*.js
2 changes: 1 addition & 1 deletion .mocharc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ extension:
- ts
require:
- ts-node/register
- source-map-support/register
- source-map-support/register.js
full-trace: true
exit: true
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,7 @@ export class HelloService {
##### 示例

首先定义一个自定义 Qualifier 注解

```ts
import {
QualifierUtil,
Expand Down Expand Up @@ -296,7 +297,8 @@ export class DynamicLogger {
}
```

使用 DynamicLogger.
使用 DynamicLogger

```ts
@SingletonProto()
export class Foo {
Expand All @@ -320,8 +322,6 @@ export class Foo {
}
```



#### 生命周期 hook

由于对象的生命周期交给了容器来托管,代码中无法感知什么时候对象初始化,什么时候依赖被注入了。所以提供了生命周期 hook 来实现这些通知的功能。
Expand Down
184 changes: 184 additions & 0 deletions core/types/__snapshots__/index.test.ts.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,184 @@
exports['test/index.test.ts should export stable 1'] = {
"AccessLevel": {
"PRIVATE": "PRIVATE",
"PUBLIC": "PUBLIC"
},
"ColumnFormat": {
"FIXED": "FIXED",
"DYNAMIC": "DYNAMIC",
"DEFAULT": "DEFAULT"
},
"ColumnType": {
"BIT": "BIT",
"TINYINT": "TINYINT",
"BOOL": "BOOL",
"SMALLINT": "SMALLINT",
"MEDIUMINT": "MEDIUMINT",
"INT": "INT",
"BIGINT": "BIGINT",
"DECIMAL": "DECIMAL",
"FLOAT": "FLOAT",
"DOUBLE": "DOUBLE",
"DATE": "DATE",
"DATETIME": "DATETIME",
"TIMESTAMP": "TIMESTAMP",
"TIME": "TIME",
"YEAR": "YEAR",
"CHAR": "CHAR",
"VARCHAR": "VARCHAR",
"BINARY": "BINARY",
"VARBINARY": "VARBINARY",
"TINYBLOB": "TINYBLOB",
"TINYTEXT": "TINYTEXT",
"BLOB": "BLOB",
"TEXT": "TEXT",
"MEDIUMBLOB": "MEDIUMBLOB",
"MEDIUMTEXT": "MEDIUMTEXT",
"LONGBLOB": "LONGBLOB",
"LONGTEXT": "LONGTEXT",
"ENUM": "ENUM",
"SET": "SET",
"JSON": "JSON",
"GEOMETRY": "GEOMETRY",
"POINT": "POINT",
"LINESTRING": "LINESTRING",
"POLYGON": "POLYGON",
"MULTIPOINT": "MULTIPOINT",
"MULTILINESTRING": "MULTILINESTRING",
"MULTIPOLYGON": "MULTIPOLYGON",
"GEOMETRYCOLLECTION": "GEOMETRYCOLLECTION"
},
"CompressionType": {
"ZLIB": "ZLIB",
"LZ4": "LZ4",
"NONE": "NONE"
},
"ControllerType": {
"HTTP": "HTTP",
"SOFA_RPC": "SOFA_RPC",
"SOFA_RPC_STREAM": "SOFA_RPC_STREAM",
"MGW_RPC": "MGW_RPC",
"MGW_RPC_STREAM": "MGW_RPC_STREAM",
"MESSAGE": "MESSAGE",
"SCHEDULE": "SCHEDULE",
"HEADERS": "HEADERS"
},
"DEFAULT_PROTO_IMPL_TYPE": "DEFAULT",
"DataSourceInjectName": "dataSource",
"EggLoadUnitType": {
"MODULE": "MODULE",
"PLUGIN": "PLUGIN",
"APP": "APP"
},
"EggObjectStatus": {
"PENDING": "PENDING",
"READY": "READY",
"ERROR": "ERROR",
"DESTROYING": "DESTROYING",
"DESTROYED": "DESTROYED"
},
"EggType": {
"APP": "APP",
"CONTEXT": "CONTEXT"
},
"ErrorCodes": {
"EGG_PROTO_NOT_FOUND": "EGG_PROTO_NOT_FOUND",
"MULTI_PROTO_FOUND": "MULTI_PROTO_FOUND",
"INCOMPATIBLE_PROTO_INJECT": "INCOMPATIBLE_PROTO_INJECT"
},
"HTTPMethodEnum": {
"GET": "GET",
"POST": "POST",
"PUT": "PUT",
"DELETE": "DELETE",
"PATCH": "PATCH",
"OPTIONS": "OPTIONS",
"HEAD": "HEAD"
},
"HTTPParamType": {
"QUERY": "QUERY",
"QUERIES": "QUERIES",
"BODY": "BODY",
"PARAM": "PARAM",
"REQUEST": "REQUEST",
"HEADERS": "HEADERS",
"COOKIES": "COOKIES"
},
"INIT_TYPE_TRY_ORDER": [
"CONTEXT",
"SINGLETON",
"ALWAYS_NEW"
],
"IndexStoreType": {
"BTREE": "BTREE",
"HASH": "HASH"
},
"IndexType": {
"PRIMARY": "PRIMARY",
"UNIQUE": "UNIQUE",
"INDEX": "INDEX",
"FULLTEXT": "FULLTEXT",
"SPATIAL": "SPATIAL"
},
"InjectType": {
"PROPERTY": "PROPERTY",
"CONSTRUCTOR": "CONSTRUCTOR"
},
"InsertMethod": {
"NO": "NO",
"FIRST": "FIRST",
"LAST": "LAST"
},
"MODEL_PROTO_IMPL_TYPE": "MODEL_PROTO",
"MethodType": {
"HTTP": "HTTP",
"SOFA_RPC": "SOFA_RPC",
"SOFA_RPC_STREAM": "SOFA_RPC_STREAM",
"MGW_RPC": "MGW_RPC",
"MGW_RPC_STREAM": "MGW_RPC_STREAM",
"MESSAGE": "MESSAGE",
"SCHEDULE": "SCHEDULE"
},
"MultiInstanceType": {
"STATIC": "STATIC",
"DYNAMIC": "DYNAMIC"
},
"ObjectInitType": {
"ALWAYS_NEW": "ALWAYS_NEW",
"CONTEXT": "CONTEXT",
"SINGLETON": "SINGLETON"
},
"PointcutType": {
"CLASS": "CLASS",
"NAME": "NAME",
"CUSTOM": "CUSTOM"
},
"PropagationType": {
"ALWAYS_NEW": "ALWAYS_NEW",
"REQUIRED": "REQUIRED"
},
"RowFormat": {
"DEFAULT": "DEFAULT",
"DYNAMIC": "DYNAMIC",
"FIXED": "FIXED",
"COMPRESSED": "COMPRESSED",
"REDUNDANT": "REDUNDANT",
"COMPACT": "COMPACT"
},
"ScheduleType": {
"WORKER": "worker",
"ALL": "all"
},
"SqlType": {
"BLOCK": "BLOCK",
"INSERT": "INSERT",
"SELECT": "SELECT",
"UPDATE": "UPDATE",
"DELETE": "DELETE"
},
"Templates": {
"BASE_DAO": "base_dao",
"DAO": "dao",
"EXTENSION": "extension"
}
}
4 changes: 0 additions & 4 deletions core/types/aop/index.ts

This file was deleted.

4 changes: 0 additions & 4 deletions core/types/common/index.ts

This file was deleted.

8 changes: 0 additions & 8 deletions core/types/controller-decorator/index.ts

This file was deleted.

19 changes: 0 additions & 19 deletions core/types/core-decorator/index.ts

This file was deleted.

22 changes: 0 additions & 22 deletions core/types/dal/index.ts

This file was deleted.

12 changes: 0 additions & 12 deletions core/types/index.ts

This file was deleted.

4 changes: 0 additions & 4 deletions core/types/lifecycle/index.ts

This file was deleted.

5 changes: 0 additions & 5 deletions core/types/metadata/index.ts

This file was deleted.

Loading

0 comments on commit f9d99a2

Please sign in to comment.