modern-canvas 0.1.0 → 0.1.2

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/index.d.cts CHANGED
@@ -1,7 +1,7 @@
1
- import { Visibility, Overflow, FontWeight, FontStyle, FontKerning, TextWrap, TextAlign, VerticalAlign, TextTransform, TextDecoration, WritingMode, IDOCTextContent, IDOCStyleDeclaration } from 'modern-idoc';
1
+ import { Visibility, Overflow, IDOCTextStyleDeclaration, IDOCTransformStyleDeclaration } from 'modern-idoc';
2
2
  import { AnyColor, Colord } from 'colord';
3
3
  import { AnimationItem } from 'lottie-web';
4
- import { MeasureResult } from 'modern-text';
4
+ import { TextOptions, Text, MeasureResult } from 'modern-text';
5
5
  import { Font } from 'modern-font';
6
6
 
7
7
  interface CssFunctionArg {
@@ -1846,7 +1846,7 @@ declare class CanvasContext {
1846
1846
  toBatchables(): CanvasBatchable[];
1847
1847
  }
1848
1848
 
1849
- interface Style2DOptions extends Partial<Style2DBackgroundProperties>, Partial<Style2DFilterProperties>, Partial<Style2DOffsetProperties>, Partial<Style2DTextProperties>, Partial<Style2DTransformProperties> {
1849
+ interface Style2DOptions extends Partial<Style2DBackgroundProperties>, Partial<Style2DFilterProperties>, Partial<Style2DTextProperties>, Partial<Style2DTransformProperties> {
1850
1850
  shadowColor?: string;
1851
1851
  shadowOffsetX?: number;
1852
1852
  shadowOffsetY?: number;
@@ -1855,7 +1855,7 @@ interface Style2DOptions extends Partial<Style2DBackgroundProperties>, Partial<S
1855
1855
  borderRadius?: number;
1856
1856
  overflow?: Overflow;
1857
1857
  }
1858
- interface Style2D extends Style2DBackgroundExtend, Style2DFilterExtend, Style2DOffsetExtend, Style2DTextExtend, Style2DTransformExtend {
1858
+ interface Style2D extends Style2DBackgroundExtend, Style2DFilterExtend, Style2DTextExtend, Style2DTransformExtend {
1859
1859
  }
1860
1860
  declare class Style2D extends _Object {
1861
1861
  shadowColor: string;
@@ -1878,12 +1878,12 @@ interface Style2DBackgroundProperties {
1878
1878
  backgroundImage?: string;
1879
1879
  }
1880
1880
  interface Style2DBackgroundExtend extends Style2DBackgroundProperties {
1881
- getComputedBackground: typeof getComputedBackground;
1881
+ getComputedBackgroundImage: typeof getComputedBackgroundImage;
1882
1882
  }
1883
1883
  declare class Style2DBackgroundModule extends Style2DModule {
1884
1884
  install(Style2D: new () => Style2D): void;
1885
1885
  }
1886
- declare function getComputedBackground(this: Style2D): Promise<ColorTexture | undefined>;
1886
+ declare function getComputedBackgroundImage(this: Style2D): Promise<Texture<ImageBitmap> | undefined>;
1887
1887
 
1888
1888
  type Style2DFilterKey = 'hue-rotate' | 'saturate' | 'brightness' | 'contrast' | 'invert' | 'sepia' | 'opacity' | 'grayscale';
1889
1889
  type Style2DFilter = Record<Style2DFilterKey, number>;
@@ -1900,45 +1900,8 @@ declare class Style2DFilterModule extends Style2DModule {
1900
1900
  declare function getComputedFilter(this: Style2D): Style2DFilter;
1901
1901
  declare function getComputedFilterColorMatrix(this: Style2D): ColorMatrix;
1902
1902
 
1903
- interface Style2DOffsetProperties {
1904
- offsetPath?: string;
1905
- offsetAnchor?: string | number;
1906
- offsetDistance?: string | number;
1907
- offsetPosition?: string | number;
1908
- }
1909
- interface Style2DOffsetExtend extends Style2DOffsetProperties {
1910
- getComputedOffset: typeof getComputedOffset;
1911
- }
1912
- declare module '../Style2D' {
1913
- interface Style2DOptions extends Partial<Style2DOffsetProperties> {
1914
- }
1915
- interface Style2D extends Style2DOffsetProperties {
1916
- getComputedOffset: typeof getComputedOffset;
1917
- }
1918
- }
1919
- declare class Style2DOffsetModule extends Style2DModule {
1920
- install(Style2D: new () => Style2D): void;
1921
- }
1922
- declare function getComputedOffset(this: Style2D): void;
1923
-
1924
- interface Style2DTextProperties {
1925
- color: string;
1926
- fontSize: number;
1927
- fontWeight: FontWeight;
1928
- fontFamily: string;
1929
- fontStyle: FontStyle;
1930
- fontKerning: FontKerning;
1931
- textWrap: TextWrap;
1932
- textAlign: TextAlign;
1933
- verticalAlign: VerticalAlign;
1934
- textTransform: TextTransform;
1935
- textDecoration: TextDecoration | null;
1936
- textStrokeWidth: number;
1937
- textStrokeColor: string;
1903
+ interface Style2DTextProperties extends IDOCTextStyleDeclaration {
1938
1904
  direction: 'inherit' | 'ltr' | 'rtl';
1939
- lineHeight: number;
1940
- letterSpacing: number;
1941
- writingMode: WritingMode;
1942
1905
  }
1943
1906
  interface Style2DTextExtend extends Style2DTextProperties {
1944
1907
  }
@@ -1946,16 +1909,7 @@ declare class Style2DTextModule extends Style2DModule {
1946
1909
  install(Style2D: new () => Style2D): void;
1947
1910
  }
1948
1911
 
1949
- interface Style2DTransformProperties {
1950
- left: number;
1951
- top: number;
1952
- width: number;
1953
- height: number;
1954
- rotate: number;
1955
- scaleX: number;
1956
- scaleY: number;
1957
- transform?: string;
1958
- transformOrigin: string;
1912
+ interface Style2DTransformProperties extends IDOCTransformStyleDeclaration {
1959
1913
  }
1960
1914
  interface Style2DTransformExtend extends Style2DTransformProperties {
1961
1915
  getComputedTransform: typeof getComputedTransform;
@@ -1983,11 +1937,12 @@ declare class CanvasItem extends Node {
1983
1937
  protected _parentOpacity?: number;
1984
1938
  protected _tint: Color;
1985
1939
  protected _backgroundColor: Color;
1940
+ protected _backgroundImage?: Texture;
1986
1941
  context: CanvasContext;
1987
1942
  protected _resetContext: boolean;
1988
- protected _waitingRedraw: boolean;
1989
- protected _waitingReflow: boolean;
1990
- protected _waitingRepaint: boolean;
1943
+ protected _redrawing: boolean;
1944
+ protected _reflowing: boolean;
1945
+ protected _repainting: boolean;
1991
1946
  protected _originalBatchables: CanvasBatchable[];
1992
1947
  protected _layoutedBatchables: CanvasBatchable[];
1993
1948
  protected _batchables: CanvasBatchable[];
@@ -1995,6 +1950,8 @@ declare class CanvasItem extends Node {
1995
1950
  setProperties(properties?: Record<PropertyKey, any>): this;
1996
1951
  protected _onUpdateProperty(key: PropertyKey, newValue: any, oldValue: any, declaration?: PropertyDeclaration): void;
1997
1952
  protected _onUpdateStyleProperty(key: PropertyKey, newValue: any, oldValue: any, declaration?: PropertyDeclaration): void;
1953
+ protected _updateBackgroundColor(): void;
1954
+ protected _updateBackgroundImage(): Promise<void>;
1998
1955
  protected _updateOpacity(): void;
1999
1956
  isVisible(): boolean;
2000
1957
  requestRedraw(): void;
@@ -2002,6 +1959,9 @@ declare class CanvasItem extends Node {
2002
1959
  requestRepaint(): void;
2003
1960
  protected _process(delta: number): void;
2004
1961
  protected _draw(): void;
1962
+ protected _drawBackground(): void;
1963
+ protected _drawContent(): void;
1964
+ protected _fill(): void;
2005
1965
  protected _relayout(batchables: CanvasBatchable[]): CanvasBatchable[];
2006
1966
  protected _reflow(batchables: CanvasBatchable[]): CanvasBatchable[];
2007
1967
  protected _repaint(batchables: CanvasBatchable[]): CanvasBatchable[];
@@ -2018,29 +1978,13 @@ declare class Node2D extends CanvasItem {
2018
1978
  getBoundingBox(): Rectangle;
2019
1979
  protected _onUpdateStyleProperty(key: PropertyKey, value: any, oldValue: any): void;
2020
1980
  protected _updateTransform(): void;
1981
+ protected _updateOverflow(): void;
2021
1982
  protected _transformVertices(vertices: number[]): number[];
2022
1983
  protected _reflow(batchables: CanvasBatchable[]): CanvasBatchable[];
2023
1984
  protected _process(delta: number): void;
2024
1985
  input(event: UIEvent): void;
2025
1986
  }
2026
1987
 
2027
- interface Element2DOptions extends Node2DOptions {
2028
- draggable?: boolean;
2029
- }
2030
- declare class Element2D extends Node2D {
2031
- draggable?: boolean;
2032
- protected _background?: Texture;
2033
- constructor(options?: Element2DOptions);
2034
- protected _onUpdateStyleProperty(key: PropertyKey, value: any, oldValue: any): void;
2035
- protected _updateBackground(): Promise<void>;
2036
- protected _updateTransform(): void;
2037
- protected _updateOverflow(): void;
2038
- protected _draw(): void;
2039
- protected _drawBackground(): void;
2040
- protected _drawContent(): void;
2041
- protected _drawRect(): void;
2042
- }
2043
-
2044
1988
  declare class Graphics2D extends Node2D {
2045
1989
  protected _resetContext: boolean;
2046
1990
  lineCap?: LineCap;
@@ -2077,11 +2021,11 @@ declare class Image2DResource extends Resource {
2077
2021
  destroy(): void;
2078
2022
  }
2079
2023
 
2080
- interface Image2DOptions extends Element2DOptions {
2024
+ interface Image2DOptions extends Node2DOptions {
2081
2025
  src?: string;
2082
2026
  gif?: boolean;
2083
2027
  }
2084
- declare class Image2D extends Element2D {
2028
+ declare class Image2D extends Node2D {
2085
2029
  resource?: Image2DResource;
2086
2030
  gif: boolean;
2087
2031
  src: string;
@@ -2105,11 +2049,11 @@ declare class Image2D extends Element2D {
2105
2049
  protected _repaint(batchables: CanvasBatchable[]): CanvasBatchable[];
2106
2050
  }
2107
2051
 
2108
- interface LottieOptions extends Element2DOptions {
2052
+ interface LottieOptions extends Node2DOptions {
2109
2053
  pixelRatio?: number;
2110
2054
  src?: string;
2111
2055
  }
2112
- declare class Lottie2D extends Element2D {
2056
+ declare class Lottie2D extends Node2D {
2113
2057
  pixelRatio: number;
2114
2058
  src: string;
2115
2059
  duration: number;
@@ -2123,21 +2067,33 @@ declare class Lottie2D extends Element2D {
2123
2067
  protected _drawContent(): void;
2124
2068
  }
2125
2069
 
2126
- interface Text2DOptions extends Element2DOptions {
2070
+ interface Text2DOptions extends Node2DOptions, Omit<TextOptions, 'style'> {
2127
2071
  pixelRatio?: number;
2128
2072
  split?: boolean;
2129
- content?: IDOCTextContent;
2130
- effects?: Partial<IDOCStyleDeclaration>[];
2131
2073
  }
2132
- declare class Text2D extends Element2D {
2074
+ /**
2075
+ * @example
2076
+ *
2077
+ * new Text2D({
2078
+ * style: {
2079
+ * fontSize: 20,
2080
+ * },
2081
+ * content: 'Text2D',
2082
+ * })
2083
+ */
2084
+ declare class Text2D extends Node2D {
2133
2085
  pixelRatio: number;
2134
2086
  split: boolean;
2135
- content: IDOCTextContent;
2136
- effects?: Partial<IDOCStyleDeclaration>[];
2087
+ content: TextOptions['content'];
2088
+ effects?: TextOptions['effects'];
2089
+ measureDom?: TextOptions['measureDom'];
2090
+ fonts?: TextOptions['fonts'];
2091
+ text: Text;
2137
2092
  readonly texture: Texture<HTMLCanvasElement>;
2138
2093
  protected _subTextsCount: number;
2139
2094
  constructor(options?: Text2DOptions);
2140
2095
  protected _onUpdateProperty(key: PropertyKey, value: any, oldValue: any): void;
2096
+ protected _updateText(): void;
2141
2097
  protected _onUpdateStyleProperty(key: PropertyKey, value: any, oldValue: any): void;
2142
2098
  protected _getSubTexts(): Text2D[];
2143
2099
  protected _updateSubTexts(): void;
@@ -2146,10 +2102,10 @@ declare class Text2D extends Element2D {
2146
2102
  protected _drawContent(): void;
2147
2103
  }
2148
2104
 
2149
- interface Video2DOptions extends Element2DOptions {
2105
+ interface Video2DOptions extends Node2DOptions {
2150
2106
  src?: string;
2151
2107
  }
2152
- declare class Video2D extends Element2D {
2108
+ declare class Video2D extends Node2D {
2153
2109
  src: string;
2154
2110
  texture?: VideoTexture;
2155
2111
  get duration(): number;
@@ -2528,15 +2484,15 @@ declare class Audio extends Node {
2528
2484
  protected _setTimeStop(): void;
2529
2485
  }
2530
2486
 
2531
- declare class AudioSpectrum extends Element2D {
2487
+ declare class AudioSpectrum extends Node2D {
2532
2488
  }
2533
2489
 
2534
- interface AudioWaveformOptions extends Element2DOptions {
2490
+ interface AudioWaveformOptions extends Node2DOptions {
2535
2491
  src?: string;
2536
2492
  gap?: number;
2537
2493
  color?: string;
2538
2494
  }
2539
- declare class AudioWaveform extends Element2D {
2495
+ declare class AudioWaveform extends Node2D {
2540
2496
  src?: string;
2541
2497
  gap: number;
2542
2498
  color: string;
@@ -3112,4 +3068,4 @@ interface RenderOptions {
3112
3068
  }
3113
3069
  declare function render(options: RenderOptions): Promise<HTMLCanvasElement>;
3114
3070
 
3115
- export { Animation2D, type AnimationOptions, type AssetHandler, Assets, Audio, AudioPipeline, AudioProcessor, AudioSpectrum, AudioWaveform, type AudioWaveformOptions, type Batchable2D, BlurEffect, Bounds, type BoundsData, type CanvasBatchable, CanvasContext, CanvasItem, type CanvasItemOptions, Circle, Color, ColorAdjustEffect, ColorFilterEffect, type ColorFilterEffectOptions, ColorMatrix, ColorOverlayEffect, ColorRemoveEffect, ColorReplaceEffect, ColorTexture, type ColorValue, type CssFunction, type CssFunctionArg, type Cursor, type CustomNodeOptions, DEG_TO_RAD, DEVICE_PIXEL_RATIO, type Easing, Effect, type EffectContext, EffectMaterial, type EffectMode, type EffectOptions, Element2D, type Element2DOptions, Ellipse, EmbossEffect, Engine, type EngineOptions, EventEmitter, type EventListener, type EventListenerOptions, type EventListenerValue, type FilledGraphics, FontLoader, Geometry, type GeometryOptions, GifLoader, GlitchEffect, GodrayEffect, Graphics2D, HTMLAudio, HTMLAudioContext, HTMLSound, type IAudioContext, type IAudioNode, IN_BROWSER, type IPlayOptions, Image2D, type Image2DOptions, Image2DResource, type ImageFrame, ImageTexture, type ImageTextureOptions, IndexBuffer, type IndexBufferOptions, Input, InternalMode, JsonLoader, KawaseEffect, type Keyframe, LeftEraseEffect, type LineCap, type LineJoin, type LineStyle, Loader, Lottie2D, LottieLoader, type LottieOptions, MainLoop, type MainLoopEventMap, type MaskColor, type MaskData, MaskEffect, type MaskEffectOptions, type MaskObject, type MaskRect, type Maskable, Material, type MaterialOptions, Matrix, Matrix2, Matrix3, Matrix4, type MatrixLike, type MatrixOperateOutput, MouseInputEvent, Node, Node2D, type Node2DOptions, type NodeEventMap, type NodeOptions, type NormalizedKeyframe, PI, PI_2, Path2D, type Path2DCall, type Path2DCallMethod, type Path2DShape, PixelateEffect, PixelsTexture, type PlatformAudio, type PlatformSound, Point, type PointData, type PointLike, PointerInputEvent, Polygon, Projection2D, type PropertyDeclaration, QuadGeometry, QuadUvGeometry, RAD_TO_DEG, Rectangle, Reference, type ReferenceEventMap, type RenderCall, type RenderOptions, RenderStack, type Renderable, Renderer, Resource, type ResourceEventMap, RoundedRectangle, SUPPORTS_AUDIO_CONTEXT, SUPPORTS_CLICK_EVENTS, SUPPORTS_CREATE_IMAGE_BITMAP, SUPPORTS_IMAGE_BITMAP, SUPPORTS_MOUSE_EVENTS, SUPPORTS_OFFLINE_AUDIO_CONTEXT, SUPPORTS_POINTER_EVENTS, SUPPORTS_RESIZE_OBSERVER, SUPPORTS_TOUCH_EVENTS, SUPPORTS_WEBGL2, SUPPORTS_WEBKIT_AUDIO_CONTEXT, SUPPORTS_WEBKIT_OFFLINE_AUDIO_CONTEXT, SUPPORTS_WEB_AUDIO, SUPPORTS_WHEEL_EVENTS, SVGPath, type SVGPathDefine, type SVGPathDefineCommand, SceneTree, type SceneTreeEventMap, type Shape, type ShapeBuildCommand, Star, type StrokedGraphics, Style2D, type Style2DBackgroundExtend, Style2DBackgroundModule, type Style2DBackgroundProperties, type Style2DFilter, type Style2DFilterExtend, type Style2DFilterKey, Style2DFilterModule, type Style2DFilterProperties, Style2DModule, type Style2DOffsetExtend, Style2DOffsetModule, type Style2DOffsetProperties, type Style2DOptions, type Style2DTextExtend, Style2DTextModule, type Style2DTextProperties, type Style2DTransformExtend, Style2DTransformModule, type Style2DTransformProperties, Text2D, type Text2DOptions, TextLoader, Texture, type TextureFilterMode, TextureLoader, type TexturePixelsSource, type TextureSource, type TextureWrapMode, Ticker, TiltShiftEffect, Timer, type TimerEventMap, type TimerOptions, type TimingFunctions, Transform2D, type Transform2DObject, Triangle, TwistEffect, UIInputEvent, UvGeometry, UvMaterial, Vector, Vector2, Vector3, Vector4, type VectorLike, type VectorOperateOutput, VertexAttribute, type VertexAttributeOptions, VertexBuffer, type VertexBufferOptions, Video2D, type Video2DOptions, VideoLoader, VideoTexture, type VideoTextureOptions, type VideoTextureSource, Viewport, type ViewportFramebuffer, ViewportTexture, WebAudio, WebAudioContext, WebGLBatch2DModule, WebGLBlendMode, type WebGLBufferMeta, WebGLBufferModule, type WebGLBufferOptions, type WebGLBufferTarget, type WebGLBufferUsage, type WebGLDrawMode, type WebGLDrawOptions, type WebGLExtensions, type WebGLFramebufferMeta, WebGLFramebufferModule, type WebGLFramebufferOptions, WebGLMaskModule, WebGLModule, type WebGLProgramMeta, WebGLProgramModule, type WebGLProgramOptions, WebGLRenderer, WebGLScissorModule, WebGLState, WebGLStateModule, WebGLStencilModule, type WebGLTarget, type WebGLTextureFilterMode, type WebGLTextureLocation, type WebGLTextureMeta, WebGLTextureModule, type WebGLTextureOptions, type WebGLTextureSource, type WebGLTextureTarget, type WebGLTextureWrapMode, WebGLVertexArrayModule, type WebGLVertexArrayObjectMeta, type WebGLVertexArrayObjectOptions, type WebGLVertexAttrib, type WebGLVertexAttribType, type WebGLViewport, WebGLViewportModule, WebSound, WheelInputEvent, ZoomBlurEffect, _Object, type _ObjectEventMap, assets, buildAdaptiveBezier, buildAdaptiveQuadratic, buildArc, buildArcTo, buildArcToSvg, buildCircle, buildLine, buildPolygon, buildRectangle, buildTriangle, clamp, closePointEps, createHTMLCanvas, createNode, crossOrigin, cubicBezier, curveEps, curves, customNode, customNodes, defaultOptions, defineProperty, determineCrossOrigin, ease, easeIn, easeInOut, easeOut, getDeclarations, getDefaultCssPropertyValue, isCanvasElement, isElementNode, isImageElement, isPow2, isVideoElement, isWebgl2, lerp, linear, log2, mapWebGLBlendModes, nextPow2, nextTick, parseCssFunctions, parseCssProperty, property, protectedProperty, render, squaredDistanceToLineSegment, timingFunctions, uid };
3071
+ export { Animation2D, type AnimationOptions, type AssetHandler, Assets, Audio, AudioPipeline, AudioProcessor, AudioSpectrum, AudioWaveform, type AudioWaveformOptions, type Batchable2D, BlurEffect, Bounds, type BoundsData, type CanvasBatchable, CanvasContext, CanvasItem, type CanvasItemOptions, Circle, Color, ColorAdjustEffect, ColorFilterEffect, type ColorFilterEffectOptions, ColorMatrix, ColorOverlayEffect, ColorRemoveEffect, ColorReplaceEffect, ColorTexture, type ColorValue, type CssFunction, type CssFunctionArg, type Cursor, type CustomNodeOptions, DEG_TO_RAD, DEVICE_PIXEL_RATIO, type Easing, Effect, type EffectContext, EffectMaterial, type EffectMode, type EffectOptions, Ellipse, EmbossEffect, Engine, type EngineOptions, EventEmitter, type EventListener, type EventListenerOptions, type EventListenerValue, type FilledGraphics, FontLoader, Geometry, type GeometryOptions, GifLoader, GlitchEffect, GodrayEffect, Graphics2D, HTMLAudio, HTMLAudioContext, HTMLSound, type IAudioContext, type IAudioNode, IN_BROWSER, type IPlayOptions, Image2D, type Image2DOptions, Image2DResource, type ImageFrame, ImageTexture, type ImageTextureOptions, IndexBuffer, type IndexBufferOptions, Input, InternalMode, JsonLoader, KawaseEffect, type Keyframe, LeftEraseEffect, type LineCap, type LineJoin, type LineStyle, Loader, Lottie2D, LottieLoader, type LottieOptions, MainLoop, type MainLoopEventMap, type MaskColor, type MaskData, MaskEffect, type MaskEffectOptions, type MaskObject, type MaskRect, type Maskable, Material, type MaterialOptions, Matrix, Matrix2, Matrix3, Matrix4, type MatrixLike, type MatrixOperateOutput, MouseInputEvent, Node, Node2D, type Node2DOptions, type NodeEventMap, type NodeOptions, type NormalizedKeyframe, PI, PI_2, Path2D, type Path2DCall, type Path2DCallMethod, type Path2DShape, PixelateEffect, PixelsTexture, type PlatformAudio, type PlatformSound, Point, type PointData, type PointLike, PointerInputEvent, Polygon, Projection2D, type PropertyDeclaration, QuadGeometry, QuadUvGeometry, RAD_TO_DEG, Rectangle, Reference, type ReferenceEventMap, type RenderCall, type RenderOptions, RenderStack, type Renderable, Renderer, Resource, type ResourceEventMap, RoundedRectangle, SUPPORTS_AUDIO_CONTEXT, SUPPORTS_CLICK_EVENTS, SUPPORTS_CREATE_IMAGE_BITMAP, SUPPORTS_IMAGE_BITMAP, SUPPORTS_MOUSE_EVENTS, SUPPORTS_OFFLINE_AUDIO_CONTEXT, SUPPORTS_POINTER_EVENTS, SUPPORTS_RESIZE_OBSERVER, SUPPORTS_TOUCH_EVENTS, SUPPORTS_WEBGL2, SUPPORTS_WEBKIT_AUDIO_CONTEXT, SUPPORTS_WEBKIT_OFFLINE_AUDIO_CONTEXT, SUPPORTS_WEB_AUDIO, SUPPORTS_WHEEL_EVENTS, SVGPath, type SVGPathDefine, type SVGPathDefineCommand, SceneTree, type SceneTreeEventMap, type Shape, type ShapeBuildCommand, Star, type StrokedGraphics, Style2D, type Style2DBackgroundExtend, Style2DBackgroundModule, type Style2DBackgroundProperties, type Style2DFilter, type Style2DFilterExtend, type Style2DFilterKey, Style2DFilterModule, type Style2DFilterProperties, Style2DModule, type Style2DOptions, type Style2DTextExtend, Style2DTextModule, type Style2DTextProperties, type Style2DTransformExtend, Style2DTransformModule, type Style2DTransformProperties, Text2D, type Text2DOptions, TextLoader, Texture, type TextureFilterMode, TextureLoader, type TexturePixelsSource, type TextureSource, type TextureWrapMode, Ticker, TiltShiftEffect, Timer, type TimerEventMap, type TimerOptions, type TimingFunctions, Transform2D, type Transform2DObject, Triangle, TwistEffect, UIInputEvent, UvGeometry, UvMaterial, Vector, Vector2, Vector3, Vector4, type VectorLike, type VectorOperateOutput, VertexAttribute, type VertexAttributeOptions, VertexBuffer, type VertexBufferOptions, Video2D, type Video2DOptions, VideoLoader, VideoTexture, type VideoTextureOptions, type VideoTextureSource, Viewport, type ViewportFramebuffer, ViewportTexture, WebAudio, WebAudioContext, WebGLBatch2DModule, WebGLBlendMode, type WebGLBufferMeta, WebGLBufferModule, type WebGLBufferOptions, type WebGLBufferTarget, type WebGLBufferUsage, type WebGLDrawMode, type WebGLDrawOptions, type WebGLExtensions, type WebGLFramebufferMeta, WebGLFramebufferModule, type WebGLFramebufferOptions, WebGLMaskModule, WebGLModule, type WebGLProgramMeta, WebGLProgramModule, type WebGLProgramOptions, WebGLRenderer, WebGLScissorModule, WebGLState, WebGLStateModule, WebGLStencilModule, type WebGLTarget, type WebGLTextureFilterMode, type WebGLTextureLocation, type WebGLTextureMeta, WebGLTextureModule, type WebGLTextureOptions, type WebGLTextureSource, type WebGLTextureTarget, type WebGLTextureWrapMode, WebGLVertexArrayModule, type WebGLVertexArrayObjectMeta, type WebGLVertexArrayObjectOptions, type WebGLVertexAttrib, type WebGLVertexAttribType, type WebGLViewport, WebGLViewportModule, WebSound, WheelInputEvent, ZoomBlurEffect, _Object, type _ObjectEventMap, assets, buildAdaptiveBezier, buildAdaptiveQuadratic, buildArc, buildArcTo, buildArcToSvg, buildCircle, buildLine, buildPolygon, buildRectangle, buildTriangle, clamp, closePointEps, createHTMLCanvas, createNode, crossOrigin, cubicBezier, curveEps, curves, customNode, customNodes, defaultOptions, defineProperty, determineCrossOrigin, ease, easeIn, easeInOut, easeOut, getDeclarations, getDefaultCssPropertyValue, isCanvasElement, isElementNode, isImageElement, isPow2, isVideoElement, isWebgl2, lerp, linear, log2, mapWebGLBlendModes, nextPow2, nextTick, parseCssFunctions, parseCssProperty, property, protectedProperty, render, squaredDistanceToLineSegment, timingFunctions, uid };
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
- import { Visibility, Overflow, FontWeight, FontStyle, FontKerning, TextWrap, TextAlign, VerticalAlign, TextTransform, TextDecoration, WritingMode, IDOCTextContent, IDOCStyleDeclaration } from 'modern-idoc';
1
+ import { Visibility, Overflow, IDOCTextStyleDeclaration, IDOCTransformStyleDeclaration } from 'modern-idoc';
2
2
  import { AnyColor, Colord } from 'colord';
3
3
  import { AnimationItem } from 'lottie-web';
4
- import { MeasureResult } from 'modern-text';
4
+ import { TextOptions, Text, MeasureResult } from 'modern-text';
5
5
  import { Font } from 'modern-font';
6
6
 
7
7
  interface CssFunctionArg {
@@ -1846,7 +1846,7 @@ declare class CanvasContext {
1846
1846
  toBatchables(): CanvasBatchable[];
1847
1847
  }
1848
1848
 
1849
- interface Style2DOptions extends Partial<Style2DBackgroundProperties>, Partial<Style2DFilterProperties>, Partial<Style2DOffsetProperties>, Partial<Style2DTextProperties>, Partial<Style2DTransformProperties> {
1849
+ interface Style2DOptions extends Partial<Style2DBackgroundProperties>, Partial<Style2DFilterProperties>, Partial<Style2DTextProperties>, Partial<Style2DTransformProperties> {
1850
1850
  shadowColor?: string;
1851
1851
  shadowOffsetX?: number;
1852
1852
  shadowOffsetY?: number;
@@ -1855,7 +1855,7 @@ interface Style2DOptions extends Partial<Style2DBackgroundProperties>, Partial<S
1855
1855
  borderRadius?: number;
1856
1856
  overflow?: Overflow;
1857
1857
  }
1858
- interface Style2D extends Style2DBackgroundExtend, Style2DFilterExtend, Style2DOffsetExtend, Style2DTextExtend, Style2DTransformExtend {
1858
+ interface Style2D extends Style2DBackgroundExtend, Style2DFilterExtend, Style2DTextExtend, Style2DTransformExtend {
1859
1859
  }
1860
1860
  declare class Style2D extends _Object {
1861
1861
  shadowColor: string;
@@ -1878,12 +1878,12 @@ interface Style2DBackgroundProperties {
1878
1878
  backgroundImage?: string;
1879
1879
  }
1880
1880
  interface Style2DBackgroundExtend extends Style2DBackgroundProperties {
1881
- getComputedBackground: typeof getComputedBackground;
1881
+ getComputedBackgroundImage: typeof getComputedBackgroundImage;
1882
1882
  }
1883
1883
  declare class Style2DBackgroundModule extends Style2DModule {
1884
1884
  install(Style2D: new () => Style2D): void;
1885
1885
  }
1886
- declare function getComputedBackground(this: Style2D): Promise<ColorTexture | undefined>;
1886
+ declare function getComputedBackgroundImage(this: Style2D): Promise<Texture<ImageBitmap> | undefined>;
1887
1887
 
1888
1888
  type Style2DFilterKey = 'hue-rotate' | 'saturate' | 'brightness' | 'contrast' | 'invert' | 'sepia' | 'opacity' | 'grayscale';
1889
1889
  type Style2DFilter = Record<Style2DFilterKey, number>;
@@ -1900,45 +1900,8 @@ declare class Style2DFilterModule extends Style2DModule {
1900
1900
  declare function getComputedFilter(this: Style2D): Style2DFilter;
1901
1901
  declare function getComputedFilterColorMatrix(this: Style2D): ColorMatrix;
1902
1902
 
1903
- interface Style2DOffsetProperties {
1904
- offsetPath?: string;
1905
- offsetAnchor?: string | number;
1906
- offsetDistance?: string | number;
1907
- offsetPosition?: string | number;
1908
- }
1909
- interface Style2DOffsetExtend extends Style2DOffsetProperties {
1910
- getComputedOffset: typeof getComputedOffset;
1911
- }
1912
- declare module '../Style2D' {
1913
- interface Style2DOptions extends Partial<Style2DOffsetProperties> {
1914
- }
1915
- interface Style2D extends Style2DOffsetProperties {
1916
- getComputedOffset: typeof getComputedOffset;
1917
- }
1918
- }
1919
- declare class Style2DOffsetModule extends Style2DModule {
1920
- install(Style2D: new () => Style2D): void;
1921
- }
1922
- declare function getComputedOffset(this: Style2D): void;
1923
-
1924
- interface Style2DTextProperties {
1925
- color: string;
1926
- fontSize: number;
1927
- fontWeight: FontWeight;
1928
- fontFamily: string;
1929
- fontStyle: FontStyle;
1930
- fontKerning: FontKerning;
1931
- textWrap: TextWrap;
1932
- textAlign: TextAlign;
1933
- verticalAlign: VerticalAlign;
1934
- textTransform: TextTransform;
1935
- textDecoration: TextDecoration | null;
1936
- textStrokeWidth: number;
1937
- textStrokeColor: string;
1903
+ interface Style2DTextProperties extends IDOCTextStyleDeclaration {
1938
1904
  direction: 'inherit' | 'ltr' | 'rtl';
1939
- lineHeight: number;
1940
- letterSpacing: number;
1941
- writingMode: WritingMode;
1942
1905
  }
1943
1906
  interface Style2DTextExtend extends Style2DTextProperties {
1944
1907
  }
@@ -1946,16 +1909,7 @@ declare class Style2DTextModule extends Style2DModule {
1946
1909
  install(Style2D: new () => Style2D): void;
1947
1910
  }
1948
1911
 
1949
- interface Style2DTransformProperties {
1950
- left: number;
1951
- top: number;
1952
- width: number;
1953
- height: number;
1954
- rotate: number;
1955
- scaleX: number;
1956
- scaleY: number;
1957
- transform?: string;
1958
- transformOrigin: string;
1912
+ interface Style2DTransformProperties extends IDOCTransformStyleDeclaration {
1959
1913
  }
1960
1914
  interface Style2DTransformExtend extends Style2DTransformProperties {
1961
1915
  getComputedTransform: typeof getComputedTransform;
@@ -1983,11 +1937,12 @@ declare class CanvasItem extends Node {
1983
1937
  protected _parentOpacity?: number;
1984
1938
  protected _tint: Color;
1985
1939
  protected _backgroundColor: Color;
1940
+ protected _backgroundImage?: Texture;
1986
1941
  context: CanvasContext;
1987
1942
  protected _resetContext: boolean;
1988
- protected _waitingRedraw: boolean;
1989
- protected _waitingReflow: boolean;
1990
- protected _waitingRepaint: boolean;
1943
+ protected _redrawing: boolean;
1944
+ protected _reflowing: boolean;
1945
+ protected _repainting: boolean;
1991
1946
  protected _originalBatchables: CanvasBatchable[];
1992
1947
  protected _layoutedBatchables: CanvasBatchable[];
1993
1948
  protected _batchables: CanvasBatchable[];
@@ -1995,6 +1950,8 @@ declare class CanvasItem extends Node {
1995
1950
  setProperties(properties?: Record<PropertyKey, any>): this;
1996
1951
  protected _onUpdateProperty(key: PropertyKey, newValue: any, oldValue: any, declaration?: PropertyDeclaration): void;
1997
1952
  protected _onUpdateStyleProperty(key: PropertyKey, newValue: any, oldValue: any, declaration?: PropertyDeclaration): void;
1953
+ protected _updateBackgroundColor(): void;
1954
+ protected _updateBackgroundImage(): Promise<void>;
1998
1955
  protected _updateOpacity(): void;
1999
1956
  isVisible(): boolean;
2000
1957
  requestRedraw(): void;
@@ -2002,6 +1959,9 @@ declare class CanvasItem extends Node {
2002
1959
  requestRepaint(): void;
2003
1960
  protected _process(delta: number): void;
2004
1961
  protected _draw(): void;
1962
+ protected _drawBackground(): void;
1963
+ protected _drawContent(): void;
1964
+ protected _fill(): void;
2005
1965
  protected _relayout(batchables: CanvasBatchable[]): CanvasBatchable[];
2006
1966
  protected _reflow(batchables: CanvasBatchable[]): CanvasBatchable[];
2007
1967
  protected _repaint(batchables: CanvasBatchable[]): CanvasBatchable[];
@@ -2018,29 +1978,13 @@ declare class Node2D extends CanvasItem {
2018
1978
  getBoundingBox(): Rectangle;
2019
1979
  protected _onUpdateStyleProperty(key: PropertyKey, value: any, oldValue: any): void;
2020
1980
  protected _updateTransform(): void;
1981
+ protected _updateOverflow(): void;
2021
1982
  protected _transformVertices(vertices: number[]): number[];
2022
1983
  protected _reflow(batchables: CanvasBatchable[]): CanvasBatchable[];
2023
1984
  protected _process(delta: number): void;
2024
1985
  input(event: UIEvent): void;
2025
1986
  }
2026
1987
 
2027
- interface Element2DOptions extends Node2DOptions {
2028
- draggable?: boolean;
2029
- }
2030
- declare class Element2D extends Node2D {
2031
- draggable?: boolean;
2032
- protected _background?: Texture;
2033
- constructor(options?: Element2DOptions);
2034
- protected _onUpdateStyleProperty(key: PropertyKey, value: any, oldValue: any): void;
2035
- protected _updateBackground(): Promise<void>;
2036
- protected _updateTransform(): void;
2037
- protected _updateOverflow(): void;
2038
- protected _draw(): void;
2039
- protected _drawBackground(): void;
2040
- protected _drawContent(): void;
2041
- protected _drawRect(): void;
2042
- }
2043
-
2044
1988
  declare class Graphics2D extends Node2D {
2045
1989
  protected _resetContext: boolean;
2046
1990
  lineCap?: LineCap;
@@ -2077,11 +2021,11 @@ declare class Image2DResource extends Resource {
2077
2021
  destroy(): void;
2078
2022
  }
2079
2023
 
2080
- interface Image2DOptions extends Element2DOptions {
2024
+ interface Image2DOptions extends Node2DOptions {
2081
2025
  src?: string;
2082
2026
  gif?: boolean;
2083
2027
  }
2084
- declare class Image2D extends Element2D {
2028
+ declare class Image2D extends Node2D {
2085
2029
  resource?: Image2DResource;
2086
2030
  gif: boolean;
2087
2031
  src: string;
@@ -2105,11 +2049,11 @@ declare class Image2D extends Element2D {
2105
2049
  protected _repaint(batchables: CanvasBatchable[]): CanvasBatchable[];
2106
2050
  }
2107
2051
 
2108
- interface LottieOptions extends Element2DOptions {
2052
+ interface LottieOptions extends Node2DOptions {
2109
2053
  pixelRatio?: number;
2110
2054
  src?: string;
2111
2055
  }
2112
- declare class Lottie2D extends Element2D {
2056
+ declare class Lottie2D extends Node2D {
2113
2057
  pixelRatio: number;
2114
2058
  src: string;
2115
2059
  duration: number;
@@ -2123,21 +2067,33 @@ declare class Lottie2D extends Element2D {
2123
2067
  protected _drawContent(): void;
2124
2068
  }
2125
2069
 
2126
- interface Text2DOptions extends Element2DOptions {
2070
+ interface Text2DOptions extends Node2DOptions, Omit<TextOptions, 'style'> {
2127
2071
  pixelRatio?: number;
2128
2072
  split?: boolean;
2129
- content?: IDOCTextContent;
2130
- effects?: Partial<IDOCStyleDeclaration>[];
2131
2073
  }
2132
- declare class Text2D extends Element2D {
2074
+ /**
2075
+ * @example
2076
+ *
2077
+ * new Text2D({
2078
+ * style: {
2079
+ * fontSize: 20,
2080
+ * },
2081
+ * content: 'Text2D',
2082
+ * })
2083
+ */
2084
+ declare class Text2D extends Node2D {
2133
2085
  pixelRatio: number;
2134
2086
  split: boolean;
2135
- content: IDOCTextContent;
2136
- effects?: Partial<IDOCStyleDeclaration>[];
2087
+ content: TextOptions['content'];
2088
+ effects?: TextOptions['effects'];
2089
+ measureDom?: TextOptions['measureDom'];
2090
+ fonts?: TextOptions['fonts'];
2091
+ text: Text;
2137
2092
  readonly texture: Texture<HTMLCanvasElement>;
2138
2093
  protected _subTextsCount: number;
2139
2094
  constructor(options?: Text2DOptions);
2140
2095
  protected _onUpdateProperty(key: PropertyKey, value: any, oldValue: any): void;
2096
+ protected _updateText(): void;
2141
2097
  protected _onUpdateStyleProperty(key: PropertyKey, value: any, oldValue: any): void;
2142
2098
  protected _getSubTexts(): Text2D[];
2143
2099
  protected _updateSubTexts(): void;
@@ -2146,10 +2102,10 @@ declare class Text2D extends Element2D {
2146
2102
  protected _drawContent(): void;
2147
2103
  }
2148
2104
 
2149
- interface Video2DOptions extends Element2DOptions {
2105
+ interface Video2DOptions extends Node2DOptions {
2150
2106
  src?: string;
2151
2107
  }
2152
- declare class Video2D extends Element2D {
2108
+ declare class Video2D extends Node2D {
2153
2109
  src: string;
2154
2110
  texture?: VideoTexture;
2155
2111
  get duration(): number;
@@ -2528,15 +2484,15 @@ declare class Audio extends Node {
2528
2484
  protected _setTimeStop(): void;
2529
2485
  }
2530
2486
 
2531
- declare class AudioSpectrum extends Element2D {
2487
+ declare class AudioSpectrum extends Node2D {
2532
2488
  }
2533
2489
 
2534
- interface AudioWaveformOptions extends Element2DOptions {
2490
+ interface AudioWaveformOptions extends Node2DOptions {
2535
2491
  src?: string;
2536
2492
  gap?: number;
2537
2493
  color?: string;
2538
2494
  }
2539
- declare class AudioWaveform extends Element2D {
2495
+ declare class AudioWaveform extends Node2D {
2540
2496
  src?: string;
2541
2497
  gap: number;
2542
2498
  color: string;
@@ -3112,4 +3068,4 @@ interface RenderOptions {
3112
3068
  }
3113
3069
  declare function render(options: RenderOptions): Promise<HTMLCanvasElement>;
3114
3070
 
3115
- export { Animation2D, type AnimationOptions, type AssetHandler, Assets, Audio, AudioPipeline, AudioProcessor, AudioSpectrum, AudioWaveform, type AudioWaveformOptions, type Batchable2D, BlurEffect, Bounds, type BoundsData, type CanvasBatchable, CanvasContext, CanvasItem, type CanvasItemOptions, Circle, Color, ColorAdjustEffect, ColorFilterEffect, type ColorFilterEffectOptions, ColorMatrix, ColorOverlayEffect, ColorRemoveEffect, ColorReplaceEffect, ColorTexture, type ColorValue, type CssFunction, type CssFunctionArg, type Cursor, type CustomNodeOptions, DEG_TO_RAD, DEVICE_PIXEL_RATIO, type Easing, Effect, type EffectContext, EffectMaterial, type EffectMode, type EffectOptions, Element2D, type Element2DOptions, Ellipse, EmbossEffect, Engine, type EngineOptions, EventEmitter, type EventListener, type EventListenerOptions, type EventListenerValue, type FilledGraphics, FontLoader, Geometry, type GeometryOptions, GifLoader, GlitchEffect, GodrayEffect, Graphics2D, HTMLAudio, HTMLAudioContext, HTMLSound, type IAudioContext, type IAudioNode, IN_BROWSER, type IPlayOptions, Image2D, type Image2DOptions, Image2DResource, type ImageFrame, ImageTexture, type ImageTextureOptions, IndexBuffer, type IndexBufferOptions, Input, InternalMode, JsonLoader, KawaseEffect, type Keyframe, LeftEraseEffect, type LineCap, type LineJoin, type LineStyle, Loader, Lottie2D, LottieLoader, type LottieOptions, MainLoop, type MainLoopEventMap, type MaskColor, type MaskData, MaskEffect, type MaskEffectOptions, type MaskObject, type MaskRect, type Maskable, Material, type MaterialOptions, Matrix, Matrix2, Matrix3, Matrix4, type MatrixLike, type MatrixOperateOutput, MouseInputEvent, Node, Node2D, type Node2DOptions, type NodeEventMap, type NodeOptions, type NormalizedKeyframe, PI, PI_2, Path2D, type Path2DCall, type Path2DCallMethod, type Path2DShape, PixelateEffect, PixelsTexture, type PlatformAudio, type PlatformSound, Point, type PointData, type PointLike, PointerInputEvent, Polygon, Projection2D, type PropertyDeclaration, QuadGeometry, QuadUvGeometry, RAD_TO_DEG, Rectangle, Reference, type ReferenceEventMap, type RenderCall, type RenderOptions, RenderStack, type Renderable, Renderer, Resource, type ResourceEventMap, RoundedRectangle, SUPPORTS_AUDIO_CONTEXT, SUPPORTS_CLICK_EVENTS, SUPPORTS_CREATE_IMAGE_BITMAP, SUPPORTS_IMAGE_BITMAP, SUPPORTS_MOUSE_EVENTS, SUPPORTS_OFFLINE_AUDIO_CONTEXT, SUPPORTS_POINTER_EVENTS, SUPPORTS_RESIZE_OBSERVER, SUPPORTS_TOUCH_EVENTS, SUPPORTS_WEBGL2, SUPPORTS_WEBKIT_AUDIO_CONTEXT, SUPPORTS_WEBKIT_OFFLINE_AUDIO_CONTEXT, SUPPORTS_WEB_AUDIO, SUPPORTS_WHEEL_EVENTS, SVGPath, type SVGPathDefine, type SVGPathDefineCommand, SceneTree, type SceneTreeEventMap, type Shape, type ShapeBuildCommand, Star, type StrokedGraphics, Style2D, type Style2DBackgroundExtend, Style2DBackgroundModule, type Style2DBackgroundProperties, type Style2DFilter, type Style2DFilterExtend, type Style2DFilterKey, Style2DFilterModule, type Style2DFilterProperties, Style2DModule, type Style2DOffsetExtend, Style2DOffsetModule, type Style2DOffsetProperties, type Style2DOptions, type Style2DTextExtend, Style2DTextModule, type Style2DTextProperties, type Style2DTransformExtend, Style2DTransformModule, type Style2DTransformProperties, Text2D, type Text2DOptions, TextLoader, Texture, type TextureFilterMode, TextureLoader, type TexturePixelsSource, type TextureSource, type TextureWrapMode, Ticker, TiltShiftEffect, Timer, type TimerEventMap, type TimerOptions, type TimingFunctions, Transform2D, type Transform2DObject, Triangle, TwistEffect, UIInputEvent, UvGeometry, UvMaterial, Vector, Vector2, Vector3, Vector4, type VectorLike, type VectorOperateOutput, VertexAttribute, type VertexAttributeOptions, VertexBuffer, type VertexBufferOptions, Video2D, type Video2DOptions, VideoLoader, VideoTexture, type VideoTextureOptions, type VideoTextureSource, Viewport, type ViewportFramebuffer, ViewportTexture, WebAudio, WebAudioContext, WebGLBatch2DModule, WebGLBlendMode, type WebGLBufferMeta, WebGLBufferModule, type WebGLBufferOptions, type WebGLBufferTarget, type WebGLBufferUsage, type WebGLDrawMode, type WebGLDrawOptions, type WebGLExtensions, type WebGLFramebufferMeta, WebGLFramebufferModule, type WebGLFramebufferOptions, WebGLMaskModule, WebGLModule, type WebGLProgramMeta, WebGLProgramModule, type WebGLProgramOptions, WebGLRenderer, WebGLScissorModule, WebGLState, WebGLStateModule, WebGLStencilModule, type WebGLTarget, type WebGLTextureFilterMode, type WebGLTextureLocation, type WebGLTextureMeta, WebGLTextureModule, type WebGLTextureOptions, type WebGLTextureSource, type WebGLTextureTarget, type WebGLTextureWrapMode, WebGLVertexArrayModule, type WebGLVertexArrayObjectMeta, type WebGLVertexArrayObjectOptions, type WebGLVertexAttrib, type WebGLVertexAttribType, type WebGLViewport, WebGLViewportModule, WebSound, WheelInputEvent, ZoomBlurEffect, _Object, type _ObjectEventMap, assets, buildAdaptiveBezier, buildAdaptiveQuadratic, buildArc, buildArcTo, buildArcToSvg, buildCircle, buildLine, buildPolygon, buildRectangle, buildTriangle, clamp, closePointEps, createHTMLCanvas, createNode, crossOrigin, cubicBezier, curveEps, curves, customNode, customNodes, defaultOptions, defineProperty, determineCrossOrigin, ease, easeIn, easeInOut, easeOut, getDeclarations, getDefaultCssPropertyValue, isCanvasElement, isElementNode, isImageElement, isPow2, isVideoElement, isWebgl2, lerp, linear, log2, mapWebGLBlendModes, nextPow2, nextTick, parseCssFunctions, parseCssProperty, property, protectedProperty, render, squaredDistanceToLineSegment, timingFunctions, uid };
3071
+ export { Animation2D, type AnimationOptions, type AssetHandler, Assets, Audio, AudioPipeline, AudioProcessor, AudioSpectrum, AudioWaveform, type AudioWaveformOptions, type Batchable2D, BlurEffect, Bounds, type BoundsData, type CanvasBatchable, CanvasContext, CanvasItem, type CanvasItemOptions, Circle, Color, ColorAdjustEffect, ColorFilterEffect, type ColorFilterEffectOptions, ColorMatrix, ColorOverlayEffect, ColorRemoveEffect, ColorReplaceEffect, ColorTexture, type ColorValue, type CssFunction, type CssFunctionArg, type Cursor, type CustomNodeOptions, DEG_TO_RAD, DEVICE_PIXEL_RATIO, type Easing, Effect, type EffectContext, EffectMaterial, type EffectMode, type EffectOptions, Ellipse, EmbossEffect, Engine, type EngineOptions, EventEmitter, type EventListener, type EventListenerOptions, type EventListenerValue, type FilledGraphics, FontLoader, Geometry, type GeometryOptions, GifLoader, GlitchEffect, GodrayEffect, Graphics2D, HTMLAudio, HTMLAudioContext, HTMLSound, type IAudioContext, type IAudioNode, IN_BROWSER, type IPlayOptions, Image2D, type Image2DOptions, Image2DResource, type ImageFrame, ImageTexture, type ImageTextureOptions, IndexBuffer, type IndexBufferOptions, Input, InternalMode, JsonLoader, KawaseEffect, type Keyframe, LeftEraseEffect, type LineCap, type LineJoin, type LineStyle, Loader, Lottie2D, LottieLoader, type LottieOptions, MainLoop, type MainLoopEventMap, type MaskColor, type MaskData, MaskEffect, type MaskEffectOptions, type MaskObject, type MaskRect, type Maskable, Material, type MaterialOptions, Matrix, Matrix2, Matrix3, Matrix4, type MatrixLike, type MatrixOperateOutput, MouseInputEvent, Node, Node2D, type Node2DOptions, type NodeEventMap, type NodeOptions, type NormalizedKeyframe, PI, PI_2, Path2D, type Path2DCall, type Path2DCallMethod, type Path2DShape, PixelateEffect, PixelsTexture, type PlatformAudio, type PlatformSound, Point, type PointData, type PointLike, PointerInputEvent, Polygon, Projection2D, type PropertyDeclaration, QuadGeometry, QuadUvGeometry, RAD_TO_DEG, Rectangle, Reference, type ReferenceEventMap, type RenderCall, type RenderOptions, RenderStack, type Renderable, Renderer, Resource, type ResourceEventMap, RoundedRectangle, SUPPORTS_AUDIO_CONTEXT, SUPPORTS_CLICK_EVENTS, SUPPORTS_CREATE_IMAGE_BITMAP, SUPPORTS_IMAGE_BITMAP, SUPPORTS_MOUSE_EVENTS, SUPPORTS_OFFLINE_AUDIO_CONTEXT, SUPPORTS_POINTER_EVENTS, SUPPORTS_RESIZE_OBSERVER, SUPPORTS_TOUCH_EVENTS, SUPPORTS_WEBGL2, SUPPORTS_WEBKIT_AUDIO_CONTEXT, SUPPORTS_WEBKIT_OFFLINE_AUDIO_CONTEXT, SUPPORTS_WEB_AUDIO, SUPPORTS_WHEEL_EVENTS, SVGPath, type SVGPathDefine, type SVGPathDefineCommand, SceneTree, type SceneTreeEventMap, type Shape, type ShapeBuildCommand, Star, type StrokedGraphics, Style2D, type Style2DBackgroundExtend, Style2DBackgroundModule, type Style2DBackgroundProperties, type Style2DFilter, type Style2DFilterExtend, type Style2DFilterKey, Style2DFilterModule, type Style2DFilterProperties, Style2DModule, type Style2DOptions, type Style2DTextExtend, Style2DTextModule, type Style2DTextProperties, type Style2DTransformExtend, Style2DTransformModule, type Style2DTransformProperties, Text2D, type Text2DOptions, TextLoader, Texture, type TextureFilterMode, TextureLoader, type TexturePixelsSource, type TextureSource, type TextureWrapMode, Ticker, TiltShiftEffect, Timer, type TimerEventMap, type TimerOptions, type TimingFunctions, Transform2D, type Transform2DObject, Triangle, TwistEffect, UIInputEvent, UvGeometry, UvMaterial, Vector, Vector2, Vector3, Vector4, type VectorLike, type VectorOperateOutput, VertexAttribute, type VertexAttributeOptions, VertexBuffer, type VertexBufferOptions, Video2D, type Video2DOptions, VideoLoader, VideoTexture, type VideoTextureOptions, type VideoTextureSource, Viewport, type ViewportFramebuffer, ViewportTexture, WebAudio, WebAudioContext, WebGLBatch2DModule, WebGLBlendMode, type WebGLBufferMeta, WebGLBufferModule, type WebGLBufferOptions, type WebGLBufferTarget, type WebGLBufferUsage, type WebGLDrawMode, type WebGLDrawOptions, type WebGLExtensions, type WebGLFramebufferMeta, WebGLFramebufferModule, type WebGLFramebufferOptions, WebGLMaskModule, WebGLModule, type WebGLProgramMeta, WebGLProgramModule, type WebGLProgramOptions, WebGLRenderer, WebGLScissorModule, WebGLState, WebGLStateModule, WebGLStencilModule, type WebGLTarget, type WebGLTextureFilterMode, type WebGLTextureLocation, type WebGLTextureMeta, WebGLTextureModule, type WebGLTextureOptions, type WebGLTextureSource, type WebGLTextureTarget, type WebGLTextureWrapMode, WebGLVertexArrayModule, type WebGLVertexArrayObjectMeta, type WebGLVertexArrayObjectOptions, type WebGLVertexAttrib, type WebGLVertexAttribType, type WebGLViewport, WebGLViewportModule, WebSound, WheelInputEvent, ZoomBlurEffect, _Object, type _ObjectEventMap, assets, buildAdaptiveBezier, buildAdaptiveQuadratic, buildArc, buildArcTo, buildArcToSvg, buildCircle, buildLine, buildPolygon, buildRectangle, buildTriangle, clamp, closePointEps, createHTMLCanvas, createNode, crossOrigin, cubicBezier, curveEps, curves, customNode, customNodes, defaultOptions, defineProperty, determineCrossOrigin, ease, easeIn, easeInOut, easeOut, getDeclarations, getDefaultCssPropertyValue, isCanvasElement, isElementNode, isImageElement, isPow2, isVideoElement, isWebgl2, lerp, linear, log2, mapWebGLBlendModes, nextPow2, nextTick, parseCssFunctions, parseCssProperty, property, protectedProperty, render, squaredDistanceToLineSegment, timingFunctions, uid };