@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.
- package/README.md +42 -2
- package/chunks/action-45OGQB2M.js +138 -0
- package/chunks/action-5R5FDF6S.js +2097 -0
- package/chunks/action-ANU5HGC4.js +34 -0
- package/chunks/action-BMFXENMX.js +176 -0
- package/chunks/action-BNEGJBUH.js +38 -0
- package/chunks/action-BYZUBXVB.js +82 -0
- package/chunks/action-C5VB4ITT.js +132 -0
- package/chunks/action-CCW66QJN.js +72 -0
- package/chunks/action-CLSD7O2R.js +60 -0
- package/chunks/action-CQ56FVES.js +65 -0
- package/chunks/action-CYP4VDK3.js +148 -0
- package/chunks/action-DFKHSDFV.js +36 -0
- package/chunks/action-F4Y6Q2VB.js +92 -0
- package/chunks/action-GB6DM53B.js +70 -0
- package/chunks/action-GEBRPNRT.js +87 -0
- package/chunks/action-H5OHT2GV.js +56 -0
- package/chunks/action-HD2T6BFJ.js +54 -0
- package/chunks/action-HNKM3Q65.js +65 -0
- package/chunks/action-JOSVV6YA.js +71 -0
- package/chunks/action-MENXFJH3.js +204 -0
- package/chunks/action-P7LN6FGY.js +13 -0
- package/chunks/action-PVDDRIM6.js +130 -0
- package/chunks/action-Q5UJ32D6.js +46 -0
- package/chunks/action-R6ZZO26F.js +299 -0
- package/chunks/action-STIEAXOE.js +53 -0
- package/chunks/action-TPBKPHNS.js +110 -0
- package/chunks/action-TWFJNQ2R.js +95 -0
- package/chunks/action-TZ5KGAQT.js +64 -0
- package/chunks/action-UDZUUJSI.js +49 -0
- package/chunks/action-W5BATF4Q.js +197 -0
- package/chunks/agent-XGLOHXNA.js +112 -0
- package/chunks/build.action-LKOILPA6.js +108 -0
- package/chunks/chunk-23I5PKZZ.js +78 -0
- package/chunks/chunk-2BSG2QHO.js +455 -0
- package/chunks/chunk-3MZYUBJ6.js +49 -0
- package/chunks/chunk-47Y4L5IT.js +63361 -0
- package/chunks/chunk-4DGQIAJX.js +359 -0
- package/chunks/chunk-4QS7SJTG.js +138 -0
- package/chunks/chunk-5BISXQX4.js +447 -0
- package/chunks/chunk-5BPPGTUU.js +463 -0
- package/chunks/chunk-AEFPCC4U.js +16 -0
- package/chunks/chunk-AHWWJ3MD.js +32 -0
- package/chunks/chunk-ASMHW5AY.js +19 -0
- package/chunks/chunk-B6QZJWCQ.js +92 -0
- package/chunks/chunk-DOVIWNKQ.js +108 -0
- package/chunks/chunk-H2WRMLYY.js +13780 -0
- package/chunks/chunk-HQKBZOYU.js +34 -0
- package/chunks/chunk-ISGLWBXZ.js +4265 -0
- package/chunks/chunk-IX7LJ3AD.js +17 -0
- package/chunks/chunk-JFIXNSPP.js +26 -0
- package/chunks/chunk-K74E42RV.js +7311 -0
- package/chunks/chunk-KHDYYVYF.js +16 -0
- package/chunks/chunk-KWOL7A6J.js +23 -0
- package/chunks/chunk-NUXPNUSS.js +38 -0
- package/chunks/chunk-OAXFCOJV.js +25 -0
- package/chunks/chunk-P2VH7DOC.js +107 -0
- package/chunks/chunk-P646T2WH.js +1608 -0
- package/chunks/chunk-SHSHFGA7.js +297 -0
- package/chunks/chunk-SXYALPYK.js +2709 -0
- package/chunks/chunk-T7B6WNZC.js +18 -0
- package/chunks/chunk-T7MDADON.js +17 -0
- package/chunks/chunk-TLFMATXR.js +344 -0
- package/chunks/chunk-TQ5XC2E3.js +284 -0
- package/chunks/chunk-UPUTMFD4.js +465 -0
- package/chunks/chunk-VTYTPSXO.js +161 -0
- package/chunks/chunk-X4QLDBB5.js +221 -0
- package/chunks/chunk-ZTVWAKNJ.js +21 -0
- package/chunks/create.action-FFQLBSJH.js +108 -0
- package/chunks/delete.action-QNN3LC2F.js +96 -0
- package/chunks/delete.action-STHQHP4F.js +88 -0
- package/chunks/get.action-OTKYOP3Z.js +87 -0
- package/chunks/list.action-6I5EZAVB.js +95 -0
- package/chunks/list.action-KDM5RHEH.js +116 -0
- package/chunks/publish.action-PODTVRXS.js +182 -0
- package/chunks/update.action-4F6STTEQ.js +101 -0
- package/chunks/update.action-KMD4ZM75.js +95 -0
- package/docs.html +393 -230
- package/index.js +645 -98865
- package/package.json +16 -14
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
import { createRequire as $$cR } from "node:module"; const require = $$cR(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
brandedUid,
|
|
4
|
+
customProjectIconSchema,
|
|
5
|
+
emailSchema,
|
|
6
|
+
entitySchema,
|
|
7
|
+
mintUid,
|
|
8
|
+
namespaceSchema,
|
|
9
|
+
nanoidSchema,
|
|
10
|
+
schemaModel,
|
|
11
|
+
slugSchema
|
|
12
|
+
} from "./chunk-ISGLWBXZ.js";
|
|
13
|
+
import {
|
|
14
|
+
external_exports
|
|
15
|
+
} from "./chunk-H2WRMLYY.js";
|
|
16
|
+
|
|
17
|
+
// ../../packages/entities/dist/team/access.js
|
|
18
|
+
var ExternalAccessMethod;
|
|
19
|
+
(function(ExternalAccessMethod2) {
|
|
20
|
+
ExternalAccessMethod2["Email"] = "email";
|
|
21
|
+
ExternalAccessMethod2["SSO"] = "sso";
|
|
22
|
+
ExternalAccessMethod2["Google"] = "google";
|
|
23
|
+
ExternalAccessMethod2["Microsoft"] = "microsoft";
|
|
24
|
+
})(ExternalAccessMethod || (ExternalAccessMethod = {}));
|
|
25
|
+
var emailInheritingExternalAccessMethods = [
|
|
26
|
+
ExternalAccessMethod.Google
|
|
27
|
+
];
|
|
28
|
+
var externalAccessMethodByProvider = {
|
|
29
|
+
google: ExternalAccessMethod.Google,
|
|
30
|
+
microsoft: ExternalAccessMethod.Microsoft
|
|
31
|
+
};
|
|
32
|
+
var externalAccessMethodsSchema = external_exports.object({
|
|
33
|
+
[ExternalAccessMethod.Email]: external_exports.boolean().default(true),
|
|
34
|
+
[ExternalAccessMethod.SSO]: external_exports.boolean().default(false),
|
|
35
|
+
/** No default: an unset social method inherits the email setting */
|
|
36
|
+
[ExternalAccessMethod.Google]: external_exports.boolean().optional(),
|
|
37
|
+
[ExternalAccessMethod.Microsoft]: external_exports.boolean().optional()
|
|
38
|
+
}).meta({ id: "external-access-methods" });
|
|
39
|
+
var externalAccessMethodLabels = {
|
|
40
|
+
[ExternalAccessMethod.Email]: "Email Magic Link",
|
|
41
|
+
[ExternalAccessMethod.SSO]: "Single Sign-On",
|
|
42
|
+
[ExternalAccessMethod.Google]: "Google OAuth",
|
|
43
|
+
[ExternalAccessMethod.Microsoft]: "Microsoft OAuth"
|
|
44
|
+
};
|
|
45
|
+
var externalAccessSchema = external_exports.object({
|
|
46
|
+
/** Available authentication methods for external access */
|
|
47
|
+
methods: externalAccessMethodsSchema.default(schemaModel({}, externalAccessMethodsSchema))
|
|
48
|
+
}).meta({ id: "external-access" });
|
|
49
|
+
|
|
50
|
+
// ../../packages/entities/dist/team/billing-plan.js
|
|
51
|
+
var BillingPlan;
|
|
52
|
+
(function(BillingPlan2) {
|
|
53
|
+
BillingPlan2["Trial"] = "trial";
|
|
54
|
+
BillingPlan2["Free"] = "free";
|
|
55
|
+
BillingPlan2["ProMonthly"] = "pro_monthly";
|
|
56
|
+
BillingPlan2["ProYearly"] = "pro_yearly";
|
|
57
|
+
BillingPlan2["Premium"] = "premium";
|
|
58
|
+
BillingPlan2["Enterprise"] = "enterprise";
|
|
59
|
+
})(BillingPlan || (BillingPlan = {}));
|
|
60
|
+
var billingPlanLabels = {
|
|
61
|
+
[BillingPlan.Free]: "Free",
|
|
62
|
+
[BillingPlan.Trial]: "Trial",
|
|
63
|
+
[BillingPlan.ProMonthly]: "Monthly",
|
|
64
|
+
[BillingPlan.Premium]: "Monthly",
|
|
65
|
+
[BillingPlan.ProYearly]: "Yearly",
|
|
66
|
+
[BillingPlan.Enterprise]: "Enterprise"
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
// ../../packages/entities/dist/team/feature-flags.js
|
|
70
|
+
var FeatureFlag;
|
|
71
|
+
(function(FeatureFlag2) {
|
|
72
|
+
FeatureFlag2["Rules"] = "rules";
|
|
73
|
+
FeatureFlag2["Registry"] = "registry";
|
|
74
|
+
FeatureFlag2["Schemas"] = "schemas";
|
|
75
|
+
FeatureFlag2["SDK"] = "sdk";
|
|
76
|
+
FeatureFlag2["CLI"] = "cli";
|
|
77
|
+
FeatureFlag2["Agent"] = "agent";
|
|
78
|
+
FeatureFlag2["MCP"] = "mcp";
|
|
79
|
+
FeatureFlag2["Workspaces"] = "workspaces";
|
|
80
|
+
FeatureFlag2["Export"] = "export";
|
|
81
|
+
FeatureFlag2["DocsMCP"] = "docsMcp";
|
|
82
|
+
FeatureFlag2["DisableApiSSR"] = "disableApiSSR";
|
|
83
|
+
FeatureFlag2["UnifiedDocs"] = "unifiedDocs";
|
|
84
|
+
FeatureFlag2["DocsAnalytics"] = "docsAnalytics";
|
|
85
|
+
FeatureFlag2["McpAnalytics"] = "mcpAnalytics";
|
|
86
|
+
FeatureFlag2["MicrosoftLogin"] = "microsoftLogin";
|
|
87
|
+
FeatureFlag2["EditorPreview"] = "editorPreview";
|
|
88
|
+
FeatureFlag2["RegistryGit"] = "registryGit";
|
|
89
|
+
FeatureFlag2["AutoBillSeats"] = "autoBillSeats";
|
|
90
|
+
FeatureFlag2["AutoBillSdks"] = "autoBillSdks";
|
|
91
|
+
})(FeatureFlag || (FeatureFlag = {}));
|
|
92
|
+
var featureSchema = external_exports.boolean().optional().meta({ id: "feature" });
|
|
93
|
+
var featureUpdateSchema = external_exports.boolean().nullable().optional();
|
|
94
|
+
var featureFlagSchema = external_exports.object({
|
|
95
|
+
[FeatureFlag.Rules]: featureSchema,
|
|
96
|
+
[FeatureFlag.Registry]: featureSchema,
|
|
97
|
+
[FeatureFlag.Schemas]: featureSchema,
|
|
98
|
+
[FeatureFlag.SDK]: featureSchema,
|
|
99
|
+
[FeatureFlag.CLI]: featureSchema,
|
|
100
|
+
[FeatureFlag.Agent]: featureSchema,
|
|
101
|
+
[FeatureFlag.Workspaces]: featureSchema,
|
|
102
|
+
[FeatureFlag.MCP]: featureSchema,
|
|
103
|
+
[FeatureFlag.Export]: featureSchema,
|
|
104
|
+
[FeatureFlag.DocsMCP]: featureSchema,
|
|
105
|
+
[FeatureFlag.DisableApiSSR]: featureSchema,
|
|
106
|
+
[FeatureFlag.UnifiedDocs]: featureSchema,
|
|
107
|
+
[FeatureFlag.DocsAnalytics]: featureSchema,
|
|
108
|
+
[FeatureFlag.McpAnalytics]: featureSchema,
|
|
109
|
+
[FeatureFlag.MicrosoftLogin]: featureSchema,
|
|
110
|
+
[FeatureFlag.EditorPreview]: featureSchema,
|
|
111
|
+
[FeatureFlag.RegistryGit]: featureSchema,
|
|
112
|
+
[FeatureFlag.AutoBillSeats]: featureSchema,
|
|
113
|
+
[FeatureFlag.AutoBillSdks]: featureSchema
|
|
114
|
+
}).meta({ id: "feature-flag" });
|
|
115
|
+
var featureFlagUpdateSchema = external_exports.object(Object.fromEntries(Object.values(FeatureFlag).map((featureFlag) => [
|
|
116
|
+
featureFlag,
|
|
117
|
+
featureUpdateSchema
|
|
118
|
+
]))).meta({ id: "feature-flag-update" });
|
|
119
|
+
var autoBillingFlags = {
|
|
120
|
+
seats: FeatureFlag.AutoBillSeats,
|
|
121
|
+
sdks: FeatureFlag.AutoBillSdks
|
|
122
|
+
};
|
|
123
|
+
var DEFAULT_ON_FLAGS = /* @__PURE__ */ new Set([
|
|
124
|
+
...Object.values(autoBillingFlags),
|
|
125
|
+
/**
|
|
126
|
+
* MCP analytics is on for everyone; the flag remains only as a per-team kill
|
|
127
|
+
* switch. Ingest has always run for every team regardless of the flag, so
|
|
128
|
+
* this grants read access to records that already exist rather than starting
|
|
129
|
+
* any new collection.
|
|
130
|
+
*/
|
|
131
|
+
FeatureFlag.McpAnalytics
|
|
132
|
+
]);
|
|
133
|
+
|
|
134
|
+
// ../../packages/entities/dist/team/schema.js
|
|
135
|
+
var TeamUserRole;
|
|
136
|
+
(function(TeamUserRole2) {
|
|
137
|
+
TeamUserRole2["Owner"] = "owner";
|
|
138
|
+
TeamUserRole2["Admin"] = "admin";
|
|
139
|
+
TeamUserRole2["Editor"] = "editor";
|
|
140
|
+
TeamUserRole2["Viewer"] = "viewer";
|
|
141
|
+
})(TeamUserRole || (TeamUserRole = {}));
|
|
142
|
+
var roleLabels = {
|
|
143
|
+
[TeamUserRole.Admin]: "Admin",
|
|
144
|
+
[TeamUserRole.Editor]: "Editor",
|
|
145
|
+
[TeamUserRole.Owner]: "Owner",
|
|
146
|
+
[TeamUserRole.Viewer]: "Viewer"
|
|
147
|
+
};
|
|
148
|
+
var roleSchema = external_exports.enum(TeamUserRole).meta({ id: "role" });
|
|
149
|
+
var userRefSchema = external_exports.object({
|
|
150
|
+
uid: brandedUid(),
|
|
151
|
+
role: roleSchema,
|
|
152
|
+
displayName: external_exports.string(),
|
|
153
|
+
imageUri: external_exports.string().optional(),
|
|
154
|
+
activeProjectUid: external_exports.string().default(""),
|
|
155
|
+
nonBillable: external_exports.boolean().default(false).optional()
|
|
156
|
+
}).meta({ id: "user-ref" });
|
|
157
|
+
var billingPlanSchema = external_exports.enum(BillingPlan).meta({ id: "billing-plan" });
|
|
158
|
+
var billingInfoSchema = external_exports.preprocess((arg) => {
|
|
159
|
+
if (typeof arg?.hasTrial === "boolean" && ![
|
|
160
|
+
BillingPlan.Premium,
|
|
161
|
+
BillingPlan.ProMonthly,
|
|
162
|
+
BillingPlan.ProYearly
|
|
163
|
+
].includes(arg?.plan)) {
|
|
164
|
+
arg.plan = "trial";
|
|
165
|
+
}
|
|
166
|
+
return arg;
|
|
167
|
+
}, external_exports.object({
|
|
168
|
+
billingId: nanoidSchema.optional(),
|
|
169
|
+
email: emailSchema,
|
|
170
|
+
plan: billingPlanSchema,
|
|
171
|
+
expires: external_exports.number().optional(),
|
|
172
|
+
sdkTrialReminderSentAt: external_exports.number().optional(),
|
|
173
|
+
trialEndedReminderSentAt: external_exports.number().optional(),
|
|
174
|
+
trialExtendedAt: external_exports.number().optional(),
|
|
175
|
+
includedCreditsOverride: external_exports.number().optional()
|
|
176
|
+
})).meta({ id: "billing-info" });
|
|
177
|
+
var invoiceStatusSchema = external_exports.enum(["open", "paid", "draft", "void", "uncollectible"]).meta({ id: "invoice-status" });
|
|
178
|
+
var billingInvoiceSchema = external_exports.object({
|
|
179
|
+
id: external_exports.string(),
|
|
180
|
+
/** Total invoice payment amount */
|
|
181
|
+
total: external_exports.number(),
|
|
182
|
+
/** Invoice status - we should only display open and paid to users */
|
|
183
|
+
status: invoiceStatusSchema.nullable(),
|
|
184
|
+
/** Invoice payment date */
|
|
185
|
+
paymentDate: external_exports.number(),
|
|
186
|
+
/** Currency for payment */
|
|
187
|
+
currency: external_exports.string(),
|
|
188
|
+
/** PDF download link */
|
|
189
|
+
downloadUrl: external_exports.string().nullable().optional()
|
|
190
|
+
}).meta({ id: "billing-invoice" });
|
|
191
|
+
var cardSchema = external_exports.object({
|
|
192
|
+
last4: external_exports.string().length(4),
|
|
193
|
+
expMonth: external_exports.number(),
|
|
194
|
+
expYear: external_exports.number()
|
|
195
|
+
}).meta({ id: "card" });
|
|
196
|
+
var teamBillingSummary = external_exports.object({
|
|
197
|
+
/** All invoices for a team */
|
|
198
|
+
invoices: billingInvoiceSchema.array().default([]),
|
|
199
|
+
/** Stripe customer billing address */
|
|
200
|
+
address: external_exports.string().nullable(),
|
|
201
|
+
card: cardSchema.nullable(),
|
|
202
|
+
/** Basic Scalar billing info from team record */
|
|
203
|
+
billingInfo: billingInfoSchema
|
|
204
|
+
}).meta({ id: "team-billing-summary" });
|
|
205
|
+
var pendingInviteSchema = external_exports.object({
|
|
206
|
+
uid: nanoidSchema,
|
|
207
|
+
role: roleSchema.default(TeamUserRole.Editor),
|
|
208
|
+
email: emailSchema,
|
|
209
|
+
expires: external_exports.number().optional()
|
|
210
|
+
}).meta({ id: "pending-invite" });
|
|
211
|
+
var teamNameSchema = external_exports.string().trim().overwrite((s) => s.length ? s : "Untitled Team").meta({ id: "team-name" });
|
|
212
|
+
var teamImageSchema = external_exports.string().optional().meta({ id: "team-image" });
|
|
213
|
+
var TeamOnboardingState;
|
|
214
|
+
(function(TeamOnboardingState2) {
|
|
215
|
+
TeamOnboardingState2["Setup"] = "setup";
|
|
216
|
+
TeamOnboardingState2["Complete"] = "complete";
|
|
217
|
+
})(TeamOnboardingState || (TeamOnboardingState = {}));
|
|
218
|
+
var TeamAuthenticationMethod;
|
|
219
|
+
(function(TeamAuthenticationMethod2) {
|
|
220
|
+
TeamAuthenticationMethod2["Password"] = "password";
|
|
221
|
+
TeamAuthenticationMethod2["Google"] = "google";
|
|
222
|
+
TeamAuthenticationMethod2["GitHub"] = "github";
|
|
223
|
+
TeamAuthenticationMethod2["SSO"] = "sso";
|
|
224
|
+
})(TeamAuthenticationMethod || (TeamAuthenticationMethod = {}));
|
|
225
|
+
var teamAuthenticationMethodLabels = {
|
|
226
|
+
[TeamAuthenticationMethod.Google]: "Google OAuth",
|
|
227
|
+
[TeamAuthenticationMethod.GitHub]: "GitHub OAuth",
|
|
228
|
+
[TeamAuthenticationMethod.Password]: "Email & Password",
|
|
229
|
+
[TeamAuthenticationMethod.SSO]: "Single Sign-On"
|
|
230
|
+
};
|
|
231
|
+
var teamAuthenticationMethodsSchema = external_exports.object({
|
|
232
|
+
[TeamAuthenticationMethod.Password]: external_exports.boolean().default(true),
|
|
233
|
+
[TeamAuthenticationMethod.Google]: external_exports.boolean().default(true),
|
|
234
|
+
[TeamAuthenticationMethod.GitHub]: external_exports.boolean().default(true),
|
|
235
|
+
[TeamAuthenticationMethod.SSO]: external_exports.boolean().default(true)
|
|
236
|
+
}).meta({ id: "team-authentication-methods" });
|
|
237
|
+
var teamAuthenticationSchema = external_exports.object({
|
|
238
|
+
/** General team level enabled authentication methods */
|
|
239
|
+
methods: teamAuthenticationMethodsSchema.default(schemaModel({}, teamAuthenticationMethodsSchema)),
|
|
240
|
+
/**
|
|
241
|
+
* Allowlist of domains for login.
|
|
242
|
+
*
|
|
243
|
+
* If empty, all domains are allowed.
|
|
244
|
+
*/
|
|
245
|
+
domains: external_exports.string().array().default([]),
|
|
246
|
+
/**
|
|
247
|
+
* User level authentication methods.
|
|
248
|
+
*
|
|
249
|
+
* Overrides general team methods that were
|
|
250
|
+
* enabled/disabled.
|
|
251
|
+
*/
|
|
252
|
+
userControls: external_exports.record(nanoidSchema, teamAuthenticationMethodsSchema).default({})
|
|
253
|
+
}).meta({ id: "team-authentication" });
|
|
254
|
+
var teamSchema = entitySchema.extend({
|
|
255
|
+
/** Own uid, branded so it cannot be confused with another entity's uid */
|
|
256
|
+
uid: brandedUid().default(mintUid).meta({ default: "nanoid()" }),
|
|
257
|
+
name: teamNameSchema,
|
|
258
|
+
slug: slugSchema,
|
|
259
|
+
archived: external_exports.boolean().optional().default(false),
|
|
260
|
+
imageUri: teamImageSchema,
|
|
261
|
+
theme: external_exports.string().default("default"),
|
|
262
|
+
onboarding: external_exports.enum(TeamOnboardingState).default(TeamOnboardingState.Complete),
|
|
263
|
+
billingInfo: billingInfoSchema,
|
|
264
|
+
namespaces: namespaceSchema.array().refine((ns) => !ns.includes("share"), {
|
|
265
|
+
message: '"share" is a reserved namespace and cannot be used'
|
|
266
|
+
}).default([]),
|
|
267
|
+
users: userRefSchema.array(),
|
|
268
|
+
icons: customProjectIconSchema.array().default([]),
|
|
269
|
+
pendingInvites: pendingInviteSchema.array().default([]),
|
|
270
|
+
/** Team auth configuration */
|
|
271
|
+
authentication: teamAuthenticationSchema.default(schemaModel({}, teamAuthenticationSchema)),
|
|
272
|
+
externalAccess: externalAccessSchema.default(schemaModel({}, externalAccessSchema)),
|
|
273
|
+
features: featureFlagSchema.default({}),
|
|
274
|
+
/**
|
|
275
|
+
* Teams can be manually verified when they need to upload documents
|
|
276
|
+
* containing prohibited text or links. This is manually set by request.
|
|
277
|
+
*/
|
|
278
|
+
verified: external_exports.boolean().default(false).optional()
|
|
279
|
+
}).meta({ id: "team" });
|
|
280
|
+
|
|
281
|
+
// ../../packages/entities/dist/team/helpers.js
|
|
282
|
+
var billingFeatures = {
|
|
283
|
+
team: {
|
|
284
|
+
archival: "teamArchival"
|
|
285
|
+
},
|
|
286
|
+
authentication: {
|
|
287
|
+
sso: "sso"
|
|
288
|
+
}
|
|
289
|
+
};
|
|
290
|
+
var teamBillingFeatures = {
|
|
291
|
+
[billingFeatures.team.archival]: {
|
|
292
|
+
[BillingPlan.Enterprise]: true,
|
|
293
|
+
[BillingPlan.Premium]: true,
|
|
294
|
+
[BillingPlan.ProMonthly]: true,
|
|
295
|
+
[BillingPlan.ProYearly]: true
|
|
296
|
+
},
|
|
297
|
+
[billingFeatures.authentication.sso]: {
|
|
298
|
+
[BillingPlan.Enterprise]: true
|
|
299
|
+
}
|
|
300
|
+
};
|
|
301
|
+
var permissions = {
|
|
302
|
+
team: {
|
|
303
|
+
delete: "deleteTeam",
|
|
304
|
+
manage: "manageTeam",
|
|
305
|
+
manageOwners: "manageOwners"
|
|
306
|
+
},
|
|
307
|
+
docs: {
|
|
308
|
+
create: "createDocs",
|
|
309
|
+
edit: "editDocs",
|
|
310
|
+
delete: "deleteDocs"
|
|
311
|
+
}
|
|
312
|
+
};
|
|
313
|
+
var teamPermissions = {
|
|
314
|
+
[permissions.team.manageOwners]: {
|
|
315
|
+
[TeamUserRole.Owner]: true,
|
|
316
|
+
[TeamUserRole.Admin]: false,
|
|
317
|
+
[TeamUserRole.Editor]: false,
|
|
318
|
+
[TeamUserRole.Viewer]: false
|
|
319
|
+
},
|
|
320
|
+
[permissions.team.manage]: {
|
|
321
|
+
[TeamUserRole.Owner]: true,
|
|
322
|
+
[TeamUserRole.Admin]: true,
|
|
323
|
+
[TeamUserRole.Editor]: false,
|
|
324
|
+
[TeamUserRole.Viewer]: false
|
|
325
|
+
},
|
|
326
|
+
[permissions.team.delete]: {
|
|
327
|
+
[TeamUserRole.Owner]: true,
|
|
328
|
+
[TeamUserRole.Admin]: false,
|
|
329
|
+
[TeamUserRole.Editor]: false,
|
|
330
|
+
[TeamUserRole.Viewer]: false
|
|
331
|
+
},
|
|
332
|
+
[permissions.docs.create]: {
|
|
333
|
+
[TeamUserRole.Owner]: true,
|
|
334
|
+
[TeamUserRole.Admin]: true,
|
|
335
|
+
[TeamUserRole.Editor]: true,
|
|
336
|
+
[TeamUserRole.Viewer]: false
|
|
337
|
+
},
|
|
338
|
+
[permissions.docs.edit]: {
|
|
339
|
+
[TeamUserRole.Owner]: true,
|
|
340
|
+
[TeamUserRole.Admin]: true,
|
|
341
|
+
[TeamUserRole.Editor]: true,
|
|
342
|
+
[TeamUserRole.Viewer]: false
|
|
343
|
+
},
|
|
344
|
+
[permissions.docs.delete]: {
|
|
345
|
+
[TeamUserRole.Owner]: true,
|
|
346
|
+
[TeamUserRole.Admin]: true,
|
|
347
|
+
[TeamUserRole.Editor]: true,
|
|
348
|
+
[TeamUserRole.Viewer]: false
|
|
349
|
+
}
|
|
350
|
+
};
|
|
351
|
+
|
|
352
|
+
export {
|
|
353
|
+
roleSchema,
|
|
354
|
+
billingPlanSchema,
|
|
355
|
+
teamBillingSummary,
|
|
356
|
+
teamNameSchema,
|
|
357
|
+
teamImageSchema,
|
|
358
|
+
teamSchema
|
|
359
|
+
};
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import { createRequire as $$cR } from "node:module"; const require = $$cR(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
baseRegistrySchema
|
|
4
|
+
} from "./chunk-VTYTPSXO.js";
|
|
5
|
+
import {
|
|
6
|
+
methodSchema
|
|
7
|
+
} from "./chunk-TLFMATXR.js";
|
|
8
|
+
import {
|
|
9
|
+
brandedUid,
|
|
10
|
+
compareVersionsDesc,
|
|
11
|
+
docVersionSchema,
|
|
12
|
+
mintUid,
|
|
13
|
+
nanoidSchema
|
|
14
|
+
} from "./chunk-ISGLWBXZ.js";
|
|
15
|
+
import {
|
|
16
|
+
external_exports
|
|
17
|
+
} from "./chunk-H2WRMLYY.js";
|
|
18
|
+
|
|
19
|
+
// ../../packages/entities/dist/rule/default-data.js
|
|
20
|
+
var scalarRuleset = `extends: spectral:oas
|
|
21
|
+
rules: {}`;
|
|
22
|
+
|
|
23
|
+
// ../../packages/entities/dist/rule/schema.js
|
|
24
|
+
var blockPublishOnSchema = external_exports.enum([
|
|
25
|
+
"error",
|
|
26
|
+
"warning",
|
|
27
|
+
"info",
|
|
28
|
+
"hint",
|
|
29
|
+
"none"
|
|
30
|
+
]);
|
|
31
|
+
var ruleSchema = baseRegistrySchema.extend({
|
|
32
|
+
blockPublishOn: blockPublishOnSchema.default("none")
|
|
33
|
+
}).meta({ id: "rule" });
|
|
34
|
+
|
|
35
|
+
// ../../packages/entities/dist/managed-doc/managed-doc.js
|
|
36
|
+
var RegistryAsset;
|
|
37
|
+
(function(RegistryAsset2) {
|
|
38
|
+
RegistryAsset2["Apis"] = "apis";
|
|
39
|
+
RegistryAsset2["Rules"] = "rules";
|
|
40
|
+
RegistryAsset2["Sdks"] = "sdks";
|
|
41
|
+
RegistryAsset2["Schemas"] = "schemas";
|
|
42
|
+
RegistryAsset2["Workspaces"] = "workspaces";
|
|
43
|
+
})(RegistryAsset || (RegistryAsset = {}));
|
|
44
|
+
var ApiEmbedStatus;
|
|
45
|
+
(function(ApiEmbedStatus2) {
|
|
46
|
+
ApiEmbedStatus2["Complete"] = "complete";
|
|
47
|
+
ApiEmbedStatus2["Failed"] = "failed";
|
|
48
|
+
})(ApiEmbedStatus || (ApiEmbedStatus = {}));
|
|
49
|
+
var managedDocTool = external_exports.object({
|
|
50
|
+
path: external_exports.string(),
|
|
51
|
+
method: methodSchema,
|
|
52
|
+
enabledTools: external_exports.enum(["execute-request", "get-mini-openapi-spec"]).array()
|
|
53
|
+
});
|
|
54
|
+
var managedDocVersionSchema = external_exports.object({
|
|
55
|
+
uid: nanoidSchema,
|
|
56
|
+
/** Millisecond base timestamp of versions */
|
|
57
|
+
createdAt: external_exports.number(),
|
|
58
|
+
version: docVersionSchema,
|
|
59
|
+
/** OpenAPI version normalized on upload */
|
|
60
|
+
upgraded: external_exports.boolean().default(false),
|
|
61
|
+
/** Vector embeddings processed, agent is enabled */
|
|
62
|
+
embedStatus: external_exports.enum(ApiEmbedStatus).nullable().default(null),
|
|
63
|
+
tags: external_exports.string().array().default([]),
|
|
64
|
+
tools: managedDocTool.array().optional(),
|
|
65
|
+
/** SHA-256 hex digest of the YAML content stored in the registry bucket */
|
|
66
|
+
yamlSha: external_exports.string().optional(),
|
|
67
|
+
/** SHA-256 hex digest of the JSON content stored in the registry bucket */
|
|
68
|
+
jsonSha: external_exports.string().optional(),
|
|
69
|
+
/** Random opaque token regenerated whenever the version's content changes */
|
|
70
|
+
versionSha: external_exports.string().optional()
|
|
71
|
+
}).meta({ id: "managed-doc-version" });
|
|
72
|
+
var managedDocSchema = baseRegistrySchema.extend({
|
|
73
|
+
/** Own uid, branded so it cannot be confused with another entity's uid */
|
|
74
|
+
uid: brandedUid().default(mintUid).meta({ default: "nanoid()" }),
|
|
75
|
+
/** The current version served to consumers by default */
|
|
76
|
+
version: docVersionSchema,
|
|
77
|
+
/**
|
|
78
|
+
* Certain types of collections will be write restricted for properties
|
|
79
|
+
* that would mutate the original specification (such as adding endpoints)
|
|
80
|
+
*/
|
|
81
|
+
isExternal: external_exports.boolean().default(true),
|
|
82
|
+
/** Repository information if we are managing a github spec */
|
|
83
|
+
repository: external_exports.object({
|
|
84
|
+
linkedBy: external_exports.string(),
|
|
85
|
+
id: external_exports.number(),
|
|
86
|
+
name: external_exports.string().min(2),
|
|
87
|
+
path: external_exports.string().default(""),
|
|
88
|
+
branch: external_exports.string().default("")
|
|
89
|
+
}).optional(),
|
|
90
|
+
/** URL to the source spec if we are managing a hosted spec */
|
|
91
|
+
sourceUrl: external_exports.url().optional(),
|
|
92
|
+
/** Theme assigned to API, supports custom theme slugs */
|
|
93
|
+
theme: external_exports.string().default(""),
|
|
94
|
+
/**
|
|
95
|
+
* UID to the collaborative YJS doc
|
|
96
|
+
*
|
|
97
|
+
* This content will be replaced on submitted updates and able to be edited in real-time
|
|
98
|
+
* When a user is ready to commit their changes they can bump the version with the changed content
|
|
99
|
+
*/
|
|
100
|
+
editableUid: external_exports.string(),
|
|
101
|
+
ruleset: external_exports.string().default(scalarRuleset),
|
|
102
|
+
/**
|
|
103
|
+
* An ordered version history record
|
|
104
|
+
*
|
|
105
|
+
* When a sync update is requested we find any versions with timestamps
|
|
106
|
+
* later than the local base and determine the mutation records
|
|
107
|
+
*
|
|
108
|
+
* Mutations records will then need to be diffed and conflicts handled locally
|
|
109
|
+
* before pushing to the database
|
|
110
|
+
*/
|
|
111
|
+
versions: managedDocVersionSchema.array(),
|
|
112
|
+
/** Enable Agent Scalar */
|
|
113
|
+
agentEnabled: external_exports.boolean().default(true),
|
|
114
|
+
/**
|
|
115
|
+
* Scalar verified status
|
|
116
|
+
*
|
|
117
|
+
* This will be moved in the future to a separate
|
|
118
|
+
* collection for registry DNS checks.
|
|
119
|
+
*/
|
|
120
|
+
verified: external_exports.boolean().default(false)
|
|
121
|
+
}).meta({ id: "managed-doc" });
|
|
122
|
+
|
|
123
|
+
// ../../packages/entities/dist/managed-doc/helpers.js
|
|
124
|
+
function getLegacyWysiwygVersion(versions) {
|
|
125
|
+
if (versions.includes("latest")) {
|
|
126
|
+
return "latest";
|
|
127
|
+
}
|
|
128
|
+
const latestVersion = [...versions].sort((a, b) => compareVersionsDesc(a, b))[0];
|
|
129
|
+
return latestVersion ?? "latest";
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
export {
|
|
133
|
+
ruleSchema,
|
|
134
|
+
getLegacyWysiwygVersion,
|
|
135
|
+
RegistryAsset,
|
|
136
|
+
managedDocVersionSchema,
|
|
137
|
+
managedDocSchema
|
|
138
|
+
};
|