🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
DemoInstallSign in
Socket

@dowelllabs/licensecompatibility

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@dowelllabs/licensecompatibility

- The Opensource License Compatibility Check package establish how two licenses are compatible with each other. This is a percentage estimate of how likely it is to recommend use of two softwares under the two licenses in one project.

2.0.0
latest
npm
Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

DoWell Opensource-License-Compatibility

Version 2.0.0

Description

  • The Opensource License Compatibility Check package establish how two licenses are compatible with each other. This is a percentage estimate of how likely it is to recommend use of two softwares under the two licenses in one project.

  • To check how two license are compatible with each other, you are require to provide the first license name and the second license in the respective input fields and submit.

Installation

With npm:

    npm install @dowelllabs/licensecompatibility

With yarn:

    yarn add @dowelllabs/licensecompatibility

Usage

The license compatibility liberary require user apiKey, followed by first license name and second license name for compatibility check.

Example using function component

import { useState } from "react";
import { OpensourceLicenseCompatibility } from "@dowelllabs/licensecompatibility";

function App() {
  const [inputState, setInputState] = useState({
    first_license_name: "",
    second_license_name: "",
  });

  const [compatibilityResult, setCompatibilityResult] = useState("");

  const handleChangeState = (e) => {
    setInputState((prevState) => ({
      ...prevState,
      [e.target.name]: e.target.value,
    }));
  };

  const reset = () => {
    setCompatibilityResult("");
  };

  const checkLicenseCompatibility = async (e) => {
    e.preventDefault();

    const result = new OpensourceLicenseCompatibility()
      .compareLicenses({
        apiKey: process.env.REACT_APP_API_KEY,
        first_license_name: inputState.first_license_name,
        second_license_name: inputState.second_license_name,
      })
      .then((response) => {
        try {
          if (response) {
            const compatibilityStatus = response;
            setCompatibilityResult(compatibilityStatus);
          } else {
            setCompatibilityResult("Result not found");
          }
        } catch (error) {
          console.log(error);
        }
      });
  };

  return (
    <div className="App">
      <div className="card">
        <div className="card-body">
          {compatibilityResult !== "" ? (
            <div className="show-recommendation">
              <h2>{compatibilityResult}</h2>
              <button type="button" className="btn-submit" onClick={reset}>
                Ok
              </button>
            </div>
          ) : (
            <form onSubmit={checkLicenseCompatibility}>
              <div className="mb-3">
                <label htmlFor="firstLicense" className="form-label">
                  First License Name
                </label>
                <br />
                <input
                  type="text"
                  className="form-control"
                  id="firstLicense"
                  name="first_license_name"
                  value={inputState.first_license_name}
                  onChange={handleChangeState}
                />
              </div>
              <div className="mb-3">
                <label htmlFor="secondLicense">Second License Name</label>
                <br />
                <input
                  type="text"
                  className="form-control"
                  id="secondLicense"
                  name="second_license_name"
                  value={inputState.second_license_name}
                  onChange={handleChangeState}
                />
              </div>
              <div className="btn-wrapper">
                <button
                  type="submit"
                  className="btn-submit"
                >
                  Submit
                </button>
              </div>
            </form>
          )}
        </div>
      </div>
    </div>
  );
}

export default App;

API(conpareLicense)

compareLicenses({apiKey, first_license_name, second_license_name}) function used to initiates comparison between two licenses.

  • -apiKey: Your API key for accessing the process module service.
  • -first_license_name and second_license_name are use for comparison in order check how compatible both licenses are to each other. The comparion result usually returns Recommended, Highly Recommended or Not Recommended

License

This project is licensed under the Apache License 2.0.

Keywords

license

FAQs

Package last updated on 03 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