gradiente 2.3.0 → 2.4.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.
- package/dist/gradiente.global.iife.js +79 -7
- package/dist/index.d.ts +170 -16
- package/dist/index.js +2134 -327
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -181,19 +181,27 @@ type GradientCommonConfig = {
|
|
|
181
181
|
//#endregion
|
|
182
182
|
//#region src/gradients/GradientBase.d.ts
|
|
183
183
|
type GradientType = string;
|
|
184
|
+
interface GradientLike<TJSON = unknown> {
|
|
185
|
+
readonly type: GradientType;
|
|
186
|
+
clone(): this;
|
|
187
|
+
toString(): string;
|
|
188
|
+
toJSON(): TJSON & {
|
|
189
|
+
type: GradientType;
|
|
190
|
+
};
|
|
191
|
+
}
|
|
184
192
|
interface GradientData<TConfig = unknown> {
|
|
185
193
|
isRepeating: boolean;
|
|
186
194
|
config: TConfig;
|
|
187
195
|
stops: GradientStop[];
|
|
188
196
|
}
|
|
189
|
-
interface IGradientBase<TConfig = unknown> {
|
|
197
|
+
interface IGradientBase<TConfig = unknown> extends GradientLike<GradientData<TConfig>> {
|
|
190
198
|
readonly type: GradientType;
|
|
191
199
|
readonly isRepeating: boolean;
|
|
192
200
|
readonly config: TConfig;
|
|
193
201
|
readonly stops: GradientStop[];
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
202
|
+
toJSON(): GradientData<TConfig> & {
|
|
203
|
+
type: GradientType;
|
|
204
|
+
};
|
|
197
205
|
addStop(stop: GradientStop): void;
|
|
198
206
|
removeStop(index: number): void;
|
|
199
207
|
equals(other: IGradientBase<TConfig>): boolean;
|
|
@@ -289,7 +297,7 @@ type RadialGradientConfig = {
|
|
|
289
297
|
};
|
|
290
298
|
declare class RadialGradient extends GradientBase<RadialGradientConfig> {
|
|
291
299
|
private static readonly DEFAULT_CONFIG;
|
|
292
|
-
readonly type
|
|
300
|
+
readonly type: GradientType;
|
|
293
301
|
constructor(input: Partial<GradientData<RadialGradientConfig>>);
|
|
294
302
|
static fromString(input: string): RadialGradient;
|
|
295
303
|
static fromAbi(abi: GradientAbi): RadialGradient;
|
|
@@ -305,11 +313,21 @@ declare class RadialGradient extends GradientBase<RadialGradientConfig> {
|
|
|
305
313
|
private _isDefaultRadialPosition;
|
|
306
314
|
private _serializePosition;
|
|
307
315
|
private _formatLengthPercentage;
|
|
308
|
-
|
|
316
|
+
protected static _parseConfig(inputs: GradientAbiInput[]): RadialGradientConfig;
|
|
309
317
|
private static _parseLengthPercentage;
|
|
310
318
|
private static _normalizeConfigInterpolation;
|
|
311
319
|
}
|
|
312
320
|
//#endregion
|
|
321
|
+
//#region src/gradients/DiamondGradient.d.ts
|
|
322
|
+
type DiamondGradientConfig = RadialGradientConfig;
|
|
323
|
+
declare class DiamondGradient extends RadialGradient {
|
|
324
|
+
readonly type: GradientType;
|
|
325
|
+
constructor(input: Partial<GradientData<DiamondGradientConfig>>);
|
|
326
|
+
static fromString(input: string): DiamondGradient;
|
|
327
|
+
static fromAbi(abi: GradientAbi): DiamondGradient;
|
|
328
|
+
clone(): this;
|
|
329
|
+
}
|
|
330
|
+
//#endregion
|
|
313
331
|
//#region src/gradients/ConicGradient.d.ts
|
|
314
332
|
type ConicGradientConfig = {
|
|
315
333
|
from: GradientAngleValue;
|
|
@@ -335,8 +353,96 @@ declare class ConicGradient extends GradientBase<ConicGradientConfig> {
|
|
|
335
353
|
private static _parseAngle;
|
|
336
354
|
}
|
|
337
355
|
//#endregion
|
|
356
|
+
//#region src/gradients/MeshGradient.d.ts
|
|
357
|
+
type MeshGradientInterpolationMethod = "bilinear" | "bicubic";
|
|
358
|
+
type MeshGradientPatchSide = "top" | "right" | "bottom" | "left";
|
|
359
|
+
type MeshGradientConfig = {
|
|
360
|
+
rows: number;
|
|
361
|
+
columns: number;
|
|
362
|
+
method: MeshGradientInterpolationMethod;
|
|
363
|
+
interpolation?: GradientInterpolation;
|
|
364
|
+
};
|
|
365
|
+
type MeshGradientVertex = {
|
|
366
|
+
id: string;
|
|
367
|
+
x: GradientLengthPercentage;
|
|
368
|
+
y: GradientLengthPercentage;
|
|
369
|
+
color: string;
|
|
370
|
+
};
|
|
371
|
+
type MeshGradientHandle = {
|
|
372
|
+
x: GradientLengthPercentage;
|
|
373
|
+
y: GradientLengthPercentage;
|
|
374
|
+
};
|
|
375
|
+
type MeshGradientPatch = {
|
|
376
|
+
id: string;
|
|
377
|
+
topLeft: string;
|
|
378
|
+
topRight: string;
|
|
379
|
+
bottomRight: string;
|
|
380
|
+
bottomLeft: string;
|
|
381
|
+
handles?: {
|
|
382
|
+
top?: {
|
|
383
|
+
from: MeshGradientHandle;
|
|
384
|
+
to: MeshGradientHandle;
|
|
385
|
+
};
|
|
386
|
+
right?: {
|
|
387
|
+
from: MeshGradientHandle;
|
|
388
|
+
to: MeshGradientHandle;
|
|
389
|
+
};
|
|
390
|
+
bottom?: {
|
|
391
|
+
from: MeshGradientHandle;
|
|
392
|
+
to: MeshGradientHandle;
|
|
393
|
+
};
|
|
394
|
+
left?: {
|
|
395
|
+
from: MeshGradientHandle;
|
|
396
|
+
to: MeshGradientHandle;
|
|
397
|
+
};
|
|
398
|
+
};
|
|
399
|
+
};
|
|
400
|
+
type MeshGradientData = {
|
|
401
|
+
config: MeshGradientConfig;
|
|
402
|
+
vertices: MeshGradientVertex[];
|
|
403
|
+
patches: MeshGradientPatch[];
|
|
404
|
+
};
|
|
405
|
+
declare class MeshGradient implements GradientLike<MeshGradientData> {
|
|
406
|
+
readonly type = "mesh-gradient";
|
|
407
|
+
private readonly _config;
|
|
408
|
+
private readonly _vertices;
|
|
409
|
+
private readonly _patches;
|
|
410
|
+
constructor(input: MeshGradientData);
|
|
411
|
+
get config(): MeshGradientConfig;
|
|
412
|
+
get vertices(): MeshGradientVertex[];
|
|
413
|
+
get patches(): MeshGradientPatch[];
|
|
414
|
+
static fromString(input: string): MeshGradient;
|
|
415
|
+
static fromAbi(abi: GradientAbi): MeshGradient;
|
|
416
|
+
clone(): this;
|
|
417
|
+
toJSON(): MeshGradientData & {
|
|
418
|
+
type: "mesh-gradient";
|
|
419
|
+
};
|
|
420
|
+
toString(): string;
|
|
421
|
+
getVertex(id: string): MeshGradientVertex | null;
|
|
422
|
+
private _serializeConfig;
|
|
423
|
+
private _serializeVertex;
|
|
424
|
+
private _serializePatch;
|
|
425
|
+
private _serializeHandles;
|
|
426
|
+
private _formatLengthPercentage;
|
|
427
|
+
private _validate;
|
|
428
|
+
private _validateId;
|
|
429
|
+
private _validateHandles;
|
|
430
|
+
private _validateLengthPercentage;
|
|
431
|
+
private static _parseConfig;
|
|
432
|
+
private static _parseVertex;
|
|
433
|
+
private static _parsePatch;
|
|
434
|
+
private static _parseHandle;
|
|
435
|
+
private static _attachHandles;
|
|
436
|
+
private static _parseLengthPercentage;
|
|
437
|
+
private static _normalizeInterpolation;
|
|
438
|
+
private static _parseFunction;
|
|
439
|
+
private static _findOuterClosingParenIndex;
|
|
440
|
+
private static _splitTopLevelInputs;
|
|
441
|
+
private static _pushTrimmed;
|
|
442
|
+
}
|
|
443
|
+
//#endregion
|
|
338
444
|
//#region src/gradients/GradientFactory.d.ts
|
|
339
|
-
interface IGradientStatic<TGradient extends
|
|
445
|
+
interface IGradientStatic<TGradient extends GradientLike = GradientLike> {
|
|
340
446
|
fromAbi(abi: GradientAbi): TGradient;
|
|
341
447
|
fromString(input: string): TGradient;
|
|
342
448
|
}
|
|
@@ -346,23 +452,24 @@ declare class GradientFactory {
|
|
|
346
452
|
static add(type: string, value: IGradientStatic): void;
|
|
347
453
|
static get(functionName: string): IGradientStatic | null;
|
|
348
454
|
static remove(functionName: string): boolean;
|
|
349
|
-
static create(input: string | GradientAbi):
|
|
455
|
+
static create(input: string | GradientAbi): AnyGradient;
|
|
350
456
|
static isValid(input: string): boolean;
|
|
351
457
|
private static _ensureInitialized;
|
|
458
|
+
private static _getFunctionName;
|
|
352
459
|
}
|
|
353
|
-
type AnyGradient = LinearGradient | RadialGradient | ConicGradient;
|
|
460
|
+
type AnyGradient = LinearGradient | RadialGradient | DiamondGradient | ConicGradient | MeshGradient;
|
|
354
461
|
declare function parse(input: string): AnyGradient;
|
|
355
462
|
declare function isGradient(input: string): boolean;
|
|
356
463
|
declare function format(input: string | AnyGradient): string;
|
|
357
|
-
declare function transformTo(target: string, input: string |
|
|
358
|
-
declare function transformFrom<TInput = unknown>(target: string, gradientType: string, input: TInput):
|
|
464
|
+
declare function transformTo(target: string, input: string | AnyGradient): unknown;
|
|
465
|
+
declare function transformFrom<TInput = unknown>(target: string, gradientType: string, input: TInput): AnyGradient;
|
|
359
466
|
//#endregion
|
|
360
467
|
//#region src/gradient-transformer/modules/types.d.ts
|
|
361
468
|
interface IGradientTransformerModule<TOutput = unknown> {
|
|
362
469
|
readonly target: string;
|
|
363
470
|
readonly gradientType: string;
|
|
364
|
-
to(input:
|
|
365
|
-
from?(input: TOutput):
|
|
471
|
+
to(input: GradientLike): TOutput;
|
|
472
|
+
from?(input: TOutput): GradientLike;
|
|
366
473
|
}
|
|
367
474
|
interface ICanvasPaintResult {
|
|
368
475
|
draw(ctx: CanvasRenderingContext2D, width: number, height: number): void;
|
|
@@ -382,6 +489,13 @@ declare class ModuleTransformerRadialGradientToCss implements IGradientTransform
|
|
|
382
489
|
to(input: GradientBase<any>): string;
|
|
383
490
|
}
|
|
384
491
|
//#endregion
|
|
492
|
+
//#region src/gradient-transformer/modules/css/ModuleTransformerDiamondGradientToCss.d.ts
|
|
493
|
+
declare class ModuleTransformerDiamondGradientToCss implements IGradientTransformerModule<string> {
|
|
494
|
+
readonly target = "css";
|
|
495
|
+
readonly gradientType = "diamond-gradient";
|
|
496
|
+
to(input: GradientBase<any>): string;
|
|
497
|
+
}
|
|
498
|
+
//#endregion
|
|
385
499
|
//#region src/gradient-transformer/modules/css/ModuleTransformerConicGradientToCss.d.ts
|
|
386
500
|
declare class ModuleTransformerConicGradientToCss implements IGradientTransformerModule<string> {
|
|
387
501
|
readonly target = "css";
|
|
@@ -389,6 +503,13 @@ declare class ModuleTransformerConicGradientToCss implements IGradientTransforme
|
|
|
389
503
|
to(input: GradientBase<any>): string;
|
|
390
504
|
}
|
|
391
505
|
//#endregion
|
|
506
|
+
//#region src/gradient-transformer/modules/css/ModuleTransformerMeshGradientToCss.d.ts
|
|
507
|
+
declare class ModuleTransformerMeshGradientToCss implements IGradientTransformerModule<string> {
|
|
508
|
+
readonly target = "css";
|
|
509
|
+
readonly gradientType = "mesh-gradient";
|
|
510
|
+
to(input: GradientLike): string;
|
|
511
|
+
}
|
|
512
|
+
//#endregion
|
|
392
513
|
//#region src/gradient-transformer/modules/canvas/ModuleTransformerLinearGradientToCanvas.d.ts
|
|
393
514
|
declare class ModuleTransformerLinearGradientToCanvas implements IGradientTransformerModule<ICanvasPaintResult> {
|
|
394
515
|
readonly target = "canvas-2d";
|
|
@@ -408,6 +529,18 @@ declare class ModuleTransformerRadialGradientToCanvas implements IGradientTransf
|
|
|
408
529
|
private _resolve;
|
|
409
530
|
}
|
|
410
531
|
//#endregion
|
|
532
|
+
//#region src/gradient-transformer/modules/canvas/ModuleTransformerDiamondGradientToCanvas.d.ts
|
|
533
|
+
declare class ModuleTransformerDiamondGradientToCanvas implements IGradientTransformerModule<ICanvasPaintResult> {
|
|
534
|
+
readonly target = "canvas-2d";
|
|
535
|
+
readonly gradientType = "diamond-gradient";
|
|
536
|
+
to(input: GradientBase<any>): ICanvasPaintResult;
|
|
537
|
+
private _resolveCenter;
|
|
538
|
+
private _resolveKeywordX;
|
|
539
|
+
private _resolveKeywordY;
|
|
540
|
+
private _resolveDiamondRadii;
|
|
541
|
+
private _resolve;
|
|
542
|
+
}
|
|
543
|
+
//#endregion
|
|
411
544
|
//#region src/gradient-transformer/modules/canvas/ModuleTransformerConicGradientToCanvas.d.ts
|
|
412
545
|
declare class ModuleTransformerConicGradientToCanvas implements IGradientTransformerModule<ICanvasPaintResult> {
|
|
413
546
|
readonly target = "canvas-2d";
|
|
@@ -425,6 +558,13 @@ declare class ModuleTransformerConicGradientToCanvas implements IGradientTransfo
|
|
|
425
558
|
private _clamp01;
|
|
426
559
|
}
|
|
427
560
|
//#endregion
|
|
561
|
+
//#region src/gradient-transformer/modules/canvas/ModuleTransformerMeshGradientToCanvas.d.ts
|
|
562
|
+
declare class ModuleTransformerMeshGradientToCanvas implements IGradientTransformerModule<ICanvasPaintResult> {
|
|
563
|
+
readonly target = "canvas-2d";
|
|
564
|
+
readonly gradientType = "mesh-gradient";
|
|
565
|
+
to(input: GradientLike): ICanvasPaintResult;
|
|
566
|
+
}
|
|
567
|
+
//#endregion
|
|
428
568
|
//#region src/gradient-transformer/modules/webgl/types.d.ts
|
|
429
569
|
interface IWebGLPaintResult {
|
|
430
570
|
draw(canvas: HTMLCanvasElement, width: number, height: number): void;
|
|
@@ -451,6 +591,20 @@ declare class ModuleTransformerRadialGradientToCanvasWebGL implements IGradientT
|
|
|
451
591
|
to(input: GradientBase<any>): IWebGLPaintResult;
|
|
452
592
|
}
|
|
453
593
|
//#endregion
|
|
594
|
+
//#region src/gradient-transformer/modules/webgl/ModuleTransformerDiamondGradientToWebgl.d.ts
|
|
595
|
+
declare class ModuleTransformerDiamondGradientToCanvasWebGL implements IGradientTransformerModule<IWebGLPaintResult> {
|
|
596
|
+
readonly target = "canvas-webgl";
|
|
597
|
+
readonly gradientType = "diamond-gradient";
|
|
598
|
+
to(input: GradientBase<any>): IWebGLPaintResult;
|
|
599
|
+
}
|
|
600
|
+
//#endregion
|
|
601
|
+
//#region src/gradient-transformer/modules/webgl/ModuleTransformerMeshGradientToWebgl.d.ts
|
|
602
|
+
declare class ModuleTransformerMeshGradientToCanvasWebGL implements IGradientTransformerModule<IWebGLPaintResult> {
|
|
603
|
+
readonly target = "canvas-webgl";
|
|
604
|
+
readonly gradientType = "mesh-gradient";
|
|
605
|
+
to(input: GradientLike): IWebGLPaintResult;
|
|
606
|
+
}
|
|
607
|
+
//#endregion
|
|
454
608
|
//#region src/gradient-transformer/GradientTransformer.d.ts
|
|
455
609
|
declare class GradientTransformer {
|
|
456
610
|
private static readonly _modules;
|
|
@@ -458,10 +612,10 @@ declare class GradientTransformer {
|
|
|
458
612
|
static add(module: IGradientTransformerModule): void;
|
|
459
613
|
static get(target: string, gradientType: string): IGradientTransformerModule | null;
|
|
460
614
|
static remove(target: string, gradientType: string): boolean;
|
|
461
|
-
static to<TOutput = unknown>(target: string, input: string |
|
|
462
|
-
static from<TOutput = unknown>(target: string, gradientType: string, input: TOutput):
|
|
615
|
+
static to<TOutput = unknown>(target: string, input: string | GradientLike): TOutput;
|
|
616
|
+
static from<TOutput = unknown>(target: string, gradientType: string, input: TOutput): AnyGradient;
|
|
463
617
|
private static _ensureInitialized;
|
|
464
618
|
private static _getKey;
|
|
465
619
|
}
|
|
466
620
|
//#endregion
|
|
467
|
-
export { AbiInputType, AngleUnit, AnyGradient, ConicGradient, ConicGradientConfig, GRADIENT_COLOR_SPACE, GRADIENT_HUE_INTERPOLATIONS, GRADIENT_POLAR_COLOR_SPACES, GradientAbi, GradientAbiInput, GradientAngleUnit, GradientAngleValue, GradientBase, GradientColorHint, GradientColorInterpolation, GradientColorSpace, GradientColorStop, GradientCommonConfig, GradientData, GradientFactory, GradientHueInterpolation, GradientHueInterpolationMethod, GradientInterpolation, GradientLengthPercentage, GradientLengthUnit, GradientLengthValue, GradientNumberValue, GradientPercentValue, GradientPolarColorSpace, GradientPosition, GradientPositionKeywordX, GradientPositionKeywordY, GradientRectangularColorSpace, GradientStop, GradientTransformer, GradientType, ICanvasPaintResult, IGradientBase, IGradientStatic, IGradientTransformerModule, LinearGradient, LinearGradientConfig, ModuleTransformerConicGradientToCanvas, ModuleTransformerConicGradientToCanvasWebGL, ModuleTransformerConicGradientToCss, ModuleTransformerLinearGradientToCanvas, ModuleTransformerLinearGradientToCanvasWebGL, ModuleTransformerLinearGradientToCss, ModuleTransformerRadialGradientToCanvas, ModuleTransformerRadialGradientToCanvasWebGL, ModuleTransformerRadialGradientToCss, PatternTokenKind, RadialGradient, RadialGradientConfig, RadialGradientExtent, RadialGradientShape, RadialGradientSize, angleValueFromString, ceilTo, clamp, degToRad, floorTo, format, fromPercent, gradToRad, isAngle, isAngleUnit, isColorHint, isColorStop, isConfig, isGradient, isGradientColorSpace, isGradientHueInterpolation, isGradientPolarColorSpace, isPatternSyntaxValid, isPatternValid, isValid, matchExpression, normalizeAngleDeg, normalizeAngleRad, parse, parseStringToAbi, radToDeg, roundTo, splitTopLevelByWhitespace, toPercent, tokenizePattern, transformFrom, transformTo, truncTo, turnToRad, validate, validatePattern, validatePatternSemantic, validatePatternStructure, validatePatternSyntax };
|
|
621
|
+
export { AbiInputType, AngleUnit, AnyGradient, ConicGradient, ConicGradientConfig, DiamondGradient, DiamondGradientConfig, GRADIENT_COLOR_SPACE, GRADIENT_HUE_INTERPOLATIONS, GRADIENT_POLAR_COLOR_SPACES, GradientAbi, GradientAbiInput, GradientAngleUnit, GradientAngleValue, GradientBase, GradientColorHint, GradientColorInterpolation, GradientColorSpace, GradientColorStop, GradientCommonConfig, GradientData, GradientFactory, GradientHueInterpolation, GradientHueInterpolationMethod, GradientInterpolation, GradientLengthPercentage, GradientLengthUnit, GradientLengthValue, GradientLike, GradientNumberValue, GradientPercentValue, GradientPolarColorSpace, GradientPosition, GradientPositionKeywordX, GradientPositionKeywordY, GradientRectangularColorSpace, GradientStop, GradientTransformer, GradientType, ICanvasPaintResult, IGradientBase, IGradientStatic, IGradientTransformerModule, LinearGradient, LinearGradientConfig, MeshGradient, MeshGradientConfig, MeshGradientData, MeshGradientHandle, MeshGradientInterpolationMethod, MeshGradientPatch, MeshGradientPatchSide, MeshGradientVertex, ModuleTransformerConicGradientToCanvas, ModuleTransformerConicGradientToCanvasWebGL, ModuleTransformerConicGradientToCss, ModuleTransformerDiamondGradientToCanvas, ModuleTransformerDiamondGradientToCanvasWebGL, ModuleTransformerDiamondGradientToCss, ModuleTransformerLinearGradientToCanvas, ModuleTransformerLinearGradientToCanvasWebGL, ModuleTransformerLinearGradientToCss, ModuleTransformerMeshGradientToCanvas, ModuleTransformerMeshGradientToCanvasWebGL, ModuleTransformerMeshGradientToCss, ModuleTransformerRadialGradientToCanvas, ModuleTransformerRadialGradientToCanvasWebGL, ModuleTransformerRadialGradientToCss, PatternTokenKind, RadialGradient, RadialGradientConfig, RadialGradientExtent, RadialGradientShape, RadialGradientSize, angleValueFromString, ceilTo, clamp, degToRad, floorTo, format, fromPercent, gradToRad, isAngle, isAngleUnit, isColorHint, isColorStop, isConfig, isGradient, isGradientColorSpace, isGradientHueInterpolation, isGradientPolarColorSpace, isPatternSyntaxValid, isPatternValid, isValid, matchExpression, normalizeAngleDeg, normalizeAngleRad, parse, parseStringToAbi, radToDeg, roundTo, splitTopLevelByWhitespace, toPercent, tokenizePattern, transformFrom, transformTo, truncTo, turnToRad, validate, validatePattern, validatePatternSemantic, validatePatternStructure, validatePatternSyntax };
|