@erikwatson/snowfall 3.1.2 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE CHANGED
File without changes
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # snowfall.js
1
+ # Snowfall :: Stay cool
2
2
 
3
3
  The perfect snow effect for your Winter themed website!
4
4
 
@@ -7,82 +7,79 @@ displayed over the top. [Check out this example](http://erikwatson.me/?snow).
7
7
 
8
8
  ## Features
9
9
 
10
- - [Visual config editor](https://erikwatson.github.io/snowfall-editor/)
11
- - [API Reference](https://erikwatson.github.io/snowfall.js/)
12
- - Easy to use.
13
- - Simple, but beautiful.
14
- - Multiple layers give the illusion of depth.
15
- - Density of snowflakes looks correct even when the window is resized.
16
- - Small, with no dependencies.
10
+ - Easy to use
11
+ - Beautiful
12
+ - Highly configurable | [API docs](https://erikwatson.github.io/snowfall-docs/) | [Config editor](https://erikwatson.github.io/snowfall-editor/)
13
+ - Consistent density of snowflakes, regardless of screen size
14
+ - Scheduling, so you can set it and forget it
17
15
 
18
- ## Instructions - Package Manager
16
+ ## Instructions
19
17
 
20
- ### Install it
18
+ First, add a div with an ID of `snowfall` to your page.
21
19
 
22
- ```sh
23
- # if you're using yarn install with
24
- yarn add @erikwatson/snowfall
25
-
26
- # if you're using npm install with
27
- npm install @erikwatson/snowfall
20
+ ```html
21
+ <div id="snowfall"></div>
28
22
  ```
29
23
 
30
- ### Use it
31
-
32
- Add a div with an ID of `snow-container` to your page. You will need to set the
33
- width and height of this yourself using CSS.
24
+ It's recommended that you make it full screen and attach it to the background, something like this.
34
25
 
35
26
  ```html
36
- <div id="snow-container"></div>
27
+ <style>
28
+ #snowfall {
29
+ position: fixed;
30
+ inset: 0;
31
+ pointer-events: none;
32
+ z-index: -1;
33
+ }
34
+ </style>
37
35
  ```
38
36
 
39
- Then, at the bottom of your page body add the following.
37
+ Then, at the bottom of your page body add the following, this will run snowfall with the default settings.
40
38
 
41
39
  ```html
42
- <script
43
- type="text/javascript"
44
- src="./node_modules/@erikwatson/snowfall/dist/snowfall.min.js"
45
- ></script>
40
+ <script src="https://cdn.jsdelivr.net/npm/@erikwatson/snowfall@4/dist/index.min.js"></script>
46
41
  <script>
47
- // You can change the defaults by passing in a config object here
48
- // Use the Visual Config Editor to create one
49
42
  snowfall.start()
50
43
  </script>
51
44
  ```
52
45
 
53
- **WARNING:** You should symlink to the .js file rather than have a publicly
54
- accessible node_modules folder. It is this way here just to keep example simple.
46
+ ### Custom configs
55
47
 
56
- ## Instructions - CDN
48
+ Same as above but we pass a config object. Your config overrides the default settings.
57
49
 
58
- First, add a div with an ID of `snow-container` to your page. You will need to
59
- set the width and height of this yourself using CSS.
60
-
61
- ```html
62
- <div id="snow-container"></div>
50
+ ```js
51
+ snowfall.start({
52
+ layers: [
53
+ {
54
+ colour: '#ff0000'
55
+ }
56
+ ]
57
+ })
63
58
  ```
64
59
 
65
- Then, at the bottom of your page body add the following.
66
-
67
- ```html
68
- <script src="https://cdn.jsdelivr.net/npm/@erikwatson/snowfall/dist/snowfall.min.js"></script>
69
- <script>
70
- // You can change the defaults by passing in a config object here
71
- // Use the Visual Config Editor to create one
72
- snowfall.start()
73
- </script>
60
+ ### Scheduling
61
+
62
+ Same as the above, but we pass a schedule config and the optional snowfall config to the `.schedule(user_schedule, user_config)` function.
63
+
64
+ ```js
65
+ const userSchedule = {
66
+ from: { month: 12, day: 1 },
67
+ to: { month: 12, day: 31 }
68
+ }
69
+ snowfall.schedule(userSchedule, {
70
+ layers: [
71
+ {
72
+ colour: '#ff0000'
73
+ }
74
+ ]
75
+ })
74
76
  ```
75
77
 
76
- ### Specify Version
77
-
78
- It is not recommended to always use the latest version, especially in
79
- production. You can change the CDN url to specify control over the version using
80
- the `@version` syntax like so.
78
+ ### CDN Links
81
79
 
82
- - **latest release**: https://cdn.jsdelivr.net/npm/@erikwatson/snowfall/dist/snowfall.min.js
83
- - **major release**: https://cdn.jsdelivr.net/npm/@erikwatson/snowfall@3/dist/snowfall.min.js
84
- - **minor release**: https://cdn.jsdelivr.net/npm/@erikwatson/snowfall@3.1/dist/snowfall.min.js
85
- - **patch release**: https://cdn.jsdelivr.net/npm/@erikwatson/snowfall@3.0.1/dist/snowfall.min.js
80
+ - Latest 4.x (minified): `https://cdn.jsdelivr.net/npm/@erikwatson/snowfall@4/dist/index.min.js`
81
+ - Latest 4.x (unminified): `https://cdn.jsdelivr.net/npm/@erikwatson/snowfall@4/dist/index.js`
82
+ - Specific version: `https://cdn.jsdelivr.net/npm/@erikwatson/snowfall@4.0.0/dist/index.min.js`
86
83
 
87
84
  ## Author
88
85
 
@@ -0,0 +1,4 @@
1
+ import { CompleteUserConfig, Config, UserConfig } from './types';
2
+ export declare function merge(config: UserConfig): Config;
3
+ export declare function merge2(config: UserConfig): CompleteUserConfig;
4
+ export declare function diff(config: UserConfig): Partial<UserConfig>;
@@ -0,0 +1,162 @@
1
+ import { BaseConfig, BaseLayerConfig, CompleteUserConfig, Config, ImageLayerConfig, SimpleLayerConfig } from './types';
2
+ export declare const DEFAULT_CONTAINER_ID = "snowfall";
3
+ export declare const DEFAULT_SNOW_COLOR = "#ffffff";
4
+ export declare const DEFAULT_DENSITY = 200;
5
+ export declare const DEFAULT_MASS_MIN = 1;
6
+ export declare const DEFAULT_MASS_MAX = 3;
7
+ export declare const DEFAULT_SIZE_MIN = 1;
8
+ export declare const DEFAULT_SIZE_MAX = 3;
9
+ export declare const DEFAULT_ROTATE = false;
10
+ export declare const DEFAULT_MODE = "simple";
11
+ export declare const DEFAULT_IMAGE = "data:image/png;base64,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";
12
+ export declare const DEFAULT_OPACITY_MIN = 0;
13
+ export declare const DEFAULT_OPACITY_MAX = 1;
14
+ export declare const DEFAULT_MASS: {
15
+ min: number;
16
+ max: number;
17
+ };
18
+ export declare const DEFAULT_SIZE: {
19
+ min: number;
20
+ max: number;
21
+ };
22
+ export declare const DEFAULT_OPACITY: {
23
+ min: number;
24
+ max: number;
25
+ };
26
+ export declare const DEFAULT_AMPLITUDE = 1;
27
+ export declare const DEFAULT_FREQUENCY = 0.02;
28
+ export declare const DEFAULT_SWAY: {
29
+ frequency: number;
30
+ amplitude: number;
31
+ };
32
+ export declare const DEFAULT_GRAVITY_ANGLE = 90;
33
+ export declare const DEFAULT_GRAVITY_STRENGTH = 0.7;
34
+ export declare const DEFAULT_GRAVITY: {
35
+ angle: number;
36
+ strength: number;
37
+ };
38
+ export declare const DEFAULT_WIND_ANGLE = 0;
39
+ export declare const DEFAULT_WIND_STRENGTH = 0;
40
+ export declare const DEFAULT_WIND_IN_ADDITIONAL_STRENGTH_MIN = 1;
41
+ export declare const DEFAULT_WIND_IN_ADDITIONAL_STRENGTH_MAX = 3;
42
+ export declare const DEFAULT_WIND_IN_ADDITIONAL_STRENGTH: {
43
+ min: number;
44
+ max: number;
45
+ };
46
+ export declare const DEFAULT_WIND_IN_DURATION_MIN = 1000;
47
+ export declare const DEFAULT_WIND_IN_DURATION_MAX = 3000;
48
+ export declare const DEFAULT_WIND_IN_DURATION: {
49
+ min: number;
50
+ max: number;
51
+ };
52
+ export declare const DEFAULT_WIND_IN_DELAY_MIN = 1000;
53
+ export declare const DEFAULT_WIND_IN_DELAY_MAX = 10000;
54
+ export declare const DEFAULT_WIND_IN_DELAY: {
55
+ min: number;
56
+ max: number;
57
+ };
58
+ export declare const DEFAULT_WIND_OUT_DELAY_MIN = 5000;
59
+ export declare const DEFAULT_WIND_OUT_DELAY_MAX = 10000;
60
+ export declare const DEFAULT_WIND_OUT_DELAY: {
61
+ min: number;
62
+ max: number;
63
+ };
64
+ export declare const DEFAULT_WIND_OUT_DURATION_MAX = 10000;
65
+ export declare const DEFAULT_WIND_OUT_DURATION_MIN = 1000;
66
+ export declare const DEFAULT_WIND_OUT_DURATION: {
67
+ min: number;
68
+ max: number;
69
+ };
70
+ export declare const DEFAULT_WIND_GUSTS_CHANGE_CHANCE = 0.25;
71
+ export declare const DEFAULT_WIND_GUSTS_ACTIVE = true;
72
+ export declare const DEFAULT_WIND_GUSTS_OUT: {
73
+ duration: {
74
+ min: number;
75
+ max: number;
76
+ };
77
+ delay: {
78
+ min: number;
79
+ max: number;
80
+ };
81
+ };
82
+ export declare const DEFAULT_WIND_GUSTS_IN: {
83
+ additionalStrength: {
84
+ min: number;
85
+ max: number;
86
+ };
87
+ duration: {
88
+ min: number;
89
+ max: number;
90
+ };
91
+ delay: {
92
+ min: number;
93
+ max: number;
94
+ };
95
+ };
96
+ export declare const DEFAULT_WIND_GUSTS: {
97
+ active: boolean;
98
+ changeChance: number;
99
+ in: {
100
+ additionalStrength: {
101
+ min: number;
102
+ max: number;
103
+ };
104
+ duration: {
105
+ min: number;
106
+ max: number;
107
+ };
108
+ delay: {
109
+ min: number;
110
+ max: number;
111
+ };
112
+ };
113
+ out: {
114
+ duration: {
115
+ min: number;
116
+ max: number;
117
+ };
118
+ delay: {
119
+ min: number;
120
+ max: number;
121
+ };
122
+ };
123
+ };
124
+ export declare const DEFAULT_WIND: {
125
+ angle: number;
126
+ strength: number;
127
+ gusts: {
128
+ active: boolean;
129
+ changeChance: number;
130
+ in: {
131
+ additionalStrength: {
132
+ min: number;
133
+ max: number;
134
+ };
135
+ duration: {
136
+ min: number;
137
+ max: number;
138
+ };
139
+ delay: {
140
+ min: number;
141
+ max: number;
142
+ };
143
+ };
144
+ out: {
145
+ duration: {
146
+ min: number;
147
+ max: number;
148
+ };
149
+ delay: {
150
+ min: number;
151
+ max: number;
152
+ };
153
+ };
154
+ };
155
+ };
156
+ export declare const BASE_LAYER_CONFIG: BaseLayerConfig;
157
+ export declare const DEFAULT_SIMPLE_LAYER: SimpleLayerConfig;
158
+ export declare const DEFAULT_IMAGE_LAYER: ImageLayerConfig;
159
+ export declare const DEFAULT_LAYERS: SimpleLayerConfig[];
160
+ export declare const DEFAULT_BASE_CONFIG: BaseConfig;
161
+ export declare function getDefaultConfig(): Config;
162
+ export declare const DEFAULT_USER_CONFIG: CompleteUserConfig;
@@ -0,0 +1,5 @@
1
+ import * as snowfall from './snowfall';
2
+ export default snowfall;
3
+ export * from './snowfall';
4
+ export * as Types from './types';
5
+ export { merge2 } from './config';