@firecms/neat 0.8.0 → 0.9.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.
@@ -36,6 +36,7 @@ export declare class NeatGradient implements NeatController {
36
36
  private _grainSparsity;
37
37
  private _grainSpeed;
38
38
  private _colorBlending;
39
+ private _resolution;
39
40
  private _colors;
40
41
  private _wireframe;
41
42
  private _backgroundColor;
@@ -55,6 +56,7 @@ export declare class NeatGradient implements NeatController {
55
56
  private _textureColorBlending;
56
57
  private _textureSeed;
57
58
  private _textureEase;
59
+ private _transparentTextureVoid;
58
60
  private _domainWarpEnabled;
59
61
  private _domainWarpIntensity;
60
62
  private _domainWarpScale;
@@ -71,6 +73,30 @@ export declare class NeatGradient implements NeatController {
71
73
  private _bloomIntensity;
72
74
  private _bloomThreshold;
73
75
  private _chromaticAberration;
76
+ private _silhouetteFade;
77
+ private _cylinderFade;
78
+ private _ribbonFade;
79
+ private _shapeType;
80
+ private _shapeRotationX;
81
+ private _shapeRotationY;
82
+ private _shapeRotationZ;
83
+ private _shapeAutoRotateSpeedX;
84
+ private _shapeAutoRotateSpeedY;
85
+ private _sphereRadius;
86
+ private _torusRadius;
87
+ private _torusTube;
88
+ private _cylinderRadius;
89
+ private _cylinderHeight;
90
+ private _planeBend;
91
+ private _planeTwist;
92
+ private _cameraLock;
93
+ private _cameraX;
94
+ private _cameraY;
95
+ private _cameraZ;
96
+ private _cameraRotationX;
97
+ private _cameraRotationY;
98
+ private _cameraRotationZ;
99
+ private _cameraZoom;
74
100
  private _proceduralTexture;
75
101
  private _proceduralBackgroundColor;
76
102
  private _textureShapeTriangles;
@@ -86,6 +112,10 @@ export declare class NeatGradient implements NeatController {
86
112
  private _yOffsetWaveMultiplier;
87
113
  private _yOffsetColorMultiplier;
88
114
  private _yOffsetFlowMultiplier;
115
+ private _sourceCanvas;
116
+ private _sourceCtx;
117
+ private _maskedCanvas;
118
+ private _maskedCtx;
89
119
  private _resizeTimeoutId;
90
120
  private _textureNeedsUpdate;
91
121
  private _linkCheckCounter;
@@ -99,26 +129,67 @@ export declare class NeatGradient implements NeatController {
99
129
  });
100
130
  destroy(): void;
101
131
  downloadAsPNG(filename?: string): void;
132
+ /**
133
+ * Records the canvas animation as a video with a NEAT watermark overlay.
134
+ * @param options.durationMs Recording duration in milliseconds (default 5000).
135
+ * @param options.filename Output file name (default "neat.firecms.co").
136
+ * @param options.width Output video width in pixels (default: current canvas width).
137
+ * @param options.height Output video height in pixels (default: current canvas height).
138
+ * @param options.format Preferred format: 'mp4' or 'webm' (default: best available).
139
+ * @param options.onProgress Callback with progress 0-1.
140
+ * @param options.onComplete Callback when recording finishes.
141
+ * @returns A stop function to end recording early.
142
+ */
143
+ recordVideo(options?: {
144
+ durationMs?: number;
145
+ filename?: string;
146
+ width?: number;
147
+ height?: number;
148
+ format?: 'mp4' | 'webm';
149
+ onProgress?: (progress: number) => void;
150
+ onComplete?: () => void;
151
+ }): () => void;
152
+ get speed(): number;
102
153
  set speed(speed: number);
154
+ get horizontalPressure(): number;
103
155
  set horizontalPressure(horizontalPressure: number);
156
+ get verticalPressure(): number;
104
157
  set verticalPressure(verticalPressure: number);
158
+ get waveFrequencyX(): number;
105
159
  set waveFrequencyX(waveFrequencyX: number);
160
+ get waveFrequencyY(): number;
106
161
  set waveFrequencyY(waveFrequencyY: number);
162
+ get waveAmplitude(): number;
107
163
  set waveAmplitude(waveAmplitude: number);
164
+ get colors(): NeatColor[];
108
165
  set colors(colors: NeatColor[]);
166
+ get highlights(): number;
109
167
  set highlights(highlights: number);
168
+ get shadows(): number;
110
169
  set shadows(shadows: number);
170
+ get colorSaturation(): number;
111
171
  set colorSaturation(colorSaturation: number);
172
+ get colorBrightness(): number;
112
173
  set colorBrightness(colorBrightness: number);
174
+ get colorBlending(): number;
113
175
  set colorBlending(colorBlending: number);
176
+ get grainScale(): number;
114
177
  set grainScale(grainScale: number);
178
+ get grainIntensity(): number;
115
179
  set grainIntensity(grainIntensity: number);
180
+ get grainSparsity(): number;
116
181
  set grainSparsity(grainSparsity: number);
182
+ get grainSpeed(): number;
117
183
  set grainSpeed(grainSpeed: number);
184
+ get wireframe(): boolean;
118
185
  set wireframe(wireframe: boolean);
186
+ get resolution(): number;
119
187
  set resolution(resolution: number);
188
+ get backgroundColor(): string;
120
189
  set backgroundColor(backgroundColor: string);
190
+ get backgroundAlpha(): number;
121
191
  set backgroundAlpha(backgroundAlpha: number);
192
+ get yOffset(): number;
122
193
  set yOffset(yOffset: number);
123
194
  get yOffsetWaveMultiplier(): number;
124
195
  set yOffsetWaveMultiplier(value: number);
@@ -126,42 +197,125 @@ export declare class NeatGradient implements NeatController {
126
197
  set yOffsetColorMultiplier(value: number);
127
198
  get yOffsetFlowMultiplier(): number;
128
199
  set yOffsetFlowMultiplier(value: number);
200
+ get flowDistortionA(): number;
129
201
  set flowDistortionA(value: number);
202
+ get flowDistortionB(): number;
130
203
  set flowDistortionB(value: number);
204
+ get flowScale(): number;
131
205
  set flowScale(value: number);
206
+ get flowEase(): number;
132
207
  set flowEase(value: number);
133
208
  set flowEnabled(value: boolean);
134
209
  get flowEnabled(): boolean;
210
+ get enableProceduralTexture(): boolean;
135
211
  set enableProceduralTexture(value: boolean);
212
+ get textureVoidLikelihood(): number;
136
213
  set textureVoidLikelihood(value: number);
214
+ get textureVoidWidthMin(): number;
137
215
  set textureVoidWidthMin(value: number);
216
+ get textureVoidWidthMax(): number;
138
217
  set textureVoidWidthMax(value: number);
218
+ get textureBandDensity(): number;
139
219
  set textureBandDensity(value: number);
220
+ get textureColorBlending(): number;
140
221
  set textureColorBlending(value: number);
222
+ get textureSeed(): number;
141
223
  set textureSeed(value: number);
142
224
  get textureEase(): number;
143
225
  set textureEase(value: number);
226
+ get transparentTextureVoid(): boolean;
227
+ set transparentTextureVoid(value: boolean);
228
+ get proceduralBackgroundColor(): string;
144
229
  set proceduralBackgroundColor(value: string);
230
+ get textureShapeTriangles(): number;
145
231
  set textureShapeTriangles(value: number);
232
+ get textureShapeCircles(): number;
146
233
  set textureShapeCircles(value: number);
234
+ get textureShapeBars(): number;
147
235
  set textureShapeBars(value: number);
236
+ get textureShapeSquiggles(): number;
148
237
  set textureShapeSquiggles(value: number);
238
+ _updateGeometry(): void;
149
239
  _hexToRgb(hex: string): [number, number, number];
150
240
  _initScene(resolution: number): WebGLState;
151
241
  _createProceduralTexture(gl: WebGLRenderingContext | WebGL2RenderingContext): WebGLTexture | null;
242
+ get silhouetteFade(): number;
243
+ set silhouetteFade(value: number);
244
+ get cylinderFade(): number;
245
+ set cylinderFade(value: number);
246
+ get ribbonFade(): number;
247
+ set ribbonFade(value: number);
248
+ get domainWarpEnabled(): boolean;
152
249
  set domainWarpEnabled(enabled: boolean);
250
+ get domainWarpIntensity(): number;
153
251
  set domainWarpIntensity(intensity: number);
252
+ get domainWarpScale(): number;
154
253
  set domainWarpScale(scale: number);
254
+ get vignetteIntensity(): number;
155
255
  set vignetteIntensity(intensity: number);
256
+ get vignetteRadius(): number;
156
257
  set vignetteRadius(radius: number);
258
+ get fresnelEnabled(): boolean;
157
259
  set fresnelEnabled(enabled: boolean);
260
+ get fresnelPower(): number;
158
261
  set fresnelPower(power: number);
262
+ get fresnelIntensity(): number;
159
263
  set fresnelIntensity(intensity: number);
264
+ get fresnelColor(): string;
160
265
  set fresnelColor(fresnelColor: string);
266
+ get iridescenceEnabled(): boolean;
161
267
  set iridescenceEnabled(enabled: boolean);
268
+ get iridescenceIntensity(): number;
162
269
  set iridescenceIntensity(intensity: number);
270
+ get iridescenceSpeed(): number;
163
271
  set iridescenceSpeed(speed: number);
272
+ get bloomIntensity(): number;
164
273
  set bloomIntensity(intensity: number);
274
+ get bloomThreshold(): number;
165
275
  set bloomThreshold(threshold: number);
276
+ get chromaticAberration(): number;
166
277
  set chromaticAberration(aberration: number);
278
+ get shapeType(): 'plane' | 'sphere' | 'torus' | 'cylinder' | 'ribbon';
279
+ set shapeType(val: 'plane' | 'sphere' | 'torus' | 'cylinder' | 'ribbon');
280
+ get shapeRotationX(): number;
281
+ set shapeRotationX(val: number);
282
+ get shapeRotationY(): number;
283
+ set shapeRotationY(val: number);
284
+ get shapeRotationZ(): number;
285
+ set shapeRotationZ(val: number);
286
+ get shapeAutoRotateSpeedX(): number;
287
+ set shapeAutoRotateSpeedX(val: number);
288
+ get shapeAutoRotateSpeedY(): number;
289
+ set shapeAutoRotateSpeedY(val: number);
290
+ get sphereRadius(): number;
291
+ set sphereRadius(val: number);
292
+ get torusRadius(): number;
293
+ set torusRadius(val: number);
294
+ get torusTube(): number;
295
+ set torusTube(val: number);
296
+ get cylinderRadius(): number;
297
+ set cylinderRadius(val: number);
298
+ get cylinderHeight(): number;
299
+ set cylinderHeight(val: number);
300
+ get planeBend(): number;
301
+ set planeBend(val: number);
302
+ get planeTwist(): number;
303
+ set planeTwist(val: number);
304
+ get cameraLock(): boolean;
305
+ set cameraLock(val: boolean);
306
+ get cameraX(): number;
307
+ set cameraX(val: number);
308
+ get cameraY(): number;
309
+ set cameraY(val: number);
310
+ get cameraZ(): number;
311
+ set cameraZ(val: number);
312
+ get cameraRotationX(): number;
313
+ set cameraRotationX(val: number);
314
+ get cameraRotationY(): number;
315
+ set cameraRotationY(val: number);
316
+ get cameraRotationZ(): number;
317
+ set cameraRotationZ(val: number);
318
+ get cameraZoom(): number;
319
+ set cameraZoom(val: number);
320
+ _updateCameraFrustum(): void;
167
321
  }