@@ -67,8 +67,9 @@ import {
6767 signIn ,
6868 signOut
6969} from ' aws-amplify/auth' ;
70- import { list } from ' aws-amplify/storage' ;
7170import { generateClient } from ' aws-amplify/api' ;
71+ import { list } from ' aws-amplify/storage' ;
72+
7273import outputs from ' ../amplify_outputs.json' ;
7374
7475const client = generateClient <Schema >();
@@ -79,7 +80,7 @@ export default defineNuxtPlugin({
7980
8081 setup() {
8182 // This configures Amplify on the client side of your Nuxt app
82- Amplify .configure (config , { ssr: true });
83+ Amplify .configure (outputs , { ssr: true });
8384
8485 return {
8586 provide: {
@@ -119,27 +120,25 @@ Make sure you call `Amplify.configure` as early as possible in your application
119120Example implementation:
120121
121122``` ts title="plugins/01.amplifyApis.server.ts"
123+ import type { FetchAuthSessionOptions } from ' aws-amplify/auth' ;
124+ import type { ListPaginateWithPathInput } from ' aws-amplify/storage' ;
122125import type { CookieRef } from ' nuxt/app' ;
123126import type { Schema } from ' ~/amplify/data/resource' ;
124- import type { ListPaginateWithPathInput } from ' aws-amplify/storage' ;
125- import type {
126- LibraryOptions ,
127- FetchAuthSessionOptions
128- } from ' @aws-amplify/core' ;
127+
129128import {
129+ createAWSCredentialsAndIdentityIdProvider ,
130130 createKeyValueStorageFromCookieStorageAdapter ,
131131 createUserPoolsTokenProvider ,
132- createAWSCredentialsAndIdentityIdProvider ,
133132 runWithAmplifyServerContext
134133} from ' aws-amplify/adapter-core' ;
135- import { parseAmplifyConfig } from ' aws-amplify/utils ' ;
134+ import { generateClient } from ' aws-amplify/api/server ' ;
136135import {
137136 fetchAuthSession ,
138137 fetchUserAttributes ,
139138 getCurrentUser
140139} from ' aws-amplify/auth/server' ;
141140import { list } from ' aws-amplify/storage/server' ;
142- import { generateClient } from ' aws-amplify/api/server ' ;
141+ import { parseAmplifyConfig } from ' aws-amplify/utils ' ;
143142
144143import outputs from ' ../amplify_outputs.json' ;
145144
@@ -273,7 +272,7 @@ export default defineNuxtPlugin({
273272 );
274273
275274 // Create the libraryOptions object
276- const libraryOptions: LibraryOptions = {
275+ const libraryOptions = {
277276 Auth: {
278277 tokenProvider ,
279278 credentialsProvider
@@ -423,11 +422,12 @@ Example implementation:
423422
424423``` ts title="plugins/02.authRedirect.ts"
425424import { Amplify } from ' aws-amplify' ;
425+
426426import outputs from ' ~/amplify_outputs.json' ;
427427
428428// Amplify.configure() only needs to be called on the client side
429429if (process .client ) {
430- Amplify .configure (config , { ssr: true });
430+ Amplify .configure (outputs , { ssr: true });
431431}
432432
433433export default defineNuxtPlugin ({
@@ -484,20 +484,20 @@ Example implementation:
484484
485485``` ts title="utils/amplifyUtils.ts"
486486import type { H3Event , EventHandlerRequest } from ' h3' ;
487+
487488import {
489+ AmplifyServer ,
490+ CookieStorage ,
491+ createAWSCredentialsAndIdentityIdProvider ,
488492 createKeyValueStorageFromCookieStorageAdapter ,
489493 createUserPoolsTokenProvider ,
490- createAWSCredentialsAndIdentityIdProvider ,
491494 runWithAmplifyServerContext ,
492- AmplifyServer ,
493- CookieStorage
494495} from ' aws-amplify/adapter-core' ;
495496import { parseAmplifyConfig } from ' aws-amplify/utils' ;
496497
497- import type { LibraryOptions } from ' @aws-amplify/core' ;
498498import outputs from ' ~/amplify_outputs.json' ;
499499
500- const amplifyConfig = parseAmplifyConfig (config );
500+ const amplifyConfig = parseAmplifyConfig (outputs );
501501
502502const createCookieStorageAdapter = (
503503 event : H3Event <EventHandlerRequest >
@@ -527,7 +527,7 @@ const createCookieStorageAdapter = (
527527
528528const createLibraryOptions = (
529529 event : H3Event <EventHandlerRequest >
530- ): LibraryOptions => {
530+ ) => {
531531 const cookieStorage = createCookieStorageAdapter (event );
532532 const keyValueStorage =
533533 createKeyValueStorageFromCookieStorageAdapter (cookieStorage );
@@ -571,6 +571,7 @@ Take implementing an API route `GET /api/current-user` , in `server/api/current-
571571
572572``` ts title="server/api/current-user.ts"
573573import { getCurrentUser } from ' aws-amplify/auth/server' ;
574+
574575import { runAmplifyApi } from ' ~/server/utils/amplifyUtils' ;
575576
576577export default defineEventHandler (async (event ) => {
0 commit comments