@x12i/memorix-scoper-sdk 2.1.1 → 2.2.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/dist/client.d.ts CHANGED
@@ -3,6 +3,7 @@ import { type TrustedSdkConfig } from "./config.js";
3
3
  import { BudgetAccountant } from "./budgets.js";
4
4
  import { decodeNexumPersistRecord } from "./decoder.js";
5
5
  import { subjectRef } from "./evidence-refs.js";
6
+ import { type ObjectTypeDescriptor } from "./descriptors.js";
6
7
  export interface ContextualSdk {
7
8
  readonly context: TrustedExecutionContext;
8
9
  readonly budgets: BudgetAccountant;
@@ -104,6 +105,10 @@ export interface ContextualSdk {
104
105
  entries: CatalogEntry[];
105
106
  };
106
107
  };
108
+ descriptors: {
109
+ /** Object types from `GET /api/metadata/kinds/object-types` for this scope. */
110
+ objectTypes(): Promise<ObjectTypeDescriptor[]>;
111
+ };
107
112
  }
108
113
  export declare function createMemorixScoperClient(config: TrustedSdkConfig): {
109
114
  config: TrustedSdkConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -6,6 +6,7 @@ import { describeCatalog } from "./catalog.js";
6
6
  import { subjectRef } from "./evidence-refs.js";
7
7
  import { clampPageLimit } from "./pagination.js";
8
8
  import { requireContentAddress, requireContentTypePair } from "./addressing.js";
9
+ import { parseObjectTypeCatalog } from "./descriptors.js";
9
10
  async function withRetries(fn, retries) {
10
11
  const maxAttempts = retries?.maxAttempts ?? 2;
11
12
  const backoffMs = retries?.backoffMs ?? 50;
@@ -41,6 +42,12 @@ function isReadNotFound(err) {
41
42
  e.code === "READ_NOT_FOUND" ||
42
43
  e.error?.code === "READ_NOT_FOUND");
43
44
  }
45
+ async function readObjectTypes(baseUrl, headers) {
46
+ const res = await fetch(`${baseUrl}/api/metadata/kinds/object-types`, { headers });
47
+ if (!res.ok)
48
+ throwHttpError(res, await readErrorBody(res), "listObjectTypes");
49
+ return parseObjectTypeCatalog(await res.json());
50
+ }
44
51
  function throwHttpError(res, body, op) {
45
52
  const code = body && typeof body === "object"
46
53
  ? body.error?.code
@@ -132,6 +139,9 @@ function defaultHttpTransport(baseUrl, context, headers) {
132
139
  throwHttpError(res, await readErrorBody(res), "patchMarkdown");
133
140
  return { written: true };
134
141
  },
142
+ async listObjectTypes() {
143
+ return readObjectTypes(baseUrl, scopeHeaders);
144
+ },
135
145
  async composeContent({ recordId, contentTypes }) {
136
146
  const res = await fetch(`${baseUrl}/api/data/compose/data`, {
137
147
  method: "POST",
@@ -191,6 +201,7 @@ async function tryCreateMemorixClientTransport(config, baseUrl, context, headers
191
201
  if (explore?.getContent && explore?.listContent) {
192
202
  const http = defaultHttpTransport(baseUrl, context, headers);
193
203
  return {
204
+ listObjectTypes: (input) => http.listObjectTypes(input),
194
205
  getContent: async ({ objectType, contentType, id, include }) => {
195
206
  try {
196
207
  const res = await explore.getContent({
@@ -483,6 +494,15 @@ export function createMemorixScoperClient(config) {
483
494
  });
484
495
  },
485
496
  },
497
+ descriptors: {
498
+ async objectTypes() {
499
+ const transport = await getTransport();
500
+ if (!transport.listObjectTypes) {
501
+ throw new ScoperError("UPSTREAM_UNAVAILABLE", "Memorix transport cannot list object types.");
502
+ }
503
+ return withRetries(() => transport.listObjectTypes({ context }), config.retries);
504
+ },
505
+ },
486
506
  };
487
507
  },
488
508
  };
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import type { TrustedExecutionContext, ScoperBudgets, ContentInclude } from "@x12i/memorix-scoper-contracts";
2
+ import type { ObjectTypeDescriptor } from "./descriptors.js";
2
3
  /** Memorix service default. Port 8080 is Nexum explore, which Scoper does not call. */
3
4
  export declare const DEFAULT_MEMORIX_BASE_URL = "http://127.0.0.1:5100";
4
5
  export type CredentialsProvider = () => Promise<{
@@ -69,6 +70,13 @@ export interface MemorixTransport {
69
70
  }): Promise<{
70
71
  written: boolean;
71
72
  }>;
73
+ /**
74
+ * `GET /api/metadata/kinds/object-types`, parsed to object-type descriptors.
75
+ * Optional so older test transports keep compiling. Intent scope requires it.
76
+ */
77
+ listObjectTypes?(input: {
78
+ context: TrustedExecutionContext;
79
+ }): Promise<ObjectTypeDescriptor[]>;
72
80
  /** Same-subject CT `.data` via POST /api/data/compose/data. Optional for older fakes. */
73
81
  composeContent?(input: {
74
82
  context: TrustedExecutionContext;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,uFAAuF;AACvF,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAAC;AAgGhE,MAAM,UAAU,cAAc,CAAC,MAAwB;IACrD,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,eAAe,CAAC,CAAC,CAAE,CAAC;IACtE,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,mBAAmB,SAAS,uBAAuB,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAwB;IACzD,OAAO,EAAE,GAAG,sBAAsB,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,uFAAuF;AACvF,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAAC;AAuGhE,MAAM,UAAU,cAAc,CAAC,MAAwB;IACrD,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,eAAe,CAAC,CAAC,CAAE,CAAC;IACtE,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,mBAAmB,SAAS,uBAAuB,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAwB;IACzD,OAAO,EAAE,GAAG,sBAAsB,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;AAC1D,CAAC"}
@@ -0,0 +1,57 @@
1
+ /** One field on an object type. `contentType` limits it to that content type. */
2
+ export interface DescriptorField {
3
+ path: string;
4
+ valueType: string;
5
+ enum?: string[];
6
+ refersTo?: {
7
+ objectType: string;
8
+ };
9
+ contentType?: string;
10
+ }
11
+ /** One content type declared on an object type. */
12
+ export interface DescriptorContentType {
13
+ id: string;
14
+ leading: boolean;
15
+ required: boolean;
16
+ derived: boolean;
17
+ label?: string;
18
+ }
19
+ /** Object type parsed from `GET /api/metadata/kinds/object-types`. */
20
+ export interface ObjectTypeDescriptor {
21
+ id: string;
22
+ contentTypes: DescriptorContentType[];
23
+ fields: DescriptorField[];
24
+ }
25
+ /** Content-type menu for one step. `relationships` is never a candidate. */
26
+ export interface ContentTypeCandidate {
27
+ id: string;
28
+ leading: boolean;
29
+ required: boolean;
30
+ derived: boolean;
31
+ label?: string;
32
+ }
33
+ /** Field menu for one content type. */
34
+ export interface FieldCandidate {
35
+ path: string;
36
+ valueType: string;
37
+ enum?: string[];
38
+ refersTo?: {
39
+ objectType: string;
40
+ };
41
+ }
42
+ /**
43
+ * Parse `GET /api/metadata/kinds/object-types`.
44
+ * Each item's `definition` is the object type. A missing definition uses the item itself.
45
+ */
46
+ export declare function parseObjectTypeCatalog(body: unknown): ObjectTypeDescriptor[];
47
+ /** The content type a text-mode page is listed from. */
48
+ export declare function leadingContentType(objectType: ObjectTypeDescriptor): DescriptorContentType | undefined;
49
+ /** Step 1 candidates: every content type except `relationships`, without fields. */
50
+ export declare function contentTypeCandidates(objectType: ObjectTypeDescriptor): ContentTypeCandidate[];
51
+ /** Step 2 candidates: fields of one content type, plus fields that name no content type. */
52
+ export declare function fieldCandidates(objectType: ObjectTypeDescriptor, contentType: string): FieldCandidate[];
53
+ /** SHA-256 of a stable encoding. Key order does not change the hash. */
54
+ export declare function stableHash(value: unknown): string;
55
+ /** Fingerprint of the object types a decision was allowed to consider. */
56
+ export declare function descriptorFingerprint(objectTypes: readonly ObjectTypeDescriptor[]): string;
57
+ //# sourceMappingURL=descriptors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descriptors.d.ts","sourceRoot":"","sources":["../src/descriptors.ts"],"names":[],"mappings":"AAEA,iFAAiF;AACjF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,mDAAmD;AACnD,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,sEAAsE;AACtE,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,qBAAqB,EAAE,CAAC;IACtC,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED,4EAA4E;AAC5E,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,uCAAuC;AACvC,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CACnC;AAiFD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,GAAG,oBAAoB,EAAE,CAY5E;AAED,wDAAwD;AACxD,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,oBAAoB,GAC/B,qBAAqB,GAAG,SAAS,CAKnC;AAED,oFAAoF;AACpF,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,oBAAoB,GAAG,oBAAoB,EAAE,CAW9F;AAED,4FAA4F;AAC5F,wBAAgB,eAAe,CAAC,UAAU,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,GAAG,cAAc,EAAE,CAevG;AAaD,wEAAwE;AACxE,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEjD;AAED,0EAA0E;AAC1E,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,GAAG,MAAM,CAa1F"}
@@ -0,0 +1,165 @@
1
+ import { createHash } from "node:crypto";
2
+ function isRecord(value) {
3
+ return value !== null && typeof value === "object" && !Array.isArray(value);
4
+ }
5
+ function flag(raw, key) {
6
+ if (typeof raw[key] === "boolean")
7
+ return raw[key];
8
+ if (isRecord(raw.profile) && typeof raw.profile[key] === "boolean")
9
+ return raw.profile[key];
10
+ return undefined;
11
+ }
12
+ function labelOf(raw) {
13
+ if (isRecord(raw.presentation) && typeof raw.presentation.label === "string" && raw.presentation.label) {
14
+ return raw.presentation.label;
15
+ }
16
+ if (isRecord(raw.profile) &&
17
+ isRecord(raw.profile.presentation) &&
18
+ typeof raw.profile.presentation.label === "string" &&
19
+ raw.profile.presentation.label) {
20
+ return raw.profile.presentation.label;
21
+ }
22
+ return undefined;
23
+ }
24
+ function contentTypeOf(raw) {
25
+ if (!isRecord(raw) || typeof raw.id !== "string" || !raw.id)
26
+ return null;
27
+ const label = labelOf(raw);
28
+ return {
29
+ id: raw.id,
30
+ leading: flag(raw, "leading") === true,
31
+ required: flag(raw, "required") === true,
32
+ derived: flag(raw, "derived") === true,
33
+ ...(label ? { label } : {}),
34
+ };
35
+ }
36
+ function fieldOf(raw) {
37
+ if (!isRecord(raw) || typeof raw.path !== "string" || !raw.path)
38
+ return null;
39
+ if (typeof raw.valueType !== "string" || !raw.valueType)
40
+ return null;
41
+ const refers = isRecord(raw.refersTo) ? raw.refersTo : null;
42
+ const enumValues = Array.isArray(raw.enum) && raw.enum.every((item) => typeof item === "string")
43
+ ? raw.enum
44
+ : undefined;
45
+ return {
46
+ path: raw.path,
47
+ valueType: raw.valueType,
48
+ ...(enumValues ? { enum: enumValues } : {}),
49
+ ...(refers && typeof refers.objectType === "string" && refers.objectType
50
+ ? { refersTo: { objectType: refers.objectType } }
51
+ : {}),
52
+ ...(typeof raw.contentType === "string" && raw.contentType ? { contentType: raw.contentType } : {}),
53
+ };
54
+ }
55
+ function objectTypeOf(definition, fallbackId) {
56
+ const id = typeof definition.id === "string" && definition.id ? definition.id : fallbackId;
57
+ if (!id)
58
+ return null;
59
+ const rawTypes = Array.isArray(definition.contentTypes) ? definition.contentTypes : [];
60
+ const contentTypes = rawTypes
61
+ .map(contentTypeOf)
62
+ .filter((item) => item !== null);
63
+ const marked = contentTypes.find((item) => item.leading && item.id !== "relationships");
64
+ const fallback = contentTypes.find((item) => item.id !== "relationships");
65
+ const leadingId = marked?.id ?? fallback?.id;
66
+ const fields = (Array.isArray(definition.fields) ? definition.fields : [])
67
+ .map(fieldOf)
68
+ .filter((item) => item !== null);
69
+ return {
70
+ id,
71
+ contentTypes: contentTypes.map((item) => ({
72
+ ...item,
73
+ leading: item.id === leadingId,
74
+ })),
75
+ fields,
76
+ };
77
+ }
78
+ /**
79
+ * Parse `GET /api/metadata/kinds/object-types`.
80
+ * Each item's `definition` is the object type. A missing definition uses the item itself.
81
+ */
82
+ export function parseObjectTypeCatalog(body) {
83
+ const root = isRecord(body) ? body : null;
84
+ const items = Array.isArray(root?.items) ? root.items : Array.isArray(body) ? body : [];
85
+ const objectTypes = [];
86
+ for (const item of items) {
87
+ if (!isRecord(item))
88
+ continue;
89
+ const definition = isRecord(item.definition) ? item.definition : item;
90
+ const fallbackId = typeof item.id === "string" ? item.id : "";
91
+ const parsed = objectTypeOf(definition, fallbackId);
92
+ if (parsed)
93
+ objectTypes.push(parsed);
94
+ }
95
+ return objectTypes;
96
+ }
97
+ /** The content type a text-mode page is listed from. */
98
+ export function leadingContentType(objectType) {
99
+ return (objectType.contentTypes.find((item) => item.leading && item.id !== "relationships") ??
100
+ objectType.contentTypes.find((item) => item.id !== "relationships"));
101
+ }
102
+ /** Step 1 candidates: every content type except `relationships`, without fields. */
103
+ export function contentTypeCandidates(objectType) {
104
+ const leading = leadingContentType(objectType);
105
+ return objectType.contentTypes
106
+ .filter((item) => item.id !== "relationships")
107
+ .map((item) => ({
108
+ id: item.id,
109
+ leading: item.id === leading?.id,
110
+ required: item.required,
111
+ derived: item.derived,
112
+ ...(item.label ? { label: item.label } : {}),
113
+ }));
114
+ }
115
+ /** Step 2 candidates: fields of one content type, plus fields that name no content type. */
116
+ export function fieldCandidates(objectType, contentType) {
117
+ const seen = new Set();
118
+ const fields = [];
119
+ for (const field of objectType.fields) {
120
+ if (field.contentType && field.contentType !== contentType)
121
+ continue;
122
+ if (seen.has(field.path))
123
+ continue;
124
+ seen.add(field.path);
125
+ fields.push({
126
+ path: field.path,
127
+ valueType: field.valueType,
128
+ ...(field.enum ? { enum: field.enum } : {}),
129
+ ...(field.refersTo ? { refersTo: { objectType: field.refersTo.objectType } } : {}),
130
+ });
131
+ }
132
+ return fields;
133
+ }
134
+ function stableString(value) {
135
+ if (Array.isArray(value))
136
+ return `[${value.map(stableString).join(",")}]`;
137
+ if (isRecord(value)) {
138
+ return `{${Object.keys(value)
139
+ .sort()
140
+ .map((key) => `${JSON.stringify(key)}:${stableString(value[key])}`)
141
+ .join(",")}}`;
142
+ }
143
+ return JSON.stringify(value) ?? "null";
144
+ }
145
+ /** SHA-256 of a stable encoding. Key order does not change the hash. */
146
+ export function stableHash(value) {
147
+ return createHash("sha256").update(stableString(value)).digest("hex");
148
+ }
149
+ /** Fingerprint of the object types a decision was allowed to consider. */
150
+ export function descriptorFingerprint(objectTypes) {
151
+ const normalized = objectTypes
152
+ .map((objectType) => ({
153
+ id: objectType.id,
154
+ contentTypes: [...objectType.contentTypes].sort((left, right) => left.id.localeCompare(right.id)),
155
+ fields: [...objectType.fields].sort((left, right) => {
156
+ const path = left.path.localeCompare(right.path);
157
+ if (path !== 0)
158
+ return path;
159
+ return (left.contentType ?? "").localeCompare(right.contentType ?? "");
160
+ }),
161
+ }))
162
+ .sort((left, right) => left.id.localeCompare(right.id));
163
+ return stableHash(normalized);
164
+ }
165
+ //# sourceMappingURL=descriptors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descriptors.js","sourceRoot":"","sources":["../src/descriptors.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export { createMemorixScoperClient, type ContextualSdk, type MemorixScoperClient } from "./client.js";
2
+ export { parseObjectTypeCatalog, contentTypeCandidates, fieldCandidates, leadingContentType, descriptorFingerprint, stableHash, type ObjectTypeDescriptor, type DescriptorContentType, type DescriptorField, type ContentTypeCandidate, type FieldCandidate, } from "./descriptors.js";
2
3
  export { requireContentAddress, requireContentTypePair, } from "./addressing.js";
3
4
  export { type TrustedSdkConfig, type CredentialsProvider, type EstateTransport, type MemorixTransport, DEFAULT_MEMORIX_BASE_URL, resolveBaseUrl, resolveHostBudgets, } from "./config.js";
4
5
  export { BudgetAccountant } from "./budgets.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,KAAK,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACtG,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,wBAAwB,EACxB,cAAc,EACd,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,wBAAwB,EACxB,gCAAgC,GACjC,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,KAAK,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACtG,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,UAAU,EACV,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,cAAc,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,wBAAwB,EACxB,cAAc,EACd,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,wBAAwB,EACxB,gCAAgC,GACjC,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export { createMemorixScoperClient } from "./client.js";
2
+ export { parseObjectTypeCatalog, contentTypeCandidates, fieldCandidates, leadingContentType, descriptorFingerprint, stableHash, } from "./descriptors.js";
2
3
  export { requireContentAddress, requireContentTypePair, } from "./addressing.js";
3
4
  export { DEFAULT_MEMORIX_BASE_URL, resolveBaseUrl, resolveHostBudgets, } from "./config.js";
4
5
  export { BudgetAccountant } from "./budgets.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAgD,MAAM,aAAa,CAAC;AACtG,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAKL,wBAAwB,EACxB,cAAc,EACd,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,wBAAwB,EACxB,gCAAgC,GACjC,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAgD,MAAM,aAAa,CAAC;AACtG,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,UAAU,GAMX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAKL,wBAAwB,EACxB,cAAc,EACd,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,wBAAwB,EACxB,gCAAgC,GACjC,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@x12i/memorix-scoper-sdk",
3
- "version": "2.1.1",
3
+ "version": "2.2.0",
4
4
  "description": "Trusted Memorix Scoper data SDK",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -21,23 +21,23 @@
21
21
  "registry": "https://registry.npmjs.org/",
22
22
  "tag": "latest"
23
23
  },
24
- "scripts": {
25
- "build": "tsc -p tsconfig.json && node ../../scripts/copy-sdk-catalog.mjs",
26
- "typecheck": "tsc -p tsconfig.json --noEmit",
27
- "test": "vitest run"
28
- },
29
24
  "dependencies": {
30
25
  "@x12i/memorix-client": "^3.13.1",
31
- "@x12i/memorix-scoper-contracts": "workspace:*",
32
- "zod": "^3.25.76"
26
+ "zod": "^3.25.76",
27
+ "@x12i/memorix-scoper-contracts": "3.0.0"
33
28
  },
34
29
  "devDependencies": {
35
- "@x12i/memorix-scoper-testing": "workspace:*",
36
30
  "typescript": "^5.9.3",
37
- "vitest": "^3.2.7"
31
+ "vitest": "^3.2.7",
32
+ "@x12i/memorix-scoper-testing": "1.0.0"
38
33
  },
39
34
  "engines": {
40
35
  "node": ">=22"
41
36
  },
42
- "license": "MIT"
43
- }
37
+ "license": "MIT",
38
+ "scripts": {
39
+ "build": "tsc -p tsconfig.json && node ../../scripts/copy-sdk-catalog.mjs",
40
+ "typecheck": "tsc -p tsconfig.json --noEmit",
41
+ "test": "vitest run"
42
+ }
43
+ }