@x12i/memorix-retrieval 1.1.0 → 1.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.
Files changed (50) hide show
  1. package/dist/client/catalox-adapter.d.ts +9 -0
  2. package/dist/client/catalox-adapter.d.ts.map +1 -0
  3. package/dist/client/catalox-adapter.js +42 -0
  4. package/dist/client/catalox-adapter.js.map +1 -0
  5. package/dist/client/catalox-like.d.ts +16 -0
  6. package/dist/client/catalox-like.d.ts.map +1 -1
  7. package/dist/client/create-stack-from-env.d.ts +21 -0
  8. package/dist/client/create-stack-from-env.d.ts.map +1 -0
  9. package/dist/client/create-stack-from-env.js +34 -0
  10. package/dist/client/create-stack-from-env.js.map +1 -0
  11. package/dist/client/types.d.ts +1 -1
  12. package/dist/client/types.d.ts.map +1 -1
  13. package/dist/data/record-id.d.ts +6 -0
  14. package/dist/data/record-id.d.ts.map +1 -0
  15. package/dist/data/record-id.js +49 -0
  16. package/dist/data/record-id.js.map +1 -0
  17. package/dist/descriptors/content-type-labels.d.ts +7 -0
  18. package/dist/descriptors/content-type-labels.d.ts.map +1 -0
  19. package/dist/descriptors/content-type-labels.js +26 -0
  20. package/dist/descriptors/content-type-labels.js.map +1 -0
  21. package/dist/descriptors/discover-entities.d.ts +26 -0
  22. package/dist/descriptors/discover-entities.d.ts.map +1 -0
  23. package/dist/descriptors/discover-entities.js +123 -0
  24. package/dist/descriptors/discover-entities.js.map +1 -0
  25. package/dist/explorer/entity-graph.d.ts +59 -0
  26. package/dist/explorer/entity-graph.d.ts.map +1 -0
  27. package/dist/explorer/entity-graph.js +151 -0
  28. package/dist/explorer/entity-graph.js.map +1 -0
  29. package/dist/explorer/health.d.ts +14 -0
  30. package/dist/explorer/health.d.ts.map +1 -0
  31. package/dist/explorer/health.js +70 -0
  32. package/dist/explorer/health.js.map +1 -0
  33. package/dist/explorer/raw-reads.d.ts +25 -0
  34. package/dist/explorer/raw-reads.d.ts.map +1 -0
  35. package/dist/explorer/raw-reads.js +78 -0
  36. package/dist/explorer/raw-reads.js.map +1 -0
  37. package/dist/explorer/scoped-workspace.d.ts +24 -0
  38. package/dist/explorer/scoped-workspace.d.ts.map +1 -0
  39. package/dist/explorer/scoped-workspace.js +217 -0
  40. package/dist/explorer/scoped-workspace.js.map +1 -0
  41. package/dist/index.d.ts +12 -1
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +11 -0
  44. package/dist/index.js.map +1 -1
  45. package/dist/mongo/read-collection.d.ts +1 -0
  46. package/dist/mongo/read-collection.d.ts.map +1 -1
  47. package/dist/mongo/read-collection.js +6 -0
  48. package/dist/mongo/read-collection.js.map +1 -1
  49. package/docs/EXPLORER-HOST-APIS.md +48 -0
  50. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -1,21 +1,32 @@
1
1
  export { createMemorixRetrieval } from "./client/create-client.js";
2
2
  export { createMemorixRetrievalFromEnv } from "./client/create-from-env.js";
3
+ export { createCataloxAdapterFromBound } from "./client/catalox-adapter.js";
4
+ export { createMemorixRetrievalStackFromEnv, type MemorixRetrievalStack, type CreateMemorixRetrievalStackFromEnvOptions, } from "./client/create-stack-from-env.js";
3
5
  export { fetchMemorixList } from "./retrieval/fetch-list.js";
4
6
  export { fetchMemorixItem } from "./retrieval/fetch-item.js";
5
7
  export { loadMemorixEntityDescriptor } from "./descriptors/load-entity-descriptor.js";
6
8
  export { loadMemorixListDescriptor } from "./descriptors/load-list-descriptor.js";
7
9
  export { loadMemorixItemDescriptor } from "./descriptors/load-item-descriptor.js";
10
+ export { discoverMemorixEntities, loadMemorixEntityDescriptorByName, entityDescriptorConnections, type DiscoverMemorixEntitiesResult, type MemorixEntityDescriptorSummary, } from "./descriptors/discover-entities.js";
11
+ export { MEMORIX_CONTENT_TYPE_LABELS, memorixContentTypeLabel, primaryEntityContentType, listEntityContentTypeKeys, } from "./descriptors/content-type-labels.js";
12
+ export { MEMORIX_APP_ID, MEMORIX_ENTITY_DESCRIPTORS_CATALOG, MEMORIX_LIST_DESCRIPTORS_CATALOG, MEMORIX_ITEM_DESCRIPTORS_CATALOG, } from "./descriptors/catalog-ids.js";
8
13
  export { resolveMemorixCollectionName } from "./data/collection-name.js";
14
+ export { resolveMemorixRecordIdFilter, serializeMemorixDocumentForJson, mergeMemorixMongoFilters, memorixLabelSearchFilter, } from "./data/record-id.js";
15
+ export { countMemorixEntityContentTypeDocuments, listMemorixEntityContentTypeDocuments, getMemorixEntityContentTypeDocument, } from "./explorer/raw-reads.js";
16
+ export { buildMemorixEntityGraph, buildMemorixEntitySlices, type MemorixEntityGraphResult, type MemorixEntitySlicesResult, } from "./explorer/entity-graph.js";
17
+ export { listScopedWorkspaceEntityTypes, listScopedWorkspaceDocuments, countScopedWorkspaceDocuments, resolveScopedWorkspaceNamespace, resolveScopedNamespaceFieldPaths, } from "./explorer/scoped-workspace.js";
18
+ export { getMemorixRetrievalHealth, type MemorixRetrievalHealth } from "./explorer/health.js";
9
19
  export { memorixRead, memorixXronoxRead, resolveMemorixXronoxRole, DEFAULT_MEMORIX_XRONOX_ROLES, } from "./data/memorix-read.js";
10
20
  export { resolveMemorixDbName, resolveDefaultSourceDbName, resolveMongoUri, targetCollectionEnvKey, } from "./mongo/env.js";
11
21
  export { connectMemorixMongo } from "./mongo/connection.js";
22
+ export { countMemorixCollection } from "./mongo/read-collection.js";
12
23
  export { readMemorixCollection } from "./mongo/read-collection.js";
13
24
  export { resolveEntityTarget, resolveMemorixDbNameForEntity, } from "./mongo/resolve-db.js";
14
25
  export type { MemorixTarget } from "./mongo/types.js";
15
26
  export { resolveMemorixPropertySource, readPropertyValue, } from "./retrieval/resolve-property-source.js";
16
27
  export { resolveMemorixContentObject, shapeContentForList, shapeContentForItem, type MemorixContentObject, } from "./content/memorix-content-object.js";
17
28
  export { fetchMemorixContentObject } from "./content/fetch-content-object.js";
18
- export type { CataloxLike, ContentReaders, CreateMemorixRetrievalFromEnvOptions, CreateMemorixRetrievalOptions, FetchMemorixListRequest, FetchMemorixListResponse, FetchMemorixItemRequest, FetchMemorixItemResponse, MemorixRetrievalClient, XronoxLike, } from "./client/types.js";
29
+ export type { CataloxLike, CataloxCatalogListItem, CataloxCatalogListResult, ContentReaders, CreateMemorixRetrievalFromEnvOptions, CreateMemorixRetrievalOptions, FetchMemorixListRequest, FetchMemorixListResponse, FetchMemorixItemRequest, FetchMemorixItemResponse, MemorixRetrievalClient, XronoxLike, } from "./client/types.js";
19
30
  export type { MemorixEntityDescriptor, MemorixListDescriptor, MemorixItemDescriptor, MemorixFilterInput, MemorixContentExtensionDescriptor, MemorixRelationDescriptor, MemorixRelationIncludeDescriptor, MemorixPropertyDescriptor, MemorixContentTypeDescriptor, } from "./descriptors/descriptor-types.js";
20
31
  export type { MemorixRetrievalIssue } from "./errors/issues.js";
21
32
  export { MemorixRetrievalError } from "./errors/errors.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAE5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,eAAe,EACf,sBAAsB,GACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EACL,mBAAmB,EACnB,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EACL,4BAA4B,EAC5B,iBAAiB,GAClB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,KAAK,oBAAoB,GAC1B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAE9E,YAAY,EACV,WAAW,EACX,cAAc,EACd,oCAAoC,EACpC,6BAA6B,EAC7B,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,UAAU,GACX,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,iCAAiC,EACjC,yBAAyB,EACzB,gCAAgC,EAChC,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,mCAAmC,CAAC;AAE3C,YAAY,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,14 +1,25 @@
1
1
  export { createMemorixRetrieval } from "./client/create-client.js";
2
2
  export { createMemorixRetrievalFromEnv } from "./client/create-from-env.js";
3
+ export { createCataloxAdapterFromBound } from "./client/catalox-adapter.js";
4
+ export { createMemorixRetrievalStackFromEnv, } from "./client/create-stack-from-env.js";
3
5
  export { fetchMemorixList } from "./retrieval/fetch-list.js";
4
6
  export { fetchMemorixItem } from "./retrieval/fetch-item.js";
5
7
  export { loadMemorixEntityDescriptor } from "./descriptors/load-entity-descriptor.js";
6
8
  export { loadMemorixListDescriptor } from "./descriptors/load-list-descriptor.js";
7
9
  export { loadMemorixItemDescriptor } from "./descriptors/load-item-descriptor.js";
10
+ export { discoverMemorixEntities, loadMemorixEntityDescriptorByName, entityDescriptorConnections, } from "./descriptors/discover-entities.js";
11
+ export { MEMORIX_CONTENT_TYPE_LABELS, memorixContentTypeLabel, primaryEntityContentType, listEntityContentTypeKeys, } from "./descriptors/content-type-labels.js";
12
+ export { MEMORIX_APP_ID, MEMORIX_ENTITY_DESCRIPTORS_CATALOG, MEMORIX_LIST_DESCRIPTORS_CATALOG, MEMORIX_ITEM_DESCRIPTORS_CATALOG, } from "./descriptors/catalog-ids.js";
8
13
  export { resolveMemorixCollectionName } from "./data/collection-name.js";
14
+ export { resolveMemorixRecordIdFilter, serializeMemorixDocumentForJson, mergeMemorixMongoFilters, memorixLabelSearchFilter, } from "./data/record-id.js";
15
+ export { countMemorixEntityContentTypeDocuments, listMemorixEntityContentTypeDocuments, getMemorixEntityContentTypeDocument, } from "./explorer/raw-reads.js";
16
+ export { buildMemorixEntityGraph, buildMemorixEntitySlices, } from "./explorer/entity-graph.js";
17
+ export { listScopedWorkspaceEntityTypes, listScopedWorkspaceDocuments, countScopedWorkspaceDocuments, resolveScopedWorkspaceNamespace, resolveScopedNamespaceFieldPaths, } from "./explorer/scoped-workspace.js";
18
+ export { getMemorixRetrievalHealth } from "./explorer/health.js";
9
19
  export { memorixRead, memorixXronoxRead, resolveMemorixXronoxRole, DEFAULT_MEMORIX_XRONOX_ROLES, } from "./data/memorix-read.js";
10
20
  export { resolveMemorixDbName, resolveDefaultSourceDbName, resolveMongoUri, targetCollectionEnvKey, } from "./mongo/env.js";
11
21
  export { connectMemorixMongo } from "./mongo/connection.js";
22
+ export { countMemorixCollection } from "./mongo/read-collection.js";
12
23
  export { readMemorixCollection } from "./mongo/read-collection.js";
13
24
  export { resolveEntityTarget, resolveMemorixDbNameForEntity, } from "./mongo/resolve-db.js";
14
25
  export { resolveMemorixPropertySource, readPropertyValue, } from "./retrieval/resolve-property-source.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,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAE5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,eAAe,EACf,sBAAsB,GACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EACL,mBAAmB,EACnB,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,4BAA4B,EAC5B,iBAAiB,GAClB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,GAEpB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AA4B9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EACL,kCAAkC,GAGnC,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EACL,uBAAuB,EACvB,iCAAiC,EACjC,2BAA2B,GAG5B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,cAAc,EACd,kCAAkC,EAClC,gCAAgC,EAChC,gCAAgC,GACjC,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EACL,4BAA4B,EAC5B,+BAA+B,EAC/B,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,sCAAsC,EACtC,qCAAqC,EACrC,mCAAmC,GACpC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,uBAAuB,EACvB,wBAAwB,GAGzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,6BAA6B,EAC7B,+BAA+B,EAC/B,gCAAgC,GACjC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,yBAAyB,EAA+B,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,eAAe,EACf,sBAAsB,GACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EACL,mBAAmB,EACnB,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,4BAA4B,EAC5B,iBAAiB,GAClB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,GAEpB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AA8B9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -10,5 +10,6 @@ export type MemorixCollectionReadParams = {
10
10
  };
11
11
  /** Drop parent paths when a more specific descendant is also projected (Mongo path collision). */
12
12
  export declare function sanitizeProjectionPaths(paths: string[]): string[];
13
+ export declare function countMemorixCollection(client: MongoClient, params: Pick<MemorixCollectionReadParams, "db" | "collection" | "query">): Promise<number>;
13
14
  export declare function readMemorixCollection(client: MongoClient, params: MemorixCollectionReadParams): Promise<Record<string, unknown>[]>;
14
15
  //# sourceMappingURL=read-collection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"read-collection.d.ts","sourceRoot":"","sources":["../../src/mongo/read-collection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,MAAM,2BAA2B,GAAG;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAyBF,kGAAkG;AAClG,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAKjE;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,2BAA2B,GAClC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAiBpC"}
1
+ {"version":3,"file":"read-collection.d.ts","sourceRoot":"","sources":["../../src/mongo/read-collection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,MAAM,2BAA2B,GAAG;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAyBF,kGAAkG;AAClG,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAKjE;AAED,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,IAAI,CAAC,2BAA2B,EAAE,IAAI,GAAG,YAAY,GAAG,OAAO,CAAC,GACvE,OAAO,CAAC,MAAM,CAAC,CAKjB;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,2BAA2B,GAClC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAiBpC"}
@@ -27,6 +27,12 @@ export function sanitizeProjectionPaths(paths) {
27
27
  const unique = [...new Set(paths.filter(Boolean))];
28
28
  return unique.filter((path) => !unique.some((other) => other !== path && other.startsWith(`${path}.`)));
29
29
  }
30
+ export async function countMemorixCollection(client, params) {
31
+ return client
32
+ .db(params.db)
33
+ .collection(params.collection)
34
+ .countDocuments(params.query ?? {});
35
+ }
30
36
  export async function readMemorixCollection(client, params) {
31
37
  const projection = params.project?.length
32
38
  ? Object.fromEntries(sanitizeProjectionPaths(params.project).map((path) => [path, 1]))
@@ -1 +1 @@
1
- {"version":3,"file":"read-collection.js","sourceRoot":"","sources":["../../src/mongo/read-collection.ts"],"names":[],"mappings":"AAYA,SAAS,aAAa,CACpB,IAAyC;IAEzC,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACnC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AACnD,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,uBAAuB,CAAC,KAAe;IACrD,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACnD,OAAO,MAAM,CAAC,MAAM,CAClB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAClF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAmB,EACnB,MAAmC;IAEnC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,EAAE,MAAM;QACvC,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CACjE;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO,MAAM;SACV,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;SACb,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC;SAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE;QACxB,UAAU;QACV,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC;QAChC,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC;SACD,OAAO,EAAwC,CAAC;AACrD,CAAC"}
1
+ {"version":3,"file":"read-collection.js","sourceRoot":"","sources":["../../src/mongo/read-collection.ts"],"names":[],"mappings":"AAYA,SAAS,aAAa,CACpB,IAAyC;IAEzC,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACnC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AACnD,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,uBAAuB,CAAC,KAAe;IACrD,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACnD,OAAO,MAAM,CAAC,MAAM,CAClB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAClF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAAmB,EACnB,MAAwE;IAExE,OAAO,MAAM;SACV,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;SACb,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC;SAC7B,cAAc,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAmB,EACnB,MAAmC;IAEnC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,EAAE,MAAM;QACvC,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CACjE;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO,MAAM;SACV,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;SACb,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC;SAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE;QACxB,UAAU;QACV,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC;QAChC,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC;SACD,OAAO,EAAwC,CAAC;AACrD,CAAC"}
@@ -0,0 +1,48 @@
1
+ # Explorer host APIs (v1.2)
2
+
3
+ Optional exports for host applications such as **memorix-explorer** that need graph/count/list operations without going through list/item descriptors.
4
+
5
+ ## Stack bootstrap
6
+
7
+ ```ts
8
+ import { createMemorixRetrievalStackFromEnv } from "@x12i/memorix-retrieval";
9
+
10
+ const { client, cataloxBound, appId } = await createMemorixRetrievalStackFromEnv({
11
+ cataloxContext: { superAdmin: true, actor: { type: "service", id: "my-api" } },
12
+ });
13
+ ```
14
+
15
+ Uses `createCataloxFromEnv` + `createCataloxAdapterFromBound` + `createMemorixRetrievalFromEnv` in one call.
16
+
17
+ ## Entity discovery
18
+
19
+ - `discoverMemorixEntities(client)` — lists `memorix-entity-descriptors` via Catalox, or `MEMORIX_ENTITY_NAMES` env override.
20
+ - `buildMemorixEntityGraph(client)` — discovery + per–content-type counts + **relations from entity descriptors**.
21
+ - `buildMemorixEntitySlices(client, entityName)` — slice counts for canvas drill-down.
22
+
23
+ ## Raw collection reads (Explorer compatibility)
24
+
25
+ - `countMemorixEntityContentTypeDocuments`
26
+ - `listMemorixEntityContentTypeDocuments`
27
+ - `getMemorixEntityContentTypeDocument`
28
+
29
+ Resolve collection names and DB targets from entity descriptors.
30
+
31
+ ## Scoped workspace
32
+
33
+ - `listScopedWorkspaceEntityTypes` / `listScopedWorkspaceDocuments` / `countScopedWorkspaceDocuments`
34
+ - Requires `TARGET_NAMESPACE` (or `MEMORIX_SCOPED_NAMESPACE` / `XMEMORY_NAMESPACE`).
35
+
36
+ ## Health
37
+
38
+ - `getMemorixRetrievalHealth(client)` — Mongo ping + discovery sample.
39
+
40
+ ## Catalox cleanliness
41
+
42
+ Only three native catalogs. Relations belong on **entity descriptors** (`relations` field), not ad hoc `memorix-entities` reference rows.
43
+
44
+ Future additions (not required for Explorer v1):
45
+
46
+ - `listMemorixListDescriptorIds` for UI list-picker
47
+ - Descriptor-driven scoped lists replacing raw cross-entity pagination
48
+ - Optional `memorix-entity-relations` catalog if you need edges that are not tied to a single source entity descriptor
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@x12i/memorix-retrieval",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "description": "Descriptor-driven Memorix retrieval layer for lists, items, and content objects",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",