
Security News
AI Agent Lands PRs in Major OSS Projects, Targets Maintainers via Cold Outreach
An AI agent is merging PRs into major OSS projects and cold-emailing maintainers to drum up more work.
paperglider
Advanced tools
Minimal library for common communication tasks between different window objects.
npm install paperglider
The PaperGlider class can be included via AMD, commonjs or a script tag.
We assume a main frame with origin http://main.example.com and a child frame with origin http://child.example.com.
Main frame:
const PaperGlider = require('paperglider');
const com = PaperGlider.connectIframe(iframe, 'http://child.example.com');
com.replyOn('someaction', (a, b) => a === b);
Now everytime the paperglider object in the main frame receives a message with the action 'someaction' with the proper targetOrigin, it responds by comparing both sent parameters.
Child frame:
const PaperGlider = require('paperglider');
const com = PaperGlider.connectParent('http://main.example.com');
com.request('someaction', [2, 2], result => console.log(result));
More complete examples can be found in the examples folder. The files iframe.html and window-open.html can both be opened locally.
PaperGliderPaperGliderPaperGliderKind: inner class of {PaperGlider}
PaperGliderPaperGliderPaperGliderCreates an object to communicate with another windows.
| Param | Type |
|---|---|
| self | Window |
Sets up the communication to another window. The target origin can be omitted in which case it is set to '*',
which normally should be avoided.
Kind: instance method of PaperGlider
| Param | Type | Default |
|---|---|---|
| target | Window | |
| [targetOrigin] | string | "'*'" |
booleanReturns true if a connection was established.
Kind: instance method of PaperGlider
Sends the action and the given arguments to the other window.
Kind: instance method of PaperGlider
| Param | Type | Description |
|---|---|---|
| action | string | identifier |
| args | Array.<any> | arguments that get passed to the receiving callback. Should not contain functions or DOM elements. |
functionWhenever the window receives the given action, the callback is executed with the sent arguments.
Kind: instance method of PaperGlider
Returns: function - end will end receiving the action.
| Param | Type | Description |
|---|---|---|
| action | string | identifier |
| callback | function | will receive all sent arguments as arguments to the call. |
functionWhenever the window receives the action, send back the data returned by the callback with the same associated action identifier.
Kind: instance method of PaperGlider
Returns: function - end will end replying to the action.
| Param | Type | Description |
|---|---|---|
| action | string | |
| callback | function | will receive all sent arguments as arguments to the call. |
Sends the action to the other window and waits for the same action and executes the callback once with the returned data.
Kind: instance method of PaperGlider
| Param | Type | Description |
|---|---|---|
| action | string | identifier |
| args | Array.<any> | arguments that get passed to the receiving callback. Should not contain functions or DOM elements. |
| callback | function | gets passed the (single) answer to the request. |
Removes all pending event listeners from the window object.
Kind: instance method of PaperGlider
The given callback will be executed as soon as PaperGlider has connected.
Kind: instance method of PaperGlider
| Param |
|---|
| callback |
PaperGliderThis is a simple helper to connect to a iframe. It waits for the contentWindow if neccessary.
Kind: static method of PaperGlider
| Param | Type | Default |
|---|---|---|
| iframe | HTMLIFrameElement | |
| [iframeOrigin] | string | "'*'" |
PaperGliderThis is a simple helper to connect to a child window (iframe, window.open)
Kind: static method of PaperGlider
| Param | Type | Default |
|---|---|---|
| child | Window | |
| [childOrigin] | string | "'*'" |
PaperGliderThis is a simple helper to connect to a parent window (window.top or window.opener)
Kind: static method of PaperGlider
| Param | Type | Default |
|---|---|---|
| [parentOrigin] | string | "'*'" |
FAQs
Minimal library for common communication tasks between different window objects
The npm package paperglider receives a total of 4 weekly downloads. As such, paperglider popularity was classified as not popular.
We found that paperglider 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
An AI agent is merging PRs into major OSS projects and cold-emailing maintainers to drum up more work.

Research
/Security News
Chrome extension CL Suite by @CLMasters neutralizes 2FA for Facebook and Meta Business accounts while exfiltrating Business Manager contact and analytics data.

Security News
After Matplotlib rejected an AI-written PR, the agent fired back with a blog post, igniting debate over AI contributions and maintainer burden.