@researchdatabox/redbox-dev-tools 0.0.1 → 5.0.0-RC2

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 (129) hide show
  1. package/README.md +259 -14
  2. package/bin/cli.js +3 -0
  3. package/bin/run-hook-mocha.js +3 -0
  4. package/bin/run-hook-tsc.js +3 -0
  5. package/bin/wrapper-webpack.js +168 -0
  6. package/config/tsconfig.base.json +16 -0
  7. package/dist/bin/run-hook-mocha.d.ts +1 -0
  8. package/dist/bin/run-hook-mocha.js +49 -0
  9. package/dist/bin/run-hook-tsc.d.ts +1 -0
  10. package/dist/bin/run-hook-tsc.js +19 -0
  11. package/dist/cli-parsers.d.ts +9 -0
  12. package/dist/cli-parsers.js +131 -0
  13. package/dist/cli.d.ts +1 -0
  14. package/dist/cli.js +495 -0
  15. package/dist/commands/form-config.d.ts +6 -0
  16. package/dist/commands/form-config.js +401 -0
  17. package/dist/commands/sync-translation.d.ts +23 -0
  18. package/dist/commands/sync-translation.js +348 -0
  19. package/dist/completion/index.d.ts +1 -0
  20. package/dist/completion/index.js +218 -0
  21. package/dist/generators/add-method.d.ts +27 -0
  22. package/dist/generators/add-method.js +235 -0
  23. package/dist/generators/angular-app.d.ts +24 -0
  24. package/dist/generators/angular-app.js +342 -0
  25. package/dist/generators/angular-service.d.ts +21 -0
  26. package/dist/generators/angular-service.js +154 -0
  27. package/dist/generators/controller.d.ts +40 -0
  28. package/dist/generators/controller.js +195 -0
  29. package/dist/generators/form-component.d.ts +46 -0
  30. package/dist/generators/form-component.js +906 -0
  31. package/dist/generators/form-field.d.ts +15 -0
  32. package/dist/generators/form-field.js +160 -0
  33. package/dist/generators/migration.d.ts +15 -0
  34. package/dist/generators/migration.js +100 -0
  35. package/dist/generators/model.d.ts +42 -0
  36. package/dist/generators/model.js +206 -0
  37. package/dist/generators/service.d.ts +16 -0
  38. package/dist/generators/service.js +111 -0
  39. package/dist/runtime-resolver.d.ts +3 -0
  40. package/dist/runtime-resolver.js +27 -0
  41. package/dist/templates/hook-archetype.d.ts +12 -0
  42. package/dist/templates/hook-archetype.js +187 -0
  43. package/dist/testing.d.ts +7 -0
  44. package/dist/testing.js +53 -0
  45. package/dist/utils/config-helper.d.ts +71 -0
  46. package/dist/utils/config-helper.js +574 -0
  47. package/dist/utils/generator.d.ts +10 -0
  48. package/dist/utils/generator.js +68 -0
  49. package/dist/utils/hook-tsconfig.d.ts +9 -0
  50. package/dist/utils/hook-tsconfig.js +104 -0
  51. package/dist/utils/paths.d.ts +10 -0
  52. package/dist/utils/paths.js +60 -0
  53. package/index.js +4 -0
  54. package/package.json +76 -19
  55. package/runtime-resolver.d.ts +1 -0
  56. package/runtime-resolver.js +3 -0
  57. package/skills/redbox-angular-apps/SKILL.md +42 -0
  58. package/skills/redbox-angular-services/SKILL.md +29 -0
  59. package/skills/redbox-controllers/SKILL.md +65 -0
  60. package/skills/redbox-feature-design-planner/SKILL.md +169 -0
  61. package/skills/redbox-feature-implementation-review/SKILL.md +117 -0
  62. package/skills/redbox-form-components/SKILL.md +114 -0
  63. package/skills/redbox-form-config/SKILL.md +34 -0
  64. package/skills/redbox-hook-development/SKILL.md +66 -0
  65. package/skills/redbox-services/SKILL.md +54 -0
  66. package/skills/redbox-test-verification/SKILL.md +38 -0
  67. package/skills/redbox-testing/SKILL.md +64 -0
  68. package/skills/redbox-web-verification/SKILL.md +71 -0
  69. package/skills/redbox-web-verification/redbox-angular-apps/SKILL.md +48 -0
  70. package/skills/redbox-web-verification/redbox-angular-services/SKILL.md +30 -0
  71. package/skills/redbox-web-verification/redbox-controllers/SKILL.md +56 -0
  72. package/skills/redbox-web-verification/redbox-form-config/SKILL.md +29 -0
  73. package/skills/redbox-web-verification/redbox-hook-development/SKILL.md +61 -0
  74. package/skills/redbox-web-verification/redbox-services/SKILL.md +45 -0
  75. package/skills/redbox-web-verification/redbox-testing/SKILL.md +53 -0
  76. package/skills/redbox-web-verification/redbox-web-verification/SKILL.md +47 -0
  77. package/templates/hook-archetype/standard/.gitignore.hbs +5 -0
  78. package/templates/hook-archetype/standard/.npmignore.hbs +4 -0
  79. package/templates/hook-archetype/standard/.npmrc.hbs +6 -0
  80. package/templates/hook-archetype/standard/.nvmrc.hbs +1 -0
  81. package/templates/hook-archetype/standard/AGENTS.md.hbs +51 -0
  82. package/templates/hook-archetype/standard/Dockerfile.hbs +29 -0
  83. package/templates/hook-archetype/standard/README.md.hbs +57 -0
  84. package/templates/hook-archetype/standard/assets/default/.gitkeep +1 -0
  85. package/templates/hook-archetype/standard/assets/fonts/.gitkeep +1 -0
  86. package/templates/hook-archetype/standard/assets/images/.gitkeep +1 -0
  87. package/templates/hook-archetype/standard/assets/styles/.gitkeep +1 -0
  88. package/templates/hook-archetype/standard/language-defaults/.gitkeep +1 -0
  89. package/templates/hook-archetype/standard/language-defaults/README.md.hbs +10 -0
  90. package/templates/hook-archetype/standard/language-defaults/en/translation.json.hbs +3 -0
  91. package/templates/hook-archetype/standard/language-defaults/meta.json.hbs +6 -0
  92. package/templates/hook-archetype/standard/package.json.hbs +44 -0
  93. package/templates/hook-archetype/standard/src/api/controllers/ExampleController.ts.hbs +21 -0
  94. package/templates/hook-archetype/standard/src/api/controllers/index.ts.hbs +23 -0
  95. package/templates/hook-archetype/standard/src/api/services/ExampleService.ts.hbs +22 -0
  96. package/templates/hook-archetype/standard/src/api/services/index.ts.hbs +23 -0
  97. package/templates/hook-archetype/standard/src/config/brandingConfigurationDefaults.ts.hbs +9 -0
  98. package/templates/hook-archetype/standard/src/config/reusableFormDefinitions.ts.hbs +6 -0
  99. package/templates/hook-archetype/standard/src/form-config/default-1.0-draft.ts.hbs +20 -0
  100. package/templates/hook-archetype/standard/src/form-config/index.ts.hbs +8 -0
  101. package/templates/hook-archetype/standard/src/index.ts.hbs +55 -0
  102. package/templates/hook-archetype/standard/src/migrations/index.ts.hbs +19 -0
  103. package/templates/hook-archetype/standard/support/bootstrap-data/.gitkeep +1 -0
  104. package/templates/hook-archetype/standard/support/bootstrap-data/namedqueries/.gitkeep +1 -0
  105. package/templates/hook-archetype/standard/support/bootstrap-data/records/.gitkeep +1 -0
  106. package/templates/hook-archetype/standard/support/bootstrap-data/reports/.gitkeep +1 -0
  107. package/templates/hook-archetype/standard/support/bootstrap-data/vocabularies/.gitkeep +1 -0
  108. package/templates/hook-archetype/standard/support/development/core-mount.env.hbs +3 -0
  109. package/templates/hook-archetype/standard/support/development/docker-compose.core-mount.yml.hbs +37 -0
  110. package/templates/hook-archetype/standard/support/development/docker-compose.yml.hbs +108 -0
  111. package/templates/hook-archetype/standard/support/development/prepare-core-mount.sh.hbs +61 -0
  112. package/templates/hook-archetype/standard/support/integration-testing/docker-compose.mocha.yml.hbs +118 -0
  113. package/templates/hook-archetype/standard/support/integration-testing/run-mocha-hook.sh.hbs +14 -0
  114. package/templates/hook-archetype/standard/support/integration-testing/run-mocha-redbox.sh.hbs +100 -0
  115. package/templates/hook-archetype/standard/support/prepare-minio.sh.hbs +74 -0
  116. package/templates/hook-archetype/standard/test/integration/hook-registration.test.ts.hbs +15 -0
  117. package/templates/hook-archetype/standard/test/support/globals.ts.hbs +40 -0
  118. package/templates/hook-archetype/standard/test/tsconfig.json.hbs +8 -0
  119. package/templates/hook-archetype/standard/test/unit/.mocharc.cjs.hbs +9 -0
  120. package/templates/hook-archetype/standard/test/unit/index.test.ts.hbs +46 -0
  121. package/templates/hook-archetype/standard/tsconfig.json.hbs +15 -0
  122. package/templates/hook-archetype/standard/views/.gitkeep +1 -0
  123. package/templates/hook-archetype/standard/views/default/.gitkeep +1 -0
  124. package/testing.d.ts +1 -0
  125. package/testing.js +3 -0
  126. package/.travis.yml +0 -23
  127. package/commands/initProject.js +0 -129
  128. package/redbox-dev-tools +0 -70
  129. package/yarn.lock +0 -1061
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getResolutionPaths = getResolutionPaths;
7
+ exports.resolveFromRedboxContract = resolveFromRedboxContract;
8
+ exports.requireFromRedboxContract = requireFromRedboxContract;
9
+ const path_1 = __importDefault(require("path"));
10
+ function getResolutionPaths() {
11
+ const paths = [];
12
+ try {
13
+ const redboxCorePackageJson = require.resolve('@researchdatabox/redbox-core/package.json');
14
+ paths.push(path_1.default.dirname(redboxCorePackageJson));
15
+ }
16
+ catch (_error) {
17
+ }
18
+ paths.push(__dirname);
19
+ paths.push(process.cwd());
20
+ return paths;
21
+ }
22
+ function resolveFromRedboxContract(request) {
23
+ return require.resolve(request, { paths: getResolutionPaths() });
24
+ }
25
+ function requireFromRedboxContract(request) {
26
+ return require(resolveFromRedboxContract(request));
27
+ }
@@ -0,0 +1,12 @@
1
+ export interface HookArchetypeOptions {
2
+ cwd: string;
3
+ packageName: string;
4
+ description?: string;
5
+ force?: boolean;
6
+ templateName?: string;
7
+ }
8
+ export interface HookArchetypeResult {
9
+ created: string[];
10
+ skipped: string[];
11
+ }
12
+ export declare function generateHookArchetype(options: HookArchetypeOptions): HookArchetypeResult;
@@ -0,0 +1,187 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.generateHookArchetype = generateHookArchetype;
40
+ const fs = __importStar(require("fs"));
41
+ const path = __importStar(require("path"));
42
+ const handlebars_1 = __importDefault(require("handlebars"));
43
+ const handlebars = handlebars_1.default.create();
44
+ handlebars.registerHelper('json', (value) => JSON.stringify(value));
45
+ function toPascalCase(value) {
46
+ return value
47
+ .split(/[^A-Za-z0-9]+/)
48
+ .filter(Boolean)
49
+ .map(part => part.charAt(0).toUpperCase() + part.slice(1))
50
+ .join('');
51
+ }
52
+ function normalizePackageName(value) {
53
+ const cleaned = value.trim().toLowerCase().replace(/[^a-z0-9-_]/g, '-');
54
+ return cleaned.startsWith('redbox-hook-') ? cleaned : `redbox-hook-${cleaned}`;
55
+ }
56
+ function getPackageRoot() {
57
+ return path.resolve(__dirname, '..', '..');
58
+ }
59
+ function getTemplateRoot(templateName) {
60
+ return path.join(getPackageRoot(), 'templates', 'hook-archetype', templateName);
61
+ }
62
+ function walkTemplateFiles(dir) {
63
+ const entries = fs.readdirSync(dir, { withFileTypes: true });
64
+ const files = [];
65
+ for (const entry of entries) {
66
+ const fullPath = path.join(dir, entry.name);
67
+ if (entry.isDirectory()) {
68
+ files.push(...walkTemplateFiles(fullPath));
69
+ }
70
+ else if (entry.isFile()) {
71
+ files.push(fullPath);
72
+ }
73
+ }
74
+ return files;
75
+ }
76
+ function renderTemplate(sourcePath, context) {
77
+ const templateSource = fs.readFileSync(sourcePath, 'utf8');
78
+ const template = handlebars.compile(templateSource, { noEscape: true });
79
+ return template(context);
80
+ }
81
+ function toOutputRelativePath(templateRoot, filePath) {
82
+ const relativePath = path.relative(templateRoot, filePath);
83
+ return relativePath.endsWith('.hbs')
84
+ ? relativePath.slice(0, -4)
85
+ : relativePath;
86
+ }
87
+ function shouldMarkExecutable(relativePath) {
88
+ return relativePath.endsWith('.sh');
89
+ }
90
+ function readPackageJson(packageJsonPath) {
91
+ return JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
92
+ }
93
+ function tryReadPackageJson(packageJsonPath) {
94
+ return fs.existsSync(packageJsonPath)
95
+ ? readPackageJson(packageJsonPath)
96
+ : undefined;
97
+ }
98
+ function getScopedPackageName(packageName) {
99
+ return `@researchdatabox/${packageName}`;
100
+ }
101
+ function readOwnPackageVersion(packageRoot) {
102
+ const packageJson = tryReadPackageJson(path.join(packageRoot, 'package.json'));
103
+ if (!packageJson?.version) {
104
+ throw new Error('Could not determine version for @researchdatabox/redbox-dev-tools');
105
+ }
106
+ return packageJson.version;
107
+ }
108
+ function tryReadInstalledPackageVersion(packageRoot, packageName) {
109
+ const packageJsonPath = path.join(packageRoot, 'node_modules', ...getScopedPackageName(packageName).split('/'), 'package.json');
110
+ return tryReadPackageJson(packageJsonPath)?.version;
111
+ }
112
+ function isReusableDependencySpecifier(versionSpecifier) {
113
+ return !/^(file:|workspace:|link:|portal:)/.test(versionSpecifier);
114
+ }
115
+ function readDeclaredDependencyVersion(packageRoot, packageName) {
116
+ const packageJson = tryReadPackageJson(path.join(packageRoot, 'package.json'));
117
+ const dependencyName = getScopedPackageName(packageName);
118
+ const versionSpecifier = packageJson?.dependencies?.[dependencyName]
119
+ ?? packageJson?.peerDependencies?.[dependencyName]
120
+ ?? packageJson?.devDependencies?.[dependencyName];
121
+ return versionSpecifier && isReusableDependencySpecifier(versionSpecifier)
122
+ ? versionSpecifier
123
+ : undefined;
124
+ }
125
+ function readDependencyPackageVersion(packageRoot, packageName) {
126
+ const installedVersion = tryReadInstalledPackageVersion(packageRoot, packageName);
127
+ if (installedVersion) {
128
+ return installedVersion;
129
+ }
130
+ const siblingPackageJson = tryReadPackageJson(path.join(packageRoot, '..', packageName, 'package.json'));
131
+ if (siblingPackageJson?.version) {
132
+ return siblingPackageJson.version;
133
+ }
134
+ const declaredVersion = readDeclaredDependencyVersion(packageRoot, packageName);
135
+ if (declaredVersion) {
136
+ return declaredVersion;
137
+ }
138
+ throw new Error(`Could not determine version for ${getScopedPackageName(packageName)}`);
139
+ }
140
+ function buildTemplateContext(options) {
141
+ const packageRoot = getPackageRoot();
142
+ const packageName = normalizePackageName(options.packageName);
143
+ const hookShortName = packageName.replace(/^redbox-hook-/, '');
144
+ const hookPascalName = toPascalCase(hookShortName);
145
+ return {
146
+ packageName,
147
+ hookShortName,
148
+ hookPascalName,
149
+ description: options.description ?? `ReDBox hook for ${hookPascalName}`,
150
+ integrationDirName: `hook-${hookShortName}`,
151
+ redboxCoreVersion: readDependencyPackageVersion(packageRoot, 'redbox-core'),
152
+ redboxDevToolsVersion: readOwnPackageVersion(packageRoot),
153
+ };
154
+ }
155
+ function generateHookArchetype(options) {
156
+ const force = options.force ?? false;
157
+ const templateName = options.templateName ?? 'standard';
158
+ const templateRoot = getTemplateRoot(templateName);
159
+ if (!fs.existsSync(templateRoot)) {
160
+ throw new Error(`Unknown hook archetype template: ${templateName}`);
161
+ }
162
+ const context = buildTemplateContext(options);
163
+ const templateFiles = walkTemplateFiles(templateRoot);
164
+ const created = [];
165
+ const skipped = [];
166
+ for (const templateFile of templateFiles) {
167
+ const relativePath = toOutputRelativePath(templateRoot, templateFile);
168
+ const outputPath = path.join(options.cwd, relativePath);
169
+ const alreadyExists = fs.existsSync(outputPath);
170
+ if (alreadyExists && !force) {
171
+ skipped.push(relativePath);
172
+ continue;
173
+ }
174
+ fs.mkdirSync(path.dirname(outputPath), { recursive: true });
175
+ if (templateFile.endsWith('.hbs')) {
176
+ fs.writeFileSync(outputPath, renderTemplate(templateFile, context));
177
+ }
178
+ else {
179
+ fs.copyFileSync(templateFile, outputPath);
180
+ }
181
+ if (shouldMarkExecutable(relativePath)) {
182
+ fs.chmodSync(outputPath, 0o755);
183
+ }
184
+ created.push(relativePath);
185
+ }
186
+ return { created, skipped };
187
+ }
@@ -0,0 +1,7 @@
1
+ import * as chai from 'chai';
2
+ import _ from 'lodash';
3
+ import * as rxjs from 'rxjs';
4
+ declare const should: Chai.Should;
5
+ declare const expect: Chai.ExpectStatic, assert: Chai.AssertStatic;
6
+ declare const firstValueFrom: typeof rxjs.firstValueFrom;
7
+ export { chai, expect, assert, should, _, _ as lodash, rxjs, firstValueFrom, };
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.firstValueFrom = exports.rxjs = exports.lodash = exports._ = exports.should = exports.assert = exports.expect = exports.chai = void 0;
40
+ const chai = __importStar(require("chai"));
41
+ exports.chai = chai;
42
+ const lodash_1 = __importDefault(require("lodash"));
43
+ exports._ = lodash_1.default;
44
+ exports.lodash = lodash_1.default;
45
+ const rxjs = __importStar(require("rxjs"));
46
+ exports.rxjs = rxjs;
47
+ const should = chai.should();
48
+ exports.should = should;
49
+ const { expect, assert } = chai;
50
+ exports.expect = expect;
51
+ exports.assert = assert;
52
+ const { firstValueFrom } = rxjs;
53
+ exports.firstValueFrom = firstValueFrom;
@@ -0,0 +1,71 @@
1
+ import { Project } from 'ts-morph';
2
+ import { RedboxPaths } from './paths';
3
+ export type NavigationTarget = 'menu' | 'menuRoot' | 'homePanel' | 'adminSection' | 'adminFooter';
4
+ export interface NavigationMapping {
5
+ action?: string;
6
+ target: NavigationTarget;
7
+ containerId?: string;
8
+ itemId?: string;
9
+ labelKey: string;
10
+ href?: string;
11
+ }
12
+ export interface LanguageDefaultEntry {
13
+ key: string;
14
+ value: string;
15
+ language?: string;
16
+ }
17
+ export declare function updateModelIndex(params: {
18
+ project: Project;
19
+ paths: RedboxPaths;
20
+ root: string;
21
+ modelName: string;
22
+ dryRun: boolean;
23
+ }): Promise<void>;
24
+ export declare function updateControllerIndex(params: {
25
+ project: Project;
26
+ paths: RedboxPaths;
27
+ root: string;
28
+ controllerName: string;
29
+ className: string;
30
+ webservice: boolean;
31
+ dryRun: boolean;
32
+ }): Promise<void>;
33
+ export declare function updateServiceIndex(params: {
34
+ project: Project;
35
+ paths: RedboxPaths;
36
+ root: string;
37
+ serviceName: string;
38
+ className: string;
39
+ dryRun: boolean;
40
+ }): Promise<void>;
41
+ export declare function updateRoutes(params: {
42
+ project: Project;
43
+ paths: RedboxPaths;
44
+ root: string;
45
+ route: string;
46
+ controllerName: string;
47
+ action: string;
48
+ webservice: boolean;
49
+ csrf?: boolean;
50
+ dryRun: boolean;
51
+ }): Promise<void>;
52
+ export declare function updateAuth(params: {
53
+ project: Project;
54
+ paths: RedboxPaths;
55
+ root: string;
56
+ route: string;
57
+ auth: string[];
58
+ dryRun: boolean;
59
+ }): Promise<void>;
60
+ export declare function updateNavigationConfig(params: {
61
+ project: Project;
62
+ paths: RedboxPaths;
63
+ root: string;
64
+ mapping: NavigationMapping;
65
+ dryRun: boolean;
66
+ }): Promise<void>;
67
+ export declare function updateLanguageDefaults(params: {
68
+ root: string;
69
+ entries: LanguageDefaultEntry[];
70
+ dryRun: boolean;
71
+ }): Promise<void>;