0.0.6 • Published 9 months ago

@inleads/inleads-widgets v0.0.6

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

InLeads

Resuable Web components for InLeads (https://inleads.ai) AI Driven Smart Sales Management System.

Getting Started

Installation

To use the Inleads Widgets in your project, install the package using npm:

NPM

npm install @inleads/inleads-widgets --save

Yarn

yarn add @inleads/inleads-widgets

Usage

Using Inleads widgets Components in Angular

Step 1: Install the Inleads Widgets Package

Install the Inleads Widgets Package in your Angular project:

NPM

npm install @inleads/inleads-widgets --save

Yarn

yarn add @inleads/inleads-widgets

Step 2: Define Custom Elements in Angular

In main.ts, import and define the custom elements:

import { defineCustomElements } from '@inleads/inleads-widgets/loader'; // Add this
defineCustomElements(window); // Add this

Step 3: Add CUSTOM_ELEMENTS_SCHEMA

In your app.module.ts, add CUSTOM_ELEMENTS_SCHEMA to avoid errors for unknown elements:

import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';

@NgModule({
  declarations: [AppComponent],
  imports: [BrowserModule],
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
  bootstrap: [AppComponent]
})
export class AppModule {}

Step 4: Use the Inleads Widgets in Templates

Now, you can use the Inleads Widgets components in Angular templates:

<div class="container">
<h1>Inleads Widgets</h1>
<!-- Insert the Inleads Widget -->
<whatsapp-widget phone-number="+1234567890" api-key="your-api-key"></whatsapp-
 widget>
</div>

Using Inleads Widgets Components in Next.js

Next.js, being a React framework, requires some attention to server-side rendering (SSR) when using Web Components.

Step 1: Install the Inleads Widgets Package

Install the Inleads Widgets package in your Next.js project:

NPM

npm install @inleads/inleads-widgets --save

Yarn

yarn add @inleads/inleads-widgets

Step 2: Load Web Components in Browser (Avoid SSR Issues)

First, in your next.config.js, add the transpilePackages option to ensure the Inleads Widgets are transpiled:

/** @type {import('next').NextConfig} */
const nextConfig = {
reactStrictMode: true,
transpilePackages: ["@inleads/inleads-widgets"], // Add this line
}
module.exports = nextConfig

Then, In your pages/_app.js, you need to conditionally load the Inleads Widgets only in the browser, not during SSR:

import { useEffect } from 'react';
import { defineCustomElements } from '@inleads/inleads-widgets/loader'; // Add this
function MyApp({pageProps }) {
useEffect(() => { // Add this
if (typeof window !== 'undefined') {
defineCustomElements(window);
}
}, []);
return <Component {...pageProps} />;
}
export default MyApp;

Step 3: Use Widgets in Pages

You can now use the Inleads Widgets components in your Next.js pages:

export default function HomePage() {
return (
<div>
// Insert the Inleads widgets
<whatsapp-widget phone-number="+1234567890" api-key="your-api-
 key"></whatsapp-widget>
</div>
);
}

Using Inleads Widgets Components in React.js

Since Next.js is built on React, the process is similar, but you don’t need to worry about SSR in plain React.

Step 1: Install the Inleads Widgets Package

Install the Inleads Widgets package in your React.js project:

NPM

npm install @inleads/inleads-widget --save

Yarn

yarn add @inleads/inleads-widget

Step 2: Load Inleads Widgets Components

To ensure that your Inleads Widgets components work correctly, you need to load them in your main React file index.js. Use the following code snippet:

import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
import { defineCustomElements } from '@inleads/inleads-widgets/loader'; // Add this
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
<React.StrictMode>
<App />
</React.StrictMode>
);
defineCustomElements(window) // Add this

Step 3: Use Widgets in Components

You can now use the Inleads Widgets directly in your React components:

function App() {
return (
<div>
// Insert the Inleads Whatsapp Widget component
<whatsapp-widget phone-number="+1234567890" api-key="your-api-key">
 </whatsapp-widget>
</div>
);
}
export default App;

Functions Reference

Inleads Widgets :-

Whatsapp Widget

<whatsapp-widget phone-number="" api-key=""></whatsapp-widget>

Properties

PropertyAttributeDescriptionTypeDefault
apiKeyapi-keystringundefined
phoneNumberphone-numberstringundefined

Contact Widget

<contact-form api-key=""></contact-form>

Properties

PropertyAttributeDescriptionTypeDefault
apiKeyapi-keystringundefined

Chatbot Widget

<chatbot-widget api-key="" agent-id=""></chatbot-widget>

Properties

PropertyAttributeDescriptionTypeDefault
agentIdagent-idstringundefined
apiKeyapi-keystringundefined

NPS Widget

<nps-widget background-color="" text-color="" api-key=""></nps-widget>

Properties

PropertyAttributeDescriptionTypeDefault
apiKeyapi-keystringundefined
backgroundColorbackground-colorstringundefined
textColortext-colorstringundefined
0.0.6

9 months ago

0.0.5

9 months ago

0.0.4

9 months ago

0.0.3

9 months ago

0.0.2

9 months ago

0.0.1

9 months ago