initial commit
This commit is contained in:
commit
4fc3bb0a01
202 changed files with 41729 additions and 0 deletions
73
contracts/auth.ts
Normal file
73
contracts/auth.ts
Normal file
|
@ -0,0 +1,73 @@
|
|||
/**
|
||||
* Contract source: https://git.io/JOdz5
|
||||
*
|
||||
* Feel free to let us know via PR, if you find something broken in this
|
||||
* file.
|
||||
*/
|
||||
|
||||
import User from 'App/Models/User';
|
||||
|
||||
declare module '@ioc:Adonis/Addons/Auth' {
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Providers
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The providers are used to fetch users. The Auth module comes pre-bundled
|
||||
| with two providers that are `Lucid` and `Database`. Both uses database
|
||||
| to fetch user details.
|
||||
|
|
||||
| You can also create and register your own custom providers.
|
||||
|
|
||||
*/
|
||||
interface ProvidersList {
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| User Provider
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following provider uses Lucid models as a driver for fetching user
|
||||
| details from the database for authentication.
|
||||
|
|
||||
| You can create multiple providers using the same underlying driver with
|
||||
| different Lucid models.
|
||||
|
|
||||
*/
|
||||
user: {
|
||||
implementation: LucidProviderContract<typeof User>;
|
||||
config: LucidProviderConfig<typeof User>;
|
||||
};
|
||||
}
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Guards
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The guards are used for authenticating users using different drivers.
|
||||
| The auth module comes with 3 different guards.
|
||||
|
|
||||
| - SessionGuardContract
|
||||
| - BasicAuthGuardContract
|
||||
| - OATGuardContract ( Opaque access token )
|
||||
|
|
||||
| Every guard needs a provider for looking up users from the database.
|
||||
|
|
||||
*/
|
||||
interface GuardsList {
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Web Guard
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The web guard uses sessions for maintaining user login state. It uses
|
||||
| the `user` provider for fetching user details.
|
||||
|
|
||||
*/
|
||||
web: {
|
||||
implementation: SessionGuardContract<'user', 'web'>;
|
||||
config: SessionGuardConfig<'user'>;
|
||||
client: SessionClientContract<'user'>;
|
||||
};
|
||||
}
|
||||
}
|
13
contracts/drive.ts
Normal file
13
contracts/drive.ts
Normal file
|
@ -0,0 +1,13 @@
|
|||
/**
|
||||
* Contract source: https://git.io/JBt3I
|
||||
*
|
||||
* Feel free to let us know via PR, if you find something broken in this contract
|
||||
* file.
|
||||
*/
|
||||
|
||||
import type { InferDisksFromConfig } from '@adonisjs/core/build/config';
|
||||
import type driveConfig from '../config/drive';
|
||||
|
||||
declare module '@ioc:Adonis/Core/Drive' {
|
||||
interface DisksList extends InferDisksFromConfig<typeof driveConfig> {}
|
||||
}
|
23
contracts/env.ts
Normal file
23
contracts/env.ts
Normal file
|
@ -0,0 +1,23 @@
|
|||
/**
|
||||
* Contract source: https://git.io/JTm6U
|
||||
*
|
||||
* Feel free to let us know via PR, if you find something broken in this contract
|
||||
* file.
|
||||
*/
|
||||
|
||||
declare module '@ioc:Adonis/Core/Env' {
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Getting types for validated environment variables
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The `default` export from the "../env.ts" file exports types for the
|
||||
| validated environment variables. Here we merge them with the `EnvTypes`
|
||||
| interface so that you can enjoy intellisense when using the "Env"
|
||||
| module.
|
||||
|
|
||||
*/
|
||||
|
||||
type CustomTypes = typeof import('../env').default;
|
||||
interface EnvTypes extends CustomTypes {}
|
||||
}
|
31
contracts/events.ts
Normal file
31
contracts/events.ts
Normal file
|
@ -0,0 +1,31 @@
|
|||
/**
|
||||
* Contract source: https://git.io/JfefG
|
||||
*
|
||||
* Feel free to let us know via PR, if you find something broken in this contract
|
||||
* file.
|
||||
*/
|
||||
|
||||
declare module '@ioc:Adonis/Core/Event' {
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Define typed events
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| You can define types for events inside the following interface and
|
||||
| AdonisJS will make sure that all listeners and emit calls adheres
|
||||
| to the defined types.
|
||||
|
|
||||
| For example:
|
||||
|
|
||||
| interface EventsList {
|
||||
| 'new:user': UserModel
|
||||
| }
|
||||
|
|
||||
| Now calling `Event.emit('new:user')` will statically ensure that passed value is
|
||||
| an instance of the the UserModel only.
|
||||
|
|
||||
*/
|
||||
interface EventsList {
|
||||
//
|
||||
}
|
||||
}
|
13
contracts/hash.ts
Normal file
13
contracts/hash.ts
Normal file
|
@ -0,0 +1,13 @@
|
|||
/**
|
||||
* Contract source: https://git.io/Jfefs
|
||||
*
|
||||
* Feel free to let us know via PR, if you find something broken in this contract
|
||||
* file.
|
||||
*/
|
||||
|
||||
import type { InferListFromConfig } from '@adonisjs/core/build/config';
|
||||
import type hashConfig from '../config/hash';
|
||||
|
||||
declare module '@ioc:Adonis/Core/Hash' {
|
||||
interface HashersList extends InferListFromConfig<typeof hashConfig> {}
|
||||
}
|
5
contracts/orm.ts
Normal file
5
contracts/orm.ts
Normal file
|
@ -0,0 +1,5 @@
|
|||
declare module '@ioc:Adonis/Lucid/Orm' {
|
||||
interface ModelQueryBuilderContract<Model extends LucidModel, Result = InstanceType<Model>> {
|
||||
pluck(value: string, id?: string): Promise<Object>;
|
||||
}
|
||||
}
|
18
contracts/tests.ts
Normal file
18
contracts/tests.ts
Normal file
|
@ -0,0 +1,18 @@
|
|||
/**
|
||||
* Contract source: https://bit.ly/3DP1ypf
|
||||
*
|
||||
* Feel free to let us know via PR, if you find something broken in this contract
|
||||
* file.
|
||||
*/
|
||||
|
||||
import '@japa/runner';
|
||||
|
||||
declare module '@japa/runner' {
|
||||
interface TestContext {
|
||||
// Extend context
|
||||
}
|
||||
|
||||
interface Test<TestData> {
|
||||
// Extend test
|
||||
}
|
||||
}
|
Loading…
Add table
editor.link_modal.header
Reference in a new issue