This works locally, but crashes on Azure App Service. I’ve tried every possible way of importing managementclient and it fails. I’m also raising a support issue with my account manager.
auth0-mgmt.ts
import { ManagementClient } from "auth0"
export async function userNickname(userId: string): Promise<string | null> {
const m = new ManagementClient({
domain: process.env.AUTH0_ISSUER_BASE_URL ?? "",
clientId: process.env.AUTH0_MANAGEMENT_CLIENT_ID ?? "",
clientSecret: process.env.AUTH0_MANAGEMENT_CLIENT_SECRET ?? "",
})
try {
const user = await m.users.get({ id: userId, fields: "nickname" })
return user.data?.nickname
} catch (error) {
console.log("Error getting user nickname:", error)
return null
}
}
Here’s the stacktrace:
023-12-13T00:13:17.886814980Z import { ManagementClient } from "auth0"
2023-12-13T00:13:17.886823080Z ^
2023-12-13T00:13:17.886827981Z
2023-12-13T00:13:17.886832481Z SyntaxError: The requested module 'auth0' does not provide an export named 'ManagementClient'
2023-12-13T00:13:17.886837181Z at ModuleJob._instantiate (node:internal/modules/esm/module_job:131:21)
2023-12-13T00:13:17.886841582Z at async ModuleJob.run (node:internal/modules/esm/module_job:213:5)
2023-12-13T00:13:17.886845982Z at async ModuleLoader.import (node:internal/modules/esm/loader:316:24)
2023-12-13T00:13:17.886850682Z at async loadESM (node:internal/process/esm_loader:34:7)
2023-12-13T00:13:17.886858183Z at async handleMainPromise (node:internal/modules/run_main:66:12)
2023-12-13T00:13:17.894145144Z
2023-12-13T00:13:17.894163946Z Node.js v20.9.0
Here’s my package.json:
{
...
"private": true,
"type": "module",
...
"dependencies": {
...
"auth0": "^4.2.0",