/* * @license * Copyright (C) 2014 Treasure Data, inc. * SPDX-License-Identifier: Apache-2.0 * https://github.com/treasure-data/td-js-sdk * * Modifications copyright (C) 2023 DataCurrent Inc. * Changes: * - Error comments * - Cookie names * - Several measurement columns */!function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(r,o,function(e){return t[e]}.bind(null,o));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=32)}([function(t,e,n){t.exports={forEach:n(35),isNumber:n(44),isObject:n(1),isString:n(8),isArray:n(5),isFunction:n(15),isEmpty:n(45),keys:n(9),assign:n(46),forIn:n(51),omit:n(53),cloneDeep:n(67),noop:n(74)}},function(t,e){t.exports=function(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}},function(t,e,n){(function(e){"undefined"!=typeof window?t.exports=window:void 0!==e?t.exports=e:"undefined"!=typeof self?t.exports=self:t.exports={}}).call(this,n(7))},function(t,e){t.exports={disposable:function(t){var e=!1;return function(){e||(e=!0,t())}},invariant:function(t,e){if(!t)throw new Error(e)},fetchWithTimeout:function(t,e,n){if(window.AbortController){var r=new window.AbortController,o=window.fetch(t,Object.assign({},n,{signal:r.signal})),i=setTimeout((function(){r.abort()}),e);return o.finally((function(){clearTimeout(i)}))}return function(t,e,n){var r=new Promise((function(e,r){setTimeout((function(){r(new Error(n||"Operation Timeout"))}),t)}));return Promise.race([r,e])}(e,window.fetch(t,n),"Request Timeout")},camelCase:function(t){if(t)return t.toLowerCase().split(" ").reduce((function(t,e,n){return t+=0===n?e:function(t){var e=t[0];return e<"\ud800"||e>"\udfff"?t[0].toUpperCase()+t.slice(1):t.slice(0,2).toUpperCase()+t.slice(2)}(e)}),"")},isLocalStorageAccessible:function(){var t="__dcam__";try{return localStorage.setItem(t,t),localStorage.removeItem(t),!0}catch(t){return!1}},adlHeaders:{"Content-Type":"application/vnd.treasuredata.v1+json",Accept:"application/vnd.treasuredata.v1+json"},globalIdAdlHeaders:{"Content-Type":"application/vnd.treasuredata.v1.js+json",Accept:"application/vnd.treasuredata.v1.js+json"}}},function(t,e){t.exports=function(t){return!!t&&"object"==typeof t}},function(t,e,n){var r=n(14),o=n(11),i=n(4),s=Object.prototype.toString,a=r(Array,"isArray")||function(t){return i(t)&&o(t.length)&&"[object Array]"==s.call(t)};t.exports=a},function(t,e){var n=function(t){try{return encodeURIComponent(t)}catch(t){console.error("error encode %o")}return null},r=function(t){try{return decodeURIComponent(t)}catch(t){console.error("error decode %o")}return null},o={getItem:function(t){return t&&r(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+function(t){return n(t).replace(/[\-\.\+\*]/g,"\\$&")}(t)+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null},setItem:function(t,e,r,o,i,s,a){if(!t||/^(?:expires|max\-age|path|domain|secure)$/i.test(t))return!1;var c="";if(r)switch(r.constructor){case Number:c=r===1/0?"; expires=Fri, 31 Dec 9999 23:59:59 GMT":"; max-age="+r;break;case String:c="; expires="+r;break;case Date:c="; expires="+r.toUTCString()}var u="";return a&&"NONE"===a.toUpperCase()?u="; Secure; SameSite="+a:(s&&(u+="; Secure"),a&&(u+="; SameSite="+a)),document.cookie=[n(t),"=",n(e),c,i?"; domain="+i:"",o?"; path="+o:"",u].join(""),!0},removeItem:function(t,e,r){return!!this.hasItem(t)&&(document.cookie=[n(t),"=; expires=Thu, 01 Jan 1970 00:00:00 GMT",r?"; domain="+r:"",e?"; path="+e:""].join(""),!0)},hasItem:function(t){return!!t&&new RegExp("(?:^|;\\s*)"+n(t).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=").test(document.cookie)},keys:function(){var t=document.cookie.replace(/((?:^|\s*;)[^=]+)(?=;|$)|^\s*|\s*(?:=[^;]*)?(?:\1|$)/g,"").split(/\s*(?:=[^;]*)?;\s*/);return t=t.map((function(t){return r(t)}))}};t.exports=o},function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(t){"object"==typeof window&&(n=window)}t.exports=n},function(t,e,n){var r=n(4),o=Object.prototype.toString;t.exports=function(t){return"string"==typeof t||r(t)&&"[object String]"==o.call(t)}},function(t,e,n){var r=n(14),o=n(10),i=n(1),s=n(40),a=n(22),c=r(Object,"keys"),u=c?function(t){var e=null==t?void 0:t.constructor;return"function"==typeof e&&e.prototype===t||("function"==typeof t?a.enumPrototypes:o(t))?s(t):i(t)?c(t):[]}:s;t.exports=u},function(t,e,n){var r=n(27),o=n(11);t.exports=function(t){return null!=t&&o(r(t))}},function(t,e){t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},function(t,e,n){var r=n(43);t.exports=function(t,e,n){if("function"!=typeof t)return r;if(void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 3:return function(n,r,o){return t.call(e,n,r,o)};case 4:return function(n,r,o,i){return t.call(e,n,r,o,i)};case 5:return function(n,r,o,i,s){return t.call(e,n,r,o,i,s)}}return function(){return t.apply(e,arguments)}}},function(t,e,n){var r=n(1),o=n(8),i=n(22);t.exports=function(t){if(i.unindexedChars&&o(t)){for(var e=-1,n=t.length,s=Object(t);++e0,S=l.enumErrorProps&&(t===p||t instanceof Error),j=l.enumPrototypes&&s(t);++r=200&&r<300||304===r?e(function(t){var e;try{e=JSON.parse(t)}catch(t){e={}}return e}(t.responseText)):n(new Error("Internal XMLHttpRequest error"))},t.onerror=n}function h(t,e,n){var r,o=(n=n||{}).headers||{},i=new XMLHttpRequest;for(r in i.open(t,e),i.withCredentials=Boolean(l(n)),o=c(n.headers,f(n)))o.hasOwnProperty(r)&&i.setRequestHeader(r,o[r]);return i}t.exports={post:function(t,e,n){return u()?d(t,e,n):new Promise((function(r,o){var i=h("POST",t,n);p(i,r,o),i.send(JSON.stringify(e))}))},get:function(t,e){if(e=e||{},u())return function(t,e){var n=(e=e||{}).headers||{},r=e.method||"GET";return fetch(t,{method:r,headers:c(n,f(e)),credentials:l(e)}).then((function(t){if(!t.ok)throw Error(t.statusText);return t.text()})).then((function(t){return t?JSON.parse(t):{}}))}(t,e);var n=e.method||"GET";return new Promise((function(r,o){var i=h(n,t,e);p(i,r,o),i.send(null)}))},postWithTimeout:function(t,e,n,r){if(window.AbortController){var o=new window.AbortController,i=c(r.headers,f(r));r.headers=i;var s=window.fetch(t,Object.assign({},r,{signal:o.signal},{body:JSON.stringify(e)})),a=setTimeout((function(){o.abort()}),n);return s.finally((function(){clearTimeout(a)}))}return function(t,e,n){var r=new Promise((function(e,r){setTimeout((function(){r(new Error(n||"Operation Timeout"))}),t)}));return Promise.race([r,e])}(n,d(t,e,r),"Request Timeout")}}},function(t,e){t.exports={GLOBAL:"DCAccessMeasure",VERSION:"3.1.3",HOST:"al-a.dc-tag.jp",DATABASE:"",PATHNAME:"/js/v3/event/"}},function(t,e){t.exports=function(t,e){for(var n=-1,r=t.length;++n-1&&t%1==0&&t=0;r--)n.push(e.slice(r).join("."));return n}(t.domain),l=f.length,d=0;if(n){if(r.getItem(e)===n)return;for(;d2?n[s-2]:void 0,c=s>2?n[2]:void 0,u=s>1?n[s-1]:void 0;for("function"==typeof a?(a=r(a,u,5),s-=2):s-=(a="function"==typeof u?u:void 0)?1:0,c&&o(n[0],n[1],c)&&(a=s<3?void 0:a,s=1);++i=200?i(e):null,l=e.length;f&&(c=o,u=!1,e=f);t:for(;++a=1;e--){var n=t.slice(e).join("."),r="_dcam_domain_"+n;if(s.setItem(r,n,3600,"/",n),s.getItem(r)===n)return n}return document.location.hostname},sscServer:function(t){return["ssc",t].join(".")},storeConsentByLocalStorage:!1},e.configure=function(t){return this.client=r.assign({globals:{}},e.DEFAULT_CONFIG,t,{requestType:"fetch"}),function(t){o(r.isObject(t),"Invalid client option."),o(r.isString(t.writeKey),"Must provide a writeKey"),o(r.isString(t.database),"Must provide a database"),o(/^[a-z0-9_]{3,255}$/.test(t.database),"Database must be between 3 and 255 characters and must consist only of lower case letters, numbers, and _")}(this.client),this.client.useNewJavaScriptEndpoint&&(this.client.pathname="/"),this.client.endpoint||(this.client.endpoint="https://"+this.client.host+this.client.pathname),this},e.set=function(t,e,n){return r.isObject(t)&&(e=t,t="$global"),this.client.globals[t]=this.client.globals[t]||{},r.isObject(e)?r.assign(this.client.globals[t],e):this.client.globals[t][e]=n,this},e.get=function(t,e){return t=t||"$global",this.client.globals[t]=this.client.globals[t]||{},e?this.client.globals[t][e]:this.client.globals[t]},e.isGlobalIdEnabled=function(){return"dcam_global_id"===this.get(null,"dcam_global_id")}},function(t,e,n){ /*! * domready (c) Dustin Diaz 2012 - License MIT */ t.exports=function(t){var e,n=[],r=document,o=r.documentElement,i=o.doScroll,s=(i?/^loaded|^c/:/^loaded|c/).test(r.readyState);function a(t){for(s=1;t=n.shift();)t()}return r.addEventListener&&r.addEventListener("DOMContentLoaded",e=function(){r.removeEventListener("DOMContentLoaded",e,!1),a()},!1),i&&r.attachEvent("onreadystatechange",e=function(){/^c/.test(r.readyState)&&(r.detachEvent("onreadystatechange",e),a())}),t=i?function(e){self!=top?s?e():n.push(e):function(){try{o.doScroll("left")}catch(n){return setTimeout((function(){t(e)}),50)}e()}()}:function(t){s?t():n.push(t)}}()},function(t,e,n){var r=n(2),o=n(78),i=n(0).assign,s=n(3).disposable;function a(t,e){return e}t.exports={configure:function(){this._clickTrackingInstalled=!1},trackClicks:function(t){if(!this._clickTrackingInstalled){var e=this,n=i({element:r.document,extendClickData:a,ignoreAttribute:"td-ignore",tableName:"clicks"},t),c=o.createTreeHasIgnoreAttribute(n.ignoreAttribute),u=o.addEventListener(n.element,"click",(function(t){var r=o.findElement(o.getEventTarget(t));if(r&&!c(r)){var i=o.getElementData(r),s=n.extendClickData(t,i);s&&e.trackEvent(n.tableName,s)}}));return e._clickTrackingInstalled=!0,s((function(){u(),e._clickTrackingInstalled=!1}))}}}},function(t,e,n){var r=n(0).forEach,o=n(0).isString,i=n(3).disposable;function s(t){for(var e,n=[],r=0,o=0,i=" > ".length;t&&r++<5&&!("html"===(e=a(t))||r>1&&o+n.length*i+e.length>=80);)n.push(e),o+=e.length,t=t.parentNode;return n.reverse().join(" > ")}function a(t){var e,n,r,i,s,a=[];if(!t||!t.tagName)return"";if(a.push(t.tagName.toLowerCase()),t.id&&a.push("#"+t.id),(e=t.className)&&o(e))for(n=e.split(" "),s=0;s0&&void 0!==arguments[0]?arguments[0]:{},e=t.consentManager||{},n=document.location.hostname,r=e.storageKey,o=void 0===r?"td_consent_preferences":r,i=e.consentTable,c=void 0===i?"td_cm_consent":i,u=e.contextTable,l=void 0===u?"td_cm_context":u,d=e.successConsentCallback,p=void 0===d?a.noop:d,h=e.failureConsentCallback,g=void 0===h?a.noop:h,m=e.expiredConsentsCallback,y=void 0===m?a.noop:m,b=e.dateFormat,_=void 0===b?"YYYY-MM-DD":b,x=e.issuer,w=void 0===x?"treasuredata":x,S=e.container;this.defaultContext={brand:n,domain_name:n,collection_type:n,collection_point_id:n,context_id:f(),consents:{}},this.consentManager={storageKey:o,successConsentCallback:p,failureConsentCallback:g,expiredConsentsCallback:y,consentTable:c,contextTable:l,dateFormat:_,issuer:w,container:S,states:s({},v)},this.consentManager.preferences=this.getPreferences()||{},this._updateExpiredConsents(),this.consentManager.expiredConsentsCallback(this.getExpiredConsents())},_getContainer:function(t){return a.isString(t)?document.querySelector(t):a.isObject(t)?t:document.body},_getNormalizedConsent:function(t,e){return{description:e.description,datatype:e.datatype,status:e.status,expiry_date:e.expiry_date||null,issuer:this.consentManager.issuer,identifier:this.client.track.uuid,purpose:t,context_id:e.context_id}},_normalizeConsents:function(){var t={},e={};for(var n in this.consentManager.preferences){var r=this.consentManager.preferences[n];for(var o in r.consents){var i=r.consents[o];i._updated?t[o]=this._getNormalizedConsent(o,i):e[o]=this._getNormalizedConsent(o,i)}}return a.isEmpty(t)?e:t},_stringifyPreferences:function(){var t=a.cloneDeep(this.consentManager.preferences);for(var e in t){var n=t[e].consents;for(var r in n){var o=n[r].expiry_date;a.isEmpty(o)||(n[r].expiry_date=c(o).format(this.consentManager.dateFormat)),n[r].identifier=this.client.track.uuid,n[r]=a.omit(n[r],["_updated"])}}return JSON.stringify(t)},_isValidStatus:function(t){return!(!t||!a.isString(t))&&((t=t.toLowerCase())===v.GIVEN||t===v.REFUSED||t===v.NOTGIVEN||t===v.EXPIRED)},_isExpired:function(t){var e=new Date;return t.status===v.GIVEN&&t.expiry_date&&c(t.expiry_date).isBefore(c(e))},_updateExpiredConsents:function(){var t=!1;if(!a.isEmpty(this.consentManager.preferences))for(var e in this.consentManager.preferences){var n=this.consentManager.preferences[e].consents||{};for(var r in n){var o=n[r];this._isExpired(o)&&(o.status=v.EXPIRED,o._updated=!0,t=!0)}}t&&this.saveConsents(a.noop,a.noop)},getPreferences:function(){if(!h())return null;var t=JSON.parse(u.localStorage.getItem(this.consentManager.storageKey))||null;if(t)for(var e in t){var n=t[e].consents;for(var r in n){var o=n[r].expiry_date;a.isEmpty(o)||(n[r].expiry_date=c(o,this.consentManager.dateFormat).valueOf()),n[r].identifier=this.client.track.uuid}}return t},_savePreferences:function(){h()&&!a.isEmpty(this.consentManager.preferences)&&u.localStorage.setItem(this.consentManager.storageKey,this._stringifyPreferences())},_getPromise:function(t){var e=this;return new Promise((function(n,r){e.addConsentRecord(e.consentManager.consentTable,t,n,r)}))},_resetUpdatedStatus:function(){for(var t in this.consentManager.preferences){var e=this.consentManager.preferences[t].consents;for(var n in e){var r=e[n];r._updated&&(r._updated=!1)}}},saveContexts:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a.noop,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a.noop;this._savePreferences();var r=Object.keys(this.consentManager.preferences).reduce((function(e,n){var r=t.consentManager.preferences[n],o=a.omit(r,["consents"]);return e.push(o),e}),[]),o=r.map((function(e){return new Promise((function(n,r){t.addConsentRecord(t.consentManager.contextTable,e,n,r)}))}));Promise.all(o).then(e).catch(n)},saveConsents:function(t,e){var n=this;t=t||this.consentManager.successConsentCallback||a.noop,e=e||this.consentManager.failureConsentCallback||a.noop,this._savePreferences();var r,o=[],i=[];for(var s in this.consentManager.preferences){var c=this.consentManager.preferences[s].consents;for(var u in c){var f=c[u],l=this._getNormalizedConsent(u,f);f._updated?o.push(l):i.push(l)}}r=a.isEmpty(o)?i.map((function(t){return n._getPromise(t)})):o.map((function(t){return n._getPromise(t)})),Promise.all(r).then((function(){t(n._normalizeConsents())}),(function(t){e({success:!1,message:t.message})})).finally((function(){a.isEmpty(o)||n._resetUpdatedStatus()}))},addContext:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!a.isEmpty(t)){var e,n;e=a.isString(t.context_id)?t.context_id:a.isFunction(t.context_id)?t.context_id():f();var r=this.consentManager.preferences[e];return n=r?a.assign({},r,t):a.assign({},t,{context_id:e,consents:{}}),this.consentManager.preferences[e]=n,e}},addConsents:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!a.isEmpty(t))for(var e in t){var n,r=this._isValidStatus(t[e].status)?t[e].status:v.NOTGIVEN,o=t[e].context_id,i=t[e].expiry_date||"";o||(o=this.defaultContext.context_id,this.consentManager.preferences[o]||(this.consentManager.preferences[o]=this.defaultContext));var s=this.consentManager.preferences[o],u=s&&s.consents[e];if(!a.isEmpty(i)&&(a.isString(i)||a.isNumber(i)||a.isObject(i))){var f=c(i,this.consentManager.dateFormat);i=f.isValid()?f.valueOf():""}else i="";(n=a.isEmpty(u)?a.assign({},t[e],{key:p(e),status:r,identifier:this.client.track.uuid,context_id:o}):a.assign({},u,t[e])).issuer=this.consentManager.issuer,n.expiry_date=i,this.consentManager.preferences[o].consents[e]=n}},updateConsent:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!a.isEmpty(this.consentManager.preferences[t])&&!a.isEmpty(e)){var n=Object.keys(e),o=r(n,1),i=o[0],s=this.consentManager.preferences[t].consents;for(var u in s)if(p(u)===p(i)){var f=e[i].status||"",l=e[i].expiry_date||"";if(this._isValidStatus(f)||(f=s[i].status),!a.isEmpty(l)&&(a.isString(l)||a.isNumber(l)||a.isObject(l))){var d=c(l,this.consentManager.dateFormat);l=d.isValid()?d.valueOf():s[i].expiry_date}else l=s[i].expiry_date;var h=a.omit(s[i],["expiry_date","status"]);s[i]=a.assign(h,a.omit(e[i],["expiry_date","status"]),{identifier:this.client.track.uuid,status:f,expiry_date:l}),s[i]._updated=!0;break}}},updateContext:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.consentManager.preferences[t];if(!a.isEmpty(n)&&!a.isEmpty(e)){var r=a.omit(n,["consents"]);r=a.assign({},r,e),this.consentManager.preferences[t]=a.assign({},n,r)}},getConsentExpiryDate:function(t,e){if(t&&e){var n=this.consentManager.preferences[t].consents[e];return n&&n.expiry_date||null}},getConsents:function(){var t=this,e=a.isEmpty(this.consentManager.preferences)?this.getPreferences():this.consentManager.preferences;return Object.keys(e||{}).reduce((function(n,r){var o=e[r],i=o.consents,s=a.omit(o,["consents"]);for(var c in i){var u=a.assign({},s,{status:i[c].status,datatype:i[c].datatype||"",description:i[c].description||"",expiry_date:i[c].expiry_date||"",identifier:t.client.track.uuid,purpose:c});n.push(u)}return n}),[])},getContexts:function(){var t=a.isEmpty(this.consentManager.preferences)?this.getPreferences():this.consentManager.preferences;return Object.keys(t||{}).reduce((function(e,n){var r=t[n],o=a.omit(r,["consents"]);return e.push(o),e}),[])},getExpiredConsents:function(){var t=this;return this.getConsents().filter((function(e){return e.status===v.EXPIRED||t._isExpired(e)}))}}},function(t,e,n){var r=n(85),o=n(86),i=n(87),s=n(89);t.exports=function(t,e){return r(t)||o(t,e)||i(t,e)||s()}},function(t,e){t.exports=function(t){if(Array.isArray(t))return t}},function(t,e){t.exports=function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,o=!1,i=void 0;try{for(var s,a=t[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==a.return||a.return()}finally{if(o)throw i}}return n}}},function(t,e,n){var r=n(88);t.exports=function(t,e){if(t){if("string"==typeof t)return r(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(t,e):void 0}}},function(t,e){t.exports=function(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n=e?t:""+Array(e+1-r.length).join(n)+t},h={s:p,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+p(r,2,"0")+":"+p(o,2,"0")},m:function t(e,n){if(e.date()1)for(var n=1;n