Mercurial > hg > ugly-duckling
changeset 374:2565f55f0ca7
Update waves-ui types with LayerTimeContext and linear scale
author | Lucas Thompson <dev@lucas.im> |
---|---|
date | Wed, 31 May 2017 12:35:35 +0100 |
parents | 2df7b3722eb9 |
children | 9f9d5731a941 |
files | src/app/visualisations/waves-ui-piper.d.ts |
diffstat | 1 files changed, 29 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/src/app/visualisations/waves-ui-piper.d.ts Wed May 31 02:44:14 2017 +0100 +++ b/src/app/visualisations/waves-ui-piper.d.ts Wed May 31 12:35:35 2017 +0100 @@ -22,8 +22,6 @@ dispose(): void; } -type TimeContext = any; // TODO - interface Area { top: number; left: number; @@ -38,7 +36,7 @@ stretchRatio: number; yDomain: number[]; opacity: number; - timeContext: any; // TODO + timeContext: LayerTimeContext; readonly timeToPixel: () => (time: number) => number; readonly valueToPixel: () => (value: number) => number; readonly items: Element[]; @@ -46,7 +44,7 @@ data: ArrayLike<any> | Object; destroy(): void; configureTimeContextBehaviour(ctor: ObjectConstructor): void; - setTimeContext(context: TimeContext): void; + setTimeContext(context: LayerTimeContext): void; configureShape(ctor: ObjectConstructor /* TODO BaseShape*/, accessors: Object, options: Object): void; @@ -92,15 +90,39 @@ interface Utilities { MatrixEntity: MatrixEntityConstructor; PrefilledMatrixEntity: PrefilledMatrixEntityConstructor; - scales: any; + scales: { + linear: Scale; + }; } type Timeline = any; type Track = any; // TODO +interface Scale { + (value: number): number; + invert(): (value: number) => number; + domain(arr?: [number, number]): Scale; + range(arr?: [number, number]): Scale; +} + +interface LayerTimeContext { + start: number; + duration: number; + offset: number; + stretchRatio: number; + parent: TimelineTimeContext; + timeToPixel(): Scale; + pixelToTime(px: number): number; + clone(): LayerTimeContext; +} + +interface LayerTimeContextConstructor { + new(parent: TimelineTimeContext): LayerTimeContext; +} + interface Core { Layer: LayerConstructor; - LayerTimeContext: any; // TODO + LayerTimeContext: LayerTimeContextConstructor; Timeline: Timeline; // TODO TimelineTimeContext: TimelineTimeContextConstructor; } @@ -113,7 +135,7 @@ visibleWidth: number; readonly visibleDuration: number; maintainVisibleDuration: boolean; - timeToPixel: (time: number) => number; + timeToPixel: Scale; } interface TimelineTimeContextConstructor {