skir-typescript-gen 0.0.1 → 0.0.4

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/index.d.ts CHANGED
@@ -1,17 +1,16 @@
1
1
  import type { CodeGenerator } from "skir-internal";
2
2
  import { z } from "zod";
3
3
  declare const Config: z.ZodObject<{
4
- importPathExtension: z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodLiteral<".js">, z.ZodLiteral<".ts">]>;
4
+ importPathExtension: z.ZodOptional<z.ZodString>;
5
5
  clientModulePath: z.ZodOptional<z.ZodString>;
6
- }, z.core.$strip>;
6
+ }, z.core.$strict>;
7
7
  type Config = z.infer<typeof Config>;
8
8
  declare class TypescriptCodeGenerator implements CodeGenerator<Config> {
9
- readonly id = "typescript";
9
+ readonly id = "skir-typescript-gen";
10
10
  readonly configType: z.ZodObject<{
11
- importPathExtension: z.ZodUnion<readonly [z.ZodLiteral<"">, z.ZodLiteral<".js">, z.ZodLiteral<".ts">]>;
11
+ importPathExtension: z.ZodOptional<z.ZodString>;
12
12
  clientModulePath: z.ZodOptional<z.ZodString>;
13
- }, z.core.$strip>;
14
- readonly version = "1.0.0";
13
+ }, z.core.$strict>;
15
14
  generateCode(input: CodeGenerator.Input<Config>): CodeGenerator.Output;
16
15
  }
17
16
  export declare const GENERATOR: TypescriptCodeGenerator;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EAOd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAYxB,QAAA,MAAM,MAAM;;;iBAOV,CAAC;AAEH,KAAK,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC;AAErC,cAAM,uBAAwB,YAAW,aAAa,CAAC,MAAM,CAAC;IAC5D,QAAQ,CAAC,EAAE,gBAAgB;IAC3B,QAAQ,CAAC,UAAU;;;sBAAU;IAC7B,QAAQ,CAAC,OAAO,WAAW;IAE3B,YAAY,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,MAAM;CAyBvE;AAkvBD,eAAO,MAAM,SAAS,yBAAgC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EAQd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAYxB,QAAA,MAAM,MAAM;;;kBAGV,CAAC;AAEH,KAAK,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC;AAErC,cAAM,uBAAwB,YAAW,aAAa,CAAC,MAAM,CAAC;IAC5D,QAAQ,CAAC,EAAE,yBAAyB;IACpC,QAAQ,CAAC,UAAU;;;uBAAU;IAE7B,YAAY,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,MAAM;CAyBvE;AAy3BD,eAAO,MAAM,SAAS,yBAAgC,CAAC"}
package/dist/index.js CHANGED
@@ -4,19 +4,14 @@ import { maybeEscapeTopLevelUpperCaseName } from "./class_speller.js";
4
4
  import { toFrozenExpression } from "./expression_maker.js";
5
5
  import { createRecordInfo, } from "./record_info.js";
6
6
  import { TypeSpeller } from "./type_speller.js";
7
- const Config = z.object({
8
- importPathExtension: z.union([
9
- z.literal(""),
10
- z.literal(".js"),
11
- z.literal(".ts"),
12
- ]),
7
+ const Config = z.strictObject({
8
+ importPathExtension: z.optional(z.string().regex(/(|\.js)$/)),
13
9
  clientModulePath: z.optional(z.string()),
14
10
  });
15
11
  class TypescriptCodeGenerator {
16
12
  constructor() {
17
- this.id = "typescript";
13
+ this.id = "skir-typescript-gen";
18
14
  this.configType = Config;
19
- this.version = "1.0.0";
20
15
  }
21
16
  generateCode(input) {
22
17
  const { recordMap, config } = input;
@@ -53,11 +48,16 @@ class TsModuleCodeGenerator {
53
48
  // | |/ / | (_) | | | | || (_) || |_ | __/| (_| || || |_
54
49
  // |___/ \\___/ |_| |_| \\___/ \\__| \\___| \\__,_||_| \\__|
55
50
  //
56
-
51
+ // Generated by skir-typescript-gen
52
+ // Home: https://github.com/gepheum/skir-typescript-gen
53
+ //
57
54
  // To install the Skir client library:
58
- // npm i skir
59
- import * as $ from "${this.resolveClientModulePath()}";
60
- \n`);
55
+ // npm i skir-client\n\n`);
56
+ if (this.fileType === ".js") {
57
+ const typesFileName = paths.basename(this.inModule.path.replace(/\.skir$/, ".d.ts"));
58
+ this.push(`/// <reference types="./${typesFileName}" />\n\n`);
59
+ }
60
+ this.push(`import * as $ from "${this.resolveClientModulePath()}";\n`);
61
61
  this.writeImports();
62
62
  for (const recordLocation of this.inModule.records) {
63
63
  this.writeClassesForRecord(recordLocation);
@@ -74,7 +74,7 @@ class TsModuleCodeGenerator {
74
74
  "${this.inModule.path}",
75
75
  [\n`);
76
76
  for (const recordLocation of this.inModule.records) {
77
- this.writeJsonLike(this.getRecordSpec(recordLocation));
77
+ this.pushJsonLike(this.getRecordSpec(recordLocation));
78
78
  this.push(",\n");
79
79
  }
80
80
  this.push(`
@@ -121,8 +121,8 @@ class TsModuleCodeGenerator {
121
121
  for (const entry of Object.entries(this.inModule.pathToImportedNames)) {
122
122
  const [path, importedNames] = entry;
123
123
  const { importPathExtension } = this.config;
124
- let tsPath = paths.relative(thisPath, path).replace(/\.skir/, "") +
125
- importPathExtension;
124
+ let tsPath = paths.relative(thisPath, path).replace(/\.skir$/, "") +
125
+ (importPathExtension ?? ".js");
126
126
  if (!tsPath.startsWith(".")) {
127
127
  tsPath = `./${tsPath}`;
128
128
  }
@@ -167,7 +167,12 @@ class TsModuleCodeGenerator {
167
167
  writeFrozenClassForStruct(struct) {
168
168
  const { fileType } = this;
169
169
  const { className } = struct;
170
- this.push(className.isNested ? `// Exported as '${className.type}'\n` : "export ");
170
+ this.pushDocstring([
171
+ this.getDocTextForDocstring(struct.doc),
172
+ `\nDeeply immutable. If you need mutability, use \`${className.type}.Mutable\`.`,
173
+ className.isNested ? `\n@alias ${className.type}` : "",
174
+ ]);
175
+ this.push(!className.isNested ? "export " : "");
171
176
  if (fileType === ".d.ts") {
172
177
  this.push("declare ");
173
178
  }
@@ -180,18 +185,31 @@ class TsModuleCodeGenerator {
180
185
  declarePropertiesOfFrozenClass(struct) {
181
186
  const { className, fields, indexableFields } = struct;
182
187
  this.push(`
188
+ /**
189
+ * Creates a new instance of \`${className.type}\`.
190
+ *
191
+ * You must specify all the fields unless you use \`create<"partial">({...})>\`,
192
+ * in which case missing fields are set to their default values.
193
+ */
183
194
  static create<_Wholeness extends "whole" | "partial" = "whole">(
184
195
  initializer: ${className.type}.Initializer<_Wholeness>
185
196
  ): ${className.type};\n\n`);
186
197
  this.push("private constructor();\n\n");
187
198
  for (const field of fields) {
199
+ this.pushDocstring(this.getDocTextForDocstring(field.doc));
188
200
  this.push(`readonly ${field.property}: ${field.tsTypes.frozen};\n`);
189
201
  }
190
202
  this.pushEol();
191
203
  if (indexableFields.length) {
192
204
  for (const indexableField of indexableFields) {
193
205
  const { searchMethodName } = indexableField;
194
- const { keyType, frozenValueType, searchMethodParamName } = indexableField.indexable;
206
+ const { keyExpression, keyType, frozenValueType, searchMethodParamName, } = indexableField.indexable;
207
+ this.pushDocstring([
208
+ `Searches for an item of \`${indexableField.property}\` by its key.`,
209
+ `The key of an item \`v\` is \`${keyExpression}\`.`,
210
+ "If multiple items share the same key, the last occurrence is returned.",
211
+ "Returns `undefined` if the key was not found.",
212
+ ]);
195
213
  this.push(`${searchMethodName}(`);
196
214
  this.push(`${searchMethodParamName}: ${keyType}`);
197
215
  this.push(`): ${frozenValueType} | undefined;\n`);
@@ -199,12 +217,19 @@ class TsModuleCodeGenerator {
199
217
  this.pushEol();
200
218
  }
201
219
  this.push(`
220
+ /** Returns this instance (no-op). */
202
221
  toFrozen(): this;
222
+
223
+ /** Returns a mutable shallow copy of this instance. */
203
224
  toMutable(): ${className.type}.Mutable;
204
225
 
226
+ /** Default instance with all fields set to their default values. */
205
227
  static readonly DEFAULT: ${className.type};
228
+
229
+ /** Serializer for \`${className.type}\` instances. */
206
230
  static readonly serializer: $.Serializer<${className.type}>;
207
231
 
232
+ /** Mutable version of this class. */
208
233
  static readonly Mutable: typeof ${className.value}_Mutable;\n`);
209
234
  this.declareNestedClasses(struct.nestedRecords);
210
235
  this.pushEol();
@@ -213,6 +238,7 @@ class TsModuleCodeGenerator {
213
238
  this.push("private readonly FROZEN: undefined;\n");
214
239
  }
215
240
  declareNestedClasses(nestedKeys) {
241
+ this.pushEol();
216
242
  const { typeSpeller } = this;
217
243
  // Export the constructor of every nested class as a property of this class.
218
244
  for (const nestedKey of nestedKeys) {
@@ -224,15 +250,24 @@ class TsModuleCodeGenerator {
224
250
  declareMutableClassForStruct(struct) {
225
251
  const { fileType } = this;
226
252
  const { className, fields, fieldsWithMutableGetter } = struct;
227
- this.push(`// Exported as '${className.type}.Mutable'\n`);
253
+ this.pushDocstring([
254
+ `Mutable version of \`${className.type}\`.\n`,
255
+ `@alias ${className.type}.Mutable`,
256
+ ]);
228
257
  if (fileType === ".d.ts") {
229
258
  this.push("declare ");
230
259
  }
231
260
  this.push(`class ${className.value}_Mutable {\n`);
232
261
  this.push(`
262
+ /**
263
+ * Creates a new mutable instance.
264
+ *
265
+ * Fields not specified in \`initializer\` will be set to their default values.
266
+ */
233
267
  constructor(initializer?: ${className.type}.Initializer<"partial">);\n\n`);
234
268
  // Declare the fields.
235
269
  for (const field of fields) {
270
+ this.pushDocstring(this.getDocTextForDocstring(field.doc));
236
271
  const type = field.tsTypes["maybe-mutable"];
237
272
  this.push(`${field.property}: ${type};\n`);
238
273
  }
@@ -244,9 +279,8 @@ class TsModuleCodeGenerator {
244
279
  }
245
280
  this.pushEol();
246
281
  }
247
- this.push(`
248
- toFrozen(): ${className.type};
249
- toMutable(): this;\n`);
282
+ this.pushDocstring("Returns a deeply-immutable copy of this instance.");
283
+ this.push(`toFrozen(): ${className.type};\n`);
250
284
  this.pushEol();
251
285
  this.push("readonly [$._INITIALIZER]: ");
252
286
  this.push(`${className.type}.Initializer | undefined;\n`);
@@ -255,7 +289,12 @@ class TsModuleCodeGenerator {
255
289
  writeClassForEnum(enumInfo) {
256
290
  const { fileType } = this;
257
291
  const { className } = enumInfo;
258
- this.push(className.isNested ? `// Exported as '${className.type}'\n` : "export ");
292
+ this.pushDocstring([
293
+ this.getDocTextForDocstring(enumInfo.doc),
294
+ "\nDeeply immutable.\n",
295
+ className.isNested ? `@alias ${className.type}` : "",
296
+ ]);
297
+ this.push(!className.isNested ? "export " : "");
259
298
  if (fileType === ".d.ts") {
260
299
  this.push("declare ");
261
300
  }
@@ -269,23 +308,53 @@ class TsModuleCodeGenerator {
269
308
  }
270
309
  }
271
310
  declarePropertiesOfClassForEnum(enumInfo) {
272
- const { className, constantVariants: constantFields, onlyConstants, } = enumInfo;
311
+ const { className, constantVariants, onlyConstants, wrapperVariants } = enumInfo;
273
312
  // Declare the enum constants.
274
- for (const field of constantFields) {
275
- this.push(`static readonly ${field.property}: ${className.type};\n`);
313
+ for (const variant of constantVariants) {
314
+ this.pushDocstring(variant.number === 0
315
+ ? [
316
+ `Constant indicating an unknown \`${className.type}\` (kind: '?').\n`,
317
+ `Default value for fields of type \`${className.type}\`.`,
318
+ ]
319
+ : this.getDocTextForDocstring(variant.doc));
320
+ this.push(`static readonly ${variant.property}: ${className.type};\n`);
276
321
  }
277
322
  this.pushEol();
278
323
  // Declare the `create` function.
324
+ {
325
+ const docLines = [
326
+ `Gets or creates a \`${className.type}\` instance from the given initializer.`,
327
+ ];
328
+ if (!onlyConstants) {
329
+ docLines.push("To create wrapper variants, use `create({kind: ..., value: ...})`.");
330
+ docLines.push("Possible values for `kind` are: " +
331
+ wrapperVariants.map((v) => `'${v.name}'`).join(", ") +
332
+ ".");
333
+ }
334
+ for (const variant of wrapperVariants) {
335
+ if (variant.doc.text.length <= 0) {
336
+ continue;
337
+ }
338
+ const variantDoc = this.getDocTextForDocstring(variant.doc);
339
+ docLines.push(`Doc for '${variant.name}': ${variantDoc}`);
340
+ }
341
+ this.pushDocstring(docLines);
342
+ }
279
343
  this.push(`static create<_Wholeness extends "whole" | "partial" = "whole">(
280
344
  initializer: ${className.type}.Initializer<_Wholeness>
281
345
  ): ${className.type};\n\n`);
282
- // Declare the `kind`, `value` and `union` properties.
283
- this.push(`readonly kind: ${className.type}.Kind;\n`);
284
- if (!onlyConstants) {
285
- this.push(`declare readonly value: ${className.type}.Value;\n`);
286
- this.push(`declare readonly union: ${className.type}.UnionView;\n`);
287
- }
346
+ // Declare the `union`.
288
347
  this.pushEol();
348
+ this.pushDocstring([
349
+ "This instance as the union of all the variant types.\n",
350
+ "Use `union.kind` to determine the variant held by this instance.",
351
+ onlyConstants
352
+ ? ""
353
+ : "If it's a wrapper variant, 'union.value' is the wrapped value.",
354
+ ]);
355
+ this.push(`declare readonly union: ${className.type}.UnionView;\n`);
356
+ this.pushEol();
357
+ this.pushDocstring(`Serializer for \`${className.type}\` instances.`);
289
358
  this.push(`static readonly serializer: $.Serializer<${className.type}>;\n`);
290
359
  this.declareNestedClasses(enumInfo.nestedRecords);
291
360
  }
@@ -314,8 +383,13 @@ class TsModuleCodeGenerator {
314
383
  this.push("}\n}\n\n");
315
384
  }
316
385
  declareMutableGetter(field) {
386
+ this.pushDocstring([
387
+ `If the value of \`${field.property}\` is already mutable, returns it as-is.`,
388
+ `Otherwise, makes a mutable copy, assigns it back to \`${field.property}\` and returns it.`,
389
+ ]);
317
390
  const { mutable } = field.tsTypes;
318
391
  this.push(`get ${field.mutableGetterName}(): ${mutable};\n`);
392
+ this.pushEol();
319
393
  }
320
394
  defineInitFunctionForStruct(record) {
321
395
  const { typeSpeller } = this;
@@ -358,6 +432,7 @@ class TsModuleCodeGenerator {
358
432
  this.push('interface _Initializer<_Wholeness extends "whole" | "partial"> {\n');
359
433
  for (const field of fields) {
360
434
  const type = field.tsTypes.initializer;
435
+ this.pushDocstring(this.getDocTextForDocstring(field.doc));
361
436
  this.push(`readonly ${field.property}: ${type};\n`);
362
437
  }
363
438
  this.push("}\n\n");
@@ -372,28 +447,27 @@ class TsModuleCodeGenerator {
372
447
  }
373
448
  // Declare the Mutable and OrMutable types.
374
449
  this.push(`
450
+ /** Mutable version of ${className.type}. */
375
451
  export type Mutable = ${className.value}_Mutable;
376
452
  export type OrMutable = ${className.name} | Mutable;\n\n`);
377
453
  }
378
454
  declareEnumSpecificTypes(enumInfo) {
379
- const { initializerType, kindType, onlyConstants, unionViewType } = enumInfo;
455
+ const { initializerType, kindType, unionViewType } = enumInfo;
456
+ this.pushDocstring("Identifies a variant.");
380
457
  this.push(`export type Kind = ${kindType};\n\n`);
381
- if (!onlyConstants) {
382
- this.push(`export type Value = ${enumInfo.valueType};\n\n`);
383
- }
384
458
  this.push(`export type Initializer<_Wholeness extends "whole" | "partial" = "whole"> = ${initializerType};\n\n`);
385
- if (!onlyConstants) {
386
- this.push(`export type UnionView = ${unionViewType};\n\n`);
387
- }
459
+ this.pushDocstring(`View of a \`${enumInfo.className.type}\` as a union type.`);
460
+ this.push(`export type UnionView = ${unionViewType};\n\n`);
388
461
  }
389
462
  writeMethod(method) {
390
463
  const { fileType, typeSpeller } = this;
391
- const { number, requestType, responseType } = method;
464
+ const { doc, number, requestType, responseType } = method;
392
465
  const name = method.name.text;
393
466
  const varName = maybeEscapeTopLevelUpperCaseName(name);
394
467
  if (fileType === ".d.ts") {
395
468
  const reqTsType = typeSpeller.getTsType(requestType, "frozen");
396
469
  const respTsType = typeSpeller.getTsType(responseType, "frozen");
470
+ this.pushDocstring(this.getDocTextForDocstring(doc));
397
471
  this.push(`
398
472
  export const ${varName}: $.Method<${reqTsType}, ${respTsType}>;\n\n`);
399
473
  }
@@ -406,7 +480,7 @@ class TsModuleCodeGenerator {
406
480
  number: ${number},
407
481
  requestSerializer: ${reqSerializer},
408
482
  responseSerializer: ${respSerializer},
409
- doc: ${JSON.stringify(method.doc.text)},
483
+ doc: ${JSON.stringify(doc.text)},
410
484
  };\n\n`);
411
485
  }
412
486
  }
@@ -532,7 +606,7 @@ class TsModuleCodeGenerator {
532
606
  }
533
607
  throw TypeError();
534
608
  }
535
- writeJsonLike(jsonLike) {
609
+ pushJsonLike(jsonLike) {
536
610
  if (jsonLike instanceof JavascriptIdentifier) {
537
611
  this.push(jsonLike.identifier);
538
612
  }
@@ -542,7 +616,7 @@ class TsModuleCodeGenerator {
542
616
  else if (Array.isArray(jsonLike)) {
543
617
  this.push("[\n");
544
618
  for (const item of jsonLike) {
545
- this.writeJsonLike(item);
619
+ this.pushJsonLike(item);
546
620
  this.push(",\n");
547
621
  }
548
622
  this.push("]");
@@ -554,7 +628,7 @@ class TsModuleCodeGenerator {
554
628
  continue;
555
629
  }
556
630
  this.push(`${name}: `);
557
- this.writeJsonLike(value);
631
+ this.pushJsonLike(value);
558
632
  this.push(",\n");
559
633
  }
560
634
  this.push("}");
@@ -565,6 +639,7 @@ class TsModuleCodeGenerator {
565
639
  const name = constant.name.text;
566
640
  if (fileType === ".d.ts") {
567
641
  const type = typeSpeller.getTsType(constant.type, "frozen");
642
+ this.pushDocstring(this.getDocTextForDocstring(constant.doc));
568
643
  this.push(`export const ${name}: ${type};\n\n`);
569
644
  }
570
645
  else {
@@ -575,6 +650,41 @@ class TsModuleCodeGenerator {
575
650
  this.push(");\n\n");
576
651
  }
577
652
  }
653
+ getDocTextForDocstring(doc) {
654
+ return doc.pieces
655
+ .map((p) => {
656
+ switch (p.kind) {
657
+ case "text":
658
+ return p.text;
659
+ case "reference":
660
+ return `\`${p.referenceRange.text.slice(1, -1)}\``;
661
+ }
662
+ })
663
+ .join("");
664
+ }
665
+ pushDocstring(textOrLines) {
666
+ const text = (typeof textOrLines === "string" ? textOrLines : textOrLines.join("\n"))
667
+ .replace(/^\s*\n+/g, "")
668
+ .replace(/\n+\s*$/g, "")
669
+ .replace(/\n{3,}/g, "\n\n")
670
+ .replace("*/", "* /");
671
+ if (text.length <= 0) {
672
+ return;
673
+ }
674
+ const lines = text.split("\n");
675
+ const escape = (line) => line.replace(/\*\//g, "* /");
676
+ if (lines.length === 1) {
677
+ const line = escape(lines[0]);
678
+ this.push(`/** ${line} */\n`);
679
+ }
680
+ else {
681
+ this.push("/**\n");
682
+ for (const line of lines.map(escape)) {
683
+ this.push(` * ${line}\n`);
684
+ }
685
+ this.push(" */\n");
686
+ }
687
+ }
578
688
  push(code) {
579
689
  this.code += code.trimStart();
580
690
  }
@@ -629,9 +739,15 @@ class TsModuleCodeGenerator {
629
739
  break;
630
740
  }
631
741
  }
632
- const indent = indentUnit.repeat(contextStack.length);
633
- result += `${indent}${line.trimEnd()}\n`;
634
- if (line.startsWith("//")) {
742
+ let indent = indentUnit.repeat(contextStack.length);
743
+ if (line.startsWith("*")) {
744
+ // Docstring: make sure the stars are aligned.
745
+ indent += " ";
746
+ }
747
+ result += `${indent}${line}\n`;
748
+ if (line.startsWith("//") ||
749
+ line.startsWith("/*") ||
750
+ line.startsWith("*")) {
635
751
  continue;
636
752
  }
637
753
  const lastChar = line.slice(-1);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -34,8 +34,6 @@ export interface EnumInfo {
34
34
  readonly constantVariants: readonly EnumConstantVariant[];
35
35
  readonly wrapperVariants: readonly EnumWrapperVariant[];
36
36
  readonly kindType: TsType;
37
- /** Union of `undefined` and the frozen type of all the wrapper variants. */
38
- readonly valueType: TsType;
39
37
  readonly initializerType: TsType;
40
38
  readonly valueOnlyInitializerType: TsType;
41
39
  readonly unionViewType: TsType;
@@ -1 +1 @@
1
- {"version":3,"file":"record_info.d.ts","sourceRoot":"","sources":["../src/record_info.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"record_info.d.ts","sourceRoot":"","sources":["../src/record_info.ts"],"names":[],"mappings":"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"}
@@ -109,7 +109,6 @@ class RecordInfoCreator {
109
109
  const constantVariants = [];
110
110
  const wrapperVariants = [];
111
111
  const typesInKindTypeUnion = [];
112
- const typesInValueTypeUnion = [TsType.UNDEFINED];
113
112
  const typesInInitializerUnion = [];
114
113
  const typesInValueOnlyInitializerUnion = [];
115
114
  const typesInUnionView = [];
@@ -146,7 +145,6 @@ class RecordInfoCreator {
146
145
  const nameLiteral = TsType.literal(name);
147
146
  const { frozen, initializer } = enumVariant.tsTypes;
148
147
  wrapperVariants.push(enumVariant);
149
- typesInValueTypeUnion.push(frozen);
150
148
  typesInKindTypeUnion.push(nameLiteral);
151
149
  typesInInitializerUnion.push(TsType.inlineInterface({
152
150
  kind: nameLiteral,
@@ -172,7 +170,6 @@ class RecordInfoCreator {
172
170
  constantVariants: constantVariants,
173
171
  wrapperVariants: wrapperVariants,
174
172
  kindType: TsType.union(typesInKindTypeUnion),
175
- valueType: TsType.union(typesInValueTypeUnion),
176
173
  initializerType: TsType.union(typesInInitializerUnion),
177
174
  valueOnlyInitializerType: TsType.union(typesInValueOnlyInitializerUnion),
178
175
  unionViewType: TsType.union(typesInUnionView),
@@ -1 +1 @@
1
- {"version":3,"file":"record_info.js","sourceRoot":"","sources":["../src/record_info.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"record_info.js","sourceRoot":"","sources":["../src/record_info.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "skir-typescript-gen",
3
- "version": "0.0.1",
3
+ "version": "0.0.4",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "repository": {
@@ -24,7 +24,7 @@
24
24
  "build": "tsc",
25
25
  "build:e2e-test": "tsc -b e2e-test",
26
26
  "format-skir": "cd e2e-test && skir format && cd ..",
27
- "format-skir:check": "cd e2e-test && skir format check && cd ..",
27
+ "format-skir:check": "cd e2e-test && skir format --ci && cd ..",
28
28
  "format": "prettier --write \"**/*.ts\" && npm run format-skir",
29
29
  "format:check": "prettier --check \"**/*.ts\" && npm run format-skir:check",
30
30
  "test": "npm run build && cd e2e-test && skir gen && npm run build:e2e-test && cd .. && mocha",
@@ -32,21 +32,25 @@
32
32
  "lint:fix": "eslint src/**/*.ts --fix"
33
33
  },
34
34
  "dependencies": {
35
- "skir-internal": "^0.0.5"
35
+ "skir-internal": "^0.0.8",
36
+ "zod": "^4.2.1"
36
37
  },
37
38
  "devDependencies": {
38
- "@types/mocha": "^10.0.6",
39
- "@types/node": "^20.11.5",
40
- "@typescript-eslint/eslint-plugin": "^6.13.0",
41
- "@typescript-eslint/parser": "^6.13.0",
39
+ "@eslint/js": "^9.39.2",
40
+ "@types/mocha": "^10.0.1",
41
+ "@types/node": "^20.6.0",
42
+ "@typescript-eslint/eslint-plugin": "^8.50.1",
43
+ "@typescript-eslint/parser": "^8.50.1",
42
44
  "buckwheat": "^1.1.2",
43
- "eslint": "^8.54.0",
44
- "mocha": "^10.2.0",
45
+ "eslint": "^9.39.2",
46
+ "mocha": "^11.7.5",
45
47
  "prettier": "^3.2.4",
46
48
  "prettier-plugin-organize-imports": "^4.2.0",
47
- "skir": "^0.0.3",
48
- "skir-client": "^0.0.5",
49
+ "skir": "^0.0.7",
50
+ "skir-client": "^0.0.10",
49
51
  "ts-node": "^10.9.2",
50
- "typescript": "^5.3.3"
52
+ "tsx": "^4.21.0",
53
+ "typescript": "^5.2.2",
54
+ "typescript-eslint": "^8.50.1"
51
55
  }
52
56
  }
package/src/index.ts CHANGED
@@ -2,6 +2,7 @@ import * as paths from "path";
2
2
  import type {
3
3
  CodeGenerator,
4
4
  Constant,
5
+ Doc,
5
6
  Method,
6
7
  Module,
7
8
  RecordKey,
@@ -20,21 +21,16 @@ import {
20
21
  } from "./record_info.js";
21
22
  import { TypeSpeller } from "./type_speller.js";
22
23
 
23
- const Config = z.object({
24
- importPathExtension: z.union([
25
- z.literal(""),
26
- z.literal(".js"),
27
- z.literal(".ts"),
28
- ]),
24
+ const Config = z.strictObject({
25
+ importPathExtension: z.optional(z.string().regex(/(|\.js)$/)),
29
26
  clientModulePath: z.optional(z.string()),
30
27
  });
31
28
 
32
29
  type Config = z.infer<typeof Config>;
33
30
 
34
31
  class TypescriptCodeGenerator implements CodeGenerator<Config> {
35
- readonly id = "typescript";
32
+ readonly id = "skir-typescript-gen";
36
33
  readonly configType = Config;
37
- readonly version = "1.0.0";
38
34
 
39
35
  generateCode(input: CodeGenerator.Input<Config>): CodeGenerator.Output {
40
36
  const { recordMap, config } = input;
@@ -84,12 +80,20 @@ class TsModuleCodeGenerator {
84
80
  // | |/ / | (_) | | | | || (_) || |_ | __/| (_| || || |_
85
81
  // |___/ \\___/ |_| |_| \\___/ \\__| \\___| \\__,_||_| \\__|
86
82
  //
87
-
83
+ // Generated by skir-typescript-gen
84
+ // Home: https://github.com/gepheum/skir-typescript-gen
85
+ //
88
86
  // To install the Skir client library:
89
- // npm i skir
90
- import * as $ from "${this.resolveClientModulePath()}";
91
- \n`);
87
+ // npm i skir-client\n\n`);
88
+
89
+ if (this.fileType === ".js") {
90
+ const typesFileName = paths.basename(
91
+ this.inModule.path.replace(/\.skir$/, ".d.ts"),
92
+ );
93
+ this.push(`/// <reference types="./${typesFileName}" />\n\n`);
94
+ }
92
95
 
96
+ this.push(`import * as $ from "${this.resolveClientModulePath()}";\n`);
93
97
  this.writeImports();
94
98
 
95
99
  for (const recordLocation of this.inModule.records) {
@@ -108,7 +112,7 @@ class TsModuleCodeGenerator {
108
112
  "${this.inModule.path}",
109
113
  [\n`);
110
114
  for (const recordLocation of this.inModule.records) {
111
- this.writeJsonLike(this.getRecordSpec(recordLocation));
115
+ this.pushJsonLike(this.getRecordSpec(recordLocation));
112
116
  this.push(",\n");
113
117
  }
114
118
  this.push(`
@@ -161,8 +165,8 @@ class TsModuleCodeGenerator {
161
165
  const [path, importedNames] = entry;
162
166
  const { importPathExtension } = this.config;
163
167
  let tsPath =
164
- paths.relative(thisPath, path).replace(/\.skir/, "") +
165
- importPathExtension;
168
+ paths.relative(thisPath, path).replace(/\.skir$/, "") +
169
+ (importPathExtension ?? ".js");
166
170
  if (!tsPath.startsWith(".")) {
167
171
  tsPath = `./${tsPath}`;
168
172
  }
@@ -209,9 +213,12 @@ class TsModuleCodeGenerator {
209
213
  private writeFrozenClassForStruct(struct: StructInfo): void {
210
214
  const { fileType } = this;
211
215
  const { className } = struct;
212
- this.push(
213
- className.isNested ? `// Exported as '${className.type}'\n` : "export ",
214
- );
216
+ this.pushDocstring([
217
+ this.getDocTextForDocstring(struct.doc),
218
+ `\nDeeply immutable. If you need mutability, use \`${className.type}.Mutable\`.`,
219
+ className.isNested ? `\n@alias ${className.type}` : "",
220
+ ]);
221
+ this.push(!className.isNested ? "export " : "");
215
222
  if (fileType === ".d.ts") {
216
223
  this.push("declare ");
217
224
  }
@@ -227,19 +234,36 @@ class TsModuleCodeGenerator {
227
234
  private declarePropertiesOfFrozenClass(struct: StructInfo): void {
228
235
  const { className, fields, indexableFields } = struct;
229
236
  this.push(`
237
+ /**
238
+ * Creates a new instance of \`${className.type}\`.
239
+ *
240
+ * You must specify all the fields unless you use \`create<"partial">({...})>\`,
241
+ * in which case missing fields are set to their default values.
242
+ */
230
243
  static create<_Wholeness extends "whole" | "partial" = "whole">(
231
244
  initializer: ${className.type}.Initializer<_Wholeness>
232
245
  ): ${className.type};\n\n`);
233
246
  this.push("private constructor();\n\n");
234
247
  for (const field of fields) {
248
+ this.pushDocstring(this.getDocTextForDocstring(field.doc));
235
249
  this.push(`readonly ${field.property}: ${field.tsTypes.frozen};\n`);
236
250
  }
237
251
  this.pushEol();
238
252
  if (indexableFields.length) {
239
253
  for (const indexableField of indexableFields) {
240
254
  const { searchMethodName } = indexableField;
241
- const { keyType, frozenValueType, searchMethodParamName } =
242
- indexableField.indexable!;
255
+ const {
256
+ keyExpression,
257
+ keyType,
258
+ frozenValueType,
259
+ searchMethodParamName,
260
+ } = indexableField.indexable!;
261
+ this.pushDocstring([
262
+ `Searches for an item of \`${indexableField.property}\` by its key.`,
263
+ `The key of an item \`v\` is \`${keyExpression}\`.`,
264
+ "If multiple items share the same key, the last occurrence is returned.",
265
+ "Returns `undefined` if the key was not found.",
266
+ ]);
243
267
  this.push(`${searchMethodName}(`);
244
268
  this.push(`${searchMethodParamName}: ${keyType}`);
245
269
  this.push(`): ${frozenValueType} | undefined;\n`);
@@ -247,12 +271,19 @@ class TsModuleCodeGenerator {
247
271
  this.pushEol();
248
272
  }
249
273
  this.push(`
274
+ /** Returns this instance (no-op). */
250
275
  toFrozen(): this;
276
+
277
+ /** Returns a mutable shallow copy of this instance. */
251
278
  toMutable(): ${className.type}.Mutable;
252
279
 
280
+ /** Default instance with all fields set to their default values. */
253
281
  static readonly DEFAULT: ${className.type};
282
+
283
+ /** Serializer for \`${className.type}\` instances. */
254
284
  static readonly serializer: $.Serializer<${className.type}>;
255
285
 
286
+ /** Mutable version of this class. */
256
287
  static readonly Mutable: typeof ${className.value}_Mutable;\n`);
257
288
  this.declareNestedClasses(struct.nestedRecords);
258
289
  this.pushEol();
@@ -262,6 +293,7 @@ class TsModuleCodeGenerator {
262
293
  }
263
294
 
264
295
  private declareNestedClasses(nestedKeys: readonly RecordKey[]): void {
296
+ this.pushEol();
265
297
  const { typeSpeller } = this;
266
298
  // Export the constructor of every nested class as a property of this class.
267
299
  for (const nestedKey of nestedKeys) {
@@ -274,16 +306,25 @@ class TsModuleCodeGenerator {
274
306
  private declareMutableClassForStruct(struct: StructInfo): void {
275
307
  const { fileType } = this;
276
308
  const { className, fields, fieldsWithMutableGetter } = struct;
277
- this.push(`// Exported as '${className.type}.Mutable'\n`);
309
+ this.pushDocstring([
310
+ `Mutable version of \`${className.type}\`.\n`,
311
+ `@alias ${className.type}.Mutable`,
312
+ ]);
278
313
  if (fileType === ".d.ts") {
279
314
  this.push("declare ");
280
315
  }
281
316
  this.push(`class ${className.value}_Mutable {\n`);
282
317
  this.push(`
318
+ /**
319
+ * Creates a new mutable instance.
320
+ *
321
+ * Fields not specified in \`initializer\` will be set to their default values.
322
+ */
283
323
  constructor(initializer?: ${className.type}.Initializer<"partial">);\n\n`);
284
324
 
285
325
  // Declare the fields.
286
326
  for (const field of fields) {
327
+ this.pushDocstring(this.getDocTextForDocstring(field.doc));
287
328
  const type = field.tsTypes["maybe-mutable"];
288
329
  this.push(`${field.property}: ${type};\n`);
289
330
  }
@@ -297,9 +338,8 @@ class TsModuleCodeGenerator {
297
338
  this.pushEol();
298
339
  }
299
340
 
300
- this.push(`
301
- toFrozen(): ${className.type};
302
- toMutable(): this;\n`);
341
+ this.pushDocstring("Returns a deeply-immutable copy of this instance.");
342
+ this.push(`toFrozen(): ${className.type};\n`);
303
343
  this.pushEol();
304
344
  this.push("readonly [$._INITIALIZER]: ");
305
345
  this.push(`${className.type}.Initializer | undefined;\n`);
@@ -309,9 +349,12 @@ class TsModuleCodeGenerator {
309
349
  private writeClassForEnum(enumInfo: EnumInfo): void {
310
350
  const { fileType } = this;
311
351
  const { className } = enumInfo;
312
- this.push(
313
- className.isNested ? `// Exported as '${className.type}'\n` : "export ",
314
- );
352
+ this.pushDocstring([
353
+ this.getDocTextForDocstring(enumInfo.doc),
354
+ "\nDeeply immutable.\n",
355
+ className.isNested ? `@alias ${className.type}` : "",
356
+ ]);
357
+ this.push(!className.isNested ? "export " : "");
315
358
  if (fileType === ".d.ts") {
316
359
  this.push("declare ");
317
360
  }
@@ -327,33 +370,66 @@ class TsModuleCodeGenerator {
327
370
  }
328
371
 
329
372
  private declarePropertiesOfClassForEnum(enumInfo: EnumInfo): void {
330
- const {
331
- className,
332
- constantVariants: constantFields,
333
- onlyConstants,
334
- } = enumInfo;
373
+ const { className, constantVariants, onlyConstants, wrapperVariants } =
374
+ enumInfo;
335
375
 
336
376
  // Declare the enum constants.
337
- for (const field of constantFields) {
338
- this.push(`static readonly ${field.property}: ${className.type};\n`);
377
+ for (const variant of constantVariants) {
378
+ this.pushDocstring(
379
+ variant.number === 0
380
+ ? [
381
+ `Constant indicating an unknown \`${className.type}\` (kind: '?').\n`,
382
+ `Default value for fields of type \`${className.type}\`.`,
383
+ ]
384
+ : this.getDocTextForDocstring(variant.doc),
385
+ );
386
+ this.push(`static readonly ${variant.property}: ${className.type};\n`);
339
387
  }
340
388
  this.pushEol();
341
389
 
342
390
  // Declare the `create` function.
391
+ {
392
+ const docLines = [
393
+ `Gets or creates a \`${className.type}\` instance from the given initializer.`,
394
+ ];
395
+ if (!onlyConstants) {
396
+ docLines.push(
397
+ "To create wrapper variants, use `create({kind: ..., value: ...})`.",
398
+ );
399
+ docLines.push(
400
+ "Possible values for `kind` are: " +
401
+ wrapperVariants.map((v) => `'${v.name}'`).join(", ") +
402
+ ".",
403
+ );
404
+ }
405
+ for (const variant of wrapperVariants) {
406
+ if (variant.doc.text.length <= 0) {
407
+ continue;
408
+ }
409
+ const variantDoc = this.getDocTextForDocstring(variant.doc);
410
+ docLines.push(`Doc for '${variant.name}': ${variantDoc}`);
411
+ }
412
+ this.pushDocstring(docLines);
413
+ }
343
414
  this.push(
344
415
  `static create<_Wholeness extends "whole" | "partial" = "whole">(
345
416
  initializer: ${className.type}.Initializer<_Wholeness>
346
417
  ): ${className.type};\n\n`,
347
418
  );
348
419
 
349
- // Declare the `kind`, `value` and `union` properties.
350
- this.push(`readonly kind: ${className.type}.Kind;\n`);
351
- if (!onlyConstants) {
352
- this.push(`declare readonly value: ${className.type}.Value;\n`);
353
- this.push(`declare readonly union: ${className.type}.UnionView;\n`);
354
- }
420
+ // Declare the `union`.
421
+ this.pushEol();
422
+ this.pushDocstring([
423
+ "This instance as the union of all the variant types.\n",
424
+ "Use `union.kind` to determine the variant held by this instance.",
425
+ onlyConstants
426
+ ? ""
427
+ : "If it's a wrapper variant, 'union.value' is the wrapped value.",
428
+ ]);
429
+ this.push(`declare readonly union: ${className.type}.UnionView;\n`);
355
430
  this.pushEol();
356
431
 
432
+ this.pushDocstring(`Serializer for \`${className.type}\` instances.`);
357
433
  this.push(`static readonly serializer: $.Serializer<${className.type}>;\n`);
358
434
  this.declareNestedClasses(enumInfo.nestedRecords);
359
435
  }
@@ -388,8 +464,13 @@ class TsModuleCodeGenerator {
388
464
  }
389
465
 
390
466
  private declareMutableGetter(field: StructField): void {
467
+ this.pushDocstring([
468
+ `If the value of \`${field.property}\` is already mutable, returns it as-is.`,
469
+ `Otherwise, makes a mutable copy, assigns it back to \`${field.property}\` and returns it.`,
470
+ ]);
391
471
  const { mutable } = field.tsTypes;
392
472
  this.push(`get ${field.mutableGetterName}(): ${mutable};\n`);
473
+ this.pushEol();
393
474
  }
394
475
 
395
476
  private defineInitFunctionForStruct(record: StructInfo): void {
@@ -443,6 +524,7 @@ class TsModuleCodeGenerator {
443
524
  );
444
525
  for (const field of fields) {
445
526
  const type = field.tsTypes.initializer;
527
+ this.pushDocstring(this.getDocTextForDocstring(field.doc));
446
528
  this.push(`readonly ${field.property}: ${type};\n`);
447
529
  }
448
530
  this.push("}\n\n");
@@ -461,33 +543,33 @@ class TsModuleCodeGenerator {
461
543
 
462
544
  // Declare the Mutable and OrMutable types.
463
545
  this.push(`
546
+ /** Mutable version of ${className.type}. */
464
547
  export type Mutable = ${className.value}_Mutable;
465
548
  export type OrMutable = ${className.name} | Mutable;\n\n`);
466
549
  }
467
550
 
468
551
  private declareEnumSpecificTypes(enumInfo: EnumInfo): void {
469
- const { initializerType, kindType, onlyConstants, unionViewType } =
470
- enumInfo;
552
+ const { initializerType, kindType, unionViewType } = enumInfo;
553
+ this.pushDocstring("Identifies a variant.");
471
554
  this.push(`export type Kind = ${kindType};\n\n`);
472
- if (!onlyConstants) {
473
- this.push(`export type Value = ${enumInfo.valueType};\n\n`);
474
- }
475
555
  this.push(
476
556
  `export type Initializer<_Wholeness extends "whole" | "partial" = "whole"> = ${initializerType};\n\n`,
477
557
  );
478
- if (!onlyConstants) {
479
- this.push(`export type UnionView = ${unionViewType};\n\n`);
480
- }
558
+ this.pushDocstring(
559
+ `View of a \`${enumInfo.className.type}\` as a union type.`,
560
+ );
561
+ this.push(`export type UnionView = ${unionViewType};\n\n`);
481
562
  }
482
563
 
483
564
  private writeMethod(method: Method): void {
484
565
  const { fileType, typeSpeller } = this;
485
- const { number, requestType, responseType } = method;
566
+ const { doc, number, requestType, responseType } = method;
486
567
  const name = method.name.text;
487
568
  const varName = maybeEscapeTopLevelUpperCaseName(name);
488
569
  if (fileType === ".d.ts") {
489
570
  const reqTsType = typeSpeller.getTsType(requestType!, "frozen");
490
571
  const respTsType = typeSpeller.getTsType(responseType!, "frozen");
572
+ this.pushDocstring(this.getDocTextForDocstring(doc));
491
573
  this.push(`
492
574
  export const ${varName}: $.Method<${reqTsType}, ${respTsType}>;\n\n`);
493
575
  } else {
@@ -499,7 +581,7 @@ class TsModuleCodeGenerator {
499
581
  number: ${number},
500
582
  requestSerializer: ${reqSerializer},
501
583
  responseSerializer: ${respSerializer},
502
- doc: ${JSON.stringify(method.doc.text)},
584
+ doc: ${JSON.stringify(doc.text)},
503
585
  };\n\n`);
504
586
  }
505
587
  }
@@ -649,7 +731,7 @@ class TsModuleCodeGenerator {
649
731
  throw TypeError();
650
732
  }
651
733
 
652
- private writeJsonLike(jsonLike: JsonLike): void {
734
+ private pushJsonLike(jsonLike: JsonLike): void {
653
735
  if (jsonLike instanceof JavascriptIdentifier) {
654
736
  this.push(jsonLike.identifier);
655
737
  } else if (typeof jsonLike === "string" || typeof jsonLike === "number") {
@@ -657,7 +739,7 @@ class TsModuleCodeGenerator {
657
739
  } else if (Array.isArray(jsonLike)) {
658
740
  this.push("[\n");
659
741
  for (const item of jsonLike) {
660
- this.writeJsonLike(item);
742
+ this.pushJsonLike(item);
661
743
  this.push(",\n");
662
744
  }
663
745
  this.push("]");
@@ -668,7 +750,7 @@ class TsModuleCodeGenerator {
668
750
  continue;
669
751
  }
670
752
  this.push(`${name}: `);
671
- this.writeJsonLike(value);
753
+ this.pushJsonLike(value);
672
754
  this.push(",\n");
673
755
  }
674
756
  this.push("}");
@@ -680,6 +762,7 @@ class TsModuleCodeGenerator {
680
762
  const name = constant.name.text;
681
763
  if (fileType === ".d.ts") {
682
764
  const type = typeSpeller.getTsType(constant.type!, "frozen");
765
+ this.pushDocstring(this.getDocTextForDocstring(constant.doc));
683
766
  this.push(`export const ${name}: ${type};\n\n`);
684
767
  } else {
685
768
  this.push(`export const ${name} = /*@__PURE__*/ `);
@@ -692,6 +775,46 @@ class TsModuleCodeGenerator {
692
775
 
693
776
  private static readonly SEPARATOR = `// ${"-".repeat(80 - "// ".length)}`;
694
777
 
778
+ private getDocTextForDocstring(doc: Doc): string {
779
+ return doc.pieces
780
+ .map((p) => {
781
+ switch (p.kind) {
782
+ case "text":
783
+ return p.text;
784
+ case "reference":
785
+ return `\`${p.referenceRange.text.slice(1, -1)}\``;
786
+ }
787
+ })
788
+ .join("");
789
+ }
790
+
791
+ private pushDocstring(textOrLines: string | readonly string[]): void {
792
+ const text = (
793
+ typeof textOrLines === "string" ? textOrLines : textOrLines.join("\n")
794
+ )
795
+ .replace(/^\s*\n+/g, "")
796
+ .replace(/\n+\s*$/g, "")
797
+ .replace(/\n{3,}/g, "\n\n")
798
+ .replace("*/", "* /");
799
+
800
+ if (text.length <= 0) {
801
+ return;
802
+ }
803
+
804
+ const lines = text.split("\n");
805
+ const escape = (line: string): string => line.replace(/\*\//g, "* /");
806
+ if (lines.length === 1) {
807
+ const line = escape(lines[0]!);
808
+ this.push(`/** ${line} */\n`);
809
+ } else {
810
+ this.push("/**\n");
811
+ for (const line of lines.map(escape)) {
812
+ this.push(` * ${line}\n`);
813
+ }
814
+ this.push(" */\n");
815
+ }
816
+ }
817
+
695
818
  private push(code: string): void {
696
819
  this.code += code.trimStart();
697
820
  }
@@ -749,9 +872,17 @@ class TsModuleCodeGenerator {
749
872
  break;
750
873
  }
751
874
  }
752
- const indent = indentUnit.repeat(contextStack.length);
753
- result += `${indent}${line.trimEnd()}\n`;
754
- if (line.startsWith("//")) {
875
+ let indent = indentUnit.repeat(contextStack.length);
876
+ if (line.startsWith("*")) {
877
+ // Docstring: make sure the stars are aligned.
878
+ indent += " ";
879
+ }
880
+ result += `${indent}${line}\n`;
881
+ if (
882
+ line.startsWith("//") ||
883
+ line.startsWith("/*") ||
884
+ line.startsWith("*")
885
+ ) {
755
886
  continue;
756
887
  }
757
888
  const lastChar = line.slice(-1);
@@ -50,8 +50,6 @@ export interface EnumInfo {
50
50
  readonly constantVariants: readonly EnumConstantVariant[];
51
51
  readonly wrapperVariants: readonly EnumWrapperVariant[];
52
52
  readonly kindType: TsType;
53
- /** Union of `undefined` and the frozen type of all the wrapper variants. */
54
- readonly valueType: TsType;
55
53
  readonly initializerType: TsType;
56
54
  readonly valueOnlyInitializerType: TsType;
57
55
  readonly unionViewType: TsType;
@@ -270,7 +268,6 @@ class RecordInfoCreator {
270
268
  const constantVariants: EnumConstantVariant[] = [];
271
269
  const wrapperVariants: EnumWrapperVariant[] = [];
272
270
  const typesInKindTypeUnion: TsType[] = [];
273
- const typesInValueTypeUnion: TsType[] = [TsType.UNDEFINED];
274
271
  const typesInInitializerUnion: TsType[] = [];
275
272
  const typesInValueOnlyInitializerUnion: TsType[] = [];
276
273
  const typesInUnionView: TsType[] = [];
@@ -311,7 +308,6 @@ class RecordInfoCreator {
311
308
  const nameLiteral = TsType.literal(name);
312
309
  const { frozen, initializer } = enumVariant.tsTypes;
313
310
  wrapperVariants.push(enumVariant);
314
- typesInValueTypeUnion.push(frozen);
315
311
  typesInKindTypeUnion.push(nameLiteral);
316
312
  typesInInitializerUnion.push(
317
313
  TsType.inlineInterface({
@@ -344,7 +340,6 @@ class RecordInfoCreator {
344
340
  constantVariants: constantVariants,
345
341
  wrapperVariants: wrapperVariants,
346
342
  kindType: TsType.union(typesInKindTypeUnion),
347
- valueType: TsType.union(typesInValueTypeUnion),
348
343
  initializerType: TsType.union(typesInInitializerUnion),
349
344
  valueOnlyInitializerType: TsType.union(typesInValueOnlyInitializerUnion),
350
345
  unionViewType: TsType.union(typesInUnionView),