@scalar/cli 2.0.0 → 2.1.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 (80) hide show
  1. package/README.md +42 -2
  2. package/chunks/action-45OGQB2M.js +138 -0
  3. package/chunks/action-5R5FDF6S.js +2097 -0
  4. package/chunks/action-ANU5HGC4.js +34 -0
  5. package/chunks/action-BMFXENMX.js +176 -0
  6. package/chunks/action-BNEGJBUH.js +38 -0
  7. package/chunks/action-BYZUBXVB.js +82 -0
  8. package/chunks/action-C5VB4ITT.js +132 -0
  9. package/chunks/action-CCW66QJN.js +72 -0
  10. package/chunks/action-CLSD7O2R.js +60 -0
  11. package/chunks/action-CQ56FVES.js +65 -0
  12. package/chunks/action-CYP4VDK3.js +148 -0
  13. package/chunks/action-DFKHSDFV.js +36 -0
  14. package/chunks/action-F4Y6Q2VB.js +92 -0
  15. package/chunks/action-GB6DM53B.js +70 -0
  16. package/chunks/action-GEBRPNRT.js +87 -0
  17. package/chunks/action-H5OHT2GV.js +56 -0
  18. package/chunks/action-HD2T6BFJ.js +54 -0
  19. package/chunks/action-HNKM3Q65.js +65 -0
  20. package/chunks/action-JOSVV6YA.js +71 -0
  21. package/chunks/action-MENXFJH3.js +204 -0
  22. package/chunks/action-P7LN6FGY.js +13 -0
  23. package/chunks/action-PVDDRIM6.js +130 -0
  24. package/chunks/action-Q5UJ32D6.js +46 -0
  25. package/chunks/action-R6ZZO26F.js +299 -0
  26. package/chunks/action-STIEAXOE.js +53 -0
  27. package/chunks/action-TPBKPHNS.js +110 -0
  28. package/chunks/action-TWFJNQ2R.js +95 -0
  29. package/chunks/action-TZ5KGAQT.js +64 -0
  30. package/chunks/action-UDZUUJSI.js +49 -0
  31. package/chunks/action-W5BATF4Q.js +197 -0
  32. package/chunks/agent-XGLOHXNA.js +112 -0
  33. package/chunks/build.action-LKOILPA6.js +108 -0
  34. package/chunks/chunk-23I5PKZZ.js +78 -0
  35. package/chunks/chunk-2BSG2QHO.js +455 -0
  36. package/chunks/chunk-3MZYUBJ6.js +49 -0
  37. package/chunks/chunk-47Y4L5IT.js +63361 -0
  38. package/chunks/chunk-4DGQIAJX.js +359 -0
  39. package/chunks/chunk-4QS7SJTG.js +138 -0
  40. package/chunks/chunk-5BISXQX4.js +447 -0
  41. package/chunks/chunk-5BPPGTUU.js +463 -0
  42. package/chunks/chunk-AEFPCC4U.js +16 -0
  43. package/chunks/chunk-AHWWJ3MD.js +32 -0
  44. package/chunks/chunk-ASMHW5AY.js +19 -0
  45. package/chunks/chunk-B6QZJWCQ.js +92 -0
  46. package/chunks/chunk-DOVIWNKQ.js +108 -0
  47. package/chunks/chunk-H2WRMLYY.js +13780 -0
  48. package/chunks/chunk-HQKBZOYU.js +34 -0
  49. package/chunks/chunk-ISGLWBXZ.js +4265 -0
  50. package/chunks/chunk-IX7LJ3AD.js +17 -0
  51. package/chunks/chunk-JFIXNSPP.js +26 -0
  52. package/chunks/chunk-K74E42RV.js +7311 -0
  53. package/chunks/chunk-KHDYYVYF.js +16 -0
  54. package/chunks/chunk-KWOL7A6J.js +23 -0
  55. package/chunks/chunk-NUXPNUSS.js +38 -0
  56. package/chunks/chunk-OAXFCOJV.js +25 -0
  57. package/chunks/chunk-P2VH7DOC.js +107 -0
  58. package/chunks/chunk-P646T2WH.js +1608 -0
  59. package/chunks/chunk-SHSHFGA7.js +297 -0
  60. package/chunks/chunk-SXYALPYK.js +2709 -0
  61. package/chunks/chunk-T7B6WNZC.js +18 -0
  62. package/chunks/chunk-T7MDADON.js +17 -0
  63. package/chunks/chunk-TLFMATXR.js +344 -0
  64. package/chunks/chunk-TQ5XC2E3.js +284 -0
  65. package/chunks/chunk-UPUTMFD4.js +465 -0
  66. package/chunks/chunk-VTYTPSXO.js +161 -0
  67. package/chunks/chunk-X4QLDBB5.js +221 -0
  68. package/chunks/chunk-ZTVWAKNJ.js +21 -0
  69. package/chunks/create.action-FFQLBSJH.js +108 -0
  70. package/chunks/delete.action-QNN3LC2F.js +96 -0
  71. package/chunks/delete.action-STHQHP4F.js +88 -0
  72. package/chunks/get.action-OTKYOP3Z.js +87 -0
  73. package/chunks/list.action-6I5EZAVB.js +95 -0
  74. package/chunks/list.action-KDM5RHEH.js +116 -0
  75. package/chunks/publish.action-PODTVRXS.js +182 -0
  76. package/chunks/update.action-4F6STTEQ.js +101 -0
  77. package/chunks/update.action-KMD4ZM75.js +95 -0
  78. package/docs.html +393 -230
  79. package/index.js +645 -98865
  80. package/package.json +16 -14
@@ -0,0 +1,2709 @@
1
+ import { createRequire as $$cR } from "node:module"; const require = $$cR(import.meta.url);
2
+ import {
3
+ WaitlistProducts,
4
+ WaitlistSources,
5
+ accessGroupSchema,
6
+ identityProviderRecordSchema,
7
+ identityProviders,
8
+ loginPortalSchema,
9
+ managedSchema,
10
+ workspaceSchema,
11
+ workspaceVersionSchema
12
+ } from "./chunk-UPUTMFD4.js";
13
+ import {
14
+ userSchema
15
+ } from "./chunk-B6QZJWCQ.js";
16
+ import {
17
+ managedDocSchema,
18
+ managedDocVersionSchema,
19
+ ruleSchema
20
+ } from "./chunk-4QS7SJTG.js";
21
+ import {
22
+ registryGitBindingSchema,
23
+ registryPublishRecordSchema
24
+ } from "./chunk-VTYTPSXO.js";
25
+ import {
26
+ generateAccessByPersonalToken,
27
+ getAuthData,
28
+ refreshToken
29
+ } from "./chunk-5BISXQX4.js";
30
+ import {
31
+ config
32
+ } from "./chunk-OAXFCOJV.js";
33
+ import {
34
+ teamBillingSummary,
35
+ teamImageSchema,
36
+ teamNameSchema
37
+ } from "./chunk-4DGQIAJX.js";
38
+ import {
39
+ docsProjectSchema,
40
+ githubInstallSchema,
41
+ githubProjectSchema,
42
+ nanoid,
43
+ nanoidSchema,
44
+ projectSchema,
45
+ schemaModel,
46
+ slugSchema,
47
+ themeSchema
48
+ } from "./chunk-ISGLWBXZ.js";
49
+ import {
50
+ external_exports
51
+ } from "./chunk-H2WRMLYY.js";
52
+
53
+ // ../../packages/service-api/dist/apis/access-groups.js
54
+ function accessGroupsApiFactory(requestService) {
55
+ async function get(slug) {
56
+ return await requestService.request({
57
+ url: `core/v1/access-groups/${slug}`,
58
+ method: "get",
59
+ schema: accessGroupSchema.pick({
60
+ uid: true,
61
+ name: true,
62
+ slug: true,
63
+ allowedDomains: true,
64
+ allowedEmails: true
65
+ })
66
+ });
67
+ }
68
+ async function create(data) {
69
+ return await requestService.request({
70
+ url: "core/v1/access-groups",
71
+ method: "post",
72
+ data,
73
+ schema: accessGroupSchema
74
+ });
75
+ }
76
+ async function del(uid) {
77
+ return await requestService.request({
78
+ url: `core/v1/access-groups/${uid}`,
79
+ method: "delete",
80
+ schema: external_exports.null()
81
+ });
82
+ }
83
+ async function update(uid, data) {
84
+ return await requestService.request({
85
+ url: `core/v1/access-groups/${uid}`,
86
+ method: "patch",
87
+ data,
88
+ schema: external_exports.null()
89
+ });
90
+ }
91
+ async function addEmail(uid, email) {
92
+ return await requestService.request({
93
+ url: `core/v1/access-groups/${uid}/emails`,
94
+ method: "post",
95
+ data: { email },
96
+ schema: external_exports.null()
97
+ });
98
+ }
99
+ async function addDomain(uid, domain) {
100
+ return await requestService.request({
101
+ url: `core/v1/access-groups/${uid}/domains`,
102
+ method: "post",
103
+ data: { domain },
104
+ schema: external_exports.null()
105
+ });
106
+ }
107
+ async function removeEmail(uid, email) {
108
+ return await requestService.request({
109
+ url: `core/v1/access-groups/${uid}/emails`,
110
+ method: "delete",
111
+ data: { email },
112
+ schema: external_exports.null()
113
+ });
114
+ }
115
+ async function removeDomain(uid, domain) {
116
+ return await requestService.request({
117
+ url: `core/v1/access-groups/${uid}/domains`,
118
+ method: "delete",
119
+ data: { domain },
120
+ schema: external_exports.null()
121
+ });
122
+ }
123
+ return {
124
+ get,
125
+ create,
126
+ update,
127
+ delete: del,
128
+ addEmail,
129
+ addDomain,
130
+ removeEmail,
131
+ removeDomain
132
+ };
133
+ }
134
+
135
+ // ../../packages/bigquery/dist/schemas.js
136
+ var consumerTypeSchema = external_exports.enum(["human", "bot", "llm", "mcp"]);
137
+ var timeseriesPointSchema = external_exports.object({
138
+ bucket: external_exports.string(),
139
+ human: external_exports.number().int().nonnegative(),
140
+ bot: external_exports.number().int().nonnegative(),
141
+ llm: external_exports.number().int().nonnegative(),
142
+ mcp: external_exports.number().int().nonnegative(),
143
+ unique: external_exports.number().int().nonnegative()
144
+ });
145
+ var overviewResultSchema = external_exports.object({
146
+ totals: external_exports.object({
147
+ views: external_exports.number().int().nonnegative(),
148
+ peak_daily_visitors: external_exports.number().int().nonnegative(),
149
+ human: external_exports.number().int().nonnegative(),
150
+ bot: external_exports.number().int().nonnegative(),
151
+ llm: external_exports.number().int().nonnegative(),
152
+ mcp: external_exports.number().int().nonnegative()
153
+ }),
154
+ timeseries: external_exports.array(timeseriesPointSchema)
155
+ });
156
+ var topPageSchema = external_exports.object({
157
+ path: external_exports.string(),
158
+ views: external_exports.number().int().nonnegative(),
159
+ unique: external_exports.number().int().nonnegative()
160
+ });
161
+ var topPagesResultSchema = external_exports.object({
162
+ pages: external_exports.array(topPageSchema)
163
+ });
164
+ var topReferrerSchema = external_exports.object({
165
+ referrer: external_exports.string(),
166
+ views: external_exports.number().int().nonnegative()
167
+ });
168
+ var topReferrersResultSchema = external_exports.object({
169
+ referrers: external_exports.array(topReferrerSchema)
170
+ });
171
+ var consumersResultSchema = external_exports.object({
172
+ totals: external_exports.object({
173
+ human: external_exports.number().int().nonnegative(),
174
+ bot: external_exports.number().int().nonnegative(),
175
+ llm: external_exports.number().int().nonnegative(),
176
+ mcp: external_exports.number().int().nonnegative()
177
+ }),
178
+ timeseries: external_exports.array(timeseriesPointSchema)
179
+ });
180
+ var mcpEventKindSchema = external_exports.enum([
181
+ "session-start",
182
+ "tool-called",
183
+ "tools-list"
184
+ ]);
185
+
186
+ // ../../packages/service-api/dist/apis/analytics.js
187
+ function buildQuery(params) {
188
+ const search = new URLSearchParams();
189
+ for (const [k, v] of Object.entries(params)) {
190
+ if (v === void 0)
191
+ continue;
192
+ search.set(k, String(v));
193
+ }
194
+ const qs = search.toString();
195
+ return qs ? `?${qs}` : "";
196
+ }
197
+ function analyticsApiFactory(requestService) {
198
+ async function getOverview(projectUid, args = {}) {
199
+ return requestService.request({
200
+ url: `core/analytics/projects/${projectUid}/overview${buildQuery({
201
+ range: args.range,
202
+ granularity: args.granularity
203
+ })}`,
204
+ method: "get",
205
+ schema: overviewResultSchema
206
+ });
207
+ }
208
+ async function getPages(projectUid, args = {}) {
209
+ return requestService.request({
210
+ url: `core/analytics/projects/${projectUid}/pages${buildQuery({
211
+ range: args.range,
212
+ limit: args.limit
213
+ })}`,
214
+ method: "get",
215
+ schema: topPagesResultSchema
216
+ });
217
+ }
218
+ async function getReferrers(projectUid, args = {}) {
219
+ return requestService.request({
220
+ url: `core/analytics/projects/${projectUid}/referrers${buildQuery({
221
+ range: args.range,
222
+ limit: args.limit
223
+ })}`,
224
+ method: "get",
225
+ schema: topReferrersResultSchema
226
+ });
227
+ }
228
+ async function getConsumers(projectUid, args = {}) {
229
+ return requestService.request({
230
+ url: `core/analytics/projects/${projectUid}/consumers${buildQuery({
231
+ range: args.range,
232
+ granularity: args.granularity
233
+ })}`,
234
+ method: "get",
235
+ schema: consumersResultSchema
236
+ });
237
+ }
238
+ return {
239
+ getOverview,
240
+ getPages,
241
+ getReferrers,
242
+ getConsumers
243
+ };
244
+ }
245
+
246
+ // ../../packages/service-api/dist/apis/login-portals.js
247
+ function loginPortalsApiFactory(requestService) {
248
+ async function get(slug) {
249
+ return await requestService.request({
250
+ url: `core/login-portals/${slug}`,
251
+ method: "get",
252
+ schema: loginPortalSchema
253
+ });
254
+ }
255
+ async function create(data) {
256
+ return await requestService.request({
257
+ url: "core/login-portals",
258
+ method: "post",
259
+ data,
260
+ schema: external_exports.object({ uid: external_exports.string() })
261
+ });
262
+ }
263
+ async function update(data) {
264
+ return await requestService.request({
265
+ url: "core/login-portals/update",
266
+ method: "post",
267
+ data,
268
+ schema: external_exports.null()
269
+ });
270
+ }
271
+ async function del(slug) {
272
+ return await requestService.request({
273
+ url: "core/login-portals",
274
+ data: { slug },
275
+ method: "delete",
276
+ schema: external_exports.null()
277
+ });
278
+ }
279
+ async function getLoginPortals() {
280
+ return await requestService.request({
281
+ url: "core/login-portals",
282
+ method: "get",
283
+ schema: loginPortalSchema.pick({
284
+ uid: true,
285
+ title: true,
286
+ slug: true
287
+ }).array()
288
+ });
289
+ }
290
+ return {
291
+ /** Get a login portal by namespace/slug combination */
292
+ get,
293
+ /** Creates a new login portal */
294
+ create,
295
+ /** Update login portal metadata */
296
+ update,
297
+ /** Delete a login portal and remove any associates to projects or docs */
298
+ delete: del,
299
+ /** Get a list of all login portal related to the namespace */
300
+ getLoginPortals
301
+ };
302
+ }
303
+
304
+ // ../../packages/service-api/dist/apis/managed-docs.js
305
+ function managedDocsApiFactory(requestService) {
306
+ async function get(namespace, slug, semver, options) {
307
+ const query = options?.variant ? `?variant=${options.variant}` : "";
308
+ return await requestService.request({
309
+ url: `core/managed-doc/${namespace}/${slug}/version/${semver}${query}`,
310
+ method: "get",
311
+ schema: external_exports.string()
312
+ });
313
+ }
314
+ async function getVersionMetadata(namespace, slug, semver) {
315
+ return await requestService.request({
316
+ url: `core/managed-doc/${namespace}/${slug}/version/${semver}/metadata`,
317
+ method: "get",
318
+ schema: managedDocVersionSchema
319
+ });
320
+ }
321
+ async function getApiDocs(namespace) {
322
+ return await requestService.request({
323
+ url: `core/managed-doc/${namespace}`,
324
+ method: "get",
325
+ schema: managedDocSchema.pick({
326
+ uid: true,
327
+ version: true,
328
+ title: true,
329
+ slug: true,
330
+ description: true,
331
+ namespace: true,
332
+ isPrivate: true,
333
+ tags: true,
334
+ versions: true
335
+ }).array()
336
+ });
337
+ }
338
+ async function getApiDoc(namespace, slug) {
339
+ return await requestService.request({
340
+ url: `core/managed-doc/${namespace}/${slug}`,
341
+ method: "get",
342
+ schema: managedDocSchema.pick({
343
+ uid: true,
344
+ version: true,
345
+ title: true,
346
+ slug: true,
347
+ description: true,
348
+ namespace: true,
349
+ isPrivate: true,
350
+ tags: true,
351
+ versions: true
352
+ })
353
+ });
354
+ }
355
+ async function listApiDocs() {
356
+ return await requestService.request({
357
+ url: "core/managed-doc",
358
+ method: "get",
359
+ schema: managedDocSchema.pick({
360
+ uid: true,
361
+ version: true,
362
+ title: true,
363
+ slug: true,
364
+ description: true,
365
+ namespace: true,
366
+ isPrivate: true,
367
+ tags: true,
368
+ versions: true
369
+ }).array()
370
+ });
371
+ }
372
+ async function create(namespace, data) {
373
+ return await requestService.request({
374
+ url: `core/managed-doc/${namespace}`,
375
+ method: "post",
376
+ data,
377
+ schema: external_exports.object({
378
+ uid: external_exports.string(),
379
+ versionUid: external_exports.string(),
380
+ title: external_exports.string(),
381
+ jsonSha: external_exports.string(),
382
+ yamlSha: external_exports.string(),
383
+ versionSha: external_exports.string()
384
+ })
385
+ });
386
+ }
387
+ async function update(namespace, slug, data) {
388
+ return await requestService.request({
389
+ url: `core/managed-doc/${namespace}/${slug}`,
390
+ method: "patch",
391
+ data,
392
+ schema: external_exports.null()
393
+ });
394
+ }
395
+ async function addVersion(namespace, slug, data) {
396
+ return await requestService.request({
397
+ url: `core/managed-doc/${namespace}/${slug}/version`,
398
+ method: "post",
399
+ data,
400
+ schema: managedDocVersionSchema
401
+ });
402
+ }
403
+ async function updateVersion(namespace, slug, semver, data) {
404
+ return await requestService.request({
405
+ url: `core/managed-doc/${namespace}/${slug}/version/${semver}`,
406
+ method: "patch",
407
+ data,
408
+ schema: external_exports.object({
409
+ jsonSha: external_exports.string(),
410
+ yamlSha: external_exports.string(),
411
+ versionSha: external_exports.string()
412
+ })
413
+ });
414
+ }
415
+ async function deleteVersion(namespace, slug, semver) {
416
+ return await requestService.request({
417
+ url: `core/managed-doc/${namespace}/${slug}/version/${semver}`,
418
+ method: "delete",
419
+ schema: external_exports.null()
420
+ });
421
+ }
422
+ async function addAccessGroup(data) {
423
+ return await requestService.request({
424
+ url: "core/managed-doc/access-group",
425
+ method: "post",
426
+ data,
427
+ schema: external_exports.null()
428
+ });
429
+ }
430
+ async function removeAccessGroup(data) {
431
+ return await requestService.request({
432
+ url: "core/managed-doc/access-group",
433
+ method: "delete",
434
+ data,
435
+ schema: external_exports.null()
436
+ });
437
+ }
438
+ async function addSdk(data) {
439
+ return await requestService.request({
440
+ url: "core/v1/documents/sdk",
441
+ method: "post",
442
+ data,
443
+ schema: external_exports.null()
444
+ });
445
+ }
446
+ 3;
447
+ async function removeSdk(data) {
448
+ return await requestService.request({
449
+ url: "core/v1/documents/sdk",
450
+ method: "delete",
451
+ data,
452
+ schema: external_exports.null()
453
+ });
454
+ }
455
+ async function deleteDoc(namespace, slug) {
456
+ return await requestService.request({
457
+ url: `core/managed-doc/${namespace}/${slug}`,
458
+ method: "delete",
459
+ schema: external_exports.null()
460
+ });
461
+ }
462
+ async function isRegistrySlugAvailable(data) {
463
+ return await requestService.request({
464
+ url: "core/managed-doc/available",
465
+ method: "post",
466
+ data,
467
+ schema: external_exports.object({
468
+ available: external_exports.boolean()
469
+ })
470
+ });
471
+ }
472
+ async function updateMcpTools({ namespace, slug, semver, tools }) {
473
+ return await requestService.request({
474
+ url: `core/managed-doc/${namespace}/${slug}/version/${semver}/tools`,
475
+ method: "post",
476
+ data: tools,
477
+ schema: external_exports.null()
478
+ });
479
+ }
480
+ return {
481
+ getApiDocs,
482
+ listApiDocs,
483
+ get,
484
+ getVersionMetadata,
485
+ create,
486
+ update,
487
+ delete: deleteDoc,
488
+ addVersion,
489
+ addSdk,
490
+ removeSdk,
491
+ updateVersion,
492
+ deleteVersion,
493
+ addAccessGroup,
494
+ removeAccessGroup,
495
+ isRegistrySlugAvailable,
496
+ getApiDoc,
497
+ updateMcpTools
498
+ };
499
+ }
500
+
501
+ // ../../packages/service-api/dist/apis/managed-schemas.js
502
+ function managedSchemasApiFactory(requestService) {
503
+ async function getSchemas(namespace) {
504
+ return await requestService.request({
505
+ url: `core/schemas/${namespace}`,
506
+ method: "get",
507
+ schema: managedSchema.pick({
508
+ uid: true,
509
+ title: true,
510
+ description: true,
511
+ slug: true,
512
+ namespace: true,
513
+ isPrivate: true,
514
+ versions: true
515
+ }).array()
516
+ });
517
+ }
518
+ async function create(namespace, data) {
519
+ return await requestService.request({
520
+ url: `core/schemas/${namespace}`,
521
+ method: "post",
522
+ data,
523
+ schema: external_exports.object({ uid: external_exports.string() })
524
+ });
525
+ }
526
+ async function update(namespace, slug, data) {
527
+ return await requestService.request({
528
+ url: `core/schemas/${namespace}/${slug}`,
529
+ method: "patch",
530
+ data,
531
+ schema: external_exports.null()
532
+ });
533
+ }
534
+ async function del(namespace, slug) {
535
+ return await requestService.request({
536
+ url: `core/schemas/${namespace}/${slug}`,
537
+ method: "delete",
538
+ schema: external_exports.null()
539
+ });
540
+ }
541
+ async function get(namespace, slug, version) {
542
+ return await requestService.request({
543
+ url: `core/schemas/${namespace}/${slug}/version/${version}`,
544
+ method: "get",
545
+ schema: external_exports.string()
546
+ });
547
+ }
548
+ async function createVersion(namespace, slug, data) {
549
+ return await requestService.request({
550
+ url: `core/schemas/${namespace}/${slug}/version`,
551
+ method: "post",
552
+ data,
553
+ schema: external_exports.object({ uid: external_exports.string() })
554
+ });
555
+ }
556
+ async function duplicateVersion(namespace, slug, version, data) {
557
+ return await requestService.request({
558
+ url: `core/schemas/${namespace}/${slug}/version/${version}/duplicate`,
559
+ method: "post",
560
+ data,
561
+ schema: external_exports.object({ uid: external_exports.string() })
562
+ });
563
+ }
564
+ async function updateVersion(namespace, slug, version, data) {
565
+ return await requestService.request({
566
+ url: `core/schemas/${namespace}/${slug}/version/${version}`,
567
+ method: "post",
568
+ data,
569
+ schema: external_exports.null()
570
+ });
571
+ }
572
+ async function deleteVersion(namespace, slug, version) {
573
+ return await requestService.request({
574
+ url: `core/schemas/${namespace}/${slug}/version/${version}`,
575
+ method: "delete",
576
+ schema: external_exports.null()
577
+ });
578
+ }
579
+ async function isRegistrySlugAvailable(namespace, slug) {
580
+ return await requestService.request({
581
+ url: "core/schemas/check-slug",
582
+ method: "post",
583
+ data: {
584
+ namespace,
585
+ slug
586
+ },
587
+ schema: external_exports.object({
588
+ available: external_exports.boolean()
589
+ })
590
+ });
591
+ }
592
+ async function addAccessGroup(data) {
593
+ return await requestService.request({
594
+ url: "core/schemas/access-group",
595
+ method: "post",
596
+ data,
597
+ schema: external_exports.null()
598
+ });
599
+ }
600
+ async function removeAccessGroup(data) {
601
+ return await requestService.request({
602
+ url: "core/schemas/access-group",
603
+ method: "delete",
604
+ data,
605
+ schema: external_exports.null()
606
+ });
607
+ }
608
+ return {
609
+ getSchemas,
610
+ create,
611
+ update,
612
+ delete: del,
613
+ get,
614
+ createVersion,
615
+ duplicateVersion,
616
+ updateVersion,
617
+ deleteVersion,
618
+ isRegistrySlugAvailable,
619
+ addAccessGroup,
620
+ removeAccessGroup
621
+ };
622
+ }
623
+
624
+ // ../../packages/service-api/dist/apis/registry-git.js
625
+ var commitSchema = external_exports.object({
626
+ sha: external_exports.string(),
627
+ message: external_exports.string(),
628
+ authorName: external_exports.string(),
629
+ authorEmail: external_exports.string(),
630
+ timestamp: external_exports.number()
631
+ });
632
+ function registryGitApiFactory(requestService) {
633
+ const base = (asset, namespace, slug) => `core/registry-git/${asset}/${namespace}/${slug}`;
634
+ async function provision(asset, namespace, slug) {
635
+ return await requestService.request({
636
+ url: `${base(asset, namespace, slug)}/provision`,
637
+ method: "post",
638
+ data: {},
639
+ schema: external_exports.object({
640
+ git: registryGitBindingSchema.nullable(),
641
+ status: external_exports.enum(["migrated", "already-migrated", "partial"]),
642
+ versionsImported: external_exports.number(),
643
+ versionsSkipped: external_exports.number()
644
+ })
645
+ });
646
+ }
647
+ async function getHistory(asset, namespace, slug, opts) {
648
+ const query = new URLSearchParams();
649
+ if (opts?.page)
650
+ query.set("page", String(opts.page));
651
+ if (opts?.perPage)
652
+ query.set("perPage", String(opts.perPage));
653
+ const qs = query.toString();
654
+ return await requestService.request({
655
+ url: `${base(asset, namespace, slug)}/history${qs ? `?${qs}` : ""}`,
656
+ method: "get",
657
+ schema: external_exports.object({ commits: commitSchema.array() })
658
+ });
659
+ }
660
+ async function getPublishLog(asset, namespace, slug) {
661
+ return await requestService.request({
662
+ url: `${base(asset, namespace, slug)}/publishes`,
663
+ method: "get",
664
+ schema: external_exports.object({ publishes: registryPublishRecordSchema.array() })
665
+ });
666
+ }
667
+ async function publish(asset, namespace, slug, data) {
668
+ return await requestService.request({
669
+ url: `${base(asset, namespace, slug)}/publish`,
670
+ method: "post",
671
+ data: data ?? {},
672
+ schema: external_exports.object({
673
+ commitSha: external_exports.string(),
674
+ version: external_exports.string().nullable()
675
+ })
676
+ });
677
+ }
678
+ async function updateConfig(asset, namespace, slug, data) {
679
+ return await requestService.request({
680
+ url: `${base(asset, namespace, slug)}/config`,
681
+ method: "patch",
682
+ data,
683
+ schema: registryGitBindingSchema
684
+ });
685
+ }
686
+ async function linkExternal(asset, namespace, slug, data) {
687
+ return await requestService.request({
688
+ url: `${base(asset, namespace, slug)}/link-external`,
689
+ method: "post",
690
+ data,
691
+ schema: external_exports.object({
692
+ git: registryGitBindingSchema,
693
+ pullRequest: external_exports.object({
694
+ url: external_exports.string(),
695
+ number: external_exports.number(),
696
+ branch: external_exports.string()
697
+ })
698
+ })
699
+ });
700
+ }
701
+ async function unlinkExternal(asset, namespace, slug) {
702
+ return await requestService.request({
703
+ url: `${base(asset, namespace, slug)}/unlink-external`,
704
+ method: "post",
705
+ data: {},
706
+ schema: registryGitBindingSchema
707
+ });
708
+ }
709
+ return {
710
+ provision,
711
+ getHistory,
712
+ getPublishLog,
713
+ publish,
714
+ updateConfig,
715
+ linkExternal,
716
+ unlinkExternal
717
+ };
718
+ }
719
+
720
+ // ../../packages/service-api/dist/apis/rules.js
721
+ function rulesApiFactory(requestService) {
722
+ async function get(namespace, slug) {
723
+ return await requestService.request({
724
+ url: `core/rulesets/${namespace}/${slug}`,
725
+ method: "get",
726
+ schema: external_exports.string()
727
+ });
728
+ }
729
+ async function getRules(namespace) {
730
+ return await requestService.request({
731
+ url: `core/rulesets/${namespace}`,
732
+ method: "get",
733
+ schema: ruleSchema.pick({
734
+ uid: true,
735
+ title: true,
736
+ description: true,
737
+ slug: true,
738
+ namespace: true,
739
+ isPrivate: true,
740
+ blockPublishOn: true
741
+ }).array()
742
+ });
743
+ }
744
+ async function create(namespace, data) {
745
+ return await requestService.request({
746
+ url: `core/rulesets/${namespace}`,
747
+ method: "post",
748
+ data,
749
+ schema: external_exports.object({ uid: external_exports.string() })
750
+ });
751
+ }
752
+ async function upload(data) {
753
+ return await requestService.request({
754
+ url: "core/rulesets/upload",
755
+ method: "post",
756
+ data,
757
+ schema: external_exports.null()
758
+ });
759
+ }
760
+ async function update(namespace, slug, data) {
761
+ return await requestService.request({
762
+ url: `core/rulesets/${namespace}/${slug}`,
763
+ method: "patch",
764
+ data,
765
+ schema: external_exports.null()
766
+ });
767
+ }
768
+ async function del(namespace, slug) {
769
+ return await requestService.request({
770
+ url: `core/rulesets/${namespace}/${slug}`,
771
+ method: "delete",
772
+ schema: external_exports.null()
773
+ });
774
+ }
775
+ async function addAccessGroup(data) {
776
+ return await requestService.request({
777
+ url: "core/rules/access-group",
778
+ method: "post",
779
+ data,
780
+ schema: external_exports.null()
781
+ });
782
+ }
783
+ async function removeAccessGroup(data) {
784
+ return await requestService.request({
785
+ url: "core/rules/access-group",
786
+ method: "delete",
787
+ data,
788
+ schema: external_exports.null()
789
+ });
790
+ }
791
+ async function isRegistrySlugAvailable(namespace, slug) {
792
+ return await requestService.request({
793
+ url: "core/rulesets/check-slug",
794
+ method: "post",
795
+ data: {
796
+ namespace,
797
+ slug
798
+ },
799
+ schema: external_exports.object({
800
+ available: external_exports.boolean()
801
+ })
802
+ });
803
+ }
804
+ return {
805
+ get,
806
+ getRules,
807
+ create,
808
+ update,
809
+ delete: del,
810
+ upload,
811
+ addAccessGroup,
812
+ removeAccessGroup,
813
+ isRegistrySlugAvailable
814
+ };
815
+ }
816
+
817
+ // ../../packages/service-api/dist/apis/sdks.js
818
+ function sdksApiFactory(requestService) {
819
+ async function create(data) {
820
+ return await requestService.request({
821
+ url: "core/v1/sdks",
822
+ method: "post",
823
+ data,
824
+ schema: external_exports.string()
825
+ });
826
+ }
827
+ async function update(uid, data) {
828
+ return await requestService.request({
829
+ url: `core/v1/sdks/${uid}`,
830
+ method: "patch",
831
+ data,
832
+ schema: external_exports.null()
833
+ });
834
+ }
835
+ async function createVersion(data) {
836
+ return await requestService.request({
837
+ url: "core/v1/sdks/version",
838
+ method: "post",
839
+ data,
840
+ schema: external_exports.null()
841
+ });
842
+ }
843
+ async function previewCodeSamples(data) {
844
+ return await requestService.request({
845
+ url: "sdk-generator/preview",
846
+ method: "post",
847
+ data,
848
+ schema: external_exports.unknown()
849
+ });
850
+ }
851
+ async function resolveConfig(data) {
852
+ return await requestService.request({
853
+ url: "core/v1/sdks/resolve-config",
854
+ method: "post",
855
+ data,
856
+ schema: external_exports.object({ config: external_exports.string() })
857
+ });
858
+ }
859
+ async function transformConfig(data) {
860
+ return await requestService.request({
861
+ url: "sdk-generator/transform-config",
862
+ method: "post",
863
+ data,
864
+ schema: external_exports.object({
865
+ config: external_exports.string().nullable()
866
+ })
867
+ });
868
+ }
869
+ async function del(uid) {
870
+ return await requestService.request({
871
+ url: `core/v1/sdks/${uid}`,
872
+ method: "delete",
873
+ schema: external_exports.null()
874
+ });
875
+ }
876
+ async function discardDraft(uid) {
877
+ return await requestService.request({
878
+ url: `core/v1/sdks/${uid}/draft`,
879
+ method: "delete",
880
+ schema: external_exports.null()
881
+ });
882
+ }
883
+ async function deleteVersion(data) {
884
+ return await requestService.request({
885
+ url: "core/v1/sdks/version",
886
+ method: "delete",
887
+ data,
888
+ schema: external_exports.null()
889
+ });
890
+ }
891
+ async function available(data) {
892
+ return await requestService.request({
893
+ url: "core/v1/sdks/available",
894
+ method: "post",
895
+ data,
896
+ schema: external_exports.object({
897
+ available: external_exports.boolean()
898
+ })
899
+ });
900
+ }
901
+ async function addAccessGroup(uid, data) {
902
+ return await requestService.request({
903
+ url: `core/v1/sdks/${uid}/access-group`,
904
+ method: "post",
905
+ data,
906
+ schema: external_exports.null()
907
+ });
908
+ }
909
+ async function removeAccessGroup(uid, data) {
910
+ return await requestService.request({
911
+ url: `core/v1/sdks/${uid}/access-group`,
912
+ method: "delete",
913
+ data,
914
+ schema: external_exports.null()
915
+ });
916
+ }
917
+ async function linkRepo(data) {
918
+ return await requestService.request({
919
+ url: "core/v1/sdks/repository",
920
+ method: "post",
921
+ data,
922
+ // The resolved "owner/repo" + branch, so the editor can mirror the
923
+ // destination into the project config (the source of truth). Nullable to
924
+ // tolerate a deploy-skew window where core still returns the old `null`
925
+ // body: the mirror is skipped rather than surfacing a false link error
926
+ // (the server already wrote the destination into the config regardless).
927
+ schema: external_exports.object({ repo: external_exports.string(), branch: external_exports.string() }).nullable()
928
+ });
929
+ }
930
+ async function requestSampleAccess(data) {
931
+ return await requestService.request({
932
+ url: `core/v1/sdks/${data.uid}/sample/access`,
933
+ method: "post",
934
+ schema: external_exports.object({
935
+ repositories: external_exports.object({
936
+ repository: external_exports.string(),
937
+ invitationUrl: external_exports.string().nullable()
938
+ }).array()
939
+ })
940
+ });
941
+ }
942
+ const retrySampleRepos = async (data) => {
943
+ return await requestService.request({
944
+ url: `core/v1/sdks/${data.uid}/sample/retry`,
945
+ method: "post",
946
+ schema: external_exports.null()
947
+ });
948
+ };
949
+ async function updateRepo(data) {
950
+ return await requestService.request({
951
+ url: "core/v1/sdks/repository/update",
952
+ method: "post",
953
+ data,
954
+ schema: external_exports.null()
955
+ });
956
+ }
957
+ const getReleasePr = async (params) => {
958
+ const query = new URLSearchParams({
959
+ uid: params.uid,
960
+ language: params.language
961
+ });
962
+ return await requestService.request({
963
+ url: `core/v1/sdks/repository/release-pr?${query.toString()}`,
964
+ method: "get",
965
+ schema: external_exports.object({ pullRequest: external_exports.number().nullable() })
966
+ });
967
+ };
968
+ async function unlinkRepo(data) {
969
+ return await requestService.request({
970
+ url: "core/v1/sdks/repository",
971
+ method: "delete",
972
+ data,
973
+ schema: external_exports.null()
974
+ });
975
+ }
976
+ async function updatePublishing(data) {
977
+ return await requestService.request({
978
+ url: "core/v1/sdks/repository/publishing",
979
+ method: "post",
980
+ data,
981
+ schema: external_exports.null()
982
+ });
983
+ }
984
+ async function syncBuild(data) {
985
+ return await requestService.request({
986
+ url: "core/v1/sdks/sync",
987
+ method: "post",
988
+ data,
989
+ schema: external_exports.null()
990
+ });
991
+ }
992
+ async function build(sdkUid, version, languages) {
993
+ return await requestService.request({
994
+ url: "core/v1/sdks/build",
995
+ method: "post",
996
+ data: { sdkUid, version, languages },
997
+ // Non-null exactly when `version` was omitted: the version the server
998
+ // resolved and is building.
999
+ schema: external_exports.object({ version: external_exports.string() }).nullable()
1000
+ });
1001
+ }
1002
+ return {
1003
+ create,
1004
+ createVersion,
1005
+ previewCodeSamples,
1006
+ resolveConfig,
1007
+ transformConfig,
1008
+ update,
1009
+ delete: del,
1010
+ discardDraft,
1011
+ deleteVersion,
1012
+ available,
1013
+ addAccessGroup,
1014
+ removeAccessGroup,
1015
+ getReleasePr,
1016
+ linkRepo,
1017
+ requestSampleAccess,
1018
+ retrySampleRepos,
1019
+ unlinkRepo,
1020
+ updateRepo,
1021
+ updatePublishing,
1022
+ build,
1023
+ syncBuild
1024
+ };
1025
+ }
1026
+
1027
+ // ../../packages/service-api/dist/apis/themes.js
1028
+ function themesApiFactory(requestService) {
1029
+ async function get(slug) {
1030
+ return await requestService.request({
1031
+ url: `core/themes/${slug}`,
1032
+ method: "get",
1033
+ schema: external_exports.string()
1034
+ });
1035
+ }
1036
+ async function getThemes() {
1037
+ return await requestService.request({
1038
+ url: "core/themes",
1039
+ method: "get",
1040
+ schema: themeSchema.pick({
1041
+ uid: true,
1042
+ name: true,
1043
+ description: true,
1044
+ slug: true
1045
+ }).array()
1046
+ });
1047
+ }
1048
+ async function create(data) {
1049
+ return await requestService.request({
1050
+ url: "core/themes",
1051
+ method: "post",
1052
+ data,
1053
+ schema: external_exports.object({ uid: external_exports.string(), slug: slugSchema })
1054
+ });
1055
+ }
1056
+ async function replace(slug, data) {
1057
+ return await requestService.request({
1058
+ url: `core/themes/${slug}`,
1059
+ method: "put",
1060
+ data,
1061
+ schema: external_exports.null()
1062
+ });
1063
+ }
1064
+ async function update(slug, data) {
1065
+ return await requestService.request({
1066
+ url: `core/themes/${slug}`,
1067
+ method: "patch",
1068
+ data,
1069
+ schema: external_exports.null()
1070
+ });
1071
+ }
1072
+ async function del(slug) {
1073
+ return await requestService.request({
1074
+ url: `core/themes/${slug}`,
1075
+ method: "delete",
1076
+ schema: external_exports.null()
1077
+ });
1078
+ }
1079
+ return {
1080
+ get,
1081
+ getThemes,
1082
+ create,
1083
+ update,
1084
+ replace,
1085
+ delete: del
1086
+ };
1087
+ }
1088
+
1089
+ // ../../packages/service-api/dist/apis/user.js
1090
+ function userApiFactory(requestService) {
1091
+ async function update(data) {
1092
+ return await requestService.request({
1093
+ url: "core/user/update",
1094
+ method: "post",
1095
+ schema: external_exports.null(),
1096
+ data
1097
+ });
1098
+ }
1099
+ async function getMe() {
1100
+ return await requestService.request({
1101
+ url: "core/me",
1102
+ method: "get",
1103
+ schema: userSchema
1104
+ });
1105
+ }
1106
+ return { update, getMe };
1107
+ }
1108
+
1109
+ // ../../packages/service-api/dist/apis/waitlist.js
1110
+ function waitlistApiFactory(requestService) {
1111
+ async function addToClientWaitlist(email, metadata) {
1112
+ return await requestService.request({
1113
+ url: "core/waitlist",
1114
+ method: "post",
1115
+ data: { email, products: [WaitlistProducts.Client], metadata },
1116
+ headers: {
1117
+ /** Source application. Will be used for header based filtering server side */
1118
+ "x-scalar-product": WaitlistSources.Client
1119
+ },
1120
+ schema: external_exports.null()
1121
+ });
1122
+ }
1123
+ return {
1124
+ addToClientWaitlist
1125
+ };
1126
+ }
1127
+
1128
+ // ../../packages/service-api/dist/apis/workspace.js
1129
+ function workspaceApiFactory(requestService) {
1130
+ async function createWorkspace(namespace, data) {
1131
+ return await requestService.request({
1132
+ url: `core/workspaces/${namespace}`,
1133
+ method: "post",
1134
+ data,
1135
+ schema: workspaceSchema
1136
+ });
1137
+ }
1138
+ async function updateWorkspace(namespace, slug, data) {
1139
+ return await requestService.request({
1140
+ url: `core/workspaces/${namespace}/${slug}`,
1141
+ method: "patch",
1142
+ data,
1143
+ schema: workspaceSchema
1144
+ });
1145
+ }
1146
+ async function deleteWorkspace(namespace, slug) {
1147
+ return await requestService.request({
1148
+ url: `core/workspaces/${namespace}/${slug}`,
1149
+ method: "delete",
1150
+ schema: external_exports.null()
1151
+ });
1152
+ }
1153
+ async function deleteWorkspaceVersion(namespace, slug, version) {
1154
+ return await requestService.request({
1155
+ url: `core/workspaces/${namespace}/${slug}/version/${version}`,
1156
+ method: "delete",
1157
+ schema: external_exports.null()
1158
+ });
1159
+ }
1160
+ async function versionWorkspace(namespace, slug, data) {
1161
+ return await requestService.request({
1162
+ url: `core/workspaces/${namespace}/${slug}/version`,
1163
+ method: "post",
1164
+ data,
1165
+ schema: workspaceVersionSchema
1166
+ });
1167
+ }
1168
+ async function addWorkspaceAccess(namespace, slug, group) {
1169
+ return await requestService.request({
1170
+ url: `core/workspaces/${namespace}/${slug}/access/${group}`,
1171
+ method: "post",
1172
+ schema: external_exports.null()
1173
+ });
1174
+ }
1175
+ async function removeWorkspaceAccess(namespace, slug, group) {
1176
+ return await requestService.request({
1177
+ url: `core/workspaces/${namespace}/${slug}/access/${group}`,
1178
+ method: "delete",
1179
+ schema: external_exports.null()
1180
+ });
1181
+ }
1182
+ async function workspaceAvailability(namespace, slug) {
1183
+ return await requestService.request({
1184
+ url: `core/workspaces/${namespace}/${slug}/available`,
1185
+ method: "get",
1186
+ schema: external_exports.object({ available: external_exports.boolean() })
1187
+ });
1188
+ }
1189
+ return {
1190
+ createWorkspace,
1191
+ updateWorkspace,
1192
+ deleteWorkspace,
1193
+ versionWorkspace,
1194
+ addWorkspaceAccess,
1195
+ removeWorkspaceAccess,
1196
+ workspaceAvailability,
1197
+ deleteWorkspaceVersion
1198
+ };
1199
+ }
1200
+
1201
+ // ../../packages/service-api/dist/request.js
1202
+ function formatApiResponse(data, status, headers) {
1203
+ return {
1204
+ status,
1205
+ data,
1206
+ headers,
1207
+ error: false
1208
+ };
1209
+ }
1210
+ function formatApiError(message, status, error = null, code, body) {
1211
+ return {
1212
+ status,
1213
+ message,
1214
+ error: true,
1215
+ originalError: error,
1216
+ code,
1217
+ body
1218
+ };
1219
+ }
1220
+ function requestServiceFactory(baseUrl, getAuthToken, logger = console) {
1221
+ async function request({ disableAuth = false, url: requestUrl, schema, data, stream, ...config2 }) {
1222
+ const headers = {};
1223
+ for (const headerKey in config2.headers) {
1224
+ if (Object.hasOwn(config2.headers, headerKey)) {
1225
+ headers[headerKey.toLowerCase()] = config2.headers[headerKey];
1226
+ }
1227
+ }
1228
+ if (!("content-type" in headers) && data)
1229
+ headers["content-type"] = "application/json";
1230
+ if (data instanceof FormData)
1231
+ delete headers["content-type"];
1232
+ if (!disableAuth && (getAuthToken || config2.token)) {
1233
+ const token = (getAuthToken ? getAuthToken() : config2.token)?.trim();
1234
+ if (token) {
1235
+ headers.authorization = `Bearer ${token}`;
1236
+ } else {
1237
+ logger.warn("WARNING: Auth token function returned an empty value");
1238
+ }
1239
+ }
1240
+ const url = (requestUrl.includes("http") ? requestUrl : `${baseUrl}/${requestUrl}`).replace(/([^:]\/)\/+/g, "$1");
1241
+ const method = config2.method === "patch" ? "PATCH" : config2.method;
1242
+ return fetch(url, {
1243
+ ...config2,
1244
+ credentials: "include",
1245
+ method,
1246
+ body: data instanceof FormData || data instanceof ReadableStream || data === void 0 ? data : JSON.stringify(data),
1247
+ headers,
1248
+ ...data instanceof ReadableStream && {
1249
+ duplex: "half"
1250
+ }
1251
+ }).then(async (response) => {
1252
+ const isJson = response.headers.get("content-type")?.includes("application/json");
1253
+ if (!response.ok) {
1254
+ const body = isJson ? await response.json().catch(() => ({ message: "Invalid response" })) : { message: await response.text().catch(() => "Invalid response") };
1255
+ const message = String(body.message ?? "") || "Unknown Error";
1256
+ const code = typeof body.code === "string" ? body.code : void 0;
1257
+ return formatApiError(message, response.status, null, code, body);
1258
+ }
1259
+ if (stream)
1260
+ return response.body ?? new ReadableStream();
1261
+ try {
1262
+ const baseData = response.ok && isJson ? await response.json().catch(() => {
1263
+ logger.error(`Invalid JSON response from API service from ${url}`);
1264
+ return null;
1265
+ }) : await response.text();
1266
+ const resultData = schema ? schemaModel(baseData, schema, true) : baseData;
1267
+ return formatApiResponse(resultData, response.status, Object.fromEntries(response.headers));
1268
+ } catch (err) {
1269
+ logger.error(err);
1270
+ logger.error(`Response Zod validation error for ${url}`);
1271
+ return formatApiError(`Invalid response data from endpoint: ${url}`, 500);
1272
+ }
1273
+ }).catch((err) => {
1274
+ logger.error(err);
1275
+ return formatApiError("Unknown Error", 500);
1276
+ });
1277
+ }
1278
+ return {
1279
+ baseUrl,
1280
+ getAuthToken,
1281
+ request
1282
+ };
1283
+ }
1284
+
1285
+ // ../../packages/service-api/dist/apis/auth.js
1286
+ function authApiFactory(requestService) {
1287
+ async function requestPasswordReset(email) {
1288
+ return await requestService.request({
1289
+ url: "core/login/request-password-reset",
1290
+ method: "post",
1291
+ data: {
1292
+ email,
1293
+ clientId: nanoid()
1294
+ },
1295
+ schema: external_exports.null(),
1296
+ disableAuth: true
1297
+ });
1298
+ }
1299
+ async function resetPassword(password, clientId, resetToken) {
1300
+ return await requestService.request({
1301
+ url: "core/login/reset-password",
1302
+ method: "post",
1303
+ data: {
1304
+ clientId,
1305
+ resetToken,
1306
+ password
1307
+ },
1308
+ disableAuth: true,
1309
+ schema: external_exports.object({
1310
+ accessToken: external_exports.string(),
1311
+ refreshToken: external_exports.string()
1312
+ })
1313
+ });
1314
+ }
1315
+ async function generatePersonalToken({ name, description, refreshToken: refreshToken2 }) {
1316
+ return await requestService.request({
1317
+ url: "core/login/personal-token/generate",
1318
+ method: "post",
1319
+ data: {
1320
+ name,
1321
+ description,
1322
+ refreshToken: refreshToken2
1323
+ },
1324
+ schema: external_exports.object({
1325
+ uid: external_exports.string(),
1326
+ personalToken: external_exports.string()
1327
+ })
1328
+ });
1329
+ }
1330
+ async function getAccessTokenByPersonalToken({ personalToken }) {
1331
+ return await requestService.request({
1332
+ url: "core/login/personal-token/access",
1333
+ method: "post",
1334
+ data: {
1335
+ personalToken
1336
+ },
1337
+ schema: external_exports.object({
1338
+ accessToken: external_exports.string()
1339
+ })
1340
+ });
1341
+ }
1342
+ async function revokePersonalToken({ uid }) {
1343
+ return await requestService.request({
1344
+ url: `core/login/personal-token/${uid}/revoke`,
1345
+ method: "post",
1346
+ schema: external_exports.null()
1347
+ });
1348
+ }
1349
+ async function deletePersonalToken({ uid }) {
1350
+ return await requestService.request({
1351
+ url: `core/login/personal-token/${uid}`,
1352
+ method: "delete",
1353
+ schema: external_exports.null()
1354
+ });
1355
+ }
1356
+ async function getIdentityProvider(uid) {
1357
+ return await requestService.request({
1358
+ url: `core/identity-provider/${uid}`,
1359
+ method: "get",
1360
+ schema: identityProviderRecordSchema
1361
+ });
1362
+ }
1363
+ async function createIdentityProvider(data) {
1364
+ return await requestService.request({
1365
+ url: "core/identity-provider",
1366
+ method: "post",
1367
+ data,
1368
+ schema: identityProviderRecordSchema
1369
+ });
1370
+ }
1371
+ async function updateIdentityProvider(uid, data) {
1372
+ return await requestService.request({
1373
+ url: "core/identity-provider/update",
1374
+ method: "post",
1375
+ data: {
1376
+ uid,
1377
+ ...data
1378
+ },
1379
+ schema: identityProviderRecordSchema
1380
+ });
1381
+ }
1382
+ async function deleteIdentityProvider(uid) {
1383
+ return await requestService.request({
1384
+ url: `core/identity-provider/${uid}`,
1385
+ method: "delete",
1386
+ schema: external_exports.null()
1387
+ });
1388
+ }
1389
+ async function initiateSaml(data) {
1390
+ return await requestService.request({
1391
+ url: "core/saml/initiate",
1392
+ method: "post",
1393
+ data,
1394
+ schema: external_exports.object({
1395
+ options: external_exports.object({
1396
+ loginUrl: external_exports.url(),
1397
+ provider: external_exports.enum(identityProviders),
1398
+ teamSlug: slugSchema
1399
+ }).array()
1400
+ })
1401
+ });
1402
+ }
1403
+ async function changePassword({ oldPassword, newPassword }) {
1404
+ return await requestService.request({
1405
+ url: "core/login/change-password",
1406
+ method: "post",
1407
+ data: {
1408
+ oldPassword,
1409
+ newPassword
1410
+ },
1411
+ schema: external_exports.null()
1412
+ });
1413
+ }
1414
+ return {
1415
+ requestPasswordReset,
1416
+ resetPassword,
1417
+ changePassword,
1418
+ // Personal tokens
1419
+ generatePersonalToken,
1420
+ getAccessTokenByPersonalToken,
1421
+ revokePersonalToken,
1422
+ deletePersonalToken,
1423
+ // Identity Provider,
1424
+ getIdentityProvider,
1425
+ createIdentityProvider,
1426
+ updateIdentityProvider,
1427
+ deleteIdentityProvider,
1428
+ // SAML
1429
+ initiateSaml
1430
+ };
1431
+ }
1432
+
1433
+ // ../../packages/service-api/dist/apis/bitbucket.js
1434
+ var bitbucketRepoSummarySchema = external_exports.object({
1435
+ uuid: external_exports.string(),
1436
+ slug: external_exports.string(),
1437
+ fullName: external_exports.string(),
1438
+ defaultBranch: external_exports.string(),
1439
+ isPrivate: external_exports.boolean(),
1440
+ workspaceUuid: external_exports.string(),
1441
+ workspaceSlug: external_exports.string()
1442
+ });
1443
+ var bitbucketWorkspaceSchema = external_exports.object({
1444
+ uuid: external_exports.string(),
1445
+ slug: external_exports.string(),
1446
+ name: external_exports.string(),
1447
+ iconUrl: external_exports.string().optional(),
1448
+ repos: bitbucketRepoSummarySchema.array()
1449
+ });
1450
+ function bitbucketApiFactory(requestService) {
1451
+ async function initiateLink(opts = {}) {
1452
+ const params = new URLSearchParams();
1453
+ if (opts.redirect)
1454
+ params.set("redirect", opts.redirect);
1455
+ const qs = params.toString() ? `?${params.toString()}` : "";
1456
+ return await requestService.request({
1457
+ url: `core/vcs/bitbucket/link/initiate${qs}`,
1458
+ method: "get",
1459
+ schema: external_exports.object({ url: external_exports.string() })
1460
+ });
1461
+ }
1462
+ async function getWorkspaces() {
1463
+ return await requestService.request({
1464
+ url: "core/vcs/bitbucket/workspaces",
1465
+ method: "get",
1466
+ schema: bitbucketWorkspaceSchema.array()
1467
+ });
1468
+ }
1469
+ async function listDocsProjectBitbucketBranches(uid, opts = {}) {
1470
+ const params = new URLSearchParams();
1471
+ if (opts.query)
1472
+ params.set("query", opts.query);
1473
+ if (opts.page !== void 0)
1474
+ params.set("page", String(opts.page));
1475
+ if (opts.perPage !== void 0)
1476
+ params.set("perPage", String(opts.perPage));
1477
+ const qs = params.toString() ? `?${params.toString()}` : "";
1478
+ return await requestService.request({
1479
+ url: `core/vcs/bitbucket/docs-project/${uid}/branches${qs}`,
1480
+ method: "get",
1481
+ schema: external_exports.object({
1482
+ branches: external_exports.object({
1483
+ name: external_exports.string(),
1484
+ isDefault: external_exports.boolean()
1485
+ }).array(),
1486
+ hasMore: external_exports.boolean()
1487
+ })
1488
+ });
1489
+ }
1490
+ async function disconnectAccount() {
1491
+ return await requestService.request({
1492
+ url: "core/vcs/bitbucket/disconnect-account",
1493
+ method: "post",
1494
+ schema: external_exports.object({ success: external_exports.literal(true) })
1495
+ });
1496
+ }
1497
+ return {
1498
+ initiateLink,
1499
+ getWorkspaces,
1500
+ listDocsProjectBitbucketBranches,
1501
+ disconnectAccount
1502
+ };
1503
+ }
1504
+
1505
+ // ../../packages/service-api/dist/apis/docs-project.js
1506
+ function docsProjectApiFactory(requestService) {
1507
+ async function createProject(data) {
1508
+ return await requestService.request({
1509
+ url: "core/docs-projects/create",
1510
+ method: "post",
1511
+ data,
1512
+ schema: docsProjectSchema
1513
+ });
1514
+ }
1515
+ async function deleteProject(projectUid) {
1516
+ return await requestService.request({
1517
+ url: "core/docs-projects/delete",
1518
+ method: "delete",
1519
+ data: { projectUid },
1520
+ schema: external_exports.null()
1521
+ });
1522
+ }
1523
+ async function getProject(slug) {
1524
+ return await requestService.request({
1525
+ url: `core/docs-projects/${slug}`,
1526
+ method: "get",
1527
+ schema: docsProjectSchema
1528
+ });
1529
+ }
1530
+ async function getGitCredentials() {
1531
+ return await requestService.request({
1532
+ url: "core/forgejo/git-credentials",
1533
+ method: "get",
1534
+ schema: external_exports.object({
1535
+ forgejoBaseUrl: external_exports.string(),
1536
+ forgejoToken: external_exports.string(),
1537
+ forgejoUsername: external_exports.string()
1538
+ })
1539
+ });
1540
+ }
1541
+ async function updateRepoSettings(projectUid, patch) {
1542
+ return await requestService.request({
1543
+ url: "core/docs-projects/update-repo-settings",
1544
+ method: "post",
1545
+ data: { projectUid, ...patch },
1546
+ schema: external_exports.null()
1547
+ });
1548
+ }
1549
+ async function linkGithub(data) {
1550
+ return await requestService.request({
1551
+ url: `core/docs-projects/${data.projectUid}/link-github`,
1552
+ method: "post",
1553
+ data: { installationId: data.installationId, repoId: data.repoId },
1554
+ schema: external_exports.object({
1555
+ pullRequest: external_exports.object({
1556
+ url: external_exports.string(),
1557
+ number: external_exports.number().int(),
1558
+ branch: external_exports.string()
1559
+ }),
1560
+ project: docsProjectSchema
1561
+ })
1562
+ });
1563
+ }
1564
+ async function unlinkGithub(projectUid) {
1565
+ return await requestService.request({
1566
+ url: `core/docs-projects/${projectUid}/unlink-github`,
1567
+ method: "post",
1568
+ schema: external_exports.object({ project: docsProjectSchema })
1569
+ });
1570
+ }
1571
+ async function linkBitbucket(data) {
1572
+ return await requestService.request({
1573
+ url: `core/docs-projects/${data.projectUid}/link-bitbucket`,
1574
+ method: "post",
1575
+ data: {
1576
+ workspaceUuid: data.workspaceUuid,
1577
+ repoUuid: data.repoUuid
1578
+ },
1579
+ schema: external_exports.object({
1580
+ pullRequest: external_exports.object({
1581
+ url: external_exports.string(),
1582
+ number: external_exports.number().int(),
1583
+ branch: external_exports.string()
1584
+ }),
1585
+ project: docsProjectSchema
1586
+ })
1587
+ });
1588
+ }
1589
+ async function unlinkBitbucket(projectUid) {
1590
+ return await requestService.request({
1591
+ url: `core/docs-projects/${projectUid}/unlink-bitbucket`,
1592
+ method: "post",
1593
+ schema: external_exports.object({ project: docsProjectSchema })
1594
+ });
1595
+ }
1596
+ async function refreshBitbucketWebhook(projectUid) {
1597
+ return await requestService.request({
1598
+ url: `core/docs-projects/${projectUid}/bitbucket/refresh-webhook`,
1599
+ method: "post",
1600
+ schema: external_exports.object({ project: docsProjectSchema })
1601
+ });
1602
+ }
1603
+ return {
1604
+ createProject,
1605
+ deleteProject,
1606
+ getProject,
1607
+ getGitCredentials,
1608
+ updateRepoSettings,
1609
+ linkGithub,
1610
+ unlinkGithub,
1611
+ linkBitbucket,
1612
+ unlinkBitbucket,
1613
+ refreshBitbucketWebhook
1614
+ };
1615
+ }
1616
+
1617
+ // ../../packages/service-api/dist/apis/feedback.js
1618
+ function feedbackApiFactory(requestService) {
1619
+ async function submit(email, feedback) {
1620
+ return await requestService.request({
1621
+ url: "core/feedback",
1622
+ method: "post",
1623
+ data: {
1624
+ email,
1625
+ feedback
1626
+ },
1627
+ schema: external_exports.null()
1628
+ });
1629
+ }
1630
+ return {
1631
+ submit
1632
+ };
1633
+ }
1634
+
1635
+ // ../../packages/service-api/dist/apis/github.js
1636
+ function githubApiFactory(requestService) {
1637
+ async function initiateLink(opts = {}) {
1638
+ const params = new URLSearchParams();
1639
+ if (opts.redirect)
1640
+ params.set("redirect", opts.redirect);
1641
+ const qs = params.toString() ? `?${params.toString()}` : "";
1642
+ return await requestService.request({
1643
+ url: `core/github/link/initiate${qs}`,
1644
+ method: "get",
1645
+ schema: external_exports.object({
1646
+ url: external_exports.string()
1647
+ })
1648
+ });
1649
+ }
1650
+ async function getRepos() {
1651
+ return await requestService.request({
1652
+ url: "core/github/repos",
1653
+ method: "get",
1654
+ schema: githubInstallSchema.array()
1655
+ });
1656
+ }
1657
+ async function getInstalls() {
1658
+ return await requestService.request({
1659
+ url: "core/github/installs",
1660
+ method: "get",
1661
+ schema: external_exports.object({
1662
+ id: external_exports.number(),
1663
+ name: external_exports.string(),
1664
+ icon: external_exports.string().optional()
1665
+ }).array()
1666
+ });
1667
+ }
1668
+ async function getInstallRepos(installationId, opts = {}) {
1669
+ const params = new URLSearchParams();
1670
+ if (opts.page !== void 0)
1671
+ params.set("page", String(opts.page));
1672
+ if (opts.perPage !== void 0)
1673
+ params.set("perPage", String(opts.perPage));
1674
+ const qs = params.toString() ? `?${params.toString()}` : "";
1675
+ return await requestService.request({
1676
+ url: `core/github/installs/${installationId}/repos${qs}`,
1677
+ method: "get",
1678
+ schema: external_exports.object({
1679
+ repos: external_exports.object({ id: external_exports.number(), name: external_exports.string() }).array(),
1680
+ hasMore: external_exports.boolean(),
1681
+ totalCount: external_exports.number()
1682
+ })
1683
+ });
1684
+ }
1685
+ async function getRepoInfo(id) {
1686
+ return await requestService.request({
1687
+ url: `core/github/repos/${id}`,
1688
+ method: "get",
1689
+ schema: external_exports.object({
1690
+ name: external_exports.string(),
1691
+ description: external_exports.string().optional(),
1692
+ private: external_exports.boolean(),
1693
+ url: external_exports.string(),
1694
+ src: external_exports.string().optional()
1695
+ })
1696
+ });
1697
+ }
1698
+ async function linkRepo(data) {
1699
+ return await requestService.request({
1700
+ url: "core/github/link-repo",
1701
+ method: "post",
1702
+ data,
1703
+ schema: external_exports.null()
1704
+ });
1705
+ }
1706
+ async function unlinkRepo(data) {
1707
+ return await requestService.request({
1708
+ url: "core/github/unlink-repo",
1709
+ method: "post",
1710
+ data,
1711
+ schema: external_exports.null()
1712
+ });
1713
+ }
1714
+ async function getDocsProjectGithubCommits(uid, opts = {}) {
1715
+ const params = new URLSearchParams();
1716
+ if (opts.branch)
1717
+ params.set("branch", opts.branch);
1718
+ if (opts.page !== void 0)
1719
+ params.set("page", String(opts.page));
1720
+ if (opts.perPage !== void 0)
1721
+ params.set("perPage", String(opts.perPage));
1722
+ const qs = params.toString() ? `?${params.toString()}` : "";
1723
+ return await requestService.request({
1724
+ url: `core/github/docs-project/${uid}/commits${qs}`,
1725
+ method: "get",
1726
+ schema: external_exports.object({
1727
+ sha: external_exports.string(),
1728
+ message: external_exports.string(),
1729
+ authorName: external_exports.string(),
1730
+ authorEmail: external_exports.string(),
1731
+ timestamp: external_exports.number()
1732
+ }).array()
1733
+ });
1734
+ }
1735
+ async function listDocsProjectGithubBranches(uid, opts = {}) {
1736
+ const params = new URLSearchParams();
1737
+ if (opts.query)
1738
+ params.set("query", opts.query);
1739
+ if (opts.page !== void 0)
1740
+ params.set("page", String(opts.page));
1741
+ if (opts.perPage !== void 0)
1742
+ params.set("perPage", String(opts.perPage));
1743
+ const qs = params.toString() ? `?${params.toString()}` : "";
1744
+ return await requestService.request({
1745
+ url: `core/github/docs-project/${uid}/branches${qs}`,
1746
+ method: "get",
1747
+ schema: external_exports.object({
1748
+ branches: external_exports.object({
1749
+ name: external_exports.string(),
1750
+ isDefault: external_exports.boolean()
1751
+ }).array(),
1752
+ hasMore: external_exports.boolean()
1753
+ })
1754
+ });
1755
+ }
1756
+ async function createDocsProjectGithubPullRequest(uid, data) {
1757
+ return await requestService.request({
1758
+ url: `core/github/docs-project/${uid}/pull-request`,
1759
+ method: "post",
1760
+ data,
1761
+ schema: external_exports.object({
1762
+ url: external_exports.string(),
1763
+ number: external_exports.number(),
1764
+ alreadyExists: external_exports.boolean()
1765
+ })
1766
+ });
1767
+ }
1768
+ async function getDocsProjectGithubPullRequestForBranch(uid, branch) {
1769
+ const qs = new URLSearchParams({ branch }).toString();
1770
+ return await requestService.request({
1771
+ url: `core/github/docs-project/${uid}/pull-request/for-branch?${qs}`,
1772
+ method: "get",
1773
+ schema: external_exports.object({
1774
+ pullRequest: external_exports.object({
1775
+ url: external_exports.string(),
1776
+ number: external_exports.number(),
1777
+ title: external_exports.string(),
1778
+ body: external_exports.string()
1779
+ }).nullable()
1780
+ })
1781
+ });
1782
+ }
1783
+ async function publishRepo(githubProjectId) {
1784
+ return await requestService.request({
1785
+ url: "core/publish/github",
1786
+ method: "post",
1787
+ data: { projectId: githubProjectId },
1788
+ schema: external_exports.object({
1789
+ publishUid: external_exports.string()
1790
+ })
1791
+ });
1792
+ }
1793
+ async function checkSlug(slug) {
1794
+ return await requestService.request({
1795
+ url: "core/github/slug/available",
1796
+ method: "post",
1797
+ data: { slug },
1798
+ schema: external_exports.object({
1799
+ isAvailable: external_exports.boolean()
1800
+ })
1801
+ });
1802
+ }
1803
+ async function updateSlug(uid, slug) {
1804
+ return await requestService.request({
1805
+ url: "core/github/slug",
1806
+ method: "post",
1807
+ data: { uid, slug },
1808
+ schema: external_exports.null()
1809
+ });
1810
+ }
1811
+ async function getProject(slug) {
1812
+ return await requestService.request({
1813
+ url: `core/github/${slug}`,
1814
+ method: "get",
1815
+ schema: githubProjectSchema
1816
+ });
1817
+ }
1818
+ async function getProjects() {
1819
+ return await requestService.request({
1820
+ url: "core/github/list-projects",
1821
+ method: "get",
1822
+ schema: githubProjectSchema.array()
1823
+ });
1824
+ }
1825
+ async function deleteProject(projectUid) {
1826
+ return await requestService.request({
1827
+ url: "core/github/delete",
1828
+ method: "post",
1829
+ data: { projectUid },
1830
+ schema: external_exports.null()
1831
+ });
1832
+ }
1833
+ async function createProject({ name, slug, isPrivate, accessGroups, allowedUsers, allowedDomains, repositoryId }) {
1834
+ return await requestService.request({
1835
+ url: "core/github/create",
1836
+ method: "post",
1837
+ data: {
1838
+ name,
1839
+ slug,
1840
+ isPrivate,
1841
+ accessGroups,
1842
+ allowedUsers,
1843
+ allowedDomains,
1844
+ repositoryId
1845
+ },
1846
+ schema: external_exports.object({
1847
+ uid: external_exports.string(),
1848
+ slug: external_exports.string()
1849
+ })
1850
+ });
1851
+ }
1852
+ async function disconnectAccount() {
1853
+ return await requestService.request({
1854
+ url: "core/vcs/github/disconnect-account",
1855
+ method: "post",
1856
+ schema: external_exports.object({ success: external_exports.literal(true) })
1857
+ });
1858
+ }
1859
+ async function validateConfigFile(uid, configPath) {
1860
+ return await requestService.request({
1861
+ url: "core/github/config/validate",
1862
+ method: "post",
1863
+ data: { projectId: uid, configPath },
1864
+ schema: external_exports.union([
1865
+ external_exports.object({
1866
+ config: external_exports.string(),
1867
+ success: external_exports.literal(true),
1868
+ version: external_exports.string().optional(),
1869
+ path: external_exports.string().optional()
1870
+ }),
1871
+ external_exports.object({
1872
+ config: external_exports.string(),
1873
+ success: external_exports.literal(false),
1874
+ version: external_exports.string().optional(),
1875
+ error: external_exports.string().array(),
1876
+ path: external_exports.string().optional()
1877
+ })
1878
+ ])
1879
+ });
1880
+ }
1881
+ return {
1882
+ initiateLink,
1883
+ getRepos,
1884
+ getInstalls,
1885
+ getInstallRepos,
1886
+ linkRepo,
1887
+ unlinkRepo,
1888
+ getDocsProjectGithubCommits,
1889
+ listDocsProjectGithubBranches,
1890
+ createDocsProjectGithubPullRequest,
1891
+ getDocsProjectGithubPullRequestForBranch,
1892
+ publishRepo,
1893
+ getRepoInfo,
1894
+ checkSlug,
1895
+ updateSlug,
1896
+ createProject,
1897
+ deleteProject,
1898
+ validateConfigFile,
1899
+ getProject,
1900
+ getProjects,
1901
+ disconnectAccount
1902
+ };
1903
+ }
1904
+
1905
+ // ../../packages/service-api/dist/apis/hocuspocus.js
1906
+ function hocuspocusApiFactory(requestService) {
1907
+ async function fetchDoc(name) {
1908
+ return await requestService.request({
1909
+ url: `hocuspocus/doc/${name}`,
1910
+ method: "get",
1911
+ schema: external_exports.any()
1912
+ });
1913
+ }
1914
+ async function fetchReference(name) {
1915
+ return await requestService.request({
1916
+ url: `hocuspocus/doc/${name}`,
1917
+ method: "get",
1918
+ schema: external_exports.any()
1919
+ });
1920
+ }
1921
+ async function fetchReferences(yjsRefs) {
1922
+ return await requestService.request({
1923
+ url: "hocuspocus/doc/batch",
1924
+ method: "post",
1925
+ data: {
1926
+ items: yjsRefs.map((ref) => `reference-${ref}`),
1927
+ parser: "reference"
1928
+ },
1929
+ schema: external_exports.record(external_exports.string(), external_exports.string().nullable())
1930
+ });
1931
+ }
1932
+ return {
1933
+ fetchDoc,
1934
+ fetchReference,
1935
+ fetchReferences
1936
+ };
1937
+ }
1938
+
1939
+ // ../../packages/service-api/dist/apis/image.js
1940
+ function imageApiFactory(requestService) {
1941
+ async function upload(file) {
1942
+ const formData = new FormData();
1943
+ formData.append("image", file);
1944
+ return await requestService.request({
1945
+ url: "image-uploader/",
1946
+ method: "post",
1947
+ data: formData,
1948
+ schema: external_exports.object({ imageUrl: external_exports.string() })
1949
+ });
1950
+ }
1951
+ async function remove(imageUrl) {
1952
+ return await requestService.request({
1953
+ url: "image-uploader/",
1954
+ method: "delete",
1955
+ data: { imageUrl },
1956
+ schema: external_exports.null()
1957
+ });
1958
+ }
1959
+ return {
1960
+ upload,
1961
+ remove
1962
+ };
1963
+ }
1964
+
1965
+ // ../../packages/service-api/dist/apis/payment.js
1966
+ function paymentApiFactory(requestService) {
1967
+ async function startSession(billingPlan, redirectUrl, flow) {
1968
+ return await requestService.request({
1969
+ url: "core/payment/start",
1970
+ method: "post",
1971
+ data: {
1972
+ billingPlan,
1973
+ redirectUrl,
1974
+ flow
1975
+ },
1976
+ schema: external_exports.string()
1977
+ });
1978
+ }
1979
+ async function startBillingSession(data) {
1980
+ return await requestService.request({
1981
+ url: "core/payment/billing/start",
1982
+ method: "post",
1983
+ schema: external_exports.string(),
1984
+ data
1985
+ });
1986
+ }
1987
+ return {
1988
+ startSession,
1989
+ startBillingSession
1990
+ };
1991
+ }
1992
+
1993
+ // ../../packages/service-api/dist/apis/project.js
1994
+ function projectApiFactory(requestService) {
1995
+ async function createProject(name, hideGuide, hideReference) {
1996
+ return await requestService.request({
1997
+ url: "core/docs/create-project",
1998
+ method: "post",
1999
+ data: {
2000
+ name,
2001
+ hideGuide,
2002
+ hideReference
2003
+ },
2004
+ schema: projectSchema
2005
+ });
2006
+ }
2007
+ async function updateProject(projectUid, data) {
2008
+ return await requestService.request({
2009
+ url: "core/project/update",
2010
+ method: "post",
2011
+ data: { projectUid, ...data },
2012
+ schema: external_exports.null()
2013
+ });
2014
+ }
2015
+ async function deleteProject(projectId) {
2016
+ return await requestService.request({
2017
+ url: "core/docs/delete-project",
2018
+ method: "delete",
2019
+ data: { projectId },
2020
+ schema: external_exports.null()
2021
+ });
2022
+ }
2023
+ async function changeProjectPrivacy(projectUid, makePrivate) {
2024
+ return await requestService.request({
2025
+ url: "core/docs/project/change-privacy",
2026
+ method: "post",
2027
+ data: { projectUid, makePrivate },
2028
+ schema: external_exports.null()
2029
+ });
2030
+ }
2031
+ async function createVersion(data) {
2032
+ return await requestService.request({
2033
+ url: "core/docs/version",
2034
+ method: "post",
2035
+ data,
2036
+ schema: external_exports.object({
2037
+ uid: nanoidSchema
2038
+ })
2039
+ });
2040
+ }
2041
+ return {
2042
+ createProject,
2043
+ deleteProject,
2044
+ changeProjectPrivacy,
2045
+ createVersion,
2046
+ updateProject
2047
+ };
2048
+ }
2049
+
2050
+ // ../../packages/service-api/dist/apis/publish.js
2051
+ function publishApiFactory(requestService) {
2052
+ async function publishCli({ tarStream, configPath, slug, mode }) {
2053
+ const params = new URLSearchParams({
2054
+ slug,
2055
+ configPath,
2056
+ ...mode && { mode }
2057
+ });
2058
+ return await requestService.request({
2059
+ url: `publish-deploy/publish/cli?${params.toString()}`,
2060
+ method: "post",
2061
+ data: tarStream,
2062
+ headers: {
2063
+ "Content-Type": "application/octet-stream"
2064
+ },
2065
+ schema: external_exports.object({ publishUid: nanoidSchema })
2066
+ });
2067
+ }
2068
+ async function publishGithub({ slug, configPath, preview, commitSha }) {
2069
+ return await requestService.request({
2070
+ url: "publish-deploy/publish/github",
2071
+ method: "post",
2072
+ data: {
2073
+ slug,
2074
+ configPath,
2075
+ preview,
2076
+ commitSha
2077
+ },
2078
+ schema: external_exports.object({ publishUid: nanoidSchema })
2079
+ });
2080
+ }
2081
+ async function publishDocsProject({ slug, configPath, preview, commitSha }) {
2082
+ return await requestService.request({
2083
+ url: "publish-deploy/publish/docs-project",
2084
+ method: "post",
2085
+ data: {
2086
+ slug,
2087
+ configPath,
2088
+ preview,
2089
+ commitSha
2090
+ },
2091
+ schema: external_exports.object({ publishUid: nanoidSchema })
2092
+ });
2093
+ }
2094
+ async function publishWysiwyg(uid) {
2095
+ return await requestService.request({
2096
+ url: "publish-deploy/publish/wysiwyg",
2097
+ method: "post",
2098
+ data: {
2099
+ uid
2100
+ },
2101
+ schema: external_exports.object({
2102
+ publishUid: nanoidSchema
2103
+ })
2104
+ });
2105
+ }
2106
+ async function publishTemplate({ slug, repository, branch, configPath }) {
2107
+ return await requestService.request({
2108
+ url: "publish-deploy/publish/template",
2109
+ method: "post",
2110
+ data: {
2111
+ slug,
2112
+ repository,
2113
+ branch,
2114
+ configPath
2115
+ },
2116
+ schema: external_exports.object({ publishUid: nanoidSchema })
2117
+ });
2118
+ }
2119
+ async function createPreviewSandbox(repo) {
2120
+ return await requestService.request({
2121
+ url: "publish-deploy/preview-sandbox",
2122
+ method: "post",
2123
+ data: repo,
2124
+ schema: external_exports.object({
2125
+ sandboxId: external_exports.string(),
2126
+ gitUrl: external_exports.string(),
2127
+ previewUrl: external_exports.string()
2128
+ })
2129
+ });
2130
+ }
2131
+ async function stopPreviewSandbox({ sandboxId, keepalive }) {
2132
+ return await requestService.request({
2133
+ url: "publish-deploy/preview-sandbox/stop",
2134
+ method: "post",
2135
+ data: { sandboxId },
2136
+ schema: external_exports.null(),
2137
+ ...keepalive && { keepalive: true }
2138
+ });
2139
+ }
2140
+ async function getPreviewSandboxLog({ sandboxId }) {
2141
+ return await requestService.request({
2142
+ url: "publish-deploy/preview-sandbox/log",
2143
+ method: "post",
2144
+ data: { sandboxId },
2145
+ schema: external_exports.object({
2146
+ log: external_exports.string().nullable()
2147
+ })
2148
+ });
2149
+ }
2150
+ async function checkDNSRecords(domain) {
2151
+ return await requestService.request({
2152
+ url: "core/publish/dns-check",
2153
+ method: "post",
2154
+ data: {
2155
+ domain
2156
+ },
2157
+ schema: external_exports.object({
2158
+ status: external_exports.enum(["verified", "pending", "misconfigured"]),
2159
+ expected: external_exports.object({
2160
+ type: external_exports.literal("CNAME"),
2161
+ target: external_exports.string()
2162
+ }),
2163
+ found: external_exports.array(external_exports.string())
2164
+ })
2165
+ });
2166
+ }
2167
+ async function unpublish(projectUid, githubProjectUid, unifiedProjectUid) {
2168
+ return await requestService.request({
2169
+ url: "core/unpublish",
2170
+ method: "delete",
2171
+ data: {
2172
+ projectUid,
2173
+ githubProjectUid,
2174
+ unifiedProjectUid
2175
+ },
2176
+ schema: external_exports.null()
2177
+ });
2178
+ }
2179
+ async function redeploy(publishUid) {
2180
+ return await requestService.request({
2181
+ url: "core/publish/redeploy",
2182
+ method: "post",
2183
+ data: {
2184
+ publishUid
2185
+ },
2186
+ schema: external_exports.null()
2187
+ });
2188
+ }
2189
+ async function cancelPublish(publishUid) {
2190
+ return await requestService.request({
2191
+ url: "core/publish/cancel",
2192
+ method: "post",
2193
+ data: {
2194
+ publishUid
2195
+ },
2196
+ schema: external_exports.null()
2197
+ });
2198
+ }
2199
+ async function deleteRecord(publishUid) {
2200
+ return await requestService.request({
2201
+ url: "core/publish",
2202
+ method: "delete",
2203
+ data: {
2204
+ publishUid
2205
+ },
2206
+ schema: external_exports.null()
2207
+ });
2208
+ }
2209
+ async function bulkDelete(projectUid) {
2210
+ return await requestService.request({
2211
+ url: "core/publish/bulk",
2212
+ method: "delete",
2213
+ data: {
2214
+ projectUid
2215
+ },
2216
+ schema: external_exports.null()
2217
+ });
2218
+ }
2219
+ async function getPublishLogs(publishUid) {
2220
+ return await requestService.request({
2221
+ url: `core/publish/logs/${publishUid}`,
2222
+ method: "get",
2223
+ schema: external_exports.string(),
2224
+ stream: true
2225
+ });
2226
+ }
2227
+ async function getDomainAvailability(domain) {
2228
+ return await requestService.request({
2229
+ url: "core/publish/domains/availability",
2230
+ method: "post",
2231
+ data: {
2232
+ domain
2233
+ },
2234
+ schema: external_exports.object({
2235
+ available: external_exports.boolean()
2236
+ })
2237
+ });
2238
+ }
2239
+ async function getProjectDomains(projectUid) {
2240
+ return await requestService.request({
2241
+ url: "core/publish/domains/project",
2242
+ method: "post",
2243
+ data: {
2244
+ projectUid
2245
+ },
2246
+ schema: external_exports.object({
2247
+ scalarDomain: external_exports.string().nullable(),
2248
+ customDomain: external_exports.string().nullable()
2249
+ })
2250
+ });
2251
+ }
2252
+ async function exportWysiwyg(uid, filename) {
2253
+ const token = requestService.getAuthToken?.();
2254
+ const url = `${requestService.baseUrl}/publish-deploy/export/wysiwyg`.replace(/([^:]\/)\/+/g, "$1");
2255
+ const response = await fetch(url, {
2256
+ method: "POST",
2257
+ headers: {
2258
+ "Content-Type": "application/json",
2259
+ ...token ? { Authorization: `Bearer ${token}` } : {}
2260
+ },
2261
+ body: JSON.stringify({ uid })
2262
+ });
2263
+ if (!response.ok) {
2264
+ const text = await response.text().catch(() => "Export failed");
2265
+ return { error: true, message: text, status: response.status };
2266
+ }
2267
+ const blob = await response.blob();
2268
+ const downloadUrl = URL.createObjectURL(blob);
2269
+ const a = document.createElement("a");
2270
+ a.href = downloadUrl;
2271
+ a.download = filename ?? "project-export.zip";
2272
+ document.body.appendChild(a);
2273
+ a.click();
2274
+ a.remove();
2275
+ URL.revokeObjectURL(downloadUrl);
2276
+ return { error: false };
2277
+ }
2278
+ return {
2279
+ publishCli,
2280
+ publishDocsProject,
2281
+ publishGithub,
2282
+ publishTemplate,
2283
+ publishWysiwyg,
2284
+ createPreviewSandbox,
2285
+ stopPreviewSandbox,
2286
+ getPreviewSandboxLog,
2287
+ exportWysiwyg,
2288
+ checkDNSRecords,
2289
+ unpublish,
2290
+ deleteRecord,
2291
+ redeploy,
2292
+ cancelPublish,
2293
+ bulkDelete,
2294
+ getPublishLogs,
2295
+ getDomainAvailability,
2296
+ getProjectDomains
2297
+ };
2298
+ }
2299
+
2300
+ // ../../packages/service-api/dist/apis/signup.js
2301
+ function signupApiFactory(requestService) {
2302
+ async function saveData(signupData) {
2303
+ return await requestService.request({
2304
+ url: "core/signup-data",
2305
+ method: "post",
2306
+ data: signupData,
2307
+ schema: external_exports.object({ dataUid: external_exports.string() })
2308
+ });
2309
+ }
2310
+ return {
2311
+ saveData
2312
+ };
2313
+ }
2314
+
2315
+ // ../../packages/service-api/dist/apis/team.js
2316
+ function teamApiFactory(requestService, getNewTokens) {
2317
+ async function list() {
2318
+ return await requestService.request({
2319
+ url: "core/me/teams",
2320
+ method: "get",
2321
+ schema: external_exports.object({
2322
+ uid: nanoidSchema,
2323
+ name: teamNameSchema,
2324
+ slug: slugSchema,
2325
+ imageUri: teamImageSchema,
2326
+ theme: external_exports.string()
2327
+ }).array()
2328
+ });
2329
+ }
2330
+ async function create(data) {
2331
+ return await requestService.request({
2332
+ url: "core/team/create",
2333
+ method: "post",
2334
+ data,
2335
+ schema: external_exports.object({
2336
+ teamUid: external_exports.string()
2337
+ })
2338
+ }).then(async (r) => {
2339
+ if (!r.error)
2340
+ await getNewTokens(r.data.teamUid);
2341
+ return r;
2342
+ });
2343
+ }
2344
+ async function inviteMember(data) {
2345
+ return await requestService.request({
2346
+ url: "core/team/invite",
2347
+ method: "post",
2348
+ data,
2349
+ schema: external_exports.null()
2350
+ });
2351
+ }
2352
+ async function removeInvite(invitedUserUid) {
2353
+ return await requestService.request({
2354
+ url: "core/team/invite",
2355
+ method: "delete",
2356
+ data: { uid: invitedUserUid },
2357
+ schema: external_exports.null()
2358
+ });
2359
+ }
2360
+ async function resendInvite(inviteUid) {
2361
+ return await requestService.request({
2362
+ url: "core/team/invite",
2363
+ method: "patch",
2364
+ data: { uid: inviteUid },
2365
+ schema: external_exports.null()
2366
+ });
2367
+ }
2368
+ async function updateSlug(slug) {
2369
+ return await requestService.request({
2370
+ url: "core/team/slug",
2371
+ method: "post",
2372
+ data: { slug },
2373
+ schema: external_exports.null()
2374
+ });
2375
+ }
2376
+ async function checkSlug(slug) {
2377
+ return await requestService.request({
2378
+ url: "core/team/slug/available",
2379
+ method: "post",
2380
+ data: { slug },
2381
+ schema: external_exports.object({
2382
+ isAvailable: external_exports.boolean()
2383
+ })
2384
+ });
2385
+ }
2386
+ async function createNamespace(namespace) {
2387
+ return await requestService.request({
2388
+ url: "core/team/namespace",
2389
+ method: "post",
2390
+ data: { namespace },
2391
+ schema: external_exports.null()
2392
+ });
2393
+ }
2394
+ async function getNamespaces() {
2395
+ return await requestService.request({
2396
+ url: "core/team/namespaces",
2397
+ method: "get",
2398
+ schema: external_exports.string().array()
2399
+ });
2400
+ }
2401
+ async function updateNamespace(namespace, newNamespace) {
2402
+ return await requestService.request({
2403
+ url: "core/team/namespace/update",
2404
+ method: "post",
2405
+ data: { namespace, newNamespace },
2406
+ schema: external_exports.null()
2407
+ });
2408
+ }
2409
+ async function checkNamespace(namespace) {
2410
+ return await requestService.request({
2411
+ url: "core/team/namespace/available",
2412
+ method: "post",
2413
+ data: { namespace },
2414
+ schema: external_exports.object({
2415
+ isAvailable: external_exports.boolean()
2416
+ })
2417
+ });
2418
+ }
2419
+ async function rename(name) {
2420
+ return await requestService.request({
2421
+ url: "core/team/rename",
2422
+ method: "post",
2423
+ data: { name },
2424
+ schema: external_exports.null()
2425
+ });
2426
+ }
2427
+ async function leave() {
2428
+ return await requestService.request({
2429
+ url: "core/team/leave",
2430
+ method: "get",
2431
+ schema: external_exports.null()
2432
+ }).then(async (r) => {
2433
+ if (!r.error)
2434
+ await getNewTokens();
2435
+ return r;
2436
+ });
2437
+ }
2438
+ async function removeMember(userUid) {
2439
+ return await requestService.request({
2440
+ url: "core/team/delete-member",
2441
+ method: "post",
2442
+ data: {
2443
+ userUid
2444
+ },
2445
+ schema: external_exports.null()
2446
+ });
2447
+ }
2448
+ async function updateRole(data) {
2449
+ return await requestService.request({
2450
+ url: "core/team/update-role",
2451
+ method: "post",
2452
+ data,
2453
+ schema: external_exports.null()
2454
+ });
2455
+ }
2456
+ async function deleteTeam() {
2457
+ return await requestService.request({
2458
+ url: "core/team",
2459
+ method: "delete",
2460
+ data: null,
2461
+ schema: external_exports.object({
2462
+ newTeamUid: nanoidSchema.nullable()
2463
+ })
2464
+ }).then(async (r) => {
2465
+ if (!r.error)
2466
+ await getNewTokens();
2467
+ return r;
2468
+ });
2469
+ }
2470
+ async function updateImage(imageUri) {
2471
+ return await requestService.request({
2472
+ url: "core/team/image",
2473
+ method: "post",
2474
+ data: {
2475
+ imageUri
2476
+ },
2477
+ schema: external_exports.null()
2478
+ });
2479
+ }
2480
+ async function update(data) {
2481
+ return await requestService.request({
2482
+ url: "core/team/update",
2483
+ method: "post",
2484
+ data,
2485
+ schema: external_exports.null()
2486
+ });
2487
+ }
2488
+ async function updateTeamUser(updateRequestData) {
2489
+ return await requestService.request({
2490
+ url: "core/team/update-user",
2491
+ method: "post",
2492
+ data: updateRequestData,
2493
+ schema: external_exports.null()
2494
+ });
2495
+ }
2496
+ async function getBillingSummary() {
2497
+ return await requestService.request({
2498
+ url: "core/team/billing",
2499
+ method: "get",
2500
+ schema: teamBillingSummary
2501
+ });
2502
+ }
2503
+ async function updateBillingPlan(billingPlan) {
2504
+ return await requestService.request({
2505
+ url: "core/team/update/plan",
2506
+ method: "post",
2507
+ data: {
2508
+ billingPlan
2509
+ },
2510
+ schema: external_exports.null()
2511
+ });
2512
+ }
2513
+ async function updateBillingEmail(email) {
2514
+ return await requestService.request({
2515
+ url: "core/team/billing/email",
2516
+ method: "post",
2517
+ data: {
2518
+ email
2519
+ },
2520
+ schema: external_exports.null()
2521
+ });
2522
+ }
2523
+ async function extendTrial() {
2524
+ return await requestService.request({
2525
+ url: "core/team/extend-trial",
2526
+ method: "post",
2527
+ data: {},
2528
+ schema: external_exports.null()
2529
+ });
2530
+ }
2531
+ async function onboardingSetup(data) {
2532
+ return await requestService.request({
2533
+ url: "core/team/onboarding/complete",
2534
+ method: "post",
2535
+ data,
2536
+ schema: external_exports.null()
2537
+ });
2538
+ }
2539
+ async function onboardingComplete() {
2540
+ return await requestService.request({
2541
+ url: "core/team/onboarding/complete",
2542
+ method: "post",
2543
+ data: {},
2544
+ schema: external_exports.null()
2545
+ });
2546
+ }
2547
+ async function addTeamIcon(data) {
2548
+ return await requestService.request({
2549
+ url: "core/team/icon",
2550
+ method: "post",
2551
+ data,
2552
+ schema: external_exports.null()
2553
+ });
2554
+ }
2555
+ async function removeTeamIcon(data) {
2556
+ return await requestService.request({
2557
+ url: "core/team/icon",
2558
+ method: "delete",
2559
+ data,
2560
+ schema: external_exports.null()
2561
+ });
2562
+ }
2563
+ async function addAuthenticationDomain(data) {
2564
+ return await requestService.request({
2565
+ url: "core/team/authentication/domain",
2566
+ method: "post",
2567
+ data,
2568
+ schema: external_exports.null()
2569
+ });
2570
+ }
2571
+ async function deleteAuthenticationDomain(data) {
2572
+ return await requestService.request({
2573
+ url: "core/team/authentication/domain",
2574
+ method: "delete",
2575
+ data,
2576
+ schema: external_exports.null()
2577
+ });
2578
+ }
2579
+ async function toggleAuthenticationMethod(data) {
2580
+ return await requestService.request({
2581
+ url: "core/team/authentication/method",
2582
+ method: "post",
2583
+ data,
2584
+ schema: external_exports.null()
2585
+ });
2586
+ }
2587
+ async function editAuthenticationUserControls(data) {
2588
+ return await requestService.request({
2589
+ url: "core/team/authentication/user",
2590
+ method: "post",
2591
+ data,
2592
+ schema: external_exports.null()
2593
+ });
2594
+ }
2595
+ async function removeAuthenticationUserControls(data) {
2596
+ return await requestService.request({
2597
+ url: "core/team/authentication/user",
2598
+ method: "delete",
2599
+ data,
2600
+ schema: external_exports.null()
2601
+ });
2602
+ }
2603
+ async function toggleUserAuthenticationMethod(data) {
2604
+ return await requestService.request({
2605
+ url: "core/team/authentication/user/method",
2606
+ method: "post",
2607
+ data,
2608
+ schema: external_exports.null()
2609
+ });
2610
+ }
2611
+ async function toggleExternalAccessMethod(data) {
2612
+ return await requestService.request({
2613
+ url: "core/team/external-access/method",
2614
+ method: "post",
2615
+ data,
2616
+ schema: external_exports.null()
2617
+ });
2618
+ }
2619
+ return {
2620
+ list,
2621
+ create,
2622
+ inviteMember,
2623
+ removeInvite,
2624
+ resendInvite,
2625
+ rename,
2626
+ leave,
2627
+ removeMember,
2628
+ delete: deleteTeam,
2629
+ getBillingSummary,
2630
+ updateBillingEmail,
2631
+ updateBillingPlan,
2632
+ extendTrial,
2633
+ update,
2634
+ updateRole,
2635
+ updateTeamUser,
2636
+ updateImage,
2637
+ updateSlug,
2638
+ checkSlug,
2639
+ getNamespaces,
2640
+ createNamespace,
2641
+ updateNamespace,
2642
+ checkNamespace,
2643
+ onboardingSetup,
2644
+ onboardingComplete,
2645
+ addTeamIcon,
2646
+ removeTeamIcon,
2647
+ addAuthenticationDomain,
2648
+ deleteAuthenticationDomain,
2649
+ toggleAuthenticationMethod,
2650
+ editAuthenticationUserControls,
2651
+ removeAuthenticationUserControls,
2652
+ toggleUserAuthenticationMethod,
2653
+ toggleExternalAccessMethod
2654
+ };
2655
+ }
2656
+
2657
+ // ../../packages/service-api/dist/index.js
2658
+ var apiServiceFactory = (baseUrl, getAuthToken, getNewTokens) => {
2659
+ const requestService = requestServiceFactory(baseUrl, getAuthToken);
2660
+ return {
2661
+ user: userApiFactory(requestService),
2662
+ auth: authApiFactory(requestService),
2663
+ team: teamApiFactory(requestService, getNewTokens),
2664
+ feedback: feedbackApiFactory(requestService),
2665
+ image: imageApiFactory(requestService),
2666
+ payment: paymentApiFactory(requestService),
2667
+ hocuspocus: hocuspocusApiFactory(requestService),
2668
+ publish: publishApiFactory(requestService),
2669
+ github: githubApiFactory(requestService),
2670
+ bitbucket: bitbucketApiFactory(requestService),
2671
+ signup: signupApiFactory(requestService),
2672
+ project: projectApiFactory(requestService),
2673
+ docsProject: docsProjectApiFactory(requestService),
2674
+ managedDocs: managedDocsApiFactory(requestService),
2675
+ managedSchemas: managedSchemasApiFactory(requestService),
2676
+ rules: rulesApiFactory(requestService),
2677
+ registryGit: registryGitApiFactory(requestService),
2678
+ themes: themesApiFactory(requestService),
2679
+ accessGroups: accessGroupsApiFactory(requestService),
2680
+ loginPortals: loginPortalsApiFactory(requestService),
2681
+ sdks: sdksApiFactory(requestService),
2682
+ waitlist: waitlistApiFactory(requestService),
2683
+ workspace: workspaceApiFactory(requestService),
2684
+ analytics: analyticsApiFactory(requestService)
2685
+ };
2686
+ };
2687
+
2688
+ // src/helpers/api-service.ts
2689
+ var apiService = async () => {
2690
+ const auth = await getAuthData();
2691
+ auth.addEventListener((state) => Object.assign(auth, state));
2692
+ return apiServiceFactory(
2693
+ config.services.api,
2694
+ () => auth.accessToken,
2695
+ async (teamUid) => {
2696
+ if ("refreshToken" in auth) {
2697
+ await refreshToken(auth.refreshToken, teamUid);
2698
+ return;
2699
+ }
2700
+ await generateAccessByPersonalToken({
2701
+ personalToken: auth.personalToken
2702
+ });
2703
+ }
2704
+ );
2705
+ };
2706
+
2707
+ export {
2708
+ apiService
2709
+ };