apifox-mock-generator 1.4.6 → 2.0.0
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/CHANGELOG.md +103 -0
- package/README.md +1 -1
- package/dist/package.json +22 -4
- package/dist/src/application/use-cases/fetch-apifox-data.use-case.d.ts +19 -0
- package/dist/src/application/use-cases/fetch-apifox-data.use-case.d.ts.map +1 -0
- package/dist/src/application/use-cases/fetch-apifox-data.use-case.js +29 -0
- package/dist/src/application/use-cases/fetch-apifox-data.use-case.js.map +1 -0
- package/dist/src/application/use-cases/generate-mock.use-case.d.ts +22 -0
- package/dist/src/application/use-cases/generate-mock.use-case.d.ts.map +1 -0
- package/dist/src/application/use-cases/generate-mock.use-case.js +42 -0
- package/dist/src/application/use-cases/generate-mock.use-case.js.map +1 -0
- package/dist/src/application/use-cases/generate-types.use-case.d.ts +22 -0
- package/dist/src/application/use-cases/generate-types.use-case.d.ts.map +1 -0
- package/dist/src/application/use-cases/generate-types.use-case.js +42 -0
- package/dist/src/application/use-cases/generate-types.use-case.js.map +1 -0
- package/dist/src/application/use-cases/index.d.ts +8 -0
- package/dist/src/application/use-cases/index.d.ts.map +1 -0
- package/dist/src/application/use-cases/index.js +8 -0
- package/dist/src/application/use-cases/index.js.map +1 -0
- package/dist/src/application/use-cases/serve-mock.use-case.d.ts +26 -0
- package/dist/src/application/use-cases/serve-mock.use-case.d.ts.map +1 -0
- package/dist/src/application/use-cases/serve-mock.use-case.js +103 -0
- package/dist/src/application/use-cases/serve-mock.use-case.js.map +1 -0
- package/dist/src/core/apifox-client.d.ts +5 -1
- package/dist/src/core/apifox-client.d.ts.map +1 -1
- package/dist/src/core/apifox-client.js +8 -102
- package/dist/src/core/apifox-client.js.map +1 -1
- package/dist/src/core/config-loader.d.ts.map +1 -1
- package/dist/src/core/config-loader.js +17 -5
- package/dist/src/core/config-loader.js.map +1 -1
- package/dist/src/core/container-setup.d.ts +9 -0
- package/dist/src/core/container-setup.d.ts.map +1 -0
- package/dist/src/core/container-setup.js +64 -0
- package/dist/src/core/container-setup.js.map +1 -0
- package/dist/src/core/container.d.ts +42 -0
- package/dist/src/core/container.d.ts.map +1 -0
- package/dist/src/core/container.js +70 -0
- package/dist/src/core/container.js.map +1 -0
- package/dist/src/core/endpoint-filter.d.ts +10 -0
- package/dist/src/core/endpoint-filter.d.ts.map +1 -1
- package/dist/src/core/endpoint-filter.js +22 -95
- package/dist/src/core/endpoint-filter.js.map +1 -1
- package/dist/src/core/error-codes.d.ts +22 -0
- package/dist/src/core/error-codes.d.ts.map +1 -0
- package/dist/src/core/error-codes.js +31 -0
- package/dist/src/core/error-codes.js.map +1 -0
- package/dist/src/core/error-handler.d.ts +8 -0
- package/dist/src/core/error-handler.d.ts.map +1 -0
- package/dist/src/core/error-handler.js +45 -0
- package/dist/src/core/error-handler.js.map +1 -0
- package/dist/src/core/errors.d.ts +49 -0
- package/dist/src/core/errors.d.ts.map +1 -0
- package/dist/src/core/errors.js +70 -0
- package/dist/src/core/errors.js.map +1 -0
- package/dist/src/core/mock-config-loader.d.ts.map +1 -1
- package/dist/src/core/mock-config-loader.js +24 -7
- package/dist/src/core/mock-config-loader.js.map +1 -1
- package/dist/src/core/openapi-converter.d.ts +5 -1
- package/dist/src/core/openapi-converter.d.ts.map +1 -1
- package/dist/src/core/openapi-converter.js +11 -34
- package/dist/src/core/openapi-converter.js.map +1 -1
- package/dist/src/core/service-keys.d.ts +39 -0
- package/dist/src/core/service-keys.d.ts.map +1 -0
- package/dist/src/core/service-keys.js +43 -0
- package/dist/src/core/service-keys.js.map +1 -0
- package/dist/src/domain/entities/api-endpoint.entity.d.ts +57 -0
- package/dist/src/domain/entities/api-endpoint.entity.d.ts.map +1 -0
- package/dist/src/domain/entities/api-endpoint.entity.js +87 -0
- package/dist/src/domain/entities/api-endpoint.entity.js.map +1 -0
- package/dist/src/domain/entities/index.d.ts +6 -0
- package/dist/src/domain/entities/index.d.ts.map +1 -0
- package/dist/src/domain/entities/index.js +6 -0
- package/dist/src/domain/entities/index.js.map +1 -0
- package/dist/src/domain/entities/mock-route.entity.d.ts +41 -0
- package/dist/src/domain/entities/mock-route.entity.d.ts.map +1 -0
- package/dist/src/domain/entities/mock-route.entity.js +82 -0
- package/dist/src/domain/entities/mock-route.entity.js.map +1 -0
- package/dist/src/domain/interfaces/apifox-client.interface.d.ts +14 -0
- package/dist/src/domain/interfaces/apifox-client.interface.d.ts.map +1 -0
- package/dist/src/domain/interfaces/apifox-client.interface.js +2 -0
- package/dist/src/domain/interfaces/apifox-client.interface.js.map +1 -0
- package/dist/src/domain/interfaces/file-system.interface.d.ts +46 -0
- package/dist/src/domain/interfaces/file-system.interface.d.ts.map +1 -0
- package/dist/src/domain/interfaces/file-system.interface.js +2 -0
- package/dist/src/domain/interfaces/file-system.interface.js.map +1 -0
- package/dist/src/domain/interfaces/generator.interface.d.ts +24 -0
- package/dist/src/domain/interfaces/generator.interface.d.ts.map +1 -0
- package/dist/src/domain/interfaces/generator.interface.js +2 -0
- package/dist/src/domain/interfaces/generator.interface.js.map +1 -0
- package/dist/src/domain/interfaces/http-client.interface.d.ts +54 -0
- package/dist/src/domain/interfaces/http-client.interface.d.ts.map +1 -0
- package/dist/src/domain/interfaces/http-client.interface.js +2 -0
- package/dist/src/domain/interfaces/http-client.interface.js.map +1 -0
- package/dist/src/domain/interfaces/index.d.ts +11 -0
- package/dist/src/domain/interfaces/index.d.ts.map +1 -0
- package/dist/src/domain/interfaces/index.js +11 -0
- package/dist/src/domain/interfaces/index.js.map +1 -0
- package/dist/src/domain/interfaces/logger.interface.d.ts +36 -0
- package/dist/src/domain/interfaces/logger.interface.d.ts.map +1 -0
- package/dist/src/domain/interfaces/logger.interface.js +2 -0
- package/dist/src/domain/interfaces/logger.interface.js.map +1 -0
- package/dist/src/domain/interfaces/remote-proxy.interface.d.ts +26 -0
- package/dist/src/domain/interfaces/remote-proxy.interface.d.ts.map +1 -0
- package/dist/src/domain/interfaces/remote-proxy.interface.js +2 -0
- package/dist/src/domain/interfaces/remote-proxy.interface.js.map +1 -0
- package/dist/src/domain/interfaces/route-manager.interface.d.ts +34 -0
- package/dist/src/domain/interfaces/route-manager.interface.d.ts.map +1 -0
- package/dist/src/domain/interfaces/route-manager.interface.js +2 -0
- package/dist/src/domain/interfaces/route-manager.interface.js.map +1 -0
- package/dist/src/domain/interfaces.d.ts +239 -0
- package/dist/src/domain/interfaces.d.ts.map +1 -0
- package/dist/src/domain/interfaces.js +2 -0
- package/dist/src/domain/interfaces.js.map +1 -0
- package/dist/src/domain/services/endpoint-filter.service.d.ts +52 -0
- package/dist/src/domain/services/endpoint-filter.service.d.ts.map +1 -0
- package/dist/src/domain/services/endpoint-filter.service.js +150 -0
- package/dist/src/domain/services/endpoint-filter.service.js.map +1 -0
- package/dist/src/domain/services/index.d.ts +7 -0
- package/dist/src/domain/services/index.d.ts.map +1 -0
- package/dist/src/domain/services/index.js +7 -0
- package/dist/src/domain/services/index.js.map +1 -0
- package/dist/src/domain/services/openapi-converter.service.d.ts +15 -0
- package/dist/src/domain/services/openapi-converter.service.d.ts.map +1 -0
- package/dist/src/domain/services/openapi-converter.service.js +74 -0
- package/dist/src/domain/services/openapi-converter.service.js.map +1 -0
- package/dist/src/domain/services/route-matcher.service.d.ts +38 -0
- package/dist/src/domain/services/route-matcher.service.d.ts.map +1 -0
- package/dist/src/domain/services/route-matcher.service.js +61 -0
- package/dist/src/domain/services/route-matcher.service.js.map +1 -0
- package/dist/src/generators/mock-generator.d.ts +2 -1
- package/dist/src/generators/mock-generator.d.ts.map +1 -1
- package/dist/src/generators/mock-generator.js +13 -8
- package/dist/src/generators/mock-generator.js.map +1 -1
- package/dist/src/generators/templates/type-template.d.ts +2 -1
- package/dist/src/generators/templates/type-template.d.ts.map +1 -1
- package/dist/src/generators/templates/type-template.js +72 -48
- package/dist/src/generators/templates/type-template.js.map +1 -1
- package/dist/src/generators/type-generator.d.ts +2 -1
- package/dist/src/generators/type-generator.d.ts.map +1 -1
- package/dist/src/generators/type-generator.js +1 -1
- package/dist/src/generators/type-generator.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/infrastructure/apifox/apifox-client.impl.d.ts +22 -0
- package/dist/src/infrastructure/apifox/apifox-client.impl.d.ts.map +1 -0
- package/dist/src/infrastructure/apifox/apifox-client.impl.js +135 -0
- package/dist/src/infrastructure/apifox/apifox-client.impl.js.map +1 -0
- package/dist/src/infrastructure/file-system/file-system.impl.d.ts +15 -0
- package/dist/src/infrastructure/file-system/file-system.impl.d.ts.map +1 -0
- package/dist/src/infrastructure/file-system/file-system.impl.js +45 -0
- package/dist/src/infrastructure/file-system/file-system.impl.js.map +1 -0
- package/dist/src/infrastructure/http/axios-client.impl.d.ts +19 -0
- package/dist/src/infrastructure/http/axios-client.impl.d.ts.map +1 -0
- package/dist/src/infrastructure/http/axios-client.impl.js +59 -0
- package/dist/src/infrastructure/http/axios-client.impl.js.map +1 -0
- package/dist/src/infrastructure/logger/console-logger.impl.d.ts +15 -0
- package/dist/src/infrastructure/logger/console-logger.impl.d.ts.map +1 -0
- package/dist/src/infrastructure/logger/console-logger.impl.js +30 -0
- package/dist/src/infrastructure/logger/console-logger.impl.js.map +1 -0
- package/dist/src/infrastructure/route-manager/route-manager.impl.d.ts +14 -0
- package/dist/src/infrastructure/route-manager/route-manager.impl.d.ts.map +1 -0
- package/dist/src/infrastructure/route-manager/route-manager.impl.js +25 -0
- package/dist/src/infrastructure/route-manager/route-manager.impl.js.map +1 -0
- package/dist/src/infrastructure/server/hot-reload.d.ts +8 -0
- package/dist/src/infrastructure/server/hot-reload.d.ts.map +1 -0
- package/dist/src/infrastructure/server/hot-reload.js +132 -0
- package/dist/src/infrastructure/server/hot-reload.js.map +1 -0
- package/dist/src/infrastructure/server/remote-proxy.d.ts +22 -0
- package/dist/src/infrastructure/server/remote-proxy.d.ts.map +1 -0
- package/dist/src/infrastructure/server/remote-proxy.js +82 -0
- package/dist/src/infrastructure/server/remote-proxy.js.map +1 -0
- package/dist/src/infrastructure/server/route-loader.d.ts +18 -0
- package/dist/src/infrastructure/server/route-loader.d.ts.map +1 -0
- package/dist/src/infrastructure/server/route-loader.js +256 -0
- package/dist/src/infrastructure/server/route-loader.js.map +1 -0
- package/dist/src/presentation/http/express-server.d.ts +8 -0
- package/dist/src/presentation/http/express-server.d.ts.map +1 -0
- package/dist/src/presentation/http/express-server.js +65 -0
- package/dist/src/presentation/http/express-server.js.map +1 -0
- package/dist/src/presentation/http/middleware/error-handler.middleware.d.ts +9 -0
- package/dist/src/presentation/http/middleware/error-handler.middleware.d.ts.map +1 -0
- package/dist/src/presentation/http/middleware/error-handler.middleware.js +31 -0
- package/dist/src/presentation/http/middleware/error-handler.middleware.js.map +1 -0
- package/dist/src/presentation/http/route-handler.d.ts +38 -0
- package/dist/src/presentation/http/route-handler.d.ts.map +1 -0
- package/dist/src/presentation/http/route-handler.js +237 -0
- package/dist/src/presentation/http/route-handler.js.map +1 -0
- package/dist/src/presentation/http/validation.d.ts +25 -0
- package/dist/src/presentation/http/validation.d.ts.map +1 -0
- package/dist/src/presentation/http/validation.js +131 -0
- package/dist/src/presentation/http/validation.js.map +1 -0
- package/dist/src/scripts/cli.js +1 -1
- package/dist/src/scripts/cli.js.map +1 -1
- package/dist/src/scripts/generate-mock.js +15 -35
- package/dist/src/scripts/generate-mock.js.map +1 -1
- package/dist/src/scripts/serve-mock.js +9 -87
- package/dist/src/scripts/serve-mock.js.map +1 -1
- package/dist/src/server/express-server.d.ts +2 -2
- package/dist/src/server/express-server.d.ts.map +1 -1
- package/dist/src/server/express-server.js +16 -1
- package/dist/src/server/express-server.js.map +1 -1
- package/dist/src/server/hot-reload.d.ts +2 -2
- package/dist/src/server/hot-reload.d.ts.map +1 -1
- package/dist/src/server/hot-reload.js.map +1 -1
- package/dist/src/server/remote-proxy.d.ts +2 -2
- package/dist/src/server/remote-proxy.d.ts.map +1 -1
- package/dist/src/server/remote-proxy.js +13 -1
- package/dist/src/server/remote-proxy.js.map +1 -1
- package/dist/src/server/route-handler.d.ts +5 -3
- package/dist/src/server/route-handler.d.ts.map +1 -1
- package/dist/src/server/route-handler.js +15 -9
- package/dist/src/server/route-handler.js.map +1 -1
- package/dist/src/server/route-matcher.d.ts.map +1 -1
- package/dist/src/server/route-matcher.js +3 -1
- package/dist/src/server/route-matcher.js.map +1 -1
- package/dist/src/server/validation.d.ts +20 -1
- package/dist/src/server/validation.d.ts.map +1 -1
- package/dist/src/server/validation.js +25 -13
- package/dist/src/server/validation.js.map +1 -1
- package/dist/src/types/index.d.ts +21 -6
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/mock/list.d.ts +13 -0
- package/dist/src/types/mock/list.d.ts.map +1 -0
- package/dist/src/types/mock/list.js +4 -0
- package/dist/src/types/mock/list.js.map +1 -0
- package/dist/src/types/mock/v1/auth/login/username.d.ts +1 -1
- package/dist/src/types/mock/v1/auth/login/username.d.ts.map +1 -1
- package/dist/src/types/mock/v1/dict/data/default.d.ts +25 -0
- package/dist/src/types/mock/v1/dict/data/default.d.ts.map +1 -0
- package/dist/src/types/mock/v1/dict/data/default.js +4 -0
- package/dist/src/types/mock/v1/dict/data/default.js.map +1 -0
- package/dist/src/types/mock/v1/dict/data/order.d.ts +25 -0
- package/dist/src/types/mock/v1/dict/data/order.d.ts.map +1 -0
- package/dist/src/types/mock/v1/dict/data/order.js +4 -0
- package/dist/src/types/mock/v1/dict/data/order.js.map +1 -0
- package/dist/src/types/mock/v1/dict/data/pagedList.d.ts +62 -0
- package/dist/src/types/mock/v1/dict/data/pagedList.d.ts.map +1 -0
- package/dist/src/types/mock/v1/dict/data/pagedList.js +4 -0
- package/dist/src/types/mock/v1/dict/data/pagedList.js.map +1 -0
- package/dist/src/types/mock/v1/dict/data.d.ts +82 -0
- package/dist/src/types/mock/v1/dict/data.d.ts.map +1 -0
- package/dist/src/types/mock/v1/dict/data.js +4 -0
- package/dist/src/types/mock/v1/dict/data.js.map +1 -0
- package/dist/src/types/mock/v1/dict/pagedList.d.ts +54 -0
- package/dist/src/types/mock/v1/dict/pagedList.d.ts.map +1 -0
- package/dist/src/types/mock/v1/dict/pagedList.js +4 -0
- package/dist/src/types/mock/v1/dict/pagedList.js.map +1 -0
- package/dist/src/types/mock/v1/dict.d.ts +80 -0
- package/dist/src/types/mock/v1/dict.d.ts.map +1 -0
- package/dist/src/types/mock/v1/dict.js +4 -0
- package/dist/src/types/mock/v1/dict.js.map +1 -0
- package/dist/src/types/mock/v1/file/download.d.ts +23 -0
- package/dist/src/types/mock/v1/file/download.d.ts.map +1 -0
- package/dist/src/types/mock/v1/file/download.js +4 -0
- package/dist/src/types/mock/v1/file/download.js.map +1 -0
- package/dist/src/types/mock/v1/file/pagedList.d.ts +62 -0
- package/dist/src/types/mock/v1/file/pagedList.d.ts.map +1 -0
- package/dist/src/types/mock/v1/file/pagedList.js +4 -0
- package/dist/src/types/mock/v1/file/pagedList.js.map +1 -0
- package/dist/src/types/mock/v1/file.d.ts +56 -0
- package/dist/src/types/mock/v1/file.d.ts.map +1 -0
- package/dist/src/types/mock/v1/file.js +4 -0
- package/dist/src/types/mock/v1/file.js.map +1 -0
- package/dist/src/types/mock/v1/internal/getToken.d.ts +32 -0
- package/dist/src/types/mock/v1/internal/getToken.d.ts.map +1 -0
- package/dist/src/types/mock/v1/internal/getToken.js +4 -0
- package/dist/src/types/mock/v1/internal/getToken.js.map +1 -0
- package/dist/src/types/mock/v1/internal/user/unlock.d.ts +23 -0
- package/dist/src/types/mock/v1/internal/user/unlock.d.ts.map +1 -0
- package/dist/src/types/mock/v1/internal/user/unlock.js +4 -0
- package/dist/src/types/mock/v1/internal/user/unlock.js.map +1 -0
- package/dist/src/types/mock/v1/role/disabled.d.ts +25 -0
- package/dist/src/types/mock/v1/role/disabled.d.ts.map +1 -0
- package/dist/src/types/mock/v1/role/disabled.js +4 -0
- package/dist/src/types/mock/v1/role/disabled.js.map +1 -0
- package/dist/src/types/mock/v1/role/pagedList.d.ts +2 -2
- package/dist/src/types/mock/v1/role/pagedList.d.ts.map +1 -1
- package/dist/src/types/mock/v1/role.d.ts +31 -29
- package/dist/src/types/mock/v1/role.d.ts.map +1 -1
- package/dist/src/types/mock/v1/role.js.map +1 -1
- package/dist/src/types/mock/v1/tenant/permission/tree.d.ts +2 -2
- package/dist/src/types/mock/v1/tenant/permission/tree.d.ts.map +1 -1
- package/dist/src/types/mock/v1/tenant/user/link.d.ts +23 -0
- package/dist/src/types/mock/v1/tenant/user/link.d.ts.map +1 -0
- package/dist/src/types/mock/v1/tenant/user/link.js +4 -0
- package/dist/src/types/mock/v1/tenant/user/link.js.map +1 -0
- package/dist/src/types/mock/v1/tenant/user/pagedList.d.ts +8 -0
- package/dist/src/types/mock/v1/tenant/user/pagedList.d.ts.map +1 -1
- package/dist/src/types/mock/v1/tenant/user/pagedList.js.map +1 -1
- package/dist/src/types/mock/v1/tenant/user.d.ts +19 -0
- package/dist/src/types/mock/v1/tenant/user.d.ts.map +1 -1
- package/dist/src/types/mock/v1/tenant/user.js.map +1 -1
- package/dist/src/types/mock/v1/user/exportData.d.ts +25 -0
- package/dist/src/types/mock/v1/user/exportData.d.ts.map +1 -0
- package/dist/src/types/mock/v1/user/exportData.js +4 -0
- package/dist/src/types/mock/v1/user/exportData.js.map +1 -0
- package/dist/src/types/mock/v1/user/importData.d.ts +13 -0
- package/dist/src/types/mock/v1/user/importData.d.ts.map +1 -0
- package/dist/src/types/mock/v1/user/importData.js +4 -0
- package/dist/src/types/mock/v1/user/importData.js.map +1 -0
- package/dist/src/types/mock/v1/user/info.d.ts +0 -30
- package/dist/src/types/mock/v1/user/info.d.ts.map +1 -1
- package/dist/src/types/mock/v1/user/info.js.map +1 -1
- package/dist/src/types/mock/v1/user/permission/tree.d.ts +4 -2
- package/dist/src/types/mock/v1/user/permission/tree.d.ts.map +1 -1
- package/dist/src/types/mock/v1/user/permission/tree.js.map +1 -1
- package/dist/src/types/mock/v1/user.d.ts +0 -106
- package/dist/src/types/mock/v1/user.d.ts.map +1 -1
- package/dist/src/types/mock/v1/user.js +1 -1
- package/dist/src/types/mock/v1/user.js.map +1 -1
- package/dist/src/types/openapi.d.ts +426 -0
- package/dist/src/types/openapi.d.ts.map +1 -0
- package/dist/src/types/openapi.js +23 -0
- package/dist/src/types/openapi.js.map +1 -0
- package/dist/src/utils/block-updater.d.ts.map +1 -1
- package/dist/src/utils/block-updater.js +5 -4
- package/dist/src/utils/block-updater.js.map +1 -1
- package/dist/src/utils/code-formatter.d.ts.map +1 -1
- package/dist/src/utils/code-formatter.js +2 -0
- package/dist/src/utils/code-formatter.js.map +1 -1
- package/dist/src/utils/file-helper.d.ts +7 -7
- package/dist/src/utils/file-helper.d.ts.map +1 -1
- package/dist/src/utils/file-helper.js +11 -8
- package/dist/src/utils/file-helper.js.map +1 -1
- package/dist/src/utils/file-operations.d.ts +1 -1
- package/dist/src/utils/file-operations.d.ts.map +1 -1
- package/dist/src/utils/file-operations.js.map +1 -1
- package/dist/src/utils/file-utils.d.ts +3 -2
- package/dist/src/utils/file-utils.d.ts.map +1 -1
- package/dist/src/utils/file-utils.js +1 -1
- package/dist/src/utils/file-utils.js.map +1 -1
- package/dist/src/utils/path-utils.js.map +1 -1
- package/dist/src/utils/type-mapping.d.ts +9 -2
- package/dist/src/utils/type-mapping.d.ts.map +1 -1
- package/dist/src/utils/type-mapping.js +42 -35
- package/dist/src/utils/type-mapping.js.map +1 -1
- package/package.json +22 -4
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { MockRoute as MockRouteInterface, ValidationConfig } from '../../types/index.js';
|
|
2
|
+
import type express from 'express';
|
|
3
|
+
/**
|
|
4
|
+
* Mock 路由实体
|
|
5
|
+
* 封装 Mock 路由的业务逻辑
|
|
6
|
+
*/
|
|
7
|
+
export declare class MockRoute implements MockRouteInterface {
|
|
8
|
+
readonly path: string;
|
|
9
|
+
readonly method: string;
|
|
10
|
+
readonly response: unknown;
|
|
11
|
+
readonly status?: number;
|
|
12
|
+
readonly validation?: ValidationConfig;
|
|
13
|
+
constructor(data: MockRouteInterface & {
|
|
14
|
+
validation?: ValidationConfig;
|
|
15
|
+
});
|
|
16
|
+
/**
|
|
17
|
+
* 检查路由是否匹配给定的路径和方法
|
|
18
|
+
* @param method HTTP 方法
|
|
19
|
+
* @param path 路径
|
|
20
|
+
* @returns 是否匹配
|
|
21
|
+
*/
|
|
22
|
+
matches(method: string, path: string): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* 提取路径参数
|
|
25
|
+
* @param actualPath 实际路径
|
|
26
|
+
* @returns 路径参数对象
|
|
27
|
+
*/
|
|
28
|
+
extractPathParams(actualPath: string): Record<string, string>;
|
|
29
|
+
/**
|
|
30
|
+
* 执行路由响应(处理函数或静态数据)
|
|
31
|
+
* @param req Express 请求对象
|
|
32
|
+
* @returns 响应数据
|
|
33
|
+
*/
|
|
34
|
+
executeResponse(req: express.Request): Promise<unknown>;
|
|
35
|
+
/**
|
|
36
|
+
* 转换为普通对象(用于序列化)
|
|
37
|
+
* @returns 普通对象
|
|
38
|
+
*/
|
|
39
|
+
toJSON(): MockRouteInterface;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=mock-route.entity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-route.entity.d.ts","sourceRoot":"","sources":["../../../../src/domain/entities/mock-route.entity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,IAAI,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAEnC;;;GAGG;AACH,qBAAa,SAAU,YAAW,kBAAkB;IAClD,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,QAAQ,EAAE,OAAO,CAAC;IAClC,SAAgB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChC,SAAgB,UAAU,CAAC,EAAE,gBAAgB,CAAC;gBAElC,IAAI,EAAE,kBAAkB,GAAG;QAAE,UAAU,CAAC,EAAE,gBAAgB,CAAA;KAAE;IAQxE;;;;;OAKG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAe9C;;;;OAIG;IACH,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAuB7D;;;;OAIG;IACG,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAY7D;;;OAGG;IACH,MAAM,IAAI,kBAAkB;CAQ7B"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mock 路由实体
|
|
3
|
+
* 封装 Mock 路由的业务逻辑
|
|
4
|
+
*/
|
|
5
|
+
export class MockRoute {
|
|
6
|
+
constructor(data) {
|
|
7
|
+
this.path = data.path;
|
|
8
|
+
this.method = data.method;
|
|
9
|
+
this.response = data.response;
|
|
10
|
+
this.status = data.status;
|
|
11
|
+
this.validation = data.validation;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* 检查路由是否匹配给定的路径和方法
|
|
15
|
+
* @param method HTTP 方法
|
|
16
|
+
* @param path 路径
|
|
17
|
+
* @returns 是否匹配
|
|
18
|
+
*/
|
|
19
|
+
matches(method, path) {
|
|
20
|
+
if (this.method.toUpperCase() !== method.toUpperCase()) {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
// 将 OpenAPI 路径格式转换为正则表达式
|
|
24
|
+
const pattern = this.path.replace(/\{(\w+)\}/g, '([^/]+)');
|
|
25
|
+
const regex = new RegExp(`^${pattern}$`);
|
|
26
|
+
// 去掉查询参数和哈希
|
|
27
|
+
const pathWithoutQuery = path.split('?')[0].split('#')[0];
|
|
28
|
+
return regex.test(pathWithoutQuery);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* 提取路径参数
|
|
32
|
+
* @param actualPath 实际路径
|
|
33
|
+
* @returns 路径参数对象
|
|
34
|
+
*/
|
|
35
|
+
extractPathParams(actualPath) {
|
|
36
|
+
const params = {};
|
|
37
|
+
const paramNames = [];
|
|
38
|
+
// 提取参数名
|
|
39
|
+
const pattern = this.path.replace(/\{(\w+)\}/g, (_, name) => {
|
|
40
|
+
paramNames.push(name);
|
|
41
|
+
return '([^/]+)';
|
|
42
|
+
});
|
|
43
|
+
const regex = new RegExp(`^${pattern}$`);
|
|
44
|
+
const pathWithoutQuery = actualPath.split('?')[0].split('#')[0];
|
|
45
|
+
const match = pathWithoutQuery.match(regex);
|
|
46
|
+
if (match) {
|
|
47
|
+
paramNames.forEach((name, index) => {
|
|
48
|
+
params[name] = match[index + 1];
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
return params;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* 执行路由响应(处理函数或静态数据)
|
|
55
|
+
* @param req Express 请求对象
|
|
56
|
+
* @returns 响应数据
|
|
57
|
+
*/
|
|
58
|
+
async executeResponse(req) {
|
|
59
|
+
if (typeof this.response === 'function') {
|
|
60
|
+
const result = this.response(req);
|
|
61
|
+
// 处理 Promise
|
|
62
|
+
if (result && typeof result.then === 'function') {
|
|
63
|
+
return await result;
|
|
64
|
+
}
|
|
65
|
+
return result;
|
|
66
|
+
}
|
|
67
|
+
return this.response;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* 转换为普通对象(用于序列化)
|
|
71
|
+
* @returns 普通对象
|
|
72
|
+
*/
|
|
73
|
+
toJSON() {
|
|
74
|
+
return {
|
|
75
|
+
path: this.path,
|
|
76
|
+
method: this.method,
|
|
77
|
+
response: this.response,
|
|
78
|
+
status: this.status
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=mock-route.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-route.entity.js","sourceRoot":"","sources":["../../../../src/domain/entities/mock-route.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ApifoxConfig } from '../../types/index.js';
|
|
2
|
+
import type { OpenAPIDocument } from '../../types/openapi.js';
|
|
3
|
+
/**
|
|
4
|
+
* Apifox 客户端接口
|
|
5
|
+
*/
|
|
6
|
+
export interface IApifoxClient {
|
|
7
|
+
/**
|
|
8
|
+
* 从 Apifox 获取 OpenAPI 文档
|
|
9
|
+
* @param config Apifox 配置
|
|
10
|
+
* @returns OpenAPI 文档
|
|
11
|
+
*/
|
|
12
|
+
fetchOpenAPI(config: ApifoxConfig): Promise<OpenAPIDocument>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=apifox-client.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apifox-client.interface.d.ts","sourceRoot":"","sources":["../../../../src/domain/interfaces/apifox-client.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CAC9D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apifox-client.interface.js","sourceRoot":"","sources":["../../../../src/domain/interfaces/apifox-client.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 文件系统接口
|
|
3
|
+
*/
|
|
4
|
+
export interface IFileSystem {
|
|
5
|
+
/**
|
|
6
|
+
* 读取文件内容
|
|
7
|
+
* @param path 文件路径
|
|
8
|
+
* @returns 文件内容
|
|
9
|
+
*/
|
|
10
|
+
readFile(path: string): Promise<string>;
|
|
11
|
+
/**
|
|
12
|
+
* 写入文件内容
|
|
13
|
+
* @param path 文件路径
|
|
14
|
+
* @param content 文件内容
|
|
15
|
+
*/
|
|
16
|
+
writeFile(path: string, content: string): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* 检查文件或目录是否存在
|
|
19
|
+
* @param path 路径
|
|
20
|
+
* @returns 是否存在
|
|
21
|
+
*/
|
|
22
|
+
exists(path: string): Promise<boolean>;
|
|
23
|
+
/**
|
|
24
|
+
* 确保目录存在(如果不存在则创建)
|
|
25
|
+
* @param path 目录路径
|
|
26
|
+
*/
|
|
27
|
+
ensureDir(path: string): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* 读取 JSON 文件
|
|
30
|
+
* @param path 文件路径
|
|
31
|
+
* @returns 解析后的 JSON 对象
|
|
32
|
+
*/
|
|
33
|
+
readJson<T>(path: string): Promise<T>;
|
|
34
|
+
/**
|
|
35
|
+
* 写入 JSON 文件
|
|
36
|
+
* @param path 文件路径
|
|
37
|
+
* @param data 要写入的数据
|
|
38
|
+
*/
|
|
39
|
+
writeJson(path: string, data: unknown): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* 获取项目根目录
|
|
42
|
+
* @returns 项目根目录路径
|
|
43
|
+
*/
|
|
44
|
+
getProjectRoot(): string;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=file-system.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-system.interface.d.ts","sourceRoot":"","sources":["../../../../src/domain/interfaces/file-system.interface.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAExC;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvC;;;OAGG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvC;;;;OAIG;IACH,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAEtC;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtD;;;OAGG;IACH,cAAc,IAAI,MAAM,CAAC;CAC1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-system.interface.js","sourceRoot":"","sources":["../../../../src/domain/interfaces/file-system.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { ApifoxConfig, ApiEndpoint } from '../../types/index.js';
|
|
2
|
+
import type { OpenAPISchema, OpenAPISchemaReference } from '../../types/openapi.js';
|
|
3
|
+
/**
|
|
4
|
+
* 生成器配置
|
|
5
|
+
*/
|
|
6
|
+
export interface GeneratorConfig {
|
|
7
|
+
/** Apifox 配置 */
|
|
8
|
+
config: ApifoxConfig;
|
|
9
|
+
/** API 端点列表 */
|
|
10
|
+
endpoints: ApiEndpoint[];
|
|
11
|
+
/** OpenAPI Schema 定义 */
|
|
12
|
+
schemas?: Record<string, OpenAPISchema | OpenAPISchemaReference>;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* 生成器接口
|
|
16
|
+
*/
|
|
17
|
+
export interface IGenerator {
|
|
18
|
+
/**
|
|
19
|
+
* 生成代码
|
|
20
|
+
* @param config 生成器配置
|
|
21
|
+
*/
|
|
22
|
+
generate(config: GeneratorConfig): Promise<void>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=generator.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.interface.d.ts","sourceRoot":"","sources":["../../../../src/domain/interfaces/generator.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEpF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,gBAAgB;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,eAAe;IACf,SAAS,EAAE,WAAW,EAAE,CAAC;IACzB,wBAAwB;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,sBAAsB,CAAC,CAAC;CAClE;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.interface.js","sourceRoot":"","sources":["../../../../src/domain/interfaces/generator.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP 请求配置
|
|
3
|
+
*/
|
|
4
|
+
export interface HttpRequestConfig {
|
|
5
|
+
headers?: Record<string, string>;
|
|
6
|
+
timeout?: number;
|
|
7
|
+
validateStatus?: (status: number) => boolean;
|
|
8
|
+
[key: string]: unknown;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* HTTP 响应
|
|
12
|
+
*/
|
|
13
|
+
export interface HttpResponse<T = unknown> {
|
|
14
|
+
data: T;
|
|
15
|
+
status: number;
|
|
16
|
+
statusText: string;
|
|
17
|
+
headers: Record<string, string>;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* HTTP 客户端接口
|
|
21
|
+
*/
|
|
22
|
+
export interface IHttpClient {
|
|
23
|
+
/**
|
|
24
|
+
* 发送 GET 请求
|
|
25
|
+
* @param url 请求 URL
|
|
26
|
+
* @param config 请求配置
|
|
27
|
+
* @returns HTTP 响应
|
|
28
|
+
*/
|
|
29
|
+
get<T = unknown>(url: string, config?: HttpRequestConfig): Promise<HttpResponse<T>>;
|
|
30
|
+
/**
|
|
31
|
+
* 发送 POST 请求
|
|
32
|
+
* @param url 请求 URL
|
|
33
|
+
* @param data 请求体数据
|
|
34
|
+
* @param config 请求配置
|
|
35
|
+
* @returns HTTP 响应
|
|
36
|
+
*/
|
|
37
|
+
post<T = unknown>(url: string, data?: unknown, config?: HttpRequestConfig): Promise<HttpResponse<T>>;
|
|
38
|
+
/**
|
|
39
|
+
* 发送 PUT 请求
|
|
40
|
+
* @param url 请求 URL
|
|
41
|
+
* @param data 请求体数据
|
|
42
|
+
* @param config 请求配置
|
|
43
|
+
* @returns HTTP 响应
|
|
44
|
+
*/
|
|
45
|
+
put<T = unknown>(url: string, data?: unknown, config?: HttpRequestConfig): Promise<HttpResponse<T>>;
|
|
46
|
+
/**
|
|
47
|
+
* 发送 DELETE 请求
|
|
48
|
+
* @param url 请求 URL
|
|
49
|
+
* @param config 请求配置
|
|
50
|
+
* @returns HTTP 响应
|
|
51
|
+
*/
|
|
52
|
+
delete<T = unknown>(url: string, config?: HttpRequestConfig): Promise<HttpResponse<T>>;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=http-client.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.interface.d.ts","sourceRoot":"","sources":["../../../../src/domain/interfaces/http-client.interface.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7C,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,IAAI,EAAE,CAAC,CAAC;IACR,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpF;;;;;;OAMG;IACH,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAErG;;;;;;OAMG;IACH,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpG;;;;;OAKG;IACH,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;CACxF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.interface.js","sourceRoot":"","sources":["../../../../src/domain/interfaces/http-client.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 领域接口统一导出
|
|
3
|
+
*/
|
|
4
|
+
export * from './apifox-client.interface.js';
|
|
5
|
+
export * from './route-manager.interface.js';
|
|
6
|
+
export * from './file-system.interface.js';
|
|
7
|
+
export * from './logger.interface.js';
|
|
8
|
+
export * from './generator.interface.js';
|
|
9
|
+
export * from './http-client.interface.js';
|
|
10
|
+
export * from './remote-proxy.interface.js';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/domain/interfaces/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 领域接口统一导出
|
|
3
|
+
*/
|
|
4
|
+
export * from './apifox-client.interface.js';
|
|
5
|
+
export * from './route-manager.interface.js';
|
|
6
|
+
export * from './file-system.interface.js';
|
|
7
|
+
export * from './logger.interface.js';
|
|
8
|
+
export * from './generator.interface.js';
|
|
9
|
+
export * from './http-client.interface.js';
|
|
10
|
+
export * from './remote-proxy.interface.js';
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/domain/interfaces/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 日志接口
|
|
3
|
+
*/
|
|
4
|
+
export interface ILogger {
|
|
5
|
+
/**
|
|
6
|
+
* 输出信息日志
|
|
7
|
+
* @param message 日志消息
|
|
8
|
+
*/
|
|
9
|
+
info(message: string): void;
|
|
10
|
+
/**
|
|
11
|
+
* 输出成功日志
|
|
12
|
+
* @param message 日志消息
|
|
13
|
+
*/
|
|
14
|
+
success(message: string): void;
|
|
15
|
+
/**
|
|
16
|
+
* 输出警告日志
|
|
17
|
+
* @param message 日志消息
|
|
18
|
+
*/
|
|
19
|
+
warn(message: string): void;
|
|
20
|
+
/**
|
|
21
|
+
* 输出错误日志
|
|
22
|
+
* @param message 日志消息
|
|
23
|
+
*/
|
|
24
|
+
error(message: string): void;
|
|
25
|
+
/**
|
|
26
|
+
* 输出调试日志
|
|
27
|
+
* @param message 日志消息
|
|
28
|
+
*/
|
|
29
|
+
debug(message: string): void;
|
|
30
|
+
/**
|
|
31
|
+
* 输出标题日志
|
|
32
|
+
* @param message 日志消息
|
|
33
|
+
*/
|
|
34
|
+
title(message: string): void;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=logger.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.interface.d.ts","sourceRoot":"","sources":["../../../../src/domain/interfaces/logger.interface.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB;;;OAGG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B;;;OAGG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B;;;OAGG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;;OAGG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;;OAGG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.interface.js","sourceRoot":"","sources":["../../../../src/domain/interfaces/logger.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type express from 'express';
|
|
2
|
+
/**
|
|
3
|
+
* 代理响应
|
|
4
|
+
*/
|
|
5
|
+
export interface ProxyResponse {
|
|
6
|
+
status: number;
|
|
7
|
+
headers: Record<string, string>;
|
|
8
|
+
data: unknown;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 远程代理接口
|
|
12
|
+
*/
|
|
13
|
+
export interface IRemoteProxy {
|
|
14
|
+
/**
|
|
15
|
+
* 代理请求到远程服务器
|
|
16
|
+
* @param req Express 请求对象
|
|
17
|
+
* @returns 代理响应
|
|
18
|
+
*/
|
|
19
|
+
proxyRequest(req: express.Request): Promise<ProxyResponse>;
|
|
20
|
+
/**
|
|
21
|
+
* 检查远程服务器是否已配置
|
|
22
|
+
* @returns 是否已配置
|
|
23
|
+
*/
|
|
24
|
+
isRemoteServerConfigured(): boolean;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=remote-proxy.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-proxy.interface.d.ts","sourceRoot":"","sources":["../../../../src/domain/interfaces/remote-proxy.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAE3D;;;OAGG;IACH,wBAAwB,IAAI,OAAO,CAAC;CACrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-proxy.interface.js","sourceRoot":"","sources":["../../../../src/domain/interfaces/remote-proxy.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { MockRoute } from '../../types/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* 路由管理器接口
|
|
4
|
+
*/
|
|
5
|
+
export interface IRouteManager {
|
|
6
|
+
/**
|
|
7
|
+
* 设置路由
|
|
8
|
+
* @param key 路由键(格式:METHOD path)
|
|
9
|
+
* @param route Mock 路由
|
|
10
|
+
*/
|
|
11
|
+
setRoute(key: string, route: MockRoute): void;
|
|
12
|
+
/**
|
|
13
|
+
* 获取路由
|
|
14
|
+
* @param method HTTP 方法
|
|
15
|
+
* @param path 路径
|
|
16
|
+
* @returns Mock 路由,如果不存在则返回 undefined
|
|
17
|
+
*/
|
|
18
|
+
getRoute(method: string, path: string): MockRoute | undefined;
|
|
19
|
+
/**
|
|
20
|
+
* 获取所有路由
|
|
21
|
+
* @returns 所有 Mock 路由数组
|
|
22
|
+
*/
|
|
23
|
+
getAllRoutes(): MockRoute[];
|
|
24
|
+
/**
|
|
25
|
+
* 移除路由
|
|
26
|
+
* @param key 路由键
|
|
27
|
+
*/
|
|
28
|
+
removeRoute(key: string): void;
|
|
29
|
+
/**
|
|
30
|
+
* 清空所有路由
|
|
31
|
+
*/
|
|
32
|
+
clear(): void;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=route-manager.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-manager.interface.d.ts","sourceRoot":"","sources":["../../../../src/domain/interfaces/route-manager.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IAE9C;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;IAE9D;;;OAGG;IACH,YAAY,IAAI,SAAS,EAAE,CAAC;IAE5B;;;OAGG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;CACf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-manager.interface.js","sourceRoot":"","sources":["../../../../src/domain/interfaces/route-manager.interface.ts"],"names":[],"mappings":""}
|