PURISTA API / @purista/core / ClientBuilder
Class: ClientBuilder
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:43
ClientBuilder to generate clients, based on service definitions.
Extends
Constructors
Constructor
new ClientBuilder(
config?):ClientBuilder
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:52
Parameters
config?
Partial<{ buildAs: "esm" | "commonjs" | "both"; definitionPath: string; eventBridgeClient?: { clientName: string; }; httpClient?: { clientName: string; }; outputPath: string; package?: { description: string; name: string; private: boolean; }; version: string; }>
Returns
ClientBuilder
Overrides
GenericEventEmitter.constructor
Properties
config
config:
object
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:44
buildAs
buildAs:
"esm"|"commonjs"|"both"
definitionPath
definitionPath:
string
eventBridgeClient
eventBridgeClient:
object=eventBridgeClientConfigSchema
eventBridgeClient.clientName
eventBridgeClient.clientName:
string
httpClient
httpClient:
object=httpClientConfigSchema
httpClient.clientName
httpClient.clientName:
string
outputPath
outputPath:
string
package?
optionalpackage:object
package.description
package.description:
string
package.name
package.name:
string
package.private
package.private:
boolean
version
version:
string
rootPath
rootPath:
string
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:50
The root file from where the relative paths are resolved. Defaults to current users directory
Methods
build()
build():
Promise<void>
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:227
Runs the tsc against the generated ts source files. Depending on settings, it will generate ESM and/or commonJS files
Returns
Promise<void>
cleanDistFolder()
cleanDistFolder():
Promise<void>
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:147
Deletes the content of the output folder. Should be called before generating the client
Returns
Promise<void>
createIndex()
createIndex():
Promise<void>
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:157
Creates a index.ts file which exports the client(s) and types. Is used in generated package.json
Returns
Promise<void>
createPackageJson()
createPackageJson():
Promise<void>
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:179
Creates a package.json file in the output folder. Exports the files which are build by tsc based on generated client files
Returns
Promise<void>
destroy()
destroy():
void
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:816
Destroys the builder and cleans the event listeners
Returns
void
emit()
emit<
K>(eventName,parameter?):void
Defined in: packages/core/src/core/types/GenericEventEmitter.ts:24
Type Parameters
K
K extends EventKey<ClientBuilderEvents>
Parameters
eventName
K
parameter?
Returns
void
Inherited from
generateHEventBridgeClient()
generateHEventBridgeClient(
serviceDefinition):Promise<void>
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:712
Generates the zero-dependency HTTP client source files
Parameters
serviceDefinition
Returns
Promise<void>
generateHttpClient()
generateHttpClient(
serviceDefinition):Promise<void>
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:336
Generates the zero-dependency HTTP client source files
Parameters
serviceDefinition
Returns
Promise<void>
getDefinitionPath()
getDefinitionPath():
string
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:130
Resolves the definitions folder path from config with rootPath
Returns
string
path of definitions folder
getDefinitionsFromServiceBuilders()
getDefinitionsFromServiceBuilders(
serviceBuilders):Promise<FullServiceDefinition>
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:104
Gets the definitions from the provided service builders
Parameters
serviceBuilders
ServiceBuilder<ServiceBuilderTypes>[]
Returns
Promise<FullServiceDefinition>
getOutputPath()
getOutputPath():
string
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:138
Resolves the output folder path from config with rootPath
Returns
string
path of output folder
loadConfig()
loadConfig(
path?):Promise<void>
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:82
Loads the config fom JSON file. If no path is provided, it will try to load the config from purista.client.json in rootPath directory
Parameters
path?
string
Returns
Promise<void>
loadDefinitionFiles()
loadDefinitionFiles(
path?):Promise<FullServiceDefinition>
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:303
Loads the definitions from JSON files
Parameters
path?
string
Returns
Promise<FullServiceDefinition>
off()
off<
K>(eventName,fn):void
Defined in: packages/core/src/core/types/GenericEventEmitter.ts:20
Type Parameters
K
K extends EventKey<ClientBuilderEvents>
Parameters
eventName
K
fn
EventReceiver<ClientBuilderEvents[K]>
Returns
void
Inherited from
on()
on<
K>(eventName,fn):void
Defined in: packages/core/src/core/types/GenericEventEmitter.ts:16
Type Parameters
K
K extends EventKey<ClientBuilderEvents>
Parameters
eventName
K
fn
EventReceiver<ClientBuilderEvents[K]>
Returns
void
Inherited from
removeAllListeners()
removeAllListeners():
void
Defined in: packages/core/src/core/types/GenericEventEmitter.ts:28
Returns
void
Inherited from
GenericEventEmitter.removeAllListeners
writeConfig()
writeConfig(
path?):Promise<void>
Defined in: packages/core/src/ClientBuilder/ClientBuilder.impl.ts:121
Writes the config to a config file. Defaults to purista.client.json in rootPath directory
Parameters
path?
string
Returns
Promise<void>
