@eswanthfrslabs/altas-dashboard-cookie-sdk 1.0.0

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 (2) hide show
  1. package/dist/index.js +1 -0
  2. package/package.json +8 -0
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ var AtlasSDK=function(n){"use strict";var e=function(n){this.apiBaseUrl="http://0.0.0.0:8000",this.cookieBannerClientId=n};function t(n,e,t,o){return new(t||(t=Promise))(function(a,i){function d(n){try{r(o.next(n))}catch(n){i(n)}}function c(n){try{r(o.throw(n))}catch(n){i(n)}}function r(n){var e;n.done?a(n.value):(e=n.value,e instanceof t?e:new t(function(n){n(e)})).then(d,c)}r((o=o.apply(n,e||[])).next())})}function o(n,e){var t,o,a,i={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},d=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return d.next=c(0),d.throw=c(1),d.return=c(2),"function"==typeof Symbol&&(d[Symbol.iterator]=function(){return this}),d;function c(c){return function(r){return function(c){if(t)throw new TypeError("Generator is already executing.");for(;d&&(d=0,c[0]&&(i=0)),i;)try{if(t=1,o&&(a=2&c[0]?o.return:c[0]?o.throw||((a=o.return)&&a.call(o),0):o.next)&&!(a=a.call(o,c[1])).done)return a;switch(o=0,a&&(c=[2&c[0],a.value]),c[0]){case 0:case 1:a=c;break;case 4:return i.label++,{value:c[1],done:!1};case 5:i.label++,o=c[1],c=[0];continue;case 7:c=i.ops.pop(),i.trys.pop();continue;default:if(!(a=i.trys,(a=a.length>0&&a[a.length-1])||6!==c[0]&&2!==c[0])){i=0;continue}if(3===c[0]&&(!a||c[1]>a[0]&&c[1]<a[3])){i.label=c[1];break}if(6===c[0]&&i.label<a[1]){i.label=a[1],a=c;break}if(a&&i.label<a[2]){i.label=a[2],i.ops.push(c);break}a[2]&&i.ops.pop(),i.trys.pop();continue}c=e.call(n,i)}catch(n){c=[6,n],o=0}finally{t=a=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,r])}}}function a(n){var e=document.createElement("div");e.classList.add("overlay");var a=document.createElement("div"),s=document.createElement("div");s.classList.add("modal-content"),s.innerHTML="<div>Loading...</div>",a.appendChild(s),e.appendChild(a),document.body.appendChild(e);(function(n){return t(this,void 0,void 0,function(){var e,t,a,i,d,c;return o(this,function(o){switch(o.label){case 0:e="".concat(n.apiBaseUrl,"/cookie_scanner/fetch_cookie_banner_config"),o.label=1;case 1:return o.trys.push([1,6,,7]),t=new Headers({Accept:"application/json"}),(a=new FormData).append("ref_id",n.cookieBannerClientId),[4,fetch(e,{method:"POST",headers:t,body:a})];case 2:return(i=o.sent()).ok?[3,4]:[4,i.text().catch(function(){return""})];case 3:throw d=o.sent(),new Error("Request failed: ".concat(i.status," ").concat(i.statusText," ").concat(d));case 4:return[4,i.json()];case 5:return[2,o.sent()];case 6:throw c=o.sent(),console.error("Error calling test API:",c),c;case 7:return[2]}})})})(n).then(function(a){s.innerHTML="";var l=i(a,"first_layer"),u=i(a,"second_layer"),p=function(n){var e,t,o,a,i,d,c;if(!n||"object"!=typeof n)return{};var r=n;return r.content||(null===(e=r.data)||void 0===e?void 0:e.content)||(null===(o=null===(t=r.data)||void 0===t?void 0:t.config)||void 0===o?void 0:o.content)||(null===(a=r.config)||void 0===a?void 0:a.content)||(null===(c=null===(d=null===(i=r.data)||void 0===i?void 0:i.data)||void 0===d?void 0:d.config)||void 0===c?void 0:c.content)||{}}(a),f=function(n){var e,t,o,a,i,d,c,r,s;if(!n||"object"!=typeof n)return{};var l=n;return l.cookie_data||(null===(e=l.data)||void 0===e?void 0:e.cookie_data)||(null===(o=null===(t=l.data)||void 0===t?void 0:t.config)||void 0===o?void 0:o.cookie_data)||(null===(a=l.config)||void 0===a?void 0:a.cookie_data)||(null===(d=null===(i=l.data)||void 0===i?void 0:i.data)||void 0===d?void 0:d.cookie_data)||(null===(s=null===(r=null===(c=l.data)||void 0===c?void 0:c.data)||void 0===r?void 0:r.config)||void 0===s?void 0:s.cookie_data)||{}}(a),v=function(n,e){var t=new Map;n&&!Array.isArray(n)&&"object"==typeof n?Object.entries(n).forEach(function(n){var o=n[0],a=n[1],i=a&&"object"==typeof a&&"string"==typeof a.desc?a.desc:"",d=(Array.isArray(null==a?void 0:a.data)?a.data:[]).map(function(n){var e=n;return{name:e.normalized_name||e.name||"",category:o,domain:e.base_domain||void 0,description:e.description||null,duration_human:e.duration_human||null}}),c={name:o,desc:i||(null==e?void 0:e[o])||"",items:d};"boolean"==typeof a.button&&(c.button=a.button),c.raw=a,t.set(o,c)}):Array.isArray(n)&&(n.forEach(function(n){var o=n&&n.category||"Other";t.has(o)||t.set(o,{name:o,desc:(null==e?void 0:e[o])||"",items:[]}),t.get(o).items.push(n)}),Object.entries(e||{}).forEach(function(n){var e=n[0],o=n[1];t.has(e)||t.set(e,{name:e,desc:o||"",items:[]})}));var o=Array.from(t.values());return o.sort(function(n,e){var t=n.name.toLowerCase(),o=e.name.toLowerCase();return"necessary"===t?-1:"necessary"===o?1:n.name.localeCompare(e.name)}),o}(f,p);if(l.length){var m={view:"first"},h=function(a){var i=function(){try{var n=window.localStorage.getItem(r);if(n)return n}catch(n){}var e=document.cookie.match(new RegExp("(^|;\\s*)"+r+"=([^;]*)"));return e?decodeURIComponent(e[2]):null}();return function(n,e,a,i){return t(this,void 0,void 0,function(){var t,d,c,r,s,l;return o(this,function(o){switch(o.label){case 0:t="".concat(n.apiBaseUrl,"/cookie_scanner/submit_cookie_consent"),o.label=1;case 1:return o.trys.push([1,6,,7]),d=new Headers({Accept:"application/json"}),(c=new FormData).append("ref_id",n.cookieBannerClientId),c.append("action_type",String(e)),c.append("cookie_data",JSON.stringify(a)),i&&c.append("pre_user_id",i),[4,fetch(t,{method:"POST",headers:d,body:c})];case 2:return(r=o.sent()).ok?[3,4]:[4,r.text().catch(function(){return""})];case 3:throw s=o.sent(),new Error("Consent request failed: ".concat(r.status," ").concat(r.statusText," ").concat(s));case 4:return[4,r.json()];case 5:return[2,o.sent()];case 6:throw l=o.sent(),console.error("Error submitting cookie consent:",l),l;case 7:return[2]}})})}(n,a,f,i).then(function(n){var e,t,o=null!==(t=null!==(e=null==n?void 0:n.data)&&void 0!==e?e:null==n?void 0:n.pre_user_id)&&void 0!==t?t:void 0;o&&o!==i&&function(n){if(!n)return;try{window.localStorage.setItem(r,n)}catch(n){}var e=new Date;e.setFullYear(e.getFullYear()+1),document.cookie="".concat(r,"=").concat(encodeURIComponent(n),"; expires=").concat(e.toUTCString(),"; path=/;")}(o)}).catch(function(n){console.error("Error submitting consent:",n)}).finally(function(){e.parentNode&&e.parentNode.removeChild(e)})},b=function(){if(s.innerHTML="","first"===m.view)!function(n,e,t){var o=document.createElement("div");o.classList.add("first-modal");var a=document.createElement("div");a.classList.add("first-modal-inner");var i=document.createElement("div");if(i.classList.add("first-modal-content"),e.length)e.forEach(function(n){i.appendChild(function(n){var e=document.createElement("div");if(e.classList.add("modal-section-block"),n.section_title){var t=document.createElement("h3");t.classList.add("modal-section-title"),t.textContent=n.section_title,e.appendChild(t)}if(n.section_body){var o=document.createElement("div");o.classList.add("modal-section-body"),o.innerHTML=n.section_body,e.appendChild(o)}return e}(n))});else{var r=document.createElement("div");r.classList.add("modal-empty-state"),r.textContent="No first-layer sections found.",i.appendChild(r)}var s=document.createElement("div");if(s.classList.add("first-modal-actions"),t.hasSecondLayer){var l=document.createElement("button");l.classList.add("first-modal-button","modal-button-outline"),l.textContent="Customise",l.addEventListener("click",t.onCustomize),s.appendChild(l)}d(e).forEach(function(n){var e,o,a=document.createElement("button");a.classList.add("first-modal-button","modal-button-primary"),a.textContent=n.button_text||(null===(e=n.button_data)||void 0===e?void 0:e.accept_necessary_text)||(null===(o=n.button_data)||void 0===o?void 0:o.accept_selected_text)||n.button_type||"Action";var i=c(n,"first");null!==i&&a.addEventListener("click",function(){return t.onAction(i)}),s.appendChild(a)}),a.appendChild(i),a.appendChild(s),o.appendChild(a),n.appendChild(o)}(s,l,{hasSecondLayer:u.length>0,onCustomize:function(){m.view="second",b()},onAction:function(n){h(n)}});else{if(!u.length)return void(s.innerHTML='<div class="modal-empty-state">No second-layer sections found.</div>');!function(n,e,t,o){var a=document.createElement("div");a.classList.add("second-modal");var i=document.createElement("div");i.classList.add("second-modal-header"),i.innerHTML='\n <h2 class="second-title">Customise Consent Preferences</h2>\n <button class="second-back">Back</button>\n ',i.querySelector(".second-back").addEventListener("click",o.onBack),a.appendChild(i);var r=document.createElement("div");r.classList.add("second-modal-sections"),e.forEach(function(n){return r.appendChild(function(n){var e=document.createElement("div");if(n.section_title){var t=document.createElement("h3");t.classList.add("modal-section-title"),t.textContent=n.section_title,e.appendChild(t)}if(n.section_body){var o=document.createElement("div");o.classList.add("modal-section-body"),o.innerHTML=n.section_body,e.appendChild(o)}return e}(n))}),a.appendChild(r),a.appendChild(function(n){var e=document.createElement("div");return e.classList.add("second-accordion"),n.forEach(function(n){var t="necessary"===n.name.toLowerCase(),o=n,a=document.createElement("details");a.classList.add("second-accordion-item"),t&&(a.open=!0);var i=document.createElement("summary");i.classList.add("second-accordion-summary");var d=document.createElement("div");d.classList.add("second-accordion-text");var c=document.createElement("div");if(c.classList.add("second-accordion-title"),c.textContent=n.name,d.appendChild(c),n.desc){var r=document.createElement("p");r.classList.add("second-accordion-desc"),r.textContent=n.desc,d.appendChild(r)}i.appendChild(d);var s=document.createElement("div");if(s.classList.add("second-accordion-control"),t){var l=document.createElement("span");l.textContent="Always Active",s.appendChild(l),o.button=!0,o.raw&&(o.raw.button=!0)}else{var u=!!o.button;s.appendChild(function(n,e,t){var o=document.createElement("label");o.classList.add("second-switch");var a=document.createElement("input");a.type="checkbox",a.checked=e,a.dataset.categoryName=n;var i=document.createElement("span");return i.classList.add("second-slider"),a.addEventListener("change",function(){t.button=a.checked,t.raw&&(t.raw.button=a.checked)}),o.appendChild(a),o.appendChild(i),o}(n.name,u,o))}i.appendChild(s),a.appendChild(i);var p=document.createElement("div");if(p.classList.add("second-accordion-body"),n.items.length)n.items.forEach(function(n){p.appendChild(function(n){var e=document.createElement("div");e.classList.add("second-cookie-row");var t=document.createElement("div");t.classList.add("second-cookie-inner"),e.appendChild(t);var o=document.createElement("div");o.classList.add("second-cookie-labels"),o.innerHTML='\n <div class="second-cookie-label">Cookie</div>\n <div class="second-cookie-label">Duration</div>\n <div class="second-cookie-label">Description</div>\n ';var a=document.createElement("div");a.classList.add("second-cookie-values");var i=n,d=i.normalized_name||n.name||"",c=n.duration_human||"Session",r=(n.description&&n.description.trim().length?n.description:null)||"No description available.";return a.innerHTML='\n <div class="second-cookie-name">'.concat(d,'</div>\n <div class="second-cookie-duration">').concat(c,'</div>\n <div class="second-cookie-desc">').concat(r,"</div>\n "),t.appendChild(o),t.appendChild(a),e}(n))});else{var f=document.createElement("div");f.classList.add("second-empty-state"),f.textContent="No cookies found under this category.",p.appendChild(f)}a.appendChild(p),e.appendChild(a)}),e}(t));var s=d(e);if(s.length){var l=document.createElement("div");l.classList.add("second-footer-buttons"),s.forEach(function(n){var e,t,a,i,d,r,s=document.createElement("button");s.classList.add("first-modal-button","modal-button-outline");var u=null!==(r=null!==(d=null!==(a=null!==(e=n.button_text)&&void 0!==e?e:null===(t=n.button_data)||void 0===t?void 0:t.accept_necessary_text)&&void 0!==a?a:null===(i=n.button_data)||void 0===i?void 0:i.accept_selected_text)&&void 0!==d?d:n.button_type)&&void 0!==r?r:"Action";s.textContent=u;var p=c(n,"second");null!==p&&s.addEventListener("click",function(){return o.onAction(p)}),l.appendChild(s)}),a.appendChild(l)}n.appendChild(a)}(s,u,v,{onBack:function(){m.view="first",b()},onAction:function(n){h(n)}})}};b()}else s.innerHTML='<div class="modal-empty-state">No first-layer sections found.</div>'}).catch(function(n){console.error("Error fetching data:",n),s.innerHTML='<div style="color:red;">Error loading data</div>'})}function i(n,e){var t,o,a,i,d,c,r,s,l;if(!n||"object"!=typeof n)return[];var u=[],p=n,f=function(n){Array.isArray(n)&&u.push(n)};return f(p.section_data),f(null===(t=p.data)||void 0===t?void 0:t.section_data),f(null===(a=null===(o=p.data)||void 0===o?void 0:o.config)||void 0===a?void 0:a.section_data),f(null===(i=p.config)||void 0===i?void 0:i.section_data),f(null===(c=null===(d=p.data)||void 0===d?void 0:d.data)||void 0===c?void 0:c.section_data),f(null===(l=null===(s=null===(r=p.data)||void 0===r?void 0:r.data)||void 0===s?void 0:s.config)||void 0===l?void 0:l.section_data),u.flat().filter(function(n){return!(!n||"object"!=typeof n)&&(!n.section_type||n.section_type===e)})}function d(n){var e=new Map;return n.forEach(function(n){var t;null===(t=n.buttons)||void 0===t||t.forEach(function(n,t){if(!1!==n.button_enabled){var o="".concat(n.button_type||"unknown","-").concat(n.button_text||t);e.has(o)||e.set(o,n)}})}),Array.from(e.values())}function c(n,e){var t,o,a=(null===(o=null===(t=n.button_type)||void 0===t?void 0:t.toLowerCase)||void 0===o?void 0:o.call(t))||"";if("first"===e)switch(a){case"accept-all":default:return 1;case"accept-necessary":return 2;case"reject-all":return 3}switch(a){case"accept-all":default:return 1;case"accept-necessary":return 4;case"reject-all":return 3}}!function(n,e){void 0===e&&(e={});var t=e.insertAt;if(n&&"undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css","top"===t&&o.firstChild?o.insertBefore(a,o.firstChild):o.appendChild(a),a.styleSheet?a.styleSheet.cssText=n:a.appendChild(document.createTextNode(n))}}('\n.first-modal {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n width: 98%;\n padding: 16px;\n background: #f9fafb;\n border-top: 1px solid #e2e8f0;\n box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15);\n z-index: 9999;\n font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;\n display: block;\n }\n \n\n.first-modal-inner {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: flex-end; \n width: 100%;\n max-width: 100%; \n margin: 0;\n gap: 16px;\n}\n \n\n.first-modal-content {\n flex: 1 1 auto;\n min-width: 0;\n text-align: left;\n}\n\n.first-modal-actions {\n display: flex;\n flex-direction: row;\n gap: 8px;\n flex-shrink: 0;\n align-items: flex-end; \n}\n \n \n.first-modal-button {\n padding: 4px 12px;\n font-size: 0.875rem;\n border-radius: 6px;\n border: 1px solid #cbd5e0;\n background: #fff;\n cursor: pointer;\n white-space: nowrap;\n }\n \n \n.overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.6);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 9999;\n}\n\n.modal-content {\n display: flex;\n flex-direction: column;\n gap: 16px;\n text-align: left;\n font-size: 16px;\n color: #1f2933;\n}\n.modal-empty-state {\n text-align: center;\n color: #616e7c;\n} \n.modal-button-outline {\n background: #fff;\n}\n.modal-section-title {\n margin: 0 0 8px 0;\n font-size: 18px;\n font-weight: 600;\n}\n\n.modal-section-body p {\n margin: 0 0 10px 0;\n}\n\n.modal-section-body a {\n color: #2d72d9;\n text-decoration: underline;\n}\n/* je */\n\n\n\n.second-modal {\n width: 40vw;\n max-width: 40vw;\n height: 60vh; \n max-height: 60vh;\n overflow-y: auto; \n background: #ffffff;\n border: 1px solid #e5e7eb;\n border-radius: 10px;\n padding: 20px;\n margin: 40px auto;\n box-shadow: 0 10px 30px rgba(0,0,0,0.15);\n scrollbar-width: thin; \n \n}\n\n.second-accordion-body {\n padding: 16px;\n display: flex;\n flex-direction: column;\n gap: 12px;\n \n}\n\n\n\n.second-modal-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n.second-title {\n font-size: 20px;\n font-weight: 700;\n}\n.second-back {\n padding: 6px 14px;\n border-radius: 6px;\n background: transparent;\n border: 1px solid #d1d5db;\n cursor: pointer;\n}\n\n\n.second-modal-sections {\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n\n.second-accordion {\n border: 1px solid #e4e7eb;\n border-radius: 10px;\n overflow: hidden;\n}\n.second-accordion-item {\n border-top: 1px solid #e4e7eb;\n}\n.second-accordion-item:first-of-type {\n border-top: none;\n}\n.second-accordion-summary {\n padding: 16px;\n display: flex;\n justify-content: space-between;\n align-items: flex-start; \n gap: 16px; \n cursor: pointer;\n}\n.second-accordion-text {\n flex: 1;\n min-width: 0;\n}\n\n.second-accordion-control {\n display: flex;\n align-items: center;\n flex-shrink: 0; \n}\n\n\n.second-switch {\n position: relative;\n width: 44px;\n height: 24px;\n}\n.second-switch input {\n display: none;\n}\n.second-slider {\n position: absolute;\n top: 0; left: 0; right: 0; bottom: 0;\n background: #cfd8dc;\n border-radius: 24px;\n transition: .2s;\n}\n.second-slider:before {\n content: "";\n position: absolute;\n width: 18px;\n height: 18px;\n left: 3px;\n top: 3px;\n background: white;\n border-radius: 50%;\n transition: .2s;\n}\n.second-switch input:checked + .second-slider {\n background: #1f7aed;\n}\n.second-switch input:checked + .second-slider:before {\n transform: translateX(20px);\n}\n\n\n.second-cookie-row {\n border: 1px solid #e5e7eb;\n padding: 16px;\n border-radius: 10px;\n display: flex;\n background: #fff;\n}\n.second-cookie-inner {\n display: flex;\n gap: 20px;\n}\n.second-cookie-labels {\n min-width: 140px;\n color: #6b7280;\n font-size: 12px;\n}\n.second-cookie-values {\n flex: 1;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.second-cookie-name {\n font-weight: 600;\n}\n.second-cookie-desc {\n color: #4b5563;\n}\n\n\n.second-footer-buttons {\n margin-top: 12px;\n display: flex;\n flex-wrap: wrap;\n gap: 12px;\n}\n\n.second-accordion-title {\n font-size: 16px; \n font-weight: 600; \n color: #111827; \n margin: 0;\n}\n\n\n.second-accordion-desc {\n font-size: 14px; \n line-height: 1.5; \n color: #4b5563; \n margin: 6px 0 0 0;\n white-space: pre-line; \n}\n\n\n.second-accordion-control {\n font-size: 14px;\n color: #1f2933;\n display: flex;\n align-items: center;\n flex-shrink: 0;\n}\n\n\n.second-cookie-desc {\n font-size: 14px;\n line-height: 1.5;\n color: #4b5563;\n}\n'),"function"==typeof SuppressedError&&SuppressedError;var r="cookie_pre_user_id";var s=function(n){var e=n.attributeNames,t=n.fallbackEnv;if("undefined"==typeof document)return null!=t?t:null;var o=function(n){if(!n)return null;for(var t=0,o=e;t<o.length;t++){var a=o[t],i=n.getAttribute(a);if(i)return i}return null},a=o(document.currentScript);if(a)return a;var i=e.map(function(n){return"script[".concat(n,"]")}).join(", "),d=o(document.querySelector(i));return d||(null!=t?t:null)}({attributeNames:["data-cookiebanner-id"],fallbackEnv:void 0})||"";function l(){s?a(new e(s)):console.warn("Cookie banner client ID is not configured. Provide data-cookiebanner-id on the script tag or set COOKIEBANNER_CLIENT_ID.")}return function(){if("undefined"!=typeof document&&Boolean(s)){var n=function(){l()};"loading"===document.readyState?document.addEventListener("DOMContentLoaded",n,{once:!0}):n()}}(),n.init=l,n}({});
package/package.json ADDED
@@ -0,0 +1,8 @@
1
+ {
2
+ "name": "@eswanthfrslabs/altas-dashboard-cookie-sdk",
3
+ "version": "1.0.0",
4
+ "main": "dist/myscript.js",
5
+ "files": [
6
+ "dist"
7
+ ]
8
+ }