@@ -19,12 +19,12 @@ export function list(schema, request) {
19
19
20
20
if ( request . queryParams . letter ) {
21
21
let letter = request . queryParams . letter . toLowerCase ( ) ;
22
- crates = crates . filter ( crate => crate . id [ 0 ] . toLowerCase ( ) === letter ) ;
22
+ crates = crates . filter ( crate => crate . name [ 0 ] . toLowerCase ( ) === letter ) ;
23
23
}
24
24
25
25
if ( request . queryParams . q ) {
26
26
let q = request . queryParams . q . toLowerCase ( ) ;
27
- crates = crates . filter ( crate => crate . id . toLowerCase ( ) . includes ( q ) ) ;
27
+ crates = crates . filter ( crate => crate . name . toLowerCase ( ) . includes ( q ) ) ;
28
28
}
29
29
30
30
if ( request . queryParams . user_id ) {
@@ -39,7 +39,7 @@ export function list(schema, request) {
39
39
40
40
let { ids } = request . queryParams ;
41
41
if ( ids ) {
42
- crates = crates . filter ( crate => ids . includes ( crate . id ) ) ;
42
+ crates = crates . filter ( crate => ids . includes ( crate . name ) ) ;
43
43
}
44
44
45
45
if ( request . queryParams . sort === 'alpha' ) {
@@ -52,9 +52,9 @@ export function list(schema, request) {
52
52
export function register ( server ) {
53
53
server . get ( '/api/v1/crates' , list ) ;
54
54
55
- server . get ( '/api/v1/crates/:crate_id ' , function ( schema , request ) {
56
- let crateId = request . params . crate_id ;
57
- let crate = schema . crates . find ( crateId ) ;
55
+ server . get ( '/api/v1/crates/:name ' , function ( schema , request ) {
56
+ let { name } = request . params ;
57
+ let crate = schema . crates . findBy ( { name } ) ;
58
58
if ( ! crate ) return notFound ( ) ;
59
59
60
60
return {
@@ -65,14 +65,14 @@ export function register(server) {
65
65
} ;
66
66
} ) ;
67
67
68
- server . get ( '/api/v1/crates/:crateId /following' , ( schema , request ) => {
68
+ server . get ( '/api/v1/crates/:name /following' , ( schema , request ) => {
69
69
let { user } = getSession ( schema ) ;
70
70
if ( ! user ) {
71
71
return new Response ( 403 , { } , { errors : [ { detail : 'must be logged in to perform that action' } ] } ) ;
72
72
}
73
73
74
- let { crateId } = request . params ;
75
- let crate = schema . crates . find ( crateId ) ;
74
+ let { name } = request . params ;
75
+ let crate = schema . crates . findBy ( { name } ) ;
76
76
if ( ! crate ) {
77
77
return new Response ( 404 , { } , { errors : [ { detail : 'Not Found' } ] } ) ;
78
78
}
@@ -82,14 +82,14 @@ export function register(server) {
82
82
return { following } ;
83
83
} ) ;
84
84
85
- server . put ( '/api/v1/crates/:crateId /follow' , ( schema , request ) => {
85
+ server . put ( '/api/v1/crates/:name /follow' , ( schema , request ) => {
86
86
let { user } = getSession ( schema ) ;
87
87
if ( ! user ) {
88
88
return new Response ( 403 , { } , { errors : [ { detail : 'must be logged in to perform that action' } ] } ) ;
89
89
}
90
90
91
- let { crateId } = request . params ;
92
- let crate = schema . crates . find ( crateId ) ;
91
+ let { name } = request . params ;
92
+ let crate = schema . crates . findBy ( { name } ) ;
93
93
if ( ! crate ) {
94
94
return new Response ( 404 , { } , { errors : [ { detail : 'Not Found' } ] } ) ;
95
95
}
@@ -100,14 +100,14 @@ export function register(server) {
100
100
return { ok : true } ;
101
101
} ) ;
102
102
103
- server . delete ( '/api/v1/crates/:crateId /follow' , ( schema , request ) => {
103
+ server . delete ( '/api/v1/crates/:name /follow' , ( schema , request ) => {
104
104
let { user } = getSession ( schema ) ;
105
105
if ( ! user ) {
106
106
return new Response ( 403 , { } , { errors : [ { detail : 'must be logged in to perform that action' } ] } ) ;
107
107
}
108
108
109
- let { crateId } = request . params ;
110
- let crate = schema . crates . find ( crateId ) ;
109
+ let { name } = request . params ;
110
+ let crate = schema . crates . findBy ( { name } ) ;
111
111
if ( ! crate ) {
112
112
return new Response ( 404 , { } , { errors : [ { detail : 'Not Found' } ] } ) ;
113
113
}
@@ -118,56 +118,56 @@ export function register(server) {
118
118
return { ok : true } ;
119
119
} ) ;
120
120
121
- server . get ( '/api/v1/crates/:crate_id /versions' , ( schema , request ) => {
122
- let crateId = request . params . crate_id ;
123
- let crate = schema . crates . find ( crateId ) ;
121
+ server . get ( '/api/v1/crates/:name /versions' , ( schema , request ) => {
122
+ let { name } = request . params ;
123
+ let crate = schema . crates . findBy ( { name } ) ;
124
124
if ( ! crate ) return notFound ( ) ;
125
125
126
126
return crate . versions . sort ( ( a , b ) => compareIsoDates ( b . created_at , a . created_at ) ) ;
127
127
} ) ;
128
128
129
- server . get ( '/api/v1/crates/:crate_id /:version_num/authors' , ( schema , request ) => {
130
- let crateId = request . params . crate_id ;
131
- let crate = schema . crates . find ( crateId ) ;
129
+ server . get ( '/api/v1/crates/:name /:version_num/authors' , ( schema , request ) => {
130
+ let { name } = request . params ;
131
+ let crate = schema . crates . findBy ( { name } ) ;
132
132
if ( ! crate ) return notFound ( ) ;
133
133
134
134
let num = request . params . version_num ;
135
- let version = schema . versions . findBy ( { crateId, num } ) ;
136
- if ( ! version ) return { errors : [ { detail : `crate \`${ crateId } \` does not have a version \`${ num } \`` } ] } ;
135
+ let version = schema . versions . findBy ( { crateId : crate . id , num } ) ;
136
+ if ( ! version ) return { errors : [ { detail : `crate \`${ crate . name } \` does not have a version \`${ num } \`` } ] } ;
137
137
138
138
return { meta : { names : [ ] } , users : [ ] } ;
139
139
} ) ;
140
140
141
- server . get ( '/api/v1/crates/:crate_id /:version_num/dependencies' , ( schema , request ) => {
142
- let crateId = request . params . crate_id ;
143
- let crate = schema . crates . find ( crateId ) ;
141
+ server . get ( '/api/v1/crates/:name /:version_num/dependencies' , ( schema , request ) => {
142
+ let { name } = request . params ;
143
+ let crate = schema . crates . findBy ( { name } ) ;
144
144
if ( ! crate ) return notFound ( ) ;
145
145
146
146
let num = request . params . version_num ;
147
- let version = schema . versions . findBy ( { crateId, num } ) ;
148
- if ( ! version ) return { errors : [ { detail : `crate \`${ crateId } \` does not have a version \`${ num } \`` } ] } ;
147
+ let version = schema . versions . findBy ( { crateId : crate . id , num } ) ;
148
+ if ( ! version ) return { errors : [ { detail : `crate \`${ crate . name } \` does not have a version \`${ num } \`` } ] } ;
149
149
150
150
return schema . dependencies . where ( { versionId : version . id } ) ;
151
151
} ) ;
152
152
153
- server . get ( '/api/v1/crates/:crate_id /:version_num/downloads' , function ( schema , request ) {
154
- let crateId = request . params . crate_id ;
155
- let crate = schema . crates . find ( crateId ) ;
153
+ server . get ( '/api/v1/crates/:name /:version_num/downloads' , function ( schema , request ) {
154
+ let { name } = request . params ;
155
+ let crate = schema . crates . findBy ( { name } ) ;
156
156
if ( ! crate ) return notFound ( ) ;
157
157
158
158
let versionNum = request . params . version_num ;
159
- let version = schema . versions . findBy ( { crateId, num : versionNum } ) ;
160
- if ( ! version ) return { errors : [ { detail : `crate \`${ crateId } \` does not have a version \`${ versionNum } \`` } ] } ;
159
+ let version = schema . versions . findBy ( { crateId : crate . id , num : versionNum } ) ;
160
+ if ( ! version ) return { errors : [ { detail : `crate \`${ crate . name } \` does not have a version \`${ versionNum } \`` } ] } ;
161
161
162
162
return schema . versionDownloads . where ( { versionId : version . id } ) ;
163
163
} ) ;
164
164
165
- server . get ( '/api/v1/crates/:crate_id /owner_user' , function ( schema , request ) {
166
- let crateId = request . params . crate_id ;
167
- let crate = schema . crates . find ( crateId ) ;
165
+ server . get ( '/api/v1/crates/:name /owner_user' , function ( schema , request ) {
166
+ let { name } = request . params ;
167
+ let crate = schema . crates . findBy ( { name } ) ;
168
168
if ( ! crate ) return notFound ( ) ;
169
169
170
- let ownerships = schema . crateOwnerships . where ( { crateId } ) . filter ( it => it . userId ) . models ;
170
+ let ownerships = schema . crateOwnerships . where ( { crateId : crate . id } ) . filter ( it => it . userId ) . models ;
171
171
172
172
return {
173
173
users : ownerships . map ( it => {
@@ -178,12 +178,12 @@ export function register(server) {
178
178
} ;
179
179
} ) ;
180
180
181
- server . get ( '/api/v1/crates/:crate_id /owner_team' , function ( schema , request ) {
182
- let crateId = request . params . crate_id ;
183
- let crate = schema . crates . find ( crateId ) ;
181
+ server . get ( '/api/v1/crates/:name /owner_team' , function ( schema , request ) {
182
+ let { name } = request . params ;
183
+ let crate = schema . crates . findBy ( { name } ) ;
184
184
if ( ! crate ) return notFound ( ) ;
185
185
186
- let ownerships = schema . crateOwnerships . where ( { crateId } ) . filter ( it => it . teamId ) . models ;
186
+ let ownerships = schema . crateOwnerships . where ( { crateId : crate . id } ) . filter ( it => it . teamId ) . models ;
187
187
188
188
return {
189
189
teams : ownerships . map ( it => {
@@ -194,14 +194,14 @@ export function register(server) {
194
194
} ;
195
195
} ) ;
196
196
197
- server . get ( '/api/v1/crates/:crate_id /reverse_dependencies' , function ( schema , request ) {
198
- let crateId = request . params . crate_id ;
199
- let crate = schema . crates . find ( crateId ) ;
197
+ server . get ( '/api/v1/crates/:name /reverse_dependencies' , function ( schema , request ) {
198
+ let { name } = request . params ;
199
+ let crate = schema . crates . findBy ( { name } ) ;
200
200
if ( ! crate ) return notFound ( ) ;
201
201
202
202
let { start, end } = pageParams ( request ) ;
203
203
204
- let allDependencies = schema . dependencies . where ( { crateId : crateId } ) ;
204
+ let allDependencies = schema . dependencies . where ( { crateId : crate . id } ) ;
205
205
let dependencies = allDependencies . slice ( start , end ) ;
206
206
let total = allDependencies . length ;
207
207
@@ -214,19 +214,19 @@ export function register(server) {
214
214
} ;
215
215
} ) ;
216
216
217
- server . get ( '/api/v1/crates/:crate_id /downloads' , function ( schema , request ) {
218
- let crateId = request . params . crate_id ;
219
- let crate = schema . crates . find ( crateId ) ;
217
+ server . get ( '/api/v1/crates/:name /downloads' , function ( schema , request ) {
218
+ let { name } = request . params ;
219
+ let crate = schema . crates . findBy ( { name } ) ;
220
220
if ( ! crate ) return notFound ( ) ;
221
221
222
- let versionDownloads = schema . versionDownloads . all ( ) . filter ( it => it . version . crateId === crateId ) ;
222
+ let versionDownloads = schema . versionDownloads . all ( ) . filter ( it => it . version . crateId === crate . id ) ;
223
223
224
224
return withMeta ( this . serialize ( versionDownloads ) , { extra_downloads : crate . _extra_downloads } ) ;
225
225
} ) ;
226
226
227
- server . put ( '/api/v1/crates/:crate_id /owners' , ( schema , request ) => {
228
- const crateId = request . params . crate_id ;
229
- const crate = schema . crates . find ( crateId ) ;
227
+ server . put ( '/api/v1/crates/:name /owners' , ( schema , request ) => {
228
+ let { name } = request . params ;
229
+ let crate = schema . crates . findBy ( { name } ) ;
230
230
231
231
if ( ! crate ) {
232
232
return notFound ( ) ;
@@ -243,9 +243,9 @@ export function register(server) {
243
243
return { ok : true } ;
244
244
} ) ;
245
245
246
- server . delete ( '/api/v1/crates/:crate_id /owners' , ( schema , request ) => {
247
- const crateId = request . params . crate_id ;
248
- const crate = schema . crates . find ( crateId ) ;
246
+ server . delete ( '/api/v1/crates/:name /owners' , ( schema , request ) => {
247
+ let { name } = request . params ;
248
+ let crate = schema . crates . findBy ( { name } ) ;
249
249
250
250
if ( ! crate ) {
251
251
return notFound ( ) ;
@@ -262,23 +262,29 @@ export function register(server) {
262
262
return { ok : true , msg : 'owners successfully removed' } ;
263
263
} ) ;
264
264
265
- server . delete ( '/api/v1/crates/:crate_id/:version/yank' , ( schema , request ) => {
266
- const crateId = request . params . crate_id ;
267
- const versionNum = request . params . version ;
265
+ server . delete ( '/api/v1/crates/:name/:version/yank' , ( schema , request ) => {
266
+ const { name, version : versionNum } = request . params ;
267
+ const crate = schema . crates . findBy ( { name } ) ;
268
+ if ( ! crate ) {
269
+ return notFound ( ) ;
270
+ }
268
271
269
- const version = schema . versions . findBy ( { crateId, num : versionNum } ) ;
272
+ const version = schema . versions . findBy ( { crateId : crate . id , num : versionNum } ) ;
270
273
if ( ! version ) {
271
274
return notFound ( ) ;
272
275
}
273
276
274
277
return { } ;
275
278
} ) ;
276
279
277
- server . put ( '/api/v1/crates/:crate_id/:version/unyank' , ( schema , request ) => {
278
- const crateId = request . params . crate_id ;
279
- const versionNum = request . params . version ;
280
+ server . put ( '/api/v1/crates/:name/:version/unyank' , ( schema , request ) => {
281
+ const { name, version : versionNum } = request . params ;
282
+ const crate = schema . crates . findBy ( { name } ) ;
283
+ if ( ! crate ) {
284
+ return notFound ( ) ;
285
+ }
280
286
281
- const version = schema . versions . findBy ( { crateId, num : versionNum } ) ;
287
+ const version = schema . versions . findBy ( { crateId : crate . id , num : versionNum } ) ;
282
288
if ( ! version ) {
283
289
return notFound ( ) ;
284
290
}
0 commit comments