@holoscript/std 2.1.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.
@@ -0,0 +1,193 @@
1
+ /**
2
+ * Core Types for HoloScript
3
+ *
4
+ * Fundamental spatial and graphical types used throughout the language.
5
+ */
6
+ /**
7
+ * 2D Vector
8
+ */
9
+ export interface Vec2 {
10
+ x: number;
11
+ y: number;
12
+ }
13
+ /**
14
+ * 3D Vector - The fundamental spatial type
15
+ */
16
+ export interface Vec3 {
17
+ x: number;
18
+ y: number;
19
+ z: number;
20
+ }
21
+ /**
22
+ * 4D Vector
23
+ */
24
+ export interface Vec4 {
25
+ x: number;
26
+ y: number;
27
+ z: number;
28
+ w: number;
29
+ }
30
+ export type Vec2Array = [number, number];
31
+ export type Vec3Array = [number, number, number];
32
+ export type Vec4Array = [number, number, number, number];
33
+ /**
34
+ * Quaternion for rotation representation
35
+ */
36
+ export interface Quat {
37
+ x: number;
38
+ y: number;
39
+ z: number;
40
+ w: number;
41
+ }
42
+ export type QuatArray = [number, number, number, number];
43
+ /**
44
+ * Complete 3D transform
45
+ */
46
+ export interface Transform {
47
+ position: Vec3;
48
+ rotation: Quat;
49
+ scale: Vec3;
50
+ }
51
+ /**
52
+ * Euler angles (in degrees)
53
+ */
54
+ export interface EulerAngles {
55
+ x: number;
56
+ y: number;
57
+ z: number;
58
+ }
59
+ /**
60
+ * RGB Color (0-1 range)
61
+ */
62
+ export interface ColorRGB {
63
+ r: number;
64
+ g: number;
65
+ b: number;
66
+ }
67
+ /**
68
+ * RGBA Color (0-1 range)
69
+ */
70
+ export interface ColorRGBA extends ColorRGB {
71
+ a: number;
72
+ }
73
+ /**
74
+ * HSL Color
75
+ */
76
+ export interface ColorHSL {
77
+ h: number;
78
+ s: number;
79
+ l: number;
80
+ }
81
+ /**
82
+ * Color can be represented multiple ways
83
+ */
84
+ export type Color = string | ColorRGB | ColorRGBA | ColorHSL | number;
85
+ /**
86
+ * Axis-Aligned Bounding Box
87
+ */
88
+ export interface AABB {
89
+ min: Vec3;
90
+ max: Vec3;
91
+ }
92
+ /**
93
+ * Bounding Sphere
94
+ */
95
+ export interface BoundingSphere {
96
+ center: Vec3;
97
+ radius: number;
98
+ }
99
+ /**
100
+ * Ray for raycasting
101
+ */
102
+ export interface Ray {
103
+ origin: Vec3;
104
+ direction: Vec3;
105
+ }
106
+ /**
107
+ * Raycast hit result
108
+ */
109
+ export interface RaycastHit {
110
+ point: Vec3;
111
+ normal: Vec3;
112
+ distance: number;
113
+ objectId?: string;
114
+ }
115
+ /**
116
+ * Nullable type helper
117
+ */
118
+ export type Nullable<T> = T | null;
119
+ /**
120
+ * Optional type helper
121
+ */
122
+ export type Optional<T> = T | undefined;
123
+ /**
124
+ * Deep partial type
125
+ */
126
+ export type DeepPartial<T> = {
127
+ [P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P];
128
+ };
129
+ /**
130
+ * Create a Vec2
131
+ */
132
+ export declare function vec2(x?: number, y?: number): Vec2;
133
+ /**
134
+ * Create a Vec3
135
+ */
136
+ export declare function vec3(x?: number, y?: number, z?: number): Vec3;
137
+ /**
138
+ * Create a Vec4
139
+ */
140
+ export declare function vec4(x?: number, y?: number, z?: number, w?: number): Vec4;
141
+ /**
142
+ * Create a Quaternion (identity by default)
143
+ */
144
+ export declare function quat(x?: number, y?: number, z?: number, w?: number): Quat;
145
+ /**
146
+ * Create a Transform
147
+ */
148
+ export declare function transform(position?: Vec3, rotation?: Quat, scale?: Vec3): Transform;
149
+ /**
150
+ * Create an RGB color
151
+ */
152
+ export declare function rgb(r: number, g: number, b: number): ColorRGB;
153
+ /**
154
+ * Create an RGBA color
155
+ */
156
+ export declare function rgba(r: number, g: number, b: number, a?: number): ColorRGBA;
157
+ /**
158
+ * Create an HSL color
159
+ */
160
+ export declare function hsl(h: number, s: number, l: number): ColorHSL;
161
+ /**
162
+ * Create an AABB
163
+ */
164
+ export declare function aabb(min?: Vec3, max?: Vec3): AABB;
165
+ /**
166
+ * Create a Ray
167
+ */
168
+ export declare function ray(origin: Vec3, direction: Vec3): Ray;
169
+ /**
170
+ * Convert Vec3 to array
171
+ */
172
+ export declare function vec3ToArray(v: Vec3): Vec3Array;
173
+ /**
174
+ * Convert array to Vec3
175
+ */
176
+ export declare function arrayToVec3(arr: Vec3Array | number[]): Vec3;
177
+ /**
178
+ * Convert Quat to array
179
+ */
180
+ export declare function quatToArray(q: Quat): QuatArray;
181
+ /**
182
+ * Convert array to Quat
183
+ */
184
+ export declare function arrayToQuat(arr: QuatArray | number[]): Quat;
185
+ /**
186
+ * Parse color from various formats
187
+ */
188
+ export declare function parseColor(color: Color): ColorRGBA;
189
+ /**
190
+ * Color to hex string
191
+ */
192
+ export declare function colorToHex(color: ColorRGB | ColorRGBA): string;
193
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAGD,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACzC,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACjD,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAMzD;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAMzD;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,IAAI,CAAC;IACf,QAAQ,EAAE,IAAI,CAAC;IACf,KAAK,EAAE,IAAI,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAMD;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,QAAQ;IACzC,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAMtE;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,GAAG,EAAE,IAAI,CAAC;IACV,GAAG,EAAE,IAAI,CAAC;CACX;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,IAAI,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD;;GAEG;AACH,MAAM,WAAW,GAAG;IAClB,MAAM,EAAE,IAAI,CAAC;IACb,SAAS,EAAE,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,IAAI,CAAC;IACZ,MAAM,EAAE,IAAI,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAEnC;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;AAExC;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;KAC1B,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAChE,CAAC;AAMF;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,GAAE,MAAU,EAAE,CAAC,GAAE,MAAU,GAAG,IAAI,CAEvD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,GAAE,MAAU,EAAE,CAAC,GAAE,MAAU,EAAE,CAAC,GAAE,MAAU,GAAG,IAAI,CAEtE;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,GAAE,MAAU,EAAE,CAAC,GAAE,MAAU,EAAE,CAAC,GAAE,MAAU,EAAE,CAAC,GAAE,MAAU,GAAG,IAAI,CAErF;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,GAAE,MAAU,EAAE,CAAC,GAAE,MAAU,EAAE,CAAC,GAAE,MAAU,EAAE,CAAC,GAAE,MAAU,GAAG,IAAI,CAErF;AAED;;GAEG;AACH,wBAAgB,SAAS,CACvB,QAAQ,GAAE,IAAa,EACvB,QAAQ,GAAE,IAAa,EACvB,KAAK,GAAE,IAAoB,GAC1B,SAAS,CAEX;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,QAAQ,CAE7D;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAE,MAAU,GAAG,SAAS,CAE9E;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,QAAQ,CAE7D;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,GAAG,GAAE,IAAa,EAAE,GAAG,GAAE,IAAa,GAAG,IAAI,CAEjE;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,GAAG,GAAG,CAEtD;AAMD;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,SAAS,CAE9C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,EAAE,GAAG,IAAI,CAE3D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,SAAS,CAE9C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,EAAE,GAAG,IAAI,CAE3D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,CA2ElD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CAK9D"}
package/dist/types.js ADDED
@@ -0,0 +1,198 @@
1
+ /**
2
+ * Core Types for HoloScript
3
+ *
4
+ * Fundamental spatial and graphical types used throughout the language.
5
+ */
6
+ // =============================================================================
7
+ // FACTORY FUNCTIONS
8
+ // =============================================================================
9
+ /**
10
+ * Create a Vec2
11
+ */
12
+ export function vec2(x = 0, y = 0) {
13
+ return { x, y };
14
+ }
15
+ /**
16
+ * Create a Vec3
17
+ */
18
+ export function vec3(x = 0, y = 0, z = 0) {
19
+ return { x, y, z };
20
+ }
21
+ /**
22
+ * Create a Vec4
23
+ */
24
+ export function vec4(x = 0, y = 0, z = 0, w = 0) {
25
+ return { x, y, z, w };
26
+ }
27
+ /**
28
+ * Create a Quaternion (identity by default)
29
+ */
30
+ export function quat(x = 0, y = 0, z = 0, w = 1) {
31
+ return { x, y, z, w };
32
+ }
33
+ /**
34
+ * Create a Transform
35
+ */
36
+ export function transform(position = vec3(), rotation = quat(), scale = vec3(1, 1, 1)) {
37
+ return { position, rotation, scale };
38
+ }
39
+ /**
40
+ * Create an RGB color
41
+ */
42
+ export function rgb(r, g, b) {
43
+ return { r, g, b };
44
+ }
45
+ /**
46
+ * Create an RGBA color
47
+ */
48
+ export function rgba(r, g, b, a = 1) {
49
+ return { r, g, b, a };
50
+ }
51
+ /**
52
+ * Create an HSL color
53
+ */
54
+ export function hsl(h, s, l) {
55
+ return { h, s, l };
56
+ }
57
+ /**
58
+ * Create an AABB
59
+ */
60
+ export function aabb(min = vec3(), max = vec3()) {
61
+ return { min, max };
62
+ }
63
+ /**
64
+ * Create a Ray
65
+ */
66
+ export function ray(origin, direction) {
67
+ return { origin, direction };
68
+ }
69
+ // =============================================================================
70
+ // CONVERSION UTILITIES
71
+ // =============================================================================
72
+ /**
73
+ * Convert Vec3 to array
74
+ */
75
+ export function vec3ToArray(v) {
76
+ return [v.x, v.y, v.z];
77
+ }
78
+ /**
79
+ * Convert array to Vec3
80
+ */
81
+ export function arrayToVec3(arr) {
82
+ return { x: arr[0] || 0, y: arr[1] || 0, z: arr[2] || 0 };
83
+ }
84
+ /**
85
+ * Convert Quat to array
86
+ */
87
+ export function quatToArray(q) {
88
+ return [q.x, q.y, q.z, q.w];
89
+ }
90
+ /**
91
+ * Convert array to Quat
92
+ */
93
+ export function arrayToQuat(arr) {
94
+ return { x: arr[0] || 0, y: arr[1] || 0, z: arr[2] || 0, w: arr[3] ?? 1 };
95
+ }
96
+ /**
97
+ * Parse color from various formats
98
+ */
99
+ export function parseColor(color) {
100
+ if (typeof color === 'string') {
101
+ // Hex color
102
+ if (color.startsWith('#')) {
103
+ const hex = color.slice(1);
104
+ if (hex.length === 3) {
105
+ return {
106
+ r: parseInt(hex[0] + hex[0], 16) / 255,
107
+ g: parseInt(hex[1] + hex[1], 16) / 255,
108
+ b: parseInt(hex[2] + hex[2], 16) / 255,
109
+ a: 1,
110
+ };
111
+ }
112
+ else if (hex.length === 6) {
113
+ return {
114
+ r: parseInt(hex.slice(0, 2), 16) / 255,
115
+ g: parseInt(hex.slice(2, 4), 16) / 255,
116
+ b: parseInt(hex.slice(4, 6), 16) / 255,
117
+ a: 1,
118
+ };
119
+ }
120
+ else if (hex.length === 8) {
121
+ return {
122
+ r: parseInt(hex.slice(0, 2), 16) / 255,
123
+ g: parseInt(hex.slice(2, 4), 16) / 255,
124
+ b: parseInt(hex.slice(4, 6), 16) / 255,
125
+ a: parseInt(hex.slice(6, 8), 16) / 255,
126
+ };
127
+ }
128
+ }
129
+ // Named colors (basic support)
130
+ const namedColors = {
131
+ white: { r: 1, g: 1, b: 1, a: 1 },
132
+ black: { r: 0, g: 0, b: 0, a: 1 },
133
+ red: { r: 1, g: 0, b: 0, a: 1 },
134
+ green: { r: 0, g: 1, b: 0, a: 1 },
135
+ blue: { r: 0, g: 0, b: 1, a: 1 },
136
+ yellow: { r: 1, g: 1, b: 0, a: 1 },
137
+ cyan: { r: 0, g: 1, b: 1, a: 1 },
138
+ magenta: { r: 1, g: 0, b: 1, a: 1 },
139
+ };
140
+ return namedColors[color.toLowerCase()] || { r: 1, g: 1, b: 1, a: 1 };
141
+ }
142
+ if (typeof color === 'number') {
143
+ // Integer color (0xRRGGBB)
144
+ return {
145
+ r: ((color >> 16) & 0xff) / 255,
146
+ g: ((color >> 8) & 0xff) / 255,
147
+ b: (color & 0xff) / 255,
148
+ a: 1,
149
+ };
150
+ }
151
+ if ('h' in color) {
152
+ // HSL to RGB conversion
153
+ const { h, s, l } = color;
154
+ const c = (1 - Math.abs(2 * l - 1)) * s;
155
+ const x = c * (1 - Math.abs(((h / 60) % 2) - 1));
156
+ const m = l - c / 2;
157
+ let r = 0, g = 0, b = 0;
158
+ if (h < 60) {
159
+ r = c;
160
+ g = x;
161
+ }
162
+ else if (h < 120) {
163
+ r = x;
164
+ g = c;
165
+ }
166
+ else if (h < 180) {
167
+ g = c;
168
+ b = x;
169
+ }
170
+ else if (h < 240) {
171
+ g = x;
172
+ b = c;
173
+ }
174
+ else if (h < 300) {
175
+ r = x;
176
+ b = c;
177
+ }
178
+ else {
179
+ r = c;
180
+ b = x;
181
+ }
182
+ return { r: r + m, g: g + m, b: b + m, a: 1 };
183
+ }
184
+ if ('a' in color) {
185
+ return color;
186
+ }
187
+ return { ...color, a: 1 };
188
+ }
189
+ /**
190
+ * Color to hex string
191
+ */
192
+ export function colorToHex(color) {
193
+ const r = Math.round(color.r * 255).toString(16).padStart(2, '0');
194
+ const g = Math.round(color.g * 255).toString(16).padStart(2, '0');
195
+ const b = Math.round(color.b * 255).toString(16).padStart(2, '0');
196
+ return `#${r}${g}${b}`;
197
+ }
198
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,55 @@
1
+ {
2
+ "name": "@holoscript/std",
3
+ "version": "2.1.0",
4
+ "description": "HoloScript Standard Library - Core types and utilities",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "type": "module",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
12
+ },
13
+ "./math": {
14
+ "types": "./dist/math.d.ts",
15
+ "import": "./dist/math.js"
16
+ },
17
+ "./collections": {
18
+ "types": "./dist/collections.d.ts",
19
+ "import": "./dist/collections.js"
20
+ },
21
+ "./string": {
22
+ "types": "./dist/string.d.ts",
23
+ "import": "./dist/string.js"
24
+ },
25
+ "./time": {
26
+ "types": "./dist/time.d.ts",
27
+ "import": "./dist/time.js"
28
+ }
29
+ },
30
+ "scripts": {
31
+ "build": "tsc",
32
+ "watch": "tsc -w",
33
+ "clean": "rm -rf dist",
34
+ "test": "echo 'No tests yet' && exit 0"
35
+ },
36
+ "keywords": [
37
+ "holoscript",
38
+ "std",
39
+ "standard-library",
40
+ "3d",
41
+ "spatial"
42
+ ],
43
+ "author": "Brian X Base Team",
44
+ "license": "MIT",
45
+ "repository": {
46
+ "type": "git",
47
+ "url": "https://github.com/brianonbased-dev/Holoscript.git",
48
+ "directory": "packages/std"
49
+ },
50
+ "devDependencies": {
51
+ "@types/node": "^20.10.0",
52
+ "typescript": "^5.3.3",
53
+ "vitest": "^1.2.0"
54
+ }
55
+ }