vovk-cli 0.0.1-beta.68 → 0.0.1-beta.69
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/client-templates/mjsBase/index.d.mts.ejs +2 -2
- package/client-templates/mjsBase/index.mjs.ejs +4 -4
- package/client-templates/openapiMjs/openapi.mjs.ejs +4 -0
- package/client-templates/schemaMjs/schema.mjs.ejs +29 -0
- package/client-templates/tsBase/index.ts.ejs +4 -4
- package/dist/dev/index.mjs +2 -9
- package/dist/generate/getTemplateClientImports.d.mts +2 -6
- package/dist/generate/getTemplateClientImports.mjs +9 -28
- package/dist/generate/writeOneClientFile.mjs +0 -1
- package/dist/getProjectInfo/getConfig/getConfigAbsolutePaths.mjs +1 -1
- package/dist/getProjectInfo/getConfig/getTemplateDefs.d.mts +2 -4
- package/dist/getProjectInfo/getConfig/getTemplateDefs.mjs +8 -23
- package/dist/getProjectInfo/getConfig/index.mjs +1 -1
- package/dist/init/createConfig.mjs +1 -1
- package/package.json +2 -2
- package/client-templates/cjsBase/index.cjs.ejs +0 -18
- package/client-templates/cjsBase/index.d.cts.ejs +0 -21
- package/client-templates/openapiCjs/openapi.cjs.ejs +0 -4
- package/client-templates/schemaCjs/schema.cjs.ejs +0 -24
- /package/client-templates/{openapiCjs/openapi.d.cts.ejs → openapiMjs/openapi.d.mts.ejs} +0 -0
- /package/client-templates/{schemaCjs/schema.d.cts.ejs → schemaMjs/schema.d.mjs.ejs} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<%- t.getFirstLineBanner() %>
|
|
2
2
|
import type { VovkFetcher } from 'vovk/fetcher';
|
|
3
|
-
import type { createRPC } from '<%= t.commonImports.
|
|
3
|
+
import type { createRPC } from '<%= t.commonImports.createRPC %>';
|
|
4
4
|
<% Object.values(t.schema.segments).filter((segment) => segment.emitSchema).forEach((segment, i) => { if(segment.segmentType !== 'mixin') { %>
|
|
5
5
|
import type { Controllers as Controllers<%= i %> } from "<%= t.segmentMeta[segment.segmentName].segmentImportPath %>";
|
|
6
6
|
<% }}) %>
|
|
@@ -12,7 +12,7 @@ export { <%= reExportWhat %> } from '<%= reExportFrom %>';
|
|
|
12
12
|
<% }) %>
|
|
13
13
|
<% Object.values(t.schema.segments).filter((segment) => segment.emitSchema).forEach((segment, i) => { %>
|
|
14
14
|
<% Object.keys(segment.controllers).forEach((rpcModuleName) => { %>
|
|
15
|
-
export const <%= rpcModuleName %>: ReturnType<typeof createRPC<<%= segment.segmentType === 'mixin' ? `MixinControllers` : `Controllers${i}` %>["<%= rpcModuleName %>"], typeof import('<%- t.segmentImports[segment.segmentName].
|
|
15
|
+
export const <%= rpcModuleName %>: ReturnType<typeof createRPC<<%= segment.segmentType === 'mixin' ? `MixinControllers` : `Controllers${i}` %>["<%= rpcModuleName %>"], typeof import('<%- t.segmentImports[segment.segmentName].fetcher %>').fetcher extends VovkFetcher<infer U> ? U : never>>;
|
|
16
16
|
<% })
|
|
17
17
|
}) %>
|
|
18
18
|
export { schema } from './schema.cjs';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<%- t.getFirstLineBanner() %>
|
|
2
|
-
import { createRPC } from '<%= t.commonImports.
|
|
3
|
-
import { schema } from './schema.
|
|
2
|
+
import { createRPC } from '<%= t.commonImports.createRPC %>';
|
|
3
|
+
import { schema } from './schema.mjs';
|
|
4
4
|
<% Object.entries(t.reExports).forEach(([reExportWhat, reExportFrom]) => { %>
|
|
5
5
|
export { <%= reExportWhat %> } from '<%= reExportFrom %>';
|
|
6
6
|
<% }) %>
|
|
@@ -8,8 +8,8 @@ export { <%= reExportWhat %> } from '<%= reExportFrom %>';
|
|
|
8
8
|
<% Object.keys(segment.controllers).forEach((rpcModuleName) => {
|
|
9
9
|
const apiRoot = t.segmentMeta[segment.segmentName].forceApiRoot ?? t.apiRoot; %>
|
|
10
10
|
export const <%= rpcModuleName %> = createRPC(
|
|
11
|
-
schema, '<%= segment.segmentName %>', '<%= rpcModuleName %>', import('<%- t.segmentImports[segment.segmentName].
|
|
12
|
-
{ validateOnClient: <%- t.segmentImports[segment.segmentName].
|
|
11
|
+
schema, '<%= segment.segmentName %>', '<%= rpcModuleName %>', import('<%- t.segmentImports[segment.segmentName].fetcher %>'),
|
|
12
|
+
{ validateOnClient: <%- t.segmentImports[segment.segmentName].validateOnClient ? `import('${t.segmentImports[segment.segmentName].validateOnClient}')` : 'undefined' %>, <%- typeof t.segmentMeta[segment.segmentName].segmentNameOverride === 'string' ? `segmentNameOverride: '${t.segmentMeta[segment.segmentName].segmentNameOverride}', ` : '' %><%- segment.segmentType === 'mixin' ? '' : apiRoot ? `apiRoot: '${apiRoot}'` : '' %> }
|
|
13
13
|
);
|
|
14
14
|
<%
|
|
15
15
|
});
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<%- t.getFirstLineBanner() %>
|
|
2
|
+
<% if(t.isVovkProject) { %>
|
|
3
|
+
import meta from './<%= t.schemaOutDir %>/_meta.json' with { type: 'json' };
|
|
4
|
+
<% } else { %>
|
|
5
|
+
const meta = <%- JSON.stringify(t.schema.meta, null, 2) %>;
|
|
6
|
+
<% } %>
|
|
7
|
+
|
|
8
|
+
<% if(t.hasMixins) { %>
|
|
9
|
+
import mixins from './mixins.json' with { type: 'json' };
|
|
10
|
+
<% } %>
|
|
11
|
+
<% Object.values(t.schema.segments).filter((segment) => segment.emitSchema && segment.segmentType !== 'mixin').forEach((segment, i) => { %>
|
|
12
|
+
import schema<%= i %> from './<%= t.schemaOutDir %>/<%= segment.segmentName || t.ROOT_SEGMENT_FILE_NAME %>.json' with { type: 'json' };
|
|
13
|
+
<% }) %>
|
|
14
|
+
|
|
15
|
+
const segments = {<% Object.values(t.schema.segments).filter((segment) => segment.emitSchema && segment.segmentType !== 'mixin').forEach((segment, i) => { %>
|
|
16
|
+
'<%= segment.segmentName %>': schema<%= i %>,
|
|
17
|
+
<% }) %>
|
|
18
|
+
<% if(t.hasMixins) { %>
|
|
19
|
+
...mixins,
|
|
20
|
+
<% } %>
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
const schema = {
|
|
24
|
+
$schema: '<%- t.VovkSchemaIdEnum.SCHEMA %>',
|
|
25
|
+
segments,
|
|
26
|
+
meta,
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export { schema };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<%- t.getFirstLineBanner() %>
|
|
2
2
|
import type { VovkFetcher } from 'vovk/fetcher';
|
|
3
|
-
import { createRPC } from '<%= t.commonImports.
|
|
3
|
+
import { createRPC } from '<%= t.commonImports.createRPC %>';
|
|
4
4
|
import { schema } from './schema<%= t.nodeNextResolutionExt.ts %>';
|
|
5
5
|
<% Object.values(t.schema.segments).filter((segment) => segment.emitSchema).forEach((segment, i) => { if(segment.segmentType !== 'mixin') { %>
|
|
6
6
|
import type { Controllers as Controllers<%= i %> } from "<%= t.segmentMeta[segment.segmentName].segmentImportPath %>";
|
|
@@ -15,9 +15,9 @@ export { <%= reExportWhat %> } from '<%= reExportFrom %>';
|
|
|
15
15
|
<% Object.values(t.schema.segments).filter((segment) => segment.emitSchema).forEach((segment, i) => {
|
|
16
16
|
Object.keys(segment.controllers).forEach((rpcModuleName) => {
|
|
17
17
|
const apiRoot = t.segmentMeta[segment.segmentName].forceApiRoot ?? t.apiRoot; %>
|
|
18
|
-
export const <%= rpcModuleName %> = createRPC<<%= segment.segmentType === 'mixin' ? `MixinControllers` : `Controllers${i}` %>["<%= rpcModuleName %>"], typeof import('<%- t.segmentImports[segment.segmentName].
|
|
19
|
-
schema, '<%= segment.segmentName %>', '<%= rpcModuleName %>', import('<%- t.segmentImports[segment.segmentName].
|
|
20
|
-
{ validateOnClient: <%- t.segmentImports[segment.segmentName].
|
|
18
|
+
export const <%= rpcModuleName %> = createRPC<<%= segment.segmentType === 'mixin' ? `MixinControllers` : `Controllers${i}` %>["<%= rpcModuleName %>"], typeof import('<%- t.segmentImports[segment.segmentName].fetcher %>').fetcher extends VovkFetcher<infer U> ? U : never>(
|
|
19
|
+
schema, '<%= segment.segmentName %>', '<%= rpcModuleName %>', import('<%- t.segmentImports[segment.segmentName].fetcher %>'),
|
|
20
|
+
{ validateOnClient: <%- t.segmentImports[segment.segmentName].validateOnClient ? `import('${t.segmentImports[segment.segmentName].validateOnClient}')` : 'undefined' %>, <%- typeof t.segmentMeta[segment.segmentName].segmentNameOverride === 'string' ? `segmentNameOverride: '${t.segmentMeta[segment.segmentName].segmentNameOverride}', ` : '' %><%- segment.segmentType === 'mixin' ? '' : apiRoot ? `apiRoot: '${apiRoot}'` : '' %> }
|
|
21
21
|
);
|
|
22
22
|
<% })
|
|
23
23
|
}) %>
|
package/dist/dev/index.mjs
CHANGED
|
@@ -180,15 +180,8 @@ export class VovkDev {
|
|
|
180
180
|
isInitial = false;
|
|
181
181
|
}, 1000);
|
|
182
182
|
chokidar
|
|
183
|
-
// .watch(['vovk.config.{js,mjs
|
|
184
|
-
.watch([
|
|
185
|
-
'vovk.config.js',
|
|
186
|
-
'vovk.config.mjs',
|
|
187
|
-
'vovk.config.cjs',
|
|
188
|
-
'.config/vovk.config.js',
|
|
189
|
-
'.config/vovk.config.mjs',
|
|
190
|
-
'.config/vovk.config.cjs',
|
|
191
|
-
], {
|
|
183
|
+
// .watch(['vovk.config.{js,mjs}', '.config/vovk.config.{js,mjs}'], {
|
|
184
|
+
.watch(['vovk.config.js', 'vovk.config.mjs', '.config/vovk.config.js', '.config/vovk.config.mjs'], {
|
|
192
185
|
persistent: true,
|
|
193
186
|
cwd,
|
|
194
187
|
ignoreInitial: false,
|
|
@@ -13,10 +13,6 @@ export declare function getTemplateClientImports({ config, fullSchema, outCwdRel
|
|
|
13
13
|
isBundle: boolean;
|
|
14
14
|
outputConfigs: VovkStrictConfig['outputConfig'][];
|
|
15
15
|
}): {
|
|
16
|
-
composedClient: ClientImports
|
|
17
|
-
|
|
18
|
-
};
|
|
19
|
-
segmentedClient: Record<string, ClientImports & {
|
|
20
|
-
module: ClientImports;
|
|
21
|
-
}>;
|
|
16
|
+
composedClient: ClientImports;
|
|
17
|
+
segmentedClient: Record<string, ClientImports>;
|
|
22
18
|
};
|
|
@@ -9,45 +9,26 @@ export function getTemplateClientImports({ config, fullSchema, outCwdRelativeDir
|
|
|
9
9
|
projectPackageJson: undefined,
|
|
10
10
|
outputConfigs,
|
|
11
11
|
});
|
|
12
|
-
const validateOnClientImport = configImports?.validateOnClient ?? null;
|
|
13
|
-
const fetcherImport = configImports?.fetcher ?? 'vovk/fetcher';
|
|
14
|
-
const createRPCImport = configImports?.createRPC ?? 'vovk/createRPC';
|
|
15
12
|
const imports = {
|
|
16
|
-
fetcher:
|
|
17
|
-
validateOnClient:
|
|
18
|
-
|
|
19
|
-
: (validateOnClientImport ?? null),
|
|
20
|
-
createRPC: typeof createRPCImport === 'string' ? [createRPCImport] : createRPCImport,
|
|
13
|
+
fetcher: configImports?.fetcher ?? 'vovk/fetcher',
|
|
14
|
+
validateOnClient: configImports?.validateOnClient ?? null,
|
|
15
|
+
createRPC: configImports?.createRPC ?? 'vovk/createRPC',
|
|
21
16
|
};
|
|
22
17
|
const getImportPath = (p, s = '') => p.startsWith('.') ? path.relative(path.join(outCwdRelativeDir, s), p) : p;
|
|
23
18
|
const clientImports = {
|
|
24
19
|
composedClient: {
|
|
25
|
-
fetcher: getImportPath(imports.fetcher
|
|
26
|
-
createRPC: getImportPath(imports.createRPC
|
|
27
|
-
validateOnClient: imports.validateOnClient ? getImportPath(imports.validateOnClient
|
|
28
|
-
module: {
|
|
29
|
-
fetcher: getImportPath(imports.fetcher[1] ?? imports.fetcher[0]),
|
|
30
|
-
createRPC: getImportPath(imports.createRPC[1] ?? imports.createRPC[0]),
|
|
31
|
-
validateOnClient: imports.validateOnClient
|
|
32
|
-
? getImportPath(imports.validateOnClient[1] ?? imports.validateOnClient[0])
|
|
33
|
-
: null,
|
|
34
|
-
},
|
|
20
|
+
fetcher: getImportPath(imports.fetcher),
|
|
21
|
+
createRPC: getImportPath(imports.createRPC),
|
|
22
|
+
validateOnClient: imports.validateOnClient ? getImportPath(imports.validateOnClient) : null,
|
|
35
23
|
},
|
|
36
24
|
segmentedClient: Object.fromEntries(Object.values(fullSchema.segments).map((segment) => [
|
|
37
25
|
segment.segmentName,
|
|
38
26
|
{
|
|
39
|
-
fetcher: getImportPath(imports.fetcher
|
|
40
|
-
createRPC: getImportPath(imports.createRPC
|
|
27
|
+
fetcher: getImportPath(imports.fetcher, segment.segmentName || ROOT_SEGMENT_FILE_NAME),
|
|
28
|
+
createRPC: getImportPath(imports.createRPC, segment.segmentName || ROOT_SEGMENT_FILE_NAME),
|
|
41
29
|
validateOnClient: imports.validateOnClient
|
|
42
|
-
? getImportPath(imports.validateOnClient
|
|
30
|
+
? getImportPath(imports.validateOnClient, segment.segmentName || ROOT_SEGMENT_FILE_NAME)
|
|
43
31
|
: null,
|
|
44
|
-
module: {
|
|
45
|
-
fetcher: getImportPath(imports.fetcher[1] ?? imports.fetcher[0], segment.segmentName || ROOT_SEGMENT_FILE_NAME),
|
|
46
|
-
createRPC: getImportPath(imports.createRPC[1] ?? imports.createRPC[0], segment.segmentName || ROOT_SEGMENT_FILE_NAME),
|
|
47
|
-
validateOnClient: imports.validateOnClient
|
|
48
|
-
? getImportPath(imports.validateOnClient[1] ?? imports.validateOnClient[0], segment.segmentName || ROOT_SEGMENT_FILE_NAME)
|
|
49
|
-
: null,
|
|
50
|
-
},
|
|
51
32
|
},
|
|
52
33
|
])),
|
|
53
34
|
};
|
|
@@ -63,7 +63,6 @@ templateContent, matterResult: { data, content }, openAPIObject, package: packag
|
|
|
63
63
|
nodeNextResolutionExt: {
|
|
64
64
|
ts: isNodeNextResolution ? '.ts' : '',
|
|
65
65
|
js: isNodeNextResolution ? '.js' : '',
|
|
66
|
-
cjs: isNodeNextResolution ? '.cjs' : '',
|
|
67
66
|
mjs: isNodeNextResolution ? '.mjs' : '',
|
|
68
67
|
},
|
|
69
68
|
schemaOutDir: typeof segmentName === 'string'
|
|
@@ -6,7 +6,7 @@ export async function getConfigAbsolutePaths({ cwd, configPath, relativePath, })
|
|
|
6
6
|
}
|
|
7
7
|
const rootDir = path.resolve(cwd, relativePath || '');
|
|
8
8
|
const baseName = 'vovk.config';
|
|
9
|
-
const extensions = ['
|
|
9
|
+
const extensions = ['mjs', 'js'];
|
|
10
10
|
const dirs = [path.join(rootDir, '.config'), rootDir];
|
|
11
11
|
const configs = [];
|
|
12
12
|
for (const ext of extensions) {
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import type { VovkStrictConfig } from 'vovk/internal';
|
|
2
2
|
export declare enum BuiltInTemplateName {
|
|
3
3
|
tsBase = "tsBase",
|
|
4
|
-
cjsBase = "cjsBase",
|
|
5
4
|
mjsBase = "mjsBase",
|
|
6
5
|
ts = "ts",
|
|
7
|
-
cjs = "cjs",
|
|
8
6
|
mjs = "mjs",
|
|
9
7
|
schemaTs = "schemaTs",
|
|
10
|
-
|
|
8
|
+
schemaMjs = "schemaMjs",
|
|
11
9
|
schemaJson = "schemaJson",
|
|
12
10
|
openapiTs = "openapiTs",
|
|
13
|
-
|
|
11
|
+
openapiMjs = "openapiMjs",
|
|
14
12
|
openapiJson = "openapiJson",
|
|
15
13
|
readme = "readme",
|
|
16
14
|
packageJson = "packageJson",
|
|
@@ -2,18 +2,16 @@ export var BuiltInTemplateName;
|
|
|
2
2
|
(function (BuiltInTemplateName) {
|
|
3
3
|
// ts/js
|
|
4
4
|
BuiltInTemplateName["tsBase"] = "tsBase";
|
|
5
|
-
BuiltInTemplateName["cjsBase"] = "cjsBase";
|
|
6
5
|
BuiltInTemplateName["mjsBase"] = "mjsBase";
|
|
7
6
|
BuiltInTemplateName["ts"] = "ts";
|
|
8
|
-
BuiltInTemplateName["cjs"] = "cjs";
|
|
9
7
|
BuiltInTemplateName["mjs"] = "mjs";
|
|
10
8
|
// schema
|
|
11
9
|
BuiltInTemplateName["schemaTs"] = "schemaTs";
|
|
12
|
-
BuiltInTemplateName["
|
|
10
|
+
BuiltInTemplateName["schemaMjs"] = "schemaMjs";
|
|
13
11
|
BuiltInTemplateName["schemaJson"] = "schemaJson";
|
|
14
12
|
// openapi
|
|
15
13
|
BuiltInTemplateName["openapiTs"] = "openapiTs";
|
|
16
|
-
BuiltInTemplateName["
|
|
14
|
+
BuiltInTemplateName["openapiMjs"] = "openapiMjs";
|
|
17
15
|
BuiltInTemplateName["openapiJson"] = "openapiJson";
|
|
18
16
|
// misc
|
|
19
17
|
BuiltInTemplateName["readme"] = "readme";
|
|
@@ -38,8 +36,8 @@ export function getTemplateDefs(userTemplateDefs = {}) {
|
|
|
38
36
|
[BuiltInTemplateName.openapiJson]: './',
|
|
39
37
|
},
|
|
40
38
|
},
|
|
41
|
-
[BuiltInTemplateName.
|
|
42
|
-
templatePath: `vovk-cli/client-templates/${BuiltInTemplateName.
|
|
39
|
+
[BuiltInTemplateName.openapiMjs]: {
|
|
40
|
+
templatePath: `vovk-cli/client-templates/${BuiltInTemplateName.openapiMjs}/`,
|
|
43
41
|
requires: {
|
|
44
42
|
[BuiltInTemplateName.openapiJson]: './',
|
|
45
43
|
},
|
|
@@ -54,17 +52,10 @@ export function getTemplateDefs(userTemplateDefs = {}) {
|
|
|
54
52
|
[BuiltInTemplateName.mixins]: './', // used conditionally if OpenAPI mixins are used
|
|
55
53
|
},
|
|
56
54
|
},
|
|
57
|
-
[BuiltInTemplateName.cjsBase]: {
|
|
58
|
-
templatePath: `vovk-cli/client-templates/${BuiltInTemplateName.cjsBase}/`,
|
|
59
|
-
requires: {
|
|
60
|
-
[BuiltInTemplateName.schemaCjs]: './',
|
|
61
|
-
[BuiltInTemplateName.mixins]: './', // used conditionally if OpenAPI mixins are used
|
|
62
|
-
},
|
|
63
|
-
},
|
|
64
55
|
[BuiltInTemplateName.mjsBase]: {
|
|
65
56
|
templatePath: `vovk-cli/client-templates/${BuiltInTemplateName.mjsBase}/`,
|
|
66
57
|
requires: {
|
|
67
|
-
[BuiltInTemplateName.
|
|
58
|
+
[BuiltInTemplateName.schemaMjs]: './',
|
|
68
59
|
[BuiltInTemplateName.mixins]: './', // used conditionally if OpenAPI mixins are used
|
|
69
60
|
},
|
|
70
61
|
},
|
|
@@ -74,23 +65,17 @@ export function getTemplateDefs(userTemplateDefs = {}) {
|
|
|
74
65
|
[BuiltInTemplateName.openapiTs]: './',
|
|
75
66
|
},
|
|
76
67
|
},
|
|
77
|
-
[BuiltInTemplateName.cjs]: {
|
|
78
|
-
requires: {
|
|
79
|
-
[BuiltInTemplateName.cjsBase]: './',
|
|
80
|
-
[BuiltInTemplateName.openapiCjs]: './',
|
|
81
|
-
},
|
|
82
|
-
},
|
|
83
68
|
[BuiltInTemplateName.mjs]: {
|
|
84
69
|
requires: {
|
|
85
70
|
[BuiltInTemplateName.mjsBase]: './',
|
|
86
|
-
[BuiltInTemplateName.
|
|
71
|
+
[BuiltInTemplateName.openapiMjs]: './',
|
|
87
72
|
},
|
|
88
73
|
},
|
|
89
74
|
[BuiltInTemplateName.schemaTs]: {
|
|
90
75
|
templatePath: `vovk-cli/client-templates/${BuiltInTemplateName.schemaTs}/`,
|
|
91
76
|
},
|
|
92
|
-
[BuiltInTemplateName.
|
|
93
|
-
templatePath: `vovk-cli/client-templates/${BuiltInTemplateName.
|
|
77
|
+
[BuiltInTemplateName.schemaMjs]: {
|
|
78
|
+
templatePath: `vovk-cli/client-templates/${BuiltInTemplateName.schemaMjs}/`,
|
|
94
79
|
},
|
|
95
80
|
[BuiltInTemplateName.schemaJson]: {
|
|
96
81
|
templatePath: `vovk-cli/client-templates/${BuiltInTemplateName.schemaJson}/`,
|
|
@@ -24,7 +24,7 @@ export async function getConfig({ configPath, cwd, logLevel, }) {
|
|
|
24
24
|
composedClient: {
|
|
25
25
|
...conf.composedClient,
|
|
26
26
|
enabled: conf.composedClient?.enabled ?? true,
|
|
27
|
-
fromTemplates: conf.composedClient?.fromTemplates ?? ['mjs'
|
|
27
|
+
fromTemplates: conf.composedClient?.fromTemplates ?? ['mjs'],
|
|
28
28
|
outDir: conf.composedClient?.outDir ?? './node_modules/.vovk-client',
|
|
29
29
|
prettifyClient: conf.composedClient?.prettifyClient ?? false,
|
|
30
30
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vovk-cli",
|
|
3
|
-
"version": "0.0.1-beta.
|
|
3
|
+
"version": "0.0.1-beta.69",
|
|
4
4
|
"description": "CLI tool for managing Vovk.ts projects",
|
|
5
5
|
"bin": {
|
|
6
6
|
"vovk": "./dist/index.mjs"
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
},
|
|
38
38
|
"homepage": "https://vovk.dev",
|
|
39
39
|
"peerDependencies": {
|
|
40
|
-
"vovk": "^3.0.0-beta.
|
|
40
|
+
"vovk": "^3.0.0-beta.107",
|
|
41
41
|
"vovk-ajv": "^0.0.0-beta.5",
|
|
42
42
|
"vovk-client": "^0.0.4-beta.5",
|
|
43
43
|
"vovk-python": "^0.0.1-beta.5",
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
<%- t.getFirstLineBanner() %>
|
|
2
|
-
const { createRPC } = require('<%= t.commonImports.createRPC %>');
|
|
3
|
-
const { schema } = require('./schema.cjs');
|
|
4
|
-
<% Object.entries(t.reExports).forEach(([reExportWhatCommaDivisible, reExportFrom]) => {
|
|
5
|
-
reExportWhatCommaDivisible.split(/\s*,\s*/).forEach((reExportWhat) => { %>
|
|
6
|
-
exports['<%= reExportWhat.split(/\s+as\s+/)[1] ?? reExportWhat %>'] = require('<%= reExportFrom %>')['<%= reExportWhat.split(/\s+as\s+/)[0] %>'];
|
|
7
|
-
<% })
|
|
8
|
-
}) %>
|
|
9
|
-
<% Object.values(t.schema.segments).filter((segment) => segment.emitSchema).forEach((segment) => { %>
|
|
10
|
-
<% Object.keys(segment.controllers).forEach((rpcModuleName) => {
|
|
11
|
-
const apiRoot = t.segmentMeta[segment.segmentName].forceApiRoot ?? t.apiRoot; %>
|
|
12
|
-
exports.<%= rpcModuleName %> = createRPC(
|
|
13
|
-
schema, '<%= segment.segmentName %>', '<%= rpcModuleName %>', require('<%= t.segmentImports[segment.segmentName].fetcher %>').fetcher,
|
|
14
|
-
{ validateOnClient: <%- t.segmentImports[segment.segmentName].validateOnClient ? `require('${t.segmentImports[segment.segmentName].validateOnClient}').validateOnClient` : 'undefined' %>, <%- typeof t.segmentMeta[segment.segmentName].segmentNameOverride === 'string' ? `segmentNameOverride: '${t.segmentMeta[segment.segmentName].segmentNameOverride}', ` : '' %><%- segment.segmentType === 'mixin' ? '' : apiRoot ? `apiRoot: '${apiRoot}'` : '' %> }
|
|
15
|
-
);
|
|
16
|
-
<% })
|
|
17
|
-
}) %>
|
|
18
|
-
exports.schema = schema;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
<%- t.getFirstLineBanner() %>
|
|
2
|
-
import type { VovkFetcher } from 'vovk/fetcher';
|
|
3
|
-
import type { createRPC } from '<%= t.commonImports.module.createRPC %>';
|
|
4
|
-
<% Object.values(t.schema.segments).filter((segment) => segment.emitSchema).forEach((segment, i) => { if(segment.segmentType !== 'mixin') { %>
|
|
5
|
-
import type { Controllers as Controllers<%= i %> } from "<%= t.segmentMeta[segment.segmentName].segmentImportPath %>";
|
|
6
|
-
<% }}) %>
|
|
7
|
-
<% if (t.hasMixins) { %>
|
|
8
|
-
import type { Controllers as MixinControllers, Mixins } from "./mixins";
|
|
9
|
-
<% } %>
|
|
10
|
-
<% Object.entries(t.reExports).forEach(([reExportWhat, reExportFrom]) => { %>
|
|
11
|
-
export { <%= reExportWhat %> } from '<%= reExportFrom %>';
|
|
12
|
-
<% }) %>
|
|
13
|
-
<% Object.values(t.schema.segments).filter((segment) => segment.emitSchema).forEach((segment, i) => { %>
|
|
14
|
-
<% Object.keys(segment.controllers).forEach((rpcModuleName) => { %>
|
|
15
|
-
export const <%= rpcModuleName %>: ReturnType<typeof createRPC<<%= segment.segmentType === 'mixin' ? `MixinControllers` : `Controllers${i}` %>["<%= rpcModuleName %>"], typeof import('<%- t.segmentImports[segment.segmentName].module.fetcher %>').fetcher extends VovkFetcher<infer U> ? U : never>>;
|
|
16
|
-
<% })
|
|
17
|
-
}) %>
|
|
18
|
-
export { schema } from './schema.cjs';
|
|
19
|
-
<% if (t.hasMixins) { %>
|
|
20
|
-
export { Mixins };
|
|
21
|
-
<% } %>
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
<%- t.getFirstLineBanner() %>
|
|
2
|
-
<% if(t.isVovkProject) { %>
|
|
3
|
-
const meta = require('./<%= t.schemaOutDir %>/_meta.json');
|
|
4
|
-
<% } else { %>
|
|
5
|
-
const meta = <%- JSON.stringify(t.schema.meta, null, 2) %>;
|
|
6
|
-
<% } %>
|
|
7
|
-
|
|
8
|
-
<% if(t.hasMixins) { %>
|
|
9
|
-
const mixins = require('./mixins.json');
|
|
10
|
-
<% } %>
|
|
11
|
-
const segments = {<% Object.values(t.schema.segments).filter((segment) => segment.emitSchema && segment.segmentType !== 'mixin').forEach((segment) => { %>
|
|
12
|
-
'<%= segment.segmentName %>': require('./<%= t.schemaOutDir %>/<%= segment.segmentName || t.ROOT_SEGMENT_FILE_NAME %>.json'),
|
|
13
|
-
<% }) %>
|
|
14
|
-
<% if(t.hasMixins) { %>
|
|
15
|
-
...mixins,
|
|
16
|
-
<% } %>
|
|
17
|
-
};
|
|
18
|
-
const schema = {
|
|
19
|
-
$schema: '<%- t.VovkSchemaIdEnum.SCHEMA %>',
|
|
20
|
-
segments,
|
|
21
|
-
meta,
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
module.exports.schema = schema;
|
|
File without changes
|
|
File without changes
|