6.0.0 • Published 11 months ago

@capawesome/capacitor-posthog v6.0.0

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

@capawesome/capacitor-posthog

Unofficial Capacitor plugin for PostHog.^1

Installation

npm install @capawesome/capacitor-posthog posthog-js
npx cap sync

Android

Variables

This plugin will use the following project variables (defined in your app’s variables.gradle file):

  • $androidxCoreKtxVersion version of androidx.core:core-ktx (default: 1.13.1)

Configuration

No configuration required for this plugin.

Demo

A working example can be found here: robingenz/capacitor-plugin-demo

Usage

import { Posthog } from '@capawesome/capacitor-posthog';

const alias = async () => {
  await Posthog.alias({
    alias: 'new-distinct-id',
  });
};

const capture = async () => {
  await Posthog.capture({
    event: 'event',
    properties: {
      key: 'value',
    },
  });
};

const flush = async () => {
  await Posthog.flush();
};

const group = async () => {
  await Posthog.group({
    type: 'group',
    key: 'key',
    groupProperties: {
      key: 'value',
    },
  });
};

const identify = async () => {
  await Posthog.identify({
    distinctId: 'distinct-id',
    userProperties: {
      key: 'value',
    },
  });
};

const register = async () => {
  await Posthog.register({
    key: 'super-property',
    value: 'super-value',
  });
};

const reset = async () => {
  await Posthog.reset();
};

const screen = async () => {
  await Posthog.screen({
    screenTitle: 'screen',
    properties: {
      key: 'value',
    },
  });
};

const setup = async () => {
  await Posthog.setup({
    apiKey: 'YOUR_API_KEY',
    host: 'https://eu.i.posthog.com',
    });
};

const unregister = async () => {
  await Posthog.unregister({
    key: 'super-property',
  });
};

API

alias(...)

alias(options: AliasOptions) => Promise<void>

Assign another distinct ID to the current user.

ParamType
optionsAliasOptions

Since: 6.0.0


capture(...)

capture(options: CaptureOptions) => Promise<void>

Capture an event.

ParamType
optionsCaptureOptions

Since: 6.0.0


flush()

flush() => Promise<void>

Flush all events in the queue.

Only available on Android and iOS.

Since: 6.0.0


group(...)

group(options: GroupOptions) => Promise<void>

Associate the events for that user with a group.

ParamType
optionsGroupOptions

Since: 6.0.0


identify(...)

identify(options: IdentifyOptions) => Promise<void>

Identify the current user.

ParamType
optionsIdentifyOptions

Since: 6.0.0


register(...)

register(options: RegisterOptions) => Promise<void>

Register a new super property. This property will be sent with every event.

ParamType
optionsRegisterOptions

Since: 6.0.0


reset()

reset() => Promise<void>

Reset the current user's ID and anonymous ID.

Since: 6.0.0


screen(...)

screen(options: ScreenOptions) => Promise<void>

Send a screen event.

Only available on Android and iOS.

ParamType
optionsScreenOptions

Since: 6.0.0


setup(...)

setup(options: SetupOptions) => Promise<void>

Setup the PostHog SDK with the provided options.

Attention: This method should be called before any other method.

ParamType
optionsSetupOptions

Since: 6.0.0


unregister(...)

unregister(options: UnregisterOptions) => Promise<void>

Remove a super property.

ParamType
optionsUnregisterOptions

Since: 6.0.0


Interfaces

AliasOptions

PropTypeDescriptionSince
aliasstringThe new distinct ID to assign to the current user.6.0.0

CaptureOptions

PropTypeDescriptionSince
eventstringThe name of the event to capture.6.0.0
propertiesRecord<string, any>The properties to send with the event.6.0.0

GroupOptions

PropTypeDescriptionSince
typestringThe group type.6.0.0
keystringThe group key.6.0.0
groupPropertiesRecord<string, any>The properties to send with the group event.6.0.0

IdentifyOptions

PropTypeDescriptionSince
distinctIdstringThe distinct ID of the user.6.0.0
userPropertiesRecord<string, any>The person properties to set.6.0.0

RegisterOptions

PropTypeDescriptionSince
keystringThe name of the super property.6.0.0
valueanyThe value of the super property.6.0.0

ScreenOptions

PropTypeDescriptionSince
screenTitlestringThe name of the screen.6.0.0
propertiesRecord<string, any>The properties to send with the screen event.6.0.0

SetupOptions

PropTypeDescriptionDefaultSince
apiKeystringThe API key of your PostHog project.6.0.0
hoststringThe host of your PostHog instance.'https://us.i.posthog.com'6.0.0

UnregisterOptions

PropTypeDescriptionSince
keystringThe name of the super property to remove.6.0.0

Type Aliases

Record

Construct a type with a set of properties K of type T

{

}

Changelog

See CHANGELOG.md.

License

See LICENSE.

^1: This project is not affiliated with, endorsed by, sponsored by, or approved by PostHog, Inc. or any of their affiliates or subsidiaries.

6.0.0

11 months ago