runlify 0.0.799 → 0.0.800
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/build/projectsGeneration/fileCleaners/back/graphServices/cleanStaleRuntimeMetaGraphFiles.js +35 -0
- package/build/projectsGeneration/fileCleaners/cleanFiles.js +7 -2
- package/build/projectsGeneration/generateProject/back/src/services/generateBackEntityGraph.js +16 -6
- package/build/projectsGeneration/generateProject/genGraphSchemesByLocalGenerator.js +9 -3
- package/build/projectsGeneration/generateProject/generateProject.js +2 -4
- package/build/projectsGeneration/generators/fileTemplates/back/graph/permissionsToGraphql.js +17 -7
- package/build/projectsGeneration/generators/fileTemplates/ui/environment/src/dataProvider/index.js +3 -3
- package/build/projectsGeneration/generators/graph/genGraphCrudPermissions.js +19 -0
- package/build/projectsGeneration/generators/graph/genGraphCrudResolvers.js +28 -0
- package/build/projectsGeneration/generators/graph/runtimeGraphTypes.js +3 -0
- package/build/projectsGeneration/index.js +11 -2
- package/build/projectsGeneration/types.js +9 -1
- package/build/types/projectsGeneration/fileCleaners/back/graphServices/cleanStaleRuntimeMetaGraphFiles.d.ts +3 -0
- package/build/types/projectsGeneration/generateProject/genGraphSchemesByLocalGenerator.d.ts +1 -0
- package/build/types/projectsGeneration/generators/fileTemplates/back/clickhouse/jobs.d.ts +6 -0
- package/build/types/projectsGeneration/generators/fileTemplates/back/elastic/jobs.d.ts +6 -0
- package/build/types/projectsGeneration/generators/fileTemplates/back/graph/permissionsToGraphql.d.ts +1 -1
- package/build/types/projectsGeneration/generators/fileTemplates/ui/environment/src/dataProvider/index.d.ts +1 -1
- package/build/types/projectsGeneration/generators/graph/genGraphCrudPermissions.d.ts +10 -0
- package/build/types/projectsGeneration/generators/graph/genGraphCrudResolvers.d.ts +3 -0
- package/build/types/projectsGeneration/generators/graph/runtimeGraphTypes.d.ts +21 -0
- package/build/types/projectsGeneration/index.d.ts +4 -0
- package/build/types/projectsGeneration/types.d.ts +5 -0
- package/docs/09-options.md +3 -0
- package/package.json +1 -1
package/build/projectsGeneration/fileCleaners/back/graphServices/cleanStaleRuntimeMetaGraphFiles.js
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const fs_1 = require("fs");
|
|
4
|
+
const cases_1 = require("../../../../utils/cases");
|
|
5
|
+
const generationPaths_1 = require("../../../builders/generationPaths");
|
|
6
|
+
// Files generateBackEntityGraph always wrote in 'files' mode and skips
|
|
7
|
+
// entirely in 'runtime_meta' mode — stale leftovers from a switch would
|
|
8
|
+
// otherwise still be picked up by the typeDefs/resolvers glob loaders.
|
|
9
|
+
const STALE_RUNTIME_META_GRAPH_CATEGORIES = [
|
|
10
|
+
generationPaths_1.GenerationPathCategory.BackGraphEntityBaseTypeDefs,
|
|
11
|
+
generationPaths_1.GenerationPathCategory.BackGraphEntityBaseResolvers,
|
|
12
|
+
generationPaths_1.GenerationPathCategory.BackGraphEntityBasePermissionsToGraphql,
|
|
13
|
+
generationPaths_1.GenerationPathCategory.BackGraphEntityPermissionsToGraphql,
|
|
14
|
+
generationPaths_1.GenerationPathCategory.BackGraphEntityAdditionalPermissionsToGraphql,
|
|
15
|
+
];
|
|
16
|
+
exports.default = (entityWideGenerationArgs) => {
|
|
17
|
+
if (entityWideGenerationArgs.options.graphSchemaMode !== 'runtime_meta') {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
entityWideGenerationArgs.entities.forEach((entity) => {
|
|
21
|
+
STALE_RUNTIME_META_GRAPH_CATEGORIES.forEach((category) => {
|
|
22
|
+
const filePath = (0, generationPaths_1.resolveGenerationPath)({
|
|
23
|
+
category,
|
|
24
|
+
detachedBackProject: entityWideGenerationArgs.options.detachedBackProject,
|
|
25
|
+
detachedUiProject: entityWideGenerationArgs.options.detachedUiProject,
|
|
26
|
+
pathsConfig: entityWideGenerationArgs.system.generationPaths,
|
|
27
|
+
vars: { camelPlural: (0, cases_1.camelPlural)(entity.name) },
|
|
28
|
+
});
|
|
29
|
+
if ((0, fs_1.existsSync)(filePath)) {
|
|
30
|
+
(0, fs_1.unlinkSync)(filePath);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYW5TdGFsZVJ1bnRpbWVNZXRhR3JhcGhGaWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wcm9qZWN0c0dlbmVyYXRpb24vZmlsZUNsZWFuZXJzL2JhY2svZ3JhcGhTZXJ2aWNlcy9jbGVhblN0YWxlUnVudGltZU1ldGFHcmFwaEZpbGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMkJBQXlDO0FBQ3pDLG1EQUFtRDtBQUVuRCx1RUFHMEM7QUFFMUMsdUVBQXVFO0FBQ3ZFLHdFQUF3RTtBQUN4RSx1RUFBdUU7QUFDdkUsTUFBTSxtQ0FBbUMsR0FBRztJQUMxQyx3Q0FBc0IsQ0FBQywyQkFBMkI7SUFDbEQsd0NBQXNCLENBQUMsNEJBQTRCO0lBQ25ELHdDQUFzQixDQUFDLHVDQUF1QztJQUM5RCx3Q0FBc0IsQ0FBQyxtQ0FBbUM7SUFDMUQsd0NBQXNCLENBQUMsNkNBQTZDO0NBQ3JFLENBQUE7QUFFRCxrQkFBZSxDQUNiLHdCQUFtRCxFQUNuRCxFQUFFO0lBQ0YsSUFBSSx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsZUFBZSxLQUFLLGNBQWMsRUFBRTtRQUN2RSxPQUFNO0tBQ1A7SUFFRCx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7UUFDbkQsbUNBQW1DLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDdkQsTUFBTSxRQUFRLEdBQUcsSUFBQSx1Q0FBcUIsRUFBQztnQkFDckMsUUFBUTtnQkFDUixtQkFBbUIsRUFBRSx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsbUJBQW1CO2dCQUN6RSxpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsaUJBQWlCO2dCQUNyRSxXQUFXLEVBQUUsd0JBQXdCLENBQUMsTUFBTSxDQUFDLGVBQWU7Z0JBQzVELElBQUksRUFBRSxFQUFDLFdBQVcsRUFBRSxJQUFBLG1CQUFXLEVBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFDO2FBQzlDLENBQUMsQ0FBQTtZQUVGLElBQUksSUFBQSxlQUFVLEVBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQ3hCLElBQUEsZUFBVSxFQUFDLFFBQVEsQ0FBQyxDQUFBO2FBQ3JCO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQSJ9
|
|
@@ -4,7 +4,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const cleanUi_1 = __importDefault(require("./ui/cleanUi"));
|
|
7
|
+
const cleanStaleRuntimeMetaGraphFiles_1 = __importDefault(require("./back/graphServices/cleanStaleRuntimeMetaGraphFiles"));
|
|
7
8
|
exports.default = (entityWideGenerationArgs) => {
|
|
8
|
-
|
|
9
|
+
// Not UI-specific, so unlike cleanUi below it isn't gated by genFrontend.
|
|
10
|
+
(0, cleanStaleRuntimeMetaGraphFiles_1.default)(entityWideGenerationArgs);
|
|
11
|
+
if (entityWideGenerationArgs.options.genFrontend) {
|
|
12
|
+
(0, cleanUi_1.default)(entityWideGenerationArgs);
|
|
13
|
+
}
|
|
9
14
|
};
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYW5GaWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm9qZWN0c0dlbmVyYXRpb24vZmlsZUNsZWFuZXJzL2NsZWFuRmlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSwyREFBbUM7QUFDbkMsMkhBQW1HO0FBRW5HLGtCQUFlLENBQ2Isd0JBQW1ELEVBQ25ELEVBQUU7SUFDRiwwRUFBMEU7SUFDMUUsSUFBQSx5Q0FBK0IsRUFBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBRTFELElBQUksd0JBQXdCLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRTtRQUNoRCxJQUFBLGlCQUFPLEVBQUMsd0JBQXdCLENBQUMsQ0FBQztLQUNuQztBQUNILENBQUMsQ0FBQSJ9
|
package/build/projectsGeneration/generateProject/back/src/services/generateBackEntityGraph.js
CHANGED
|
@@ -21,22 +21,32 @@ const generateBackEntityGraph = (fileCreator, args) => {
|
|
|
21
21
|
pathsConfig: system.generationPaths,
|
|
22
22
|
vars: { camelPlural: (0, cases_1.camelPlural)(entity.name) },
|
|
23
23
|
});
|
|
24
|
+
// 'runtime_meta' builds the base CRUD graph layer (types/resolvers/permissions)
|
|
25
|
+
// in memory at server start instead — see genGraphCrudResolvers/genGraphCrudPermissions.
|
|
26
|
+
// additional*.ts stubs stay file-based in both modes: they're the manual-code merge point.
|
|
27
|
+
const buildsRuntimeMetaGraph = options.graphSchemaMode === 'runtime_meta';
|
|
24
28
|
// Graph schema
|
|
25
29
|
if (options.genGraphSchema) {
|
|
26
|
-
|
|
30
|
+
if (!buildsRuntimeMetaGraph) {
|
|
31
|
+
fileCreator.create(resolveGraphPath(generationPaths_1.GenerationPathCategory.BackGraphEntityBaseTypeDefs), (0, types_1.backBaseTypesTmpl)((0, graphql_1.printSchema)((0, genGraphCrudSchema_1.genGraphCrudSchema)(entity)), options), (0, fileHandlers_1.addWarnings)({ options }));
|
|
32
|
+
}
|
|
27
33
|
fileCreator.createIfNotExists(resolveGraphPath(generationPaths_1.GenerationPathCategory.BackGraphEntityAdditionalTypeDefs), (0, additionalTypes_1.backAdditionalTypesTmpl)());
|
|
28
34
|
}
|
|
29
35
|
if (!options.typesOnly) {
|
|
30
36
|
// Graph resolvers
|
|
31
37
|
if (options.genGraphResolvers) {
|
|
32
|
-
|
|
38
|
+
if (!buildsRuntimeMetaGraph) {
|
|
39
|
+
fileCreator.create(resolveGraphPath(generationPaths_1.GenerationPathCategory.BackGraphEntityBaseResolvers), (0, resolvers_1.backBaseResolversTmpl)(args), (0, fileHandlers_1.addWarnings)({ options }));
|
|
40
|
+
}
|
|
33
41
|
fileCreator.createIfNotExists(resolveGraphPath(generationPaths_1.GenerationPathCategory.BackGraphEntityAdditionalResolvers), (0, additionalResolvers_1.backAdditionalResolversTmpl)());
|
|
34
42
|
}
|
|
35
43
|
// Permissions
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
44
|
+
if (!buildsRuntimeMetaGraph) {
|
|
45
|
+
fileCreator.create(resolveGraphPath(generationPaths_1.GenerationPathCategory.BackGraphEntityPermissionsToGraphql), (0, entityPermissionToGraphqlTmpl_1.backEntityPermissionToGraphqlTmpl)(args), (0, fileHandlers_1.addWarnings)({ options }));
|
|
46
|
+
fileCreator.create(resolveGraphPath(generationPaths_1.GenerationPathCategory.BackGraphEntityBasePermissionsToGraphql), (0, entityBasePermissionToGraphql_1.backBasePermissionToGraphqlTmpl)(args), (0, fileHandlers_1.addWarnings)({ options }));
|
|
47
|
+
fileCreator.create(resolveGraphPath(generationPaths_1.GenerationPathCategory.BackGraphEntityAdditionalPermissionsToGraphql), (0, entityAdditionalPermissionToGraphqlTmpl_1.backEntityAdditionalPermissionToGraphqlTmpl)(args), (0, fileHandlers_1.addWarnings)({ options }));
|
|
48
|
+
}
|
|
39
49
|
}
|
|
40
50
|
};
|
|
41
51
|
exports.default = generateBackEntityGraph;
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVCYWNrRW50aXR5R3JhcGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvcHJvamVjdHNHZW5lcmF0aW9uL2dlbmVyYXRlUHJvamVjdC9iYWNrL3NyYy9zZXJ2aWNlcy9nZW5lcmF0ZUJhY2tFbnRpdHlHcmFwaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLHNEQUFzRDtBQUV0RCxpRkFBdUY7QUFDdkYseUZBQStGO0FBQy9GLHdGQUFrRjtBQUNsRixxQ0FBbUM7QUFDbkMsNkdBQStHO0FBQy9HLGlJQUErSDtBQUMvSCxxSkFBbUo7QUFDbkosaUlBQTZIO0FBQzdILHFHQUF1RztBQUN2Ryx3REFBaUQ7QUFDakQsMEVBRzZDO0FBRTdDLE1BQU0sdUJBQXVCLEdBQUcsQ0FDOUIsV0FBd0IsRUFDeEIsSUFBOEIsRUFDOUIsRUFBRTtJQUNGLE1BQU0sRUFDSixNQUFNLEVBQ04sT0FBTyxFQUNQLE1BQU0sR0FDUCxHQUFHLElBQUksQ0FBQztJQUVULE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxRQUFnQyxFQUFFLEVBQUUsQ0FDNUQsSUFBQSx1Q0FBcUIsRUFBQztRQUNwQixRQUFRO1FBQ1IsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLG1CQUFtQjtRQUNoRCxpQkFBaUIsRUFBRSxPQUFPLENBQUMsaUJBQWlCO1FBQzVDLFdBQVcsRUFBRSxNQUFNLENBQUMsZUFBZTtRQUNuQyxJQUFJLEVBQUUsRUFBQyxXQUFXLEVBQUUsSUFBQSxtQkFBVyxFQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBQztLQUM5QyxDQUFDLENBQUM7SUFFTCxnRkFBZ0Y7SUFDaEYseUZBQXlGO0lBQ3pGLDJGQUEyRjtJQUMzRixNQUFNLHNCQUFzQixHQUFHLE9BQU8sQ0FBQyxlQUFlLEtBQUssY0FBYyxDQUFDO0lBRTFFLGVBQWU7SUFDZixJQUFJLE9BQU8sQ0FBQyxjQUFjLEVBQUU7UUFDMUIsSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQzNCLFdBQVcsQ0FBQyxNQUFNLENBQ2hCLGdCQUFnQixDQUFDLHdDQUFzQixDQUFDLDJCQUEyQixDQUFDLEVBQ3BFLElBQUEseUJBQWlCLEVBQUMsSUFBQSxxQkFBVyxFQUFDLElBQUEsdUNBQWtCLEVBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsRUFDbkUsSUFBQSwwQkFBVyxFQUFDLEVBQUMsT0FBTyxFQUFDLENBQUMsQ0FDdkIsQ0FBQztTQUNIO1FBRUQsV0FBVyxDQUFDLGlCQUFpQixDQUMzQixnQkFBZ0IsQ0FBQyx3Q0FBc0IsQ0FBQyxpQ0FBaUMsQ0FBQyxFQUMxRSxJQUFBLHlDQUF1QixHQUFFLENBQzFCLENBQUM7S0FDSDtJQUVELElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO1FBQ3RCLGtCQUFrQjtRQUNsQixJQUFJLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRTtZQUM3QixJQUFJLENBQUMsc0JBQXNCLEVBQUU7Z0JBQzNCLFdBQVcsQ0FBQyxNQUFNLENBQ2hCLGdCQUFnQixDQUFDLHdDQUFzQixDQUFDLDRCQUE0QixDQUFDLEVBQ3JFLElBQUEsaUNBQXFCLEVBQUMsSUFBSSxDQUFDLEVBQzNCLElBQUEsMEJBQVcsRUFBQyxFQUFDLE9BQU8sRUFBQyxDQUFDLENBQ3ZCLENBQUM7YUFDSDtZQUNELFdBQVcsQ0FBQyxpQkFBaUIsQ0FDM0IsZ0JBQWdCLENBQUMsd0NBQXNCLENBQUMsa0NBQWtDLENBQUMsRUFDM0UsSUFBQSxpREFBMkIsR0FBRSxDQUM5QixDQUFDO1NBQ0g7UUFFRCxjQUFjO1FBQ2QsSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQzNCLFdBQVcsQ0FBQyxNQUFNLENBQ2hCLGdCQUFnQixDQUFDLHdDQUFzQixDQUFDLG1DQUFtQyxDQUFDLEVBQzVFLElBQUEsaUVBQWlDLEVBQUMsSUFBSSxDQUFDLEVBQ3ZDLElBQUEsMEJBQVcsRUFBQyxFQUFDLE9BQU8sRUFBQyxDQUFDLENBQ3ZCLENBQUM7WUFDRixXQUFXLENBQUMsTUFBTSxDQUNoQixnQkFBZ0IsQ0FBQyx3Q0FBc0IsQ0FBQyx1Q0FBdUMsQ0FBQyxFQUNoRixJQUFBLCtEQUErQixFQUFDLElBQUksQ0FBQyxFQUNyQyxJQUFBLDBCQUFXLEVBQUMsRUFBQyxPQUFPLEVBQUMsQ0FBQyxDQUN2QixDQUFDO1lBQ0YsV0FBVyxDQUFDLE1BQU0sQ0FDaEIsZ0JBQWdCLENBQUMsd0NBQXNCLENBQUMsNkNBQTZDLENBQUMsRUFDdEYsSUFBQSxxRkFBMkMsRUFBQyxJQUFJLENBQUMsRUFDakQsSUFBQSwwQkFBVyxFQUFDLEVBQUMsT0FBTyxFQUFDLENBQUMsQ0FDdkIsQ0FBQztTQUNIO0tBQ0Y7QUFDSCxDQUFDLENBQUE7QUFFRCxrQkFBZSx1QkFBdUIsQ0FBQyJ9
|
|
@@ -50,7 +50,7 @@ const resolvePath = (options, category) => (0, generationPaths_1.resolveGenerati
|
|
|
50
50
|
});
|
|
51
51
|
const genGraphSchemesByLocalGenerator = (options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
52
52
|
// yarn ts-node src/gen/genGQSchemes.ts
|
|
53
|
-
var _a;
|
|
53
|
+
var _a, _b;
|
|
54
54
|
log_1.default.info(`detachedBackProject: ${options.detachedBackProject}`);
|
|
55
55
|
log_1.default.info(`detachedUiProject: ${options.detachedUiProject}`);
|
|
56
56
|
log_1.default.info(`layoutMode: ${(_a = options.layoutMode) !== null && _a !== void 0 ? _a : 'detached'}`);
|
|
@@ -75,8 +75,14 @@ const genGraphSchemesByLocalGenerator = (options) => __awaiter(void 0, void 0, v
|
|
|
75
75
|
}));
|
|
76
76
|
const schemaJsonSrc = resolvePath(options, generationPaths_1.GenerationPathCategory.BackGeneratedGraphqlSchemaJson);
|
|
77
77
|
const backGraphqlTs = resolvePath(options, generationPaths_1.GenerationPathCategory.BackGeneratedGraphqlTs);
|
|
78
|
-
|
|
78
|
+
const copySchemaToUi = options.genFrontend && options.copySchemaToUi !== false;
|
|
79
|
+
// Unset copyGraphqlTsToUi keeps the old behaviour: one flag for both files.
|
|
80
|
+
const copyGraphqlTsToUi = options.genFrontend &&
|
|
81
|
+
((_b = options.copyGraphqlTsToUi) !== null && _b !== void 0 ? _b : options.copySchemaToUi) !== false;
|
|
82
|
+
if (copyGraphqlTsToUi) {
|
|
79
83
|
yield fs_extra_1.default.copyFile(backGraphqlTs, resolvePath(options, generationPaths_1.GenerationPathCategory.UiGeneratedGraphqlTs));
|
|
84
|
+
}
|
|
85
|
+
if (copySchemaToUi) {
|
|
80
86
|
yield fs_extra_1.default.copyFile(schemaJsonSrc, resolvePath(options, generationPaths_1.GenerationPathCategory.UiGeneratedGraphqlSchemaJson));
|
|
81
87
|
}
|
|
82
88
|
if (options.sharedSchemaPath) {
|
|
@@ -99,4 +105,4 @@ const genGraphSchemesByLocalGenerator = (options) => __awaiter(void 0, void 0, v
|
|
|
99
105
|
}
|
|
100
106
|
});
|
|
101
107
|
exports.genGraphSchemesByLocalGenerator = genGraphSchemesByLocalGenerator;
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuR3JhcGhTY2hlbWVzQnlMb2NhbEdlbmVyYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm9qZWN0c0dlbmVyYXRpb24vZ2VuZXJhdGVQcm9qZWN0L2dlbkdyYXBoU2NoZW1lc0J5TG9jYWxHZW5lcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyQ0FBNEI7QUFDNUIsd0RBQXlCO0FBQ3pCLGlEQUFrQztBQUVsQyxvREFBMkI7QUFDM0IsaUVBSW9DO0FBVXBDLE1BQU0sV0FBVyxHQUFHLENBQ2xCLE9BQTRCLEVBQzVCLFFBQWdDLEVBQ2hDLEVBQUUsQ0FDRixJQUFBLHVDQUFxQixFQUFDO0lBQ3BCLFFBQVE7SUFDUixtQkFBbUIsRUFBRSxPQUFPLENBQUMsbUJBQW1CO0lBQ2hELGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxpQkFBaUI7SUFDNUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxlQUFlO0lBQ3BDLElBQUksRUFBRSxFQUFFO0NBQ1QsQ0FBQyxDQUFBO0FBRUcsTUFBTSwrQkFBK0IsR0FBRyxDQUM3QyxPQUE0QixFQUM1QixFQUFFO0lBQ0YsdUNBQXVDOztJQUV2QyxhQUFHLENBQUMsSUFBSSxDQUFDLHdCQUF3QixPQUFPLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO0lBQ2hFLGFBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7SUFDNUQsYUFBRyxDQUFDLElBQUksQ0FBQyxlQUFlLE1BQUMsT0FBMEQsQ0FBQyxVQUFVLG1DQUFJLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFFaEgsSUFBSSxPQUFPLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixDQUFBO0lBRTNDLElBQUksQ0FBQyxPQUFPLEVBQUU7UUFDWixPQUFPLEdBQUcsZ0JBQWdCLElBQUksQ0FBQyxJQUFJLENBQ2pDLE9B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
|
|
@@ -23,9 +23,7 @@ const generateProject = (system, opts) => __awaiter(void 0, void 0, void 0, func
|
|
|
23
23
|
const { getFiles, reset, create, createIfNotExists, } = (0, utils_1.createFilesToWriteUtils)();
|
|
24
24
|
const fileCreator = { create, createIfNotExists };
|
|
25
25
|
const args = (0, args_1.prepareProjectWideGenerationArgs)(system, opts);
|
|
26
|
-
|
|
27
|
-
(0, cleanFiles_1.default)(args);
|
|
28
|
-
}
|
|
26
|
+
(0, cleanFiles_1.default)(args);
|
|
29
27
|
// Pre grapgql types compose generation
|
|
30
28
|
(0, generateBack_1.default)(fileCreator, Object.assign(Object.assign({}, args), { options: Object.assign(Object.assign({}, args.options), { typesOnly: true }) }));
|
|
31
29
|
(0, utils_1.writeFiles)(getFiles());
|
|
@@ -41,4 +39,4 @@ const generateProject = (system, opts) => __awaiter(void 0, void 0, void 0, func
|
|
|
41
39
|
reset();
|
|
42
40
|
});
|
|
43
41
|
exports.default = generateProject;
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVQcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Byb2plY3RzR2VuZXJhdGlvbi9nZW5lcmF0ZVByb2plY3QvZ2VuZXJhdGVQcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQ0EsK0RBQXlEO0FBQ3pELHVGQUFpRjtBQUVqRixtQ0FBMkQ7QUFFM0Qsa0NBQXdEO0FBQ3hELDRFQUFtRDtBQUNuRCwwRUFBaUQ7QUFDakQsdUVBQThDO0FBRTlDLE1BQU0sZUFBZSxHQUFHLENBQ3RCLE1BQWMsRUFDZCxJQUE0QixFQUM1QixFQUFFO0lBQ0YsTUFBTSxFQUNKLFFBQVEsRUFDUixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixHQUFHLElBQUEsK0JBQXVCLEdBQUUsQ0FBQztJQUU5QixNQUFNLFdBQVcsR0FBZ0IsRUFBQyxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsQ0FBQztJQUU3RCxNQUFNLElBQUksR0FBRyxJQUFBLHVDQUFnQyxFQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUU1RCxJQUFBLG9CQUFVLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFFakIsdUNBQXVDO0lBQ3ZDLElBQUEsc0JBQVksRUFBQyxXQUFXLGtDQUFNLElBQUksS0FBRSxPQUFPLGtDQUFNLElBQUksQ0FBQyxPQUFPLEtBQUUsU0FBUyxFQUFFLElBQUksT0FBRyxDQUFDO0lBRWxGLElBQUEsa0JBQVUsRUFBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZCLEtBQUssRUFBRSxDQUFDO0lBRVIsTUFBTSxJQUFBLGlFQUErQixrQ0FDaEMsSUFBSSxLQUNQLGVBQWUsRUFBRSxNQUFNLENBQUMsZUFBZSxJQUN2QyxDQUFDO0lBRUgsa0JBQWtCO0lBQ2xCLElBQUEsc0JBQVksRUFBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFaEMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1FBQ3BCLElBQUEsdUJBQWEsRUFBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7S0FDbEM7SUFFRCxJQUFBLHlDQUFtQixFQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUV2QyxJQUFBLGtCQUFVLEVBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2QixLQUFLLEVBQUUsQ0FBQztBQUNWLENBQUMsQ0FBQSxDQUFBO0FBRUQsa0JBQWUsZUFBZSxDQUFDIn0=
|
package/build/projectsGeneration/generators/fileTemplates/back/graph/permissionsToGraphql.js
CHANGED
|
@@ -2,13 +2,20 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.backPermissionToGraphqlTmpl = void 0;
|
|
4
4
|
const utils_1 = require("../../../../utils");
|
|
5
|
-
const backPermissionToGraphqlTmpl = ({ entities }) =>
|
|
5
|
+
const backPermissionToGraphqlTmpl = ({ entities, options }) => {
|
|
6
|
+
// 'runtime_meta': per-entity permissionsToGraphql.ts files no longer exist
|
|
7
|
+
// (generateBackEntityGraph skips them) — entity permissions are merged in
|
|
8
|
+
// separately at runtime instead (buildRuntimeMetaPermissions).
|
|
9
|
+
const includesEntityPermissions = options.graphSchemaMode !== 'runtime_meta';
|
|
10
|
+
return `import * as R from 'ramda';
|
|
6
11
|
import {additionalServicesPermissionToGraphql} from './additionalServicesPermissionToGraphql';
|
|
7
12
|
import {MutationResolvers, QueryResolvers} from '../../generated/graphql';
|
|
8
13
|
import {Services} from '../services/types';
|
|
9
14
|
import helpPermissionToGraphql from './services/help/permissionsToGraphql';
|
|
10
|
-
${
|
|
11
|
-
`)
|
|
15
|
+
${includesEntityPermissions
|
|
16
|
+
? entities.map((m) => `import ${m.name}PermissionToGraphql from './services/${m.name}/permissionsToGraphql';`).join(`
|
|
17
|
+
`)
|
|
18
|
+
: ''}
|
|
12
19
|
|
|
13
20
|
type queryKeys = keyof QueryResolvers;
|
|
14
21
|
type mutationKeys = keyof MutationResolvers;
|
|
@@ -21,9 +28,11 @@ export type PermissionToGraphql <T = any> = Record<
|
|
|
21
28
|
export const permissionsToGraphql: Partial<Record<keyof Services, Partial<PermissionToGraphql>>> = {
|
|
22
29
|
...additionalServicesPermissionToGraphql,
|
|
23
30
|
help: helpPermissionToGraphql,
|
|
24
|
-
${
|
|
25
|
-
|
|
26
|
-
|
|
31
|
+
${includesEntityPermissions
|
|
32
|
+
? entities.map((m) => `${m.name}: ${m.name}PermissionToGraphql`).map(utils_1.addComma)
|
|
33
|
+
.join(`
|
|
34
|
+
`)
|
|
35
|
+
: ''}
|
|
27
36
|
};
|
|
28
37
|
|
|
29
38
|
const flattenPermissionToGraphql: Map<string, string> = new Map([])
|
|
@@ -48,5 +57,6 @@ export function permissionToGraphql (permission: string):string | undefined {ret
|
|
|
48
57
|
|
|
49
58
|
export function graphqlToPermission (graphql: string):string | undefined {return flattenGraphqlToPermission.get(graphql)}
|
|
50
59
|
`;
|
|
60
|
+
};
|
|
51
61
|
exports.backPermissionToGraphqlTmpl = backPermissionToGraphqlTmpl;
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbnNUb0dyYXBocWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvcHJvamVjdHNHZW5lcmF0aW9uL2dlbmVyYXRvcnMvZmlsZVRlbXBsYXRlcy9iYWNrL2dyYXBoL3Blcm1pc3Npb25zVG9HcmFwaHFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUEwQztBQUduQyxNQUFNLDJCQUEyQixHQUFHLENBQ3pDLEVBQUMsUUFBUSxFQUFFLE9BQU8sRUFBNEIsRUFDOUMsRUFBRTtJQUNGLDJFQUEyRTtJQUMzRSwwRUFBMEU7SUFDMUUsK0RBQStEO0lBQy9ELE1BQU0seUJBQXlCLEdBQUcsT0FBTyxDQUFDLGVBQWUsS0FBSyxjQUFjLENBQUE7SUFFNUUsT0FBTzs7Ozs7RUFLUCx5QkFBeUI7UUFDdkIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQ1osQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNKLFVBQVUsQ0FBQyxDQUFDLElBQUksd0NBQXdDLENBQUMsQ0FBQyxJQUFJLHlCQUF5QixDQUMxRixDQUFDLElBQUksQ0FBQztDQUNWLENBQUM7UUFDRSxDQUFDLENBQUMsRUFBRTs7Ozs7Ozs7Ozs7OztJQWFKLHlCQUF5QjtRQUN6QixDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxJQUFJLHFCQUFxQixDQUFDLENBQUMsR0FBRyxDQUFDLGdCQUFRLENBQUM7YUFDM0UsSUFBSSxDQUFDO0dBQ1QsQ0FBQztRQUNBLENBQUMsQ0FBQyxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0F3QlAsQ0FBQTtBQUNELENBQUMsQ0FBQTtBQTdEWSxRQUFBLDJCQUEyQiwrQkE2RHZDIn0=
|
package/build/projectsGeneration/generators/fileTemplates/ui/environment/src/dataProvider/index.js
CHANGED
|
@@ -4,7 +4,7 @@ exports.uiDataProviderTmpl = void 0;
|
|
|
4
4
|
const cases_1 = require("../../../../../../../utils/cases");
|
|
5
5
|
const types_1 = require("../../../../../../types");
|
|
6
6
|
const metaUtils_1 = require("../../../../../../metaUtils");
|
|
7
|
-
const uiDataProviderTmpl = (entities,
|
|
7
|
+
const uiDataProviderTmpl = (entities, options = types_1.defaultBootstrapEntityOptions) => `import buildGraphQLProvider, {buildQuery as buildQueryFactory} from 'ra-data-graphql-simple';
|
|
8
8
|
import {IntrospectionResult} from 'ra-data-graphql';
|
|
9
9
|
import {DELETE} from 'ra-core';
|
|
10
10
|
import gql from 'graphql-tag';
|
|
@@ -18,7 +18,7 @@ import {DataProvider} from './types';
|
|
|
18
18
|
let schema: any = undefined;
|
|
19
19
|
|
|
20
20
|
if (import.meta.env.DEV) {
|
|
21
|
-
const sch = await import('
|
|
21
|
+
const sch = await import('${options.uiGraphqlSchemaImport || types_1.defaultBootstrapEntityOptions.uiGraphqlSchemaImport}');
|
|
22
22
|
schema = sch.default.__schema;
|
|
23
23
|
}
|
|
24
24
|
|
|
@@ -94,4 +94,4 @@ export default async (client: ApolloClient<unknown>): Promise<DataProvider> => {
|
|
|
94
94
|
};
|
|
95
95
|
`;
|
|
96
96
|
exports.uiDataProviderTmpl = uiDataProviderTmpl;
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvcHJvamVjdHNHZW5lcmF0aW9uL2dlbmVyYXRvcnMvZmlsZVRlbXBsYXRlcy91aS9lbnZpcm9ubWVudC9zcmMvZGF0YVByb3ZpZGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDREQUFzRDtBQUN0RCxtREFHZ0M7QUFFaEMsMkRBQXVEO0FBRWhELE1BQU0sa0JBQWtCLEdBQUcsQ0FDaEMsUUFBa0IsRUFDbEIsVUFBa0MscUNBQTZCLEVBQy9ELEVBQUUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OEJBY3lCLE9BQU8sQ0FBQyxxQkFBcUIsSUFBSSxxQ0FBNkIsQ0FBQyxxQkFBcUI7Ozs7Ozs7Ozs7Ozs7O0lBYzlHLFFBQVE7S0FDUCxNQUFNLENBQ0wsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUEsdUJBQVcsRUFBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssUUFBUSxJQUFJLElBQUEsdUJBQVcsRUFBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUN6RTtLQUNBLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxJQUFBLGFBQUssRUFBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQztHQUN6QyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0F5REgsQ0FBQTtBQTdGWSxRQUFBLGtCQUFrQixzQkE2RjlCIn0=
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.genGraphCrudPermissions = void 0;
|
|
4
|
+
const cases_1 = require("../../../utils/cases");
|
|
5
|
+
// Mechanical in-memory transcription of backBasePermissionToGraphqlTmpl
|
|
6
|
+
// (generators/fileTemplates/back/graph/entityBasePermissionToGraphql.ts) —
|
|
7
|
+
// kept in sync by graphSchemaModeParity.spec.ts. Deliberately has no rePost
|
|
8
|
+
// entry: the file-mode equivalent (permissionsToGraphql.ts) never gains one
|
|
9
|
+
// either — backEntityPermissionToGraphqlTmpl only ever spreads the base map.
|
|
10
|
+
const genGraphCrudPermissions = (entity) => ({
|
|
11
|
+
meta: `_all${(0, cases_1.pascalPlural)(entity.name)}Meta`,
|
|
12
|
+
get: (0, cases_1.pascalSingular)(entity.name),
|
|
13
|
+
all: `all${(0, cases_1.pascalPlural)(entity.name)}`,
|
|
14
|
+
create: `create${(0, cases_1.pascalSingular)(entity.name)}`,
|
|
15
|
+
update: `update${(0, cases_1.pascalSingular)(entity.name)}`,
|
|
16
|
+
delete: `remove${(0, cases_1.pascalSingular)(entity.name)}`,
|
|
17
|
+
});
|
|
18
|
+
exports.genGraphCrudPermissions = genGraphCrudPermissions;
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuR3JhcGhDcnVkUGVybWlzc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcHJvamVjdHNHZW5lcmF0aW9uL2dlbmVyYXRvcnMvZ3JhcGgvZ2VuR3JhcGhDcnVkUGVybWlzc2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsZ0RBQWlFO0FBWWpFLHdFQUF3RTtBQUN4RSwyRUFBMkU7QUFDM0UsNEVBQTRFO0FBQzVFLDRFQUE0RTtBQUM1RSw2RUFBNkU7QUFDdEUsTUFBTSx1QkFBdUIsR0FBRyxDQUNyQyxNQUFjLEVBQ2dCLEVBQUUsQ0FBQyxDQUFDO0lBQ2xDLElBQUksRUFBRSxPQUFPLElBQUEsb0JBQVksRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU07SUFDNUMsR0FBRyxFQUFFLElBQUEsc0JBQWMsRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQ2hDLEdBQUcsRUFBRSxNQUFNLElBQUEsb0JBQVksRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7SUFDdEMsTUFBTSxFQUFFLFNBQVMsSUFBQSxzQkFBYyxFQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRTtJQUM5QyxNQUFNLEVBQUUsU0FBUyxJQUFBLHNCQUFjLEVBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO0lBQzlDLE1BQU0sRUFBRSxTQUFTLElBQUEsc0JBQWMsRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7Q0FDL0MsQ0FBQyxDQUFBO0FBVFcsUUFBQSx1QkFBdUIsMkJBU2xDIn0=
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.genGraphCrudResolvers = void 0;
|
|
4
|
+
const cases_1 = require("../../../utils/cases");
|
|
5
|
+
// Mechanical in-memory transcription of backBaseResolversTmpl
|
|
6
|
+
// (generators/fileTemplates/back/graph/resolvers.ts) — kept in sync by
|
|
7
|
+
// graphSchemaModeParity.spec.ts.
|
|
8
|
+
const genGraphCrudResolvers = (entity) => {
|
|
9
|
+
const serviceName = (0, cases_1.camelPlural)(entity.name);
|
|
10
|
+
const resolvers = {
|
|
11
|
+
Query: {
|
|
12
|
+
[(0, cases_1.pascalSingular)(entity.name)]: (_, { id }, { context }) => context.service(serviceName).get(id, true),
|
|
13
|
+
[`all${(0, cases_1.pascalPlural)(entity.name)}`]: (_, params, { context }) => context.service(serviceName).all(params, true),
|
|
14
|
+
[`_all${(0, cases_1.pascalPlural)(entity.name)}Meta`]: (_, params, { context }) => context.service(serviceName).meta(params, true),
|
|
15
|
+
},
|
|
16
|
+
Mutation: {
|
|
17
|
+
[`create${(0, cases_1.pascalSingular)(entity.name)}`]: (_, params, { context }) => context.service(serviceName).create(params, true),
|
|
18
|
+
[`update${(0, cases_1.pascalSingular)(entity.name)}`]: (_, params, { context }) => context.service(serviceName).update(params, true),
|
|
19
|
+
[`remove${(0, cases_1.pascalSingular)(entity.name)}`]: (_, params, { context }) => context.service(serviceName).delete(params, true),
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
if (entity.type === 'document') {
|
|
23
|
+
resolvers.Mutation[`rePost${(0, cases_1.pascalSingular)(entity.name)}`] = (_, params, { context }) => { var _a, _b; return (_b = (_a = context.service(serviceName)).rePost) === null || _b === void 0 ? void 0 : _b.call(_a, params.id, true); };
|
|
24
|
+
}
|
|
25
|
+
return resolvers;
|
|
26
|
+
};
|
|
27
|
+
exports.genGraphCrudResolvers = genGraphCrudResolvers;
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuR3JhcGhDcnVkUmVzb2x2ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Byb2plY3RzR2VuZXJhdGlvbi9nZW5lcmF0b3JzL2dyYXBoL2dlbkdyYXBoQ3J1ZFJlc29sdmVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnREFBOEU7QUFJOUUsOERBQThEO0FBQzlELHVFQUF1RTtBQUN2RSxpQ0FBaUM7QUFDMUIsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLE1BQWMsRUFBeUIsRUFBRTtJQUM3RSxNQUFNLFdBQVcsR0FBRyxJQUFBLG1CQUFXLEVBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBRTVDLE1BQU0sU0FBUyxHQUEwQjtRQUN2QyxLQUFLLEVBQUU7WUFDTCxDQUFDLElBQUEsc0JBQWMsRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFDLEVBQUUsRUFBQyxFQUFFLEVBQUMsT0FBTyxFQUFDLEVBQUUsRUFBRSxDQUNwRCxPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDO1lBQzVDLENBQUMsTUFBTSxJQUFBLG9CQUFZLEVBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBQyxPQUFPLEVBQUMsRUFBRSxFQUFFLENBQzVELE9BQU8sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUM7WUFDaEQsQ0FBQyxPQUFPLElBQUEsb0JBQVksRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFDLE9BQU8sRUFBQyxFQUFFLEVBQUUsQ0FDakUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQztTQUNsRDtRQUNELFFBQVEsRUFBRTtZQUNSLENBQUMsU0FBUyxJQUFBLHNCQUFjLEVBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBQyxPQUFPLEVBQUMsRUFBRSxFQUFFLENBQ2pFLE9BQU8sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUM7WUFDbkQsQ0FBQyxTQUFTLElBQUEsc0JBQWMsRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFDLE9BQU8sRUFBQyxFQUFFLEVBQUUsQ0FDakUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQztZQUNuRCxDQUFDLFNBQVMsSUFBQSxzQkFBYyxFQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUMsT0FBTyxFQUFDLEVBQUUsRUFBRSxDQUNqRSxPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDO1NBQ3BEO0tBQ0YsQ0FBQTtJQUVELElBQUksTUFBTSxDQUFDLElBQUksS0FBSyxVQUFVLEVBQUU7UUFDOUIsU0FBUyxDQUFDLFFBQVEsQ0FBQyxTQUFTLElBQUEsc0JBQWMsRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQzNELENBQUMsRUFDRCxNQUFNLEVBQ04sRUFBQyxPQUFPLEVBQUMsRUFDVCxFQUFFLGVBQUMsT0FBQSxNQUFBLE1BQUEsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBQyxNQUFNLG1EQUFHLE1BQU0sQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUEsRUFBQSxDQUFBO0tBQzVEO0lBRUQsT0FBTyxTQUFTLENBQUE7QUFDbEIsQ0FBQyxDQUFBO0FBL0JZLFFBQUEscUJBQXFCLHlCQStCakMifQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVudGltZUdyYXBoVHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcHJvamVjdHNHZW5lcmF0aW9uL2dlbmVyYXRvcnMvZ3JhcGgvcnVudGltZUdyYXBoVHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
|
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.generateProject = exports.getProjectSpec = void 0;
|
|
20
|
+
exports.genGraphCrudPermissions = exports.genGraphCrudResolvers = exports.genGraphCrudSchema = exports.generateProject = exports.getProjectSpec = void 0;
|
|
21
21
|
__exportStar(require("./commonEntities"), exports);
|
|
22
22
|
__exportStar(require("./types"), exports);
|
|
23
23
|
__exportStar(require("./defaultCatalogs"), exports);
|
|
@@ -29,4 +29,13 @@ var getProjectSpec_1 = require("./generators/fileTemplates/back/environment/docs
|
|
|
29
29
|
Object.defineProperty(exports, "getProjectSpec", { enumerable: true, get: function () { return __importDefault(getProjectSpec_1).default; } });
|
|
30
30
|
var generateProject_1 = require("./generateProject/generateProject");
|
|
31
31
|
Object.defineProperty(exports, "generateProject", { enumerable: true, get: function () { return __importDefault(generateProject_1).default; } });
|
|
32
|
-
|
|
32
|
+
// Runtime graph schema mode (graphSchemaMode: 'runtime_meta') — pure functions
|
|
33
|
+
// a consuming project's own server process can call directly, instead of the
|
|
34
|
+
// 'files' mode printing their output to per-entity disk files at regen time.
|
|
35
|
+
var genGraphCrudSchema_1 = require("./generators/graph/genGraphCrudSchema");
|
|
36
|
+
Object.defineProperty(exports, "genGraphCrudSchema", { enumerable: true, get: function () { return genGraphCrudSchema_1.genGraphCrudSchema; } });
|
|
37
|
+
var genGraphCrudResolvers_1 = require("./generators/graph/genGraphCrudResolvers");
|
|
38
|
+
Object.defineProperty(exports, "genGraphCrudResolvers", { enumerable: true, get: function () { return genGraphCrudResolvers_1.genGraphCrudResolvers; } });
|
|
39
|
+
var genGraphCrudPermissions_1 = require("./generators/graph/genGraphCrudPermissions");
|
|
40
|
+
Object.defineProperty(exports, "genGraphCrudPermissions", { enumerable: true, get: function () { return genGraphCrudPermissions_1.genGraphCrudPermissions; } });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvamVjdHNHZW5lcmF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsbURBQWdDO0FBQ2hDLDBDQUF1QjtBQUN2QixvREFBaUM7QUFDakMsNENBQXlCO0FBQ3pCLDZDQUEwQjtBQUMxQiw2Q0FBMEI7QUFDMUIsd0RBQXFDO0FBQ3JDLHVHQUE4RztBQUF0RyxpSUFBQSxPQUFPLE9BQWtCO0FBQ2pDLHFFQUE0RTtBQUFwRSxtSUFBQSxPQUFPLE9BQW1CO0FBRWxDLCtFQUErRTtBQUMvRSw2RUFBNkU7QUFDN0UsNkVBQTZFO0FBQzdFLDRFQUF3RTtBQUFoRSx3SEFBQSxrQkFBa0IsT0FBQTtBQUMxQixrRkFBOEU7QUFBdEUsOEhBQUEscUJBQXFCLE9BQUE7QUFDN0Isc0ZBR21EO0FBRmpELGtJQUFBLHVCQUF1QixPQUFBIn0=
|
|
@@ -31,6 +31,10 @@ exports.defaultBootstrapEntityOptions = {
|
|
|
31
31
|
genPrismaServices: true,
|
|
32
32
|
genGraphSchema: true,
|
|
33
33
|
genGraphResolvers: true,
|
|
34
|
+
// 'files' (default): today's behavior — per-entity typeDefs/resolvers/permissions
|
|
35
|
+
// files on disk, unchanged. 'runtime_meta': base CRUD graph layer is built in
|
|
36
|
+
// memory from entity meta at server start instead, no per-entity files for it.
|
|
37
|
+
graphSchemaMode: 'files',
|
|
34
38
|
genUiResources: true,
|
|
35
39
|
skipWarningThisIsGenerated: false,
|
|
36
40
|
genPrismaSchema: true,
|
|
@@ -113,6 +117,10 @@ exports.defaultBootstrapEntityOptions = {
|
|
|
113
117
|
layoutMode: 'detached',
|
|
114
118
|
sharedSchemaPath: '',
|
|
115
119
|
copySchemaToUi: true,
|
|
120
|
+
/** Copy back src/generated/graphql.ts to ui. Unset → follows copySchemaToUi. */
|
|
121
|
+
copyGraphqlTsToUi: undefined,
|
|
122
|
+
/** Module specifier of the introspection schema in the generated ui src/dataProvider/index.ts. */
|
|
123
|
+
uiGraphqlSchemaImport: '../generated/graphql.schema.json',
|
|
116
124
|
prismaModuleFormatCjs: false,
|
|
117
125
|
};
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvamVjdHNHZW5lcmF0aW9uL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUtBLE1BQU0sdUJBQXVCLEdBQUc7SUFDOUIsR0FBRyxFQUFFLElBQUk7Q0FDVixDQUFBO0FBRUQsTUFBTSx1QkFBdUIsR0FBRztJQUM5QixHQUFHLEVBQUUsSUFBSTtJQUNULFVBQVUsRUFBRSxLQUFLO0NBQ2xCLENBQUE7QUFFRCxNQUFNLHlCQUF5QixHQUFHO0lBQ2hDLEdBQUcsRUFBRSxJQUFJO0lBQ1QsVUFBVSxFQUFFLEtBQUs7Q0FDbEIsQ0FBQTtBQUVELE1BQU0sdUJBQXVCLEdBQUc7SUFDOUIsR0FBRyxFQUFFLElBQUk7Q0FDVixDQUFBO0FBRUQsTUFBTSxtQkFBbUIsR0FBRztJQUMxQixJQUFJLEVBQUUsdUJBQXVCO0lBQzdCLElBQUksRUFBRSx1QkFBdUI7SUFDN0IsSUFBSSxFQUFFLHVCQUF1QjtJQUM3QixNQUFNLEVBQUUseUJBQXlCO0lBQ2pDLElBQUksRUFBRTtRQUNKLElBQUksRUFBRSxJQUFJO0tBQ1g7SUFDRCxhQUFhLEVBQUU7UUFDYixJQUFJLEVBQUUsSUFBSTtLQUNYO0NBQ0YsQ0FBQTtBQUVZLFFBQUEsNkJBQTZCLEdBQUc7SUFDM0MsaUJBQWlCLEVBQUUsSUFBSTtJQUN2QixjQUFjLEVBQUUsSUFBSTtJQUNwQixpQkFBaUIsRUFBRSxJQUFJO0lBQ3ZCLGtGQUFrRjtJQUNsRiw4RUFBOEU7SUFDOUUsK0VBQStFO0lBQy9FLGVBQWUsRUFBRSxPQUFtQztJQUNwRCxjQUFjLEVBQUUsSUFBSTtJQUNwQiwwQkFBMEIsRUFBRSxLQUFLO0lBQ2pDLGVBQWUsRUFBRSxJQUFJO0lBQ3JCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLFNBQVMsRUFBRSxLQUFLO0lBRWhCLGFBQWEsRUFBRSxJQUFJO0lBQ25CLGVBQWUsRUFBRSxJQUFJO0lBRXJCLGdCQUFnQixFQUFF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
|
|
@@ -3,6 +3,7 @@ import { GenerationPathsConfig } from '../builders/generationPaths';
|
|
|
3
3
|
type GraphSchemesOptions = BootstrapEntityOptions & {
|
|
4
4
|
sharedSchemaPath?: string;
|
|
5
5
|
copySchemaToUi?: boolean;
|
|
6
|
+
copyGraphqlTsToUi?: boolean;
|
|
6
7
|
generationPaths?: GenerationPathsConfig;
|
|
7
8
|
detachedSharedProject?: string;
|
|
8
9
|
};
|
|
@@ -3,6 +3,7 @@ export declare const genClickHouseJobsDataTmpl: (entities: Entity[], _options?:
|
|
|
3
3
|
genPrismaServices: boolean;
|
|
4
4
|
genGraphSchema: boolean;
|
|
5
5
|
genGraphResolvers: boolean;
|
|
6
|
+
graphSchemaMode: "files" | "runtime_meta";
|
|
6
7
|
genUiResources: boolean;
|
|
7
8
|
skipWarningThisIsGenerated: boolean;
|
|
8
9
|
genPrismaSchema: boolean;
|
|
@@ -95,12 +96,15 @@ export declare const genClickHouseJobsDataTmpl: (entities: Entity[], _options?:
|
|
|
95
96
|
layoutMode: "detached" | "monorepo";
|
|
96
97
|
sharedSchemaPath: string;
|
|
97
98
|
copySchemaToUi: boolean;
|
|
99
|
+
copyGraphqlTsToUi: boolean | undefined;
|
|
100
|
+
uiGraphqlSchemaImport: string;
|
|
98
101
|
prismaModuleFormatCjs: boolean;
|
|
99
102
|
}) => string;
|
|
100
103
|
export declare const genClickHouseJobsTmpl: (entities: Entity[], options?: {
|
|
101
104
|
genPrismaServices: boolean;
|
|
102
105
|
genGraphSchema: boolean;
|
|
103
106
|
genGraphResolvers: boolean;
|
|
107
|
+
graphSchemaMode: "files" | "runtime_meta";
|
|
104
108
|
genUiResources: boolean;
|
|
105
109
|
skipWarningThisIsGenerated: boolean;
|
|
106
110
|
genPrismaSchema: boolean;
|
|
@@ -193,5 +197,7 @@ export declare const genClickHouseJobsTmpl: (entities: Entity[], options?: {
|
|
|
193
197
|
layoutMode: "detached" | "monorepo";
|
|
194
198
|
sharedSchemaPath: string;
|
|
195
199
|
copySchemaToUi: boolean;
|
|
200
|
+
copyGraphqlTsToUi: boolean | undefined;
|
|
201
|
+
uiGraphqlSchemaImport: string;
|
|
196
202
|
prismaModuleFormatCjs: boolean;
|
|
197
203
|
}) => string;
|
|
@@ -3,6 +3,7 @@ export declare const genJobsDataTmpl: (entities: Entity[], _options?: {
|
|
|
3
3
|
genPrismaServices: boolean;
|
|
4
4
|
genGraphSchema: boolean;
|
|
5
5
|
genGraphResolvers: boolean;
|
|
6
|
+
graphSchemaMode: "files" | "runtime_meta";
|
|
6
7
|
genUiResources: boolean;
|
|
7
8
|
skipWarningThisIsGenerated: boolean;
|
|
8
9
|
genPrismaSchema: boolean;
|
|
@@ -95,12 +96,15 @@ export declare const genJobsDataTmpl: (entities: Entity[], _options?: {
|
|
|
95
96
|
layoutMode: "detached" | "monorepo";
|
|
96
97
|
sharedSchemaPath: string;
|
|
97
98
|
copySchemaToUi: boolean;
|
|
99
|
+
copyGraphqlTsToUi: boolean | undefined;
|
|
100
|
+
uiGraphqlSchemaImport: string;
|
|
98
101
|
prismaModuleFormatCjs: boolean;
|
|
99
102
|
}) => string;
|
|
100
103
|
export declare const genJobsTmpl: (entities: Entity[], options?: {
|
|
101
104
|
genPrismaServices: boolean;
|
|
102
105
|
genGraphSchema: boolean;
|
|
103
106
|
genGraphResolvers: boolean;
|
|
107
|
+
graphSchemaMode: "files" | "runtime_meta";
|
|
104
108
|
genUiResources: boolean;
|
|
105
109
|
skipWarningThisIsGenerated: boolean;
|
|
106
110
|
genPrismaSchema: boolean;
|
|
@@ -193,5 +197,7 @@ export declare const genJobsTmpl: (entities: Entity[], options?: {
|
|
|
193
197
|
layoutMode: "detached" | "monorepo";
|
|
194
198
|
sharedSchemaPath: string;
|
|
195
199
|
copySchemaToUi: boolean;
|
|
200
|
+
copyGraphqlTsToUi: boolean | undefined;
|
|
201
|
+
uiGraphqlSchemaImport: string;
|
|
196
202
|
prismaModuleFormatCjs: boolean;
|
|
197
203
|
}) => string;
|
package/build/types/projectsGeneration/generators/fileTemplates/back/graph/permissionsToGraphql.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { ProjectWideGenerationArgs } from '../../../../args';
|
|
2
|
-
export declare const backPermissionToGraphqlTmpl: ({ entities }: ProjectWideGenerationArgs) => string;
|
|
2
|
+
export declare const backPermissionToGraphqlTmpl: ({ entities, options }: ProjectWideGenerationArgs) => string;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { BootstrapEntityOptions } from '../../../../../../types';
|
|
2
2
|
import { Entity } from '../../../../../../builders/buildedTypes';
|
|
3
|
-
export declare const uiDataProviderTmpl: (entities: Entity[],
|
|
3
|
+
export declare const uiDataProviderTmpl: (entities: Entity[], options?: BootstrapEntityOptions) => string;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Entity } from '../../builders/buildedTypes';
|
|
2
|
+
export interface GraphCrudPermissionToGraphql {
|
|
3
|
+
meta: string;
|
|
4
|
+
get: string;
|
|
5
|
+
all: string;
|
|
6
|
+
create: string;
|
|
7
|
+
update: string;
|
|
8
|
+
delete: string;
|
|
9
|
+
}
|
|
10
|
+
export declare const genGraphCrudPermissions: (entity: Entity) => GraphCrudPermissionToGraphql;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export interface RuntimeCrudService {
|
|
2
|
+
get: (id: unknown, checkPermission: boolean) => unknown;
|
|
3
|
+
all: (params: unknown, checkPermission: boolean) => unknown;
|
|
4
|
+
meta: (params: unknown, checkPermission: boolean) => unknown;
|
|
5
|
+
create: (params: unknown, checkPermission: boolean) => unknown;
|
|
6
|
+
update: (params: unknown, checkPermission: boolean) => unknown;
|
|
7
|
+
delete: (params: unknown, checkPermission: boolean) => unknown;
|
|
8
|
+
rePost?: (id: unknown, checkPermission: boolean) => unknown;
|
|
9
|
+
}
|
|
10
|
+
export interface RuntimeGraphContext {
|
|
11
|
+
service: (name: string) => RuntimeCrudService;
|
|
12
|
+
}
|
|
13
|
+
export type RuntimeGraphResolverFn = (parent: unknown, params: {
|
|
14
|
+
id?: unknown;
|
|
15
|
+
}, context: {
|
|
16
|
+
context: RuntimeGraphContext;
|
|
17
|
+
}) => unknown;
|
|
18
|
+
export interface RuntimeGraphResolvers {
|
|
19
|
+
Query: Record<string, RuntimeGraphResolverFn>;
|
|
20
|
+
Mutation: Record<string, RuntimeGraphResolverFn>;
|
|
21
|
+
}
|
|
@@ -7,3 +7,7 @@ export * from './builders';
|
|
|
7
7
|
export * from './resolveProjectPaths';
|
|
8
8
|
export { default as getProjectSpec } from './generators/fileTemplates/back/environment/docs/spec/getProjectSpec';
|
|
9
9
|
export { default as generateProject } from './generateProject/generateProject';
|
|
10
|
+
export { genGraphCrudSchema } from './generators/graph/genGraphCrudSchema';
|
|
11
|
+
export { genGraphCrudResolvers } from './generators/graph/genGraphCrudResolvers';
|
|
12
|
+
export { genGraphCrudPermissions, type GraphCrudPermissionToGraphql, } from './generators/graph/genGraphCrudPermissions';
|
|
13
|
+
export type { RuntimeCrudService, RuntimeGraphContext, RuntimeGraphResolverFn, RuntimeGraphResolvers, } from './generators/graph/runtimeGraphTypes';
|
|
@@ -6,6 +6,7 @@ export declare const defaultBootstrapEntityOptions: {
|
|
|
6
6
|
genPrismaServices: boolean;
|
|
7
7
|
genGraphSchema: boolean;
|
|
8
8
|
genGraphResolvers: boolean;
|
|
9
|
+
graphSchemaMode: "files" | "runtime_meta";
|
|
9
10
|
genUiResources: boolean;
|
|
10
11
|
skipWarningThisIsGenerated: boolean;
|
|
11
12
|
genPrismaSchema: boolean;
|
|
@@ -98,6 +99,10 @@ export declare const defaultBootstrapEntityOptions: {
|
|
|
98
99
|
layoutMode: "detached" | "monorepo";
|
|
99
100
|
sharedSchemaPath: string;
|
|
100
101
|
copySchemaToUi: boolean;
|
|
102
|
+
/** Copy back src/generated/graphql.ts to ui. Unset → follows copySchemaToUi. */
|
|
103
|
+
copyGraphqlTsToUi: boolean | undefined;
|
|
104
|
+
/** Module specifier of the introspection schema in the generated ui src/dataProvider/index.ts. */
|
|
105
|
+
uiGraphqlSchemaImport: string;
|
|
101
106
|
prismaModuleFormatCjs: boolean;
|
|
102
107
|
};
|
|
103
108
|
export type BootstrapEntityOptions = typeof defaultBootstrapEntityOptions;
|
package/docs/09-options.md
CHANGED
|
@@ -164,6 +164,9 @@ Nested under `forms`:
|
|
|
164
164
|
|------|---------|-------------|
|
|
165
165
|
| `detachedBackProject` | `''` | Absolute path to the backend project. Auto-resolved to `../<prefix>-back` if empty. |
|
|
166
166
|
| `detachedUiProject` | `''` | Absolute path to the frontend project. Auto-resolved to `../<prefix>-ui` if empty. |
|
|
167
|
+
| `copySchemaToUi` | `true` | Copy back `src/generated/graphql.schema.json` to ui `src/generated/`. Set `false` in a monorepo where ui reads the schema from a shared package (`runlify.json` → `paths.sharedSchema`). |
|
|
168
|
+
| `copyGraphqlTsToUi` | unset | Copy back `src/generated/graphql.ts` to ui `src/generated/`. Unset → same as `copySchemaToUi` (old behaviour: one flag for both files). |
|
|
169
|
+
| `uiGraphqlSchemaImport` | `'../generated/graphql.schema.json'` | Module specifier of the schema in the generated ui `src/dataProvider/index.ts`, e.g. `'@acme/shared/graphql.schema.json'`. |
|
|
167
170
|
|
|
168
171
|
---
|
|
169
172
|
|