@ingeno/pipedream-services
v1.0.103
Published
Service utilities for Clarity data integrations
Readme
@ingeno/pipedream-services
Service utilities for Clarity data integrations.
Purpose
This package provides reusable service utilities for data integrations in the Clarity Pipedream project. It contains production-ready code that can be imported and used across different packages and deployed workflows.
Features
- AWS Services: Partner Central client, cost explorer, organizations, and STS utilities
- Zoho CRM: Complete CRM client with authentication, field metadata, and record management
- PostgreSQL: Database connection, table management, and bulk operations
- Collections: Data transformation and schema generation utilities
- Date/Time: Date manipulation and formatting helpers
- Streams: Reactive data streaming utilities
Usage
Zoho CRM Integration
import { ZohoCRMClient, ZohoAuth } from '@ingeno/pipedream-services'
const auth = new ZohoAuth(credentials)
const client = new ZohoCRMClient({
accessToken: await auth.getAccessToken(),
apiDomain: credentials.api_domain
})
const deals = await client.getDeals()PostgreSQL Operations
import { fillTables, collectionsToTables } from '@ingeno/pipedream-services'
const tablesRows = collectionsToTables(collections)
await fillTables({
auth: postgresCredentials,
tablesRows,
tablesPrefix: 'zoho_crm_'
})AWS Partner Central
import { PartnerCentralClient } from '@ingeno/pipedream-services'
const client = new PartnerCentralClient({ credentials })
const opportunities = await client.listAllOpportunities()Installation
This package is published to npm and can be installed via:
npm install @ingeno/pipedream-services
# or
pnpm add @ingeno/pipedream-servicesDevelopment
# Build the package
pnpm build
# Run tests
pnpm test
# Run tests with coverage
pnpm test:coverage
# Run tests in watch mode
pnpm test:watch
# Run tests with UI
pnpm test:ui
# Run tests with coverage and UI
pnpm test:coverage:ui
# Run tests with coverage and open report
pnpm test:coverage:open
# Lint code
pnpm lint
# Publish to npm
pnpm pubCode Coverage
The project includes comprehensive code coverage reporting with:
- HTML Reports: Navigate to
./coverage/index.htmlafter runningpnpm test:coverage - Multiple Formats: Text, HTML, JSON, and JSON-summary reports
- Coverage Thresholds: 70% minimum for branches, functions, lines, and statements
- Detailed Analysis: Line-by-line coverage information
- Visual Interface: Use
pnpm test:coverage:uifor interactive coverage exploration
Current Coverage Highlights
- Collections Module: 90.32% statement coverage with excellent test coverage
- Converter Module: 93.18% statement coverage with comprehensive type conversion tests
- Collections-to-Table: 100% statement coverage with complete edge case testing
Coverage Configuration
Coverage is configured to:
- Use V8 coverage provider for accurate reporting
- Exclude test files, type definitions, and index files
- Generate reports in the
./coveragedirectory - Enforce quality thresholds to maintain code quality
Architecture
This package contains only production code and is designed to be:
- Lightweight: No test utilities or development dependencies
- Reusable: Can be used across different packages and environments
- Well-typed: Full TypeScript support with proper type definitions
- Modular: Organized by service domain (AWS, Zoho, PostgreSQL, etc.)
Exports
The package provides both named and namespace exports:
@ingeno/pipedream-services- Main entry point@ingeno/pipedream-services/aws- AWS-specific utilities@ingeno/pipedream-services/zoho- Zoho CRM utilities@ingeno/pipedream-services/date- Date utilities
License
MIT
