Security News
Maven Central Adds Sigstore Signature Validation
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.
showmodaldialog
Advanced tools
This is a window.showModalDialog()
shim using a modal HTML5 <dialog>
element and ECMAScript 2015 Generators or ECMAScript 2017 Async/Await. It was tested in the latest Google Chrome and in the latest Mozilla Firefox with the dom.dialog_element.enabled preference set to true in about:config
. Just include the following HTML code before using showModalDialog
function:
<script src="https://unpkg.com/showmodaldialog"></script>
Passing both window.dialogArguments
and window.returnValue
is supported, provided that the dialog document is on the same server as the host document.
ShowModalDialog Polyfill is using Promises, Generators, yield
, async
, await
and the spawn
function by Jake Archibald. If they are unavailable, the polyfill is using eval
and JSON as a fallback, provided that statements are separated by new lines, the showModalDialog
function is not nested and runs only once in a function.
spawn(function*() {
//statements before showing a modal dialog
var returnValue = yield window.showModalDialog( url [, arguments, options] );
//statements after closing a modal dialog
});
or:
(async function() {
//statements before showing a modal dialog
var returnValue = await window.showModalDialog( url [, arguments, options] );
//statements after closing a modal dialog
})();
or:
(function() {
//statements before showing a modal dialog
var returnValue = window.showModalDialog( url [, arguments, options] );
//statements after closing a modal dialog
})();
where:
dialogHeight:???px;dialogLeft:???px;dialogTop:???px;dialogWidth:???px;
When using generators or async/await, both showModalDialog
and spawn
functions are Promises, so you can use their then
method and yield
them.
When using an eval
fallback, the showModalDialog
function throws an exception to stop executing code until the modal is closed, then it eval
s the remaining code of a caller function.
In order to close the dialog from inside of it, invoke parent.document.getElementsByTagName('dialog')[0].close();
provided that both documents have the same origin.
Here is a live demo. Works best in Google Chrome.
ShowModalDialog Polyfill is developed by Jerzy Głowacki under Apache 2.0 License.
FAQs
window.showModalDialog polyfill using a <dialog> element
The npm package showmodaldialog receives a total of 261 weekly downloads. As such, showmodaldialog popularity was classified as not popular.
We found that showmodaldialog demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.
Security News
CISOs are racing to adopt AI for cybersecurity, but hurdles in budgets and governance may leave some falling behind in the fight against cyber threats.
Research
Security News
Socket researchers uncovered a backdoored typosquat of BoltDB in the Go ecosystem, exploiting Go Module Proxy caching to persist undetected for years.