@x12i/memorix-descriptors 1.4.2 → 1.5.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 +17 -10
- package/dist/admin/create-admin.d.ts +20 -0
- package/dist/admin/create-admin.d.ts.map +1 -1
- package/dist/admin/create-admin.js +38 -2
- package/dist/admin/create-admin.js.map +1 -1
- package/dist/catalog/ids.d.ts +7 -0
- package/dist/catalog/ids.d.ts.map +1 -1
- package/dist/catalog/ids.js +13 -0
- package/dist/catalog/ids.js.map +1 -1
- package/dist/catalox/client.d.ts.map +1 -1
- package/dist/catalox/client.js +26 -1
- package/dist/catalox/client.js.map +1 -1
- package/dist/cli/index.js +146 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/env/load-env-file.d.ts +7 -0
- package/dist/env/load-env-file.d.ts.map +1 -0
- package/dist/env/load-env-file.js +74 -0
- package/dist/env/load-env-file.js.map +1 -0
- package/dist/index.d.ts +9 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/migration/apply.d.ts +21 -0
- package/dist/migration/apply.d.ts.map +1 -0
- package/dist/migration/apply.js +102 -0
- package/dist/migration/apply.js.map +1 -0
- package/dist/migration/backup.d.ts +8 -0
- package/dist/migration/backup.d.ts.map +1 -0
- package/dist/migration/backup.js +27 -0
- package/dist/migration/backup.js.map +1 -0
- package/dist/migration/classify.d.ts +6 -0
- package/dist/migration/classify.d.ts.map +1 -0
- package/dist/migration/classify.js +67 -0
- package/dist/migration/classify.js.map +1 -0
- package/dist/migration/ensure-canonical-catalogs.d.ts +4 -0
- package/dist/migration/ensure-canonical-catalogs.d.ts.map +1 -0
- package/dist/migration/ensure-canonical-catalogs.js +101 -0
- package/dist/migration/ensure-canonical-catalogs.js.map +1 -0
- package/dist/migration/generate-descriptors.d.ts +22 -0
- package/dist/migration/generate-descriptors.d.ts.map +1 -0
- package/dist/migration/generate-descriptors.js +234 -0
- package/dist/migration/generate-descriptors.js.map +1 -0
- package/dist/migration/index.d.ts +13 -0
- package/dist/migration/index.d.ts.map +1 -0
- package/dist/migration/index.js +12 -0
- package/dist/migration/index.js.map +1 -0
- package/dist/migration/inspect.d.ts +9 -0
- package/dist/migration/inspect.d.ts.map +1 -0
- package/dist/migration/inspect.js +57 -0
- package/dist/migration/inspect.js.map +1 -0
- package/dist/migration/load-snapshot.d.ts +15 -0
- package/dist/migration/load-snapshot.d.ts.map +1 -0
- package/dist/migration/load-snapshot.js +83 -0
- package/dist/migration/load-snapshot.js.map +1 -0
- package/dist/migration/mongo-inventory.d.ts +20 -0
- package/dist/migration/mongo-inventory.d.ts.map +1 -0
- package/dist/migration/mongo-inventory.js +95 -0
- package/dist/migration/mongo-inventory.js.map +1 -0
- package/dist/migration/object-type-specs.d.ts +17 -0
- package/dist/migration/object-type-specs.d.ts.map +1 -0
- package/dist/migration/object-type-specs.js +58 -0
- package/dist/migration/object-type-specs.js.map +1 -0
- package/dist/migration/plan.d.ts +4 -0
- package/dist/migration/plan.d.ts.map +1 -0
- package/dist/migration/plan.js +136 -0
- package/dist/migration/plan.js.map +1 -0
- package/dist/migration/reset.d.ts +17 -0
- package/dist/migration/reset.d.ts.map +1 -0
- package/dist/migration/reset.js +73 -0
- package/dist/migration/reset.js.map +1 -0
- package/dist/migration/types.d.ts +76 -0
- package/dist/migration/types.d.ts.map +1 -0
- package/dist/migration/types.js +17 -0
- package/dist/migration/types.js.map +1 -0
- package/dist/migration/validate-plan.d.ts +15 -0
- package/dist/migration/validate-plan.d.ts.map +1 -0
- package/dist/migration/validate-plan.js +112 -0
- package/dist/migration/validate-plan.js.map +1 -0
- package/dist/migration/verify.d.ts +15 -0
- package/dist/migration/verify.d.ts.map +1 -0
- package/dist/migration/verify.js +27 -0
- package/dist/migration/verify.js.map +1 -0
- package/dist/mutations/common.d.ts +7 -4
- package/dist/mutations/common.d.ts.map +1 -1
- package/dist/mutations/common.js +54 -3
- package/dist/mutations/common.js.map +1 -1
- package/dist/mutations/entity.d.ts.map +1 -1
- package/dist/mutations/entity.js +5 -1
- package/dist/mutations/entity.js.map +1 -1
- package/dist/mutations/execute.d.ts.map +1 -1
- package/dist/mutations/execute.js +9 -1
- package/dist/mutations/execute.js.map +1 -1
- package/dist/mutations/item.d.ts.map +1 -1
- package/dist/mutations/item.js +5 -1
- package/dist/mutations/item.js.map +1 -1
- package/dist/mutations/list.js +8 -1
- package/dist/mutations/list.js.map +1 -1
- package/dist/source/action-drafts.d.ts +17 -0
- package/dist/source/action-drafts.d.ts.map +1 -0
- package/dist/source/action-drafts.js +191 -0
- package/dist/source/action-drafts.js.map +1 -0
- package/dist/source/aliases.d.ts +23 -0
- package/dist/source/aliases.d.ts.map +1 -0
- package/dist/source/aliases.js +60 -0
- package/dist/source/aliases.js.map +1 -0
- package/dist/source/catalog-health.d.ts +17 -0
- package/dist/source/catalog-health.d.ts.map +1 -0
- package/dist/source/catalog-health.js +87 -0
- package/dist/source/catalog-health.js.map +1 -0
- package/dist/source/envelope.d.ts +29 -0
- package/dist/source/envelope.d.ts.map +1 -0
- package/dist/source/envelope.js +125 -0
- package/dist/source/envelope.js.map +1 -0
- package/dist/source/graph.d.ts +12 -0
- package/dist/source/graph.d.ts.map +1 -0
- package/dist/source/graph.js +148 -0
- package/dist/source/graph.js.map +1 -0
- package/dist/source/guards.d.ts +7 -0
- package/dist/source/guards.d.ts.map +1 -0
- package/dist/source/guards.js +74 -0
- package/dist/source/guards.js.map +1 -0
- package/dist/source/index.d.ts +14 -0
- package/dist/source/index.d.ts.map +1 -0
- package/dist/source/index.js +14 -0
- package/dist/source/index.js.map +1 -0
- package/dist/source/inspectable.d.ts +11 -0
- package/dist/source/inspectable.d.ts.map +1 -0
- package/dist/source/inspectable.js +167 -0
- package/dist/source/inspectable.js.map +1 -0
- package/dist/source/reconcile-source.d.ts +10 -0
- package/dist/source/reconcile-source.d.ts.map +1 -0
- package/dist/source/reconcile-source.js +40 -0
- package/dist/source/reconcile-source.js.map +1 -0
- package/dist/source/registry.d.ts +9 -0
- package/dist/source/registry.d.ts.map +1 -0
- package/dist/source/registry.js +121 -0
- package/dist/source/registry.js.map +1 -0
- package/dist/source/snapshot.d.ts +15 -0
- package/dist/source/snapshot.d.ts.map +1 -0
- package/dist/source/snapshot.js +160 -0
- package/dist/source/snapshot.js.map +1 -0
- package/dist/source/types.d.ts +222 -0
- package/dist/source/types.d.ts.map +1 -0
- package/dist/source/types.js +2 -0
- package/dist/source/types.js.map +1 -0
- package/dist/source/validation.d.ts +12 -0
- package/dist/source/validation.d.ts.map +1 -0
- package/dist/source/validation.js +229 -0
- package/dist/source/validation.js.map +1 -0
- package/dist/tests/canonical-metadata.test.d.ts +2 -0
- package/dist/tests/canonical-metadata.test.d.ts.map +1 -0
- package/dist/tests/canonical-metadata.test.js +198 -0
- package/dist/tests/canonical-metadata.test.js.map +1 -0
- package/dist/tests/source-aware.test.d.ts +2 -0
- package/dist/tests/source-aware.test.d.ts.map +1 -0
- package/dist/tests/source-aware.test.js +227 -0
- package/dist/tests/source-aware.test.js.map +1 -0
- package/dist/types/canonical-v2.d.ts +164 -0
- package/dist/types/canonical-v2.d.ts.map +1 -0
- package/dist/types/canonical-v2.js +6 -0
- package/dist/types/canonical-v2.js.map +1 -0
- package/dist/types/index.d.ts +25 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/validation/canonical-contamination.d.ts +6 -0
- package/dist/validation/canonical-contamination.d.ts.map +1 -0
- package/dist/validation/canonical-contamination.js +71 -0
- package/dist/validation/canonical-contamination.js.map +1 -0
- package/dist/validation/canonical-metadata-validation.d.ts +13 -0
- package/dist/validation/canonical-metadata-validation.d.ts.map +1 -0
- package/dist/validation/canonical-metadata-validation.js +248 -0
- package/dist/validation/canonical-metadata-validation.js.map +1 -0
- package/dist/validation/canonical-v2-validation.d.ts +8 -0
- package/dist/validation/canonical-v2-validation.d.ts.map +1 -0
- package/dist/validation/canonical-v2-validation.js +273 -0
- package/dist/validation/canonical-v2-validation.js.map +1 -0
- package/docs/MEMORIX-CATALOX-CATALOG-MAP.md +589 -0
- package/docs/MEMORIX-CATALOX-CONTRACTS.md +17 -10
- package/docs/MEMORIX-DATABASE-CONVENTIONS.md +10 -7
- package/docs/MEMORIX-OBJECT-TYPES-AND-TARGETS.md +207 -0
- package/package.json +9 -1
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { buildAddContentTypeDraftFromCollection, buildDescriptorDraftFromOrphanCollection, buildFixCollectionBindingDraft, buildIgnoreCollectionDraft, } from "../reconcile/drafts.js";
|
|
3
|
+
import { buildDerivedGraphSourceRef, nowIso } from "./envelope.js";
|
|
4
|
+
function draftActionFromSuggested(suggestedAction) {
|
|
5
|
+
switch (suggestedAction) {
|
|
6
|
+
case "registerEntityDescriptor":
|
|
7
|
+
return "register-object-type";
|
|
8
|
+
case "addContentType":
|
|
9
|
+
return "add-content-type";
|
|
10
|
+
case "updateContentType":
|
|
11
|
+
return "fix-collection-binding";
|
|
12
|
+
case "ignoreCollection":
|
|
13
|
+
return "ignore-collection";
|
|
14
|
+
case "manualReview":
|
|
15
|
+
return "manual-review";
|
|
16
|
+
default:
|
|
17
|
+
return "manual-review";
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
function proposedMutationFromDraft(draft) {
|
|
21
|
+
switch (draft.suggestedAction) {
|
|
22
|
+
case "registerEntityDescriptor":
|
|
23
|
+
return { method: "registerEntityDescriptor", input: draft.draft };
|
|
24
|
+
case "addContentType":
|
|
25
|
+
return { method: "addContentType", input: draft.draft };
|
|
26
|
+
case "updateContentType":
|
|
27
|
+
return { method: "updateContentType", input: draft.draft };
|
|
28
|
+
case "ignoreCollection":
|
|
29
|
+
return { method: "ignoreCollection", input: draft.draft };
|
|
30
|
+
default:
|
|
31
|
+
return { method: "registerEntityDescriptor", input: draft.draft };
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
function requiredUserInputsFromDraft(draft) {
|
|
35
|
+
if (draft.suggestedAction !== "manualReview") {
|
|
36
|
+
return undefined;
|
|
37
|
+
}
|
|
38
|
+
const inputs = [];
|
|
39
|
+
if (!draft.draft.entityName && !draft.draft.objectType) {
|
|
40
|
+
inputs.push({
|
|
41
|
+
key: "objectType",
|
|
42
|
+
label: "Object type",
|
|
43
|
+
reason: "Collection name could not be safely parsed.",
|
|
44
|
+
required: true,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
if (draft.warnings.some((w) => w.includes("does not match"))) {
|
|
48
|
+
inputs.push({
|
|
49
|
+
key: "confirmObjectType",
|
|
50
|
+
label: "Confirm object type",
|
|
51
|
+
reason: "Parsed object type does not match the expected entity.",
|
|
52
|
+
required: true,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
return inputs.length > 0 ? inputs : undefined;
|
|
56
|
+
}
|
|
57
|
+
export function toDescriptorActionDraft(draft, options = {}) {
|
|
58
|
+
const loadedAt = nowIso();
|
|
59
|
+
const source = buildDerivedGraphSourceRef("reconcile-draft-builder", loadedAt);
|
|
60
|
+
source.sourceClass = "runtime-projection";
|
|
61
|
+
source.canonicalStatus = "derived";
|
|
62
|
+
source.collectionName = options.targetCollection;
|
|
63
|
+
source.databaseName = options.target;
|
|
64
|
+
return {
|
|
65
|
+
draftId: randomUUID(),
|
|
66
|
+
action: draftActionFromSuggested(draft.suggestedAction),
|
|
67
|
+
status: "draft",
|
|
68
|
+
source,
|
|
69
|
+
proposedMutation: proposedMutationFromDraft(draft),
|
|
70
|
+
explanation: draft.suggestedAction === "manualReview"
|
|
71
|
+
? "Manual review required before applying this change."
|
|
72
|
+
: `Suggested ${draft.suggestedAction} based on inventory reconcile.`,
|
|
73
|
+
warnings: draft.warnings.map((message, index) => ({
|
|
74
|
+
code: `DRAFT_WARNING_${index + 1}`,
|
|
75
|
+
message,
|
|
76
|
+
})),
|
|
77
|
+
requiredUserInputs: requiredUserInputsFromDraft(draft),
|
|
78
|
+
dryRunAvailable: draft.suggestedAction !== "manualReview",
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
export function buildDescriptorActionDraftFromOrphanCollection(input) {
|
|
82
|
+
const draft = buildDescriptorDraftFromOrphanCollection(input);
|
|
83
|
+
return toDescriptorActionDraft(draft, {
|
|
84
|
+
targetCollection: input.collectionName,
|
|
85
|
+
target: input.target,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
export function buildAddContentTypeActionDraft(input, snapshot) {
|
|
89
|
+
const draft = buildAddContentTypeDraftFromCollection(input, snapshot);
|
|
90
|
+
return toDescriptorActionDraft(draft, {
|
|
91
|
+
targetCollection: input.collectionName,
|
|
92
|
+
target: input.target,
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
export function buildFixCollectionBindingActionDraft(input, snapshot, env) {
|
|
96
|
+
const draft = buildFixCollectionBindingDraft(input, snapshot, env);
|
|
97
|
+
return toDescriptorActionDraft(draft, {
|
|
98
|
+
targetCollection: input.collectionName,
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
export function buildIgnoreCollectionActionDraft(input) {
|
|
102
|
+
const draft = buildIgnoreCollectionDraft(input);
|
|
103
|
+
return toDescriptorActionDraft(draft, {
|
|
104
|
+
targetCollection: input.collectionName,
|
|
105
|
+
target: input.target,
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
export function buildDescriptorActionDraftForSuggestion(suggestion, snapshot, env = process.env) {
|
|
109
|
+
let draft = null;
|
|
110
|
+
switch (suggestion.kind) {
|
|
111
|
+
case "create-descriptor-for-orphan":
|
|
112
|
+
draft = buildDescriptorDraftFromOrphanCollection({
|
|
113
|
+
target: suggestion.target,
|
|
114
|
+
collectionName: suggestion.collection,
|
|
115
|
+
});
|
|
116
|
+
break;
|
|
117
|
+
case "add-content-type-for-orphan":
|
|
118
|
+
draft = buildAddContentTypeDraftFromCollection({
|
|
119
|
+
entityName: suggestion.parsedObject ?? "",
|
|
120
|
+
collectionName: suggestion.collection,
|
|
121
|
+
target: suggestion.target,
|
|
122
|
+
}, snapshot);
|
|
123
|
+
break;
|
|
124
|
+
case "fix-collection-binding":
|
|
125
|
+
draft = buildFixCollectionBindingDraft({
|
|
126
|
+
entityName: suggestion.entityName,
|
|
127
|
+
contentTypeKey: suggestion.contentType,
|
|
128
|
+
collectionName: suggestion.actualCollection,
|
|
129
|
+
}, snapshot, env);
|
|
130
|
+
break;
|
|
131
|
+
case "ignore-collection":
|
|
132
|
+
draft = buildIgnoreCollectionDraft({
|
|
133
|
+
target: suggestion.target,
|
|
134
|
+
collectionName: suggestion.collectionName,
|
|
135
|
+
reason: "not-memorix",
|
|
136
|
+
});
|
|
137
|
+
break;
|
|
138
|
+
default:
|
|
139
|
+
return null;
|
|
140
|
+
}
|
|
141
|
+
return toDescriptorActionDraft(draft);
|
|
142
|
+
}
|
|
143
|
+
export async function applyDescriptorActionDraft(ctx, draft, options = {}) {
|
|
144
|
+
const { applyReconcileDraft } = await import("../reconcile/apply.js");
|
|
145
|
+
const { assertSourceEditable, createSourceNotEditableError } = await import("./guards.js");
|
|
146
|
+
const { mutationFailure } = await import("../mutations/common.js");
|
|
147
|
+
try {
|
|
148
|
+
assertSourceEditable(draft.source);
|
|
149
|
+
if (draft.targetSource) {
|
|
150
|
+
assertSourceEditable(draft.targetSource);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
catch (err) {
|
|
154
|
+
const sourceError = createSourceNotEditableError(err && typeof err === "object" && "source" in err
|
|
155
|
+
? err.source
|
|
156
|
+
: draft.source);
|
|
157
|
+
return mutationFailure([
|
|
158
|
+
{
|
|
159
|
+
code: sourceError.code,
|
|
160
|
+
message: sourceError.message,
|
|
161
|
+
source: sourceError.source,
|
|
162
|
+
},
|
|
163
|
+
], options);
|
|
164
|
+
}
|
|
165
|
+
const legacyDraft = {
|
|
166
|
+
suggestedAction: draft.action === "register-object-type"
|
|
167
|
+
? "registerEntityDescriptor"
|
|
168
|
+
: draft.action === "add-content-type"
|
|
169
|
+
? "addContentType"
|
|
170
|
+
: draft.action === "fix-collection-binding"
|
|
171
|
+
? "updateContentType"
|
|
172
|
+
: draft.action === "ignore-collection"
|
|
173
|
+
? "ignoreCollection"
|
|
174
|
+
: "manualReview",
|
|
175
|
+
draft: draft.proposedMutation.input && typeof draft.proposedMutation.input === "object"
|
|
176
|
+
? draft.proposedMutation.input
|
|
177
|
+
: {},
|
|
178
|
+
warnings: draft.warnings.map((w) => w.message),
|
|
179
|
+
};
|
|
180
|
+
if (draft.requiredUserInputs?.some((input) => input.required)) {
|
|
181
|
+
const { mutationFailure } = await import("../mutations/common.js");
|
|
182
|
+
return mutationFailure([
|
|
183
|
+
{
|
|
184
|
+
code: "REQUIRED_USER_INPUTS",
|
|
185
|
+
message: "Draft has unresolved required user inputs.",
|
|
186
|
+
},
|
|
187
|
+
], options);
|
|
188
|
+
}
|
|
189
|
+
return applyReconcileDraft(ctx, legacyDraft, options);
|
|
190
|
+
}
|
|
191
|
+
//# sourceMappingURL=action-drafts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-drafts.js","sourceRoot":"","sources":["../../src/source/action-drafts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { MemorixCompletionMapping, MemorixEntityDescriptor, MemorixItemDescriptor, MemorixListDescriptor, MemorixSliceDescriptor } from "../types/index.js";
|
|
2
|
+
export declare function withObjectTypeAliases<T extends Record<string, unknown>>(descriptor: T): T & {
|
|
3
|
+
objectType?: string;
|
|
4
|
+
objectName?: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function withEntityDescriptorAliases(descriptor: MemorixEntityDescriptor): MemorixEntityDescriptor & {
|
|
7
|
+
objectType: string;
|
|
8
|
+
objectName: string;
|
|
9
|
+
};
|
|
10
|
+
export declare function withListDescriptorAliases(descriptor: MemorixListDescriptor): MemorixListDescriptor & {
|
|
11
|
+
objectType?: string;
|
|
12
|
+
};
|
|
13
|
+
export declare function withItemDescriptorAliases(descriptor: MemorixItemDescriptor): MemorixItemDescriptor & {
|
|
14
|
+
objectType: string;
|
|
15
|
+
};
|
|
16
|
+
export declare function withSliceDescriptorAliases(descriptor: MemorixSliceDescriptor): MemorixSliceDescriptor & {
|
|
17
|
+
objectType: string;
|
|
18
|
+
entity?: string;
|
|
19
|
+
};
|
|
20
|
+
export declare function withCompletionMappingAliases(mapping: MemorixCompletionMapping): MemorixCompletionMapping & {
|
|
21
|
+
objectType: string;
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=aliases.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aliases.d.ts","sourceRoot":"","sources":["../../src/source/aliases.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrE,UAAU,EAAE,CAAC,GACZ,CAAC,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAqBlD;AAED,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,uBAAuB,GAClC,uBAAuB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAMtE;AAED,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,qBAAqB,GAChC,qBAAqB,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAgBjD;AAED,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,qBAAqB,GAChC,qBAAqB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAKhD;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,sBAAsB,GACjC,sBAAsB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAMlE;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,wBAAwB,GAChC,wBAAwB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAKnD"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
export function withObjectTypeAliases(descriptor) {
|
|
2
|
+
const entityName = typeof descriptor.entityName === "string"
|
|
3
|
+
? descriptor.entityName
|
|
4
|
+
: typeof descriptor.entity === "string"
|
|
5
|
+
? descriptor.entity
|
|
6
|
+
: typeof descriptor.entityType === "string"
|
|
7
|
+
? descriptor.entityType
|
|
8
|
+
: undefined;
|
|
9
|
+
if (!entityName) {
|
|
10
|
+
return descriptor;
|
|
11
|
+
}
|
|
12
|
+
return {
|
|
13
|
+
...descriptor,
|
|
14
|
+
objectType: entityName,
|
|
15
|
+
...(typeof descriptor.entityName === "string"
|
|
16
|
+
? { objectName: descriptor.entityName }
|
|
17
|
+
: {}),
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export function withEntityDescriptorAliases(descriptor) {
|
|
21
|
+
return {
|
|
22
|
+
...descriptor,
|
|
23
|
+
objectType: descriptor.entityName,
|
|
24
|
+
objectName: descriptor.entityName,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export function withListDescriptorAliases(descriptor) {
|
|
28
|
+
const entityRef = "entity" in descriptor && typeof descriptor.entity === "string"
|
|
29
|
+
? descriptor.entity
|
|
30
|
+
: "entityName" in descriptor && typeof descriptor.entityName === "string"
|
|
31
|
+
? descriptor.entityName
|
|
32
|
+
: undefined;
|
|
33
|
+
if (!entityRef) {
|
|
34
|
+
return descriptor;
|
|
35
|
+
}
|
|
36
|
+
return {
|
|
37
|
+
...descriptor,
|
|
38
|
+
objectType: entityRef,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
export function withItemDescriptorAliases(descriptor) {
|
|
42
|
+
return {
|
|
43
|
+
...descriptor,
|
|
44
|
+
objectType: descriptor.entity,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
export function withSliceDescriptorAliases(descriptor) {
|
|
48
|
+
return {
|
|
49
|
+
...descriptor,
|
|
50
|
+
entity: descriptor.entityName,
|
|
51
|
+
objectType: descriptor.entityName,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
export function withCompletionMappingAliases(mapping) {
|
|
55
|
+
return {
|
|
56
|
+
...mapping,
|
|
57
|
+
objectType: mapping.entityType,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=aliases.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aliases.js","sourceRoot":"","sources":["../../src/source/aliases.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,qBAAqB,CACnC,UAAa;IAEb,MAAM,UAAU,GACd,OAAO,UAAU,CAAC,UAAU,KAAK,QAAQ;QACvC,CAAC,CAAC,UAAU,CAAC,UAAU;QACvB,CAAC,CAAC,OAAO,UAAU,CAAC,MAAM,KAAK,QAAQ;YACrC,CAAC,CAAC,UAAU,CAAC,MAAM;YACnB,CAAC,CAAC,OAAO,UAAU,CAAC,UAAU,KAAK,QAAQ;gBACzC,CAAC,CAAC,UAAU,CAAC,UAAU;gBACvB,CAAC,CAAC,SAAS,CAAC;IAEpB,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,UAA8D,CAAC;IACxE,CAAC;IAED,OAAO;QACL,GAAG,UAAU;QACb,UAAU,EAAE,UAAU;QACtB,GAAG,CAAC,OAAO,UAAU,CAAC,UAAU,KAAK,QAAQ;YAC3C,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE;YACvC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,UAAmC;IAEnC,OAAO;QACL,GAAG,UAAU;QACb,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,UAAU,EAAE,UAAU,CAAC,UAAU;KAClC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,UAAiC;IAEjC,MAAM,SAAS,GACb,QAAQ,IAAI,UAAU,IAAI,OAAO,UAAU,CAAC,MAAM,KAAK,QAAQ;QAC7D,CAAC,CAAC,UAAU,CAAC,MAAM;QACnB,CAAC,CAAC,YAAY,IAAI,UAAU,IAAI,OAAO,UAAU,CAAC,UAAU,KAAK,QAAQ;YACvE,CAAC,CAAC,UAAU,CAAC,UAAU;YACvB,CAAC,CAAC,SAAS,CAAC;IAElB,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,OAAO;QACL,GAAG,UAAU;QACb,UAAU,EAAE,SAAS;KACtB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,UAAiC;IAEjC,OAAO;QACL,GAAG,UAAU;QACb,UAAU,EAAE,UAAU,CAAC,MAAM;KAC9B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,UAAkC;IAElC,OAAO;QACL,GAAG,UAAU;QACb,MAAM,EAAE,UAAU,CAAC,UAAU;QAC7B,UAAU,EAAE,UAAU,CAAC,UAAU;KAClC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,OAAiC;IAEjC,OAAO;QACL,GAAG,OAAO;QACV,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { CataloxBoundClient } from "../catalox/client.js";
|
|
2
|
+
import type { SourceAwareCatalogHealth } from "./types.js";
|
|
3
|
+
export type CatalogProbeResult = {
|
|
4
|
+
exists: boolean;
|
|
5
|
+
readable: boolean;
|
|
6
|
+
items: Array<{
|
|
7
|
+
id: string;
|
|
8
|
+
data: Record<string, unknown>;
|
|
9
|
+
}>;
|
|
10
|
+
error?: {
|
|
11
|
+
code: string;
|
|
12
|
+
message: string;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export declare function probeCatalogItems(catalox: CataloxBoundClient, catalogId: string): Promise<CatalogProbeResult>;
|
|
16
|
+
export declare function buildCatalogHealth(catalogId: string, probe: CatalogProbeResult): SourceAwareCatalogHealth;
|
|
17
|
+
//# sourceMappingURL=catalog-health.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog-health.d.ts","sourceRoot":"","sources":["../../src/source/catalog-health.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG/D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAY3D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAC5D,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C,CAAC;AAEF,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,kBAAkB,CAAC,CAmE7B;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,kBAAkB,GACxB,wBAAwB,CAa1B"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { MEMORIX_COMPLETION_MAPPINGS_CATALOG } from "../catalog/ids.js";
|
|
2
|
+
import { resolveCatalogRegistryEntry } from "./registry.js";
|
|
3
|
+
function isCatalogNotFoundError(err) {
|
|
4
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
5
|
+
return message.includes("Catalog not found");
|
|
6
|
+
}
|
|
7
|
+
function isCatalogAdapterError(err) {
|
|
8
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
9
|
+
return message.includes("Catalog adapter error");
|
|
10
|
+
}
|
|
11
|
+
export async function probeCatalogItems(catalox, catalogId) {
|
|
12
|
+
const items = [];
|
|
13
|
+
let offset = 0;
|
|
14
|
+
const limit = 200;
|
|
15
|
+
for (;;) {
|
|
16
|
+
let page;
|
|
17
|
+
try {
|
|
18
|
+
page = await catalox.listCatalogItems(catalogId, { limit, offset });
|
|
19
|
+
}
|
|
20
|
+
catch (err) {
|
|
21
|
+
if (isCatalogNotFoundError(err)) {
|
|
22
|
+
return { exists: false, readable: false, items: [] };
|
|
23
|
+
}
|
|
24
|
+
if (catalogId === MEMORIX_COMPLETION_MAPPINGS_CATALOG &&
|
|
25
|
+
isCatalogAdapterError(err)) {
|
|
26
|
+
return {
|
|
27
|
+
exists: true,
|
|
28
|
+
readable: false,
|
|
29
|
+
items: [],
|
|
30
|
+
error: {
|
|
31
|
+
code: "CATALOG_LIST_FAILED",
|
|
32
|
+
message: "Catalog exists but items could not be listed.",
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
return {
|
|
37
|
+
exists: true,
|
|
38
|
+
readable: false,
|
|
39
|
+
items: [],
|
|
40
|
+
error: {
|
|
41
|
+
code: "CATALOG_LIST_FAILED",
|
|
42
|
+
message: err instanceof Error ? err.message : String(err),
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
if (page.listOutcome === "mapping_blocked") {
|
|
47
|
+
return {
|
|
48
|
+
exists: true,
|
|
49
|
+
readable: false,
|
|
50
|
+
items: [],
|
|
51
|
+
error: {
|
|
52
|
+
code: "CATALOG_LIST_BLOCKED",
|
|
53
|
+
message: "Catalog listing blocked by mapping configuration.",
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
for (const item of page.items) {
|
|
58
|
+
items.push({
|
|
59
|
+
id: String(item.itemId),
|
|
60
|
+
data: (item.data ?? {}),
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
if (!page.nextCursor && page.items.length < limit) {
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
66
|
+
offset += page.items.length;
|
|
67
|
+
if (page.items.length === 0) {
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return { exists: true, readable: true, items };
|
|
72
|
+
}
|
|
73
|
+
export function buildCatalogHealth(catalogId, probe) {
|
|
74
|
+
const entry = resolveCatalogRegistryEntry(catalogId);
|
|
75
|
+
return {
|
|
76
|
+
catalogId,
|
|
77
|
+
sourceClass: entry.sourceClass,
|
|
78
|
+
canonicalStatus: entry.canonicalStatus,
|
|
79
|
+
descriptorKind: entry.descriptorKind,
|
|
80
|
+
exists: probe.exists,
|
|
81
|
+
readable: probe.readable,
|
|
82
|
+
itemCount: probe.readable ? probe.items.length : undefined,
|
|
83
|
+
error: probe.error,
|
|
84
|
+
editable: entry.editable,
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=catalog-health.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog-health.js","sourceRoot":"","sources":["../../src/source/catalog-health.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { MemorixTarget } from "../types/index.js";
|
|
2
|
+
import type { MemorixDescriptorKind, MemorixSourceRef, SourceAware } from "./types.js";
|
|
3
|
+
export declare function nowIso(): string;
|
|
4
|
+
export declare function buildCatalogItemSourceRef(options: {
|
|
5
|
+
catalogId: string;
|
|
6
|
+
itemId: string;
|
|
7
|
+
appId?: string;
|
|
8
|
+
loadedAt?: string;
|
|
9
|
+
objectType?: string;
|
|
10
|
+
entityName?: string;
|
|
11
|
+
target?: MemorixTarget;
|
|
12
|
+
contentType?: string;
|
|
13
|
+
descriptorKind?: MemorixDescriptorKind;
|
|
14
|
+
}): MemorixSourceRef;
|
|
15
|
+
export declare function buildObjectTypeSourceRef(itemId: string, appId?: string, loadedAt?: string, objectType?: string, target?: MemorixTarget): MemorixSourceRef;
|
|
16
|
+
export declare function buildListSourceRef(itemId: string, appId?: string, loadedAt?: string, objectType?: string, kind?: "list" | "slice"): MemorixSourceRef;
|
|
17
|
+
export declare function buildItemSourceRef(itemId: string, appId?: string, loadedAt?: string, objectType?: string): MemorixSourceRef;
|
|
18
|
+
export declare function buildMappingSourceRef(itemId: string, appId?: string, loadedAt?: string, objectType?: string, target?: MemorixTarget): MemorixSourceRef;
|
|
19
|
+
export declare function buildInventoryPolicySourceRef(appId?: string, loadedAt?: string): MemorixSourceRef;
|
|
20
|
+
export declare function buildDerivedGraphSourceRef(generatedBy?: string, loadedAt?: string): MemorixSourceRef;
|
|
21
|
+
export declare function buildLocalUiStateSourceRef(loadedAt?: string, trustWarning?: string): MemorixSourceRef;
|
|
22
|
+
export declare function buildUnknownSourceRef(loadedAt?: string, trustWarning?: string): MemorixSourceRef;
|
|
23
|
+
export declare function wrapSourceAware<T>(data: T, source: MemorixSourceRef): SourceAware<T>;
|
|
24
|
+
export declare function sourceRefForCataloxWrite(write: {
|
|
25
|
+
catalogId: string;
|
|
26
|
+
itemId: string;
|
|
27
|
+
action: string;
|
|
28
|
+
}, appId?: string, loadedAt?: string): MemorixSourceRef;
|
|
29
|
+
//# sourceMappingURL=envelope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"envelope.d.ts","sourceRoot":"","sources":["../../src/source/envelope.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIvD,OAAO,KAAK,EACV,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,EACZ,MAAM,YAAY,CAAC;AAEpB,wBAAgB,MAAM,IAAI,MAAM,CAE/B;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,qBAAqB,CAAC;CACxC,GAAG,gBAAgB,CAmBnB;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,aAAa,GACrB,gBAAgB,CAYlB;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GACtB,gBAAgB,CAUlB;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,GAClB,gBAAgB,CAUlB;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,aAAa,GACrB,gBAAgB,CAWlB;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,GAChB,gBAAgB,CAQlB;AAED,wBAAgB,0BAA0B,CACxC,WAAW,SAAwB,EACnC,QAAQ,CAAC,EAAE,MAAM,GAChB,gBAAgB,CAYlB;AAED,wBAAgB,0BAA0B,CACxC,QAAQ,CAAC,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,MAAM,GACpB,gBAAgB,CAUlB;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,CAAC,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,MAAM,GACpB,gBAAgB,CAUlB;AAED,wBAAgB,eAAe,CAAC,CAAC,EAC/B,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,gBAAgB,GACvB,WAAW,CAAC,CAAC,CAAC,CAEhB;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC5D,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,GAChB,gBAAgB,CAOlB"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { MEMORIX_COMPLETION_MAPPINGS_CATALOG, MEMORIX_INVENTORY_POLICIES_CATALOG, MEMORIX_INVENTORY_POLICY_ITEM_ID, MEMORIX_ITEM_DESCRIPTORS_CATALOG, MEMORIX_LIST_DESCRIPTORS_CATALOG, MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG, } from "../catalog/ids.js";
|
|
2
|
+
import { resolveCatalogRegistryEntry, } from "./registry.js";
|
|
3
|
+
export function nowIso() {
|
|
4
|
+
return new Date().toISOString();
|
|
5
|
+
}
|
|
6
|
+
export function buildCatalogItemSourceRef(options) {
|
|
7
|
+
const loadedAt = options.loadedAt ?? nowIso();
|
|
8
|
+
const entry = resolveCatalogRegistryEntry(options.catalogId);
|
|
9
|
+
return {
|
|
10
|
+
sourceClass: entry.sourceClass,
|
|
11
|
+
canonicalStatus: entry.canonicalStatus,
|
|
12
|
+
appId: options.appId,
|
|
13
|
+
catalogId: options.catalogId,
|
|
14
|
+
itemId: options.itemId,
|
|
15
|
+
firestoreCollection: options.catalogId,
|
|
16
|
+
descriptorKind: options.descriptorKind ?? entry.descriptorKind,
|
|
17
|
+
objectType: options.objectType,
|
|
18
|
+
entityName: options.entityName ?? options.objectType,
|
|
19
|
+
target: options.target,
|
|
20
|
+
contentType: options.contentType,
|
|
21
|
+
loadedAt,
|
|
22
|
+
editable: entry.editable,
|
|
23
|
+
trustWarning: entry.trustWarning,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
export function buildObjectTypeSourceRef(itemId, appId, loadedAt, objectType, target) {
|
|
27
|
+
const ot = objectType ?? itemId;
|
|
28
|
+
return buildCatalogItemSourceRef({
|
|
29
|
+
catalogId: MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG,
|
|
30
|
+
itemId,
|
|
31
|
+
appId,
|
|
32
|
+
loadedAt,
|
|
33
|
+
objectType: ot,
|
|
34
|
+
entityName: ot,
|
|
35
|
+
target,
|
|
36
|
+
descriptorKind: "object-type",
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
export function buildListSourceRef(itemId, appId, loadedAt, objectType, kind) {
|
|
40
|
+
return buildCatalogItemSourceRef({
|
|
41
|
+
catalogId: MEMORIX_LIST_DESCRIPTORS_CATALOG,
|
|
42
|
+
itemId,
|
|
43
|
+
appId,
|
|
44
|
+
loadedAt,
|
|
45
|
+
objectType,
|
|
46
|
+
entityName: objectType,
|
|
47
|
+
descriptorKind: kind === "slice" ? "slice" : "list",
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
export function buildItemSourceRef(itemId, appId, loadedAt, objectType) {
|
|
51
|
+
return buildCatalogItemSourceRef({
|
|
52
|
+
catalogId: MEMORIX_ITEM_DESCRIPTORS_CATALOG,
|
|
53
|
+
itemId,
|
|
54
|
+
appId,
|
|
55
|
+
loadedAt,
|
|
56
|
+
objectType,
|
|
57
|
+
entityName: objectType,
|
|
58
|
+
descriptorKind: "item",
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
export function buildMappingSourceRef(itemId, appId, loadedAt, objectType, target) {
|
|
62
|
+
return buildCatalogItemSourceRef({
|
|
63
|
+
catalogId: MEMORIX_COMPLETION_MAPPINGS_CATALOG,
|
|
64
|
+
itemId,
|
|
65
|
+
appId,
|
|
66
|
+
loadedAt,
|
|
67
|
+
objectType,
|
|
68
|
+
entityName: objectType,
|
|
69
|
+
target,
|
|
70
|
+
descriptorKind: "completion-mapping",
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
export function buildInventoryPolicySourceRef(appId, loadedAt) {
|
|
74
|
+
return buildCatalogItemSourceRef({
|
|
75
|
+
catalogId: MEMORIX_INVENTORY_POLICIES_CATALOG,
|
|
76
|
+
itemId: MEMORIX_INVENTORY_POLICY_ITEM_ID,
|
|
77
|
+
appId,
|
|
78
|
+
loadedAt,
|
|
79
|
+
descriptorKind: "inventory-policy",
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
export function buildDerivedGraphSourceRef(generatedBy = "memorix-descriptors", loadedAt) {
|
|
83
|
+
const at = loadedAt ?? nowIso();
|
|
84
|
+
return {
|
|
85
|
+
sourceClass: "runtime-projection",
|
|
86
|
+
canonicalStatus: "derived",
|
|
87
|
+
loadedAt: at,
|
|
88
|
+
generatedAt: at,
|
|
89
|
+
generatedBy,
|
|
90
|
+
editable: "not-editable",
|
|
91
|
+
trustWarning: "Derived descriptor graph projection. Not canonical Catalox metadata.",
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
export function buildLocalUiStateSourceRef(loadedAt, trustWarning) {
|
|
95
|
+
return {
|
|
96
|
+
sourceClass: "local-ui-state",
|
|
97
|
+
canonicalStatus: "local",
|
|
98
|
+
loadedAt: loadedAt ?? nowIso(),
|
|
99
|
+
editable: "not-editable",
|
|
100
|
+
trustWarning: trustWarning ??
|
|
101
|
+
"Local Explorer UI state. Not canonical descriptor metadata.",
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
export function buildUnknownSourceRef(loadedAt, trustWarning) {
|
|
105
|
+
return {
|
|
106
|
+
sourceClass: "unknown-source",
|
|
107
|
+
canonicalStatus: "unknown",
|
|
108
|
+
loadedAt: loadedAt ?? nowIso(),
|
|
109
|
+
editable: "not-editable",
|
|
110
|
+
trustWarning: trustWarning ??
|
|
111
|
+
"Source cannot be proven as descriptor catalog metadata.",
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
export function wrapSourceAware(data, source) {
|
|
115
|
+
return { data, source };
|
|
116
|
+
}
|
|
117
|
+
export function sourceRefForCataloxWrite(write, appId, loadedAt) {
|
|
118
|
+
return buildCatalogItemSourceRef({
|
|
119
|
+
catalogId: write.catalogId,
|
|
120
|
+
itemId: write.itemId,
|
|
121
|
+
appId,
|
|
122
|
+
loadedAt,
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=envelope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"envelope.js","sourceRoot":"","sources":["../../src/source/envelope.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { CataloxBoundClient } from "../catalox/client.js";
|
|
2
|
+
import type { SourceAwareDescriptorGraph } from "./types.js";
|
|
3
|
+
import { type ValidateSourceAwareMemorixDescriptorsOptions } from "./validation.js";
|
|
4
|
+
export type GetSourceAwareDescriptorGraphOptions = {
|
|
5
|
+
appId?: string;
|
|
6
|
+
includeSourceRefs?: boolean;
|
|
7
|
+
includeValidation?: boolean;
|
|
8
|
+
includeReferences?: boolean;
|
|
9
|
+
};
|
|
10
|
+
export declare function getSourceAwareDescriptorGraph(catalox: CataloxBoundClient, options?: GetSourceAwareDescriptorGraphOptions): Promise<SourceAwareDescriptorGraph>;
|
|
11
|
+
export type { ValidateSourceAwareMemorixDescriptorsOptions };
|
|
12
|
+
//# sourceMappingURL=graph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/source/graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAY/D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAEL,KAAK,4CAA4C,EAClD,MAAM,iBAAiB,CAAC;AAEzB,MAAM,MAAM,oCAAoC,GAAG;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAgDF,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,kBAAkB,EAC3B,OAAO,GAAE,oCAAyC,GACjD,OAAO,CAAC,0BAA0B,CAAC,CAqHrC;AAED,YAAY,EAAE,4CAA4C,EAAE,CAAC"}
|