Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
@the-control-group/wsdl-tsclient
Advanced tools
Generate typescript soap client with typescript definitons from WSDL file.
Example how to generate and use wsdl-tsclient: wsdl-tsclient-example
Generate a soap client with typescript definitions from a WSDL file.
This library uses ts-morph to generate typescript code and soap for runtime. Inspired by Java wsimport and openapi-generator.
NOTE: Add soap to your npm runtime dependencies (npm i soap
).
npm i wsdl-tsclient
or install it with -g
to have CLI globally available.
npm i -g wsdl-tsclient
You can check example repository wsdl-tsclient-example
Easiest way to generate client from is to use CLI. You need to provide only path to .wsdl
file and
path to output directory (-o
param). If you want to generate only typescript types (no runtime code) for node-soap, you can pass --emitDefinitionsOnly
param.
wsdl-tsclient ./soap.wsdl -o ./generated
wsdl-tsclient ./resources/**/*.wsdl -o ./generated
- using glob
you can also use npx
npx wsdl-tsclient ./soap.wsdl -o ./generated
wsdl-tsclient [options] [path]
Options:
--help Show help [boolean]
-v, --version [boolean]
-o Output directory [string] [required]
--emitDefinitionsOnly Generate only Definitions [boolean]
--modelNamePreffix Prefix for generated interface names[string]
--modelNameSuffix Suffix for generated interface names[string]
--caseInsensitiveNames Case-insensitive name while parsing
definition names [boolean]
--maxRecursiveDefinitionName Maximum count of definition's with same name
but increased suffix. Will throw an error if
exceed [number]
--quiet Suppress all logs [boolean]
--verbose Print verbose logs [boolean]
--no-color Logs without colors [boolean]
Examples:
wsdl-tsclient file.wsdl -o ./generated/
wsdl-tsclient ./res/**/*.wsdl -o ./generated/
import { generateClient } from "wsdl-tsclient";
parseAndGenerate("./path/to/MyWsdl.wsdl", "./generated/");
Note: Make sure you have soap package in your runtime dependencies (npm i soap
)
import { createClientAsync } from "./generated/MyWsdl";
const client = await createClientAsync("./path/to/wsdl.wsdl");
client.CallSoapMethodAsync();
Setting basic auth
import soap from "soap";
import { createClientAsync } from "./generated/MyWsdl";
const client = await createClientAsync("./path/to/wsdl.wsdl");
const basicAuth = new soap.BasicAuthSecurity(auth.username, auth.password);
client.setSecurity(basicAuth);
client.CallSoapMethodAsync();
for more information about the use of the client, read more about soap
The source code is licensed under the MIT license
FAQs
Generate typescript soap client with typescript definitons from WSDL file.
The npm package @the-control-group/wsdl-tsclient receives a total of 9 weekly downloads. As such, @the-control-group/wsdl-tsclient popularity was classified as not popular.
We found that @the-control-group/wsdl-tsclient demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.