LayerPro by Dario Passariello
LayerPro offers a completely new way to customize web popups in your application. With LayerPro, you can create custom alerts, prompts, confirmations, and messages, effectively replacing the default browser popups.
Please make sure to read the LICENSE agreement before implementing it in your application.
https://a51.dev/tests/
You can view an HTML version demonstrating how dpHelper and LayerPro work together. These tools can be used with HTML, React, Vue, or any other frontend framework/library.
npm i layerpro --save-dev
or update:
npm i layerpro@latest --save-dev
in the index (and only there):
import "layerpro";
or
require("layerpro");
<script src="https://unpkg.com/layerpro@latest/index.js"></script>
ype layerpro in your console to explore all the available tools you can use globally! You can call these tools from anywhere without needing to import them (just include the import once in your index file).
For example, if you type alert("hello, world!"), you can see the result.
You can also use these tools as messages directly from the console.
alert("Hello world"); // Normal alert
prompt("Your Name"); // Ask for input
confirm(
"Hello world",
()=>console.log("hello"), // callback for YES / OK
()=>console.log("bye") // callback for NO / CANCEL (you can use null if you don't want CB)
);
message(
"Hello world",
()=>console.log("This happen after OK") // callback for YES / OK)
);
Popup:
import 'layerpro';
layerpro.popup.open(
{
id: String,
body: String | React Component | Module, // text or component
name: String,
icon: "⚠", // or from html symbols table
buttons: {
confirm: {
text: "accept", // customizable
cb: yourFunctionCallBack() // call your script
},
cancel: {
text: "cancel", // customizable
cb: yourFunctionCallBack() // optional
}, // optional
top: Number | String,
left: Number | String,
right: Number | String,
bottom: Number | String,
width: Number | String,
height: Number | String,
minWidth: Number | String,
minHeight: Number | String,
maxWidth: Number | String,
maxHeight: Number | String,
fadeIn: Number, // Milliseconds
fadeOut: Number, // Milliseconds
timer: Number // Milliseconds
iconize: Boolean,
maximize: Boolean,
close: Boolean,
isMaximize: Boolean,
dockable: Boolean,
raised: Boolean,
movable: Boolean,
resizable: Boolean,
store: Boolean,
}
);
Example:
import 'layerpro'
// EXAMPLE WITH ALL OPTIONS
function App() {
layerpro.popup.open(
{
id: 'examplePopup',
body: 'Example',
name: 'example',
icon: '⚠',
buttons: {
confirm: {
text: "accept",
cb: (e) => message("confirmed")
},
cancel: {
text: "cancel"
}
},
width: 400,
height: 300,
maxWidth: 500,
maxHeight: 350,
minWidth: 200,
minHeight: 150,
top: '10%',
left: '10%',
right: 'auto',
bottom: 'auto',
fadeIn: 500,
fadeOut: 500,
timer: 0
iconize: true,
maximize: true,
close: true,
isMaximize: false,
dockable: false,
raised: true,
movable: true,
resizable: false,
store: false,
}
)
}
export default App
Example with a React component:
// Example using React Component
import React from "react"
import 'layerpro'
export default () => {
// Custom Component6
const TestApp = () => {
return (
<div>
Hello
<label>
Alert: <input type="button" value="Alert" onClick={() => alert("Hello")} />
</label>
</div>
)
}
// Run into layerpro
layerpro.popup.open(
{
id: 'examplePopup',
body: TestApp(),
buttons: {
confirm: {
text: "accept",
cb: () => {
message("confirmed")
}
},
cancel: {
text: "cancel",
cb: () => {
alert("cancelled")
}
}
},
width: 350,
height: 300,
name: 'example',
icon: '⚠',
iconize: true,
maximize: true,
close: true,
isMaximize: false,
dockable: false,
raised: true,
movable: true,
resizable: false,
store: false,
top: '10%',
left: '10%',
right: 'auto',
bottom: 'auto',
minWidth: 200,
minHeight: 150,
fadeIn: 500,
fadeOut: 500,
timer: 0
}
)
}
Here are some of the main advantages of using LayerPro:
Complete Customization: LayerPro allows you to create highly customized web pop-ups, surpassing the limitations of standard browser pop-ups. You can configure every aspect of the pop-up, including size, position, icons, and much more.
Improved User Interface: With LayerPro, you can create alerts, prompts, confirmations, and personalized messages that seamlessly integrate with your application's design, enhancing the user experience.
Compatibility with Various Frameworks: LayerPro is compatible with HTML, React, Vue, and other frontend frameworks and libraries, making it extremely versatile and easy to integrate into any project.
Ease of Use: Once LayerPro is imported into your project, you can access all its features globally without needing additional imports. This simplifies the development process and reduces boilerplate code.
Advanced Features: LayerPro offers advanced options such as the ability to maximize, resize, move, and dock pop-ups. You can also configure fade-in and fade-out effects for a smoother experience.
Override Browser Pop-ups: LayerPro allows you to replace browser pop-ups with customized versions, eliminating the unattractive look of default pop-ups and providing complete control over the appearance and behavior of your messages.
Component Support: You can use components or modules as the body of your pop-ups, allowing you to create complex and interactive user interfaces within the pop-ups themselves.
copyright (c) 2019 - 2025 by Dario Passariello