@ir-kit/k6-gen 0.4.0 → 0.4.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/emit/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAiC1C,MAAM,WAAW,iBAAiB;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CACrC;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,EAAE,CAAC,WAAW,GAAG,SAAS,EACjC,IAAI,GAAE,iBAAsB,GAC3B,MAAM,CAiBR"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/emit/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAkC1C,MAAM,WAAW,iBAAiB;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CACrC;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,EAAE,CAAC,WAAW,GAAG,SAAS,EACjC,IAAI,GAAE,iBAAsB,GAC3B,MAAM,CAiBR"}
@@ -1,6 +1,6 @@
1
1
  import { fromHeyApi } from "@ir-kit/openapi";
2
2
  import ts from "typescript";
3
- import { schemaToTypeNode, toIdent, walkOperations, } from "../ir/index.js";
3
+ import { propertyKey, schemaToTypeNode, toIdent, walkOperations, } from "../ir/index.js";
4
4
  import { GENERATED_HEADER, printStatements } from "../print.js";
5
5
  import { clientPreambleStatements } from "./client-preamble.js";
6
6
  import { bodyArg, urlExpression } from "./operation-expressions.js";
@@ -97,7 +97,7 @@ function buildParamDeclarations(op) {
97
97
  }
98
98
  if (op.queryParams.length) {
99
99
  const allOptional = op.queryParams.every((p) => !p.required);
100
- const members = op.queryParams.map((p) => f.createPropertySignature(undefined, p.name, p.required ? undefined : f.createToken(ts.SyntaxKind.QuestionToken), typed(p.schema).toAst()));
100
+ const members = op.queryParams.map((p) => f.createPropertySignature(undefined, propertyKey(p.name), p.required ? undefined : f.createToken(ts.SyntaxKind.QuestionToken), typed(p.schema).toAst()));
101
101
  out.push(f.createParameterDeclaration(undefined, undefined, "query", allOptional ? f.createToken(ts.SyntaxKind.QuestionToken) : undefined, f.createTypeLiteralNode(members)));
102
102
  }
103
103
  if (op.body) {
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/emit/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/emit/client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"loadtest-stubs.d.ts","sourceRoot":"","sources":["../../src/emit/loadtest-stubs.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAiC,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAQ/E,MAAM,WAAW,oBAAoB;IACnC,+EAA+E;IAC/E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iFAAiF;IACjF,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wFAAwF;AACxF,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,EAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC5C,IAAI,GAAE,oBAAyB,GAC9B,SAAS,EAAE,CAgBb"}
1
+ {"version":3,"file":"loadtest-stubs.d.ts","sourceRoot":"","sources":["../../src/emit/loadtest-stubs.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAIL,cAAc,EACf,MAAM,gBAAgB,CAAC;AAQxB,MAAM,WAAW,oBAAoB;IACnC,+EAA+E;IAC/E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iFAAiF;IACjF,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wFAAwF;AACxF,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,EAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC5C,IAAI,GAAE,oBAAyB,GAC9B,SAAS,EAAE,CAgBb"}
@@ -1,6 +1,7 @@
1
1
  import { safeIdent } from "@ir-kit/codegen-core";
2
+ import { extractEnumValues, fromHeyApi } from "@ir-kit/openapi";
2
3
  import ts from "typescript";
3
- import { toIdent, walkOperations } from "../ir/index.js";
4
+ import { propertyKey, toIdent, walkOperations, } from "../ir/index.js";
4
5
  import { renderLoadtestStub, } from "./loadtest-stub-template.js";
5
6
  const f = ts.factory;
6
7
  /** One loadtest skeleton per operation: import api+data, call op in a flow().step(). */
@@ -30,20 +31,35 @@ function stubInput(op, clientImport, dataImport, knownSchemas) {
30
31
  function callArgExpressions(op, knownSchemas) {
31
32
  const args = [];
32
33
  for (const p of op.pathParams)
33
- args.push(pathParamPlaceholder(p));
34
- if (op.queryParams.length)
35
- args.push(f.createObjectLiteralExpression([], false));
34
+ args.push(placeholder(p.schema));
35
+ if (op.queryParams.length) {
36
+ const required = op.queryParams.filter((p) => p.required);
37
+ args.push(f.createObjectLiteralExpression(required.map((p) => f.createPropertyAssignment(propertyKey(p.name), placeholder(p.schema))), false));
38
+ }
36
39
  if (op.body)
37
40
  args.push(bodyExpression(op, knownSchemas));
38
41
  return args;
39
42
  }
40
- function pathParamPlaceholder(p) {
41
- switch (p.schema?.type) {
43
+ function placeholder(schema) {
44
+ const [first] = extractEnumValues(fromHeyApi(schema)) ?? [];
45
+ if (typeof first === "string")
46
+ return f.createStringLiteral(first);
47
+ if (typeof first === "boolean")
48
+ return first ? f.createTrue() : f.createFalse();
49
+ if (typeof first === "number") {
50
+ const literal = f.createNumericLiteral(Math.abs(first));
51
+ return first < 0
52
+ ? f.createPrefixUnaryExpression(ts.SyntaxKind.MinusToken, literal)
53
+ : literal;
54
+ }
55
+ switch (schema.type) {
42
56
  case "integer":
43
57
  case "number":
44
58
  return f.createNumericLiteral("1");
45
59
  case "boolean":
46
60
  return f.createFalse();
61
+ case "array":
62
+ return f.createArrayLiteralExpression([]);
47
63
  default:
48
64
  return f.createStringLiteral("");
49
65
  }
@@ -1 +1 @@
1
- {"version":3,"file":"loadtest-stubs.js","sourceRoot":"","sources":["../../src/emit/loadtest-stubs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadtest-stubs.js","sourceRoot":"","sources":["../../src/emit/loadtest-stubs.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
+ import ts from "typescript";
1
2
  /** Legal JS identifier preserving original casing — for fn/param slots. */
2
3
  export declare function toIdent(input: string): string;
3
4
  /** `#/components/schemas/Pet` → `Pet`, run through `safeIdent`. */
4
5
  export declare function refToTypeName(ref: string): string;
6
+ /** Object key for a JSON name: a bare identifier when legal, else a string literal (`"page[size]"`). */
7
+ export declare function propertyKey(name: string): string | ts.StringLiteral;
5
8
  //# sourceMappingURL=identifiers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"identifiers.d.ts","sourceRoot":"","sources":["../../src/ir/identifiers.ts"],"names":[],"mappings":"AAEA,2EAA2E;AAC3E,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAI7C;AAED,mEAAmE;AACnE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAGjD"}
1
+ {"version":3,"file":"identifiers.d.ts","sourceRoot":"","sources":["../../src/ir/identifiers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,YAAY,CAAC;AAI5B,2EAA2E;AAC3E,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAI7C;AAED,mEAAmE;AACnE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAGjD;AAED,wGAAwG;AACxG,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,EAAE,CAAC,aAAa,CAEnE"}
@@ -1,4 +1,6 @@
1
1
  import { safeIdent } from "@ir-kit/codegen-core";
2
+ import ts from "typescript";
3
+ const IDENTIFIER = /^[A-Za-z_$][\w$]*$/;
2
4
  /** Legal JS identifier preserving original casing — for fn/param slots. */
3
5
  export function toIdent(input) {
4
6
  const stripped = input.replace(/[^A-Za-z0-9_$]+/g, "_");
@@ -10,4 +12,8 @@ export function refToTypeName(ref) {
10
12
  const parts = ref.split("/");
11
13
  return safeIdent(parts[parts.length - 1] ?? "Unknown");
12
14
  }
15
+ /** Object key for a JSON name: a bare identifier when legal, else a string literal (`"page[size]"`). */
16
+ export function propertyKey(name) {
17
+ return IDENTIFIER.test(name) ? name : ts.factory.createStringLiteral(name);
18
+ }
13
19
  //# sourceMappingURL=identifiers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"identifiers.js","sourceRoot":"","sources":["../../src/ir/identifiers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,2EAA2E;AAC3E,MAAM,UAAU,OAAO,CAAC,KAAa;IACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IACpE,OAAO,OAAO,IAAI,GAAG,CAAC;AACxB,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,OAAO,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;AACzD,CAAC"}
1
+ {"version":3,"file":"identifiers.js","sourceRoot":"","sources":["../../src/ir/identifiers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,MAAM,UAAU,GAAG,oBAAoB,CAAC;AAExC,2EAA2E;AAC3E,MAAM,UAAU,OAAO,CAAC,KAAa;IACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IACpE,OAAO,OAAO,IAAI,GAAG,CAAC;AACxB,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,OAAO,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;AACzD,CAAC;AAED,wGAAwG;AACxG,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;AAC7E,CAAC"}
@@ -1,4 +1,4 @@
1
- export { refToTypeName, toIdent } from "./identifiers.js";
1
+ export { propertyKey, refToTypeName, toIdent } from "./identifiers.js";
2
2
  export { schemaToFakerExpr } from "./schema-to-faker.js";
3
3
  export { objectToTypeLiteral, schemaToTypeNode } from "./schema-to-type.js";
4
4
  export type { WalkedOperation } from "./walk-ops.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ir/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ir/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}
package/dist/ir/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { refToTypeName, toIdent } from "./identifiers.js";
1
+ export { propertyKey, refToTypeName, toIdent } from "./identifiers.js";
2
2
  export { schemaToFakerExpr } from "./schema-to-faker.js";
3
3
  export { objectToTypeLiteral, schemaToTypeNode } from "./schema-to-type.js";
4
4
  export { walkOperations } from "./walk-ops.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ir/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5E,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ir/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5E,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ir-kit/k6-gen",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "description": "Programmatic generator: OpenAPI spec → typed k6 client (one function per operation), TS types, and faker-backed data builders. No hey-api plugin required.",
5
5
  "keywords": [
6
6
  "k6",
@@ -50,14 +50,14 @@
50
50
  "dependencies": {
51
51
  "@hey-api/openapi-ts": "^0.99.0",
52
52
  "@hey-api/shared": "^0.5.0",
53
+ "@ir-kit/codegen-core": "0.3.0",
54
+ "@ir-kit/openapi": "0.5.0",
53
55
  "@ir-kit/openapi-loader": "0.4.0",
54
56
  "@ir-kit/openapi-tools": "0.4.0",
55
- "@ir-kit/openapi-ts-faker": "1.0.0",
56
- "@ir-kit/openapi": "0.5.0",
57
- "@ir-kit/codegen-core": "0.3.0"
57
+ "@ir-kit/openapi-ts-faker": "1.0.1"
58
58
  },
59
59
  "peerDependencies": {
60
- "typescript": ">=5.0.0"
60
+ "typescript": ">=5.0.0 <7"
61
61
  },
62
62
  "devDependencies": {
63
63
  "@types/node": "^22",