Skip to content

Commit

Permalink
Merge pull request #239 from adonisjs/fix/hard-dependency
Browse files Browse the repository at this point in the history
fix(mixins): remove withAuthFinder from root export
  • Loading branch information
thetutlage authored Apr 2, 2024
2 parents 016cc8c + f8a5715 commit d53cb84
Show file tree
Hide file tree
Showing 5 changed files with 36 additions and 3 deletions.
23 changes: 22 additions & 1 deletion index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,26 @@ export * as symbols from './src/symbols.js'
export { AuthManager } from './src/auth_manager.js'
export { defineConfig } from './src/define_config.js'
export { Authenticator } from './src/authenticator.js'
export { withAuthFinder } from './src/mixins/with_auth_finder.js'
export { AuthenticatorClient } from './src/authenticator_client.js'
import type { withAuthFinder as withAuthFinderType } from './src/mixins/with_auth_finder.js'

function isModuleInstalled(moduleName: string) {
try {
import.meta.resolve(moduleName)
return true
} catch (e) {
return false
}
}

/**
* @deprecated Import `withAuthFinder` from `@adonisjs/auth/mixins` instead
*/
let withAuthFinder: typeof withAuthFinderType

if (isModuleInstalled('@adonisjs/lucid')) {
const { withAuthFinder: withAuthFinderFn } = await import('./src/mixins/with_auth_finder.js')
withAuthFinder = withAuthFinderFn
}

export { withAuthFinder }
10 changes: 10 additions & 0 deletions mixins.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
/*
* @adonisjs/auth
*
* (c) AdonisJS
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/

export { withAuthFinder } from './src/mixins/with_auth_finder.js'
2 changes: 2 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
},
"exports": {
".": "./build/index.js",
"./mixins": "./build/mixins.js",
"./types": "./build/src/types.js",
"./auth_provider": "./build/providers/auth_provider.js",
"./plugins/api_client": "./build/src/plugins/japa/api_client.js",
Expand Down Expand Up @@ -177,6 +178,7 @@
"tsup": {
"entry": [
"./index.ts",
"./mixins.ts",
"./src/types.ts",
"./providers/auth_provider.ts",
"./src/plugins/japa/api_client.ts",
Expand Down
2 changes: 1 addition & 1 deletion tests/basic_auth/define_config.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import { AppFactory } from '@adonisjs/core/factories/app'
import type { ApplicationService } from '@adonisjs/core/types'
import { HttpContextFactory } from '@adonisjs/core/factories/http'

import { withAuthFinder } from '../../index.js'
import { withAuthFinder } from '../../src/mixins/with_auth_finder.js'
import { createEmitter, getHasher } from '../helpers.js'
import {
basicAuthGuard,
Expand Down
2 changes: 1 addition & 1 deletion tests/basic_auth/user_providers/lucid.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import { test } from '@japa/runner'
import { compose } from '@adonisjs/core/helpers'
import { BaseModel, column } from '@adonisjs/lucid/orm'

import { withAuthFinder } from '../../../index.js'
import { withAuthFinder } from '../../../src/mixins/with_auth_finder.js'
import { createDatabase, createTables, getHasher } from '../../helpers.js'
import { BasicAuthGuardUser } from '../../../modules/basic_auth_guard/types.js'
import { BasicAuthLucidUserProvider } from '../../../modules/basic_auth_guard/user_providers/lucid.js'
Expand Down

0 comments on commit d53cb84

Please sign in to comment.