diff --git a/webcola/webcola-tests.ts b/webcola/webcola-tests.ts new file mode 100644 index 0000000000..9fc94d4132 --- /dev/null +++ b/webcola/webcola-tests.ts @@ -0,0 +1,30 @@ +/// +module WebColaTests { + var adaptor = cola.adaptor({ + trigger: function() { + }, + kick: function() { + }, + on: function() { + }, + drag: function() { + } + }); + + adaptor + .size([100, 100]) + .avoidOverlaps(true) + .nodes({}) + .links({}) + .handleDisconnected(true) + .convergenceThreshold(0.001) + .constraints({}) + .linkDistance(100) + .flowLayout('y', 0); + + adaptor.start(1, 2, 3); + adaptor.dragstart({}); + adaptor.dragend({}); + adaptor.stop(); + adaptor.resume(); +} diff --git a/webcola/webcola.d.ts b/webcola/webcola.d.ts new file mode 100644 index 0000000000..d9ce39c686 --- /dev/null +++ b/webcola/webcola.d.ts @@ -0,0 +1,35 @@ +// Type definitions for webcola 3.0.1 +// Project: https://github.com/tgdwyer/WebCola +// Definitions by: Qinfeng Chen +// Definitions: https://github.com/borisyankov/DefinitelyTyped +declare module WebCola{ + interface Adaptor { + avoidOverlaps(avodOverLaps: boolean): Adaptor; + constraints(constraints: any): Adaptor; + convergenceThreshold(convergenceThreshold: number): Adaptor; + dragend(node: { [index: number]: any }): void; + dragstart(node: { [index: number]: any }): void; + flowLayout(axis: string, minSeparation: number): Adaptor; + handleDisconnected(handleDisconnected: boolean): Adaptor; + links(links: any): Adaptor; + linkDistance(linkLength: number): Adaptor; + nodes(nodes: any): Adaptor; + resume(): void; + size(dimension: number[]): Adaptor; + start( + initialUnconstrainedIterations: number, + initialUserConstraintIterations: number, + initialAllConstraintsIterations: number + ): void; + stop(): void; + } + + interface Cola { + adaptor(options: { [index:number]: any }): Adaptor; + start(): void; + stop(): void; + } +} + +declare var cola: WebCola.Cola; +