@@ -488,7 +488,7 @@ import { Elysia, t } from 'elysia'
488
488
class Note {
489
489
constructor (public data : string [] = [' Moonhalo' ]) {}
490
490
491
- add(note : string ) {// [!code ++]
491
+ add(note : string ) { // [!code ++]
492
492
this .data .push (note ) // [!code ++]
493
493
// [!code ++]
494
494
return this .data // [!code ++]
@@ -764,7 +764,7 @@ Let's create a `user.ts` file that will handle the user authentication:
764
764
765
765
``` typescript [user.ts]
766
766
import { Elysia , t } from ' elysia' // [!code ++]
767
- // [!code ++]
767
+ // [!code ++]
768
768
export const user = new Elysia ({ prefix: ' /user' }) // [!code ++]
769
769
.state ({ // [!code ++]
770
770
user: {} as Record <string , string >, // [!code ++]
@@ -778,9 +778,9 @@ export const user = new Elysia({ prefix: '/user' }) // [!code ++]
778
778
success: false , // [!code ++]
779
779
message: ' User already exists' // [!code ++]
780
780
}) // [!code ++]
781
- // [!code ++]
781
+ // [!code ++]
782
782
store .user [username ] = await Bun .password .hash (password ) // [!code ++]
783
- // [!code ++]
783
+ // [!code ++]
784
784
return { // [!code ++]
785
785
success: true , // [!code ++]
786
786
message: ' User created' // [!code ++]
@@ -819,8 +819,7 @@ export const user = new Elysia({ prefix: '/user' }) // [!code ++]
819
819
message: ` Signed in as ${username } ` // [!code ++]
820
820
} // [!code ++]
821
821
}, // [!code ++]
822
- { // [!code ++]
823
- // [!code ++]
822
+ { // [!code ++]
824
823
body: t .Object ({ // [!code ++]
825
824
username: t .String ({ minLength: 1 }), // [!code ++]
826
825
password: t .String ({ minLength: 8 }) // [!code ++]
@@ -830,7 +829,6 @@ export const user = new Elysia({ prefix: '/user' }) // [!code ++]
830
829
token: t .Number () // [!code ++]
831
830
}, // [!code ++]
832
831
{ // [!code ++]
833
- // [!code ++]
834
832
secrets: ' seia' // [!code ++]
835
833
} // [!code ++]
836
834
) // [!code ++]
@@ -912,9 +910,9 @@ export const user = new Elysia({ prefix: '/user' })
912
910
message: ' User created'
913
911
}
914
912
},
915
- {
913
+ { // [!code ++]
916
914
body: ' signIn' // [!code ++]
917
- }
915
+ } // [!code ++]
918
916
)
919
917
.post (
920
918
' /sign-in' ,
@@ -942,10 +940,10 @@ export const user = new Elysia({ prefix: '/user' })
942
940
message: ` Signed in as ${username } `
943
941
}
944
942
},
945
- {
943
+ { // [!code ++]
946
944
body: ' signIn' , // [!code ++]
947
945
cookie: ' session' // [!code ++]
948
- }
946
+ } // [!code ++]
949
947
)
950
948
```
951
949
@@ -1043,7 +1041,7 @@ export const user = new Elysia({ prefix: '/user' })
1043
1041
' /sign-out' , // [!code ++]
1044
1042
({ cookie : { token } }) => { // [!code ++]
1045
1043
token .remove () // [!code ++]
1046
- // [!code ++]
1044
+ // [!code ++]
1047
1045
return { // [!code ++]
1048
1046
success: true , // [!code ++]
1049
1047
message: ' Signed out' // [!code ++]
@@ -1057,15 +1055,14 @@ export const user = new Elysia({ prefix: '/user' })
1057
1055
' /profile' , // [!code ++]
1058
1056
({ cookie : { token }, store : { session }, status }) => { // [!code ++]
1059
1057
const username = session [token .value ] // [!code ++]
1060
- // [!code ++]
1058
+ // [!code ++]
1061
1059
if (! username ) // [!code ++]
1062
1060
return status (401 , { // [!code ++]
1063
1061
success: false , // [!code ++]
1064
1062
message: ' Unauthorized' // [!code ++]
1065
1063
}) // [!code ++]
1066
- // [!code ++]
1067
- return {
1068
- // [!code ++]
1064
+ // [!code ++]
1065
+ return { // [!code ++]
1069
1066
success: true , // [!code ++]
1070
1067
username // [!code ++]
1071
1068
} // [!code ++]
@@ -1354,8 +1351,8 @@ export const note = new Elysia({ prefix: '/note' })
1354
1351
note .add ({ data , author: username }),
1355
1352
{ // [!code ++]
1356
1353
body: ' memo' // [!code ++]
1357
- }
1358
- ) // [!code ++]
1354
+ } // [!code ++]
1355
+ )
1359
1356
.guard ({
1360
1357
params: t .Object ({
1361
1358
index: t .Number ()
@@ -1381,15 +1378,15 @@ export const note = new Elysia({ prefix: '/note' })
1381
1378
if (index in note .data ) return note .update (index , data ) // [!code --]
1382
1379
({ note , params : { index }, body : { data }, status , username }) => { // [!code ++]
1383
1380
if (index in note .data ) // [!code ++]
1384
- return note .update (index , { data , author: username })) // [!code ++]
1381
+ return note .update (index , { data , author: username }) // [!code ++]
1385
1382
1386
1383
return status (422 )
1387
1384
},
1388
1385
{
1389
1386
body : t .Object ({ // [!code --]
1390
1387
data: t .String () // [!code --]
1391
1388
}), // [!code --]
1392
- body : ' memo'
1389
+ body : ' memo' // [!code ++]
1393
1390
}
1394
1391
)
1395
1392
` ` `
@@ -1584,7 +1581,7 @@ Now let's apply the OpenTelemetry plugin to our server.
1584
1581
::: code-group
1585
1582
1586
1583
` ` ` typescript [index .ts ]
1587
- import { Elysia , t } from ' elysia'
1584
+ import { Elysia } from ' elysia'
1588
1585
import { opentelemetry } from ' @elysiajs/opentelemetry' // [!code ++]
1589
1586
import { openapi } from ' @elysiajs/openapi'
1590
1587
0 commit comments