@zyno-io/dk-server-foundation 26.216.430
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/LICENSE +21 -0
- package/README.md +458 -0
- package/dist/devconsole/assets/index-CKF3C3kv.css +1 -0
- package/dist/devconsole/assets/index-CsHdomhM.js +27 -0
- package/dist/devconsole/index.html +13 -0
- package/dist/resources/proto/generated/devconsole/devconsole.d.ts +320 -0
- package/dist/resources/proto/generated/devconsole/devconsole.d.ts.map +1 -0
- package/dist/resources/proto/generated/devconsole/devconsole.js +3751 -0
- package/dist/resources/proto/generated/devconsole/devconsole.js.map +1 -0
- package/dist/src/app/base.d.ts +36 -0
- package/dist/src/app/base.d.ts.map +1 -0
- package/dist/src/app/base.js +240 -0
- package/dist/src/app/base.js.map +1 -0
- package/dist/src/app/config.d.ts +90 -0
- package/dist/src/app/config.d.ts.map +1 -0
- package/dist/src/app/config.js +33 -0
- package/dist/src/app/config.js.map +1 -0
- package/dist/src/app/config.loader.d.ts +14 -0
- package/dist/src/app/config.loader.d.ts.map +1 -0
- package/dist/src/app/config.loader.js +67 -0
- package/dist/src/app/config.loader.js.map +1 -0
- package/dist/src/app/const.d.ts +3 -0
- package/dist/src/app/const.d.ts.map +1 -0
- package/dist/src/app/const.js +6 -0
- package/dist/src/app/const.js.map +1 -0
- package/dist/src/app/dev.d.ts +7 -0
- package/dist/src/app/dev.d.ts.map +1 -0
- package/dist/src/app/dev.js +105 -0
- package/dist/src/app/dev.js.map +1 -0
- package/dist/src/app/index.d.ts +7 -0
- package/dist/src/app/index.d.ts.map +1 -0
- package/dist/src/app/index.js +12 -0
- package/dist/src/app/index.js.map +1 -0
- package/dist/src/app/openapi.d.ts +4 -0
- package/dist/src/app/openapi.d.ts.map +1 -0
- package/dist/src/app/openapi.js +6 -0
- package/dist/src/app/openapi.js.map +1 -0
- package/dist/src/app/resolver.d.ts +11 -0
- package/dist/src/app/resolver.d.ts.map +1 -0
- package/dist/src/app/resolver.js +60 -0
- package/dist/src/app/resolver.js.map +1 -0
- package/dist/src/app/shutdown.d.ts +12 -0
- package/dist/src/app/shutdown.d.ts.map +1 -0
- package/dist/src/app/shutdown.js +63 -0
- package/dist/src/app/shutdown.js.map +1 -0
- package/dist/src/app/state.d.ts +16 -0
- package/dist/src/app/state.d.ts.map +1 -0
- package/dist/src/app/state.js +12 -0
- package/dist/src/app/state.js.map +1 -0
- package/dist/src/auth/index.d.ts +3 -0
- package/dist/src/auth/index.d.ts.map +1 -0
- package/dist/src/auth/index.js +6 -0
- package/dist/src/auth/index.js.map +1 -0
- package/dist/src/auth/jwt.d.ts +76 -0
- package/dist/src/auth/jwt.d.ts.map +1 -0
- package/dist/src/auth/jwt.js +218 -0
- package/dist/src/auth/jwt.js.map +1 -0
- package/dist/src/auth/provider.d.ts +15 -0
- package/dist/src/auth/provider.d.ts.map +1 -0
- package/dist/src/auth/provider.js +50 -0
- package/dist/src/auth/provider.js.map +1 -0
- package/dist/src/cli/dksf-dev.d.ts +3 -0
- package/dist/src/cli/dksf-dev.d.ts.map +1 -0
- package/dist/src/cli/dksf-dev.js +408 -0
- package/dist/src/cli/dksf-dev.js.map +1 -0
- package/dist/src/cli/dksf-gen-proto.d.ts +3 -0
- package/dist/src/cli/dksf-gen-proto.d.ts.map +1 -0
- package/dist/src/cli/dksf-gen-proto.js +164 -0
- package/dist/src/cli/dksf-gen-proto.js.map +1 -0
- package/dist/src/cli/dksf-install.d.ts +3 -0
- package/dist/src/cli/dksf-install.d.ts.map +1 -0
- package/dist/src/cli/dksf-install.js +10 -0
- package/dist/src/cli/dksf-install.js.map +1 -0
- package/dist/src/cli/dksf-test.d.ts +3 -0
- package/dist/src/cli/dksf-test.d.ts.map +1 -0
- package/dist/src/cli/dksf-test.js +78 -0
- package/dist/src/cli/dksf-test.js.map +1 -0
- package/dist/src/cli/dksf-update.d.ts +3 -0
- package/dist/src/cli/dksf-update.d.ts.map +1 -0
- package/dist/src/cli/dksf-update.js +86 -0
- package/dist/src/cli/dksf-update.js.map +1 -0
- package/dist/src/database/common.d.ts +84 -0
- package/dist/src/database/common.d.ts.map +1 -0
- package/dist/src/database/common.js +380 -0
- package/dist/src/database/common.js.map +1 -0
- package/dist/src/database/dialect.d.ts +10 -0
- package/dist/src/database/dialect.d.ts.map +1 -0
- package/dist/src/database/dialect.js +56 -0
- package/dist/src/database/dialect.js.map +1 -0
- package/dist/src/database/entity.d.ts +62 -0
- package/dist/src/database/entity.d.ts.map +1 -0
- package/dist/src/database/entity.js +198 -0
- package/dist/src/database/entity.js.map +1 -0
- package/dist/src/database/index.d.ts +8 -0
- package/dist/src/database/index.d.ts.map +1 -0
- package/dist/src/database/index.js +15 -0
- package/dist/src/database/index.js.map +1 -0
- package/dist/src/database/migration/MigrationResetCommand.d.ts +9 -0
- package/dist/src/database/migration/MigrationResetCommand.d.ts.map +1 -0
- package/dist/src/database/migration/MigrationResetCommand.js +75 -0
- package/dist/src/database/migration/MigrationResetCommand.js.map +1 -0
- package/dist/src/database/migration/MigrationRunCommand.d.ts +11 -0
- package/dist/src/database/migration/MigrationRunCommand.d.ts.map +1 -0
- package/dist/src/database/migration/MigrationRunCommand.js +118 -0
- package/dist/src/database/migration/MigrationRunCommand.js.map +1 -0
- package/dist/src/database/migration/characters.d.ts +14 -0
- package/dist/src/database/migration/characters.d.ts.map +1 -0
- package/dist/src/database/migration/characters.js +56 -0
- package/dist/src/database/migration/characters.js.map +1 -0
- package/dist/src/database/migration/create/MigrationCreateCommand.d.ts +11 -0
- package/dist/src/database/migration/create/MigrationCreateCommand.d.ts.map +1 -0
- package/dist/src/database/migration/create/MigrationCreateCommand.js +106 -0
- package/dist/src/database/migration/create/MigrationCreateCommand.js.map +1 -0
- package/dist/src/database/migration/create/comparator.d.ts +3 -0
- package/dist/src/database/migration/create/comparator.d.ts.map +1 -0
- package/dist/src/database/migration/create/comparator.js +408 -0
- package/dist/src/database/migration/create/comparator.js.map +1 -0
- package/dist/src/database/migration/create/db-reader.d.ts +5 -0
- package/dist/src/database/migration/create/db-reader.d.ts.map +1 -0
- package/dist/src/database/migration/create/db-reader.js +473 -0
- package/dist/src/database/migration/create/db-reader.js.map +1 -0
- package/dist/src/database/migration/create/ddl-generator.d.ts +3 -0
- package/dist/src/database/migration/create/ddl-generator.d.ts.map +1 -0
- package/dist/src/database/migration/create/ddl-generator.js +725 -0
- package/dist/src/database/migration/create/ddl-generator.js.map +1 -0
- package/dist/src/database/migration/create/entity-reader.d.ts +4 -0
- package/dist/src/database/migration/create/entity-reader.d.ts.map +1 -0
- package/dist/src/database/migration/create/entity-reader.js +417 -0
- package/dist/src/database/migration/create/entity-reader.js.map +1 -0
- package/dist/src/database/migration/create/file-generator.d.ts +3 -0
- package/dist/src/database/migration/create/file-generator.d.ts.map +1 -0
- package/dist/src/database/migration/create/file-generator.js +62 -0
- package/dist/src/database/migration/create/file-generator.js.map +1 -0
- package/dist/src/database/migration/create/prompt.d.ts +4 -0
- package/dist/src/database/migration/create/prompt.d.ts.map +1 -0
- package/dist/src/database/migration/create/prompt.js +55 -0
- package/dist/src/database/migration/create/prompt.js.map +1 -0
- package/dist/src/database/migration/create/schema-model.d.ts +109 -0
- package/dist/src/database/migration/create/schema-model.d.ts.map +1 -0
- package/dist/src/database/migration/create/schema-model.js +24 -0
- package/dist/src/database/migration/create/schema-model.js.map +1 -0
- package/dist/src/database/migration/helpers.d.ts +3 -0
- package/dist/src/database/migration/helpers.d.ts.map +1 -0
- package/dist/src/database/migration/helpers.js +13 -0
- package/dist/src/database/migration/helpers.js.map +1 -0
- package/dist/src/database/migration/index.d.ts +9 -0
- package/dist/src/database/migration/index.d.ts.map +1 -0
- package/dist/src/database/migration/index.js +43 -0
- package/dist/src/database/migration/index.js.map +1 -0
- package/dist/src/database/migration/migration.entity.d.ts +8 -0
- package/dist/src/database/migration/migration.entity.d.ts.map +1 -0
- package/dist/src/database/migration/migration.entity.js +16 -0
- package/dist/src/database/migration/migration.entity.js.map +1 -0
- package/dist/src/database/mysql.d.ts +16 -0
- package/dist/src/database/mysql.d.ts.map +1 -0
- package/dist/src/database/mysql.js +140 -0
- package/dist/src/database/mysql.js.map +1 -0
- package/dist/src/database/postgres.d.ts +16 -0
- package/dist/src/database/postgres.d.ts.map +1 -0
- package/dist/src/database/postgres.js +91 -0
- package/dist/src/database/postgres.js.map +1 -0
- package/dist/src/database/types.d.ts +21 -0
- package/dist/src/database/types.d.ts.map +1 -0
- package/dist/src/database/types.js +27 -0
- package/dist/src/database/types.js.map +1 -0
- package/dist/src/devconsole/devconsole.controller.d.ts +7 -0
- package/dist/src/devconsole/devconsole.controller.d.ts.map +1 -0
- package/dist/src/devconsole/devconsole.controller.js +82 -0
- package/dist/src/devconsole/devconsole.controller.js.map +1 -0
- package/dist/src/devconsole/devconsole.middleware.d.ts +12 -0
- package/dist/src/devconsole/devconsole.middleware.d.ts.map +1 -0
- package/dist/src/devconsole/devconsole.middleware.js +28 -0
- package/dist/src/devconsole/devconsole.middleware.js.map +1 -0
- package/dist/src/devconsole/devconsole.srpc.d.ts +14 -0
- package/dist/src/devconsole/devconsole.srpc.d.ts.map +1 -0
- package/dist/src/devconsole/devconsole.srpc.js +94 -0
- package/dist/src/devconsole/devconsole.srpc.js.map +1 -0
- package/dist/src/devconsole/devconsole.store.d.ts +101 -0
- package/dist/src/devconsole/devconsole.store.d.ts.map +1 -0
- package/dist/src/devconsole/devconsole.store.js +125 -0
- package/dist/src/devconsole/devconsole.store.js.map +1 -0
- package/dist/src/devconsole/devconsole.ws.d.ts +18 -0
- package/dist/src/devconsole/devconsole.ws.d.ts.map +1 -0
- package/dist/src/devconsole/devconsole.ws.js +470 -0
- package/dist/src/devconsole/devconsole.ws.js.map +1 -0
- package/dist/src/devconsole/index.d.ts +2 -0
- package/dist/src/devconsole/index.d.ts.map +1 -0
- package/dist/src/devconsole/index.js +6 -0
- package/dist/src/devconsole/index.js.map +1 -0
- package/dist/src/devconsole/patches.d.ts +6 -0
- package/dist/src/devconsole/patches.d.ts.map +1 -0
- package/dist/src/devconsole/patches.js +397 -0
- package/dist/src/devconsole/patches.js.map +1 -0
- package/dist/src/health/health.module.d.ts +6 -0
- package/dist/src/health/health.module.d.ts.map +1 -0
- package/dist/src/health/health.module.js +32 -0
- package/dist/src/health/health.module.js.map +1 -0
- package/dist/src/health/healthcheck.controller.d.ts +10 -0
- package/dist/src/health/healthcheck.controller.d.ts.map +1 -0
- package/dist/src/health/healthcheck.controller.js +30 -0
- package/dist/src/health/healthcheck.controller.js.map +1 -0
- package/dist/src/health/healthcheck.service.d.ts +13 -0
- package/dist/src/health/healthcheck.service.d.ts.map +1 -0
- package/dist/src/health/healthcheck.service.js +33 -0
- package/dist/src/health/healthcheck.service.js.map +1 -0
- package/dist/src/health/index.d.ts +3 -0
- package/dist/src/health/index.d.ts.map +1 -0
- package/dist/src/health/index.js +6 -0
- package/dist/src/health/index.js.map +1 -0
- package/dist/src/helpers/async/context.d.ts +11 -0
- package/dist/src/helpers/async/context.d.ts.map +1 -0
- package/dist/src/helpers/async/context.js +75 -0
- package/dist/src/helpers/async/context.js.map +1 -0
- package/dist/src/helpers/async/process.d.ts +16 -0
- package/dist/src/helpers/async/process.d.ts.map +1 -0
- package/dist/src/helpers/async/process.js +44 -0
- package/dist/src/helpers/async/process.js.map +1 -0
- package/dist/src/helpers/async/promise.d.ts +5 -0
- package/dist/src/helpers/async/promise.d.ts.map +1 -0
- package/dist/src/helpers/async/promise.js +27 -0
- package/dist/src/helpers/async/promise.js.map +1 -0
- package/dist/src/helpers/data/array.d.ts +3 -0
- package/dist/src/helpers/data/array.d.ts.map +1 -0
- package/dist/src/helpers/data/array.js +17 -0
- package/dist/src/helpers/data/array.js.map +1 -0
- package/dist/src/helpers/data/objects.d.ts +12 -0
- package/dist/src/helpers/data/objects.d.ts.map +1 -0
- package/dist/src/helpers/data/objects.js +75 -0
- package/dist/src/helpers/data/objects.js.map +1 -0
- package/dist/src/helpers/data/serialization.d.ts +4 -0
- package/dist/src/helpers/data/serialization.d.ts.map +1 -0
- package/dist/src/helpers/data/serialization.js +15 -0
- package/dist/src/helpers/data/serialization.js.map +1 -0
- package/dist/src/helpers/data/transformer.d.ts +13 -0
- package/dist/src/helpers/data/transformer.d.ts.map +1 -0
- package/dist/src/helpers/data/transformer.js +55 -0
- package/dist/src/helpers/data/transformer.js.map +1 -0
- package/dist/src/helpers/framework/decorators.d.ts +5 -0
- package/dist/src/helpers/framework/decorators.d.ts.map +1 -0
- package/dist/src/helpers/framework/decorators.js +39 -0
- package/dist/src/helpers/framework/decorators.js.map +1 -0
- package/dist/src/helpers/framework/event.d.ts +3 -0
- package/dist/src/helpers/framework/event.d.ts.map +1 -0
- package/dist/src/helpers/framework/event.js +20 -0
- package/dist/src/helpers/framework/event.js.map +1 -0
- package/dist/src/helpers/framework/injection.d.ts +7 -0
- package/dist/src/helpers/framework/injection.d.ts.map +1 -0
- package/dist/src/helpers/framework/injection.js +52 -0
- package/dist/src/helpers/framework/injection.js.map +1 -0
- package/dist/src/helpers/index.d.ts +22 -0
- package/dist/src/helpers/index.d.ts.map +1 -0
- package/dist/src/helpers/index.js +32 -0
- package/dist/src/helpers/index.js.map +1 -0
- package/dist/src/helpers/io/package.d.ts +5 -0
- package/dist/src/helpers/io/package.d.ts.map +1 -0
- package/dist/src/helpers/io/package.js +31 -0
- package/dist/src/helpers/io/package.js.map +1 -0
- package/dist/src/helpers/io/stream.d.ts +18 -0
- package/dist/src/helpers/io/stream.d.ts.map +1 -0
- package/dist/src/helpers/io/stream.js +91 -0
- package/dist/src/helpers/io/stream.js.map +1 -0
- package/dist/src/helpers/redis/broadcast.d.ts +13 -0
- package/dist/src/helpers/redis/broadcast.d.ts.map +1 -0
- package/dist/src/helpers/redis/broadcast.js +100 -0
- package/dist/src/helpers/redis/broadcast.js.map +1 -0
- package/dist/src/helpers/redis/cache.d.ts +7 -0
- package/dist/src/helpers/redis/cache.d.ts.map +1 -0
- package/dist/src/helpers/redis/cache.js +28 -0
- package/dist/src/helpers/redis/cache.js.map +1 -0
- package/dist/src/helpers/redis/mutex.d.ts +24 -0
- package/dist/src/helpers/redis/mutex.d.ts.map +1 -0
- package/dist/src/helpers/redis/mutex.js +240 -0
- package/dist/src/helpers/redis/mutex.js.map +1 -0
- package/dist/src/helpers/redis/redis.d.ts +11 -0
- package/dist/src/helpers/redis/redis.d.ts.map +1 -0
- package/dist/src/helpers/redis/redis.js +59 -0
- package/dist/src/helpers/redis/redis.js.map +1 -0
- package/dist/src/helpers/security/crypto.d.ts +26 -0
- package/dist/src/helpers/security/crypto.d.ts.map +1 -0
- package/dist/src/helpers/security/crypto.js +121 -0
- package/dist/src/helpers/security/crypto.js.map +1 -0
- package/dist/src/helpers/security/validation.d.ts +4 -0
- package/dist/src/helpers/security/validation.d.ts.map +1 -0
- package/dist/src/helpers/security/validation.js +25 -0
- package/dist/src/helpers/security/validation.js.map +1 -0
- package/dist/src/helpers/utils/date.d.ts +4 -0
- package/dist/src/helpers/utils/date.d.ts.map +1 -0
- package/dist/src/helpers/utils/date.js +23 -0
- package/dist/src/helpers/utils/date.js.map +1 -0
- package/dist/src/helpers/utils/error.d.ts +24 -0
- package/dist/src/helpers/utils/error.d.ts.map +1 -0
- package/dist/src/helpers/utils/error.js +168 -0
- package/dist/src/helpers/utils/error.js.map +1 -0
- package/dist/src/helpers/utils/jsx.d.ts +3 -0
- package/dist/src/helpers/utils/jsx.d.ts.map +1 -0
- package/dist/src/helpers/utils/jsx.js +13 -0
- package/dist/src/helpers/utils/jsx.js.map +1 -0
- package/dist/src/helpers/utils/uuid.d.ts +3 -0
- package/dist/src/helpers/utils/uuid.d.ts.map +1 -0
- package/dist/src/helpers/utils/uuid.js +14 -0
- package/dist/src/helpers/utils/uuid.js.map +1 -0
- package/dist/src/http/auth.d.ts +46 -0
- package/dist/src/http/auth.d.ts.map +1 -0
- package/dist/src/http/auth.js +162 -0
- package/dist/src/http/auth.js.map +1 -0
- package/dist/src/http/context.d.ts +5 -0
- package/dist/src/http/context.d.ts.map +1 -0
- package/dist/src/http/context.js +22 -0
- package/dist/src/http/context.js.map +1 -0
- package/dist/src/http/cors.d.ts +36 -0
- package/dist/src/http/cors.d.ts.map +1 -0
- package/dist/src/http/cors.js +171 -0
- package/dist/src/http/cors.js.map +1 -0
- package/dist/src/http/errors.d.ts +3 -0
- package/dist/src/http/errors.d.ts.map +1 -0
- package/dist/src/http/errors.js +10 -0
- package/dist/src/http/errors.js.map +1 -0
- package/dist/src/http/index.d.ts +24 -0
- package/dist/src/http/index.d.ts.map +1 -0
- package/dist/src/http/index.js +25 -0
- package/dist/src/http/index.js.map +1 -0
- package/dist/src/http/kernel.d.ts +17 -0
- package/dist/src/http/kernel.d.ts.map +1 -0
- package/dist/src/http/kernel.js +133 -0
- package/dist/src/http/kernel.js.map +1 -0
- package/dist/src/http/middleware.d.ts +12 -0
- package/dist/src/http/middleware.d.ts.map +1 -0
- package/dist/src/http/middleware.js +61 -0
- package/dist/src/http/middleware.js.map +1 -0
- package/dist/src/http/overrides.d.ts +2 -0
- package/dist/src/http/overrides.d.ts.map +1 -0
- package/dist/src/http/overrides.js +19 -0
- package/dist/src/http/overrides.js.map +1 -0
- package/dist/src/http/store.d.ts +33 -0
- package/dist/src/http/store.d.ts.map +1 -0
- package/dist/src/http/store.js +102 -0
- package/dist/src/http/store.js.map +1 -0
- package/dist/src/http/uploads.d.ts +7 -0
- package/dist/src/http/uploads.d.ts.map +1 -0
- package/dist/src/http/uploads.js +8 -0
- package/dist/src/http/uploads.js.map +1 -0
- package/dist/src/http/workflow.d.ts +18 -0
- package/dist/src/http/workflow.d.ts.map +1 -0
- package/dist/src/http/workflow.js +181 -0
- package/dist/src/http/workflow.js.map +1 -0
- package/dist/src/index.d.ts +13 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +25 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/services/cli/invoke.d.ts +5 -0
- package/dist/src/services/cli/invoke.d.ts.map +1 -0
- package/dist/src/services/cli/invoke.js +45 -0
- package/dist/src/services/cli/invoke.js.map +1 -0
- package/dist/src/services/cli/repl-context.d.ts +13 -0
- package/dist/src/services/cli/repl-context.d.ts.map +1 -0
- package/dist/src/services/cli/repl-context.js +60 -0
- package/dist/src/services/cli/repl-context.js.map +1 -0
- package/dist/src/services/cli/repl.d.ts +5 -0
- package/dist/src/services/cli/repl.d.ts.map +1 -0
- package/dist/src/services/cli/repl.js +32 -0
- package/dist/src/services/cli/repl.js.map +1 -0
- package/dist/src/services/cli.d.ts +12 -0
- package/dist/src/services/cli.d.ts.map +1 -0
- package/dist/src/services/cli.js +76 -0
- package/dist/src/services/cli.js.map +1 -0
- package/dist/src/services/index.d.ts +7 -0
- package/dist/src/services/index.d.ts.map +1 -0
- package/dist/src/services/index.js +10 -0
- package/dist/src/services/index.js.map +1 -0
- package/dist/src/services/leader.d.ts +32 -0
- package/dist/src/services/leader.d.ts.map +1 -0
- package/dist/src/services/leader.js +174 -0
- package/dist/src/services/leader.js.map +1 -0
- package/dist/src/services/logger.d.ts +35 -0
- package/dist/src/services/logger.d.ts.map +1 -0
- package/dist/src/services/logger.js +245 -0
- package/dist/src/services/logger.js.map +1 -0
- package/dist/src/services/mail/index.d.ts +61 -0
- package/dist/src/services/mail/index.d.ts.map +1 -0
- package/dist/src/services/mail/index.js +90 -0
- package/dist/src/services/mail/index.js.map +1 -0
- package/dist/src/services/mail/postmark.d.ts +11 -0
- package/dist/src/services/mail/postmark.d.ts.map +1 -0
- package/dist/src/services/mail/postmark.js +42 -0
- package/dist/src/services/mail/postmark.js.map +1 -0
- package/dist/src/services/mail/smtp.d.ts +11 -0
- package/dist/src/services/mail/smtp.d.ts.map +1 -0
- package/dist/src/services/mail/smtp.js +61 -0
- package/dist/src/services/mail/smtp.js.map +1 -0
- package/dist/src/services/mesh.d.ts +65 -0
- package/dist/src/services/mesh.d.ts.map +1 -0
- package/dist/src/services/mesh.js +422 -0
- package/dist/src/services/mesh.js.map +1 -0
- package/dist/src/services/worker/bootstrap.d.ts +3 -0
- package/dist/src/services/worker/bootstrap.d.ts.map +1 -0
- package/dist/src/services/worker/bootstrap.js +64 -0
- package/dist/src/services/worker/bootstrap.js.map +1 -0
- package/dist/src/services/worker/cli.d.ts +11 -0
- package/dist/src/services/worker/cli.d.ts.map +1 -0
- package/dist/src/services/worker/cli.js +43 -0
- package/dist/src/services/worker/cli.js.map +1 -0
- package/dist/src/services/worker/entity.d.ts +18 -0
- package/dist/src/services/worker/entity.d.ts.map +1 -0
- package/dist/src/services/worker/entity.js +16 -0
- package/dist/src/services/worker/entity.js.map +1 -0
- package/dist/src/services/worker/index.d.ts +9 -0
- package/dist/src/services/worker/index.d.ts.map +1 -0
- package/dist/src/services/worker/index.js +40 -0
- package/dist/src/services/worker/index.js.map +1 -0
- package/dist/src/services/worker/queue.d.ts +8 -0
- package/dist/src/services/worker/queue.d.ts.map +1 -0
- package/dist/src/services/worker/queue.js +32 -0
- package/dist/src/services/worker/queue.js.map +1 -0
- package/dist/src/services/worker/recorder.d.ts +16 -0
- package/dist/src/services/worker/recorder.d.ts.map +1 -0
- package/dist/src/services/worker/recorder.js +168 -0
- package/dist/src/services/worker/recorder.js.map +1 -0
- package/dist/src/services/worker/runner.d.ts +21 -0
- package/dist/src/services/worker/runner.d.ts.map +1 -0
- package/dist/src/services/worker/runner.js +156 -0
- package/dist/src/services/worker/runner.js.map +1 -0
- package/dist/src/services/worker/types.d.ts +26 -0
- package/dist/src/services/worker/types.d.ts.map +1 -0
- package/dist/src/services/worker/types.js +29 -0
- package/dist/src/services/worker/types.js.map +1 -0
- package/dist/src/srpc/SrpcByteStream.d.ts +67 -0
- package/dist/src/srpc/SrpcByteStream.d.ts.map +1 -0
- package/dist/src/srpc/SrpcByteStream.js +319 -0
- package/dist/src/srpc/SrpcByteStream.js.map +1 -0
- package/dist/src/srpc/SrpcClient.d.ts +75 -0
- package/dist/src/srpc/SrpcClient.d.ts.map +1 -0
- package/dist/src/srpc/SrpcClient.js +445 -0
- package/dist/src/srpc/SrpcClient.js.map +1 -0
- package/dist/src/srpc/SrpcServer.d.ts +80 -0
- package/dist/src/srpc/SrpcServer.d.ts.map +1 -0
- package/dist/src/srpc/SrpcServer.js +561 -0
- package/dist/src/srpc/SrpcServer.js.map +1 -0
- package/dist/src/srpc/index.d.ts +7 -0
- package/dist/src/srpc/index.d.ts.map +1 -0
- package/dist/src/srpc/index.js +12 -0
- package/dist/src/srpc/index.js.map +1 -0
- package/dist/src/srpc/types.d.ts +131 -0
- package/dist/src/srpc/types.d.ts.map +1 -0
- package/dist/src/srpc/types.js +65 -0
- package/dist/src/srpc/types.js.map +1 -0
- package/dist/src/telemetry/index.d.ts +2 -0
- package/dist/src/telemetry/index.d.ts.map +1 -0
- package/dist/src/telemetry/index.js +5 -0
- package/dist/src/telemetry/index.js.map +1 -0
- package/dist/src/telemetry/otel/MariaDBInstrumentation.d.ts +22 -0
- package/dist/src/telemetry/otel/MariaDBInstrumentation.d.ts.map +1 -0
- package/dist/src/telemetry/otel/MariaDBInstrumentation.js +248 -0
- package/dist/src/telemetry/otel/MariaDBInstrumentation.js.map +1 -0
- package/dist/src/telemetry/otel/helpers.d.ts +27 -0
- package/dist/src/telemetry/otel/helpers.d.ts.map +1 -0
- package/dist/src/telemetry/otel/helpers.js +126 -0
- package/dist/src/telemetry/otel/helpers.js.map +1 -0
- package/dist/src/telemetry/otel/index.d.ts +14 -0
- package/dist/src/telemetry/otel/index.d.ts.map +1 -0
- package/dist/src/telemetry/otel/index.js +132 -0
- package/dist/src/telemetry/otel/index.js.map +1 -0
- package/dist/src/telemetry/otel/metrics.controller.d.ts +6 -0
- package/dist/src/telemetry/otel/metrics.controller.d.ts.map +1 -0
- package/dist/src/telemetry/otel/metrics.controller.js +63 -0
- package/dist/src/telemetry/otel/metrics.controller.js.map +1 -0
- package/dist/src/telemetry/sentry.d.ts +9 -0
- package/dist/src/telemetry/sentry.d.ts.map +1 -0
- package/dist/src/telemetry/sentry.js +62 -0
- package/dist/src/telemetry/sentry.js.map +1 -0
- package/dist/src/testing/expect.d.ts +25 -0
- package/dist/src/testing/expect.d.ts.map +1 -0
- package/dist/src/testing/expect.js +151 -0
- package/dist/src/testing/expect.js.map +1 -0
- package/dist/src/testing/fixtures.d.ts +19 -0
- package/dist/src/testing/fixtures.d.ts.map +1 -0
- package/dist/src/testing/fixtures.js +69 -0
- package/dist/src/testing/fixtures.js.map +1 -0
- package/dist/src/testing/index.d.ts +260 -0
- package/dist/src/testing/index.d.ts.map +1 -0
- package/dist/src/testing/index.js +345 -0
- package/dist/src/testing/index.js.map +1 -0
- package/dist/src/testing/requests.d.ts +10 -0
- package/dist/src/testing/requests.d.ts.map +1 -0
- package/dist/src/testing/requests.js +56 -0
- package/dist/src/testing/requests.js.map +1 -0
- package/dist/src/testing/sql.d.ts +11 -0
- package/dist/src/testing/sql.d.ts.map +1 -0
- package/dist/src/testing/sql.js +55 -0
- package/dist/src/testing/sql.js.map +1 -0
- package/dist/src/types/index.d.ts +57 -0
- package/dist/src/types/index.d.ts.map +1 -0
- package/dist/src/types/index.js +73 -0
- package/dist/src/types/index.js.map +1 -0
- package/dist/src/types/phone.d.ts +11 -0
- package/dist/src/types/phone.d.ts.map +1 -0
- package/dist/src/types/phone.js +73 -0
- package/dist/src/types/phone.js.map +1 -0
- package/docs/.vitepress/config.mts +79 -0
- package/docs/.yarnrc.yml +1 -0
- package/docs/content/CONTRIBUTING.md +140 -0
- package/docs/content/README-DEV.md +142 -0
- package/docs/content/README.md +39 -0
- package/docs/content/authentication.md +215 -0
- package/docs/content/cli.md +335 -0
- package/docs/content/configuration.md +175 -0
- package/docs/content/database.md +422 -0
- package/docs/content/devconsole.md +123 -0
- package/docs/content/getting-started.md +154 -0
- package/docs/content/guides/test-migration-guide.md +351 -0
- package/docs/content/health.md +54 -0
- package/docs/content/helpers.md +322 -0
- package/docs/content/http.md +253 -0
- package/docs/content/index.md +147 -0
- package/docs/content/leader-service.md +98 -0
- package/docs/content/logging.md +150 -0
- package/docs/content/mail.md +161 -0
- package/docs/content/mesh-service.md +204 -0
- package/docs/content/public/images/devconsole/01-dashboard.png +0 -0
- package/docs/content/public/images/devconsole/02-routes.png +0 -0
- package/docs/content/public/images/devconsole/03-openapi.png +0 -0
- package/docs/content/public/images/devconsole/04-requests.png +0 -0
- package/docs/content/public/images/devconsole/05-srpc.png +0 -0
- package/docs/content/public/images/devconsole/06-database.png +0 -0
- package/docs/content/public/images/devconsole/07-health.png +0 -0
- package/docs/content/public/images/devconsole/08-mutex.png +0 -0
- package/docs/content/public/images/devconsole/09-repl.png +0 -0
- package/docs/content/public/images/devconsole/10-workers.png +0 -0
- package/docs/content/redis.md +168 -0
- package/docs/content/srpc.md +261 -0
- package/docs/content/telemetry.md +166 -0
- package/docs/content/testing.md +222 -0
- package/docs/content/types.md +215 -0
- package/docs/content/worker.md +177 -0
- package/docs/package.json +16 -0
- package/docs/scripts/README-SCREENSHOTS.md +145 -0
- package/docs/scripts/capture-devconsole-screenshots.js +184 -0
- package/docs/yarn.lock +2408 -0
- package/package.json +144 -0
- package/patches/@deepkit+type+1.0.19.patch +38 -0
- package/patches/deepkit-openapi-core+0.0.9.patch +62 -0
- package/src/app/base.ts +253 -0
- package/src/app/config.loader.ts +66 -0
- package/src/app/config.ts +119 -0
- package/src/app/const.ts +4 -0
- package/src/app/dev.ts +92 -0
- package/src/app/index.ts +6 -0
- package/src/app/openapi.ts +3 -0
- package/src/app/resolver.ts +49 -0
- package/src/app/shutdown.ts +55 -0
- package/src/app/state.ts +19 -0
- package/src/auth/index.ts +2 -0
- package/src/auth/jwt.ts +275 -0
- package/src/auth/provider.ts +57 -0
- package/src/cli/dksf-dev.ts +416 -0
- package/src/cli/dksf-gen-proto.ts +176 -0
- package/src/cli/dksf-install.ts +11 -0
- package/src/cli/dksf-test.ts +84 -0
- package/src/cli/dksf-update.ts +101 -0
- package/src/database/common.ts +385 -0
- package/src/database/dialect.ts +43 -0
- package/src/database/entity.ts +285 -0
- package/src/database/index.ts +7 -0
- package/src/database/migration/MigrationResetCommand.ts +72 -0
- package/src/database/migration/MigrationRunCommand.ts +118 -0
- package/src/database/migration/characters.ts +53 -0
- package/src/database/migration/create/MigrationCreateCommand.ts +96 -0
- package/src/database/migration/create/comparator.ts +467 -0
- package/src/database/migration/create/db-reader.ts +510 -0
- package/src/database/migration/create/ddl-generator.ts +755 -0
- package/src/database/migration/create/entity-reader.ts +471 -0
- package/src/database/migration/create/file-generator.ts +57 -0
- package/src/database/migration/create/prompt.ts +49 -0
- package/src/database/migration/create/schema-model.ts +102 -0
- package/src/database/migration/helpers.ts +7 -0
- package/src/database/migration/index.ts +35 -0
- package/src/database/migration/migration.entity.ts +10 -0
- package/src/database/mysql.ts +140 -0
- package/src/database/postgres.ts +97 -0
- package/src/database/types.ts +18 -0
- package/src/devconsole/devconsole.controller.ts +59 -0
- package/src/devconsole/devconsole.middleware.ts +23 -0
- package/src/devconsole/devconsole.srpc.ts +94 -0
- package/src/devconsole/devconsole.store.ts +190 -0
- package/src/devconsole/devconsole.ws.ts +491 -0
- package/src/devconsole/index.ts +1 -0
- package/src/devconsole/patches.ts +428 -0
- package/src/health/health.module.ts +30 -0
- package/src/health/healthcheck.controller.ts +17 -0
- package/src/health/healthcheck.service.ts +28 -0
- package/src/health/index.ts +2 -0
- package/src/helpers/async/context.ts +67 -0
- package/src/helpers/async/process.ts +49 -0
- package/src/helpers/async/promise.ts +16 -0
- package/src/helpers/data/array.ts +11 -0
- package/src/helpers/data/objects.ts +64 -0
- package/src/helpers/data/serialization.ts +11 -0
- package/src/helpers/data/transformer.ts +54 -0
- package/src/helpers/framework/decorators.ts +27 -0
- package/src/helpers/framework/event.ts +11 -0
- package/src/helpers/framework/injection.ts +47 -0
- package/src/helpers/index.ts +34 -0
- package/src/helpers/io/package.ts +26 -0
- package/src/helpers/io/stream.ts +79 -0
- package/src/helpers/redis/broadcast.ts +96 -0
- package/src/helpers/redis/cache.ts +28 -0
- package/src/helpers/redis/mutex.ts +260 -0
- package/src/helpers/redis/redis.ts +60 -0
- package/src/helpers/security/crypto.ts +133 -0
- package/src/helpers/security/validation.ts +16 -0
- package/src/helpers/utils/date.ts +13 -0
- package/src/helpers/utils/error.ts +155 -0
- package/src/helpers/utils/jsx.ts +8 -0
- package/src/helpers/utils/uuid.ts +8 -0
- package/src/http/auth.ts +156 -0
- package/src/http/context.ts +15 -0
- package/src/http/cors.ts +159 -0
- package/src/http/errors.ts +9 -0
- package/src/http/index.ts +19 -0
- package/src/http/kernel.ts +138 -0
- package/src/http/middleware.ts +59 -0
- package/src/http/overrides.ts +20 -0
- package/src/http/store.ts +86 -0
- package/src/http/uploads.ts +6 -0
- package/src/http/workflow.ts +167 -0
- package/src/index.ts +19 -0
- package/src/services/cli/invoke.ts +39 -0
- package/src/services/cli/repl-context.ts +63 -0
- package/src/services/cli/repl.ts +22 -0
- package/src/services/cli.ts +74 -0
- package/src/services/index.ts +6 -0
- package/src/services/leader.ts +201 -0
- package/src/services/logger.ts +258 -0
- package/src/services/mail/index.ts +117 -0
- package/src/services/mail/postmark.ts +37 -0
- package/src/services/mail/smtp.ts +46 -0
- package/src/services/mesh.ts +508 -0
- package/src/services/worker/bootstrap.ts +53 -0
- package/src/services/worker/cli.ts +32 -0
- package/src/services/worker/entity.ts +22 -0
- package/src/services/worker/index.ts +30 -0
- package/src/services/worker/queue.ts +35 -0
- package/src/services/worker/recorder.ts +172 -0
- package/src/services/worker/runner.ts +179 -0
- package/src/services/worker/types.ts +32 -0
- package/src/srpc/SrpcByteStream.ts +382 -0
- package/src/srpc/SrpcClient.ts +512 -0
- package/src/srpc/SrpcServer.ts +681 -0
- package/src/srpc/index.ts +15 -0
- package/src/srpc/types.ts +146 -0
- package/src/telemetry/index.ts +1 -0
- package/src/telemetry/otel/MariaDBInstrumentation.ts +297 -0
- package/src/telemetry/otel/helpers.ts +117 -0
- package/src/telemetry/otel/index.ts +150 -0
- package/src/telemetry/otel/metrics.controller.ts +50 -0
- package/src/telemetry/sentry.ts +58 -0
- package/src/testing/expect.ts +148 -0
- package/src/testing/fixtures.ts +62 -0
- package/src/testing/index.ts +355 -0
- package/src/testing/requests.ts +68 -0
- package/src/testing/sql.ts +50 -0
- package/src/types/index.ts +64 -0
- package/src/types/phone.ts +64 -0
- package/types.d.ts +20 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.__ΩEmailAddress = exports.EMAIL_REGEX = exports.__ΩNonEmptyTrimmedString = exports.__ΩTrimmedString = exports.__ΩValidDate = exports.__ΩOnUpdate = exports.__ΩDateString = exports.__ΩMethodKeys = exports.__ΩMethodsOf = exports.__ΩVoidFunction = exports.__ΩArrowFunctionNoArgs = exports.__ΩArrowFunction = exports.__ΩObjectKeysMatching = exports.__ΩRequireFields = exports.__ΩSerializable = exports.__ΩNestedKVObject = exports.__ΩKVObject = exports.__ΩStrictBool = exports.__ΩPrimitive = exports.__ΩDefinedPrimitive = exports.__ΩConcretePrimitive = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const __ΩRecord = ['K', 'T', 'Record', 'l\'e#"Rb!b"Pde"!N#!w#y'];
|
|
6
|
+
function __assignType(fn, args) {
|
|
7
|
+
fn.__type = args;
|
|
8
|
+
return fn;
|
|
9
|
+
}
|
|
10
|
+
/*@ts-ignore*/
|
|
11
|
+
var { __ΩTypeAnnotation } = require('@deepkit/core');
|
|
12
|
+
/*@ts-ignore*/
|
|
13
|
+
var { __ΩPattern, __ΩDatabaseField, __ΩValidate, __ΩMinLength } = require('@deepkit/type');
|
|
14
|
+
const type_1 = require("@deepkit/type");
|
|
15
|
+
tslib_1.__exportStar(require("./phone"), exports);
|
|
16
|
+
const __ΩConcretePrimitive = ['ConcretePrimitive', 'P&\')Jw!y'];
|
|
17
|
+
exports.__ΩConcretePrimitive = __ΩConcretePrimitive;
|
|
18
|
+
const __ΩDefinedPrimitive = [() => __ΩConcretePrimitive, 'DefinedPrimitive', 'Pn!,Jw"y'];
|
|
19
|
+
exports.__ΩDefinedPrimitive = __ΩDefinedPrimitive;
|
|
20
|
+
const __ΩPrimitive = [() => __ΩDefinedPrimitive, 'Primitive', 'Pn!-Jw"y'];
|
|
21
|
+
exports.__ΩPrimitive = __ΩPrimitive;
|
|
22
|
+
const __ΩStrictBool = [true, false, 'StrictBool', 'P.!."Jw#y'];
|
|
23
|
+
exports.__ΩStrictBool = __ΩStrictBool;
|
|
24
|
+
const __ΩKVObject = ['T', () => __ΩRecord, 'KVObject', '"c!&e!!o"#w#y'];
|
|
25
|
+
exports.__ΩKVObject = __ΩKVObject;
|
|
26
|
+
const __ΩNestedKVObject = ['T', () => __ΩKVObject, () => __ΩKVObject, 'NestedKVObject', '"c!Pe"!e"!Fe"!o#"Jo""w$y'];
|
|
27
|
+
exports.__ΩNestedKVObject = __ΩNestedKVObject;
|
|
28
|
+
const __ΩSerializable = [() => __ΩConcretePrimitive, 'T', () => __ΩNestedKVObject, () => __ΩNestedKVObject, 'Serializable', 'n!c"Pe"!e"!Fe"!o#"e"!o$"FJw%y'];
|
|
29
|
+
exports.__ΩSerializable = __ΩSerializable;
|
|
30
|
+
const __ΩRequireFields = ['T', 'K', 'RequireFields', 'l+e$!e"!fRb!b"Pe"!Pde#"N##Kw#y'];
|
|
31
|
+
exports.__ΩRequireFields = __ΩRequireFields;
|
|
32
|
+
const __ΩObjectKeysMatching = ['O', 'V', 'ObjectKeysMatching', 'lWe$!Re(!R!RPe#!e(!e\'!fqk\'+QRPde&"p-RPe$!e#!fe$"qk#>QRb!b"Pde"!gNF!e!!gfw#y'];
|
|
33
|
+
exports.__ΩObjectKeysMatching = __ΩObjectKeysMatching;
|
|
34
|
+
const __ΩArrowFunction = ['args', '', 'ArrowFunction', 'P"@2!"/"w#y'];
|
|
35
|
+
exports.__ΩArrowFunction = __ΩArrowFunction;
|
|
36
|
+
const __ΩArrowFunctionNoArgs = ['', 'ArrowFunctionNoArgs', 'P"/!w"y'];
|
|
37
|
+
exports.__ΩArrowFunctionNoArgs = __ΩArrowFunctionNoArgs;
|
|
38
|
+
const __ΩVoidFunction = ['', 'VoidFunction', 'P$/!w"y'];
|
|
39
|
+
exports.__ΩVoidFunction = __ΩVoidFunction;
|
|
40
|
+
const __ΩIfAny = ['T', 'Y', 'N', 0, 1, 'IfAny', 'l+e#"Re##Rb!b"b#P.$P.%e#!Kqk#\'Qw&y'];
|
|
41
|
+
const __ΩDefinitelyFunction = ['T', () => __ΩIfAny, 'args', '', 'DefinitelyFunction', 'l;e$!R!RPe#!P"@2#"/$qk#\'QRb!e!!!Pde"!p)o"$w%y'];
|
|
42
|
+
const __ΩMethodsOf = ['T', () => __ΩDefinitelyFunction, 'MethodsOf', 'lL!Re\'!RPe#!!qk#%QRPe$!e#!fPde%!e$!fo""p)GRb!Pde"!gt4!w#y'];
|
|
43
|
+
exports.__ΩMethodsOf = __ΩMethodsOf;
|
|
44
|
+
const __ΩMethodKeys = ['T', () => __ΩMethodsOf, 'MethodKeys', 'b!e!!o""gw#y'];
|
|
45
|
+
exports.__ΩMethodKeys = __ΩMethodKeys;
|
|
46
|
+
const _dateStringPattern = /^\d{4}-\d{2}-\d{2}$/;
|
|
47
|
+
const __ΩDateString = [() => __ΩPattern, () => _dateStringPattern, () => __ΩDatabaseField, "DATE", 'type', () => __ΩTypeAnnotation, "dksf:type", "date", 'DateString', 'P&i"o!"P.$4%Mo#".\'.(o&#Kw)y'];
|
|
48
|
+
exports.__ΩDateString = __ΩDateString;
|
|
49
|
+
const __ΩOnUpdate = ['T', () => __ΩTypeAnnotation, "dksf:onUpdate", 'OnUpdate', 'b!.#e!!o"#w$y'];
|
|
50
|
+
exports.__ΩOnUpdate = __ΩOnUpdate;
|
|
51
|
+
const __ΩValidDate = [() => __ΩValidate, () => _validateDate, 'ValidDate', 'PTi"o!"Kw#y'];
|
|
52
|
+
exports.__ΩValidDate = __ΩValidDate;
|
|
53
|
+
function _validateDate(value) {
|
|
54
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
55
|
+
if (!(value instanceof Date) || isNaN(value)) {
|
|
56
|
+
return new type_1.ValidatorError('invalidDate', 'The date invalid.');
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
_validateDate.__type = ['value', '_validateDate', 'P#2!"/"'];
|
|
60
|
+
const __ΩTrimmedString = [() => __ΩTypeAnnotation, "dksf:trim", 'TrimmedString', 'P&."o!"Kw#y'];
|
|
61
|
+
exports.__ΩTrimmedString = __ΩTrimmedString;
|
|
62
|
+
const __ΩNonEmptyTrimmedString = [() => __ΩTrimmedString, () => __ΩMinLength, 1, 'NonEmptyTrimmedString', 'Pn!.#o""Kw$y'];
|
|
63
|
+
exports.__ΩNonEmptyTrimmedString = __ΩNonEmptyTrimmedString;
|
|
64
|
+
type_1.serializer.deserializeRegistry.addDecorator(__assignType(t => type_1.typeAnnotation.getType(t, 'dksf:trim') !== undefined, ['t', '', 'P"2!"/"']), __assignType((_type, state) => {
|
|
65
|
+
state.addSetter(`${state.accessor}.trim()`);
|
|
66
|
+
}, ['_type', 'state', '', 'P"2!"2""/#']));
|
|
67
|
+
// email
|
|
68
|
+
// DK's doesn't do a full FQDN w/TLD check
|
|
69
|
+
// https://github.com/deepkit/deepkit-framework/pull/558
|
|
70
|
+
exports.EMAIL_REGEX = /^[a-z0-9_+.-]+@[a-z0-9-.]+\.[a-z]+$/i;
|
|
71
|
+
const __ΩEmailAddress = [() => __ΩPattern, () => exports.EMAIL_REGEX, 'EmailAddress', 'P&i"o!"Kw#y'];
|
|
72
|
+
exports.__ΩEmailAddress = __ΩEmailAddress;
|
|
73
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;oCAA+B,eAAe;;0EAC0D,eAAe;AAAvH,wCAAwH;AAExH,kDAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCxB,MAAM,kBAAkB,GAAG,qBAAqB,CAAC;;;;;;;AAMjD,SAAS,aAAa,CAAC,KAAc;IACjC,8DAA8D;IAC9D,IAAI,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC,IAAI,KAAK,CAAC,KAAY,CAAC,EAAE,CAAC;QAClD,OAAO,IAAI,qBAAc,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;IAClE,CAAC;AACL,CAAC;;;;;;AAKD,iBAAU,CAAC,mBAAmB,CAAC,YAAY,cACvC,CAAC,CAAC,EAAE,CAAC,qBAAc,CAAC,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,KAAK,SAAS,sCACzD,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;IACb,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,SAAS,CAAC,CAAC;AAChD,CAAC,wCACJ,CAAC;AAEF,QAAQ;AACR,0CAA0C;AAC1C,wDAAwD;AAC3C,QAAA,WAAW,GAAG,sCAAsC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TypeAnnotation } from '@deepkit/core';
|
|
2
|
+
import { Validate, ValidatorError } from '@deepkit/type';
|
|
3
|
+
export declare function cleanPhone(value: string, country?: string): string | null;
|
|
4
|
+
export declare function formatPhoneFriendly(value: string, country?: string): string | null;
|
|
5
|
+
declare function _validatePhone(value: unknown): ValidatorError | undefined;
|
|
6
|
+
export type PhoneNumber = string & Validate<typeof _validatePhone> & TypeAnnotation<'dksf:type', 'phone'>;
|
|
7
|
+
export type PhoneNumberNANP = string & Validate<typeof _validatePhone> & TypeAnnotation<'dksf:type', 'phoneNanp'>;
|
|
8
|
+
export {};
|
|
9
|
+
export declare type __ΩPhoneNumber = any[];
|
|
10
|
+
export declare type __ΩPhoneNumberNANP = any[];
|
|
11
|
+
//# sourceMappingURL=phone.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"phone.d.ts","sourceRoot":"","sources":["../../../src/types/phone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAA8C,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAQrG,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,MAAa,GAAG,MAAM,GAAG,IAAI,CAG/E;AAWD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKlF;AAED,iBAAS,cAAc,CAAC,KAAK,EAAE,OAAO,8BAIrC;AA4BD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,QAAQ,CAAC,OAAO,cAAc,CAAC,GAAG,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AAC1G,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,QAAQ,CAAC,OAAO,cAAc,CAAC,GAAG,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.__ΩPhoneNumberNANP = exports.__ΩPhoneNumber = void 0;
|
|
4
|
+
exports.cleanPhone = cleanPhone;
|
|
5
|
+
exports.formatPhoneFriendly = formatPhoneFriendly;
|
|
6
|
+
function __assignType(fn, args) {
|
|
7
|
+
fn.__type = args;
|
|
8
|
+
return fn;
|
|
9
|
+
}
|
|
10
|
+
/*@ts-ignore*/
|
|
11
|
+
var { __ΩTypeAnnotation } = require('@deepkit/core');
|
|
12
|
+
/*@ts-ignore*/
|
|
13
|
+
var { __ΩValidate } = require('@deepkit/type');
|
|
14
|
+
const type_1 = require("@deepkit/type");
|
|
15
|
+
const google_libphonenumber_1 = require("google-libphonenumber");
|
|
16
|
+
const helpers_1 = require("../helpers");
|
|
17
|
+
const PhoneFormatter = google_libphonenumber_1.PhoneNumberUtil.getInstance();
|
|
18
|
+
const InvalidPhoneSymbol = '¡InvalidPhone¡'; //Symbol('InvalidPhone');
|
|
19
|
+
function cleanPhone(value, country = 'US') {
|
|
20
|
+
const cleaned = cleanPhoneInternal(value, country);
|
|
21
|
+
return cleaned === InvalidPhoneSymbol ? null : cleaned;
|
|
22
|
+
}
|
|
23
|
+
cleanPhone.__type = ['value', 'country', () => "US", 'cleanPhone', 'P&2!&2">#P&,J/$'];
|
|
24
|
+
function cleanPhoneInternal(value, country = 'US', stripUSPrefix = false) {
|
|
25
|
+
if (typeof value !== 'string')
|
|
26
|
+
return InvalidPhoneSymbol;
|
|
27
|
+
const number = (0, helpers_1.tryOrErrorSync)(() => PhoneFormatter.parseAndKeepRawInput(value, country));
|
|
28
|
+
if (number instanceof Error)
|
|
29
|
+
return InvalidPhoneSymbol;
|
|
30
|
+
if (!PhoneFormatter.isValidNumber(number))
|
|
31
|
+
return InvalidPhoneSymbol;
|
|
32
|
+
const result = PhoneFormatter.format(number, google_libphonenumber_1.PhoneNumberFormat.E164);
|
|
33
|
+
return stripUSPrefix ? result.replace(/^\+1/, '') : result;
|
|
34
|
+
}
|
|
35
|
+
cleanPhoneInternal.__type = ['value', 'country', () => "US", 'stripUSPrefix', 'cleanPhoneInternal', 'P&2!&2">#"2$&/%'];
|
|
36
|
+
function formatPhoneFriendly(value, country) {
|
|
37
|
+
const number = (0, helpers_1.tryOrErrorSync)(() => PhoneFormatter.parse(value, country));
|
|
38
|
+
if (number instanceof Error)
|
|
39
|
+
return null;
|
|
40
|
+
if (!PhoneFormatter.isValidNumber(number))
|
|
41
|
+
return null;
|
|
42
|
+
return PhoneFormatter.format(number, google_libphonenumber_1.PhoneNumberFormat.NATIONAL);
|
|
43
|
+
}
|
|
44
|
+
formatPhoneFriendly.__type = ['value', 'country', 'formatPhoneFriendly', 'P&2!&2"8P&,J/#'];
|
|
45
|
+
function _validatePhone(value) {
|
|
46
|
+
if (value === InvalidPhoneSymbol) {
|
|
47
|
+
return new type_1.ValidatorError('invalidPhone', 'The phone number is invalid.');
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
_validatePhone.__type = ['value', '_validatePhone', 'P#2!"/"'];
|
|
51
|
+
type_1.serializer.deserializeRegistry.addDecorator(__assignType(t => {
|
|
52
|
+
const typeType = type_1.typeAnnotation.getType(t, 'dksf:type');
|
|
53
|
+
return typeType?.kind === type_1.ReflectionKind.literal && typeType.literal === 'phone';
|
|
54
|
+
}, ['t', '', 'P"2!"/"']), __assignType((_type, state) => {
|
|
55
|
+
state.setContext({ cleanPhoneInternal });
|
|
56
|
+
state.addCodeForSetter(`
|
|
57
|
+
${state.setter} = cleanPhoneInternal(${state.accessor});
|
|
58
|
+
`);
|
|
59
|
+
}, ['_type', 'state', '', 'P"2!"2""/#']));
|
|
60
|
+
type_1.serializer.deserializeRegistry.addDecorator(__assignType(t => {
|
|
61
|
+
const typeType = type_1.typeAnnotation.getType(t, 'dksf:type');
|
|
62
|
+
return typeType?.kind === type_1.ReflectionKind.literal && typeType.literal === 'phoneNanp';
|
|
63
|
+
}, ['t', '', 'P"2!"/"']), __assignType((_type, state) => {
|
|
64
|
+
state.setContext({ cleanPhoneInternal });
|
|
65
|
+
state.addCodeForSetter(`
|
|
66
|
+
${state.setter} = cleanPhoneInternal(${state.accessor}, 'US', true);
|
|
67
|
+
`);
|
|
68
|
+
}, ['_type', 'state', '', 'P"2!"2""/#']));
|
|
69
|
+
const __ΩPhoneNumber = [() => __ΩValidate, () => _validatePhone, () => __ΩTypeAnnotation, "dksf:type", "phone", 'PhoneNumber', 'P&i"o!".$.%o##Kw&y'];
|
|
70
|
+
exports.__ΩPhoneNumber = __ΩPhoneNumber;
|
|
71
|
+
const __ΩPhoneNumberNANP = [() => __ΩValidate, () => _validatePhone, () => __ΩTypeAnnotation, "dksf:type", "phoneNanp", 'PhoneNumberNANP', 'P&i"o!".$.%o##Kw&y'];
|
|
72
|
+
exports.__ΩPhoneNumberNANP = __ΩPhoneNumberNANP;
|
|
73
|
+
//# sourceMappingURL=phone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"phone.js","sourceRoot":"","sources":["../../../src/types/phone.ts"],"names":[],"mappings":";;;AASA,gCAGC;AAWD,kDAKC;;;;;;oCA5B8B,eAAe;;8BACuC,eAAe;AAApG,wCAAqG;AACrG,iEAA2E;AAE3E,wCAA4C;AAE5C,MAAM,cAAc,GAAG,uCAAe,CAAC,WAAW,EAAE,CAAC;AACrD,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,yBAAyB;AAEtE,SAAgB,UAAU,CAAC,KAAa,EAAE,UAAkB,IAAI;IAC5D,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACnD,OAAO,OAAO,KAAK,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;AAC3D,CAAC;;AAED,SAAS,kBAAkB,CAAC,KAAa,EAAE,UAAkB,IAAI,EAAE,aAAa,GAAG,KAAK;IACpF,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,kBAAkB,CAAC;IACzD,MAAM,MAAM,GAAG,IAAA,wBAAc,EAAC,GAAG,EAAE,CAAC,cAAc,CAAC,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACzF,IAAI,MAAM,YAAY,KAAK;QAAE,OAAO,kBAAkB,CAAC;IACvD,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,CAAC;QAAE,OAAO,kBAAkB,CAAC;IACrE,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,yCAAiB,CAAC,IAAI,CAAC,CAAC;IACrE,OAAO,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAC/D,CAAC;;AAED,SAAgB,mBAAmB,CAAC,KAAa,EAAE,OAAgB;IAC/D,MAAM,MAAM,GAAG,IAAA,wBAAc,EAAC,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1E,IAAI,MAAM,YAAY,KAAK;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IACvD,OAAO,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,yCAAiB,CAAC,QAAQ,CAAC,CAAC;AACrE,CAAC;;AAED,SAAS,cAAc,CAAC,KAAc;IAClC,IAAI,KAAK,KAAK,kBAAkB,EAAE,CAAC;QAC/B,OAAO,IAAI,qBAAc,CAAC,cAAc,EAAE,8BAA8B,CAAC,CAAC;IAC9E,CAAC;AACL,CAAC;;AAED,iBAAU,CAAC,mBAAmB,CAAC,YAAY,cACvC,CAAC,CAAC,EAAE;IACA,MAAM,QAAQ,GAAG,qBAAc,CAAC,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IACxD,OAAO,QAAQ,EAAE,IAAI,KAAK,qBAAc,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,KAAK,OAAO,CAAC;AACrF,CAAC,sCACD,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;IACb,KAAK,CAAC,UAAU,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACzC,KAAK,CAAC,gBAAgB,CAAC;cACjB,KAAK,CAAC,MAAM,yBAAyB,KAAK,CAAC,QAAQ;SACxD,CAAC,CAAC;AACP,CAAC,wCACJ,CAAC;AAEF,iBAAU,CAAC,mBAAmB,CAAC,YAAY,cACvC,CAAC,CAAC,EAAE;IACA,MAAM,QAAQ,GAAG,qBAAc,CAAC,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IACxD,OAAO,QAAQ,EAAE,IAAI,KAAK,qBAAc,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,KAAK,WAAW,CAAC;AACzF,CAAC,sCACD,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;IACb,KAAK,CAAC,UAAU,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACzC,KAAK,CAAC,gBAAgB,CAAC;cACjB,KAAK,CAAC,MAAM,yBAAyB,KAAK,CAAC,QAAQ;SACxD,CAAC,CAAC;AACP,CAAC,wCACJ,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { defineConfig } from 'vitepress'
|
|
2
|
+
|
|
3
|
+
// https://vitepress.dev/reference/site-config
|
|
4
|
+
export default defineConfig({
|
|
5
|
+
srcDir: 'content',
|
|
6
|
+
title: "@signal24/dk-server-foundation",
|
|
7
|
+
description: "TypeScript foundation library built on Deepkit for building server applications",
|
|
8
|
+
base: '/dk-server-foundation/',
|
|
9
|
+
|
|
10
|
+
themeConfig: {
|
|
11
|
+
// https://vitepress.dev/reference/default-theme-config
|
|
12
|
+
nav: [
|
|
13
|
+
{ text: 'Home', link: '/' },
|
|
14
|
+
{ text: 'Getting Started', link: '/getting-started' },
|
|
15
|
+
{ text: 'Guide', link: '/guide/' }
|
|
16
|
+
],
|
|
17
|
+
|
|
18
|
+
sidebar: [
|
|
19
|
+
{
|
|
20
|
+
text: 'Introduction',
|
|
21
|
+
items: [
|
|
22
|
+
{ text: 'Getting Started', link: '/getting-started' },
|
|
23
|
+
{ text: 'Configuration', link: '/configuration' }
|
|
24
|
+
]
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
text: 'Core',
|
|
28
|
+
items: [
|
|
29
|
+
{ text: 'Database', link: '/database' },
|
|
30
|
+
{ text: 'HTTP', link: '/http' },
|
|
31
|
+
{ text: 'Authentication', link: '/authentication' },
|
|
32
|
+
{ text: 'Logging', link: '/logging' },
|
|
33
|
+
{ text: 'Health Checks', link: '/health' },
|
|
34
|
+
{ text: 'Types', link: '/types' }
|
|
35
|
+
]
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
text: 'Services',
|
|
39
|
+
items: [
|
|
40
|
+
{ text: 'Workers', link: '/worker' },
|
|
41
|
+
{ text: 'SRPC', link: '/srpc' },
|
|
42
|
+
{ text: 'Leader Service', link: '/leader-service' },
|
|
43
|
+
{ text: 'Mesh Service', link: '/mesh-service' },
|
|
44
|
+
{ text: 'Mail', link: '/mail' }
|
|
45
|
+
]
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
text: 'Utilities',
|
|
49
|
+
items: [
|
|
50
|
+
{ text: 'Redis', link: '/redis' },
|
|
51
|
+
{ text: 'Helpers', link: '/helpers' },
|
|
52
|
+
{ text: 'Telemetry', link: '/telemetry' },
|
|
53
|
+
{ text: 'Testing', link: '/testing' },
|
|
54
|
+
{ text: 'DevConsole', link: '/devconsole' },
|
|
55
|
+
{ text: 'CLI Tools', link: '/cli' }
|
|
56
|
+
]
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
text: 'Guides',
|
|
60
|
+
items: [
|
|
61
|
+
{ text: 'Test Migration Guide', link: '/guides/test-migration-guide' }
|
|
62
|
+
]
|
|
63
|
+
}
|
|
64
|
+
],
|
|
65
|
+
|
|
66
|
+
socialLinks: [
|
|
67
|
+
{ icon: 'github', link: 'https://github.com/signal24/dk-server-foundation' }
|
|
68
|
+
],
|
|
69
|
+
|
|
70
|
+
search: {
|
|
71
|
+
provider: 'local'
|
|
72
|
+
},
|
|
73
|
+
|
|
74
|
+
footer: {
|
|
75
|
+
message: 'Released under the MIT License.',
|
|
76
|
+
copyright: 'Copyright © 2024-present Signal 24'
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
})
|
package/docs/.yarnrc.yml
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
nodeLinker: node-modules
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# Contributing to Documentation
|
|
2
|
+
|
|
3
|
+
Thank you for contributing to the dk-server-foundation documentation!
|
|
4
|
+
|
|
5
|
+
## Quick Start
|
|
6
|
+
|
|
7
|
+
1. **Install dependencies**:
|
|
8
|
+
```bash
|
|
9
|
+
yarn install
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
2. **Start the development server**:
|
|
13
|
+
```bash
|
|
14
|
+
yarn docs:dev
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
This will start a local server with hot reload.
|
|
18
|
+
|
|
19
|
+
3. **Make your changes** to the Markdown files in the `docs/` directory.
|
|
20
|
+
|
|
21
|
+
4. **Preview your changes** in the browser - they'll update automatically.
|
|
22
|
+
|
|
23
|
+
5. **Build to verify** (optional):
|
|
24
|
+
```bash
|
|
25
|
+
yarn docs:build
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Adding a New Page
|
|
29
|
+
|
|
30
|
+
1. Create a new Markdown file in the `docs/` directory (e.g., `docs/my-feature.md`)
|
|
31
|
+
|
|
32
|
+
2. Add frontmatter if needed:
|
|
33
|
+
```markdown
|
|
34
|
+
---
|
|
35
|
+
title: My Feature
|
|
36
|
+
description: Description for SEO
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
# My Feature
|
|
40
|
+
|
|
41
|
+
Content here...
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
3. Update the sidebar in `docs/.vitepress/config.mts`:
|
|
45
|
+
```typescript
|
|
46
|
+
sidebar: [
|
|
47
|
+
{
|
|
48
|
+
text: 'My Section',
|
|
49
|
+
items: [
|
|
50
|
+
{ text: 'My Feature', link: '/my-feature' }
|
|
51
|
+
]
|
|
52
|
+
}
|
|
53
|
+
]
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Adding Images
|
|
57
|
+
|
|
58
|
+
1. Place images in `docs/public/images/` (organize in subdirectories as needed)
|
|
59
|
+
|
|
60
|
+
2. Reference them in Markdown with an absolute path:
|
|
61
|
+
```markdown
|
|
62
|
+

|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Markdown Features
|
|
66
|
+
|
|
67
|
+
VitePress supports standard Markdown plus these enhancements:
|
|
68
|
+
|
|
69
|
+
### Code Blocks with Syntax Highlighting
|
|
70
|
+
|
|
71
|
+
\```typescript
|
|
72
|
+
const app = createApp({
|
|
73
|
+
config: AppConfig
|
|
74
|
+
});
|
|
75
|
+
\```
|
|
76
|
+
|
|
77
|
+
### Custom Containers
|
|
78
|
+
|
|
79
|
+
```markdown
|
|
80
|
+
::: tip
|
|
81
|
+
This is a tip
|
|
82
|
+
:::
|
|
83
|
+
|
|
84
|
+
::: warning
|
|
85
|
+
This is a warning
|
|
86
|
+
:::
|
|
87
|
+
|
|
88
|
+
::: danger
|
|
89
|
+
This is a dangerous warning
|
|
90
|
+
:::
|
|
91
|
+
|
|
92
|
+
::: info
|
|
93
|
+
This is an info box
|
|
94
|
+
:::
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### Links
|
|
98
|
+
|
|
99
|
+
- Internal links: `[Getting Started](/getting-started)`
|
|
100
|
+
- External links: `[Deepkit](https://deepkit.io)`
|
|
101
|
+
|
|
102
|
+
### Tables
|
|
103
|
+
|
|
104
|
+
```markdown
|
|
105
|
+
| Feature | Description |
|
|
106
|
+
| ------- | ----------- |
|
|
107
|
+
| Fast | Built on Vite |
|
|
108
|
+
| Simple | Just Markdown |
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## Deployment
|
|
112
|
+
|
|
113
|
+
Documentation is automatically deployed to GitHub Pages when changes are merged to the `main` branch. The deployment workflow is in `.github/workflows/deploy-docs.yml`.
|
|
114
|
+
|
|
115
|
+
## Testing Before Commit
|
|
116
|
+
|
|
117
|
+
1. Build the docs: `yarn docs:build`
|
|
118
|
+
2. Preview the build: `yarn docs:preview`
|
|
119
|
+
3. Check for:
|
|
120
|
+
- Broken links
|
|
121
|
+
- Missing images
|
|
122
|
+
- Formatting issues
|
|
123
|
+
- Spelling/grammar
|
|
124
|
+
|
|
125
|
+
## Style Guide
|
|
126
|
+
|
|
127
|
+
- Use clear, concise language
|
|
128
|
+
- Include code examples where helpful
|
|
129
|
+
- Add links to related documentation
|
|
130
|
+
- Use proper Markdown headings (# for h1, ## for h2, etc.)
|
|
131
|
+
- Keep line length reasonable for readability
|
|
132
|
+
- Use fenced code blocks with language specifiers
|
|
133
|
+
|
|
134
|
+
## Questions?
|
|
135
|
+
|
|
136
|
+
- Check the [VitePress documentation](https://vitepress.dev/)
|
|
137
|
+
- Look at existing pages for examples
|
|
138
|
+
- Open an issue on GitHub for questions
|
|
139
|
+
|
|
140
|
+
Thank you for improving our documentation! 🎉
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
# Documentation Site Development
|
|
2
|
+
|
|
3
|
+
This directory contains the VitePress-based documentation site for @zyno-io/dk-server-foundation.
|
|
4
|
+
|
|
5
|
+
## Local Development
|
|
6
|
+
|
|
7
|
+
### Prerequisites
|
|
8
|
+
|
|
9
|
+
- Node.js 18+
|
|
10
|
+
- Yarn package manager
|
|
11
|
+
|
|
12
|
+
### Install Dependencies
|
|
13
|
+
|
|
14
|
+
From the repository root:
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
yarn install
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
### Development Server
|
|
21
|
+
|
|
22
|
+
Start the VitePress development server with hot reload:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
yarn docs:dev
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
The site will be available at `http://localhost:5173`
|
|
29
|
+
|
|
30
|
+
### Build
|
|
31
|
+
|
|
32
|
+
Build the static site for production:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
yarn docs:build
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
The built site will be in `docs/.vitepress/dist`
|
|
39
|
+
|
|
40
|
+
### Preview
|
|
41
|
+
|
|
42
|
+
Preview the production build locally:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
yarn docs:preview
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Structure
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
docs/
|
|
52
|
+
├── .vitepress/
|
|
53
|
+
│ ├── config.mts # VitePress configuration
|
|
54
|
+
│ └── dist/ # Build output (generated)
|
|
55
|
+
├── public/
|
|
56
|
+
│ └── images/
|
|
57
|
+
│ └── devconsole/ # DevConsole screenshots
|
|
58
|
+
├── guides/ # Guide documents
|
|
59
|
+
├── index.md # Home page (hero layout)
|
|
60
|
+
├── getting-started.md # Getting started guide
|
|
61
|
+
├── configuration.md # Configuration reference
|
|
62
|
+
├── database.md # Database documentation
|
|
63
|
+
├── http.md # HTTP documentation
|
|
64
|
+
├── authentication.md # Authentication documentation
|
|
65
|
+
├── worker.md # Workers documentation
|
|
66
|
+
├── srpc.md # SRPC documentation
|
|
67
|
+
├── devconsole.md # DevConsole documentation
|
|
68
|
+
└── ... # Other documentation files
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Adding Documentation
|
|
72
|
+
|
|
73
|
+
1. Create or edit Markdown files in `docs/`
|
|
74
|
+
2. Update the sidebar in `.vitepress/config.mts` if adding new pages
|
|
75
|
+
3. Use standard Markdown with VitePress enhancements
|
|
76
|
+
|
|
77
|
+
## Adding Images
|
|
78
|
+
|
|
79
|
+
Place images in `docs/public/images/` and reference them with `/images/...` in Markdown:
|
|
80
|
+
|
|
81
|
+
```markdown
|
|
82
|
+

|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Capturing DevConsole Screenshots
|
|
86
|
+
|
|
87
|
+
To update the DevConsole screenshots used in the documentation:
|
|
88
|
+
|
|
89
|
+
### Prerequisites
|
|
90
|
+
|
|
91
|
+
1. Install Playwright:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
npm install -D @playwright/test
|
|
95
|
+
npx playwright install chromium
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
2. Ensure MySQL and Redis are running
|
|
99
|
+
|
|
100
|
+
### Capture Screenshots
|
|
101
|
+
|
|
102
|
+
1. In one terminal, start the demo app:
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
yarn demoapp
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
2. Wait for the server to start (you'll see "Server started" message)
|
|
109
|
+
|
|
110
|
+
3. In another terminal, run the screenshot capture script:
|
|
111
|
+
```bash
|
|
112
|
+
yarn docs:screenshots
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
This will automatically:
|
|
116
|
+
|
|
117
|
+
- Navigate through all 10 DevConsole views
|
|
118
|
+
- Wait for each page to load completely
|
|
119
|
+
- Capture full-page screenshots
|
|
120
|
+
- Save them to `docs/content/public/images/devconsole/`
|
|
121
|
+
|
|
122
|
+
For headless mode (faster, no visible browser):
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
yarn docs:screenshots:headless
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
See `scripts/README-SCREENSHOTS.md` for detailed instructions and troubleshooting.
|
|
129
|
+
|
|
130
|
+
## Deployment
|
|
131
|
+
|
|
132
|
+
The documentation is automatically deployed to GitHub Pages when changes are pushed to the `main` branch. The workflow is defined in `.github/workflows/deploy-docs.yml`.
|
|
133
|
+
|
|
134
|
+
### Manual Deployment
|
|
135
|
+
|
|
136
|
+
To trigger a manual deployment, go to the Actions tab in GitHub and run the "Deploy Documentation" workflow.
|
|
137
|
+
|
|
138
|
+
## Links
|
|
139
|
+
|
|
140
|
+
- [VitePress Documentation](https://vitepress.dev/)
|
|
141
|
+
- [Main Repository](https://github.com/zyno-io/dk-server-foundation)
|
|
142
|
+
- [Published Documentation](https://zyno-io.github.io/dk-server-foundation/)
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Documentation
|
|
2
|
+
|
|
3
|
+
## Getting Started
|
|
4
|
+
|
|
5
|
+
| Document | Description |
|
|
6
|
+
| --------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
|
|
7
|
+
| [Getting Started](./getting-started.md) | Installation, app creation with `createApp()`, AutoStart, dependency resolution, and environment detection. |
|
|
8
|
+
| [Configuration](./configuration.md) | Full reference for all built-in environment variables: database, auth, Redis, mail, telemetry, and more. |
|
|
9
|
+
|
|
10
|
+
## Core
|
|
11
|
+
|
|
12
|
+
| Document | Description |
|
|
13
|
+
| ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
14
|
+
| [Database](./database.md) | MySQL/MariaDB ORM with transactions, hooks, session locks, raw queries, entity creation, dirty tracking, relationship resolution, and migrations. |
|
|
15
|
+
| [HTTP](./http.md) | Custom HTTP kernel, middleware, CORS, error handling, file uploads, response helpers, and request-scoped caching. |
|
|
16
|
+
| [Authentication](./authentication.md) | JWT (HS256/EdDSA) and HTTP Basic Auth with entity resolution, password hashing, and reset tokens. |
|
|
17
|
+
| [Logging](./logging.md) | Scoped Pino logger with async context tracking, structured data, and error reporting integration. |
|
|
18
|
+
| [Health Checks](./health.md) | Extensible health check service with `/healthz` endpoint and automatic database health monitoring. |
|
|
19
|
+
| [Types](./types.md) | Custom validated types: phone numbers, dates, coordinates, emails, trimmed strings, and utility types. |
|
|
20
|
+
|
|
21
|
+
## Services
|
|
22
|
+
|
|
23
|
+
| Document | Description |
|
|
24
|
+
| ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
25
|
+
| [Workers](./worker.md) | BullMQ background job processing with `@WorkerJob()` decorator, cron scheduling, and leader-elected job recording. |
|
|
26
|
+
| [SRPC](./srpc.md) | Bidirectional WebSocket RPC with HMAC auth, ts-proto code generation, multiplexed binary streams, and tracing. |
|
|
27
|
+
| [Leader Service](./leader-service.md) | Distributed leader election via Redis. One instance holds the lock at a time, with TTL-based expiry, automatic renewal, and callbacks for leadership transitions. |
|
|
28
|
+
| [Mesh Service](./mesh-service.md) | Typed RPC between distributed instances. Nodes register handlers and invoke them across the mesh by instance ID, with automatic heartbeats, timeout management, and dead-node cleanup. |
|
|
29
|
+
| [Mail](./mail.md) | Email sending via Postmark or SMTP with a template system. |
|
|
30
|
+
|
|
31
|
+
## Utilities
|
|
32
|
+
|
|
33
|
+
| Document | Description |
|
|
34
|
+
| --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
|
|
35
|
+
| [Helpers](./helpers.md) | Async context, Redis cache/mutex/broadcast, cryptography, data manipulation, transformers, process execution, and more. |
|
|
36
|
+
| [Telemetry](./telemetry.md) | OpenTelemetry auto-instrumentation for HTTP, database, Redis, DNS, BullMQ, and Sentry error tracking. |
|
|
37
|
+
| [Testing](./testing.md) | Test facades with per-test database isolation, entity fixtures, mock requests, and SQL mocking. |
|
|
38
|
+
| [DevConsole](./devconsole.md) | Built-in web dashboard for development: HTTP inspector, SRPC monitor, database browser, REPL, worker/mutex/health views, and more. |
|
|
39
|
+
| [CLI Tools](./cli.md) | `dksf-dev` workflow (clean/build/run/migrate/test), REPL, provider invoke, migration commands, proto generation, and standalone tools. |
|