@adonisjs/core 6.1.5-2 → 6.1.5-3
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/build/commands/build.d.ts +3 -0
- package/build/commands/build.d.ts.map +1 -0
- package/build/commands/build.js +22 -2
- package/build/commands/commands.json +1 -1
- package/build/commands/configure.d.ts +1 -0
- package/build/commands/configure.d.ts.map +1 -0
- package/build/commands/configure.js +2 -1
- package/build/commands/eject.d.ts +1 -0
- package/build/commands/eject.d.ts.map +1 -0
- package/build/commands/eject.js +2 -1
- package/build/commands/generate_key.d.ts +1 -0
- package/build/commands/generate_key.d.ts.map +1 -0
- package/build/commands/generate_key.js +2 -1
- package/build/commands/inspect_rcfile.d.ts +7 -0
- package/build/commands/inspect_rcfile.d.ts.map +1 -0
- package/build/commands/inspect_rcfile.js +10 -0
- package/build/commands/list/routes.d.ts +1 -0
- package/build/commands/list/routes.d.ts.map +1 -0
- package/build/commands/list/routes.js +2 -1
- package/build/commands/make/_base.d.ts +23 -1
- package/build/commands/make/_base.d.ts.map +1 -0
- package/build/commands/make/_base.js +11 -2
- package/build/commands/make/command.d.ts +1 -0
- package/build/commands/make/command.d.ts.map +1 -0
- package/build/commands/make/command.js +2 -1
- package/build/commands/make/controller.d.ts +1 -0
- package/build/commands/make/controller.d.ts.map +1 -0
- package/build/commands/make/controller.js +2 -1
- package/build/commands/make/event.d.ts +1 -0
- package/build/commands/make/event.d.ts.map +1 -0
- package/build/commands/make/event.js +2 -1
- package/build/commands/make/listener.d.ts +1 -0
- package/build/commands/make/listener.d.ts.map +1 -0
- package/build/commands/make/listener.js +2 -1
- package/build/commands/make/middleware.d.ts +1 -0
- package/build/commands/make/middleware.d.ts.map +1 -0
- package/build/commands/make/middleware.js +2 -1
- package/build/commands/make/prldfile.d.ts +9 -0
- package/build/commands/make/prldfile.d.ts.map +1 -0
- package/build/commands/make/prldfile.js +28 -0
- package/build/commands/make/provider.d.ts +1 -0
- package/build/commands/make/provider.d.ts.map +1 -0
- package/build/commands/make/provider.js +5 -2
- package/build/commands/make/service.d.ts +9 -0
- package/build/commands/make/service.d.ts.map +1 -0
- package/build/commands/make/service.js +26 -0
- package/build/commands/make/test.d.ts +1 -0
- package/build/commands/make/test.d.ts.map +1 -0
- package/build/commands/make/test.js +2 -1
- package/build/commands/serve.d.ts +3 -0
- package/build/commands/serve.d.ts.map +1 -0
- package/build/commands/serve.js +21 -1
- package/build/commands/test.d.ts +21 -0
- package/build/commands/test.d.ts.map +1 -0
- package/build/commands/test.js +156 -0
- package/build/factories/app.d.ts +1 -0
- package/build/factories/app.d.ts.map +1 -0
- package/build/factories/bodyparser.d.ts +1 -0
- package/build/factories/bodyparser.d.ts.map +1 -0
- package/build/factories/core/ace.d.ts +1 -0
- package/build/factories/core/ace.d.ts.map +1 -0
- package/build/factories/core/ignitor.d.ts +1 -0
- package/build/factories/core/ignitor.d.ts.map +1 -0
- package/build/factories/core/main.d.ts +1 -0
- package/build/factories/core/main.d.ts.map +1 -0
- package/build/factories/core/test_utils.d.ts +1 -0
- package/build/factories/core/test_utils.d.ts.map +1 -0
- package/build/factories/encryption.d.ts +1 -0
- package/build/factories/encryption.d.ts.map +1 -0
- package/build/factories/events.d.ts +1 -0
- package/build/factories/events.d.ts.map +1 -0
- package/build/factories/hash.d.ts +1 -0
- package/build/factories/hash.d.ts.map +1 -0
- package/build/factories/http.d.ts +1 -0
- package/build/factories/http.d.ts.map +1 -0
- package/build/factories/logger.d.ts +1 -0
- package/build/factories/logger.d.ts.map +1 -0
- package/build/factories/stubs.d.ts +1 -0
- package/build/factories/stubs.d.ts.map +1 -0
- package/build/index.d.ts +1 -0
- package/build/index.d.ts.map +1 -0
- package/build/legacy/validator.d.ts +1 -0
- package/build/legacy/validator.d.ts.map +1 -0
- package/build/modules/ace/commands.d.ts +1 -0
- package/build/modules/ace/commands.d.ts.map +1 -0
- package/build/modules/ace/commands.js +4 -2
- package/build/modules/ace/create_kernel.d.ts +1 -0
- package/build/modules/ace/create_kernel.d.ts.map +1 -0
- package/build/modules/ace/kernel.d.ts +1 -0
- package/build/modules/ace/kernel.d.ts.map +1 -0
- package/build/modules/ace/main.d.ts +1 -0
- package/build/modules/ace/main.d.ts.map +1 -0
- package/build/modules/ace/shell.d.ts +1 -0
- package/build/modules/ace/shell.d.ts.map +1 -0
- package/build/modules/app.d.ts +1 -0
- package/build/modules/app.d.ts.map +1 -0
- package/build/modules/bodyparser/bodyparser_middleware.d.ts +1 -0
- package/build/modules/bodyparser/bodyparser_middleware.d.ts.map +1 -0
- package/build/modules/bodyparser/main.d.ts +1 -0
- package/build/modules/bodyparser/main.d.ts.map +1 -0
- package/build/modules/config.d.ts +1 -0
- package/build/modules/config.d.ts.map +1 -0
- package/build/modules/container.d.ts +1 -0
- package/build/modules/container.d.ts.map +1 -0
- package/build/modules/encryption.d.ts +1 -0
- package/build/modules/encryption.d.ts.map +1 -0
- package/build/modules/env.d.ts +1 -0
- package/build/modules/env.d.ts.map +1 -0
- package/build/modules/events.d.ts +1 -0
- package/build/modules/events.d.ts.map +1 -0
- package/build/modules/hash/define_config.d.ts +1 -0
- package/build/modules/hash/define_config.d.ts.map +1 -0
- package/build/modules/hash/drivers_collection.d.ts +4 -4
- package/build/modules/hash/drivers_collection.d.ts.map +1 -0
- package/build/modules/hash/drivers_collection.js +2 -8
- package/build/modules/hash/main.d.ts +2 -0
- package/build/modules/hash/main.d.ts.map +1 -0
- package/build/modules/hash/main.js +1 -0
- package/build/modules/http.d.ts +1 -0
- package/build/modules/http.d.ts.map +1 -0
- package/build/modules/logger.d.ts +1 -0
- package/build/modules/logger.d.ts.map +1 -0
- package/build/providers/app_provider.d.ts +1 -0
- package/build/providers/app_provider.d.ts.map +1 -0
- package/build/providers/app_provider.js +5 -7
- package/build/providers/hash_provider.d.ts +1 -0
- package/build/providers/hash_provider.d.ts.map +1 -0
- package/build/providers/hash_provider.js +7 -6
- package/build/providers/http_provider.d.ts +1 -0
- package/build/providers/http_provider.d.ts.map +1 -0
- package/build/services/ace.d.ts +1 -0
- package/build/services/ace.d.ts.map +1 -0
- package/build/services/app.d.ts +1 -0
- package/build/services/app.d.ts.map +1 -0
- package/build/services/config.d.ts +1 -0
- package/build/services/config.d.ts.map +1 -0
- package/build/services/emitter.d.ts +1 -0
- package/build/services/emitter.d.ts.map +1 -0
- package/build/services/emitter.js +1 -2
- package/build/services/encryption.d.ts +1 -0
- package/build/services/encryption.d.ts.map +1 -0
- package/build/services/encryption.js +1 -2
- package/build/services/hash.d.ts +1 -0
- package/build/services/hash.d.ts.map +1 -0
- package/build/services/hash.js +1 -2
- package/build/services/logger.d.ts +1 -0
- package/build/services/logger.d.ts.map +1 -0
- package/build/services/logger.js +1 -2
- package/build/services/router.d.ts +1 -0
- package/build/services/router.d.ts.map +1 -0
- package/build/services/router.js +1 -2
- package/build/services/server.d.ts +1 -0
- package/build/services/server.d.ts.map +1 -0
- package/build/services/server.js +1 -2
- package/build/services/test_utils.d.ts +1 -0
- package/build/services/test_utils.d.ts.map +1 -0
- package/build/src/cli_formatters/routes_list.d.ts +1 -0
- package/build/src/cli_formatters/routes_list.d.ts.map +1 -0
- package/build/src/debug.d.ts +1 -0
- package/build/src/debug.d.ts.map +1 -0
- package/build/src/helpers/is.d.ts +1 -0
- package/build/src/helpers/is.d.ts.map +1 -0
- package/build/src/helpers/main.d.ts +1 -0
- package/build/src/helpers/main.d.ts.map +1 -0
- package/build/src/helpers/parse_binding_reference.d.ts +1 -0
- package/build/src/helpers/parse_binding_reference.d.ts.map +1 -0
- package/build/src/helpers/string.d.ts +3 -0
- package/build/src/helpers/string.d.ts.map +1 -0
- package/build/src/helpers/string.js +4 -0
- package/build/src/helpers/types.d.ts +1 -0
- package/build/src/helpers/types.d.ts.map +1 -0
- package/build/src/ignitor/ace.d.ts +1 -0
- package/build/src/ignitor/ace.d.ts.map +1 -0
- package/build/src/ignitor/http.d.ts +1 -0
- package/build/src/ignitor/http.d.ts.map +1 -0
- package/build/src/ignitor/main.d.ts +1 -0
- package/build/src/ignitor/main.d.ts.map +1 -0
- package/build/src/ignitor/test.d.ts +1 -0
- package/build/src/ignitor/test.d.ts.map +1 -0
- package/build/src/internal_helpers.d.ts +1 -0
- package/build/src/internal_helpers.d.ts.map +1 -0
- package/build/src/test_utils/http.d.ts +1 -0
- package/build/src/test_utils/http.d.ts.map +1 -0
- package/build/src/test_utils/main.d.ts +2 -1
- package/build/src/test_utils/main.d.ts.map +1 -0
- package/build/src/types.d.ts +3 -2
- package/build/src/types.d.ts.map +1 -0
- package/build/stubs/index.d.ts +1 -0
- package/build/stubs/index.d.ts.map +1 -0
- package/build/stubs/make/preload_file/main.stub +4 -0
- package/build/stubs/make/service/main.stub +4 -0
- package/build/toolkit/commands/index_commands.d.ts +1 -0
- package/build/toolkit/commands/index_commands.d.ts.map +1 -0
- package/build/toolkit/commands/index_commands.js +2 -1
- package/build/toolkit/main.d.ts +1 -0
- package/build/toolkit/main.d.ts.map +1 -0
- package/build/types/ace.d.ts +1 -0
- package/build/types/ace.d.ts.map +1 -0
- package/build/types/app.d.ts +1 -0
- package/build/types/app.d.ts.map +1 -0
- package/build/types/bodyparser.d.ts +1 -0
- package/build/types/bodyparser.d.ts.map +1 -0
- package/build/types/container.d.ts +1 -0
- package/build/types/container.d.ts.map +1 -0
- package/build/types/encryption.d.ts +1 -0
- package/build/types/encryption.d.ts.map +1 -0
- package/build/types/events.d.ts +1 -0
- package/build/types/events.d.ts.map +1 -0
- package/build/types/hash.d.ts +1 -0
- package/build/types/hash.d.ts.map +1 -0
- package/build/types/http.d.ts +1 -0
- package/build/types/http.d.ts.map +1 -0
- package/build/types/logger.d.ts +1 -0
- package/build/types/logger.d.ts.map +1 -0
- package/commands/build.ts +122 -0
- package/commands/configure.ts +179 -0
- package/commands/eject.ts +39 -0
- package/commands/generate_key.ts +53 -0
- package/commands/inspect_rcfile.ts +23 -0
- package/commands/list/routes.ts +121 -0
- package/commands/make/_base.ts +55 -0
- package/commands/make/command.ts +33 -0
- package/commands/make/controller.ts +77 -0
- package/commands/make/event.ts +33 -0
- package/commands/make/listener.ts +63 -0
- package/commands/make/middleware.ts +34 -0
- package/commands/make/prldfile.ts +40 -0
- package/commands/make/provider.ts +40 -0
- package/commands/make/service.ts +33 -0
- package/commands/make/test.ts +115 -0
- package/commands/serve.ts +146 -0
- package/commands/test.ts +189 -0
- package/factories/app.ts +10 -0
- package/factories/bodyparser.ts +10 -0
- package/factories/core/ace.ts +38 -0
- package/factories/core/ignitor.ts +132 -0
- package/factories/core/main.ts +13 -0
- package/factories/core/test_utils.ts +34 -0
- package/factories/encryption.ts +10 -0
- package/factories/events.ts +10 -0
- package/factories/hash.ts +10 -0
- package/factories/http.ts +10 -0
- package/factories/logger.ts +10 -0
- package/factories/stubs.ts +53 -0
- package/index.ts +39 -0
- package/legacy/validator.ts +10 -0
- package/modules/ace/commands.ts +152 -0
- package/modules/ace/create_kernel.ts +73 -0
- package/modules/ace/kernel.ts +28 -0
- package/modules/ace/main.ts +22 -0
- package/modules/ace/shell.ts +49 -0
- package/modules/app.ts +10 -0
- package/modules/bodyparser/bodyparser_middleware.ts +16 -0
- package/modules/bodyparser/main.ts +10 -0
- package/modules/config.ts +10 -0
- package/modules/container.ts +10 -0
- package/modules/encryption.ts +10 -0
- package/modules/env.ts +10 -0
- package/modules/events.ts +10 -0
- package/modules/hash/define_config.ts +64 -0
- package/modules/hash/drivers_collection.ts +61 -0
- package/modules/hash/main.ts +12 -0
- package/modules/http.ts +10 -0
- package/modules/logger.ts +10 -0
- package/package.json +39 -30
- package/providers/app_provider.ts +125 -0
- package/providers/hash_provider.ts +58 -0
- package/providers/http_provider.ts +66 -0
- package/services/ace.ts +26 -0
- package/services/app.ts +26 -0
- package/services/config.ts +22 -0
- package/services/emitter.ts +23 -0
- package/services/encryption.ts +23 -0
- package/services/hash.ts +23 -0
- package/services/logger.ts +23 -0
- package/services/router.ts +23 -0
- package/services/server.ts +23 -0
- package/services/test_utils.ts +26 -0
- package/src/cli_formatters/routes_list.ts +480 -0
- package/src/debug.ts +12 -0
- package/src/helpers/is.ts +11 -0
- package/src/helpers/main.ts +13 -0
- package/src/helpers/parse_binding_reference.ts +93 -0
- package/src/helpers/string.ts +89 -0
- package/src/helpers/types.ts +46 -0
- package/src/ignitor/ace.ts +90 -0
- package/src/ignitor/http.ts +167 -0
- package/src/ignitor/main.ts +118 -0
- package/src/ignitor/test.ts +51 -0
- package/src/internal_helpers.ts +59 -0
- package/src/test_utils/http.ts +79 -0
- package/src/test_utils/main.ts +69 -0
- package/src/types.ts +136 -0
- package/types/ace.ts +15 -0
- package/types/app.ts +10 -0
- package/types/bodyparser.ts +10 -0
- package/types/container.ts +10 -0
- package/types/encryption.ts +10 -0
- package/types/events.ts +10 -0
- package/types/hash.ts +10 -0
- package/types/http.ts +10 -0
- package/types/logger.ts +10 -0
- package/build/src/helpers/string_builder.d.ts +0 -23
- package/build/src/helpers/string_builder.js +0 -86
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @adonisjs/core
|
|
3
|
+
*
|
|
4
|
+
* (c) AdonisJS
|
|
5
|
+
*
|
|
6
|
+
* For the full copyright and license information, please view the LICENSE
|
|
7
|
+
* file that was distributed with this source code.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
const DEFAULT_NODE_ARGS = [
|
|
11
|
+
// Use ts-node/esm loader. The project must install it
|
|
12
|
+
'--loader=ts-node/esm',
|
|
13
|
+
// Disable annonying warnings
|
|
14
|
+
'--no-warnings',
|
|
15
|
+
// Enable expiremental meta resolve for cases where someone uses magic import string
|
|
16
|
+
'--experimental-import-meta-resolve',
|
|
17
|
+
]
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Ace shell is used to run the ace commands inside a TypeScript project
|
|
21
|
+
* without pre-compiling TypeScript source files.
|
|
22
|
+
*
|
|
23
|
+
* Under the hood a child process is used to execute the "bin/console.ts" file. This
|
|
24
|
+
* is required because we have to use "ts-node/esm" loader in order to run TypeScript
|
|
25
|
+
* files.
|
|
26
|
+
*/
|
|
27
|
+
export function aceShell(cwd: URL) {
|
|
28
|
+
return {
|
|
29
|
+
async handle(argv: string[]) {
|
|
30
|
+
const { execaNode } = await import('execa')
|
|
31
|
+
const childProcess = execaNode('bin/console.js', argv, {
|
|
32
|
+
nodeOptions: DEFAULT_NODE_ARGS,
|
|
33
|
+
preferLocal: true,
|
|
34
|
+
windowsHide: false,
|
|
35
|
+
localDir: cwd,
|
|
36
|
+
cwd,
|
|
37
|
+
buffer: false,
|
|
38
|
+
stdio: 'inherit',
|
|
39
|
+
})
|
|
40
|
+
|
|
41
|
+
try {
|
|
42
|
+
const result = await childProcess
|
|
43
|
+
process.exitCode = result.exitCode
|
|
44
|
+
} catch (error) {
|
|
45
|
+
process.exitCode = 1
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
}
|
|
49
|
+
}
|
package/modules/app.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @adonisjs/core
|
|
3
|
+
*
|
|
4
|
+
* (c) AdonisJS
|
|
5
|
+
*
|
|
6
|
+
* For the full copyright and license information, please view the LICENSE
|
|
7
|
+
* file that was distributed with this source code.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { BodyParserMiddleware } from '@adonisjs/bodyparser/bodyparser_middleware'
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Default export allows lazy importing middleware with
|
|
14
|
+
* destructuring the named exports
|
|
15
|
+
*/
|
|
16
|
+
export default BodyParserMiddleware
|
package/modules/env.ts
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @adonisjs/core
|
|
3
|
+
*
|
|
4
|
+
* (c) AdonisJS
|
|
5
|
+
*
|
|
6
|
+
* For the full copyright and license information, please view the LICENSE
|
|
7
|
+
* file that was distributed with this source code.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { InvalidArgumentsException } from '@poppinss/utils'
|
|
11
|
+
|
|
12
|
+
import driversCollection from './drivers_collection.js'
|
|
13
|
+
import type { HashDriversList } from '../../src/types.js'
|
|
14
|
+
import type { ManagerDriverFactory } from '../../types/hash.js'
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Define config for the hash service.
|
|
18
|
+
*/
|
|
19
|
+
export function defineConfig<
|
|
20
|
+
KnownHashers extends Record<
|
|
21
|
+
string,
|
|
22
|
+
{
|
|
23
|
+
[K in keyof HashDriversList]: { driver: K } & Parameters<HashDriversList[K]>[0]
|
|
24
|
+
}[keyof HashDriversList]
|
|
25
|
+
>
|
|
26
|
+
>(config: {
|
|
27
|
+
default?: keyof KnownHashers
|
|
28
|
+
list: KnownHashers
|
|
29
|
+
}): {
|
|
30
|
+
default?: keyof KnownHashers
|
|
31
|
+
list: { [K in keyof KnownHashers]: ManagerDriverFactory }
|
|
32
|
+
} {
|
|
33
|
+
/**
|
|
34
|
+
* Hashers list should always be provided
|
|
35
|
+
*/
|
|
36
|
+
if (!config.list) {
|
|
37
|
+
throw new InvalidArgumentsException('Missing "list" property in hash config')
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* The default hasher should be mentioned in the list
|
|
42
|
+
*/
|
|
43
|
+
if (config.default && !config.list[config.default]) {
|
|
44
|
+
throw new InvalidArgumentsException(
|
|
45
|
+
`Missing "list.${String(
|
|
46
|
+
config.default
|
|
47
|
+
)}" in hash config. It is referenced by the "default" property`
|
|
48
|
+
)
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Converting list config to a collection that hash manager can use
|
|
53
|
+
*/
|
|
54
|
+
const managerHashers = Object.keys(config.list).reduce((result, disk: keyof KnownHashers) => {
|
|
55
|
+
const hasherConfig = config.list[disk]
|
|
56
|
+
result[disk] = () => driversCollection.create(hasherConfig.driver, hasherConfig)
|
|
57
|
+
return result
|
|
58
|
+
}, {} as { [K in keyof KnownHashers]: ManagerDriverFactory })
|
|
59
|
+
|
|
60
|
+
return {
|
|
61
|
+
default: config.default,
|
|
62
|
+
list: managerHashers,
|
|
63
|
+
}
|
|
64
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @adonisjs/core
|
|
3
|
+
*
|
|
4
|
+
* (c) AdonisJS
|
|
5
|
+
*
|
|
6
|
+
* For the full copyright and license information, please view the LICENSE
|
|
7
|
+
* file that was distributed with this source code.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* This class exists in the core, because it maintains a list of
|
|
12
|
+
* globally available drivers applicable to the hash manager
|
|
13
|
+
* instance registered with the container.
|
|
14
|
+
*
|
|
15
|
+
* In other words, these drivers are not needed by the hash module
|
|
16
|
+
* regular usage and specific to AdonisJS container flow.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
import { RuntimeException } from '@poppinss/utils'
|
|
20
|
+
import type { HashDriversList } from '../../src/types.js'
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* A global collection of Hash drivers
|
|
24
|
+
*/
|
|
25
|
+
class HashDriversCollection {
|
|
26
|
+
/**
|
|
27
|
+
* List of registered drivers
|
|
28
|
+
*/
|
|
29
|
+
list: Partial<HashDriversList> = {}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Extend drivers collection and add a custom
|
|
33
|
+
* driver to it.
|
|
34
|
+
*/
|
|
35
|
+
extend<Name extends keyof HashDriversList>(
|
|
36
|
+
driverName: Name,
|
|
37
|
+
factoryCallback: HashDriversList[Name]
|
|
38
|
+
): this {
|
|
39
|
+
this.list[driverName] = factoryCallback
|
|
40
|
+
return this
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Creates the driver instance with config
|
|
45
|
+
*/
|
|
46
|
+
create<Name extends keyof HashDriversList>(
|
|
47
|
+
name: Name,
|
|
48
|
+
config: Parameters<HashDriversList[Name]>[0]
|
|
49
|
+
) {
|
|
50
|
+
const driverFactory = this.list[name]
|
|
51
|
+
if (!driverFactory) {
|
|
52
|
+
throw new RuntimeException(
|
|
53
|
+
`Unknown hash driver "${String(name)}". Make sure the driver is registered`
|
|
54
|
+
)
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
return driverFactory(config as any)
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export default new HashDriversCollection()
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @adonisjs/core
|
|
3
|
+
*
|
|
4
|
+
* (c) AdonisJS
|
|
5
|
+
*
|
|
6
|
+
* For the full copyright and license information, please view the LICENSE
|
|
7
|
+
* file that was distributed with this source code.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
export * from '@adonisjs/hash'
|
|
11
|
+
export { defineConfig } from './define_config.js'
|
|
12
|
+
export { default as driversList } from './drivers_collection.js'
|
package/modules/http.ts
ADDED
package/package.json
CHANGED
|
@@ -1,10 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adonisjs/core",
|
|
3
|
-
"version": "6.1.5-
|
|
3
|
+
"version": "6.1.5-3",
|
|
4
4
|
"description": "Core of AdonisJS",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"files": [
|
|
8
|
+
"modules",
|
|
9
|
+
"commands",
|
|
10
|
+
"legacy",
|
|
11
|
+
"providers",
|
|
12
|
+
"services",
|
|
13
|
+
"factories",
|
|
14
|
+
"types",
|
|
15
|
+
"src",
|
|
16
|
+
"index.ts",
|
|
8
17
|
"build/modules",
|
|
9
18
|
"build/commands",
|
|
10
19
|
"build/legacy",
|
|
@@ -16,6 +25,7 @@
|
|
|
16
25
|
"build/src",
|
|
17
26
|
"build/stubs",
|
|
18
27
|
"build/index.d.ts",
|
|
28
|
+
"build/index.d.ts.map",
|
|
19
29
|
"build/index.js"
|
|
20
30
|
],
|
|
21
31
|
"bin": {
|
|
@@ -61,7 +71,6 @@
|
|
|
61
71
|
"./helpers/is": "./build/src/helpers/is.js",
|
|
62
72
|
"./helpers/types": "./build/src/helpers/types.js",
|
|
63
73
|
"./helpers/string": "./build/src/helpers/string.js",
|
|
64
|
-
"./helpers/string_builder": "./build/src/helpers/string_builder.js",
|
|
65
74
|
"./ace/shell": "./build/modules/ace/shell.js",
|
|
66
75
|
"./ace": "./build/modules/ace/main.js",
|
|
67
76
|
"./bodyparser": "./build/modules/bodyparser/main.js",
|
|
@@ -79,7 +88,7 @@
|
|
|
79
88
|
},
|
|
80
89
|
"scripts": {
|
|
81
90
|
"pretest": "npm run lint",
|
|
82
|
-
"test": "cross-env NODE_DEBUG=adonisjs:core c8 npm run
|
|
91
|
+
"test": "cross-env NODE_DEBUG=adonisjs:core c8 npm run quick:test",
|
|
83
92
|
"clean": "del-cli build",
|
|
84
93
|
"copy:templates": "copyfiles \"stubs/**/**/*.stub\" build",
|
|
85
94
|
"precompile": "npm run lint",
|
|
@@ -92,7 +101,7 @@
|
|
|
92
101
|
"lint": "eslint . --ext=.ts",
|
|
93
102
|
"format": "prettier --write .",
|
|
94
103
|
"sync-labels": "github-label-sync --labels .github/labels.json adonisjs/core",
|
|
95
|
-
"
|
|
104
|
+
"quick:test": "node --loader=ts-node/esm --experimental-import-meta-resolve bin/test.ts",
|
|
96
105
|
"index:commands": "node --loader=ts-node/esm toolkit/main.js index build/commands"
|
|
97
106
|
},
|
|
98
107
|
"keywords": [
|
|
@@ -103,17 +112,17 @@
|
|
|
103
112
|
"author": "virk,adonisjs",
|
|
104
113
|
"license": "MIT",
|
|
105
114
|
"devDependencies": {
|
|
106
|
-
"@adonisjs/assembler": "^6.1.3-
|
|
107
|
-
"@commitlint/cli": "^17.
|
|
108
|
-
"@commitlint/config-conventional": "^17.
|
|
115
|
+
"@adonisjs/assembler": "^6.1.3-6",
|
|
116
|
+
"@commitlint/cli": "^17.6.1",
|
|
117
|
+
"@commitlint/config-conventional": "^17.6.1",
|
|
109
118
|
"@japa/assert": "^1.4.1",
|
|
110
119
|
"@japa/expect-type": "^1.0.3",
|
|
111
120
|
"@japa/file-system": "^1.0.1",
|
|
112
121
|
"@japa/run-failed-tests": "^1.1.1",
|
|
113
122
|
"@japa/runner": "^2.5.1",
|
|
114
123
|
"@japa/spec-reporter": "^1.3.3",
|
|
115
|
-
"@swc/core": "^1.3.
|
|
116
|
-
"@types/node": "^18.15.
|
|
124
|
+
"@swc/core": "^1.3.51",
|
|
125
|
+
"@types/node": "^18.15.11",
|
|
117
126
|
"@types/pretty-hrtime": "^1.0.1",
|
|
118
127
|
"@types/sinon": "^10.0.13",
|
|
119
128
|
"@types/supertest": "^2.0.12",
|
|
@@ -122,37 +131,37 @@
|
|
|
122
131
|
"copyfiles": "^2.4.1",
|
|
123
132
|
"cross-env": "^7.0.3",
|
|
124
133
|
"del-cli": "^5.0.0",
|
|
125
|
-
"eslint": "^8.
|
|
126
|
-
"eslint-config-prettier": "^8.
|
|
134
|
+
"eslint": "^8.38.0",
|
|
135
|
+
"eslint-config-prettier": "^8.8.0",
|
|
127
136
|
"eslint-plugin-adonis": "^3.0.3",
|
|
128
137
|
"eslint-plugin-prettier": "^4.2.1",
|
|
129
138
|
"get-port": "^6.1.2",
|
|
130
139
|
"github-label-sync": "^2.3.1",
|
|
131
140
|
"husky": "^8.0.3",
|
|
132
|
-
"np": "^7.
|
|
133
|
-
"prettier": "^2.8.
|
|
134
|
-
"sinon": "^15.0.
|
|
141
|
+
"np": "^7.7.0",
|
|
142
|
+
"prettier": "^2.8.7",
|
|
143
|
+
"sinon": "^15.0.3",
|
|
135
144
|
"supertest": "^6.3.3",
|
|
136
145
|
"test-console": "^2.0.0",
|
|
137
146
|
"ts-node": "^10.9.1",
|
|
138
|
-
"typescript": "^
|
|
147
|
+
"typescript": "^5.0.4"
|
|
139
148
|
},
|
|
140
149
|
"dependencies": {
|
|
141
|
-
"@adonisjs/ace": "^12.3.1-
|
|
142
|
-
"@adonisjs/application": "^7.1.2-
|
|
143
|
-
"@adonisjs/bodyparser": "^9.3.2-
|
|
144
|
-
"@adonisjs/config": "^4.2.1-
|
|
145
|
-
"@adonisjs/encryption": "^5.1.2-
|
|
146
|
-
"@adonisjs/env": "^4.2.0-
|
|
147
|
-
"@adonisjs/events": "^8.4.9-
|
|
148
|
-
"@adonisjs/fold": "^9.9.3-
|
|
149
|
-
"@adonisjs/hash": "^8.3.1-
|
|
150
|
-
"@adonisjs/http-server": "^6.8.2-
|
|
151
|
-
"@adonisjs/logger": "^5.4.2-
|
|
152
|
-
"@adonisjs/validator": "^13.0.2-
|
|
150
|
+
"@adonisjs/ace": "^12.3.1-5",
|
|
151
|
+
"@adonisjs/application": "^7.1.2-3",
|
|
152
|
+
"@adonisjs/bodyparser": "^9.3.2-5",
|
|
153
|
+
"@adonisjs/config": "^4.2.1-1",
|
|
154
|
+
"@adonisjs/encryption": "^5.1.2-1",
|
|
155
|
+
"@adonisjs/env": "^4.2.0-2",
|
|
156
|
+
"@adonisjs/events": "^8.4.9-2",
|
|
157
|
+
"@adonisjs/fold": "^9.9.3-4",
|
|
158
|
+
"@adonisjs/hash": "^8.3.1-2",
|
|
159
|
+
"@adonisjs/http-server": "^6.8.2-6",
|
|
160
|
+
"@adonisjs/logger": "^5.4.2-1",
|
|
161
|
+
"@adonisjs/validator": "^13.0.2-2",
|
|
153
162
|
"@paralleldrive/cuid2": "^2.2.0",
|
|
154
|
-
"@poppinss/macroable": "^1.0.0-
|
|
155
|
-
"@poppinss/utils": "^6.5.0-
|
|
163
|
+
"@poppinss/macroable": "^1.0.0-6",
|
|
164
|
+
"@poppinss/utils": "^6.5.0-2",
|
|
156
165
|
"@sindresorhus/is": "^5.3.0",
|
|
157
166
|
"@types/he": "^1.2.0",
|
|
158
167
|
"execa": "^7.1.1",
|
|
@@ -164,7 +173,7 @@
|
|
|
164
173
|
"youch-terminal": "^2.2.0"
|
|
165
174
|
},
|
|
166
175
|
"peerDependencies": {
|
|
167
|
-
"@adonisjs/assembler": "^6.1.3-
|
|
176
|
+
"@adonisjs/assembler": "^6.1.3-4",
|
|
168
177
|
"argon2": "^0.30.3",
|
|
169
178
|
"bcrypt": "^5.0.1"
|
|
170
179
|
},
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @adonisjs/core
|
|
3
|
+
*
|
|
4
|
+
* (c) AdonisJS
|
|
5
|
+
*
|
|
6
|
+
* For the full copyright and license information, please view the LICENSE
|
|
7
|
+
* file that was distributed with this source code.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { Config } from '../modules/config.js'
|
|
11
|
+
import { Logger } from '../modules/logger.js'
|
|
12
|
+
import { validator } from '../legacy/validator.js'
|
|
13
|
+
import { Encryption } from '../modules/encryption.js'
|
|
14
|
+
import type { ApplicationService, LoggerService } from '../src/types.js'
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* The Application Service provider registers all the baseline
|
|
18
|
+
* features required to run the framework.
|
|
19
|
+
*/
|
|
20
|
+
export default class AppServiceProvider {
|
|
21
|
+
constructor(protected app: ApplicationService) {}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Registers test utils with the container
|
|
25
|
+
*/
|
|
26
|
+
protected registerTestUtils() {
|
|
27
|
+
this.app.container.singleton('testUtils', async () => {
|
|
28
|
+
const { TestUtils } = await import('../src/test_utils/main.js')
|
|
29
|
+
return new TestUtils(this.app)
|
|
30
|
+
})
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Registers ace with the container
|
|
35
|
+
*/
|
|
36
|
+
protected registerAce() {
|
|
37
|
+
this.app.container.singleton('ace', async () => {
|
|
38
|
+
const { createAceKernel } = await import('../modules/ace/create_kernel.js')
|
|
39
|
+
return createAceKernel(this.app)
|
|
40
|
+
})
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Registers the application to the container
|
|
45
|
+
*/
|
|
46
|
+
protected registerApp() {
|
|
47
|
+
this.app.container.singleton('app', () => this.app)
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Registers the logger class to resolve the default logger
|
|
52
|
+
*/
|
|
53
|
+
protected registerLogger() {
|
|
54
|
+
this.app.container.singleton(Logger, async (resolver) => {
|
|
55
|
+
const loggerManager = await resolver.make('logger')
|
|
56
|
+
return loggerManager.use()
|
|
57
|
+
})
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Registers the logger manager to the container
|
|
62
|
+
*/
|
|
63
|
+
protected registerLoggerManager() {
|
|
64
|
+
this.app.container.singleton('logger', async () => {
|
|
65
|
+
const { LoggerManager } = await import('../modules/logger.js')
|
|
66
|
+
const config = this.app.config.get<any>('logger')
|
|
67
|
+
return new LoggerManager(config) as LoggerService
|
|
68
|
+
})
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Registers the config to the container
|
|
73
|
+
*/
|
|
74
|
+
protected registerConfig() {
|
|
75
|
+
this.app.container.singleton(Config, () => this.app.config)
|
|
76
|
+
this.app.container.alias('config', Config)
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Registers emitter service to the container
|
|
81
|
+
*/
|
|
82
|
+
protected registerEmitter() {
|
|
83
|
+
this.app.container.singleton('emitter', async () => {
|
|
84
|
+
const { Emitter } = await import('../modules/events.js')
|
|
85
|
+
return new Emitter(this.app)
|
|
86
|
+
})
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Register the encryption service to the container
|
|
91
|
+
*/
|
|
92
|
+
protected registerEncryption() {
|
|
93
|
+
this.app.container.singleton(Encryption, () => {
|
|
94
|
+
const appKey = this.app.config.get<string>('app.appKey')
|
|
95
|
+
return new Encryption({ secret: appKey })
|
|
96
|
+
})
|
|
97
|
+
this.app.container.alias('encryption', Encryption)
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Configure the validator
|
|
102
|
+
*/
|
|
103
|
+
protected async configureValidator() {
|
|
104
|
+
const config = await this.app.container.make('config')
|
|
105
|
+
validator.configure(config.get('validator', {}))
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Registers bindings
|
|
110
|
+
*/
|
|
111
|
+
register() {
|
|
112
|
+
this.registerApp()
|
|
113
|
+
this.registerAce()
|
|
114
|
+
this.registerLoggerManager()
|
|
115
|
+
this.registerLogger()
|
|
116
|
+
this.registerConfig()
|
|
117
|
+
this.registerEmitter()
|
|
118
|
+
this.registerEncryption()
|
|
119
|
+
this.registerTestUtils()
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
async boot() {
|
|
123
|
+
await this.configureValidator()
|
|
124
|
+
}
|
|
125
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @adonisjs/core
|
|
3
|
+
*
|
|
4
|
+
* (c) AdonisJS
|
|
5
|
+
*
|
|
6
|
+
* For the full copyright and license information, please view the LICENSE
|
|
7
|
+
* file that was distributed with this source code.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import type { ApplicationService } from '../src/types.js'
|
|
11
|
+
import { Argon, Bcrypt, Hash, Scrypt, driversList } from '../modules/hash/main.js'
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Registers the passwords hasher with the container
|
|
15
|
+
*/
|
|
16
|
+
export default class HashServiceProvider {
|
|
17
|
+
constructor(protected app: ApplicationService) {}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Registering bundled drivers with the driversList collection
|
|
21
|
+
*/
|
|
22
|
+
protected registerHashDrivers() {
|
|
23
|
+
driversList.extend('bcrypt', (config) => new Bcrypt(config))
|
|
24
|
+
driversList.extend('scrypt', (config) => new Scrypt(config))
|
|
25
|
+
driversList.extend('argon2', (config) => new Argon(config))
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Registering the hash class to resolve an instance with the
|
|
30
|
+
* default hasher.
|
|
31
|
+
*/
|
|
32
|
+
protected registerHash() {
|
|
33
|
+
this.app.container.singleton(Hash, async (resolver) => {
|
|
34
|
+
const hashManager = await resolver.make('hash')
|
|
35
|
+
return hashManager.use()
|
|
36
|
+
})
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Registers the hash manager with the container
|
|
41
|
+
*/
|
|
42
|
+
protected registerHashManager() {
|
|
43
|
+
this.app.container.singleton('hash', async () => {
|
|
44
|
+
const { HashManager } = await import('../modules/hash/main.js')
|
|
45
|
+
const config = this.app.config.get<any>('hash')
|
|
46
|
+
return new HashManager(config)
|
|
47
|
+
})
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Registers bindings
|
|
52
|
+
*/
|
|
53
|
+
register() {
|
|
54
|
+
this.registerHashDrivers()
|
|
55
|
+
this.registerHashManager()
|
|
56
|
+
this.registerHash()
|
|
57
|
+
}
|
|
58
|
+
}
|