phosphor-domutil
Advanced tools
Comparing version 0.9.6 to 1.0.1
@@ -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 |
{ | ||
"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 } | ||
} | ||
} | ||
``` |
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
1
199
16984
338
Updatedphosphor-disposable@^1.0.5