analytics-id

1.3.1 • Public • Published

analyticsId

A tiny utility for working with analytics ids
on the server and in the browser.



Getting Started

Installation

Install with npm:

npm install --save analytics-id

Or with yarn:

yarn add analytics-id

Examples

import analyticsId from 'analytics-id'
 
// generate or pull id from cookie/localStorage
analyticsId()
 
// call the function with string or number to set as id, otherwise pass in options
analyticsId('exampleId')

Usage

Get & Set

import { get, set } from 'analytics-id'
 
set({ key: 'my_anon_id' }) // ajs-C1E42A94-FCE2-4851-87DD-695F576C5368 -> cookie or localStorage
 
get({ key: 'my_anon_id' }) // cookie or localStorage -> ajs-C1E42A94-FCE2-4851-87DD-695F576C5368

Options

These are the base options that can be passed in to both get and set functions:

analyticsId({
  debug: true, // log operations to stdout
  preset: String, // prefix/generateId/stores to use
  cookie: String, // cookie string to use (browser default is document.cookie)
  localStorage: Object // Storage object to use (browser default is window.localStorage)
})

For setting analytics ids, you can specify an id field which will pass the options to setAnalyticsId(). If you don't set the id option, then getAnalyticsId() will be called with the options:

const id = await promptEmailFromUser()
 
analyticsId({ id })

And for getting analytics ids, you can pass control if the preset tries to persist data:

console.log(document.cookie) // 'a=true'
 
const { cookie } = analyticsId({ persist: false })
 
console.log(document.cookie) // 'a=true'
console.log(cookie) // 'a=true; session_id=ajs-B31C9E91-D741-4146-913B-0E80199648D0'

Contributing

All contributions are super welcome! analytics-id is MIT-licensed.

Package Sidebar

Install

npm i analytics-id

Weekly Downloads

7

Version

1.3.1

License

MIT

Unpacked Size

54.4 kB

Total Files

9

Last publish

Collaborators

  • fouad