bitloops-language icon indicating copy to clipboard operation
bitloops-language copied to clipboard

Packages are not generated as expected

Open ellik95 opened this issue 2 years ago • 0 comments

Describe the bug The bl code is not transpiled when we use Package ports and adapters.

To Reproduce Steps to reproduce the behavior: ports/cloudProviderPort.bl

 Struct CreateDNSRecordSetParams {
     string certificate;
     string expirationTime;
 }

 PackagePort CloudProviderPackagePort {
     createDNSRecordSet(params: CreateDNSRecordSetParams): void;
 }

setup.bl

[Test][Test]GoogleCloudProviderPackageAdapter concretes CloudProviderPackagePort;

adapters/GoogleCloudProviderPackageAdapter.ts

import { google } from 'googleapis';
export class GoogleCloudProviderPackageAdapter implements CloudProviderServicePort {
...
}

package.json

{
 "dependencies": {
   "google-auth-library": "^8.7.0",
   "googleapis": "^110.0.0"
 }
}

useCases.bl

UseCase CreateTestUseCase () {
    execute (requestDTO: CreateTestRequestDTO): (OK(void), Errors()) {
        CloudProviderPackage.createDNSRecordSet(...)
    }
}

Expected behavior To generate packagePort and the project to be built as expected.

Screenshots The output error is:

TypeError: Cannot read properties of undefined (reading 'trim')
    at file:///Users/ellikotoula/Projects/bitloops/bitloops-language/transpiler/lib/esm/src/target/typescript/setup/SetupTypeScript.js:256:21
    at Array.forEach (<anonymous>)
    at SetupTypeScript.getDependenciesForPackageJSON (file:///Users/ellikotoula/Projects/bitloops/bitloops-language/transpiler/lib/esm/src/target/typescript/setup/SetupTypeScript.js:251:23)
    at SetupTypeScript.generatePackageFiles (file:///Users/ellikotoula/Projects/bitloops/bitloops-language/transpiler/lib/esm/src/target/typescript/setup/SetupTypeScript.js:294:26)
    at IntermediateSetupASTToTarget.generateSetupFiles (file:///Users/ellikotoula/Projects/bitloops/bitloops-language/transpiler/lib/esm/src/target/typescript/setup/index.js:132:49)
    at TargetGenerator.generateSetup (file:///Users/ellikotoula/Projects/bitloops/bitloops-language/transpiler/lib/esm/src/target/index.js:45:37)
    at TargetGenerator.generate (file:///Users/ellikotoula/Projects/bitloops/bitloops-language/transpiler/lib/esm/src/target/index.js:19:44)
    at Transpiler.intermediateASTModelToTargetLanguage (file:///Users/ellikotoula/Projects/bitloops/bitloops-language/transpiler/lib/esm/src/Transpiler.js:39:67)
    at Transpiler.transpile (file:///Users/ellikotoula/Projects/bitloops/bitloops-language/transpiler/lib/esm/src/Transpiler.js:18:33)
    at transpileCode (file:///Users/ellikotoula/Projects/bitloops/bitloops-language/cli/src/functions/transpile.ts:50:29)
  ❌ TypeError: Cannot read properties of undefined (reading 'trim')

image

So, it seems from above that importStrings have problem. I have created a branch that fixed some previous problems with this so I will link it with the issue.

ellik95 avatar Jan 18 '23 13:01 ellik95