Package Exports
- trustlabs-sdk
- trustlabs-sdk/dist/sdk.esm.js
- trustlabs-sdk/dist/sdk.min.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (trustlabs-sdk) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
TrustLabs SDK
A JavaScript SDK for displaying trust verification badges on your website.
Installation
npm install trustlabs-sdkUsage
Vanilla JavaScript
Basic Usage
<script src="https://unpkg.com/trustlabs-sdk/dist/sdk.min.js"></script>
<link rel="stylesheet" href="https://unpkg.com/trustlabs-sdk/dist/badge.css">// Get trust status for emails
const { getTrustStatus, renderTrustBadge } = window.TrustLabsSDK;
// Fetch trust data
const trustData = await getTrustStatus(['user@example.com', 'admin@company.com']);
// Render badges
renderTrustBadge({
targetEl: document.querySelector('.user-email'),
trustData: trustData
});Automatic Rendering
const { renderTrustBadgeWithFetch } = window.TrustLabsSDK;
// Automatically fetch and render badges
await renderTrustBadgeWithFetch({
targetEl: document.querySelector('.user-email'),
emails: ['user@example.com']
});React
import { TrustBadge } from 'trustlabs-sdk';
function UserProfile({ userEmail }) {
return (
<div>
<span>{userEmail}</span>
<TrustBadge
emails={[userEmail]}
onError={(error) => console.error('Badge error:', error)}
onLoad={(data) => console.log('Badge loaded:', data)}
/>
</div>
);
}Advanced React Usage
import { TrustBadge } from 'trustlabs-sdk';
function UserList({ users }) {
return (
<div>
{users.map(user => (
<div key={user.id}>
<span>{user.email}</span>
<TrustBadge
emails={[user.email]}
showTooltip={true}
onError={(error) => {
// Handle errors
console.error(`Error loading badge for ${user.email}:`, error);
}}
onLoad={(data) => {
// Handle successful load
console.log(`Badge loaded for ${user.email}:`, data);
}}
/>
</div>
))}
</div>
);
}API Reference
getTrustStatus(emails)
Fetches trust status for email addresses.
Parameters:
emails(string[]): Array of email addresses
Returns: Promise<TrustStatus[]>
Example:
const trustData = await getTrustStatus(['user@example.com']);
console.log(trustData);
// [{ email: 'user@example.com', verified: true, completed_at: '2024-01-15T10:30:00Z' }]renderTrustBadge(options)
Renders trust badges using vanilla JavaScript.
Parameters:
options.targetEl(HTMLElement): Target element to insert badges afteroptions.trustData(TrustStatus[]): Trust status data
renderTrustBadgeWithFetch(options)
Automatically fetches and renders trust badges.
Parameters:
options.targetEl(HTMLElement): Target element to insert badges afteroptions.emails(string[]): Email addresses to check
React Component: TrustBadge
Props:
emails(string[]): Email addresses to checkshowTooltip(boolean, optional): Show completion date tooltip (default: true)onError(function, optional): Error callbackonLoad(function, optional): Success callback
Types
interface TrustStatus {
email: string;
verified: boolean;
completed_at?: string;
}
interface TrustStatusResponse {
results: TrustStatus[];
}Styling
The SDK includes fixed default styles via badge.css. Style overrides via props or external class names are not supported.
Error Handling
The SDK handles various error scenarios:
- Network errors
- Invalid email formats
- API rate limiting
- Missing or malformed responses
All errors are logged to console and can be handled via callbacks in React or try/catch in vanilla JS.
Browser Support
- Chrome 60+
- Firefox 55+
- Safari 12+
- Edge 79+