Plugin Directory

Changeset 3147994


Ignore:
Timestamp:
09/07/2024 01:49:40 PM (16 months ago)
Author:
monzuralam
Message:

Release 1.0.2

Location:
all-in-one-wp-sticky-anything
Files:
28 added
7 edited

Legend:

Unmodified
Added
Removed
  • all-in-one-wp-sticky-anything/trunk/all-in-one-wp-sticky-anything.php

    r3147850 r3147994  
    44 * Plugin URI:        https://wordpress.org/plugins/all-in-one-all-in-one-wp-sticky-anything
    55 * Description:       All-in-One WP Sticky Anything plugin will make stick to the side of page after when scrolled up & down.
    6  * Version:           1.0.1
     6 * Version:           1.0.2
    77 * Requires at least: 5.2
    88 * Requires PHP:      7.0
     
    2121
    2222/** define constants */
    23 define( 'AI1WPSA_VERSION', '1.0.1' );
     23define( 'AI1WPSA_VERSION', '1.0.2' );
    2424define( 'AI1WPSA_FILE', __FILE__ );
    2525define( 'AI1WPSA_PATH', dirname( AI1WPSA_FILE ) );
  • all-in-one-wp-sticky-anything/trunk/assets/js/admin.js

    r3147850 r3147994  
    1 (()=>{"use strict";var e=React.createContext();const t=e;var n=e.Provider,a=(e.Consumer,wp.element.useContext),i=wp.components.Spinner;function c(){var e=a(t),n=e.loading,c=(e.setLoading,e.handleSaveSettings);return React.createElement("div",{className:"ai1wpsa-app-header"},React.createElement("div",{className:"header-title"},React.createElement("img",{src:"".concat(ai1wpsa.pluginUrl,"/assets/images/logo.jpg"),alt:wp.i18n.__("All-in-One WP Sticky Anything","all-in-one-wp-sticky-anything")}),React.createElement("span",null,wp.i18n.__("All-in-One WP Sticky Anything Settings","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"header-actions"},React.createElement("buttton",{type:"button",className:"ai1wpsa-btn save-btn",onClick:c},n&&React.createElement(i,null),React.createElement("span",{className:"dashicons dashicons-saved"}),wp.i18n.__("Save","all-in-one-wp-sticky-anything"))))}function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function r(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?s(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):s(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function o(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=l(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!=l(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==l(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var u=wp.element.useContext,m=wp.components,d=(m.FormToggle,m.TextControl);function p(){var e=u(t),n=e.data,a=e.setData,i=n||{},c=i.stickyClass,l=void 0===c?"":c,s=i.stickyZIndex,o=void 0===s?"":s;return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{class:"ai1wpsa-settings-content-header"},React.createElement("i",{class:"dashicons dashicons-admin-generic"}),React.createElement("span",null,wp.i18n.__("General Settings","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content"},React.createElement("div",{class:"settings-field"},React.createElement("h4",{class:"settings-field-label"},wp.i18n.__("Sticky Class","all-in-one-wp-sticky-anything")),React.createElement("div",{class:"settings-field-content"},React.createElement(d,{value:l,placeholder:wp.i18n.__("ex: #main-navigaion or .header","all-in-one-wp-sticky-anything"),onChange:function(e){return a(r(r({},n),{},{stickyClass:e}))}}),React.createElement("p",{className:"description"},wp.i18n.__('Write your sticky selector here. Make anything sticky by use sticky class. example: `<div class="sticky">I am sticky</div>`',"all-in-one-wp-sticky-anything")))),React.createElement("div",{class:"settings-field"},React.createElement("h4",{class:"settings-field-label"},wp.i18n.__("z-index","all-in-one-wp-sticky-anything")),React.createElement("div",{class:"settings-field-content"},React.createElement(d,{value:o,placeholder:wp.i18n.__("ex: 9999","all-in-one-wp-sticky-anything"),onChange:function(e){return a(r(r({},n),{},{stickyZIndex:e}))}}),React.createElement("p",{className:"description"},wp.i18n.__("Set your desire z-index value for your target element.","all-in-one-wp-sticky-anything"))))))}function y(e){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},y(e)}function g(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function h(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?g(Object(n),!0).forEach((function(t){w(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):g(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function w(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=y(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!=y(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==y(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var f=wp.element,v=f.useContext,E=f.useEffect,R=wp.components.TextareaControl;function b(){var e=v(t),n=e.data,a=e.setData,i=n.customCss,c=void 0===i?"":i;return E((function(){var e=document.querySelectorAll(".ai1wpsa-custom-css textarea");wp.codeEditor.initialize(e,h(h({},wp.codeEditor.defaultSettings),{},{mode:"css",wordWrap:!0,tabSize:2,autoComplete:{enable:!0,showDescriptions:!0,caseSensitive:!0,autoTrigger:!0,delay:0,maxItems:10,sortBy:"score",maxLength:0,maxResults:10,highlightMatches:!0,maxHighlightLength:0,style:"popup"},showGutter:!0,showPrintMargin:!0,highlightActiveLine:!0,showLineNumbers:!0,enableBasicAutocompletion:!0,enableLiveAutocompletion:!0,enableCodeFolding:!0,enableCodeFormatting:!0})).codemirror.on("change",(function(e){var t=e.getValue();a((function(e){return h(h({},e),{},{customCss:t})}))}))}),[]),React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{class:"ai1wpsa-settings-content-header"},React.createElement("i",{class:"dashicons dashicons-editor-code"}),React.createElement("span",null,wp.i18n.__("Custom CSS","ai1wpsa"))),React.createElement("div",{className:"settings-content"},React.createElement("div",{class:"settings-field"},React.createElement("h4",{class:"settings-field-label"},wp.i18n.__("Custom CSS","all-in-one-wp-sticky-anything")),React.createElement("div",{class:"settings-field-content"},React.createElement(R,{value:c,className:"ai1wpsa-custom-css",placeholder:wp.i18n.__("ex: .header{ // your css code here.}","all-in-one-wp-sticky-anything"),onChange:function(e){return a(h(h({},n),{},{customCss:e.target.value}))},rows:12}),React.createElement("p",{className:"description"},wp.i18n.__("Write your custom CSS here.","all-in-one-wp-sticky-anything"))))))}var _=wp.element.useContext;function k(){var e=_(t).handleResetSettings;return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{className:"ai1wpsa-settings-content-header"},React.createElement("i",{className:"dashicons dashicons-admin-tools"}),React.createElement("span",null,wp.i18n.__("Tools","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content"},React.createElement("div",{class:"settings-field"},React.createElement("h4",{class:"settings-field-label"},wp.i18n.__("Reset Data","all-in-one-wp-sticky-anything")),React.createElement("div",{class:"settings-field-content"},React.createElement("button",{type:"button",className:"ai1wpsa-btn reset-btn",onClick:e},React.createElement("i",{className:"dashicons dashicons-update"}),wp.i18n.__("Reset","all-in-one-wp-sticky-anything")),React.createElement("p",{className:"description"},wp.i18n.__("Reset all settings to default.","all-in-one-wp-sticky-anything"))))))}function S(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,i,c,l,s=[],r=!0,o=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;r=!1}else for(;!(r=(a=c.call(n)).done)&&(s.push(a.value),s.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{if(!r&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(o)throw i}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return N(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?N(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var O=wp.element,C=O.useState,j=O.useEffect;function A(){var e=S(C(localStorage.getItem("ai1wp_tab")||"general"),2),t=e[0],n=e[1];j((function(){localStorage.setItem("ai1wp_tab",t)}),[t]);var a=[{id:"general",title:wp.i18n.__("General","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-admin-generic"},{id:"css",title:wp.i18n.__("Custom CSS","all-in-one-wp-sticky-anything"),icon:" dashicons dashicons-editor-code"},{id:"tools",title:wp.i18n.__("Tools","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-admin-tools"}];return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{className:"ai1wpsa-settings-menu"},a.map((function(e){var a=e.id,i=e.title,c=e.icon;return React.createElement("div",{className:"ai1wpsa-settings-menu-item ".concat(a," ").concat(t===a?"active":""," "),onClick:function(){return n(a)}},React.createElement("i",{className:c}),i)}))),"general"===t&&React.createElement(p,null),"css"===t&&React.createElement(b,null),"tools"===t&&React.createElement(k,null))}function x(e){Swal.fire({title:!1,text:e,icon:"success",toast:!0,timer:1500,timerProgressBar:!0,showConfirmButton:!1,position:"top-end",customClass:{container:"ai1wpsa-swal ai1wpsa-notification"}})}function P(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,i,c,l,s=[],r=!0,o=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;r=!1}else for(;!(r=(a=c.call(n)).done)&&(s.push(a.value),s.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{if(!r&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(o)throw i}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return I(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?I(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var D=wp.element,W=D.useState,T=D.useEffect;function M(){var e=P(W([]),2),t=e[0],a=e[1],i=P(W(!1),2),l=i[0],s=i[1];return T((function(){s(!0);var e=localStorage.getItem("stickySettings");e?(a(JSON.parse(e)),s(!1)):wp.ajax.post("ai1wpsa_get_settings",{nonce:ai1wpsa.nonce}).done((function(e){var t=e.data;t&&(a(t),localStorage.setItem("stickySettings",JSON.stringify(t))),s(!1)}))}),[]),React.createElement("div",{className:"ai1wpsa-settings-wrap"},React.createElement(n,{value:{data:t,setData:a,loading:l,setLoading:s,handleSaveSettings:function(){wp.ajax.post("ai1wpsa_save_settings",{data:t,nonce:ai1wpsa.nonce}).done((function(e){x(wp.i18n.__("Settings saved successfully.","all-in-one-wp-sticky-anything")),localStorage.setItem("stickySettings",JSON.stringify(t))})).fail((function(e){console.log(e)}))},handleResetSettings:function(){x(wp.i18n.__("Settings Reset successfully.","all-in-one-wp-sticky-anything")),a({}),localStorage.setItem("stickySettings",JSON.stringify({}))}}},React.createElement(c,null),!l&&React.createElement(A,null)))}function B(){return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{class:"ai1wpsa-settings-content-header"},React.createElement("i",{class:"dashicons dashicons-media-document"}),React.createElement("span",null,wp.i18n.__("Basic Usage","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content"},React.createElement("div",{class:"settings-row bg-10"},React.createElement("div",{class:"settings-col"},React.createElement("h2",null,wp.i18n.__("Sticky Header")),React.createElement("p",null,wp.i18n.__("You can make Sticky Header easily by All-in-one WP Sticky Anyting. You need to do some step for it.","all-in-one-sticky-anything")),React.createElement("ul",null,React.createElement("li",null,"1. Go to WordPress Dashboard > Sticky Anything settings."),React.createElement("li",null,'2. In the "Sticky Class" field, enter the CSS selector of your header. Must you need to provide a valid css class or id selector. example: .header'),React.createElement("li",null,'3. If sticky header z-index issue on scroll, then you need to configure the "Z-index" field. Write the max big integer value. ex: 9999999'),React.createElement("li",null,"4. Now you can click save button on the header."))),React.createElement("div",{class:"settings-col"})),React.createElement("div",{class:"settings-row bg-9"},React.createElement("div",{class:"settings-col"},React.createElement("h2",null,wp.i18n.__("Sticky Element/ Sidebar")),React.createElement("p",null,wp.i18n.__("You can make any sticky element or sidebar easily on your WordPress website by All-in-one WP Sticky Anyting. Integration is super easy. You need add a class on your target element. ex: sticky.","all-in-one-sticky-anything"))),React.createElement("div",{class:"settings-col"})),React.createElement("div",{class:"settings-row bg-9"},React.createElement("div",{class:"settings-col"},React.createElement("h2",null,wp.i18n.__("Custom CSS")),React.createElement("p",null,wp.i18n.__("If needed, add custom CSS to fine-tune the appearance and behavior of the sticky header. Your custom css need to paste on the Custom CSS box and Click Save button.","all-in-one-sticky-anything"))),React.createElement("div",{class:"settings-col"}))))}function L(){var e=[{version:"v1.0.0",date:"16-02-2022",new:[wp.i18n.__("Initial Version","all-in-one-wp-sticky-anything")],fix:[],enhancement:[]},{version:"v1.0.1",date:"07-09-2024",new:[wp.i18n.__("Z-Index","all-in-one-wp-sticky-anything"),wp.i18n.__("Custom CSS","all-in-one-wp-sticky-anything"),wp.i18n.__("Reset Settings","all-in-one-wp-sticky-anything")],enhancement:[wp.i18n.__("Improved Dashboard","all-in-one-wp-sticky-anything")]}];return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{class:"ai1wpsa-settings-content-header"},React.createElement("i",{class:"dashicons dashicons-editor-ul"}),React.createElement("span",null,wp.i18n.__("Changelog","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content changelog"},React.createElement("h2",null,wp.i18n.__("What's new in the latest changes","all-in-one-wp-stikcy-anything")),React.createElement("p",null,wp.i18n.__("Check out the latest change logs.","all-in-one-wp-sticky-anything")),e.map((function(e){var t,n,a;return React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("span",{className:"version"},null==e?void 0:e.version),React.createElement("h3",null,null==e?void 0:e.date),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},(null==e||null===(t=e.new)||void 0===t?void 0:t.length)>0&&React.createElement("div",{className:"new"},React.createElement("h3",null,wp.i18n.__("New Features","all-in-one-wp-sticky-anything")),null==e?void 0:e.new.map((function(e,t){return React.createElement("p",{key:t},React.createElement("i",{className:"dashicons dashicons-plus-alt2"}),e)}))),(null==e||null===(n=e.fix)||void 0===n?void 0:n.length)>0&&React.createElement("div",{className:"fix"},React.createElement("h3",null,wp.i18n.__("Fixs","all-in-one-wp-sticky-anything")),null==e?void 0:e.fix.map((function(e,t){return React.createElement("p",{key:t},React.createElement("i",{className:"dashicons dashicons-yes"}),e)}))),(null==e||null===(a=e.enhancement)||void 0===a?void 0:a.length)>0&&React.createElement("div",{className:"enhancement"},React.createElement("h3",null,wp.i18n.__("Enhancements","all-in-one-wp-sticky-anything")),null==e?void 0:e.enhancement.map((function(e,t){return React.createElement("p",{key:t},React.createElement("i",{className:"dashicons dashicons-star-filled"}),e)})))))}))))}wp.element.useState;function Y(){return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{className:"ai1wpsa-settings-content-header"},React.createElement("i",{className:"dashicons dashicons-editor-help"}),React.createElement("span",null,wp.i18n.__("Help","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content"},React.createElement("h2",null,wp.i18n.__("Frequently Asked Questions","all-in-one-wp-stikcy-anything")),React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("h3",null,wp.i18n.__("Can I make multiple elements sticky?","all-in-one-wp-stikcy-anything")),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},React.createElement("p",null,wp.i18n.__("Yes.")))),React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("h3",null,wp.i18n.__("How to sticky anything in WordPress ?","all-in-one-wp-stikcy-anything")),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},React.createElement("p",null,wp.i18n.__("Just use .sticky class.","all-in-one-wp-sticky-anything")))),React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("h3",null,wp.i18n.__("Will All-in-One WP Sticky Anything slow down my website?","all-in-one-wp-stikcy-anything")),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},React.createElement("p",null,wp.i18n.__("No.","all-in-one-wp-sticky-anything")))),React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("h3",null,wp.i18n.__("How to disable the sticky?","all-in-one-wp-stikcy-anything")),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},React.createElement("p",null,wp.i18n.__("Just remove class from settings.","all-in-one-wp-sticky-anything")))),React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("h3",null,wp.i18n.__("I need more help please!","all-in-one-wp-stikcy-anything")),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},React.createElement("p",null,wp.i18n.__("Please use the support forum.","all-in-one-wp-sticky-anything")," ",React.createElement("a",{href:"https://wordpress.org/support/plugin/all-in-one-wp-sticky-anything/",target:"_blank"},wp.i18n.__("Suport Forum")))))))}function F(){return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{class:"ai1wpsa-settings-content-header"},React.createElement("i",{class:"dashicons dashicons-info-outline"}),React.createElement("span",null,wp.i18n.__("Introduction","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content introduction"},React.createElement("div",{class:"settings-row bg-10"},React.createElement("div",{class:"settings-col"},React.createElement("h2",null,wp.i18n.__("Sticky Anything Quick Overview")),React.createElement("p",null,wp.i18n.__("The Sticky Anything WordPress plugin is a versatile tool designed to help you make any element on your website sticky as users scroll. It's particularly useful for keeping important content like headers, menus, or call-to-action buttons visible, no matter where users are on your page.","all-in-one-sticky-anything"))),React.createElement("div",{class:"settings-col"},React.createElement("iframe",{width:"100%",height:"315",src:"https://www.youtube.com/embed/Y2IEuGCVu0Y?si=fLPBh9a8_C641LMF",title:"YouTube video player",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",referrerpolicy:"strict-origin-when-cross-origin",allowfullscreen:!0})))))}function G(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,i,c,l,s=[],r=!0,o=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;r=!1}else for(;!(r=(a=c.call(n)).done)&&(s.push(a.value),s.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{if(!r&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(o)throw i}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return H(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?H(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function H(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var U=wp.element,J=U.useState,z=U.useEffect;function Q(){var e=G(J(localStorage.getItem("ai1wp_gs_tab")||"introduction"),2),t=e[0],n=e[1];z((function(){localStorage.setItem("ai1wp_gs_tab",t)}),[t]);var a=[{id:"introduction",title:wp.i18n.__("Introduction","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-info-outline"},{id:"basic-usage",title:wp.i18n.__("Basic Usage","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-media-document"},{id:"help",title:wp.i18n.__("Help","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-editor-help"},{id:"changelog",title:wp.i18n.__("Changelog","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-editor-ul"}];return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{className:"ai1wpsa-settings-menu"},a.map((function(e){var a=e.id,i=e.title,c=e.icon;return React.createElement("div",{className:"ai1wpsa-settings-menu-item ".concat(a," ").concat(t===a?"active":""," "),onClick:function(){return n(a)}},React.createElement("i",{className:c}),i)}))),"introduction"===t&&React.createElement(F,null),"basic-usage"===t&&React.createElement(B,null),"help"===t&&React.createElement(Y,null),"changelog"===t&&React.createElement(L,null))}function Z(){return React.createElement("div",{className:"ai1wpsa-app-header"},React.createElement("div",{className:"header-logo"},React.createElement("img",{src:"".concat(ai1wpsa.pluginUrl,"/assets/images/logo.jpg"),alt:wp.i18n.__("All-in-One WP Sticky Anything","all-in-one-wp-sticky-anything")})),React.createElement("div",{className:"header-title"},React.createElement("h2",null,wp.i18n.__("All-in-One WP Sticky Anything","all-in-one-wp-sticky-anything")),React.createElement("p",null,wp.i18n.__("All-in-One WP Sticky Anything on Scroll plugin allows to you make any elements sticky or sticky Header on your website.","all-in-one-wp-sticky-anything")),React.createElement("button",{type:"button",className:"btn ai1wpsa-btn"},wp.i18n.__("Getting Started"))))}wp.element.useState;function V(){return React.createElement("div",{className:"ai1wpsa-getting-started-wrap"},React.createElement(Z,null),React.createElement(Q,null))}var $=jQuery,q={init:function(){$(document).on("click",".accordion-item .accordion-header",q.handleToggleItem)},handleToggleItem:function(e){e.preventDefault(),$(this).closest(".accordion-item").toggleClass("active"),$(this).find("i").toggleClass("dashicons-arrow-up-alt2")}};const K=q;!function(e){var t={init:function(){t.initSettings(),t.initGettingStarted()},ready:function(){K.init()},initSettings:function(){var e=document.getElementById("ai1wpsa-settings");e&&ReactDOM.render(React.createElement(M,null),e)},initGettingStarted:function(){var e=document.getElementById("ai1wpsa-getting-started");e&&ReactDOM.render(React.createElement(V,null),e)}};t.init(),e(document).ready(t.ready)}(jQuery)})();
     1(()=>{"use strict";var e=React.createContext();const t=e;var n=e.Provider,a=(e.Consumer,wp.element.useContext),i=wp.components.Spinner;function c(){var e=a(t),n=e.loading,c=(e.setLoading,e.handleSaveSettings);return React.createElement("div",{className:"ai1wpsa-app-header"},React.createElement("div",{className:"header-title"},React.createElement("img",{src:"".concat(ai1wpsa.pluginUrl,"/assets/images/logo.jpg"),alt:wp.i18n.__("All-in-One WP Sticky Anything","all-in-one-wp-sticky-anything")}),React.createElement("span",null,wp.i18n.__("All-in-One WP Sticky Anything Settings","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"header-actions"},React.createElement("buttton",{type:"button",className:"ai1wpsa-btn save-btn",onClick:c},n&&React.createElement(i,null),React.createElement("span",{className:"dashicons dashicons-saved"}),wp.i18n.__("Save","all-in-one-wp-sticky-anything"))))}function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function r(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?s(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):s(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function o(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=l(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!=l(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==l(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var u=wp.element.useContext,m=wp.components,d=(m.FormToggle,m.TextControl);function p(){var e=u(t),n=e.data,a=e.setData,i=n||{},c=i.stickyClass,l=void 0===c?"":c,s=i.stickyZIndex,o=void 0===s?"":s;return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{class:"ai1wpsa-settings-content-header"},React.createElement("i",{class:"dashicons dashicons-admin-generic"}),React.createElement("span",null,wp.i18n.__("General Settings","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content"},React.createElement("div",{class:"settings-field"},React.createElement("h4",{class:"settings-field-label"},wp.i18n.__("Sticky Class","all-in-one-wp-sticky-anything")),React.createElement("div",{class:"settings-field-content"},React.createElement(d,{value:l,placeholder:wp.i18n.__("ex: #main-navigaion or .header","all-in-one-wp-sticky-anything"),onChange:function(e){return a(r(r({},n),{},{stickyClass:e}))}}),React.createElement("p",{className:"description"},wp.i18n.__('Write your sticky selector here. Make anything sticky by use sticky class. example: `<div class="sticky">I am sticky</div>`',"all-in-one-wp-sticky-anything")))),React.createElement("div",{class:"settings-field"},React.createElement("h4",{class:"settings-field-label"},wp.i18n.__("z-index","all-in-one-wp-sticky-anything")),React.createElement("div",{class:"settings-field-content"},React.createElement(d,{value:o,placeholder:wp.i18n.__("ex: 9999","all-in-one-wp-sticky-anything"),onChange:function(e){return a(r(r({},n),{},{stickyZIndex:e}))}}),React.createElement("p",{className:"description"},wp.i18n.__("Set your desire z-index value for your target element.","all-in-one-wp-sticky-anything"))))))}function y(e){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},y(e)}function g(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function h(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?g(Object(n),!0).forEach((function(t){w(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):g(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function w(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=y(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!=y(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==y(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var f=wp.element,v=f.useContext,E=f.useEffect,R=wp.components.TextareaControl;function b(){var e=v(t),n=e.data,a=e.setData,i=n.customCss,c=void 0===i?"":i;return E((function(){var e=document.querySelectorAll(".ai1wpsa-custom-css textarea");wp.codeEditor.initialize(e,h(h({},wp.codeEditor.defaultSettings),{},{mode:"css",wordWrap:!0,tabSize:2,autoComplete:{enable:!0,showDescriptions:!0,caseSensitive:!0,autoTrigger:!0,delay:0,maxItems:10,sortBy:"score",maxLength:0,maxResults:10,highlightMatches:!0,maxHighlightLength:0,style:"popup"},showGutter:!0,showPrintMargin:!0,highlightActiveLine:!0,showLineNumbers:!0,enableBasicAutocompletion:!0,enableLiveAutocompletion:!0,enableCodeFolding:!0,enableCodeFormatting:!0})).codemirror.on("change",(function(e){var t=e.getValue();a((function(e){return h(h({},e),{},{customCss:t})}))}))}),[]),React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{class:"ai1wpsa-settings-content-header"},React.createElement("i",{class:"dashicons dashicons-editor-code"}),React.createElement("span",null,wp.i18n.__("Custom CSS","ai1wpsa"))),React.createElement("div",{className:"settings-content"},React.createElement("div",{class:"settings-field"},React.createElement("h4",{class:"settings-field-label"},wp.i18n.__("Custom CSS","all-in-one-wp-sticky-anything")),React.createElement("div",{class:"settings-field-content"},React.createElement(R,{value:c,className:"ai1wpsa-custom-css",placeholder:wp.i18n.__("ex: .header{ // your css code here.}","all-in-one-wp-sticky-anything"),onChange:function(e){return a(h(h({},n),{},{customCss:e.target.value}))},rows:12}),React.createElement("p",{className:"description"},wp.i18n.__("Write your custom CSS here.","all-in-one-wp-sticky-anything"))))))}var _=wp.element.useContext;function k(){var e=_(t).handleResetSettings;return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{className:"ai1wpsa-settings-content-header"},React.createElement("i",{className:"dashicons dashicons-admin-tools"}),React.createElement("span",null,wp.i18n.__("Tools","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content"},React.createElement("div",{class:"settings-field"},React.createElement("h4",{class:"settings-field-label"},wp.i18n.__("Reset Data","all-in-one-wp-sticky-anything")),React.createElement("div",{class:"settings-field-content"},React.createElement("button",{type:"button",className:"ai1wpsa-btn reset-btn",onClick:e},React.createElement("i",{className:"dashicons dashicons-update"}),wp.i18n.__("Reset","all-in-one-wp-sticky-anything")),React.createElement("p",{className:"description"},wp.i18n.__("Reset all settings to default.","all-in-one-wp-sticky-anything"))))))}function S(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,i,c,l,s=[],r=!0,o=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;r=!1}else for(;!(r=(a=c.call(n)).done)&&(s.push(a.value),s.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{if(!r&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(o)throw i}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return N(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?N(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var O=wp.element,C=O.useState,j=O.useEffect;function A(){var e=S(C(localStorage.getItem("ai1wp_tab")||"general"),2),t=e[0],n=e[1];j((function(){localStorage.setItem("ai1wp_tab",t)}),[t]);var a=[{id:"general",title:wp.i18n.__("General","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-admin-generic"},{id:"css",title:wp.i18n.__("Custom CSS","all-in-one-wp-sticky-anything"),icon:" dashicons dashicons-editor-code"},{id:"tools",title:wp.i18n.__("Tools","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-admin-tools"}];return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{className:"ai1wpsa-settings-menu"},a.map((function(e){var a=e.id,i=e.title,c=e.icon;return React.createElement("div",{className:"ai1wpsa-settings-menu-item ".concat(a," ").concat(t===a?"active":""," "),onClick:function(){return n(a)}},React.createElement("i",{className:c}),i)}))),"general"===t&&React.createElement(p,null),"css"===t&&React.createElement(b,null),"tools"===t&&React.createElement(k,null))}function x(e){Swal.fire({title:!1,text:e,icon:"success",toast:!0,timer:1500,timerProgressBar:!0,showConfirmButton:!1,position:"top-end",customClass:{container:"ai1wpsa-swal ai1wpsa-notification"}})}function P(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,i,c,l,s=[],r=!0,o=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;r=!1}else for(;!(r=(a=c.call(n)).done)&&(s.push(a.value),s.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{if(!r&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(o)throw i}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return I(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?I(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var D=wp.element,W=D.useState,T=D.useEffect;function M(){var e=P(W([]),2),t=e[0],a=e[1],i=P(W(!1),2),l=i[0],s=i[1];return T((function(){s(!0);var e=localStorage.getItem("stickySettings");e?(a(JSON.parse(e)),s(!1)):wp.ajax.post("ai1wpsa_get_settings",{nonce:ai1wpsa.nonce}).done((function(e){var t=e.data;t&&(a(t),localStorage.setItem("stickySettings",JSON.stringify(t))),s(!1)}))}),[]),React.createElement("div",{className:"ai1wpsa-settings-wrap"},React.createElement(n,{value:{data:t,setData:a,loading:l,setLoading:s,handleSaveSettings:function(){wp.ajax.post("ai1wpsa_save_settings",{data:t,nonce:ai1wpsa.nonce}).done((function(e){x(wp.i18n.__("Settings saved successfully.","all-in-one-wp-sticky-anything")),localStorage.setItem("stickySettings",JSON.stringify(t))})).fail((function(e){console.log(e)}))},handleResetSettings:function(){x(wp.i18n.__("Settings Reset successfully.","all-in-one-wp-sticky-anything")),a({}),localStorage.setItem("stickySettings",JSON.stringify({}))}}},React.createElement(c,null),!l&&React.createElement(A,null)))}function B(){return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{class:"ai1wpsa-settings-content-header"},React.createElement("i",{class:"dashicons dashicons-media-document"}),React.createElement("span",null,wp.i18n.__("Basic Usage","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content"},React.createElement("div",{class:"settings-row bg-10"},React.createElement("div",{class:"settings-col"},React.createElement("h2",null,wp.i18n.__("Sticky Header")),React.createElement("p",null,wp.i18n.__("You can make Sticky Header easily by All-in-one WP Sticky Anyting. You need to do some step for it.","all-in-one-sticky-anything")),React.createElement("ul",null,React.createElement("li",null,"1. Go to WordPress Dashboard > Sticky Anything settings."),React.createElement("li",null,'2. In the "Sticky Class" field, enter the CSS selector of your header. Must you need to provide a valid css class or id selector. example: .header'),React.createElement("li",null,'3. If sticky header z-index issue on scroll, then you need to configure the "Z-index" field. Write the max big integer value. ex: 9999999'),React.createElement("li",null,"4. Now you can click save button on the header."))),React.createElement("div",{class:"settings-col"})),React.createElement("div",{class:"settings-row bg-9"},React.createElement("div",{class:"settings-col"},React.createElement("h2",null,wp.i18n.__("Sticky Element/ Sidebar")),React.createElement("p",null,wp.i18n.__("You can make any sticky element or sidebar easily on your WordPress website by All-in-one WP Sticky Anyting. Integration is super easy. You need add a class on your target element. ex: sticky.","all-in-one-sticky-anything"))),React.createElement("div",{class:"settings-col"})),React.createElement("div",{class:"settings-row bg-9"},React.createElement("div",{class:"settings-col"},React.createElement("h2",null,wp.i18n.__("Custom CSS")),React.createElement("p",null,wp.i18n.__("If needed, add custom CSS to fine-tune the appearance and behavior of the sticky header. Your custom css need to paste on the Custom CSS box and Click Save button.","all-in-one-sticky-anything"))),React.createElement("div",{class:"settings-col"}))))}function L(){var e=[{version:"v1.0.0",date:"16-02-2022",new:[wp.i18n.__("Initial Version","all-in-one-wp-sticky-anything")],fix:[],enhancement:[]},{version:"v1.0.1",date:"07-09-2024",new:[wp.i18n.__("Z-Index","all-in-one-wp-sticky-anything"),wp.i18n.__("Custom CSS","all-in-one-wp-sticky-anything"),wp.i18n.__("Reset Settings","all-in-one-wp-sticky-anything")],enhancement:[wp.i18n.__("Improved Dashboard","all-in-one-wp-sticky-anything")]},{version:"v1.0.2",date:"07-09-2024",fix:[wp.i18n.__("Migrate old data","all-in-one-wp-sticky-anything")]}];return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{class:"ai1wpsa-settings-content-header"},React.createElement("i",{class:"dashicons dashicons-editor-ul"}),React.createElement("span",null,wp.i18n.__("Changelog","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content changelog"},React.createElement("h2",null,wp.i18n.__("What's new in the latest changes","all-in-one-wp-stikcy-anything")),React.createElement("p",null,wp.i18n.__("Check out the latest change logs.","all-in-one-wp-sticky-anything")),e.map((function(e){var t,n,a;return React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("span",{className:"version"},null==e?void 0:e.version),React.createElement("h3",null,null==e?void 0:e.date),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},(null==e||null===(t=e.new)||void 0===t?void 0:t.length)>0&&React.createElement("div",{className:"new"},React.createElement("h3",null,wp.i18n.__("New Features","all-in-one-wp-sticky-anything")),null==e?void 0:e.new.map((function(e,t){return React.createElement("p",{key:t},React.createElement("i",{className:"dashicons dashicons-plus-alt2"}),e)}))),(null==e||null===(n=e.fix)||void 0===n?void 0:n.length)>0&&React.createElement("div",{className:"fix"},React.createElement("h3",null,wp.i18n.__("Fixs","all-in-one-wp-sticky-anything")),null==e?void 0:e.fix.map((function(e,t){return React.createElement("p",{key:t},React.createElement("i",{className:"dashicons dashicons-yes"}),e)}))),(null==e||null===(a=e.enhancement)||void 0===a?void 0:a.length)>0&&React.createElement("div",{className:"enhancement"},React.createElement("h3",null,wp.i18n.__("Enhancements","all-in-one-wp-sticky-anything")),null==e?void 0:e.enhancement.map((function(e,t){return React.createElement("p",{key:t},React.createElement("i",{className:"dashicons dashicons-star-filled"}),e)})))))}))))}wp.element.useState;function Y(){return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{className:"ai1wpsa-settings-content-header"},React.createElement("i",{className:"dashicons dashicons-editor-help"}),React.createElement("span",null,wp.i18n.__("Help","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content"},React.createElement("h2",null,wp.i18n.__("Frequently Asked Questions","all-in-one-wp-stikcy-anything")),React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("h3",null,wp.i18n.__("Can I make multiple elements sticky?","all-in-one-wp-stikcy-anything")),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},React.createElement("p",null,wp.i18n.__("Yes.")))),React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("h3",null,wp.i18n.__("How to sticky anything in WordPress ?","all-in-one-wp-stikcy-anything")),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},React.createElement("p",null,wp.i18n.__("Just use .sticky class.","all-in-one-wp-sticky-anything")))),React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("h3",null,wp.i18n.__("Will All-in-One WP Sticky Anything slow down my website?","all-in-one-wp-stikcy-anything")),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},React.createElement("p",null,wp.i18n.__("No.","all-in-one-wp-sticky-anything")))),React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("h3",null,wp.i18n.__("How to disable the sticky?","all-in-one-wp-stikcy-anything")),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},React.createElement("p",null,wp.i18n.__("Just remove class from settings.","all-in-one-wp-sticky-anything")))),React.createElement("div",{className:"accordion-item"},React.createElement("div",{className:"accordion-header"},React.createElement("h3",null,wp.i18n.__("I need more help please!","all-in-one-wp-stikcy-anything")),React.createElement("i",{className:"dashicons dashicons-arrow-down-alt2"})),React.createElement("div",{className:"accordion-body"},React.createElement("p",null,wp.i18n.__("Please use the support forum.","all-in-one-wp-sticky-anything")," ",React.createElement("a",{href:"https://wordpress.org/support/plugin/all-in-one-wp-sticky-anything/",target:"_blank"},wp.i18n.__("Suport Forum")))))))}function F(){return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{class:"ai1wpsa-settings-content-header"},React.createElement("i",{class:"dashicons dashicons-info-outline"}),React.createElement("span",null,wp.i18n.__("Introduction","all-in-one-wp-sticky-anything"))),React.createElement("div",{className:"settings-content introduction"},React.createElement("div",{class:"settings-row bg-10"},React.createElement("div",{class:"settings-col"},React.createElement("h2",null,wp.i18n.__("Sticky Anything Quick Overview")),React.createElement("p",null,wp.i18n.__("The Sticky Anything WordPress plugin is a versatile tool designed to help you make any element on your website sticky as users scroll. It's particularly useful for keeping important content like headers, menus, or call-to-action buttons visible, no matter where users are on your page.","all-in-one-sticky-anything"))),React.createElement("div",{class:"settings-col"},React.createElement("iframe",{width:"100%",height:"315",src:"https://www.youtube.com/embed/Y2IEuGCVu0Y?si=fLPBh9a8_C641LMF",title:"YouTube video player",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",referrerpolicy:"strict-origin-when-cross-origin",allowfullscreen:!0})))))}function G(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,i,c,l,s=[],r=!0,o=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;r=!1}else for(;!(r=(a=c.call(n)).done)&&(s.push(a.value),s.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{if(!r&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(o)throw i}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return H(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?H(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function H(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var U=wp.element,J=U.useState,z=U.useEffect;function Q(){var e=G(J(localStorage.getItem("ai1wp_gs_tab")||"introduction"),2),t=e[0],n=e[1];z((function(){localStorage.setItem("ai1wp_gs_tab",t)}),[t]);var a=[{id:"introduction",title:wp.i18n.__("Introduction","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-info-outline"},{id:"basic-usage",title:wp.i18n.__("Basic Usage","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-media-document"},{id:"help",title:wp.i18n.__("Help","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-editor-help"},{id:"changelog",title:wp.i18n.__("Changelog","all-in-one-wp-sticky-anything"),icon:"dashicons dashicons-editor-ul"}];return React.createElement("div",{className:"ai1wpsa-settings-content"},React.createElement("div",{className:"ai1wpsa-settings-menu"},a.map((function(e){var a=e.id,i=e.title,c=e.icon;return React.createElement("div",{className:"ai1wpsa-settings-menu-item ".concat(a," ").concat(t===a?"active":""," "),onClick:function(){return n(a)}},React.createElement("i",{className:c}),i)}))),"introduction"===t&&React.createElement(F,null),"basic-usage"===t&&React.createElement(B,null),"help"===t&&React.createElement(Y,null),"changelog"===t&&React.createElement(L,null))}function Z(){return React.createElement("div",{className:"ai1wpsa-app-header"},React.createElement("div",{className:"header-logo"},React.createElement("img",{src:"".concat(ai1wpsa.pluginUrl,"/assets/images/logo.jpg"),alt:wp.i18n.__("All-in-One WP Sticky Anything","all-in-one-wp-sticky-anything")})),React.createElement("div",{className:"header-title"},React.createElement("h2",null,wp.i18n.__("All-in-One WP Sticky Anything","all-in-one-wp-sticky-anything")),React.createElement("p",null,wp.i18n.__("All-in-One WP Sticky Anything on Scroll plugin allows to you make any elements sticky or sticky Header on your website.","all-in-one-wp-sticky-anything")),React.createElement("button",{type:"button",className:"btn ai1wpsa-btn"},wp.i18n.__("Getting Started"))))}wp.element.useState;function V(){return React.createElement("div",{className:"ai1wpsa-getting-started-wrap"},React.createElement(Z,null),React.createElement(Q,null))}var $=jQuery,q={init:function(){$(document).on("click",".accordion-item .accordion-header",q.handleToggleItem)},handleToggleItem:function(e){e.preventDefault(),$(this).closest(".accordion-item").toggleClass("active"),$(this).find("i").toggleClass("dashicons-arrow-up-alt2")}};const K=q;!function(e){var t={init:function(){t.initSettings(),t.initGettingStarted()},ready:function(){K.init()},initSettings:function(){var e=document.getElementById("ai1wpsa-settings");e&&ReactDOM.render(React.createElement(M,null),e)},initGettingStarted:function(){var e=document.getElementById("ai1wpsa-getting-started");e&&ReactDOM.render(React.createElement(V,null),e)}};t.init(),e(document).ready(t.ready)}(jQuery)})();
  • all-in-one-wp-sticky-anything/trunk/assets/js/frontend.js

    r3147850 r3147994  
    1 (()=>{var t,o;t=jQuery,o=function(){var o=ai1wpsa,s=o.stickyData,e=o.isLoggedIn,i=s.stickyClass,a=s.stickyZIndex,c=e?32:0;jQuery(".sticky").stickr({duration:0,offsetTop:0,offsetBottom:30}),jQuery(i).stickr({duration:0,offsetTop:c,offsetBottom:30,closeButton:!0}),t(i).css("z-index",a)},t(document).ready(o)})();
     1(()=>{var t,o;t=jQuery,o=function(){var o=ai1wpsa,s=o.stickyData,e=o.isLoggedIn,i=s.stickyClass,a=s.stickyZIndex,c=e?32:0;jQuery(".sticky").stickr({duration:0,offsetTop:0,offsetBottom:30}),jQuery(i).stickr({duration:0,offsetTop:c,offsetBottom:30,closeButton:!1}),t(i).css("z-index",a)},t(document).ready(o)})();
  • all-in-one-wp-sticky-anything/trunk/includes/Install.php

    r3147850 r3147994  
    2222
    2323    /**
     24     * Plugin upgrade
     25     *
     26     * @since 1.0.2
     27     */
     28    public static function upgrade() {
     29        // Check if the upgrade has already been done
     30        $upgrade_done = get_option('ai1wpsa_upgrade');
     31
     32        // If the upgrade hasn't been done yet, proceed
     33        if (!$upgrade_done) {
     34            // sticky class
     35            $sticky_class = get_option('stickyclass');
     36
     37            if (!empty($sticky_class)) {
     38                $data = array(
     39                    'stickyClass' => $sticky_class
     40                );
     41
     42                update_option('ai1wpsa_settings', $data);
     43            }
     44
     45            // Set the flag to indicate the upgrade has been completed
     46            update_option('ai1wpsa_upgrade', 1);
     47        }
     48    }
     49
     50    /**
    2451     * Create plugin settings default data
    2552     *
     
    3663        }
    3764
    38         if(empty($settings)){
     65        if (empty($settings)) {
    3966            update_option('ai1wpsa_settings', '');
    4067        }
  • all-in-one-wp-sticky-anything/trunk/includes/Main.php

    r3147850 r3147994  
    5252    private function init_hooks() {
    5353
     54        // migrate old data
     55        add_action('admin_init', [$this, 'migrate_old_data']);
     56
    5457        add_action('admin_notices', [$this, 'print_notices'], 15);
    5558
     
    5962        // Plugin action links
    6063        add_filter('plugin_action_links_' . plugin_basename(AI1WPSA_FILE), [$this, 'plugin_action_links']);
     64    }
     65
     66    /**
     67     * Migrate Data
     68     *
     69     * @return void
     70     */
     71    public function migrate_old_data(){
     72        if ( ! class_exists( 'AI1WPSA\Install' ) ) {
     73            require_once AI1WPSA_INCLUDES . '/Install.php';
     74        }
     75   
     76        Install::upgrade();
    6177    }
    6278
  • all-in-one-wp-sticky-anything/trunk/languages/all-in-one-wp-sticky-anything.pot

    r3147850 r3147994  
    33msgid ""
    44msgstr ""
    5 "Project-Id-Version: All-in-One WP Sticky Anything 1.0.1\n"
     5"Project-Id-Version: All-in-One WP Sticky Anything 1.0.2\n"
    66"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/all-in-one-wp-sticky-anything\n"
    77"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
     
    1010"Content-Type: text/plain; charset=UTF-8\n"
    1111"Content-Transfer-Encoding: 8bit\n"
    12 "POT-Creation-Date: 2024-09-07T05:47:03+00:00\n"
     12"POT-Creation-Date: 2024-09-07T11:41:15+00:00\n"
    1313"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
    1414"X-Generator: WP-CLI 2.10.0\n"
     
    5151
    5252#: includes/Admin.php:38
    53 #: includes/Main.php:98
     53#: includes/Main.php:114
    5454msgid "Settings"
    5555msgstr ""
     
    170170
    171171#: assets/js/admin.js:1
     172msgid "Migrate old data"
     173msgstr ""
     174
     175#: assets/js/admin.js:1
    172176msgid "Changelog"
    173177msgstr ""
  • all-in-one-wp-sticky-anything/trunk/readme.txt

    r3147850 r3147994  
    1 === All-in-One WP Sticky Anything - Sticky Header ===
     1=== All-in-One WP Sticky Anything - Sticky Menu & Sticky Header ===
    22Contributors: monzuralam
    33Tags: sticky, wp-sticky, sticky-anything, sticky menu, sticky header, sticky bar, wpsticky, all-in-one
     
    55Tested up to: 6.6.1
    66Requires PHP: 5.6
    7 Stable tag: 1.0.1
     7Stable tag: 1.0.2
    88License: GPLv2 or later
    99License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    1414== Description ==
    1515
    16 = All-in-One WP Sticky Anything - Sticky Header =
     16= All-in-One WP Sticky Anything - Sticky Menu & Sticky Header =
    1717
    1818All-in-One WP Sticky Anything on Scroll plugin allows to you make any elements sticky on your website. It also works in Elementor page builder.
     
    2424
    2525= 🔥 Features of All-in-One WP Sticky Anything =
    26 * **📌 Any Element Can Be Made Sticky**: The user can make any element sticky by using this plugin. When you want to create an element sticky, just pick CSS class name, class id, or CSS selector.
    27 * **🔝 Z-index**: If other elements on the page overlap or peek through your sticky element, you can easily adjust the Z-index to ensure it stays on top.
    28 * **✏️ Custom CSS**: All-in-One Sticky Anything allows you to customize the appearance of the website using custom CSS.
    29 * **⏱️ Quick to Set Up**: It doesn’t require any pro skills to download and install the plugin. You can download itself and install it on your WordPress dashboard.
    30 * **⚡ Blazing Fast**: Make anything sticky element in one or less time.
    31 * **Works with Everything**: All-in-One Sticky Plugin is compatible with most common themes, page builder’s plugin. We have tested it for many times and perfected it for you. It is perfectly working in Elementor page builder.
    32 * **Easy to use**: There are no complex settings for using it. You just pick class name or id and place it into fields and save it. There are other ways to sticky just use sticky class.
     26**📌 Any Element Can Be Made Sticky**: The user can make any element sticky by using this plugin. When you want to create an element sticky, just pick CSS class name, class id, or CSS selector.
     27
     28**🔝 Z-index**: If other elements on the page overlap or peek through your sticky element, you can easily adjust the Z-index to ensure it stays on top.
     29
     30**✏️ Custom CSS**: All-in-One Sticky Anything allows you to customize the appearance of the website using custom CSS.
     31
     32**⏱️ Quick to Set Up**: It doesn’t require any pro skills to download and install the plugin. You can download itself and install it on your WordPress dashboard.
     33
     34**⚡ Blazing Fast**: Make anything sticky element in one or less time.
     35
     36**🛠️ Works with Everything**: All-in-One Sticky Plugin is compatible with most common themes, page builder’s plugin. We have tested it for many times and perfected it for you. It is perfectly working in Elementor page builder.
     37
     38**💡 Easy to use**: There are no complex settings for using it. You just pick class name or id and place it into fields and save it. There are other ways to sticky just use sticky class.
    3339
    3440= 🌟 Benefits of All-in-One WP Sticky Anything =
     
    8692* **New:** Custom Css option has been added.
    8793* **New:** Reset Settings option has been added.
     94
     95= 1.0.2 (07-09-2024) =
     96* **Fix:** Migrate old data.
Note: See TracChangeset for help on using the changeset viewer.