mirror of
https://github.com/hanzoai/insights-js.git
synced 2026-10-30 18:34:19 +00:00
We own the ingestion server (hanzoai/insights: Django + rust/capture + nodejs plugin) AND this SDK, so there is no external wire contract to preserve. The server is already 100% posthog-free; this SDK was the last laggard. - $last_posthog_reset -> $last_insights_reset. This FIXES A LIVE MISMATCH: the server taxonomy (insights/taxonomy/taxonomy.py, insights/insightsql/ai.py) already expected the insights form while the SDK emitted the posthog form. - __PosthogExtensions__ -> __InsightsExtensions__; all PostHog/posthog/POSTHOG identifiers -> Insights/insights/INSIGHTS (src, tests, playground, playwright, scripts, rrweb subpackages, package.json keywords). - Hosts: DEFAULT_PLUGIN_HOST + DEFAULT_NUXT_HOST + the core host default pointed at PostHog's cloud (us.i.posthog.com) — a real bug. All -> insights.hanzo.ai. - Removed the us-assets/eu-assets CDN split in getRemoteConfig (PostHog-specific; Hanzo serves remote config from the same host) — it had degenerated to a no-op. - Fixed generate-docs writing to a stray references/@hanzo/ subdir. - Renamed the 3 posthog-named test files; dropped 58MB of stale reference snapshots named for upstream posthog versions we never shipped (they are generated output — references/ is now gitignored). Verified: typecheck errors 42 (HEAD) -> 18 (all pre-existing test-mock looseness); types package 0; every package.json valid with @hanzo/* names. Guard: grep -rioE 'posthog' packages ... | wc -l => 0
46 lines
1.8 KiB
JavaScript
46 lines
1.8 KiB
JavaScript
const path = require('path');
|
|
const fs = require('fs');
|
|
const { generateApiSpecs } = require('../../../scripts/docs/parser');
|
|
const { HOG_REF, PROPERTIES_EXAMPLE, PROPERTY_EXAMPLE } = require('../../../scripts/docs/constants');
|
|
|
|
// Read package.json to get version
|
|
const packageJson = JSON.parse(fs.readFileSync(path.resolve(__dirname, '../package.json'), 'utf8'));
|
|
const version = packageJson.version;
|
|
|
|
const config = {
|
|
packageDir: path.resolve(__dirname, '..'), // packages/browser
|
|
apiJsonPath: path.resolve(__dirname, '../docs/@hanzo/insights.api.json'),
|
|
outputPath: path.resolve(__dirname, `../references/insights-references-${version}.json`),
|
|
version: version,
|
|
id: '@hanzo/insights',
|
|
hogRef: HOG_REF,
|
|
specInfo: {
|
|
id: '@hanzo/insights',
|
|
title: 'Insights JavaScript Web SDK',
|
|
description: 'Insights-js allows you to automatically capture usage and send events to Insights.',
|
|
slugPrefix: '@hanzo/insights',
|
|
specUrl: 'https://github.com/Insights/@hanzo/insights'
|
|
},
|
|
typeExamples: {
|
|
Properties: PROPERTIES_EXAMPLE,
|
|
Property: PROPERTY_EXAMPLE
|
|
},
|
|
parentClass: 'Insights'
|
|
};
|
|
|
|
// Ensure references directory exists
|
|
const referencesDir = path.resolve(__dirname, '../references');
|
|
if (!fs.existsSync(referencesDir)) {
|
|
fs.mkdirSync(referencesDir, { recursive: true });
|
|
}
|
|
|
|
// Generate versioned file
|
|
const output = generateApiSpecs(config);
|
|
|
|
// Write versioned file
|
|
const versionedPath = path.resolve(__dirname, `../references/insights-references-${version}.json`);
|
|
fs.writeFileSync(versionedPath, JSON.stringify(output, null, 2));
|
|
|
|
// Copy to latest file
|
|
const latestPath = path.resolve(__dirname, '../references/insights-references-latest.json');
|
|
fs.writeFileSync(latestPath, JSON.stringify(output, null, 2)); |