@package-broker/core 0.7.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (197) hide show
  1. package/dist/factory.d.ts +2 -2
  2. package/dist/factory.d.ts.map +1 -1
  3. package/dist/factory.js +186 -66
  4. package/dist/factory.js.map +1 -1
  5. package/dist/modules/admin/admin.handlers.d.ts +25 -0
  6. package/dist/modules/admin/admin.handlers.d.ts.map +1 -0
  7. package/dist/modules/admin/admin.handlers.js +97 -0
  8. package/dist/modules/admin/admin.handlers.js.map +1 -0
  9. package/dist/modules/admin/admin.routes.d.ts +147 -0
  10. package/dist/modules/admin/admin.routes.d.ts.map +1 -0
  11. package/dist/modules/admin/admin.routes.js +130 -0
  12. package/dist/modules/admin/admin.routes.js.map +1 -0
  13. package/dist/modules/admin/index.d.ts +9 -0
  14. package/dist/modules/admin/index.d.ts.map +1 -0
  15. package/dist/modules/admin/index.js +19 -0
  16. package/dist/modules/admin/index.js.map +1 -0
  17. package/dist/modules/artifacts/artifacts.handlers.d.ts +18 -0
  18. package/dist/modules/artifacts/artifacts.handlers.d.ts.map +1 -0
  19. package/dist/modules/artifacts/artifacts.handlers.js +47 -0
  20. package/dist/modules/artifacts/artifacts.handlers.js.map +1 -0
  21. package/dist/modules/artifacts/artifacts.routes.d.ts +80 -0
  22. package/dist/modules/artifacts/artifacts.routes.d.ts.map +1 -0
  23. package/dist/modules/artifacts/artifacts.routes.js +79 -0
  24. package/dist/modules/artifacts/artifacts.routes.js.map +1 -0
  25. package/dist/modules/artifacts/index.d.ts +8 -0
  26. package/dist/modules/artifacts/index.d.ts.map +1 -0
  27. package/dist/modules/artifacts/index.js +14 -0
  28. package/dist/modules/artifacts/index.js.map +1 -0
  29. package/dist/modules/auth/auth.handlers.d.ts +51 -0
  30. package/dist/modules/auth/auth.handlers.d.ts.map +1 -0
  31. package/dist/modules/auth/auth.handlers.js +278 -0
  32. package/dist/modules/auth/auth.handlers.js.map +1 -0
  33. package/dist/modules/auth/auth.routes.d.ts +187 -0
  34. package/dist/modules/auth/auth.routes.d.ts.map +1 -0
  35. package/dist/modules/auth/auth.routes.js +136 -0
  36. package/dist/modules/auth/auth.routes.js.map +1 -0
  37. package/dist/modules/auth/index.d.ts +11 -0
  38. package/dist/modules/auth/index.d.ts.map +1 -0
  39. package/dist/modules/auth/index.js +34 -0
  40. package/dist/modules/auth/index.js.map +1 -0
  41. package/dist/modules/composer/composer.handlers.d.ts +3 -0
  42. package/dist/modules/composer/composer.handlers.d.ts.map +1 -0
  43. package/dist/modules/composer/composer.handlers.js +12 -0
  44. package/dist/modules/composer/composer.handlers.js.map +1 -0
  45. package/dist/modules/composer/index.d.ts +11 -0
  46. package/dist/modules/composer/index.d.ts.map +1 -0
  47. package/dist/modules/composer/index.js +40 -0
  48. package/dist/modules/composer/index.js.map +1 -0
  49. package/dist/modules/packages/index.d.ts +8 -0
  50. package/dist/modules/packages/index.d.ts.map +1 -0
  51. package/dist/modules/packages/index.js +19 -0
  52. package/dist/modules/packages/index.js.map +1 -0
  53. package/dist/modules/packages/packages.handlers.d.ts +50 -0
  54. package/dist/modules/packages/packages.handlers.d.ts.map +1 -0
  55. package/dist/modules/packages/packages.handlers.js +670 -0
  56. package/dist/modules/packages/packages.handlers.js.map +1 -0
  57. package/dist/modules/packages/packages.routes.d.ts +172 -0
  58. package/dist/modules/packages/packages.routes.d.ts.map +1 -0
  59. package/dist/modules/packages/packages.routes.js +160 -0
  60. package/dist/modules/packages/packages.routes.js.map +1 -0
  61. package/dist/modules/repositories/index.d.ts +8 -0
  62. package/dist/modules/repositories/index.d.ts.map +1 -0
  63. package/dist/modules/repositories/index.js +19 -0
  64. package/dist/modules/repositories/index.js.map +1 -0
  65. package/dist/modules/repositories/repositories.handlers.d.ts +29 -0
  66. package/dist/modules/repositories/repositories.handlers.d.ts.map +1 -0
  67. package/dist/modules/repositories/repositories.handlers.js +261 -0
  68. package/dist/modules/repositories/repositories.handlers.js.map +1 -0
  69. package/dist/modules/repositories/repositories.routes.d.ts +451 -0
  70. package/dist/modules/repositories/repositories.routes.d.ts.map +1 -0
  71. package/dist/modules/repositories/repositories.routes.js +264 -0
  72. package/dist/modules/repositories/repositories.routes.js.map +1 -0
  73. package/dist/modules/system/index.d.ts +8 -0
  74. package/dist/modules/system/index.d.ts.map +1 -0
  75. package/dist/modules/system/index.js +13 -0
  76. package/dist/modules/system/index.js.map +1 -0
  77. package/dist/modules/system/system.handlers.d.ts +9 -0
  78. package/dist/modules/system/system.handlers.d.ts.map +1 -0
  79. package/dist/modules/system/system.handlers.js +22 -0
  80. package/dist/modules/system/system.handlers.js.map +1 -0
  81. package/dist/modules/system/system.routes.d.ts +24 -0
  82. package/dist/modules/system/system.routes.d.ts.map +1 -0
  83. package/dist/modules/system/system.routes.js +27 -0
  84. package/dist/modules/system/system.routes.js.map +1 -0
  85. package/dist/modules/tokens/index.d.ts +8 -0
  86. package/dist/modules/tokens/index.d.ts.map +1 -0
  87. package/dist/modules/tokens/index.js +16 -0
  88. package/dist/modules/tokens/index.js.map +1 -0
  89. package/dist/modules/tokens/tokens.handlers.d.ts +22 -0
  90. package/dist/modules/tokens/tokens.handlers.d.ts.map +1 -0
  91. package/dist/modules/tokens/tokens.handlers.js +150 -0
  92. package/dist/modules/tokens/tokens.handlers.js.map +1 -0
  93. package/dist/modules/tokens/tokens.routes.d.ts +202 -0
  94. package/dist/modules/tokens/tokens.routes.d.ts.map +1 -0
  95. package/dist/modules/tokens/tokens.routes.js +143 -0
  96. package/dist/modules/tokens/tokens.routes.js.map +1 -0
  97. package/dist/modules/users/index.d.ts +8 -0
  98. package/dist/modules/users/index.d.ts.map +1 -0
  99. package/dist/modules/users/index.js +15 -0
  100. package/dist/modules/users/index.js.map +1 -0
  101. package/dist/modules/users/users.handlers.d.ts +6 -0
  102. package/dist/modules/users/users.handlers.d.ts.map +1 -0
  103. package/dist/modules/users/users.handlers.js +120 -0
  104. package/dist/modules/users/users.handlers.js.map +1 -0
  105. package/dist/modules/users/users.routes.d.ts +190 -0
  106. package/dist/modules/users/users.routes.d.ts.map +1 -0
  107. package/dist/modules/users/users.routes.js +132 -0
  108. package/dist/modules/users/users.routes.js.map +1 -0
  109. package/dist/routes/api/artifacts.d.ts +5 -3
  110. package/dist/routes/api/artifacts.d.ts.map +1 -1
  111. package/dist/routes/api/artifacts.js +2 -2
  112. package/dist/routes/api/artifacts.js.map +1 -1
  113. package/dist/routes/api/auth.d.ts +5 -3
  114. package/dist/routes/api/auth.d.ts.map +1 -1
  115. package/dist/routes/api/auth.js +2 -12
  116. package/dist/routes/api/auth.js.map +1 -1
  117. package/dist/routes/api/index.d.ts +1 -0
  118. package/dist/routes/api/index.d.ts.map +1 -1
  119. package/dist/routes/api/index.js +1 -0
  120. package/dist/routes/api/index.js.map +1 -1
  121. package/dist/routes/api/openapi/artifacts.d.ts +80 -0
  122. package/dist/routes/api/openapi/artifacts.d.ts.map +1 -0
  123. package/dist/routes/api/openapi/artifacts.js +73 -0
  124. package/dist/routes/api/openapi/artifacts.js.map +1 -0
  125. package/dist/routes/api/openapi/auth.d.ts +187 -0
  126. package/dist/routes/api/openapi/auth.d.ts.map +1 -0
  127. package/dist/routes/api/openapi/auth.js +135 -0
  128. package/dist/routes/api/openapi/auth.js.map +1 -0
  129. package/dist/routes/api/openapi/health.d.ts +24 -0
  130. package/dist/routes/api/openapi/health.d.ts.map +1 -0
  131. package/dist/routes/api/openapi/health.js +25 -0
  132. package/dist/routes/api/openapi/health.js.map +1 -0
  133. package/dist/routes/api/openapi/index.d.ts +10 -0
  134. package/dist/routes/api/openapi/index.d.ts.map +1 -0
  135. package/dist/routes/api/openapi/index.js +16 -0
  136. package/dist/routes/api/openapi/index.js.map +1 -0
  137. package/dist/routes/api/openapi/packages.d.ts +172 -0
  138. package/dist/routes/api/openapi/packages.d.ts.map +1 -0
  139. package/dist/routes/api/openapi/packages.js +126 -0
  140. package/dist/routes/api/openapi/packages.js.map +1 -0
  141. package/dist/routes/api/openapi/repositories.d.ts +451 -0
  142. package/dist/routes/api/openapi/repositories.d.ts.map +1 -0
  143. package/dist/routes/api/openapi/repositories.js +238 -0
  144. package/dist/routes/api/openapi/repositories.js.map +1 -0
  145. package/dist/routes/api/openapi/settings.d.ts +90 -0
  146. package/dist/routes/api/openapi/settings.d.ts.map +1 -0
  147. package/dist/routes/api/openapi/settings.js +72 -0
  148. package/dist/routes/api/openapi/settings.js.map +1 -0
  149. package/dist/routes/api/openapi/stats.d.ts +59 -0
  150. package/dist/routes/api/openapi/stats.d.ts.map +1 -0
  151. package/dist/routes/api/openapi/stats.js +53 -0
  152. package/dist/routes/api/openapi/stats.js.map +1 -0
  153. package/dist/routes/api/openapi/tokens.d.ts +202 -0
  154. package/dist/routes/api/openapi/tokens.d.ts.map +1 -0
  155. package/dist/routes/api/openapi/tokens.js +132 -0
  156. package/dist/routes/api/openapi/tokens.js.map +1 -0
  157. package/dist/routes/api/openapi/users.d.ts +190 -0
  158. package/dist/routes/api/openapi/users.d.ts.map +1 -0
  159. package/dist/routes/api/openapi/users.js +126 -0
  160. package/dist/routes/api/openapi/users.js.map +1 -0
  161. package/dist/routes/api/packages.d.ts +7 -4
  162. package/dist/routes/api/packages.d.ts.map +1 -1
  163. package/dist/routes/api/packages.js +6 -7
  164. package/dist/routes/api/packages.js.map +1 -1
  165. package/dist/routes/api/repositories.d.ts +8 -6
  166. package/dist/routes/api/repositories.d.ts.map +1 -1
  167. package/dist/routes/api/repositories.js +26 -22
  168. package/dist/routes/api/repositories.js.map +1 -1
  169. package/dist/routes/api/settings.d.ts +4 -3
  170. package/dist/routes/api/settings.d.ts.map +1 -1
  171. package/dist/routes/api/settings.js +1 -1
  172. package/dist/routes/api/settings.js.map +1 -1
  173. package/dist/routes/api/stats.d.ts +3 -3
  174. package/dist/routes/api/stats.d.ts.map +1 -1
  175. package/dist/routes/api/stats.js +1 -2
  176. package/dist/routes/api/stats.js.map +1 -1
  177. package/dist/routes/api/tokens.d.ts +6 -5
  178. package/dist/routes/api/tokens.d.ts.map +1 -1
  179. package/dist/routes/api/tokens.js +4 -7
  180. package/dist/routes/api/tokens.js.map +1 -1
  181. package/dist/routes/api/types.d.ts +17 -0
  182. package/dist/routes/api/types.d.ts.map +1 -0
  183. package/dist/routes/api/types.js +7 -0
  184. package/dist/routes/api/types.js.map +1 -0
  185. package/dist/routes/api/users.d.ts +5 -4
  186. package/dist/routes/api/users.d.ts.map +1 -1
  187. package/dist/routes/api/users.js +2 -12
  188. package/dist/routes/api/users.js.map +1 -1
  189. package/dist/routes/composer.js +1 -1
  190. package/dist/routes/composer.js.map +1 -1
  191. package/dist/routes/health.d.ts +3 -1
  192. package/dist/routes/health.d.ts.map +1 -1
  193. package/dist/routes/health.js.map +1 -1
  194. package/dist/utils/encryption.d.ts.map +1 -1
  195. package/dist/utils/encryption.js +8 -0
  196. package/dist/utils/encryption.js.map +1 -1
  197. package/package.json +3 -2
@@ -0,0 +1,238 @@
1
+ /*
2
+ * PACKAGE.broker
3
+ * Copyright (C) 2025 Łukasz Bajsarowicz
4
+ * Licensed under AGPL-3.0
5
+ */
6
+ import { createRoute, z } from '@hono/zod-openapi';
7
+ import { createRepositorySchema, updateRepositorySchema, repositoryResponseSchema, repositoryListResponseSchema, errorResponseSchema, } from '@package-broker/shared';
8
+ export const listRepositoriesRouteDef = createRoute({
9
+ method: 'get',
10
+ path: '/repositories',
11
+ summary: 'List repositories',
12
+ description: 'List all repositories',
13
+ security: [{ Bearer: [] }],
14
+ responses: {
15
+ 200: {
16
+ content: {
17
+ 'application/json': {
18
+ schema: repositoryListResponseSchema,
19
+ },
20
+ },
21
+ description: 'List of repositories',
22
+ },
23
+ },
24
+ tags: ['Repositories'],
25
+ });
26
+ export const createRepositoryRouteDef = createRoute({
27
+ method: 'post',
28
+ path: '/repositories',
29
+ summary: 'Create repository',
30
+ description: 'Create a new repository',
31
+ security: [{ Bearer: [] }],
32
+ request: {
33
+ body: {
34
+ content: {
35
+ 'application/json': {
36
+ schema: createRepositorySchema,
37
+ },
38
+ },
39
+ },
40
+ },
41
+ responses: {
42
+ 200: {
43
+ content: {
44
+ 'application/json': {
45
+ schema: repositoryResponseSchema,
46
+ },
47
+ },
48
+ description: 'Repository created',
49
+ },
50
+ 400: {
51
+ content: {
52
+ 'application/json': {
53
+ schema: errorResponseSchema,
54
+ },
55
+ },
56
+ description: 'Invalid request',
57
+ },
58
+ 500: {
59
+ content: {
60
+ 'application/json': {
61
+ schema: errorResponseSchema,
62
+ },
63
+ },
64
+ description: 'Server error',
65
+ },
66
+ },
67
+ tags: ['Repositories'],
68
+ });
69
+ export const getRepositoryRouteDef = createRoute({
70
+ method: 'get',
71
+ path: '/repositories/{id}',
72
+ summary: 'Get repository',
73
+ description: 'Get a single repository by ID',
74
+ security: [{ Bearer: [] }],
75
+ request: {
76
+ params: z.object({
77
+ id: z.string(),
78
+ }),
79
+ },
80
+ responses: {
81
+ 200: {
82
+ content: {
83
+ 'application/json': {
84
+ schema: repositoryResponseSchema,
85
+ },
86
+ },
87
+ description: 'Repository details',
88
+ },
89
+ 404: {
90
+ content: {
91
+ 'application/json': {
92
+ schema: errorResponseSchema,
93
+ },
94
+ },
95
+ description: 'Repository not found',
96
+ },
97
+ },
98
+ tags: ['Repositories'],
99
+ });
100
+ export const updateRepositoryRouteDef = createRoute({
101
+ method: 'put',
102
+ path: '/repositories/{id}',
103
+ summary: 'Update repository',
104
+ description: 'Update a repository',
105
+ security: [{ Bearer: [] }],
106
+ request: {
107
+ params: z.object({
108
+ id: z.string(),
109
+ }),
110
+ body: {
111
+ content: {
112
+ 'application/json': {
113
+ schema: updateRepositorySchema,
114
+ },
115
+ },
116
+ },
117
+ },
118
+ responses: {
119
+ 200: {
120
+ content: {
121
+ 'application/json': {
122
+ schema: repositoryResponseSchema,
123
+ },
124
+ },
125
+ description: 'Repository updated',
126
+ },
127
+ 404: {
128
+ content: {
129
+ 'application/json': {
130
+ schema: errorResponseSchema,
131
+ },
132
+ },
133
+ description: 'Repository not found',
134
+ },
135
+ },
136
+ tags: ['Repositories'],
137
+ });
138
+ export const deleteRepositoryRouteDef = createRoute({
139
+ method: 'delete',
140
+ path: '/repositories/{id}',
141
+ summary: 'Delete repository',
142
+ description: 'Delete a repository',
143
+ security: [{ Bearer: [] }],
144
+ request: {
145
+ params: z.object({
146
+ id: z.string(),
147
+ }),
148
+ },
149
+ responses: {
150
+ 200: {
151
+ content: {
152
+ 'application/json': {
153
+ schema: z.object({
154
+ message: z.string(),
155
+ }),
156
+ },
157
+ },
158
+ description: 'Repository deleted',
159
+ },
160
+ 404: {
161
+ content: {
162
+ 'application/json': {
163
+ schema: errorResponseSchema,
164
+ },
165
+ },
166
+ description: 'Repository not found',
167
+ },
168
+ },
169
+ tags: ['Repositories'],
170
+ });
171
+ export const verifyRepositoryRouteDef = createRoute({
172
+ method: 'get',
173
+ path: '/repositories/{id}/verify',
174
+ summary: 'Verify repository',
175
+ description: 'Verify repository connection and credentials',
176
+ security: [{ Bearer: [] }],
177
+ request: {
178
+ params: z.object({
179
+ id: z.string(),
180
+ }),
181
+ },
182
+ responses: {
183
+ 200: {
184
+ content: {
185
+ 'application/json': {
186
+ schema: z.object({
187
+ valid: z.boolean(),
188
+ message: z.string(),
189
+ }),
190
+ },
191
+ },
192
+ description: 'Verification result',
193
+ },
194
+ 404: {
195
+ content: {
196
+ 'application/json': {
197
+ schema: errorResponseSchema,
198
+ },
199
+ },
200
+ description: 'Repository not found',
201
+ },
202
+ },
203
+ tags: ['Repositories'],
204
+ });
205
+ export const syncRepositoryRouteDef = createRoute({
206
+ method: 'post',
207
+ path: '/repositories/{id}/sync',
208
+ summary: 'Sync repository',
209
+ description: 'Trigger immediate repository synchronization',
210
+ security: [{ Bearer: [] }],
211
+ request: {
212
+ params: z.object({
213
+ id: z.string(),
214
+ }),
215
+ },
216
+ responses: {
217
+ 200: {
218
+ content: {
219
+ 'application/json': {
220
+ schema: z.object({
221
+ message: z.string(),
222
+ }),
223
+ },
224
+ },
225
+ description: 'Sync triggered',
226
+ },
227
+ 404: {
228
+ content: {
229
+ 'application/json': {
230
+ schema: errorResponseSchema,
231
+ },
232
+ },
233
+ description: 'Repository not found',
234
+ },
235
+ },
236
+ tags: ['Repositories'],
237
+ });
238
+ //# sourceMappingURL=repositories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repositories.js","sourceRoot":"","sources":["../../../../src/routes/api/openapi/repositories.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,90 @@
1
+ import { z } from '@hono/zod-openapi';
2
+ export declare const getSettingsRouteDef: {
3
+ method: "get";
4
+ path: "/settings";
5
+ summary: string;
6
+ description: string;
7
+ security: {
8
+ Bearer: never[];
9
+ }[];
10
+ responses: {
11
+ 200: {
12
+ content: {
13
+ 'application/json': {
14
+ schema: z.ZodObject<{
15
+ kv_available: z.ZodBoolean;
16
+ packagist_mirroring_enabled: z.ZodBoolean;
17
+ package_caching_enabled: z.ZodBoolean;
18
+ }, z.core.$strip>;
19
+ };
20
+ };
21
+ description: string;
22
+ };
23
+ };
24
+ tags: string[];
25
+ } & {
26
+ getRoutingPath(): "/settings";
27
+ };
28
+ export declare const updatePackagistMirroringRouteDef: {
29
+ method: "put";
30
+ path: "/settings/packagist-mirroring";
31
+ summary: string;
32
+ description: string;
33
+ security: {
34
+ Bearer: never[];
35
+ }[];
36
+ request: {
37
+ body: {
38
+ content: {
39
+ 'application/json': {
40
+ schema: z.ZodObject<{
41
+ enabled: z.ZodBoolean;
42
+ }, z.core.$strip>;
43
+ };
44
+ };
45
+ };
46
+ };
47
+ responses: {
48
+ 200: {
49
+ content: {
50
+ 'application/json': {
51
+ schema: z.ZodObject<{
52
+ packagist_mirroring_enabled: z.ZodBoolean;
53
+ message: z.ZodString;
54
+ }, z.core.$strip>;
55
+ };
56
+ };
57
+ description: string;
58
+ };
59
+ 400: {
60
+ content: {
61
+ 'application/json': {
62
+ schema: z.ZodObject<{
63
+ error: z.ZodString;
64
+ message: z.ZodOptional<z.ZodString>;
65
+ code: z.ZodOptional<z.ZodString>;
66
+ requestId: z.ZodOptional<z.ZodString>;
67
+ }, z.core.$strip>;
68
+ };
69
+ };
70
+ description: string;
71
+ };
72
+ 503: {
73
+ content: {
74
+ 'application/json': {
75
+ schema: z.ZodObject<{
76
+ error: z.ZodString;
77
+ message: z.ZodOptional<z.ZodString>;
78
+ code: z.ZodOptional<z.ZodString>;
79
+ requestId: z.ZodOptional<z.ZodString>;
80
+ }, z.core.$strip>;
81
+ };
82
+ };
83
+ description: string;
84
+ };
85
+ };
86
+ tags: string[];
87
+ } & {
88
+ getRoutingPath(): "/settings/packagist-mirroring";
89
+ };
90
+ //# sourceMappingURL=settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../../src/routes/api/openapi/settings.ts"],"names":[],"mappings":"AAMA,OAAO,EAAe,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAOnD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;CAiB9B,CAAC;AAEH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6C3C,CAAC"}
@@ -0,0 +1,72 @@
1
+ /*
2
+ * PACKAGE.broker
3
+ * Copyright (C) 2025 Łukasz Bajsarowicz
4
+ * Licensed under AGPL-3.0
5
+ */
6
+ import { createRoute, z } from '@hono/zod-openapi';
7
+ import { settingsResponseSchema, updatePackagistMirroringRequestSchema, errorResponseSchema, } from '@package-broker/shared';
8
+ export const getSettingsRouteDef = createRoute({
9
+ method: 'get',
10
+ path: '/settings',
11
+ summary: 'Get settings',
12
+ description: 'Get all settings including KV availability',
13
+ security: [{ Bearer: [] }],
14
+ responses: {
15
+ 200: {
16
+ content: {
17
+ 'application/json': {
18
+ schema: settingsResponseSchema,
19
+ },
20
+ },
21
+ description: 'Settings',
22
+ },
23
+ },
24
+ tags: ['Settings'],
25
+ });
26
+ export const updatePackagistMirroringRouteDef = createRoute({
27
+ method: 'put',
28
+ path: '/settings/packagist-mirroring',
29
+ summary: 'Update Packagist mirroring',
30
+ description: 'Enable or disable public Packagist mirroring',
31
+ security: [{ Bearer: [] }],
32
+ request: {
33
+ body: {
34
+ content: {
35
+ 'application/json': {
36
+ schema: updatePackagistMirroringRequestSchema,
37
+ },
38
+ },
39
+ },
40
+ },
41
+ responses: {
42
+ 200: {
43
+ content: {
44
+ 'application/json': {
45
+ schema: z.object({
46
+ packagist_mirroring_enabled: z.boolean(),
47
+ message: z.string(),
48
+ }),
49
+ },
50
+ },
51
+ description: 'Settings updated',
52
+ },
53
+ 400: {
54
+ content: {
55
+ 'application/json': {
56
+ schema: errorResponseSchema,
57
+ },
58
+ },
59
+ description: 'Invalid request',
60
+ },
61
+ 503: {
62
+ content: {
63
+ 'application/json': {
64
+ schema: errorResponseSchema,
65
+ },
66
+ },
67
+ description: 'KV not available',
68
+ },
69
+ },
70
+ tags: ['Settings'],
71
+ });
72
+ //# sourceMappingURL=settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../../src/routes/api/openapi/settings.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EACL,sBAAsB,EACtB,qCAAqC,EACrC,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAC;IAC7C,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,cAAc;IACvB,WAAW,EAAE,4CAA4C;IACzD,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC1B,SAAS,EAAE;QACT,GAAG,EAAE;YACH,OAAO,EAAE;gBACP,kBAAkB,EAAE;oBAClB,MAAM,EAAE,sBAAsB;iBAC/B;aACF;YACD,WAAW,EAAE,UAAU;SACxB;KACF;IACD,IAAI,EAAE,CAAC,UAAU,CAAC;CACnB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gCAAgC,GAAG,WAAW,CAAC;IAC1D,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,+BAA+B;IACrC,OAAO,EAAE,4BAA4B;IACrC,WAAW,EAAE,8CAA8C;IAC3D,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC1B,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,OAAO,EAAE;gBACP,kBAAkB,EAAE;oBAClB,MAAM,EAAE,qCAAqC;iBAC9C;aACF;SACF;KACF;IACD,SAAS,EAAE;QACT,GAAG,EAAE;YACH,OAAO,EAAE;gBACP,kBAAkB,EAAE;oBAClB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;wBACf,2BAA2B,EAAE,CAAC,CAAC,OAAO,EAAE;wBACxC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;qBACpB,CAAC;iBACH;aACF;YACD,WAAW,EAAE,kBAAkB;SAChC;QACD,GAAG,EAAE;YACH,OAAO,EAAE;gBACP,kBAAkB,EAAE;oBAClB,MAAM,EAAE,mBAAmB;iBAC5B;aACF;YACD,WAAW,EAAE,iBAAiB;SAC/B;QACD,GAAG,EAAE;YACH,OAAO,EAAE;gBACP,kBAAkB,EAAE;oBAClB,MAAM,EAAE,mBAAmB;iBAC5B;aACF;YACD,WAAW,EAAE,kBAAkB;SAChC;KACF;IACD,IAAI,EAAE,CAAC,UAAU,CAAC;CACnB,CAAC,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { z } from '@hono/zod-openapi';
2
+ export declare const getStatsRouteDef: {
3
+ method: "get";
4
+ path: "/stats";
5
+ summary: string;
6
+ description: string;
7
+ security: {
8
+ Bearer: never[];
9
+ }[];
10
+ responses: {
11
+ 200: {
12
+ content: {
13
+ 'application/json': {
14
+ schema: z.ZodObject<{
15
+ active_repos: z.ZodNumber;
16
+ cached_packages: z.ZodNumber;
17
+ total_downloads: z.ZodNumber;
18
+ }, z.core.$strip>;
19
+ };
20
+ };
21
+ description: string;
22
+ };
23
+ };
24
+ tags: string[];
25
+ } & {
26
+ getRoutingPath(): "/stats";
27
+ };
28
+ export declare const getPackageStatsRouteDef: {
29
+ method: "get";
30
+ path: "/packages/{name}/{version}/stats";
31
+ summary: string;
32
+ description: string;
33
+ security: {
34
+ Bearer: never[];
35
+ }[];
36
+ request: {
37
+ params: z.ZodObject<{
38
+ name: z.ZodString;
39
+ version: z.ZodString;
40
+ }, z.core.$strip>;
41
+ };
42
+ responses: {
43
+ 200: {
44
+ content: {
45
+ 'application/json': {
46
+ schema: z.ZodObject<{
47
+ downloads: z.ZodNumber;
48
+ last_downloaded: z.ZodNullable<z.ZodNumber>;
49
+ }, z.core.$strip>;
50
+ };
51
+ };
52
+ description: string;
53
+ };
54
+ };
55
+ tags: string[];
56
+ } & {
57
+ getRoutingPath(): "/packages/:name/:version/stats";
58
+ };
59
+ //# sourceMappingURL=stats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../../src/routes/api/openapi/stats.ts"],"names":[],"mappings":"AAMA,OAAO,EAAe,CAAC,EAAE,MAAM,mBAAmB,CAAC;AAGnD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;CAiB3B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BlC,CAAC"}
@@ -0,0 +1,53 @@
1
+ /*
2
+ * PACKAGE.broker
3
+ * Copyright (C) 2025 Łukasz Bajsarowicz
4
+ * Licensed under AGPL-3.0
5
+ */
6
+ import { createRoute, z } from '@hono/zod-openapi';
7
+ import { statsResponseSchema } from '@package-broker/shared';
8
+ export const getStatsRouteDef = createRoute({
9
+ method: 'get',
10
+ path: '/stats',
11
+ summary: 'Get statistics',
12
+ description: 'Get dashboard statistics',
13
+ security: [{ Bearer: [] }],
14
+ responses: {
15
+ 200: {
16
+ content: {
17
+ 'application/json': {
18
+ schema: statsResponseSchema,
19
+ },
20
+ },
21
+ description: 'Statistics',
22
+ },
23
+ },
24
+ tags: ['Statistics'],
25
+ });
26
+ export const getPackageStatsRouteDef = createRoute({
27
+ method: 'get',
28
+ path: '/packages/{name}/{version}/stats',
29
+ summary: 'Get package statistics',
30
+ description: 'Get download statistics for a specific package version',
31
+ security: [{ Bearer: [] }],
32
+ request: {
33
+ params: z.object({
34
+ name: z.string(),
35
+ version: z.string(),
36
+ }),
37
+ },
38
+ responses: {
39
+ 200: {
40
+ content: {
41
+ 'application/json': {
42
+ schema: z.object({
43
+ downloads: z.number(),
44
+ last_downloaded: z.number().nullable(),
45
+ }),
46
+ },
47
+ },
48
+ description: 'Package statistics',
49
+ },
50
+ },
51
+ tags: ['Statistics'],
52
+ });
53
+ //# sourceMappingURL=stats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats.js","sourceRoot":"","sources":["../../../../src/routes/api/openapi/stats.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAuB,MAAM,wBAAwB,CAAC;AAElF,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC;IAC1C,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,gBAAgB;IACzB,WAAW,EAAE,0BAA0B;IACvC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC1B,SAAS,EAAE;QACT,GAAG,EAAE;YACH,OAAO,EAAE;gBACP,kBAAkB,EAAE;oBAClB,MAAM,EAAE,mBAAmB;iBAC5B;aACF;YACD,WAAW,EAAE,YAAY;SAC1B;KACF;IACD,IAAI,EAAE,CAAC,YAAY,CAAC;CACrB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG,WAAW,CAAC;IACjD,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,kCAAkC;IACxC,OAAO,EAAE,wBAAwB;IACjC,WAAW,EAAE,wDAAwD;IACrE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC1B,OAAO,EAAE;QACP,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;YACf,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;SACpB,CAAC;KACH;IACD,SAAS,EAAE;QACT,GAAG,EAAE;YACH,OAAO,EAAE;gBACP,kBAAkB,EAAE;oBAClB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;wBACf,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;wBACrB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;qBACvC,CAAC;iBACH;aACF;YACD,WAAW,EAAE,oBAAoB;SAClC;KACF;IACD,IAAI,EAAE,CAAC,YAAY,CAAC;CACrB,CAAC,CAAC"}