@powerhousedao/codegen 4.1.0-dev.9 → 4.1.0-dev.90
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 +0 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/index.js +10 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/resolvers.esm.t +17 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/schema.esm.t +16 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/documentModel.esm.t +2 -2
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/index.esm.t +8 -2
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/index.js +69 -54
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/ph-factories.esm.t +93 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/reducer.esm.t +9 -4
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/rootIndex.esm.t +6 -7
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/types.esm.t +20 -8
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/utils.esm.t +19 -26
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/creators.esm.t +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/customTest.esm.t +2 -2
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/error.esm.t +6 -10
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.js +52 -27
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/index.js +21 -20
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/resolvers.esm.t +64 -51
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/schema.esm.t +4 -10
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/CreateDocument.esm.t +39 -28
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/DriveExplorer.esm.t +138 -223
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/FolderTree.esm.t +95 -72
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/config.esm.t +10 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/editor.esm.t +7 -71
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/index.esm.t +5 -10
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/index.js +12 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/editor.esm.t +103 -18
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/hooks.esm.t +16 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.esm.t +5 -12
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.js +28 -15
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-import-script/index.js +8 -10
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/factory.esm.t +5 -4
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.esm.t +5 -9
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.js +11 -15
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.root.inject.esm.t +12 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/lib.esm.t +8 -6
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/lib.inject_call.esm.t +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/lib.inject_import.esm.t +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/factory.esm.t +6 -5
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.esm.t +6 -13
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.js +11 -15
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.root.inject.esm.t +12 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/lib.esm.t +8 -9
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/lib.inject_call.esm.t +2 -2
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/lib.inject_import.esm.t +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/migrations.esm.t +2 -2
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/schema.esm.t +10 -2
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-subgraph/index.esm.t +5 -36
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-subgraph/index.js +9 -11
- package/dist/src/codegen/generate.d.ts +33 -0
- package/dist/src/codegen/generate.d.ts.map +1 -0
- package/dist/src/codegen/generate.js +202 -0
- package/dist/src/codegen/generate.js.map +1 -0
- package/dist/src/codegen/graphql.d.ts +2 -2
- package/dist/src/codegen/graphql.d.ts.map +1 -1
- package/dist/src/codegen/graphql.js +1 -1
- package/dist/src/codegen/graphql.js.map +1 -1
- package/dist/src/codegen/hygen.d.ts +18 -11
- package/dist/src/codegen/hygen.d.ts.map +1 -1
- package/dist/src/codegen/hygen.js +57 -21
- package/dist/src/codegen/hygen.js.map +1 -1
- package/dist/src/codegen/index.d.ts +6 -32
- package/dist/src/codegen/index.d.ts.map +1 -1
- package/dist/src/codegen/index.js +6 -182
- package/dist/src/codegen/index.js.map +1 -1
- package/dist/src/codegen/types.d.ts +9 -0
- package/dist/src/codegen/types.d.ts.map +1 -0
- package/dist/src/codegen/types.js +2 -0
- package/dist/src/codegen/types.js.map +1 -0
- package/dist/src/codegen/utils.d.ts +5 -2
- package/dist/src/codegen/utils.d.ts.map +1 -1
- package/dist/src/codegen/utils.js +42 -4
- package/dist/src/codegen/utils.js.map +1 -1
- package/dist/src/create-lib/create-project.d.ts.map +1 -1
- package/dist/src/create-lib/create-project.js +17 -2
- package/dist/src/create-lib/create-project.js.map +1 -1
- package/dist/src/index.d.ts +5 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +5 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/ts-morph-generator/core/FileGenerator.d.ts +2 -3
- package/dist/src/ts-morph-generator/core/FileGenerator.d.ts.map +1 -1
- package/dist/src/ts-morph-generator/core/FileGenerator.js.map +1 -1
- package/dist/src/ts-morph-generator/core/GenerationContext.d.ts +18 -8
- package/dist/src/ts-morph-generator/core/GenerationContext.d.ts.map +1 -1
- package/dist/src/ts-morph-generator/core/ReducerGenerator.d.ts +12 -0
- package/dist/src/ts-morph-generator/core/ReducerGenerator.d.ts.map +1 -0
- package/dist/src/ts-morph-generator/core/ReducerGenerator.js +140 -0
- package/dist/src/ts-morph-generator/core/ReducerGenerator.js.map +1 -0
- package/dist/src/ts-morph-generator/core/TSMorphCodeGenerator.d.ts +4 -3
- package/dist/src/ts-morph-generator/core/TSMorphCodeGenerator.d.ts.map +1 -1
- package/dist/src/ts-morph-generator/core/TSMorphCodeGenerator.js +11 -10
- package/dist/src/ts-morph-generator/core/TSMorphCodeGenerator.js.map +1 -1
- package/dist/src/ts-morph-generator/index.d.ts +2 -2
- package/dist/src/ts-morph-generator/index.d.ts.map +1 -1
- package/dist/src/ts-morph-generator/index.js +2 -2
- package/dist/src/ts-morph-generator/index.js.map +1 -1
- package/dist/src/ts-morph-generator/utilities/DirectoryManager.d.ts +2 -2
- package/dist/src/ts-morph-generator/utilities/DirectoryManager.d.ts.map +1 -1
- package/dist/src/ts-morph-generator/utilities/ImportManager.d.ts +1 -1
- package/dist/src/ts-morph-generator/utilities/ImportManager.d.ts.map +1 -1
- package/dist/src/utils/index.d.ts +0 -1
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +0 -1
- package/dist/src/utils/index.js.map +1 -1
- package/dist/src/utils/validation.d.ts +6 -6
- package/dist/src/utils/validation.d.ts.map +1 -1
- package/dist/src/utils/validation.js +2 -2
- package/dist/src/utils/validation.js.map +1 -1
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/package.json +25 -27
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/index.d.ts +0 -25
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/index.d.ts.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/index.js.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/object.esm.t +0 -49
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.d.ts +0 -23
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.d.ts.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.js.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/object.esm.t +0 -37
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/index.d.ts +0 -22
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/index.d.ts.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/index.js.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/EditorContainer.esm.t +0 -124
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/FileItemsGrid.esm.t +0 -44
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/FolderItemsGrid.esm.t +0 -96
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/hooks/useSelectedFolderChildren.esm.t +0 -35
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/hooks/useTransformedNodes.esm.t +0 -35
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/types/css.d.esm.t +0 -8
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.d.ts +0 -20
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.d.ts.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.js.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-import-script/index.d.ts +0 -14
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-import-script/index.d.ts.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-import-script/index.js.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.d.ts +0 -20
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.d.ts.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.js.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.d.ts +0 -20
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.d.ts.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.js.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-subgraph/index.d.ts +0 -16
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-subgraph/index.d.ts.map +0 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-subgraph/index.js.map +0 -1
- package/dist/src/ts-morph-generator/core/index.d.ts +0 -4
- package/dist/src/ts-morph-generator/core/index.d.ts.map +0 -1
- package/dist/src/ts-morph-generator/core/index.js +0 -4
- package/dist/src/ts-morph-generator/core/index.js.map +0 -1
- package/dist/src/ts-morph-generator/file-generators/ReducerGenerator.d.ts +0 -9
- package/dist/src/ts-morph-generator/file-generators/ReducerGenerator.d.ts.map +0 -1
- package/dist/src/ts-morph-generator/file-generators/ReducerGenerator.js +0 -69
- package/dist/src/ts-morph-generator/file-generators/ReducerGenerator.js.map +0 -1
- package/dist/src/ts-morph-generator/file-generators/index.d.ts +0 -2
- package/dist/src/ts-morph-generator/file-generators/index.d.ts.map +0 -1
- package/dist/src/ts-morph-generator/file-generators/index.js +0 -2
- package/dist/src/ts-morph-generator/file-generators/index.js.map +0 -1
- package/dist/src/utils/package-manager.d.ts +0 -5
- package/dist/src/utils/package-manager.d.ts.map +0 -1
- package/dist/src/utils/package-manager.js +0 -17
- package/dist/src/utils/package-manager.js.map +0 -1
- package/dist/tsconfig.hygen.tsbuildinfo +0 -1
|
@@ -2,25 +2,110 @@
|
|
|
2
2
|
to: "<%= rootDir %>/<%= h.changeCase.param(name) %>/editor.tsx"
|
|
3
3
|
unless_exists: true
|
|
4
4
|
---
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
import { DocumentToolbar } from "@powerhousedao/design-system";
|
|
6
|
+
import {
|
|
7
|
+
Button,
|
|
8
|
+
Form,
|
|
9
|
+
FormLabel,
|
|
10
|
+
StringField,
|
|
11
|
+
} from "@powerhousedao/document-engineering";
|
|
12
|
+
import {
|
|
13
|
+
setSelectedNode,
|
|
14
|
+
useParentFolderForSelectedNode,
|
|
15
|
+
} from "@powerhousedao/reactor-browser";
|
|
16
|
+
<% if(!documentType){ %>import { useSelectedDocument } from "@powerhousedao/reactor-browser";<% } else { %>import { useSelected<%= documentType.name %>Document %>} from "../hooks/use<%= documentType.name %>Document%>.js";<% } %>
|
|
17
|
+
import { setName } from "document-model";<% if(documentType) { %>
|
|
18
|
+
import { actions } from "<%= documentType.importPath %>";<% } %>
|
|
10
19
|
|
|
11
|
-
export
|
|
20
|
+
export function Editor() {
|
|
21
|
+
const [document, dispatch] = <% if(documentType) { %>useSelected<%= documentType.name %>Document()<% } else { %>useSelectedDocument()<% } %>;
|
|
22
|
+
|
|
23
|
+
// Get the parent folder node for the currently selected node
|
|
24
|
+
const parentFolder = useParentFolderForSelectedNode();
|
|
12
25
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
26
|
+
<% if(!documentType){ %>
|
|
27
|
+
if (!document) {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
<% } %>
|
|
31
|
+
function handleSetName(values: { name: string }) {
|
|
32
|
+
if (values.name) {
|
|
33
|
+
dispatch(setName(values.name));
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// Set the selected node to the parent folder node (close the editor)
|
|
38
|
+
function handleClose() {
|
|
39
|
+
setSelectedNode(parentFolder?.id);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return (
|
|
43
|
+
<div>
|
|
44
|
+
<DocumentToolbar document={document} onClose={handleClose} />
|
|
45
|
+
<div className="ph-default-styles py-10 text-center">
|
|
46
|
+
<div className="inline-flex flex-col gap-10 text-start">
|
|
47
|
+
{/* Edit document name form */}
|
|
48
|
+
<section className="flex justify-between">
|
|
49
|
+
<h1 className="text-start">{document.header.name}</h1>
|
|
50
|
+
<div className="flex flex-col space-y-2">
|
|
51
|
+
<Form
|
|
52
|
+
onSubmit={handleSetName}
|
|
53
|
+
defaultValues={{ name: document.header.name }}
|
|
54
|
+
className="flex flex-col gap-3 pt-2"
|
|
55
|
+
>
|
|
56
|
+
<div className="flex items-end gap-3">
|
|
57
|
+
<div>
|
|
58
|
+
<FormLabel htmlFor="name">
|
|
59
|
+
<b className="mb-1">Change document name</b>
|
|
60
|
+
</FormLabel>
|
|
61
|
+
<StringField
|
|
62
|
+
name="name"
|
|
63
|
+
placeholder="Enter document name"
|
|
64
|
+
className="mt-1"
|
|
65
|
+
/>
|
|
66
|
+
</div>
|
|
67
|
+
<Button type="submit">Edit</Button>
|
|
68
|
+
</div>
|
|
69
|
+
</Form>
|
|
23
70
|
</div>
|
|
71
|
+
</section>
|
|
72
|
+
|
|
73
|
+
{/* Document metadata */}
|
|
74
|
+
<section>
|
|
75
|
+
<ul className="grid grid-cols-2 gap-x-4 gap-y-1 text-gray-700">
|
|
76
|
+
<li>
|
|
77
|
+
<b className="mr-1">Id:</b>
|
|
78
|
+
{document.header.id}
|
|
79
|
+
</li>
|
|
80
|
+
<li>
|
|
81
|
+
<b className="mr-1">Created:</b>
|
|
82
|
+
{new Date(document.header.createdAtUtcIso).toLocaleString()}
|
|
83
|
+
</li>
|
|
84
|
+
<li>
|
|
85
|
+
<b className="mr-1">Type:</b>
|
|
86
|
+
{document.header.documentType}
|
|
87
|
+
</li>
|
|
88
|
+
<li>
|
|
89
|
+
<b className="mr-1">Last Modified:</b>
|
|
90
|
+
{new Date(
|
|
91
|
+
document.header.lastModifiedAtUtcIso,
|
|
92
|
+
).toLocaleString()}
|
|
93
|
+
</li>
|
|
94
|
+
</ul>
|
|
95
|
+
</section>
|
|
96
|
+
|
|
97
|
+
{/* Document state */}
|
|
98
|
+
<section className="inline-block">
|
|
99
|
+
<h2 className="mb-4">Document state</h2>
|
|
100
|
+
<textarea
|
|
101
|
+
rows={10}
|
|
102
|
+
readOnly
|
|
103
|
+
value={JSON.stringify(document.state, null, 2)}
|
|
104
|
+
className="font-mono"
|
|
105
|
+
></textarea>
|
|
106
|
+
</section>
|
|
24
107
|
</div>
|
|
25
|
-
|
|
26
|
-
|
|
108
|
+
</div>
|
|
109
|
+
</div>
|
|
110
|
+
);
|
|
111
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
to: "<%= documentType ? `${rootDir}/hooks/use${h.changeCase.pascal(documentType.name)}Document.ts` : null %>"
|
|
3
|
+
unless_exists: true
|
|
4
|
+
---
|
|
5
|
+
<% if (documentType) { %>
|
|
6
|
+
import { useDocumentOfType, useSelectedDocumentOfType } from "@powerhousedao/reactor-browser";
|
|
7
|
+
import type { <%= documentType.name %>Action, <%= documentType.name %>Document } from "<%= documentType.importPath %>";
|
|
8
|
+
|
|
9
|
+
export function use<%= documentType.name %>Document(documentId: string | null | undefined) {
|
|
10
|
+
return useDocumentOfType<<%= documentType.name %>Document, <%= documentType.name %>Action>(documentId, "<%= documentType.type %>");
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export function useSelected<%= documentType.name %>Document() {
|
|
14
|
+
return useSelectedDocumentOfType<<%= documentType.name %>Document, <%= documentType.name %>Action>("<%= documentType.type %>");
|
|
15
|
+
}
|
|
16
|
+
<% } %>
|
|
@@ -3,20 +3,13 @@ to: "<%= rootDir %>/<%= h.changeCase.param(name) %>/index.ts"
|
|
|
3
3
|
force: true
|
|
4
4
|
---
|
|
5
5
|
import type { EditorModule } from 'document-model';
|
|
6
|
-
import Editor from './editor.js';
|
|
7
|
-
<% documentTypes.forEach(type => { _%>
|
|
8
|
-
import type { <%= documentTypesMap[type].name %>Document } from "<%= documentTypesMap[type].importPath %>/index.js";
|
|
9
|
-
%><% }); _%>
|
|
6
|
+
import { Editor } from './editor.js';
|
|
10
7
|
|
|
11
|
-
export const module:
|
|
8
|
+
export const module: EditorModule = {
|
|
12
9
|
Component: Editor,
|
|
13
10
|
documentTypes: [<% if(!documentTypes.length){ %>'*'<% } else { %><% documentTypes.forEach(type => { _%>"<%= type %>", %><% }); _%> <% } %>],
|
|
14
11
|
config: {
|
|
15
|
-
id: 'editor-id',
|
|
16
|
-
|
|
17
|
-
documentToolbarEnabled: true,
|
|
18
|
-
showSwitchboardLink: true,
|
|
12
|
+
id: '<%= editorId || 'editor-id' %>',
|
|
13
|
+
name: '<%= name || 'editor-name' %>',
|
|
19
14
|
},
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
export default module;
|
|
15
|
+
};
|
|
@@ -1,16 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
// @ts-check
|
|
2
|
+
module.exports = {
|
|
3
|
+
params: ({ args }) => {
|
|
4
|
+
const documentTypes = args.documentTypes
|
|
5
|
+
.split(",")
|
|
6
|
+
.map((type) => type.trim())
|
|
7
|
+
.filter((type) => type !== "");
|
|
8
|
+
const documentTypesMap = JSON.parse(args.documentTypesMap);
|
|
9
|
+
|
|
10
|
+
// if this editor is for a single document type, then the boilerplate will be customized to it
|
|
11
|
+
const singleDocumentType =
|
|
12
|
+
documentTypes.length === 1 ? documentTypes[0] : undefined;
|
|
13
|
+
const documentType = singleDocumentType
|
|
14
|
+
? { ...documentTypesMap[singleDocumentType], type: singleDocumentType }
|
|
15
|
+
: undefined;
|
|
16
|
+
|
|
17
|
+
return {
|
|
18
|
+
rootDir: args.rootDir,
|
|
19
|
+
documentModelsDir: args.documentModelsDir,
|
|
20
|
+
name: args.name,
|
|
21
|
+
documentTypes: args.documentTypes
|
|
22
|
+
.split(",")
|
|
23
|
+
.filter((type) => type !== ""),
|
|
24
|
+
documentTypesMap,
|
|
25
|
+
editorId: args.editorId,
|
|
26
|
+
documentType,
|
|
27
|
+
};
|
|
28
|
+
},
|
|
15
29
|
};
|
|
16
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
},
|
|
1
|
+
// @ts-check
|
|
2
|
+
module.exports = {
|
|
3
|
+
params: ({ args }) => {
|
|
4
|
+
return {
|
|
5
|
+
rootDir: args.rootDir,
|
|
6
|
+
name: args.name,
|
|
7
|
+
};
|
|
8
|
+
},
|
|
10
9
|
};
|
|
11
|
-
//# sourceMappingURL=index.js.map
|
package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/factory.esm.t
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
to: "<%= rootDir %>/<%= h.changeCase.param(name) %>/factory.ts"
|
|
3
|
-
|
|
3
|
+
unless_exists: true
|
|
4
4
|
---
|
|
5
|
-
import { type ProcessorRecord } from "document-drive
|
|
6
|
-
import { type IProcessorHostModule } from "document-drive
|
|
5
|
+
import { type ProcessorRecord } from "document-drive";
|
|
6
|
+
import { type IProcessorHostModule } from "document-drive";
|
|
7
|
+
import { type PHDocumentHeader } from "document-model";
|
|
7
8
|
import { <%= pascalName %>Processor } from "./index.js";
|
|
8
9
|
|
|
9
|
-
export const <%= h.changeCase.pascal(name) %>ProcessorFactory = (module: IProcessorHostModule) => (
|
|
10
|
+
export const <%= h.changeCase.pascal(name) %>ProcessorFactory = (module: IProcessorHostModule) => (driveHeader: PHDocumentHeader): ProcessorRecord[] => {
|
|
10
11
|
return [
|
|
11
12
|
{
|
|
12
13
|
processor: new <%= pascalName %>Processor(module.analyticsStore),
|
package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.esm.t
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
to: "<%= rootDir %>/<%= h.changeCase.param(name) %>/index.ts"
|
|
3
|
-
|
|
3
|
+
unless_exists: true
|
|
4
4
|
---
|
|
5
|
-
import type {
|
|
6
|
-
import { AnalyticsPath
|
|
7
|
-
import { InternalTransmitterUpdate, IProcessor } from "document-drive";
|
|
8
|
-
|
|
9
|
-
<% documentTypes.forEach(type => { _%>
|
|
10
|
-
import type { <%= documentTypesMap[type].name %>Document } from "<%= documentTypesMap[type].importPath %>/index.js";
|
|
11
|
-
%><% }); _%>
|
|
5
|
+
import type { AnalyticsSeriesInput, IAnalyticsStore } from "@powerhousedao/analytics-engine-core";
|
|
6
|
+
import { AnalyticsPath } from "@powerhousedao/analytics-engine-core";
|
|
7
|
+
import type { InternalTransmitterUpdate, IProcessor } from "document-drive";
|
|
12
8
|
|
|
13
9
|
export class <%= pascalName %>Processor implements IProcessor {
|
|
14
10
|
private readonly NAMESPACE = "<%= pascalName %>";
|
|
@@ -19,7 +15,7 @@ export class <%= pascalName %>Processor implements IProcessor {
|
|
|
19
15
|
//
|
|
20
16
|
}
|
|
21
17
|
|
|
22
|
-
async onStrands
|
|
18
|
+
async onStrands(strands: InternalTransmitterUpdate[]): Promise<void> {
|
|
23
19
|
if (strands.length === 0) {
|
|
24
20
|
return;
|
|
25
21
|
}
|
|
@@ -1,16 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
documentTypesMap: JSON.parse(args.documentTypesMap),
|
|
13
|
-
};
|
|
14
|
-
},
|
|
1
|
+
// @ts-check
|
|
2
|
+
module.exports = {
|
|
3
|
+
params: ({ args }) => {
|
|
4
|
+
return {
|
|
5
|
+
rootDir: args.rootDir,
|
|
6
|
+
name: args.name,
|
|
7
|
+
documentTypes: args.documentTypes
|
|
8
|
+
.split(",")
|
|
9
|
+
.filter((type) => type !== ""),
|
|
10
|
+
};
|
|
11
|
+
},
|
|
15
12
|
};
|
|
16
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
---
|
|
2
|
+
to: "<%= rootDir %>/index.ts"
|
|
3
|
+
prepend: true
|
|
4
|
+
skip_if: 'export { processorFactory } from "./factory.js"'
|
|
5
|
+
inject: true
|
|
6
|
+
---
|
|
7
|
+
/**
|
|
8
|
+
* Processor exports
|
|
9
|
+
* This file is auto-generated and updated by codegen
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
export { processorFactory } from "./factory.js";
|
|
@@ -7,24 +7,26 @@ unless_exists: true
|
|
|
7
7
|
* Auto-generated by codegen - DO NOT EDIT MANUALLY
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
-
import { type ProcessorRecord } from "document-drive
|
|
11
|
-
import { type IProcessorHostModule } from "document-drive
|
|
10
|
+
import { type ProcessorRecord, type ProcessorFactory } from "document-drive";
|
|
11
|
+
import { type IProcessorHostModule } from "document-drive";
|
|
12
|
+
import { type PHDocumentHeader } from "document-model";
|
|
12
13
|
|
|
13
14
|
// Import processor factories here as they are generated
|
|
14
15
|
|
|
15
16
|
export const processorFactory = (module: IProcessorHostModule) => {
|
|
16
17
|
// Initialize all processor factories once with the module
|
|
17
|
-
const factories: Array<
|
|
18
|
+
const factories: Array<ProcessorFactory> = [];
|
|
18
19
|
|
|
19
20
|
// Add processors here as they are generated
|
|
20
21
|
|
|
21
22
|
// Return the inner function that will be called for each drive
|
|
22
|
-
return (
|
|
23
|
+
return async (driveHeader: PHDocumentHeader): Promise<ProcessorRecord[]> => {
|
|
23
24
|
const processors: ProcessorRecord[] = [];
|
|
24
25
|
|
|
25
|
-
// Call each cached factory with the
|
|
26
|
+
// Call each cached factory with the driveHeader
|
|
26
27
|
for (const factory of factories) {
|
|
27
|
-
|
|
28
|
+
const factoryProcessors = await factory(driveHeader);
|
|
29
|
+
processors.push(...factoryProcessors);
|
|
28
30
|
}
|
|
29
31
|
|
|
30
32
|
return processors;
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
inject: true
|
|
3
3
|
to: "<%= rootDir %>/factory.ts"
|
|
4
4
|
after: " // Add processors here as they are generated"
|
|
5
|
-
skip_if: "<%=h.changeCase.pascal(name) %>ProcessorFactory
|
|
5
|
+
skip_if: "<%= h.changeCase.pascal(name) %>ProcessorFactory"
|
|
6
6
|
---
|
|
7
7
|
factories.push(<%= h.changeCase.pascal(name) %>ProcessorFactory(module));
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
inject: true
|
|
3
3
|
to: "<%= rootDir %>/factory.ts"
|
|
4
4
|
after: "// Import processor factories here as they are generated"
|
|
5
|
-
skip_if: "{ <%= h.changeCase.
|
|
5
|
+
skip_if: "{ <%= h.changeCase.pascal(name) %>ProcessorFactory }"
|
|
6
6
|
---
|
|
7
7
|
import { <%= h.changeCase.pascal(name) %>ProcessorFactory } from "./<%= h.changeCase.param(name) %>/factory.js";
|
package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/factory.esm.t
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
---
|
|
2
2
|
to: "<%= rootDir %>/<%= h.changeCase.param(name) %>/factory.ts"
|
|
3
|
-
|
|
3
|
+
unless_exists: true
|
|
4
4
|
---
|
|
5
5
|
import {
|
|
6
6
|
type ProcessorRecord,
|
|
7
7
|
type IProcessorHostModule
|
|
8
|
-
} from "document-drive
|
|
8
|
+
} from "document-drive";
|
|
9
9
|
import {
|
|
10
10
|
type RelationalDbProcessorFilter,
|
|
11
|
-
} from "document-drive
|
|
11
|
+
} from "document-drive";
|
|
12
|
+
import { type PHDocumentHeader } from "document-model";
|
|
12
13
|
import { <%= pascalName %>Processor } from "./index.js";
|
|
13
14
|
|
|
14
|
-
export const <%= h.changeCase.camel(name) %>ProcessorFactory = (module: IProcessorHostModule) => async (
|
|
15
|
+
export const <%= h.changeCase.camel(name) %>ProcessorFactory = (module: IProcessorHostModule) => async (driveHeader: PHDocumentHeader): Promise<ProcessorRecord[]> => {
|
|
15
16
|
// Create a namespace for the processor and the provided drive id
|
|
16
|
-
const namespace = <%= pascalName %>Processor.getNamespace(
|
|
17
|
+
const namespace = <%= pascalName %>Processor.getNamespace(driveHeader.id);
|
|
17
18
|
|
|
18
19
|
// Create a namespaced db for the processor
|
|
19
20
|
const store = await module.relationalDb.createNamespace<<%= pascalName %>Processor>(
|
package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.esm.t
CHANGED
|
@@ -1,18 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
to: "<%= rootDir %>/<%= h.changeCase.param(name) %>/index.ts"
|
|
3
|
-
|
|
3
|
+
unless_exists: true
|
|
4
4
|
---
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { type InternalTransmitterUpdate } from "document-drive/server/listener/transmitter/internal";
|
|
8
|
-
<% documentTypes.forEach(type => { _%>
|
|
9
|
-
import type { <%= documentTypesMap[type].name %>Document } from "<%= documentTypesMap[type].importPath %>/index.js";
|
|
10
|
-
%><% }); _%>
|
|
11
|
-
<% if(documentTypes.length === 0) { %>import { type PHDocument } from "document-model";<% } %>
|
|
5
|
+
import { RelationalDbProcessor } from "document-drive";
|
|
6
|
+
import type { InternalTransmitterUpdate } from "document-drive";
|
|
12
7
|
import { up } from "./migrations.js";
|
|
13
|
-
import
|
|
14
|
-
|
|
15
|
-
type DocumentType = <% if(documentTypes.length) { %><%= documentTypes.map(type => `${documentTypesMap[type].name}Document`).join(" | ") %> <% } else { %>PHDocument<% } %>;
|
|
8
|
+
import type { DB } from "./schema.js";
|
|
16
9
|
|
|
17
10
|
export class <%= pascalName %>Processor extends RelationalDbProcessor<DB> {
|
|
18
11
|
static override getNamespace(driveId: string): string {
|
|
@@ -25,7 +18,7 @@ export class <%= pascalName %>Processor extends RelationalDbProcessor<DB> {
|
|
|
25
18
|
}
|
|
26
19
|
|
|
27
20
|
override async onStrands(
|
|
28
|
-
strands: InternalTransmitterUpdate
|
|
21
|
+
strands: InternalTransmitterUpdate[],
|
|
29
22
|
): Promise<void> {
|
|
30
23
|
if (strands.length === 0) {
|
|
31
24
|
return;
|
|
@@ -40,7 +33,7 @@ export class <%= pascalName %>Processor extends RelationalDbProcessor<DB> {
|
|
|
40
33
|
await this.relationalDb
|
|
41
34
|
.insertInto("todo")
|
|
42
35
|
.values({
|
|
43
|
-
task: `${strand.documentId}-${operation.index}: ${operation.type}`,
|
|
36
|
+
task: `${strand.documentId}-${operation.index}: ${operation.action.type}`,
|
|
44
37
|
status: true,
|
|
45
38
|
})
|
|
46
39
|
.onConflict((oc) => oc.column("task").doNothing())
|
package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.js
CHANGED
|
@@ -1,16 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
documentTypesMap: JSON.parse(args.documentTypesMap),
|
|
13
|
-
};
|
|
14
|
-
},
|
|
1
|
+
// @ts-check
|
|
2
|
+
module.exports = {
|
|
3
|
+
params: ({ args }) => {
|
|
4
|
+
return {
|
|
5
|
+
rootDir: args.rootDir,
|
|
6
|
+
name: args.name,
|
|
7
|
+
documentTypes: args.documentTypes
|
|
8
|
+
.split(",")
|
|
9
|
+
.filter((type) => type !== ""),
|
|
10
|
+
};
|
|
11
|
+
},
|
|
15
12
|
};
|
|
16
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
---
|
|
2
|
+
to: "<%= rootDir %>/index.ts"
|
|
3
|
+
prepend: true
|
|
4
|
+
skip_if: 'export { processorFactory } from "./factory.js"'
|
|
5
|
+
inject: true
|
|
6
|
+
---
|
|
7
|
+
/**
|
|
8
|
+
* Processor exports
|
|
9
|
+
* This file is auto-generated and updated by codegen
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
export { processorFactory } from "./factory.js";
|
package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/lib.esm.t
CHANGED
|
@@ -7,25 +7,24 @@ unless_exists: true
|
|
|
7
7
|
* Auto-generated by codegen - DO NOT EDIT MANUALLY
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
-
import { type ProcessorRecord, type IProcessorHostModule } from "document-drive
|
|
10
|
+
import { type ProcessorRecord, type IProcessorHostModule, type ProcessorFactory } from "document-drive";
|
|
11
|
+
import { type PHDocumentHeader } from "document-model";
|
|
11
12
|
|
|
12
|
-
// Import
|
|
13
|
+
// Import processor factories here as they are generated
|
|
13
14
|
|
|
14
15
|
export const processorFactory = (module: IProcessorHostModule) => {
|
|
15
16
|
// Initialize all processor factories once with the module
|
|
16
|
-
const factories: Array<
|
|
17
|
+
const factories: Array<ProcessorFactory> = [];
|
|
17
18
|
|
|
18
|
-
// Add
|
|
19
|
-
|
|
20
|
-
// Add other processors here as they are generated
|
|
19
|
+
// Add processors here as they are generated
|
|
21
20
|
|
|
22
21
|
// Return the inner function that will be called for each drive
|
|
23
|
-
return async (
|
|
22
|
+
return async (driveHeader: PHDocumentHeader): Promise<ProcessorRecord[]> => {
|
|
24
23
|
const processors: ProcessorRecord[] = [];
|
|
25
24
|
|
|
26
|
-
// Call each cached factory with the
|
|
25
|
+
// Call each cached factory with the driveHeader
|
|
27
26
|
for (const factory of factories) {
|
|
28
|
-
const factoryProcessors = await factory(
|
|
27
|
+
const factoryProcessors = await factory(driveHeader);
|
|
29
28
|
processors.push(...factoryProcessors);
|
|
30
29
|
}
|
|
31
30
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
inject: true
|
|
3
3
|
to: "<%= rootDir %>/factory.ts"
|
|
4
|
-
after: " // Add
|
|
5
|
-
skip_if: "<%=h.changeCase.camel(name) %>ProcessorFactory
|
|
4
|
+
after: " // Add processors here as they are generated"
|
|
5
|
+
skip_if: "<%= h.changeCase.camel(name) %>ProcessorFactory"
|
|
6
6
|
---
|
|
7
7
|
factories.push(<%= h.changeCase.camel(name) %>ProcessorFactory(module));
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
inject: true
|
|
3
3
|
to: "<%= rootDir %>/factory.ts"
|
|
4
|
-
after: "// Import
|
|
4
|
+
after: "// Import processor factories here as they are generated"
|
|
5
5
|
skip_if: "{ <%= h.changeCase.camel(name) %>ProcessorFactory }"
|
|
6
6
|
---
|
|
7
7
|
import { <%= h.changeCase.camel(name) %>ProcessorFactory } from "./<%= h.changeCase.param(name) %>/factory.js";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
to: "<%= rootDir %>/<%= h.changeCase.param(name) %>/migrations.ts"
|
|
3
|
-
|
|
3
|
+
unless_exists: true
|
|
4
4
|
---
|
|
5
|
-
import { type IRelationalDb } from "document-drive
|
|
5
|
+
import { type IRelationalDb } from "document-drive"
|
|
6
6
|
|
|
7
7
|
export async function up(db: IRelationalDb<any>): Promise<void> {
|
|
8
8
|
// Create table
|
package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/schema.esm.t
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
to: "<%= rootDir %>/<%= h.changeCase.param(name) %>/schema.ts"
|
|
3
|
-
|
|
3
|
+
unless_exists: true
|
|
4
4
|
---
|
|
5
|
-
export interface
|
|
5
|
+
export interface Todo {
|
|
6
|
+
status: boolean | null;
|
|
7
|
+
task: string;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface DB {
|
|
11
|
+
todo: Todo;
|
|
12
|
+
}
|
|
13
|
+
|
|
@@ -1,48 +1,17 @@
|
|
|
1
1
|
---
|
|
2
2
|
to: "<%= rootDir %>/<%= h.changeCase.param(name) %>/index.ts"
|
|
3
|
-
|
|
3
|
+
unless_exists: true
|
|
4
4
|
---
|
|
5
|
-
import {
|
|
6
|
-
|
|
5
|
+
import { BaseSubgraph } from "@powerhousedao/reactor-api";
|
|
6
|
+
import type { DocumentNode } from "graphql";
|
|
7
7
|
import { schema } from "./schema.js";
|
|
8
8
|
import { getResolvers } from "./resolvers.js";
|
|
9
|
-
<% } else { %>
|
|
10
|
-
import { gql } from "graphql-tag";
|
|
11
|
-
<% } %>
|
|
12
9
|
|
|
13
|
-
export class <%= pascalName %>Subgraph extends
|
|
10
|
+
export class <%= pascalName %>Subgraph extends BaseSubgraph {
|
|
14
11
|
name = "<%= h.changeCase.param(name) %>";
|
|
15
|
-
|
|
16
|
-
typeDefs = schema;
|
|
12
|
+
typeDefs: DocumentNode = schema;
|
|
17
13
|
resolvers = getResolvers(this);
|
|
18
14
|
additionalContextFields = {};
|
|
19
15
|
async onSetup() {}
|
|
20
16
|
async onDisconnect() {}
|
|
21
|
-
|
|
22
|
-
<% } else { %>
|
|
23
|
-
|
|
24
|
-
resolvers = {
|
|
25
|
-
Query: {
|
|
26
|
-
example: {
|
|
27
|
-
resolve: async (parent, args, context, info) => {
|
|
28
|
-
return "example";
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
typeDefs = gql`
|
|
35
|
-
type Query {
|
|
36
|
-
example(id: ID!): String
|
|
37
|
-
}
|
|
38
|
-
`;
|
|
39
|
-
|
|
40
|
-
additionalContextFields = {
|
|
41
|
-
example: "test"
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
async onSetup() {}
|
|
45
|
-
|
|
46
|
-
async onDisconnect() {}
|
|
47
|
-
<% } %>
|
|
48
17
|
}
|