{"_id":"@branrgx/umami-svelte","name":"@branrgx/umami-svelte","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@branrgx/umami-svelte","version":"1.0.0","sideEffects":["**/*.css"],"svelte":"./dist/index.js","types":"./dist/index.d.ts","type":"module","exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js"}},"peerDependencies":{"@sveltejs/kit":"^2.0.0","svelte":"^5.0.0"},"devDependencies":{"@eslint/js":"^10.0.1","@sveltejs/adapter-cloudflare":"^7.2.9","@sveltejs/kit":"^2.63.0","@sveltejs/package":"^2.5.8","@sveltejs/vite-plugin-svelte":"^7.1.2","@types/node":"^24","@types/umami-browser":"^2.18.1","eslint":"^10.4.1","eslint-config-prettier":"^10.1.8","eslint-plugin-svelte":"^3.19.0","esm-env":"^1.2.2","globals":"^17.6.0","prettier":"^3.8.3","prettier-plugin-svelte":"^4.1.0","publint":"^0.3.21","svelte":"^5.56.1","svelte-check":"^4.6.0","typescript":"^6.0.3","typescript-eslint":"^8.60.1","vite":"^8.0.16","wrangler":"^4.112.0"},"keywords":["svelte","umami","analytics","web-analytics","sveltekit"],"repository":{"type":"git","url":"git+https://github.com/branrgx/umami-svelte.git"},"author":"branrgx","bugs":{"url":"https://github.com/branrgx/umami-svelte/issues"},"scripts":{"dev":"vite dev","build":"vite build","preview":"vite preview","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","lint":"prettier --check . && eslint .","format":"prettier --write ."},"_nodeVersion":"24.18.0","_id":"@branrgx/umami-svelte@1.0.0","dist":{"integrity":"sha512-UxUBWwDCRVoip+x9zFmHDxSROVf+QL8eSmVgL3p0d+4eUgnOj/aaoItLTwUv97qy7P2OIm1VHx6vmjCZzHwknA==","shasum":"6bf0e341b1ccd8e825425591b33a62e48b2bfc76","tarball":"https://registry.npmjs.org/@branrgx/umami-svelte/-/umami-svelte-1.0.0.tgz","fileCount":15,"unpackedSize":16727,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIANQ1VMtzjmU1rAm5lCtNzSPOnFAdgTfyuvpe9tEfUfwAiBeXzcmpYuOFKVuh/py243ZD3It12Lj/EMDz2B/ry3UtA=="}]},"_npmUser":{"name":"branrgx","email":"branrgx@gmail.com"},"directories":{},"maintainers":[{"name":"branrgx","email":"branrgx@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/umami-svelte_1.0.0_1784434660915_0.9804804524379043"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-19T04:17:40.758Z","1.0.0":"2026-07-19T04:17:41.071Z","modified":"2026-07-19T04:17:41.259Z"},"maintainers":[{"name":"branrgx","email":"branrgx@gmail.com"}],"keywords":["svelte","umami","analytics","web-analytics","sveltekit"],"repository":{"type":"git","url":"git+https://github.com/branrgx/umami-svelte.git"},"author":"branrgx","bugs":{"url":"https://github.com/branrgx/umami-svelte/issues"},"readme":"# @branrgx/umami-svelte\n\nPaquete Svelte 5 para integrar [Umami Analytics](https://umami.is/) en proyectos SvelteKit.\n\nBasado en `@lukulent/svelte-umami`, adaptado a Svelte 5 runes y con tipos de `@types/umami-browser`.\n\n## Instalación\n\n```sh\npnpm add @branrgx/umami-svelte\n```\n\n## Uso básico\n\nAgregá `UmamiAnalytics` en tu `+layout.svelte` raíz:\n\n```svelte\n<script lang=\"ts\">\n\timport { UmamiAnalytics } from '@branrgx/umami-svelte';\n</script>\n\n<UmamiAnalytics\n\twebsiteID=\"tu-website-id\"\n\tsrcURL=\"https://tu-instancia.umami.is/script.js\"\n/>\n```\n\nO con variables de entorno (`.env`):\n\n```env\nPUBLIC_UMAMI_SRC=https://tu-instancia.umami.is/script.js\nPUBLIC_UMAMI_WEBSITE_ID=tu-website-id\n```\n\n```svelte\n<script lang=\"ts\">\n\timport { UmamiAnalyticsEnv } from '@branrgx/umami-svelte';\n</script>\n\n<UmamiAnalyticsEnv />\n```\n\n## API\n\n### Componentes\n\n| Componente | Descripción |\n|---|---|\n| `UmamiAnalytics` | Inicializa el tracker. Props: `websiteID`, `srcURL`, `configuration`, `overwrite` |\n| `UmamiAnalyticsEnv` | Igual que UmamiAnalytics pero lee `PUBLIC_UMAMI_SRC` y `PUBLIC_UMAMI_WEBSITE_ID` del entorno |\n| `UmamiTrackClicks` | Wrapper para trackear clicks en una sección. Prop: `name` |\n\n### Funciones\n\n| Función | Descripción |\n|---|---|\n| `trackPageView(props?)` | Trackea una vista de página manualmente |\n| `trackEvent(name, data?)` | Trackea un evento con nombre y datos opcionales |\n| `trackEventWithProperties(name, props, data?)` | Trackea un evento sobrescribiendo propiedades (url, title, etc.) |\n| `trackSession(id\\|data, sessionData?)` | Identifica la sesión con un ID único y/o datos |\n| `handleEvent` | Event handler para usar con `onclick`, `onchange`, etc. |\n\n### Estado reactivo\n\n```ts\nimport { umami, setIsEnabled } from '@branrgx/umami-svelte';\n\numami.status       // 'loaded' | 'mounted' | 'removed' | 'error' | undefined\numami.isEnabled    // boolean\nsetIsEnabled(false) // persiste en localStorage\n```\n\n### Configuración\n\n```svelte\n<UmamiAnalytics\n\twebsiteID=\"...\"\n\tsrcURL=\"...\"\n\tconfiguration={{\n\t\t'data-auto-track': false,\n\t\t'data-domains': 'misitio.com',\n\t\t'data-host-url': 'https://custom.umami.instance',\n\t\t'data-tag': 'landing-v2',\n\t\t'data-exclude-search': true,\n\t\t'data-cache': true\n\t}}\n/>\n```\n\nVer todas las opciones en [Tracker Configuration](https://umami.is/docs/tracker-configuration).\n\n## Desarrollo\n\n```sh\npnpm dev        # servidor de desarrollo\npnpm check      # type-check\npnpm build      # build de la app demo + paquete\npnpm prepack    # solo build del paquete (src/lib -> dist)\n```\n\nTodo en `src/lib` es el paquete. `src/routes` es el playground de prueba.\n\n## Publicar\n\n```sh\npnpm prepack\npnpm publish --access public\n```\n","readmeFilename":"","_rev":"1-81999a836b39944307b5c9c1b39d9743"}