@powerhousedao/vetra 5.0.0-staging.20 → 5.0.0-staging.22

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 (45) hide show
  1. package/dist/editors/hooks/useVetraDocument.d.ts.map +1 -1
  2. package/dist/editors/hooks/useVetraDocument.js +12 -6
  3. package/dist/editors/hooks/useVetraDocument.js.map +1 -1
  4. package/dist/processors/factory.d.ts.map +1 -1
  5. package/dist/processors/factory.js +2 -4
  6. package/dist/processors/factory.js.map +1 -1
  7. package/dist/processors/index.d.ts +1 -0
  8. package/dist/processors/index.d.ts.map +1 -1
  9. package/dist/processors/index.js +1 -0
  10. package/dist/processors/index.js.map +1 -1
  11. package/dist/processors/vetra-read-model/factory.d.ts +5 -0
  12. package/dist/processors/vetra-read-model/factory.d.ts.map +1 -0
  13. package/dist/processors/vetra-read-model/factory.js +23 -0
  14. package/dist/processors/vetra-read-model/factory.js.map +1 -0
  15. package/dist/processors/vetra-read-model/index.d.ts +10 -0
  16. package/dist/processors/vetra-read-model/index.d.ts.map +1 -0
  17. package/dist/processors/vetra-read-model/index.js +73 -0
  18. package/dist/processors/vetra-read-model/index.js.map +1 -0
  19. package/dist/processors/vetra-read-model/migrations.d.ts +4 -0
  20. package/dist/processors/vetra-read-model/migrations.d.ts.map +1 -0
  21. package/dist/processors/vetra-read-model/migrations.js +53 -0
  22. package/dist/processors/vetra-read-model/migrations.js.map +1 -0
  23. package/dist/processors/vetra-read-model/schema.d.ts +23 -0
  24. package/dist/processors/vetra-read-model/schema.d.ts.map +1 -0
  25. package/dist/processors/vetra-read-model/schema.js +2 -0
  26. package/dist/processors/vetra-read-model/schema.js.map +1 -0
  27. package/dist/style.css +3 -0
  28. package/dist/subgraphs/index.d.ts +1 -0
  29. package/dist/subgraphs/index.d.ts.map +1 -1
  30. package/dist/subgraphs/index.js +1 -0
  31. package/dist/subgraphs/index.js.map +1 -1
  32. package/dist/subgraphs/vetra-read-model/index.d.ts +8 -0
  33. package/dist/subgraphs/vetra-read-model/index.d.ts.map +1 -0
  34. package/dist/subgraphs/vetra-read-model/index.js +9 -0
  35. package/dist/subgraphs/vetra-read-model/index.js.map +1 -0
  36. package/dist/subgraphs/vetra-read-model/resolvers.d.ts +3 -0
  37. package/dist/subgraphs/vetra-read-model/resolvers.d.ts.map +1 -0
  38. package/dist/subgraphs/vetra-read-model/resolvers.js +36 -0
  39. package/dist/subgraphs/vetra-read-model/resolvers.js.map +1 -0
  40. package/dist/subgraphs/vetra-read-model/schema.d.ts +3 -0
  41. package/dist/subgraphs/vetra-read-model/schema.d.ts.map +1 -0
  42. package/dist/subgraphs/vetra-read-model/schema.js +25 -0
  43. package/dist/subgraphs/vetra-read-model/schema.js.map +1 -0
  44. package/dist/tsconfig.tsbuildinfo +1 -1
  45. package/package.json +14 -13
@@ -1 +1 @@
1
- {"version":3,"file":"useVetraDocument.d.ts","sourceRoot":"","sources":["../../../editors/hooks/useVetraDocument.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EAClB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,gDAAgD,CAAC;AACxD,OAAO,KAAK,EAEV,uBAAuB,EACxB,MAAM,iDAAiD,CAAC;AACzD,OAAO,KAAK,EAEV,sBAAsB,EACvB,MAAM,gDAAgD,CAAC;AACxD,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,8CAA8C,CAAC;AAEtD,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,6GAKzE;AAED,wBAAgB,4BAA4B,8GAG3C;AAED,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,oMAMtC;AAED,wBAAgB,iCAAiC,qMAGhD;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,uMAMtC;AAED,wBAAgB,kCAAkC,wMAGjD;AAED,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,oMAMtC;AAED,wBAAgB,iCAAiC,qMAGhD;AAED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,8LAK5E;AAED,wBAAgB,+BAA+B,+LAG9C"}
1
+ {"version":3,"file":"useVetraDocument.d.ts","sourceRoot":"","sources":["../../../editors/hooks/useVetraDocument.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EAClB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,gDAAgD,CAAC;AACxD,OAAO,KAAK,EAEV,uBAAuB,EACxB,MAAM,iDAAiD,CAAC;AACzD,OAAO,KAAK,EAEV,sBAAsB,EACvB,MAAM,gDAAgD,CAAC;AACxD,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,8CAA8C,CAAC;AAOtD,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,6GAKzE;AAED,wBAAgB,4BAA4B,8GAG3C;AAED,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,oMAMtC;AAED,wBAAgB,iCAAiC,qMAGhD;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,uMAMtC;AAED,wBAAgB,kCAAkC,wMAGjD;AAED,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,oMAMtC;AAED,wBAAgB,iCAAiC,qMAGhD;AAED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,8LAK5E;AAED,wBAAgB,+BAA+B,+LAQ9C"}
@@ -1,4 +1,9 @@
1
- import { useDocumentOfType, useSelectedDocumentId, } from "@powerhousedao/reactor-browser";
1
+ import { useDocumentOfType, useSelectedDocumentId, useSelectedDrive, } from "@powerhousedao/reactor-browser";
2
+ import { isFileNode } from "document-drive";
3
+ const VETRA_PACKAGE_DOCUMENT_TYPE = "powerhouse/package";
4
+ const DOCUMENT_EDITOR_DOCUMENT_TYPE = "powerhouse/document-editor";
5
+ const SUBGRAPH_MODULE_DOCUMENT_TYPE = "powerhouse/subgraph";
6
+ const PROCESSOR_MODULE_DOCUMENT_TYPE = "powerhouse/processor";
2
7
  export function useAppModuleDocument(documentId) {
3
8
  return useDocumentOfType(documentId, "powerhouse/app");
4
9
  }
@@ -7,31 +12,32 @@ export function useSelectedAppModuleDocument() {
7
12
  return useAppModuleDocument(documentId);
8
13
  }
9
14
  export function useDocumentEditorDocument(documentId) {
10
- return useDocumentOfType(documentId, "powerhouse/document-editor");
15
+ return useDocumentOfType(documentId, DOCUMENT_EDITOR_DOCUMENT_TYPE);
11
16
  }
12
17
  export function useSelectedDocumentEditorDocument() {
13
18
  const documentId = useSelectedDocumentId();
14
19
  return useDocumentEditorDocument(documentId);
15
20
  }
16
21
  export function useProcessorModuleDocument(documentId) {
17
- return useDocumentOfType(documentId, "powerhouse/processor");
22
+ return useDocumentOfType(documentId, PROCESSOR_MODULE_DOCUMENT_TYPE);
18
23
  }
19
24
  export function useSelectedProcessorModuleDocument() {
20
25
  const documentId = useSelectedDocumentId();
21
26
  return useProcessorModuleDocument(documentId);
22
27
  }
23
28
  export function useSubgraphModuleDocument(documentId) {
24
- return useDocumentOfType(documentId, "powerhouse/subgraph");
29
+ return useDocumentOfType(documentId, SUBGRAPH_MODULE_DOCUMENT_TYPE);
25
30
  }
26
31
  export function useSelectedSubgraphModuleDocument() {
27
32
  const documentId = useSelectedDocumentId();
28
33
  return useSubgraphModuleDocument(documentId);
29
34
  }
30
35
  export function useVetraPackageDocument(documentId) {
31
- return useDocumentOfType(documentId, "powerhouse/package");
36
+ return useDocumentOfType(documentId, VETRA_PACKAGE_DOCUMENT_TYPE);
32
37
  }
33
38
  export function useSelectedVetraPackageDocument() {
34
- const documentId = useSelectedDocumentId();
39
+ const [selectedDrive] = useSelectedDrive();
40
+ const documentId = selectedDrive?.state.global.nodes.find((node) => isFileNode(node) && node.documentType === VETRA_PACKAGE_DOCUMENT_TYPE)?.id;
35
41
  return useVetraPackageDocument(documentId);
36
42
  }
37
43
  //# sourceMappingURL=useVetraDocument.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useVetraDocument.js","sourceRoot":"","sources":["../../../editors/hooks/useVetraDocument.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,gCAAgC,CAAC;AAsBxC,MAAM,UAAU,oBAAoB,CAAC,UAAqC;IACxE,OAAO,iBAAiB,CACtB,UAAU,EACV,gBAAgB,CACjB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B;IAC1C,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAC3C,OAAO,oBAAoB,CAAC,UAAU,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,UAAqC;IAErC,OAAO,iBAAiB,CACtB,UAAU,EACV,4BAA4B,CAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC;IAC/C,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAC3C,OAAO,yBAAyB,CAAC,UAAU,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,UAAqC;IAErC,OAAO,iBAAiB,CACtB,UAAU,EACV,sBAAsB,CACvB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kCAAkC;IAChD,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAC3C,OAAO,0BAA0B,CAAC,UAAU,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,UAAqC;IAErC,OAAO,iBAAiB,CACtB,UAAU,EACV,qBAAqB,CACtB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC;IAC/C,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAC3C,OAAO,yBAAyB,CAAC,UAAU,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,UAAqC;IAC3E,OAAO,iBAAiB,CACtB,UAAU,EACV,oBAAoB,CACrB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B;IAC7C,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAC3C,OAAO,uBAAuB,CAAC,UAAU,CAAC,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"useVetraDocument.js","sourceRoot":"","sources":["../../../editors/hooks/useVetraDocument.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAsB5C,MAAM,2BAA2B,GAAG,oBAAoB,CAAC;AACzD,MAAM,6BAA6B,GAAG,4BAA4B,CAAC;AACnE,MAAM,6BAA6B,GAAG,qBAAqB,CAAC;AAC5D,MAAM,8BAA8B,GAAG,sBAAsB,CAAC;AAE9D,MAAM,UAAU,oBAAoB,CAAC,UAAqC;IACxE,OAAO,iBAAiB,CACtB,UAAU,EACV,gBAAgB,CACjB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B;IAC1C,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAC3C,OAAO,oBAAoB,CAAC,UAAU,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,UAAqC;IAErC,OAAO,iBAAiB,CACtB,UAAU,EACV,6BAA6B,CAC9B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC;IAC/C,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAC3C,OAAO,yBAAyB,CAAC,UAAU,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,UAAqC;IAErC,OAAO,iBAAiB,CACtB,UAAU,EACV,8BAA8B,CAC/B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kCAAkC;IAChD,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAC3C,OAAO,0BAA0B,CAAC,UAAU,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,UAAqC;IAErC,OAAO,iBAAiB,CACtB,UAAU,EACV,6BAA6B,CAC9B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC;IAC/C,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAC3C,OAAO,yBAAyB,CAAC,UAAU,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,UAAqC;IAC3E,OAAO,iBAAiB,CACtB,UAAU,EACV,2BAA2B,CAC5B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B;IAC7C,MAAM,CAAC,aAAa,CAAC,GAAG,gBAAgB,EAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CACvD,CAAC,IAAI,EAAE,EAAE,CACP,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,KAAK,2BAA2B,CACxE,EAAE,EAAE,CAAC;IAEN,OAAO,uBAAuB,CAAC,UAAU,CAAC,CAAC;AAC7C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../processors/factory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,oBAAoB,EAEpB,eAAe,EAChB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAKvD,eAAO,MAAM,gBAAgB,GAAI,QAAQ,oBAAoB,MAU7C,aAAa,gBAAgB,+BAU5C,CAAC"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../processors/factory.ts"],"names":[],"mappings":"AACA;;;GAGG;AAEH,OAAO,KAAK,EACV,oBAAoB,EAEpB,eAAe,EAChB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAKvD,eAAO,MAAM,gBAAgB,GAAI,QAAQ,oBAAoB,MAW7C,aAAa,gBAAgB,+BAU5C,CAAC"}
@@ -1,13 +1,11 @@
1
- /**
2
- * This file aggregates all processor factories
3
- * Auto-generated by codegen - DO NOT EDIT MANUALLY
4
- */
1
+ import { vetraReadModelProcessorFactory } from "./vetra-read-model/factory.js";
5
2
  // Import other processor factories here as they are generated
6
3
  import { codegenProcessorFactory } from "./codegen/factory.js";
7
4
  export const processorFactory = (module) => {
8
5
  // Initialize all processor factories once with the module
9
6
  const factories = [];
10
7
  // Add all processor factories
8
+ factories.push(vetraReadModelProcessorFactory(module));
11
9
  // Add other processors here as they are generated
12
10
  factories.push(codegenProcessorFactory(module));
13
11
  // Return the inner function that will be called for each drive
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../processors/factory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,8DAA8D;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAA4B,EAAE,EAAE;IAC/D,0DAA0D;IAC1D,MAAM,SAAS,GAA4B,EAAE,CAAC;IAE9C,8BAA8B;IAE9B,kDAAkD;IAClD,SAAS,CAAC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;IAEhD,+DAA+D;IAC/D,OAAO,KAAK,EAAE,WAA6B,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAsB,EAAE,CAAC;QAEzC,gDAAgD;QAChD,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;YAChC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../processors/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAa/E,8DAA8D;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAA4B,EAAE,EAAE;IAC/D,0DAA0D;IAC1D,MAAM,SAAS,GAA4B,EAAE,CAAC;IAE9C,8BAA8B;IAC9B,SAAS,CAAC,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAC,CAAC;IAEvD,kDAAkD;IAClD,SAAS,CAAC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;IAEhD,+DAA+D;IAC/D,OAAO,KAAK,EAAE,WAA6B,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAsB,EAAE,CAAC;QAEzC,gDAAgD;QAChD,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;YAChC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * as CodegenProcessor from "./codegen/index.js";
2
2
  export { codegenProcessorFactory } from "./codegen/factory.js";
3
3
  export { processorFactory } from "./factory.js";
4
+ export { VetraReadModelProcessor } from "./vetra-read-model/index.js";
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../processors/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,gBAAgB,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../processors/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,gBAAgB,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * as CodegenProcessor from "./codegen/index.js";
2
2
  export { codegenProcessorFactory } from "./codegen/factory.js";
3
3
  export { processorFactory } from "./factory.js";
4
+ export { VetraReadModelProcessor } from "./vetra-read-model/index.js";
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../processors/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,gBAAgB,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../processors/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,gBAAgB,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { type ProcessorRecord } from "document-drive";
2
+ import type { IProcessorHostModule } from "document-drive/processors/types";
3
+ import { type PHDocumentHeader } from "document-model";
4
+ export declare const vetraReadModelProcessorFactory: (module: IProcessorHostModule) => (driveHeader: PHDocumentHeader) => Promise<ProcessorRecord[]>;
5
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../processors/vetra-read-model/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvD,eAAO,MAAM,8BAA8B,GACxC,QAAQ,oBAAoB,MACtB,aAAa,gBAAgB,KAAG,OAAO,CAAC,eAAe,EAAE,CA0B/D,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { VetraReadModelProcessor } from "./index.js";
2
+ export const vetraReadModelProcessorFactory = (module) => async (driveHeader) => {
3
+ // Create a namespace for the processor and the provided drive id
4
+ const namespace = VetraReadModelProcessor.getNamespace(driveHeader.id);
5
+ // Create a namespaced db for the processor
6
+ const store = await module.relationalDb.createNamespace(namespace);
7
+ // Create a filter for the processor
8
+ const filter = {
9
+ branch: ["main"],
10
+ documentId: ["*"],
11
+ documentType: ["powerhouse/package"],
12
+ scope: ["global"],
13
+ };
14
+ // Create the processor
15
+ const processor = new VetraReadModelProcessor(namespace, filter, store);
16
+ return [
17
+ {
18
+ processor,
19
+ filter,
20
+ },
21
+ ];
22
+ };
23
+ //# sourceMappingURL=factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../processors/vetra-read-model/factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,CAAC,MAAM,8BAA8B,GACzC,CAAC,MAA4B,EAAE,EAAE,CACjC,KAAK,EAAE,WAA6B,EAA8B,EAAE;IAClE,iEAAiE;IACjE,MAAM,SAAS,GAAG,uBAAuB,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAEvE,2CAA2C;IAC3C,MAAM,KAAK,GACT,MAAM,MAAM,CAAC,YAAY,CAAC,eAAe,CACvC,SAAS,CACV,CAAC;IAEJ,oCAAoC;IACpC,MAAM,MAAM,GAAgC;QAC1C,MAAM,EAAE,CAAC,MAAM,CAAC;QAChB,UAAU,EAAE,CAAC,GAAG,CAAC;QACjB,YAAY,EAAE,CAAC,oBAAoB,CAAC;QACpC,KAAK,EAAE,CAAC,QAAQ,CAAC;KAClB,CAAC;IAEF,uBAAuB;IACvB,MAAM,SAAS,GAAG,IAAI,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACxE,OAAO;QACL;YACE,SAAS;YACT,MAAM;SACP;KACF,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { type InternalTransmitterUpdate } from "document-drive";
2
+ import { RelationalDbProcessor } from "document-drive/processors/relational";
3
+ import { type DB } from "./schema.js";
4
+ export declare class VetraReadModelProcessor extends RelationalDbProcessor<DB> {
5
+ static getNamespace(driveId: string): string;
6
+ initAndUpgrade(): Promise<void>;
7
+ onStrands(strands: InternalTransmitterUpdate[]): Promise<void>;
8
+ onDisconnect(): Promise<void>;
9
+ }
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../processors/vetra-read-model/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAG7E,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,aAAa,CAAC;AAItC,qBAAa,uBAAwB,SAAQ,qBAAqB,CAAC,EAAE,CAAC;WACpD,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAMtC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B,SAAS,CACtB,OAAO,EAAE,yBAAyB,EAAE,GACnC,OAAO,CAAC,IAAI,CAAC;IAuEV,YAAY;CACnB"}
@@ -0,0 +1,73 @@
1
+ import { RelationalDbProcessor } from "document-drive/processors/relational";
2
+ import { up } from "./migrations.js";
3
+ export class VetraReadModelProcessor extends RelationalDbProcessor {
4
+ static getNamespace(driveId) {
5
+ // Default namespace: `${this.name}_${driveId.replaceAll("-", "_")}`
6
+ // we keep all vetra packages in the same namespace even if they are stored in different drives
7
+ return super.getNamespace("vetra-packages");
8
+ }
9
+ async initAndUpgrade() {
10
+ await up(this.relationalDb);
11
+ }
12
+ async onStrands(strands) {
13
+ if (strands.length === 0) {
14
+ return;
15
+ }
16
+ for (const strand of strands) {
17
+ if (strand.operations.length === 0) {
18
+ continue;
19
+ }
20
+ // Only process VetraPackage documents
21
+ if (strand.documentType !== "powerhouse/package") {
22
+ continue;
23
+ }
24
+ // Get the last operation to extract the most recent state
25
+ const lastOperation = strand.operations[strand.operations.length - 1];
26
+ if (!lastOperation)
27
+ continue;
28
+ // Extract VetraPackage state fields with proper typing
29
+ const state = strand.state;
30
+ // Helper to safely get string values
31
+ const getString = (val) => typeof val === "string" ? val : null;
32
+ const now = new Date();
33
+ const operationTimestamp = new Date(parseInt(lastOperation.timestampUtcMs, 10));
34
+ await this.relationalDb
35
+ .insertInto("vetra_package")
36
+ .values({
37
+ document_id: strand.documentId,
38
+ // VetraPackage state fields
39
+ name: getString(state?.name),
40
+ description: getString(state?.description),
41
+ category: getString(state?.category),
42
+ author_name: getString(state?.author?.name),
43
+ author_website: getString(state?.author?.website),
44
+ keywords: state?.keywords ? JSON.stringify(state.keywords) : null,
45
+ github_url: getString(state?.githubUrl),
46
+ npm_url: getString(state?.npmUrl),
47
+ // Document metadata
48
+ last_operation_index: lastOperation.index,
49
+ last_operation_hash: lastOperation.hash,
50
+ last_operation_timestamp: operationTimestamp,
51
+ created_at: now,
52
+ updated_at: now,
53
+ })
54
+ .onConflict((oc) => oc.column("document_id").doUpdateSet({
55
+ name: getString(state?.name),
56
+ description: getString(state?.description),
57
+ category: getString(state?.category),
58
+ author_name: getString(state?.author?.name),
59
+ author_website: getString(state?.author?.website),
60
+ keywords: state?.keywords ? JSON.stringify(state.keywords) : null,
61
+ github_url: getString(state?.githubUrl),
62
+ npm_url: getString(state?.npmUrl),
63
+ last_operation_index: lastOperation.index,
64
+ last_operation_hash: lastOperation.hash,
65
+ last_operation_timestamp: operationTimestamp,
66
+ updated_at: now,
67
+ }))
68
+ .execute();
69
+ }
70
+ }
71
+ async onDisconnect() { }
72
+ }
73
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../processors/vetra-read-model/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { type IRelationalDb } from "document-drive";
2
+ export declare function up(db: IRelationalDb<any>): Promise<void>;
3
+ export declare function down(db: IRelationalDb<any>): Promise<void>;
4
+ //# sourceMappingURL=migrations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../processors/vetra-read-model/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,wBAAsB,EAAE,CAAC,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAiD9D;AAED,wBAAsB,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAWhE"}
@@ -0,0 +1,53 @@
1
+ export async function up(db) {
2
+ // Create vetra_package table to store VetraPackage document state
3
+ await db.schema
4
+ .createTable("vetra_package")
5
+ .addColumn("document_id", "varchar(255)", (col) => col.primaryKey()) // VetraPackage state fields
6
+ .addColumn("name", "varchar(255)")
7
+ .addColumn("description", "text")
8
+ .addColumn("category", "varchar(255)")
9
+ .addColumn("author_name", "varchar(255)")
10
+ .addColumn("author_website", "varchar(512)")
11
+ .addColumn("keywords", "text") // JSON array of {id, label}
12
+ .addColumn("github_url", "varchar(512)")
13
+ .addColumn("npm_url", "varchar(512)")
14
+ // Document metadata
15
+ .addColumn("last_operation_index", "integer", (col) => col.notNull())
16
+ .addColumn("last_operation_hash", "varchar(255)", (col) => col.notNull())
17
+ .addColumn("last_operation_timestamp", "timestamptz", (col) => col.notNull())
18
+ .addColumn("created_at", "timestamptz", (col) => col.notNull().defaultTo("now()"))
19
+ .addColumn("updated_at", "timestamptz", (col) => col.notNull().defaultTo("now()"))
20
+ .ifNotExists()
21
+ .execute();
22
+ // Create indexes for common queries
23
+ await db.schema
24
+ .createIndex("idx_vetra_package_document_id")
25
+ .on("vetra_package")
26
+ .column("document_id")
27
+ .ifNotExists()
28
+ .execute();
29
+ await db.schema
30
+ .createIndex("idx_vetra_package_name")
31
+ .on("vetra_package")
32
+ .column("name")
33
+ .ifNotExists()
34
+ .execute();
35
+ await db.schema
36
+ .createIndex("idx_vetra_package_category")
37
+ .on("vetra_package")
38
+ .column("category")
39
+ .ifNotExists()
40
+ .execute();
41
+ }
42
+ export async function down(db) {
43
+ // Drop indexes first
44
+ await db.schema.dropIndex("idx_vetra_package_category").ifExists().execute();
45
+ await db.schema.dropIndex("idx_vetra_package_name").ifExists().execute();
46
+ await db.schema
47
+ .dropIndex("idx_vetra_package_document_id")
48
+ .ifExists()
49
+ .execute();
50
+ // Drop table
51
+ await db.schema.dropTable("vetra_package").ifExists().execute();
52
+ }
53
+ //# sourceMappingURL=migrations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../processors/vetra-read-model/migrations.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC,EAAsB;IAC7C,kEAAkE;IAClE,MAAM,EAAE,CAAC,MAAM;SACZ,WAAW,CAAC,eAAe,CAAC;SAC5B,SAAS,CAAC,aAAa,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,4BAA4B;SAChG,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC;SACjC,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;SAChC,SAAS,CAAC,UAAU,EAAE,cAAc,CAAC;SACrC,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC;SACxC,SAAS,CAAC,gBAAgB,EAAE,cAAc,CAAC;SAC3C,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,4BAA4B;SAC1D,SAAS,CAAC,YAAY,EAAE,cAAc,CAAC;SACvC,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC;QACrC,oBAAoB;SACnB,SAAS,CAAC,sBAAsB,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACpE,SAAS,CAAC,qBAAqB,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACxE,SAAS,CAAC,0BAA0B,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAC5D,GAAG,CAAC,OAAO,EAAE,CACd;SACA,SAAS,CAAC,YAAY,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAC9C,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CACjC;SACA,SAAS,CAAC,YAAY,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAC9C,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CACjC;SACA,WAAW,EAAE;SACb,OAAO,EAAE,CAAC;IAEb,oCAAoC;IACpC,MAAM,EAAE,CAAC,MAAM;SACZ,WAAW,CAAC,+BAA+B,CAAC;SAC5C,EAAE,CAAC,eAAe,CAAC;SACnB,MAAM,CAAC,aAAa,CAAC;SACrB,WAAW,EAAE;SACb,OAAO,EAAE,CAAC;IAEb,MAAM,EAAE,CAAC,MAAM;SACZ,WAAW,CAAC,wBAAwB,CAAC;SACrC,EAAE,CAAC,eAAe,CAAC;SACnB,MAAM,CAAC,MAAM,CAAC;SACd,WAAW,EAAE;SACb,OAAO,EAAE,CAAC;IAEb,MAAM,EAAE,CAAC,MAAM;SACZ,WAAW,CAAC,4BAA4B,CAAC;SACzC,EAAE,CAAC,eAAe,CAAC;SACnB,MAAM,CAAC,UAAU,CAAC;SAClB,WAAW,EAAE;SACb,OAAO,EAAE,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAsB;IAC/C,qBAAqB;IACrB,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC;IAC7E,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC;IACzE,MAAM,EAAE,CAAC,MAAM;SACZ,SAAS,CAAC,+BAA+B,CAAC;SAC1C,QAAQ,EAAE;SACV,OAAO,EAAE,CAAC;IAEb,aAAa;IACb,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC;AAClE,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { ColumnType } from "kysely";
2
+ export type Generated<T> = T extends ColumnType<infer S, infer I, infer U> ? ColumnType<S, I | undefined, U> : ColumnType<T, T | undefined, T>;
3
+ export type Timestamp = ColumnType<Date, Date | string, Date | string>;
4
+ export interface VetraPackage {
5
+ author_name: string | null;
6
+ author_website: string | null;
7
+ category: string | null;
8
+ created_at: Generated<Timestamp>;
9
+ description: string | null;
10
+ document_id: string;
11
+ github_url: string | null;
12
+ keywords: string | null;
13
+ last_operation_hash: string;
14
+ last_operation_index: number;
15
+ last_operation_timestamp: Timestamp;
16
+ name: string | null;
17
+ npm_url: string | null;
18
+ updated_at: Generated<Timestamp>;
19
+ }
20
+ export interface DB {
21
+ vetra_package: VetraPackage;
22
+ }
23
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../processors/vetra-read-model/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEzC,MAAM,MAAM,SAAS,CAAC,CAAC,IACrB,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAC3C,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC,GAC/B,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC;AAEtC,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,EAAE,IAAI,GAAG,MAAM,CAAC,CAAC;AAEvE,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,wBAAwB,EAAE,SAAS,CAAC;IACpC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,EAAE;IACjB,aAAa,EAAE,YAAY,CAAC;CAC7B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../processors/vetra-read-model/schema.ts"],"names":[],"mappings":""}
package/dist/style.css CHANGED
@@ -309,6 +309,9 @@
309
309
  .inline-flex {
310
310
  display: inline-flex;
311
311
  }
312
+ .table {
313
+ display: table;
314
+ }
312
315
  .h-4 {
313
316
  height: calc(var(--spacing) * 4);
314
317
  }
@@ -3,4 +3,5 @@ export * as VetraPackageSubgraph from "./vetra-package/index.js";
3
3
  export * as SubgraphModuleSubgraph from "./subgraph-module/index.js";
4
4
  export * as ProcessorModuleSubgraph from "./processor-module/index.js";
5
5
  export * as AppModuleSubgraph from "./app-module/index.js";
6
+ export * as VetraReadModelSubgraph from "./vetra-read-model/index.js";
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../subgraphs/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,sBAAsB,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,oBAAoB,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,sBAAsB,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,uBAAuB,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,iBAAiB,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../subgraphs/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,sBAAsB,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,oBAAoB,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,sBAAsB,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,uBAAuB,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,iBAAiB,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,sBAAsB,MAAM,6BAA6B,CAAC"}
@@ -3,4 +3,5 @@ export * as VetraPackageSubgraph from "./vetra-package/index.js";
3
3
  export * as SubgraphModuleSubgraph from "./subgraph-module/index.js";
4
4
  export * as ProcessorModuleSubgraph from "./processor-module/index.js";
5
5
  export * as AppModuleSubgraph from "./app-module/index.js";
6
+ export * as VetraReadModelSubgraph from "./vetra-read-model/index.js";
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../subgraphs/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,sBAAsB,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,oBAAoB,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,sBAAsB,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,uBAAuB,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,iBAAiB,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../subgraphs/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,sBAAsB,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,oBAAoB,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,sBAAsB,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,uBAAuB,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,iBAAiB,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,sBAAsB,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { Subgraph } from "@powerhousedao/reactor-api";
2
+ import type { DocumentNode } from "graphql";
3
+ export declare class VetraReadModelSubgraph extends Subgraph {
4
+ name: string;
5
+ typeDefs: DocumentNode;
6
+ resolvers: Record<string, unknown>;
7
+ }
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../subgraphs/vetra-read-model/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5C,qBAAa,sBAAuB,SAAQ,QAAQ;IAClD,IAAI,SAAsB;IAC1B,QAAQ,EAAE,YAAY,CAAU;IAChC,SAAS,0BAAsB;CAChC"}
@@ -0,0 +1,9 @@
1
+ import { Subgraph } from "@powerhousedao/reactor-api";
2
+ import { getResolvers } from "./resolvers.js";
3
+ import { schema } from "./schema.js";
4
+ export class VetraReadModelSubgraph extends Subgraph {
5
+ name = "vetra-read-model";
6
+ typeDefs = schema;
7
+ resolvers = getResolvers(this);
8
+ }
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../subgraphs/vetra-read-model/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,OAAO,sBAAuB,SAAQ,QAAQ;IAClD,IAAI,GAAG,kBAAkB,CAAC;IAC1B,QAAQ,GAAiB,MAAM,CAAC;IAChC,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;CAChC"}
@@ -0,0 +1,3 @@
1
+ import type { ISubgraph } from "@powerhousedao/reactor-api";
2
+ export declare const getResolvers: (subgraph: ISubgraph) => Record<string, unknown>;
3
+ //# sourceMappingURL=resolvers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../../subgraphs/vetra-read-model/resolvers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAI5D,eAAO,MAAM,YAAY,GAAI,UAAU,SAAS,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CA8CxE,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { VetraReadModelProcessor } from "../../processors/vetra-read-model/index.js";
2
+ export const getResolvers = (subgraph) => {
3
+ const reactor = subgraph.reactor;
4
+ const db = subgraph.relationalDb;
5
+ return {
6
+ Query: {
7
+ vetraPackages: async (parent, args) => {
8
+ const { search, documentId_in } = args;
9
+ const sortOrder = args.sortOrder || "asc";
10
+ let query = VetraReadModelProcessor.query("vetra-packages", db)
11
+ .selectFrom("vetra_package")
12
+ .selectAll();
13
+ if (search) {
14
+ query = query.where("name", "ilike", `%${search}%`);
15
+ }
16
+ if (documentId_in && documentId_in.length > 0) {
17
+ query = query.where("document_id", "in", documentId_in);
18
+ }
19
+ query = query.orderBy("name", sortOrder);
20
+ return (await query.execute()).map((pkg) => ({
21
+ ...pkg,
22
+ documentId: pkg.document_id,
23
+ name: pkg.name,
24
+ description: pkg.description,
25
+ category: pkg.category,
26
+ authorName: pkg.author_name,
27
+ authorWebsite: pkg.author_website,
28
+ githubUrl: pkg.github_url,
29
+ npmUrl: pkg.npm_url,
30
+ keywords: pkg.keywords,
31
+ }));
32
+ },
33
+ },
34
+ };
35
+ };
36
+ //# sourceMappingURL=resolvers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolvers.js","sourceRoot":"","sources":["../../../subgraphs/vetra-read-model/resolvers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAGrF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAmB,EAA2B,EAAE;IAC3E,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,MAAM,EAAE,GAAG,QAAQ,CAAC,YAAY,CAAC;IAEjC,OAAO;QACL,KAAK,EAAE;YACL,aAAa,EAAE,KAAK,EAClB,MAAe,EACf,IAIC,EACD,EAAE;gBACF,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;gBACvC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC;gBAE1C,IAAI,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAK,gBAAgB,EAAE,EAAE,CAAC;qBAChE,UAAU,CAAC,eAAe,CAAC;qBAC3B,SAAS,EAAE,CAAC;gBAEf,IAAI,MAAM,EAAE,CAAC;oBACX,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,MAAM,GAAG,CAAC,CAAC;gBACtD,CAAC;gBAED,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9C,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;gBAC1D,CAAC;gBAED,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBAEzC,OAAO,CAAC,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBAC3C,GAAG,GAAG;oBACN,UAAU,EAAE,GAAG,CAAC,WAAW;oBAC3B,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,WAAW,EAAE,GAAG,CAAC,WAAW;oBAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,UAAU,EAAE,GAAG,CAAC,WAAW;oBAC3B,aAAa,EAAE,GAAG,CAAC,cAAc;oBACjC,SAAS,EAAE,GAAG,CAAC,UAAU;oBACzB,MAAM,EAAE,GAAG,CAAC,OAAO;oBACnB,QAAQ,EAAE,GAAG,CAAC,QAAQ;iBACvB,CAAC,CAAC,CAAC;YACN,CAAC;SACF;KACF,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DocumentNode } from "graphql";
2
+ export declare const schema: DocumentNode;
3
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../subgraphs/vetra-read-model/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5C,eAAO,MAAM,MAAM,EAAE,YAsBpB,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { gql } from "graphql-tag";
2
+ export const schema = gql `
3
+ """
4
+ Subgraph definition
5
+ """
6
+ type VetraPackageItem {
7
+ documentId: String!
8
+ name: String!
9
+ description: String!
10
+ category: String!
11
+ authorName: String!
12
+ authorWebsite: String!
13
+ githubUrl: String!
14
+ npmUrl: String!
15
+ }
16
+
17
+ type Query {
18
+ vetraPackages(
19
+ search: String
20
+ sortOrder: String
21
+ documentId_in: [PHID!]
22
+ ): [VetraPackageItem!]!
23
+ }
24
+ `;
25
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../subgraphs/vetra-read-model/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,MAAM,CAAC,MAAM,MAAM,GAAiB,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;CAsBtC,CAAC"}