Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@redhat-developer/kiota-wasm

Package Overview
Dependencies
Maintainers
11
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@redhat-developer/kiota-wasm

Kiota compiled in a native WASM module.

  • 0.0.1
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
decreased by-100%
Maintainers
11
Weekly downloads
 
Created
Source

Kiota-Wasm

This project brings the power of Kiota straight into your browser! Kiota is a C# project and the dotnet toolchain allows you to compile it with target browser-wasmand eventually run it in the browser.

Usage

There are a few minor challenges with the integration of the produced artifacts into a real-world, modern, frontend application. We do maintain working examples up to date to make sure that it's feasible to leverage this functionality.

  1. Add this dependency to your project:

npm install -D @redhat-developer/kiota-wasm

  1. Unpack the resources in the public assets folder of your project (and we suggest to add it to your .gitignore):
npm install -D copyfiles rimraf
  "scripts": {
    ...
    "postinstall": "rimraf ./public/kiota-wasm && copyfiles -u 4 'node_modules/@redhat-developer/kiota-wasm/dist/**/*.*' 'public/kiota-wasm'"
  }
  ...
  1. With some build tool such as vite you need to exclude those dependencies from the bundler:
export default defineConfig({
  plugins: [
    react(),
  ],
  build: {
    rollupOptions: {
      external: [
        /^.*kiota-wasm.*/,
      ]
    }
  }
})
  1. Now you can integrate the WASM module with a dynamic import, with vite:
// @ts-ignore
const { generate } = await import('/kiota-wasm/main.js?url');

or with webpack:

const { generate } = await import(
  /* webpackIgnore: true */ './kiota-wasm/main.js'
);
  1. Use the code generator functionality:
generate(spec: string, language: string, clientClassName: string, namespaceName: string, includePatterns: string, excludePatterns: string);

Build

To build this project you need dotnet version 7+ and the wasm-tools:

dotnet workload install wasm-tools

and run the build:

dotnet build --configuration Release

Release

This repository is released on tag:

git fetch origin
git checkout origin/main
git tag <version>
git push origin <version>

and the CI will do the job.

Keywords

FAQs

Package last updated on 31 Oct 2023

Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc