velocious 1.0.107 → 1.0.109
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/README.md +5 -5
- package/dist/bin/velocious.d.ts +3 -0
- package/dist/bin/velocious.d.ts.map +1 -0
- package/dist/bin/velocious.js +27 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -0
- package/dist/src/application.d.ts +67 -0
- package/dist/src/application.d.ts.map +1 -0
- package/dist/src/application.js +101 -0
- package/dist/src/cli/base-command.d.ts +32 -0
- package/dist/src/cli/base-command.d.ts.map +1 -0
- package/dist/src/cli/base-command.js +34 -0
- package/dist/src/cli/browser-cli.d.ts +22 -0
- package/dist/src/cli/browser-cli.d.ts.map +1 -0
- package/dist/src/cli/browser-cli.js +32 -0
- package/dist/src/cli/commands/db/create.d.ts +9 -0
- package/dist/src/cli/commands/db/create.d.ts.map +1 -0
- package/dist/src/cli/commands/db/create.js +62 -0
- package/dist/src/cli/commands/db/drop.d.ts +5 -0
- package/dist/src/cli/commands/db/drop.d.ts.map +1 -0
- package/dist/src/cli/commands/db/drop.js +14 -0
- package/dist/src/cli/commands/db/migrate.d.ts +5 -0
- package/dist/src/cli/commands/db/migrate.d.ts.map +1 -0
- package/dist/src/cli/commands/db/migrate.js +14 -0
- package/dist/src/cli/commands/db/reset.d.ts +5 -0
- package/dist/src/cli/commands/db/reset.d.ts.map +1 -0
- package/dist/src/cli/commands/db/reset.js +18 -0
- package/dist/src/cli/commands/db/rollback.d.ts +5 -0
- package/dist/src/cli/commands/db/rollback.d.ts.map +1 -0
- package/dist/src/cli/commands/db/rollback.js +13 -0
- package/dist/src/cli/commands/destroy/migration.d.ts +5 -0
- package/dist/src/cli/commands/destroy/migration.d.ts.map +1 -0
- package/dist/src/cli/commands/destroy/migration.js +6 -0
- package/dist/src/cli/commands/generate/base-models.d.ts +5 -0
- package/dist/src/cli/commands/generate/base-models.d.ts.map +1 -0
- package/dist/src/cli/commands/generate/base-models.js +6 -0
- package/dist/src/cli/commands/generate/migration.d.ts +5 -0
- package/dist/src/cli/commands/generate/migration.d.ts.map +1 -0
- package/dist/src/cli/commands/generate/migration.js +6 -0
- package/dist/src/cli/commands/generate/model.d.ts +5 -0
- package/dist/src/cli/commands/generate/model.d.ts.map +1 -0
- package/dist/src/cli/commands/generate/model.js +6 -0
- package/dist/src/cli/commands/init.d.ts +6 -0
- package/dist/src/cli/commands/init.d.ts.map +1 -0
- package/dist/src/cli/commands/init.js +8 -0
- package/dist/src/cli/commands/server.d.ts +5 -0
- package/dist/src/cli/commands/server.d.ts.map +1 -0
- package/dist/src/cli/commands/server.js +6 -0
- package/dist/src/cli/commands/test.d.ts +5 -0
- package/dist/src/cli/commands/test.d.ts.map +1 -0
- package/dist/src/cli/commands/test.js +6 -0
- package/dist/src/cli/index.d.ts +12 -0
- package/dist/src/cli/index.d.ts.map +1 -0
- package/dist/src/cli/index.js +34 -0
- package/dist/src/cli/use-browser-cli.d.ts +10 -0
- package/dist/src/cli/use-browser-cli.d.ts.map +1 -0
- package/dist/src/cli/use-browser-cli.js +21 -0
- package/dist/src/configuration-resolver.d.ts +7 -0
- package/dist/src/configuration-resolver.d.ts.map +1 -0
- package/dist/src/configuration-resolver.js +55 -0
- package/dist/src/configuration-types.d.ts +112 -0
- package/dist/src/configuration-types.d.ts.map +1 -0
- package/dist/src/configuration-types.js +54 -0
- package/dist/src/configuration.d.ts +193 -0
- package/dist/src/configuration.d.ts.map +1 -0
- package/dist/src/configuration.js +335 -0
- package/dist/src/controller.d.ts +73 -0
- package/dist/src/controller.d.ts.map +1 -0
- package/dist/src/controller.js +141 -0
- package/dist/src/database/drivers/base-column.d.ts +72 -0
- package/dist/src/database/drivers/base-column.d.ts.map +1 -0
- package/dist/src/database/drivers/base-column.js +120 -0
- package/dist/src/database/drivers/base-columns-index.d.ts +44 -0
- package/dist/src/database/drivers/base-columns-index.d.ts.map +1 -0
- package/dist/src/database/drivers/base-columns-index.js +62 -0
- package/dist/src/database/drivers/base-foreign-key.d.ts +52 -0
- package/dist/src/database/drivers/base-foreign-key.d.ts.map +1 -0
- package/dist/src/database/drivers/base-foreign-key.js +79 -0
- package/dist/src/database/drivers/base-table.d.ts +54 -0
- package/dist/src/database/drivers/base-table.d.ts.map +1 -0
- package/dist/src/database/drivers/base-table.js +106 -0
- package/dist/src/database/drivers/base.d.ts +365 -0
- package/dist/src/database/drivers/base.d.ts.map +1 -0
- package/dist/src/database/drivers/base.js +654 -0
- package/dist/src/database/drivers/mssql/column.d.ts +13 -0
- package/dist/src/database/drivers/mssql/column.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/column.js +61 -0
- package/dist/src/database/drivers/mssql/columns-index.d.ts +4 -0
- package/dist/src/database/drivers/mssql/columns-index.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/columns-index.js +4 -0
- package/dist/src/database/drivers/mssql/connect-connection.d.ts +2 -0
- package/dist/src/database/drivers/mssql/connect-connection.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/connect-connection.js +13 -0
- package/dist/src/database/drivers/mssql/foreign-key.d.ts +9 -0
- package/dist/src/database/drivers/mssql/foreign-key.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/foreign-key.js +10 -0
- package/dist/src/database/drivers/mssql/index.d.ts +33 -0
- package/dist/src/database/drivers/mssql/index.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/index.js +304 -0
- package/dist/src/database/drivers/mssql/options.d.ts +11 -0
- package/dist/src/database/drivers/mssql/options.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/options.js +65 -0
- package/dist/src/database/drivers/mssql/query-parser.d.ts +4 -0
- package/dist/src/database/drivers/mssql/query-parser.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/query-parser.js +4 -0
- package/dist/src/database/drivers/mssql/sql/alter-table.d.ts +4 -0
- package/dist/src/database/drivers/mssql/sql/alter-table.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/sql/alter-table.js +3 -0
- package/dist/src/database/drivers/mssql/sql/create-database.d.ts +4 -0
- package/dist/src/database/drivers/mssql/sql/create-database.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/sql/create-database.js +27 -0
- package/dist/src/database/drivers/mssql/sql/create-index.d.ts +4 -0
- package/dist/src/database/drivers/mssql/sql/create-index.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/sql/create-index.js +3 -0
- package/dist/src/database/drivers/mssql/sql/create-table.d.ts +4 -0
- package/dist/src/database/drivers/mssql/sql/create-table.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/sql/create-table.js +3 -0
- package/dist/src/database/drivers/mssql/sql/delete.d.ts +5 -0
- package/dist/src/database/drivers/mssql/sql/delete.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/sql/delete.js +16 -0
- package/dist/src/database/drivers/mssql/sql/drop-table.d.ts +4 -0
- package/dist/src/database/drivers/mssql/sql/drop-table.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/sql/drop-table.js +3 -0
- package/dist/src/database/drivers/mssql/sql/insert.d.ts +4 -0
- package/dist/src/database/drivers/mssql/sql/insert.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/sql/insert.js +3 -0
- package/dist/src/database/drivers/mssql/sql/update.d.ts +5 -0
- package/dist/src/database/drivers/mssql/sql/update.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/sql/update.js +26 -0
- package/dist/src/database/drivers/mssql/table.d.ts +15 -0
- package/dist/src/database/drivers/mssql/table.d.ts.map +1 -0
- package/dist/src/database/drivers/mssql/table.js +116 -0
- package/dist/src/database/drivers/mysql/column.d.ts +13 -0
- package/dist/src/database/drivers/mysql/column.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/column.js +87 -0
- package/dist/src/database/drivers/mysql/columns-index.d.ts +4 -0
- package/dist/src/database/drivers/mysql/columns-index.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/columns-index.js +4 -0
- package/dist/src/database/drivers/mysql/foreign-key.d.ts +9 -0
- package/dist/src/database/drivers/mysql/foreign-key.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/foreign-key.js +10 -0
- package/dist/src/database/drivers/mysql/index.d.ts +30 -0
- package/dist/src/database/drivers/mysql/index.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/index.js +234 -0
- package/dist/src/database/drivers/mysql/options.d.ts +11 -0
- package/dist/src/database/drivers/mysql/options.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/options.js +27 -0
- package/dist/src/database/drivers/mysql/query-parser.d.ts +4 -0
- package/dist/src/database/drivers/mysql/query-parser.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/query-parser.js +4 -0
- package/dist/src/database/drivers/mysql/query.d.ts +6 -0
- package/dist/src/database/drivers/mysql/query.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/query.js +27 -0
- package/dist/src/database/drivers/mysql/sql/alter-table.d.ts +4 -0
- package/dist/src/database/drivers/mysql/sql/alter-table.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/sql/alter-table.js +4 -0
- package/dist/src/database/drivers/mysql/sql/create-database.d.ts +4 -0
- package/dist/src/database/drivers/mysql/sql/create-database.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/sql/create-database.js +4 -0
- package/dist/src/database/drivers/mysql/sql/create-index.d.ts +4 -0
- package/dist/src/database/drivers/mysql/sql/create-index.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/sql/create-index.js +4 -0
- package/dist/src/database/drivers/mysql/sql/create-table.d.ts +4 -0
- package/dist/src/database/drivers/mysql/sql/create-table.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/sql/create-table.js +4 -0
- package/dist/src/database/drivers/mysql/sql/delete.d.ts +5 -0
- package/dist/src/database/drivers/mysql/sql/delete.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/sql/delete.js +17 -0
- package/dist/src/database/drivers/mysql/sql/drop-table.d.ts +4 -0
- package/dist/src/database/drivers/mysql/sql/drop-table.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/sql/drop-table.js +4 -0
- package/dist/src/database/drivers/mysql/sql/insert.d.ts +4 -0
- package/dist/src/database/drivers/mysql/sql/insert.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/sql/insert.js +4 -0
- package/dist/src/database/drivers/mysql/sql/update.d.ts +5 -0
- package/dist/src/database/drivers/mysql/sql/update.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/sql/update.js +27 -0
- package/dist/src/database/drivers/mysql/table.d.ts +15 -0
- package/dist/src/database/drivers/mysql/table.d.ts.map +1 -0
- package/dist/src/database/drivers/mysql/table.js +80 -0
- package/dist/src/database/drivers/pgsql/column.d.ts +13 -0
- package/dist/src/database/drivers/pgsql/column.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/column.js +66 -0
- package/dist/src/database/drivers/pgsql/columns-index.d.ts +4 -0
- package/dist/src/database/drivers/pgsql/columns-index.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/columns-index.js +4 -0
- package/dist/src/database/drivers/pgsql/foreign-key.d.ts +9 -0
- package/dist/src/database/drivers/pgsql/foreign-key.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/foreign-key.js +10 -0
- package/dist/src/database/drivers/pgsql/index.d.ts +21 -0
- package/dist/src/database/drivers/pgsql/index.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/index.js +211 -0
- package/dist/src/database/drivers/pgsql/options.d.ts +13 -0
- package/dist/src/database/drivers/pgsql/options.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/options.js +26 -0
- package/dist/src/database/drivers/pgsql/query-parser.d.ts +4 -0
- package/dist/src/database/drivers/pgsql/query-parser.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/query-parser.js +4 -0
- package/dist/src/database/drivers/pgsql/sql/alter-table.d.ts +4 -0
- package/dist/src/database/drivers/pgsql/sql/alter-table.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/sql/alter-table.js +4 -0
- package/dist/src/database/drivers/pgsql/sql/create-database.d.ts +4 -0
- package/dist/src/database/drivers/pgsql/sql/create-database.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/sql/create-database.js +33 -0
- package/dist/src/database/drivers/pgsql/sql/create-index.d.ts +4 -0
- package/dist/src/database/drivers/pgsql/sql/create-index.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/sql/create-index.js +4 -0
- package/dist/src/database/drivers/pgsql/sql/create-table.d.ts +4 -0
- package/dist/src/database/drivers/pgsql/sql/create-table.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/sql/create-table.js +4 -0
- package/dist/src/database/drivers/pgsql/sql/delete.d.ts +5 -0
- package/dist/src/database/drivers/pgsql/sql/delete.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/sql/delete.js +17 -0
- package/dist/src/database/drivers/pgsql/sql/drop-table.d.ts +4 -0
- package/dist/src/database/drivers/pgsql/sql/drop-table.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/sql/drop-table.js +4 -0
- package/dist/src/database/drivers/pgsql/sql/insert.d.ts +4 -0
- package/dist/src/database/drivers/pgsql/sql/insert.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/sql/insert.js +4 -0
- package/dist/src/database/drivers/pgsql/sql/update.d.ts +5 -0
- package/dist/src/database/drivers/pgsql/sql/update.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/sql/update.js +27 -0
- package/dist/src/database/drivers/pgsql/table.d.ts +15 -0
- package/dist/src/database/drivers/pgsql/table.d.ts.map +1 -0
- package/dist/src/database/drivers/pgsql/table.js +105 -0
- package/dist/src/database/drivers/sqlite/base.d.ts +41 -0
- package/dist/src/database/drivers/sqlite/base.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/base.js +253 -0
- package/dist/src/database/drivers/sqlite/column.d.ts +19 -0
- package/dist/src/database/drivers/sqlite/column.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/column.js +55 -0
- package/dist/src/database/drivers/sqlite/columns-index.d.ts +6 -0
- package/dist/src/database/drivers/sqlite/columns-index.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/columns-index.js +24 -0
- package/dist/src/database/drivers/sqlite/connection-remote.d.ts +9 -0
- package/dist/src/database/drivers/sqlite/connection-remote.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/connection-remote.js +11 -0
- package/dist/src/database/drivers/sqlite/connection-sql-js.d.ts +19 -0
- package/dist/src/database/drivers/sqlite/connection-sql-js.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/connection-sql-js.js +38 -0
- package/dist/src/database/drivers/sqlite/foreign-key.d.ts +17 -0
- package/dist/src/database/drivers/sqlite/foreign-key.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/foreign-key.js +19 -0
- package/dist/src/database/drivers/sqlite/index.d.ts +8 -0
- package/dist/src/database/drivers/sqlite/index.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/index.js +42 -0
- package/dist/src/database/drivers/sqlite/index.native.d.ts +9 -0
- package/dist/src/database/drivers/sqlite/index.native.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/index.native.js +57 -0
- package/dist/src/database/drivers/sqlite/index.web.d.ts +14 -0
- package/dist/src/database/drivers/sqlite/index.web.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/index.web.js +50 -0
- package/dist/src/database/drivers/sqlite/options.d.ts +13 -0
- package/dist/src/database/drivers/sqlite/options.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/options.js +26 -0
- package/dist/src/database/drivers/sqlite/query-parser.d.ts +4 -0
- package/dist/src/database/drivers/sqlite/query-parser.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/query-parser.js +4 -0
- package/dist/src/database/drivers/sqlite/query.d.ts +7 -0
- package/dist/src/database/drivers/sqlite/query.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/query.js +28 -0
- package/dist/src/database/drivers/sqlite/query.native.d.ts +2 -0
- package/dist/src/database/drivers/sqlite/query.native.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/query.native.js +20 -0
- package/dist/src/database/drivers/sqlite/query.web.d.ts +7 -0
- package/dist/src/database/drivers/sqlite/query.web.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/query.web.js +38 -0
- package/dist/src/database/drivers/sqlite/sql/alter-table.d.ts +6 -0
- package/dist/src/database/drivers/sqlite/sql/alter-table.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/sql/alter-table.js +122 -0
- package/dist/src/database/drivers/sqlite/sql/create-index.d.ts +4 -0
- package/dist/src/database/drivers/sqlite/sql/create-index.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/sql/create-index.js +4 -0
- package/dist/src/database/drivers/sqlite/sql/create-table.d.ts +4 -0
- package/dist/src/database/drivers/sqlite/sql/create-table.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/sql/create-table.js +4 -0
- package/dist/src/database/drivers/sqlite/sql/delete.d.ts +5 -0
- package/dist/src/database/drivers/sqlite/sql/delete.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/sql/delete.js +20 -0
- package/dist/src/database/drivers/sqlite/sql/drop-table.d.ts +4 -0
- package/dist/src/database/drivers/sqlite/sql/drop-table.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/sql/drop-table.js +4 -0
- package/dist/src/database/drivers/sqlite/sql/insert.d.ts +4 -0
- package/dist/src/database/drivers/sqlite/sql/insert.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/sql/insert.js +4 -0
- package/dist/src/database/drivers/sqlite/sql/update.d.ts +5 -0
- package/dist/src/database/drivers/sqlite/sql/update.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/sql/update.js +27 -0
- package/dist/src/database/drivers/sqlite/table.d.ts +21 -0
- package/dist/src/database/drivers/sqlite/table.d.ts.map +1 -0
- package/dist/src/database/drivers/sqlite/table.js +76 -0
- package/dist/src/database/handler.d.ts +7 -0
- package/dist/src/database/handler.d.ts.map +1 -0
- package/dist/src/database/handler.js +10 -0
- package/dist/src/database/initializer-from-require-context.d.ts +26 -0
- package/dist/src/database/initializer-from-require-context.d.ts.map +1 -0
- package/dist/src/database/initializer-from-require-context.js +40 -0
- package/dist/src/database/migration/index.d.ts +152 -0
- package/dist/src/database/migration/index.d.ts.map +1 -0
- package/dist/src/database/migration/index.js +286 -0
- package/dist/src/database/migrator/files-finder.d.ts +15 -0
- package/dist/src/database/migrator/files-finder.d.ts.map +1 -0
- package/dist/src/database/migrator/files-finder.js +40 -0
- package/dist/src/database/migrator/types.d.ts +17 -0
- package/dist/src/database/migrator/types.d.ts.map +1 -0
- package/dist/src/database/migrator/types.js +2 -0
- package/dist/src/database/migrator.d.ts +79 -0
- package/dist/src/database/migrator.d.ts.map +1 -0
- package/dist/src/database/migrator.js +377 -0
- package/dist/src/database/pool/async-tracked-multi-connection.d.ts +11 -0
- package/dist/src/database/pool/async-tracked-multi-connection.d.ts.map +1 -0
- package/dist/src/database/pool/async-tracked-multi-connection.js +80 -0
- package/dist/src/database/pool/base-methods-forward.d.ts +6 -0
- package/dist/src/database/pool/base-methods-forward.d.ts.map +1 -0
- package/dist/src/database/pool/base-methods-forward.js +37 -0
- package/dist/src/database/pool/base.d.ts +76 -0
- package/dist/src/database/pool/base.d.ts.map +1 -0
- package/dist/src/database/pool/base.js +111 -0
- package/dist/src/database/pool/single-multi-use.d.ts +5 -0
- package/dist/src/database/pool/single-multi-use.d.ts.map +1 -0
- package/dist/src/database/pool/single-multi-use.js +35 -0
- package/dist/src/database/query/alter-table-base.d.ts +15 -0
- package/dist/src/database/query/alter-table-base.d.ts.map +1 -0
- package/dist/src/database/query/alter-table-base.js +55 -0
- package/dist/src/database/query/base.d.ts +26 -0
- package/dist/src/database/query/base.d.ts.map +1 -0
- package/dist/src/database/query/base.js +38 -0
- package/dist/src/database/query/create-database-base.d.ts +19 -0
- package/dist/src/database/query/create-database-base.d.ts.map +1 -0
- package/dist/src/database/query/create-database-base.js +29 -0
- package/dist/src/database/query/create-index-base.d.ts +31 -0
- package/dist/src/database/query/create-index-base.d.ts.map +1 -0
- package/dist/src/database/query/create-index-base.js +94 -0
- package/dist/src/database/query/create-table-base.d.ts +25 -0
- package/dist/src/database/query/create-table-base.d.ts.map +1 -0
- package/dist/src/database/query/create-table-base.js +136 -0
- package/dist/src/database/query/delete-base.d.ts +17 -0
- package/dist/src/database/query/delete-base.d.ts.map +1 -0
- package/dist/src/database/query/delete-base.js +15 -0
- package/dist/src/database/query/drop-table-base.d.ts +20 -0
- package/dist/src/database/query/drop-table-base.d.ts.map +1 -0
- package/dist/src/database/query/drop-table-base.js +44 -0
- package/dist/src/database/query/from-base.d.ts +19 -0
- package/dist/src/database/query/from-base.d.ts.map +1 -0
- package/dist/src/database/query/from-base.js +27 -0
- package/dist/src/database/query/from-plain.d.ts +9 -0
- package/dist/src/database/query/from-plain.d.ts.map +1 -0
- package/dist/src/database/query/from-plain.js +12 -0
- package/dist/src/database/query/from-table.d.ts +9 -0
- package/dist/src/database/query/from-table.d.ts.map +1 -0
- package/dist/src/database/query/from-table.js +14 -0
- package/dist/src/database/query/index.d.ts +219 -0
- package/dist/src/database/query/index.d.ts.map +1 -0
- package/dist/src/database/query/index.js +437 -0
- package/dist/src/database/query/insert-base.d.ts +41 -0
- package/dist/src/database/query/insert-base.d.ts.map +1 -0
- package/dist/src/database/query/insert-base.js +135 -0
- package/dist/src/database/query/join-base.d.ts +22 -0
- package/dist/src/database/query/join-base.d.ts.map +1 -0
- package/dist/src/database/query/join-base.js +33 -0
- package/dist/src/database/query/join-object.d.ts +24 -0
- package/dist/src/database/query/join-object.d.ts.map +1 -0
- package/dist/src/database/query/join-object.js +58 -0
- package/dist/src/database/query/join-plain.d.ts +10 -0
- package/dist/src/database/query/join-plain.d.ts.map +1 -0
- package/dist/src/database/query/join-plain.js +14 -0
- package/dist/src/database/query/order-base.d.ts +19 -0
- package/dist/src/database/query/order-base.d.ts.map +1 -0
- package/dist/src/database/query/order-base.js +26 -0
- package/dist/src/database/query/order-plain.d.ts +13 -0
- package/dist/src/database/query/order-plain.d.ts.map +1 -0
- package/dist/src/database/query/order-plain.js +22 -0
- package/dist/src/database/query/preloader/belongs-to.d.ts +15 -0
- package/dist/src/database/query/preloader/belongs-to.d.ts.map +1 -0
- package/dist/src/database/query/preloader/belongs-to.js +48 -0
- package/dist/src/database/query/preloader/has-many.d.ts +15 -0
- package/dist/src/database/query/preloader/has-many.d.ts.map +1 -0
- package/dist/src/database/query/preloader/has-many.js +63 -0
- package/dist/src/database/query/preloader/has-one.d.ts +15 -0
- package/dist/src/database/query/preloader/has-one.d.ts.map +1 -0
- package/dist/src/database/query/preloader/has-one.js +55 -0
- package/dist/src/database/query/preloader.d.ts +18 -0
- package/dist/src/database/query/preloader.d.ts.map +1 -0
- package/dist/src/database/query/preloader.js +52 -0
- package/dist/src/database/query/select-base.d.ts +17 -0
- package/dist/src/database/query/select-base.d.ts.map +1 -0
- package/dist/src/database/query/select-base.js +24 -0
- package/dist/src/database/query/select-plain.d.ts +9 -0
- package/dist/src/database/query/select-plain.d.ts.map +1 -0
- package/dist/src/database/query/select-plain.js +14 -0
- package/dist/src/database/query/select-table-and-column.d.ts +13 -0
- package/dist/src/database/query/select-table-and-column.d.ts.map +1 -0
- package/dist/src/database/query/select-table-and-column.js +22 -0
- package/dist/src/database/query/update-base.d.ts +25 -0
- package/dist/src/database/query/update-base.d.ts.map +1 -0
- package/dist/src/database/query/update-base.js +25 -0
- package/dist/src/database/query/where-base.d.ts +21 -0
- package/dist/src/database/query/where-base.d.ts.map +1 -0
- package/dist/src/database/query/where-base.js +30 -0
- package/dist/src/database/query/where-hash.d.ts +22 -0
- package/dist/src/database/query/where-hash.d.ts.map +1 -0
- package/dist/src/database/query/where-hash.js +56 -0
- package/dist/src/database/query/where-plain.d.ts +10 -0
- package/dist/src/database/query/where-plain.d.ts.map +1 -0
- package/dist/src/database/query/where-plain.js +16 -0
- package/dist/src/database/query-parser/base-query-parser.d.ts +15 -0
- package/dist/src/database/query-parser/base-query-parser.d.ts.map +1 -0
- package/dist/src/database/query-parser/base-query-parser.js +33 -0
- package/dist/src/database/query-parser/from-parser.d.ts +16 -0
- package/dist/src/database/query-parser/from-parser.d.ts.map +1 -0
- package/dist/src/database/query-parser/from-parser.js +35 -0
- package/dist/src/database/query-parser/group-parser.d.ts +18 -0
- package/dist/src/database/query-parser/group-parser.d.ts.map +1 -0
- package/dist/src/database/query-parser/group-parser.js +44 -0
- package/dist/src/database/query-parser/joins-parser.d.ts +16 -0
- package/dist/src/database/query-parser/joins-parser.d.ts.map +1 -0
- package/dist/src/database/query-parser/joins-parser.js +30 -0
- package/dist/src/database/query-parser/limit-parser.d.ts +15 -0
- package/dist/src/database/query-parser/limit-parser.d.ts.map +1 -0
- package/dist/src/database/query-parser/limit-parser.js +56 -0
- package/dist/src/database/query-parser/options.d.ts +58 -0
- package/dist/src/database/query-parser/options.d.ts.map +1 -0
- package/dist/src/database/query-parser/options.js +78 -0
- package/dist/src/database/query-parser/order-parser.d.ts +15 -0
- package/dist/src/database/query-parser/order-parser.d.ts.map +1 -0
- package/dist/src/database/query-parser/order-parser.js +39 -0
- package/dist/src/database/query-parser/select-parser.d.ts +15 -0
- package/dist/src/database/query-parser/select-parser.d.ts.map +1 -0
- package/dist/src/database/query-parser/select-parser.js +49 -0
- package/dist/src/database/query-parser/where-parser.d.ts +15 -0
- package/dist/src/database/query-parser/where-parser.d.ts.map +1 -0
- package/dist/src/database/query-parser/where-parser.js +39 -0
- package/dist/src/database/record/index.d.ts +495 -0
- package/dist/src/database/record/index.d.ts.map +1 -0
- package/dist/src/database/record/index.js +1408 -0
- package/dist/src/database/record/instance-relationships/base.d.ts +74 -0
- package/dist/src/database/record/instance-relationships/base.d.ts.map +1 -0
- package/dist/src/database/record/instance-relationships/base.js +81 -0
- package/dist/src/database/record/instance-relationships/belongs-to.d.ts +4 -0
- package/dist/src/database/record/instance-relationships/belongs-to.d.ts.map +1 -0
- package/dist/src/database/record/instance-relationships/belongs-to.js +28 -0
- package/dist/src/database/record/instance-relationships/has-many.d.ts +8 -0
- package/dist/src/database/record/instance-relationships/has-many.d.ts.map +1 -0
- package/dist/src/database/record/instance-relationships/has-many.js +103 -0
- package/dist/src/database/record/instance-relationships/has-one.d.ts +7 -0
- package/dist/src/database/record/instance-relationships/has-one.d.ts.map +1 -0
- package/dist/src/database/record/instance-relationships/has-one.js +50 -0
- package/dist/src/database/record/record-not-found-error.d.ts +3 -0
- package/dist/src/database/record/record-not-found-error.d.ts.map +1 -0
- package/dist/src/database/record/record-not-found-error.js +3 -0
- package/dist/src/database/record/relationships/base.d.ts +68 -0
- package/dist/src/database/record/relationships/base.d.ts.map +1 -0
- package/dist/src/database/record/relationships/base.js +79 -0
- package/dist/src/database/record/relationships/belongs-to.d.ts +5 -0
- package/dist/src/database/record/relationships/belongs-to.d.ts.map +1 -0
- package/dist/src/database/record/relationships/belongs-to.js +37 -0
- package/dist/src/database/record/relationships/has-many.d.ts +5 -0
- package/dist/src/database/record/relationships/has-many.d.ts.map +1 -0
- package/dist/src/database/record/relationships/has-many.js +30 -0
- package/dist/src/database/record/relationships/has-one.d.ts +5 -0
- package/dist/src/database/record/relationships/has-one.d.ts.map +1 -0
- package/dist/src/database/record/relationships/has-one.js +30 -0
- package/dist/src/database/record/user-module.d.ts +15 -0
- package/dist/src/database/record/user-module.d.ts.map +1 -0
- package/dist/src/database/record/user-module.js +34 -0
- package/dist/src/database/record/validators/base.d.ts +25 -0
- package/dist/src/database/record/validators/base.d.ts.map +1 -0
- package/dist/src/database/record/validators/base.js +22 -0
- package/dist/src/database/record/validators/presence.d.ts +4 -0
- package/dist/src/database/record/validators/presence.d.ts.map +1 -0
- package/dist/src/database/record/validators/presence.js +17 -0
- package/dist/src/database/record/validators/uniqueness.d.ts +4 -0
- package/dist/src/database/record/validators/uniqueness.d.ts.map +1 -0
- package/dist/src/database/record/validators/uniqueness.js +33 -0
- package/dist/src/database/table-data/index.d.ts +141 -0
- package/dist/src/database/table-data/index.d.ts.map +1 -0
- package/dist/src/database/table-data/index.js +167 -0
- package/dist/src/database/table-data/table-column.d.ts +153 -0
- package/dist/src/database/table-data/table-column.d.ts.map +1 -0
- package/dist/src/database/table-data/table-column.js +246 -0
- package/dist/src/database/table-data/table-foreign-key.d.ts +55 -0
- package/dist/src/database/table-data/table-foreign-key.d.ts.map +1 -0
- package/dist/src/database/table-data/table-foreign-key.js +51 -0
- package/dist/src/database/table-data/table-index.d.ts +31 -0
- package/dist/src/database/table-data/table-index.d.ts.map +1 -0
- package/dist/src/database/table-data/table-index.js +33 -0
- package/dist/src/database/table-data/table-reference.d.ts +10 -0
- package/dist/src/database/table-data/table-reference.d.ts.map +1 -0
- package/dist/src/database/table-data/table-reference.js +11 -0
- package/dist/src/database/use-database.d.ts +11 -0
- package/dist/src/database/use-database.d.ts.map +1 -0
- package/dist/src/database/use-database.js +39 -0
- package/dist/src/environment-handlers/base.d.ts +128 -0
- package/dist/src/environment-handlers/base.d.ts.map +1 -0
- package/dist/src/environment-handlers/base.js +136 -0
- package/dist/src/environment-handlers/browser.d.ts +65 -0
- package/dist/src/environment-handlers/browser.d.ts.map +1 -0
- package/dist/src/environment-handlers/browser.js +160 -0
- package/dist/src/environment-handlers/node/cli/commands/destroy/migration.d.ts +14 -0
- package/dist/src/environment-handlers/node/cli/commands/destroy/migration.d.ts.map +1 -0
- package/dist/src/environment-handlers/node/cli/commands/destroy/migration.js +34 -0
- package/dist/src/environment-handlers/node/cli/commands/generate/base-models.d.ts +10 -0
- package/dist/src/environment-handlers/node/cli/commands/generate/base-models.d.ts.map +1 -0
- package/dist/src/environment-handlers/node/cli/commands/generate/base-models.js +219 -0
- package/dist/src/environment-handlers/node/cli/commands/generate/migration.d.ts +19 -0
- package/dist/src/environment-handlers/node/cli/commands/generate/migration.d.ts.map +1 -0
- package/dist/src/environment-handlers/node/cli/commands/generate/migration.js +36 -0
- package/dist/src/environment-handlers/node/cli/commands/generate/model.d.ts +18 -0
- package/dist/src/environment-handlers/node/cli/commands/generate/model.d.ts.map +1 -0
- package/dist/src/environment-handlers/node/cli/commands/generate/model.js +36 -0
- package/dist/src/environment-handlers/node/cli/commands/init.d.ts +18 -0
- package/dist/src/environment-handlers/node/cli/commands/init.d.ts.map +1 -0
- package/dist/src/environment-handlers/node/cli/commands/init.js +60 -0
- package/dist/src/environment-handlers/node/cli/commands/server.d.ts +11 -0
- package/dist/src/environment-handlers/node/cli/commands/server.d.ts.map +1 -0
- package/dist/src/environment-handlers/node/cli/commands/server.js +26 -0
- package/dist/src/environment-handlers/node/cli/commands/test.d.ts +5 -0
- package/dist/src/environment-handlers/node/cli/commands/test.d.ts.map +1 -0
- package/dist/src/environment-handlers/node/cli/commands/test.js +41 -0
- package/dist/src/environment-handlers/node.d.ts +47 -0
- package/dist/src/environment-handlers/node.d.ts.map +1 -0
- package/dist/src/environment-handlers/node.js +188 -0
- package/dist/src/error-logger.d.ts +5 -0
- package/dist/src/error-logger.d.ts.map +1 -0
- package/dist/src/error-logger.js +32 -0
- package/dist/src/http-client/header.d.ts +13 -0
- package/dist/src/http-client/header.d.ts.map +1 -0
- package/dist/src/http-client/header.js +14 -0
- package/dist/src/http-client/index.d.ts +57 -0
- package/dist/src/http-client/index.d.ts.map +1 -0
- package/dist/src/http-client/index.js +118 -0
- package/dist/src/http-client/request.d.ts +39 -0
- package/dist/src/http-client/request.d.ts.map +1 -0
- package/dist/src/http-client/request.js +66 -0
- package/dist/src/http-client/response.d.ts +31 -0
- package/dist/src/http-client/response.d.ts.map +1 -0
- package/dist/src/http-client/response.js +119 -0
- package/dist/src/http-server/client/index.d.ts +37 -0
- package/dist/src/http-server/client/index.d.ts.map +1 -0
- package/dist/src/http-server/client/index.js +116 -0
- package/dist/src/http-server/client/params-to-object.d.ts +21 -0
- package/dist/src/http-server/client/params-to-object.d.ts.map +1 -0
- package/dist/src/http-server/client/params-to-object.js +80 -0
- package/dist/src/http-server/client/request-buffer/form-data-part.d.ts +21 -0
- package/dist/src/http-server/client/request-buffer/form-data-part.d.ts.map +1 -0
- package/dist/src/http-server/client/request-buffer/form-data-part.js +45 -0
- package/dist/src/http-server/client/request-buffer/header.d.ts +15 -0
- package/dist/src/http-server/client/request-buffer/header.d.ts.map +1 -0
- package/dist/src/http-server/client/request-buffer/header.js +16 -0
- package/dist/src/http-server/client/request-buffer/index.d.ts +95 -0
- package/dist/src/http-server/client/request-buffer/index.d.ts.map +1 -0
- package/dist/src/http-server/client/request-buffer/index.js +305 -0
- package/dist/src/http-server/client/request-parser.d.ts +52 -0
- package/dist/src/http-server/client/request-parser.d.ts.map +1 -0
- package/dist/src/http-server/client/request-parser.js +98 -0
- package/dist/src/http-server/client/request-runner.d.ts +24 -0
- package/dist/src/http-server/client/request-runner.d.ts.map +1 -0
- package/dist/src/http-server/client/request-runner.js +58 -0
- package/dist/src/http-server/client/request.d.ts +39 -0
- package/dist/src/http-server/client/request.d.ts.map +1 -0
- package/dist/src/http-server/client/request.js +54 -0
- package/dist/src/http-server/client/response.d.ts +56 -0
- package/dist/src/http-server/client/response.d.ts.map +1 -0
- package/dist/src/http-server/client/response.js +90 -0
- package/dist/src/http-server/index.d.ts +58 -0
- package/dist/src/http-server/index.d.ts.map +1 -0
- package/dist/src/http-server/index.js +147 -0
- package/dist/src/http-server/server-client.d.ts +43 -0
- package/dist/src/http-server/server-client.d.ts.map +1 -0
- package/dist/src/http-server/server-client.js +70 -0
- package/dist/src/http-server/worker-handler/index.d.ts +49 -0
- package/dist/src/http-server/worker-handler/index.d.ts.map +1 -0
- package/dist/src/http-server/worker-handler/index.js +104 -0
- package/dist/src/http-server/worker-handler/worker-script.d.ts +2 -0
- package/dist/src/http-server/worker-handler/worker-script.d.ts.map +1 -0
- package/dist/src/http-server/worker-handler/worker-script.js +4 -0
- package/dist/src/http-server/worker-handler/worker-thread.d.ts +47 -0
- package/dist/src/http-server/worker-handler/worker-thread.d.ts.map +1 -0
- package/dist/src/http-server/worker-handler/worker-thread.js +88 -0
- package/dist/src/initializer.d.ts +27 -0
- package/dist/src/initializer.d.ts.map +1 -0
- package/dist/src/initializer.js +29 -0
- package/dist/src/logger.d.ts +39 -0
- package/dist/src/logger.d.ts.map +1 -0
- package/dist/src/logger.js +154 -0
- package/dist/src/routes/app-routes.d.ts +8 -0
- package/dist/src/routes/app-routes.d.ts.map +1 -0
- package/dist/src/routes/app-routes.js +13 -0
- package/dist/src/routes/base-route.d.ts +60 -0
- package/dist/src/routes/base-route.d.ts.map +1 -0
- package/dist/src/routes/base-route.js +67 -0
- package/dist/src/routes/basic-route.d.ts +10 -0
- package/dist/src/routes/basic-route.d.ts.map +1 -0
- package/dist/src/routes/basic-route.js +61 -0
- package/dist/src/routes/built-in/errors/controller.d.ts +5 -0
- package/dist/src/routes/built-in/errors/controller.d.ts.map +1 -0
- package/dist/src/routes/built-in/errors/controller.js +6 -0
- package/dist/src/routes/get-route.d.ts +14 -0
- package/dist/src/routes/get-route.d.ts.map +1 -0
- package/dist/src/routes/get-route.js +33 -0
- package/dist/src/routes/index.d.ts +10 -0
- package/dist/src/routes/index.d.ts.map +1 -0
- package/dist/src/routes/index.js +16 -0
- package/dist/src/routes/namespace-route.d.ts +14 -0
- package/dist/src/routes/namespace-route.d.ts.map +1 -0
- package/dist/src/routes/namespace-route.js +34 -0
- package/dist/src/routes/post-route.d.ts +14 -0
- package/dist/src/routes/post-route.d.ts.map +1 -0
- package/dist/src/routes/post-route.js +33 -0
- package/dist/src/routes/resolver.d.ts +27 -0
- package/dist/src/routes/resolver.d.ts.map +1 -0
- package/dist/src/routes/resolver.js +92 -0
- package/dist/src/routes/resource-route.d.ts +14 -0
- package/dist/src/routes/resource-route.d.ts.map +1 -0
- package/dist/src/routes/resource-route.js +51 -0
- package/dist/src/routes/root-route.d.ts +4 -0
- package/dist/src/routes/root-route.d.ts.map +1 -0
- package/dist/src/routes/root-route.js +4 -0
- package/dist/src/testing/request-client.d.ts +35 -0
- package/dist/src/testing/request-client.d.ts.map +1 -0
- package/dist/src/testing/request-client.js +61 -0
- package/dist/src/testing/test-files-finder.d.ts +64 -0
- package/dist/src/testing/test-files-finder.d.ts.map +1 -0
- package/dist/src/testing/test-files-finder.js +159 -0
- package/dist/src/testing/test-runner.d.ts +163 -0
- package/dist/src/testing/test-runner.d.ts.map +1 -0
- package/dist/src/testing/test-runner.js +257 -0
- package/dist/src/testing/test.d.ts +157 -0
- package/dist/src/testing/test.d.ts.map +1 -0
- package/dist/src/testing/test.js +408 -0
- package/dist/src/utils/backtrace-cleaner.d.ts +17 -0
- package/dist/src/utils/backtrace-cleaner.d.ts.map +1 -0
- package/dist/src/utils/backtrace-cleaner.js +23 -0
- package/dist/src/utils/ensure-error.d.ts +6 -0
- package/dist/src/utils/ensure-error.d.ts.map +1 -0
- package/dist/src/utils/ensure-error.js +13 -0
- package/dist/src/utils/file-exists.d.ts +6 -0
- package/dist/src/utils/file-exists.d.ts.map +1 -0
- package/dist/src/utils/file-exists.js +15 -0
- package/dist/src/utils/nest-callbacks.d.ts +2 -0
- package/dist/src/utils/nest-callbacks.d.ts.map +1 -0
- package/dist/src/utils/nest-callbacks.js +11 -0
- package/dist/src/utils/rest-args-error.d.ts +6 -0
- package/dist/src/utils/rest-args-error.d.ts.map +1 -0
- package/dist/src/utils/rest-args-error.js +11 -0
- package/dist/src/utils/with-tracked-stack-async-hooks.d.ts +10 -0
- package/dist/src/utils/with-tracked-stack-async-hooks.d.ts.map +1 -0
- package/dist/src/utils/with-tracked-stack-async-hooks.js +69 -0
- package/dist/src/utils/with-tracked-stack.d.ts +8 -0
- package/dist/src/utils/with-tracked-stack.d.ts.map +1 -0
- package/dist/src/utils/with-tracked-stack.js +26 -0
- package/package.json +7 -3
- package/.github/dependabot.yml +0 -9
- package/bin/velocious.js +0 -34
- package/eslint.config.js +0 -34
- package/index.js +0 -1
- package/peak_flow.yml +0 -89
- package/run-tests.sh +0 -4
- package/spec/cli/commands/db/create-spec.js +0 -58
- package/spec/cli/commands/db/migrate-spec.js +0 -160
- package/spec/cli/commands/db/rollback-spec.js +0 -179
- package/spec/cli/commands/destroy/migration-spec.js +0 -19
- package/spec/cli/commands/generate/migration-spec.js +0 -22
- package/spec/cli/commands/init-spec.js +0 -23
- package/spec/cli/commands/test/test-files-finder-spec.js +0 -15
- package/spec/database/connection/drivers/mysql/query-parser-spec.js +0 -41
- package/spec/database/drivers/columns-spec.js +0 -27
- package/spec/database/drivers/create-sql/create-index-sql-spec.js +0 -24
- package/spec/database/drivers/mysql/connection-spec.js +0 -22
- package/spec/database/migration/column-exists-spec.js +0 -28
- package/spec/database/record/create-spec.js +0 -140
- package/spec/database/record/destroy-spec.js +0 -35
- package/spec/database/record/find-or-create-spec.js +0 -59
- package/spec/database/record/find-spec.js +0 -32
- package/spec/database/record/instance-relationships/belongs-to-relationship-spec.js +0 -21
- package/spec/database/record/instance-relationships/has-many-relationship-spec.js +0 -24
- package/spec/database/record/instance-relationships/has-one-relationship-spec.js +0 -24
- package/spec/database/record/last-spec.js +0 -29
- package/spec/database/record/preloader/belongs-to-spec.js +0 -15
- package/spec/database/record/preloader/has-many-spec.js +0 -29
- package/spec/database/record/preloader/has-one-spec.js +0 -15
- package/spec/database/record/query-spec.js +0 -120
- package/spec/database/record/translation-fallbacks-spec.js +0 -24
- package/spec/database/record/translations-spec.js +0 -10
- package/spec/database/record/update-spec.js +0 -31
- package/spec/database/record/validations-spec.js +0 -42
- package/spec/database/transactions-spec.js +0 -47
- package/spec/dummy/db/.keep +0 -0
- package/spec/dummy/dummy-directory.js +0 -13
- package/spec/dummy/index.js +0 -83
- package/spec/dummy/src/config/configuration.example.js +0 -70
- package/spec/dummy/src/config/configuration.peakflow.mariadb.js +0 -65
- package/spec/dummy/src/config/configuration.peakflow.mssql.js +0 -71
- package/spec/dummy/src/config/configuration.peakflow.pgsql.js +0 -65
- package/spec/dummy/src/config/configuration.peakflow.sqlite.js +0 -62
- package/spec/dummy/src/config/routes.js +0 -15
- package/spec/dummy/src/config/testing.js +0 -34
- package/spec/dummy/src/database/migrations/20230728075328-create-projects.js +0 -10
- package/spec/dummy/src/database/migrations/20230728075329-create-tasks.js +0 -12
- package/spec/dummy/src/database/migrations/20250605133926-create-project-translations.js +0 -16
- package/spec/dummy/src/database/migrations/20250903112845-create-accounts.js +0 -18
- package/spec/dummy/src/database/migrations/20250912183605-create-users.js +0 -16
- package/spec/dummy/src/database/migrations/20250912183606-create-authentication-tokens.js +0 -15
- package/spec/dummy/src/database/migrations/20250915085450-change-authentication-tokens-user-id-nullable.js +0 -11
- package/spec/dummy/src/database/migrations/20250916111330-rename_authentication_tokens_token_to_user_token.js +0 -11
- package/spec/dummy/src/database/migrations/20250921121002-create-project-details.js +0 -17
- package/spec/dummy/src/model-bases/account.js +0 -67
- package/spec/dummy/src/model-bases/authentication-token.js +0 -108
- package/spec/dummy/src/model-bases/project-detail.js +0 -101
- package/spec/dummy/src/model-bases/project-translation.js +0 -124
- package/spec/dummy/src/model-bases/project.js +0 -196
- package/spec/dummy/src/model-bases/task.js +0 -117
- package/spec/dummy/src/model-bases/user.js +0 -170
- package/spec/dummy/src/models/account.js +0 -8
- package/spec/dummy/src/models/authentication-token.js +0 -8
- package/spec/dummy/src/models/project-detail.js +0 -8
- package/spec/dummy/src/models/project.js +0 -11
- package/spec/dummy/src/models/task.js +0 -9
- package/spec/dummy/src/models/user.js +0 -18
- package/spec/dummy/src/routes/_root/controller.js +0 -11
- package/spec/dummy/src/routes/projects/controller.js +0 -33
- package/spec/dummy/src/routes/tasks/controller.js +0 -25
- package/spec/dummy/src/routes/tasks/index.ejs +0 -1
- package/spec/dummy/src/routes/tasks/show.ejs +0 -0
- package/spec/http-server/client-spec.js +0 -37
- package/spec/http-server/get-spec.js +0 -86
- package/spec/http-server/post-spec.js +0 -93
- package/spec/http-server/root-get-spec.js +0 -31
- package/src/application.js +0 -123
- package/src/cli/base-command.js +0 -40
- package/src/cli/browser-cli.js +0 -37
- package/src/cli/commands/db/create.js +0 -72
- package/src/cli/commands/db/drop.js +0 -18
- package/src/cli/commands/db/migrate.js +0 -17
- package/src/cli/commands/db/reset.js +0 -22
- package/src/cli/commands/db/rollback.js +0 -15
- package/src/cli/commands/destroy/migration.js +0 -7
- package/src/cli/commands/generate/base-models.js +0 -7
- package/src/cli/commands/generate/migration.js +0 -7
- package/src/cli/commands/generate/model.js +0 -7
- package/src/cli/commands/init.js +0 -11
- package/src/cli/commands/server.js +0 -7
- package/src/cli/commands/test.js +0 -7
- package/src/cli/index.js +0 -39
- package/src/cli/use-browser-cli.js +0 -27
- package/src/configuration-resolver.js +0 -61
- package/src/configuration-types.js +0 -61
- package/src/configuration.js +0 -395
- package/src/controller.js +0 -166
- package/src/database/drivers/base-column.js +0 -141
- package/src/database/drivers/base-columns-index.js +0 -72
- package/src/database/drivers/base-foreign-key.js +0 -91
- package/src/database/drivers/base-table.js +0 -129
- package/src/database/drivers/base.js +0 -751
- package/src/database/drivers/mssql/column.js +0 -72
- package/src/database/drivers/mssql/columns-index.js +0 -6
- package/src/database/drivers/mssql/connect-connection.js +0 -12
- package/src/database/drivers/mssql/foreign-key.js +0 -12
- package/src/database/drivers/mssql/index.js +0 -357
- package/src/database/drivers/mssql/options.js +0 -72
- package/src/database/drivers/mssql/query-parser.js +0 -6
- package/src/database/drivers/mssql/sql/alter-table.js +0 -4
- package/src/database/drivers/mssql/sql/create-database.js +0 -35
- package/src/database/drivers/mssql/sql/create-index.js +0 -4
- package/src/database/drivers/mssql/sql/create-table.js +0 -4
- package/src/database/drivers/mssql/sql/delete.js +0 -19
- package/src/database/drivers/mssql/sql/drop-table.js +0 -4
- package/src/database/drivers/mssql/sql/insert.js +0 -4
- package/src/database/drivers/mssql/sql/update.js +0 -31
- package/src/database/drivers/mssql/table.js +0 -132
- package/src/database/drivers/mysql/column.js +0 -105
- package/src/database/drivers/mysql/columns-index.js +0 -6
- package/src/database/drivers/mysql/foreign-key.js +0 -12
- package/src/database/drivers/mysql/index.js +0 -275
- package/src/database/drivers/mysql/options.js +0 -31
- package/src/database/drivers/mysql/query-parser.js +0 -6
- package/src/database/drivers/mysql/query.js +0 -31
- package/src/database/drivers/mysql/sql/alter-table.js +0 -6
- package/src/database/drivers/mysql/sql/create-database.js +0 -6
- package/src/database/drivers/mysql/sql/create-index.js +0 -6
- package/src/database/drivers/mysql/sql/create-table.js +0 -6
- package/src/database/drivers/mysql/sql/delete.js +0 -21
- package/src/database/drivers/mysql/sql/drop-table.js +0 -6
- package/src/database/drivers/mysql/sql/insert.js +0 -6
- package/src/database/drivers/mysql/sql/update.js +0 -33
- package/src/database/drivers/mysql/table.js +0 -96
- package/src/database/drivers/pgsql/column.js +0 -81
- package/src/database/drivers/pgsql/columns-index.js +0 -6
- package/src/database/drivers/pgsql/foreign-key.js +0 -12
- package/src/database/drivers/pgsql/index.js +0 -250
- package/src/database/drivers/pgsql/options.js +0 -30
- package/src/database/drivers/pgsql/query-parser.js +0 -6
- package/src/database/drivers/pgsql/sql/alter-table.js +0 -6
- package/src/database/drivers/pgsql/sql/create-database.js +0 -38
- package/src/database/drivers/pgsql/sql/create-index.js +0 -6
- package/src/database/drivers/pgsql/sql/create-table.js +0 -6
- package/src/database/drivers/pgsql/sql/delete.js +0 -21
- package/src/database/drivers/pgsql/sql/drop-table.js +0 -6
- package/src/database/drivers/pgsql/sql/insert.js +0 -6
- package/src/database/drivers/pgsql/sql/update.js +0 -33
- package/src/database/drivers/pgsql/table.js +0 -123
- package/src/database/drivers/sqlite/base.js +0 -303
- package/src/database/drivers/sqlite/column.js +0 -70
- package/src/database/drivers/sqlite/columns-index.js +0 -30
- package/src/database/drivers/sqlite/connection-remote.js +0 -12
- package/src/database/drivers/sqlite/connection-sql-js.js +0 -49
- package/src/database/drivers/sqlite/foreign-key.js +0 -22
- package/src/database/drivers/sqlite/index.js +0 -52
- package/src/database/drivers/sqlite/index.native.js +0 -68
- package/src/database/drivers/sqlite/index.web.js +0 -63
- package/src/database/drivers/sqlite/options.js +0 -30
- package/src/database/drivers/sqlite/query-parser.js +0 -6
- package/src/database/drivers/sqlite/query.js +0 -32
- package/src/database/drivers/sqlite/query.native.js +0 -25
- package/src/database/drivers/sqlite/query.web.js +0 -46
- package/src/database/drivers/sqlite/sql/alter-table.js +0 -153
- package/src/database/drivers/sqlite/sql/create-index.js +0 -6
- package/src/database/drivers/sqlite/sql/create-table.js +0 -6
- package/src/database/drivers/sqlite/sql/delete.js +0 -26
- package/src/database/drivers/sqlite/sql/drop-table.js +0 -6
- package/src/database/drivers/sqlite/sql/insert.js +0 -6
- package/src/database/drivers/sqlite/sql/update.js +0 -33
- package/src/database/drivers/sqlite/table.js +0 -97
- package/src/database/handler.js +0 -12
- package/src/database/initializer-from-require-context.js +0 -50
- package/src/database/migration/index.js +0 -345
- package/src/database/migrator/files-finder.js +0 -51
- package/src/database/migrator/types.js +0 -31
- package/src/database/migrator.js +0 -434
- package/src/database/pool/async-tracked-multi-connection.js +0 -103
- package/src/database/pool/base-methods-forward.js +0 -40
- package/src/database/pool/base.js +0 -133
- package/src/database/pool/single-multi-use.js +0 -43
- package/src/database/query/alter-table-base.js +0 -62
- package/src/database/query/base.js +0 -46
- package/src/database/query/create-database-base.js +0 -35
- package/src/database/query/create-index-base.js +0 -114
- package/src/database/query/create-table-base.js +0 -169
- package/src/database/query/delete-base.js +0 -17
- package/src/database/query/drop-table-base.js +0 -56
- package/src/database/query/from-base.js +0 -31
- package/src/database/query/from-plain.js +0 -15
- package/src/database/query/from-table.js +0 -17
- package/src/database/query/index.js +0 -530
- package/src/database/query/insert-base.js +0 -156
- package/src/database/query/join-base.js +0 -39
- package/src/database/query/join-object.js +0 -67
- package/src/database/query/join-plain.js +0 -17
- package/src/database/query/order-base.js +0 -30
- package/src/database/query/order-plain.js +0 -27
- package/src/database/query/preloader/belongs-to.js +0 -63
- package/src/database/query/preloader/has-many.js +0 -83
- package/src/database/query/preloader/has-one.js +0 -74
- package/src/database/query/preloader.js +0 -61
- package/src/database/query/select-base.js +0 -27
- package/src/database/query/select-plain.js +0 -17
- package/src/database/query/select-table-and-column.js +0 -27
- package/src/database/query/update-base.js +0 -28
- package/src/database/query/where-base.js +0 -34
- package/src/database/query/where-hash.js +0 -66
- package/src/database/query/where-plain.js +0 -19
- package/src/database/query-parser/base-query-parser.js +0 -39
- package/src/database/query-parser/from-parser.js +0 -45
- package/src/database/query-parser/group-parser.js +0 -53
- package/src/database/query-parser/joins-parser.js +0 -36
- package/src/database/query-parser/limit-parser.js +0 -61
- package/src/database/query-parser/options.js +0 -85
- package/src/database/query-parser/order-parser.js +0 -44
- package/src/database/query-parser/select-parser.js +0 -60
- package/src/database/query-parser/where-parser.js +0 -45
- package/src/database/record/index.js +0 -1682
- package/src/database/record/instance-relationships/base.js +0 -103
- package/src/database/record/instance-relationships/belongs-to.js +0 -37
- package/src/database/record/instance-relationships/has-many.js +0 -116
- package/src/database/record/instance-relationships/has-one.js +0 -66
- package/src/database/record/record-not-found-error.js +0 -3
- package/src/database/record/relationships/base.js +0 -91
- package/src/database/record/relationships/belongs-to.js +0 -46
- package/src/database/record/relationships/has-many.js +0 -39
- package/src/database/record/relationships/has-one.js +0 -39
- package/src/database/record/user-module.js +0 -41
- package/src/database/record/validators/base.js +0 -24
- package/src/database/record/validators/presence.js +0 -20
- package/src/database/record/validators/uniqueness.js +0 -42
- package/src/database/table-data/index.js +0 -199
- package/src/database/table-data/table-column.js +0 -283
- package/src/database/table-data/table-foreign-key.js +0 -61
- package/src/database/table-data/table-index.js +0 -41
- package/src/database/table-data/table-reference.js +0 -12
- package/src/database/use-database.js +0 -48
- package/src/environment-handlers/base.js +0 -158
- package/src/environment-handlers/browser.js +0 -193
- package/src/environment-handlers/node/cli/commands/destroy/migration.js +0 -42
- package/src/environment-handlers/node/cli/commands/generate/base-models.js +0 -258
- package/src/environment-handlers/node/cli/commands/generate/migration.js +0 -40
- package/src/environment-handlers/node/cli/commands/generate/model.js +0 -40
- package/src/environment-handlers/node/cli/commands/init.js +0 -66
- package/src/environment-handlers/node/cli/commands/server.js +0 -30
- package/src/environment-handlers/node/cli/commands/test.js +0 -47
- package/src/environment-handlers/node.js +0 -227
- package/src/error-logger.js +0 -32
- package/src/http-client/header.js +0 -16
- package/src/http-client/index.js +0 -135
- package/src/http-client/request.js +0 -83
- package/src/http-client/response.js +0 -136
- package/src/http-server/client/index.js +0 -137
- package/src/http-server/client/params-to-object.js +0 -88
- package/src/http-server/client/request-buffer/form-data-part.js +0 -53
- package/src/http-server/client/request-buffer/header.js +0 -18
- package/src/http-server/client/request-buffer/index.js +0 -345
- package/src/http-server/client/request-parser.js +0 -118
- package/src/http-server/client/request-runner.js +0 -68
- package/src/http-server/client/request.js +0 -63
- package/src/http-server/client/response.js +0 -100
- package/src/http-server/index.js +0 -180
- package/src/http-server/server-client.js +0 -81
- package/src/http-server/worker-handler/index.js +0 -120
- package/src/http-server/worker-handler/worker-script.js +0 -6
- package/src/http-server/worker-handler/worker-thread.js +0 -106
- package/src/initializer.js +0 -35
- package/src/logger.js +0 -174
- package/src/routes/app-routes.js +0 -16
- package/src/routes/base-route.js +0 -82
- package/src/routes/basic-route.js +0 -76
- package/src/routes/built-in/errors/controller.js +0 -7
- package/src/routes/built-in/errors/not-found.ejs +0 -1
- package/src/routes/get-route.js +0 -42
- package/src/routes/index.js +0 -19
- package/src/routes/namespace-route.js +0 -42
- package/src/routes/post-route.js +0 -41
- package/src/routes/resolver.js +0 -102
- package/src/routes/resource-route.js +0 -61
- package/src/routes/root-route.js +0 -6
- package/src/templates/configuration.js +0 -60
- package/src/templates/generate-migration.js +0 -11
- package/src/templates/generate-model.js +0 -6
- package/src/templates/routes.js +0 -11
- package/src/testing/request-client.js +0 -77
- package/src/testing/test-files-finder.js +0 -191
- package/src/testing/test-runner.js +0 -301
- package/src/testing/test.js +0 -462
- package/src/utils/backtrace-cleaner.js +0 -27
- package/src/utils/ensure-error.js +0 -13
- package/src/utils/file-exists.js +0 -17
- package/src/utils/nest-callbacks.js +0 -15
- package/src/utils/rest-args-error.js +0 -13
- package/src/utils/with-tracked-stack-async-hooks.js +0 -85
- package/src/utils/with-tracked-stack.js +0 -30
- package/tsconfig.json +0 -15
package/src/http-server/index.js
DELETED
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
// @ts-check
|
|
2
|
-
|
|
3
|
-
import {digg} from "diggerize"
|
|
4
|
-
import EventEmitter from "events"
|
|
5
|
-
import {Logger} from "../logger.js"
|
|
6
|
-
import Net from "net"
|
|
7
|
-
import ServerClient from "./server-client.js"
|
|
8
|
-
import WorkerHandler from "./worker-handler/index.js"
|
|
9
|
-
|
|
10
|
-
export default class VelociousHttpServer {
|
|
11
|
-
clientCount = 0
|
|
12
|
-
|
|
13
|
-
/** @type {Record<string, ServerClient>} */
|
|
14
|
-
clients = {}
|
|
15
|
-
|
|
16
|
-
events = new EventEmitter()
|
|
17
|
-
workerCount = 0
|
|
18
|
-
|
|
19
|
-
/** @type {WorkerHandler[]} */
|
|
20
|
-
workerHandlers = []
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* @param {object} args
|
|
24
|
-
* @param {import("../configuration.js").default} args.configuration
|
|
25
|
-
* @param {string} [args.host]
|
|
26
|
-
* @param {number} [args.port]
|
|
27
|
-
* @param {number} [args.maxWorkers]
|
|
28
|
-
*/
|
|
29
|
-
constructor({configuration, host, maxWorkers, port}) {
|
|
30
|
-
this.configuration = configuration
|
|
31
|
-
this.logger = new Logger(this)
|
|
32
|
-
this.host = host || "0.0.0.0"
|
|
33
|
-
this.port = port || 3006
|
|
34
|
-
this.maxWorkers = maxWorkers || 16
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* @returns {Promise<void>}
|
|
39
|
-
*/
|
|
40
|
-
async start() {
|
|
41
|
-
await this._ensureAtLeastOneWorker()
|
|
42
|
-
this.netServer = new Net.Server()
|
|
43
|
-
this.netServer.on("close", this.onClose)
|
|
44
|
-
this.netServer.on("connection", this.onConnection)
|
|
45
|
-
await this._netServerListen()
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
_netServerListen() {
|
|
49
|
-
return new Promise((resolve, reject) => {
|
|
50
|
-
if (!this.netServer) throw new Error("No netServer")
|
|
51
|
-
|
|
52
|
-
try {
|
|
53
|
-
this.netServer.listen(this.port, this.host, () => {
|
|
54
|
-
this.logger.debug(`Velocious listening on ${this.host}:${this.port}`)
|
|
55
|
-
resolve(null)
|
|
56
|
-
})
|
|
57
|
-
} catch (error) {
|
|
58
|
-
reject(error)
|
|
59
|
-
}
|
|
60
|
-
})
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
async _ensureAtLeastOneWorker() {
|
|
64
|
-
if (this.workerHandlers.length == 0) {
|
|
65
|
-
await this.spawnWorker()
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
/**
|
|
70
|
-
* @returns {boolean}
|
|
71
|
-
*/
|
|
72
|
-
isActive() {
|
|
73
|
-
if (this.netServer) {
|
|
74
|
-
return this.netServer.listening
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
return false
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
async stopClients() {
|
|
81
|
-
const promises = []
|
|
82
|
-
|
|
83
|
-
for (const clientCount in this.clients) {
|
|
84
|
-
const client = this.clients[clientCount]
|
|
85
|
-
|
|
86
|
-
promises.push(client.end())
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
await Promise.all(promises)
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
stopServer() {
|
|
93
|
-
return new Promise((resolve, reject) => {
|
|
94
|
-
if (!this.netServer) throw new Error("No netServer to stop")
|
|
95
|
-
|
|
96
|
-
this.netServer.close((error) => {
|
|
97
|
-
if (error) {
|
|
98
|
-
reject(error)
|
|
99
|
-
} else {
|
|
100
|
-
resolve(null)
|
|
101
|
-
}
|
|
102
|
-
})
|
|
103
|
-
})
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
async stop() {
|
|
107
|
-
await this.stopClients()
|
|
108
|
-
await this.stopServer()
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
onClose = () => {
|
|
112
|
-
this.events.emit("close")
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
/**
|
|
116
|
-
* @param {import("net").Socket} socket
|
|
117
|
-
*/
|
|
118
|
-
onConnection = (socket) => {
|
|
119
|
-
const clientCount = this.clientCount
|
|
120
|
-
|
|
121
|
-
this.logger.debug(`New client ${clientCount}`)
|
|
122
|
-
this.clientCount++
|
|
123
|
-
|
|
124
|
-
const workerHandler = this.workerHandlerToUse()
|
|
125
|
-
const client = new ServerClient({
|
|
126
|
-
clientCount,
|
|
127
|
-
configuration: this.configuration,
|
|
128
|
-
socket
|
|
129
|
-
})
|
|
130
|
-
|
|
131
|
-
client.events.on("close", this.onClientClose)
|
|
132
|
-
|
|
133
|
-
this.logger.debug(`Gave client ${clientCount} to worker ${workerHandler.workerCount}`)
|
|
134
|
-
workerHandler.addSocketConnection(client)
|
|
135
|
-
this.clients[clientCount] = client
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
/**
|
|
139
|
-
* @param {ServerClient} client
|
|
140
|
-
*/
|
|
141
|
-
onClientClose = (client) => {
|
|
142
|
-
const clientCount = digg(client, "clientCount")
|
|
143
|
-
const oldClientsLength = Object.keys(this.clients).length
|
|
144
|
-
|
|
145
|
-
delete this.clients[clientCount]
|
|
146
|
-
|
|
147
|
-
const newClientsLength = Object.keys(this.clients).length
|
|
148
|
-
|
|
149
|
-
if (newClientsLength != (oldClientsLength - 1)) {
|
|
150
|
-
console.error(`Expected client to have been removed but length didn't change from ${oldClientsLength} to ${oldClientsLength - 1}`)
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
async spawnWorker() {
|
|
155
|
-
const workerCount = this.workerCount
|
|
156
|
-
|
|
157
|
-
this.workerCount++
|
|
158
|
-
|
|
159
|
-
const workerHandler = new WorkerHandler({
|
|
160
|
-
configuration: this.configuration,
|
|
161
|
-
workerCount
|
|
162
|
-
})
|
|
163
|
-
|
|
164
|
-
await workerHandler.start()
|
|
165
|
-
this.workerHandlers.push(workerHandler)
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
workerHandlerToUse() {
|
|
169
|
-
this.logger.debug(`Worker handlers length: ${this.workerHandlers.length}`)
|
|
170
|
-
|
|
171
|
-
const randomWorkerNumber = Math.floor(Math.random() * this.workerHandlers.length)
|
|
172
|
-
const workerHandler = this.workerHandlers[randomWorkerNumber]
|
|
173
|
-
|
|
174
|
-
if (!workerHandler) {
|
|
175
|
-
throw new Error(`No workerHandler by that number: ${randomWorkerNumber}`)
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
return workerHandler
|
|
179
|
-
}
|
|
180
|
-
}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
// @ts-check
|
|
2
|
-
|
|
3
|
-
import EventEmitter from "events"
|
|
4
|
-
import {Logger} from "../logger.js"
|
|
5
|
-
|
|
6
|
-
export default class ServerClient {
|
|
7
|
-
events = new EventEmitter()
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* @param {object} args
|
|
11
|
-
* @param {import("../configuration.js").default} args.configuration
|
|
12
|
-
* @param {import("net").Socket} args.socket
|
|
13
|
-
* @param {number} args.clientCount
|
|
14
|
-
*/
|
|
15
|
-
constructor({configuration, socket, clientCount}) {
|
|
16
|
-
if (!configuration) throw new Error("No configuration given")
|
|
17
|
-
|
|
18
|
-
this.configuration = configuration
|
|
19
|
-
this.logger = new Logger(this)
|
|
20
|
-
this.socket = socket
|
|
21
|
-
this.clientCount = clientCount
|
|
22
|
-
|
|
23
|
-
socket.on("end", this.onSocketEnd)
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
listen() {
|
|
27
|
-
this.socket.on("data", this.onSocketData)
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
end() {
|
|
31
|
-
return new Promise((resolve) => {
|
|
32
|
-
this.socket.once("close", () => resolve(null))
|
|
33
|
-
this.socket.end()
|
|
34
|
-
})
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* @param {Buffer} chunk
|
|
39
|
-
* @returns {void}
|
|
40
|
-
*/
|
|
41
|
-
onSocketData = (chunk) => {
|
|
42
|
-
this.logger.debug(() => [`Socket ${this.clientCount}: ${chunk}`])
|
|
43
|
-
|
|
44
|
-
if (!this.worker) throw new Error("No worker")
|
|
45
|
-
|
|
46
|
-
this.worker.postMessage({
|
|
47
|
-
command: "clientWrite",
|
|
48
|
-
chunk,
|
|
49
|
-
clientCount: this.clientCount
|
|
50
|
-
})
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* @returns {void}
|
|
55
|
-
*/
|
|
56
|
-
onSocketEnd = () => {
|
|
57
|
-
this.logger.debug(`Socket ${this.clientCount} end`)
|
|
58
|
-
this.events.emit("close", this)
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* @param {string} data
|
|
63
|
-
* @returns {Promise<void>}
|
|
64
|
-
*/
|
|
65
|
-
async send(data) {
|
|
66
|
-
return new Promise((resolve) => {
|
|
67
|
-
this.logger.debug("Send", data)
|
|
68
|
-
this.socket.write(data, () => {
|
|
69
|
-
resolve()
|
|
70
|
-
})
|
|
71
|
-
})
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* @param {import("worker_threads").Worker} newWorker
|
|
76
|
-
* @returns {void}
|
|
77
|
-
*/
|
|
78
|
-
setWorker(newWorker) {
|
|
79
|
-
this.worker = newWorker
|
|
80
|
-
}
|
|
81
|
-
}
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
// @ts-check
|
|
2
|
-
|
|
3
|
-
import {Logger} from "../../logger.js"
|
|
4
|
-
import {Worker} from "worker_threads"
|
|
5
|
-
import ensureError from "../../utils/ensure-error.js"
|
|
6
|
-
|
|
7
|
-
export default class VelociousHttpServerWorker {
|
|
8
|
-
/**
|
|
9
|
-
* @param {object} args
|
|
10
|
-
* @param {import("../../configuration.js").default} args.configuration
|
|
11
|
-
* @param {number} args.workerCount
|
|
12
|
-
*/
|
|
13
|
-
constructor({configuration, workerCount}) {
|
|
14
|
-
this.configuration = configuration
|
|
15
|
-
|
|
16
|
-
/** @type {Record<number, import("../server-client.js").default>} */
|
|
17
|
-
this.clients = {}
|
|
18
|
-
|
|
19
|
-
this.logger = new Logger(this)
|
|
20
|
-
this.workerCount = workerCount
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
start() {
|
|
24
|
-
return new Promise((resolve) => {
|
|
25
|
-
this.onStartCallback = resolve
|
|
26
|
-
this._spawnWorker()
|
|
27
|
-
})
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
async _spawnWorker() {
|
|
31
|
-
const debug = this.configuration.debug
|
|
32
|
-
const directory = this.configuration.getDirectory()
|
|
33
|
-
const velociousPath = await this.configuration.getEnvironmentHandler().getVelociousPath()
|
|
34
|
-
|
|
35
|
-
this.worker = new Worker(`${velociousPath}/src/http-server/worker-handler/worker-script.js`, {
|
|
36
|
-
workerData: {
|
|
37
|
-
debug,
|
|
38
|
-
directory,
|
|
39
|
-
environment: this.configuration.getEnvironment(),
|
|
40
|
-
workerCount: this.workerCount
|
|
41
|
-
}
|
|
42
|
-
})
|
|
43
|
-
this.worker.on("error", this.onWorkerError)
|
|
44
|
-
this.worker.on("exit", this.onWorkerExit)
|
|
45
|
-
this.worker.on("message", this.onWorkerMessage)
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* @param {import("../server-client.js").default} client
|
|
50
|
-
* @returns {void}
|
|
51
|
-
*/
|
|
52
|
-
addSocketConnection(client) {
|
|
53
|
-
const clientCount = client.clientCount
|
|
54
|
-
|
|
55
|
-
client.socket.on("end", () => {
|
|
56
|
-
this.logger.debug(`Removing ${clientCount} from clients`)
|
|
57
|
-
delete this.clients[clientCount]
|
|
58
|
-
})
|
|
59
|
-
|
|
60
|
-
if (!this.worker) throw new Error("Worker not initialized")
|
|
61
|
-
|
|
62
|
-
client.setWorker(this.worker)
|
|
63
|
-
client.listen()
|
|
64
|
-
|
|
65
|
-
this.clients[clientCount] = client
|
|
66
|
-
this.worker.postMessage({command: "newClient", clientCount})
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
/**
|
|
70
|
-
* @param {any} error
|
|
71
|
-
*/
|
|
72
|
-
onWorkerError = (error) => {
|
|
73
|
-
throw ensureError(error) // Throws original error with backtrace and everything into the console
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
* @param {number} code
|
|
78
|
-
* @returns {void}
|
|
79
|
-
*/
|
|
80
|
-
onWorkerExit = (code) => {
|
|
81
|
-
if (code !== 0) {
|
|
82
|
-
throw new Error(`Client worker stopped with exit code ${code}`)
|
|
83
|
-
} else {
|
|
84
|
-
this.logger.debug(() => [`Client worker stopped with exit code ${code}`])
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* @param {object} data
|
|
90
|
-
* @param {string} data.command
|
|
91
|
-
* @param {number} data.clientCount
|
|
92
|
-
* @param {string} data.output
|
|
93
|
-
* @returns {void}
|
|
94
|
-
*/
|
|
95
|
-
onWorkerMessage = (data) => {
|
|
96
|
-
this.logger.debug(`Worker message`, data)
|
|
97
|
-
|
|
98
|
-
const {command} = data
|
|
99
|
-
|
|
100
|
-
if (command == "started") {
|
|
101
|
-
if (this.onStartCallback) {
|
|
102
|
-
this.onStartCallback(null)
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
this.onStartCallback = null
|
|
106
|
-
} else if (command == "clientOutput") {
|
|
107
|
-
this.logger.debug("CLIENT OUTPUT", data)
|
|
108
|
-
|
|
109
|
-
const {clientCount, output} = data
|
|
110
|
-
|
|
111
|
-
this.clients[clientCount]?.send(output)
|
|
112
|
-
} else if (command == "clientClose") {
|
|
113
|
-
const {clientCount} = data
|
|
114
|
-
|
|
115
|
-
this.clients[clientCount]?.end()
|
|
116
|
-
} else {
|
|
117
|
-
throw new Error(`Unknown command: ${command}`)
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
// @ts-check
|
|
2
|
-
|
|
3
|
-
import Application from "../../application.js"
|
|
4
|
-
import Client from "../client/index.js"
|
|
5
|
-
import {digg} from "diggerize"
|
|
6
|
-
import errorLogger from "../../error-logger.js"
|
|
7
|
-
import {Logger} from "../../logger.js"
|
|
8
|
-
|
|
9
|
-
export default class VelociousHttpServerWorkerHandlerWorkerThread {
|
|
10
|
-
/**
|
|
11
|
-
* @param {object} args
|
|
12
|
-
* @param {import("worker_threads").parentPort} args.parentPort
|
|
13
|
-
* @param {{directory: string, environment: string, workerCount: number}} args.workerData
|
|
14
|
-
*/
|
|
15
|
-
constructor({parentPort, workerData}) {
|
|
16
|
-
if (!parentPort) throw new Error("parentPort is required")
|
|
17
|
-
|
|
18
|
-
const {workerCount} = workerData
|
|
19
|
-
|
|
20
|
-
/** @type {Record<number, Client>} */
|
|
21
|
-
this.clients = {}
|
|
22
|
-
|
|
23
|
-
this.logger = new Logger(this, {debug: false})
|
|
24
|
-
this.parentPort = parentPort
|
|
25
|
-
this.workerData = workerData
|
|
26
|
-
this.workerCount = workerCount
|
|
27
|
-
|
|
28
|
-
parentPort.on("message", errorLogger(this.onCommand))
|
|
29
|
-
|
|
30
|
-
this.initialize().then(() => {
|
|
31
|
-
if (!this.application) throw new Error("Application not initialized")
|
|
32
|
-
|
|
33
|
-
this.application.initialize().then(() => {
|
|
34
|
-
this.logger.debug(`Worker ${workerCount} started`)
|
|
35
|
-
parentPort.postMessage({command: "started"})
|
|
36
|
-
})
|
|
37
|
-
})
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* @returns {Promise<void>}
|
|
42
|
-
*/
|
|
43
|
-
async initialize() {
|
|
44
|
-
const {directory, environment} = this.workerData
|
|
45
|
-
const configurationPath = `${directory}/src/config/configuration.js`
|
|
46
|
-
const configurationImport = await import(configurationPath)
|
|
47
|
-
|
|
48
|
-
/** @type {import("../../configuration.js").default} */
|
|
49
|
-
this.configuration = configurationImport.default
|
|
50
|
-
|
|
51
|
-
if (!this.configuration) throw new Error(`Configuration couldn't be loaded from: ${configurationPath}`)
|
|
52
|
-
|
|
53
|
-
this.configuration.setEnvironment(environment)
|
|
54
|
-
this.configuration.setCurrent()
|
|
55
|
-
|
|
56
|
-
this.application = new Application({configuration: this.configuration, type: "worker-handler"})
|
|
57
|
-
|
|
58
|
-
if (this.configuration.isInitialized()) {
|
|
59
|
-
await this.configuration.initialize({type: "worker-handler"})
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* @param {object} data
|
|
65
|
-
* @param {string} data.command
|
|
66
|
-
* @param {string} [data.chunk]
|
|
67
|
-
* @param {number} data.clientCount
|
|
68
|
-
*/
|
|
69
|
-
onCommand = async (data) => {
|
|
70
|
-
await this.logger.debug(() => [`Worker ${this.workerCount} received command`, data])
|
|
71
|
-
|
|
72
|
-
const command = data.command
|
|
73
|
-
|
|
74
|
-
if (command == "newClient") {
|
|
75
|
-
if (!this.configuration) throw new Error("Configuration not initialized")
|
|
76
|
-
|
|
77
|
-
const {clientCount} = data
|
|
78
|
-
const client = new Client({
|
|
79
|
-
clientCount,
|
|
80
|
-
configuration: this.configuration
|
|
81
|
-
})
|
|
82
|
-
|
|
83
|
-
client.events.on("output", (output) => {
|
|
84
|
-
this.parentPort.postMessage({command: "clientOutput", clientCount, output})
|
|
85
|
-
})
|
|
86
|
-
|
|
87
|
-
client.events.on("close", (output) => {
|
|
88
|
-
this.logger.log("Close received from client in worker - forwarding to worker parent")
|
|
89
|
-
this.parentPort.postMessage({command: "clientClose", clientCount, output})
|
|
90
|
-
})
|
|
91
|
-
|
|
92
|
-
this.clients[clientCount] = client
|
|
93
|
-
} else if (command == "clientWrite") {
|
|
94
|
-
await this.logger.debug("Looking up client")
|
|
95
|
-
|
|
96
|
-
const {chunk, clientCount} = data
|
|
97
|
-
const client = digg(this.clients, clientCount)
|
|
98
|
-
|
|
99
|
-
await this.logger.debug(`Sending to client ${clientCount}`)
|
|
100
|
-
|
|
101
|
-
client.onWrite(chunk)
|
|
102
|
-
} else {
|
|
103
|
-
throw new Error(`Unknown command: ${command}`)
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}
|
package/src/initializer.js
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
// @ts-check
|
|
2
|
-
|
|
3
|
-
import restArgsError from "./utils/rest-args-error.js"
|
|
4
|
-
|
|
5
|
-
export default class VelociousInitializer {
|
|
6
|
-
/**
|
|
7
|
-
* @param {object} args
|
|
8
|
-
* @param {import("./configuration.js").default} args.configuration
|
|
9
|
-
* @param {string} args.type
|
|
10
|
-
*/
|
|
11
|
-
constructor({configuration, type, ...restArgs}) {
|
|
12
|
-
restArgsError(restArgs)
|
|
13
|
-
|
|
14
|
-
this._configuration = configuration
|
|
15
|
-
this._type = type
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* @returns {import("./configuration.js").default}
|
|
20
|
-
*/
|
|
21
|
-
getConfiguration() { return this._configuration }
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* @returns {string}
|
|
25
|
-
*/
|
|
26
|
-
getType() { return this._type }
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* @abstract
|
|
30
|
-
* @returns {Promise<void>}
|
|
31
|
-
*/
|
|
32
|
-
run() {
|
|
33
|
-
throw new Error(`'run' hasn't been implemented on ${this.constructor.name})`)
|
|
34
|
-
}
|
|
35
|
-
}
|
package/src/logger.js
DELETED
|
@@ -1,174 +0,0 @@
|
|
|
1
|
-
// @ts-check
|
|
2
|
-
|
|
3
|
-
import Configuration from "./configuration.js"
|
|
4
|
-
import restArgsError from "./utils/rest-args-error.js"
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* @param {string} message
|
|
8
|
-
* @returns {Promise<void>}
|
|
9
|
-
*/
|
|
10
|
-
function consoleLog(message) {
|
|
11
|
-
return new Promise((resolve) => {
|
|
12
|
-
if (process.stdout) {
|
|
13
|
-
process.stdout.write(`${message}\n`, "utf8", () => resolve())
|
|
14
|
-
} else {
|
|
15
|
-
console.log(message)
|
|
16
|
-
resolve()
|
|
17
|
-
}
|
|
18
|
-
})
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* @param {string} message
|
|
23
|
-
* @returns {Promise<void>}
|
|
24
|
-
*/
|
|
25
|
-
function consoleError(message) {
|
|
26
|
-
return new Promise((resolve) => {
|
|
27
|
-
if (process.stderr) {
|
|
28
|
-
process.stderr.write(`${message}\n`, "utf8", () => resolve())
|
|
29
|
-
} else {
|
|
30
|
-
console.error(message)
|
|
31
|
-
resolve()
|
|
32
|
-
}
|
|
33
|
-
})
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* @param {string} message
|
|
38
|
-
* @returns {Promise<void>}
|
|
39
|
-
*/
|
|
40
|
-
function consoleWarn(message) {
|
|
41
|
-
return new Promise((resolve) => {
|
|
42
|
-
if (process.stderr) {
|
|
43
|
-
process.stderr.write(`${message}\n`, "utf8", () => resolve())
|
|
44
|
-
} else {
|
|
45
|
-
console.warn(message)
|
|
46
|
-
resolve()
|
|
47
|
-
}
|
|
48
|
-
})
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* @param {...any|function() : Array<any>} messages
|
|
53
|
-
* @returns {Array<any>} - Either the function result or the messages
|
|
54
|
-
*/
|
|
55
|
-
function functionOrMessages(...messages) {
|
|
56
|
-
if (messages.length === 1 && typeof messages[0] == "function") {
|
|
57
|
-
messages = messages[0]()
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
return messages
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* Converts multiple message parts into a single string.
|
|
65
|
-
* @param {...any} messages - Parts to combine into a message
|
|
66
|
-
* @returns {string}
|
|
67
|
-
*/
|
|
68
|
-
function messagesToMessage(...messages) {
|
|
69
|
-
let message = ""
|
|
70
|
-
|
|
71
|
-
for (const messagePartIndex in messages) {
|
|
72
|
-
const messagePart = messages[messagePartIndex]
|
|
73
|
-
|
|
74
|
-
if (typeof messagePartIndex == "number" && messagePartIndex > 0) {
|
|
75
|
-
message += " "
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
if (typeof messagePart == "object") {
|
|
79
|
-
message += JSON.stringify(messagePart)
|
|
80
|
-
} else {
|
|
81
|
-
message += messagePart
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
return message
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
class Logger {
|
|
89
|
-
/**
|
|
90
|
-
* @param {any} object
|
|
91
|
-
* @param {object} args
|
|
92
|
-
* @param {boolean} args.debug
|
|
93
|
-
*/
|
|
94
|
-
constructor(object, {debug, ...restArgs} = {debug: false}) {
|
|
95
|
-
restArgsError(restArgs)
|
|
96
|
-
|
|
97
|
-
this._debug = debug
|
|
98
|
-
|
|
99
|
-
if (typeof object == "string") {
|
|
100
|
-
this._subject = object
|
|
101
|
-
} else {
|
|
102
|
-
this._object = object
|
|
103
|
-
this._subject = object.constructor.name
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
if (!this._subject) {
|
|
107
|
-
throw new Error(`No subject given`)
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
/**
|
|
112
|
-
* @returns {import("./configuration.js").default}
|
|
113
|
-
*/
|
|
114
|
-
getConfiguration() {
|
|
115
|
-
if (!this._configuration) {
|
|
116
|
-
this._configuration = this._object?.configuration || Configuration.current()
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
return this._configuration
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
/**
|
|
123
|
-
* @type {(...args: Parameters<typeof functionOrMessages>) => Promise<void>}
|
|
124
|
-
*/
|
|
125
|
-
async debug(...messages) {
|
|
126
|
-
if (this._debug || this.getConfiguration()?.debug) {
|
|
127
|
-
await this.log(...messages)
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
/**
|
|
132
|
-
* @type {(...args: Parameters<typeof functionOrMessages>) => Promise<void>}
|
|
133
|
-
*/
|
|
134
|
-
async log(...messages) {
|
|
135
|
-
await consoleLog(messagesToMessage(this._subject, ...functionOrMessages(...messages)))
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
/**
|
|
139
|
-
* @type {(...args: Parameters<typeof functionOrMessages>) => Promise<void>}
|
|
140
|
-
*/
|
|
141
|
-
async error(...messages) {
|
|
142
|
-
await consoleError(messagesToMessage(this._subject, ...functionOrMessages(...messages)))
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
/**
|
|
146
|
-
* @param {boolean} newValue
|
|
147
|
-
* @returns {void}
|
|
148
|
-
*/
|
|
149
|
-
setDebug(newValue) {
|
|
150
|
-
this._debug = newValue
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
/**
|
|
154
|
-
* @type {(...args: Parameters<typeof functionOrMessages>) => Promise<void>}
|
|
155
|
-
*/
|
|
156
|
-
async warn(...messages) {
|
|
157
|
-
await consoleWarn(messagesToMessage(this._subject, ...functionOrMessages(...messages)))
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
export {Logger}
|
|
162
|
-
|
|
163
|
-
/**
|
|
164
|
-
* @param {any} object
|
|
165
|
-
* @param {...Parameters<typeof functionOrMessages>} messages - forwarded args
|
|
166
|
-
*/
|
|
167
|
-
export default async function logger(object, ...messages) {
|
|
168
|
-
const className = object.constructor.name
|
|
169
|
-
const configuration = object.configuration || Configuration.current()
|
|
170
|
-
|
|
171
|
-
if (configuration.debug) {
|
|
172
|
-
await consoleLog(messagesToMessage(className, ...functionOrMessages(...messages)))
|
|
173
|
-
}
|
|
174
|
-
}
|