gradiente 2.0.1 → 2.1.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.
- package/LICENSE +21 -0
- package/README.md +110 -93
- package/dist/gradiente.global.iife.js +60 -0
- package/dist/{index.d.mts → index.d.ts} +53 -26
- package/dist/{index.mjs → index.js} +630 -107
- package/package.json +16 -18
|
@@ -10,14 +10,14 @@ declare function fromPercent(value: number): number;
|
|
|
10
10
|
//#region src/utils/math/angle.d.ts
|
|
11
11
|
type AngleUnit = 'deg' | 'rad' | 'turn' | 'grad';
|
|
12
12
|
declare function isAngleUnit(unit: string): unit is AngleUnit;
|
|
13
|
+
declare function isAngle(value: string): boolean;
|
|
14
|
+
declare function angleValueFromString(value: string): number;
|
|
13
15
|
declare function degToRad(value: number): number;
|
|
14
16
|
declare function radToDeg(value: number): number;
|
|
15
17
|
declare function turnToRad(value: number): number;
|
|
16
18
|
declare function gradToRad(value: number): number;
|
|
17
19
|
declare function normalizeAngleDeg(value: number, digits?: number): number;
|
|
18
|
-
declare function normalizeAngleRad(value: number): number;
|
|
19
|
-
declare function toAngleRad(value: number, unit: AngleUnit): number;
|
|
20
|
-
declare function normalizeAngle(value: number, unit: AngleUnit, digits?: number): number;
|
|
20
|
+
declare function normalizeAngleRad(value: number, digits?: number): number;
|
|
21
21
|
//#endregion
|
|
22
22
|
//#region src/abi.d.ts
|
|
23
23
|
/***************************************************************************************************/
|
|
@@ -84,6 +84,17 @@ declare function matchExpression(classified: GradientAbiInput[], patternTokens:
|
|
|
84
84
|
declare function isValid(input: GradientAbiInput[], pattern: string): boolean;
|
|
85
85
|
declare function validate(classified: GradientAbiInput[], pattern: string): boolean;
|
|
86
86
|
//#endregion
|
|
87
|
+
//#region src/gradients/helpers.d.ts
|
|
88
|
+
declare const GRADIENT_COLOR_SPACE: readonly ["oklab", "lch", "oklch", "hsl", "hwb", "lab", "srgb", "srgb-linear", "xyz", "display-p3", "a98-rgb", "prophoto-rgb", "rec2020"];
|
|
89
|
+
declare const GRADIENT_HUE_INTERPOLATIONS: readonly ['shorter', 'longer', 'increasing', 'decreasing'];
|
|
90
|
+
declare const GRADIENT_POLAR_COLOR_SPACES: readonly ["hsl", "hwb", "lch", "oklch"];
|
|
91
|
+
type GradientHueInterpolation = (typeof GRADIENT_HUE_INTERPOLATIONS)[number];
|
|
92
|
+
type GradientColorSpace = (typeof GRADIENT_COLOR_SPACE)[number];
|
|
93
|
+
type GradientPolarColorSpace = (typeof GRADIENT_POLAR_COLOR_SPACES)[number];
|
|
94
|
+
declare function isGradientHueInterpolation(value: string): value is GradientHueInterpolation;
|
|
95
|
+
declare function isGradientColorSpace(value: string): value is GradientColorSpace;
|
|
96
|
+
declare function isGradientPolarColorSpace(value: string): value is GradientPolarColorSpace;
|
|
97
|
+
//#endregion
|
|
87
98
|
//#region src/gradients/types.d.ts
|
|
88
99
|
/**
|
|
89
100
|
* Shared scalar units
|
|
@@ -131,7 +142,6 @@ type GradientPosition = {
|
|
|
131
142
|
*/
|
|
132
143
|
type GradientHueInterpolationMethod = "shorter" | "longer" | "increasing" | "decreasing";
|
|
133
144
|
type GradientRectangularColorSpace = "srgb" | "srgb-linear" | "display-p3" | "display-p3-linear" | "a98-rgb" | "prophoto-rgb" | "rec2020" | "lab" | "oklab" | "xyz" | "xyz-d50" | "xyz-d65";
|
|
134
|
-
type GradientPolarColorSpace = "hsl" | "hwb" | "lch" | "oklch";
|
|
135
145
|
type GradientColorInterpolation = {
|
|
136
146
|
kind: "rectangular";
|
|
137
147
|
space: GradientRectangularColorSpace;
|
|
@@ -236,21 +246,28 @@ declare abstract class GradientBase<TConfig = unknown> implements IGradientBase<
|
|
|
236
246
|
}
|
|
237
247
|
//#endregion
|
|
238
248
|
//#region src/gradients/LinearGradient.d.ts
|
|
239
|
-
type
|
|
249
|
+
type GradientInterpolation = {
|
|
250
|
+
colorSpace: GradientColorSpace;
|
|
251
|
+
hue?: GradientHueInterpolation;
|
|
252
|
+
};
|
|
253
|
+
type LinearGradientConfig = {
|
|
240
254
|
angle: number;
|
|
255
|
+
interpolation?: GradientInterpolation;
|
|
241
256
|
};
|
|
242
257
|
declare class LinearGradient extends GradientBase<LinearGradientConfig> {
|
|
243
258
|
readonly type = "linear-gradient";
|
|
244
259
|
constructor(config: GradientData<LinearGradientConfig>);
|
|
245
|
-
static normalizeConfig(value:
|
|
246
|
-
value: number;
|
|
247
|
-
unit: AngleUnit;
|
|
248
|
-
} | string): LinearGradientConfig;
|
|
260
|
+
static normalizeConfig(value: string): LinearGradientConfig;
|
|
249
261
|
static fromString(input: string): LinearGradient;
|
|
250
262
|
static fromAbi(abi: GradientAbi): LinearGradient;
|
|
251
263
|
clone(): this;
|
|
252
264
|
toString(): string;
|
|
253
265
|
protected _validateConfig(_: LinearGradientConfig): void;
|
|
266
|
+
private static _normalizeConfigInterpolation;
|
|
267
|
+
private _parseConfigToString;
|
|
268
|
+
private _parseAngleToString;
|
|
269
|
+
private _parseInterpolationToString;
|
|
270
|
+
private static _tokenizeConfigInput;
|
|
254
271
|
}
|
|
255
272
|
//#endregion
|
|
256
273
|
//#region src/gradients/RadialGradient.d.ts
|
|
@@ -338,19 +355,6 @@ interface ICanvasPaintResult {
|
|
|
338
355
|
draw(ctx: CanvasRenderingContext2D, width: number, height: number): void;
|
|
339
356
|
}
|
|
340
357
|
//#endregion
|
|
341
|
-
//#region src/gradient-transformer/GradientTransformer.d.ts
|
|
342
|
-
declare class GradientTransformer {
|
|
343
|
-
private static readonly _modules;
|
|
344
|
-
private static _initialized;
|
|
345
|
-
static add(module: IGradientTransformerModule): void;
|
|
346
|
-
static get(target: string, gradientType: string): IGradientTransformerModule | null;
|
|
347
|
-
static remove(target: string, gradientType: string): boolean;
|
|
348
|
-
static to<TOutput = unknown>(target: string, input: string | GradientBase<any>): TOutput;
|
|
349
|
-
static from<TOutput = unknown>(target: string, gradientType: string, input: TOutput): GradientBase<any>;
|
|
350
|
-
private static _ensureInitialized;
|
|
351
|
-
private static _getKey;
|
|
352
|
-
}
|
|
353
|
-
//#endregion
|
|
354
358
|
//#region src/gradient-transformer/modules/css/ModuleTransformerLinearGradientToCss.d.ts
|
|
355
359
|
declare class ModuleTransformerLinearGradientToCss implements IGradientTransformerModule<string> {
|
|
356
360
|
readonly target = "css";
|
|
@@ -374,14 +378,14 @@ declare class ModuleTransformerConicGradientToCss implements IGradientTransforme
|
|
|
374
378
|
//#endregion
|
|
375
379
|
//#region src/gradient-transformer/modules/canvas/ModuleTransformerLinearGradientToCanvas.d.ts
|
|
376
380
|
declare class ModuleTransformerLinearGradientToCanvas implements IGradientTransformerModule<ICanvasPaintResult> {
|
|
377
|
-
readonly target = "canvas";
|
|
381
|
+
readonly target = "canvas-2d";
|
|
378
382
|
readonly gradientType = "linear-gradient";
|
|
379
383
|
to(input: GradientBase<any>): ICanvasPaintResult;
|
|
380
384
|
}
|
|
381
385
|
//#endregion
|
|
382
386
|
//#region src/gradient-transformer/modules/canvas/ModuleTransformerRadialGradientToCanvas.d.ts
|
|
383
387
|
declare class ModuleTransformerRadialGradientToCanvas implements IGradientTransformerModule<ICanvasPaintResult> {
|
|
384
|
-
readonly target = "canvas";
|
|
388
|
+
readonly target = "canvas-2d";
|
|
385
389
|
readonly gradientType = "radial-gradient";
|
|
386
390
|
to(input: GradientBase<any>): ICanvasPaintResult;
|
|
387
391
|
private _resolve;
|
|
@@ -389,7 +393,7 @@ declare class ModuleTransformerRadialGradientToCanvas implements IGradientTransf
|
|
|
389
393
|
//#endregion
|
|
390
394
|
//#region src/gradient-transformer/modules/canvas/ModuleTransformerConicGradientToCanvas.d.ts
|
|
391
395
|
declare class ModuleTransformerConicGradientToCanvas implements IGradientTransformerModule<ICanvasPaintResult> {
|
|
392
|
-
readonly target = "canvas";
|
|
396
|
+
readonly target = "canvas-2d";
|
|
393
397
|
readonly gradientType = "conic-gradient";
|
|
394
398
|
to(input: GradientBase<any>): ICanvasPaintResult;
|
|
395
399
|
private _resolvePosition;
|
|
@@ -404,4 +408,27 @@ declare class ModuleTransformerConicGradientToCanvas implements IGradientTransfo
|
|
|
404
408
|
private _clamp01;
|
|
405
409
|
}
|
|
406
410
|
//#endregion
|
|
407
|
-
|
|
411
|
+
//#region src/gradient-transformer/modules/webgl/ModuleTransformerLinearGradientToWebgl.d.ts
|
|
412
|
+
interface IWebGLPaintResult {
|
|
413
|
+
draw(canvas: HTMLCanvasElement, width: number, height: number): void;
|
|
414
|
+
}
|
|
415
|
+
declare class ModuleTransformerLinearGradientToCanvasWebGL implements IGradientTransformerModule<IWebGLPaintResult> {
|
|
416
|
+
readonly target = "canvas-webgl";
|
|
417
|
+
readonly gradientType = "linear-gradient";
|
|
418
|
+
to(input: GradientBase<any>): IWebGLPaintResult;
|
|
419
|
+
}
|
|
420
|
+
//#endregion
|
|
421
|
+
//#region src/gradient-transformer/GradientTransformer.d.ts
|
|
422
|
+
declare class GradientTransformer {
|
|
423
|
+
private static readonly _modules;
|
|
424
|
+
private static _initialized;
|
|
425
|
+
static add(module: IGradientTransformerModule): void;
|
|
426
|
+
static get(target: string, gradientType: string): IGradientTransformerModule | null;
|
|
427
|
+
static remove(target: string, gradientType: string): boolean;
|
|
428
|
+
static to<TOutput = unknown>(target: string, input: string | GradientBase<any>): TOutput;
|
|
429
|
+
static from<TOutput = unknown>(target: string, gradientType: string, input: TOutput): GradientBase<any>;
|
|
430
|
+
private static _ensureInitialized;
|
|
431
|
+
private static _getKey;
|
|
432
|
+
}
|
|
433
|
+
//#endregion
|
|
434
|
+
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, IWebGLPaintResult, LinearGradient, LinearGradientConfig, ModuleTransformerConicGradientToCanvas, ModuleTransformerConicGradientToCss, ModuleTransformerLinearGradientToCanvas, ModuleTransformerLinearGradientToCanvasWebGL, ModuleTransformerLinearGradientToCss, ModuleTransformerRadialGradientToCanvas, 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 };
|