[{"comment":"/** @article /home/travis/build/taye/interact.js/jsdoc/index.md **/","meta":{"filename":"index.md","lineno":1,"columnno":0,"path":"","code":{},"shortpath":"jsdoc/index.md"},"kind":"article","source":"\n<img\n  style=\"background-color: #272822; display: block; margin: auto; max-height: 8em; width: 100%\"\n  alt=\"interact.js\"\n  src=\"img/ijs-anim-short.svg\">\n","name":"index","filename":"index.md","title":"API Reference","longname":"article:index","description":"<p><img\n  style=\"background-color: #272822; display: block; margin: auto; max-height: 8em; width: 100%\"\n  alt=\"interact.js\"\n  src=\"img/ijs-anim-short.svg\"></p>","outfilename":"index.html","scope":"global","___id":"T000002R003488","___s":true,"attribs":"","id":"index","ancestors":[]},{"comment":"/**\n   * Don't call listeners on the remaining targets\n   */","meta":{"range":[396,499],"filename":"BaseEvent.ts","lineno":28,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100007687","name":"BaseEvent#stopImmediatePropagation","type":"MethodDefinition","paramnames":[]},"vars":{"":null},"shortpath":"packages/@interactjs/core/BaseEvent.ts"},"description":"<p>Don't call listeners on the remaining targets</p>","name":"stopImmediatePropagation","longname":"BaseEvent#stopImmediatePropagation","kind":"function","memberof":"BaseEvent","scope":"instance","params":[],"___id":"T000002R000853","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"stopImmediatePropagation","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/**\n   * Don't call any other listeners (even on the current target)\n   */","meta":{"range":[269,328],"filename":"BaseEvent.ts","lineno":21,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100007677","name":"BaseEvent#stopPropagation","type":"MethodDefinition","paramnames":[]},"vars":{"":null},"shortpath":"packages/@interactjs/core/BaseEvent.ts"},"description":"<p>Don't call any other listeners (even on the current target)</p>","name":"stopPropagation","longname":"BaseEvent#stopPropagation","kind":"function","memberof":"BaseEvent","scope":"instance","params":[],"___id":"T000002R000851","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"stopPropagation","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/**\n   * Class of events fired on dropzones during drags with acceptable targets.\n   */","meta":{"range":[307,767],"filename":"DropEvent.ts","lineno":19,"columnno":2,"path":"../packages/@interactjs/actions/drop","code":{"id":"astnode100000544","name":"exports.DropEvent","type":"MethodDefinition","paramnames":["dropState","dragEvent","type"]},"vars":{"":null},"shortpath":"packages/@interactjs/actions/drop/DropEvent.ts"},"description":"<p>Class of events fired on dropzones during drags with acceptable targets.</p>","name":"DropEvent","longname":"DropEvent#DropEvent","kind":"class","memberof":"DropEvent","scope":"instance","params":[],"___id":"T000003R000002","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"DropEvent","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/**\n   * If this is a `dropactivate` event, the dropzone element will be\n   * deactivated.\n   *\n   * If this is a `dragmove` or `dragenter`, a `dragleave` will be fired on the\n   * dropzone element and more.\n   */","meta":{"range":[988,2027],"filename":"DropEvent.ts","lineno":37,"columnno":2,"path":"../packages/@interactjs/actions/drop","code":{"id":"astnode100000628","name":"DropEvent#reject","type":"MethodDefinition","paramnames":[]},"vars":{"":null},"shortpath":"packages/@interactjs/actions/drop/DropEvent.ts"},"description":"<p>If this is a <code>dropactivate</code> event, the dropzone element will be\ndeactivated.</p>\n<p>If this is a <code>dragmove</code> or <code>dragenter</code>, a <code>dragleave</code> will be fired on the\ndropzone element and more.</p>","name":"reject","longname":"DropEvent#reject","kind":"function","memberof":"DropEvent","scope":"instance","params":[],"___id":"T000002R000072","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"reject","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/**\n   * ```js\n   * interact('#draggable').draggable(true)\n   *\n   * var rectables = interact('rect')\n   * rectables\n   *   .gesturable(true)\n   *   .on('gesturemove', function (event) {\n   *       // ...\n   *   })\n   * ```\n   *\n   * The methods of this variable can be used to set elements as interactables\n   * and also to change various default settings.\n   *\n   * Calling it as a function and passing an element or a valid CSS selector\n   * string returns an Interactable object which has various methods to configure\n   * it.\n   *\n   * @global\n   *\n   * @param {Element | string} target The HTML or SVG Element to interact with\n   * or CSS selector\n   * @return {Interactable}\n   */","meta":{"range":[1078,1359],"filename":"InteractStatic.ts","lineno":51,"columnno":8,"path":"../packages/@interactjs/core","code":{"id":"astnode100014830","name":"interact","type":"ArrowFunctionExpression"},"vars":{"interactable":"module:interact~interactable","interactable.events.global":"module:interact~interactable.events.global"},"shortpath":"packages/@interactjs/core/InteractStatic.ts"},"description":"<pre class=\"prettyprint source lang-js\"><code>interact('#draggable').draggable(true)\n\nvar rectables = interact('rect')\nrectables\n  .gesturable(true)\n  .on('gesturemove', function (event) {\n      // ...\n  })\n</code></pre>\n<p>The methods of this variable can be used to set elements as interactables\nand also to change various default settings.</p>\n<p>Calling it as a function and passing an element or a valid CSS selector\nstring returns an Interactable object which has various methods to configure\nit.</p>","scope":"global","params":[{"type":{"names":["Element","string"]},"description":"<p>The HTML or SVG Element to interact with\nor CSS selector</p>","name":"target"}],"returns":[{"type":{"names":["Interactable"]}}],"name":"interact","longname":"interact","kind":"function","___id":"T000002R001581","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"interact","signature":"<span class=\"signature\">(target)</span><span class=\"type-signature\"> &rarr; {<a href=\"Interactable.html\">Interactable</a>}</span>","ancestors":[]},{"comment":"/**\n   * Returns or sets whether the dimensions of dropzone elements are calculated\n   * on every dragmove or only on dragstart for the default dropChecker\n   *\n   * @param {boolean} [newValue] True to check on each move. False to check only\n   * before start\n   * @return {boolean | interact} The current setting or interact\n   */","meta":{"range":[3690,3977],"filename":"plugin.ts","lineno":194,"columnno":2,"path":"../packages/@interactjs/actions/drop","code":{"id":"astnode100000933","name":"interact.dynamicDrop","type":"FunctionExpression","paramnames":["newValue"]},"vars":{"scope.dynamicDrop":"scope.dynamicDrop"},"shortpath":"packages/@interactjs/actions/drop/plugin.ts"},"description":"<p>Returns or sets whether the dimensions of dropzone elements are calculated\non every dragmove or only on dragstart for the default dropChecker</p>","params":[{"type":{"names":["boolean"]},"optional":true,"description":"<p>True to check on each move. False to check only\nbefore start</p>","name":"newValue"}],"returns":[{"type":{"names":["boolean","interact"]},"description":"<p>The current setting or interact</p>"}],"name":"dynamicDrop","longname":"interact.dynamicDrop","kind":"function","memberof":"interact","scope":"static","___id":"T000002R000098","___s":true,"attribs":"<span class=\"type-signature\">(static) </span>","id":".dynamicDrop","signature":"<span class=\"signature\">(newValue<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {boolean|<a href=\"global.html#interact\">interact</a>}</span>","ancestors":["<a href=\"global.html#interact\">interact</a>."]},{"comment":"/** */","meta":{"range":[782,1132],"filename":"Interactable.ts","lineno":27,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100008939","name":"exports.Interactable","type":"MethodDefinition","paramnames":["target","options","defaultContext","scopeEvents"]},"shortpath":"packages/@interactjs/core/Interactable.ts"},"name":"Interactable","longname":"Interactable","kind":"class","memberof":"Interactable","scope":"instance","___id":"T000003R000003","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"Interactable","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/** @internal */","meta":{"range":[644,740],"filename":"Interactable.ts","lineno":16,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100008924","name":"Interactable#_defaults","type":"MethodDefinition","paramnames":[]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interactable.ts"},"tags":[{"originalTitle":"internal","title":"internal","text":""}],"name":"_defaults","longname":"Interactable#_defaults","kind":"member","memberof":"Interactable","scope":"instance","params":[],"___id":"T000002R000972","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"_defaults","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"],"signature":"<span class=\"type-signature\"></span>"},{"comment":"/**\n   * ```js\n   * interact('.resize-drag')\n   *   .resizable(true)\n   *   .draggable(true)\n   *   .actionChecker(function (pointer, event, action, interactable, element, interaction) {\n   *\n   *     if (interact.matchesSelector(event.target, '.drag-handle')) {\n   *       // force drag with handle target\n   *       action.name = drag\n   *     }\n   *     else {\n   *       // resize from the top and right edges\n   *       action.name  = 'resize'\n   *       action.edges = { top: true, right: true }\n   *     }\n   *\n   *     return action\n   * })\n   * ```\n   *\n   * Returns or sets the function used to check action to be performed on\n   * pointerDown\n   *\n   * @param {function | null} [checker] A function which takes a pointer event,\n   * defaultAction string, interactable, element and interaction as parameters\n   * and returns an object with name property 'drag' 'resize' or 'gesture' and\n   * optionally an `edges` object with boolean 'top', 'left', 'bottom' and right\n   * props.\n   * @return {Function | Interactable} The checker function or this Interactable\n   */","meta":{"range":[3607,3659],"filename":"InteractableMethods.ts","lineno":108,"columnno":2,"path":"../packages/@interactjs/auto-start","code":{"id":"astnode100007446","name":"Interactable.prototype.actionChecker","type":"Identifier","value":"actionChecker","paramnames":[]},"shortpath":"packages/@interactjs/auto-start/InteractableMethods.ts"},"description":"<pre class=\"prettyprint source lang-js\"><code>interact('.resize-drag')\n  .resizable(true)\n  .draggable(true)\n  .actionChecker(function (pointer, event, action, interactable, element, interaction) {\n\n    if (interact.matchesSelector(event.target, '.drag-handle')) {\n      // force drag with handle target\n      action.name = drag\n    }\n    else {\n      // resize from the top and right edges\n      action.name  = 'resize'\n      action.edges = { top: true, right: true }\n    }\n\n    return action\n})\n</code></pre>\n<p>Returns or sets the function used to check action to be performed on\npointerDown</p>","params":[{"type":{"names":["function","null"]},"optional":true,"description":"<p>A function which takes a pointer event,\ndefaultAction string, interactable, element and interaction as parameters\nand returns an object with name property 'drag' 'resize' or 'gesture' and\noptionally an <code>edges</code> object with boolean 'top', 'left', 'bottom' and right\nprops.</p>","name":"checker"}],"returns":[{"type":{"names":["function","Interactable"]},"description":"<p>The checker function or this Interactable</p>"}],"name":"actionChecker","longname":"Interactable#actionChecker","kind":"member","memberof":"Interactable","scope":"instance","___id":"T000002R000818","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"actionChecker","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"],"signature":"<span class=\"type-signature\"></span>"},{"comment":"/**\n   *\n   * A drag/resize/gesture is started only If the target of the `mousedown`,\n   * `pointerdown` or `touchstart` event or any of it's parents match the given\n   * CSS selector or Element.\n   *\n   * @deprecated\n   * Don't use this method. Instead set the `allowFrom` option for each action\n   * or for `pointerEvents`\n   *\n   * ```js\n   * interact(targett)\n   *   .resizable({\n   *     allowFrom: '.resize-handle',\n   *   .pointerEvents({\n   *     allowFrom: '.handle',,\n   *   })\n   * ```\n   *\n   * @param {string | Element | null} [newValue] a CSS selector string, an\n   * Element or `null` to allow from any element\n   * @return {string | Element | object} The current allowFrom value or this\n   * Interactable\n   */","meta":{"range":[2296,2523],"filename":"InteractableMethods.ts","lineno":80,"columnno":2,"path":"../packages/@interactjs/auto-start","code":{"id":"astnode100007426","name":"Interactable.prototype.allowFrom","type":"CallExpression","value":"","paramnames":[]},"shortpath":"packages/@interactjs/auto-start/InteractableMethods.ts"},"description":"<p>A drag/resize/gesture is started only If the target of the <code>mousedown</code>,\n<code>pointerdown</code> or <code>touchstart</code> event or any of it's parents match the given\nCSS selector or Element.</p>","deprecated":"Don't use this method. Instead set the `allowFrom` option for each action\nor for `pointerEvents`\n\n```js\ninteract(targett)\n  .resizable({\n    allowFrom: '.resize-handle',\n  .pointerEvents({\n    allowFrom: '.handle',,\n  })\n```","params":[{"type":{"names":["string","Element","null"]},"optional":true,"description":"<p>a CSS selector string, an\nElement or <code>null</code> to allow from any element</p>","name":"newValue"}],"returns":[{"type":{"names":["string","Element","object"]},"description":"<p>The current allowFrom value or this\nInteractable</p>"}],"name":"allowFrom","longname":"Interactable#allowFrom","kind":"member","memberof":"Interactable","scope":"instance","___id":"T000002R000817","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"allowFrom","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"],"signature":"<span class=\"type-signature\"></span>"},{"comment":"/**\n   * Gets the selector context Node of the Interactable. The default is\n   * `window.document`.\n   *\n   * @return {Node} The context Node of this Interactable\n   */","meta":{"range":[6220,6261],"filename":"Interactable.ts","lineno":243,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100009543","name":"Interactable#context","type":"MethodDefinition","paramnames":[]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interactable.ts"},"description":"<p>Gets the selector context Node of the Interactable. The default is\n<code>window.document</code>.</p>","returns":[{"type":{"names":["Node"]},"description":"<p>The context Node of this Interactable</p>"}],"name":"context","longname":"Interactable#context","kind":"function","memberof":"Interactable","scope":"instance","params":[],"___id":"T000002R001014","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"context","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"> &rarr; {Node}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * Returns or sets the mouse coordinate types used to calculate the\n   * movement of the pointer.\n   *\n   * @param {string} [newValue] Use 'client' if you will be scrolling while\n   * interacting; Use 'page' if you want autoScroll to work\n   * @return {string | object} The current deltaSource or this Interactable\n   */","meta":{"range":[5855,6044],"filename":"Interactable.ts","lineno":223,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100009513","name":"Interactable#deltaSource","type":"MethodDefinition","paramnames":["newValue"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interactable.ts"},"description":"<p>Returns or sets the mouse coordinate types used to calculate the\nmovement of the pointer.</p>","params":[{"type":{"names":["string"]},"optional":true,"description":"<p>Use 'client' if you will be scrolling while\ninteracting; Use 'page' if you want autoScroll to work</p>","name":"newValue"}],"returns":[{"type":{"names":["string","object"]},"description":"<p>The current deltaSource or this Interactable</p>"}],"name":"deltaSource","longname":"Interactable#deltaSource","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R001012","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"deltaSource","signature":"<span class=\"signature\">(newValue<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {string|object}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n * ```js\n * interact(element).draggable({\n *     onstart: function (event) {},\n *     onmove : function (event) {},\n *     onend  : function (event) {},\n *\n *     // the axis in which the first movement must be\n *     // for the drag sequence to start\n *     // 'xy' by default - any direction\n *     startAxis: 'x' || 'y' || 'xy',\n *\n *     // 'xy' by default - don't restrict to one axis (move in any direction)\n *     // 'x' or 'y' to restrict movement to either axis\n *     // 'start' to restrict movement to the axis the drag started in\n *     lockAxis: 'x' || 'y' || 'xy' || 'start',\n *\n *     // max number of drags that can happen concurrently\n *     // with elements of this Interactable. Infinity by default\n *     max: Infinity,\n *\n *     // max number of drags that can target the same element+Interactable\n *     // 1 by default\n *     maxPerElement: 2\n * })\n *\n * var isDraggable = interact('element').draggable(); // true\n * ```\n *\n * Get or set whether drag actions can be performed on the target\n *\n * @alias Interactable.prototype.draggable\n *\n * @param {boolean | object} [options] true/false or An object with event\n * listeners to be fired on drag events (object makes the Interactable\n * draggable)\n * @return {boolean | Interactable} boolean indicating if this can be the\n * target of drag events, or this Interctable\n */","meta":{"range":[2718,3290],"filename":"plugin.ts","lineno":74,"columnno":6,"path":"../packages/@interactjs/actions/drag","code":{"id":"astnode100000301","name":"draggable","type":"FunctionExpression","value":"draggable"},"vars":{"this.options.drag.enabled":"Interactable#draggable#options.drag.enabled","this.options.drag.lockAxis":"Interactable#draggable#options.drag.lockAxis","this.options.drag.startAxis":"Interactable#draggable#options.drag.startAxis"},"shortpath":"packages/@interactjs/actions/drag/plugin.ts"},"description":"<pre class=\"prettyprint source lang-js\"><code>interact(element).draggable({\n    onstart: function (event) {},\n    onmove : function (event) {},\n    onend  : function (event) {},\n\n    // the axis in which the first movement must be\n    // for the drag sequence to start\n    // 'xy' by default - any direction\n    startAxis: 'x' || 'y' || 'xy',\n\n    // 'xy' by default - don't restrict to one axis (move in any direction)\n    // 'x' or 'y' to restrict movement to either axis\n    // 'start' to restrict movement to the axis the drag started in\n    lockAxis: 'x' || 'y' || 'xy' || 'start',\n\n    // max number of drags that can happen concurrently\n    // with elements of this Interactable. Infinity by default\n    max: Infinity,\n\n    // max number of drags that can target the same element+Interactable\n    // 1 by default\n    maxPerElement: 2\n})\n\nvar isDraggable = interact('element').draggable(); // true\n</code></pre>\n<p>Get or set whether drag actions can be performed on the target</p>","alias":"Interactable.prototype.draggable","params":[{"type":{"names":["boolean","object"]},"optional":true,"description":"<p>true/false or An object with event\nlisteners to be fired on drag events (object makes the Interactable\ndraggable)</p>","name":"options"}],"returns":[{"type":{"names":["boolean","Interactable"]},"description":"<p>boolean indicating if this can be the\ntarget of drag events, or this Interctable</p>"}],"name":"draggable","longname":"Interactable#draggable","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R000029","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"draggable","signature":"<span class=\"signature\">(options<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {boolean|<a href=\"Interactable.html\">Interactable</a>}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * ```js\n   * interact(target)\n   * .dropChecker(function(dragEvent,         // related dragmove or dragend event\n   *                       event,             // TouchEvent/PointerEvent/MouseEvent\n   *                       dropped,           // bool result of the default checker\n   *                       dropzone,          // dropzone Interactable\n   *                       dropElement,       // dropzone elemnt\n   *                       draggable,         // draggable Interactable\n   *                       draggableElement) {// draggable element\n   *\n   *   return dropped && event.target.hasAttribute('allow-drop')\n   * }\n   * ```\n   */","meta":{"range":[3134,3350],"filename":"plugin.ts","lineno":167,"columnno":2,"path":"../packages/@interactjs/actions/drop","code":{"id":"astnode100000908","name":"Interactable.prototype.dropCheck","type":"FunctionExpression","paramnames":["dragEvent","event","draggable","draggableElement","dropElement","rect"]},"shortpath":"packages/@interactjs/actions/drop/plugin.ts"},"description":"<pre class=\"prettyprint source lang-js\"><code>interact(target)\n.dropChecker(function(dragEvent,         // related dragmove or dragend event\n                      event,             // TouchEvent/PointerEvent/MouseEvent\n                      dropped,           // bool result of the default checker\n                      dropzone,          // dropzone Interactable\n                      dropElement,       // dropzone elemnt\n                      draggable,         // draggable Interactable\n                      draggableElement) {// draggable element\n\n  return dropped && event.target.hasAttribute('allow-drop')\n}\n</code></pre>","name":"dropCheck","longname":"Interactable#dropCheck","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R000097","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"dropCheck","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   *\n   * ```js\n   * interact('.drop').dropzone({\n   *   accept: '.can-drop' || document.getElementById('single-drop'),\n   *   overlap: 'pointer' || 'center' || zeroToOne\n   * }\n   * ```\n   *\n   * Returns or sets whether draggables can be dropped onto this target to\n   * trigger drop events\n   *\n   * Dropzones can receive the following events:\n   *  - `dropactivate` and `dropdeactivate` when an acceptable drag starts and ends\n   *  - `dragenter` and `dragleave` when a draggable enters and leaves the dropzone\n   *  - `dragmove` when a draggable that has entered the dropzone is moved\n   *  - `drop` when a draggable is dropped into this dropzone\n   *\n   * Use the `accept` option to allow only elements that match the given CSS\n   * selector or element. The value can be:\n   *\n   *  - **an Element** - only that element can be dropped into this dropzone.\n   *  - **a string**, - the element being dragged must match it as a CSS selector.\n   *  - **`null`** - accept options is cleared - it accepts any element.\n   *\n   * Use the `overlap` option to set how drops are checked for. The allowed\n   * values are:\n   *\n   *   - `'pointer'`, the pointer must be over the dropzone (default)\n   *   - `'center'`, the draggable element's center must be over the dropzone\n   *   - a number from 0-1 which is the `(intersection area) / (draggable area)`.\n   *   e.g. `0.5` for drop to happen when half of the area of the draggable is\n   *   over the dropzone\n   *\n   * Use the `checker` option to specify a function to check if a dragged element\n   * is over this Interactable.\n   *\n   * @param {boolean | object | null} [options] The new options to be set.\n   * @return {object | Interactable} The current setting or this Interactable\n   */","meta":{"range":[2371,2471],"filename":"plugin.ts","lineno":123,"columnno":2,"path":"../packages/@interactjs/actions/drop","code":{"id":"astnode100000893","name":"Interactable.prototype.dropzone","type":"FunctionExpression","paramnames":["options"]},"shortpath":"packages/@interactjs/actions/drop/plugin.ts"},"description":"<pre class=\"prettyprint source lang-js\"><code>interact('.drop').dropzone({\n  accept: '.can-drop' || document.getElementById('single-drop'),\n  overlap: 'pointer' || 'center' || zeroToOne\n}\n</code></pre>\n<p>Returns or sets whether draggables can be dropped onto this target to\ntrigger drop events</p>\n<p>Dropzones can receive the following events:</p>\n<ul>\n<li><code>dropactivate</code> and <code>dropdeactivate</code> when an acceptable drag starts and ends</li>\n<li><code>dragenter</code> and <code>dragleave</code> when a draggable enters and leaves the dropzone</li>\n<li><code>dragmove</code> when a draggable that has entered the dropzone is moved</li>\n<li><code>drop</code> when a draggable is dropped into this dropzone</li>\n</ul>\n<p>Use the <code>accept</code> option to allow only elements that match the given CSS\nselector or element. The value can be:</p>\n<ul>\n<li><strong>an Element</strong> - only that element can be dropped into this dropzone.</li>\n<li><strong>a string</strong>, - the element being dragged must match it as a CSS selector.</li>\n<li><strong><code>null</code></strong> - accept options is cleared - it accepts any element.</li>\n</ul>\n<p>Use the <code>overlap</code> option to set how drops are checked for. The allowed\nvalues are:</p>\n<ul>\n<li><code>'pointer'</code>, the pointer must be over the dropzone (default)</li>\n<li><code>'center'</code>, the draggable element's center must be over the dropzone</li>\n<li>a number from 0-1 which is the <code>(intersection area) / (draggable area)</code>.\ne.g. <code>0.5</code> for drop to happen when half of the area of the draggable is\nover the dropzone</li>\n</ul>\n<p>Use the <code>checker</code> option to specify a function to check if a dragged element\nis over this Interactable.</p>","params":[{"type":{"names":["boolean","object","null"]},"optional":true,"description":"<p>The new options to be set.</p>","name":"options"}],"returns":[{"type":{"names":["object","Interactable"]},"description":"<p>The current setting or this Interactable</p>"}],"name":"dropzone","longname":"Interactable#dropzone","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R000096","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"dropzone","signature":"<span class=\"signature\">(options<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {object|<a href=\"Interactable.html\">Interactable</a>}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * Calls listeners for the given InteractEvent type bound globally\n   * and directly to this Interactable\n   *\n   * @param {InteractEvent} iEvent The InteractEvent object to be fired on this\n   * Interactable\n   * @return {Interactable} this Interactable\n   */","meta":{"range":[7543,7608],"filename":"Interactable.ts","lineno":301,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100009696","name":"Interactable#fire","type":"MethodDefinition","paramnames":["iEvent"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interactable.ts"},"description":"<p>Calls listeners for the given InteractEvent type bound globally\nand directly to this Interactable</p>","params":[{"type":{"names":["InteractEvent"]},"description":"<p>The InteractEvent object to be fired on this\nInteractable</p>","name":"iEvent"}],"returns":[{"type":{"names":["Interactable"]},"description":"<p>this Interactable</p>"}],"name":"fire","longname":"Interactable#fire","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R001019","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"fire","signature":"<span class=\"signature\">(iEvent)</span><span class=\"type-signature\"> &rarr; {<a href=\"Interactable.html\">Interactable</a>}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * ```js\n   * interact(element).gesturable({\n   *     onstart: function (event) {},\n   *     onmove : function (event) {},\n   *     onend  : function (event) {},\n   *\n   *     // limit multiple gestures.\n   *     // See the explanation in {@link Interactable.draggable} example\n   *     max: Infinity,\n   *     maxPerElement: 1,\n   * })\n   *\n   * var isGestureable = interact(element).gesturable()\n   * ```\n   *\n   * Gets or sets whether multitouch gestures can be performed on the target\n   *\n   * @param {boolean | object} [options] true/false or An object with event\n   * listeners to be fired on gesture events (makes the Interactable gesturable)\n   * @return {boolean | Interactable} A boolean indicating if this can be the\n   * target of gesture events, or this Interactable\n   */","meta":{"range":[995,1397],"filename":"plugin.ts","lineno":59,"columnno":2,"path":"../packages/@interactjs/actions/gesture","code":{"id":"astnode100002826","name":"Interactable.prototype.gesturable","type":"FunctionExpression","paramnames":["options"]},"vars":{"this.options.gesture.enabled":"Interactable#gesturable#options.gesture.enabled"},"shortpath":"packages/@interactjs/actions/gesture/plugin.ts"},"description":"<pre class=\"prettyprint source lang-js\"><code>interact(element).gesturable({\n    onstart: function (event) {},\n    onmove : function (event) {},\n    onend  : function (event) {},\n\n    // limit multiple gestures.\n    // See the explanation in {@link Interactable.draggable} example\n    max: Infinity,\n    maxPerElement: 1,\n})\n\nvar isGestureable = interact(element).gesturable()\n</code></pre>\n<p>Gets or sets whether multitouch gestures can be performed on the target</p>","params":[{"type":{"names":["boolean","object"]},"optional":true,"description":"<p>true/false or An object with event\nlisteners to be fired on gesture events (makes the Interactable gesturable)</p>","name":"options"}],"returns":[{"type":{"names":["boolean","Interactable"]},"description":"<p>A boolean indicating if this can be the\ntarget of gesture events, or this Interactable</p>"}],"name":"gesturable","longname":"Interactable#gesturable","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R000282","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"gesturable","signature":"<span class=\"signature\">(options<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {boolean|<a href=\"Interactable.html\">Interactable</a>}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * The default function to get an Interactables bounding rect. Can be\n   * overridden using {@link Interactable.rectChecker}.\n   *\n   * @param {Element} [element] The element to measure.\n   * @return {Rect} The object's bounding rectangle.\n   */","meta":{"range":[3598,3840],"filename":"Interactable.ts","lineno":140,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100009305","name":"Interactable#getRect","type":"MethodDefinition","paramnames":["element"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interactable.ts"},"description":"<p>The default function to get an Interactables bounding rect. Can be\noverridden using {@link Interactable.rectChecker}.</p>","params":[{"type":{"names":["Element"]},"optional":true,"description":"<p>The element to measure.</p>","name":"element"}],"returns":[{"type":{"names":["Rect"]},"description":"<p>The object's bounding rectangle.</p>"}],"name":"getRect","longname":"Interactable#getRect","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R000998","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"getRect","signature":"<span class=\"signature\">(element<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {Rect}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * If the target of the `mousedown`, `pointerdown` or `touchstart` event or any\n   * of it's parents match the given CSS selector or Element, no\n   * drag/resize/gesture is started.\n   *\n   * @deprecated\n   * Don't use this method. Instead set the `ignoreFrom` option for each action\n   * or for `pointerEvents`\n   *\n   * ```js\n   * interact(targett)\n   *   .draggable({\n   *     ignoreFrom: 'input, textarea, a[href]'',\n   *   })\n   *   .pointerEvents({\n   *     ignoreFrom: '[no-pointer]',\n   *   })\n   * ```\n   *\n   * @param {string | Element | null} [newValue] a CSS selector string, an\n   * Element or `null` to not ignore any elements\n   * @return {string | Element | object} The current ignoreFrom value or this\n   * Interactable\n   */","meta":{"range":[1331,1562],"filename":"InteractableMethods.ts","lineno":52,"columnno":2,"path":"../packages/@interactjs/auto-start","code":{"id":"astnode100007406","name":"Interactable.prototype.ignoreFrom","type":"CallExpression","value":"","paramnames":[]},"shortpath":"packages/@interactjs/auto-start/InteractableMethods.ts"},"description":"<p>If the target of the <code>mousedown</code>, <code>pointerdown</code> or <code>touchstart</code> event or any\nof it's parents match the given CSS selector or Element, no\ndrag/resize/gesture is started.</p>","deprecated":"Don't use this method. Instead set the `ignoreFrom` option for each action\nor for `pointerEvents`\n\n```js\ninteract(targett)\n  .draggable({\n    ignoreFrom: 'input, textarea, a[href]'',\n  })\n  .pointerEvents({\n    ignoreFrom: '[no-pointer]',\n  })\n```","params":[{"type":{"names":["string","Element","null"]},"optional":true,"description":"<p>a CSS selector string, an\nElement or <code>null</code> to not ignore any elements</p>","name":"newValue"}],"returns":[{"type":{"names":["string","Element","object"]},"description":"<p>The current ignoreFrom value or this\nInteractable</p>"}],"name":"ignoreFrom","longname":"Interactable#ignoreFrom","kind":"member","memberof":"Interactable","scope":"instance","___id":"T000002R000816","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"ignoreFrom","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"],"signature":"<span class=\"type-signature\"></span>"},{"comment":"/**\n   * Removes an InteractEvent, pointerEvent or DOM event listener.\n   *\n   * @param {string | array | object} types The types of events that were\n   * listened for\n   * @param {function | array | object} [listener] The event listener function(s)\n   * @param {object | boolean} [options] options object or useCapture flag for\n   * removeEventListener\n   * @return {Interactable} This Interactable\n   */","meta":{"range":[9494,9586],"filename":"Interactable.ts","lineno":368,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100009859","name":"Interactable#off","type":"MethodDefinition","paramnames":["types","listener","options"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interactable.ts"},"description":"<p>Removes an InteractEvent, pointerEvent or DOM event listener.</p>","params":[{"type":{"names":["string","array","object"]},"description":"<p>The types of events that were\nlistened for</p>","name":"types"},{"type":{"names":["function","array","object"]},"optional":true,"description":"<p>The event listener function(s)</p>","name":"listener"},{"type":{"names":["object","boolean"]},"optional":true,"description":"<p>options object or useCapture flag for\nremoveEventListener</p>","name":"options"}],"returns":[{"type":{"names":["Interactable"]},"description":"<p>This Interactable</p>"}],"name":"off","longname":"Interactable#off","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R001029","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"off","signature":"<span class=\"signature\">(types, listener<span class=\"signature-attributes\">opt</span>, options<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {<a href=\"Interactable.html\">Interactable</a>}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * Binds a listener for an InteractEvent, pointerEvent or DOM event.\n   *\n   * @param {string | array | object} types The types of events to listen\n   * for\n   * @param {function | array | object} [listener] The event listener function(s)\n   * @param {object | boolean} [options] options object or useCapture flag for\n   * addEventListener\n   * @return {Interactable} This Interactable\n   */","meta":{"range":[8991,9081],"filename":"Interactable.ts","lineno":354,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100009843","name":"Interactable#on","type":"MethodDefinition","paramnames":["types","listener","options"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interactable.ts"},"description":"<p>Binds a listener for an InteractEvent, pointerEvent or DOM event.</p>","params":[{"type":{"names":["string","array","object"]},"description":"<p>The types of events to listen\nfor</p>","name":"types"},{"type":{"names":["function","array","object"]},"optional":true,"description":"<p>The event listener function(s)</p>","name":"listener"},{"type":{"names":["object","boolean"]},"optional":true,"description":"<p>options object or useCapture flag for\naddEventListener</p>","name":"options"}],"returns":[{"type":{"names":["Interactable"]},"description":"<p>This Interactable</p>"}],"name":"on","longname":"Interactable#on","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R001028","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"on","signature":"<span class=\"signature\">(types, listener<span class=\"signature-attributes\">opt</span>, options<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {<a href=\"Interactable.html\">Interactable</a>}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * Gets or sets the origin of the Interactable's element.  The x and y\n   * of the origin will be subtracted from action event coordinates.\n   *\n   * @param {Element | object | string} [origin] An HTML or SVG Element whose\n   * rect will be used, an object eg. { x: 0, y: 0 } or string 'parent', 'self'\n   * or any CSS selector\n   *\n   * @return {object} The current origin or this Interactable\n   */","meta":{"range":[5444,5521],"filename":"Interactable.ts","lineno":209,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100009501","name":"Interactable#origin","type":"MethodDefinition","paramnames":["newValue"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interactable.ts"},"description":"<p>Gets or sets the origin of the Interactable's element.  The x and y\nof the origin will be subtracted from action event coordinates.</p>","params":[{"type":{"names":["Element","object","string"]},"optional":true,"description":"<p>An HTML or SVG Element whose\nrect will be used, an object eg. { x: 0, y: 0 } or string 'parent', 'self'\nor any CSS selector</p>","name":"origin"}],"returns":[{"type":{"names":["object"]},"description":"<p>The current origin or this Interactable</p>"}],"name":"origin","longname":"Interactable#origin","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R001011","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"origin","signature":"<span class=\"signature\">(origin<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {object}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * Returns or sets whether to prevent the browser's default behaviour in\n   * response to pointer events. Can be set to:\n   *  - `'always'` to always prevent\n   *  - `'never'` to never prevent\n   *  - `'auto'` to let interact.js try to determine what would be best\n   *\n   * @param {string} [newValue] `'always'`, `'never'` or `'auto'`\n   * @return {string | Interactable} The current setting or this Interactable\n   */","meta":{"range":[2299,2353],"filename":"interactablePreventDefault.ts","lineno":83,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100010333","name":"Interactable.prototype.preventDefault","type":"Identifier","value":"preventDefault","paramnames":[]},"shortpath":"packages/@interactjs/core/interactablePreventDefault.ts"},"description":"<p>Returns or sets whether to prevent the browser's default behaviour in\nresponse to pointer events. Can be set to:</p>\n<ul>\n<li><code>'always'</code> to always prevent</li>\n<li><code>'never'</code> to never prevent</li>\n<li><code>'auto'</code> to let interact.js try to determine what would be best</li>\n</ul>","params":[{"type":{"names":["string"]},"optional":true,"description":"<p><code>'always'</code>, <code>'never'</code> or <code>'auto'</code></p>","name":"newValue"}],"returns":[{"type":{"names":["string","Interactable"]},"description":"<p>The current setting or this Interactable</p>"}],"name":"preventDefault","longname":"Interactable#preventDefault","kind":"member","memberof":"Interactable","scope":"instance","___id":"T000002R001061","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"preventDefault","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"],"signature":"<span class=\"type-signature\"></span>"},{"comment":"/**\n   * Returns or sets the function used to calculate the interactable's\n   * element's rectangle\n   *\n   * @param {function} [checker] A function which returns this Interactable's\n   * bounding rectangle. See {@link Interactable.getRect}\n   * @return {function | object} The checker function or this Interactable\n   */","meta":{"range":[4169,4690],"filename":"Interactable.ts","lineno":157,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100009354","name":"Interactable#rectChecker","type":"MethodDefinition","paramnames":["checker"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interactable.ts"},"description":"<p>Returns or sets the function used to calculate the interactable's\nelement's rectangle</p>","params":[{"type":{"names":["function"]},"optional":true,"description":"<p>A function which returns this Interactable's\nbounding rectangle. See {@link Interactable.getRect}</p>","name":"checker"}],"returns":[{"type":{"names":["function","object"]},"description":"<p>The checker function or this Interactable</p>"}],"name":"rectChecker","longname":"Interactable#rectChecker","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R001001","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"rectChecker","signature":"<span class=\"signature\">(checker<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {function|object}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * ```js\n   * const interactable = interact(target)\n   * const drag = { name: drag, axis: 'x' }\n   * const resize = { name: resize, edges: { left: true, bottom: true }\n   *\n   * interactable.reflow(drag)\n   * interactable.reflow(resize)\n   * ```\n   *\n   * Start an action sequence to re-apply modifiers, check drops, etc.\n   *\n   * @param { Object } action The action to begin\n   * @param { string } action.name The name of the action\n   * @returns { Promise } A promise that resolves to the `Interactable` when actions on all targets have ended\n   */","meta":{"range":[960,1057],"filename":"plugin.ts","lineno":46,"columnno":2,"path":"../packages/@interactjs/reflow","code":{"id":"astnode100025828","name":"Interactable.prototype.reflow","type":"FunctionExpression","paramnames":["action"]},"shortpath":"packages/@interactjs/reflow/plugin.ts"},"description":"<pre class=\"prettyprint source lang-js\"><code>const interactable = interact(target)\nconst drag = { name: drag, axis: 'x' }\nconst resize = { name: resize, edges: { left: true, bottom: true }\n\ninteractable.reflow(drag)\ninteractable.reflow(resize)\n</code></pre>\n<p>Start an action sequence to re-apply modifiers, check drops, etc.</p>","params":[{"type":{"names":["Object"]},"description":"<p>The action to begin</p>","name":"action","subparams":[{"type":{"names":["string"]},"description":"<p>The name of the action</p>","name":"name"}]},null],"returns":[{"type":{"names":["Promise"]},"description":"<p>A promise that resolves to the <code>Interactable</code> when actions on all targets have ended</p>"}],"name":"reflow","longname":"Interactable#reflow","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R002946","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"reflow","signature":"<span class=\"signature\">(action)</span><span class=\"type-signature\"> &rarr; {Promise}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * ```js\n   * interact(element).resizable({\n   *   onstart: function (event) {},\n   *   onmove : function (event) {},\n   *   onend  : function (event) {},\n   *\n   *   edges: {\n   *     top   : true,       // Use pointer coords to check for resize.\n   *     left  : false,      // Disable resizing from left edge.\n   *     bottom: '.resize-s',// Resize if pointer target matches selector\n   *     right : handleEl    // Resize if pointer target is the given Element\n   *   },\n   *\n   *     // Width and height can be adjusted independently. When `true`, width and\n   *     // height are adjusted at a 1:1 ratio.\n   *     square: false,\n   *\n   *     // Width and height can be adjusted independently. When `true`, width and\n   *     // height maintain the aspect ratio they had when resizing started.\n   *     preserveAspectRatio: false,\n   *\n   *   // a value of 'none' will limit the resize rect to a minimum of 0x0\n   *   // 'negate' will allow the rect to have negative width/height\n   *   // 'reposition' will keep the width/height positive by swapping\n   *   // the top and bottom edges and/or swapping the left and right edges\n   *   invert: 'none' || 'negate' || 'reposition'\n   *\n   *   // limit multiple resizes.\n   *   // See the explanation in the {@link Interactable.draggable} example\n   *   max: Infinity,\n   *   maxPerElement: 1,\n   * })\n   *\n   * var isResizeable = interact(element).resizable()\n   * ```\n   *\n   * Gets or sets whether resize actions can be performed on the target\n   *\n   * @param {boolean | object} [options] true/false or An object with event\n   * listeners to be fired on resize events (object makes the Interactable\n   * resizable)\n   * @return {boolean | Interactable} A boolean indicating if this can be the\n   * target of resize elements, or this Interactable\n   */","meta":{"range":[2309,2412],"filename":"plugin.ts","lineno":65,"columnno":2,"path":"../packages/@interactjs/actions/resize","code":{"id":"astnode100003445","name":"Interactable.prototype.resizable","type":"FunctionExpression","paramnames":["options"]},"shortpath":"packages/@interactjs/actions/resize/plugin.ts"},"description":"<pre class=\"prettyprint source lang-js\"><code>interact(element).resizable({\n  onstart: function (event) {},\n  onmove : function (event) {},\n  onend  : function (event) {},\n\n  edges: {\n    top   : true,       // Use pointer coords to check for resize.\n    left  : false,      // Disable resizing from left edge.\n    bottom: '.resize-s',// Resize if pointer target matches selector\n    right : handleEl    // Resize if pointer target is the given Element\n  },\n\n    // Width and height can be adjusted independently. When `true`, width and\n    // height are adjusted at a 1:1 ratio.\n    square: false,\n\n    // Width and height can be adjusted independently. When `true`, width and\n    // height maintain the aspect ratio they had when resizing started.\n    preserveAspectRatio: false,\n\n  // a value of 'none' will limit the resize rect to a minimum of 0x0\n  // 'negate' will allow the rect to have negative width/height\n  // 'reposition' will keep the width/height positive by swapping\n  // the top and bottom edges and/or swapping the left and right edges\n  invert: 'none' || 'negate' || 'reposition'\n\n  // limit multiple resizes.\n  // See the explanation in the {@link Interactable.draggable} example\n  max: Infinity,\n  maxPerElement: 1,\n})\n\nvar isResizeable = interact(element).resizable()\n</code></pre>\n<p>Gets or sets whether resize actions can be performed on the target</p>","params":[{"type":{"names":["boolean","object"]},"optional":true,"description":"<p>true/false or An object with event\nlisteners to be fired on resize events (object makes the Interactable\nresizable)</p>","name":"options"}],"returns":[{"type":{"names":["boolean","Interactable"]},"description":"<p>A boolean indicating if this can be the\ntarget of resize elements, or this Interactable</p>"}],"name":"resizable","longname":"Interactable#resizable","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R000354","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"resizable","signature":"<span class=\"signature\">(options<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {boolean|<a href=\"Interactable.html\">Interactable</a>}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * Reset the options of this Interactable\n   *\n   * @param {object} options The new settings to apply\n   * @return {object} This Interactable\n   */","meta":{"range":[9747,10420],"filename":"Interactable.ts","lineno":382,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100009875","name":"Interactable#set","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interactable.ts"},"description":"<p>Reset the options of this Interactable</p>","params":[{"type":{"names":["object"]},"description":"<p>The new settings to apply</p>","name":"options"}],"returns":[{"type":{"names":["object"]},"description":"<p>This Interactable</p>"}],"name":"set","longname":"Interactable#set","kind":"function","memberof":"Interactable","scope":"instance","___id":"T000002R001030","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"set","signature":"<span class=\"signature\">(options)</span><span class=\"type-signature\"> &rarr; {object}</span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/**\n   * Returns or sets whether the the cursor should be changed depending on the\n   * action that would be performed if the mouse were pressed and dragged.\n   *\n   * @param {boolean} [newValue]\n   * @return {boolean | Interactable} The current setting or this Interactable\n   */","meta":{"range":[3947,3995],"filename":"InteractableMethods.ts","lineno":141,"columnno":2,"path":"../packages/@interactjs/auto-start","code":{"id":"astnode100007454","name":"Interactable.prototype.styleCursor","type":"Identifier","value":"styleCursor","paramnames":[]},"shortpath":"packages/@interactjs/auto-start/InteractableMethods.ts"},"description":"<p>Returns or sets whether the the cursor should be changed depending on the\naction that would be performed if the mouse were pressed and dragged.</p>","params":[{"type":{"names":["boolean"]},"optional":true,"name":"newValue"}],"returns":[{"type":{"names":["boolean","Interactable"]},"description":"<p>The current setting or this Interactable</p>"}],"name":"styleCursor","longname":"Interactable#styleCursor","kind":"member","memberof":"Interactable","scope":"instance","___id":"T000002R000819","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"styleCursor","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"],"signature":"<span class=\"type-signature\"></span>"},{"comment":"/**\n   * Remove this interactable from the list of interactables and remove it's\n   * action capabilities and event listeners\n   */","meta":{"range":[10559,11334],"filename":"Interactable.ts","lineno":415,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100009994","name":"Interactable#unset","type":"MethodDefinition","paramnames":[]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interactable.ts"},"description":"<p>Remove this interactable from the list of interactables and remove it's\naction capabilities and event listeners</p>","name":"unset","longname":"Interactable#unset","kind":"function","memberof":"Interactable","scope":"instance","params":[],"___id":"T000002R001039","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"unset","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":["<a href=\"Interactable.html\">#Interactable</a>#"]},{"comment":"/** */","meta":{"range":[311,2647],"filename":"InteractEvent.ts","lineno":10,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100010909","name":"exports.InteractEvent","type":"MethodDefinition","paramnames":["interaction","event","actionName","phase","element","preEnd","type"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/InteractEvent.ts"},"name":"InteractEvent","longname":"InteractEvent#InteractEvent","kind":"class","memberof":"InteractEvent","scope":"instance","params":[],"___id":"T000003R000004","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"InteractEvent","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/**\n   * Don't call listeners on the remaining targets\n   */","meta":{"range":[3630,3733],"filename":"InteractEvent.ts","lineno":182,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100011562","name":"InteractEvent#stopImmediatePropagation","type":"MethodDefinition","paramnames":[]},"vars":{"":null},"shortpath":"packages/@interactjs/core/InteractEvent.ts"},"description":"<p>Don't call listeners on the remaining targets</p>","name":"stopImmediatePropagation","longname":"InteractEvent#stopImmediatePropagation","kind":"function","memberof":"InteractEvent","scope":"instance","params":[],"___id":"T000002R001177","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"stopImmediatePropagation","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/**\n   * Don't call any other listeners (even on the current target)\n   */","meta":{"range":[3815,3874],"filename":"InteractEvent.ts","lineno":189,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100011576","name":"InteractEvent#stopPropagation","type":"MethodDefinition","paramnames":[]},"vars":{"":null},"shortpath":"packages/@interactjs/core/InteractEvent.ts"},"description":"<p>Don't call any other listeners (even on the current target)</p>","name":"stopPropagation","longname":"InteractEvent#stopPropagation","kind":"function","memberof":"InteractEvent","scope":"instance","params":[],"___id":"T000002R001180","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"stopPropagation","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/**\n   * ```js\n   * interact(target)\n   *   .draggable(true)\n   *   .on('move', function (event) {\n   *     if (event.pageX > 1000) {\n   *       // end the current action\n   *       event.interaction.end()\n   *       // stop all further listeners from being called\n   *       event.stopImmediatePropagation()\n   *     }\n   *   })\n   * ```\n   *\n   * @param {PointerEvent} [event]\n   */","meta":{"range":[9131,9481],"filename":"Interaction.ts","lineno":425,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100012761","name":"Interaction#end","type":"MethodDefinition","paramnames":["event"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interaction.ts"},"description":"<pre class=\"prettyprint source lang-js\"><code>interact(target)\n  .draggable(true)\n  .on('move', function (event) {\n    if (event.pageX > 1000) {\n      // end the current action\n      event.interaction.end()\n      // stop all further listeners from being called\n      event.stopImmediatePropagation()\n    }\n  })\n</code></pre>","params":[{"type":{"names":["PointerEvent"]},"optional":true,"name":"event"}],"name":"end","longname":"Interaction#end","kind":"function","memberof":"Interaction","scope":"instance","___id":"T000002R001343","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"end","signature":"<span class=\"signature\">(event<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/** */","meta":{"range":[2432,2985],"filename":"Interaction.ts","lineno":89,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100012008","name":"exports.Interaction","type":"MethodDefinition","paramnames":[""]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interaction.ts"},"name":"Interaction","longname":"Interaction#Interaction","kind":"class","memberof":"Interaction","scope":"instance","params":[],"___id":"T000003R000005","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"Interaction","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/**\n   * @alias Interaction.prototype.move\n   */","meta":{"range":[1816,1962],"filename":"Interaction.ts","lineno":171,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100011965","name":"doMove","type":"ClassProperty"},"shortpath":"packages/@interactjs/core/Interaction.ts"},"alias":"Interaction.prototype.move","name":"move","longname":"Interaction#move","kind":"member","memberof":"Interaction","scope":"instance","___id":"T000002R001256","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"move","ancestors":[],"signature":"<span class=\"type-signature\"></span>"},{"comment":"/**\n   * ```js\n   * interact(target)\n   *   .draggable(true)\n   *   .on('dragmove', function (event) {\n   *     if (someCondition) {\n   *       // change the snap settings\n   *       event.interactable.draggable({ snap: { targets: [] }})\n   *       // fire another move event with re-calculated snap\n   *       event.interaction.move()\n   *     }\n   *   })\n   * ```\n   *\n   * Force a move of the current action at the same coordinates. Useful if\n   * snap/restrict has been changed and you want a movement with the new\n   * settings.\n   */","meta":{"range":[7476,7870],"filename":"Interaction.ts","lineno":350,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100012577","name":"Interaction#move","type":"MethodDefinition","paramnames":["signalArg"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interaction.ts"},"description":"<pre class=\"prettyprint source lang-js\"><code>interact(target)\n  .draggable(true)\n  .on('dragmove', function (event) {\n    if (someCondition) {\n      // change the snap settings\n      event.interactable.draggable({ snap: { targets: [] }})\n      // fire another move event with re-calculated snap\n      event.interaction.move()\n    }\n  })\n</code></pre>\n<p>Force a move of the current action at the same coordinates. Useful if\nsnap/restrict has been changed and you want a movement with the new\nsettings.</p>","name":"move","longname":"Interaction#move","kind":"function","memberof":"Interaction","scope":"instance","params":[],"___id":"T000002R001320","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"move","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/** @internal */","meta":{"range":[1714,1760],"filename":"Interaction.ts","lineno":63,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100011959","name":"Interaction#pointerMoveTolerance","type":"MethodDefinition","paramnames":[]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interaction.ts"},"tags":[{"originalTitle":"internal","title":"internal","text":""}],"name":"pointerMoveTolerance","longname":"Interaction#pointerMoveTolerance","kind":"member","memberof":"Interaction","scope":"instance","params":[],"___id":"T000002R001255","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"pointerMoveTolerance","ancestors":[],"signature":"<span class=\"type-signature\"></span>"},{"comment":"/**\n   * ```js\n   * interact(target)\n   *   .draggable({\n   *     // disable the default drag start by down->move\n   *     manualStart: true\n   *   })\n   *   // start dragging after the user holds the pointer down\n   *   .on('hold', function (event) {\n   *     var interaction = event.interaction\n   *\n   *     if (!interaction.interacting()) {\n   *       interaction.start({ name: 'drag' },\n   *                         event.interactable,\n   *                         event.currentTarget)\n   *     }\n   * })\n   * ```\n   *\n   * Start an action with the given Interactable and Element as tartgets. The\n   * action must be enabled for the target Interactable and an appropriate\n   * number of pointers must be held down - 1 for drag/resize, 2 for gesture.\n   *\n   * Use it with `interactable.<action>able({ manualStart: false })` to always\n   * [start actions manually](https://github.com/taye/interact.js/issues/114)\n   *\n   * @param {object} action   The action to be performed - drag, resize, etc.\n   * @param {Interactable} target  The Interactable to target\n   * @param {Element} element The DOM Element to target\n   * @return {Boolean} Whether the interaction was successfully started\n   */","meta":{"range":[4553,5288],"filename":"Interaction.ts","lineno":234,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100012144","name":"Interaction#start","type":"MethodDefinition","paramnames":["action","interactable","element"]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interaction.ts"},"description":"<pre class=\"prettyprint source lang-js\"><code>interact(target)\n  .draggable({\n    // disable the default drag start by down->move\n    manualStart: true\n  })\n  // start dragging after the user holds the pointer down\n  .on('hold', function (event) {\n    var interaction = event.interaction\n\n    if (!interaction.interacting()) {\n      interaction.start({ name: 'drag' },\n                        event.interactable,\n                        event.currentTarget)\n    }\n})\n</code></pre>\n<p>Start an action with the given Interactable and Element as tartgets. The\naction must be enabled for the target Interactable and an appropriate\nnumber of pointers must be held down - 1 for drag/resize, 2 for gesture.</p>\n<p>Use it with <code>interactable.&lt;action&gt;able({ manualStart: false })</code> to always\n<a href=\"https://github.com/taye/interact.js/issues/114\">start actions manually</a></p>","params":[{"type":{"names":["object"]},"description":"<p>The action to be performed - drag, resize, etc.</p>","name":"action"},{"type":{"names":["Interactable"]},"description":"<p>The Interactable to target</p>","name":"target"},{"type":{"names":["Element"]},"description":"<p>The DOM Element to target</p>","name":"element"}],"returns":[{"type":{"names":["Boolean"]},"description":"<p>Whether the interaction was successfully started</p>"}],"name":"start","longname":"Interaction#start","kind":"function","memberof":"Interaction","scope":"instance","___id":"T000002R001286","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"start","signature":"<span class=\"signature\">(action, target, element)</span><span class=\"type-signature\"> &rarr; {Boolean}</span>","ancestors":[]},{"comment":"/** */","meta":{"range":[9631,9869],"filename":"Interaction.ts","lineno":358,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100012844","name":"Interaction#stop","type":"MethodDefinition","paramnames":[]},"vars":{"":null},"shortpath":"packages/@interactjs/core/Interaction.ts"},"name":"stop","longname":"Interaction#stop","kind":"function","memberof":"Interaction","scope":"instance","params":[],"___id":"T000002R001354","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"stop","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/** */","meta":{"range":[185,1168],"filename":"PointerEvent.ts","lineno":5,"columnno":2,"path":"../packages/@interactjs/pointer-events","code":{"id":"astnode100025528","name":"module.exports","type":"MethodDefinition","paramnames":["type","pointer","event","eventTarget","interaction","timeStamp"]},"vars":{"":null},"shortpath":"packages/@interactjs/pointer-events/PointerEvent.ts"},"name":"exports","longname":"module.exports#module.exports","kind":"class","memberof":"module.exports#module","scope":"static","params":[],"___id":"T000003R000006","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"exports","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]},{"comment":"/** @module interact */","meta":{"filename":"InteractStatic.ts","lineno":1,"columnno":0,"path":"../packages/@interactjs/core","code":{},"shortpath":"packages/@interactjs/core/InteractStatic.ts"},"kind":"module","name":"interact","longname":"module:interact","___id":"T000004R000002","___s":true,"attribs":"","id":"interact","ancestors":[],"modules":[]},{"comment":"/**\n   * Check if an element or selector has been set with the {@link interact}\n   * function\n   *\n   * @alias module:interact.isSet\n   *\n   * @param {Target} target The Element or string being searched for\n   * @param {object} options\n   * @return {boolean} Indicates if the element or CSS selector was previously\n   * passed to interact\n   */","meta":{"range":[2543,2671],"filename":"InteractStatic.ts","lineno":115,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100014981","name":"interact.isSet","type":"FunctionExpression","funcscope":"module:interact.createInteractStatic","paramnames":["target","options"]},"shortpath":"packages/@interactjs/core/InteractStatic.ts"},"description":"<p>Check if an element or selector has been set with the {@link interact}\nfunction</p>","alias":"module:interact.isSet","params":[{"type":{"names":["Target"]},"description":"<p>The Element or string being searched for</p>","name":"target"},{"type":{"names":["object"]},"name":"options"}],"returns":[{"type":{"names":["boolean"]},"description":"<p>Indicates if the element or CSS selector was previously\npassed to interact</p>"}],"name":"isSet","longname":"module:interact.isSet","kind":"function","memberof":"module:interact","scope":"static","___id":"T000002R001597","___s":true,"attribs":"<span class=\"type-signature\">(static) </span>","id":".isSet","signature":"<span class=\"signature\">(target, options)</span><span class=\"type-signature\"> &rarr; {boolean}</span>","ancestors":["<a href=\"module-interact.html\">interact</a>."]},{"comment":"/**\n   * Returns or sets the maximum number of concurrent interactions allowed.  By\n   * default only 1 interaction is allowed at a time (for backwards\n   * compatibility). To allow multiple interactions on the same Interactables and\n   * elements, you need to enable it in the draggable, resizable and gesturable\n   * `'max'` and `'maxPerElement'` options.\n   *\n   * @alias module:interact.maxInteractions\n   *\n   * @param {number} [newValue] Any number. newValue <= 0 means no interactions.\n   */","meta":{"range":[1261,1332],"filename":"base.ts","lineno":89,"columnno":2,"path":"../packages/@interactjs/auto-start","code":{"id":"astnode100005901","name":"interact.maxInteractions","type":"ArrowFunctionExpression","paramnames":["newValue"]},"shortpath":"packages/@interactjs/auto-start/base.ts"},"description":"<p>Returns or sets the maximum number of concurrent interactions allowed.  By\ndefault only 1 interaction is allowed at a time (for backwards\ncompatibility). To allow multiple interactions on the same Interactables and\nelements, you need to enable it in the draggable, resizable and gesturable\n<code>'max'</code> and <code>'maxPerElement'</code> options.</p>","alias":"module:interact.maxInteractions","params":[{"type":{"names":["number"]},"optional":true,"description":"<p>Any number. newValue &lt;= 0 means no interactions.</p>","name":"newValue"}],"name":"maxInteractions","longname":"module:interact.maxInteractions","kind":"function","memberof":"module:interact","scope":"static","___id":"T000002R000657","___s":true,"attribs":"<span class=\"type-signature\">(static) </span>","id":".maxInteractions","signature":"<span class=\"signature\">(newValue<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"></span>","ancestors":["<a href=\"module-interact.html\">interact</a>."]},{"comment":"/**\n   * @deprecated\n   * Removes a global InteractEvent listener or DOM event from `document`\n   *\n   * @alias module:interact.off\n   *\n   * @param {string | array | object} type The types of events that were listened\n   * for\n   * @param {function} listener The listener function to be removed\n   * @param {object | boolean} options [options] object or useCapture flag for\n   * removeEventListener\n   * @return {object} interact\n   */","meta":{"range":[4550,5400],"filename":"InteractStatic.ts","lineno":180,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100015156","name":"interact.off","type":"CallExpression","funcscope":"module:interact.createInteractStatic","value":"","paramnames":[]},"shortpath":"packages/@interactjs/core/InteractStatic.ts"},"deprecated":"Removes a global InteractEvent listener or DOM event from `document`","alias":"module:interact.off","params":[{"type":{"names":["string","array","object"]},"description":"<p>The types of events that were listened\nfor</p>","name":"type"},{"type":{"names":["function"]},"description":"<p>The listener function to be removed</p>","name":"listener"},{"type":{"names":["object","boolean"]},"description":"<p>[options] object or useCapture flag for\nremoveEventListener</p>","name":"options"}],"returns":[{"type":{"names":["object"]},"description":"<p>interact</p>"}],"name":"off","longname":"module:interact.off","kind":"member","memberof":"module:interact","scope":"static","___id":"T000002R001604","___s":true,"attribs":"<span class=\"type-signature\">(static) </span>","id":".off","ancestors":["<a href=\"module-interact.html\">interact</a>."],"signature":"<span class=\"type-signature\"></span>"},{"comment":"/**\n   * @deprecated\n   * Add a global listener for an InteractEvent or adds a DOM event to `document`\n   *\n   * @alias module:interact.on\n   *\n   * @param {string | array | object} type The types of events to listen for\n   * @param {function} listener The function event (s)\n   * @param {object | boolean} [options] object or useCapture flag for\n   * addEventListener\n   * @return {object} interact\n   */","meta":{"range":[3085,4106],"filename":"InteractStatic.ts","lineno":130,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100015007","name":"interact.on","type":"CallExpression","funcscope":"module:interact.createInteractStatic","value":"","paramnames":[]},"shortpath":"packages/@interactjs/core/InteractStatic.ts"},"deprecated":"Add a global listener for an InteractEvent or adds a DOM event to `document`","alias":"module:interact.on","params":[{"type":{"names":["string","array","object"]},"description":"<p>The types of events to listen for</p>","name":"type"},{"type":{"names":["function"]},"description":"<p>The function event (s)</p>","name":"listener"},{"type":{"names":["object","boolean"]},"optional":true,"description":"<p>object or useCapture flag for\naddEventListener</p>","name":"options"}],"returns":[{"type":{"names":["object"]},"description":"<p>interact</p>"}],"name":"on","longname":"module:interact.on","kind":"member","memberof":"module:interact","scope":"static","___id":"T000002R001598","___s":true,"attribs":"<span class=\"type-signature\">(static) </span>","id":".on","ancestors":["<a href=\"module-interact.html\">interact</a>."],"signature":"<span class=\"type-signature\"></span>"},{"comment":"/**\n   * Returns or sets the distance the pointer must be moved before an action\n   * sequence occurs. This also affects tolerance for tap events.\n   *\n   * @alias module:interact.pointerMoveTolerance\n   *\n   * @param {number} [newValue] The movement from the start position must be greater than this value\n   * @return {interact | number}\n   */","meta":{"range":[6557,6791],"filename":"InteractStatic.ts","lineno":264,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100015370","name":"interact.pointerMoveTolerance","type":"FunctionExpression","funcscope":"module:interact.createInteractStatic","paramnames":["newValue"]},"vars":{"this.scope.interactions.pointerMoveTolerance":"module:interact.pointerMoveTolerance#scope.interactions.pointerMoveTolerance"},"shortpath":"packages/@interactjs/core/InteractStatic.ts"},"description":"<p>Returns or sets the distance the pointer must be moved before an action\nsequence occurs. This also affects tolerance for tap events.</p>","alias":"module:interact.pointerMoveTolerance","params":[{"type":{"names":["number"]},"optional":true,"description":"<p>The movement from the start position must be greater than this value</p>","name":"newValue"}],"returns":[{"type":{"names":["interact","number"]}}],"name":"pointerMoveTolerance","longname":"module:interact.pointerMoveTolerance","kind":"function","memberof":"module:interact","scope":"static","___id":"T000002R001615","___s":true,"attribs":"<span class=\"type-signature\">(static) </span>","id":".pointerMoveTolerance","signature":"<span class=\"signature\">(newValue<span class=\"signature-attributes\">opt</span>)</span><span class=\"type-signature\"> &rarr; {<a href=\"global.html#interact\">interact</a>|number}</span>","ancestors":["<a href=\"module-interact.html\">interact</a>."]},{"comment":"/**\n   * Cancels all interactions (end events are not fired)\n   *\n   * @alias module:interact.stop\n   *\n   * @return {object} interact\n   */","meta":{"range":[6058,6203],"filename":"InteractStatic.ts","lineno":249,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100015344","name":"interact.stop","type":"FunctionExpression","funcscope":"module:interact.createInteractStatic","paramnames":[]},"vars":{"interaction":"module:interact.stop~interaction"},"shortpath":"packages/@interactjs/core/InteractStatic.ts"},"description":"<p>Cancels all interactions (end events are not fired)</p>","alias":"module:interact.stop","returns":[{"type":{"names":["object"]},"description":"<p>interact</p>"}],"name":"stop","longname":"module:interact.stop","kind":"function","memberof":"module:interact","scope":"static","___id":"T000002R001613","___s":true,"attribs":"<span class=\"type-signature\">(static) </span>","id":".stop","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"> &rarr; {object}</span>","ancestors":["<a href=\"module-interact.html\">interact</a>."]},{"comment":"/**\n   * @alias module:interact.supportsPointerEvent\n   *\n   * @return {boolean} Whether or not the browser supports PointerEvents\n   */","meta":{"range":[5819,5909],"filename":"InteractStatic.ts","lineno":240,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100015333","name":"interact.supportsPointerEvent","type":"FunctionExpression","funcscope":"module:interact.createInteractStatic","paramnames":[]},"shortpath":"packages/@interactjs/core/InteractStatic.ts"},"alias":"module:interact.supportsPointerEvent","returns":[{"type":{"names":["boolean"]},"description":"<p>Whether or not the browser supports PointerEvents</p>"}],"name":"supportsPointerEvent","longname":"module:interact.supportsPointerEvent","kind":"function","memberof":"module:interact","scope":"static","___id":"T000002R001612","___s":true,"attribs":"<span class=\"type-signature\">(static) </span>","id":".supportsPointerEvent","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"> &rarr; {boolean}</span>","ancestors":["<a href=\"module-interact.html\">interact</a>."]},{"comment":"/**\n   * @alias module:interact.supportsTouch\n   *\n   * @return {boolean} Whether or not the browser supports touch input\n   */","meta":{"range":[5598,5674],"filename":"InteractStatic.ts","lineno":231,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100015322","name":"interact.supportsTouch","type":"FunctionExpression","funcscope":"module:interact.createInteractStatic","paramnames":[]},"shortpath":"packages/@interactjs/core/InteractStatic.ts"},"alias":"module:interact.supportsTouch","returns":[{"type":{"names":["boolean"]},"description":"<p>Whether or not the browser supports touch input</p>"}],"name":"supportsTouch","longname":"module:interact.supportsTouch","kind":"function","memberof":"module:interact","scope":"static","___id":"T000002R001611","___s":true,"attribs":"<span class=\"type-signature\">(static) </span>","id":".supportsTouch","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"> &rarr; {boolean}</span>","ancestors":["<a href=\"module-interact.html\">interact</a>."]},{"comment":"/**\n   * Use a plugin\n   *\n   * @alias module:interact.use\n   *\n   */","meta":{"range":[2083,2190],"filename":"InteractStatic.ts","lineno":103,"columnno":2,"path":"../packages/@interactjs/core","code":{"id":"astnode100014961","name":"interact.use","type":"FunctionExpression","funcscope":"module:interact.createInteractStatic","paramnames":["plugin","options"]},"shortpath":"packages/@interactjs/core/InteractStatic.ts"},"description":"<p>Use a plugin</p>","alias":"module:interact.use","name":"use","longname":"module:interact.use","kind":"function","memberof":"module:interact","scope":"static","___id":"T000002R001596","___s":true,"attribs":"<span class=\"type-signature\">(static) </span>","id":".use","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":["<a href=\"module-interact.html\">interact</a>."]},{"comment":"/**\n * @module modifiers/aspectRatio\n *\n * @description\n * This module forces elements to be resized with a specified dx/dy ratio.\n *\n * ```js\n * interact(target).resizable({\n *   modifiers: [\n *     interact.modifiers.snapSize({\n *       targets: [ interact.snappers.grid({ x: 20, y: 20 }) ],\n *     }),\n *     interact.aspectRatio({ ratio: 'preserve' }),\n *   ],\n * });\n * ```\n */","meta":{"filename":"aspectRatio.ts","lineno":1,"columnno":0,"path":"../packages/@interactjs/modifiers","code":{},"shortpath":"packages/@interactjs/modifiers/aspectRatio.ts"},"kind":"module","name":"modifiers/aspectRatio","description":"<p>This module forces elements to be resized with a specified dx/dy ratio.</p>\n<pre class=\"prettyprint source lang-js\"><code>interact(target).resizable({\n  modifiers: [\n    interact.modifiers.snapSize({\n      targets: [ interact.snappers.grid({ x: 20, y: 20 }) ],\n    }),\n    interact.aspectRatio({ ratio: 'preserve' }),\n  ],\n});\n</code></pre>","longname":"module:modifiers/aspectRatio","___id":"T000004R000003","___s":true,"attribs":"","id":"modifiers/aspectRatio","ancestors":[],"modules":[{"comment":"/**\n * @module modifiers/aspectRatio\n *\n * @description\n * This module forces elements to be resized with a specified dx/dy ratio.\n *\n * ```js\n * interact(target).resizable({\n *   modifiers: [\n *     interact.modifiers.snapSize({\n *       targets: [ interact.snappers.grid({ x: 20, y: 20 }) ],\n *     }),\n *     interact.aspectRatio({ ratio: 'preserve' }),\n *   ],\n * });\n * ```\n */","meta":{"filename":"aspectRatio.ts","lineno":1,"columnno":0,"path":"/home/travis/build/taye/interact.js/packages/@interactjs/modifiers","code":{},"shortpath":"packages/@interactjs/modifiers/aspectRatio.ts"},"kind":"module","name":"modifiers/aspectRatio","description":"<p>This module forces elements to be resized with a specified dx/dy ratio.</p>\n<pre class=\"prettyprint source lang-js\"><code>interact(target).resizable({\n  modifiers: [\n    interact.modifiers.snapSize({\n      targets: [ interact.snappers.grid({ x: 20, y: 20 }) ],\n    }),\n    interact.aspectRatio({ ratio: 'preserve' }),\n  ],\n});\n</code></pre>","longname":"module:modifiers/aspectRatio","___id":"T000002R001979","___s":true,"attribs":"","id":"modifiers/aspectRatio","ancestors":[]}]},{"comment":"/**\n * @module modifiers/snapEdges\n *\n * @description\n * WOW> This module allows snapping of the edges of targets during resize\n * interactions.\n *\n * ```js\n * interact(target).resizable({\n *   snapEdges: {\n *     targets: [interact.snappers.grid({ x: 100, y: 50 })],\n *   },\n * })\n *\n * interact(target).resizable({\n *   snapEdges: {\n *     targets: [\n *       interact.snappers.grid({\n *        top: 50,\n *        left: 50,\n *        bottom: 100,\n *        right: 100,\n *       }),\n *     ],\n *   },\n * })\n * ```\n */","meta":{"filename":"edges.ts","lineno":1,"columnno":0,"path":"../packages/@interactjs/modifiers/snap","code":{},"shortpath":"packages/@interactjs/modifiers/snap/edges.ts"},"kind":"module","name":"modifiers/snapEdges","description":"<p>WOW&gt; This module allows snapping of the edges of targets during resize\ninteractions.</p>\n<pre class=\"prettyprint source lang-js\"><code>interact(target).resizable({\n  snapEdges: {\n    targets: [interact.snappers.grid({ x: 100, y: 50 })],\n  },\n})\n\ninteract(target).resizable({\n  snapEdges: {\n    targets: [\n      interact.snappers.grid({\n       top: 50,\n       left: 50,\n       bottom: 100,\n       right: 100,\n      }),\n    ],\n  },\n})\n</code></pre>","longname":"module:modifiers/snapEdges","___id":"T000004R000004","___s":true,"attribs":"","id":"modifiers/snapEdges","ancestors":[],"modules":[{"comment":"/**\n * @module modifiers/snapEdges\n *\n * @description\n * WOW> This module allows snapping of the edges of targets during resize\n * interactions.\n *\n * ```js\n * interact(target).resizable({\n *   snapEdges: {\n *     targets: [interact.snappers.grid({ x: 100, y: 50 })],\n *   },\n * })\n *\n * interact(target).resizable({\n *   snapEdges: {\n *     targets: [\n *       interact.snappers.grid({\n *        top: 50,\n *        left: 50,\n *        bottom: 100,\n *        right: 100,\n *       }),\n *     ],\n *   },\n * })\n * ```\n */","meta":{"filename":"edges.ts","lineno":1,"columnno":0,"path":"/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/snap","code":{},"shortpath":"packages/@interactjs/modifiers/snap/edges.ts"},"kind":"module","name":"modifiers/snapEdges","description":"<p>WOW&gt; This module allows snapping of the edges of targets during resize\ninteractions.</p>\n<pre class=\"prettyprint source lang-js\"><code>interact(target).resizable({\n  snapEdges: {\n    targets: [interact.snappers.grid({ x: 100, y: 50 })],\n  },\n})\n\ninteract(target).resizable({\n  snapEdges: {\n    targets: [\n      interact.snappers.grid({\n       top: 50,\n       left: 50,\n       bottom: 100,\n       right: 100,\n      }),\n    ],\n  },\n})\n</code></pre>","longname":"module:modifiers/snapEdges","___id":"T000002R002464","___s":true,"attribs":"","id":"modifiers/snapEdges","ancestors":[]}]},{"kind":"package","longname":"package:undefined","files":["/home/travis/build/taye/interact.js/packages/@interactjs/actions/drag/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/actions/drop/DropEvent.ts","/home/travis/build/taye/interact.js/packages/@interactjs/actions/drop/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/actions/gesture/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/actions/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/actions/resize/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/auto-scroll/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/auto-start/base.ts","/home/travis/build/taye/interact.js/packages/@interactjs/auto-start/dragAxis.ts","/home/travis/build/taye/interact.js/packages/@interactjs/auto-start/hold.ts","/home/travis/build/taye/interact.js/packages/@interactjs/auto-start/InteractableMethods.ts","/home/travis/build/taye/interact.js/packages/@interactjs/auto-start/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/BaseEvent.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/Eventable.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/events.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/Interactable.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/interactablePreventDefault.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/InteractableSet.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/InteractEvent.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/Interaction.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/interactionFinder.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/interactions.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/InteractStatic.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/isNonNativeEvent.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/options.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/PointerInfo.ts","/home/travis/build/taye/interact.js/packages/@interactjs/core/scope.ts","/home/travis/build/taye/interact.js/packages/@interactjs/dev-tools/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/dev-tools/visualizer/plugin.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/dev-tools/visualizer/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/dev-tools/visualizer/vueModules.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/dev-tools/visualizer/vueModules.ts","/home/travis/build/taye/interact.js/packages/@interactjs/inertia/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/interact/index.ts","/home/travis/build/taye/interact.js/packages/@interactjs/interactjs/index.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/interactjs/index.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/all.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/aspectRatio.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/avoid/avoid.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/avoid/avoid.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/base.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/Modification.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/noop.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/restrict/edges.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/restrict/pointer.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/restrict/rect.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/restrict/size.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/rubberband/rubberband.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/rubberband/rubberband.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/snap/edges.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/snap/pointer.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/snap/size.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/spring/spring.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/spring/spring.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/transform/transform.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/modifiers/transform/transform.ts","/home/travis/build/taye/interact.js/packages/@interactjs/offset/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/pointer-events/base.ts","/home/travis/build/taye/interact.js/packages/@interactjs/pointer-events/holdRepeat.ts","/home/travis/build/taye/interact.js/packages/@interactjs/pointer-events/interactableTargets.ts","/home/travis/build/taye/interact.js/packages/@interactjs/pointer-events/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/pointer-events/PointerEvent.ts","/home/travis/build/taye/interact.js/packages/@interactjs/reflow/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/snappers/all.ts","/home/travis/build/taye/interact.js/packages/@interactjs/snappers/edgeTarget.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/snappers/edgeTarget.ts","/home/travis/build/taye/interact.js/packages/@interactjs/snappers/elements.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/snappers/elements.ts","/home/travis/build/taye/interact.js/packages/@interactjs/snappers/grid.ts","/home/travis/build/taye/interact.js/packages/@interactjs/snappers/plugin.ts","/home/travis/build/taye/interact.js/packages/@interactjs/types/index.ts","/home/travis/build/taye/interact.js/packages/@interactjs/types/NativePointerEventType.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/arr.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/browser.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/center.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/clone.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/displace.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/displace.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/domObjects.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/domUtils.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/ElementState.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/ElementState.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/exchange.stub.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/exchange.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/extend.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/getOriginXY.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/hypot.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/is.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/isWindow.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/misc.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/normalizeListeners.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/pointerExtend.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/pointerUtils.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/raf.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/rect.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/shallowEqual.ts","/home/travis/build/taye/interact.js/packages/@interactjs/utils/window.ts","/home/travis/build/taye/interact.js/packages/interactjs/index.ts","/home/travis/build/taye/interact.js/jsdoc/index.md"],"___id":"T000002R003489","___s":true,"attribs":"","id":"package:","ancestors":[]},{"comment":"/**\n   * Prevent the default behaviour of the original Event\n   */","meta":{"range":[1621,1684],"filename":"PointerEvent.ts","lineno":79,"columnno":2,"path":"../packages/@interactjs/pointer-events","code":{"id":"astnode100025769","name":"preventDefault","type":"MethodDefinition","paramnames":[]},"vars":{"":null},"shortpath":"packages/@interactjs/pointer-events/PointerEvent.ts"},"description":"<p>Prevent the default behaviour of the original Event</p>","name":"preventDefault","longname":"preventDefault","kind":"function","scope":"global","params":[],"___id":"T000002R002940","___s":true,"attribs":"<span class=\"type-signature\"></span>","id":"preventDefault","signature":"<span class=\"signature\">()</span><span class=\"type-signature\"></span>","ancestors":[]}]