Skip to content

Commit 0a0b289

Browse files
committed
feat(vector): adding jsdoc types to factory functions
1 parent 3bdb476 commit 0a0b289

File tree

4 files changed

+44
-0
lines changed

4 files changed

+44
-0
lines changed

src/color.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,8 +160,22 @@ export function calc(alg) {
160160

161161
const colorFactory = cachedFunction((x, y, z, w) => new Color(x, y, z, w));
162162

163+
/**
164+
* @param {number | () => number} x
165+
* @param {number} [y]
166+
* @param {number} [z]
167+
* @param {number} [w]
168+
* @returns {Color & number}
169+
*/
163170
export const color = (x, y, z, w) => colorFactory(x, y, z, w);
164171

165172
const icolorFactory = cachedFunction((x, y, z, w) => new IColor(x, y, z, w));
166173

174+
/**
175+
* @param {number | () => number} x
176+
* @param {number} [y]
177+
* @param {number} [z]
178+
* @param {number} [w]
179+
* @returns {IColor & number}
180+
*/
167181
export const icolor = (x, y, z, w) => icolorFactory(x, y, z, w);

src/degree.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,18 @@ export class IDegree extends ADegree {
4848

4949
const ZERO = new IDegree(0);
5050

51+
/**
52+
* @param {number | ADegree} angle
53+
* @returns {Degree & number}
54+
*/
5155
export function degree(angle) {
5256
return new Degree(angle);
5357
}
5458

59+
/**
60+
* @param {number | ADegree} angle
61+
* @returns {IDegree & number}
62+
*/
5563
export function idegree(angle) {
5664
if (angle instanceof IDegree) {
5765
return angle;

src/point.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,10 +207,20 @@ export function calc(alg) {
207207

208208
const pointFactory = cachedFunction((x, y) => new Point(x, y));
209209

210+
/**
211+
* @param {number | () => number} x
212+
* @param {number} [y]
213+
* @returns {Point & number}
214+
*/
210215
export const point = (x, y) => pointFactory(x, y);
211216

212217
const ipointFactory = cachedFunction((x, y) => new IPoint(x, y));
213218

219+
/**
220+
* @param {number | () => number} x
221+
* @param {number} [y]
222+
* @returns {IPoint & number}
223+
*/
214224
export const ipoint = (x, y) => ipointFactory(x, y);
215225

216226
export const ZERO = ipoint(0, 0);

src/vector.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -293,10 +293,22 @@ export function calc(alg) {
293293

294294
const vectorFactory = cachedFunction((x, y, z) => new Vector(x, y, z));
295295

296+
/**
297+
* @param {number | () => number} x
298+
* @param {number} [y]
299+
* @param {number} [z]
300+
* @returns {Vector & number}
301+
*/
296302
export const vector = (x, y, z) => vectorFactory(x, y, z);
297303

298304
const victorFactory = cachedFunction((x, y, z) => new Victor(x, y, z));
299305

306+
/**
307+
* @param {number | () => number} x
308+
* @param {number} [y]
309+
* @param {number} [z]
310+
* @returns {Victor & number}
311+
*/
300312
export const victor = (x, y, z) => victorFactory(x, y, z);
301313

302314
export const ZERO = victor(0, 0, 0);

0 commit comments

Comments
 (0)