rlz-engine 1.0.46 → 1.0.47

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.
@@ -19,7 +19,7 @@ export function generateClient(fileName, ...rpcBuilders) {
19
19
  }
20
20
  const props = rpcBuilders.map((b) => {
21
21
  const calls = b.endpoints.map((e) => {
22
- return F.createPropertyAssignment(F.createIdentifier(e.name), F.createArrowFunction([F.createToken(ts.SyntaxKind.AsyncKeyword)], undefined, e.anonimous
22
+ return F.createPropertyAssignment(F.createIdentifier(kebabToPascalCase(e.name)), F.createArrowFunction([F.createToken(ts.SyntaxKind.AsyncKeyword)], undefined, e.anonimous
23
23
  ? [
24
24
  F.createParameterDeclaration(undefined, undefined, F.createIdentifier('body'), undefined, F.createTypeReferenceNode(F.createIdentifier(createBodyTypeName(b.name, e)), undefined), undefined)
25
25
  ]
@@ -34,7 +34,7 @@ export function generateClient(fileName, ...rpcBuilders) {
34
34
  F.createIdentifier('body')
35
35
  ])))], true)));
36
36
  });
37
- return F.createPropertyAssignment(F.createIdentifier(b.name), F.createObjectLiteralExpression(calls, false));
37
+ return F.createPropertyAssignment(F.createIdentifier(kebabToPascalCase(b.name)), F.createObjectLiteralExpression(calls, false));
38
38
  });
39
39
  const rpcClientNode = F.createVariableStatement([F.createToken(ts.SyntaxKind.ExportKeyword)], F.createVariableDeclarationList([F.createVariableDeclaration(F.createIdentifier('RPC_CLIENT'), undefined, undefined, F.createObjectLiteralExpression(props, false))], ts.NodeFlags.Const));
40
40
  fileContent.push(p(rpcClientNode));
@@ -53,12 +53,15 @@ function generateTypes(rpcName, e, p) {
53
53
  resp.push(p(respTypeAlias));
54
54
  return resp;
55
55
  }
56
- function firstLetterUp(text) {
57
- return `${text[0].toUpperCase()}${text.substring(1)}`;
56
+ function kebabToPascalCase(input, firstLetterUp = false) {
57
+ if (firstLetterUp) {
58
+ return input.replace(/(^|-)([a-z])/g, (_, __, c) => c.toUpperCase());
59
+ }
60
+ return input.replace(/-([a-z])/g, (_, c) => c.toUpperCase());
58
61
  }
59
62
  function createBodyTypeName(rpcName, e) {
60
- return `RpcBody${firstLetterUp(rpcName)}${firstLetterUp(e.name)}V${e.v}`;
63
+ return `RpcBody${kebabToPascalCase(rpcName, true)}${kebabToPascalCase(e.name, true)}V${e.v}`;
61
64
  }
62
65
  function createRespTypeName(rpcName, e) {
63
- return `RpcResp${firstLetterUp(rpcName)}${firstLetterUp(e.name)}V${e.v}`;
66
+ return `RpcResp${kebabToPascalCase(rpcName, true)}${kebabToPascalCase(e.name, true)}V${e.v}`;
64
67
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rlz-engine",
3
- "version": "1.0.46",
3
+ "version": "1.0.47",
4
4
  "description": "Deps and tools for my style of development",
5
5
  "scripts": {
6
6
  "build": "tsc",