
Company News
Socket Joins the OpenJS Foundation
Socket is proud to join the OpenJS Foundation as a Silver Member, deepening our commitment to the long-term health and security of the JavaScript ecosystem.
@adv-re/segment-wrapper
Advanced tools
Modern TypeScript abstraction layer on top of the Segment Analytics library with built-in support for Google Analytics 4, Adobe Analytics, TCF compliance, and consent management.
npm install @adv-re/segment-wrapper
import analytics from '@adv-re/segment-wrapper'
import {initConfig} from '@adv-re/segment-wrapper'
// Initialize configuration
initConfig({
segmentKey: 'your-segment-write-key',
googleAnalyticsMeasurementId: 'G-XXXXXXXXXX',
googleAnalyticsConsentManagement: true
})
// Track events
await analytics.track('Button Clicked', {
buttonName: 'Sign Up',
location: 'Homepage'
})
// Track page views
await analytics.page('Homepage', {
title: 'Welcome to Our Site'
})
// Identify users
await analytics.identify('user-123', {
email: 'user@example.com',
plan: 'premium'
})
<script src="https://cdn.segment.com/analytics.js/v1/YOUR_WRITE_KEY/analytics.min.js"></script>
<!-- Use specific version (recommended for production) -->
<script async src="https://unpkg.com/@adv-re/segment-wrapper@latest"></script>
<script>
// Access via window.sui.analytics
window.sui.analytics.track('Page Viewed', {
page: 'home'
})
</script>
Version Options:
<!-- Specific version (recommended for production) -->
<script async src="https://unpkg.com/@adv-re/segment-wrapper@4.36.0"></script>
<!-- Latest version (use only for development) -->
<script async src="https://unpkg.com/@adv-re/segment-wrapper"></script>
import {initConfig} from '@adv-re/segment-wrapper'
initConfig({
// Segment
segmentKey: 'your-segment-write-key',
// Google Analytics 4
googleAnalyticsMeasurementId: 'G-XXXXXXXXXX',
googleAnalyticsConsentManagement: true,
googleAnalyticsConfig: {
// Custom GA4 config
},
// Adobe Analytics
adobeVisitorId: 'YOUR_ADOBE_ORG_ID@AdobeOrg',
// TCF/GDPR
enableTcf: true,
// Universal ID
universalId: 'user-universal-id',
userEmail: 'user@example.com',
// Middlewares
experimentalPageDataMiddleware: false,
// Other
defaultProperties: {
platform: 'web',
app: 'my-app'
},
userIdPrefix: 'usr_'
})
See Configuration Guide for all available options.
analytics.track(event, properties?, context?, callback?) - Track custom eventsanalytics.page(name?, properties?, context?, callback?) - Track page viewsanalytics.identify(userId, traits?, options?, callback?) - Identify usersanalytics.reset() - Reset user identificationgetConfig(key) - Get configuration valuesetConfig(key, value) - Set configuration valueclearConfig() - Clear all configurationgetUniversalId() - Get current Universal IDgetAdobeMCVisitorID() - Get Adobe Marketing Cloud Visitor IDgetAdobeVisitorData() - Get Adobe Visitor API dataSee API Reference for detailed documentation.
The segment-wrapper includes a powerful middleware system that allows you to modify tracking data before it's sent:
// Middlewares are automatically registered on initialization
// They enrich events with:
// - User traits (anonymous ID, user ID)
// - Campaign context (UTM parameters, STC tracking)
// - Page referrer information
// - Screen dimensions
// - Default context properties
See Middleware Documentation for more details.
Built-in support for Transparency & Consent Framework (TCF) v2:
import {getGdprPrivacyValue, checkAnalyticsGdprIsAccepted} from '@adv-re/segment-wrapper'
// Get current GDPR consent state
const gdprValue = await getGdprPrivacyValue()
// { analytics: 'accepted', advertising: 'declined' }
// Check if analytics tracking is allowed
const canTrack = checkAnalyticsGdprIsAccepted(gdprValue)
Events are automatically blocked or modified based on user consent.
See TCF Documentation for more details.
Native GA4 integration with automatic consent mode:
initConfig({
googleAnalyticsMeasurementId: 'G-XXXXXXXXXX',
googleAnalyticsConsentManagement: true,
googleAnalyticsConfig: {
send_page_view: false
// Additional GA4 config options
}
})
Features:
See Migration Guide for step-by-step instructions on migrating from the legacy @s-ui/segment-wrapper package.
Key changes:
@s-ui/segment-wrapper → @adv-re/segment-wrapper# Install dependencies
npm install
# Run tests
npm test
# Build
npm run build
# Build UMD bundle
npm run build:umd
# Lint
npm run lint
ISC
FAQs
Modern TypeScript abstraction layer on top of the Segment library
The npm package @adv-re/segment-wrapper receives a total of 2,603 weekly downloads. As such, @adv-re/segment-wrapper popularity was classified as popular.
We found that @adv-re/segment-wrapper demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 38 open source maintainers collaborating on the project.
Did you know?

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.

Company News
Socket is proud to join the OpenJS Foundation as a Silver Member, deepening our commitment to the long-term health and security of the JavaScript ecosystem.

Security News
npm now links to Socket's security analysis on every package page. Here's what you'll find when you click through.

Security News
A compromised npm publish token was used to push a malicious postinstall script in cline@2.3.0, affecting the popular AI coding agent CLI with 90k weekly downloads.