@rawsql-ts/ddl-docs-cli 0.2.2

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 (69) hide show
  1. package/AGENTS.md +27 -0
  2. package/README.md +86 -0
  3. package/dist/src/analyzer/columnConcepts.d.ts +12 -0
  4. package/dist/src/analyzer/columnConcepts.js +185 -0
  5. package/dist/src/analyzer/columnConcepts.js.map +1 -0
  6. package/dist/src/analyzer/dictionary.d.ts +3 -0
  7. package/dist/src/analyzer/dictionary.js +39 -0
  8. package/dist/src/analyzer/dictionary.js.map +1 -0
  9. package/dist/src/analyzer/typeNormalization.d.ts +7 -0
  10. package/dist/src/analyzer/typeNormalization.js +76 -0
  11. package/dist/src/analyzer/typeNormalization.js.map +1 -0
  12. package/dist/src/cli.d.ts +8 -0
  13. package/dist/src/cli.js +264 -0
  14. package/dist/src/cli.js.map +1 -0
  15. package/dist/src/commands/generate.d.ts +5 -0
  16. package/dist/src/commands/generate.js +266 -0
  17. package/dist/src/commands/generate.js.map +1 -0
  18. package/dist/src/commands/prune.d.ts +2 -0
  19. package/dist/src/commands/prune.js +17 -0
  20. package/dist/src/commands/prune.js.map +1 -0
  21. package/dist/src/config.d.ts +5 -0
  22. package/dist/src/config.js +57 -0
  23. package/dist/src/config.js.map +1 -0
  24. package/dist/src/index.d.ts +2 -0
  25. package/dist/src/index.js +9 -0
  26. package/dist/src/index.js.map +1 -0
  27. package/dist/src/parser/snapshotTableDocs.d.ts +6 -0
  28. package/dist/src/parser/snapshotTableDocs.js +1001 -0
  29. package/dist/src/parser/snapshotTableDocs.js.map +1 -0
  30. package/dist/src/render/columnPages.d.ts +6 -0
  31. package/dist/src/render/columnPages.js +226 -0
  32. package/dist/src/render/columnPages.js.map +1 -0
  33. package/dist/src/render/indexPages.d.ts +6 -0
  34. package/dist/src/render/indexPages.js +156 -0
  35. package/dist/src/render/indexPages.js.map +1 -0
  36. package/dist/src/render/referencesPage.d.ts +6 -0
  37. package/dist/src/render/referencesPage.js +51 -0
  38. package/dist/src/render/referencesPage.js.map +1 -0
  39. package/dist/src/render/tableMarkdown.d.ts +36 -0
  40. package/dist/src/render/tableMarkdown.js +243 -0
  41. package/dist/src/render/tableMarkdown.js.map +1 -0
  42. package/dist/src/render/types.d.ts +7 -0
  43. package/dist/src/render/types.js +3 -0
  44. package/dist/src/render/types.js.map +1 -0
  45. package/dist/src/state/manifest.d.ts +14 -0
  46. package/dist/src/state/manifest.js +153 -0
  47. package/dist/src/state/manifest.js.map +1 -0
  48. package/dist/src/types.d.ts +193 -0
  49. package/dist/src/types.js +3 -0
  50. package/dist/src/types.js.map +1 -0
  51. package/dist/src/utils/ddlInputDedupe.d.ts +9 -0
  52. package/dist/src/utils/ddlInputDedupe.js +25 -0
  53. package/dist/src/utils/ddlInputDedupe.js.map +1 -0
  54. package/dist/src/utils/fs.d.ts +13 -0
  55. package/dist/src/utils/fs.js +187 -0
  56. package/dist/src/utils/fs.js.map +1 -0
  57. package/dist/src/utils/io.d.ts +2 -0
  58. package/dist/src/utils/io.js +13 -0
  59. package/dist/src/utils/io.js.map +1 -0
  60. package/dist/src/utils/markdown.d.ts +12 -0
  61. package/dist/src/utils/markdown.js +34 -0
  62. package/dist/src/utils/markdown.js.map +1 -0
  63. package/dist/src/utils/pgDumpFilter.d.ts +8 -0
  64. package/dist/src/utils/pgDumpFilter.js +104 -0
  65. package/dist/src/utils/pgDumpFilter.js.map +1 -0
  66. package/dist/src/utils/slug.d.ts +1 -0
  67. package/dist/src/utils/slug.js +13 -0
  68. package/dist/src/utils/slug.js.map +1 -0
  69. package/package.json +43 -0
@@ -0,0 +1,57 @@
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.resolveSchemaSettings = resolveSchemaSettings;
7
+ const node_fs_1 = require("node:fs");
8
+ const node_path_1 = __importDefault(require("node:path"));
9
+ /**
10
+ * Resolves default schema and search path from CLI options and optional ztd config.
11
+ */
12
+ function resolveSchemaSettings(explicitConfigPath, cliDefaultSchema, cliSearchPath) {
13
+ var _a, _b;
14
+ const config = loadZtdConfig(explicitConfigPath);
15
+ const fileDefaultSchema = normalizeIdentifier((_a = config === null || config === void 0 ? void 0 : config.ddl) === null || _a === void 0 ? void 0 : _a.defaultSchema);
16
+ const fileSearchPath = normalizeSearchPath((_b = config === null || config === void 0 ? void 0 : config.ddl) === null || _b === void 0 ? void 0 : _b.searchPath);
17
+ const defaultSchema = normalizeIdentifier(cliDefaultSchema) || fileDefaultSchema || 'public';
18
+ const searchPath = normalizeSearchPath(cliSearchPath) || fileSearchPath || [defaultSchema];
19
+ return { defaultSchema, searchPath };
20
+ }
21
+ function loadZtdConfig(explicitConfigPath) {
22
+ const candidates = explicitConfigPath
23
+ ? [node_path_1.default.resolve(explicitConfigPath)]
24
+ : [node_path_1.default.resolve(process.cwd(), 'ztd.config.json')];
25
+ for (const candidate of candidates) {
26
+ if (!(0, node_fs_1.existsSync)(candidate)) {
27
+ continue;
28
+ }
29
+ const raw = (0, node_fs_1.readFileSync)(candidate, 'utf8');
30
+ const parsed = JSON.parse(raw);
31
+ if (typeof parsed === 'object' && parsed !== null) {
32
+ return parsed;
33
+ }
34
+ }
35
+ return null;
36
+ }
37
+ function normalizeSearchPath(value) {
38
+ if (!Array.isArray(value)) {
39
+ return undefined;
40
+ }
41
+ const normalized = value.map((entry) => normalizeIdentifier(entry)).filter(Boolean);
42
+ if (normalized.length === 0) {
43
+ return undefined;
44
+ }
45
+ return Array.from(new Set(normalized));
46
+ }
47
+ function normalizeIdentifier(value) {
48
+ if (!value) {
49
+ return undefined;
50
+ }
51
+ const trimmed = value.trim();
52
+ if (!trimmed) {
53
+ return undefined;
54
+ }
55
+ return trimmed.replace(/^"|"$/g, '').toLowerCase();
56
+ }
57
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":";;;;;AAcA,sDAWC;AAzBD,qCAAmD;AACnD,0DAA6B;AAU7B;;GAEG;AACH,SAAgB,qBAAqB,CACnC,kBAAsC,EACtC,gBAAoC,EACpC,aAAmC;;IAEnC,MAAM,MAAM,GAAG,aAAa,CAAC,kBAAkB,CAAC,CAAC;IACjD,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,0CAAE,aAAa,CAAC,CAAC;IAC1E,MAAM,cAAc,GAAG,mBAAmB,CAAC,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,0CAAE,UAAU,CAAC,CAAC;IACpE,MAAM,aAAa,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,IAAI,iBAAiB,IAAI,QAAQ,CAAC;IAC7F,MAAM,UAAU,GAAG,mBAAmB,CAAC,aAAa,CAAC,IAAI,cAAc,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3F,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,aAAa,CAAC,kBAAsC;IAC3D,MAAM,UAAU,GAAG,kBAAkB;QACnC,CAAC,CAAC,CAAC,mBAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAErD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,IAAA,oBAAU,EAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GAAG,IAAA,sBAAY,EAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC1C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YAClD,OAAO,MAAuB,CAAC;QACjC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,KAA2B;IACtD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAa,CAAC;IAChG,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAyB;IACpD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AACrD,CAAC"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const cli_1 = require("./cli");
5
+ (0, cli_1.runCli)(process.argv.slice(2)).catch((error) => {
6
+ console.error(error instanceof Error ? error.message : error);
7
+ process.exit(1);
8
+ });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAEA,+BAA+B;AAE/B,IAAA,YAAM,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IAC5C,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { ResolvedSchemaSettings, SnapshotResult, SqlSource } from '../types';
2
+ interface SnapshotOptions {
3
+ columnOrder: 'definition' | 'name';
4
+ }
5
+ export declare function snapshotTableDocs(sources: SqlSource[], schemaSettings: ResolvedSchemaSettings, options: SnapshotOptions): SnapshotResult;
6
+ export {};