From 00a6bcfbfc0179f7185b9b57286691122f79b7f9 Mon Sep 17 00:00:00 2001 From: Jack Allen <38332643+jackall3n@users.noreply.github.com> Date: Fri, 16 Aug 2019 01:39:43 +0100 Subject: [PATCH] [@brainhubeu/react-carousel] Added new package (#37617) --- .../brainhubeu__react-carousel-tests.tsx | 61 +++++++++++++++++++ types/brainhubeu__react-carousel/index.d.ts | 45 ++++++++++++++ .../brainhubeu__react-carousel/tsconfig.json | 30 +++++++++ types/brainhubeu__react-carousel/tslint.json | 3 + 4 files changed, 139 insertions(+) create mode 100644 types/brainhubeu__react-carousel/brainhubeu__react-carousel-tests.tsx create mode 100644 types/brainhubeu__react-carousel/index.d.ts create mode 100644 types/brainhubeu__react-carousel/tsconfig.json create mode 100644 types/brainhubeu__react-carousel/tslint.json diff --git a/types/brainhubeu__react-carousel/brainhubeu__react-carousel-tests.tsx b/types/brainhubeu__react-carousel/brainhubeu__react-carousel-tests.tsx new file mode 100644 index 0000000000..7513fab121 --- /dev/null +++ b/types/brainhubeu__react-carousel/brainhubeu__react-carousel-tests.tsx @@ -0,0 +1,61 @@ +import * as React from "react"; +import Carousel, { Dots } from "@brainhubeu/react-carousel"; + +interface MyCarouselProps { + value: number; +} + +interface MyCarouselState { + value: number; + slides: Array>; +} + +class MyCarousel extends React.Component { + state = { + value: 0, + slides: [ + img-2, + img-2, + img-3, + ], + }; + + handleChange = (value: number) => { + this.setState({value}); + } + + render() { + const {value, slides} = this.state; + + return ( + <> + left} + arrowRight={
left
} + autoPlay={1000} + clickToChange + centered + dots={false} + draggable + itemWidth={100} + infinite + keepDirectionWhenDragging + onChange={this.handleChange} + offset={50} + slides={slides} + slidesPerPage={1} + slidesPerScroll={3} + stopAutoPlayOnHover + value={value}> + image-1 + image-2 + image-3 +
+ + + ); + } +} diff --git a/types/brainhubeu__react-carousel/index.d.ts b/types/brainhubeu__react-carousel/index.d.ts new file mode 100644 index 0000000000..c266296490 --- /dev/null +++ b/types/brainhubeu__react-carousel/index.d.ts @@ -0,0 +1,45 @@ +// Type definitions for @brainhubeu/react-carousel 1.10 +// Project: https://github.com/brainhubeu/react-carousel +// Definitions by: Jack Allen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +import * as React from "react"; + +export type ImgProps = React.ReactComponentElement<'img'>; + +export interface DotsProps { + number?: number; + thumbnails?: ImgProps[]; + value?: number; + onChange?(value: number): void; +} + +export class Dots extends React.Component { +} + +export interface CarouselProps { + value?: number; + onChange?(value: number): void; + slides?: ImgProps[]; + slidesPerPage?: number; + slidesPerScroll?: number; + itemWidth?: number; + offset?: number; + arrows?: boolean; + arrowLeft?: JSX.Element; + arrowRight?: JSX.Element; + addArrowClickHandler?: boolean; + autoPlay?: number; + stopAutoPlayOnHover?: boolean; + clickToChange?: boolean; + centered?: boolean; + infinite?: boolean; + draggable?: boolean; + keepDirectionWhenDragging?: boolean; + animationSpeed?: number; + dots?: boolean; +} + +export default class extends React.Component { +} diff --git a/types/brainhubeu__react-carousel/tsconfig.json b/types/brainhubeu__react-carousel/tsconfig.json new file mode 100644 index 0000000000..4dee89fe6d --- /dev/null +++ b/types/brainhubeu__react-carousel/tsconfig.json @@ -0,0 +1,30 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "jsx": "react", + "typeRoots": [ + "../" + ], + "paths": { + "@brainhubeu/react-carousel": [ + "brainhubeu__react-carousel" + ] + }, + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "brainhubeu__react-carousel-tests.tsx" + ] +} diff --git a/types/brainhubeu__react-carousel/tslint.json b/types/brainhubeu__react-carousel/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/brainhubeu__react-carousel/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +}