fimo 0.6.0 → 0.7.0-experimental.1
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/assets/content-templates/hooks-template.eta +73 -27
- package/assets/content-templates/types-template.eta +4 -1
- package/assets/skills/fimo/references/content.md +46 -42
- package/assets/skills/fimo-cli/references/content.md +14 -14
- package/dist/cli/bundle.json +1 -1
- package/dist/cli/index.js +250 -29
- package/dist/runtime/content/utils/retrieve-data-sources.d.ts +1 -0
- package/dist/runtime/content/utils/retrieve-data-sources.d.ts.map +1 -1
- package/dist/runtime/content/utils/retrieve-data-sources.js +27 -4
- package/dist/runtime/primitives/lib/primitives.d.ts +2 -2
- package/dist/runtime/primitives/lib/primitives.d.ts.map +1 -1
- package/dist/runtime/primitives/lib/query.d.ts +5 -3
- package/dist/runtime/primitives/lib/query.d.ts.map +1 -1
- package/dist/runtime/primitives/public-surface.test.js +9 -5
- package/dist/scripts/generated-types.test.js +1 -1
- package/dist/scripts/sync-schemas.test.js +24 -4
- package/dist/scripts/validate-schemas.test.js +2 -2
- package/package.json +1 -1
- package/release.json +2 -2
- package/templates/react-router/package.json +1 -1
package/dist/cli/index.js
CHANGED
|
@@ -19657,7 +19657,8 @@ async function throwPermissionDenied(cfg, response) {
|
|
|
19657
19657
|
}
|
|
19658
19658
|
async function fimoFetch(url2, init) {
|
|
19659
19659
|
const headers = new Headers(init.headers);
|
|
19660
|
-
|
|
19660
|
+
const skipsVersionCheck = process.env.FIMO_SKIP_VERSION_CHECK === "1" || process.argv[2] === "git-credential";
|
|
19661
|
+
if (!headers.has(CLI_VERSION_HEADER) && !skipsVersionCheck) {
|
|
19661
19662
|
headers.set(CLI_VERSION_HEADER, getCliVersion());
|
|
19662
19663
|
}
|
|
19663
19664
|
const response = await fetch(url2, { ...init, headers });
|
|
@@ -20636,8 +20637,8 @@ var init_api = __esm({
|
|
|
20636
20637
|
const query = params ? `?${new URLSearchParams(params).toString()}` : "";
|
|
20637
20638
|
return this.request(this.tenantPath(projectId, `/entries/${typeName}${query}`));
|
|
20638
20639
|
}
|
|
20639
|
-
async getEntry(projectId, typeName, id,
|
|
20640
|
-
const query =
|
|
20640
|
+
async getEntry(projectId, typeName, id, locale) {
|
|
20641
|
+
const query = locale ? `?${new URLSearchParams({ locale }).toString()}` : "";
|
|
20641
20642
|
const body = await this.request(
|
|
20642
20643
|
this.tenantPath(projectId, `/entries/${typeName}/${id}${query}`)
|
|
20643
20644
|
);
|
|
@@ -20650,17 +20651,23 @@ var init_api = __esm({
|
|
|
20650
20651
|
});
|
|
20651
20652
|
return body.data;
|
|
20652
20653
|
}
|
|
20653
|
-
async updateEntry(projectId, typeName, id, data2) {
|
|
20654
|
-
const
|
|
20655
|
-
|
|
20656
|
-
|
|
20657
|
-
|
|
20654
|
+
async updateEntry(projectId, typeName, id, locale, data2) {
|
|
20655
|
+
const query = locale ? `?${new URLSearchParams({ locale }).toString()}` : "";
|
|
20656
|
+
const body = await this.request(
|
|
20657
|
+
this.tenantPath(projectId, `/entries/${typeName}/${id}${query}`),
|
|
20658
|
+
{
|
|
20659
|
+
method: "PUT",
|
|
20660
|
+
body: JSON.stringify(data2)
|
|
20661
|
+
}
|
|
20662
|
+
);
|
|
20658
20663
|
return body.data;
|
|
20659
20664
|
}
|
|
20660
|
-
async deleteEntry(projectId, typeName, id) {
|
|
20661
|
-
const
|
|
20662
|
-
|
|
20663
|
-
|
|
20665
|
+
async deleteEntry(projectId, typeName, id, locale) {
|
|
20666
|
+
const query = locale ? `?${new URLSearchParams({ locale }).toString()}` : "";
|
|
20667
|
+
const body = await this.request(
|
|
20668
|
+
this.tenantPath(projectId, `/entries/${typeName}/${id}${query}`),
|
|
20669
|
+
{ method: "DELETE" }
|
|
20670
|
+
);
|
|
20664
20671
|
return body.data;
|
|
20665
20672
|
}
|
|
20666
20673
|
// ── Tenant API: Assets ──
|
|
@@ -42019,6 +42026,7 @@ var init_common = __esm({
|
|
|
42019
42026
|
]);
|
|
42020
42027
|
RESERVED_CONTENT_FIELD_NAMES = [
|
|
42021
42028
|
"id",
|
|
42029
|
+
"entryId",
|
|
42022
42030
|
"documentId",
|
|
42023
42031
|
"slug",
|
|
42024
42032
|
"locale",
|
|
@@ -42164,9 +42172,24 @@ function referenceDocumentId(value) {
|
|
|
42164
42172
|
if (typeof value === "string") {
|
|
42165
42173
|
return value;
|
|
42166
42174
|
}
|
|
42167
|
-
if (value && typeof value === "object"
|
|
42168
|
-
const
|
|
42169
|
-
|
|
42175
|
+
if (value && typeof value === "object") {
|
|
42176
|
+
const reference = value;
|
|
42177
|
+
const hasId = Object.prototype.hasOwnProperty.call(reference, "id");
|
|
42178
|
+
const hasDocumentId = Object.prototype.hasOwnProperty.call(reference, "documentId");
|
|
42179
|
+
const id = reference.id;
|
|
42180
|
+
const documentId = reference.documentId;
|
|
42181
|
+
if (hasId && typeof id !== "string" || hasDocumentId && typeof documentId !== "string") {
|
|
42182
|
+
return null;
|
|
42183
|
+
}
|
|
42184
|
+
if (typeof id === "string" && typeof documentId === "string" && id !== documentId) {
|
|
42185
|
+
return null;
|
|
42186
|
+
}
|
|
42187
|
+
if (typeof id === "string") {
|
|
42188
|
+
return id;
|
|
42189
|
+
}
|
|
42190
|
+
if (typeof documentId === "string") {
|
|
42191
|
+
return documentId;
|
|
42192
|
+
}
|
|
42170
42193
|
}
|
|
42171
42194
|
return null;
|
|
42172
42195
|
}
|
|
@@ -42198,12 +42221,30 @@ var init_references = __esm({
|
|
|
42198
42221
|
init_zod();
|
|
42199
42222
|
__name(referenceDocumentId, "referenceDocumentId");
|
|
42200
42223
|
__name(toReferenceValue, "toReferenceValue");
|
|
42201
|
-
ReferenceValueSchema = external_exports.preprocess((value) =>
|
|
42224
|
+
ReferenceValueSchema = external_exports.preprocess((value) => {
|
|
42225
|
+
const reference = toReferenceValue(value);
|
|
42226
|
+
if (reference) {
|
|
42227
|
+
return reference;
|
|
42228
|
+
}
|
|
42229
|
+
if (value && typeof value === "object" && ("id" in value || "documentId" in value)) {
|
|
42230
|
+
return null;
|
|
42231
|
+
}
|
|
42232
|
+
return value;
|
|
42233
|
+
}, external_exports.object({
|
|
42202
42234
|
documentId: external_exports.uuid()
|
|
42203
42235
|
}));
|
|
42204
42236
|
__name(referenceContentType, "referenceContentType");
|
|
42205
42237
|
__name(toPolymorphicReferenceValue, "toPolymorphicReferenceValue");
|
|
42206
|
-
PolymorphicReferenceValueSchema = external_exports.preprocess((value) =>
|
|
42238
|
+
PolymorphicReferenceValueSchema = external_exports.preprocess((value) => {
|
|
42239
|
+
const reference = toPolymorphicReferenceValue(value);
|
|
42240
|
+
if (reference) {
|
|
42241
|
+
return reference;
|
|
42242
|
+
}
|
|
42243
|
+
if (value && typeof value === "object" && ("id" in value || "documentId" in value)) {
|
|
42244
|
+
return null;
|
|
42245
|
+
}
|
|
42246
|
+
return value;
|
|
42247
|
+
}, external_exports.object({
|
|
42207
42248
|
contentType: external_exports.string().min(1),
|
|
42208
42249
|
documentId: external_exports.uuid()
|
|
42209
42250
|
}));
|
|
@@ -42241,7 +42282,19 @@ var init_audit_log = __esm({
|
|
|
42241
42282
|
// Cutover (M06)
|
|
42242
42283
|
"cutover_step",
|
|
42243
42284
|
// Composition (M18)
|
|
42244
|
-
"agent_delegate"
|
|
42285
|
+
"agent_delegate",
|
|
42286
|
+
// Staff operations
|
|
42287
|
+
"ops_access_change",
|
|
42288
|
+
"ops_service_token_change",
|
|
42289
|
+
"ops_project_inspect",
|
|
42290
|
+
"ops_project_snapshot",
|
|
42291
|
+
"ops_customer_registry_change",
|
|
42292
|
+
"ops_investigation_change",
|
|
42293
|
+
"ops_known_issue_change",
|
|
42294
|
+
"ops_validation_record",
|
|
42295
|
+
"ops_notification_preview",
|
|
42296
|
+
"ops_notification_approve",
|
|
42297
|
+
"ops_notification_send"
|
|
42245
42298
|
];
|
|
42246
42299
|
AuditActionSchema = external_exports.enum(AUDIT_ACTIONS);
|
|
42247
42300
|
AUDIT_OUTCOMES = [
|
|
@@ -42259,6 +42312,174 @@ var init_audit_log = __esm({
|
|
|
42259
42312
|
}
|
|
42260
42313
|
});
|
|
42261
42314
|
|
|
42315
|
+
// ../../packages/api-contracts/dist/esm/types/ops.js
|
|
42316
|
+
var OPS_BACKEND_PROFILES, OpsBackendProfileSchema, OPS_PERMISSIONS, OpsPermissionSchema, OPS_PERMISSION_PRESETS, OPS_SERVICE_PERMISSION_PRESETS, OpsAccessGrantInputSchema, OpsServiceTokenInputSchema, OpsCustomerProjectInputSchema, OPS_INVESTIGATION_STATUSES, OpsInvestigationStatusSchema, OpsInvestigationCreateInputSchema, OpsInvestigationUpdateInputSchema, OPS_KNOWN_ISSUE_STATUSES, OpsKnownIssueStatusSchema, OpsKnownIssueCreateInputSchema, OpsKnownIssueUpdateInputSchema, OPS_VALIDATION_OUTCOMES, OpsValidationOutcomeSchema, OpsValidationRunInputSchema, OpsNotificationPreviewInputSchema;
|
|
42317
|
+
var init_ops = __esm({
|
|
42318
|
+
"../../packages/api-contracts/dist/esm/types/ops.js"() {
|
|
42319
|
+
"use strict";
|
|
42320
|
+
init_zod();
|
|
42321
|
+
OPS_BACKEND_PROFILES = [
|
|
42322
|
+
"local",
|
|
42323
|
+
"staging",
|
|
42324
|
+
"prod"
|
|
42325
|
+
];
|
|
42326
|
+
OpsBackendProfileSchema = external_exports.enum(OPS_BACKEND_PROFILES);
|
|
42327
|
+
OPS_PERMISSIONS = [
|
|
42328
|
+
"ops:project:read",
|
|
42329
|
+
"ops:project:snapshot",
|
|
42330
|
+
"ops:sentry:read",
|
|
42331
|
+
"ops:logs:read",
|
|
42332
|
+
"ops:support:read",
|
|
42333
|
+
"ops:customers:read",
|
|
42334
|
+
"ops:customers:write",
|
|
42335
|
+
"ops:investigations:read",
|
|
42336
|
+
"ops:investigations:write",
|
|
42337
|
+
"ops:known-issues:read",
|
|
42338
|
+
"ops:known-issues:write",
|
|
42339
|
+
"ops:validations:read",
|
|
42340
|
+
"ops:validations:write",
|
|
42341
|
+
"ops:audit:read",
|
|
42342
|
+
"ops:notification:preview",
|
|
42343
|
+
"ops:notification:approve",
|
|
42344
|
+
"ops:notification:send"
|
|
42345
|
+
];
|
|
42346
|
+
OpsPermissionSchema = external_exports.enum(OPS_PERMISSIONS);
|
|
42347
|
+
OPS_PERMISSION_PRESETS = {
|
|
42348
|
+
support: [
|
|
42349
|
+
"ops:project:read",
|
|
42350
|
+
"ops:support:read",
|
|
42351
|
+
"ops:customers:read",
|
|
42352
|
+
"ops:investigations:read",
|
|
42353
|
+
"ops:investigations:write",
|
|
42354
|
+
"ops:known-issues:read",
|
|
42355
|
+
"ops:validations:read",
|
|
42356
|
+
"ops:notification:preview"
|
|
42357
|
+
],
|
|
42358
|
+
engineer: [
|
|
42359
|
+
"ops:project:read",
|
|
42360
|
+
"ops:project:snapshot",
|
|
42361
|
+
"ops:sentry:read",
|
|
42362
|
+
"ops:logs:read",
|
|
42363
|
+
"ops:support:read",
|
|
42364
|
+
"ops:customers:read",
|
|
42365
|
+
"ops:customers:write",
|
|
42366
|
+
"ops:investigations:read",
|
|
42367
|
+
"ops:investigations:write",
|
|
42368
|
+
"ops:known-issues:read",
|
|
42369
|
+
"ops:known-issues:write",
|
|
42370
|
+
"ops:validations:read",
|
|
42371
|
+
"ops:validations:write",
|
|
42372
|
+
"ops:audit:read",
|
|
42373
|
+
"ops:notification:preview"
|
|
42374
|
+
],
|
|
42375
|
+
full: [
|
|
42376
|
+
...OPS_PERMISSIONS
|
|
42377
|
+
]
|
|
42378
|
+
};
|
|
42379
|
+
OPS_SERVICE_PERMISSION_PRESETS = {
|
|
42380
|
+
support: OPS_PERMISSION_PRESETS.support,
|
|
42381
|
+
engineer: OPS_PERMISSION_PRESETS.engineer,
|
|
42382
|
+
full: OPS_PERMISSION_PRESETS.full.filter((permission) => permission !== "ops:notification:approve")
|
|
42383
|
+
};
|
|
42384
|
+
OpsAccessGrantInputSchema = external_exports.object({
|
|
42385
|
+
permissions: external_exports.array(OpsPermissionSchema).min(1),
|
|
42386
|
+
backendProfiles: external_exports.array(OpsBackendProfileSchema).min(1),
|
|
42387
|
+
enabled: external_exports.boolean().default(true)
|
|
42388
|
+
});
|
|
42389
|
+
OpsServiceTokenInputSchema = external_exports.object({
|
|
42390
|
+
name: external_exports.string().trim().min(1).max(120),
|
|
42391
|
+
permissions: external_exports.array(OpsPermissionSchema).min(1),
|
|
42392
|
+
backendProfiles: external_exports.array(OpsBackendProfileSchema).min(1),
|
|
42393
|
+
expiresAt: external_exports.coerce.date()
|
|
42394
|
+
}).refine((input) => !input.permissions.includes("ops:notification:approve"), {
|
|
42395
|
+
path: [
|
|
42396
|
+
"permissions"
|
|
42397
|
+
],
|
|
42398
|
+
message: "Service credentials cannot approve customer notifications"
|
|
42399
|
+
}).refine((input) => input.expiresAt.getTime() > Date.now(), {
|
|
42400
|
+
path: [
|
|
42401
|
+
"expiresAt"
|
|
42402
|
+
],
|
|
42403
|
+
message: "Service credential expiry must be in the future"
|
|
42404
|
+
});
|
|
42405
|
+
OpsCustomerProjectInputSchema = external_exports.object({
|
|
42406
|
+
importanceReason: external_exports.string().trim().min(1).max(1e3),
|
|
42407
|
+
ownerUserId: external_exports.string().trim().min(1).nullable().optional(),
|
|
42408
|
+
framework: external_exports.string().trim().max(120).nullable().optional(),
|
|
42409
|
+
packageManager: external_exports.enum([
|
|
42410
|
+
"npm",
|
|
42411
|
+
"pnpm",
|
|
42412
|
+
"yarn",
|
|
42413
|
+
"bun"
|
|
42414
|
+
]).nullable().optional(),
|
|
42415
|
+
notes: external_exports.string().trim().max(5e3).nullable().optional()
|
|
42416
|
+
});
|
|
42417
|
+
OPS_INVESTIGATION_STATUSES = [
|
|
42418
|
+
"open",
|
|
42419
|
+
"investigating",
|
|
42420
|
+
"awaiting_approval",
|
|
42421
|
+
"resolved",
|
|
42422
|
+
"monitoring",
|
|
42423
|
+
"closed"
|
|
42424
|
+
];
|
|
42425
|
+
OpsInvestigationStatusSchema = external_exports.enum(OPS_INVESTIGATION_STATUSES);
|
|
42426
|
+
OpsInvestigationCreateInputSchema = external_exports.object({
|
|
42427
|
+
projectId: external_exports.uuid(),
|
|
42428
|
+
title: external_exports.string().trim().min(1).max(240),
|
|
42429
|
+
userReport: external_exports.string().trim().max(1e4).nullable().optional()
|
|
42430
|
+
});
|
|
42431
|
+
OpsInvestigationUpdateInputSchema = external_exports.object({
|
|
42432
|
+
status: OpsInvestigationStatusSchema.optional(),
|
|
42433
|
+
hypothesis: external_exports.string().trim().max(1e4).nullable().optional(),
|
|
42434
|
+
outcome: external_exports.string().trim().max(1e4).nullable().optional(),
|
|
42435
|
+
evidence: external_exports.array(external_exports.record(external_exports.string(), external_exports.unknown())).max(100).optional()
|
|
42436
|
+
}).refine((input) => Object.keys(input).length > 0, "At least one field is required");
|
|
42437
|
+
OPS_KNOWN_ISSUE_STATUSES = [
|
|
42438
|
+
"open",
|
|
42439
|
+
"monitoring",
|
|
42440
|
+
"resolved"
|
|
42441
|
+
];
|
|
42442
|
+
OpsKnownIssueStatusSchema = external_exports.enum(OPS_KNOWN_ISSUE_STATUSES);
|
|
42443
|
+
OpsKnownIssueCreateInputSchema = external_exports.object({
|
|
42444
|
+
fingerprint: external_exports.string().trim().min(1).max(240),
|
|
42445
|
+
title: external_exports.string().trim().min(1).max(240),
|
|
42446
|
+
description: external_exports.string().trim().min(1).max(1e4),
|
|
42447
|
+
affectedVersions: external_exports.array(external_exports.string().trim().min(1).max(120)).max(100).default([]),
|
|
42448
|
+
detectionQueries: external_exports.array(external_exports.string().trim().min(1).max(2e3)).max(50).default([]),
|
|
42449
|
+
fixedVersion: external_exports.string().trim().min(1).max(64).nullable().optional(),
|
|
42450
|
+
workaround: external_exports.string().trim().min(1).max(1e4).nullable().optional(),
|
|
42451
|
+
status: OpsKnownIssueStatusSchema.default("open")
|
|
42452
|
+
});
|
|
42453
|
+
OpsKnownIssueUpdateInputSchema = OpsKnownIssueCreateInputSchema.omit({
|
|
42454
|
+
fingerprint: true
|
|
42455
|
+
}).extend({
|
|
42456
|
+
affectedVersions: external_exports.array(external_exports.string().trim().min(1).max(120)).max(100),
|
|
42457
|
+
detectionQueries: external_exports.array(external_exports.string().trim().min(1).max(2e3)).max(50),
|
|
42458
|
+
status: OpsKnownIssueStatusSchema
|
|
42459
|
+
}).partial().refine((input) => Object.keys(input).length > 0, "At least one field is required");
|
|
42460
|
+
OPS_VALIDATION_OUTCOMES = [
|
|
42461
|
+
"passed",
|
|
42462
|
+
"failed",
|
|
42463
|
+
"inconclusive"
|
|
42464
|
+
];
|
|
42465
|
+
OpsValidationOutcomeSchema = external_exports.enum(OPS_VALIDATION_OUTCOMES);
|
|
42466
|
+
OpsValidationRunInputSchema = external_exports.object({
|
|
42467
|
+
changeReference: external_exports.string().trim().min(1).max(500),
|
|
42468
|
+
outcome: OpsValidationOutcomeSchema,
|
|
42469
|
+
summary: external_exports.string().trim().min(1).max(1e4),
|
|
42470
|
+
evidence: external_exports.array(external_exports.record(external_exports.string(), external_exports.unknown())).max(100).default([])
|
|
42471
|
+
});
|
|
42472
|
+
OpsNotificationPreviewInputSchema = external_exports.object({
|
|
42473
|
+
recipientEmail: external_exports.email().optional(),
|
|
42474
|
+
subject: external_exports.string().trim().min(1).max(200).default("An update from Fimo"),
|
|
42475
|
+
message: external_exports.string().trim().min(1).max(5e3),
|
|
42476
|
+
locale: external_exports.string().trim().min(2).max(20),
|
|
42477
|
+
reason: external_exports.string().trim().min(1).max(1e3),
|
|
42478
|
+
acknowledgePolicy: external_exports.literal(true)
|
|
42479
|
+
});
|
|
42480
|
+
}
|
|
42481
|
+
});
|
|
42482
|
+
|
|
42262
42483
|
// ../../packages/api-contracts/dist/esm/dtos/project.dto.js
|
|
42263
42484
|
var ProjectDTOSchema, ProjectDTO, ProjectWithPlanDTOSchema, ProjectWithPlanDTO, ProjectSummaryDTOSchema, ProjectSummaryDTO, ProjectUserDTOSchema, ProjectUserDTO, ProjectFileDTOSchema, ProjectFileDTO, ProjectChatMessageRole, ProjectMessageBaseSchema, MessageUserMetadataSchema, QuestionAnswerMetadataSchema, ProjectMessagePublicDTOSchema, ProjectMessagePublicDTO, ProjectMessageDTOSchema, ProjectVersionDTOSchema, ProjectVersionDTO, ProjectDocumentContentDTOSchema, ProjectDocumentContentDTO, ProjectListResponseSchema, ProjectVersionListResponseSchema, ProjectVersionResponseSchema, VersionMutationResponseSchema, ProjectPublicationStateDTOSchema, ProjectPublicationStateDTO, PublicationMutationDTOSchema, PublicationMutationDTO, ProjectPublicationStateResponseSchema, PublicationMutationResponseSchema, ProjectResponseSchema, ProjectWithPlanResponseSchema;
|
|
42264
42485
|
var init_project_dto = __esm({
|
|
@@ -44439,6 +44660,7 @@ var init_content_dto = __esm({
|
|
|
44439
44660
|
SchemaDTO = createDTO(SchemaDTOSchema);
|
|
44440
44661
|
EntryDTOSchema = external_exports.object({
|
|
44441
44662
|
id: external_exports.string(),
|
|
44663
|
+
entryId: external_exports.string(),
|
|
44442
44664
|
documentId: external_exports.string(),
|
|
44443
44665
|
slug: external_exports.string(),
|
|
44444
44666
|
locale: external_exports.string().optional(),
|
|
@@ -45514,6 +45736,7 @@ var init_sandbox_command_dto = __esm({
|
|
|
45514
45736
|
"../../packages/api-contracts/dist/esm/dtos/admin/sandbox-command.dto.js"() {
|
|
45515
45737
|
"use strict";
|
|
45516
45738
|
init_zod();
|
|
45739
|
+
init_env2();
|
|
45517
45740
|
init_create_dto();
|
|
45518
45741
|
init_response();
|
|
45519
45742
|
SandboxProcessStatusSchema = external_exports.enum([
|
|
@@ -45533,6 +45756,7 @@ var init_sandbox_command_dto = __esm({
|
|
|
45533
45756
|
ExecuteSandboxCommandRequestDTOSchema = external_exports.object({
|
|
45534
45757
|
command: external_exports.string().min(1).max(1e4),
|
|
45535
45758
|
cwd: external_exports.string().optional(),
|
|
45759
|
+
projectEnv: EnvSchema.optional(),
|
|
45536
45760
|
env: external_exports.record(external_exports.string(), external_exports.string()).optional(),
|
|
45537
45761
|
name: external_exports.string().optional(),
|
|
45538
45762
|
waitForCompletion: external_exports.boolean().optional().default(false)
|
|
@@ -45579,6 +45803,7 @@ var init_esm = __esm({
|
|
|
45579
45803
|
init_realtime();
|
|
45580
45804
|
init_references();
|
|
45581
45805
|
init_audit_log();
|
|
45806
|
+
init_ops();
|
|
45582
45807
|
init_project_dto();
|
|
45583
45808
|
init_project_env_dto();
|
|
45584
45809
|
init_project_import_export_dto();
|
|
@@ -106355,8 +106580,7 @@ __name(entriesListCommand, "entriesListCommand");
|
|
|
106355
106580
|
async function entriesGetCommand(typeName, id, options, cmd) {
|
|
106356
106581
|
const { ctx, api } = await bootstrapProjectCommand(options, cmd);
|
|
106357
106582
|
await requireOperation("cms.get", { projectId: ctx.projectId, env: ctx.env });
|
|
106358
|
-
const
|
|
106359
|
-
const result = await api.getEntry(ctx.projectId, typeName, id, params);
|
|
106583
|
+
const result = await api.getEntry(ctx.projectId, typeName, id, options.locale);
|
|
106360
106584
|
ui.result({ command: "entries get", data: result, render: /* @__PURE__ */ __name(() => renderPrettyJson5(result), "render") });
|
|
106361
106585
|
}
|
|
106362
106586
|
__name(entriesGetCommand, "entriesGetCommand");
|
|
@@ -106374,18 +106598,15 @@ __name(entriesCreateCommand, "entriesCreateCommand");
|
|
|
106374
106598
|
async function entriesUpdateCommand(typeName, id, options, cmd) {
|
|
106375
106599
|
const { ctx, api } = await bootstrapProjectCommand(options, cmd, { refuseReadOnly: true });
|
|
106376
106600
|
await requireOperation("cms.update", { projectId: ctx.projectId, env: ctx.env });
|
|
106377
|
-
const data2 =
|
|
106378
|
-
|
|
106379
|
-
documentId: options.documentId
|
|
106380
|
-
});
|
|
106381
|
-
const result = await api.updateEntry(ctx.projectId, typeName, id, data2);
|
|
106601
|
+
const data2 = parseJsonObject(options.body);
|
|
106602
|
+
const result = await api.updateEntry(ctx.projectId, typeName, id, options.locale, data2);
|
|
106382
106603
|
ui.result({ command: "entries update", data: result, render: /* @__PURE__ */ __name(() => renderPrettyJson5(result), "render") });
|
|
106383
106604
|
}
|
|
106384
106605
|
__name(entriesUpdateCommand, "entriesUpdateCommand");
|
|
106385
106606
|
async function entriesDeleteCommand(typeName, id, options, cmd) {
|
|
106386
106607
|
const { ctx, api } = await bootstrapProjectCommand(options, cmd, { refuseReadOnly: true });
|
|
106387
106608
|
await requireOperation("cms.delete", { projectId: ctx.projectId, env: ctx.env });
|
|
106388
|
-
const result = await api.deleteEntry(ctx.projectId, typeName, id);
|
|
106609
|
+
const result = await api.deleteEntry(ctx.projectId, typeName, id, options.locale);
|
|
106389
106610
|
ui.result({ command: "entries delete", data: result, render: /* @__PURE__ */ __name(() => renderPrettyJson5(result), "render") });
|
|
106390
106611
|
}
|
|
106391
106612
|
__name(entriesDeleteCommand, "entriesDeleteCommand");
|
|
@@ -110338,10 +110559,10 @@ schemas2.command("push").description("Push schema JSON files to the API (create
|
|
|
110338
110559
|
schemas2.command("delete").description("Delete a schema by type name").argument("<typeName>", "Content type name").option("-C, --cwd <dir>", "Project directory").action(schemaDeleteCommand);
|
|
110339
110560
|
var entries = program.command("entries").description("Manage content entries");
|
|
110340
110561
|
entries.command("list").description("List entries of a content type").argument("<typeName>", "Content type name").option("-C, --cwd <dir>", "Project directory").option("--limit <n>", "Max entries to return").option("--offset <n>", "Offset for pagination").option("--search <query>", "Search query").option("--where <json>", `JSON filter object, e.g. '{"featured":true}'`).option("--sort <field>", "Sort field, prefix with - for descending").option("--fields <fields>", "Comma-separated fields to return, e.g. slug,title,excerpt").option("--populate <fields>", "Comma-separated reference fields to populate, e.g. author,contributors").option("--locale <locale>", "Locale to list (default en)").option("--sort-by <field>", "Sort field").option("--sort-direction <dir>", "Sort direction (asc|desc)").action(entriesListCommand);
|
|
110341
|
-
entries.command("get").description("Get a single entry").argument("<typeName>", "Content type name").argument("<id>", "Entry ID").option("-C, --cwd <dir>", "Project directory").option("--locale <locale>", "
|
|
110562
|
+
entries.command("get").description("Get a single entry").argument("<typeName>", "Content type name").argument("<id>", "Entry ID").option("-C, --cwd <dir>", "Project directory").option("--locale <locale>", "Entry locale (defaults to the project locale)").action(entriesGetCommand);
|
|
110342
110563
|
entries.command("create").description("Create a new entry").argument("<typeName>", "Content type name").option("-C, --cwd <dir>", "Project directory").requiredOption("--body <json>", "Entry JSON body (slug + data)").option("--locale <locale>", "Entry locale (default en)").option("--document-id <id>", "Document ID shared by localized variants").action(entriesCreateCommand);
|
|
110343
|
-
entries.command("update").description("Update an existing entry").argument("<typeName>", "Content type name").argument("<id>", "Entry ID").option("-C, --cwd <dir>", "Project directory").requiredOption("--body <json>", "Updated entry JSON body").option("--locale <locale>", "Entry locale
|
|
110344
|
-
entries.command("delete").description("Delete an entry").argument("<typeName>", "Content type name").argument("<id>", "Entry ID").option("-C, --cwd <dir>", "Project directory").action(entriesDeleteCommand);
|
|
110564
|
+
entries.command("update").description("Update an existing entry").argument("<typeName>", "Content type name").argument("<id>", "Entry ID").option("-C, --cwd <dir>", "Project directory").requiredOption("--body <json>", "Updated entry JSON body").option("--locale <locale>", "Entry locale (defaults to the project locale)").action(entriesUpdateCommand);
|
|
110565
|
+
entries.command("delete").description("Delete an entry").argument("<typeName>", "Content type name").argument("<id>", "Entry ID").option("-C, --cwd <dir>", "Project directory").option("--locale <locale>", "Entry locale (defaults to the project locale)").action(entriesDeleteCommand);
|
|
110345
110566
|
var assets2 = program.command("assets").description("Manage media assets");
|
|
110346
110567
|
assets2.command("list").description("List assets").option("-C, --cwd <dir>", "Project directory").option("--parent-id <id>", "Filter by parent folder").option(
|
|
110347
110568
|
"--search <query>",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retrieve-data-sources.d.ts","sourceRoot":"","sources":["../../../../src/runtime/content/utils/retrieve-data-sources.ts"],"names":[],"mappings":"AACA,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAExC,UAAU,UAAU;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"retrieve-data-sources.d.ts","sourceRoot":"","sources":["../../../../src/runtime/content/utils/retrieve-data-sources.ts"],"names":[],"mappings":"AACA,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAExC,UAAU,UAAU;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;AAgD9D;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,kBAAkB,CAwD/D"}
|
|
@@ -1,3 +1,19 @@
|
|
|
1
|
+
function parseRecordIdentity(token) {
|
|
2
|
+
if (!token.startsWith('id:')) {
|
|
3
|
+
return token.includes(':') ? null : { id: token };
|
|
4
|
+
}
|
|
5
|
+
const [format, id, encodedLocale, ...rest] = token.split(':');
|
|
6
|
+
if (format !== 'id' || !id || !encodedLocale || rest.length > 0) {
|
|
7
|
+
return null;
|
|
8
|
+
}
|
|
9
|
+
try {
|
|
10
|
+
const locale = decodeURIComponent(encodedLocale);
|
|
11
|
+
return locale ? { id, locale } : null;
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
1
17
|
/**
|
|
2
18
|
* Checks if an element is genuinely visible to the user within the viewport.
|
|
3
19
|
* @param el The element to check.
|
|
@@ -38,7 +54,13 @@ export function retrieveVisibleDataSources() {
|
|
|
38
54
|
const parts = source.split('.');
|
|
39
55
|
// Expects the format "SchemaName.id.fieldName"
|
|
40
56
|
if (parts.length === 3) {
|
|
41
|
-
const [schemaName,
|
|
57
|
+
const [schemaName, identityToken, fieldName] = parts;
|
|
58
|
+
const identity = parseRecordIdentity(identityToken);
|
|
59
|
+
if (!identity) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
const { id, locale } = identity;
|
|
63
|
+
const recordKey = JSON.stringify([id, locale ?? null]);
|
|
42
64
|
// Skip __translations
|
|
43
65
|
if (schemaName === '__translations') {
|
|
44
66
|
return;
|
|
@@ -48,16 +70,17 @@ export function retrieveVisibleDataSources() {
|
|
|
48
70
|
tempGroupedData[schemaName] = {};
|
|
49
71
|
}
|
|
50
72
|
// Ensure the record (by ID) exists for this schema
|
|
51
|
-
if (!tempGroupedData[schemaName][
|
|
52
|
-
tempGroupedData[schemaName][
|
|
73
|
+
if (!tempGroupedData[schemaName][recordKey]) {
|
|
74
|
+
tempGroupedData[schemaName][recordKey] = {
|
|
53
75
|
id: id,
|
|
76
|
+
...(locale ? { locale } : {}),
|
|
54
77
|
data: {},
|
|
55
78
|
visible: isElementVisible(el),
|
|
56
79
|
};
|
|
57
80
|
}
|
|
58
81
|
// Add the field and its text content to the record
|
|
59
82
|
if (el.textContent) {
|
|
60
|
-
tempGroupedData[schemaName][
|
|
83
|
+
tempGroupedData[schemaName][recordKey].data[fieldName] = el.textContent.trim();
|
|
61
84
|
}
|
|
62
85
|
}
|
|
63
86
|
});
|
|
@@ -9,12 +9,12 @@ export interface FimoSource {
|
|
|
9
9
|
source: string;
|
|
10
10
|
}
|
|
11
11
|
export interface FimoReference {
|
|
12
|
-
|
|
12
|
+
id: string;
|
|
13
13
|
}
|
|
14
14
|
/** Polymorphic reference value: the schema names a target set, so every value carries its own type. */
|
|
15
15
|
export interface FimoPolymorphicReference {
|
|
16
16
|
contentType: string;
|
|
17
|
-
|
|
17
|
+
id: string;
|
|
18
18
|
}
|
|
19
19
|
export declare const FIMO_SOURCE: unique symbol;
|
|
20
20
|
export declare const FIMO_PARTS: unique symbol;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../../src/runtime/primitives/lib/primitives.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;;;;GAKG;AAGH,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,
|
|
1
|
+
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../../src/runtime/primitives/lib/primitives.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,6 +43,7 @@ export type ManyReferenceOps = {
|
|
|
43
43
|
export type FilterFor<T> = [T] extends [FimoString | string] ? string | StringOps : [T] extends [FimoBoolean | boolean] ? boolean | BoolOps : [T] extends [FimoDate | Date] ? string | DateOps : [T] extends [number] ? number | NumberOps : [T] extends [FimoPolymorphicReference | null] ? never : [T] extends [FimoPolymorphicReference[]] ? never : [T] extends [FimoReference | null] ? string | null | ReferenceOps : [T] extends [FimoReference[]] ? string | ManyReferenceOps : [T] extends [FimoMedia | FimoMedia[]] ? NullOnlyOps : [T] extends [FimoRichText] ? string | StringOps : NullOnlyOps;
|
|
44
44
|
type BaseTopLevelWhere = {
|
|
45
45
|
id?: string | StringOps;
|
|
46
|
+
entryId?: string | StringOps;
|
|
46
47
|
documentId?: string | StringOps;
|
|
47
48
|
slug?: string | StringOps;
|
|
48
49
|
createdAt?: string | DateOps;
|
|
@@ -66,9 +67,10 @@ export type Fields<T> = Field<T> | readonly Field<T>[];
|
|
|
66
67
|
type SelectedField<TField> = TField extends `__fimo.${string}` ? '__fimo' : TField;
|
|
67
68
|
type SelectedFields<TFields> = TFields extends readonly (infer K)[] ? SelectedField<K> : SelectedField<TFields>;
|
|
68
69
|
type ListItem<TValue> = TValue extends readonly (infer K)[] ? K : TValue;
|
|
70
|
+
type EntryIdentityField<T> = Extract<'id' | 'entryId' | 'documentId' | 'locale', keyof T>;
|
|
69
71
|
export type Projected<T extends {
|
|
70
72
|
id: string;
|
|
71
|
-
}, TFields extends Fields<T> | undefined> = [TFields] extends [undefined] ? T : Pick<T,
|
|
73
|
+
}, TFields extends Fields<T> | undefined> = [TFields] extends [undefined] ? T : Pick<T, EntryIdentityField<T> | Extract<SelectedFields<TFields>, keyof T>>;
|
|
72
74
|
export declare const FIMO_REFERENCES: unique symbol;
|
|
73
75
|
export interface WithReferences<TReferences> {
|
|
74
76
|
readonly [FIMO_REFERENCES]?: TReferences;
|
|
@@ -79,7 +81,7 @@ export type Populate<TEntry> = ReferenceField<TEntry> | readonly ReferenceField<
|
|
|
79
81
|
type PopulatedKeys<TEntry, TPopulate> = Extract<ListItem<TPopulate>, keyof ReferenceMap<TEntry> & keyof TEntry>;
|
|
80
82
|
export type Populated<TEntry extends {
|
|
81
83
|
id: string;
|
|
82
|
-
}, TPopulate extends Populate<TEntry>> = Pick<TEntry,
|
|
84
|
+
}, TPopulate extends Populate<TEntry>> = Pick<TEntry, EntryIdentityField<TEntry>> & Omit<TEntry, PopulatedKeys<TEntry, TPopulate>> & {
|
|
83
85
|
[K in PopulatedKeys<TEntry, TPopulate>]: ReferenceMap<TEntry>[K];
|
|
84
86
|
};
|
|
85
87
|
export type PopulatedResult<TEntry extends {
|
|
@@ -89,7 +91,7 @@ export type PopulatedResult<TEntry extends {
|
|
|
89
91
|
] extends [undefined] ? TEntry : Populated<TEntry, NonNullable<TPopulate>>;
|
|
90
92
|
export type ProjectedWithPopulate<T extends {
|
|
91
93
|
id: string;
|
|
92
|
-
}, TFields extends string | readonly string[] | undefined, TPopulate extends string | readonly string[] | undefined> = [TFields] extends [undefined] ? T : Pick<T,
|
|
94
|
+
}, TFields extends string | readonly string[] | undefined, TPopulate extends string | readonly string[] | undefined> = [TFields] extends [undefined] ? T : Pick<T, EntryIdentityField<T> | Extract<SelectedFields<TFields> | ListItem<NonNullable<TPopulate>>, keyof T>>;
|
|
93
95
|
export type Query<T extends {
|
|
94
96
|
id: string;
|
|
95
97
|
}, TFields extends Fields<T> | undefined = Fields<T> | undefined, TPopulate extends string | readonly string[] | undefined = string | readonly string[] | undefined> = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../src/runtime/primitives/lib/query.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../src/runtime/primitives/lib/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,9 +12,11 @@ describe('fimo/ui public type surface', () => {
|
|
|
12
12
|
expectTypeOf().toEqualTypeOf();
|
|
13
13
|
const localizedWhere = { locale: 'en' };
|
|
14
14
|
expectTypeOf(localizedWhere).toEqualTypeOf();
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
const identityWhere = {
|
|
16
|
+
id: '650e8400-e29b-41d4-a716-446655440000',
|
|
17
|
+
entryId: '550e8400-e29b-41d4-a716-446655440000',
|
|
18
|
+
};
|
|
19
|
+
expectTypeOf(identityWhere).toEqualTypeOf();
|
|
18
20
|
});
|
|
19
21
|
it('supports the reference populate pattern emitted into generated schemas', () => {
|
|
20
22
|
const query = {
|
|
@@ -32,11 +34,13 @@ describe('fimo/ui public type surface', () => {
|
|
|
32
34
|
expectTypeOf().toEqualTypeOf();
|
|
33
35
|
expectTypeOf().toEqualTypeOf();
|
|
34
36
|
expectTypeOf().toEqualTypeOf();
|
|
37
|
+
expectTypeOf().toEqualTypeOf();
|
|
38
|
+
expectTypeOf().toEqualTypeOf();
|
|
35
39
|
// @ts-expect-error generated reference-aware queries only allow reference fields in populate.
|
|
36
40
|
const badQuery = { populate: 'name' };
|
|
37
41
|
expectTypeOf(badQuery).toEqualTypeOf();
|
|
38
|
-
// @ts-expect-error reference filters use target
|
|
39
|
-
const badWhere = { where: { sponsor: {
|
|
42
|
+
// @ts-expect-error reference filters use target id strings, not raw reference objects.
|
|
43
|
+
const badWhere = { where: { sponsor: { id: '750e8400-e29b-41d4-a716-446655440000' } } };
|
|
40
44
|
expectTypeOf(badWhere).toEqualTypeOf();
|
|
41
45
|
// @ts-expect-error contains is only valid for to-many reference fields.
|
|
42
46
|
const badToOneContains = { where: { sponsor: { $contains: '750e8400-e29b-41d4-a716-446655440000' } } };
|
|
@@ -83,7 +83,7 @@ export function renderFeatured(page: PageResult<undefined, readonly ["featured",
|
|
|
83
83
|
for (const item of page.featured) {
|
|
84
84
|
switch (item.$type) {
|
|
85
85
|
case "Post":
|
|
86
|
-
out.push(\`post \${String(item.title)} by \${item.author?.
|
|
86
|
+
out.push(\`post \${String(item.title)} by \${item.author?.id ?? "nobody"}\`);
|
|
87
87
|
break;
|
|
88
88
|
case "Video":
|
|
89
89
|
out.push(\`video \${String(item.title)} with \${item.clips.length} clip(s)\`);
|