Skip to content

Commit

Permalink
preparing 1.15.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
matteobruni committed May 26, 2020
1 parent ce0da9d commit 980c443
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 36 deletions.
24 changes: 4 additions & 20 deletions index.d.ts
Expand Up @@ -5,28 +5,12 @@

/// <reference types="react" />

export type RecursivePartial<T> = {
[P in keyof T]?: T[P] extends (infer U)[]
? RecursivePartial<U>[]
: T[P] extends object ? RecursivePartial<T[P]> : T[P]
};

import { ComponentClass } from "react";
import { IOptions } from "tsparticles/dist/Interfaces/Options/IOptions";
import { Container } from "tsparticles/dist/Classes/Container";
import { IOptions } from "tsparticles/dist/Options/Interfaces/IOptions";
import { Container } from "tsparticles/dist/Core/Container";
import { RecursivePartial } from "tsparticles/dist/Types/RecursivePartial";

export * from 'tsparticles/dist/Enums/InteractivityDetect';
export * from 'tsparticles/dist/Enums/MoveDirection';
export * from 'tsparticles/dist/Enums/OutMode';
export * from 'tsparticles/dist/Enums/PolygonMaskInlineArrangement';
export * from 'tsparticles/dist/Enums/PolygonMaskMoveType';
export * from 'tsparticles/dist/Enums/PolygonMaskType';
export * from 'tsparticles/dist/Enums/ProcessBubbleType';
export * from 'tsparticles/dist/Enums/RotateDirection';
export * from 'tsparticles/dist/Enums/ShapeType';
export * from 'tsparticles/dist/Enums/Modes/ClickMode';
export * from 'tsparticles/dist/Enums/Modes/DivMode';
export * from 'tsparticles/dist/Enums/Modes/HoverMode';
export * from 'tsparticles/dist/Enums';

export type IParticlesParams = RecursivePartial<IOptions>;

Expand Down
30 changes: 15 additions & 15 deletions src/DefaultOptions.ts
@@ -1,16 +1,16 @@
import type { IOptions } from "tsparticles/dist/Interfaces/Options/IOptions";
import { ShapeType } from "tsparticles/dist/Enums/ShapeType";
import type { RecursivePartial } from "tsparticles/dist/Types/RecursivePartial";
import { PolygonMaskType } from "tsparticles/dist/Enums/PolygonMaskType";
import { PolygonMaskInlineArrangement } from "tsparticles/dist/Enums/PolygonMaskInlineArrangement";
import { PolygonMaskMoveType } from "tsparticles/dist/Enums/PolygonMaskMoveType";
import { HoverMode } from "tsparticles/dist/Enums/Modes/HoverMode";
import { ClickMode } from "tsparticles/dist/Enums/Modes/ClickMode";
import { InteractivityDetect } from "tsparticles/dist/Enums/InteractivityDetect";
import { OutMode } from "tsparticles/dist/Enums/OutMode";
import { MoveDirection } from "tsparticles/dist/Enums/MoveDirection";
import { RecursivePartial } from "tsparticles/dist/Types/RecursivePartial";
import { ClickMode, HoverMode, InteractivityDetect, MoveDirection, OutMode, ShapeType } from "tsparticles/dist/Enums";
import type { IOptions } from "tsparticles/dist/Options/Interfaces/IOptions";
import {
InlineArrangement as PolygonMaskInlineArrangement,
IPolygonMaskOptions,
MoveType as PolygonMaskMoveType,
Type as PolygonMaskType
} from "tsparticles/dist/Plugins/PolygonMask/PolygonMaskPlugin";
import { IAbsorberOptions } from "tsparticles/dist/Plugins/Absorbers/AbsorbersPlugin";
import { IEmitterOptions } from "tsparticles/dist/Plugins/Emitters/EmittersPlugin";

export const defaultParams: RecursivePartial<IOptions> = {
export const defaultParams: RecursivePartial<IOptions & IPolygonMaskOptions & IAbsorberOptions & IEmitterOptions> = {
particles: {
number: {
value: 40,
Expand All @@ -36,7 +36,7 @@ export const defaultParams: RecursivePartial<IOptions> = {
src: "",
width: 100,
height: 100
},
}
},
opacity: {
value: 0.5,
Expand Down Expand Up @@ -83,7 +83,7 @@ export const defaultParams: RecursivePartial<IOptions> = {
rotateX: 3000,
rotateY: 3000
}
},
}
},
interactivity: {
detectsOn: InteractivityDetect.canvas,
Expand Down Expand Up @@ -144,4 +144,4 @@ export const defaultParams: RecursivePartial<IOptions> = {
},
url: ""
}
};
};
5 changes: 4 additions & 1 deletion src/Particles.tsx
Expand Up @@ -7,12 +7,15 @@ import type { RecursivePartial } from "tsparticles/dist/Types/RecursivePartial";
import { defaultParams } from "./DefaultOptions";
import { Options } from "tsparticles/dist/Classes/Options/Options";
import { tsParticles } from "tsparticles";
import { IPolygonMaskOptions } from "tsparticles/dist/Plugins/PolygonMask/PolygonMaskPlugin";
import { IAbsorberOptions } from "tsparticles/dist/Plugins/Absorbers/AbsorbersPlugin";
import { IEmitterOptions } from "tsparticles/dist/Plugins/Emitters/EmittersPlugin";

export interface ParticlesProps {
id: string;
width: string;
height: string;
params: RecursivePartial<IOptions>;
params: RecursivePartial<IOptions & IPolygonMaskOptions & IAbsorberOptions & IEmitterOptions>;
style: any;
className?: string;
canvasClassName?: string;
Expand Down

0 comments on commit 980c443

Please sign in to comment.