silgi 0.26.6 → 0.26.8

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/dist/build.d.mts CHANGED
@@ -5,6 +5,8 @@ import { SilgiCLI, SilgiCLIConfig, LoadConfigOptions } from 'silgi/types';
5
5
  */
6
6
  declare function prepareBuild(silgi: SilgiCLI): Promise<void>;
7
7
 
8
+ declare function generateApiFul(silgi: SilgiCLI): Promise<void>;
9
+
8
10
  declare function prepare(_silgi: SilgiCLI): Promise<void>;
9
11
 
10
12
  declare function createSilgiCLI(config?: SilgiCLIConfig, opts?: LoadConfigOptions): Promise<SilgiCLI>;
@@ -13,4 +15,4 @@ declare function writeCoreFile(silgi: SilgiCLI): Promise<void>;
13
15
 
14
16
  declare function writeTypesAndFiles(silgi: SilgiCLI): Promise<void>;
15
17
 
16
- export { createSilgiCLI, prepare, prepareBuild, writeCoreFile, writeTypesAndFiles };
18
+ export { createSilgiCLI, generateApiFul, prepare, prepareBuild, writeCoreFile, writeTypesAndFiles };
package/dist/build.mjs CHANGED
@@ -1,10 +1,11 @@
1
- export { c as createSilgiCLI, a as prepare, p as prepareBuild, w as writeCoreFile, b as writeTypesAndFiles } from './cli/writeTypesAndFiles.mjs';
1
+ export { c as createSilgiCLI, g as generateApiFul, a as prepare, p as prepareBuild, w as writeCoreFile, b as writeTypesAndFiles } from './cli/writeTypesAndFiles.mjs';
2
2
  import 'knitwork';
3
3
  import 'pathe';
4
4
  import 'silgi/kit';
5
+ import 'apiful/openapi';
6
+ import 'consola';
5
7
  import 'node:fs';
6
8
  import 'node:fs/promises';
7
- import 'consola';
8
9
  import 'hookable';
9
10
  import 'silgi';
10
11
  import 'silgi/runtime/meta';
package/dist/cli/dev.mjs CHANGED
@@ -11,6 +11,7 @@ import 'unctx';
11
11
  import './writeTypesAndFiles.mjs';
12
12
  import 'knitwork';
13
13
  import 'silgi/kit';
14
+ import 'apiful/openapi';
14
15
  import 'node:fs';
15
16
  import 'node:fs/promises';
16
17
  import 'hookable';
@@ -44,7 +45,6 @@ import 'consola/utils';
44
45
  import 'escape-string-regexp';
45
46
  import 'pkg-types';
46
47
  import 'pathe/utils';
47
- import 'apiful/openapi';
48
48
  import 'node:child_process';
49
49
  import 'picocolors';
50
50
 
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { defineCommand, runMain } from 'citty';
3
3
 
4
- const version = "0.26.6";
4
+ const version = "0.26.8";
5
5
  const packageJson = {
6
6
  version: version};
7
7
 
package/dist/cli/init.mjs CHANGED
@@ -9,6 +9,7 @@ import 'silgi/meta';
9
9
  import './writeTypesAndFiles.mjs';
10
10
  import 'knitwork';
11
11
  import 'silgi/kit';
12
+ import 'apiful/openapi';
12
13
  import 'hookable';
13
14
  import 'silgi';
14
15
  import 'silgi/runtime/meta';
@@ -40,7 +41,6 @@ import 'consola/utils';
40
41
  import 'escape-string-regexp';
41
42
  import 'pkg-types';
42
43
  import 'pathe/utils';
43
- import 'apiful/openapi';
44
44
  import 'node:child_process';
45
45
  import 'picocolors';
46
46
  import '../_chunks/silgiApp.mjs';
@@ -9,6 +9,7 @@ import { l as loadOptions } from './types.mjs';
9
9
  import './writeTypesAndFiles.mjs';
10
10
  import 'knitwork';
11
11
  import 'silgi/kit';
12
+ import 'apiful/openapi';
12
13
  import 'node:fs/promises';
13
14
  import 'hookable';
14
15
  import 'silgi';
@@ -34,7 +35,6 @@ import 'silgi/runtime';
34
35
  import 'unstorage';
35
36
  import 'scule';
36
37
  import 'pathe/utils';
37
- import 'apiful/openapi';
38
38
  import 'picocolors';
39
39
  import '../_chunks/silgiApp.mjs';
40
40
  import 'unctx';
@@ -1,53 +1,17 @@
1
1
  import { defineCommand, runCommand } from 'citty';
2
- import { join, resolve } from 'pathe';
2
+ import { resolve } from 'pathe';
3
3
  import { version } from 'silgi/meta';
4
- import { d as prepareEnv, c as createSilgiCLI, a as prepare$2, b as writeTypesAndFiles, w as writeCoreFile, p as prepareBuild, g as generateApp } from './writeTypesAndFiles.mjs';
5
- import { generateDTS } from 'apiful/openapi';
6
- import { consola } from 'consola';
7
- import { hasSilgiModule, addTemplate } from 'silgi/kit';
4
+ import { d as prepareEnv, c as createSilgiCLI, a as prepare$2, g as generateApiFul, b as writeTypesAndFiles, w as writeCoreFile, p as prepareBuild, e as generateApp } from './writeTypesAndFiles.mjs';
8
5
  import { execSync } from 'node:child_process';
9
6
  import { readFileSync } from 'node:fs';
10
7
  import * as p from '@clack/prompts';
8
+ import { consola } from 'consola';
11
9
  import { createJiti } from 'dev-jiti';
12
10
  import color from 'picocolors';
13
11
  import { useSilgiCLI } from 'silgi';
14
12
  import { a as silgiCLIIClose } from '../_chunks/silgiApp.mjs';
15
13
  import { l as loadOptions } from './types.mjs';
16
14
 
17
- async function generateApiFul(silgi) {
18
- const config = silgi.options.apiFul;
19
- if (!config.services || hasSilgiModule("openapi")) {
20
- config.services ??= {};
21
- config.services = {
22
- silgi: {
23
- schema: join(silgi.options.build.dir, "openapi.json")
24
- }
25
- };
26
- }
27
- const resolvedOpenAPIServices = Object.fromEntries(
28
- Object.entries(config?.services ?? {}).filter(([, service]) => Boolean(service.schema))
29
- );
30
- if (Object.keys(resolvedOpenAPIServices).length === 0) {
31
- consola.info("No OpenAPI schemas found, skipping generation");
32
- return;
33
- }
34
- for (const service of Object.values(resolvedOpenAPIServices)) {
35
- if (typeof service.schema === "string" && !service.schema.startsWith("http")) {
36
- service.schema = resolve(silgi.options.rootDir, service.schema);
37
- }
38
- }
39
- const types = await generateDTS(resolvedOpenAPIServices);
40
- silgi.hook("prepare:types", (opts) => {
41
- opts.references.push({ path: "./apiful.d.ts" });
42
- });
43
- addTemplate({
44
- filename: "types/apiful.d.ts",
45
- where: ".silgi",
46
- write: true,
47
- getContents: () => types
48
- });
49
- }
50
-
51
15
  const commonArgs = {
52
16
  dir: {
53
17
  type: "string",
@@ -1,9 +1,10 @@
1
1
  import { genObjectFromRawEntries, genObjectFromRaw, genObjectFromValues } from 'knitwork';
2
2
  import { join, resolve, relative, dirname, basename, extname, isAbsolute } from 'pathe';
3
- import { writeFile, relativeWithDot, hash, resolveAlias, directoryToURL, addTemplate, hasError, parseServices, normalizeTemplate, useLogger, resolveSilgiPath, genEnsureSafeVar, isDirectory } from 'silgi/kit';
3
+ import { writeFile, hasSilgiModule, addTemplate, relativeWithDot, hash, resolveAlias, directoryToURL, hasError, parseServices, normalizeTemplate, useLogger, resolveSilgiPath, genEnsureSafeVar, isDirectory } from 'silgi/kit';
4
+ import { generateDTS } from 'apiful/openapi';
5
+ import consola$1, { consola } from 'consola';
4
6
  import { existsSync, promises, readFileSync, writeFileSync, mkdirSync } from 'node:fs';
5
7
  import { readdir, readFile } from 'node:fs/promises';
6
- import consola, { consola as consola$1 } from 'consola';
7
8
  import { createHooks, createDebugger } from 'hookable';
8
9
  import { useSilgiCLI, replaceRuntimeValues, silgiCLICtx, autoImportTypes } from 'silgi';
9
10
  import { runtimeDir } from 'silgi/runtime/meta';
@@ -68,6 +69,40 @@ export const routeRules = ${genObjectFromRawEntries(
68
69
  }
69
70
  }
70
71
 
72
+ async function generateApiFul(silgi) {
73
+ const config = silgi.options.apiFul;
74
+ if (!config.services || hasSilgiModule("openapi")) {
75
+ config.services ??= {};
76
+ config.services = {
77
+ silgi: {
78
+ schema: join(silgi.options.build.dir, "openapi.json")
79
+ }
80
+ };
81
+ }
82
+ const resolvedOpenAPIServices = Object.fromEntries(
83
+ Object.entries(config?.services ?? {}).filter(([, service]) => Boolean(service.schema))
84
+ );
85
+ if (Object.keys(resolvedOpenAPIServices).length === 0) {
86
+ consola.info("No OpenAPI schemas found, skipping generation");
87
+ return;
88
+ }
89
+ for (const service of Object.values(resolvedOpenAPIServices)) {
90
+ if (typeof service.schema === "string" && !service.schema.startsWith("http")) {
91
+ service.schema = resolve(silgi.options.rootDir, service.schema);
92
+ }
93
+ }
94
+ const types = await generateDTS(resolvedOpenAPIServices);
95
+ silgi.hook("prepare:types", (opts) => {
96
+ opts.references.push({ path: "./apiful.d.ts" });
97
+ });
98
+ addTemplate({
99
+ filename: "types/apiful.d.ts",
100
+ where: ".silgi",
101
+ write: true,
102
+ getContents: () => types
103
+ });
104
+ }
105
+
71
106
  async function prepare(_silgi) {
72
107
  }
73
108
 
@@ -844,7 +879,7 @@ class SchemaParser {
844
879
  type: "Parser",
845
880
  path
846
881
  });
847
- consola.warn("This file has a problem:", path);
882
+ consola$1.warn("This file has a problem:", path);
848
883
  }
849
884
  const variableDeclarations = ast.program.body.filter((i) => i.type === "ExportNamedDeclaration").filter((i) => i.declaration?.type === "VariableDeclaration");
850
885
  return variableDeclarations;
@@ -858,7 +893,7 @@ class SchemaParser {
858
893
  type: "Parser",
859
894
  path
860
895
  });
861
- consola.warn("This file has a problem:", path);
896
+ consola$1.warn("This file has a problem:", path);
862
897
  }
863
898
  const interfaceDeclarations = ast.program.body.filter((i) => i.type === "ExportNamedDeclaration").filter((i) => i.declaration?.type === "TSInterfaceDeclaration");
864
899
  return interfaceDeclarations;
@@ -981,7 +1016,7 @@ async function scanExportFile(silgi) {
981
1016
  if (caseCorrected) {
982
1017
  const original = relative(silgi.options.serverDir, dir);
983
1018
  const corrected = relative(silgi.options.serverDir, join(dirname(dir), caseCorrected));
984
- consola$1.warn(`Components not scanned from \`~/${corrected}\`. Did you mean to name the directory \`~/${original}\` instead?`);
1019
+ consola.warn(`Components not scanned from \`~/${corrected}\`. Did you mean to name the directory \`~/${original}\` instead?`);
985
1020
  }
986
1021
  }
987
1022
  }
@@ -1202,7 +1237,7 @@ ${injectedResult.code}`;
1202
1237
  console.error("Failed to read scan.ts file:", error);
1203
1238
  } else {
1204
1239
  if (error instanceof Error) {
1205
- consola$1.withTag("silgi").info(error.message);
1240
+ consola.withTag("silgi").info(error.message);
1206
1241
  }
1207
1242
  }
1208
1243
  return {
@@ -1646,7 +1681,7 @@ async function createSilgiCLI(config = {}, opts = {}) {
1646
1681
  errors: [],
1647
1682
  commands: {},
1648
1683
  _requiredModules: {},
1649
- logger: consola$1.withTag("silgi"),
1684
+ logger: consola.withTag("silgi"),
1650
1685
  close: () => silgi.hooks.callHook("close", silgi),
1651
1686
  storage: void 0,
1652
1687
  scanModules: [],
@@ -2372,4 +2407,4 @@ async function writeTypesAndFiles(silgi) {
2372
2407
  }
2373
2408
  }
2374
2409
 
2375
- export { prepare as a, writeTypesAndFiles as b, createSilgiCLI as c, prepareEnv as d, generateApp as g, prepareBuild as p, writeCoreFile as w };
2410
+ export { prepare as a, writeTypesAndFiles as b, createSilgiCLI as c, prepareEnv as d, generateApp as e, generateApiFul as g, prepareBuild as p, writeCoreFile as w };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "silgi",
3
3
  "type": "module",
4
- "version": "0.26.6",
4
+ "version": "0.26.8",
5
5
  "private": false,
6
6
  "sideEffects": false,
7
7
  "exports": {