@viji-dev/core 0.2.3 → 0.2.5
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 +12 -0
- package/README.md +8 -6
- package/dist/artist-dts.js +1 -1
- package/dist/artist-global.d.ts +313 -654
- package/dist/artist-jsdoc.d.ts +235 -0
- package/dist/index.d.ts +6 -1
- package/dist/index.js +20 -1
- package/dist/index.js.map +1 -1
- package/package.json +6 -3
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Viji Artist API - JavaScript IntelliSense Support
|
|
3
|
+
* Auto-generated from TypeScript definitions - DO NOT EDIT MANUALLY
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Configuration for slider parameters
|
|
8
|
+
* @typedef {Object} SliderConfig
|
|
9
|
+
* @property {number} [min] - min property
|
|
10
|
+
* @property {number} [max] - max property
|
|
11
|
+
* @property {number} [step] - step property
|
|
12
|
+
* @property {string} label - label property
|
|
13
|
+
* @property {string} [description] - description property
|
|
14
|
+
* @property {string} [group] - group property
|
|
15
|
+
* @property {ParameterCategory} [category] - category property
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Configuration for color parameters
|
|
20
|
+
* @typedef {Object} ColorConfig
|
|
21
|
+
* @property {string} label - label property
|
|
22
|
+
* @property {string} [description] - description property
|
|
23
|
+
* @property {string} [group] - group property
|
|
24
|
+
* @property {ParameterCategory} [category] - category property
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Configuration for toggle parameters
|
|
29
|
+
* @typedef {Object} ToggleConfig
|
|
30
|
+
* @property {string} label - label property
|
|
31
|
+
* @property {string} [description] - description property
|
|
32
|
+
* @property {string} [group] - group property
|
|
33
|
+
* @property {ParameterCategory} [category] - category property
|
|
34
|
+
*/
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Configuration for select parameters
|
|
38
|
+
* @typedef {Object} SelectConfig
|
|
39
|
+
* @property {string[] | number[]} options - options property
|
|
40
|
+
* @property {string} label - label property
|
|
41
|
+
* @property {string} [description] - description property
|
|
42
|
+
* @property {string} [group] - group property
|
|
43
|
+
* @property {ParameterCategory} [category] - category property
|
|
44
|
+
*/
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Configuration for text parameters
|
|
48
|
+
* @typedef {Object} TextConfig
|
|
49
|
+
* @property {string} label - label property
|
|
50
|
+
* @property {string} [description] - description property
|
|
51
|
+
* @property {string} [group] - group property
|
|
52
|
+
* @property {ParameterCategory} [category] - category property
|
|
53
|
+
* @property {number} [maxLength] - maxLength property
|
|
54
|
+
*/
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Configuration for number parameters
|
|
58
|
+
* @typedef {Object} NumberConfig
|
|
59
|
+
* @property {number} [min] - min property
|
|
60
|
+
* @property {number} [max] - max property
|
|
61
|
+
* @property {number} [step] - step property
|
|
62
|
+
* @property {string} label - label property
|
|
63
|
+
* @property {string} [description] - description property
|
|
64
|
+
* @property {string} [group] - group property
|
|
65
|
+
* @property {ParameterCategory} [category] - category property
|
|
66
|
+
*/
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Parameter object for slider parameters
|
|
70
|
+
* @typedef {Object} SliderParameter
|
|
71
|
+
* @property {number} value - value property
|
|
72
|
+
* @property {number} min - min property
|
|
73
|
+
* @property {number} max - max property
|
|
74
|
+
* @property {number} step - step property
|
|
75
|
+
* @property {string} label - label property
|
|
76
|
+
* @property {string} [description] - description property
|
|
77
|
+
* @property {string} group - group property
|
|
78
|
+
* @property {ParameterCategory} category - category property
|
|
79
|
+
*/
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Parameter object for color parameters
|
|
83
|
+
* @typedef {Object} ColorParameter
|
|
84
|
+
* @property {string} value - value property
|
|
85
|
+
* @property {string} label - label property
|
|
86
|
+
* @property {string} [description] - description property
|
|
87
|
+
* @property {string} group - group property
|
|
88
|
+
* @property {ParameterCategory} category - category property
|
|
89
|
+
*/
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Parameter object for toggle parameters
|
|
93
|
+
* @typedef {Object} ToggleParameter
|
|
94
|
+
* @property {boolean} value - value property
|
|
95
|
+
* @property {string} label - label property
|
|
96
|
+
* @property {string} [description] - description property
|
|
97
|
+
* @property {string} group - group property
|
|
98
|
+
* @property {ParameterCategory} category - category property
|
|
99
|
+
*/
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Parameter object for select parameters
|
|
103
|
+
* @typedef {Object} SelectParameter
|
|
104
|
+
* @property {string | number} value - value property
|
|
105
|
+
* @property {string[] | number[]} options - options property
|
|
106
|
+
* @property {string} label - label property
|
|
107
|
+
* @property {string} [description] - description property
|
|
108
|
+
* @property {string} group - group property
|
|
109
|
+
* @property {ParameterCategory} category - category property
|
|
110
|
+
*/
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* Parameter object for text parameters
|
|
114
|
+
* @typedef {Object} TextParameter
|
|
115
|
+
* @property {string} value - value property
|
|
116
|
+
* @property {number} [maxLength] - maxLength property
|
|
117
|
+
* @property {string} label - label property
|
|
118
|
+
* @property {string} [description] - description property
|
|
119
|
+
* @property {string} group - group property
|
|
120
|
+
* @property {ParameterCategory} category - category property
|
|
121
|
+
*/
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Parameter object for number parameters
|
|
125
|
+
* @typedef {Object} NumberParameter
|
|
126
|
+
* @property {number} value - value property
|
|
127
|
+
* @property {number} min - min property
|
|
128
|
+
* @property {number} max - max property
|
|
129
|
+
* @property {number} step - step property
|
|
130
|
+
* @property {string} label - label property
|
|
131
|
+
* @property {string} [description] - description property
|
|
132
|
+
* @property {string} group - group property
|
|
133
|
+
* @property {ParameterCategory} category - category property
|
|
134
|
+
*/
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* Audio analysis API - provides real-time audio data and frequency analysis
|
|
138
|
+
* @typedef {Object} AudioAPI
|
|
139
|
+
* @property {boolean} isConnected - isConnected property
|
|
140
|
+
* @property {{} volume - volume property
|
|
141
|
+
* @property {number} rms - rms property
|
|
142
|
+
* @property {number} peak - peak property
|
|
143
|
+
*/
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Video frame API - provides access to video stream and computer vision data
|
|
147
|
+
* @typedef {Object} VideoAPI
|
|
148
|
+
* @property {boolean} isConnected - isConnected property
|
|
149
|
+
* @property {OffscreenCanvas |null} currentFrame - currentFrame property
|
|
150
|
+
* @property {number} frameWidth - frameWidth property
|
|
151
|
+
* @property {number} frameHeight - frameHeight property
|
|
152
|
+
* @property {number} frameRate - frameRate property
|
|
153
|
+
* @property {() => ImageData |null} getFrameData - getFrameData property
|
|
154
|
+
* @property {FaceData[]} faces - faces property
|
|
155
|
+
* @property {HandData[]} hands - hands property
|
|
156
|
+
*/
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* Mouse interaction API
|
|
160
|
+
* @typedef {Object} MouseAPI
|
|
161
|
+
* @property {number} x - x property
|
|
162
|
+
* @property {number} y - y property
|
|
163
|
+
* @property {boolean} isInCanvas - isInCanvas property
|
|
164
|
+
* @property {boolean} isPressed - isPressed property
|
|
165
|
+
* @property {boolean} leftButton - leftButton property
|
|
166
|
+
* @property {boolean} rightButton - rightButton property
|
|
167
|
+
* @property {boolean} middleButton - middleButton property
|
|
168
|
+
* @property {{} velocity - velocity property
|
|
169
|
+
* @property {number} x - x property
|
|
170
|
+
* @property {number} y - y property
|
|
171
|
+
*/
|
|
172
|
+
|
|
173
|
+
/**
|
|
174
|
+
* Keyboard interaction API
|
|
175
|
+
* @typedef {Object} KeyboardAPI
|
|
176
|
+
* @property {Set<string>} activeKeys - activeKeys property
|
|
177
|
+
* @property {Set<string>} pressedThisFrame - pressedThisFrame property
|
|
178
|
+
* @property {Set<string>} releasedThisFrame - releasedThisFrame property
|
|
179
|
+
* @property {string} lastKeyPressed - lastKeyPressed property
|
|
180
|
+
* @property {string} lastKeyReleased - lastKeyReleased property
|
|
181
|
+
* @property {boolean} shift - shift property
|
|
182
|
+
* @property {boolean} ctrl - ctrl property
|
|
183
|
+
* @property {boolean} alt - alt property
|
|
184
|
+
* @property {boolean} meta - meta property
|
|
185
|
+
*/
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* Touch interaction API
|
|
189
|
+
* @typedef {Object} TouchAPI
|
|
190
|
+
* @property {TouchPoint[]} points - points property
|
|
191
|
+
* @property {number} count - count property
|
|
192
|
+
* @property {TouchPoint[]} started - started property
|
|
193
|
+
* @property {TouchPoint[]} moved - moved property
|
|
194
|
+
* @property {TouchPoint[]} ended - ended property
|
|
195
|
+
* @property {TouchPoint |null} primary - primary property
|
|
196
|
+
* @property {TouchGestureAPI} gestures - gestures property
|
|
197
|
+
*/
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* Main Viji Artist API - provides access to canvas, timing, audio, video, and interactions
|
|
201
|
+
* @typedef {Object} VijiAPI
|
|
202
|
+
* @property {OffscreenCanvas} canvas - canvas property
|
|
203
|
+
* @property {OffscreenCanvasRenderingContext2D} [ctx] - ctx property
|
|
204
|
+
* @property {WebGL2RenderingContext} [gl] - gl property
|
|
205
|
+
* @property {number} width - width property
|
|
206
|
+
* @property {number} height - height property
|
|
207
|
+
* @property {number} pixelRatio - pixelRatio property
|
|
208
|
+
* @property {number} time - time property
|
|
209
|
+
* @property {number} deltaTime - deltaTime property
|
|
210
|
+
* @property {number} frameCount - frameCount property
|
|
211
|
+
* @property {number} fps - fps property
|
|
212
|
+
* @property {AudioAPI} audio - audio property
|
|
213
|
+
* @property {VideoAPI} video - video property
|
|
214
|
+
* @property {MouseAPI} mouse - mouse property
|
|
215
|
+
* @property {KeyboardAPI} keyboard - keyboard property
|
|
216
|
+
* @property {TouchAPI[]} touches - touches property
|
|
217
|
+
* @property {(defaultValue: number, config: SliderConfig) => SliderParameter} slider - slider property
|
|
218
|
+
* @property {(defaultValue: string, config: ColorConfig) => ColorParameter} color - color property
|
|
219
|
+
* @property {(defaultValue: boolean, config: ToggleConfig) => ToggleParameter} toggle - toggle property
|
|
220
|
+
* @property {(defaultValue: string | number, config: SelectConfig) => SelectParameter} select - select property
|
|
221
|
+
* @property {(defaultValue: string, config: TextConfig) => TextParameter} text - text property
|
|
222
|
+
* @property {(defaultValue: number, config: NumberConfig) => NumberParameter} number - number property
|
|
223
|
+
*/
|
|
224
|
+
|
|
225
|
+
/**
|
|
226
|
+
* Global viji object available in artist code
|
|
227
|
+
* @type {VijiAPI}
|
|
228
|
+
*/
|
|
229
|
+
declare const viji;
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* Artist render function - called every frame
|
|
233
|
+
* @param {VijiAPI} viji - The viji API object with all capabilities
|
|
234
|
+
*/
|
|
235
|
+
declare function render(viji) { }
|
package/dist/index.d.ts
CHANGED
|
@@ -338,7 +338,7 @@ declare interface TouchPoint {
|
|
|
338
338
|
isEnding: boolean;
|
|
339
339
|
}
|
|
340
340
|
|
|
341
|
-
export declare const VERSION = "0.2.
|
|
341
|
+
export declare const VERSION = "0.2.4";
|
|
342
342
|
|
|
343
343
|
export declare interface VideoAPI {
|
|
344
344
|
isConnected: boolean;
|
|
@@ -476,6 +476,11 @@ export declare class VijiCore {
|
|
|
476
476
|
* Get parameter groups filtered by active capabilities
|
|
477
477
|
*/
|
|
478
478
|
getVisibleParameterGroups(): ParameterGroup[];
|
|
479
|
+
/**
|
|
480
|
+
* Get all parameter groups without capability filtering.
|
|
481
|
+
* Returns a deep-cloned structure to prevent external mutation.
|
|
482
|
+
*/
|
|
483
|
+
getAllParameterGroups(): ParameterGroup[];
|
|
479
484
|
/**
|
|
480
485
|
* Check if a specific parameter category is currently active
|
|
481
486
|
*/
|
package/dist/index.js
CHANGED
|
@@ -2094,6 +2094,25 @@ class VijiCore {
|
|
|
2094
2094
|
)
|
|
2095
2095
|
}));
|
|
2096
2096
|
}
|
|
2097
|
+
/**
|
|
2098
|
+
* Get all parameter groups without capability filtering.
|
|
2099
|
+
* Returns a deep-cloned structure to prevent external mutation.
|
|
2100
|
+
*/
|
|
2101
|
+
getAllParameterGroups() {
|
|
2102
|
+
const allGroups = this.getParameterGroups();
|
|
2103
|
+
return allGroups.map((group) => ({
|
|
2104
|
+
...group,
|
|
2105
|
+
parameters: Object.fromEntries(
|
|
2106
|
+
Object.entries(group.parameters).map(([name, def]) => {
|
|
2107
|
+
const clonedDef = { ...def };
|
|
2108
|
+
if (def.config) {
|
|
2109
|
+
clonedDef.config = { ...def.config };
|
|
2110
|
+
}
|
|
2111
|
+
return [name, clonedDef];
|
|
2112
|
+
})
|
|
2113
|
+
)
|
|
2114
|
+
}));
|
|
2115
|
+
}
|
|
2097
2116
|
/**
|
|
2098
2117
|
* Check if a specific parameter category is currently active
|
|
2099
2118
|
*/
|
|
@@ -2506,7 +2525,7 @@ class VijiCore {
|
|
|
2506
2525
|
}
|
|
2507
2526
|
}
|
|
2508
2527
|
}
|
|
2509
|
-
const VERSION = "0.2.
|
|
2528
|
+
const VERSION = "0.2.4";
|
|
2510
2529
|
export {
|
|
2511
2530
|
VERSION,
|
|
2512
2531
|
VijiCore,
|