@adonisjs/core 7.0.0-next.14 → 7.0.0-next.16
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/{ace-DDzvaSs_.js → ace-D5GjAyyT.js} +3 -3
- package/build/app-DMrz0ZLL.js +5 -0
- package/build/{chunk-MjwdjG2f.js → chunk-D0OgPoSf.js} +1 -7
- package/build/commands/add.d.ts +4 -3
- package/build/commands/add.js +52 -16
- package/build/commands/build.js +3 -3
- package/build/commands/commands.json +1 -1
- package/build/commands/configure.js +2 -2
- package/build/commands/eject.js +3 -3
- package/build/commands/env/add.js +3 -3
- package/build/commands/generate_key.js +2 -2
- package/build/commands/inspect_rcfile.js +1 -1
- package/build/commands/list/routes.js +2 -2
- package/build/commands/make/command.js +2 -2
- package/build/commands/make/controller.js +2 -2
- package/build/commands/make/event.js +2 -2
- package/build/commands/make/exception.js +2 -2
- package/build/commands/make/listener.js +2 -2
- package/build/commands/make/middleware.js +3 -3
- package/build/commands/make/preload.js +3 -3
- package/build/commands/make/provider.js +3 -3
- package/build/commands/make/service.js +2 -2
- package/build/commands/make/test.js +2 -2
- package/build/commands/make/transformer.js +2 -2
- package/build/commands/make/validator.js +2 -2
- package/build/commands/make/view.js +2 -2
- package/build/commands/repl.js +1 -1
- package/build/commands/serve.js +3 -3
- package/build/commands/test.js +3 -3
- package/build/config-BCTXw_bK.js +5 -0
- package/build/{config_provider-CY-xuo2R.js → config_provider-DWVFHOQX.js} +3 -1
- package/build/container-Cgqjy9Cf.js +5 -0
- package/build/{core-CffBtWJW.js → core-C10-w2En.js} +39 -13
- package/build/create_kernel-Cn8zVtvt.js +3 -0
- package/build/{create_kernel-B7zWS8Zz.js → create_kernel-Cpqqa931.js} +1 -1
- package/build/define_config-BvoRgVYO.js +62 -0
- package/build/{dumper-C_sMcyFb.js → dumper-DX0_GFDa.js} +1 -1
- package/build/events-COq2WUF0.js +5 -0
- package/build/exceptions-DNMesP42.js +2 -0
- package/build/factories/core/ace.js +14 -13
- package/build/factories/core/ignitor.js +11 -10
- package/build/factories/core/main.js +21 -19
- package/build/factories/core/test_utils.js +18 -16
- package/build/factories/encryption.d.ts +1 -1
- package/build/factories/encryption.js +1 -1
- package/build/factories/stubs.js +8 -9
- package/build/{ignitor-Dil-rtCo.js → ignitor-pig7YqKm.js} +16 -8
- package/build/index.d.ts +1 -1
- package/build/index.js +8 -9
- package/build/{logger-Dha-0hp1.js → logger-pAx4u8AE.js} +3 -3
- package/build/main-Bfnr5tAw.js +2 -0
- package/build/main-CrS2YPbo.js +5 -0
- package/build/{main-2-nm3TiB.js → main-DURmA2iP.js} +4 -3
- package/build/{main-BrJQ1VAM.js → main-Ds47YsLG.js} +4 -5
- package/build/{main-BTUXw6He.js → main-GsybXyWG.js} +3 -3
- package/build/{main-CFmDHDls.js → main-SJINoEC5.js} +5 -10
- package/build/main-cAeS97DQ.js +5 -0
- package/build/modules/ace/codemods.js +1 -1
- package/build/modules/ace/main.js +1 -1
- package/build/modules/app.js +2 -2
- package/build/modules/bodyparser/bodyparser_middleware.js +1 -1
- package/build/modules/bodyparser/main.js +2 -2
- package/build/modules/config.js +2 -2
- package/build/modules/container.js +2 -2
- package/build/modules/dumper/main.js +2 -2
- package/build/modules/dumper/plugins/edge.js +1 -1
- package/build/modules/encryption/define_config.d.ts +127 -0
- package/build/modules/encryption/drivers/aes_256_cbc.d.ts +20 -0
- package/build/modules/encryption/drivers/aes_256_cbc.js +2 -0
- package/build/modules/encryption/drivers/aes_256_gcm.d.ts +21 -0
- package/build/modules/encryption/drivers/aes_256_gcm.js +2 -0
- package/build/modules/encryption/drivers/chacha20_poly1305.d.ts +21 -0
- package/build/modules/encryption/drivers/chacha20_poly1305.js +2 -0
- package/build/modules/encryption/main.d.ts +85 -0
- package/build/modules/encryption/main.js +5 -0
- package/build/modules/events.js +2 -2
- package/build/modules/hash/main.js +3 -4
- package/build/modules/http/main.js +2 -2
- package/build/modules/http/request_validator.d.ts +1 -3
- package/build/modules/logger.js +2 -2
- package/build/modules/repl.js +2 -2
- package/build/modules/transformers/main.js +2 -2
- package/build/providers/app_provider.d.ts +5 -4
- package/build/providers/app_provider.js +24 -16
- package/build/providers/edge_provider.js +3 -3
- package/build/providers/hash_provider.js +3 -4
- package/build/providers/repl_provider.js +7 -2
- package/build/providers/vinejs_provider.js +4 -5
- package/build/repl-CzHJfqZU.js +5 -0
- package/build/services/url_builder.d.ts +3 -3
- package/build/src/assembler_hooks/index_entities.d.ts +29 -1
- package/build/src/debug.d.ts +1 -1
- package/build/src/exceptions.js +1 -1
- package/build/src/helpers/main.js +1 -1
- package/build/src/helpers/string.js +1 -1
- package/build/src/helpers/verification_token.js +1 -1
- package/build/src/test_utils/main.js +7 -4
- package/build/src/types.d.ts +44 -99
- package/build/src/vine.js +1 -1
- package/build/{test_utils-c_TEaEHW.js → test_utils-74h6e0yB.js} +3 -3
- package/build/toolkit/main.js +1 -1
- package/build/types/encryption.d.ts +65 -1
- package/build/types/encryption.js +0 -1
- package/build/{utils-Dpa3iJz-.js → utils-CtGytdtt.js} +1 -0
- package/package.json +44 -42
- package/build/app-BK0PN3li.js +0 -5
- package/build/config-B2S2xfmN.js +0 -5
- package/build/container-ClFvcykQ.js +0 -5
- package/build/create_kernel-CsTq0pWc.js +0 -3
- package/build/debug-DURPi9xn.js +0 -3
- package/build/encryption-D2HGu0bU.js +0 -5
- package/build/events-B8hK42QT.js +0 -5
- package/build/main-D5xz2ZN1.js +0 -5
- package/build/main-q9TMzWUj.js +0 -5
- package/build/modules/encryption.d.ts +0 -18
- package/build/modules/encryption.js +0 -4
- package/build/repl-CumYg2V_.js +0 -5
- /package/build/{bodyparser_middleware-DTW0epKM.js → bodyparser_middleware-BmARtnYe.js} +0 -0
- /package/build/{decorate-DM0Sx1ye.js → decorate-CJcHOoD-.js} +0 -0
- /package/build/{edge-LQdCc1L3.js → edge-BVYR-Vjr.js} +0 -0
- /package/build/{main-BWftwyAK.js → main-BlJhxJJ2.js} +0 -0
- /package/build/{string-CJ7ewUFq.js → string-Cx6q_win.js} +0 -0
- /package/build/{verification_token-DXsW81rl.js → verification_token-DrdoU4RH.js} +0 -0
- /package/build/{vine-Bt4ymkM0.js → vine-DGint2rk.js} +0 -0
package/build/src/types.d.ts
CHANGED
|
@@ -8,9 +8,10 @@ import type { HttpServerEvents, LookupList, RoutesList, SignedURLOptions, UrlFor
|
|
|
8
8
|
import type { Dumper } from '../modules/dumper/dumper.ts';
|
|
9
9
|
import type { LoggerManager } from '../modules/logger.ts';
|
|
10
10
|
import type { HashManager } from '../modules/hash/main.ts';
|
|
11
|
-
import type { Encryption } from '../modules/encryption.ts';
|
|
12
11
|
import type { ManagerDriverFactory } from '../types/hash.ts';
|
|
13
12
|
import type { Router, Server } from '../modules/http/main.ts';
|
|
13
|
+
import { type EncryptionConfig } from '../types/encryption.ts';
|
|
14
|
+
import type { EncryptionManager } from '../modules/encryption/main.ts';
|
|
14
15
|
import type { ContainerResolveEventData } from '../types/container.ts';
|
|
15
16
|
import type { LoggerConfig, LoggerManagerConfig } from '../types/logger.ts';
|
|
16
17
|
/**
|
|
@@ -119,6 +120,30 @@ export interface HashersList {
|
|
|
119
120
|
export type InferHashers<T extends ConfigProvider<{
|
|
120
121
|
list: Record<string, ManagerDriverFactory>;
|
|
121
122
|
}>> = Awaited<ReturnType<T['resolver']>>['list'];
|
|
123
|
+
/**
|
|
124
|
+
* A list of known encryptors inferred from the user config.
|
|
125
|
+
* This interface should be extended in user code to register
|
|
126
|
+
* custom encryptors.
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* // Extending EncryptorsList in user code
|
|
130
|
+
* declare module '@adonisjs/core' {
|
|
131
|
+
* interface EncryptorsList {
|
|
132
|
+
* default: EncryptionConfig
|
|
133
|
+
* secondary: EncryptionConfig
|
|
134
|
+
* }
|
|
135
|
+
* }
|
|
136
|
+
*/
|
|
137
|
+
export interface EncryptorsList {
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Utility type to infer encryptors configurations from a config provider.
|
|
141
|
+
*
|
|
142
|
+
* @template T - The config provider type that resolves to an object with a 'list' property
|
|
143
|
+
*/
|
|
144
|
+
export type InferEncryptors<T extends ConfigProvider<{
|
|
145
|
+
list: Record<string, EncryptionConfig>;
|
|
146
|
+
}>> = Awaited<ReturnType<T['resolver']>>['list'];
|
|
122
147
|
/**
|
|
123
148
|
* ----------------------------------------------------------------
|
|
124
149
|
* Container services
|
|
@@ -132,77 +157,32 @@ export type InferHashers<T extends ConfigProvider<{
|
|
|
132
157
|
* Application service is a singleton resolved from
|
|
133
158
|
* the container. It provides access to the core application
|
|
134
159
|
* instance with all registered bindings.
|
|
135
|
-
*
|
|
136
|
-
* @example
|
|
137
|
-
* // Accessing application service in a controller
|
|
138
|
-
* export default class HomeController {
|
|
139
|
-
* async index({ app }: { app: ApplicationService }) {
|
|
140
|
-
* const version = app.version
|
|
141
|
-
* const env = app.env.get('NODE_ENV')
|
|
142
|
-
* }
|
|
143
|
-
* }
|
|
144
160
|
*/
|
|
145
161
|
export interface ApplicationService extends Application<ContainerBindings extends Record<any, any> ? ContainerBindings : never> {
|
|
146
162
|
}
|
|
147
163
|
/**
|
|
148
164
|
* Logger service is a singleton logger instance registered
|
|
149
165
|
* to the container. It provides access to configured loggers.
|
|
150
|
-
*
|
|
151
|
-
* @example
|
|
152
|
-
* // Using logger service in a controller
|
|
153
|
-
* export default class UserController {
|
|
154
|
-
* async store({ logger }: { logger: LoggerService }) {
|
|
155
|
-
* logger.info('Creating new user')
|
|
156
|
-
* logger.use('file').error('Failed to create user')
|
|
157
|
-
* }
|
|
158
|
-
* }
|
|
159
166
|
*/
|
|
160
167
|
export interface LoggerService extends LoggerManager<LoggersList extends Record<string, LoggerConfig> ? LoggersList : never> {
|
|
161
168
|
}
|
|
162
169
|
/**
|
|
163
170
|
* Emitter service is a singleton emitter instance registered
|
|
164
171
|
* to the container. It provides type-safe event emission and listening.
|
|
165
|
-
*
|
|
166
|
-
* @example
|
|
167
|
-
* // Using emitter service to emit events
|
|
168
|
-
* export default class UserController {
|
|
169
|
-
* async store({ emitter }: { emitter: EmitterService }) {
|
|
170
|
-
* const user = await User.create(data)
|
|
171
|
-
* emitter.emit('user:created', { user })
|
|
172
|
-
* }
|
|
173
|
-
* }
|
|
174
172
|
*/
|
|
175
173
|
export interface EmitterService extends Emitter<EventsList> {
|
|
176
174
|
}
|
|
177
175
|
/**
|
|
178
|
-
* Encryption service is a singleton
|
|
179
|
-
* registered
|
|
180
|
-
* functionality
|
|
181
|
-
*
|
|
182
|
-
* @example
|
|
183
|
-
* // Using encryption service
|
|
184
|
-
* export default class PaymentController {
|
|
185
|
-
* async process({ encryption }: { encryption: EncryptionService }) {
|
|
186
|
-
* const encrypted = encryption.encrypt('sensitive-data')
|
|
187
|
-
* const decrypted = encryption.decrypt(encrypted)
|
|
188
|
-
* }
|
|
189
|
-
* }
|
|
176
|
+
* Encryption service is a singleton instance of the EncryptionManager
|
|
177
|
+
* registered in the container. It provides encryption and decryption
|
|
178
|
+
* functionality with support for multiple encryptors.
|
|
190
179
|
*/
|
|
191
|
-
export interface EncryptionService extends
|
|
180
|
+
export interface EncryptionService extends EncryptionManager<EncryptorsList extends Record<string, EncryptionConfig> ? EncryptorsList : never> {
|
|
192
181
|
}
|
|
193
182
|
/**
|
|
194
183
|
* Http server service added to the container as a singleton.
|
|
195
184
|
* It provides access to the HTTP server instance for handling
|
|
196
185
|
* requests and responses.
|
|
197
|
-
*
|
|
198
|
-
* @example
|
|
199
|
-
* // Accessing server service in middleware
|
|
200
|
-
* export default class CustomMiddleware {
|
|
201
|
-
* async handle({ server }: { server: HttpServerService }, next: NextFn) {
|
|
202
|
-
* console.log('Server listening on:', server.getPort())
|
|
203
|
-
* return next()
|
|
204
|
-
* }
|
|
205
|
-
* }
|
|
206
186
|
*/
|
|
207
187
|
export interface HttpServerService extends Server {
|
|
208
188
|
}
|
|
@@ -210,14 +190,6 @@ export interface HttpServerService extends Server {
|
|
|
210
190
|
* Http router service added to the container as a singleton.
|
|
211
191
|
* It provides access to the application's router for defining
|
|
212
192
|
* and managing routes.
|
|
213
|
-
*
|
|
214
|
-
* @example
|
|
215
|
-
* // Using router service to define routes programmatically
|
|
216
|
-
* export default class RouteProvider {
|
|
217
|
-
* boot({ router }: { router: HttpRouterService }) {
|
|
218
|
-
* router.get('/api/health', () => ({ status: 'ok' }))
|
|
219
|
-
* }
|
|
220
|
-
* }
|
|
221
193
|
*/
|
|
222
194
|
export interface HttpRouterService extends Router {
|
|
223
195
|
}
|
|
@@ -225,49 +197,20 @@ export interface HttpRouterService extends Router {
|
|
|
225
197
|
* Url builder service offers a type-safe API for creating URLs
|
|
226
198
|
* for pre-registered routes. It ensures type safety when building
|
|
227
199
|
* URLs with parameters.
|
|
228
|
-
*
|
|
229
|
-
* @example
|
|
230
|
-
* // Using URL builder service
|
|
231
|
-
* export default class PostController {
|
|
232
|
-
* async show({ urlBuilder }: { urlBuilder: UrlBuilderService }) {
|
|
233
|
-
* const postUrl = urlBuilder.make('posts.show', { id: 1 })
|
|
234
|
-
* const userUrl = urlBuilder.make('users.profile', { username: 'john' })
|
|
235
|
-
* }
|
|
236
|
-
* }
|
|
237
200
|
*/
|
|
238
|
-
export interface
|
|
201
|
+
export interface UrlBuilderUrlFor extends UrlFor<RoutesList extends LookupList ? RoutesList : never, URLOptions> {
|
|
239
202
|
}
|
|
240
203
|
/**
|
|
241
204
|
* Url builder service offers a type-safe API for creating signed URLs
|
|
242
205
|
* for pre-registered routes. Signed URLs include a signature that prevents
|
|
243
206
|
* tampering and can have expiration times.
|
|
244
|
-
*
|
|
245
|
-
* @example
|
|
246
|
-
* // Using signed URL builder service
|
|
247
|
-
* export default class FileController {
|
|
248
|
-
* async getDownloadUrl({ signedUrlBuilder }: { signedUrlBuilder: SignedUrlBuilderService }) {
|
|
249
|
-
* const signedUrl = signedUrlBuilder.make('files.download',
|
|
250
|
-
* { id: 1 },
|
|
251
|
-
* { expiresIn: '1h' }
|
|
252
|
-
* )
|
|
253
|
-
* }
|
|
254
|
-
* }
|
|
255
207
|
*/
|
|
256
|
-
export interface
|
|
208
|
+
export interface UrlBuilderSignedUrlFor extends UrlFor<RoutesList extends LookupList ? RoutesList : never, SignedURLOptions> {
|
|
257
209
|
}
|
|
258
210
|
/**
|
|
259
211
|
* Hash service is a singleton instance of the HashManager
|
|
260
212
|
* registered in the container. It provides password hashing
|
|
261
213
|
* and verification functionality.
|
|
262
|
-
*
|
|
263
|
-
* @example
|
|
264
|
-
* // Using hash service for password management
|
|
265
|
-
* export default class AuthController {
|
|
266
|
-
* async register({ hash }: { hash: HashService }) {
|
|
267
|
-
* const hashedPassword = await hash.make('user-password')
|
|
268
|
-
* const isValid = await hash.verify(hashedPassword, 'user-password')
|
|
269
|
-
* }
|
|
270
|
-
* }
|
|
271
214
|
*/
|
|
272
215
|
export interface HashService extends HashManager<HashersList extends Record<string, ManagerDriverFactory> ? HashersList : never> {
|
|
273
216
|
}
|
|
@@ -275,16 +218,6 @@ export interface HashService extends HashManager<HashersList extends Record<stri
|
|
|
275
218
|
* A list of known container bindings. This interface defines
|
|
276
219
|
* all the services that are registered in the IoC container
|
|
277
220
|
* and available for dependency injection.
|
|
278
|
-
*
|
|
279
|
-
* @example
|
|
280
|
-
* // Accessing container bindings in a service
|
|
281
|
-
* export default class UserService {
|
|
282
|
-
* constructor(
|
|
283
|
-
* private logger: LoggerService,
|
|
284
|
-
* private hash: HashService,
|
|
285
|
-
* private emitter: EmitterService
|
|
286
|
-
* ) {}
|
|
287
|
-
* }
|
|
288
221
|
*/
|
|
289
222
|
export interface ContainerBindings {
|
|
290
223
|
/** Ace command-line kernel */
|
|
@@ -378,13 +311,25 @@ export type IndexEntitiesConfig = {
|
|
|
378
311
|
/** Path segments to skip from generated keys. Defaults to ['events'] */
|
|
379
312
|
skipSegments?: string[];
|
|
380
313
|
};
|
|
314
|
+
/** Configuration for transformers indexing */
|
|
381
315
|
transformers?: {
|
|
316
|
+
/** Whether to enable transformers indexing */
|
|
382
317
|
enabled?: boolean;
|
|
318
|
+
/** Whether to include shared props in transformers */
|
|
383
319
|
withSharedProps?: boolean;
|
|
320
|
+
/** Source directory for transformers */
|
|
384
321
|
source?: string;
|
|
322
|
+
/** Import alias for transformers */
|
|
385
323
|
importAlias?: string;
|
|
324
|
+
/** Glob patterns for matching transformer files */
|
|
386
325
|
glob?: string[];
|
|
387
326
|
/** Path segments to skip from generated keys. Defaults to ['transformers'] */
|
|
388
327
|
skipSegments?: string[];
|
|
389
328
|
};
|
|
329
|
+
/** Configuration for manifest generation */
|
|
330
|
+
manifest?: {
|
|
331
|
+
/** Whether to enable manifest generation */
|
|
332
|
+
enabled?: boolean;
|
|
333
|
+
include?: string[];
|
|
334
|
+
};
|
|
390
335
|
};
|
package/build/src/vine.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as VineMultipartFile } from "../vine-
|
|
1
|
+
import { t as VineMultipartFile } from "../vine-DGint2rk.js";
|
|
2
2
|
export { VineMultipartFile };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { t as Ignitor } from "./main-
|
|
2
|
-
import { t as IgnitorFactory } from "./ignitor-
|
|
3
|
-
import { t as TestUtils } from "./main-
|
|
1
|
+
import { t as Ignitor } from "./main-GsybXyWG.js";
|
|
2
|
+
import { t as IgnitorFactory } from "./ignitor-pig7YqKm.js";
|
|
3
|
+
import { t as TestUtils } from "./main-DURmA2iP.js";
|
|
4
4
|
var TestUtilsFactory = class {
|
|
5
5
|
create(ignitorOrAppRoot, options) {
|
|
6
6
|
if (ignitorOrAppRoot instanceof Ignitor) return new TestUtils(ignitorOrAppRoot.createApp("test"));
|
package/build/toolkit/main.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { t as __decorate } from "../decorate-
|
|
2
|
+
import { t as __decorate } from "../decorate-CJcHOoD-.js";
|
|
3
3
|
import { BaseCommand, HelpCommand, IndexGenerator, Kernel, ListLoader, args } from "@adonisjs/ace";
|
|
4
4
|
import { join } from "node:path";
|
|
5
5
|
var IndexCommand = class extends BaseCommand {
|
|
@@ -1 +1,65 @@
|
|
|
1
|
-
|
|
1
|
+
import { type EncryptionDriverContract } from '@boringnode/encryption/types';
|
|
2
|
+
/**
|
|
3
|
+
* Contract that all encryption drivers must implement.
|
|
4
|
+
*
|
|
5
|
+
* Defines the interface for encrypting and decrypting values, including
|
|
6
|
+
* support for optional purpose binding and child key derivation.
|
|
7
|
+
*/
|
|
8
|
+
export type { EncryptionDriverContract } from '@boringnode/encryption/types';
|
|
9
|
+
/**
|
|
10
|
+
* Factory function signature for creating encryption driver instances.
|
|
11
|
+
*
|
|
12
|
+
* The factory receives an encryption key and returns a configured
|
|
13
|
+
* driver instance. This pattern allows the manager to create drivers
|
|
14
|
+
* on-demand with different keys.
|
|
15
|
+
*/
|
|
16
|
+
export type { ManagerDriverFactory } from '@boringnode/encryption/types';
|
|
17
|
+
/**
|
|
18
|
+
* Configuration options for the AES-256-CBC encryption driver.
|
|
19
|
+
*
|
|
20
|
+
* Includes the driver identifier and a list of encryption keys.
|
|
21
|
+
* The first key is used for encryption, while all keys are tried
|
|
22
|
+
* for decryption (allowing for key rotation).
|
|
23
|
+
*/
|
|
24
|
+
export type { AES256CBCDriverConfig } from '@boringnode/encryption/drivers/aes_256_cbc';
|
|
25
|
+
/**
|
|
26
|
+
* Configuration options for the AES-256-GCM encryption driver.
|
|
27
|
+
*
|
|
28
|
+
* Includes the driver identifier and a list of encryption keys.
|
|
29
|
+
* The first key is used for encryption, while all keys are tried
|
|
30
|
+
* for decryption (allowing for key rotation).
|
|
31
|
+
*/
|
|
32
|
+
export type { AES256GCMDriverConfig } from '@boringnode/encryption/drivers/aes_256_gcm';
|
|
33
|
+
/**
|
|
34
|
+
* Configuration options for the ChaCha20-Poly1305 encryption driver.
|
|
35
|
+
*
|
|
36
|
+
* Includes the driver identifier and a list of encryption keys.
|
|
37
|
+
* The first key is used for encryption, while all keys are tried
|
|
38
|
+
* for decryption (allowing for key rotation).
|
|
39
|
+
*/
|
|
40
|
+
export type { ChaCha20Poly1305DriverConfig } from '@boringnode/encryption/drivers/chacha20_poly1305';
|
|
41
|
+
/**
|
|
42
|
+
* Configuration object for encryption drivers. Defines how encryption
|
|
43
|
+
* and decryption should be performed with support for key rotation.
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* const config: EncryptionConfig = {
|
|
47
|
+
* driver: (key) => new SecureEncryptor(key),
|
|
48
|
+
* keys: [
|
|
49
|
+
* 'new-encryption-key', // Used for encryption
|
|
50
|
+
* 'old-encryption-key' // Used only for decryption
|
|
51
|
+
* ]
|
|
52
|
+
* }
|
|
53
|
+
*/
|
|
54
|
+
export interface EncryptionConfig {
|
|
55
|
+
/**
|
|
56
|
+
* Factory function that creates a driver instance for a given key
|
|
57
|
+
* @param key - The encryption key to use
|
|
58
|
+
*/
|
|
59
|
+
driver: (key: string) => EncryptionDriverContract;
|
|
60
|
+
/**
|
|
61
|
+
* List of keys to use for encryption/decryption.
|
|
62
|
+
* The first key is used for encryption, all keys are tried for decryption.
|
|
63
|
+
*/
|
|
64
|
+
keys: string[];
|
|
65
|
+
}
|
|
@@ -10,6 +10,7 @@ async function importTypeScript(app) {
|
|
|
10
10
|
}
|
|
11
11
|
async function outputTransformerDataObjects(transformersList, buffer, withSharedProps) {
|
|
12
12
|
const importsBuffer = buffer.create();
|
|
13
|
+
importsBuffer.write(`/// <reference path="./manifest.d.ts" />`);
|
|
13
14
|
importsBuffer.write(`import type { InferData, InferVariants } from '@adonisjs/core/types/transformers'`);
|
|
14
15
|
if (withSharedProps) importsBuffer.write(`import type { InferSharedProps } from '@adonisjs/inertia/types'`);
|
|
15
16
|
buffer.writeLine(importsBuffer);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adonisjs/core",
|
|
3
3
|
"description": "Core of AdonisJS",
|
|
4
|
-
"version": "7.0.0-next.
|
|
4
|
+
"version": "7.0.0-next.16",
|
|
5
5
|
"engines": {
|
|
6
6
|
"node": ">=24.0.0"
|
|
7
7
|
},
|
|
@@ -39,7 +39,10 @@
|
|
|
39
39
|
"./app": "./build/modules/app.js",
|
|
40
40
|
"./config": "./build/modules/config.js",
|
|
41
41
|
"./container": "./build/modules/container.js",
|
|
42
|
-
"./encryption": "./build/modules/encryption.js",
|
|
42
|
+
"./encryption": "./build/modules/encryption/main.js",
|
|
43
|
+
"./encryption/drivers/aes_256_cbc": "./build/modules/encryption/drivers/aes_256_cbc.js",
|
|
44
|
+
"./encryption/drivers/aes_256_gcm": "./build/modules/encryption/drivers/aes_256_gcm.js",
|
|
45
|
+
"./encryption/drivers/chacha20_poly1305": "./build/modules/encryption/drivers/chacha20_poly1305.js",
|
|
43
46
|
"./env": "./build/modules/env/main.js",
|
|
44
47
|
"./dumper": "./build/modules/dumper/main.js",
|
|
45
48
|
"./dumper/plugin_edge": "./build/modules/dumper/plugins/edge.js",
|
|
@@ -77,64 +80,64 @@
|
|
|
77
80
|
"index:commands": "node --import=@poppinss/ts-exec toolkit/main.js index build/commands"
|
|
78
81
|
},
|
|
79
82
|
"devDependencies": {
|
|
80
|
-
"@adonisjs/assembler": "^8.0.0-next.
|
|
81
|
-
"@adonisjs/eslint-config": "^3.0.0-next.
|
|
83
|
+
"@adonisjs/assembler": "^8.0.0-next.24",
|
|
84
|
+
"@adonisjs/eslint-config": "^3.0.0-next.5",
|
|
82
85
|
"@adonisjs/prettier-config": "^1.4.5",
|
|
83
86
|
"@adonisjs/tsconfig": "^2.0.0-next.3",
|
|
84
|
-
"@japa/assert": "^4.
|
|
85
|
-
"@japa/expect-type": "^2.0.
|
|
86
|
-
"@japa/file-system": "^
|
|
87
|
-
"@japa/runner": "^
|
|
88
|
-
"@japa/snapshot": "^2.0.
|
|
87
|
+
"@japa/assert": "^4.2.0",
|
|
88
|
+
"@japa/expect-type": "^2.0.4",
|
|
89
|
+
"@japa/file-system": "^3.0.0",
|
|
90
|
+
"@japa/runner": "^5.0.0",
|
|
91
|
+
"@japa/snapshot": "^2.0.10",
|
|
89
92
|
"@poppinss/ts-exec": "^1.4.1",
|
|
90
|
-
"@release-it/conventional-changelog": "^10.0.
|
|
91
|
-
"@types/node": "^
|
|
93
|
+
"@release-it/conventional-changelog": "^10.0.4",
|
|
94
|
+
"@types/node": "^25.0.3",
|
|
92
95
|
"@types/pretty-hrtime": "^1.0.3",
|
|
93
96
|
"@types/sinon": "^21.0.0",
|
|
94
97
|
"@types/supertest": "^6.0.3",
|
|
95
98
|
"@types/test-console": "^2.0.3",
|
|
96
|
-
"@vinejs/vine": "^4.
|
|
99
|
+
"@vinejs/vine": "^4.2.0",
|
|
97
100
|
"argon2": "^0.44.0",
|
|
98
101
|
"bcrypt": "^6.0.0",
|
|
99
102
|
"c8": "^10.1.3",
|
|
100
103
|
"copyfiles": "^2.4.1",
|
|
101
104
|
"cross-env": "^10.1.0",
|
|
102
105
|
"del-cli": "^7.0.0",
|
|
103
|
-
"edge.js": "^6.
|
|
104
|
-
"eslint": "^9.39.
|
|
106
|
+
"edge.js": "^6.4.0",
|
|
107
|
+
"eslint": "^9.39.2",
|
|
105
108
|
"execa": "^9.6.1",
|
|
106
109
|
"get-port": "^7.1.0",
|
|
107
110
|
"pino-pretty": "^13.1.3",
|
|
108
|
-
"prettier": "^3.7.
|
|
109
|
-
"release-it": "^19.0
|
|
111
|
+
"prettier": "^3.7.4",
|
|
112
|
+
"release-it": "^19.1.0",
|
|
110
113
|
"sinon": "^21.0.0",
|
|
111
114
|
"supertest": "^7.1.4",
|
|
112
115
|
"test-console": "^2.0.0",
|
|
113
116
|
"timekeeper": "^2.3.1",
|
|
114
|
-
"tsdown": "^0.
|
|
117
|
+
"tsdown": "^0.18.1",
|
|
115
118
|
"typedoc": "^0.28.15",
|
|
116
119
|
"typescript": "^5.9.3",
|
|
117
|
-
"youch": "^4.1.0-beta.
|
|
120
|
+
"youch": "^4.1.0-beta.13"
|
|
118
121
|
},
|
|
119
122
|
"dependencies": {
|
|
120
|
-
"@adonisjs/ace": "^14.0.1-next.
|
|
121
|
-
"@adonisjs/application": "^9.0.0-next.
|
|
122
|
-
"@adonisjs/bodyparser": "^11.0.0-next.
|
|
123
|
-
"@adonisjs/config": "^6.
|
|
124
|
-
"@adonisjs/
|
|
125
|
-
"@adonisjs/
|
|
126
|
-
"@adonisjs/events": "^10.1.0-next.2",
|
|
123
|
+
"@adonisjs/ace": "^14.0.1-next.4",
|
|
124
|
+
"@adonisjs/application": "^9.0.0-next.12",
|
|
125
|
+
"@adonisjs/bodyparser": "^11.0.0-next.5",
|
|
126
|
+
"@adonisjs/config": "^6.1.0-next.0",
|
|
127
|
+
"@adonisjs/env": "^7.0.0-next.3",
|
|
128
|
+
"@adonisjs/events": "^10.1.0-next.3",
|
|
127
129
|
"@adonisjs/fold": "^11.0.0-next.3",
|
|
128
|
-
"@adonisjs/hash": "^10.0.0-next.
|
|
129
|
-
"@adonisjs/health": "^3.1.0-next.
|
|
130
|
-
"@adonisjs/http-server": "^8.0.0-next.
|
|
131
|
-
"@adonisjs/http-transformers": "^1.6.
|
|
132
|
-
"@adonisjs/logger": "^7.1.0-next.
|
|
133
|
-
"@adonisjs/repl": "^5.0.0-next.
|
|
134
|
-
"@
|
|
130
|
+
"@adonisjs/hash": "^10.0.0-next.2",
|
|
131
|
+
"@adonisjs/health": "^3.1.0-next.1",
|
|
132
|
+
"@adonisjs/http-server": "^8.0.0-next.16",
|
|
133
|
+
"@adonisjs/http-transformers": "^1.6.1",
|
|
134
|
+
"@adonisjs/logger": "^7.1.0-next.3",
|
|
135
|
+
"@adonisjs/repl": "^5.0.0-next.1",
|
|
136
|
+
"@boringnode/encryption": "^0.2.2",
|
|
137
|
+
"@poppinss/colors": "^4.1.6",
|
|
135
138
|
"@poppinss/dumper": "^0.7.0",
|
|
136
139
|
"@poppinss/macroable": "^1.1.0",
|
|
137
|
-
"@poppinss/utils": "^7.0.0-next.
|
|
140
|
+
"@poppinss/utils": "^7.0.0-next.4",
|
|
138
141
|
"@sindresorhus/is": "^7.1.1",
|
|
139
142
|
"@types/he": "^1.2.3",
|
|
140
143
|
"error-stack-parser-es": "^1.0.5",
|
|
@@ -143,13 +146,13 @@
|
|
|
143
146
|
"string-width": "^8.1.0"
|
|
144
147
|
},
|
|
145
148
|
"peerDependencies": {
|
|
146
|
-
"@adonisjs/assembler": "^8.0.0-next.
|
|
147
|
-
"@vinejs/vine": "^4.0.0
|
|
148
|
-
"argon2": "^0.
|
|
149
|
+
"@adonisjs/assembler": "^8.0.0-next.23",
|
|
150
|
+
"@vinejs/vine": "^4.0.0",
|
|
151
|
+
"argon2": "^0.44.0",
|
|
149
152
|
"bcrypt": "^6.0.0",
|
|
150
153
|
"edge.js": "^6.2.0",
|
|
151
|
-
"
|
|
152
|
-
"
|
|
154
|
+
"pino-pretty": "^13.1.3",
|
|
155
|
+
"youch": "^4.1.0-beta.13"
|
|
153
156
|
},
|
|
154
157
|
"peerDependenciesMeta": {
|
|
155
158
|
"argon2": {
|
|
@@ -235,13 +238,12 @@
|
|
|
235
238
|
"modules/bodyparser/bodyparser_middleware.ts",
|
|
236
239
|
"modules/hash/main.ts",
|
|
237
240
|
"modules/hash/phc_formatter.ts",
|
|
238
|
-
"modules/hash/drivers
|
|
239
|
-
"modules/hash/drivers/bcrypt.ts",
|
|
240
|
-
"modules/hash/drivers/scrypt.ts",
|
|
241
|
+
"modules/hash/drivers/*.ts",
|
|
241
242
|
"modules/app.ts",
|
|
242
243
|
"modules/config.ts",
|
|
243
244
|
"modules/container.ts",
|
|
244
|
-
"modules/encryption.ts",
|
|
245
|
+
"modules/encryption/main.ts",
|
|
246
|
+
"modules/encryption/drivers/*.ts",
|
|
245
247
|
"modules/env/main.ts",
|
|
246
248
|
"modules/dumper/main.ts",
|
|
247
249
|
"modules/dumper/plugins/edge.ts",
|
package/build/app-BK0PN3li.js
DELETED
package/build/config-B2S2xfmN.js
DELETED
package/build/debug-DURPi9xn.js
DELETED
package/build/events-B8hK42QT.js
DELETED
package/build/main-D5xz2ZN1.js
DELETED
package/build/main-q9TMzWUj.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Encryption module re-exports all functionality from @adonisjs/encryption.
|
|
3
|
-
* This includes the Encryption class and related utilities for encrypting and
|
|
4
|
-
* decrypting data using various algorithms and key management strategies.
|
|
5
|
-
*
|
|
6
|
-
* @example
|
|
7
|
-
* // Import the Encryption class
|
|
8
|
-
* import { Encryption } from '@adonisjs/core/encryption'
|
|
9
|
-
*
|
|
10
|
-
* const encryption = new Encryption({ secret: 'your-secret-key' })
|
|
11
|
-
* const encrypted = encryption.encrypt('sensitive data')
|
|
12
|
-
* const decrypted = encryption.decrypt(encrypted)
|
|
13
|
-
*
|
|
14
|
-
* @example
|
|
15
|
-
* // Import encryption types and utilities
|
|
16
|
-
* import type { EncryptionConfig, DriverContract } from '@adonisjs/core/encryption'
|
|
17
|
-
*/
|
|
18
|
-
export * from '@adonisjs/encryption';
|
package/build/repl-CumYg2V_.js
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|