define(['jquery','underscore','Magento_Ui/js/lib/core/storage/local','uiRegistry'],function($,_,localStorage,registry){"use strict";var persistentLayerGA4={storageExpiryTime:30,locStorage:registry.get('localStorage'),init:function(options){this.storageExpiryTime=options.storageExpiryTime||this.storageExpiryTime;var persistentObject={persist:{}};var pushToDatalayer=false;var promoClickObj=this.getPromotionClick();if(promoClickObj){persistentObject.persist.persist_promotion={};persistentObject.persist.persist_promotion.promotion=promoClickObj;pushToDatalayer=true;} if(pushToDatalayer){window.dataLayer.push(persistentObject);}},setItem:function(key,value){var storedValue={expiryTime:new Date(),value:value};this.locStorage.set(key,storedValue);},getItem:function(key){var storedValue=this.locStorage.get(key);if(typeof storedValue!=='undefined'){if(this.isExpired(storedValue.expiryTime)){this.removeItem(key);return false;} return storedValue.value;} return false;},removeItem:function(key){this.locStorage.remove(key);},isExpired:function(date){var currDate=new Date();var startDate=new Date(date);var difference=(currDate.getTime()-startDate.getTime())/ 1000;difference /=60;difference=Math.abs(Math.round(difference));return difference>this.storageExpiryTime;},setPromotionClick:function(promoClick){this.setItem('promo_click',promoClick);},getPromotionClick:function(){return this.getItem('promo_click');}};return persistentLayerGA4;});