Changeset 3403714
- Timestamp:
- 11/26/2025 11:41:40 PM (3 months ago)
- Location:
- optincraft
- Files:
-
- 14 edited
- 1 copied
-
tags/0.1.2 (copied) (copied from optincraft/trunk)
-
tags/0.1.2/assets/build/css/frontend.asset.php (modified) (1 diff)
-
tags/0.1.2/assets/build/css/frontend.css (modified) (1 diff)
-
tags/0.1.2/assets/build/js/frontend/app.asset.php (modified) (1 diff)
-
tags/0.1.2/assets/build/js/frontend/app.js (modified) (1 diff)
-
tags/0.1.2/optincraft.php (modified) (1 diff)
-
tags/0.1.2/readme.txt (modified) (2 diffs)
-
tags/0.1.2/resources/views/campaign.php (modified) (2 diffs)
-
trunk/assets/build/css/frontend.asset.php (modified) (1 diff)
-
trunk/assets/build/css/frontend.css (modified) (1 diff)
-
trunk/assets/build/js/frontend/app.asset.php (modified) (1 diff)
-
trunk/assets/build/js/frontend/app.js (modified) (1 diff)
-
trunk/optincraft.php (modified) (1 diff)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/resources/views/campaign.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
optincraft/tags/0.1.2/assets/build/css/frontend.asset.php
r3403628 r3403714 1 <?php return array('dependencies' => array(), 'version' => ' 2f3cb4e5901f4947dca9');1 <?php return array('dependencies' => array(), 'version' => '893d4016a072e192c89c'); -
optincraft/tags/0.1.2/assets/build/css/frontend.css
r3403628 r3403714 1 .optincraft-campaign{overflow:hidden;position:relative}.optincraft-effect-canvas{height:100%;left:0;opacity:1;pointer-events:none;position:absolute;top:0;width:100% ;z-index:-1}.optincraft-campaign-overlay{backdrop-filter:blur(2px);background-color:rgba(0,0,0,.5);height:100%;left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease-in-out;width:100%;z-index:100000}.optincraft-form-wrapper{transition:height .3s ease-in-out}.optincraft-campaign-content{background:#fff;box-shadow:0 20px 40px rgba(0,0,0,.3);overflow:auto;transition:opacity .15s linear}.optincraft-modal-content{position:relative}.optincraft-modal:hover{box-shadow:0 25px 50px rgba(0,0,0,.4)}.optincraft-campaign-overlay.open,.optincraft-modal.open{opacity:1}button.optincraft-button{cursor:pointer;height:100%;line-height:1;padding:6px;transition:all .2s ease;white-space:normal;width:100%}.optincraft-form-fields__item-input input{padding:6px 16px;width:100%}.optincraft-countdown-unit{box-shadow:0 4px 8px rgba(0,0,0,.2);box-sizing:border-box;padding:3.75px 10.75px}.optincraft-countdown-inner,.optincraft-countdown-message{align-items:center;background-color:transparent;display:flex;gap:8px;justify-content:center}.optincraft-countdown-message{font-size:16px;font-weight:600}.optincraft-countdown-message[hidden]{display:none}.optincraft-button-spinner{opacity:.7;pointer-events:none;position:relative}.optincraft-button-spinner>*{visibility:hidden}.optincraft-button-spinner:after{animation:optincraft-spin .6s linear infinite;border:2px solid;border-radius:50%;border-top:2px solid transparent;content:"";height:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}@keyframes optincraft-spin{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}@keyframes modalSlideIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}1 .optincraft-campaign{overflow:hidden;position:relative}.optincraft-effect-canvas{height:100%;left:0;opacity:1;pointer-events:none;position:absolute;top:0;width:100%}.optincraft-campaign-overlay{backdrop-filter:blur(2px);background-color:rgba(0,0,0,.5);left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease-in-out;z-index:100000}.optincraft-form-wrapper{transition:height .3s ease-in-out}.optincraft-campaign-content{background:#fff;box-shadow:0 20px 40px rgba(0,0,0,.3);overflow:auto;transition:opacity .15s linear}.optincraft-modal-content{position:relative}.optincraft-modal:hover{box-shadow:0 25px 50px rgba(0,0,0,.4)}.optincraft-campaign-overlay.open,.optincraft-modal.open{opacity:1}button.optincraft-button{cursor:pointer;height:100%;line-height:1;padding:6px;transition:all .2s ease;white-space:normal;width:100%}.optincraft-form-fields__item-input input{padding:6px 16px;width:100%}.optincraft-countdown-unit{box-shadow:0 4px 8px rgba(0,0,0,.2);box-sizing:border-box;padding:3.75px 10.75px}.optincraft-countdown-inner,.optincraft-countdown-message{align-items:center;background-color:transparent;display:flex;gap:8px;justify-content:center}.optincraft-countdown-message{font-size:16px;font-weight:600}.optincraft-countdown-message[hidden]{display:none}.optincraft-button-spinner{opacity:.7;pointer-events:none;position:relative}.optincraft-button-spinner>*{visibility:hidden}.optincraft-button-spinner:after{animation:optincraft-spin .6s linear infinite;border:2px solid;border-radius:50%;border-top:2px solid transparent;content:"";height:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}@keyframes optincraft-spin{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}@keyframes modalSlideIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}} -
optincraft/tags/0.1.2/assets/build/js/frontend/app.asset.php
r3403628 r3403714 1 <?php return array('dependencies' => array('@wordpress/interactivity'), 'version' => ' 224a7c69e80b98561b87', 'type' => 'module');1 <?php return array('dependencies' => array('@wordpress/interactivity'), 'version' => '3939756e6b9713802702', 'type' => 'module'); -
optincraft/tags/0.1.2/assets/build/js/frontend/app.js
r3403628 r3403714 1 import{getContext as t,getElement as e,store as a}from"@wordpress/interactivity";const n=wp.apiFetch,o=()=>window.crypto&&"randomUUID"in window.crypto?window.crypto.randomUUID():"vc_"+Math.random().toString(36).slice(2)+Date.now().toString(36),i=()=>{try{const t="optincraft_visitor_id";let e=localStorage.getItem(t);return e||(e=o(),localStorage.setItem(t,e)),e}catch(t){return o()}},r=()=>{try{const t="optincraft_session_id";let e=sessionStorage.getItem(t);return e||(e=o(),sessionStorage.setItem(t,e)),e}catch(t){return o()}},s=()=>{const t=window.innerWidth||document.documentElement.clientWidth;return t<=768?"mobile":t<=1024?"tablet":"desktop"},l=()=>{const t=navigator.userAgent;return t.includes("Chrome")&&!t.includes("Edge")?"Chrome":t.includes("Safari")&&!t.includes("Chrome")?"Safari":t.includes("Firefox")?"Firefox":t.includes("Edg")?"Edge":"Other"},c=t=>{try{return new URL(t).hostname}catch(t){return""}},p=()=>{const t=document.referrer||"";return t?c(window.location.href)===c(t)?"":t:""},d=async(t,e,a)=>{try{await n({path:"/optincraft/events",method:"POST",data:{campaign_id:t,event_type:e,page_url:window.location.href,referrer:p(),device:s(),browser:l(),revenue:null!=a?a:0,visitor_id:i(),session_id:r()}})}catch(t){}};function u(t){return wp.apiFetch(t)}function f(){return window.lodash||window._}function m(t,e){var a;t.isShowing=!0,null!==(a=t.settings.prevent_background_scroll)&&void 0!==a&&a&&(document.body.style.overflow="hidden"),function(t){const e="optincraft_viewed_campaigns";try{const a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]||(n[t.campaign_id]={view_count:0,first_viewed_at:Date.now(),last_viewed_at:Date.now()}),n[t.campaign_id].view_count+=1,n[t.campaign_id].last_viewed_at=Date.now(),localStorage.setItem(e,JSON.stringify(n))}catch(t){console.warn("Failed to store campaign view data:",t)}}(t),d(Number(t.campaign_id),"impression")}function _(t,e,a){var n;t.isShowing=!1,setTimeout(()=>{e.style.height="0",e.style.width="0"},400),null!==(n=t.settings.prevent_background_scroll)&&void 0!==n&&n&&document.body.style.removeProperty("overflow");try{const e="optincraft_closed_campaigns",a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]={closed_at:Date.now()},localStorage.setItem(e,JSON.stringify(n))}catch(t){console.warn("Failed to store campaign close time:",t)}wp.hooks.doAction("optincraft_campaign_closed",t,a)}function y(t,e){const a=t.ref?.closest(".optincraft-campaign"),n=a?.querySelector(".optincraft-campaign-content"),o=a?.querySelector(".optincraft-campaign-overlay");if(!n)return void _(e,o,t);const i=a?.querySelector(".optincraft-form-wrapper"),r=e.settings,s=e.type,l=r.exit_animation;"fade_out"===l&&(n.style.opacity="0");const c={floating_bar:{slide_out_left:"translate(-100%, 0)",slide_out_right:"translate(100%, 0)",slide_out_up:"translate(0, -100%)",slide_out_down:"translate(0, 100%)"},slide_in:{slide_out_left:"translate(-100%, 0)",slide_out_right:"translate(calc(100% + 20px), 0)",slide_out_up:"translate(0, calc(-100% - 1000px))",slide_out_down:"translate(0, calc(100% + 20px))"},popup:{slide_out_left:"translate(-100%, -50%)",slide_out_right:"translate(100%, -50%)",slide_out_up:"translate(-50%, -100%)",slide_out_down:"translate(-50%, 100%)"}};if(c[s]?.[l]){if("slide_out_up"===l&&"floating_bar"===s&&i){const t=i,e="0.3s cubic-bezier(0.4, 0, 0.2, 1)";t.style.transition=`height ${e}`,t.style.willChange="height",n.style.transition=`transform ${e}`,n.style.willChange="transform",requestAnimationFrame(()=>{t.style.height="0",setTimeout(()=>{t.style.willChange="auto",n.style.willChange="auto"},350)})}n.style.transform=c[s][l],"popup"===s&&(l.includes("left")&&(n.style.left="0"),l.includes("right")&&(n.style.right="0"),l.includes("up")&&(n.style.top="0"),l.includes("down")&&(n.style.bottom="0"))}const p={back_out_left:"translate(-100%, 0)",back_out_right:"slide_in"===s?"translate(calc(100% + 20px), 0)":"translate(100%, 0)",back_out_up:"slide_in"===s?"translate(0, calc(-100% - 1000px))":"translate(0, -100%)",back_out_down:"slide_in"===s?"translate(0, calc(100% + 20px))":"translate(0, 100%)"};if(l.startsWith("back_out")){n.style.transition="transform 0.4s, opacity 0.4s";const t="popup"===s?"translate(-50%, -50%) scale(0.7)":"translate(0, 0) scale(0.7)";n.style.transform=t,setTimeout(()=>{const t=p[l];if("popup"===s){const e="translate(-50%, -50%) ";n.style.transform=e+t.replace("translate(","").replace(")","")+" scale(0.7)"}else n.style.transform=t+" scale(0.7)";n.style.opacity="0"},600)}if("bounce_out"===l){const t="popup"===s?"translate(-50%, -50%)":"translate(0, 0)";n.style.transform=`${t} scale(0.9)`,setTimeout(()=>{n.style.transform=`${t} scale(1.1)`},250),setTimeout(()=>{n.style.opacity="0",n.style.transform=`${t} scale(0.3)`},450)}if("rotate_out"===l){const t="popup"===s?"translate(-50%, -50%)":"translate(0, 0)";n.style.transform=`${t} rotate(200deg)`,setTimeout(()=>n.style.opacity="0",500)}if("zoom_out"===l){const t="translate(0, 0)";n.style.transform=`${t} scale(.3)`,setTimeout(()=>{n.style.opacity="0"},300)}setTimeout(()=>{_(e,o,t),"floating_bar"!==e.type&&(n.style.display="none"),"slide_out_up"===l&&"floating_bar"===s||(i.style.height="0")},800)}function g(t){return window.innerWidth<=768?t.mobile:window.innerWidth<=1024?t.tablet:t.desktop}function h(t){return window.innerWidth<=768?t.mobile:window.innerWidth<=1024?t.tablet:t.desktop}const{isEmpty:w}=f(),b=t=>{if(w(t))return{backgroundImage:"none",backgroundPosition:"center",backgroundSize:"auto",backgroundRepeat:"no-repeat"};let e="auto";switch(t.backgroundType){case"cover":e="cover";break;case"contain":e="contain";break;default:0!==t.width.length&&(e=t.width)}return{backgroundImage:`url(${t.url})`,backgroundPosition:`${t.focalPoint.left}% ${t.focalPoint.top}%`,backgroundSize:e,backgroundRepeat:t.repeat?"repeat":"no-repeat"}},v=t=>{const{color:e,width:a,style:n="solid"}=t;if(e||a)return{border:`${a||"0px"} ${n} ${e||""}`};const{top:o={},right:i={},bottom:r={},left:s={}}=t;return{borderTop:`${o.width||"0px"} ${o.style||"solid"} ${o.color||""}`,borderRight:`${i.width||"0px"} ${i.style||"solid"} ${i.color||""}`,borderBottom:`${r.width||"0px"} ${r.style||"solid"} ${r.color||""}`,borderLeft:`${s.width||"0px"} ${s.style||"solid"} ${s.color||""}`}},$=t=>{if("object"==typeof t){const{topLeft:e,topRight:a,bottomLeft:n,bottomRight:o}=t;return{borderTopLeftRadius:e||0,borderTopRightRadius:a||0,borderBottomLeftRadius:n||0,borderBottomRightRadius:o||0}}return{borderRadius:t||0}},{isEmpty:k}=f();function S(t){return Object.entries(t).map(([t,e])=>`${t.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${e};`).join(" ")}const x=["Inter","Arial","Tahoma","Verdana","Helvetica","Times New Roman","Trebuchet MX","Georgia"],T=(t,e)=>{const a=function(t,e,a){var n;const o=((n=window).optincraftGlobalState||(n.optincraftGlobalState={})).admin;if(!o)return a;const i=o;return i&&Object.prototype.hasOwnProperty.call(i,e)?i[e]:a}(0,"optincraft_load_font_family",null);if(!a?.hasOwnProperty(t)&&!x.includes(t)){!function(t,e,a,n=!1,o){var i;window.optincraftGlobalState||(window.optincraftGlobalState={});const r=(i=window.optincraftGlobalState)[t]||(i[t]={}),s=void 0!==o?r[o]||(r[o]={}):r,l=n&&isObject(a)&&isObject(s[e])?{...s[e],...a}:a;s[e]=l}("admin","optincraft_load_font_family",{...a,[t]:t});const n=document.createElement("link");n.href=`https://fonts.googleapis.com/css?family=${t}:${e}`,n.rel="stylesheet",n.type="text/css",document.body.appendChild(n)}};a("optincraft/campaign",{callbacks:{init:function(){const a=t(),n=e();if(!n.ref)return;const o=n.ref.querySelector(".optincraft-campaign-content"),i=n.ref.querySelector(".optincraft-form-wrapper");if(!o)return;const r=a.settings,s="undefined"==typeof window?"desktop":window.matchMedia("(max-width: 767px)").matches?"mobile":window.matchMedia("(min-width: 768px) and (max-width: 1024px)").matches?"tablet":"desktop";let l={};if("color"===r.background_type)l.background=r.colors.background.default;else if("image"===r.background_type){const t=r?.background_image;t?.desktop?function(t,e){if(!t?.desktop)return;const a=`optincraft-bg-image-${e}`;if(document.getElementById(a))return;const n=`.optincraft-campaign-${e} .optincraft-campaign-content`;let o=`\n\t\t${n} {\n\t\t\t${S(b(t?.desktop))}\n\t\t}\n\t`;k(t?.tablet)||(o+=`\n\t\t\t@media (max-width: 1024px) {\n\t\t\t\t${n} {\n\t\t\t\t\t${S(b(t?.tablet))}\n\t\t\t\t}\n\t\t\t}\n\t\t`),k(t?.mobile)||(o+=`\n\t\t\t@media (max-width: 768px) {\n\t\t\t\t${n} {\n\t\t\t\t\t${S(b(t?.mobile))}\n\t\t\t\t}\n\t\t\t}\n\t\t`);const i=document.createElement("style");i.id=a,i.textContent=o,document.head.appendChild(i)}(t,a.campaign_id):l={...l,...b(t)}}if(r.border?.border&&(l={...l,...v(r.border.border)}),r.border?.radius&&(l={...l,...$(r.border.radius)}),Object.assign(o.style,{...l}),!r[`show_${s}`])return;switch(a.type){case"floating_bar":i.style.width=h(a.width),i.style.height="0px",o.style.boxShadow="none";break;case"popup":i.style.width=h(a.width),i.style.height="0px",Object.assign(o.style,{position:"fixed",top:"50%",left:"50%",transform:"translate(-50%, -50%)",display:"none",transition:"opacity 0.3s ease-in, transform 0.3s ease-in, left 0.3s ease-in, right 0.3s ease-in, top 0.3s ease-in, bottom 0.3s ease-in"});break;case"slide_in":i.style.width=h(a.width),Object.assign(o.style,{position:"fixed",boxShadow:"none",display:"none",..."top"===r.vertical_position?{top:"20px"}:{bottom:"20px"},..."left"===r.horizontal_position?{left:"20px"}:{right:"20px"},zIndex:"-1"})}const c=r.entrance_animation,p=a.type,d="0.3s ease-in",u="0.7s, opacity 0.1s",f="0.75s cubic-bezier(0.215,0.610,0.355,1), opacity 0.3s ease-out",_="0.75s, opacity 0.4s ease-out",y="0.6s cubic-bezier(0.215,0.610,0.355,1), opacity 0.3s ease-out",w={fade_in:{popup:{opacity:"0",transform:"translate(-50%, -50%)",transition:"opacity 0.3s ease-in, transform 0.3s ease-in, position 0.3s ease-in"},floating_bar:{opacity:"0",transform:"translate(0,0)",transition:`opacity ${d}, transform ${d}`},slide_in:{opacity:"0",transform:"translate(0,0)",transition:`opacity ${d}, transform ${d}`}},slide_in_left:{popup:{opacity:"0",transform:"translate(-100%,-50%)"},floating_bar:{transform:"translate(-100%,-50%)",transition:`transform ${d}`},slide_in:{transform:"translate(-100%,0)",transition:`transform ${d}`}},slide_in_right:{popup:{opacity:"0",transform:"translate(100%,-50%)"},floating_bar:{transform:"translate(100%,-50%)",transition:`transform ${d}`},slide_in:{transform:"translate(calc(100% + 20px),0)",transition:`transform ${d}`}},slide_in_down:{popup:{opacity:"0",transform:"translate(-50%,-100%)"},floating_bar:{transform:"translate(0,-100%)",transition:`transform ${d}`},slide_in:{transform:"translate(0,-100%)",transition:`transform ${d}`}},slide_in_up:{popup:{opacity:"0",transform:"translate(-50%,100%)"},floating_bar:{transform:"translate(0,100%)",transition:`transform ${d}`},slide_in:{transform:"translate(0,calc(100% + 20px))",transition:`transform ${d}`}},back_in_left:{popup:{opacity:"0",transform:"translate(calc(50% - 2000px), -50%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(-100%,0) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(-100%,0) scale(0.7)",transition:`transform ${u}`}},back_in_right:{popup:{opacity:"0",transform:"translate(100%, -50%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(100%,0) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(100%,0) scale(0.7)",transition:`transform ${u}`}},back_in_up:{popup:{opacity:"0",transform:"translate(-50%,100%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(0,100%) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(0,100%) scale(0.7)",transition:`transform ${u}`}},back_in_down:{popup:{opacity:"0",transform:"translate(-50%,-100%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(0,-100%) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(0,-100%) scale(0.7)",transition:`transform ${u}`}},bounce_in:{popup:{opacity:"0",transform:"translate(-50%, -50%) scale(0.3)",transition:f},floating_bar:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:f},slide_in:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:f}},rotate_in:{popup:{opacity:"0",transform:"translate(-50%, -50%) rotate(-200deg)",transition:_},floating_bar:{opacity:"0",transform:"translate(0,0) rotate(-200deg)",transition:_},slide_in:{opacity:"0",transform:"translate(0,0) rotate(-200deg)",transition:_}},zoom_in:{popup:{opacity:"0",transform:"translate(-50%,-50%) scale(0.3)",transition:y},floating_bar:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:y},slide_in:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:y}}},x=w[c]?.[p];if(x&&Object.entries(x).forEach(([t,e])=>{o.style[t]=e}),!wp.hooks.applyFilters("optincraft_is_allowed_to_show_campaign",!0,a))return;if(r.stop_on_close){const t=localStorage.getItem("optincraft_closed_campaigns");if(t&&JSON.parse(t)[a.campaign_id])return}if(r.stop_on_action&&function(t){const e=localStorage.getItem("optincraft_actioned_campaigns");return!!(e?JSON.parse(e):{})[t.campaign_id]}(a))return;if(function(t){const e=t.settings.display_frequency,a=t.settings.display_once_every,n=t.settings.display_once_every_interval;try{switch(e){case"every_page_load":return!1;case"display_once_every":if(!a||!n)return!1;const e="optincraft_viewed_campaigns",o=localStorage.getItem(e),i=o?JSON.parse(o):{};if(!i[t.campaign_id])return!1;const r=i[t.campaign_id];return Date.now()-r.last_viewed_at<({seconds:1e3,minutes:6e4,hours:36e5,days:864e5,weeks:6048e5,months:2592e6,years:31536e6}[a]*n||0);default:return wp.hooks.applyFilters("optincraft_is_campaign_display_frequency_reached",!1,t)}}catch(t){return console.warn("Failed to check campaign display frequency:",t),!1}}(a))return;const T=()=>{if(!a.isShowing)return;o.style.zIndex="100000";const t=a.type,e={popup:"translate(-50%, -50%) scale(1)",slide_in:"translate(0, 0) scale(1)",floating_bar:"translate(0, 0) scale(1)"};var n;if("fade_in"!==c)return["slide_in_left","slide_in_right","slide_in_down","slide_in_up"].includes(c)?(o.style.opacity="1","slide_in_down"===c&&"floating_bar"===t&&(o.style.transition="transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease-out",o.style.willChange="transform"),o.style.transform="popup"===t?"translate(-50%, -50%)":"translate(0,0)",void("slide_in_down"===c&&"floating_bar"===t&&setTimeout(()=>{o.style.willChange="auto"},350))):c.startsWith("back_in")?(n=c.replace("back_in_",""),o.style.opacity="1",o.style.transform={left:{popup:"translate(calc( -50% + 20px ), -50%) scale(0.8)",slide_in:"translate(calc( 50% - 20px ), 0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},right:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},up:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},down:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"}}[n][t],void setTimeout(()=>{o.style.transform=e[t]},560)):"bounce_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} scale(1.05)`,setTimeout(()=>{o.style.transform=`${e} scale(0.9)`},350),setTimeout(()=>{o.style.transform=`${e} scale(1)`},550)})():"rotate_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} rotate(20deg)`,setTimeout(()=>{o.style.transform=`${e} rotate(0deg)`},550)})():"zoom_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} scale(1.05)`,setTimeout(()=>{o.style.transform=`${e} scale(1)`},350)})():void 0;o.style.opacity="1"},O=t=>{ if("slide_in_down"===c&&"floating_bar"===a.type&&i){const e=i,o="0.3s cubic-bezier(0.4, 0, 0.2, 1)";return e.style.transition=`height ${o}`,e.style.willChange="height",e.style.height=g(a.height),void requestAnimationFrame(()=>{requestAnimationFrame(()=>{m(a),T(),setTimeout(()=>{e.style.willChange="auto"},350),t(),wp.hooks.doAction("optincraft_campaign_opened",a,n)})})}m(a),T(),t(),wp.hooks.doAction("optincraft_campaign_opened",a,n)};switch(r.open_event){case"on_load":{var I;const t=null!==(I=r.open_delay)&&void 0!==I?I:1;setTimeout(()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block")},1e3*t-500),setTimeout(()=>{O(()=>{})},1e3*t);break}case"after_inactivity":{var E;const t=1e3*(null!==(E=r.after_inactivity_time)&&void 0!==E?E:30);let e=null,n=!1;const s=()=>{e&&clearTimeout(e),window.removeEventListener("mousemove",p),window.removeEventListener("mousedown",p),window.removeEventListener("keypress",p),window.removeEventListener("scroll",p),window.removeEventListener("touchstart",p)},l=()=>{n||(n=!0,O(s))},p=()=>{e&&clearTimeout(e),setTimeout(()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block")},t-500),e=setTimeout(l,t)};["mousemove","mousedown","keypress","scroll","touchstart"].forEach(t=>window.addEventListener(t,p)),p();break}case"click_count":{var C;const t=null!==(C=r.click_count)&&void 0!==C?C:1;let e=0;const n=()=>{window.removeEventListener("click",l)},s=()=>{O(n)},l=()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block"),++e>=t&&setTimeout(()=>{"floating_bar"===a.type&&s()},300)};window.addEventListener("click",l);break}default:wp.hooks.doAction("optincraft_campaign_open_event",r.open_event,a,o,i,r,O)}},initForm:function(){const a=t(),n=e(),o=n.ref,i=jQuery;i(o).on("submit",async function(t){if(t.preventDefault(),!a.isFormSubmitting){a.isFormSubmitting=!0;var e=i(this).serializeArray().reduce(function(t,e){return t[e.name]=e.value,t},{});i(o).find("input, select, textarea").prop("disabled",!0),function(t){const e="optincraft_actioned_campaigns",a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]={actioned_at:Date.now()},localStorage.setItem(e,JSON.stringify(n))}(a),await u({path:"/optincraft/responses",method:"POST",data:{campaign_id:a.campaign_id,form_data:e}}).finally(()=>{a.isFormSubmitting=!1,i(o).find("input, select, textarea").prop("disabled",!1)}),i(o).trigger("reset"),u({path:"/optincraft/queue/dispatch",method:"POST"}),"redirect-url"===a.form_after_submit&&(window.location.href=a.form_redirect_url||"https://crafium.com/optincraft"),y(n,a)}})},initCountdown:function(){const e=t(),a=window.moment,n="true"===e.use_user_timezone;let o=n?a.utc(e.due_date):a(e.due_date);const i=n?a.utc():a(),r=o.diff(i);e.show_countdown=!0;const s=e.time_left;let l=null;r>0&&(l=setInterval(function(){const t=n?a.utc():a(),i=o.diff(t);if(i>0){const t=a.duration(i);s.days=Math.floor(t.asDays()),s.hours=t.hours(),s.minutes=t.minutes(),s.seconds=t.seconds()}else s.days=0,s.hours=0,s.minutes=0,s.seconds=0,null!==l&&(clearInterval(l),l=null),"hide_counter"===e.action?e.show_countdown=!1:"show_message"===e.action?(e.show_countdown=!1,e.show_action_message=!0):"redirect_to_url"===e.action&&e.redirect_url&&(window.location.href=e.redirect_url)},1e3))},initFont:function(){const e=t().fontFamilies;for(const t of e)T(t.family,t.variations)}},actions:{onClickButton:()=>{const a=t();"none"!==a.action&&(a.track_conversion&&d(Number(a.campaign_id),"conversion"),"redirect-url"===a.action&&(window.location.href=a.redirect_url),"close"===a.action)&&y(e(),a)},onClickOutside:()=>{const a=t();a.settings.close_on_click_outside&&y(e(),a)}}}),document.addEventListener("DOMContentLoaded",async()=>{try{await n({path:"/optincraft/events",method:"POST",data:{event_type:"view",page_url:window.location.href,referrer:p(),device:s(),browser:l(),visitor_id:i(),session_id:r()}})}catch(t){}});1 import{getContext as t,getElement as e,store as a}from"@wordpress/interactivity";const n=wp.apiFetch,o=()=>window.crypto&&"randomUUID"in window.crypto?window.crypto.randomUUID():"vc_"+Math.random().toString(36).slice(2)+Date.now().toString(36),i=()=>{try{const t="optincraft_visitor_id";let e=localStorage.getItem(t);return e||(e=o(),localStorage.setItem(t,e)),e}catch(t){return o()}},r=()=>{try{const t="optincraft_session_id";let e=sessionStorage.getItem(t);return e||(e=o(),sessionStorage.setItem(t,e)),e}catch(t){return o()}},s=()=>{const t=window.innerWidth||document.documentElement.clientWidth;return t<=768?"mobile":t<=1024?"tablet":"desktop"},l=()=>{const t=navigator.userAgent;return t.includes("Chrome")&&!t.includes("Edge")?"Chrome":t.includes("Safari")&&!t.includes("Chrome")?"Safari":t.includes("Firefox")?"Firefox":t.includes("Edg")?"Edge":"Other"},c=t=>{try{return new URL(t).hostname}catch(t){return""}},p=()=>{const t=document.referrer||"";return t?c(window.location.href)===c(t)?"":t:""},d=async(t,e,a)=>{try{await n({path:"/optincraft/events",method:"POST",data:{campaign_id:t,event_type:e,page_url:window.location.href,referrer:p(),device:s(),browser:l(),revenue:null!=a?a:0,visitor_id:i(),session_id:r()}})}catch(t){}};function u(t){return wp.apiFetch(t)}function f(){return window.lodash||window._}function m(t,e){var a;t.isShowing=!0,null!==(a=t.settings.prevent_background_scroll)&&void 0!==a&&a&&(document.body.style.overflow="hidden"),function(t){const e="optincraft_viewed_campaigns";try{const a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]||(n[t.campaign_id]={view_count:0,first_viewed_at:Date.now(),last_viewed_at:Date.now()}),n[t.campaign_id].view_count+=1,n[t.campaign_id].last_viewed_at=Date.now(),localStorage.setItem(e,JSON.stringify(n))}catch(t){console.warn("Failed to store campaign view data:",t)}}(t),d(Number(t.campaign_id),"impression")}function _(t,e,a){var n;t.isShowing=!1,setTimeout(()=>{e.style.height="0",e.style.width="0"},400),null!==(n=t.settings.prevent_background_scroll)&&void 0!==n&&n&&document.body.style.removeProperty("overflow");try{const e="optincraft_closed_campaigns",a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]={closed_at:Date.now()},localStorage.setItem(e,JSON.stringify(n))}catch(t){console.warn("Failed to store campaign close time:",t)}wp.hooks.doAction("optincraft_campaign_closed",t,a)}function y(t,e){const a=t.ref?.closest(".optincraft-campaign"),n=a?.querySelector(".optincraft-campaign-content"),o=a?.querySelector(".optincraft-campaign-overlay");if(!n)return void _(e,o,t);const i=a?.querySelector(".optincraft-form-wrapper"),r=e.settings,s=e.type,l=r.exit_animation;"fade_out"===l&&(n.style.opacity="0");const c={floating_bar:{slide_out_left:"translate(-100%, 0)",slide_out_right:"translate(100%, 0)",slide_out_up:"translate(0, -100%)",slide_out_down:"translate(0, 100%)"},slide_in:{slide_out_left:"translate(-100%, 0)",slide_out_right:"translate(calc(100% + 20px), 0)",slide_out_up:"translate(0, calc(-100% - 1000px))",slide_out_down:"translate(0, calc(100% + 20px))"},popup:{slide_out_left:"translate(-100%, -50%)",slide_out_right:"translate(100%, -50%)",slide_out_up:"translate(-50%, -100%)",slide_out_down:"translate(-50%, 100%)"}};if(c[s]?.[l]){if("slide_out_up"===l&&"floating_bar"===s&&i){const t=i,e="0.3s cubic-bezier(0.4, 0, 0.2, 1)";t.style.transition=`height ${e}`,t.style.willChange="height",n.style.transition=`transform ${e}`,n.style.willChange="transform",requestAnimationFrame(()=>{t.style.height="0",setTimeout(()=>{t.style.willChange="auto",n.style.willChange="auto"},350)})}n.style.transform=c[s][l],"popup"===s&&(l.includes("left")&&(n.style.left="0"),l.includes("right")&&(n.style.right="0"),l.includes("up")&&(n.style.top="0"),l.includes("down")&&(n.style.bottom="0"))}const p={back_out_left:"translate(-100%, 0)",back_out_right:"slide_in"===s?"translate(calc(100% + 20px), 0)":"translate(100%, 0)",back_out_up:"slide_in"===s?"translate(0, calc(-100% - 1000px))":"translate(0, -100%)",back_out_down:"slide_in"===s?"translate(0, calc(100% + 20px))":"translate(0, 100%)"};if(l.startsWith("back_out")){n.style.transition="transform 0.4s, opacity 0.4s";const t="popup"===s?"translate(-50%, -50%) scale(0.7)":"translate(0, 0) scale(0.7)";n.style.transform=t,setTimeout(()=>{const t=p[l];if("popup"===s){const e="translate(-50%, -50%) ";n.style.transform=e+t.replace("translate(","").replace(")","")+" scale(0.7)"}else n.style.transform=t+" scale(0.7)";n.style.opacity="0"},600)}if("bounce_out"===l){const t="popup"===s?"translate(-50%, -50%)":"translate(0, 0)";n.style.transform=`${t} scale(0.9)`,setTimeout(()=>{n.style.transform=`${t} scale(1.1)`},250),setTimeout(()=>{n.style.opacity="0",n.style.transform=`${t} scale(0.3)`},450)}if("rotate_out"===l){const t="popup"===s?"translate(-50%, -50%)":"translate(0, 0)";n.style.transform=`${t} rotate(200deg)`,setTimeout(()=>n.style.opacity="0",500)}if("zoom_out"===l){const t="translate(0, 0)";n.style.transform=`${t} scale(.3)`,setTimeout(()=>{n.style.opacity="0"},300)}setTimeout(()=>{_(e,o,t),"floating_bar"!==e.type&&(n.style.display="none"),"slide_out_up"===l&&"floating_bar"===s||(i.style.height="0")},800)}function g(t){return window.innerWidth<=768?t.mobile:window.innerWidth<=1024?t.tablet:t.desktop}function h(t){return window.innerWidth<=768?t.mobile:window.innerWidth<=1024?t.tablet:t.desktop}const{isEmpty:w}=f(),b=t=>{if(w(t))return{backgroundImage:"none",backgroundPosition:"center",backgroundSize:"auto",backgroundRepeat:"no-repeat"};let e="auto";switch(t.backgroundType){case"cover":e="cover";break;case"contain":e="contain";break;default:0!==t.width.length&&(e=t.width)}return{backgroundImage:`url(${t.url})`,backgroundPosition:`${t.focalPoint.left}% ${t.focalPoint.top}%`,backgroundSize:e,backgroundRepeat:t.repeat?"repeat":"no-repeat"}},v=t=>{const{color:e,width:a,style:n="solid"}=t;if(e||a)return{border:`${a||"0px"} ${n} ${e||""}`};const{top:o={},right:i={},bottom:r={},left:s={}}=t;return{borderTop:`${o.width||"0px"} ${o.style||"solid"} ${o.color||""}`,borderRight:`${i.width||"0px"} ${i.style||"solid"} ${i.color||""}`,borderBottom:`${r.width||"0px"} ${r.style||"solid"} ${r.color||""}`,borderLeft:`${s.width||"0px"} ${s.style||"solid"} ${s.color||""}`}},$=t=>{if("object"==typeof t){const{topLeft:e,topRight:a,bottomLeft:n,bottomRight:o}=t;return{borderTopLeftRadius:e||0,borderTopRightRadius:a||0,borderBottomLeftRadius:n||0,borderBottomRightRadius:o||0}}return{borderRadius:t||0}},{isEmpty:k}=f();function S(t){return Object.entries(t).map(([t,e])=>`${t.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${e};`).join(" ")}const x=["Inter","Arial","Tahoma","Verdana","Helvetica","Times New Roman","Trebuchet MX","Georgia"],T=(t,e)=>{const a=function(t,e,a){var n;const o=((n=window).optincraftGlobalState||(n.optincraftGlobalState={})).admin;if(!o)return a;const i=o;return i&&Object.prototype.hasOwnProperty.call(i,e)?i[e]:a}(0,"optincraft_load_font_family",null);if(!a?.hasOwnProperty(t)&&!x.includes(t)){!function(t,e,a,n=!1,o){var i;window.optincraftGlobalState||(window.optincraftGlobalState={});const r=(i=window.optincraftGlobalState)[t]||(i[t]={}),s=void 0!==o?r[o]||(r[o]={}):r,l=n&&isObject(a)&&isObject(s[e])?{...s[e],...a}:a;s[e]=l}("admin","optincraft_load_font_family",{...a,[t]:t});const n=document.createElement("link");n.href=`https://fonts.googleapis.com/css?family=${t}:${e}`,n.rel="stylesheet",n.type="text/css",document.body.appendChild(n)}};a("optincraft/campaign",{callbacks:{init:function(){const a=t(),n=e();if(!n.ref)return;const o=n.ref.querySelector(".optincraft-campaign-content"),i=n.ref.querySelector(".optincraft-form-wrapper");if(!o)return;const r=a.settings,s="undefined"==typeof window?"desktop":window.matchMedia("(max-width: 767px)").matches?"mobile":window.matchMedia("(min-width: 768px) and (max-width: 1024px)").matches?"tablet":"desktop";let l={};if("color"===r.background_type)l.background=r.colors.background.default;else if("image"===r.background_type){const t=r?.background_image;t?.desktop?function(t,e){if(!t?.desktop)return;const a=`optincraft-bg-image-${e}`;if(document.getElementById(a))return;const n=`.optincraft-campaign-${e} .optincraft-campaign-content`;let o=`\n\t\t${n} {\n\t\t\t${S(b(t?.desktop))}\n\t\t}\n\t`;k(t?.tablet)||(o+=`\n\t\t\t@media (max-width: 1024px) {\n\t\t\t\t${n} {\n\t\t\t\t\t${S(b(t?.tablet))}\n\t\t\t\t}\n\t\t\t}\n\t\t`),k(t?.mobile)||(o+=`\n\t\t\t@media (max-width: 768px) {\n\t\t\t\t${n} {\n\t\t\t\t\t${S(b(t?.mobile))}\n\t\t\t\t}\n\t\t\t}\n\t\t`);const i=document.createElement("style");i.id=a,i.textContent=o,document.head.appendChild(i)}(t,a.campaign_id):l={...l,...b(t)}}if(r.border?.border&&(l={...l,...v(r.border.border)}),r.border?.radius&&(l={...l,...$(r.border.radius)}),Object.assign(o.style,{...l}),!r[`show_${s}`])return;switch(a.type){case"floating_bar":i.style.width=h(a.width),i.style.height="0px",o.style.boxShadow="none";break;case"popup":i.style.width=h(a.width),i.style.height="0px",Object.assign(o.style,{position:"fixed",top:"50%",left:"50%",transform:"translate(-50%, -50%)",display:"none",transition:"opacity 0.3s ease-in, transform 0.3s ease-in, left 0.3s ease-in, right 0.3s ease-in, top 0.3s ease-in, bottom 0.3s ease-in"});break;case"slide_in":i.style.width=h(a.width),Object.assign(o.style,{position:"fixed",boxShadow:"none",display:"none",..."top"===r.vertical_position?{top:"20px"}:{bottom:"20px"},..."left"===r.horizontal_position?{left:"20px"}:{right:"20px"},zIndex:"-1"})}const c=r.entrance_animation,p=a.type,d="0.3s ease-in",u="0.7s, opacity 0.1s",f="0.75s cubic-bezier(0.215,0.610,0.355,1), opacity 0.3s ease-out",_="0.75s, opacity 0.4s ease-out",y="0.6s cubic-bezier(0.215,0.610,0.355,1), opacity 0.3s ease-out",w={fade_in:{popup:{opacity:"0",transform:"translate(-50%, -50%)",transition:"opacity 0.3s ease-in, transform 0.3s ease-in, position 0.3s ease-in"},floating_bar:{opacity:"0",transform:"translate(0,0)",transition:`opacity ${d}, transform ${d}`},slide_in:{opacity:"0",transform:"translate(0,0)",transition:`opacity ${d}, transform ${d}`}},slide_in_left:{popup:{opacity:"0",transform:"translate(-100%,-50%)"},floating_bar:{transform:"translate(-100%,-50%)",transition:`transform ${d}`},slide_in:{transform:"translate(-100%,0)",transition:`transform ${d}`}},slide_in_right:{popup:{opacity:"0",transform:"translate(100%,-50%)"},floating_bar:{transform:"translate(100%,-50%)",transition:`transform ${d}`},slide_in:{transform:"translate(calc(100% + 20px),0)",transition:`transform ${d}`}},slide_in_down:{popup:{opacity:"0",transform:"translate(-50%,-100%)"},floating_bar:{transform:"translate(0,-100%)",transition:`transform ${d}`},slide_in:{transform:"translate(0,-100%)",transition:`transform ${d}`}},slide_in_up:{popup:{opacity:"0",transform:"translate(-50%,100%)"},floating_bar:{transform:"translate(0,100%)",transition:`transform ${d}`},slide_in:{transform:"translate(0,calc(100% + 20px))",transition:`transform ${d}`}},back_in_left:{popup:{opacity:"0",transform:"translate(calc(50% - 2000px), -50%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(-100%,0) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(-100%,0) scale(0.7)",transition:`transform ${u}`}},back_in_right:{popup:{opacity:"0",transform:"translate(100%, -50%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(100%,0) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(100%,0) scale(0.7)",transition:`transform ${u}`}},back_in_up:{popup:{opacity:"0",transform:"translate(-50%,100%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(0,100%) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(0,100%) scale(0.7)",transition:`transform ${u}`}},back_in_down:{popup:{opacity:"0",transform:"translate(-50%,-100%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(0,-100%) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(0,-100%) scale(0.7)",transition:`transform ${u}`}},bounce_in:{popup:{opacity:"0",transform:"translate(-50%, -50%) scale(0.3)",transition:f},floating_bar:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:f},slide_in:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:f}},rotate_in:{popup:{opacity:"0",transform:"translate(-50%, -50%) rotate(-200deg)",transition:_},floating_bar:{opacity:"0",transform:"translate(0,0) rotate(-200deg)",transition:_},slide_in:{opacity:"0",transform:"translate(0,0) rotate(-200deg)",transition:_}},zoom_in:{popup:{opacity:"0",transform:"translate(-50%,-50%) scale(0.3)",transition:y},floating_bar:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:y},slide_in:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:y}}},x=w[c]?.[p];if(x&&Object.entries(x).forEach(([t,e])=>{o.style[t]=e}),!wp.hooks.applyFilters("optincraft_is_allowed_to_show_campaign",!0,a))return;if(r.stop_on_close){const t=localStorage.getItem("optincraft_closed_campaigns");if(t&&JSON.parse(t)[a.campaign_id])return}if(r.stop_on_action&&function(t){const e=localStorage.getItem("optincraft_actioned_campaigns");return!!(e?JSON.parse(e):{})[t.campaign_id]}(a))return;if(function(t){const e=t.settings.display_frequency,a=t.settings.display_once_every,n=t.settings.display_once_every_interval;try{switch(e){case"every_page_load":return!1;case"display_once_every":if(!a||!n)return!1;const e="optincraft_viewed_campaigns",o=localStorage.getItem(e),i=o?JSON.parse(o):{};if(!i[t.campaign_id])return!1;const r=i[t.campaign_id];return Date.now()-r.last_viewed_at<({seconds:1e3,minutes:6e4,hours:36e5,days:864e5,weeks:6048e5,months:2592e6,years:31536e6}[a]*n||0);default:return wp.hooks.applyFilters("optincraft_is_campaign_display_frequency_reached",!1,t)}}catch(t){return console.warn("Failed to check campaign display frequency:",t),!1}}(a))return;const T=()=>{if(!a.isShowing)return;o.style.zIndex="100000";const t=a.type,e={popup:"translate(-50%, -50%) scale(1)",slide_in:"translate(0, 0) scale(1)",floating_bar:"translate(0, 0) scale(1)"};var n;if("fade_in"!==c)return["slide_in_left","slide_in_right","slide_in_down","slide_in_up"].includes(c)?(o.style.opacity="1","slide_in_down"===c&&"floating_bar"===t&&(o.style.transition="transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease-out",o.style.willChange="transform"),o.style.transform="popup"===t?"translate(-50%, -50%)":"translate(0,0)",void("slide_in_down"===c&&"floating_bar"===t&&setTimeout(()=>{o.style.willChange="auto"},350))):c.startsWith("back_in")?(n=c.replace("back_in_",""),o.style.opacity="1",o.style.transform={left:{popup:"translate(calc( -50% + 20px ), -50%) scale(0.8)",slide_in:"translate(calc( 50% - 20px ), 0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},right:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},up:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},down:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"}}[n][t],void setTimeout(()=>{o.style.transform=e[t]},560)):"bounce_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} scale(1.05)`,setTimeout(()=>{o.style.transform=`${e} scale(0.9)`},350),setTimeout(()=>{o.style.transform=`${e} scale(1)`},550)})():"rotate_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} rotate(20deg)`,setTimeout(()=>{o.style.transform=`${e} rotate(0deg)`},550)})():"zoom_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} scale(1.05)`,setTimeout(()=>{o.style.transform=`${e} scale(1)`},350)})():void 0;o.style.opacity="1"},O=t=>{const e=n.ref?.closest(".optincraft-campaign"),o=e?.querySelector(".optincraft-campaign-overlay");if(o&&(o.style.height="100%",o.style.width="100%"),"slide_in_down"===c&&"floating_bar"===a.type&&i){const e=i,o="0.3s cubic-bezier(0.4, 0, 0.2, 1)";return e.style.transition=`height ${o}`,e.style.willChange="height",e.style.height=g(a.height),void requestAnimationFrame(()=>{requestAnimationFrame(()=>{m(a),T(),setTimeout(()=>{e.style.willChange="auto"},350),t(),wp.hooks.doAction("optincraft_campaign_opened",a,n)})})}m(a),T(),t(),wp.hooks.doAction("optincraft_campaign_opened",a,n)};switch(r.open_event){case"on_load":{var I;const t=null!==(I=r.open_delay)&&void 0!==I?I:1;setTimeout(()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block")},1e3*t-500),setTimeout(()=>{O(()=>{})},1e3*t);break}case"after_inactivity":{var E;const t=1e3*(null!==(E=r.after_inactivity_time)&&void 0!==E?E:30);let e=null,n=!1;const s=()=>{e&&clearTimeout(e),window.removeEventListener("mousemove",p),window.removeEventListener("mousedown",p),window.removeEventListener("keypress",p),window.removeEventListener("scroll",p),window.removeEventListener("touchstart",p)},l=()=>{n||(n=!0,O(s))},p=()=>{e&&clearTimeout(e),setTimeout(()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block")},t-500),e=setTimeout(l,t)};["mousemove","mousedown","keypress","scroll","touchstart"].forEach(t=>window.addEventListener(t,p)),p();break}case"click_count":{var C;const t=null!==(C=r.click_count)&&void 0!==C?C:1;let e=0;const n=()=>{window.removeEventListener("click",l)},s=()=>{O(n)},l=()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block"),++e>=t&&setTimeout(()=>{"floating_bar"===a.type&&s()},300)};window.addEventListener("click",l);break}default:wp.hooks.doAction("optincraft_campaign_open_event",r.open_event,a,o,i,r,O)}},initForm:function(){const a=t(),n=e(),o=n.ref,i=jQuery;i(o).on("submit",async function(t){if(t.preventDefault(),!a.isFormSubmitting){a.isFormSubmitting=!0;var e=i(this).serializeArray().reduce(function(t,e){return t[e.name]=e.value,t},{});i(o).find("input, select, textarea").prop("disabled",!0),function(t){const e="optincraft_actioned_campaigns",a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]={actioned_at:Date.now()},localStorage.setItem(e,JSON.stringify(n))}(a),await u({path:"/optincraft/responses",method:"POST",data:{campaign_id:a.campaign_id,form_data:e}}).finally(()=>{a.isFormSubmitting=!1,i(o).find("input, select, textarea").prop("disabled",!1)}),i(o).trigger("reset"),u({path:"/optincraft/queue/dispatch",method:"POST"}),"redirect-url"===a.form_after_submit&&(window.location.href=a.form_redirect_url||"https://crafium.com/optincraft"),y(n,a)}})},initCountdown:function(){const e=t(),a=window.moment,n="true"===e.use_user_timezone;let o=n?a.utc(e.due_date):a(e.due_date);const i=n?a.utc():a(),r=o.diff(i);e.show_countdown=!0;const s=e.time_left;let l=null;r>0&&(l=setInterval(function(){const t=n?a.utc():a(),i=o.diff(t);if(i>0){const t=a.duration(i);s.days=Math.floor(t.asDays()),s.hours=t.hours(),s.minutes=t.minutes(),s.seconds=t.seconds()}else s.days=0,s.hours=0,s.minutes=0,s.seconds=0,null!==l&&(clearInterval(l),l=null),"hide_counter"===e.action?e.show_countdown=!1:"show_message"===e.action?(e.show_countdown=!1,e.show_action_message=!0):"redirect_to_url"===e.action&&e.redirect_url&&(window.location.href=e.redirect_url)},1e3))},initFont:function(){const e=t().fontFamilies;for(const t of e)T(t.family,t.variations)}},actions:{onClickButton:()=>{const a=t();"none"!==a.action&&(a.track_conversion&&d(Number(a.campaign_id),"conversion"),"redirect-url"===a.action&&(window.location.href=a.redirect_url),"close"===a.action)&&y(e(),a)},onClickOutside:()=>{const a=t();a.settings.close_on_click_outside&&y(e(),a)}}}),document.addEventListener("DOMContentLoaded",async()=>{try{await n({path:"/optincraft/events",method:"POST",data:{event_type:"view",page_url:window.location.href,referrer:p(),device:s(),browser:l(),visitor_id:i(),session_id:r()}})}catch(t){}}); -
optincraft/tags/0.1.2/optincraft.php
r3403628 r3403714 9 9 * Plugin Name: OptinCraft 10 10 * Description: The Powerful Drag & Drop Popup Builder for WordPress 11 * Version: 0.1. 111 * Version: 0.1.2 12 12 * Requires at least: 6.5 13 13 * Requires PHP: 7.4 -
optincraft/tags/0.1.2/readme.txt
r3403628 r3403714 5 5 Tested up to: 6.8 6 6 Requires PHP: 7.4 7 Stable tag: 0.1. 17 Stable tag: 0.1.2 8 8 License: GPLv3 9 9 License URI: https://www.gnu.org/licenses/gpl-3.0.html … … 177 177 178 178 == Changelog == 179 = 0.1.2(beta) - 27 November 2025 = 180 * Fixed: Campaign overlay not hiding issue. 181 179 182 = 0.1.1(beta) - 27 November 2025 = 180 183 * Fixed: Floating bar campaign entrance and exit animation issue. -
optincraft/tags/0.1.2/resources/views/campaign.php
r3403628 r3403714 45 45 ]; 46 46 47 $canvas_styles = ''; 48 49 if ( isset( $settings['effect'] ) && in_array( $settings['effect'], ['stars', 'christmas_light'], true ) && 'floating_bar' !== $campaign->type ) { 50 $canvas_styles = 'z-index: -1;'; 51 } 52 47 53 ?> 48 54 … … 67 73 include __DIR__ . '/popup.php'; 68 74 } ?> 69 <canvas class="optincraft-effect-canvas" id="optincraft-effect-canvas-<?php echo esc_attr( $campaign->id ); ?>"></canvas>75 <canvas class="optincraft-effect-canvas" style="<?php echo esc_attr( $canvas_styles ); ?>" id="optincraft-effect-canvas-<?php echo esc_attr( $campaign->id ); ?>"></canvas> 70 76 </form> 71 77 </div> -
optincraft/trunk/assets/build/css/frontend.asset.php
r3403628 r3403714 1 <?php return array('dependencies' => array(), 'version' => ' 2f3cb4e5901f4947dca9');1 <?php return array('dependencies' => array(), 'version' => '893d4016a072e192c89c'); -
optincraft/trunk/assets/build/css/frontend.css
r3403628 r3403714 1 .optincraft-campaign{overflow:hidden;position:relative}.optincraft-effect-canvas{height:100%;left:0;opacity:1;pointer-events:none;position:absolute;top:0;width:100% ;z-index:-1}.optincraft-campaign-overlay{backdrop-filter:blur(2px);background-color:rgba(0,0,0,.5);height:100%;left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease-in-out;width:100%;z-index:100000}.optincraft-form-wrapper{transition:height .3s ease-in-out}.optincraft-campaign-content{background:#fff;box-shadow:0 20px 40px rgba(0,0,0,.3);overflow:auto;transition:opacity .15s linear}.optincraft-modal-content{position:relative}.optincraft-modal:hover{box-shadow:0 25px 50px rgba(0,0,0,.4)}.optincraft-campaign-overlay.open,.optincraft-modal.open{opacity:1}button.optincraft-button{cursor:pointer;height:100%;line-height:1;padding:6px;transition:all .2s ease;white-space:normal;width:100%}.optincraft-form-fields__item-input input{padding:6px 16px;width:100%}.optincraft-countdown-unit{box-shadow:0 4px 8px rgba(0,0,0,.2);box-sizing:border-box;padding:3.75px 10.75px}.optincraft-countdown-inner,.optincraft-countdown-message{align-items:center;background-color:transparent;display:flex;gap:8px;justify-content:center}.optincraft-countdown-message{font-size:16px;font-weight:600}.optincraft-countdown-message[hidden]{display:none}.optincraft-button-spinner{opacity:.7;pointer-events:none;position:relative}.optincraft-button-spinner>*{visibility:hidden}.optincraft-button-spinner:after{animation:optincraft-spin .6s linear infinite;border:2px solid;border-radius:50%;border-top:2px solid transparent;content:"";height:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}@keyframes optincraft-spin{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}@keyframes modalSlideIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}1 .optincraft-campaign{overflow:hidden;position:relative}.optincraft-effect-canvas{height:100%;left:0;opacity:1;pointer-events:none;position:absolute;top:0;width:100%}.optincraft-campaign-overlay{backdrop-filter:blur(2px);background-color:rgba(0,0,0,.5);left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease-in-out;z-index:100000}.optincraft-form-wrapper{transition:height .3s ease-in-out}.optincraft-campaign-content{background:#fff;box-shadow:0 20px 40px rgba(0,0,0,.3);overflow:auto;transition:opacity .15s linear}.optincraft-modal-content{position:relative}.optincraft-modal:hover{box-shadow:0 25px 50px rgba(0,0,0,.4)}.optincraft-campaign-overlay.open,.optincraft-modal.open{opacity:1}button.optincraft-button{cursor:pointer;height:100%;line-height:1;padding:6px;transition:all .2s ease;white-space:normal;width:100%}.optincraft-form-fields__item-input input{padding:6px 16px;width:100%}.optincraft-countdown-unit{box-shadow:0 4px 8px rgba(0,0,0,.2);box-sizing:border-box;padding:3.75px 10.75px}.optincraft-countdown-inner,.optincraft-countdown-message{align-items:center;background-color:transparent;display:flex;gap:8px;justify-content:center}.optincraft-countdown-message{font-size:16px;font-weight:600}.optincraft-countdown-message[hidden]{display:none}.optincraft-button-spinner{opacity:.7;pointer-events:none;position:relative}.optincraft-button-spinner>*{visibility:hidden}.optincraft-button-spinner:after{animation:optincraft-spin .6s linear infinite;border:2px solid;border-radius:50%;border-top:2px solid transparent;content:"";height:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}@keyframes optincraft-spin{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}@keyframes modalSlideIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}} -
optincraft/trunk/assets/build/js/frontend/app.asset.php
r3403628 r3403714 1 <?php return array('dependencies' => array('@wordpress/interactivity'), 'version' => ' 224a7c69e80b98561b87', 'type' => 'module');1 <?php return array('dependencies' => array('@wordpress/interactivity'), 'version' => '3939756e6b9713802702', 'type' => 'module'); -
optincraft/trunk/assets/build/js/frontend/app.js
r3403628 r3403714 1 import{getContext as t,getElement as e,store as a}from"@wordpress/interactivity";const n=wp.apiFetch,o=()=>window.crypto&&"randomUUID"in window.crypto?window.crypto.randomUUID():"vc_"+Math.random().toString(36).slice(2)+Date.now().toString(36),i=()=>{try{const t="optincraft_visitor_id";let e=localStorage.getItem(t);return e||(e=o(),localStorage.setItem(t,e)),e}catch(t){return o()}},r=()=>{try{const t="optincraft_session_id";let e=sessionStorage.getItem(t);return e||(e=o(),sessionStorage.setItem(t,e)),e}catch(t){return o()}},s=()=>{const t=window.innerWidth||document.documentElement.clientWidth;return t<=768?"mobile":t<=1024?"tablet":"desktop"},l=()=>{const t=navigator.userAgent;return t.includes("Chrome")&&!t.includes("Edge")?"Chrome":t.includes("Safari")&&!t.includes("Chrome")?"Safari":t.includes("Firefox")?"Firefox":t.includes("Edg")?"Edge":"Other"},c=t=>{try{return new URL(t).hostname}catch(t){return""}},p=()=>{const t=document.referrer||"";return t?c(window.location.href)===c(t)?"":t:""},d=async(t,e,a)=>{try{await n({path:"/optincraft/events",method:"POST",data:{campaign_id:t,event_type:e,page_url:window.location.href,referrer:p(),device:s(),browser:l(),revenue:null!=a?a:0,visitor_id:i(),session_id:r()}})}catch(t){}};function u(t){return wp.apiFetch(t)}function f(){return window.lodash||window._}function m(t,e){var a;t.isShowing=!0,null!==(a=t.settings.prevent_background_scroll)&&void 0!==a&&a&&(document.body.style.overflow="hidden"),function(t){const e="optincraft_viewed_campaigns";try{const a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]||(n[t.campaign_id]={view_count:0,first_viewed_at:Date.now(),last_viewed_at:Date.now()}),n[t.campaign_id].view_count+=1,n[t.campaign_id].last_viewed_at=Date.now(),localStorage.setItem(e,JSON.stringify(n))}catch(t){console.warn("Failed to store campaign view data:",t)}}(t),d(Number(t.campaign_id),"impression")}function _(t,e,a){var n;t.isShowing=!1,setTimeout(()=>{e.style.height="0",e.style.width="0"},400),null!==(n=t.settings.prevent_background_scroll)&&void 0!==n&&n&&document.body.style.removeProperty("overflow");try{const e="optincraft_closed_campaigns",a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]={closed_at:Date.now()},localStorage.setItem(e,JSON.stringify(n))}catch(t){console.warn("Failed to store campaign close time:",t)}wp.hooks.doAction("optincraft_campaign_closed",t,a)}function y(t,e){const a=t.ref?.closest(".optincraft-campaign"),n=a?.querySelector(".optincraft-campaign-content"),o=a?.querySelector(".optincraft-campaign-overlay");if(!n)return void _(e,o,t);const i=a?.querySelector(".optincraft-form-wrapper"),r=e.settings,s=e.type,l=r.exit_animation;"fade_out"===l&&(n.style.opacity="0");const c={floating_bar:{slide_out_left:"translate(-100%, 0)",slide_out_right:"translate(100%, 0)",slide_out_up:"translate(0, -100%)",slide_out_down:"translate(0, 100%)"},slide_in:{slide_out_left:"translate(-100%, 0)",slide_out_right:"translate(calc(100% + 20px), 0)",slide_out_up:"translate(0, calc(-100% - 1000px))",slide_out_down:"translate(0, calc(100% + 20px))"},popup:{slide_out_left:"translate(-100%, -50%)",slide_out_right:"translate(100%, -50%)",slide_out_up:"translate(-50%, -100%)",slide_out_down:"translate(-50%, 100%)"}};if(c[s]?.[l]){if("slide_out_up"===l&&"floating_bar"===s&&i){const t=i,e="0.3s cubic-bezier(0.4, 0, 0.2, 1)";t.style.transition=`height ${e}`,t.style.willChange="height",n.style.transition=`transform ${e}`,n.style.willChange="transform",requestAnimationFrame(()=>{t.style.height="0",setTimeout(()=>{t.style.willChange="auto",n.style.willChange="auto"},350)})}n.style.transform=c[s][l],"popup"===s&&(l.includes("left")&&(n.style.left="0"),l.includes("right")&&(n.style.right="0"),l.includes("up")&&(n.style.top="0"),l.includes("down")&&(n.style.bottom="0"))}const p={back_out_left:"translate(-100%, 0)",back_out_right:"slide_in"===s?"translate(calc(100% + 20px), 0)":"translate(100%, 0)",back_out_up:"slide_in"===s?"translate(0, calc(-100% - 1000px))":"translate(0, -100%)",back_out_down:"slide_in"===s?"translate(0, calc(100% + 20px))":"translate(0, 100%)"};if(l.startsWith("back_out")){n.style.transition="transform 0.4s, opacity 0.4s";const t="popup"===s?"translate(-50%, -50%) scale(0.7)":"translate(0, 0) scale(0.7)";n.style.transform=t,setTimeout(()=>{const t=p[l];if("popup"===s){const e="translate(-50%, -50%) ";n.style.transform=e+t.replace("translate(","").replace(")","")+" scale(0.7)"}else n.style.transform=t+" scale(0.7)";n.style.opacity="0"},600)}if("bounce_out"===l){const t="popup"===s?"translate(-50%, -50%)":"translate(0, 0)";n.style.transform=`${t} scale(0.9)`,setTimeout(()=>{n.style.transform=`${t} scale(1.1)`},250),setTimeout(()=>{n.style.opacity="0",n.style.transform=`${t} scale(0.3)`},450)}if("rotate_out"===l){const t="popup"===s?"translate(-50%, -50%)":"translate(0, 0)";n.style.transform=`${t} rotate(200deg)`,setTimeout(()=>n.style.opacity="0",500)}if("zoom_out"===l){const t="translate(0, 0)";n.style.transform=`${t} scale(.3)`,setTimeout(()=>{n.style.opacity="0"},300)}setTimeout(()=>{_(e,o,t),"floating_bar"!==e.type&&(n.style.display="none"),"slide_out_up"===l&&"floating_bar"===s||(i.style.height="0")},800)}function g(t){return window.innerWidth<=768?t.mobile:window.innerWidth<=1024?t.tablet:t.desktop}function h(t){return window.innerWidth<=768?t.mobile:window.innerWidth<=1024?t.tablet:t.desktop}const{isEmpty:w}=f(),b=t=>{if(w(t))return{backgroundImage:"none",backgroundPosition:"center",backgroundSize:"auto",backgroundRepeat:"no-repeat"};let e="auto";switch(t.backgroundType){case"cover":e="cover";break;case"contain":e="contain";break;default:0!==t.width.length&&(e=t.width)}return{backgroundImage:`url(${t.url})`,backgroundPosition:`${t.focalPoint.left}% ${t.focalPoint.top}%`,backgroundSize:e,backgroundRepeat:t.repeat?"repeat":"no-repeat"}},v=t=>{const{color:e,width:a,style:n="solid"}=t;if(e||a)return{border:`${a||"0px"} ${n} ${e||""}`};const{top:o={},right:i={},bottom:r={},left:s={}}=t;return{borderTop:`${o.width||"0px"} ${o.style||"solid"} ${o.color||""}`,borderRight:`${i.width||"0px"} ${i.style||"solid"} ${i.color||""}`,borderBottom:`${r.width||"0px"} ${r.style||"solid"} ${r.color||""}`,borderLeft:`${s.width||"0px"} ${s.style||"solid"} ${s.color||""}`}},$=t=>{if("object"==typeof t){const{topLeft:e,topRight:a,bottomLeft:n,bottomRight:o}=t;return{borderTopLeftRadius:e||0,borderTopRightRadius:a||0,borderBottomLeftRadius:n||0,borderBottomRightRadius:o||0}}return{borderRadius:t||0}},{isEmpty:k}=f();function S(t){return Object.entries(t).map(([t,e])=>`${t.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${e};`).join(" ")}const x=["Inter","Arial","Tahoma","Verdana","Helvetica","Times New Roman","Trebuchet MX","Georgia"],T=(t,e)=>{const a=function(t,e,a){var n;const o=((n=window).optincraftGlobalState||(n.optincraftGlobalState={})).admin;if(!o)return a;const i=o;return i&&Object.prototype.hasOwnProperty.call(i,e)?i[e]:a}(0,"optincraft_load_font_family",null);if(!a?.hasOwnProperty(t)&&!x.includes(t)){!function(t,e,a,n=!1,o){var i;window.optincraftGlobalState||(window.optincraftGlobalState={});const r=(i=window.optincraftGlobalState)[t]||(i[t]={}),s=void 0!==o?r[o]||(r[o]={}):r,l=n&&isObject(a)&&isObject(s[e])?{...s[e],...a}:a;s[e]=l}("admin","optincraft_load_font_family",{...a,[t]:t});const n=document.createElement("link");n.href=`https://fonts.googleapis.com/css?family=${t}:${e}`,n.rel="stylesheet",n.type="text/css",document.body.appendChild(n)}};a("optincraft/campaign",{callbacks:{init:function(){const a=t(),n=e();if(!n.ref)return;const o=n.ref.querySelector(".optincraft-campaign-content"),i=n.ref.querySelector(".optincraft-form-wrapper");if(!o)return;const r=a.settings,s="undefined"==typeof window?"desktop":window.matchMedia("(max-width: 767px)").matches?"mobile":window.matchMedia("(min-width: 768px) and (max-width: 1024px)").matches?"tablet":"desktop";let l={};if("color"===r.background_type)l.background=r.colors.background.default;else if("image"===r.background_type){const t=r?.background_image;t?.desktop?function(t,e){if(!t?.desktop)return;const a=`optincraft-bg-image-${e}`;if(document.getElementById(a))return;const n=`.optincraft-campaign-${e} .optincraft-campaign-content`;let o=`\n\t\t${n} {\n\t\t\t${S(b(t?.desktop))}\n\t\t}\n\t`;k(t?.tablet)||(o+=`\n\t\t\t@media (max-width: 1024px) {\n\t\t\t\t${n} {\n\t\t\t\t\t${S(b(t?.tablet))}\n\t\t\t\t}\n\t\t\t}\n\t\t`),k(t?.mobile)||(o+=`\n\t\t\t@media (max-width: 768px) {\n\t\t\t\t${n} {\n\t\t\t\t\t${S(b(t?.mobile))}\n\t\t\t\t}\n\t\t\t}\n\t\t`);const i=document.createElement("style");i.id=a,i.textContent=o,document.head.appendChild(i)}(t,a.campaign_id):l={...l,...b(t)}}if(r.border?.border&&(l={...l,...v(r.border.border)}),r.border?.radius&&(l={...l,...$(r.border.radius)}),Object.assign(o.style,{...l}),!r[`show_${s}`])return;switch(a.type){case"floating_bar":i.style.width=h(a.width),i.style.height="0px",o.style.boxShadow="none";break;case"popup":i.style.width=h(a.width),i.style.height="0px",Object.assign(o.style,{position:"fixed",top:"50%",left:"50%",transform:"translate(-50%, -50%)",display:"none",transition:"opacity 0.3s ease-in, transform 0.3s ease-in, left 0.3s ease-in, right 0.3s ease-in, top 0.3s ease-in, bottom 0.3s ease-in"});break;case"slide_in":i.style.width=h(a.width),Object.assign(o.style,{position:"fixed",boxShadow:"none",display:"none",..."top"===r.vertical_position?{top:"20px"}:{bottom:"20px"},..."left"===r.horizontal_position?{left:"20px"}:{right:"20px"},zIndex:"-1"})}const c=r.entrance_animation,p=a.type,d="0.3s ease-in",u="0.7s, opacity 0.1s",f="0.75s cubic-bezier(0.215,0.610,0.355,1), opacity 0.3s ease-out",_="0.75s, opacity 0.4s ease-out",y="0.6s cubic-bezier(0.215,0.610,0.355,1), opacity 0.3s ease-out",w={fade_in:{popup:{opacity:"0",transform:"translate(-50%, -50%)",transition:"opacity 0.3s ease-in, transform 0.3s ease-in, position 0.3s ease-in"},floating_bar:{opacity:"0",transform:"translate(0,0)",transition:`opacity ${d}, transform ${d}`},slide_in:{opacity:"0",transform:"translate(0,0)",transition:`opacity ${d}, transform ${d}`}},slide_in_left:{popup:{opacity:"0",transform:"translate(-100%,-50%)"},floating_bar:{transform:"translate(-100%,-50%)",transition:`transform ${d}`},slide_in:{transform:"translate(-100%,0)",transition:`transform ${d}`}},slide_in_right:{popup:{opacity:"0",transform:"translate(100%,-50%)"},floating_bar:{transform:"translate(100%,-50%)",transition:`transform ${d}`},slide_in:{transform:"translate(calc(100% + 20px),0)",transition:`transform ${d}`}},slide_in_down:{popup:{opacity:"0",transform:"translate(-50%,-100%)"},floating_bar:{transform:"translate(0,-100%)",transition:`transform ${d}`},slide_in:{transform:"translate(0,-100%)",transition:`transform ${d}`}},slide_in_up:{popup:{opacity:"0",transform:"translate(-50%,100%)"},floating_bar:{transform:"translate(0,100%)",transition:`transform ${d}`},slide_in:{transform:"translate(0,calc(100% + 20px))",transition:`transform ${d}`}},back_in_left:{popup:{opacity:"0",transform:"translate(calc(50% - 2000px), -50%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(-100%,0) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(-100%,0) scale(0.7)",transition:`transform ${u}`}},back_in_right:{popup:{opacity:"0",transform:"translate(100%, -50%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(100%,0) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(100%,0) scale(0.7)",transition:`transform ${u}`}},back_in_up:{popup:{opacity:"0",transform:"translate(-50%,100%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(0,100%) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(0,100%) scale(0.7)",transition:`transform ${u}`}},back_in_down:{popup:{opacity:"0",transform:"translate(-50%,-100%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(0,-100%) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(0,-100%) scale(0.7)",transition:`transform ${u}`}},bounce_in:{popup:{opacity:"0",transform:"translate(-50%, -50%) scale(0.3)",transition:f},floating_bar:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:f},slide_in:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:f}},rotate_in:{popup:{opacity:"0",transform:"translate(-50%, -50%) rotate(-200deg)",transition:_},floating_bar:{opacity:"0",transform:"translate(0,0) rotate(-200deg)",transition:_},slide_in:{opacity:"0",transform:"translate(0,0) rotate(-200deg)",transition:_}},zoom_in:{popup:{opacity:"0",transform:"translate(-50%,-50%) scale(0.3)",transition:y},floating_bar:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:y},slide_in:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:y}}},x=w[c]?.[p];if(x&&Object.entries(x).forEach(([t,e])=>{o.style[t]=e}),!wp.hooks.applyFilters("optincraft_is_allowed_to_show_campaign",!0,a))return;if(r.stop_on_close){const t=localStorage.getItem("optincraft_closed_campaigns");if(t&&JSON.parse(t)[a.campaign_id])return}if(r.stop_on_action&&function(t){const e=localStorage.getItem("optincraft_actioned_campaigns");return!!(e?JSON.parse(e):{})[t.campaign_id]}(a))return;if(function(t){const e=t.settings.display_frequency,a=t.settings.display_once_every,n=t.settings.display_once_every_interval;try{switch(e){case"every_page_load":return!1;case"display_once_every":if(!a||!n)return!1;const e="optincraft_viewed_campaigns",o=localStorage.getItem(e),i=o?JSON.parse(o):{};if(!i[t.campaign_id])return!1;const r=i[t.campaign_id];return Date.now()-r.last_viewed_at<({seconds:1e3,minutes:6e4,hours:36e5,days:864e5,weeks:6048e5,months:2592e6,years:31536e6}[a]*n||0);default:return wp.hooks.applyFilters("optincraft_is_campaign_display_frequency_reached",!1,t)}}catch(t){return console.warn("Failed to check campaign display frequency:",t),!1}}(a))return;const T=()=>{if(!a.isShowing)return;o.style.zIndex="100000";const t=a.type,e={popup:"translate(-50%, -50%) scale(1)",slide_in:"translate(0, 0) scale(1)",floating_bar:"translate(0, 0) scale(1)"};var n;if("fade_in"!==c)return["slide_in_left","slide_in_right","slide_in_down","slide_in_up"].includes(c)?(o.style.opacity="1","slide_in_down"===c&&"floating_bar"===t&&(o.style.transition="transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease-out",o.style.willChange="transform"),o.style.transform="popup"===t?"translate(-50%, -50%)":"translate(0,0)",void("slide_in_down"===c&&"floating_bar"===t&&setTimeout(()=>{o.style.willChange="auto"},350))):c.startsWith("back_in")?(n=c.replace("back_in_",""),o.style.opacity="1",o.style.transform={left:{popup:"translate(calc( -50% + 20px ), -50%) scale(0.8)",slide_in:"translate(calc( 50% - 20px ), 0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},right:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},up:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},down:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"}}[n][t],void setTimeout(()=>{o.style.transform=e[t]},560)):"bounce_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} scale(1.05)`,setTimeout(()=>{o.style.transform=`${e} scale(0.9)`},350),setTimeout(()=>{o.style.transform=`${e} scale(1)`},550)})():"rotate_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} rotate(20deg)`,setTimeout(()=>{o.style.transform=`${e} rotate(0deg)`},550)})():"zoom_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} scale(1.05)`,setTimeout(()=>{o.style.transform=`${e} scale(1)`},350)})():void 0;o.style.opacity="1"},O=t=>{ if("slide_in_down"===c&&"floating_bar"===a.type&&i){const e=i,o="0.3s cubic-bezier(0.4, 0, 0.2, 1)";return e.style.transition=`height ${o}`,e.style.willChange="height",e.style.height=g(a.height),void requestAnimationFrame(()=>{requestAnimationFrame(()=>{m(a),T(),setTimeout(()=>{e.style.willChange="auto"},350),t(),wp.hooks.doAction("optincraft_campaign_opened",a,n)})})}m(a),T(),t(),wp.hooks.doAction("optincraft_campaign_opened",a,n)};switch(r.open_event){case"on_load":{var I;const t=null!==(I=r.open_delay)&&void 0!==I?I:1;setTimeout(()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block")},1e3*t-500),setTimeout(()=>{O(()=>{})},1e3*t);break}case"after_inactivity":{var E;const t=1e3*(null!==(E=r.after_inactivity_time)&&void 0!==E?E:30);let e=null,n=!1;const s=()=>{e&&clearTimeout(e),window.removeEventListener("mousemove",p),window.removeEventListener("mousedown",p),window.removeEventListener("keypress",p),window.removeEventListener("scroll",p),window.removeEventListener("touchstart",p)},l=()=>{n||(n=!0,O(s))},p=()=>{e&&clearTimeout(e),setTimeout(()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block")},t-500),e=setTimeout(l,t)};["mousemove","mousedown","keypress","scroll","touchstart"].forEach(t=>window.addEventListener(t,p)),p();break}case"click_count":{var C;const t=null!==(C=r.click_count)&&void 0!==C?C:1;let e=0;const n=()=>{window.removeEventListener("click",l)},s=()=>{O(n)},l=()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block"),++e>=t&&setTimeout(()=>{"floating_bar"===a.type&&s()},300)};window.addEventListener("click",l);break}default:wp.hooks.doAction("optincraft_campaign_open_event",r.open_event,a,o,i,r,O)}},initForm:function(){const a=t(),n=e(),o=n.ref,i=jQuery;i(o).on("submit",async function(t){if(t.preventDefault(),!a.isFormSubmitting){a.isFormSubmitting=!0;var e=i(this).serializeArray().reduce(function(t,e){return t[e.name]=e.value,t},{});i(o).find("input, select, textarea").prop("disabled",!0),function(t){const e="optincraft_actioned_campaigns",a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]={actioned_at:Date.now()},localStorage.setItem(e,JSON.stringify(n))}(a),await u({path:"/optincraft/responses",method:"POST",data:{campaign_id:a.campaign_id,form_data:e}}).finally(()=>{a.isFormSubmitting=!1,i(o).find("input, select, textarea").prop("disabled",!1)}),i(o).trigger("reset"),u({path:"/optincraft/queue/dispatch",method:"POST"}),"redirect-url"===a.form_after_submit&&(window.location.href=a.form_redirect_url||"https://crafium.com/optincraft"),y(n,a)}})},initCountdown:function(){const e=t(),a=window.moment,n="true"===e.use_user_timezone;let o=n?a.utc(e.due_date):a(e.due_date);const i=n?a.utc():a(),r=o.diff(i);e.show_countdown=!0;const s=e.time_left;let l=null;r>0&&(l=setInterval(function(){const t=n?a.utc():a(),i=o.diff(t);if(i>0){const t=a.duration(i);s.days=Math.floor(t.asDays()),s.hours=t.hours(),s.minutes=t.minutes(),s.seconds=t.seconds()}else s.days=0,s.hours=0,s.minutes=0,s.seconds=0,null!==l&&(clearInterval(l),l=null),"hide_counter"===e.action?e.show_countdown=!1:"show_message"===e.action?(e.show_countdown=!1,e.show_action_message=!0):"redirect_to_url"===e.action&&e.redirect_url&&(window.location.href=e.redirect_url)},1e3))},initFont:function(){const e=t().fontFamilies;for(const t of e)T(t.family,t.variations)}},actions:{onClickButton:()=>{const a=t();"none"!==a.action&&(a.track_conversion&&d(Number(a.campaign_id),"conversion"),"redirect-url"===a.action&&(window.location.href=a.redirect_url),"close"===a.action)&&y(e(),a)},onClickOutside:()=>{const a=t();a.settings.close_on_click_outside&&y(e(),a)}}}),document.addEventListener("DOMContentLoaded",async()=>{try{await n({path:"/optincraft/events",method:"POST",data:{event_type:"view",page_url:window.location.href,referrer:p(),device:s(),browser:l(),visitor_id:i(),session_id:r()}})}catch(t){}});1 import{getContext as t,getElement as e,store as a}from"@wordpress/interactivity";const n=wp.apiFetch,o=()=>window.crypto&&"randomUUID"in window.crypto?window.crypto.randomUUID():"vc_"+Math.random().toString(36).slice(2)+Date.now().toString(36),i=()=>{try{const t="optincraft_visitor_id";let e=localStorage.getItem(t);return e||(e=o(),localStorage.setItem(t,e)),e}catch(t){return o()}},r=()=>{try{const t="optincraft_session_id";let e=sessionStorage.getItem(t);return e||(e=o(),sessionStorage.setItem(t,e)),e}catch(t){return o()}},s=()=>{const t=window.innerWidth||document.documentElement.clientWidth;return t<=768?"mobile":t<=1024?"tablet":"desktop"},l=()=>{const t=navigator.userAgent;return t.includes("Chrome")&&!t.includes("Edge")?"Chrome":t.includes("Safari")&&!t.includes("Chrome")?"Safari":t.includes("Firefox")?"Firefox":t.includes("Edg")?"Edge":"Other"},c=t=>{try{return new URL(t).hostname}catch(t){return""}},p=()=>{const t=document.referrer||"";return t?c(window.location.href)===c(t)?"":t:""},d=async(t,e,a)=>{try{await n({path:"/optincraft/events",method:"POST",data:{campaign_id:t,event_type:e,page_url:window.location.href,referrer:p(),device:s(),browser:l(),revenue:null!=a?a:0,visitor_id:i(),session_id:r()}})}catch(t){}};function u(t){return wp.apiFetch(t)}function f(){return window.lodash||window._}function m(t,e){var a;t.isShowing=!0,null!==(a=t.settings.prevent_background_scroll)&&void 0!==a&&a&&(document.body.style.overflow="hidden"),function(t){const e="optincraft_viewed_campaigns";try{const a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]||(n[t.campaign_id]={view_count:0,first_viewed_at:Date.now(),last_viewed_at:Date.now()}),n[t.campaign_id].view_count+=1,n[t.campaign_id].last_viewed_at=Date.now(),localStorage.setItem(e,JSON.stringify(n))}catch(t){console.warn("Failed to store campaign view data:",t)}}(t),d(Number(t.campaign_id),"impression")}function _(t,e,a){var n;t.isShowing=!1,setTimeout(()=>{e.style.height="0",e.style.width="0"},400),null!==(n=t.settings.prevent_background_scroll)&&void 0!==n&&n&&document.body.style.removeProperty("overflow");try{const e="optincraft_closed_campaigns",a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]={closed_at:Date.now()},localStorage.setItem(e,JSON.stringify(n))}catch(t){console.warn("Failed to store campaign close time:",t)}wp.hooks.doAction("optincraft_campaign_closed",t,a)}function y(t,e){const a=t.ref?.closest(".optincraft-campaign"),n=a?.querySelector(".optincraft-campaign-content"),o=a?.querySelector(".optincraft-campaign-overlay");if(!n)return void _(e,o,t);const i=a?.querySelector(".optincraft-form-wrapper"),r=e.settings,s=e.type,l=r.exit_animation;"fade_out"===l&&(n.style.opacity="0");const c={floating_bar:{slide_out_left:"translate(-100%, 0)",slide_out_right:"translate(100%, 0)",slide_out_up:"translate(0, -100%)",slide_out_down:"translate(0, 100%)"},slide_in:{slide_out_left:"translate(-100%, 0)",slide_out_right:"translate(calc(100% + 20px), 0)",slide_out_up:"translate(0, calc(-100% - 1000px))",slide_out_down:"translate(0, calc(100% + 20px))"},popup:{slide_out_left:"translate(-100%, -50%)",slide_out_right:"translate(100%, -50%)",slide_out_up:"translate(-50%, -100%)",slide_out_down:"translate(-50%, 100%)"}};if(c[s]?.[l]){if("slide_out_up"===l&&"floating_bar"===s&&i){const t=i,e="0.3s cubic-bezier(0.4, 0, 0.2, 1)";t.style.transition=`height ${e}`,t.style.willChange="height",n.style.transition=`transform ${e}`,n.style.willChange="transform",requestAnimationFrame(()=>{t.style.height="0",setTimeout(()=>{t.style.willChange="auto",n.style.willChange="auto"},350)})}n.style.transform=c[s][l],"popup"===s&&(l.includes("left")&&(n.style.left="0"),l.includes("right")&&(n.style.right="0"),l.includes("up")&&(n.style.top="0"),l.includes("down")&&(n.style.bottom="0"))}const p={back_out_left:"translate(-100%, 0)",back_out_right:"slide_in"===s?"translate(calc(100% + 20px), 0)":"translate(100%, 0)",back_out_up:"slide_in"===s?"translate(0, calc(-100% - 1000px))":"translate(0, -100%)",back_out_down:"slide_in"===s?"translate(0, calc(100% + 20px))":"translate(0, 100%)"};if(l.startsWith("back_out")){n.style.transition="transform 0.4s, opacity 0.4s";const t="popup"===s?"translate(-50%, -50%) scale(0.7)":"translate(0, 0) scale(0.7)";n.style.transform=t,setTimeout(()=>{const t=p[l];if("popup"===s){const e="translate(-50%, -50%) ";n.style.transform=e+t.replace("translate(","").replace(")","")+" scale(0.7)"}else n.style.transform=t+" scale(0.7)";n.style.opacity="0"},600)}if("bounce_out"===l){const t="popup"===s?"translate(-50%, -50%)":"translate(0, 0)";n.style.transform=`${t} scale(0.9)`,setTimeout(()=>{n.style.transform=`${t} scale(1.1)`},250),setTimeout(()=>{n.style.opacity="0",n.style.transform=`${t} scale(0.3)`},450)}if("rotate_out"===l){const t="popup"===s?"translate(-50%, -50%)":"translate(0, 0)";n.style.transform=`${t} rotate(200deg)`,setTimeout(()=>n.style.opacity="0",500)}if("zoom_out"===l){const t="translate(0, 0)";n.style.transform=`${t} scale(.3)`,setTimeout(()=>{n.style.opacity="0"},300)}setTimeout(()=>{_(e,o,t),"floating_bar"!==e.type&&(n.style.display="none"),"slide_out_up"===l&&"floating_bar"===s||(i.style.height="0")},800)}function g(t){return window.innerWidth<=768?t.mobile:window.innerWidth<=1024?t.tablet:t.desktop}function h(t){return window.innerWidth<=768?t.mobile:window.innerWidth<=1024?t.tablet:t.desktop}const{isEmpty:w}=f(),b=t=>{if(w(t))return{backgroundImage:"none",backgroundPosition:"center",backgroundSize:"auto",backgroundRepeat:"no-repeat"};let e="auto";switch(t.backgroundType){case"cover":e="cover";break;case"contain":e="contain";break;default:0!==t.width.length&&(e=t.width)}return{backgroundImage:`url(${t.url})`,backgroundPosition:`${t.focalPoint.left}% ${t.focalPoint.top}%`,backgroundSize:e,backgroundRepeat:t.repeat?"repeat":"no-repeat"}},v=t=>{const{color:e,width:a,style:n="solid"}=t;if(e||a)return{border:`${a||"0px"} ${n} ${e||""}`};const{top:o={},right:i={},bottom:r={},left:s={}}=t;return{borderTop:`${o.width||"0px"} ${o.style||"solid"} ${o.color||""}`,borderRight:`${i.width||"0px"} ${i.style||"solid"} ${i.color||""}`,borderBottom:`${r.width||"0px"} ${r.style||"solid"} ${r.color||""}`,borderLeft:`${s.width||"0px"} ${s.style||"solid"} ${s.color||""}`}},$=t=>{if("object"==typeof t){const{topLeft:e,topRight:a,bottomLeft:n,bottomRight:o}=t;return{borderTopLeftRadius:e||0,borderTopRightRadius:a||0,borderBottomLeftRadius:n||0,borderBottomRightRadius:o||0}}return{borderRadius:t||0}},{isEmpty:k}=f();function S(t){return Object.entries(t).map(([t,e])=>`${t.replace(/([A-Z])/g,"-$1").toLowerCase()}: ${e};`).join(" ")}const x=["Inter","Arial","Tahoma","Verdana","Helvetica","Times New Roman","Trebuchet MX","Georgia"],T=(t,e)=>{const a=function(t,e,a){var n;const o=((n=window).optincraftGlobalState||(n.optincraftGlobalState={})).admin;if(!o)return a;const i=o;return i&&Object.prototype.hasOwnProperty.call(i,e)?i[e]:a}(0,"optincraft_load_font_family",null);if(!a?.hasOwnProperty(t)&&!x.includes(t)){!function(t,e,a,n=!1,o){var i;window.optincraftGlobalState||(window.optincraftGlobalState={});const r=(i=window.optincraftGlobalState)[t]||(i[t]={}),s=void 0!==o?r[o]||(r[o]={}):r,l=n&&isObject(a)&&isObject(s[e])?{...s[e],...a}:a;s[e]=l}("admin","optincraft_load_font_family",{...a,[t]:t});const n=document.createElement("link");n.href=`https://fonts.googleapis.com/css?family=${t}:${e}`,n.rel="stylesheet",n.type="text/css",document.body.appendChild(n)}};a("optincraft/campaign",{callbacks:{init:function(){const a=t(),n=e();if(!n.ref)return;const o=n.ref.querySelector(".optincraft-campaign-content"),i=n.ref.querySelector(".optincraft-form-wrapper");if(!o)return;const r=a.settings,s="undefined"==typeof window?"desktop":window.matchMedia("(max-width: 767px)").matches?"mobile":window.matchMedia("(min-width: 768px) and (max-width: 1024px)").matches?"tablet":"desktop";let l={};if("color"===r.background_type)l.background=r.colors.background.default;else if("image"===r.background_type){const t=r?.background_image;t?.desktop?function(t,e){if(!t?.desktop)return;const a=`optincraft-bg-image-${e}`;if(document.getElementById(a))return;const n=`.optincraft-campaign-${e} .optincraft-campaign-content`;let o=`\n\t\t${n} {\n\t\t\t${S(b(t?.desktop))}\n\t\t}\n\t`;k(t?.tablet)||(o+=`\n\t\t\t@media (max-width: 1024px) {\n\t\t\t\t${n} {\n\t\t\t\t\t${S(b(t?.tablet))}\n\t\t\t\t}\n\t\t\t}\n\t\t`),k(t?.mobile)||(o+=`\n\t\t\t@media (max-width: 768px) {\n\t\t\t\t${n} {\n\t\t\t\t\t${S(b(t?.mobile))}\n\t\t\t\t}\n\t\t\t}\n\t\t`);const i=document.createElement("style");i.id=a,i.textContent=o,document.head.appendChild(i)}(t,a.campaign_id):l={...l,...b(t)}}if(r.border?.border&&(l={...l,...v(r.border.border)}),r.border?.radius&&(l={...l,...$(r.border.radius)}),Object.assign(o.style,{...l}),!r[`show_${s}`])return;switch(a.type){case"floating_bar":i.style.width=h(a.width),i.style.height="0px",o.style.boxShadow="none";break;case"popup":i.style.width=h(a.width),i.style.height="0px",Object.assign(o.style,{position:"fixed",top:"50%",left:"50%",transform:"translate(-50%, -50%)",display:"none",transition:"opacity 0.3s ease-in, transform 0.3s ease-in, left 0.3s ease-in, right 0.3s ease-in, top 0.3s ease-in, bottom 0.3s ease-in"});break;case"slide_in":i.style.width=h(a.width),Object.assign(o.style,{position:"fixed",boxShadow:"none",display:"none",..."top"===r.vertical_position?{top:"20px"}:{bottom:"20px"},..."left"===r.horizontal_position?{left:"20px"}:{right:"20px"},zIndex:"-1"})}const c=r.entrance_animation,p=a.type,d="0.3s ease-in",u="0.7s, opacity 0.1s",f="0.75s cubic-bezier(0.215,0.610,0.355,1), opacity 0.3s ease-out",_="0.75s, opacity 0.4s ease-out",y="0.6s cubic-bezier(0.215,0.610,0.355,1), opacity 0.3s ease-out",w={fade_in:{popup:{opacity:"0",transform:"translate(-50%, -50%)",transition:"opacity 0.3s ease-in, transform 0.3s ease-in, position 0.3s ease-in"},floating_bar:{opacity:"0",transform:"translate(0,0)",transition:`opacity ${d}, transform ${d}`},slide_in:{opacity:"0",transform:"translate(0,0)",transition:`opacity ${d}, transform ${d}`}},slide_in_left:{popup:{opacity:"0",transform:"translate(-100%,-50%)"},floating_bar:{transform:"translate(-100%,-50%)",transition:`transform ${d}`},slide_in:{transform:"translate(-100%,0)",transition:`transform ${d}`}},slide_in_right:{popup:{opacity:"0",transform:"translate(100%,-50%)"},floating_bar:{transform:"translate(100%,-50%)",transition:`transform ${d}`},slide_in:{transform:"translate(calc(100% + 20px),0)",transition:`transform ${d}`}},slide_in_down:{popup:{opacity:"0",transform:"translate(-50%,-100%)"},floating_bar:{transform:"translate(0,-100%)",transition:`transform ${d}`},slide_in:{transform:"translate(0,-100%)",transition:`transform ${d}`}},slide_in_up:{popup:{opacity:"0",transform:"translate(-50%,100%)"},floating_bar:{transform:"translate(0,100%)",transition:`transform ${d}`},slide_in:{transform:"translate(0,calc(100% + 20px))",transition:`transform ${d}`}},back_in_left:{popup:{opacity:"0",transform:"translate(calc(50% - 2000px), -50%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(-100%,0) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(-100%,0) scale(0.7)",transition:`transform ${u}`}},back_in_right:{popup:{opacity:"0",transform:"translate(100%, -50%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(100%,0) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(100%,0) scale(0.7)",transition:`transform ${u}`}},back_in_up:{popup:{opacity:"0",transform:"translate(-50%,100%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(0,100%) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(0,100%) scale(0.7)",transition:`transform ${u}`}},back_in_down:{popup:{opacity:"0",transform:"translate(-50%,-100%) scale(0.7)",transition:`transform ${u}`},floating_bar:{opacity:"0",transform:"translate(0,-100%) scale(0.7)",transition:`transform ${u}`},slide_in:{opacity:"0",transform:"translate(0,-100%) scale(0.7)",transition:`transform ${u}`}},bounce_in:{popup:{opacity:"0",transform:"translate(-50%, -50%) scale(0.3)",transition:f},floating_bar:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:f},slide_in:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:f}},rotate_in:{popup:{opacity:"0",transform:"translate(-50%, -50%) rotate(-200deg)",transition:_},floating_bar:{opacity:"0",transform:"translate(0,0) rotate(-200deg)",transition:_},slide_in:{opacity:"0",transform:"translate(0,0) rotate(-200deg)",transition:_}},zoom_in:{popup:{opacity:"0",transform:"translate(-50%,-50%) scale(0.3)",transition:y},floating_bar:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:y},slide_in:{opacity:"0",transform:"translate(0,0) scale(0.3)",transition:y}}},x=w[c]?.[p];if(x&&Object.entries(x).forEach(([t,e])=>{o.style[t]=e}),!wp.hooks.applyFilters("optincraft_is_allowed_to_show_campaign",!0,a))return;if(r.stop_on_close){const t=localStorage.getItem("optincraft_closed_campaigns");if(t&&JSON.parse(t)[a.campaign_id])return}if(r.stop_on_action&&function(t){const e=localStorage.getItem("optincraft_actioned_campaigns");return!!(e?JSON.parse(e):{})[t.campaign_id]}(a))return;if(function(t){const e=t.settings.display_frequency,a=t.settings.display_once_every,n=t.settings.display_once_every_interval;try{switch(e){case"every_page_load":return!1;case"display_once_every":if(!a||!n)return!1;const e="optincraft_viewed_campaigns",o=localStorage.getItem(e),i=o?JSON.parse(o):{};if(!i[t.campaign_id])return!1;const r=i[t.campaign_id];return Date.now()-r.last_viewed_at<({seconds:1e3,minutes:6e4,hours:36e5,days:864e5,weeks:6048e5,months:2592e6,years:31536e6}[a]*n||0);default:return wp.hooks.applyFilters("optincraft_is_campaign_display_frequency_reached",!1,t)}}catch(t){return console.warn("Failed to check campaign display frequency:",t),!1}}(a))return;const T=()=>{if(!a.isShowing)return;o.style.zIndex="100000";const t=a.type,e={popup:"translate(-50%, -50%) scale(1)",slide_in:"translate(0, 0) scale(1)",floating_bar:"translate(0, 0) scale(1)"};var n;if("fade_in"!==c)return["slide_in_left","slide_in_right","slide_in_down","slide_in_up"].includes(c)?(o.style.opacity="1","slide_in_down"===c&&"floating_bar"===t&&(o.style.transition="transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease-out",o.style.willChange="transform"),o.style.transform="popup"===t?"translate(-50%, -50%)":"translate(0,0)",void("slide_in_down"===c&&"floating_bar"===t&&setTimeout(()=>{o.style.willChange="auto"},350))):c.startsWith("back_in")?(n=c.replace("back_in_",""),o.style.opacity="1",o.style.transform={left:{popup:"translate(calc( -50% + 20px ), -50%) scale(0.8)",slide_in:"translate(calc( 50% - 20px ), 0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},right:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},up:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"},down:{popup:"translate(-50%,-50%) scale(0.8)",slide_in:"translate(0,0) scale(0.8)",floating_bar:"translate(0,0) scale(0.8)"}}[n][t],void setTimeout(()=>{o.style.transform=e[t]},560)):"bounce_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} scale(1.05)`,setTimeout(()=>{o.style.transform=`${e} scale(0.9)`},350),setTimeout(()=>{o.style.transform=`${e} scale(1)`},550)})():"rotate_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} rotate(20deg)`,setTimeout(()=>{o.style.transform=`${e} rotate(0deg)`},550)})():"zoom_in"===c?(()=>{o.style.opacity="1";const e="popup"===t?"translate(-50%, -50%)":"translate(0,0)";o.style.transform=`${e} scale(1.05)`,setTimeout(()=>{o.style.transform=`${e} scale(1)`},350)})():void 0;o.style.opacity="1"},O=t=>{const e=n.ref?.closest(".optincraft-campaign"),o=e?.querySelector(".optincraft-campaign-overlay");if(o&&(o.style.height="100%",o.style.width="100%"),"slide_in_down"===c&&"floating_bar"===a.type&&i){const e=i,o="0.3s cubic-bezier(0.4, 0, 0.2, 1)";return e.style.transition=`height ${o}`,e.style.willChange="height",e.style.height=g(a.height),void requestAnimationFrame(()=>{requestAnimationFrame(()=>{m(a),T(),setTimeout(()=>{e.style.willChange="auto"},350),t(),wp.hooks.doAction("optincraft_campaign_opened",a,n)})})}m(a),T(),t(),wp.hooks.doAction("optincraft_campaign_opened",a,n)};switch(r.open_event){case"on_load":{var I;const t=null!==(I=r.open_delay)&&void 0!==I?I:1;setTimeout(()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block")},1e3*t-500),setTimeout(()=>{O(()=>{})},1e3*t);break}case"after_inactivity":{var E;const t=1e3*(null!==(E=r.after_inactivity_time)&&void 0!==E?E:30);let e=null,n=!1;const s=()=>{e&&clearTimeout(e),window.removeEventListener("mousemove",p),window.removeEventListener("mousedown",p),window.removeEventListener("keypress",p),window.removeEventListener("scroll",p),window.removeEventListener("touchstart",p)},l=()=>{n||(n=!0,O(s))},p=()=>{e&&clearTimeout(e),setTimeout(()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block")},t-500),e=setTimeout(l,t)};["mousemove","mousedown","keypress","scroll","touchstart"].forEach(t=>window.addEventListener(t,p)),p();break}case"click_count":{var C;const t=null!==(C=r.click_count)&&void 0!==C?C:1;let e=0;const n=()=>{window.removeEventListener("click",l)},s=()=>{O(n)},l=()=>{"floating_bar"===a.type&&"slide_in_down"!==c&&(i.style.height=g(a.height)),"popup"!==a.type&&"slide_in"!==a.type||(i.style.height=g(a.height),o.style.display="block"),++e>=t&&setTimeout(()=>{"floating_bar"===a.type&&s()},300)};window.addEventListener("click",l);break}default:wp.hooks.doAction("optincraft_campaign_open_event",r.open_event,a,o,i,r,O)}},initForm:function(){const a=t(),n=e(),o=n.ref,i=jQuery;i(o).on("submit",async function(t){if(t.preventDefault(),!a.isFormSubmitting){a.isFormSubmitting=!0;var e=i(this).serializeArray().reduce(function(t,e){return t[e.name]=e.value,t},{});i(o).find("input, select, textarea").prop("disabled",!0),function(t){const e="optincraft_actioned_campaigns",a=localStorage.getItem(e);let n=a?JSON.parse(a):{};n[t.campaign_id]={actioned_at:Date.now()},localStorage.setItem(e,JSON.stringify(n))}(a),await u({path:"/optincraft/responses",method:"POST",data:{campaign_id:a.campaign_id,form_data:e}}).finally(()=>{a.isFormSubmitting=!1,i(o).find("input, select, textarea").prop("disabled",!1)}),i(o).trigger("reset"),u({path:"/optincraft/queue/dispatch",method:"POST"}),"redirect-url"===a.form_after_submit&&(window.location.href=a.form_redirect_url||"https://crafium.com/optincraft"),y(n,a)}})},initCountdown:function(){const e=t(),a=window.moment,n="true"===e.use_user_timezone;let o=n?a.utc(e.due_date):a(e.due_date);const i=n?a.utc():a(),r=o.diff(i);e.show_countdown=!0;const s=e.time_left;let l=null;r>0&&(l=setInterval(function(){const t=n?a.utc():a(),i=o.diff(t);if(i>0){const t=a.duration(i);s.days=Math.floor(t.asDays()),s.hours=t.hours(),s.minutes=t.minutes(),s.seconds=t.seconds()}else s.days=0,s.hours=0,s.minutes=0,s.seconds=0,null!==l&&(clearInterval(l),l=null),"hide_counter"===e.action?e.show_countdown=!1:"show_message"===e.action?(e.show_countdown=!1,e.show_action_message=!0):"redirect_to_url"===e.action&&e.redirect_url&&(window.location.href=e.redirect_url)},1e3))},initFont:function(){const e=t().fontFamilies;for(const t of e)T(t.family,t.variations)}},actions:{onClickButton:()=>{const a=t();"none"!==a.action&&(a.track_conversion&&d(Number(a.campaign_id),"conversion"),"redirect-url"===a.action&&(window.location.href=a.redirect_url),"close"===a.action)&&y(e(),a)},onClickOutside:()=>{const a=t();a.settings.close_on_click_outside&&y(e(),a)}}}),document.addEventListener("DOMContentLoaded",async()=>{try{await n({path:"/optincraft/events",method:"POST",data:{event_type:"view",page_url:window.location.href,referrer:p(),device:s(),browser:l(),visitor_id:i(),session_id:r()}})}catch(t){}}); -
optincraft/trunk/optincraft.php
r3403628 r3403714 9 9 * Plugin Name: OptinCraft 10 10 * Description: The Powerful Drag & Drop Popup Builder for WordPress 11 * Version: 0.1. 111 * Version: 0.1.2 12 12 * Requires at least: 6.5 13 13 * Requires PHP: 7.4 -
optincraft/trunk/readme.txt
r3403628 r3403714 5 5 Tested up to: 6.8 6 6 Requires PHP: 7.4 7 Stable tag: 0.1. 17 Stable tag: 0.1.2 8 8 License: GPLv3 9 9 License URI: https://www.gnu.org/licenses/gpl-3.0.html … … 177 177 178 178 == Changelog == 179 = 0.1.2(beta) - 27 November 2025 = 180 * Fixed: Campaign overlay not hiding issue. 181 179 182 = 0.1.1(beta) - 27 November 2025 = 180 183 * Fixed: Floating bar campaign entrance and exit animation issue. -
optincraft/trunk/resources/views/campaign.php
r3403628 r3403714 45 45 ]; 46 46 47 $canvas_styles = ''; 48 49 if ( isset( $settings['effect'] ) && in_array( $settings['effect'], ['stars', 'christmas_light'], true ) && 'floating_bar' !== $campaign->type ) { 50 $canvas_styles = 'z-index: -1;'; 51 } 52 47 53 ?> 48 54 … … 67 73 include __DIR__ . '/popup.php'; 68 74 } ?> 69 <canvas class="optincraft-effect-canvas" id="optincraft-effect-canvas-<?php echo esc_attr( $campaign->id ); ?>"></canvas>75 <canvas class="optincraft-effect-canvas" style="<?php echo esc_attr( $canvas_styles ); ?>" id="optincraft-effect-canvas-<?php echo esc_attr( $campaign->id ); ?>"></canvas> 70 76 </form> 71 77 </div>
Note: See TracChangeset
for help on using the changeset viewer.