mirror of
https://github.com/tabler/tabler.git
synced 2025-12-21 17:34:25 +04:00
init posthog stats
This commit is contained in:
@@ -261,6 +261,10 @@ export default function (eleventyConfig) {
|
||||
eleventyConfig.addGlobalData("environment", environment);
|
||||
eleventyConfig.addGlobalData("package", pkg);
|
||||
eleventyConfig.addGlobalData("cdnUrl", `https://cdn.jsdelivr.net/npm/@tabler/core@${pkg.version}`);
|
||||
|
||||
// PostHog Analytics Environment Variables
|
||||
eleventyConfig.addGlobalData("posthogApiKey", process.env.POSTHOG_API_KEY || "");
|
||||
eleventyConfig.addGlobalData("posthogHost", process.env.POSTHOG_HOST || "https://us.i.posthog.com");
|
||||
|
||||
const data = {
|
||||
iconsCount: () => 123,
|
||||
|
||||
@@ -32,6 +32,10 @@ export default function (eleventyConfig) {
|
||||
eleventyConfig.addGlobalData("environment", environment);
|
||||
eleventyConfig.addGlobalData("readme", readFileSync(join("..", "README.md"), "utf-8"));
|
||||
eleventyConfig.addGlobalData("license", readFileSync(join("..", "LICENSE"), "utf-8"));
|
||||
|
||||
// PostHog Analytics Environment Variables
|
||||
eleventyConfig.addGlobalData("posthogApiKey", process.env.NEXT_PUBLIC_POSTHOG_KEY);
|
||||
eleventyConfig.addGlobalData("posthogHost", process.env.NEXT_PUBLIC_POSTHOG_HOST);
|
||||
|
||||
eleventyConfig.addGlobalData("pages", () => {
|
||||
return sync('pages/**/*.html').filter((file) => {
|
||||
|
||||
@@ -1 +1,29 @@
|
||||
<script defer data-api="/stats/event" data-domain="preview.tabler.io" src="/stats/js/script.js"></script>
|
||||
<script defer data-api="/stats/event" data-domain="preview.tabler.io" src="/stats/js/script.js"></script>
|
||||
|
||||
{% if posthogApiKey %}
|
||||
<script>
|
||||
/**
|
||||
* PostHog Analytics
|
||||
*
|
||||
* This script is used to track user interactions and page views.
|
||||
* It is only for demo purposes. Don't use it in production.
|
||||
*
|
||||
*/
|
||||
!function (t, e) { var o, n, p, r; e.__SV || (window.posthog = e, e._i = [], e.init = function (i, s, a) { function g(t, e) { var o = e.split("."); 2 == o.length && (t = t[o[0]], e = o[1]), t[e] = function () { t.push([e].concat(Array.prototype.slice.call(arguments, 0))) } } (p = t.createElement("script")).type = "text/javascript", p.crossOrigin = "anonymous", p.async = !0, p.src = s.api_host.replace(".i.posthog.com", "-assets.i.posthog.com") + "/static/array.js", (r = t.getElementsByTagName("script")[0]).parentNode.insertBefore(p, r); var u = e; for (void 0 !== a ? u = e[a] = [] : a = "posthog", u.people = u.people || [], u.toString = function (t) { var e = "posthog"; return "posthog" !== a && (e += "." + a), t || (e += " (stub)"), e }, u.people.toString = function () { return u.toString(1) + ".people (stub)" }, o = "init capture register register_once register_for_session unregister unregister_for_session getFeatureFlag getFeatureFlagPayload isFeatureEnabled reloadFeatureFlags updateEarlyAccessFeatureEnrollment getEarlyAccessFeatures on onFeatureFlags onSessionId getSurveys getActiveMatchingSurveys renderSurvey canRenderSurvey getNextSurveyStep identify setPersonProperties group resetGroups setPersonPropertiesForFlags resetPersonPropertiesForFlags setGroupPropertiesForFlags resetGroupPropertiesForFlags reset get_distinct_id getGroups get_session_id get_session_replay_url alias set_config startSessionRecording stopSessionRecording sessionRecordingStarted captureException loadToolbar get_property getSessionProperty createPersonProfile opt_in_capturing opt_out_capturing has_opted_in_capturing has_opted_out_capturing clear_opt_in_out_capturing debug".split(" "), n = 0; n < o.length; n++)g(u, o[n]); e._i.push([i, s, a]) }, e.__SV = 1) }(document, window.posthog || []);
|
||||
|
||||
// Only initialize PostHog on allowed domains
|
||||
const currentDomain = window.location.hostname;
|
||||
|
||||
if (['docs.tabler.io', 'preview.tabler.io'].includes(currentDomain)) {
|
||||
posthog.init('{{ posthogApiKey }}', {
|
||||
api_host: '{{ posthogHost }}',
|
||||
person_profiles: 'identified_only',
|
||||
capture_pageview: true,
|
||||
capture_pageleave: true,
|
||||
loaded: function (posthog) {
|
||||
console.log('PostHog initialized on', currentDomain);
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
{% endif %}
|
||||
@@ -1,7 +1,9 @@
|
||||
{
|
||||
"$schema": "https://turbo.build/schema.json",
|
||||
"globalEnv": [
|
||||
"NODE_ENV"
|
||||
"NODE_ENV",
|
||||
"NEXT_PUBLIC_POSTHOG_KEY",
|
||||
"NEXT_PUBLIC_POSTHOG_HOST"
|
||||
],
|
||||
"tasks": {
|
||||
"build": {
|
||||
|
||||
Reference in New Issue
Block a user