@oliversalzburg/js-utils 0.6.0 → 0.7.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.
Files changed (172) hide show
  1. package/package.json +5 -5
  2. package/lib/async/async.d.ts +0 -44
  3. package/lib/async/async.js +0 -76
  4. package/lib/async/async.js.map +0 -1
  5. package/lib/async/async.test.d.ts +0 -1
  6. package/lib/async/async.test.js +0 -26
  7. package/lib/async/async.test.js.map +0 -1
  8. package/lib/core.d.ts +0 -43
  9. package/lib/core.js +0 -2
  10. package/lib/core.js.map +0 -1
  11. package/lib/data/array.d.ts +0 -45
  12. package/lib/data/array.js +0 -70
  13. package/lib/data/array.js.map +0 -1
  14. package/lib/data/nil.d.ts +0 -92
  15. package/lib/data/nil.js +0 -131
  16. package/lib/data/nil.js.map +0 -1
  17. package/lib/data/random.d.ts +0 -111
  18. package/lib/data/random.js +0 -377
  19. package/lib/data/random.js.map +0 -1
  20. package/lib/data/string.d.ts +0 -30
  21. package/lib/data/string.js +0 -52
  22. package/lib/data/string.js.map +0 -1
  23. package/lib/data/tree.d.ts +0 -28
  24. package/lib/data/tree.js +0 -45
  25. package/lib/data/tree.js.map +0 -1
  26. package/lib/device/shake.d.ts +0 -79
  27. package/lib/device/shake.js +0 -135
  28. package/lib/device/shake.js.map +0 -1
  29. package/lib/dom/core.d.ts +0 -21
  30. package/lib/dom/core.js +0 -41
  31. package/lib/dom/core.js.map +0 -1
  32. package/lib/errors/AbstractError.d.ts +0 -29
  33. package/lib/errors/AbstractError.js +0 -59
  34. package/lib/errors/AbstractError.js.map +0 -1
  35. package/lib/errors/InternalError.d.ts +0 -19
  36. package/lib/errors/InternalError.js +0 -38
  37. package/lib/errors/InternalError.js.map +0 -1
  38. package/lib/errors/InvalidArgumentError.d.ts +0 -13
  39. package/lib/errors/InvalidArgumentError.js +0 -22
  40. package/lib/errors/InvalidArgumentError.js.map +0 -1
  41. package/lib/errors/InvalidOperationError.d.ts +0 -13
  42. package/lib/errors/InvalidOperationError.js +0 -22
  43. package/lib/errors/InvalidOperationError.js.map +0 -1
  44. package/lib/errors/NotImplementedError.d.ts +0 -12
  45. package/lib/errors/NotImplementedError.js +0 -21
  46. package/lib/errors/NotImplementedError.js.map +0 -1
  47. package/lib/errors/PermissionViolationError.d.ts +0 -13
  48. package/lib/errors/PermissionViolationError.js +0 -22
  49. package/lib/errors/PermissionViolationError.js.map +0 -1
  50. package/lib/errors/ResourceConflictError.d.ts +0 -12
  51. package/lib/errors/ResourceConflictError.js +0 -21
  52. package/lib/errors/ResourceConflictError.js.map +0 -1
  53. package/lib/errors/UnknownError.d.ts +0 -16
  54. package/lib/errors/UnknownError.js +0 -25
  55. package/lib/errors/UnknownError.js.map +0 -1
  56. package/lib/errors/console.d.ts +0 -7
  57. package/lib/errors/console.js +0 -13
  58. package/lib/errors/console.js.map +0 -1
  59. package/lib/errors/error-serializer.d.ts +0 -45
  60. package/lib/errors/error-serializer.js +0 -71
  61. package/lib/errors/error-serializer.js.map +0 -1
  62. package/lib/errors/error-serializer.test.d.ts +0 -1
  63. package/lib/errors/error-serializer.test.js +0 -109
  64. package/lib/errors/error-serializer.test.js.map +0 -1
  65. package/lib/errors/stream.d.ts +0 -7
  66. package/lib/errors/stream.js +0 -15
  67. package/lib/errors/stream.js.map +0 -1
  68. package/lib/errors/tools.d.ts +0 -10
  69. package/lib/errors/tools.js +0 -13
  70. package/lib/errors/tools.js.map +0 -1
  71. package/lib/events/event.d.ts +0 -9
  72. package/lib/events/event.js +0 -10
  73. package/lib/events/event.js.map +0 -1
  74. package/lib/format/bytes.d.ts +0 -118
  75. package/lib/format/bytes.js +0 -99
  76. package/lib/format/bytes.js.map +0 -1
  77. package/lib/format/bytes.test.d.ts +0 -1
  78. package/lib/format/bytes.test.js +0 -138
  79. package/lib/format/bytes.test.js.map +0 -1
  80. package/lib/format/count.d.ts +0 -14
  81. package/lib/format/count.js +0 -50
  82. package/lib/format/count.js.map +0 -1
  83. package/lib/format/count.test.d.ts +0 -1
  84. package/lib/format/count.test.js +0 -42
  85. package/lib/format/count.test.js.map +0 -1
  86. package/lib/format/milliseconds.d.ts +0 -100
  87. package/lib/format/milliseconds.js +0 -192
  88. package/lib/format/milliseconds.js.map +0 -1
  89. package/lib/format/milliseconds.test.d.ts +0 -1
  90. package/lib/format/milliseconds.test.js +0 -343
  91. package/lib/format/milliseconds.test.js.map +0 -1
  92. package/lib/format/string.d.ts +0 -24
  93. package/lib/format/string.js +0 -30
  94. package/lib/format/string.js.map +0 -1
  95. package/lib/format/string.test.d.ts +0 -1
  96. package/lib/format/string.test.js +0 -17
  97. package/lib/format/string.test.js.map +0 -1
  98. package/lib/graphics/canvas-sandbox-mp.d.ts +0 -258
  99. package/lib/graphics/canvas-sandbox-mp.js +0 -279
  100. package/lib/graphics/canvas-sandbox-mp.js.map +0 -1
  101. package/lib/graphics/canvas-sandbox.d.ts +0 -255
  102. package/lib/graphics/canvas-sandbox.js +0 -361
  103. package/lib/graphics/canvas-sandbox.js.map +0 -1
  104. package/lib/graphics/canvas.d.ts +0 -57
  105. package/lib/graphics/canvas.js +0 -37
  106. package/lib/graphics/canvas.js.map +0 -1
  107. package/lib/graphics/canvas2d-headless.d.ts +0 -85
  108. package/lib/graphics/canvas2d-headless.js +0 -193
  109. package/lib/graphics/canvas2d-headless.js.map +0 -1
  110. package/lib/graphics/canvas2d.d.ts +0 -162
  111. package/lib/graphics/canvas2d.js +0 -328
  112. package/lib/graphics/canvas2d.js.map +0 -1
  113. package/lib/graphics/canvas3d.d.ts +0 -41
  114. package/lib/graphics/canvas3d.js +0 -67
  115. package/lib/graphics/canvas3d.js.map +0 -1
  116. package/lib/graphics/color.d.ts +0 -22
  117. package/lib/graphics/color.js +0 -42
  118. package/lib/graphics/color.js.map +0 -1
  119. package/lib/graphics/core.d.ts +0 -89
  120. package/lib/graphics/core.js +0 -146
  121. package/lib/graphics/core.js.map +0 -1
  122. package/lib/graphics/palette-sampler.d.ts +0 -7
  123. package/lib/graphics/palette-sampler.js +0 -21
  124. package/lib/graphics/palette-sampler.js.map +0 -1
  125. package/lib/graphics/palette.d.ts +0 -120
  126. package/lib/graphics/palette.js +0 -494
  127. package/lib/graphics/palette.js.map +0 -1
  128. package/lib/graphics/palette.test.d.ts +0 -1
  129. package/lib/graphics/palette.test.js +0 -43
  130. package/lib/graphics/palette.test.js.map +0 -1
  131. package/lib/graphics/render-loop.d.ts +0 -80
  132. package/lib/graphics/render-loop.js +0 -120
  133. package/lib/graphics/render-loop.js.map +0 -1
  134. package/lib/graphics/shader.d.ts +0 -56
  135. package/lib/graphics/shader.js +0 -80
  136. package/lib/graphics/shader.js.map +0 -1
  137. package/lib/log/log.d.ts +0 -11
  138. package/lib/log/log.js +0 -2
  139. package/lib/log/log.js.map +0 -1
  140. package/lib/log/report.d.ts +0 -57
  141. package/lib/log/report.js +0 -88
  142. package/lib/log/report.js.map +0 -1
  143. package/lib/math/core.d.ts +0 -85
  144. package/lib/math/core.js +0 -125
  145. package/lib/math/core.js.map +0 -1
  146. package/lib/math/easing.d.ts +0 -204
  147. package/lib/math/easing.js +0 -332
  148. package/lib/math/easing.js.map +0 -1
  149. package/lib/math/euler.d.ts +0 -18
  150. package/lib/math/euler.js +0 -22
  151. package/lib/math/euler.js.map +0 -1
  152. package/lib/math/matrix3.d.ts +0 -217
  153. package/lib/math/matrix3.js +0 -508
  154. package/lib/math/matrix3.js.map +0 -1
  155. package/lib/math/quaternion.d.ts +0 -119
  156. package/lib/math/quaternion.js +0 -270
  157. package/lib/math/quaternion.js.map +0 -1
  158. package/lib/math/transformation.d.ts +0 -26
  159. package/lib/math/transformation.js +0 -31
  160. package/lib/math/transformation.js.map +0 -1
  161. package/lib/math/vector2.d.ts +0 -202
  162. package/lib/math/vector2.js +0 -310
  163. package/lib/math/vector2.js.map +0 -1
  164. package/lib/math/vector3.d.ts +0 -293
  165. package/lib/math/vector3.js +0 -492
  166. package/lib/math/vector3.js.map +0 -1
  167. package/lib/math/vector4.d.ts +0 -182
  168. package/lib/math/vector4.js +0 -302
  169. package/lib/math/vector4.js.map +0 -1
  170. package/lib/measurement/performance.d.ts +0 -13
  171. package/lib/measurement/performance.js +0 -19
  172. package/lib/measurement/performance.js.map +0 -1
package/lib/math/core.js DELETED
@@ -1,125 +0,0 @@
1
- /**
2
- * `PI` times 2.
3
- */
4
- export const TWO_PI = /* __PURE__ */ Math.PI * 2;
5
- /**
6
- * Converts the degrees to radians.
7
- * @param degrees - The degrees to convert to radians.
8
- * @returns The degrees in radians.
9
- */
10
- export const degreesToRadians = (degrees) => {
11
- return degrees * (Math.PI / 180);
12
- };
13
- /**
14
- * Convertrs the radians to degrees.
15
- * @param radians - The radians to convert to degrees.
16
- * @returns The radians as degrees.
17
- */
18
- export const radiansToDegrees = (radians) => {
19
- return radians * (180 / Math.PI);
20
- };
21
- /**
22
- * Calculates the sine for a given degree value.
23
- * @param value - The value in degrees to calculate the sine for.
24
- * @returns The sine for the given value.
25
- */
26
- export const sinDegrees = (value) => {
27
- return Math.sin(degreesToRadians(value));
28
- };
29
- /**
30
- * Calculates the cosine for a given degree value.
31
- * @param value - The value in degrees to calculate the cosine for.
32
- * @returns The cosine for the given value.
33
- */
34
- export const cosDegrees = (value) => {
35
- return Math.cos(degreesToRadians(value));
36
- };
37
- /**
38
- * Calculates the distance between two vectors.
39
- * @param x1 - The X component of the first vector.
40
- * @param y1 - The Y comoinent of the first vector.
41
- * @param x2 - The X component of the second vector.
42
- * @param y2 - The Y component of the second vector.
43
- * @returns The distance between the two vectors.
44
- */
45
- export const distance = (x1, y1, x2, y2) => {
46
- const distx = x2 - x1;
47
- const disty = y2 - y1;
48
- return Math.sqrt(distx * distx + disty * disty);
49
- };
50
- /**
51
- * Finds the integer square root of a positive number.
52
- * @param value - The value to calcuate the square root for.
53
- * @returns The square root for the given value.
54
- */
55
- export const isqrt = (value) => {
56
- if (0 === value) {
57
- return 0;
58
- } // Avoid zero divide
59
- let n = value / 2 + 1; // Initial estimate, never low
60
- let n1 = (n + value / n) / 2;
61
- while (n1 < n) {
62
- n = n1;
63
- n1 = (n + value / n) / 2;
64
- }
65
- return n;
66
- };
67
- /**
68
- * Checks whether a number is an integer.
69
- * @param value - The value to check.
70
- * @returns `true` when the value is an integer, `false` otherwise.
71
- */
72
- export const isInteger = (value) => {
73
- return Math.trunc(value) === value;
74
- };
75
- /**
76
- * Ensures a given value is within a given boundary.
77
- * @param input - The number to clamp.
78
- * @param floor - The lower bound.
79
- * @param ceil - The upper bound.
80
- * @returns The number clamped to the desired range.
81
- */
82
- export const clamp = (input, floor, ceil) => {
83
- return Math.max(floor, Math.min(input, ceil));
84
- };
85
- /**
86
- * Rounds a given number to the next highest value.
87
- * @param input - The number to round.
88
- * @param fractionDigits - The amount of digits to retain in the fraction.
89
- * @returns The rounded number.
90
- */
91
- export const ceilTo = (input, fractionDigits = 0) => {
92
- const scale = Math.pow(10, fractionDigits);
93
- return Math.floor(input * scale) / scale;
94
- };
95
- /**
96
- * Rounds a given number to the next lowest value.
97
- * @param input - The number to round.
98
- * @param fractionDigits - The amount of digits to retain in the fraction.
99
- * @returns The rounded number.
100
- */
101
- export const floorTo = (input, fractionDigits = 0) => {
102
- const scale = Math.pow(10, fractionDigits);
103
- return Math.floor(input * scale) / scale;
104
- };
105
- /**
106
- * Rounds a given number to the next closest value.
107
- * @param input - The number to round.
108
- * @param fractionDigits - The amount of digits to retain in the fraction.
109
- * @returns The rounded number.
110
- */
111
- export const roundTo = (input, fractionDigits = 0) => {
112
- const scale = Math.pow(10, fractionDigits);
113
- return Math.round(input * scale) / scale;
114
- };
115
- /**
116
- * Cuts off digits of a number.
117
- * @param input - The number to round.
118
- * @param fractionDigits - The amount of digits to retain in the fraction.
119
- * @returns The rounded number.
120
- */
121
- export const truncTo = (input, fractionDigits = 0) => {
122
- const scale = Math.pow(10, fractionDigits);
123
- return Math.trunc(input * scale) / scale;
124
- };
125
- //# sourceMappingURL=core.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../source/math/core.ts"],"names":[],"mappings":"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"}
@@ -1,204 +0,0 @@
1
- /**
2
- * Calculates an easing multiplier for: Quad In
3
- * @param position - The current position between start and end (from `0` to `1`)
4
- * @returns The easing multiplier for the position.
5
- */
6
- export declare const easeInQuad: (position: number) => number;
7
- /**
8
- * Calculates an easing multiplier for: Quad Out
9
- * @param position - The current position between start and end (from `0` to `1`)
10
- * @returns The easing multiplier for the position.
11
- */
12
- export declare const easeOutQuad: (position: number) => number;
13
- /**
14
- * Calculates an easing multiplier for: Quad In+Out
15
- * @param position - The current position between start and end (from `0` to `1`)
16
- * @returns The easing multiplier for the position.
17
- */
18
- export declare const easeInOutQuad: (position: number) => number;
19
- /**
20
- * Calculates an easing multiplier for: Cubic In
21
- * @param position - The current position between start and end (from `0` to `1`)
22
- * @returns The easing multiplier for the position.
23
- */
24
- export declare const easeInCubic: (position: number) => number;
25
- /**
26
- * Calculates an easing multiplier for: Cubic Out
27
- * @param position - The current position between start and end (from `0` to `1`)
28
- * @returns The easing multiplier for the position.
29
- */
30
- export declare const easeOutCubic: (position: number) => number;
31
- /**
32
- * Calculates an easing multiplier for: Cubic In+Out
33
- * @param position - The current position between start and end (from `0` to `1`)
34
- * @returns The easing multiplier for the position.
35
- */
36
- export declare const easeInOutCubic: (position: number) => number;
37
- /**
38
- * Calculates an easing multiplier for: Quart In
39
- * @param position - The current position between start and end (from `0` to `1`)
40
- * @returns The easing multiplier for the position.
41
- */
42
- export declare const easeInQuart: (position: number) => number;
43
- /**
44
- * Calculates an easing multiplier for: Quad Out
45
- * @param position - The current position between start and end (from `0` to `1`)
46
- * @returns The easing multiplier for the position.
47
- */
48
- export declare const easeOutQuart: (position: number) => number;
49
- /**
50
- * Calculates an easing multiplier for: Quart In+Out
51
- * @param position - The current position between start and end (from `0` to `1`)
52
- * @returns The easing multiplier for the position.
53
- */
54
- export declare const easeInOutQuart: (position: number) => number;
55
- /**
56
- * Calculates an easing multiplier for: Quint In
57
- * @param position - The current position between start and end (from `0` to `1`)
58
- * @returns The easing multiplier for the position.
59
- */
60
- export declare const easeInQuint: (position: number) => number;
61
- /**
62
- * Calculates an easing multiplier for: Quint Out
63
- * @param position - The current position between start and end (from `0` to `1`)
64
- * @returns The easing multiplier for the position.
65
- */
66
- export declare const easeOutQuint: (position: number) => number;
67
- /**
68
- * Calculates an easing multiplier for: Quint In+Out
69
- * @param position - The current position between start and end (from `0` to `1`)
70
- * @returns The easing multiplier for the position.
71
- */
72
- export declare const easeInOutQuint: (position: number) => number;
73
- /**
74
- * Calculates an easing multiplier for: Sine In
75
- * @param position - The current position between start and end (from `0` to `1`)
76
- * @returns The easing multiplier for the position.
77
- */
78
- export declare const easeInSine: (position: number) => number;
79
- /**
80
- * Calculates an easing multiplier for: Sine Out
81
- * @param position - The current position between start and end (from `0` to `1`)
82
- * @returns The easing multiplier for the position.
83
- */
84
- export declare const easeOutSine: (position: number) => number;
85
- /**
86
- * Calculates an easing multiplier for: Sine In+Out
87
- * @param position - The current position between start and end (from `0` to `1`)
88
- * @returns The easing multiplier for the position.
89
- */
90
- export declare const easeInOutSine: (position: number) => number;
91
- /**
92
- * Calculates an easing multiplier for: Expo In
93
- * @param position - The current position between start and end (from `0` to `1`)
94
- * @returns The easing multiplier for the position.
95
- */
96
- export declare const easeInExpo: (position: number) => number;
97
- /**
98
- * Calculates an easing multiplier for: Expo Out
99
- * @param position - The current position between start and end (from `0` to `1`)
100
- * @returns The easing multiplier for the position.
101
- */
102
- export declare const easeOutExpo: (position: number) => number;
103
- /**
104
- * Calculates an easing multiplier for: Expo In+Out
105
- * @param position - The current position between start and end (from `0` to `1`)
106
- * @returns The easing multiplier for the position.
107
- */
108
- export declare const easeInOutExpo: (position: number) => number;
109
- /**
110
- * Calculates an easing multiplier for: Circ In
111
- * @param position - The current position between start and end (from `0` to `1`)
112
- * @returns The easing multiplier for the position.
113
- */
114
- export declare const easeInCirc: (position: number) => number;
115
- /**
116
- * Calculates an easing multiplier for: Circ Out
117
- * @param position - The current position between start and end (from `0` to `1`)
118
- * @returns The easing multiplier for the position.
119
- */
120
- export declare const easeOutCirc: (position: number) => number;
121
- /**
122
- * Calculates an easing multiplier for: Circ In+Out
123
- * @param position - The current position between start and end (from `0` to `1`)
124
- * @returns The easing multiplier for the position.
125
- */
126
- export declare const easeInOutCirc: (position: number) => number;
127
- /**
128
- * Calculates an easing multiplier for: Bounce Out
129
- * @param position - The current position between start and end (from `0` to `1`)
130
- * @returns The easing multiplier for the position.
131
- */
132
- export declare const easeOutBounce: (position: number) => number;
133
- /**
134
- * Calculates an easing multiplier for: Back In
135
- * @param position - The current position between start and end (from `0` to `1`)
136
- * @returns The easing multiplier for the position.
137
- */
138
- export declare const easeInBack: (position: number) => number;
139
- /**
140
- * Calculates an easing multiplier for: Back Out
141
- * @param position - The current position between start and end (from `0` to `1`)
142
- * @returns The easing multiplier for the position.
143
- */
144
- export declare const easeOutBack: (position: number) => number;
145
- /**
146
- * Calculates an easing multiplier for: Back In+Out
147
- * @param position - The current position between start and end (from `0` to `1`)
148
- * @returns The easing multiplier for the position.
149
- */
150
- export declare const easeInOutBack: (position: number) => number;
151
- /**
152
- * Calculates an easing multiplier for: Elastic
153
- * @param position - The current position between start and end (from `0` to `1`)
154
- * @returns The easing multiplier for the position.
155
- */
156
- export declare const easeElastic: (position: number) => number;
157
- /**
158
- * Calculates an easing multiplier for: Swing In+Out
159
- * @param position - The current position between start and end (from `0` to `1`)
160
- * @returns The easing multiplier for the position.
161
- */
162
- export declare const swingInOut: (position: number) => number;
163
- /**
164
- * Calculates an easing multiplier for: Swing In
165
- * @param position - The current position between start and end (from `0` to `1`)
166
- * @returns The easing multiplier for the position.
167
- */
168
- export declare const easeSwingIn: (position: number) => number;
169
- /**
170
- * Calculates an easing multiplier for: Swing Out
171
- * @param position - The current position between start and end (from `0` to `1`)
172
- * @returns The easing multiplier for the position.
173
- */
174
- export declare const easeSwingOut: (position: number) => number;
175
- /**
176
- * Calculates an easing multiplier for: Bounce
177
- * @param position - The current position between start and end (from `0` to `1`)
178
- * @returns The easing multiplier for the position.
179
- */
180
- export declare const easeBounce: (position: number) => number;
181
- /**
182
- * Calculates an easing multiplier for: Bounce Past
183
- * @param position - The current position between start and end (from `0` to `1`)
184
- * @returns The easing multiplier for the position.
185
- */
186
- export declare const easeBouncePast: (position: number) => number;
187
- /**
188
- * Calculates an easing multiplier for: Simple In+Out
189
- * @param position - The current position between start and end (from `0` to `1`)
190
- * @returns The easing multiplier for the position.
191
- */
192
- export declare const easeFromTo: (position: number) => number;
193
- /**
194
- * Calculates an easing multiplier for: Simple In
195
- * @param position - The current position between start and end (from `0` to `1`)
196
- * @returns The easing multiplier for the position.
197
- */
198
- export declare const easeFrom: (position: number) => number;
199
- /**
200
- * Calculates an easing multiplier for: Simple Out
201
- * @param position - The current position between start and end (from `0` to `1`)
202
- * @returns The easing multiplier for the position.
203
- */
204
- export declare const easeTo: (position: number) => number;
@@ -1,332 +0,0 @@
1
- // http://robertpenner.com/easing_terms_of_use.html
2
- /**
3
- * Calculates an easing multiplier for: Quad In
4
- * @param position - The current position between start and end (from `0` to `1`)
5
- * @returns The easing multiplier for the position.
6
- */
7
- export const easeInQuad = (position) => {
8
- return Math.pow(position, 2);
9
- };
10
- /**
11
- * Calculates an easing multiplier for: Quad Out
12
- * @param position - The current position between start and end (from `0` to `1`)
13
- * @returns The easing multiplier for the position.
14
- */
15
- export const easeOutQuad = (position) => {
16
- return -(Math.pow(position - 1, 2) - 1);
17
- };
18
- /**
19
- * Calculates an easing multiplier for: Quad In+Out
20
- * @param position - The current position between start and end (from `0` to `1`)
21
- * @returns The easing multiplier for the position.
22
- */
23
- export const easeInOutQuad = (position) => {
24
- if ((position /= 0.5) < 1) {
25
- return 0.5 * Math.pow(position, 2);
26
- }
27
- return -0.5 * ((position -= 2) * position - 2);
28
- };
29
- /**
30
- * Calculates an easing multiplier for: Cubic In
31
- * @param position - The current position between start and end (from `0` to `1`)
32
- * @returns The easing multiplier for the position.
33
- */
34
- export const easeInCubic = (position) => {
35
- return Math.pow(position, 3);
36
- };
37
- /**
38
- * Calculates an easing multiplier for: Cubic Out
39
- * @param position - The current position between start and end (from `0` to `1`)
40
- * @returns The easing multiplier for the position.
41
- */
42
- export const easeOutCubic = (position) => {
43
- return Math.pow(position - 1, 3) + 1;
44
- };
45
- /**
46
- * Calculates an easing multiplier for: Cubic In+Out
47
- * @param position - The current position between start and end (from `0` to `1`)
48
- * @returns The easing multiplier for the position.
49
- */
50
- export const easeInOutCubic = (position) => {
51
- if ((position /= 0.5) < 1)
52
- return 0.5 * Math.pow(position, 3);
53
- return 0.5 * (Math.pow(position - 2, 3) + 2);
54
- };
55
- /**
56
- * Calculates an easing multiplier for: Quart In
57
- * @param position - The current position between start and end (from `0` to `1`)
58
- * @returns The easing multiplier for the position.
59
- */
60
- export const easeInQuart = (position) => {
61
- return Math.pow(position, 4);
62
- };
63
- /**
64
- * Calculates an easing multiplier for: Quad Out
65
- * @param position - The current position between start and end (from `0` to `1`)
66
- * @returns The easing multiplier for the position.
67
- */
68
- export const easeOutQuart = (position) => {
69
- return -(Math.pow(position - 1, 4) - 1);
70
- };
71
- /**
72
- * Calculates an easing multiplier for: Quart In+Out
73
- * @param position - The current position between start and end (from `0` to `1`)
74
- * @returns The easing multiplier for the position.
75
- */
76
- export const easeInOutQuart = (position) => {
77
- if ((position /= 0.5) < 1)
78
- return 0.5 * Math.pow(position, 4);
79
- return -0.5 * ((position -= 2) * Math.pow(position, 3) - 2);
80
- };
81
- /**
82
- * Calculates an easing multiplier for: Quint In
83
- * @param position - The current position between start and end (from `0` to `1`)
84
- * @returns The easing multiplier for the position.
85
- */
86
- export const easeInQuint = (position) => {
87
- return Math.pow(position, 5);
88
- };
89
- /**
90
- * Calculates an easing multiplier for: Quint Out
91
- * @param position - The current position between start and end (from `0` to `1`)
92
- * @returns The easing multiplier for the position.
93
- */
94
- export const easeOutQuint = (position) => {
95
- return Math.pow(position - 1, 5) + 1;
96
- };
97
- /**
98
- * Calculates an easing multiplier for: Quint In+Out
99
- * @param position - The current position between start and end (from `0` to `1`)
100
- * @returns The easing multiplier for the position.
101
- */
102
- export const easeInOutQuint = (position) => {
103
- if ((position /= 0.5) < 1)
104
- return 0.5 * Math.pow(position, 5);
105
- return 0.5 * (Math.pow(position - 2, 5) + 2);
106
- };
107
- /**
108
- * Calculates an easing multiplier for: Sine In
109
- * @param position - The current position between start and end (from `0` to `1`)
110
- * @returns The easing multiplier for the position.
111
- */
112
- export const easeInSine = (position) => {
113
- return -Math.cos(position * (Math.PI / 2)) + 1;
114
- };
115
- /**
116
- * Calculates an easing multiplier for: Sine Out
117
- * @param position - The current position between start and end (from `0` to `1`)
118
- * @returns The easing multiplier for the position.
119
- */
120
- export const easeOutSine = (position) => {
121
- return Math.sin(position * (Math.PI / 2));
122
- };
123
- /**
124
- * Calculates an easing multiplier for: Sine In+Out
125
- * @param position - The current position between start and end (from `0` to `1`)
126
- * @returns The easing multiplier for the position.
127
- */
128
- export const easeInOutSine = (position) => {
129
- return -0.5 * (Math.cos(Math.PI * position) - 1);
130
- };
131
- /**
132
- * Calculates an easing multiplier for: Expo In
133
- * @param position - The current position between start and end (from `0` to `1`)
134
- * @returns The easing multiplier for the position.
135
- */
136
- export const easeInExpo = (position) => {
137
- return position === 0 ? 0 : Math.pow(2, 10 * (position - 1));
138
- };
139
- /**
140
- * Calculates an easing multiplier for: Expo Out
141
- * @param position - The current position between start and end (from `0` to `1`)
142
- * @returns The easing multiplier for the position.
143
- */
144
- export const easeOutExpo = (position) => {
145
- return position === 1 ? 1 : -Math.pow(2, -10 * position) + 1;
146
- };
147
- /**
148
- * Calculates an easing multiplier for: Expo In+Out
149
- * @param position - The current position between start and end (from `0` to `1`)
150
- * @returns The easing multiplier for the position.
151
- */
152
- export const easeInOutExpo = (position) => {
153
- if (position === 0)
154
- return 0;
155
- if (position === 1)
156
- return 1;
157
- if ((position /= 0.5) < 1)
158
- return 0.5 * Math.pow(2, 10 * (position - 1));
159
- return 0.5 * (-Math.pow(2, -10 * --position) + 2);
160
- };
161
- /**
162
- * Calculates an easing multiplier for: Circ In
163
- * @param position - The current position between start and end (from `0` to `1`)
164
- * @returns The easing multiplier for the position.
165
- */
166
- export const easeInCirc = (position) => {
167
- return -(Math.sqrt(1 - position * position) - 1);
168
- };
169
- /**
170
- * Calculates an easing multiplier for: Circ Out
171
- * @param position - The current position between start and end (from `0` to `1`)
172
- * @returns The easing multiplier for the position.
173
- */
174
- export const easeOutCirc = (position) => {
175
- return Math.sqrt(1 - Math.pow(position - 1, 2));
176
- };
177
- /**
178
- * Calculates an easing multiplier for: Circ In+Out
179
- * @param position - The current position between start and end (from `0` to `1`)
180
- * @returns The easing multiplier for the position.
181
- */
182
- export const easeInOutCirc = (position) => {
183
- if ((position /= 0.5) < 1)
184
- return -0.5 * (Math.sqrt(1 - position * position) - 1);
185
- return 0.5 * (Math.sqrt(1 - (position -= 2) * position) + 1);
186
- };
187
- /**
188
- * Calculates an easing multiplier for: Bounce Out
189
- * @param position - The current position between start and end (from `0` to `1`)
190
- * @returns The easing multiplier for the position.
191
- */
192
- export const easeOutBounce = (position) => {
193
- if (position < 1 / 2.75) {
194
- return 7.5625 * position * position;
195
- }
196
- else if (position < 2 / 2.75) {
197
- return 7.5625 * (position -= 1.5 / 2.75) * position + 0.75;
198
- }
199
- else if (position < 2.5 / 2.75) {
200
- return 7.5625 * (position -= 2.25 / 2.75) * position + 0.9375;
201
- }
202
- return 7.5625 * (position -= 2.625 / 2.75) * position + 0.984375;
203
- };
204
- /**
205
- * Calculates an easing multiplier for: Back In
206
- * @param position - The current position between start and end (from `0` to `1`)
207
- * @returns The easing multiplier for the position.
208
- */
209
- export const easeInBack = (position) => {
210
- const s = 1.70158;
211
- return position * position * ((s + 1) * position - s);
212
- };
213
- /**
214
- * Calculates an easing multiplier for: Back Out
215
- * @param position - The current position between start and end (from `0` to `1`)
216
- * @returns The easing multiplier for the position.
217
- */
218
- export const easeOutBack = (position) => {
219
- const s = 1.70158;
220
- return (position = position - 1) * position * ((s + 1) * position + s) + 1;
221
- };
222
- /**
223
- * Calculates an easing multiplier for: Back In+Out
224
- * @param position - The current position between start and end (from `0` to `1`)
225
- * @returns The easing multiplier for the position.
226
- */
227
- export const easeInOutBack = (position) => {
228
- let s = 1.70158;
229
- if ((position /= 0.5) < 1) {
230
- return 0.5 * (position * position * (((s *= 1.525) + 1) * position - s));
231
- }
232
- return 0.5 * ((position -= 2) * position * (((s *= 1.525) + 1) * position + s) + 2);
233
- };
234
- /**
235
- * Calculates an easing multiplier for: Elastic
236
- * @param position - The current position between start and end (from `0` to `1`)
237
- * @returns The easing multiplier for the position.
238
- */
239
- export const easeElastic = (position) => {
240
- return -1 * Math.pow(4, -8 * position) * Math.sin(((position * 6 - 1) * (2 * Math.PI)) / 2) + 1;
241
- };
242
- /**
243
- * Calculates an easing multiplier for: Swing In+Out
244
- * @param position - The current position between start and end (from `0` to `1`)
245
- * @returns The easing multiplier for the position.
246
- */
247
- export const swingInOut = (position) => {
248
- let s = 1.70158;
249
- return (position /= 0.5) < 1
250
- ? 0.5 * (position * position * (((s *= 1.525) + 1) * position - s))
251
- : 0.5 * ((position -= 2) * position * (((s *= 1.525) + 1) * position + s) + 2);
252
- };
253
- /**
254
- * Calculates an easing multiplier for: Swing In
255
- * @param position - The current position between start and end (from `0` to `1`)
256
- * @returns The easing multiplier for the position.
257
- */
258
- export const easeSwingIn = (position) => {
259
- const s = 1.70158;
260
- return position * position * ((s + 1) * position - s);
261
- };
262
- /**
263
- * Calculates an easing multiplier for: Swing Out
264
- * @param position - The current position between start and end (from `0` to `1`)
265
- * @returns The easing multiplier for the position.
266
- */
267
- export const easeSwingOut = (position) => {
268
- const s = 1.70158;
269
- return (position -= 1) * position * ((s + 1) * position + s) + 1;
270
- };
271
- /**
272
- * Calculates an easing multiplier for: Bounce
273
- * @param position - The current position between start and end (from `0` to `1`)
274
- * @returns The easing multiplier for the position.
275
- */
276
- export const easeBounce = (position) => {
277
- if (position < 1 / 2.75) {
278
- return 7.5625 * position * position;
279
- }
280
- else if (position < 2 / 2.75) {
281
- return 7.5625 * (position -= 1.5 / 2.75) * position + 0.75;
282
- }
283
- else if (position < 2.5 / 2.75) {
284
- return 7.5625 * (position -= 2.25 / 2.75) * position + 0.9375;
285
- }
286
- return 7.5625 * (position -= 2.625 / 2.75) * position + 0.984375;
287
- };
288
- /**
289
- * Calculates an easing multiplier for: Bounce Past
290
- * @param position - The current position between start and end (from `0` to `1`)
291
- * @returns The easing multiplier for the position.
292
- */
293
- export const easeBouncePast = (position) => {
294
- if (position < 1 / 2.75) {
295
- return 7.5625 * position * position;
296
- }
297
- else if (position < 2 / 2.75) {
298
- return 2 - (7.5625 * (position -= 1.5 / 2.75) * position + 0.75);
299
- }
300
- else if (position < 2.5 / 2.75) {
301
- return 2 - (7.5625 * (position -= 2.25 / 2.75) * position + 0.9375);
302
- }
303
- return 2 - (7.5625 * (position -= 2.625 / 2.75) * position + 0.984375);
304
- };
305
- /**
306
- * Calculates an easing multiplier for: Simple In+Out
307
- * @param position - The current position between start and end (from `0` to `1`)
308
- * @returns The easing multiplier for the position.
309
- */
310
- export const easeFromTo = (position) => {
311
- if ((position /= 0.5) < 1) {
312
- return 0.5 * Math.pow(position, 4);
313
- }
314
- return -0.5 * ((position -= 2) * Math.pow(position, 3) - 2);
315
- };
316
- /**
317
- * Calculates an easing multiplier for: Simple In
318
- * @param position - The current position between start and end (from `0` to `1`)
319
- * @returns The easing multiplier for the position.
320
- */
321
- export const easeFrom = (position) => {
322
- return Math.pow(position, 4);
323
- };
324
- /**
325
- * Calculates an easing multiplier for: Simple Out
326
- * @param position - The current position between start and end (from `0` to `1`)
327
- * @returns The easing multiplier for the position.
328
- */
329
- export const easeTo = (position) => {
330
- return Math.pow(position, 0.25);
331
- };
332
- //# sourceMappingURL=easing.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"easing.js","sourceRoot":"","sources":["../../source/math/easing.ts"],"names":[],"mappings":"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"}