midway-fatcms 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +14 -14
- package/.prettierrc.js +4 -4
- package/README.md +406 -406
- package/dist/config/config.default.d.ts +3 -3
- package/dist/config/config.default.js +177 -177
- package/dist/config/utils.d.ts +1 -1
- package/dist/config/utils.js +23 -23
- package/dist/configuration.d.ts +7 -7
- package/dist/configuration.js +113 -113
- package/dist/controller/base/BaseApiController.d.ts +49 -49
- package/dist/controller/base/BaseApiController.js +198 -198
- package/dist/controller/gateway/AnyApiGatewayController.d.ts +13 -13
- package/dist/controller/gateway/AnyApiGatewayController.js +55 -55
- package/dist/controller/gateway/AsyncTaskController.d.ts +20 -20
- package/dist/controller/gateway/AsyncTaskController.js +181 -181
- package/dist/controller/gateway/CrudMtdGatewayController.d.ts +21 -21
- package/dist/controller/gateway/CrudMtdGatewayController.js +122 -122
- package/dist/controller/gateway/CrudStdGatewayController.d.ts +39 -39
- package/dist/controller/gateway/CrudStdGatewayController.js +149 -149
- package/dist/controller/gateway/DocGatewayController.d.ts +27 -27
- package/dist/controller/gateway/DocGatewayController.js +181 -181
- package/dist/controller/gateway/FileController.d.ts +32 -32
- package/dist/controller/gateway/FileController.js +160 -160
- package/dist/controller/gateway/FlowInstanceController.d.ts +16 -16
- package/dist/controller/gateway/FlowInstanceController.js +48 -48
- package/dist/controller/gateway/ProxyApiGatewayController.d.ts +18 -18
- package/dist/controller/gateway/ProxyApiGatewayController.js +78 -78
- package/dist/controller/gateway/PublicApiController.d.ts +33 -33
- package/dist/controller/gateway/PublicApiController.js +194 -194
- package/dist/controller/gateway/StaticController.d.ts +23 -23
- package/dist/controller/gateway/StaticController.js +280 -280
- package/dist/controller/helpers.controller.d.ts +36 -36
- package/dist/controller/helpers.controller.js +187 -187
- package/dist/controller/home.controller.d.ts +9 -9
- package/dist/controller/home.controller.js +78 -78
- package/dist/controller/manage/AnyApiMangeApi.d.ts +10 -10
- package/dist/controller/manage/AnyApiMangeApi.js +98 -98
- package/dist/controller/manage/AppLogMangeApi.d.ts +10 -10
- package/dist/controller/manage/AppLogMangeApi.js +88 -88
- package/dist/controller/manage/AppMangeApi.d.ts +12 -12
- package/dist/controller/manage/AppMangeApi.js +101 -101
- package/dist/controller/manage/AppPageMangeApi.d.ts +10 -10
- package/dist/controller/manage/AppPageMangeApi.js +87 -87
- package/dist/controller/manage/AppSchemaHistoryApi.d.ts +10 -10
- package/dist/controller/manage/AppSchemaHistoryApi.js +83 -83
- package/dist/controller/manage/CrudMethodsMangeApi.d.ts +10 -10
- package/dist/controller/manage/CrudMethodsMangeApi.js +84 -84
- package/dist/controller/manage/CrudStandardDesignApi.d.ts +46 -46
- package/dist/controller/manage/CrudStandardDesignApi.js +367 -367
- package/dist/controller/manage/DataDictManageApi.d.ts +17 -17
- package/dist/controller/manage/DataDictManageApi.js +165 -165
- package/dist/controller/manage/DeployManageApi.d.ts +21 -21
- package/dist/controller/manage/DeployManageApi.js +203 -203
- package/dist/controller/manage/DocLibManageApi.d.ts +10 -10
- package/dist/controller/manage/DocLibManageApi.js +104 -104
- package/dist/controller/manage/DocManageApi.d.ts +11 -11
- package/dist/controller/manage/DocManageApi.js +130 -130
- package/dist/controller/manage/FileManageApi.d.ts +13 -13
- package/dist/controller/manage/FileManageApi.js +77 -77
- package/dist/controller/manage/FlowConfigManageApi.d.ts +12 -12
- package/dist/controller/manage/FlowConfigManageApi.js +109 -109
- package/dist/controller/manage/LowCodeTplManageApi.d.ts +13 -13
- package/dist/controller/manage/LowCodeTplManageApi.js +86 -86
- package/dist/controller/manage/MenuManageApi.d.ts +11 -11
- package/dist/controller/manage/MenuManageApi.js +104 -104
- package/dist/controller/manage/ProxyApiMangeApi.d.ts +10 -10
- package/dist/controller/manage/ProxyApiMangeApi.js +87 -87
- package/dist/controller/manage/SuperAdminManageApi.d.ts +24 -24
- package/dist/controller/manage/SuperAdminManageApi.js +153 -153
- package/dist/controller/manage/SysConfigMangeApi.d.ts +12 -12
- package/dist/controller/manage/SysConfigMangeApi.js +133 -133
- package/dist/controller/manage/SystemInfoManageApi.d.ts +12 -12
- package/dist/controller/manage/SystemInfoManageApi.js +82 -82
- package/dist/controller/manage/UserAccountManageApi.d.ts +16 -16
- package/dist/controller/manage/UserAccountManageApi.js +153 -153
- package/dist/controller/manage/WorkbenchMangeApi.d.ts +11 -11
- package/dist/controller/manage/WorkbenchMangeApi.js +106 -106
- package/dist/controller/myinfo/AuthController.d.ts +37 -37
- package/dist/controller/myinfo/AuthController.js +157 -157
- package/dist/controller/myinfo/MyInfoController.d.ts +13 -13
- package/dist/controller/myinfo/MyInfoController.js +51 -51
- package/dist/controller/render/AppRenderController.d.ts +12 -12
- package/dist/controller/render/AppRenderController.js +93 -93
- package/dist/controller/test.controller.d.ts +8 -8
- package/dist/controller/test.controller.js +51 -51
- package/dist/filter/default.filter.d.ts +7 -7
- package/dist/filter/default.filter.js +23 -23
- package/dist/filter/notfound.filter.d.ts +5 -5
- package/dist/filter/notfound.filter.js +20 -20
- package/dist/index.d.ts +111 -111
- package/dist/index.js +129 -129
- package/dist/interface.d.ts +30 -30
- package/dist/interface.js +3 -3
- package/dist/libs/crud-pro/CrudPro.d.ts +51 -37
- package/dist/libs/crud-pro/CrudPro.js +207 -146
- package/dist/libs/crud-pro/defaultConfigs.d.ts +4 -4
- package/dist/libs/crud-pro/defaultConfigs.js +15 -15
- package/dist/libs/crud-pro/exceptions.d.ts +106 -106
- package/dist/libs/crud-pro/exceptions.js +119 -119
- package/dist/libs/crud-pro/interfaces.d.ts +195 -175
- package/dist/libs/crud-pro/interfaces.js +12 -12
- package/dist/libs/crud-pro/models/ExecuteContext.d.ts +50 -50
- package/dist/libs/crud-pro/models/ExecuteContext.js +87 -87
- package/dist/libs/crud-pro/models/ExecuteContextFunc.d.ts +38 -38
- package/dist/libs/crud-pro/models/ExecuteContextFunc.js +72 -72
- package/dist/libs/crud-pro/models/FuncContext.d.ts +18 -18
- package/dist/libs/crud-pro/models/FuncContext.js +6 -6
- package/dist/libs/crud-pro/models/RequestCfgModel.d.ts +65 -65
- package/dist/libs/crud-pro/models/RequestCfgModel.js +81 -81
- package/dist/libs/crud-pro/models/RequestModel.d.ts +25 -25
- package/dist/libs/crud-pro/models/RequestModel.js +113 -113
- package/dist/libs/crud-pro/models/ResModel.d.ts +20 -20
- package/dist/libs/crud-pro/models/ResModel.js +2 -2
- package/dist/libs/crud-pro/models/ServiceHub.d.ts +20 -20
- package/dist/libs/crud-pro/models/ServiceHub.js +2 -2
- package/dist/libs/crud-pro/models/SqlCfgModel.d.ts +23 -23
- package/dist/libs/crud-pro/models/SqlCfgModel.js +40 -40
- package/dist/libs/crud-pro/models/SqlSegArg.d.ts +6 -6
- package/dist/libs/crud-pro/models/SqlSegArg.js +12 -12
- package/dist/libs/crud-pro/models/Transaction.d.ts +50 -50
- package/dist/libs/crud-pro/models/Transaction.js +184 -184
- package/dist/libs/crud-pro/models/TransactionMySQL.d.ts +19 -19
- package/dist/libs/crud-pro/models/TransactionMySQL.js +48 -48
- package/dist/libs/crud-pro/models/TransactionPostgres.d.ts +19 -19
- package/dist/libs/crud-pro/models/TransactionPostgres.js +64 -64
- package/dist/libs/crud-pro/models/TransactionSqlServer.d.ts +9 -9
- package/dist/libs/crud-pro/models/TransactionSqlServer.js +61 -61
- package/dist/libs/crud-pro/models/keys.d.ts +111 -111
- package/dist/libs/crud-pro/models/keys.js +156 -156
- package/dist/libs/crud-pro/services/CrudProCachedCfgService.d.ts +11 -11
- package/dist/libs/crud-pro/services/CrudProCachedCfgService.js +73 -73
- package/dist/libs/crud-pro/services/CrudProDataFilterService.d.ts +17 -0
- package/dist/libs/crud-pro/services/CrudProDataFilterService.js +53 -0
- package/dist/libs/crud-pro/services/CrudProExecuteFuncService.d.ts +9 -9
- package/dist/libs/crud-pro/services/CrudProExecuteFuncService.js +125 -125
- package/dist/libs/crud-pro/services/CrudProExecuteSqlService.d.ts +17 -17
- package/dist/libs/crud-pro/services/CrudProExecuteSqlService.js +224 -224
- package/dist/libs/crud-pro/services/CrudProFieldUpdateService.d.ts +9 -9
- package/dist/libs/crud-pro/services/CrudProFieldUpdateService.js +51 -51
- package/dist/libs/crud-pro/services/CrudProFieldValidateService.d.ts +13 -13
- package/dist/libs/crud-pro/services/CrudProFieldValidateService.js +148 -148
- package/dist/libs/crud-pro/services/CrudProGenSqlCondition.d.ts +25 -25
- package/dist/libs/crud-pro/services/CrudProGenSqlCondition.js +385 -385
- package/dist/libs/crud-pro/services/CrudProGenSqlService.d.ts +25 -25
- package/dist/libs/crud-pro/services/CrudProGenSqlService.js +165 -165
- package/dist/libs/crud-pro/services/CrudProOriginToExecuteSql.d.ts +32 -32
- package/dist/libs/crud-pro/services/CrudProOriginToExecuteSql.js +345 -339
- package/dist/libs/crud-pro/services/CrudProServiceBase.d.ts +24 -24
- package/dist/libs/crud-pro/services/CrudProServiceBase.js +88 -88
- package/dist/libs/crud-pro/services/CrudProTableMetaService.d.ts +12 -9
- package/dist/libs/crud-pro/services/CrudProTableMetaService.js +167 -77
- package/dist/libs/crud-pro/services/CurdProServiceHub.d.ts +34 -32
- package/dist/libs/crud-pro/services/CurdProServiceHub.js +69 -64
- package/dist/libs/crud-pro/utils/CompareUtils.d.ts +9 -9
- package/dist/libs/crud-pro/utils/CompareUtils.js +25 -25
- package/dist/libs/crud-pro/utils/CrudMonitor.d.ts +9 -9
- package/dist/libs/crud-pro/utils/CrudMonitor.js +12 -12
- package/dist/libs/crud-pro/utils/DatabaseName.d.ts +9 -9
- package/dist/libs/crud-pro/utils/DatabaseName.js +50 -50
- package/dist/libs/crud-pro/utils/DateTimeUtils.d.ts +7 -7
- package/dist/libs/crud-pro/utils/DateTimeUtils.js +21 -21
- package/dist/libs/crud-pro/utils/MemoryRefreshCache.d.ts +19 -19
- package/dist/libs/crud-pro/utils/MemoryRefreshCache.js +47 -47
- package/dist/libs/crud-pro/utils/MessageParseUtils.d.ts +5 -5
- package/dist/libs/crud-pro/utils/MessageParseUtils.js +33 -33
- package/dist/libs/crud-pro/utils/MixinUtils.d.ts +40 -40
- package/dist/libs/crud-pro/utils/MixinUtils.js +259 -259
- package/dist/libs/crud-pro/utils/ModelUtils.d.ts +11 -11
- package/dist/libs/crud-pro/utils/ModelUtils.js +54 -54
- package/dist/libs/crud-pro/utils/MultiKeyMap.d.ts +11 -11
- package/dist/libs/crud-pro/utils/MultiKeyMap.js +63 -63
- package/dist/libs/crud-pro/utils/SqlFuncUtils.d.ts +5 -5
- package/dist/libs/crud-pro/utils/SqlFuncUtils.js +29 -29
- package/dist/libs/crud-pro/utils/TypeUtils.d.ts +40 -40
- package/dist/libs/crud-pro/utils/TypeUtils.js +166 -166
- package/dist/libs/crud-pro/utils/ValidateUtils.d.ts +3 -3
- package/dist/libs/crud-pro/utils/ValidateUtils.js +165 -165
- package/dist/libs/crud-pro/utils/pool/MySQLUtils.d.ts +3 -3
- package/dist/libs/crud-pro/utils/pool/MySQLUtils.js +19 -19
- package/dist/libs/crud-pro/utils/pool/PostgresUtils.d.ts +3 -3
- package/dist/libs/crud-pro/utils/pool/PostgresUtils.js +20 -20
- package/dist/libs/crud-pro/utils/pool/SqlServerUtils.d.ts +3 -3
- package/dist/libs/crud-pro/utils/pool/SqlServerUtils.js +20 -20
- package/dist/libs/crud-pro/utils/sqlConvert/convertColumnName.d.ts +4 -4
- package/dist/libs/crud-pro/utils/sqlConvert/convertColumnName.js +35 -35
- package/dist/libs/crud-pro/utils/sqlConvert/convertMix.js +24 -24
- package/dist/libs/crud-pro/utils/sqlConvert/convertMsSql.d.ts +2 -2
- package/dist/libs/crud-pro/utils/sqlConvert/convertMsSql.js +14 -14
- package/dist/libs/crud-pro/utils/sqlConvert/convertPgSql.d.ts +2 -2
- package/dist/libs/crud-pro/utils/sqlConvert/convertPgSql.js +14 -14
- package/dist/libs/global-config/global-config.d.ts +71 -71
- package/dist/libs/global-config/global-config.js +38 -38
- package/dist/libs/utils/AsymmetricCrypto.d.ts +76 -76
- package/dist/libs/utils/AsymmetricCrypto.js +261 -261
- package/dist/libs/utils/base64.d.ts +9 -9
- package/dist/libs/utils/base64.js +42 -42
- package/dist/libs/utils/common-dto.d.ts +18 -18
- package/dist/libs/utils/common-dto.js +40 -40
- package/dist/libs/utils/crypto-utils.d.ts +3 -3
- package/dist/libs/utils/crypto-utils.js +55 -55
- package/dist/libs/utils/errorToString.d.ts +20 -20
- package/dist/libs/utils/errorToString.js +79 -79
- package/dist/libs/utils/fatcms-request.d.ts +45 -45
- package/dist/libs/utils/fatcms-request.js +161 -161
- package/dist/libs/utils/format-url.d.ts +17 -17
- package/dist/libs/utils/format-url.js +30 -30
- package/dist/libs/utils/functions.d.ts +11 -11
- package/dist/libs/utils/functions.js +99 -99
- package/dist/libs/utils/ordernum-utils.d.ts +22 -22
- package/dist/libs/utils/ordernum-utils.js +35 -35
- package/dist/libs/utils/parseConfig.d.ts +8 -8
- package/dist/libs/utils/parseConfig.js +47 -47
- package/dist/libs/utils/parseCreateSql.d.ts +10 -10
- package/dist/libs/utils/parseCreateSql.js +87 -87
- package/dist/libs/utils/render-utils.d.ts +40 -40
- package/dist/libs/utils/render-utils.js +158 -158
- package/dist/middleware/forbidden.middleware.d.ts +74 -74
- package/dist/middleware/forbidden.middleware.js +318 -318
- package/dist/middleware/global.middleware.d.ts +40 -40
- package/dist/middleware/global.middleware.js +310 -310
- package/dist/middleware/permission.middleware.d.ts +88 -88
- package/dist/middleware/permission.middleware.js +145 -145
- package/dist/middleware/rediscache.middleware.d.ts +28 -28
- package/dist/middleware/rediscache.middleware.js +114 -114
- package/dist/middleware/redislock.middleware.d.ts +29 -29
- package/dist/middleware/redislock.middleware.js +106 -106
- package/dist/middleware/tx.middleware.d.ts +55 -55
- package/dist/middleware/tx.middleware.js +83 -83
- package/dist/models/AsyncTaskModel.d.ts +74 -74
- package/dist/models/AsyncTaskModel.js +31 -31
- package/dist/models/FlowModel.d.ts +227 -227
- package/dist/models/FlowModel.js +53 -53
- package/dist/models/RedisKeys.d.ts +15 -15
- package/dist/models/RedisKeys.js +18 -18
- package/dist/models/SystemEntities.d.ts +118 -118
- package/dist/models/SystemEntities.js +18 -18
- package/dist/models/SystemPerm.d.ts +96 -96
- package/dist/models/SystemPerm.js +101 -101
- package/dist/models/SystemTables.d.ts +25 -25
- package/dist/models/SystemTables.js +28 -28
- package/dist/models/WorkbenchInfoTools.d.ts +7 -7
- package/dist/models/WorkbenchInfoTools.js +20 -20
- package/dist/models/bizmodels.d.ts +150 -150
- package/dist/models/bizmodels.js +62 -62
- package/dist/models/contextLogger.d.ts +27 -27
- package/dist/models/contextLogger.js +119 -119
- package/dist/models/devops.d.ts +12 -12
- package/dist/models/devops.js +19 -19
- package/dist/models/userSession.d.ts +67 -67
- package/dist/models/userSession.js +179 -179
- package/dist/schedule/anonymousContext.d.ts +15 -15
- package/dist/schedule/anonymousContext.js +74 -74
- package/dist/schedule/index.d.ts +4 -4
- package/dist/schedule/index.js +10 -10
- package/dist/schedule/runSchedule.d.ts +12 -12
- package/dist/schedule/runSchedule.js +68 -68
- package/dist/schedule/scheduleNames.d.ts +15 -15
- package/dist/schedule/scheduleNames.js +19 -19
- package/dist/service/AuthService.d.ts +56 -56
- package/dist/service/AuthService.js +251 -251
- package/dist/service/EnumInfoService.d.ts +30 -30
- package/dist/service/EnumInfoService.js +97 -97
- package/dist/service/FileCenterService.d.ts +64 -64
- package/dist/service/FileCenterService.js +422 -422
- package/dist/service/SysAppService.d.ts +15 -15
- package/dist/service/SysAppService.js +108 -108
- package/dist/service/SysConfigService.d.ts +10 -10
- package/dist/service/SysConfigService.js +64 -64
- package/dist/service/SysDictDataService.d.ts +9 -9
- package/dist/service/SysDictDataService.js +72 -72
- package/dist/service/SysMenuService.d.ts +51 -51
- package/dist/service/SysMenuService.js +58 -58
- package/dist/service/UserAccountService.d.ts +23 -23
- package/dist/service/UserAccountService.js +107 -107
- package/dist/service/UserSessionService.d.ts +43 -43
- package/dist/service/UserSessionService.js +163 -163
- package/dist/service/VisitStatService.d.ts +14 -14
- package/dist/service/VisitStatService.js +161 -161
- package/dist/service/WorkbenchService.d.ts +59 -59
- package/dist/service/WorkbenchService.js +249 -249
- package/dist/service/anyapi/AnyApiSandboxService.d.ts +15 -15
- package/dist/service/anyapi/AnyApiSandboxService.js +110 -110
- package/dist/service/anyapi/AnyApiService.d.ts +27 -27
- package/dist/service/anyapi/AnyApiService.js +181 -181
- package/dist/service/asyncTask/AsyncTaskRunnerService.d.ts +50 -50
- package/dist/service/asyncTask/AsyncTaskRunnerService.js +287 -287
- package/dist/service/asyncTask/AsyncTaskService.d.ts +7 -7
- package/dist/service/asyncTask/AsyncTaskService.js +34 -34
- package/dist/service/asyncTask/handler/ExcelInfoModel.d.ts +10 -10
- package/dist/service/asyncTask/handler/ExcelInfoModel.js +2 -2
- package/dist/service/asyncTask/handler/ExportExcelAsyncTaskHandler.d.ts +7 -7
- package/dist/service/asyncTask/handler/ExportExcelAsyncTaskHandler.js +216 -216
- package/dist/service/asyncTask/handler/ExportExcelByInnerHttpHandler.d.ts +36 -36
- package/dist/service/asyncTask/handler/ExportExcelByInnerHttpHandler.js +141 -141
- package/dist/service/asyncTask/handler/ExportExcelByStdCrudHandler.d.ts +46 -46
- package/dist/service/asyncTask/handler/ExportExcelByStdCrudHandler.js +135 -135
- package/dist/service/base/ApiBaseService.d.ts +22 -22
- package/dist/service/base/ApiBaseService.js +60 -60
- package/dist/service/base/ApiRateLimiter.d.ts +10 -10
- package/dist/service/base/ApiRateLimiter.js +51 -51
- package/dist/service/base/BaseService.d.ts +46 -46
- package/dist/service/base/BaseService.js +131 -131
- package/dist/service/base/cache/CacheServiceFactory.d.ts +26 -26
- package/dist/service/base/cache/CacheServiceFactory.js +122 -122
- package/dist/service/base/cache/CtxCache.d.ts +18 -18
- package/dist/service/base/cache/CtxCache.js +37 -37
- package/dist/service/base/cache/DiskCache.d.ts +19 -19
- package/dist/service/base/cache/DiskCache.js +81 -81
- package/dist/service/base/cache/MemoryCache.d.ts +12 -12
- package/dist/service/base/cache/MemoryCache.js +58 -58
- package/dist/service/base/cache/NoneCache.d.ts +10 -10
- package/dist/service/base/cache/NoneCache.js +19 -19
- package/dist/service/base/cache/RedisCache.d.ts +14 -14
- package/dist/service/base/cache/RedisCache.js +31 -31
- package/dist/service/crudstd/CrudStdActionService.d.ts +17 -17
- package/dist/service/crudstd/CrudStdActionService.js +32 -32
- package/dist/service/crudstd/CrudStdConstant.d.ts +58 -58
- package/dist/service/crudstd/CrudStdConstant.js +64 -64
- package/dist/service/crudstd/CrudStdRelationService.d.ts +11 -11
- package/dist/service/crudstd/CrudStdRelationService.js +179 -179
- package/dist/service/crudstd/CrudStdService.d.ts +59 -59
- package/dist/service/crudstd/CrudStdService.js +348 -348
- package/dist/service/curd/CrudProQuick.d.ts +60 -60
- package/dist/service/curd/CrudProQuick.js +167 -167
- package/dist/service/curd/CurdMixByAccountService.d.ts +14 -14
- package/dist/service/curd/CurdMixByAccountService.js +166 -166
- package/dist/service/curd/CurdMixByDictService.d.ts +12 -12
- package/dist/service/curd/CurdMixByDictService.js +114 -114
- package/dist/service/curd/CurdMixByLinkToCustomService.d.ts +30 -30
- package/dist/service/curd/CurdMixByLinkToCustomService.js +209 -209
- package/dist/service/curd/CurdMixBySysConfigService.d.ts +13 -13
- package/dist/service/curd/CurdMixBySysConfigService.js +116 -116
- package/dist/service/curd/CurdMixByWorkbenchService.d.ts +11 -11
- package/dist/service/curd/CurdMixByWorkbenchService.js +80 -80
- package/dist/service/curd/CurdMixService.d.ts +28 -28
- package/dist/service/curd/CurdMixService.js +100 -100
- package/dist/service/curd/CurdMixUtils.d.ts +57 -57
- package/dist/service/curd/CurdMixUtils.js +331 -331
- package/dist/service/curd/CurdProService.d.ts +32 -32
- package/dist/service/curd/CurdProService.js +215 -215
- package/dist/service/curd/fixCfgModel.d.ts +3 -3
- package/dist/service/curd/fixCfgModel.js +104 -104
- package/dist/service/curd/fixSoftDelete.d.ts +6 -6
- package/dist/service/curd/fixSoftDelete.js +43 -43
- package/dist/service/flow/FlowConfigService.d.ts +41 -41
- package/dist/service/flow/FlowConfigService.js +95 -95
- package/dist/service/flow/FlowInstanceCrudService.d.ts +35 -35
- package/dist/service/flow/FlowInstanceCrudService.js +257 -257
- package/dist/service/flow/FlowInstanceService.d.ts +88 -88
- package/dist/service/flow/FlowInstanceService.js +451 -451
- package/dist/service/proxyapi/ProxyApiLoadService.d.ts +21 -21
- package/dist/service/proxyapi/ProxyApiLoadService.js +167 -167
- package/dist/service/proxyapi/ProxyApiService.d.ts +61 -61
- package/dist/service/proxyapi/ProxyApiService.js +317 -317
- package/dist/service/proxyapi/ProxyApiUtils.d.ts +15 -15
- package/dist/service/proxyapi/ProxyApiUtils.js +34 -34
- package/dist/service/proxyapi/RouteHandler.d.ts +6 -6
- package/dist/service/proxyapi/RouteHandler.js +9 -9
- package/dist/service/proxyapi/RouteTrie.d.ts +12 -12
- package/dist/service/proxyapi/RouteTrie.js +64 -64
- package/dist/service/proxyapi/WeightedRandom.d.ts +9 -9
- package/dist/service/proxyapi/WeightedRandom.js +31 -31
- package/dist/service/proxyapi/WeightedRoundRobin.d.ts +8 -8
- package/dist/service/proxyapi/WeightedRoundRobin.js +33 -33
- package/index.d.ts +10 -10
- package/package.json +87 -87
- package/src/libs/crud-pro/CrudPro.ts +71 -0
- package/src/libs/crud-pro/interfaces.ts +22 -0
- package/src/libs/crud-pro/models/ServiceHub.ts +2 -2
- package/src/libs/crud-pro/services/CrudProDataFilterService.ts +58 -0
- package/src/libs/crud-pro/services/CrudProOriginToExecuteSql.ts +10 -1
- package/src/libs/crud-pro/services/CrudProTableMetaService.ts +145 -40
- package/src/libs/crud-pro/services/CurdProServiceHub.ts +10 -3
- package/src/libs/crud-pro/utils/CrudMonitor.ts +13 -13
- package/src/libs/utils/AsymmetricCrypto.ts +307 -307
- package/src/libs/utils/format-url.ts +29 -29
- package/src/libs/utils/render-utils.ts +223 -223
- package/src/models/WorkbenchInfoTools.ts +19 -19
- package/src/service/SysAppService.ts +103 -103
- package/src/service/SysDictDataService.ts +63 -63
- package/src/service/SysMenuService.ts +87 -87
- package/src/service/WorkbenchService.ts +279 -279
- package/src/service/base/cache/CacheServiceFactory.ts +135 -135
- package/src/service/base/cache/CtxCache.ts +45 -45
- package/src/service/base/cache/DiskCache.ts +90 -90
- package/src/service/base/cache/MemoryCache.ts +68 -68
- package/src/service/base/cache/NoneCache.ts +24 -24
- package/src/service/base/cache/RedisCache.ts +41 -41
- package/src/service/curd/CurdMixByAccountService.ts +177 -177
- package/src/service/curd/fixSoftDelete.ts +58 -58
- package/tsconfig.json +32 -32
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
export interface ICommonResult {
|
|
2
|
-
success: boolean;
|
|
3
|
-
data?: any;
|
|
4
|
-
message?: string;
|
|
5
|
-
code?: string;
|
|
6
|
-
debugInfo?: any;
|
|
7
|
-
}
|
|
8
|
-
export declare class CommonResult implements ICommonResult {
|
|
9
|
-
code: string;
|
|
10
|
-
data: any;
|
|
11
|
-
message: string;
|
|
12
|
-
success: boolean;
|
|
13
|
-
debugInfo: any;
|
|
14
|
-
static successNotNull(data?: any): CommonResult;
|
|
15
|
-
static successRes(data?: any): CommonResult;
|
|
16
|
-
static successMsg(message: string, data?: any): CommonResult;
|
|
17
|
-
static errorRes(message: string, errorCode?: string, debugInfo?: any): CommonResult;
|
|
18
|
-
}
|
|
1
|
+
export interface ICommonResult {
|
|
2
|
+
success: boolean;
|
|
3
|
+
data?: any;
|
|
4
|
+
message?: string;
|
|
5
|
+
code?: string;
|
|
6
|
+
debugInfo?: any;
|
|
7
|
+
}
|
|
8
|
+
export declare class CommonResult implements ICommonResult {
|
|
9
|
+
code: string;
|
|
10
|
+
data: any;
|
|
11
|
+
message: string;
|
|
12
|
+
success: boolean;
|
|
13
|
+
debugInfo: any;
|
|
14
|
+
static successNotNull(data?: any): CommonResult;
|
|
15
|
+
static successRes(data?: any): CommonResult;
|
|
16
|
+
static successMsg(message: string, data?: any): CommonResult;
|
|
17
|
+
static errorRes(message: string, errorCode?: string, debugInfo?: any): CommonResult;
|
|
18
|
+
}
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CommonResult = void 0;
|
|
4
|
-
class CommonResult {
|
|
5
|
-
static successNotNull(data) {
|
|
6
|
-
const res = new CommonResult();
|
|
7
|
-
if (data) {
|
|
8
|
-
res.success = true;
|
|
9
|
-
res.data = data;
|
|
10
|
-
}
|
|
11
|
-
else {
|
|
12
|
-
res.success = false;
|
|
13
|
-
res.message = '对象找不到';
|
|
14
|
-
}
|
|
15
|
-
return res;
|
|
16
|
-
}
|
|
17
|
-
static successRes(data) {
|
|
18
|
-
const res = new CommonResult();
|
|
19
|
-
res.success = true;
|
|
20
|
-
res.data = data;
|
|
21
|
-
return res;
|
|
22
|
-
}
|
|
23
|
-
static successMsg(message, data) {
|
|
24
|
-
const res = new CommonResult();
|
|
25
|
-
res.success = true;
|
|
26
|
-
res.message = message;
|
|
27
|
-
res.data = data;
|
|
28
|
-
return res;
|
|
29
|
-
}
|
|
30
|
-
static errorRes(message, errorCode = '', debugInfo = null) {
|
|
31
|
-
const res = new CommonResult();
|
|
32
|
-
res.success = false;
|
|
33
|
-
res.data = null;
|
|
34
|
-
res.message = message;
|
|
35
|
-
res.code = errorCode;
|
|
36
|
-
res.debugInfo = debugInfo;
|
|
37
|
-
return res;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
exports.CommonResult = CommonResult;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CommonResult = void 0;
|
|
4
|
+
class CommonResult {
|
|
5
|
+
static successNotNull(data) {
|
|
6
|
+
const res = new CommonResult();
|
|
7
|
+
if (data) {
|
|
8
|
+
res.success = true;
|
|
9
|
+
res.data = data;
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
res.success = false;
|
|
13
|
+
res.message = '对象找不到';
|
|
14
|
+
}
|
|
15
|
+
return res;
|
|
16
|
+
}
|
|
17
|
+
static successRes(data) {
|
|
18
|
+
const res = new CommonResult();
|
|
19
|
+
res.success = true;
|
|
20
|
+
res.data = data;
|
|
21
|
+
return res;
|
|
22
|
+
}
|
|
23
|
+
static successMsg(message, data) {
|
|
24
|
+
const res = new CommonResult();
|
|
25
|
+
res.success = true;
|
|
26
|
+
res.message = message;
|
|
27
|
+
res.data = data;
|
|
28
|
+
return res;
|
|
29
|
+
}
|
|
30
|
+
static errorRes(message, errorCode = '', debugInfo = null) {
|
|
31
|
+
const res = new CommonResult();
|
|
32
|
+
res.success = false;
|
|
33
|
+
res.data = null;
|
|
34
|
+
res.message = message;
|
|
35
|
+
res.code = errorCode;
|
|
36
|
+
res.debugInfo = debugInfo;
|
|
37
|
+
return res;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.CommonResult = CommonResult;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { Aes128CBC } from 'aes-128-cbc';
|
|
2
|
-
declare const privateAES: Aes128CBC;
|
|
3
|
-
export { privateAES };
|
|
1
|
+
import { Aes128CBC } from 'aes-128-cbc';
|
|
2
|
+
declare const privateAES: Aes128CBC;
|
|
3
|
+
export { privateAES };
|
|
@@ -1,55 +1,55 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.privateAES = void 0;
|
|
4
|
-
const crypto = require("crypto");
|
|
5
|
-
const path = require("path");
|
|
6
|
-
const fs = require("fs");
|
|
7
|
-
const md5 = require("md5");
|
|
8
|
-
const aes_128_cbc_1 = require("aes-128-cbc");
|
|
9
|
-
function hashUtf8Hex(data) {
|
|
10
|
-
const hash = crypto.createHash('sha256');
|
|
11
|
-
const chunkSize = 1024; // 每次处理 1MB 数据
|
|
12
|
-
for (let i = 0; i < data.length; i += chunkSize) {
|
|
13
|
-
const chunk = data.slice(i, i + chunkSize);
|
|
14
|
-
const inputBuffer = Buffer.from(chunk, 'utf8');
|
|
15
|
-
hash.update(inputBuffer);
|
|
16
|
-
}
|
|
17
|
-
return hash.digest('hex');
|
|
18
|
-
}
|
|
19
|
-
function getSeedFilePath() {
|
|
20
|
-
const basePath = process.cwd();
|
|
21
|
-
const p1 = path.join(basePath, 'config/fatcms-seed/aeskey.txt');
|
|
22
|
-
const p2 = path.join(basePath, 'dist/config/fatcms-seed/aeskey.txt');
|
|
23
|
-
const p3 = path.join(basePath, 'config/seed/aeskey.txt');
|
|
24
|
-
const p4 = path.join(basePath, 'dist/config/seed/aeskey.txt');
|
|
25
|
-
const p5 = path.join(__dirname, '../../config/seed/aeskey.txt'); // 这个文件肯定存在. 这是lib包下的路径.
|
|
26
|
-
const paths = [p1, p2, p3, p4, p5];
|
|
27
|
-
for (let i = 0; i < paths.length; i++) {
|
|
28
|
-
const p = paths[i];
|
|
29
|
-
if (fs.existsSync(p)) {
|
|
30
|
-
return p;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
function readSeed1() {
|
|
36
|
-
const filePath = getSeedFilePath();
|
|
37
|
-
if (!filePath) {
|
|
38
|
-
console.error('crypto-utils ==> readSeed1 未找到seed文件路径');
|
|
39
|
-
throw new Error('crypto-utils 读取seed文件失败:未找到seed文件路径');
|
|
40
|
-
}
|
|
41
|
-
console.info('crypto-utils ==> readSeed1 读取seed文件路径: ' + filePath);
|
|
42
|
-
return fs.readFileSync(filePath, 'utf-8');
|
|
43
|
-
}
|
|
44
|
-
function createAes128BySeedContent(seedContent) {
|
|
45
|
-
const hash1 = hashUtf8Hex(seedContent.trim());
|
|
46
|
-
const key = md5(hash1);
|
|
47
|
-
const iv = md5(key + hash1);
|
|
48
|
-
return new aes_128_cbc_1.Aes128CBC(key, iv);
|
|
49
|
-
}
|
|
50
|
-
function createAes128BySeedFile() {
|
|
51
|
-
const seed1 = readSeed1();
|
|
52
|
-
return createAes128BySeedContent(seed1);
|
|
53
|
-
}
|
|
54
|
-
const privateAES = createAes128BySeedFile();
|
|
55
|
-
exports.privateAES = privateAES;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.privateAES = void 0;
|
|
4
|
+
const crypto = require("crypto");
|
|
5
|
+
const path = require("path");
|
|
6
|
+
const fs = require("fs");
|
|
7
|
+
const md5 = require("md5");
|
|
8
|
+
const aes_128_cbc_1 = require("aes-128-cbc");
|
|
9
|
+
function hashUtf8Hex(data) {
|
|
10
|
+
const hash = crypto.createHash('sha256');
|
|
11
|
+
const chunkSize = 1024; // 每次处理 1MB 数据
|
|
12
|
+
for (let i = 0; i < data.length; i += chunkSize) {
|
|
13
|
+
const chunk = data.slice(i, i + chunkSize);
|
|
14
|
+
const inputBuffer = Buffer.from(chunk, 'utf8');
|
|
15
|
+
hash.update(inputBuffer);
|
|
16
|
+
}
|
|
17
|
+
return hash.digest('hex');
|
|
18
|
+
}
|
|
19
|
+
function getSeedFilePath() {
|
|
20
|
+
const basePath = process.cwd();
|
|
21
|
+
const p1 = path.join(basePath, 'config/fatcms-seed/aeskey.txt');
|
|
22
|
+
const p2 = path.join(basePath, 'dist/config/fatcms-seed/aeskey.txt');
|
|
23
|
+
const p3 = path.join(basePath, 'config/seed/aeskey.txt');
|
|
24
|
+
const p4 = path.join(basePath, 'dist/config/seed/aeskey.txt');
|
|
25
|
+
const p5 = path.join(__dirname, '../../config/seed/aeskey.txt'); // 这个文件肯定存在. 这是lib包下的路径.
|
|
26
|
+
const paths = [p1, p2, p3, p4, p5];
|
|
27
|
+
for (let i = 0; i < paths.length; i++) {
|
|
28
|
+
const p = paths[i];
|
|
29
|
+
if (fs.existsSync(p)) {
|
|
30
|
+
return p;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
function readSeed1() {
|
|
36
|
+
const filePath = getSeedFilePath();
|
|
37
|
+
if (!filePath) {
|
|
38
|
+
console.error('crypto-utils ==> readSeed1 未找到seed文件路径');
|
|
39
|
+
throw new Error('crypto-utils 读取seed文件失败:未找到seed文件路径');
|
|
40
|
+
}
|
|
41
|
+
console.info('crypto-utils ==> readSeed1 读取seed文件路径: ' + filePath);
|
|
42
|
+
return fs.readFileSync(filePath, 'utf-8');
|
|
43
|
+
}
|
|
44
|
+
function createAes128BySeedContent(seedContent) {
|
|
45
|
+
const hash1 = hashUtf8Hex(seedContent.trim());
|
|
46
|
+
const key = md5(hash1);
|
|
47
|
+
const iv = md5(key + hash1);
|
|
48
|
+
return new aes_128_cbc_1.Aes128CBC(key, iv);
|
|
49
|
+
}
|
|
50
|
+
function createAes128BySeedFile() {
|
|
51
|
+
const seed1 = readSeed1();
|
|
52
|
+
return createAes128BySeedContent(seed1);
|
|
53
|
+
}
|
|
54
|
+
const privateAES = createAes128BySeedFile();
|
|
55
|
+
exports.privateAES = privateAES;
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 将错误对象转换为详细的字符串描述
|
|
3
|
-
*
|
|
4
|
-
* 支持多种错误类型:
|
|
5
|
-
* - Error对象(包含堆栈信息)
|
|
6
|
-
* - 原始值类型(string, number, boolean等)
|
|
7
|
-
* - 普通对象
|
|
8
|
-
* - null/undefined
|
|
9
|
-
*
|
|
10
|
-
* @param error 任意类型的错误对象
|
|
11
|
-
* @returns 格式化后的错误描述字符串
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* errorToString(new Error('test')) // 包含堆栈信息
|
|
15
|
-
* errorToString('error message') // 'Error: A primitive value was thrown...'
|
|
16
|
-
* errorToString({ code: 500, msg: 'fail' }) // JSON格式的对象
|
|
17
|
-
* errorToString(null) // 'Error: null was thrown'
|
|
18
|
-
*/
|
|
19
|
-
declare function errorToString(error: any): string;
|
|
20
|
-
export { errorToString };
|
|
1
|
+
/**
|
|
2
|
+
* 将错误对象转换为详细的字符串描述
|
|
3
|
+
*
|
|
4
|
+
* 支持多种错误类型:
|
|
5
|
+
* - Error对象(包含堆栈信息)
|
|
6
|
+
* - 原始值类型(string, number, boolean等)
|
|
7
|
+
* - 普通对象
|
|
8
|
+
* - null/undefined
|
|
9
|
+
*
|
|
10
|
+
* @param error 任意类型的错误对象
|
|
11
|
+
* @returns 格式化后的错误描述字符串
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* errorToString(new Error('test')) // 包含堆栈信息
|
|
15
|
+
* errorToString('error message') // 'Error: A primitive value was thrown...'
|
|
16
|
+
* errorToString({ code: 500, msg: 'fail' }) // JSON格式的对象
|
|
17
|
+
* errorToString(null) // 'Error: null was thrown'
|
|
18
|
+
*/
|
|
19
|
+
declare function errorToString(error: any): string;
|
|
20
|
+
export { errorToString };
|
|
@@ -1,79 +1,79 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.errorToString = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* 将错误对象转换为详细的字符串描述
|
|
6
|
-
*
|
|
7
|
-
* 支持多种错误类型:
|
|
8
|
-
* - Error对象(包含堆栈信息)
|
|
9
|
-
* - 原始值类型(string, number, boolean等)
|
|
10
|
-
* - 普通对象
|
|
11
|
-
* - null/undefined
|
|
12
|
-
*
|
|
13
|
-
* @param error 任意类型的错误对象
|
|
14
|
-
* @returns 格式化后的错误描述字符串
|
|
15
|
-
*
|
|
16
|
-
* @example
|
|
17
|
-
* errorToString(new Error('test')) // 包含堆栈信息
|
|
18
|
-
* errorToString('error message') // 'Error: A primitive value was thrown...'
|
|
19
|
-
* errorToString({ code: 500, msg: 'fail' }) // JSON格式的对象
|
|
20
|
-
* errorToString(null) // 'Error: null was thrown'
|
|
21
|
-
*/
|
|
22
|
-
function errorToString(error) {
|
|
23
|
-
var _a;
|
|
24
|
-
// 处理非错误对象的情况
|
|
25
|
-
if (typeof error === 'undefined') {
|
|
26
|
-
return 'Error: undefined was thrown';
|
|
27
|
-
}
|
|
28
|
-
if (error === null) {
|
|
29
|
-
return 'Error: null was thrown';
|
|
30
|
-
}
|
|
31
|
-
// 处理原始值类型
|
|
32
|
-
const primitiveTypes = ['string', 'number', 'boolean', 'symbol', 'bigint'];
|
|
33
|
-
if (primitiveTypes.includes(typeof error)) {
|
|
34
|
-
return `Error: A primitive value was thrown\nValue: ${String(error)}`;
|
|
35
|
-
}
|
|
36
|
-
// 处理 Error 对象(必须在处理普通对象之前)
|
|
37
|
-
if (error instanceof Error) {
|
|
38
|
-
const errorDetails = [];
|
|
39
|
-
errorDetails.push(`Error: ${error.name || 'Error'}`);
|
|
40
|
-
errorDetails.push(`Message: ${error.message || 'No error message'}`);
|
|
41
|
-
if (error.stack) {
|
|
42
|
-
errorDetails.push('Stack Trace:');
|
|
43
|
-
errorDetails.push(error.stack);
|
|
44
|
-
}
|
|
45
|
-
// 常见的错误扩展属性
|
|
46
|
-
const extraProperties = ['code', 'fileName', 'lineNumber', 'columnNumber', 'statusCode', 'status'];
|
|
47
|
-
extraProperties.forEach(prop => {
|
|
48
|
-
if (error[prop] !== undefined) {
|
|
49
|
-
errorDetails.push(`${prop}: ${error[prop]}`);
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
// 获取自定义属性
|
|
53
|
-
const customProps = Object.keys(error).filter(key => !['name', 'message', 'stack', ...extraProperties].includes(key));
|
|
54
|
-
if (customProps.length > 0) {
|
|
55
|
-
errorDetails.push('Custom Properties:');
|
|
56
|
-
customProps.forEach(prop => {
|
|
57
|
-
try {
|
|
58
|
-
const value = JSON.stringify(error[prop], null, 2);
|
|
59
|
-
errorDetails.push(` ${prop}: ${value}`);
|
|
60
|
-
}
|
|
61
|
-
catch (e) {
|
|
62
|
-
// 处理循环引用或不可序列化的对象
|
|
63
|
-
errorDetails.push(` ${prop}: [Object cannot be serialized]`);
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
return errorDetails.join('\n');
|
|
68
|
-
}
|
|
69
|
-
// 处理普通对象
|
|
70
|
-
try {
|
|
71
|
-
const objectDetails = JSON.stringify(error, null, 2);
|
|
72
|
-
return `Error: A plain object was thrown\nObject: ${objectDetails}`;
|
|
73
|
-
}
|
|
74
|
-
catch (e) {
|
|
75
|
-
// 处理循环引用或不可序列化的对象
|
|
76
|
-
return `Error: An object was thrown but could not be serialized\nType: ${((_a = error.constructor) === null || _a === void 0 ? void 0 : _a.name) || 'Unknown'}`;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
exports.errorToString = errorToString;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.errorToString = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* 将错误对象转换为详细的字符串描述
|
|
6
|
+
*
|
|
7
|
+
* 支持多种错误类型:
|
|
8
|
+
* - Error对象(包含堆栈信息)
|
|
9
|
+
* - 原始值类型(string, number, boolean等)
|
|
10
|
+
* - 普通对象
|
|
11
|
+
* - null/undefined
|
|
12
|
+
*
|
|
13
|
+
* @param error 任意类型的错误对象
|
|
14
|
+
* @returns 格式化后的错误描述字符串
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* errorToString(new Error('test')) // 包含堆栈信息
|
|
18
|
+
* errorToString('error message') // 'Error: A primitive value was thrown...'
|
|
19
|
+
* errorToString({ code: 500, msg: 'fail' }) // JSON格式的对象
|
|
20
|
+
* errorToString(null) // 'Error: null was thrown'
|
|
21
|
+
*/
|
|
22
|
+
function errorToString(error) {
|
|
23
|
+
var _a;
|
|
24
|
+
// 处理非错误对象的情况
|
|
25
|
+
if (typeof error === 'undefined') {
|
|
26
|
+
return 'Error: undefined was thrown';
|
|
27
|
+
}
|
|
28
|
+
if (error === null) {
|
|
29
|
+
return 'Error: null was thrown';
|
|
30
|
+
}
|
|
31
|
+
// 处理原始值类型
|
|
32
|
+
const primitiveTypes = ['string', 'number', 'boolean', 'symbol', 'bigint'];
|
|
33
|
+
if (primitiveTypes.includes(typeof error)) {
|
|
34
|
+
return `Error: A primitive value was thrown\nValue: ${String(error)}`;
|
|
35
|
+
}
|
|
36
|
+
// 处理 Error 对象(必须在处理普通对象之前)
|
|
37
|
+
if (error instanceof Error) {
|
|
38
|
+
const errorDetails = [];
|
|
39
|
+
errorDetails.push(`Error: ${error.name || 'Error'}`);
|
|
40
|
+
errorDetails.push(`Message: ${error.message || 'No error message'}`);
|
|
41
|
+
if (error.stack) {
|
|
42
|
+
errorDetails.push('Stack Trace:');
|
|
43
|
+
errorDetails.push(error.stack);
|
|
44
|
+
}
|
|
45
|
+
// 常见的错误扩展属性
|
|
46
|
+
const extraProperties = ['code', 'fileName', 'lineNumber', 'columnNumber', 'statusCode', 'status'];
|
|
47
|
+
extraProperties.forEach(prop => {
|
|
48
|
+
if (error[prop] !== undefined) {
|
|
49
|
+
errorDetails.push(`${prop}: ${error[prop]}`);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
// 获取自定义属性
|
|
53
|
+
const customProps = Object.keys(error).filter(key => !['name', 'message', 'stack', ...extraProperties].includes(key));
|
|
54
|
+
if (customProps.length > 0) {
|
|
55
|
+
errorDetails.push('Custom Properties:');
|
|
56
|
+
customProps.forEach(prop => {
|
|
57
|
+
try {
|
|
58
|
+
const value = JSON.stringify(error[prop], null, 2);
|
|
59
|
+
errorDetails.push(` ${prop}: ${value}`);
|
|
60
|
+
}
|
|
61
|
+
catch (e) {
|
|
62
|
+
// 处理循环引用或不可序列化的对象
|
|
63
|
+
errorDetails.push(` ${prop}: [Object cannot be serialized]`);
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
return errorDetails.join('\n');
|
|
68
|
+
}
|
|
69
|
+
// 处理普通对象
|
|
70
|
+
try {
|
|
71
|
+
const objectDetails = JSON.stringify(error, null, 2);
|
|
72
|
+
return `Error: A plain object was thrown\nObject: ${objectDetails}`;
|
|
73
|
+
}
|
|
74
|
+
catch (e) {
|
|
75
|
+
// 处理循环引用或不可序列化的对象
|
|
76
|
+
return `Error: An object was thrown but could not be serialized\nType: ${((_a = error.constructor) === null || _a === void 0 ? void 0 : _a.name) || 'Unknown'}`;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.errorToString = errorToString;
|
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
import { Context } from '@midwayjs/koa';
|
|
2
|
-
/**
|
|
3
|
-
* 是否开启调试能力
|
|
4
|
-
* @param ctx
|
|
5
|
-
*/
|
|
6
|
-
export declare function isEnableDebug(ctx: Context): boolean;
|
|
7
|
-
/**
|
|
8
|
-
* 是否开启SA账号。只有账号密码没有用,必须通过ModHeader插件设置如下字段
|
|
9
|
-
* @param ctx
|
|
10
|
-
*/
|
|
11
|
-
export declare function isEnableSuperAdmin(ctx: Context): boolean;
|
|
12
|
-
export declare function isLocalEnv(ctx: Context): boolean;
|
|
13
|
-
/**
|
|
14
|
-
* 获取调试时专用的站点code
|
|
15
|
-
* @param ctx
|
|
16
|
-
*/
|
|
17
|
-
export declare function getDebugWorkbenchCode(ctx: Context): any;
|
|
18
|
-
/**
|
|
19
|
-
* 代理转发服务专用
|
|
20
|
-
* @param ctx
|
|
21
|
-
*/
|
|
22
|
-
export declare function getDebugProxyTarget(ctx: Context): string;
|
|
23
|
-
export declare function getCsrfToken(ctx: Context): string;
|
|
24
|
-
/**
|
|
25
|
-
* 扩展的源码应用:本地开发调试时加载本地的js脚本
|
|
26
|
-
* @param ctx
|
|
27
|
-
*/
|
|
28
|
-
export declare function getExtLocalLoaderPort(ctx: Context): string;
|
|
29
|
-
export declare function isCsrfTokenValid(ctx: Context): Promise<boolean>;
|
|
30
|
-
export declare function assertCsrfToken(ctx: Context): Promise<void>;
|
|
31
|
-
/**
|
|
32
|
-
* 安全获取客户端真实IP地址(优先从 userSession 获取)
|
|
33
|
-
*
|
|
34
|
-
* 推荐在业务代码中使用此方法,因为:
|
|
35
|
-
* 1. userSession 中的 IP 在全局中间件初始化时已解析,性能更好
|
|
36
|
-
* 2. 自动处理 userSession 不存在的边界情况
|
|
37
|
-
*
|
|
38
|
-
* @param ctx Koa上下文
|
|
39
|
-
* @returns 客户端真实IP地址
|
|
40
|
-
*
|
|
41
|
-
* @example
|
|
42
|
-
* // 在 Controller/Service 中推荐使用
|
|
43
|
-
* const ip = getRealIpSafe(this.ctx);
|
|
44
|
-
*/
|
|
45
|
-
export declare function getRealIpSafe(ctx: Context): string;
|
|
1
|
+
import { Context } from '@midwayjs/koa';
|
|
2
|
+
/**
|
|
3
|
+
* 是否开启调试能力
|
|
4
|
+
* @param ctx
|
|
5
|
+
*/
|
|
6
|
+
export declare function isEnableDebug(ctx: Context): boolean;
|
|
7
|
+
/**
|
|
8
|
+
* 是否开启SA账号。只有账号密码没有用,必须通过ModHeader插件设置如下字段
|
|
9
|
+
* @param ctx
|
|
10
|
+
*/
|
|
11
|
+
export declare function isEnableSuperAdmin(ctx: Context): boolean;
|
|
12
|
+
export declare function isLocalEnv(ctx: Context): boolean;
|
|
13
|
+
/**
|
|
14
|
+
* 获取调试时专用的站点code
|
|
15
|
+
* @param ctx
|
|
16
|
+
*/
|
|
17
|
+
export declare function getDebugWorkbenchCode(ctx: Context): any;
|
|
18
|
+
/**
|
|
19
|
+
* 代理转发服务专用
|
|
20
|
+
* @param ctx
|
|
21
|
+
*/
|
|
22
|
+
export declare function getDebugProxyTarget(ctx: Context): string;
|
|
23
|
+
export declare function getCsrfToken(ctx: Context): string;
|
|
24
|
+
/**
|
|
25
|
+
* 扩展的源码应用:本地开发调试时加载本地的js脚本
|
|
26
|
+
* @param ctx
|
|
27
|
+
*/
|
|
28
|
+
export declare function getExtLocalLoaderPort(ctx: Context): string;
|
|
29
|
+
export declare function isCsrfTokenValid(ctx: Context): Promise<boolean>;
|
|
30
|
+
export declare function assertCsrfToken(ctx: Context): Promise<void>;
|
|
31
|
+
/**
|
|
32
|
+
* 安全获取客户端真实IP地址(优先从 userSession 获取)
|
|
33
|
+
*
|
|
34
|
+
* 推荐在业务代码中使用此方法,因为:
|
|
35
|
+
* 1. userSession 中的 IP 在全局中间件初始化时已解析,性能更好
|
|
36
|
+
* 2. 自动处理 userSession 不存在的边界情况
|
|
37
|
+
*
|
|
38
|
+
* @param ctx Koa上下文
|
|
39
|
+
* @returns 客户端真实IP地址
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* // 在 Controller/Service 中推荐使用
|
|
43
|
+
* const ip = getRealIpSafe(this.ctx);
|
|
44
|
+
*/
|
|
45
|
+
export declare function getRealIpSafe(ctx: Context): string;
|