terse-cli 0.2.15 → 0.3.0

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 (165) hide show
  1. package/dist/commands/deploy.d.ts.map +1 -1
  2. package/dist/commands/deploy.js +4 -3
  3. package/dist/commands/deploy.js.map +1 -1
  4. package/dist/commands/generate.d.ts.map +1 -1
  5. package/dist/commands/generate.js +36 -253
  6. package/dist/commands/generate.js.map +1 -1
  7. package/dist/commands/toolRun.js +1 -1
  8. package/dist/commands/toolRun.js.map +1 -1
  9. package/dist/index.js +1 -1
  10. package/dist/index.js.map +1 -1
  11. package/dist/providers/LanguageProvider.d.ts +6 -2
  12. package/dist/providers/LanguageProvider.d.ts.map +1 -1
  13. package/dist/providers/codegenTypes.d.ts +16 -130
  14. package/dist/providers/codegenTypes.d.ts.map +1 -1
  15. package/dist/providers/typescript/TypeScriptProvider.d.ts +2 -2
  16. package/dist/providers/typescript/TypeScriptProvider.d.ts.map +1 -1
  17. package/dist/providers/typescript/TypeScriptProvider.js +53 -4
  18. package/dist/providers/typescript/TypeScriptProvider.js.map +1 -1
  19. package/dist/providers/typescript/attioProjection.d.ts +50 -0
  20. package/dist/providers/typescript/attioProjection.d.ts.map +1 -0
  21. package/dist/providers/typescript/attioProjection.js +358 -0
  22. package/dist/providers/typescript/attioProjection.js.map +1 -0
  23. package/dist/providers/typescript/modules/IntegrationModule.d.ts +82 -0
  24. package/dist/providers/typescript/modules/IntegrationModule.d.ts.map +1 -0
  25. package/dist/providers/typescript/modules/IntegrationModule.js +184 -0
  26. package/dist/providers/typescript/modules/IntegrationModule.js.map +1 -0
  27. package/dist/providers/typescript/modules/attio/AttioModule.d.ts +55 -0
  28. package/dist/providers/typescript/modules/attio/AttioModule.d.ts.map +1 -0
  29. package/dist/providers/typescript/modules/attio/AttioModule.js +163 -0
  30. package/dist/providers/typescript/modules/attio/AttioModule.js.map +1 -0
  31. package/dist/providers/typescript/modules/attio/attioProjection.d.ts +50 -0
  32. package/dist/providers/typescript/modules/attio/attioProjection.d.ts.map +1 -0
  33. package/dist/providers/typescript/modules/attio/attioProjection.js +358 -0
  34. package/dist/providers/typescript/modules/attio/attioProjection.js.map +1 -0
  35. package/dist/providers/typescript/modules/attio/attioToolMethods.d.ts +4 -0
  36. package/dist/providers/typescript/modules/attio/attioToolMethods.d.ts.map +1 -0
  37. package/dist/providers/typescript/modules/attio/attioToolMethods.js +295 -0
  38. package/dist/providers/typescript/modules/attio/attioToolMethods.js.map +1 -0
  39. package/dist/providers/typescript/modules/attio/attioTypes.d.ts +36 -0
  40. package/dist/providers/typescript/modules/attio/attioTypes.d.ts.map +1 -0
  41. package/dist/providers/typescript/modules/attio/attioTypes.js +2 -0
  42. package/dist/providers/typescript/modules/attio/attioTypes.js.map +1 -0
  43. package/dist/providers/typescript/modules/datadog/DatadogModule.d.ts +25 -0
  44. package/dist/providers/typescript/modules/datadog/DatadogModule.d.ts.map +1 -0
  45. package/dist/providers/typescript/modules/datadog/DatadogModule.js +33 -0
  46. package/dist/providers/typescript/modules/datadog/DatadogModule.js.map +1 -0
  47. package/dist/providers/typescript/modules/github/GithubModule.d.ts +44 -0
  48. package/dist/providers/typescript/modules/github/GithubModule.d.ts.map +1 -0
  49. package/dist/providers/typescript/modules/github/GithubModule.js +111 -0
  50. package/dist/providers/typescript/modules/github/GithubModule.js.map +1 -0
  51. package/dist/providers/typescript/modules/gmail/GmailModule.d.ts +17 -0
  52. package/dist/providers/typescript/modules/gmail/GmailModule.d.ts.map +1 -0
  53. package/dist/providers/typescript/modules/gmail/GmailModule.js +30 -0
  54. package/dist/providers/typescript/modules/gmail/GmailModule.js.map +1 -0
  55. package/dist/providers/typescript/modules/hey_reach/HeyReachModule.d.ts +25 -0
  56. package/dist/providers/typescript/modules/hey_reach/HeyReachModule.d.ts.map +1 -0
  57. package/dist/providers/typescript/modules/hey_reach/HeyReachModule.js +33 -0
  58. package/dist/providers/typescript/modules/hey_reach/HeyReachModule.js.map +1 -0
  59. package/dist/providers/typescript/modules/launchdarkly/LaunchDarklyModule.d.ts +26 -0
  60. package/dist/providers/typescript/modules/launchdarkly/LaunchDarklyModule.d.ts.map +1 -0
  61. package/dist/providers/typescript/modules/launchdarkly/LaunchDarklyModule.js +34 -0
  62. package/dist/providers/typescript/modules/launchdarkly/LaunchDarklyModule.js.map +1 -0
  63. package/dist/providers/typescript/modules/linear/LinearModule.d.ts +35 -0
  64. package/dist/providers/typescript/modules/linear/LinearModule.d.ts.map +1 -0
  65. package/dist/providers/typescript/modules/linear/LinearModule.js +48 -0
  66. package/dist/providers/typescript/modules/linear/LinearModule.js.map +1 -0
  67. package/dist/providers/typescript/modules/moduleHelpers.d.ts +23 -0
  68. package/dist/providers/typescript/modules/moduleHelpers.d.ts.map +1 -0
  69. package/dist/providers/typescript/modules/moduleHelpers.js +74 -0
  70. package/dist/providers/typescript/modules/moduleHelpers.js.map +1 -0
  71. package/dist/providers/typescript/modules/notion/NotionModule.d.ts +33 -0
  72. package/dist/providers/typescript/modules/notion/NotionModule.d.ts.map +1 -0
  73. package/dist/providers/typescript/modules/notion/NotionModule.js +44 -0
  74. package/dist/providers/typescript/modules/notion/NotionModule.js.map +1 -0
  75. package/dist/providers/typescript/modules/posthog/PosthogModule.d.ts +30 -0
  76. package/dist/providers/typescript/modules/posthog/PosthogModule.d.ts.map +1 -0
  77. package/dist/providers/typescript/modules/posthog/PosthogModule.js +60 -0
  78. package/dist/providers/typescript/modules/posthog/PosthogModule.js.map +1 -0
  79. package/dist/providers/typescript/modules/registry.d.ts +11 -0
  80. package/dist/providers/typescript/modules/registry.d.ts.map +1 -0
  81. package/dist/providers/typescript/modules/registry.js +37 -0
  82. package/dist/providers/typescript/modules/registry.js.map +1 -0
  83. package/dist/providers/typescript/modules/resend/ResendModule.d.ts +32 -0
  84. package/dist/providers/typescript/modules/resend/ResendModule.d.ts.map +1 -0
  85. package/dist/providers/typescript/modules/resend/ResendModule.js +71 -0
  86. package/dist/providers/typescript/modules/resend/ResendModule.js.map +1 -0
  87. package/dist/providers/typescript/modules/slack/SlackModule.d.ts +32 -0
  88. package/dist/providers/typescript/modules/slack/SlackModule.d.ts.map +1 -0
  89. package/dist/providers/typescript/modules/slack/SlackModule.js +51 -0
  90. package/dist/providers/typescript/modules/slack/SlackModule.js.map +1 -0
  91. package/dist/providers/typescript/modules/snowflake/SnowflakeModule.d.ts +20 -0
  92. package/dist/providers/typescript/modules/snowflake/SnowflakeModule.d.ts.map +1 -0
  93. package/dist/providers/typescript/modules/snowflake/SnowflakeModule.js +27 -0
  94. package/dist/providers/typescript/modules/snowflake/SnowflakeModule.js.map +1 -0
  95. package/dist/providers/typescript/modules/templateRenderer.d.ts +17 -0
  96. package/dist/providers/typescript/modules/templateRenderer.d.ts.map +1 -0
  97. package/dist/providers/typescript/modules/templateRenderer.js +64 -0
  98. package/dist/providers/typescript/modules/templateRenderer.js.map +1 -0
  99. package/dist/providers/typescript/modules/terse/TerseModule.d.ts +20 -0
  100. package/dist/providers/typescript/modules/terse/TerseModule.d.ts.map +1 -0
  101. package/dist/providers/typescript/modules/terse/TerseModule.js +61 -0
  102. package/dist/providers/typescript/modules/terse/TerseModule.js.map +1 -0
  103. package/dist/providers/typescript/modules/workos/WorkOSModule.d.ts +17 -0
  104. package/dist/providers/typescript/modules/workos/WorkOSModule.d.ts.map +1 -0
  105. package/dist/providers/typescript/modules/workos/WorkOSModule.js +30 -0
  106. package/dist/providers/typescript/modules/workos/WorkOSModule.js.map +1 -0
  107. package/dist/providers/typescript/prepareCodegenData.d.ts +13 -0
  108. package/dist/providers/typescript/prepareCodegenData.d.ts.map +1 -1
  109. package/dist/providers/typescript/prepareCodegenData.js +42 -3
  110. package/dist/providers/typescript/prepareCodegenData.js.map +1 -1
  111. package/dist/providers/typescript/templateEngine.d.ts +8 -2
  112. package/dist/providers/typescript/templateEngine.d.ts.map +1 -1
  113. package/dist/providers/typescript/templateEngine.js +241 -29
  114. package/dist/providers/typescript/templateEngine.js.map +1 -1
  115. package/dist/providers/typescript/triggerTypeDeclarations.d.ts +4 -4
  116. package/dist/providers/typescript/triggerTypeDeclarations.d.ts.map +1 -1
  117. package/dist/providers/typescript/triggerTypeDeclarations.js +26 -83
  118. package/dist/providers/typescript/triggerTypeDeclarations.js.map +1 -1
  119. package/dist/providers/typescript/typePrinter.d.ts +1 -0
  120. package/dist/providers/typescript/typePrinter.d.ts.map +1 -1
  121. package/dist/providers/typescript/typePrinter.js +7 -1
  122. package/dist/providers/typescript/typePrinter.js.map +1 -1
  123. package/package.json +7 -5
  124. package/src/providers/typescript/modules/attio/attio.schemas.hbs +150 -0
  125. package/src/providers/typescript/modules/attio/attio.tools.hbs +192 -0
  126. package/src/providers/typescript/modules/attio/attio.triggers.hbs +130 -0
  127. package/src/providers/typescript/modules/datadog/datadog.tools.hbs +16 -0
  128. package/src/providers/typescript/modules/github/github.tools.hbs +68 -0
  129. package/src/providers/typescript/modules/github/github.triggers.hbs +40 -0
  130. package/src/providers/typescript/modules/gmail/gmail.tools.hbs +17 -0
  131. package/src/providers/typescript/modules/gmail/gmail.triggers.hbs +16 -0
  132. package/src/providers/typescript/modules/hey_reach/hey_reach.tools.hbs +9 -0
  133. package/src/providers/typescript/modules/hey_reach/hey_reach.triggers.hbs +56 -0
  134. package/src/providers/typescript/modules/launchdarkly/launchdarkly.tools.hbs +16 -0
  135. package/src/providers/typescript/modules/linear/linear.tools.hbs +23 -0
  136. package/src/providers/typescript/modules/linear/linear.triggers.hbs +24 -0
  137. package/src/providers/typescript/modules/notion/notion.tools.hbs +20 -0
  138. package/src/providers/typescript/modules/posthog/posthog.tools.hbs +28 -0
  139. package/src/providers/typescript/modules/resend/resend.tools.hbs +46 -0
  140. package/src/providers/typescript/modules/slack/slack.tools.hbs +18 -0
  141. package/src/providers/typescript/modules/slack/slack.triggers.hbs +28 -0
  142. package/src/providers/typescript/modules/snowflake/snowflake.tools.hbs +12 -0
  143. package/src/providers/typescript/modules/terse/terse.tools.hbs +22 -0
  144. package/src/providers/typescript/modules/terse/terse.triggers.hbs +33 -0
  145. package/src/providers/typescript/modules/workos/workos.tools.hbs +12 -0
  146. package/src/providers/typescript/modules/workos/workos.triggers.hbs +64 -0
  147. package/templates/typescript/codegen/.impeccable/hook.cache.json +1 -1
  148. package/templates/typescript/codegen/common.hbs +6 -0
  149. package/templates/typescript/codegen/partials/tools-slice.hbs +18 -0
  150. package/templates/typescript/codegen/root.hbs +72 -0
  151. package/templates/typescript/codegen/sdk-primitives.hbs +42 -0
  152. package/templates/typescript/codegen/generated.hbs +0 -14
  153. package/templates/typescript/codegen/partials/attio-section.hbs +0 -86
  154. package/templates/typescript/codegen/partials/datadog-section.hbs +0 -3
  155. package/templates/typescript/codegen/partials/github-section.hbs +0 -30
  156. package/templates/typescript/codegen/partials/header.hbs +0 -17
  157. package/templates/typescript/codegen/partials/hey-reach-section.hbs +0 -3
  158. package/templates/typescript/codegen/partials/launchdarkly-section.hbs +0 -3
  159. package/templates/typescript/codegen/partials/linear-section.hbs +0 -5
  160. package/templates/typescript/codegen/partials/notion-section.hbs +0 -5
  161. package/templates/typescript/codegen/partials/posthog-section.hbs +0 -15
  162. package/templates/typescript/codegen/partials/skills-section.hbs +0 -99
  163. package/templates/typescript/codegen/partials/slack-section.hbs +0 -5
  164. package/templates/typescript/codegen/partials/tools-section.hbs +0 -94
  165. package/templates/typescript/codegen/partials/triggers-section.hbs +0 -353
@@ -1,37 +1,249 @@
1
- import Handlebars from "handlebars";
2
- import fs from "node:fs";
3
- import path from "node:path";
4
- import { getTemplatesRoot, readTemplateFile } from "../templateUtils.js";
5
- import { escapeString } from "./prepareCodegenData.js";
6
- let template;
7
- function getHandlebars() {
8
- const handlebars = Handlebars.create();
9
- handlebars.registerHelper("sectionHeader", (name) => {
10
- const dashes = "─".repeat(Math.max(1, 58 - name.length));
11
- return `// ── ${name} ${dashes}`;
1
+ import { IntegrationType } from "terse-types";
2
+ import ts from "typescript";
3
+ import { readTemplateFile } from "../templateUtils.js";
4
+ import { ModuleTemplateRenderer } from "./modules/templateRenderer.js";
5
+ const GENERATED_DIR = "terse.generated";
6
+ const LEAF_BANNER = [
7
+ "// Auto-generated by `terse generate` — do not edit manually.",
8
+ '// Part of the terse.generated bundle: import symbols from "./terse.generated" (the root file), which re-exports everything here.'
9
+ ].join("\n");
10
+ export function assembleGeneratedFiles(input) {
11
+ const renderer = ModuleTemplateRenderer.getInstance();
12
+ const outputs = input.moduleOutputs.filter(output => output.leafFiles.length > 0);
13
+ const imports = collectSdkImportCandidates(outputs);
14
+ const leaves = [...buildCommonLeaf(renderer, input.commonToolDeclarations), ...outputs.flatMap(output => output.leafFiles)];
15
+ const declarations = new Map(leaves.map(leaf => [leaf.fileName, extractDeclarations(leaf.body)]));
16
+ const assembled = leaves.map(leaf => assembleLeaf(leaf, imports, leaves, declarations));
17
+ const toolboxEntries = outputs.flatMap(output => output.toolboxEntries).sort((a, b) => a.key.localeCompare(b.key));
18
+ const root = assembleRoot(renderer, input, outputs, imports, toolboxEntries, assembled);
19
+ return [root, ...assembled.map(leaf => ({ fileName: `${GENERATED_DIR}/${leaf.fileName}`, code: leaf.code }))];
20
+ }
21
+ function collectSdkImportCandidates(outputs) {
22
+ const candidates = new Set(outputs.flatMap(output => [...output.sdkImports]));
23
+ const declaredNames = new Set(outputs.flatMap(output => [...output.triggerDeclaredNames]));
24
+ declaredNames.forEach(name => candidates.delete(name));
25
+ if (declaredNames.size > 0)
26
+ candidates.add("SDKTrigger");
27
+ outputs.flatMap(output => [...output.triggerExtraImports]).forEach(name => candidates.add(name));
28
+ return [...candidates].sort();
29
+ }
30
+ function buildCommonLeaf(renderer, commonToolDeclarations) {
31
+ if (commonToolDeclarations.length === 0)
32
+ return [];
33
+ return [{ fileName: "common.ts", kind: "common", body: renderer.renderCodegenTemplate("common.hbs", { commonToolDeclarations }) }];
34
+ }
35
+ function aggregateLines(outputs, linesOf) {
36
+ const outputByType = new Map(outputs.map(output => [output.integration, output]));
37
+ return Object.values(IntegrationType).flatMap(type => {
38
+ const output = outputByType.get(type);
39
+ return output ? [...linesOf(output)] : [];
40
+ });
41
+ }
42
+ function assembleLeaf(leaf, importCandidates, allLeaves, declarations) {
43
+ const ownNames = new Set((declarations.get(leaf.fileName) ?? []).map(declaration => declaration.name));
44
+ const referencedNames = collectReferencedNames(leaf.body);
45
+ const sdkImportLines = buildSdkImportLines(referencedNames, importCandidates, ownNames);
46
+ const siblingImportLines = allLeaves
47
+ .filter(sibling => KIND_TIER[sibling.kind] < KIND_TIER[leaf.kind])
48
+ .flatMap(sibling => buildSiblingImportLines(referencedNames, ownNames, declarations.get(sibling.fileName) ?? [], `./${moduleName(sibling.fileName)}.js`));
49
+ const importBlock = [...sdkImportLines, ...siblingImportLines].join("\n");
50
+ const code = postprocess([LEAF_BANNER, importBlock, leaf.body].filter(Boolean).join("\n\n"));
51
+ return { ...leaf, code, exports: (declarations.get(leaf.fileName) ?? []).filter(declaration => declaration.exported) };
52
+ }
53
+ function assembleRoot(renderer, input, outputs, importCandidates, toolboxEntries, leaves) {
54
+ const body = renderer.renderCodegenTemplate("root.hbs", {
55
+ toolboxEntries,
56
+ triggersAggregateLines: aggregateLines(outputs, output => output.triggersAggregateLines),
57
+ skillsAggregateLines: aggregateLines(outputs, output => output.skillsAggregateLines)
12
58
  });
13
- handlebars.registerHelper("escape", (value) => escapeString(String(value ?? "")));
14
- handlebars.registerHelper("eq", (left, right) => left === right);
15
- handlebars.registerHelper("joinPipe", (values) => (Array.isArray(values) ? values.join(" | ") : ""));
16
- const partialsDir = path.join(getTemplatesRoot(), "typescript", "codegen", "partials");
17
- for (const entry of fs.readdirSync(partialsDir).sort()) {
18
- if (!entry.endsWith(".hbs"))
59
+ const ownNames = new Set(extractDeclarations(body).map(declaration => declaration.name));
60
+ const referencedNames = collectReferencedNames(body);
61
+ const sdkImportLines = buildSdkImportLines(referencedNames, [...new Set([...importCandidates, "TerseAgent"])].sort(), ownNames);
62
+ const siblingImportLines = leaves.flatMap(leaf => buildSiblingImportLines(referencedNames, ownNames, leaf.exports, `./${GENERATED_DIR}/${moduleName(leaf.fileName)}.js`));
63
+ const reexportLines = leaves.map(leaf => `export * from "./${GENERATED_DIR}/${moduleName(leaf.fileName)}.js"`);
64
+ const header = buildRootHeader(input.availableIntegrations, toolboxEntries, leaves);
65
+ const code = postprocess([header, [...sdkImportLines, ...siblingImportLines].join("\n"), reexportLines.join("\n"), body].filter(Boolean).join("\n\n"));
66
+ return { fileName: "terse.generated.ts", code };
67
+ }
68
+ function buildRootHeader(availableIntegrations, toolboxEntries, leaves) {
69
+ const lines = ["// Auto-generated by `terse generate` — do not edit manually.", "// Re-run `terse generate` to update."];
70
+ if (availableIntegrations) {
71
+ lines.push("//");
72
+ lines.push(`// The integrations currently available in Terse: ${availableIntegrations}.`);
73
+ lines.push("// Connect one with `terse integrate connect <type>`; list its tools with `terse integrate tool <type> --json`.");
74
+ }
75
+ lines.push("//");
76
+ lines.push("// This file is the only import surface — everything generated is re-exported here:");
77
+ lines.push('// import { Triggers, Skills, toolbox, ... } from "./terse.generated"');
78
+ lines.push("// The terse.generated/ folder holds the per-integration declarations. Read only the files you need:");
79
+ lines.push("// <integration>.triggers.ts — trigger factories (Triggers.<integration>.*) and their payload types");
80
+ lines.push("// <integration>.tools.ts — typed tool methods (toolbox.<integration>.*), their Params/Result types, pinned resources, and skills");
81
+ if (leaves.some(leaf => leaf.kind === "schemas")) {
82
+ lines.push("// <integration>.schemas.ts — workspace-specific value/record types (Attio objects and lists)");
83
+ }
84
+ lines.push("// terse.triggers.ts / terse.tools.ts — built-in triggers (schedule, webhook, webMonitor), built-in tools, and the web/imageEdit/memory skills");
85
+ lines.push("// Below the index, this file only composes: the Triggers/Skills/toolbox aggregates re-export what the folder defines.");
86
+ lines.push("");
87
+ lines.push(readTemplateFile("typescript/codegen/sdk-primitives.hbs").trimEnd());
88
+ const indexLines = leaves.flatMap(leaf => buildIndexLines(leaf, toolboxEntries));
89
+ if (indexLines.length > 0) {
90
+ lines.push("//");
91
+ lines.push("// Index of the generated files. Line numbers are exact as of the last `terse generate`;");
92
+ lines.push("// if a formatter has touched a file since, search for the symbol name instead.");
93
+ lines.push("//");
94
+ lines.push(...indexLines);
95
+ }
96
+ return lines.join("\n");
97
+ }
98
+ function buildIndexLines(leaf, toolboxEntries) {
99
+ const rows = collectIndexRows(leaf, toolboxEntries);
100
+ if (rows.length === 0)
101
+ return [];
102
+ const width = Math.max(...rows.map(row => String(row.line).length));
103
+ return [`// ${GENERATED_DIR}/${leaf.fileName}`, ...rows.map(row => `// L${String(row.line).padEnd(width)} ${row.label}`)];
104
+ }
105
+ function collectIndexRows(leaf, toolboxEntries) {
106
+ const source = parseSource(leaf.code);
107
+ const lineOf = (node) => source.getLineAndCharacterOfPosition(node.getStart(source)).line + 1;
108
+ const typeNameToToolboxKey = new Map(toolboxEntries.map(entry => [entry.typeName, entry.key]));
109
+ const declarationLineByName = new Map(topLevelDeclarations(source)
110
+ .filter(declaration => declaration.exported)
111
+ .map(declaration => [declaration.name, lineOf(declaration.statement)]));
112
+ const rows = [];
113
+ for (const statement of source.statements) {
114
+ if (!hasExportModifier(statement))
19
115
  continue;
20
- const partialName = path.basename(entry, ".hbs");
21
- handlebars.registerPartial(partialName, fs.readFileSync(path.join(partialsDir, entry), "utf-8"));
116
+ if (ts.isTypeAliasDeclaration(statement) && ts.isTypeLiteralNode(statement.type)) {
117
+ const toolboxKey = typeNameToToolboxKey.get(statement.name.text);
118
+ if (toolboxKey !== undefined) {
119
+ rows.push(...toolboxMethodRows(statement.type, toolboxKey, declarationLineByName, lineOf));
120
+ continue;
121
+ }
122
+ }
123
+ const triggersConst = matchTriggersConst(statement);
124
+ if (triggersConst) {
125
+ rows.push(...triggerMethodRows(triggersConst.initializer, triggersConst.key, lineOf));
126
+ continue;
127
+ }
128
+ if (ts.isClassDeclaration(statement) && statement.name)
129
+ rows.push({ line: lineOf(statement), label: `class ${statement.name.text}` });
130
+ else if (ts.isFunctionDeclaration(statement) && statement.name)
131
+ rows.push({ line: lineOf(statement), label: `function ${statement.name.text}()` });
132
+ else if ((ts.isTypeAliasDeclaration(statement) || ts.isInterfaceDeclaration(statement)) && indexableTypeName(leaf.kind, statement.name.text)) {
133
+ rows.push({ line: lineOf(statement), label: `type ${statement.name.text}` });
134
+ }
135
+ }
136
+ return rows;
137
+ }
138
+ function toolboxMethodRows(type, toolboxKey, declarationLineByName, lineOf) {
139
+ return type.members.flatMap(member => {
140
+ if (!ts.isMethodSignature(member) || !ts.isIdentifier(member.name))
141
+ return [];
142
+ const firstParamType = member.parameters[0]?.type;
143
+ const paramsLine = firstParamType && ts.isTypeReferenceNode(firstParamType) && ts.isIdentifier(firstParamType.typeName) ? declarationLineByName.get(firstParamType.typeName.text) : undefined;
144
+ const paramsSuffix = paramsLine ? ` (params L${paramsLine})` : "";
145
+ return [{ line: lineOf(member), label: `toolbox.${toolboxKey}.${member.name.text}()${paramsSuffix}` }];
146
+ });
147
+ }
148
+ function triggerMethodRows(initializer, triggersKey, lineOf) {
149
+ return initializer.properties.flatMap(property => {
150
+ if (!ts.isMethodDeclaration(property) || !ts.isIdentifier(property.name))
151
+ return [];
152
+ return [{ line: lineOf(property), label: `Triggers.${triggersKey}.${property.name.text}()` }];
153
+ });
154
+ }
155
+ function matchTriggersConst(statement) {
156
+ if (!ts.isVariableStatement(statement) || statement.declarationList.declarations.length !== 1)
157
+ return undefined;
158
+ const [declaration] = statement.declarationList.declarations;
159
+ if (!ts.isIdentifier(declaration.name) || !declaration.name.text.endsWith("Triggers"))
160
+ return undefined;
161
+ const key = declaration.name.text.slice(0, -"Triggers".length);
162
+ if (key.length === 0 || !declaration.initializer || !ts.isObjectLiteralExpression(declaration.initializer))
163
+ return undefined;
164
+ return { key, initializer: declaration.initializer };
165
+ }
166
+ function indexableTypeName(kind, name) {
167
+ switch (kind) {
168
+ case "common":
169
+ return true;
170
+ case "tools":
171
+ return !/(Params|Result|GeneratedTools)$/.test(name);
172
+ case "schemas":
173
+ return /(RecordValues|InputValues|EntryValues|EntryRecordValues|ValuesFor|FilterFor)$/.test(name) || name === "GeneratedAttioObject" || name === "GeneratedAttioList";
174
+ case "triggers":
175
+ return false;
176
+ default:
177
+ throw kind;
22
178
  }
23
- return handlebars;
24
179
  }
25
- function getCompiledTemplate() {
26
- if (!template) {
27
- const handlebars = getHandlebars();
28
- template = handlebars.compile(readTemplateFile("typescript/codegen/generated.hbs"), { noEscape: true });
180
+ function buildSdkImportLines(referencedNames, candidates, ownNames) {
181
+ const used = candidates.filter(name => !ownNames.has(name) && referencedNames.has(name));
182
+ if (used.length === 0)
183
+ return [];
184
+ if (used.length > 3) {
185
+ return ["import {", ...used.map(name => ` ${name},`), '} from "terse-sdk"'];
29
186
  }
30
- return template;
187
+ return [`import { ${used.join(", ")} } from "terse-sdk"`];
188
+ }
189
+ function buildSiblingImportLines(referencedNames, ownNames, siblingDeclarations, specifier) {
190
+ const used = siblingDeclarations.filter(declaration => declaration.exported && !ownNames.has(declaration.name) && referencedNames.has(declaration.name));
191
+ const values = used.filter(declaration => declaration.kind === "value").map(declaration => declaration.name);
192
+ const types = used.filter(declaration => declaration.kind === "type").map(declaration => declaration.name);
193
+ const lines = [];
194
+ if (values.length > 0)
195
+ lines.push(`import { ${values.join(", ")} } from "${specifier}"`);
196
+ if (types.length > 0)
197
+ lines.push(`import type { ${types.join(", ")} } from "${specifier}"`);
198
+ return lines;
199
+ }
200
+ function extractDeclarations(body) {
201
+ const declarations = [];
202
+ const seen = new Set();
203
+ for (const { name, kind, exported } of topLevelDeclarations(parseSource(body))) {
204
+ if (seen.has(name))
205
+ continue;
206
+ seen.add(name);
207
+ declarations.push({ name, kind, exported });
208
+ }
209
+ return declarations;
210
+ }
211
+ function topLevelDeclarations(source) {
212
+ return source.statements.flatMap((statement) => {
213
+ const exported = hasExportModifier(statement);
214
+ if (ts.isTypeAliasDeclaration(statement) || ts.isInterfaceDeclaration(statement)) {
215
+ return [{ statement, name: statement.name.text, kind: "type", exported }];
216
+ }
217
+ if (ts.isClassDeclaration(statement) || ts.isFunctionDeclaration(statement) || ts.isEnumDeclaration(statement)) {
218
+ return statement.name ? [{ statement, name: statement.name.text, kind: "value", exported }] : [];
219
+ }
220
+ if (ts.isVariableStatement(statement)) {
221
+ return statement.declarationList.declarations.flatMap(declaration => (ts.isIdentifier(declaration.name) ? [{ statement, name: declaration.name.text, kind: "value", exported }] : []));
222
+ }
223
+ return [];
224
+ });
225
+ }
226
+ function collectReferencedNames(body) {
227
+ const names = new Set();
228
+ const visit = (node) => {
229
+ if (ts.isIdentifier(node))
230
+ names.add(node.text);
231
+ ts.forEachChild(node, visit);
232
+ };
233
+ visit(parseSource(body));
234
+ return names;
235
+ }
236
+ function hasExportModifier(statement) {
237
+ return ts.canHaveModifiers(statement) && (ts.getModifiers(statement)?.some(modifier => modifier.kind === ts.SyntaxKind.ExportKeyword) ?? false);
238
+ }
239
+ function parseSource(text) {
240
+ return ts.createSourceFile("generated.ts", text, ts.ScriptTarget.Latest, true);
241
+ }
242
+ function moduleName(fileName) {
243
+ return fileName.replace(/\.ts$/, "");
31
244
  }
32
- export function renderGeneratedCode(context) {
33
- return getCompiledTemplate()(context)
34
- .replace(/\n{3,}/g, "\n\n")
35
- .replace(/\n$/, "");
245
+ function postprocess(code) {
246
+ return code.replace(/\n{3,}/g, "\n\n").replace(/\n+$/, "");
36
247
  }
248
+ const KIND_TIER = { common: 0, schemas: 1, tools: 2, triggers: 3 };
37
249
  //# sourceMappingURL=templateEngine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"templateEngine.js","sourceRoot":"","sources":["../../../src/providers/typescript/templateEngine.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAExE,OAAO,EAAwB,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAE5E,IAAI,QAAkE,CAAA;AAEtE,SAAS,aAAa;IAClB,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,EAAE,CAAA;IAEtC,UAAU,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,IAAY,EAAE,EAAE;QACxD,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;QACxD,OAAO,SAAS,IAAI,IAAI,MAAM,EAAE,CAAA;IACpC,CAAC,CAAC,CAAA;IACF,UAAU,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,KAAc,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1F,UAAU,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,IAAa,EAAE,KAAc,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,CAAA;IAClF,UAAU,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,MAAe,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAE7G,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;IACtF,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QACrD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,SAAQ;QACrC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAChD,UAAU,CAAC,eAAe,CAAC,WAAW,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;IACpG,CAAC;IAED,OAAO,UAAU,CAAA;AACrB,CAAC;AAED,SAAS,mBAAmB;IACxB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,MAAM,UAAU,GAAG,aAAa,EAAE,CAAA;QAClC,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAkB,gBAAgB,CAAC,kCAAkC,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;IAC5H,CAAC;IACD,OAAO,QAAQ,CAAA;AACnB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAwB;IACxD,OAAO,mBAAmB,EAAE,CAAC,OAAO,CAAC;SAChC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;SAC1B,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAC3B,CAAC"}
1
+ {"version":3,"file":"templateEngine.js","sourceRoot":"","sources":["../../../src/providers/typescript/templateEngine.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- export declare function buildTriggerTypeDeclarations(requestedNames: ReadonlySet<string>): Promise<TriggerTypeDeclarations>;
2
- export type TriggerTypeDeclarations = {
3
- readonly declaredNames: ReadonlySet<string>;
4
- readonly declarationsByIntegration: Readonly<Record<string, string[]>>;
1
+ export declare function buildTriggerDeclarationsForBucket(bucket: string): Promise<BucketTriggerDeclarations>;
2
+ export type BucketTriggerDeclarations = {
3
+ readonly declarations: readonly string[];
4
+ readonly declaredNames: readonly string[];
5
5
  readonly extraImports: readonly string[];
6
6
  };
7
7
  //# sourceMappingURL=triggerTypeDeclarations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"triggerTypeDeclarations.d.ts","sourceRoot":"","sources":["../../../src/providers/typescript/triggerTypeDeclarations.ts"],"names":[],"mappings":"AAKA,wBAAsB,4BAA4B,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAcxH;AA0FD,MAAM,MAAM,uBAAuB,GAAG;IAClC,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAC3C,QAAQ,CAAC,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;IACtE,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;CAC3C,CAAA"}
1
+ {"version":3,"file":"triggerTypeDeclarations.d.ts","sourceRoot":"","sources":["../../../src/providers/typescript/triggerTypeDeclarations.ts"],"names":[],"mappings":"AAIA,wBAAsB,iCAAiC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAoB1G;AAuBD,MAAM,MAAM,yBAAyB,GAAG;IACpC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;IACxC,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAA;IACzC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;CAC3C,CAAA"}
@@ -1,99 +1,42 @@
1
- import { TriggerDefinitions, isTriggerDefinitionName } from "terse-types";
2
- import { z } from "zod";
1
+ import { TriggerDefinitions, isBuiltInIntegrationType, isTriggerDefinitionName } from "terse-types";
3
2
  import { printType } from "./typePrinter.js";
4
- export async function buildTriggerTypeDeclarations(requestedNames) {
5
- const names = resolveWithDependencies(requestedNames);
6
- const declarations = await Promise.all(names.map(renderDeclaration));
7
- const declarationsByIntegration = {};
8
- names.forEach((name, index) => {
9
- const integration = integrationForTriggerType(name);
10
- declarationsByIntegration[integration] = [...(declarationsByIntegration[integration] ?? []), declarations[index]];
3
+ export async function buildTriggerDeclarationsForBucket(bucket) {
4
+ const entries = Object.keys(TriggerDefinitions)
5
+ .filter(isTriggerDefinitionName)
6
+ .flatMap(name => {
7
+ const definition = TriggerDefinitions[name];
8
+ if (bucketForIntegration(definition.integration) !== bucket)
9
+ return [];
10
+ return [{ name, definition }];
11
11
  });
12
- const extraImports = names.flatMap(name => [...(TRIGGER_PRESENTATIONS[name]?.imports ?? [])]);
12
+ const declarations = [];
13
+ for (const entry of entries) {
14
+ declarations.push(await renderDeclaration(entry.name, entry.definition));
15
+ }
16
+ const extraImports = entries.flatMap(entry => [...(entry.definition.kind === "concrete" ? (entry.definition.printHints?.imports ?? []) : [])]);
13
17
  return {
14
- declaredNames: new Set(names),
15
- declarationsByIntegration,
18
+ declarations,
19
+ declaredNames: entries.map(entry => entry.name),
16
20
  extraImports: [...new Set(extraImports)]
17
21
  };
18
22
  }
19
- function integrationForTriggerType(name) {
20
- const prefixes = [
21
- ["Slack", "slack"],
22
- ["Github", "github"],
23
- ["Gmail", "gmail"],
24
- ["Linear", "linear"],
25
- ["WorkOS", "workos"],
26
- ["HeyReach", "heyreach"],
27
- ["Attio", "attio"]
28
- ];
29
- const match = prefixes.find(([prefix]) => name.startsWith(prefix));
30
- return match ? match[1] : "common";
23
+ function bucketForIntegration(integration) {
24
+ return isBuiltInIntegrationType(integration) ? "common" : integration;
31
25
  }
32
- async function renderDeclaration(name) {
33
- const memberNames = unionMemberNames(TriggerDefinitions[name]);
34
- if (memberNames) {
35
- return `export type ${name} = ${memberNames.join(" | ")}`;
26
+ async function renderDeclaration(name, definition) {
27
+ if (definition.kind === "union") {
28
+ return `export type ${name} = ${definition.members.join(" | ")}`;
36
29
  }
37
- const presentation = TRIGGER_PRESENTATIONS[name];
30
+ const hints = definition.printHints;
38
31
  const payloadName = `${name}Payload`;
39
32
  const payloadInterface = await printType({
40
33
  typeName: payloadName,
41
- schema: TriggerDefinitions[name],
34
+ schema: definition.schema,
42
35
  io: "output",
43
- fieldOverrides: presentation?.fieldOverrides,
44
- typeParams: presentation?.typeParams
36
+ fieldOverrides: hints?.fieldOverrides,
37
+ typeParams: hints?.typeParams
45
38
  });
46
- const alias = `export type ${name}${presentation?.typeParams ?? ""} = SDKTrigger<${payloadName}${presentation?.aliasArgs ?? ""}>`;
39
+ const alias = `export type ${name}${hints?.typeParams ?? ""} = SDKTrigger<${payloadName}${hints?.aliasArgs ?? ""}>`;
47
40
  return `${payloadInterface}\n\n${alias}`;
48
41
  }
49
- function resolveWithDependencies(requestedNames) {
50
- const included = new Set();
51
- const include = (name) => {
52
- if (!isTriggerDefinitionName(name) || included.has(name))
53
- return;
54
- included.add(name);
55
- unionMemberNames(TriggerDefinitions[name])?.forEach(include);
56
- };
57
- requestedNames.forEach(include);
58
- return Object.keys(TriggerDefinitions)
59
- .filter(isTriggerDefinitionName)
60
- .filter(name => included.has(name));
61
- }
62
- // A registered schema prints as a union alias only when every option is itself a registered schema;
63
- // anything else goes through the payload printer.
64
- function unionMemberNames(schema) {
65
- if (!(schema instanceof z.ZodUnion))
66
- return undefined;
67
- const memberNames = schema.options.flatMap(option => {
68
- const name = NAME_BY_SCHEMA.get(option);
69
- return name ? [name] : [];
70
- });
71
- return memberNames.length === schema.options.length ? memberNames : undefined;
72
- }
73
- const NAME_BY_SCHEMA = new Map(Object.keys(TriggerDefinitions)
74
- .filter(isTriggerDefinitionName)
75
- .map(name => [TriggerDefinitions[name], name]));
76
- const SLACK_PRESENTATION = {
77
- fieldOverrides: {
78
- blocks: "SlackBlocks | null",
79
- attachments: "SlackAttachments | null",
80
- files: "SlackFiles | null"
81
- },
82
- imports: ["SlackBlocks", "SlackAttachments", "SlackFiles"]
83
- };
84
- const ATTIO_RECORD_PRESENTATION = {
85
- typeParams: "<TValues = Record<string, unknown>>",
86
- aliasArgs: "<TValues>",
87
- fieldOverrides: { "record.values": "TValues" }
88
- };
89
- const TRIGGER_PRESENTATIONS = {
90
- SlackMessageTrigger: SLACK_PRESENTATION,
91
- SlackAppMentionTrigger: SLACK_PRESENTATION,
92
- SlackReactionAddedTrigger: SLACK_PRESENTATION,
93
- AttioRecordCreatedTrigger: ATTIO_RECORD_PRESENTATION,
94
- AttioRecordMergedTrigger: ATTIO_RECORD_PRESENTATION,
95
- AttioRecordUpdatedTrigger: ATTIO_RECORD_PRESENTATION,
96
- WebhookTrigger: { typeParams: "<TBody = unknown>", aliasArgs: "<TBody>", fieldOverrides: { body: "TBody" } },
97
- WebMonitorTrigger: { typeParams: "<TStructured = unknown>", aliasArgs: "<TStructured>", fieldOverrides: { payload: "TStructured" } }
98
- };
99
42
  //# sourceMappingURL=triggerTypeDeclarations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"triggerTypeDeclarations.js","sourceRoot":"","sources":["../../../src/providers/typescript/triggerTypeDeclarations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"triggerTypeDeclarations.js","sourceRoot":"","sources":["../../../src/providers/typescript/triggerTypeDeclarations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgD,kBAAkB,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAEjJ,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE5C,MAAM,CAAC,KAAK,UAAU,iCAAiC,CAAC,MAAc;IAClE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC;SAC1C,MAAM,CAAC,uBAAuB,CAAC;SAC/B,OAAO,CAAC,IAAI,CAAC,EAAE;QACZ,MAAM,UAAU,GAAsB,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC9D,IAAI,oBAAoB,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,MAAM;YAAE,OAAO,EAAE,CAAA;QACtE,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAA;IACjC,CAAC,CAAC,CAAA;IAEN,MAAM,YAAY,GAAa,EAAE,CAAA;IACjC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC1B,YAAY,CAAC,IAAI,CAAC,MAAM,iBAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAA;IAC5E,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9I,OAAO;QACH,YAAY;QACZ,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;QAC/C,YAAY,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;KAC3C,CAAA;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,WAA4B;IACtD,OAAO,wBAAwB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAA;AACzE,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAAY,EAAE,UAA6B;IACxE,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC9B,OAAO,eAAe,IAAI,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAA;IACpE,CAAC;IACD,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAA;IACnC,MAAM,WAAW,GAAG,GAAG,IAAI,SAAS,CAAA;IACpC,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC;QACrC,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,EAAE,EAAE,QAAQ;QACZ,cAAc,EAAE,KAAK,EAAE,cAAc;QACrC,UAAU,EAAE,KAAK,EAAE,UAAU;KAChC,CAAC,CAAA;IACF,MAAM,KAAK,GAAG,eAAe,IAAI,GAAG,KAAK,EAAE,UAAU,IAAI,EAAE,iBAAiB,WAAW,GAAG,KAAK,EAAE,SAAS,IAAI,EAAE,GAAG,CAAA;IACnH,OAAO,GAAG,gBAAgB,OAAO,KAAK,EAAE,CAAA;AAC5C,CAAC"}
@@ -18,5 +18,6 @@ export type PrintTypeOptions = {
18
18
  readonly fieldOverrides?: Readonly<Record<string, string>>;
19
19
  readonly hoisted?: readonly HoistedShape[];
20
20
  readonly typeParams?: string;
21
+ readonly declareAs?: "alias";
21
22
  };
22
23
  //# sourceMappingURL=typePrinter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typePrinter.d.ts","sourceRoot":"","sources":["../../../src/providers/typescript/typePrinter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAQvB,wBAAsB,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAY1E;AAED,qBAAa,oBAAqB,SAAQ,KAAK;gBAC/B,QAAQ,EAAE,MAAM;CAI/B;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAEzF;AAuFD,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAA;AAExC,MAAM,MAAM,YAAY,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAA;IAC1B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACvC,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAC1D,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,YAAY,EAAE,CAAA;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAC/B,CAAA"}
1
+ {"version":3,"file":"typePrinter.d.ts","sourceRoot":"","sources":["../../../src/providers/typescript/typePrinter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAQvB,wBAAsB,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAa1E;AAQD,qBAAa,oBAAqB,SAAQ,KAAK;gBAC/B,QAAQ,EAAE,MAAM;CAI/B;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAEzF;AAuFD,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAA;AAExC,MAAM,MAAM,YAAY,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAA;IAC1B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACvC,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAC1D,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,YAAY,EAAE,CAAA;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA"}
@@ -16,9 +16,15 @@ export async function printType(options) {
16
16
  if (/_?_[Ss]chema\d+/.test(compiled)) {
17
17
  throw new AnonymousSchemaError(options.typeName);
18
18
  }
19
- const declared = options.typeParams ? injectTypeParams(compiled, options.typeName, options.typeParams) : compiled;
19
+ const shaped = options.declareAs === "alias" ? interfaceToAlias(compiled, options.typeName) : compiled;
20
+ const declared = options.typeParams ? injectTypeParams(shaped, options.typeName, options.typeParams) : shaped;
20
21
  return declared.trimEnd();
21
22
  }
23
+ // Interfaces lack the implicit index signature object-literal aliases have, so shapes used under
24
+ // `extends Record<string, unknown>` bounds must print as aliases.
25
+ function interfaceToAlias(source, typeName) {
26
+ return source.replace(new RegExp(`export interface ${typeName}\\b`), `export type ${typeName} =`);
27
+ }
22
28
  export class AnonymousSchemaError extends Error {
23
29
  constructor(typeName) {
24
30
  super(`Printed type ${typeName} contains an anonymous recursive sub-schema; give it a name in terse-types via .meta({ id: "..." })`);
@@ -1 +1 @@
1
- {"version":3,"file":"typePrinter.js","sourceRoot":"","sources":["../../../src/providers/typescript/typePrinter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typePrinter.js","sourceRoot":"","sources":["../../../src/providers/typescript/typePrinter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "terse-cli",
3
- "version": "0.2.15",
3
+ "version": "0.3.0",
4
4
  "type": "module",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "repository": {
@@ -17,29 +17,31 @@
17
17
  },
18
18
  "files": [
19
19
  "dist",
20
- "templates"
20
+ "templates",
21
+ "src/providers/typescript/modules/**/*.hbs"
21
22
  ],
22
23
  "dependencies": {
23
24
  "@clack/prompts": "^1.0.0",
24
25
  "@inquirer/prompts": "^7.0.0",
25
26
  "@pnpm/tabtab": "^0.5.4",
26
27
  "@workflow/builders": "5.0.0-beta.19",
27
- "@workflow/world-local": "5.0.0-beta.19",
28
28
  "@workflow/world": "5.0.0-beta.12",
29
+ "@workflow/world-local": "5.0.0-beta.19",
29
30
  "chalk": "^5.0.0",
30
31
  "commander": "^14.0.0",
31
32
  "conf": "^15.1.0",
32
33
  "dotenv": "^17.4.2",
33
34
  "fflate": "^0.8.0",
34
35
  "handlebars": "^4.7.9",
36
+ "json-schema-to-typescript": "^15.0.4",
35
37
  "luxon": "^3.7.2",
36
38
  "ora": "^8.0.0",
37
39
  "tsx": "^4.0.0",
38
40
  "typescript": "^5.0.0",
39
41
  "workflow": "5.0.0-beta.19",
40
42
  "zod": "^4.3.6",
41
- "terse-sdk": "0.2.15",
42
- "terse-types": "0.0.76"
43
+ "terse-sdk": "0.3.0",
44
+ "terse-types": "0.1.0"
43
45
  },
44
46
  "devDependencies": {
45
47
  "@types/luxon": "^3.7.1",