New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

phosphor-domutil

Package Overview
Dependencies
Maintainers
1
Versions
13
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

phosphor-domutil - npm Package Compare versions

Comparing version 0.9.6 to 1.0.1

56

lib/index.d.ts

@@ -18,3 +18,3 @@ import { IDisposable } from 'phosphor-disposable';

* // force the cursor to be 'wait' for the entire document
* var override = overrideCursor('wait');
* let override = overrideCursor('wait');
*

@@ -41,3 +41,3 @@ * // clear the override by disposing the return value

*
* var div = document.createElement('div');
* let div = document.createElement('div');
* div.style.position = 'absolute';

@@ -111,7 +111,7 @@ * div.style.left = '0px';

*
* var div = document.createElement('div');
* let div = document.createElement('div');
* div.style.borderTop = 'solid 10px black';
* document.body.appendChild(div);
*
* var sizing = boxSizing(div);
* let sizing = boxSizing(div);
* sizing.borderTop; // 10

@@ -155,7 +155,7 @@ * sizing.paddingLeft; // 0

*
* var div = document.createElement('div');
* let div = document.createElement('div');
* div.style.minWidth = '90px';
* document.body.appendChild(div);
*
* var limits = sizeLimits(div);
* let limits = sizeLimits(div);
* limits.minWidth; // 90

@@ -167,45 +167,1 @@ * limits.maxHeight; // Infinity

export declare function sizeLimits(node: HTMLElement): ISizeLimits;
/**
* Get the custom data associated with a drag and drop operation.
*
* @param event - The DragEvent generated by a user interaction.
*
* @param mime - The MIME type whose data is being retrieved.
*
* @returns The value associated with a DragEvent and a MIME type,
* or `undefined` if not data has been set for the combination.
*
* #### Notes
* The native drag and drop life cycle ends for the drop target with
* a `drop` event where the value associated with a particular MIME
* should be retrieved. One example is a Widget being dropped on a
* target that will clone it using a retrieved factory function.
*/
export declare function getDragData(event: DragEvent, mime: string): any;
/**
* Set custom drag data for a specific drag event.
*
* @param event - The DragEvent generated by a user interaction.
*
* @param mime - The MIME type whose data is being retrieved.
*
* @param data - The value to stored for the DragEvent and MIME
* combination. This can be any object, not just string data.
*
* #### Notes
* The native drag and drop life cycle begins with a `dragstart` event
* on the draggable node. The value associated with a particular MIME
* should be set in this event handler.
*/
export declare function setDragData(event: DragEvent, mime: string, data: any): void;
/**
* Clear the data being held for a specific drag event.
*
* @param event - The DragEvent generated by a user interaction.
*
* #### Notes
* The native drag and drop life cycle ends with a `dragend` event on
* the draggable node. The values associated with a particular event
* should be cleared in this event handler.
*/
export declare function clearDragData(event: DragEvent): void;

@@ -35,3 +35,3 @@ /*-----------------------------------------------------------------------------

* // force the cursor to be 'wait' for the entire document
* var override = overrideCursor('wait');
* let override = overrideCursor('wait');
*

@@ -70,3 +70,3 @@ * // clear the override by disposing the return value

*
* var div = document.createElement('div');
* let div = document.createElement('div');
* div.style.position = 'absolute';

@@ -102,7 +102,7 @@ * div.style.left = '0px';

*
* var div = document.createElement('div');
* let div = document.createElement('div');
* div.style.borderTop = 'solid 10px black';
* document.body.appendChild(div);
*
* var sizing = boxSizing(div);
* let sizing = boxSizing(div);
* sizing.borderTop; // 10

@@ -150,7 +150,7 @@ * sizing.paddingLeft; // 0

*
* var div = document.createElement('div');
* let div = document.createElement('div');
* div.style.minWidth = '90px';
* document.body.appendChild(div);
*
* var limits = sizeLimits(div);
* let limits = sizeLimits(div);
* limits.minWidth; // 90

@@ -171,77 +171,2 @@ * limits.maxHeight; // Infinity

exports.sizeLimits = sizeLimits;
/**
* The internal MIME type used to store the custom drag data.
*/
var DRAG_MIME_TYPE = 'application/x-phosphor-internal-drag-data';
/**
* The internal cache that holds the custom drag data.
*/
var dragCache = {
data: Object.create(null),
id: 0
};
/**
* Get the custom data associated with a drag and drop operation.
*
* @param event - The DragEvent generated by a user interaction.
*
* @param mime - The MIME type whose data is being retrieved.
*
* @returns The value associated with a DragEvent and a MIME type,
* or `undefined` if not data has been set for the combination.
*
* #### Notes
* The native drag and drop life cycle ends for the drop target with
* a `drop` event where the value associated with a particular MIME
* should be retrieved. One example is a Widget being dropped on a
* target that will clone it using a retrieved factory function.
*/
function getDragData(event, mime) {
var id = event.dataTransfer.getData(DRAG_MIME_TYPE);
return id && dragCache.data[id] && dragCache.data[id][mime];
}
exports.getDragData = getDragData;
/**
* Set custom drag data for a specific drag event.
*
* @param event - The DragEvent generated by a user interaction.
*
* @param mime - The MIME type whose data is being retrieved.
*
* @param data - The value to stored for the DragEvent and MIME
* combination. This can be any object, not just string data.
*
* #### Notes
* The native drag and drop life cycle begins with a `dragstart` event
* on the draggable node. The value associated with a particular MIME
* should be set in this event handler.
*/
function setDragData(event, mime, data) {
var id = event.dataTransfer.getData(DRAG_MIME_TYPE);
if (!id) {
id = "drag-" + ++dragCache.id;
event.dataTransfer.setData(DRAG_MIME_TYPE, id);
}
if (!dragCache.data[id]) {
dragCache.data[id] = Object.create(null);
}
dragCache.data[id][mime] = data;
}
exports.setDragData = setDragData;
/**
* Clear the data being held for a specific drag event.
*
* @param event - The DragEvent generated by a user interaction.
*
* #### Notes
* The native drag and drop life cycle ends with a `dragend` event on
* the draggable node. The values associated with a particular event
* should be cleared in this event handler.
*/
function clearDragData(event) {
var id = event.dataTransfer.getData(DRAG_MIME_TYPE);
if (id)
delete dragCache.data[id];
}
exports.clearDragData = clearDragData;
//# sourceMappingURL=index.js.map

7

package.json
{
"name": "phosphor-domutil",
"version": "0.9.6",
"version": "1.0.1",
"description": "Utilities for working with the DOM.",

@@ -8,3 +8,3 @@ "main": "lib/index.js",

"dependencies": {
"phosphor-disposable": "^1.0.4"
"phosphor-disposable": "^1.0.5"
},

@@ -59,4 +59,5 @@ "devDependencies": {

"keywords": [
"dom",
"ui",
"domutil"
"utility"
],

@@ -63,0 +64,0 @@ "author": "S. Chris Colbert <sccolbert@gmail.com>",

@@ -100,9 +100,12 @@ phosphor-domutil

**overrideCursor**
**Cursor Override:**
```typescript
import { overrideCursor } from 'phosphor-domutil';
import {
overrideCursor
} from 'phosphor-domutil';
// force the cursor to be 'wait' for the entire document
var override = overrideCursor('wait');
let override = overrideCursor('wait');

@@ -113,8 +116,11 @@ // clear the override by disposing the return value

**hitTest**
**Hit Testing:**
```typescript
import { hitTest } from 'phosphor-domutil';
import {
hitTest
} from 'phosphor-domutil';
var div = document.createElement('div');
let div = document.createElement('div');
div.style.position = 'absolute';

@@ -131,12 +137,14 @@ div.style.left = '0px';

**boxSizing**
**Box Sizing:**
```typescript
import { boxSizing } from 'phosphor-domutil';
import {
boxSizing
} from 'phosphor-domutil';
var div = document.createElement('div');
let div = document.createElement('div');
div.style.borderTop = 'solid 10px black';
document.body.appendChild(div);
var sizing = boxSizing(div);
let sizing = boxSizing(div);
sizing.borderTop; // 10

@@ -147,12 +155,14 @@ sizing.paddingLeft; // 0

**sizeLimits**
**Size Limits:**
```typescript
import { sizeLimits } from 'phosphor-domutil';
import {
sizeLimits
} from 'phosphor-domutil';
var div = document.createElement('div');
let div = document.createElement('div');
div.style.minWidth = '90px';
document.body.appendChild(div);
var limits = sizeLimits(div);
let limits = sizeLimits(div);
limits.minWidth; // 90

@@ -162,1 +172,32 @@ limits.maxHeight; // Infinity

```
**Custom Drag Data:**
```typescript
import {
clearDragData, getDragData, setDragData
} from 'phosphor-domutil';
// pseudo-code
class SomeDragSource {
evtDragStart(event: DragEvent): void {
setDragData(event, 'application/x-my-custom-data', { foo: 12, bar: 42 });
}
evtDragEnd(event: DragEvent): void {
clearDragData(event);
}
}
// pseudo-code
class SomeDropTarget {
evtDrop(event: DragEvent): void {
let data = getDragData(event, 'application/x-my-custom-data');
console.log(data); // { foo: 12, bar: 42 }
}
}
```
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc