@zoho_apptics/apptics-js-sdk 2.0.0-beta → 2.0.0-beta.2

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.
Files changed (236) hide show
  1. package/CHANGELOG.md +191 -21
  2. package/README.md +519 -333
  3. package/dist/apptics.esm.min.js +2 -2
  4. package/dist/apptics.esm.min.js.map +1 -1
  5. package/dist/apptics.min.js +2 -2
  6. package/dist/apptics.min.js.map +1 -1
  7. package/dist/chunks/lifecycle-C6m1W7jo.min.js +3 -0
  8. package/dist/chunks/lifecycle-C6m1W7jo.min.js.map +1 -0
  9. package/dist/chunks/send-CgUO82ne.min.js +3 -0
  10. package/dist/chunks/send-CgUO82ne.min.js.map +1 -0
  11. package/dist/cjs/core/attempts.js +1 -1
  12. package/dist/cjs/core/batch.js +2 -2
  13. package/dist/cjs/core/consent.d.ts +18 -4
  14. package/dist/cjs/core/consent.js +31 -15
  15. package/dist/cjs/core/constants.d.ts +57 -27
  16. package/dist/cjs/core/constants.js +52 -33
  17. package/dist/cjs/core/db.d.ts +12 -4
  18. package/dist/cjs/core/db.js +167 -34
  19. package/dist/cjs/core/debug.js +1 -1
  20. package/dist/cjs/core/env.d.ts +0 -3
  21. package/dist/cjs/core/env.js +1 -9
  22. package/dist/cjs/core/framework-id.d.ts +1 -1
  23. package/dist/cjs/core/framework-id.js +3 -3
  24. package/dist/cjs/core/guard.d.ts +9 -0
  25. package/dist/cjs/core/guard.js +27 -13
  26. package/dist/cjs/core/hooks.d.ts +7 -4
  27. package/dist/cjs/core/hooks.js +3 -3
  28. package/dist/cjs/core/locks.d.ts +9 -0
  29. package/dist/cjs/core/locks.js +22 -0
  30. package/dist/cjs/core/logger.d.ts +3 -4
  31. package/dist/cjs/core/logger.js +4 -40
  32. package/dist/cjs/core/state.d.ts +9 -6
  33. package/dist/cjs/core/state.js +3 -5
  34. package/dist/cjs/core/storage.d.ts +20 -5
  35. package/dist/cjs/core/storage.js +115 -20
  36. package/dist/cjs/core/stylesheet.d.ts +8 -0
  37. package/dist/cjs/core/stylesheet.js +29 -0
  38. package/dist/cjs/core/transport.d.ts +2 -0
  39. package/dist/cjs/core/transport.js +30 -18
  40. package/dist/cjs/core/utils.js +1 -1
  41. package/dist/cjs/core/validate.js +2 -2
  42. package/dist/cjs/device/appversion.d.ts +10 -6
  43. package/dist/cjs/device/appversion.js +38 -3
  44. package/dist/cjs/device/index.d.ts +28 -2
  45. package/dist/cjs/device/index.js +312 -44
  46. package/dist/cjs/engagement/api-rules.d.ts +32 -67
  47. package/dist/cjs/engagement/api-rules.js +144 -157
  48. package/dist/cjs/engagement/auto-api.js +2 -2
  49. package/dist/cjs/engagement/auto-screen.d.ts +2 -0
  50. package/dist/cjs/engagement/auto-screen.js +67 -3
  51. package/dist/cjs/engagement/defined-events.js +1 -1
  52. package/dist/cjs/engagement/send.js +12 -3
  53. package/dist/cjs/engagement/session.d.ts +29 -3
  54. package/dist/cjs/engagement/session.js +253 -26
  55. package/dist/cjs/engagement/track.d.ts +4 -4
  56. package/dist/cjs/engagement/track.js +58 -30
  57. package/dist/cjs/errors/send.js +2 -2
  58. package/dist/cjs/errors/track.d.ts +2 -1
  59. package/dist/cjs/errors/track.js +49 -7
  60. package/dist/cjs/feedback/controls.d.ts +12 -0
  61. package/dist/cjs/feedback/controls.js +104 -25
  62. package/dist/cjs/feedback/index.d.ts +8 -7
  63. package/dist/cjs/feedback/index.js +32 -13
  64. package/dist/cjs/feedback/logs.d.ts +13 -11
  65. package/dist/cjs/feedback/logs.js +57 -28
  66. package/dist/cjs/feedback/quartz.d.ts +18 -0
  67. package/dist/cjs/feedback/quartz.js +105 -0
  68. package/dist/cjs/feedback/send.d.ts +5 -2
  69. package/dist/cjs/feedback/send.js +30 -28
  70. package/dist/cjs/feedback/styles.d.ts +10 -0
  71. package/dist/cjs/feedback/styles.js +8 -0
  72. package/dist/cjs/feedback/template.d.ts +1 -1
  73. package/dist/cjs/feedback/template.js +20 -12
  74. package/dist/cjs/feedback/ui.d.ts +21 -6
  75. package/dist/cjs/feedback/ui.js +283 -70
  76. package/dist/cjs/heatmap/send.d.ts +2 -0
  77. package/dist/cjs/heatmap/send.js +3 -5
  78. package/dist/cjs/heatmap/track.d.ts +1 -1
  79. package/dist/cjs/heatmap/track.js +87 -16
  80. package/dist/cjs/index.d.ts +16 -63
  81. package/dist/cjs/index.js +144 -95
  82. package/dist/cjs/lifecycle.d.ts +21 -3
  83. package/dist/cjs/lifecycle.js +353 -89
  84. package/dist/cjs/remoteconfig/country.d.ts +4 -0
  85. package/dist/cjs/remoteconfig/country.js +73 -0
  86. package/dist/cjs/remoteconfig/custom.d.ts +7 -7
  87. package/dist/cjs/remoteconfig/custom.js +31 -51
  88. package/dist/cjs/remoteconfig/evaluate.d.ts +3 -3
  89. package/dist/cjs/remoteconfig/evaluate.js +56 -43
  90. package/dist/cjs/remoteconfig/fetch.d.ts +16 -9
  91. package/dist/cjs/remoteconfig/fetch.js +120 -39
  92. package/dist/cjs/remoteconfig/index.d.ts +19 -8
  93. package/dist/cjs/remoteconfig/index.js +81 -39
  94. package/dist/cjs/remoteconfig/store.d.ts +15 -7
  95. package/dist/cjs/remoteconfig/store.js +68 -35
  96. package/dist/cjs/remoteconfig/tz-countries.d.ts +8 -0
  97. package/dist/cjs/remoteconfig/tz-countries.js +13 -0
  98. package/dist/{esm/core → cjs/remotelog}/callsite.d.ts +11 -4
  99. package/dist/cjs/{core → remotelog}/callsite.js +30 -7
  100. package/dist/cjs/remotelog/gate.d.ts +2 -11
  101. package/dist/cjs/remotelog/gate.js +9 -35
  102. package/dist/cjs/remotelog/index.d.ts +4 -21
  103. package/dist/cjs/remotelog/logger.d.ts +11 -17
  104. package/dist/cjs/remotelog/logger.js +31 -59
  105. package/dist/cjs/remotelog/send.js +11 -11
  106. package/dist/cjs/remotelogger/index.d.ts +12 -0
  107. package/dist/cjs/remotelogger/index.js +18 -0
  108. package/dist/cjs/scheduler.d.ts +3 -1
  109. package/dist/cjs/scheduler.js +25 -22
  110. package/dist/cjs/types.d.ts +208 -90
  111. package/dist/cjs/user/index.js +16 -7
  112. package/dist/esm/core/attempts.js +1 -1
  113. package/dist/esm/core/batch.js +2 -2
  114. package/dist/esm/core/consent.d.ts +18 -4
  115. package/dist/esm/core/consent.js +32 -17
  116. package/dist/esm/core/constants.d.ts +57 -27
  117. package/dist/esm/core/constants.js +51 -33
  118. package/dist/esm/core/db.d.ts +12 -4
  119. package/dist/esm/core/db.js +164 -35
  120. package/dist/esm/core/debug.js +1 -1
  121. package/dist/esm/core/env.d.ts +0 -3
  122. package/dist/esm/core/env.js +2 -9
  123. package/dist/esm/core/framework-id.d.ts +1 -1
  124. package/dist/esm/core/framework-id.js +3 -3
  125. package/dist/esm/core/guard.d.ts +9 -0
  126. package/dist/esm/core/guard.js +27 -14
  127. package/dist/esm/core/hooks.d.ts +7 -4
  128. package/dist/esm/core/hooks.js +3 -3
  129. package/dist/esm/core/locks.d.ts +9 -0
  130. package/dist/esm/core/locks.js +20 -0
  131. package/dist/esm/core/logger.d.ts +3 -4
  132. package/dist/esm/core/logger.js +4 -40
  133. package/dist/esm/core/state.d.ts +9 -6
  134. package/dist/esm/core/state.js +3 -5
  135. package/dist/esm/core/storage.d.ts +20 -5
  136. package/dist/esm/core/storage.js +113 -21
  137. package/dist/esm/core/stylesheet.d.ts +8 -0
  138. package/dist/esm/core/stylesheet.js +27 -0
  139. package/dist/esm/core/transport.d.ts +2 -0
  140. package/dist/esm/core/transport.js +30 -19
  141. package/dist/esm/core/utils.js +1 -1
  142. package/dist/esm/core/validate.js +2 -2
  143. package/dist/esm/device/appversion.d.ts +10 -6
  144. package/dist/esm/device/appversion.js +37 -4
  145. package/dist/esm/device/index.d.ts +28 -2
  146. package/dist/esm/device/index.js +313 -49
  147. package/dist/esm/engagement/api-rules.d.ts +32 -67
  148. package/dist/esm/engagement/api-rules.js +143 -155
  149. package/dist/esm/engagement/auto-api.js +3 -3
  150. package/dist/esm/engagement/auto-screen.d.ts +2 -0
  151. package/dist/esm/engagement/auto-screen.js +67 -4
  152. package/dist/esm/engagement/defined-events.js +1 -1
  153. package/dist/esm/engagement/send.js +12 -3
  154. package/dist/esm/engagement/session.d.ts +29 -3
  155. package/dist/esm/engagement/session.js +251 -30
  156. package/dist/esm/engagement/track.d.ts +4 -4
  157. package/dist/esm/engagement/track.js +65 -37
  158. package/dist/esm/errors/send.js +2 -2
  159. package/dist/esm/errors/track.d.ts +2 -1
  160. package/dist/esm/errors/track.js +49 -7
  161. package/dist/esm/feedback/controls.d.ts +12 -0
  162. package/dist/esm/feedback/controls.js +103 -26
  163. package/dist/esm/feedback/index.d.ts +8 -7
  164. package/dist/esm/feedback/index.js +34 -13
  165. package/dist/esm/feedback/logs.d.ts +13 -11
  166. package/dist/esm/feedback/logs.js +59 -30
  167. package/dist/esm/feedback/quartz.d.ts +18 -0
  168. package/dist/esm/feedback/quartz.js +99 -0
  169. package/dist/esm/feedback/send.d.ts +5 -2
  170. package/dist/esm/feedback/send.js +31 -31
  171. package/dist/esm/feedback/styles.d.ts +10 -0
  172. package/dist/esm/feedback/styles.js +4 -0
  173. package/dist/esm/feedback/template.d.ts +1 -1
  174. package/dist/esm/feedback/template.js +20 -12
  175. package/dist/esm/feedback/ui.d.ts +21 -6
  176. package/dist/esm/feedback/ui.js +283 -71
  177. package/dist/esm/heatmap/send.d.ts +2 -0
  178. package/dist/esm/heatmap/send.js +3 -5
  179. package/dist/esm/heatmap/track.d.ts +1 -1
  180. package/dist/esm/heatmap/track.js +87 -16
  181. package/dist/esm/index.d.ts +16 -63
  182. package/dist/esm/index.js +148 -83
  183. package/dist/esm/lifecycle.d.ts +21 -3
  184. package/dist/esm/lifecycle.js +359 -98
  185. package/dist/esm/remoteconfig/country.d.ts +4 -0
  186. package/dist/esm/remoteconfig/country.js +70 -0
  187. package/dist/esm/remoteconfig/custom.d.ts +7 -7
  188. package/dist/esm/remoteconfig/custom.js +32 -52
  189. package/dist/esm/remoteconfig/evaluate.d.ts +3 -3
  190. package/dist/esm/remoteconfig/evaluate.js +57 -44
  191. package/dist/esm/remoteconfig/fetch.d.ts +16 -9
  192. package/dist/esm/remoteconfig/fetch.js +120 -39
  193. package/dist/esm/remoteconfig/index.d.ts +19 -8
  194. package/dist/esm/remoteconfig/index.js +82 -40
  195. package/dist/esm/remoteconfig/store.d.ts +15 -7
  196. package/dist/esm/remoteconfig/store.js +68 -36
  197. package/dist/esm/remoteconfig/tz-countries.d.ts +8 -0
  198. package/dist/esm/remoteconfig/tz-countries.js +11 -0
  199. package/dist/{cjs/core → esm/remotelog}/callsite.d.ts +11 -4
  200. package/dist/esm/{core → remotelog}/callsite.js +30 -8
  201. package/dist/esm/remotelog/gate.d.ts +2 -11
  202. package/dist/esm/remotelog/gate.js +10 -32
  203. package/dist/esm/remotelog/index.d.ts +4 -21
  204. package/dist/esm/remotelog/logger.d.ts +11 -17
  205. package/dist/esm/remotelog/logger.js +33 -61
  206. package/dist/esm/remotelog/send.js +13 -13
  207. package/dist/esm/remotelogger/index.d.ts +12 -0
  208. package/dist/esm/remotelogger/index.js +13 -0
  209. package/dist/esm/scheduler.d.ts +3 -1
  210. package/dist/esm/scheduler.js +26 -24
  211. package/dist/esm/types.d.ts +208 -90
  212. package/dist/esm/user/index.js +18 -8
  213. package/dist/feedback.esm.min.js +2 -2
  214. package/dist/feedback.esm.min.js.map +1 -1
  215. package/dist/remoteconfig.esm.min.js +3 -0
  216. package/dist/remoteconfig.esm.min.js.map +1 -0
  217. package/dist/remotelogger.esm.min.js +3 -0
  218. package/dist/remotelogger.esm.min.js.map +1 -0
  219. package/package.json +16 -17
  220. package/dist/chunks/batch-BU_mTpm1.min.js +0 -3
  221. package/dist/chunks/batch-BU_mTpm1.min.js.map +0 -1
  222. package/dist/chunks/logs-Bea5zUW_.min.js +0 -3
  223. package/dist/chunks/logs-Bea5zUW_.min.js.map +0 -1
  224. package/dist/cjs/auto-init.d.ts +0 -8
  225. package/dist/cjs/auto-init.js +0 -32
  226. package/dist/cjs/heatmap/index.d.ts +0 -16
  227. package/dist/cjs/heatmap/index.js +0 -22
  228. package/dist/cjs/remotelog/index.js +0 -55
  229. package/dist/esm/auto-init.d.ts +0 -8
  230. package/dist/esm/auto-init.js +0 -29
  231. package/dist/esm/heatmap/index.d.ts +0 -16
  232. package/dist/esm/heatmap/index.js +0 -17
  233. package/dist/esm/remotelog/index.js +0 -51
  234. package/dist/heatmap.esm.min.js +0 -3
  235. package/dist/heatmap.esm.min.js.map +0 -1
  236. package/dist/style.css +0 -1
@@ -1,3 +1,3 @@
1
- /*! @zoho_apptics/apptics-js-sdk v2.0.0-beta | (c) Zoho Corporation Private Limited | see LICENSE */
2
- import{Q as e,_ as a,n,R as r,w as s,m as t,S as i,T as c,U as o,A as p,V as u,W as l,X as g,Y as f,Z as d,$ as A,z as b,B as k,a0 as T,a1 as m,a2 as E,a3 as S,a4 as v,a5 as y}from"./chunks/batch-BU_mTpm1.min.js";import{e as R,s as O,f as h,g as D,u as j,i as B,j as w,k as L,m as _,n as N,o as F,p as G,q as I,v as x,w as z,r as P}from"./chunks/logs-Bea5zUW_.min.js";export{U as UserBuilder}from"./chunks/logs-Bea5zUW_.min.js";const V=Object.freeze({VERBOSE:1,DEBUG:2,INFO:3,WARN:4,ERROR:5});function W(e){var a=String(e.fn||"").replace(/<anonymous>/g,"").replace(/[<>]/g,"").trim();return""===a||/^(Object|Module|eval)\.?$/.test(a)?"App":a.slice(0,c)}function q(e){if(e instanceof Error){var a=e.name+": "+e.message;return e.stack&&-1!==e.stack.indexOf(e.message)?e.stack:a}if("string"==typeof e)return e;try{var n=JSON.stringify(e);return void 0===n?String(e):n}catch(a){return String(e)}}const C=t("AppticsLogger",function(e,a,n,r,s){if(h()){var t=[a].concat(n).map(q).join(" ");i.add({module:W(s),level:e,happenedat:r,exceptionlog:t,attempt:1,filename:s.filename,linenumber:s.linenumber}),D()}}),H=Object.freeze({1:"debug",2:"debug",3:"info",4:"warn",5:"error"});function K(e){return function(a,t,...i){try{var c=null==a?"":String(a).trim(),o=""===c?[t].concat(i):["["+c+"]",t].concat(i);!function(e,a){if(!0===s("show_logs")){var n=H[e]||"log";"undefined"!=typeof console&&"function"==typeof console[n]&&console[n].apply(console,a)}}(e,o),C(e,o[0],o.slice(1),n(),r(1))}catch(e){}}}const M={enable:t("AppticsLogger.enable",function(){O(!1!==!0)}),disable:t("AppticsLogger.disable",function(){O(!1)}),isEnabled:t("AppticsLogger.isEnabled",R),v:K(V.VERBOSE),d:K(V.DEBUG),i:K(V.INFO),w:K(V.WARN),e:K(V.ERROR)},Y={init:t("Apptics.init",B)},$=t("ready",P),J={addEvent:t("AppticsEvents.addEvent",d)},Q=t("AppticsScreenTracker.inScreen",y),X=t("AppticsScreenTracker.outScreen",v),Z={inScreen:function(e,a){if(!A(e))return Q(e,a,"",n()),"";var r=b();return Q(e,a,r,n()),r},outScreen:function(e){X(e,n())}},ee=t("AppticsApiTracker.endTrackApi",S),ae={startTrackApi:t("AppticsApiTracker.startTrackApi",f),endTrackApi:function(e,a,r){ee(e,a,r,n())},configure:t("AppticsApiTracker.configure",g)},ne=t("enableApiTracking",z),re=t("AppticsTrackError",L),se=t("enableGlobalErrorHandler",x),te=t("AppticsSetUser",w),ie=t("getUser",I),ce=t("setTrackingStatus",T),oe=t("getTrackingStatus",k),pe=t("flush",G),ue=t("addFeedbackLog",N),le=t("addDiagnosticsInfo",_),ge=t("enableDebug",E),fe=t("disableDebug",m),de=t("reset",F),Ae={Apptics:Y,AppticsEvents:J,AppticsScreenTracker:Z,AppticsApiTracker:ae,AppticsLogger:M,DefinedEvents:l,ApiTrackingBuilder:u,ready:$,enableDebug:ge,disableDebug:fe,enableApiTracking:ne,AppticsTrackError:re,enableGlobalErrorHandler:se,AppticsSetUser:te,getUser:ie,users:j,setTrackingStatus:ce,getTrackingStatus:oe,flush:pe,addFeedbackLog:ue,addDiagnosticsInfo:le,reset:de,AP_TRACKING_STATUS:p,AP_FEEDBACK_TYPE:o};var be;be=Y,"undefined"!=typeof window&&queueMicrotask(function(){!function(n){if(a._initialised)return!1;var r=e();r&&"object"==typeof r&&n.init(r)}(be)});export{o as AP_FEEDBACK_TYPE,p as AP_TRACKING_STATUS,u as ApiTrackingBuilder,Y as Apptics,ae as AppticsApiTracker,J as AppticsEvents,M as AppticsLogger,Z as AppticsScreenTracker,te as AppticsSetUser,re as AppticsTrackError,l as DefinedEvents,le as addDiagnosticsInfo,ue as addFeedbackLog,Ae as default,fe as disableDebug,ne as enableApiTracking,ge as enableDebug,se as enableGlobalErrorHandler,pe as flush,oe as getTrackingStatus,ie as getUser,$ as ready,de as reset,ce as setTrackingStatus,j as users};
1
+ /*! @zoho_apptics/apptics-js-sdk v2.0.0-beta.2 | (c) Zoho Corporation Private Limited | see LICENSE */
2
+ import{C as e,y as t,n,c as r,z as a,B as i,D as s,E as c,_ as o,d as u,j as l,e as p,G as d,H as f,A as g,I as m,J as h,m as A,b as _,K as k,L as w,M as v,w as b,v as T,x as y,N as E,O as H,P as S}from"./chunks/send-CgUO82ne.min.js";import{s as M,c as x,d as U,a as D,w as C,f as L,b as N,e as O,A as P,D as j,U as G,v as Y,g as z,o as I,i as W,h as X,j as q,r as B,k as K,l as R,m as J,n as F,p as Q,t as V,q as Z,u as $,x as ee,y as te,z as ne}from"./chunks/lifecycle-C6m1W7jo.min.js";var re=!1,ae=0,ie=[],se=0,ce=0,oe=0,ue=null,le=null,pe=new WeakMap,de=0,fe=0;function ge(){var t=s("heatmap_max_per_session");return("number"!=typeof t||t<=0)&&(t=c.heatmap_max_per_session),!(ae>=t)||(ae===t&&(ae++,e.log("apptics.heatmap: reached "+t+" records for this session, pausing capture")),!1)}function me(){var e=document.documentElement,t=document.body;return Math.max(e?e.scrollHeight:0,t?t.scrollHeight:0,e?e.clientHeight:0)}function he(e,t){if(!t||t<=0)return 0;var value=e/t;return value<0&&(value=0),value>1&&(value=1),Math.round(1e3*value)/1e3}function Ae(){return window.innerWidth||(document.documentElement?document.documentElement.clientWidth:0)||1}function _e(e){if(!e)return"";for(var t=["data-ap-label","apeventaction","data-apeventaction","aria-label","name","id","title"],n=0;n<t.length;n++){var value=e.getAttribute?e.getAttribute(t[n]):null;if(!r(value))return String(value).slice(0,80)}var a=e.tagName?e.tagName.toLowerCase():"element";if(f()!==g.USAGE_TRACKING_WITH_PII){var i=e.getAttribute?e.getAttribute("role"):null;return r(i)?a:a+"["+i+"]"}var s=(e.textContent||"").replace(/\s+/g," ").trim();return r(s)?a:s.slice(0,80)}function ke(e){if(!e)return 0;for(var t="",n=e,r=0;n&&r<12;){var a=n.parentElement,i=0;if(a)for(var s=a.children,c=0;c<s.length;c++)if(s[c]===n){i=c;break}t="/"+(n.tagName||"?")+":"+i+t,n=a,r++}for(var o=2166136261,u=0;u<t.length;u++)o=16777619*(o^=t.charCodeAt(u))>>>0;return o}function we(e,t,n){return(ie=ie.filter(function(e){return n-e.at<=1e3})).push({at:n,x:e,y:t}),ie.filter(function(n){return Math.abs(n.x-e)<=30&&Math.abs(n.y-t)<=30}).length>=3}function ve(){return{id:d(),session_start_time:o._current_session.starttime||n(),triggered_time:n(),screen:String(M()).slice(0,500),url_path:String(window.location.pathname).slice(0,500),screen_width:window.screen?window.screen.width:0,screen_height:window.screen?window.screen.height:0,content_height:me(),orientation:p(),network_status:l(),edge_type:o._device_info.connectionType||u(),scroll_offset_x:Math.round(window.scrollX||window.pageXOffset||0),scroll_offset_y:Math.round(window.scrollY||window.pageYOffset||0)}}function be(t){ae++,m(),x(),h.add(t),e.dir(t)}function Te(e){if(t("heatmap")&&ge())try{var s=n(),c=e.target,o=function(e){for(var t=0;e&&t<10;){var n=e.tagName?e.tagName.toLowerCase():"",r=e.getAttribute?e.getAttribute("role"):null;if("a"===n||"button"===n||"input"===n||"select"===n||"textarea"===n||"summary"===n||"label"===n||"button"===r||"link"===r||"tab"===r||"menuitem"===r||e.hasAttribute&&e.hasAttribute("onclick"))return e;e=e.parentElement,t++}return null}(c),u=o||c,l=Math.round(e.clientX),p=Math.round(e.clientY),d=me()||1,f=e.pointerType,g=Object.assign(ve(),{triggered_type:"default",gesture_type:"click",gesture_duration:0,input_type:r(f)?"mouse":String(f),element_label:_e(u),triggered_id:ke(u),coordinate_x:l,coordinate_y:p,normalized_x:he(l,Ae()),normalized_y:he((window.scrollY||0)+p,d),velocity:0,is_clickable:o?1:0,is_rage_click:we(l,p,s)?1:0,is_dead_click:0});be(g),function(e){if(1===e.is_clickable||"function"!=typeof MutationObserver)return;var t=!1,url=window.location.href,n=new MutationObserver(function(){t=!0});try{n.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!0})}catch(e){return}setTimeout(function(){n.disconnect(),t||window.location.href!==url||(e.is_dead_click=1,h.update(e))},1500)}(g)}catch(e){a(i.HEATMAP,"apptics.heatmap: click capture failed: "+String(e))}}function ye(e){if(t("heatmap")&&ge()){var r=function(e){var t=document;if(!e||1!==e.nodeType||e===t.documentElement||e===t.body)return null;var n=e;return n.clientHeight>=.5*(window.innerHeight||0)&&n.clientWidth>=.5*Ae()?n:void 0}(e?e.target:null);if(void 0!==r){if(null!==ue&&r!==le&&(clearTimeout(ue),Ee()),null===ue){le=r;var a=function(e){return null===e?{x:de,y:fe}:pe.get(e)||{x:0,y:0}}(r);se=n(),ce=a.x,oe=a.y}else clearTimeout(ue);ue=setTimeout(Ee,150)}}}function Ee(){ue=null;var e=le;le=null;try{var t=function(e){return null===e?{x:Math.round(window.scrollX||window.pageXOffset||0),y:Math.round(window.scrollY||window.pageYOffset||0)}:{x:Math.round(e.scrollLeft||0),y:Math.round(e.scrollTop||0)}}(e),r=t.x,s=t.y,c=r-ce,o=s-oe;if(null===e?(de=r,fe=s):pe.set(e,t),0===c&&0===o)return;var u=Math.max(1,n()-se),l=Math.sqrt(c*c+o*o),p=Math.abs(o)>=Math.abs(c)?o>0?"down-scroll":"up-scroll":c>0?"right-scroll":"left-scroll",d=(null===e?me():e.scrollHeight)||1,f=null===e?window.innerHeight||0:e.clientHeight;be(Object.assign(ve(),null===e?{}:{content_height:e.scrollHeight,scroll_offset_x:r,scroll_offset_y:s},{triggered_type:"default",gesture_type:p,gesture_duration:Math.round(u),element_label:"",triggered_id:0,coordinate_x:r,coordinate_y:s,normalized_x:0,normalized_y:he(s+f,d),velocity:Math.round(l/u*1e3),is_clickable:0,is_rage_click:0,is_dead_click:0}))}catch(e){a(i.HEATMAP,"apptics.heatmap: scroll capture failed: "+String(e))}}function trackHeatmap(status){var t="boolean"!=typeof status||status;if(t!==re){if(t)return de=Math.round(window.scrollX||0),fe=Math.round(window.scrollY||0),window.addEventListener("pointerdown",Te,{capture:!0,passive:!0}),window.addEventListener("scroll",ye,{capture:!0,passive:!0}),re=!0,void e.log("apptics.heatmap: capturing clicks and scrolls");window.removeEventListener("pointerdown",Te,!0),window.removeEventListener("scroll",ye,!0),null!==ue&&(clearTimeout(ue),Ee()),le=null,re=!1,e.log("apptics.heatmap: capture stopped")}}A.trackHeatmap=trackHeatmap,A.resetHeatmap=function(){ae=0,ie=[],de=0,fe=0,pe=new WeakMap},A.sendHeatmaps=function t(n){return!_()&&k()&&o._heatmapTracking?0==navigator.onLine?(e.warn("sendHeatmapData: No Network"),Promise.resolve()):o._sending?(U(t),Promise.resolve()):(o._sending=!0,D(),C("heatmaps",function(){return L(h,function(){return!0},function(e){return e.triggered_time||e.session_start_time}).then(function(e){if(0!=e.length){var t=[],r=[];return w(e).forEach(function(e){r.push({...e}),delete e.id,t.push(e)}),N(function(e,t){return O("heatmap","requestToSendHeatmaps",e,t)}({data:t},n).then(function(){return h.remove(r)},function(e){return v(e)?(b("apptics: the server refused these heatmap records, so they were dropped: "+String(e&&e.message)),h.remove(r)):Promise.reject(e)}),n,"sendHeatmapData")}})}).catch(function(t){e.log("sendHeatmapData:"+t)}).then(function(){o._sending=!1})):Promise.resolve()};const He=y("Apptics.init",K),Se=y("Apptics.ready",B),Me=y("Apptics.flush",q),xe=y("Apptics.reset",X),Ue=y("Apptics.enableDebug",H),De=y("Apptics.disableDebug",E);var Ce={};function Le(e,t){Ce[e]||(Ce[e]=!0,b(e+" is now "+t+"; rename it in your code"))}const Ne={init:function init(config){return T(He,arguments)},ready:function ready(){return T(Se,arguments)},flush:function flush(){return T(Me,arguments)},reset:function reset(){return T(xe,arguments)},enableDebug:function enableDebug(){return T(Ue,arguments)},disableDebug:function disableDebug(){return T(De,arguments)}},Oe=y("AppticsEvent.addEvent",$),Pe=y("AppticsEvent.setClickTracking",Z),je={DefinedEvents:j,addEvent:function addEvent(eventName,groupName,properties){return T(Oe,arguments)},setClickTracking:function setClickTracking(enabled){return T(Pe,arguments)}},Ge=y("AppticsScreen.inScreen",W),Ye=y("AppticsScreen.outScreen",I),ze=y("AppticsScreen.setScreenTracking",ee),Ie={inScreen:function inScreen(screenName,properties){if(!Y(screenName))return Ge(screenName,properties,"",n()),"";var id=d();return Ge(screenName,properties,id,n()),id},outScreen:function outScreen(id){Ye(id,n())},setScreenTracking:function setScreenTracking(enabled){return T(ze,arguments)}},We=y("AppticsApi.endTrackApi",z),Xe=y("AppticsApi.startTrackApi",F),qe=y("AppticsApi.configure",J),Be=y("AppticsApi.setApiTracking",R),Ke={startTrackApi:function startTrackApi(url,method){return T(Xe,arguments)},endTrackApi:function endTrackApi(id,responseCode,responseMessage){We(id,responseCode,responseMessage,n())},ApiTrackingBuilder:P,configure:function configure(config){return T(qe,arguments)},setApiTracking:function setApiTracking(enabled){return T(Be,arguments)},enableApiTracking:function enableApiTracking(enabled){return Le("AppticsApi.enableApiTracking","AppticsApi.setApiTracking"),T(Be,arguments)}},Re=y("AppticsError.trackError",V),Je=y("AppticsError.setErrorTracking",Q),Fe={trackError:function trackError(error,properties){return T(Re,arguments)},setErrorTracking:function setErrorTracking(enabled){return T(Je,arguments)},trackGlobalErrorHandler:function trackGlobalErrorHandler(enabled){return Le("AppticsError.trackGlobalErrorHandler","AppticsError.setErrorTracking"),T(Je,arguments)}},Qe=y("AppticsUser.setUser",ne),Ve=y("AppticsUser.getUser",te),Ze={setUser:function setUser(userid,groupid,properties){return T(Qe,arguments)},getUser:function getUser(){return T(Ve,arguments)},UserBuilder:G},$e=y("AppticsHeatmap.setHeatmapTracking",trackHeatmap),et={setHeatmapTracking:function setHeatmapTracking(enabled){return T($e,arguments)},trackHeatmap:function trackHeatmap(on){return Le("AppticsHeatmap.trackHeatmap","AppticsHeatmap.setHeatmapTracking"),T($e,arguments)}},tt=y("AppticsSettings.setTrackingStatus",S),nt=y("AppticsSettings.getTrackingStatus",f),rt={AP_TRACKING_STATUS:g,setTrackingStatus:function setTrackingStatus(status){return T(tt,arguments)},getTrackingStatus:function getTrackingStatus(){return T(nt,arguments)}},at={Apptics:Ne,AppticsEvent:je,AppticsScreen:Ie,AppticsApi:Ke,AppticsError:Fe,AppticsUser:Ze,AppticsSettings:rt,AppticsHeatmap:et};export{Ne as Apptics,Ke as AppticsApi,Fe as AppticsError,je as AppticsEvent,et as AppticsHeatmap,Ie as AppticsScreen,rt as AppticsSettings,Ze as AppticsUser,at as default};
3
3
  //# sourceMappingURL=apptics.esm.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"apptics.esm.min.js","sources":["../src/remotelog/logger.ts","../src/index.ts","../src/auto-init.ts"],"sourcesContent":[null,null,null],"names":["LOG_LEVEL","Object","freeze","VERBOSE","DEBUG","INFO","WARN","ERROR","functionName","site","name","String","fn","replace","trim","test","slice","LOG_FUNCTION_MAX","describe","value","Error","head","message","stack","indexOf","json","JSON","stringify","undefined","err","recordLine","guard","level","details","at","appLogEnabled","text","concat","map","join","consolelog_transactions","add","module","happenedat","exceptionlog","attempt","filename","linenumber","scheduleSend","CONSOLE_METHOD","tagged","tag","label","parts","args","getConfig","method","console","apply","show","nowMs","callSite","AppticsLogger","enable","setAppLogger","disable","isEnabled","appLoggerEnabled","v","d","i","w","e","Apptics","init","initImpl","ready","readyImpl","AppticsEvents","addEvent","trackEventImpl","inScreenGuarded","inScreenAt","outScreenGuarded","outScreenAt","AppticsScreenTracker","inScreen","screenName","properties","validateScreenName","id","getNewUUID","outScreen","endTrackApiGuarded","endTrackApiAt","AppticsApiTracker","startTrackApi","startTrackApiImpl","endTrackApi","responseCode","responseMessage","configure","configureApiTrackingImpl","enableApiTracking","enableApiTrackingImpl","AppticsTrackError","trackErrorImpl","enableGlobalErrorHandler","enableGlobalErrorHandlerImpl","AppticsSetUser","setUserImpl","getUser","getUserImpl","setTrackingStatus","setTrackingStatusImpl","getTrackingStatus","getTrackingStatusImpl","flush","flushImpl","addFeedbackLog","addFeedbackLogImpl","addDiagnosticsInfo","addDiagnosticsInfoImpl","enableDebug","enableDebugImpl","disableDebug","disableDebugImpl","reset","resetImpl","apptics","DefinedEvents","ApiTrackingBuilder","users","AP_TRACKING_STATUS","AP_FEEDBACK_TYPE","api","window","queueMicrotask","_ZAP","_initialised","opts","getSnippetOptions","autoInit"],"mappings":"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"}
1
+ {"version":3,"file":"apptics.esm.min.js","sources":["../src/heatmap/track.ts","../src/index.ts","../src/heatmap/send.ts"],"sourcesContent":[null,null,null],"names":["installed","recorded","recentClicks","scrollStart","scrollStartX","scrollStartY","scrollTimer","scrolling","paneAt","WeakMap","lastX","lastY","underCap","cap","getConfig","AP_CONFIG","heatmap_max_per_session","Console","log","contentHeight","doc","document","documentElement","body","Math","max","scrollHeight","clientHeight","fraction","part","whole","value","round","viewportWidth","window","innerWidth","clientWidth","labelFor","node","attributes","i","length","getAttribute","isEmpty","String","slice","tag","tagName","toLowerCase","getTrackingStatus","AP_TRACKING_STATUS","USAGE_TRACKING_WITH_PII","role","text","textContent","replace","trim","triggeredId","path","current","depth","parent","parentElement","index","children","hash","c","charCodeAt","isRageClick","x","y","at","filter","click","push","abs","common","id","getNewUUID","session_start_time","_ZAP","_current_session","starttime","nowMs","triggered_time","screen","screenForRecord","url_path","location","pathname","screen_width","width","screen_height","height","content_height","orientation","getOrientation","network_status","getNetworkStatus","edge_type","_device_info","connectionType","getConnectionType","scroll_offset_x","scrollX","pageXOffset","scroll_offset_y","scrollY","pageYOffset","store","record","noteDebugActivity","commitPendingSession","heatmap_transactions","add","dir","onPointerDown","event","canTrackHeatmap","target","clickable","hasAttribute","clickableAncestor","named","clientX","clientY","pointerType","Object","assign","triggered_type","gesture_type","gesture_duration","input_type","element_label","triggered_id","coordinate_x","coordinate_y","normalized_x","normalized_y","velocity","is_clickable","is_rage_click","is_dead_click","MutationObserver","changed","url","href","observer","observe","childList","subtree","err","setTimeout","disconnect","update","watchForDeadClick","logFailure","AP_LOG_MODULE","HEATMAP","onScroll","scroller","nodeType","el","innerHeight","undefined","scrollerOf","clearTimeout","endScrollGesture","start","get","startOf","end","scrollLeft","scrollTop","positionOf","endX","endY","dx","dy","set","duration","distance","sqrt","direction","visible","trackHeatmap","status","wanted","addEventListener","capture","passive","removeEventListener","hooks","resetHeatmap","sendHeatmaps","sendHeatmapData","forget","is_apptics_disabled","shouldTrackOrSendData","_heatmapTracking","navigator","onLine","warn","Promise","resolve","_sending","defer","clearDefer","withSendLock","freshItems","item","then","items","data","sent","cloneObject","forEach","awaitUnlessClosing","_payload","sendBatch","requestToSendHeatmaps","remove","isPermanentRefusal","warnAlways","message","reject","catch","initGuarded","guard","initImpl","readyGuarded","readyImpl","flushGuarded","flushImpl","resetGuarded","resetImpl","enableDebugGuarded","enableDebugImpl","disableDebugGuarded","disableDebugImpl","warnedRenamed","renamed","old","Apptics","init","config","forward","arguments","ready","flush","reset","enableDebug","disableDebug","addEventGuarded","trackEventImpl","setClickTrackingGuarded","setClickTrackingImpl","AppticsEvent","DefinedEvents","addEvent","eventName","groupName","properties","setClickTracking","enabled","inScreenGuarded","inScreenAt","outScreenGuarded","outScreenAt","setScreenTrackingGuarded","setScreenTrackingImpl","AppticsScreen","inScreen","screenName","validateScreenName","outScreen","setScreenTracking","endTrackApiGuarded","endTrackApiAt","startTrackApiGuarded","startTrackApiImpl","configureGuarded","configureApiTrackingImpl","setApiTrackingGuarded","enableApiTrackingImpl","AppticsApi","startTrackApi","method","endTrackApi","responseCode","responseMessage","ApiTrackingBuilder","configure","setApiTracking","enableApiTracking","trackErrorGuarded","trackErrorImpl","setErrorTrackingGuarded","setErrorTrackingImpl","AppticsError","trackError","error","setErrorTracking","trackGlobalErrorHandler","setUserGuarded","setUserImpl","getUserGuarded","getUserImpl","AppticsUser","setUser","userid","groupid","getUser","UserBuilder","setHeatmapTrackingGuarded","trackHeatmapImpl","AppticsHeatmap","setHeatmapTracking","on","setTrackingStatusGuarded","setTrackingStatusImpl","getTrackingStatusGuarded","getTrackingStatusImpl","AppticsSettings","setTrackingStatus","apptics"],"mappings":"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"}