@minecraft/math 1.3.5 → 1.4.1

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../src/general/clamp.ts", "../src/vector3/coreHelpers.ts", "../src/vector3/vectorWrapper.ts", "../src/vector3/index.ts", "../src/general/index.ts", "../src/index.ts"],
4
- "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Clamps the passed in number to the passed in min and max values.\n *\n * @public\n */\nexport function clampNumber(val: number, min: number, max: number): number {\n return Math.min(Math.max(val, min), max);\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { Vector2, Vector3 } from '@minecraft/server';\nimport { clampNumber } from '../general/clamp';\n\n/**\n * Utilities operating on Vector3 objects. All methods are static and do not modify the input objects.\n *\n * @public\n */\nexport class Vector3Utils {\n /**\n * equals\n *\n * Check the equality of two vectors\n */\n static equals(v1: Vector3, v2: Vector3): boolean {\n return v1.x === v2.x && v1.y === v2.y && v1.z === v2.z;\n }\n\n /**\n * add\n *\n * Add two vectors to produce a new vector\n */\n static add(v1: Vector3, v2: Vector3): Vector3 {\n return { x: v1.x + v2.x, y: v1.y + v2.y, z: v1.z + v2.z };\n }\n\n /**\n * subtract\n *\n * Subtract two vectors to produce a new vector (v1-v2)\n */\n static subtract(v1: Vector3, v2: Vector3): Vector3 {\n return { x: v1.x - v2.x, y: v1.y - v2.y, z: v1.z - v2.z };\n }\n\n /** scale\n *\n * Multiple all entries in a vector by a single scalar value producing a new vector\n */\n static scale(v1: Vector3, scale: number): Vector3 {\n return { x: v1.x * scale, y: v1.y * scale, z: v1.z * scale };\n }\n\n /**\n * dot\n *\n * Calculate the dot product of two vectors\n */\n static dot(a: Vector3, b: Vector3): number {\n return a.x * b.x + a.y * b.y + a.z * b.z;\n }\n\n /**\n * cross\n *\n * Calculate the cross product of two vectors. Returns a new vector.\n */\n static cross(a: Vector3, b: Vector3): Vector3 {\n return {\n x: a.y * b.z - a.z * b.y,\n y: a.z * b.x - a.x * b.z,\n z: a.x * b.y - a.y * b.x,\n };\n }\n\n /**\n * magnitude\n *\n * The magnitude of a vector\n */\n static magnitude(v: Vector3): number {\n return Math.sqrt(v.x ** 2 + v.y ** 2 + v.z ** 2);\n }\n\n /**\n * distance\n *\n * Calculate the distance between two vectors\n */\n static distance(a: Vector3, b: Vector3): number {\n return Vector3Utils.magnitude(Vector3Utils.subtract(a, b));\n }\n\n /**\n * normalize\n *\n * Takes a vector 3 and normalizes it to a unit vector\n */\n static normalize(v: Vector3): Vector3 {\n const mag = Vector3Utils.magnitude(v);\n return { x: v.x / mag, y: v.y / mag, z: v.z / mag };\n }\n\n /**\n * floor\n *\n * Floor the components of a vector to produce a new vector\n */\n static floor(v: Vector3): Vector3 {\n return { x: Math.floor(v.x), y: Math.floor(v.y), z: Math.floor(v.z) };\n }\n\n /**\n * toString\n *\n * Create a string representation of a vector3\n */\n static toString(v: Vector3, options?: { decimals?: number; delimiter?: string }): string {\n const decimals = options?.decimals ?? 2;\n const str: string[] = [v.x.toFixed(decimals), v.y.toFixed(decimals), v.z.toFixed(decimals)];\n return str.join(options?.delimiter ?? ', ');\n }\n\n /**\n * clamp\n *\n * Clamps the components of a vector to limits to produce a new vector\n */\n static clamp(\n v: Vector3,\n limits?: {\n min?: Partial<Vector3>;\n max?: Partial<Vector3>;\n },\n ): Vector3 {\n return {\n x: clampNumber(v.x, limits?.min?.x ?? Number.MIN_SAFE_INTEGER, limits?.max?.x ?? Number.MAX_SAFE_INTEGER),\n y: clampNumber(v.y, limits?.min?.y ?? Number.MIN_SAFE_INTEGER, limits?.max?.y ?? Number.MAX_SAFE_INTEGER),\n z: clampNumber(v.z, limits?.min?.z ?? Number.MIN_SAFE_INTEGER, limits?.max?.z ?? Number.MAX_SAFE_INTEGER),\n };\n }\n\n /**\n * lerp\n *\n * Constructs a new vector using linear interpolation on each component from two vectors.\n */\n static lerp(a: Vector3, b: Vector3, t: number): Vector3 {\n return {\n x: a.x + (b.x - a.x) * t,\n y: a.y + (b.y - a.y) * t,\n z: a.z + (b.z - a.z) * t,\n };\n }\n\n /**\n * slerp\n *\n * Constructs a new vector using spherical linear interpolation on each component from two vectors.\n */\n static slerp(a: Vector3, b: Vector3, t: number): Vector3 {\n const theta = Math.acos(Vector3Utils.dot(a, b));\n\t\tconst sinTheta = Math.sin(theta);\n\t\tconst ta = Math.sin((1.0 - t) * theta) / sinTheta;\n\t\tconst tb = Math.sin(t * theta) / sinTheta;\n\t\treturn Vector3Utils.add(Vector3Utils.scale(a, ta), Vector3Utils.scale(b, tb));\n }\n}\n\n/**\n * Utilities operating on Vector2 objects. All methods are static and do not modify the input objects.\n *\n * @public\n */\nexport class Vector2Utils {\n /**\n * toString\n *\n * Create a string representation of a vector2\n */\n static toString(v: Vector2, options?: { decimals?: number; delimiter?: string }): string {\n const decimals = options?.decimals ?? 2;\n const str: string[] = [v.x.toFixed(decimals), v.y.toFixed(decimals)];\n return str.join(options?.delimiter ?? ', ');\n }\n}\n\n/**\n * up\n *\n * A unit vector representing the world UP direction (0,1,0)\n *\n * @public\n */\nexport const VECTOR3_UP: Vector3 = { x: 0, y: 1, z: 0 };\n/**\n * down\n *\n * A unit vector representing the world DOWN direction (0,-1,0)\n *\n * @public\n */\nexport const VECTOR3_DOWN: Vector3 = { x: 0, y: -1, z: 0 };\n/**\n * left\n *\n * A unit vector representing the world LEFT direction (-1,0,0)\n *\n * @public\n */\nexport const VECTOR3_LEFT: Vector3 = { x: -1, y: 0, z: 0 };\n/**\n * right\n *\n * A unit vector representing the world RIGHT direction (1,0,0)\n *\n * @public\n */\nexport const VECTOR3_RIGHT: Vector3 = { x: 1, y: 0, z: 0 };\n/**\n * forward\n *\n * A unit vector representing the world FORWARD direction (0,0,1)\n *\n * @public\n */\nexport const VECTOR3_FORWARD: Vector3 = { x: 0, y: 0, z: 1 };\n/**\n * back\n *\n * A unit vector representing the world BACK direction (0,0,-1)\n *\n * @public\n */\nexport const VECTOR3_BACK: Vector3 = { x: 0, y: 0, z: -1 };\n/**\n * one\n *\n * A unit vector representing the value of 1 in all directions (1,1,1)\n *\n * @public\n */\nexport const VECTOR3_ONE: Vector3 = { x: 1, y: 1, z: 1 };\n/**\n * zero\n *\n * A unit vector representing the value of 0 in all directions (0,0,0)\n *\n * @public\n */\nexport const VECTOR3_ZERO: Vector3 = { x: 0, y: 0, z: 0 };\n/**\n * west\n *\n * A unit vector representing the world WEST direction (-1,0,0)\n * (same as LEFT)\n *\n * @public\n */\nexport const VECTOR3_WEST: Vector3 = { x: -1, y: 0, z: 0 };\n/**\n * east\n *\n * A unit vector representing the world EAST direction (-1,0,0)\n * (same as RIGHT)\n *\n * @public\n */\nexport const VECTOR3_EAST: Vector3 = { x: 1, y: 0, z: 0 };\n/**\n * north\n *\n * A unit vector representing the world NORTH direction (-1,0,0)\n * (same as FORWARD)\n *\n * @public\n */\nexport const VECTOR3_NORTH: Vector3 = { x: 0, y: 0, z: 1 };\n/**\n * south\n *\n * A unit vector representing the world SOUTH direction (-1,0,0)\n * (same as BACK)\n *\n * @public\n */\nexport const VECTOR3_SOUTH: Vector3 = { x: 0, y: 0, z: -1 };\n\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { Vector2, Vector3 } from '@minecraft/server';\nimport { Vector2Utils, Vector3Utils } from './coreHelpers';\n\n/**\n * Vector3 wrapper class which can be used as a Vector3 for APIs on \\@minecraft/server which require a Vector,\n * but also contain additional helper methods. This is an alternative to using the core Vector 3 utility\n * methods directly, for those who prefer a more object-oriented approach. This version of the class is mutable\n * and changes state inline.\n *\n * For an immutable version of the build, use ImmutableVector3Builder.\n *\n * @public\n */\nexport class Vector3Builder implements Vector3 {\n x: number;\n y: number;\n z: number;\n\n constructor(vec: Vector3, arg?: never, arg2?: never);\n constructor(x: number, y: number, z: number);\n constructor(first: number | Vector3, y?: number, z?: number) {\n if (typeof first === 'object') {\n this.x = first.x;\n this.y = first.y;\n this.z = first.z;\n } else {\n this.x = first;\n this.y = y ?? 0;\n this.z = z ?? 0;\n }\n }\n\n /**\n * Assigns the values of the passed in vector to this vector. Returns itself.\n */\n assign(vec: Vector3): this {\n this.x = vec.x;\n this.y = vec.y;\n this.z = vec.z;\n return this;\n }\n\n /**\n * equals\n *\n * Check the equality of two vectors\n */\n equals(v: Vector3): boolean {\n return Vector3Utils.equals(this, v);\n }\n\n /**\n * add\n *\n * Adds the vector v to this, returning itself.\n */\n add(v: Vector3): this {\n return this.assign(Vector3Utils.add(this, v));\n }\n\n /**\n * subtract\n *\n * Subtracts the vector v from this, returning itself.\n */\n subtract(v: Vector3): this {\n return this.assign(Vector3Utils.subtract(this, v));\n }\n\n /** scale\n *\n * Scales this by the passed in value, returning itself.\n */\n scale(val: number): this {\n return this.assign(Vector3Utils.scale(this, val));\n }\n\n /**\n * dot\n *\n * Computes the dot product of this and the passed in vector.\n */\n dot(vec: Vector3): number {\n return Vector3Utils.dot(this, vec);\n }\n\n /**\n * cross\n *\n * Computes the cross product of this and the passed in vector, returning itself.\n */\n cross(vec: Vector3): this {\n return this.assign(Vector3Utils.cross(this, vec));\n }\n\n /**\n * magnitude\n *\n * The magnitude of the vector\n */\n magnitude(): number {\n return Vector3Utils.magnitude(this);\n }\n\n /**\n * distance\n *\n * Calculate the distance between two vectors\n */\n distance(vec: Vector3): number {\n return Vector3Utils.distance(this, vec);\n }\n\n /**\n * normalize\n *\n * Normalizes this vector, returning itself.\n */\n normalize(): this {\n return this.assign(Vector3Utils.normalize(this));\n }\n\n /**\n * floor\n *\n * Floor the components of a vector to produce a new vector\n */\n floor(): this {\n return this.assign(Vector3Utils.floor(this));\n }\n\n /**\n * toString\n *\n * Create a string representation of a vector\n */\n toString(options?: { decimals?: number; delimiter?: string }): string {\n return Vector3Utils.toString(this, options);\n }\n\n /**\n * clamp\n *\n * Clamps the components of a vector to limits to produce a new vector\n */\n clamp(limits: { min?: Partial<Vector3>; max?: Partial<Vector3> }): this {\n return this.assign(Vector3Utils.clamp(this, limits));\n }\n\n \n /**\n * lerp\n *\n * Constructs a new vector using linear interpolation on each component from two vectors.\n */\n lerp(vec: Vector3, t: number): this {\n return this.assign(Vector3Utils.lerp(this, vec, t));\n }\n\n /**\n * slerp\n *\n * Constructs a new vector using spherical linear interpolation on each component from two vectors.\n */\n slerp(vec: Vector3, t: number): this { \n return this.assign(Vector3Utils.slerp(this, vec, t));\n }\n}\n\n/**\n * Vector2 wrapper class which can be used as a Vector2 for APIs on \\@minecraft/server which require a Vector2.\n * @public\n */\nexport class Vector2Builder implements Vector2 {\n x: number;\n y: number;\n\n constructor(vec: Vector2, arg?: never);\n constructor(x: number, y: number);\n constructor(first: number | Vector2, y?: number) {\n if (typeof first === 'object') {\n this.x = first.x;\n this.y = first.y;\n } else {\n this.x = first;\n this.y = y ?? 0;\n }\n }\n\n toString(options?: { decimals?: number; delimiter?: string }): string {\n return Vector2Utils.toString(this, options);\n }\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport * from './coreHelpers';\nexport * from './vectorWrapper';\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport * from './clamp';\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport * from './vector3';\nexport * from './general';\n"],
5
- "mappings": "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",
3
+ "sources": ["../src/general/clamp.ts", "../src/vector3/coreHelpers.ts", "../src/vector3/vectorWrapper.ts"],
4
+ "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Clamps the passed in number to the passed in min and max values.\n *\n * @public\n */\nexport function clampNumber(val: number, min: number, max: number): number {\n return Math.min(Math.max(val, min), max);\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { Vector2, Vector3 } from '@minecraft/server';\nimport { clampNumber } from '../general/clamp';\n\n/**\n * Utilities operating on Vector3 objects. All methods are static and do not modify the input objects.\n *\n * @public\n */\nexport class Vector3Utils {\n /**\n * equals\n *\n * Check the equality of two vectors\n */\n static equals(v1: Vector3, v2: Vector3): boolean {\n return v1.x === v2.x && v1.y === v2.y && v1.z === v2.z;\n }\n\n /**\n * add\n *\n * Add two vectors to produce a new vector\n */\n static add(v1: Vector3, v2: Vector3): Vector3 {\n return { x: v1.x + v2.x, y: v1.y + v2.y, z: v1.z + v2.z };\n }\n\n /**\n * subtract\n *\n * Subtract two vectors to produce a new vector (v1-v2)\n */\n static subtract(v1: Vector3, v2: Vector3): Vector3 {\n return { x: v1.x - v2.x, y: v1.y - v2.y, z: v1.z - v2.z };\n }\n\n /** scale\n *\n * Multiple all entries in a vector by a single scalar value producing a new vector\n */\n static scale(v1: Vector3, scale: number): Vector3 {\n return { x: v1.x * scale, y: v1.y * scale, z: v1.z * scale };\n }\n\n /**\n * dot\n *\n * Calculate the dot product of two vectors\n */\n static dot(a: Vector3, b: Vector3): number {\n return a.x * b.x + a.y * b.y + a.z * b.z;\n }\n\n /**\n * cross\n *\n * Calculate the cross product of two vectors. Returns a new vector.\n */\n static cross(a: Vector3, b: Vector3): Vector3 {\n return {\n x: a.y * b.z - a.z * b.y,\n y: a.z * b.x - a.x * b.z,\n z: a.x * b.y - a.y * b.x,\n };\n }\n\n /**\n * magnitude\n *\n * The magnitude of a vector\n */\n static magnitude(v: Vector3): number {\n return Math.sqrt(v.x ** 2 + v.y ** 2 + v.z ** 2);\n }\n\n /**\n * distance\n *\n * Calculate the distance between two vectors\n */\n static distance(a: Vector3, b: Vector3): number {\n return Vector3Utils.magnitude(Vector3Utils.subtract(a, b));\n }\n\n /**\n * normalize\n *\n * Takes a vector 3 and normalizes it to a unit vector\n */\n static normalize(v: Vector3): Vector3 {\n const mag = Vector3Utils.magnitude(v);\n return { x: v.x / mag, y: v.y / mag, z: v.z / mag };\n }\n\n /**\n * floor\n *\n * Floor the components of a vector to produce a new vector\n */\n static floor(v: Vector3): Vector3 {\n return { x: Math.floor(v.x), y: Math.floor(v.y), z: Math.floor(v.z) };\n }\n\n /**\n * toString\n *\n * Create a string representation of a vector3\n */\n static toString(v: Vector3, options?: { decimals?: number; delimiter?: string }): string {\n const decimals = options?.decimals ?? 2;\n const str: string[] = [v.x.toFixed(decimals), v.y.toFixed(decimals), v.z.toFixed(decimals)];\n return str.join(options?.delimiter ?? ', ');\n }\n\n /**\n * clamp\n *\n * Clamps the components of a vector to limits to produce a new vector\n */\n static clamp(\n v: Vector3,\n limits?: {\n min?: Partial<Vector3>;\n max?: Partial<Vector3>;\n }\n ): Vector3 {\n return {\n x: clampNumber(v.x, limits?.min?.x ?? Number.MIN_SAFE_INTEGER, limits?.max?.x ?? Number.MAX_SAFE_INTEGER),\n y: clampNumber(v.y, limits?.min?.y ?? Number.MIN_SAFE_INTEGER, limits?.max?.y ?? Number.MAX_SAFE_INTEGER),\n z: clampNumber(v.z, limits?.min?.z ?? Number.MIN_SAFE_INTEGER, limits?.max?.z ?? Number.MAX_SAFE_INTEGER),\n };\n }\n\n /**\n * lerp\n *\n * Constructs a new vector using linear interpolation on each component from two vectors.\n */\n static lerp(a: Vector3, b: Vector3, t: number): Vector3 {\n return {\n x: a.x + (b.x - a.x) * t,\n y: a.y + (b.y - a.y) * t,\n z: a.z + (b.z - a.z) * t,\n };\n }\n\n /**\n * slerp\n *\n * Constructs a new vector using spherical linear interpolation on each component from two vectors.\n */\n static slerp(a: Vector3, b: Vector3, t: number): Vector3 {\n const theta = Math.acos(Vector3Utils.dot(a, b));\n const sinTheta = Math.sin(theta);\n const ta = Math.sin((1.0 - t) * theta) / sinTheta;\n const tb = Math.sin(t * theta) / sinTheta;\n return Vector3Utils.add(Vector3Utils.scale(a, ta), Vector3Utils.scale(b, tb));\n }\n}\n\n/**\n * Utilities operating on Vector2 objects. All methods are static and do not modify the input objects.\n *\n * @public\n */\nexport class Vector2Utils {\n /**\n * toString\n *\n * Create a string representation of a vector2\n */\n static toString(v: Vector2, options?: { decimals?: number; delimiter?: string }): string {\n const decimals = options?.decimals ?? 2;\n const str: string[] = [v.x.toFixed(decimals), v.y.toFixed(decimals)];\n return str.join(options?.delimiter ?? ', ');\n }\n}\n\n/**\n * up\n *\n * A unit vector representing the world UP direction (0,1,0)\n *\n * @public\n */\nexport const VECTOR3_UP: Vector3 = { x: 0, y: 1, z: 0 };\n/**\n * down\n *\n * A unit vector representing the world DOWN direction (0,-1,0)\n *\n * @public\n */\nexport const VECTOR3_DOWN: Vector3 = { x: 0, y: -1, z: 0 };\n/**\n * left\n *\n * A unit vector representing the world LEFT direction (-1,0,0)\n *\n * @public\n */\nexport const VECTOR3_LEFT: Vector3 = { x: -1, y: 0, z: 0 };\n/**\n * right\n *\n * A unit vector representing the world RIGHT direction (1,0,0)\n *\n * @public\n */\nexport const VECTOR3_RIGHT: Vector3 = { x: 1, y: 0, z: 0 };\n/**\n * forward\n *\n * A unit vector representing the world FORWARD direction (0,0,1)\n *\n * @public\n */\nexport const VECTOR3_FORWARD: Vector3 = { x: 0, y: 0, z: 1 };\n/**\n * back\n *\n * A unit vector representing the world BACK direction (0,0,-1)\n *\n * @public\n */\nexport const VECTOR3_BACK: Vector3 = { x: 0, y: 0, z: -1 };\n/**\n * one\n *\n * A unit vector representing the value of 1 in all directions (1,1,1)\n *\n * @public\n */\nexport const VECTOR3_ONE: Vector3 = { x: 1, y: 1, z: 1 };\n/**\n * zero\n *\n * A unit vector representing the value of 0 in all directions (0,0,0)\n *\n * @public\n */\nexport const VECTOR3_ZERO: Vector3 = { x: 0, y: 0, z: 0 };\n/**\n * west\n *\n * A unit vector representing the world WEST direction (-1,0,0)\n * (same as LEFT)\n *\n * @public\n */\nexport const VECTOR3_WEST: Vector3 = { x: -1, y: 0, z: 0 };\n/**\n * east\n *\n * A unit vector representing the world EAST direction (-1,0,0)\n * (same as RIGHT)\n *\n * @public\n */\nexport const VECTOR3_EAST: Vector3 = { x: 1, y: 0, z: 0 };\n/**\n * north\n *\n * A unit vector representing the world NORTH direction (-1,0,0)\n * (same as FORWARD)\n *\n * @public\n */\nexport const VECTOR3_NORTH: Vector3 = { x: 0, y: 0, z: 1 };\n/**\n * south\n *\n * A unit vector representing the world SOUTH direction (-1,0,0)\n * (same as BACK)\n *\n * @public\n */\nexport const VECTOR3_SOUTH: Vector3 = { x: 0, y: 0, z: -1 };\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { Vector2, Vector3 } from '@minecraft/server';\nimport { Vector2Utils, Vector3Utils } from './coreHelpers';\n\n/**\n * Vector3 wrapper class which can be used as a Vector3 for APIs on \\@minecraft/server which require a Vector,\n * but also contain additional helper methods. This is an alternative to using the core Vector 3 utility\n * methods directly, for those who prefer a more object-oriented approach. This version of the class is mutable\n * and changes state inline.\n *\n * For an immutable version of the build, use ImmutableVector3Builder.\n *\n * @public\n */\nexport class Vector3Builder implements Vector3 {\n x: number;\n y: number;\n z: number;\n\n constructor(vec: Vector3, arg?: never, arg2?: never);\n constructor(x: number, y: number, z: number);\n constructor(first: number | Vector3, y?: number, z?: number) {\n if (typeof first === 'object') {\n this.x = first.x;\n this.y = first.y;\n this.z = first.z;\n } else {\n this.x = first;\n this.y = y ?? 0;\n this.z = z ?? 0;\n }\n }\n\n /**\n * Assigns the values of the passed in vector to this vector. Returns itself.\n */\n assign(vec: Vector3): this {\n this.x = vec.x;\n this.y = vec.y;\n this.z = vec.z;\n return this;\n }\n\n /**\n * equals\n *\n * Check the equality of two vectors\n */\n equals(v: Vector3): boolean {\n return Vector3Utils.equals(this, v);\n }\n\n /**\n * add\n *\n * Adds the vector v to this, returning itself.\n */\n add(v: Vector3): this {\n return this.assign(Vector3Utils.add(this, v));\n }\n\n /**\n * subtract\n *\n * Subtracts the vector v from this, returning itself.\n */\n subtract(v: Vector3): this {\n return this.assign(Vector3Utils.subtract(this, v));\n }\n\n /** scale\n *\n * Scales this by the passed in value, returning itself.\n */\n scale(val: number): this {\n return this.assign(Vector3Utils.scale(this, val));\n }\n\n /**\n * dot\n *\n * Computes the dot product of this and the passed in vector.\n */\n dot(vec: Vector3): number {\n return Vector3Utils.dot(this, vec);\n }\n\n /**\n * cross\n *\n * Computes the cross product of this and the passed in vector, returning itself.\n */\n cross(vec: Vector3): this {\n return this.assign(Vector3Utils.cross(this, vec));\n }\n\n /**\n * magnitude\n *\n * The magnitude of the vector\n */\n magnitude(): number {\n return Vector3Utils.magnitude(this);\n }\n\n /**\n * distance\n *\n * Calculate the distance between two vectors\n */\n distance(vec: Vector3): number {\n return Vector3Utils.distance(this, vec);\n }\n\n /**\n * normalize\n *\n * Normalizes this vector, returning itself.\n */\n normalize(): this {\n return this.assign(Vector3Utils.normalize(this));\n }\n\n /**\n * floor\n *\n * Floor the components of a vector to produce a new vector\n */\n floor(): this {\n return this.assign(Vector3Utils.floor(this));\n }\n\n /**\n * toString\n *\n * Create a string representation of a vector\n */\n toString(options?: { decimals?: number; delimiter?: string }): string {\n return Vector3Utils.toString(this, options);\n }\n\n /**\n * clamp\n *\n * Clamps the components of a vector to limits to produce a new vector\n */\n clamp(limits: { min?: Partial<Vector3>; max?: Partial<Vector3> }): this {\n return this.assign(Vector3Utils.clamp(this, limits));\n }\n\n /**\n * lerp\n *\n * Constructs a new vector using linear interpolation on each component from two vectors.\n */\n lerp(vec: Vector3, t: number): this {\n return this.assign(Vector3Utils.lerp(this, vec, t));\n }\n\n /**\n * slerp\n *\n * Constructs a new vector using spherical linear interpolation on each component from two vectors.\n */\n slerp(vec: Vector3, t: number): this {\n return this.assign(Vector3Utils.slerp(this, vec, t));\n }\n}\n\n/**\n * Vector2 wrapper class which can be used as a Vector2 for APIs on \\@minecraft/server which require a Vector2.\n * @public\n */\nexport class Vector2Builder implements Vector2 {\n x: number;\n y: number;\n\n constructor(vec: Vector2, arg?: never);\n constructor(x: number, y: number);\n constructor(first: number | Vector2, y?: number) {\n if (typeof first === 'object') {\n this.x = first.x;\n this.y = first.y;\n } else {\n this.x = first;\n this.y = y ?? 0;\n }\n }\n\n toString(options?: { decimals?: number; delimiter?: string }): string {\n return Vector2Utils.toString(this, options);\n }\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,15 +1,11 @@
1
- "use strict";
2
1
  // Copyright (c) Microsoft Corporation.
3
2
  // Licensed under the MIT License.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.clampNumber = void 0;
6
3
  /**
7
4
  * Clamps the passed in number to the passed in min and max values.
8
5
  *
9
6
  * @public
10
7
  */
11
- function clampNumber(val, min, max) {
8
+ export function clampNumber(val, min, max) {
12
9
  return Math.min(Math.max(val, min), max);
13
10
  }
14
- exports.clampNumber = clampNumber;
15
11
  //# sourceMappingURL=clamp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clamp.js","sourceRoot":"","sources":["../../src/general/clamp.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC;;;;GAIG;AACH,SAAgB,WAAW,CAAC,GAAW,EAAE,GAAW,EAAE,GAAW;IAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC;AAFD,kCAEC"}
1
+ {"version":3,"file":"clamp.js","sourceRoot":"","sources":["../../src/general/clamp.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,GAAW,EAAE,GAAW;IAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC"}
@@ -1,20 +1,4 @@
1
- "use strict";
2
1
  // Copyright (c) Microsoft Corporation.
3
2
  // Licensed under the MIT License.
4
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5
- if (k2 === undefined) k2 = k;
6
- var desc = Object.getOwnPropertyDescriptor(m, k);
7
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
8
- desc = { enumerable: true, get: function() { return m[k]; } };
9
- }
10
- Object.defineProperty(o, k2, desc);
11
- }) : (function(o, m, k, k2) {
12
- if (k2 === undefined) k2 = k;
13
- o[k2] = m[k];
14
- }));
15
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
17
- };
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- __exportStar(require("./clamp"), exports);
3
+ export * from './clamp';
20
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/general/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;;;;;AAElC,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/general/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,SAAS,CAAC"}
package/lib/index.js CHANGED
@@ -1,21 +1,5 @@
1
- "use strict";
2
1
  // Copyright (c) Microsoft Corporation.
3
2
  // Licensed under the MIT License.
4
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5
- if (k2 === undefined) k2 = k;
6
- var desc = Object.getOwnPropertyDescriptor(m, k);
7
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
8
- desc = { enumerable: true, get: function() { return m[k]; } };
9
- }
10
- Object.defineProperty(o, k2, desc);
11
- }) : (function(o, m, k, k2) {
12
- if (k2 === undefined) k2 = k;
13
- o[k2] = m[k];
14
- }));
15
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
17
- };
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- __exportStar(require("./vector3"), exports);
20
- __exportStar(require("./general"), exports);
3
+ export * from './vector3';
4
+ export * from './general';
21
5
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;;;;;AAElC,4CAA0B;AAC1B,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC"}
package/lib/index.test.js CHANGED
@@ -1,11 +1,9 @@
1
- "use strict";
2
1
  // Copyright (c) Microsoft Corporation.
3
2
  // Licensed under the MIT License.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- const vitest_1 = require("vitest");
6
- (0, vitest_1.describe)('Test', () => {
7
- (0, vitest_1.it)('should pass', () => {
8
- (0, vitest_1.expect)(true).toBe(true);
3
+ import { describe, expect, it } from 'vitest';
4
+ describe('Test', () => {
5
+ it('should pass', () => {
6
+ expect(true).toBe(true);
9
7
  });
10
8
  });
11
9
  //# sourceMappingURL=index.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAElC,mCAA8C;AAE9C,IAAA,iBAAQ,EAAC,MAAM,EAAE,GAAG,EAAE;IAClB,IAAA,WAAE,EAAC,aAAa,EAAE,GAAG,EAAE;QACnB,IAAA,eAAM,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;IAClB,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;QACnB,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1,15 +1,12 @@
1
- "use strict";
2
1
  // Copyright (c) Microsoft Corporation.
3
2
  // Licensed under the MIT License.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.VECTOR3_SOUTH = exports.VECTOR3_NORTH = exports.VECTOR3_EAST = exports.VECTOR3_WEST = exports.VECTOR3_ZERO = exports.VECTOR3_ONE = exports.VECTOR3_BACK = exports.VECTOR3_FORWARD = exports.VECTOR3_RIGHT = exports.VECTOR3_LEFT = exports.VECTOR3_DOWN = exports.VECTOR3_UP = exports.Vector2Utils = exports.Vector3Utils = void 0;
6
- const clamp_1 = require("../general/clamp");
3
+ import { clampNumber } from '../general/clamp';
7
4
  /**
8
5
  * Utilities operating on Vector3 objects. All methods are static and do not modify the input objects.
9
6
  *
10
7
  * @public
11
8
  */
12
- class Vector3Utils {
9
+ export class Vector3Utils {
13
10
  /**
14
11
  * equals
15
12
  *
@@ -111,9 +108,9 @@ class Vector3Utils {
111
108
  */
112
109
  static clamp(v, limits) {
113
110
  return {
114
- x: (0, clamp_1.clampNumber)(v.x, limits?.min?.x ?? Number.MIN_SAFE_INTEGER, limits?.max?.x ?? Number.MAX_SAFE_INTEGER),
115
- y: (0, clamp_1.clampNumber)(v.y, limits?.min?.y ?? Number.MIN_SAFE_INTEGER, limits?.max?.y ?? Number.MAX_SAFE_INTEGER),
116
- z: (0, clamp_1.clampNumber)(v.z, limits?.min?.z ?? Number.MIN_SAFE_INTEGER, limits?.max?.z ?? Number.MAX_SAFE_INTEGER),
111
+ x: clampNumber(v.x, limits?.min?.x ?? Number.MIN_SAFE_INTEGER, limits?.max?.x ?? Number.MAX_SAFE_INTEGER),
112
+ y: clampNumber(v.y, limits?.min?.y ?? Number.MIN_SAFE_INTEGER, limits?.max?.y ?? Number.MAX_SAFE_INTEGER),
113
+ z: clampNumber(v.z, limits?.min?.z ?? Number.MIN_SAFE_INTEGER, limits?.max?.z ?? Number.MAX_SAFE_INTEGER),
117
114
  };
118
115
  }
119
116
  /**
@@ -141,13 +138,12 @@ class Vector3Utils {
141
138
  return Vector3Utils.add(Vector3Utils.scale(a, ta), Vector3Utils.scale(b, tb));
142
139
  }
143
140
  }
144
- exports.Vector3Utils = Vector3Utils;
145
141
  /**
146
142
  * Utilities operating on Vector2 objects. All methods are static and do not modify the input objects.
147
143
  *
148
144
  * @public
149
145
  */
150
- class Vector2Utils {
146
+ export class Vector2Utils {
151
147
  /**
152
148
  * toString
153
149
  *
@@ -159,7 +155,6 @@ class Vector2Utils {
159
155
  return str.join(options?.delimiter ?? ', ');
160
156
  }
161
157
  }
162
- exports.Vector2Utils = Vector2Utils;
163
158
  /**
164
159
  * up
165
160
  *
@@ -167,7 +162,7 @@ exports.Vector2Utils = Vector2Utils;
167
162
  *
168
163
  * @public
169
164
  */
170
- exports.VECTOR3_UP = { x: 0, y: 1, z: 0 };
165
+ export const VECTOR3_UP = { x: 0, y: 1, z: 0 };
171
166
  /**
172
167
  * down
173
168
  *
@@ -175,7 +170,7 @@ exports.VECTOR3_UP = { x: 0, y: 1, z: 0 };
175
170
  *
176
171
  * @public
177
172
  */
178
- exports.VECTOR3_DOWN = { x: 0, y: -1, z: 0 };
173
+ export const VECTOR3_DOWN = { x: 0, y: -1, z: 0 };
179
174
  /**
180
175
  * left
181
176
  *
@@ -183,7 +178,7 @@ exports.VECTOR3_DOWN = { x: 0, y: -1, z: 0 };
183
178
  *
184
179
  * @public
185
180
  */
186
- exports.VECTOR3_LEFT = { x: -1, y: 0, z: 0 };
181
+ export const VECTOR3_LEFT = { x: -1, y: 0, z: 0 };
187
182
  /**
188
183
  * right
189
184
  *
@@ -191,7 +186,7 @@ exports.VECTOR3_LEFT = { x: -1, y: 0, z: 0 };
191
186
  *
192
187
  * @public
193
188
  */
194
- exports.VECTOR3_RIGHT = { x: 1, y: 0, z: 0 };
189
+ export const VECTOR3_RIGHT = { x: 1, y: 0, z: 0 };
195
190
  /**
196
191
  * forward
197
192
  *
@@ -199,7 +194,7 @@ exports.VECTOR3_RIGHT = { x: 1, y: 0, z: 0 };
199
194
  *
200
195
  * @public
201
196
  */
202
- exports.VECTOR3_FORWARD = { x: 0, y: 0, z: 1 };
197
+ export const VECTOR3_FORWARD = { x: 0, y: 0, z: 1 };
203
198
  /**
204
199
  * back
205
200
  *
@@ -207,7 +202,7 @@ exports.VECTOR3_FORWARD = { x: 0, y: 0, z: 1 };
207
202
  *
208
203
  * @public
209
204
  */
210
- exports.VECTOR3_BACK = { x: 0, y: 0, z: -1 };
205
+ export const VECTOR3_BACK = { x: 0, y: 0, z: -1 };
211
206
  /**
212
207
  * one
213
208
  *
@@ -215,7 +210,7 @@ exports.VECTOR3_BACK = { x: 0, y: 0, z: -1 };
215
210
  *
216
211
  * @public
217
212
  */
218
- exports.VECTOR3_ONE = { x: 1, y: 1, z: 1 };
213
+ export const VECTOR3_ONE = { x: 1, y: 1, z: 1 };
219
214
  /**
220
215
  * zero
221
216
  *
@@ -223,7 +218,7 @@ exports.VECTOR3_ONE = { x: 1, y: 1, z: 1 };
223
218
  *
224
219
  * @public
225
220
  */
226
- exports.VECTOR3_ZERO = { x: 0, y: 0, z: 0 };
221
+ export const VECTOR3_ZERO = { x: 0, y: 0, z: 0 };
227
222
  /**
228
223
  * west
229
224
  *
@@ -232,7 +227,7 @@ exports.VECTOR3_ZERO = { x: 0, y: 0, z: 0 };
232
227
  *
233
228
  * @public
234
229
  */
235
- exports.VECTOR3_WEST = { x: -1, y: 0, z: 0 };
230
+ export const VECTOR3_WEST = { x: -1, y: 0, z: 0 };
236
231
  /**
237
232
  * east
238
233
  *
@@ -241,7 +236,7 @@ exports.VECTOR3_WEST = { x: -1, y: 0, z: 0 };
241
236
  *
242
237
  * @public
243
238
  */
244
- exports.VECTOR3_EAST = { x: 1, y: 0, z: 0 };
239
+ export const VECTOR3_EAST = { x: 1, y: 0, z: 0 };
245
240
  /**
246
241
  * north
247
242
  *
@@ -250,7 +245,7 @@ exports.VECTOR3_EAST = { x: 1, y: 0, z: 0 };
250
245
  *
251
246
  * @public
252
247
  */
253
- exports.VECTOR3_NORTH = { x: 0, y: 0, z: 1 };
248
+ export const VECTOR3_NORTH = { x: 0, y: 0, z: 1 };
254
249
  /**
255
250
  * south
256
251
  *
@@ -259,5 +254,5 @@ exports.VECTOR3_NORTH = { x: 0, y: 0, z: 1 };
259
254
  *
260
255
  * @public
261
256
  */
262
- exports.VECTOR3_SOUTH = { x: 0, y: 0, z: -1 };
257
+ export const VECTOR3_SOUTH = { x: 0, y: 0, z: -1 };
263
258
  //# sourceMappingURL=coreHelpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"coreHelpers.js","sourceRoot":"","sources":["../../src/vector3/coreHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coreHelpers.js","sourceRoot":"","sources":["../../src/vector3/coreHelpers.ts"],"names":[],"mappings":"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"}