Skip to content

Commit

Permalink
v1.4.2
Browse files Browse the repository at this point in the history
  • Loading branch information
taye committed May 22, 2019
1 parent 2b5e5f0 commit 068d0d6
Show file tree
Hide file tree
Showing 32 changed files with 679 additions and 294 deletions.
18 changes: 10 additions & 8 deletions packages/actions/drop/index.js

Large diffs are not rendered by default.

9 changes: 8 additions & 1 deletion packages/auto-scroll/index.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion packages/core/BaseEvent.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ export declare class BaseEvent<T extends ActionName = any> {
timeStamp: any;
immediatePropagationStopped: boolean;
propagationStopped: boolean;
readonly interaction: Pick<Interaction<any>, "start" | "end" | "stop" | "pointerIsDown" | "pointerWasMoved" | "move" | "interacting" | "_proxy">;
readonly interaction: Pick<Interaction<any>, "start" | "end" | "stop" | "interactable" | "element" | "prepared" | "pointerIsDown" | "pointerWasMoved" | "_proxy" | "move" | "interacting">;
constructor(interaction: any);
preventDefault(): void;
/**
Expand Down
6 changes: 3 additions & 3 deletions packages/core/Interactable.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -80,9 +80,9 @@ export declare class Interactable implements Partial<Eventable> {
testIgnoreAllow(this: Interactable, options: {
ignoreFrom: IgnoreValue;
allowFrom: IgnoreValue;
}, interactableElement: Element, eventTarget: Element): any;
testAllow(this: Interactable, allowFrom: IgnoreValue, interactableElement: Element, element: Element): any;
testIgnore(this: Interactable, ignoreFrom: IgnoreValue, interactableElement: Element, element: Element): any;
}, targetNode: Node, eventTarget: Element): any;
testAllow(this: Interactable, allowFrom: IgnoreValue, targetNode: Node, element: Element): any;
testIgnore(this: Interactable, ignoreFrom: IgnoreValue, targetNode: Node, element: Element): any;
/**
* Calls listeners for the given InteractEvent type bound globally
* and directly to this Interactable
Expand Down
16 changes: 8 additions & 8 deletions packages/core/Interactable.js

Large diffs are not rendered by default.

13 changes: 12 additions & 1 deletion packages/core/Interactable.spec.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion packages/core/InteractableSet.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ export default class InteractableSet {
constructor(scope: Interact.Scope);
new(target: Interact.Target, options?: any): Interact.Interactable;
get(target: Interact.Target, options: any): any;
forEachMatch(element: Document | Element, callback: (interactable: any) => any): any;
forEachMatch(node: Document | Element, callback: (interactable: any) => any): any;
}
18 changes: 12 additions & 6 deletions packages/core/InteractableSet.js

Large diffs are not rendered by default.

20 changes: 18 additions & 2 deletions packages/core/Interaction.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,22 @@ export interface ActionProps<T extends ActionName = any> {
export interface StartAction extends ActionProps {
name: ActionName | string;
}
export declare type InteractionProxy = Pick<Interaction, 'pointerIsDown' | 'pointerWasMoved' | 'start' | 'move' | 'end' | 'stop' | 'interacting' | '_proxy'>;
export declare enum _ProxyValues {
interactable = "",
element = "",
prepared = "",
pointerIsDown = "",
pointerWasMoved = "",
_proxy = ""
}
export declare enum _ProxyMethods {
start = "",
move = "",
end = "",
stop = "",
interacting = ""
}
export declare type _InteractionProxy = Pick<Interaction, keyof typeof _ProxyValues | keyof typeof _ProxyMethods>;
export declare class Interaction<T extends ActionName = any> {
interactable: Interactable;
element: Element;
Expand All @@ -37,7 +52,7 @@ export declare class Interaction<T extends ActionName = any> {
pointerWasMoved: boolean;
_interacting: boolean;
_ending: boolean;
_proxy: InteractionProxy;
_proxy: _InteractionProxy;
simulation: any;
readonly pointerMoveTolerance: number;
/**
Expand Down Expand Up @@ -187,6 +202,7 @@ export declare class Interaction<T extends ActionName = any> {
updatePointer(pointer: Interact.PointerType, event: Interact.PointerEventType, eventTarget: EventTarget, down?: boolean): number;
removePointer(pointer: any, event: any): void;
_updateLatestPointer(pointer: any, event: any, eventTarget: any): void;
destroy(): void;
_createPreparedEvent(event: Interact.PointerEventType, phase: EventPhase, preEnd: boolean, type: string): InteractEvent<T, EventPhase>;
_fireEvent(iEvent: any): void;
_doPhase(signalArg: Partial<Interact.SignalArg>): boolean;
Expand Down
45 changes: 34 additions & 11 deletions packages/core/Interaction.js

Large diffs are not rendered by default.

15 changes: 13 additions & 2 deletions packages/core/Interaction.spec.js

Large diffs are not rendered by default.

5 changes: 4 additions & 1 deletion packages/core/scope.js

Large diffs are not rendered by default.

23 changes: 18 additions & 5 deletions packages/dev-tools/devTools.spec.js

Large diffs are not rendered by default.

62 changes: 45 additions & 17 deletions packages/dev-tools/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,28 +3,56 @@ declare module '@interactjs/core/scope' {
logger: Logger;
}
}
declare module '@interactjs/core/defaultOptions' {
interface BaseDefaults {
devTools?: DevToolsOptions;
}
}
declare module '@interactjs/core/Interactable' {
interface Interactable {
devTools?: Interact.OptionMethod<DevToolsOptions>;
}
}
export interface DevToolsOptions {
ignore: {
[P in keyof typeof CheckName]?: boolean;
};
}
export interface Logger {
warn: (...args: any[]) => void;
error: (...args: any[]) => void;
log: (...args: any[]) => void;
}
export declare const links: {
touchAction: string;
boxSizing: string;
};
export declare const install: (scope: import("@interactjs/core/scope").Scope, { logger }?: {
export interface Check {
name: string;
text: string;
perform: (interaction: Interact.Interaction) => boolean;
getInfo: (interaction: Interact.Interaction) => any[];
}
declare enum CheckName {
touchAction = "",
boxSizing = "",
noListeners = ""
}
declare function install(scope: Interact.Scope, { logger }?: {
logger?: Logger;
}) => void;
export declare const touchActionMessage = "[interact.js] Consider adding CSS \"touch-action: none\" to this element\n";
export declare const boxSizingMessage = "[interact.js] Consider adding CSS \"box-sizing: border-box\" to this resizable element";
export declare const noListenersMessage = "[interact.js] There are no listeners set for this action";
export declare function touchAction({ element }: Interact.Interaction, logger: Logger): void;
export declare function boxSizing(interaction: Interact.Interaction, logger: Logger): void;
export declare function noListeners(interaction: Interact.Interaction, logger: Logger): void;
declare const _default: {
}): void;
declare const defaultExport: {
id: string;
install: () => void;
checks?: undefined;
CheckName?: undefined;
links?: undefined;
prefix?: undefined;
} | {
id: string;
install: (scope: import("@interactjs/core/scope").Scope, { logger }?: {
logger?: Logger;
}) => void;
install: typeof install;
checks: Check[];
CheckName: typeof CheckName;
links: {
touchAction: string;
boxSizing: string;
};
prefix: string;
};
export default _default;
export default defaultExport;
130 changes: 90 additions & 40 deletions packages/dev-tools/index.js

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion packages/interact/interact.spec.js

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions packages/interactjs/dist/api/Interactable.html
Original file line number Diff line number Diff line change
Expand Up @@ -1025,7 +1025,7 @@ <h4 class="name" id="dropCheck"><span class="type-signature"></span>dropCheck<sp

<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="packages_actions_drop_index.ts.html">packages/actions/drop/index.ts</a>, <a href="packages_actions_drop_index.ts.html#line189">line 189</a>
<a href="packages_actions_drop_index.ts.html">packages/actions/drop/index.ts</a>, <a href="packages_actions_drop_index.ts.html#line191">line 191</a>
</li></ul></dd>


Expand Down Expand Up @@ -1140,7 +1140,7 @@ <h4 class="name" id="dropzone"><span class="type-signature"></span>dropzone<span

<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="packages_actions_drop_index.ts.html">packages/actions/drop/index.ts</a>, <a href="packages_actions_drop_index.ts.html#line145">line 145</a>
<a href="packages_actions_drop_index.ts.html">packages/actions/drop/index.ts</a>, <a href="packages_actions_drop_index.ts.html#line147">line 147</a>
</li></ul></dd>


Expand Down
2 changes: 1 addition & 1 deletion packages/interactjs/dist/api/doclets.json

Large diffs are not rendered by default.

16 changes: 9 additions & 7 deletions packages/interactjs/dist/api/packages_actions_drop_index.ts.html
Original file line number Diff line number Diff line change
Expand Up @@ -176,13 +176,15 @@ <h1 class="page-title">packages/actions/drop/index.ts</h1>

const { dropState } = interaction

dropState.activeDrops = null
dropState.events = null
dropState.cur.dropzone = null
dropState.cur.element = null
dropState.prev.dropzone = null
dropState.prev.element = null
dropState.rejected = false
if (dropState) {
dropState.activeDrops = null
dropState.events = null
dropState.cur.dropzone = null
dropState.cur.element = null
dropState.prev.dropzone = null
dropState.prev.element = null
dropState.rejected = false
}
})

/**
Expand Down
14 changes: 7 additions & 7 deletions packages/interactjs/dist/api/packages_core_Interactable.ts.html
Original file line number Diff line number Diff line change
Expand Up @@ -249,18 +249,18 @@ <h1 class="page-title">packages/core/Interactable.ts</h1>
nodeContains(this._context, element))
}

testIgnoreAllow (this: Interactable, options: { ignoreFrom: IgnoreValue, allowFrom: IgnoreValue }, interactableElement: Element, eventTarget: Element) {
return (!this.testIgnore(options.ignoreFrom, interactableElement, eventTarget) &amp;&amp;
this.testAllow(options.allowFrom, interactableElement, eventTarget))
testIgnoreAllow (this: Interactable, options: { ignoreFrom: IgnoreValue, allowFrom: IgnoreValue }, targetNode: Node, eventTarget: Element) {
return (!this.testIgnore(options.ignoreFrom, targetNode, eventTarget) &amp;&amp;
this.testAllow(options.allowFrom, targetNode, eventTarget))
}

testAllow (this: Interactable, allowFrom: IgnoreValue, interactableElement: Element, element: Element) {
testAllow (this: Interactable, allowFrom: IgnoreValue, targetNode: Node, element: Element) {
if (!allowFrom) { return true }

if (!is.element(element)) { return false }

if (is.string(allowFrom)) {
return matchesUpTo(element, allowFrom, interactableElement)
return matchesUpTo(element, allowFrom, targetNode)
}
else if (is.element(allowFrom)) {
return nodeContains(allowFrom, element)
Expand All @@ -269,11 +269,11 @@ <h1 class="page-title">packages/core/Interactable.ts</h1>
return false
}

testIgnore (this: Interactable, ignoreFrom: IgnoreValue, interactableElement: Element, element: Element) {
testIgnore (this: Interactable, ignoreFrom: IgnoreValue, targetNode: Node, element: Element) {
if (!ignoreFrom || !is.element(element)) { return false }

if (is.string(ignoreFrom)) {
return matchesUpTo(element, ignoreFrom, interactableElement)
return matchesUpTo(element, ignoreFrom, targetNode)
}
else if (is.element(ignoreFrom)) {
return nodeContains(ignoreFrom, element)
Expand Down
58 changes: 39 additions & 19 deletions packages/interactjs/dist/api/packages_core_Interaction.ts.html
Original file line number Diff line number Diff line change
Expand Up @@ -59,15 +59,26 @@ <h1 class="page-title">packages/core/Interaction.ts</h1>
name: ActionName | string
}

export type InteractionProxy = Pick&lt;Interaction,
'pointerIsDown' |
'pointerWasMoved' |
'start' |
'move' |
'end' |
'stop' |
'interacting' |
'_proxy'
export enum _ProxyValues {
interactable = '',
element = '',
prepared = '',
pointerIsDown = '',
pointerWasMoved = '',
_proxy = ''
}

export enum _ProxyMethods {
start = '',
move = '',
end = '',
stop = '',
interacting = ''
}

export type _InteractionProxy = Pick&lt;
Interaction,
keyof typeof _ProxyValues | keyof typeof _ProxyMethods
>

export class Interaction&lt;T extends ActionName = any> {
Expand Down Expand Up @@ -117,7 +128,7 @@ <h1 class="page-title">packages/core/Interaction.ts</h1>
pointerWasMoved = false
_interacting = false
_ending = false
_proxy: InteractionProxy = null
_proxy: _InteractionProxy = null

simulation = null

Expand Down Expand Up @@ -154,15 +165,18 @@ <h1 class="page-title">packages/core/Interaction.ts</h1>

const that = this

this._proxy = {
get pointerIsDown () { return that.pointerIsDown },
get pointerWasMoved () { return that.pointerWasMoved },
start (action, i, e) { return that.start(action, i, e) },
move (arg) { return that.move(arg) },
end (event) { return that.end(event) },
stop () { return that.stop() },
interacting () { return that.interacting() },
get _proxy () { return this },
this._proxy = {} as _InteractionProxy

for (const key in _ProxyValues) {
Object.defineProperty(this._proxy, key, {
get () { return that[key] },
})
}

for (const key in _ProxyMethods) {
Object.defineProperty(this._proxy, key, {
value: (...args) => that[key](...args),
})
}

this._signals.fire('new', { interaction: this })
Expand Down Expand Up @@ -497,6 +511,12 @@ <h1 class="page-title">packages/core/Interaction.ts</h1>
this._latestPointer.eventTarget = eventTarget
}

destroy () {
this._latestPointer.pointer = null
this._latestPointer.event = null
this._latestPointer.eventTarget = null
}

_createPreparedEvent (event: Interact.PointerEventType, phase: EventPhase, preEnd: boolean, type: string) {
const actionName = this.prepared.name

Expand Down
Loading

0 comments on commit 068d0d6

Please sign in to comment.