@siteline/core 1.0.6 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -48,10 +48,10 @@ new Siteline(config: SitelineConfig)
48
48
 
49
49
  **Configuration Options:**
50
50
 
51
- | Option | Type | Required | Description |
52
- |--------|------|----------|-------------|
53
- | `websiteKey` | `string` | Yes | Your Siteline website key |
54
- | `endpoint` | `string` | No | Custom API endpoint (default: https://api.siteline.ai/v1/intake/pageview) |
51
+ | Option | Type | Required | Description |
52
+ |--------|------|----------|---------------------------------------|
53
+ | `websiteKey` | `string` | Yes | Your Siteline website key |
54
+ | `endpoint` | `string` | No | Custom API endpoint |
55
55
  | `debug` | `boolean` | No | Enable debug logging (default: false) |
56
56
 
57
57
  ### track()
@@ -80,14 +80,13 @@ For framework-specific integrations with automatic tracking:
80
80
 
81
81
  ## Documentation
82
82
 
83
- - [Full Documentation](https://docs.gptrends.io/agent-analytics)
84
- - [API Reference](https://api.siteline.ai/docs)
85
- - [GitHub Repository](https://github.com/siteline-ai/siteline-sdk-js)
83
+ - [Full Documentation](https://docs.gptrends.io/integrations/javascript)
84
+ - [GitHub Repository](https://github.com/siteline-ai/siteline-js-sdk)
86
85
 
87
86
  ## Support
88
87
 
89
- - [GitHub Issues](https://github.com/siteline-ai/siteline-sdk-js/issues)
90
- - Email: support@siteline.ai
88
+ - [GitHub Issues](https://github.com/siteline-ai/siteline-js-sdk/issues)
89
+ - Email: team@siteline.ai
91
90
 
92
91
  ## License
93
92
 
@@ -1,8 +1,7 @@
1
- export declare const DEFAULT_ENDPOINT = "https://api.gptrends.io/v1/intake/pageview";
2
- export declare const DEFAULT_SDK_NAME = "@siteline/core";
3
- export declare const DEFAULT_SDK_VERSION = "1.0.6";
4
- export declare const DEFAULT_INTEGRATION_TYPE = "custom";
5
- export declare const WEBSITEKEY_PATTERN: RegExp;
1
+ export declare const DEFAULT_ENDPOINT = "https://api.siteline.ai/v1/intake/pageview";
2
+ export declare const DEFAULT_SDK_NAME = "@siteline/js";
3
+ export declare const DEFAULT_SDK_VERSION = "1.0.8";
4
+ export declare const DEFAULT_INTEGRATION_TYPE = "js";
6
5
  export declare const LIMITS: {
7
6
  readonly URL_MAX_LENGTH: 2048;
8
7
  readonly METHOD_MAX_LENGTH: 10;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,+CAA+C,CAAC;AAC7E,eAAO,MAAM,gBAAgB,mBAAmB,CAAC;AACjD,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAC3C,eAAO,MAAM,wBAAwB,WAAW,CAAC;AAEjD,eAAO,MAAM,kBAAkB,QAAwC,CAAC;AAExE,eAAO,MAAM,MAAM;;;;;;;;;;;;;CAaT,CAAC;AAEX,eAAO,MAAM,UAAU,OAAO,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,+CAA+C,CAAC;AAC7E,eAAO,MAAM,gBAAgB,iBAAiB,CAAC;AAC/C,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAC3C,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAE7C,eAAO,MAAM,MAAM;;;;;;;;;;;;;CAaT,CAAC;AAEX,eAAO,MAAM,UAAU,OAAO,CAAC"}
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";class e extends Error{constructor(e){super(e),this.name="SitelineError"}}class t extends e{constructor(e){super(e),this.name="SitelineValidationError"}}const i=/^(siteline_secret|gptrends_secret)_/;exports.Siteline=class{constructor(e){if(!e.websiteKey?.match(i))throw new t("Invalid websiteKey format. Expected: siteline_secret_<32 hex chars>");this.key=e.websiteKey,this.endpoint=e.endpoint||"https://api.gptrends.io/v1/intake/pageview",this.debug=e.debug||!1,this.sdk=e.sdk||"@siteline/core",this.sdkVersion=e.sdkVersion||"1.0.6",this.integrationType=e.integrationType||"custom",this.debug&&console.log("[Siteline] Siteline initialized")}async track(e){const t=this.sanitize(e);try{return await this.send(t)}catch(e){this.debug&&console.error("[Siteline] Track failed:",e.message)}}sanitize(e){return{websiteKey:this.key,url:(e.url+"").slice(0,2048),method:(e.method+"").toUpperCase().slice(0,10),status:Math.max(0,Math.min(999,Number(e.status)||0)),duration:Math.max(0,Math.min(3e5,Number(e.duration)||0)),userAgent:e.userAgent?(e.userAgent+"").slice(0,512):null,ref:e.ref?(e.ref+"").slice(0,2048):null,ip:e.ip?(e.ip+"").slice(0,45):null,integrationType:this.integrationType.slice(0,50),sdk:this.sdk.slice(0,50),sdkVersion:this.sdkVersion.slice(0,20)}}async send(e){const t=new AbortController,i=setTimeout(()=>t.abort(),5e3);try{const i=await fetch(this.endpoint,{method:"POST",headers:{"Content-Type":"application/json","User-Agent":`${this.sdk}/${this.sdkVersion}`},body:JSON.stringify(e),signal:t.signal});this.debug&&(i.ok?console.log("[Siteline] Tracked:",e.url,{endpoint:this.endpoint,sdk:this.sdk,sdkVersion:this.sdkVersion,integrationType:this.integrationType}):console.error("[Siteline] HTTP error:",i.status))}catch(e){this.debug&&console.error("[Siteline] Network error:",e.message)}finally{clearTimeout(i)}}},exports.SitelineError=e,exports.SitelineTransportError=class extends e{constructor(e){super(e),this.name="SitelineTransportError"}},exports.SitelineValidationError=t;
1
+ "use strict";class e extends Error{constructor(e){super(e),this.name="SitelineError"}}class t extends e{constructor(e){super(e),this.name="SitelineValidationError"}}exports.Siteline=class{constructor(e){if(!e.websiteKey)throw new t("[Siteline] Missing websiteKey.");this.key=e.websiteKey,this.endpoint=e.endpoint||"https://api.siteline.ai/v1/intake/pageview",this.debug=e.debug||!1,this.sdk=e.sdk||"@siteline/js",this.sdkVersion=e.sdkVersion||"1.0.8",this.integrationType=e.integrationType||"js",this.debug&&console.log("[Siteline] Siteline initialized")}async track(e){const t=this.sanitize(e);try{return await this.send(t)}catch(e){this.debug&&console.error("[Siteline] Track failed:",e.message)}}sanitize(e){return{websiteKey:this.key,url:(e.url+"").slice(0,2048),method:(e.method+"").toUpperCase().slice(0,10),status:Math.max(0,Math.min(999,Number(e.status)||0)),duration:Math.max(0,Math.min(3e5,Number(e.duration)||0)),userAgent:e.userAgent?(e.userAgent+"").slice(0,512):null,ref:e.ref?(e.ref+"").slice(0,2048):null,ip:e.ip?(e.ip+"").slice(0,45):null,integrationType:this.integrationType.slice(0,50),sdk:this.sdk.slice(0,50),sdkVersion:this.sdkVersion.slice(0,20)}}async send(e){const t=new AbortController,i=setTimeout(()=>t.abort(),5e3);try{const i=await fetch(this.endpoint,{method:"POST",headers:{"Content-Type":"application/json","User-Agent":`${this.sdk}/${this.sdkVersion}`},body:JSON.stringify(e),signal:t.signal});this.debug&&(i.ok?console.log("[Siteline] Tracked:",e.url,{endpoint:this.endpoint,sdk:this.sdk,sdkVersion:this.sdkVersion,integrationType:this.integrationType}):console.error("[Siteline] HTTP error:",i.status))}catch(e){this.debug&&console.error("[Siteline] Network error:",e.message)}finally{clearTimeout(i)}}},exports.SitelineError=e,exports.SitelineTransportError=class extends e{constructor(e){super(e),this.name="SitelineTransportError"}},exports.SitelineValidationError=t;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/errors.ts","../src/constants.ts","../src/siteline.ts"],"sourcesContent":[null,null,null],"names":["SitelineError","Error","constructor","message","super","this","name","SitelineValidationError","WEBSITEKEY_PATTERN","config","websiteKey","match","key","endpoint","debug","sdk","sdkVersion","integrationType","console","log","track","data","sanitized","sanitize","send","err","error","url","String","slice","method","toUpperCase","status","Math","max","min","Number","duration","userAgent","ref","ip","controller","AbortController","timeout","setTimeout","abort","res","fetch","headers","body","JSON","stringify","signal","ok","clearTimeout"],"mappings":"aAAM,MAAOA,UAAsBC,MACjC,WAAAC,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,eACd,EAGI,MAAOC,UAAgCP,EAC3C,WAAAE,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,yBACd,ECXK,MAKME,EAAqB,6DCehC,WAAAN,CAAYO,GACV,IAAKA,EAAOC,YAAYC,MAAMH,GAC5B,MAAM,IAAID,EACR,uEAIJF,KAAKO,IAAMH,EAAOC,WAClBL,KAAKQ,SAAWJ,EAAOI,UD5BK,6CC6B5BR,KAAKS,MAAQL,EAAOK,QAAS,EAC7BT,KAAKU,IAAMN,EAAOM,KD7BU,iBC8B5BV,KAAKW,WAAaP,EAAOO,YD7BM,QC8B/BX,KAAKY,gBAAkBR,EAAOQ,iBD7BM,SC+BhCZ,KAAKS,OACPI,QAAQC,IAAI,kCAEhB,CAEA,WAAMC,CAAMC,GACV,MAAMC,EAAYjB,KAAKkB,SAASF,GAEhC,IACE,aAAahB,KAAKmB,KAAKF,EACzB,CAAE,MAAOG,GACHpB,KAAKS,OAEPI,QAAQQ,MAAM,2BADAD,EACkCtB,QAEpD,CACF,CAEQ,QAAAoB,CAASF,GACf,MAAO,CACLX,WAAYL,KAAKO,IACjBe,KAAYN,EAAKM,IAAZC,IAAiBC,MAAM,ED/ChB,MCgDZC,QAAeT,EAAKS,OAAZF,IAAoBG,cAAcF,MAAM,ED/CjC,ICgDfG,OAAQC,KAAKC,IDzCL,ECyC4BD,KAAKE,IDxCjC,ICwCwDC,OAAOf,EAAKW,SAAW,IACvFK,SAAUJ,KAAKC,IDxCL,ECwC8BD,KAAKE,IDvCnC,ICuC4DC,OAAOf,EAAKgB,WAAa,IAC/FC,UAAWjB,EAAKiB,WAAmBjB,EAAKiB,UAAZV,IAAuBC,MAAM,EDjDtC,KCiDyE,KAC5FU,IAAKlB,EAAKkB,KAAalB,EAAKkB,IAAZX,IAAiBC,MAAM,EDjD3B,MCiDuD,KACnEW,GAAInB,EAAKmB,IAAYnB,EAAKmB,GAAZZ,IAAgBC,MAAM,EDjDzB,ICiDoD,KAC/DZ,gBAAiBZ,KAAKY,gBAAgBY,MAAM,EDjDnB,ICkDzBd,IAAKV,KAAKU,IAAIc,MAAM,EDjDR,ICkDZb,WAAYX,KAAKW,WAAWa,MAAM,EDjDd,ICmDxB,CAEQ,UAAML,CAAKH,GACjB,MAAMoB,EAAa,IAAIC,gBACjBC,EAAUC,WAAW,IAAMH,EAAWI,QDhDtB,KCkDtB,IACE,MAAMC,QAAYC,MAAM1C,KAAKQ,SAAU,CACrCiB,OAAQ,OACRkB,QAAS,CACP,eAAgB,mBAChB,aAAc,GAAG3C,KAAKU,OAAOV,KAAKW,cAEpCiC,KAAMC,KAAKC,UAAU9B,GACrB+B,OAAQX,EAAWW,SAGjB/C,KAAKS,QACHgC,EAAIO,GACNnC,QAAQC,IAAI,sBAAuBE,EAAKM,IAAK,CAC3Cd,SAAUR,KAAKQ,SACfE,IAAKV,KAAKU,IACVC,WAAYX,KAAKW,WACjBC,gBAAiBZ,KAAKY,kBAGxBC,QAAQQ,MAAM,yBAA0BoB,EAAId,QAGlD,CAAE,MAAOP,GACHpB,KAAKS,OAEPI,QAAQQ,MAAM,4BADAD,EACmCtB,QAErD,SACEmD,aAAaX,EACf,CACF,0DFzFI,cAAsC3C,EAC1C,WAAAE,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,wBACd"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/errors.ts","../src/siteline.ts","../src/constants.ts"],"sourcesContent":[null,null,null],"names":["SitelineError","Error","constructor","message","super","this","name","SitelineValidationError","config","websiteKey","key","endpoint","debug","sdk","sdkVersion","integrationType","console","log","track","data","sanitized","sanitize","send","err","error","url","String","slice","method","toUpperCase","status","Math","max","min","Number","duration","userAgent","ref","ip","controller","AbortController","timeout","setTimeout","abort","res","fetch","headers","body","JSON","stringify","signal","ok","clearTimeout"],"mappings":"aAAM,MAAOA,UAAsBC,MACjC,WAAAC,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,eACd,EAGI,MAAOC,UAAgCP,EAC3C,WAAAE,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,yBACd,yBCQA,WAAAJ,CAAYM,GACV,IAAKA,EAAOC,WACV,MAAM,IAAIF,EAAwB,kCAGpCF,KAAKK,IAAMF,EAAOC,WAClBJ,KAAKM,SAAWH,EAAOG,UCzBK,6CD0B5BN,KAAKO,MAAQJ,EAAOI,QAAS,EAC7BP,KAAKQ,IAAML,EAAOK,KC1BU,eD2B5BR,KAAKS,WAAaN,EAAOM,YC1BM,QD2B/BT,KAAKU,gBAAkBP,EAAOO,iBC1BM,KD4BhCV,KAAKO,OACPI,QAAQC,IAAI,kCAEhB,CAEA,WAAMC,CAAMC,GACV,MAAMC,EAAYf,KAAKgB,SAASF,GAEhC,IACE,aAAad,KAAKiB,KAAKF,EACzB,CAAE,MAAOG,GACHlB,KAAKO,OAEPI,QAAQQ,MAAM,2BADAD,EACkCpB,QAEpD,CACF,CAEQ,QAAAkB,CAASF,GACf,MAAO,CACLV,WAAYJ,KAAKK,IACjBe,KAAYN,EAAKM,IAAZC,IAAiBC,MAAM,EC9ChB,MD+CZC,QAAeT,EAAKS,OAAZF,IAAoBG,cAAcF,MAAM,EC9CjC,ID+CfG,OAAQC,KAAKC,ICxCL,EDwC4BD,KAAKE,ICvCjC,IDuCwDC,OAAOf,EAAKW,SAAW,IACvFK,SAAUJ,KAAKC,ICvCL,EDuC8BD,KAAKE,ICtCnC,IDsC4DC,OAAOf,EAAKgB,WAAa,IAC/FC,UAAWjB,EAAKiB,WAAmBjB,EAAKiB,UAAZV,IAAuBC,MAAM,EChDtC,KDgDyE,KAC5FU,IAAKlB,EAAKkB,KAAalB,EAAKkB,IAAZX,IAAiBC,MAAM,EChD3B,MDgDuD,KACnEW,GAAInB,EAAKmB,IAAYnB,EAAKmB,GAAZZ,IAAgBC,MAAM,EChDzB,IDgDoD,KAC/DZ,gBAAiBV,KAAKU,gBAAgBY,MAAM,EChDnB,IDiDzBd,IAAKR,KAAKQ,IAAIc,MAAM,EChDR,IDiDZb,WAAYT,KAAKS,WAAWa,MAAM,EChDd,IDkDxB,CAEQ,UAAML,CAAKH,GACjB,MAAMoB,EAAa,IAAIC,gBACjBC,EAAUC,WAAW,IAAMH,EAAWI,QC/CtB,KDiDtB,IACE,MAAMC,QAAYC,MAAMxC,KAAKM,SAAU,CACrCiB,OAAQ,OACRkB,QAAS,CACP,eAAgB,mBAChB,aAAc,GAAGzC,KAAKQ,OAAOR,KAAKS,cAEpCiC,KAAMC,KAAKC,UAAU9B,GACrB+B,OAAQX,EAAWW,SAGjB7C,KAAKO,QACHgC,EAAIO,GACNnC,QAAQC,IAAI,sBAAuBE,EAAKM,IAAK,CAC3Cd,SAAUN,KAAKM,SACfE,IAAKR,KAAKQ,IACVC,WAAYT,KAAKS,WACjBC,gBAAiBV,KAAKU,kBAGxBC,QAAQQ,MAAM,yBAA0BoB,EAAId,QAGlD,CAAE,MAAOP,GACHlB,KAAKO,OAEPI,QAAQQ,MAAM,4BADAD,EACmCpB,QAErD,SACEiD,aAAaX,EACf,CACF,0DDtFI,cAAsCzC,EAC1C,WAAAE,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,wBACd"}
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- class e extends Error{constructor(e){super(e),this.name="SitelineError"}}class t extends e{constructor(e){super(e),this.name="SitelineValidationError"}}class s extends e{constructor(e){super(e),this.name="SitelineTransportError"}}const i=/^(siteline_secret|gptrends_secret)_/;class n{constructor(e){if(!e.websiteKey?.match(i))throw new t("Invalid websiteKey format. Expected: siteline_secret_<32 hex chars>");this.key=e.websiteKey,this.endpoint=e.endpoint||"https://api.gptrends.io/v1/intake/pageview",this.debug=e.debug||!1,this.sdk=e.sdk||"@siteline/core",this.sdkVersion=e.sdkVersion||"1.0.6",this.integrationType=e.integrationType||"custom",this.debug&&console.log("[Siteline] Siteline initialized")}async track(e){const t=this.sanitize(e);try{return await this.send(t)}catch(e){this.debug&&console.error("[Siteline] Track failed:",e.message)}}sanitize(e){return{websiteKey:this.key,url:(e.url+"").slice(0,2048),method:(e.method+"").toUpperCase().slice(0,10),status:Math.max(0,Math.min(999,Number(e.status)||0)),duration:Math.max(0,Math.min(3e5,Number(e.duration)||0)),userAgent:e.userAgent?(e.userAgent+"").slice(0,512):null,ref:e.ref?(e.ref+"").slice(0,2048):null,ip:e.ip?(e.ip+"").slice(0,45):null,integrationType:this.integrationType.slice(0,50),sdk:this.sdk.slice(0,50),sdkVersion:this.sdkVersion.slice(0,20)}}async send(e){const t=new AbortController,s=setTimeout(()=>t.abort(),5e3);try{const s=await fetch(this.endpoint,{method:"POST",headers:{"Content-Type":"application/json","User-Agent":`${this.sdk}/${this.sdkVersion}`},body:JSON.stringify(e),signal:t.signal});this.debug&&(s.ok?console.log("[Siteline] Tracked:",e.url,{endpoint:this.endpoint,sdk:this.sdk,sdkVersion:this.sdkVersion,integrationType:this.integrationType}):console.error("[Siteline] HTTP error:",s.status))}catch(e){this.debug&&console.error("[Siteline] Network error:",e.message)}finally{clearTimeout(s)}}}export{n as Siteline,e as SitelineError,s as SitelineTransportError,t as SitelineValidationError};
1
+ class e extends Error{constructor(e){super(e),this.name="SitelineError"}}class t extends e{constructor(e){super(e),this.name="SitelineValidationError"}}class i extends e{constructor(e){super(e),this.name="SitelineTransportError"}}class s{constructor(e){if(!e.websiteKey)throw new t("[Siteline] Missing websiteKey.");this.key=e.websiteKey,this.endpoint=e.endpoint||"https://api.siteline.ai/v1/intake/pageview",this.debug=e.debug||!1,this.sdk=e.sdk||"@siteline/js",this.sdkVersion=e.sdkVersion||"1.0.8",this.integrationType=e.integrationType||"js",this.debug&&console.log("[Siteline] Siteline initialized")}async track(e){const t=this.sanitize(e);try{return await this.send(t)}catch(e){this.debug&&console.error("[Siteline] Track failed:",e.message)}}sanitize(e){return{websiteKey:this.key,url:(e.url+"").slice(0,2048),method:(e.method+"").toUpperCase().slice(0,10),status:Math.max(0,Math.min(999,Number(e.status)||0)),duration:Math.max(0,Math.min(3e5,Number(e.duration)||0)),userAgent:e.userAgent?(e.userAgent+"").slice(0,512):null,ref:e.ref?(e.ref+"").slice(0,2048):null,ip:e.ip?(e.ip+"").slice(0,45):null,integrationType:this.integrationType.slice(0,50),sdk:this.sdk.slice(0,50),sdkVersion:this.sdkVersion.slice(0,20)}}async send(e){const t=new AbortController,i=setTimeout(()=>t.abort(),5e3);try{const i=await fetch(this.endpoint,{method:"POST",headers:{"Content-Type":"application/json","User-Agent":`${this.sdk}/${this.sdkVersion}`},body:JSON.stringify(e),signal:t.signal});this.debug&&(i.ok?console.log("[Siteline] Tracked:",e.url,{endpoint:this.endpoint,sdk:this.sdk,sdkVersion:this.sdkVersion,integrationType:this.integrationType}):console.error("[Siteline] HTTP error:",i.status))}catch(e){this.debug&&console.error("[Siteline] Network error:",e.message)}finally{clearTimeout(i)}}}export{s as Siteline,e as SitelineError,i as SitelineTransportError,t as SitelineValidationError};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/errors.ts","../src/constants.ts","../src/siteline.ts"],"sourcesContent":[null,null,null],"names":["SitelineError","Error","constructor","message","super","this","name","SitelineValidationError","SitelineTransportError","WEBSITEKEY_PATTERN","Siteline","config","websiteKey","match","key","endpoint","debug","sdk","sdkVersion","integrationType","console","log","track","data","sanitized","sanitize","send","err","error","url","String","slice","method","toUpperCase","status","Math","max","min","Number","duration","userAgent","ref","ip","controller","AbortController","timeout","setTimeout","abort","res","fetch","headers","body","JSON","stringify","signal","ok","clearTimeout"],"mappings":"AAAM,MAAOA,UAAsBC,MACjC,WAAAC,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,eACd,EAGI,MAAOC,UAAgCP,EAC3C,WAAAE,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,yBACd,EAGI,MAAOE,UAA+BR,EAC1C,WAAAE,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,wBACd,EClBK,MAKMG,EAAqB,4CCOrBC,EAQX,WAAAR,CAAYS,GACV,IAAKA,EAAOC,YAAYC,MAAMJ,GAC5B,MAAM,IAAIF,EACR,uEAIJF,KAAKS,IAAMH,EAAOC,WAClBP,KAAKU,SAAWJ,EAAOI,UD5BK,6CC6B5BV,KAAKW,MAAQL,EAAOK,QAAS,EAC7BX,KAAKY,IAAMN,EAAOM,KD7BU,iBC8B5BZ,KAAKa,WAAaP,EAAOO,YD7BM,QC8B/Bb,KAAKc,gBAAkBR,EAAOQ,iBD7BM,SC+BhCd,KAAKW,OACPI,QAAQC,IAAI,kCAEhB,CAEA,WAAMC,CAAMC,GACV,MAAMC,EAAYnB,KAAKoB,SAASF,GAEhC,IACE,aAAalB,KAAKqB,KAAKF,EACzB,CAAE,MAAOG,GACHtB,KAAKW,OAEPI,QAAQQ,MAAM,2BADAD,EACkCxB,QAEpD,CACF,CAEQ,QAAAsB,CAASF,GACf,MAAO,CACLX,WAAYP,KAAKS,IACjBe,KAAYN,EAAKM,IAAZC,IAAiBC,MAAM,ED/ChB,MCgDZC,QAAeT,EAAKS,OAAZF,IAAoBG,cAAcF,MAAM,ED/CjC,ICgDfG,OAAQC,KAAKC,IDzCL,ECyC4BD,KAAKE,IDxCjC,ICwCwDC,OAAOf,EAAKW,SAAW,IACvFK,SAAUJ,KAAKC,IDxCL,ECwC8BD,KAAKE,IDvCnC,ICuC4DC,OAAOf,EAAKgB,WAAa,IAC/FC,UAAWjB,EAAKiB,WAAmBjB,EAAKiB,UAAZV,IAAuBC,MAAM,EDjDtC,KCiDyE,KAC5FU,IAAKlB,EAAKkB,KAAalB,EAAKkB,IAAZX,IAAiBC,MAAM,EDjD3B,MCiDuD,KACnEW,GAAInB,EAAKmB,IAAYnB,EAAKmB,GAAZZ,IAAgBC,MAAM,EDjDzB,ICiDoD,KAC/DZ,gBAAiBd,KAAKc,gBAAgBY,MAAM,EDjDnB,ICkDzBd,IAAKZ,KAAKY,IAAIc,MAAM,EDjDR,ICkDZb,WAAYb,KAAKa,WAAWa,MAAM,EDjDd,ICmDxB,CAEQ,UAAML,CAAKH,GACjB,MAAMoB,EAAa,IAAIC,gBACjBC,EAAUC,WAAW,IAAMH,EAAWI,QDhDtB,KCkDtB,IACE,MAAMC,QAAYC,MAAM5C,KAAKU,SAAU,CACrCiB,OAAQ,OACRkB,QAAS,CACP,eAAgB,mBAChB,aAAc,GAAG7C,KAAKY,OAAOZ,KAAKa,cAEpCiC,KAAMC,KAAKC,UAAU9B,GACrB+B,OAAQX,EAAWW,SAGjBjD,KAAKW,QACHgC,EAAIO,GACNnC,QAAQC,IAAI,sBAAuBE,EAAKM,IAAK,CAC3Cd,SAAUV,KAAKU,SACfE,IAAKZ,KAAKY,IACVC,WAAYb,KAAKa,WACjBC,gBAAiBd,KAAKc,kBAGxBC,QAAQQ,MAAM,yBAA0BoB,EAAId,QAGlD,CAAE,MAAOP,GACHtB,KAAKW,OAEPI,QAAQQ,MAAM,4BADAD,EACmCxB,QAErD,SACEqD,aAAaX,EACf,CACF"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/errors.ts","../src/siteline.ts","../src/constants.ts"],"sourcesContent":[null,null,null],"names":["SitelineError","Error","constructor","message","super","this","name","SitelineValidationError","SitelineTransportError","Siteline","config","websiteKey","key","endpoint","debug","sdk","sdkVersion","integrationType","console","log","track","data","sanitized","sanitize","send","err","error","url","String","slice","method","toUpperCase","status","Math","max","min","Number","duration","userAgent","ref","ip","controller","AbortController","timeout","setTimeout","abort","res","fetch","headers","body","JSON","stringify","signal","ok","clearTimeout"],"mappings":"AAAM,MAAOA,UAAsBC,MACjC,WAAAC,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,eACd,EAGI,MAAOC,UAAgCP,EAC3C,WAAAE,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,yBACd,EAGI,MAAOE,UAA+BR,EAC1C,WAAAE,CAAYC,GACVC,MAAMD,GACNE,KAAKC,KAAO,wBACd,QCPWG,EAQX,WAAAP,CAAYQ,GACV,IAAKA,EAAOC,WACV,MAAM,IAAIJ,EAAwB,kCAGpCF,KAAKO,IAAMF,EAAOC,WAClBN,KAAKQ,SAAWH,EAAOG,UCzBK,6CD0B5BR,KAAKS,MAAQJ,EAAOI,QAAS,EAC7BT,KAAKU,IAAML,EAAOK,KC1BU,eD2B5BV,KAAKW,WAAaN,EAAOM,YC1BM,QD2B/BX,KAAKY,gBAAkBP,EAAOO,iBC1BM,KD4BhCZ,KAAKS,OACPI,QAAQC,IAAI,kCAEhB,CAEA,WAAMC,CAAMC,GACV,MAAMC,EAAYjB,KAAKkB,SAASF,GAEhC,IACE,aAAahB,KAAKmB,KAAKF,EACzB,CAAE,MAAOG,GACHpB,KAAKS,OAEPI,QAAQQ,MAAM,2BADAD,EACkCtB,QAEpD,CACF,CAEQ,QAAAoB,CAASF,GACf,MAAO,CACLV,WAAYN,KAAKO,IACjBe,KAAYN,EAAKM,IAAZC,IAAiBC,MAAM,EC9ChB,MD+CZC,QAAeT,EAAKS,OAAZF,IAAoBG,cAAcF,MAAM,EC9CjC,ID+CfG,OAAQC,KAAKC,ICxCL,EDwC4BD,KAAKE,ICvCjC,IDuCwDC,OAAOf,EAAKW,SAAW,IACvFK,SAAUJ,KAAKC,ICvCL,EDuC8BD,KAAKE,ICtCnC,IDsC4DC,OAAOf,EAAKgB,WAAa,IAC/FC,UAAWjB,EAAKiB,WAAmBjB,EAAKiB,UAAZV,IAAuBC,MAAM,EChDtC,KDgDyE,KAC5FU,IAAKlB,EAAKkB,KAAalB,EAAKkB,IAAZX,IAAiBC,MAAM,EChD3B,MDgDuD,KACnEW,GAAInB,EAAKmB,IAAYnB,EAAKmB,GAAZZ,IAAgBC,MAAM,EChDzB,IDgDoD,KAC/DZ,gBAAiBZ,KAAKY,gBAAgBY,MAAM,EChDnB,IDiDzBd,IAAKV,KAAKU,IAAIc,MAAM,EChDR,IDiDZb,WAAYX,KAAKW,WAAWa,MAAM,EChDd,IDkDxB,CAEQ,UAAML,CAAKH,GACjB,MAAMoB,EAAa,IAAIC,gBACjBC,EAAUC,WAAW,IAAMH,EAAWI,QC/CtB,KDiDtB,IACE,MAAMC,QAAYC,MAAM1C,KAAKQ,SAAU,CACrCiB,OAAQ,OACRkB,QAAS,CACP,eAAgB,mBAChB,aAAc,GAAG3C,KAAKU,OAAOV,KAAKW,cAEpCiC,KAAMC,KAAKC,UAAU9B,GACrB+B,OAAQX,EAAWW,SAGjB/C,KAAKS,QACHgC,EAAIO,GACNnC,QAAQC,IAAI,sBAAuBE,EAAKM,IAAK,CAC3Cd,SAAUR,KAAKQ,SACfE,IAAKV,KAAKU,IACVC,WAAYX,KAAKW,WACjBC,gBAAiBZ,KAAKY,kBAGxBC,QAAQQ,MAAM,yBAA0BoB,EAAId,QAGlD,CAAE,MAAOP,GACHpB,KAAKS,OAEPI,QAAQQ,MAAM,4BADAD,EACmCtB,QAErD,SACEmD,aAAaX,EACf,CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"siteline.d.ts","sourceRoot":"","sources":["../src/siteline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAY5D,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;gBAE7B,MAAM,EAAE,cAAc;IAmB5B,KAAK,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAa9C,OAAO,CAAC,QAAQ;YAgBF,IAAI;CAoCnB"}
1
+ {"version":3,"file":"siteline.d.ts","sourceRoot":"","sources":["../src/siteline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAW5D,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;gBAE7B,MAAM,EAAE,cAAc;IAiB5B,KAAK,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAa9C,OAAO,CAAC,QAAQ;YAgBF,IAAI;CAoCnB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@siteline/core",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "Core tracking SDK for Siteline - Agent Analytics platform for tracking AI agents, bots, and crawlers",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.mjs",
@@ -21,6 +21,8 @@
21
21
  "build": "rollup -c && tsc --emitDeclarationOnly --declaration --declarationMap --outDir dist",
22
22
  "dev": "rollup -c -w",
23
23
  "clean": "rm -rf dist",
24
+ "lint": "eslint \"src/**/*.ts\"",
25
+ "lint:fix": "eslint \"src/**/*.ts\" --fix",
24
26
  "typecheck": "tsc --noEmit",
25
27
  "test": "jest",
26
28
  "test:watch": "jest --watch",
@@ -48,17 +50,17 @@
48
50
  "analytics",
49
51
  "monitoring"
50
52
  ],
51
- "author": "Siteline <support@siteline.ai> (https://siteline.ai)",
53
+ "author": "Siteline <team@siteline.ai> (https://siteline.ai)",
52
54
  "license": "MIT",
53
55
  "repository": {
54
56
  "type": "git",
55
- "url": "git+https://github.com/siteline-ai/siteline-sdk-js.git",
57
+ "url": "git+https://github.com/siteline-ai/siteline-js-sdk.git",
56
58
  "directory": "packages/core"
57
59
  },
58
60
  "bugs": {
59
- "url": "https://github.com/siteline-ai/siteline-sdk-js/issues"
61
+ "url": "https://github.com/siteline-ai/siteline-js-sdk/issues"
60
62
  },
61
- "homepage": "https://github.com/siteline-ai/siteline-sdk-js/tree/main/packages/core#readme",
63
+ "homepage": "https://github.com/siteline-ai/siteline-js-sdk/tree/main/packages/core#readme",
62
64
  "engines": {
63
65
  "node": ">=18.0.0"
64
66
  },
package/CHANGELOG.md DELETED
@@ -1,18 +0,0 @@
1
- # @siteline/core
2
-
3
- ## 1.0.1
4
-
5
- Initial release
6
-
7
- ### Features
8
-
9
- - Core Client tracking SDK
10
- - TypeScript support with full type definitions
11
- - Automatic data sanitization and validation
12
- - HTTPS-only enforcement
13
- - Edge runtime support (Cloudflare Workers, Vercel Edge, Deno)
14
- - Node.js 18+ support
15
- - Zero runtime dependencies
16
- - ~1.6KB minified + gzipped
17
- - Configurable endpoint and debug mode
18
- - 5-second request timeout protection