@agrhub/engine-pixi 0.0.0-stage → 1.3.3

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.
Files changed (93) hide show
  1. package/LICENSE +47 -0
  2. package/NOTICE.md +19 -0
  3. package/README.md +6 -2
  4. package/dist/animation/block-reveal-animation.d.ts +33 -0
  5. package/dist/animation/easings.d.ts +4 -0
  6. package/dist/animation/gsap-animation.d.ts +32 -0
  7. package/dist/animation/index.d.ts +9 -0
  8. package/dist/animation/keyframe-animation.d.ts +11 -0
  9. package/dist/animation/mask-animation.d.ts +145 -0
  10. package/dist/animation/pixi-animation-utils.d.ts +10 -0
  11. package/dist/animation/registry.d.ts +11 -0
  12. package/dist/animation/types.d.ts +205 -0
  13. package/dist/animation/wipe-animation.d.ts +53 -0
  14. package/dist/clips/audio-clip.d.ts +122 -0
  15. package/dist/clips/backdrop-clip.d.ts +56 -0
  16. package/dist/clips/base-clip.d.ts +150 -0
  17. package/dist/clips/base-text-clip.d.ts +228 -0
  18. package/dist/clips/caption-clip.d.ts +129 -0
  19. package/dist/clips/clip-registry.d.ts +56 -0
  20. package/dist/clips/effect-clip.d.ts +37 -0
  21. package/dist/clips/iclip.d.ts +231 -0
  22. package/dist/clips/image-clip.d.ts +116 -0
  23. package/dist/clips/index.d.ts +20 -0
  24. package/dist/clips/placeholder-clip.d.ts +22 -0
  25. package/dist/clips/shape-clip.d.ts +59 -0
  26. package/dist/clips/text-clip.d.ts +148 -0
  27. package/dist/clips/transition-clip.d.ts +41 -0
  28. package/dist/clips/video-clip.d.ts +215 -0
  29. package/dist/compositor/audio-mixer.d.ts +8 -0
  30. package/dist/compositor/av-encoder.d.ts +17 -0
  31. package/dist/compositor/clip-style-renderer.d.ts +23 -0
  32. package/dist/compositor/compositor-renderer.d.ts +29 -0
  33. package/dist/compositor/effect-manager.d.ts +28 -0
  34. package/dist/compositor/scheduler.d.ts +8 -0
  35. package/dist/compositor/transition-manager.d.ts +45 -0
  36. package/dist/compositor.d.ts +157 -0
  37. package/dist/effect/constant/index.d.ts +566 -0
  38. package/dist/effect/effect.d.ts +9 -0
  39. package/dist/effect/glsl/custom-glsl.d.ts +1043 -0
  40. package/dist/effect/glsl/gl-effect.d.ts +38 -0
  41. package/dist/effect/interface/index.d.ts +25 -0
  42. package/dist/effect/types.d.ts +26 -0
  43. package/dist/effect/vertex.d.ts +1 -0
  44. package/dist/event-emitter.d.ts +55 -0
  45. package/dist/filters/outline-filter.d.ts +28 -0
  46. package/dist/index.d.ts +27 -0
  47. package/dist/index.es.js +16038 -0
  48. package/dist/index.es.js.map +1 -0
  49. package/dist/index.umd.cjs +3335 -0
  50. package/dist/index.umd.cjs.map +1 -0
  51. package/dist/json-serialization.d.ts +310 -0
  52. package/dist/mp4-utils/index.d.ts +31 -0
  53. package/dist/mp4-utils/mp4box-utils.d.ts +44 -0
  54. package/dist/mp4-utils/sample-transform.d.ts +26 -0
  55. package/dist/sprite/base-sprite.d.ts +255 -0
  56. package/dist/sprite/pixi-sprite-renderer.d.ts +68 -0
  57. package/dist/standalone/index.es.js +94023 -0
  58. package/dist/standalone/index.es.js.map +1 -0
  59. package/dist/studio/history-manager.d.ts +46 -0
  60. package/dist/studio/resource-manager.d.ts +53 -0
  61. package/dist/studio/selection-manager.d.ts +66 -0
  62. package/dist/studio/timeline-model.d.ts +117 -0
  63. package/dist/studio/transport.d.ts +44 -0
  64. package/dist/studio-bridge.d.ts +50 -0
  65. package/dist/studio.d.ts +527 -0
  66. package/dist/transformer/handle.d.ts +17 -0
  67. package/dist/transformer/snapping.d.ts +45 -0
  68. package/dist/transformer/transformer.d.ts +38 -0
  69. package/dist/transformer/wireframe.d.ts +5 -0
  70. package/dist/transition/fragment.d.ts +1 -0
  71. package/dist/transition/glsl/custom-glsl.d.ts +231 -0
  72. package/dist/transition/glsl/gl-transition.d.ts +42 -0
  73. package/dist/transition/transition.d.ts +6 -0
  74. package/dist/transition/types.d.ts +29 -0
  75. package/dist/transition/uniforms.d.ts +35 -0
  76. package/dist/transition/vertex.d.ts +1 -0
  77. package/dist/utils/asset-manager.d.ts +15 -0
  78. package/dist/utils/audio-codec-detector.d.ts +39 -0
  79. package/dist/utils/audio.d.ts +81 -0
  80. package/dist/utils/chromakey.d.ts +24 -0
  81. package/dist/utils/color-adjustment.d.ts +53 -0
  82. package/dist/utils/color.d.ts +17 -0
  83. package/dist/utils/common.d.ts +7 -0
  84. package/dist/utils/dom.d.ts +48 -0
  85. package/dist/utils/effect.d.ts +1 -0
  86. package/dist/utils/fonts.d.ts +21 -0
  87. package/dist/utils/index.d.ts +6 -0
  88. package/dist/utils/log.d.ts +27 -0
  89. package/dist/utils/media-cache.d.ts +45 -0
  90. package/dist/utils/stream-utils.d.ts +4 -0
  91. package/dist/utils/video.d.ts +16 -0
  92. package/dist/utils/worker-timer.d.ts +1 -0
  93. package/package.json +63 -3
@@ -0,0 +1,38 @@
1
+ export interface GlEffect {
2
+ label: string;
3
+ fragment: string;
4
+ uniforms?: Record<string, {
5
+ value: any;
6
+ type: string;
7
+ }>;
8
+ previewStatic?: string;
9
+ previewDynamic?: string;
10
+ }
11
+ /**
12
+ * Register a custom effect at runtime
13
+ */
14
+ export declare function registerCustomEffect(name: string, effect: GlEffect): void;
15
+ /**
16
+ * Unregister a custom effect at runtime
17
+ */
18
+ export declare function unregisterCustomEffect(name: string): void;
19
+ /**
20
+ * Get all available effects, including library and runtime registered ones
21
+ */
22
+ export declare function getAllEffects(): Record<string, GlEffect>;
23
+ export declare const GL_EFFECTS: Record<string, GlEffect>;
24
+ export type EffectKey = string;
25
+ export declare function getEffectOptions(): {
26
+ key: EffectKey;
27
+ label: string;
28
+ isCustom: boolean;
29
+ previewStatic: string;
30
+ previewDynamic: string;
31
+ }[];
32
+ export declare const GL_EFFECT_OPTIONS: {
33
+ key: EffectKey;
34
+ label: string;
35
+ isCustom: boolean;
36
+ previewStatic: string;
37
+ previewDynamic: string;
38
+ }[];
@@ -0,0 +1,25 @@
1
+ import { AdjustmentFilterOptions, AdvancedBloomFilterOptions, BloomFilterOptions, ColorOverlayFilterOptions, ConvolutionFilterOptions, DotFilterOptions, DropShadowFilterOptions, GlitchFilterOptions, GlowFilterOptions, GodrayFilterOptions, HslAdjustmentFilterOptions, KawaseBlurFilterOptions, MotionBlurFilterOptions, OldFilmFilterOptions, RadialBlurFilterOptions, ReflectionFilterOptions, RGBSplitFilterOptions, TiltShiftFilterOptions } from 'pixi-filters';
2
+ export type FilterOptionsMap = {
3
+ adjustmentFilter: AdjustmentFilterOptions;
4
+ advancedBloomFilter: AdvancedBloomFilterOptions;
5
+ backdropBlurFilter: any;
6
+ bloomFilter: BloomFilterOptions;
7
+ colorMapFilter: any;
8
+ colorOverlayFilter: ColorOverlayFilterOptions;
9
+ convolutionFilter: ConvolutionFilterOptions;
10
+ dotFilter: DotFilterOptions;
11
+ dropShadowFilter: DropShadowFilterOptions;
12
+ glitchFilter: GlitchFilterOptions;
13
+ glowFilter: GlowFilterOptions;
14
+ godrayFilter: GodrayFilterOptions;
15
+ grayscaleFilter: any;
16
+ hslAdjustmentFilter: HslAdjustmentFilterOptions;
17
+ kawaseBlurFilter: KawaseBlurFilterOptions;
18
+ motionBlurFilter: MotionBlurFilterOptions;
19
+ oldFilmFilter: OldFilmFilterOptions;
20
+ pixelateFilter: any;
21
+ radialBlurFilter: RadialBlurFilterOptions;
22
+ reflectionFilter: ReflectionFilterOptions;
23
+ rgbSplitFilter: RGBSplitFilterOptions;
24
+ tiltShiftFilter: TiltShiftFilterOptions;
25
+ };
@@ -0,0 +1,26 @@
1
+ import { Renderer, RenderTexture } from 'pixi.js';
2
+ import { EffectKey } from './glsl/gl-effect';
3
+ export interface EffectOptions {
4
+ name: EffectKey;
5
+ renderer: Renderer;
6
+ values?: Record<string, any>;
7
+ }
8
+ export interface EffectRendererOptions {
9
+ canvasTexture: HTMLCanvasElement | ImageBitmap | HTMLImageElement | HTMLVideoElement | RenderTexture;
10
+ progress: number;
11
+ width: number;
12
+ height: number;
13
+ values?: Record<string, any>;
14
+ }
15
+ export interface GLEffect {
16
+ author?: string;
17
+ createdAt?: string;
18
+ glsl: string;
19
+ license?: string;
20
+ name: EffectKey;
21
+ updatedAt?: string;
22
+ defaultParams?: any;
23
+ paramsTypes?: any;
24
+ fragment?: string;
25
+ label?: string;
26
+ }
@@ -0,0 +1 @@
1
+ export declare const vertex = "\nin vec2 aPosition;\nout vec2 vTextureCoord;\n\nuniform vec4 uInputSize;\nuniform vec4 uOutputFrame;\nuniform vec4 uOutputTexture;\n\nvec4 filterVertexPosition( void )\n{\n vec2 position = aPosition * uOutputFrame.zw + uOutputFrame.xy;\n\n position.x = position.x * (2.0 / uOutputTexture.x) - 1.0;\n position.y = position.y * (2.0*uOutputTexture.z / uOutputTexture.y) - uOutputTexture.z;\n\n return vec4(position, 0.0, 1.0);\n}\n\nvec2 filterTextureCoord( void )\n{\n return aPosition * (uOutputFrame.zw * uInputSize.zw);\n}\n\nvoid main(void)\n{\n gl_Position = filterVertexPosition();\n vTextureCoord = filterTextureCoord();\n}\n";
@@ -0,0 +1,55 @@
1
+ export type EventType = string | symbol;
2
+ export type Handler<T = unknown> = (event: T) => void;
3
+ export type WildcardHandler<T = Record<string, unknown>> = (type: keyof T, event: T[keyof T]) => void;
4
+ export type EventHandlerList<T = unknown> = Array<Handler<T>>;
5
+ export type WildCardEventHandlerList<T = Record<string, unknown>> = Array<WildcardHandler<T>>;
6
+ export type EventHandlerMap<Events extends Record<EventType, unknown>> = Map<keyof Events | "*", EventHandlerList<Events[keyof Events]> | WildCardEventHandlerList<Events>>;
7
+ export interface Emitter<Events extends Record<EventType, unknown>> {
8
+ all: EventHandlerMap<Events>;
9
+ on<Key extends keyof Events>(type: Key, handler: Handler<Events[Key]>): void;
10
+ on(type: "*", handler: WildcardHandler<Events>): void;
11
+ off<Key extends keyof Events>(type: Key, handler?: Handler<Events[Key]>): void;
12
+ off(type: "*", handler: WildcardHandler<Events>): void;
13
+ emit<Key extends keyof Events>(type: Key, event: Events[Key]): void;
14
+ emit<Key extends keyof Events>(type: undefined extends Events[Key] ? Key : never): void;
15
+ }
16
+ /**
17
+ * EventEmitter: A class-based event emitter for inheritance
18
+ */
19
+ export default class EventEmitter<Events extends Record<EventType, unknown>> implements Emitter<Events> {
20
+ all: EventHandlerMap<Events>;
21
+ /**
22
+ * Register an event handler for the given type.
23
+ * @param {string|symbol} type Type of event to listen for, or `'*'` for all events
24
+ * @param {Function} handler Function to call in response to given event
25
+ * @returns {Function} A function to unregister the handler
26
+ */
27
+ on<Key extends keyof Events>(type: Key, handler: Handler<Events[Key]>): () => void;
28
+ on(type: "*", handler: WildcardHandler<Events>): () => void;
29
+ /**
30
+ * Register a one-time event handler for the given type.
31
+ * @param {string|symbol} type Type of event to listen for
32
+ * @param {Function} handler Function to call in response to given event
33
+ * @returns {Function} A function to unregister the handler
34
+ */
35
+ once<Key extends keyof Events>(type: Key, handler: Handler<Events[Key]>): () => void;
36
+ /**
37
+ * Remove an event handler for the given type.
38
+ * If `handler` is omitted, all handlers of the given type are removed.
39
+ * @param {string|symbol} type Type of event to unregister `handler` from (`'*'` to remove a wildcard handler)
40
+ * @param {Function} [handler] Handler function to remove
41
+ */
42
+ off<Key extends keyof Events>(type: Key, handler?: Handler<Events[Key]>): void;
43
+ off(type: "*", handler: WildcardHandler<Events>): void;
44
+ /**
45
+ * Invoke all handlers for the given type.
46
+ * If present, `'*'` handlers are invoked after type-matched handlers.
47
+ *
48
+ * Note: Manually firing '*' handlers is not supported.
49
+ *
50
+ * @param {string|symbol} type The event type to invoke
51
+ * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler
52
+ */
53
+ emit<Key extends keyof Events>(type: Key, event: Events[Key]): void;
54
+ emit<Key extends keyof Events>(type: undefined extends Events[Key] ? Key : never): void;
55
+ }
@@ -0,0 +1,28 @@
1
+ import { Filter } from 'pixi.js';
2
+ /**
3
+ * OutlineFilter creates outline/stroke effects for text.
4
+ * Replaces default PixiJS stroke option with a custom shader implementation.
5
+ *
6
+ * @example
7
+ * ```js
8
+ * import { OutlineFilter } from './outline-filter';
9
+ *
10
+ * const outlineFilter = new OutlineFilter({
11
+ * thickness: 2.0,
12
+ * borderColor: 0x000000
13
+ * });
14
+ * text.filters = [outlineFilter];
15
+ * ```
16
+ */
17
+ export declare class OutlineFilter extends Filter {
18
+ constructor(options: {
19
+ thickness?: number;
20
+ borderColor?: number;
21
+ });
22
+ /**
23
+ * The thickness of the outline effect.
24
+ * @default 2.0
25
+ */
26
+ get thickness(): any;
27
+ set thickness(value: any);
28
+ }
@@ -0,0 +1,27 @@
1
+ export { fastConcatMP4, fixFMP4Duration, mixinMP4AndAudio } from './mp4-utils';
2
+ export { createChromakey } from './utils/chromakey';
3
+ export { renderTxt2ImgBitmap } from './utils/dom';
4
+ export { Audio, Caption, Image, Video, Text, Effect, Transition, Placeholder, ShapeClip, Backdrop, ClipRegistry, } from './clips';
5
+ export type { IClip, IMP4ClipOpts } from './clips';
6
+ export { DEFAULT_AUDIO_CONF } from './clips/iclip';
7
+ export { Video as MP4Clip } from './clips';
8
+ export { Compositor } from './compositor';
9
+ export type { ICompositorOpts } from './compositor';
10
+ export { Studio, Studio as PixiEngine } from './studio';
11
+ export type { IStudioOpts, IStudioOpts as IPixiEngineOpts } from './studio';
12
+ export { Log } from './utils/log';
13
+ export { clipToJSON, jsonToClip, type ClipJSON, type ProjectJSON } from './json-serialization';
14
+ export { fontManager, FontManager } from './utils/fonts';
15
+ export { mediaCache, MediaCache } from './utils/media-cache';
16
+ export type { MediaCacheOptions } from './utils/media-cache';
17
+ export { AssetManager } from './utils/asset-manager';
18
+ export { ResourceManager, ResourceStatus } from './studio/resource-manager';
19
+ export { makeEffect } from './effect/effect';
20
+ export { VALUES_FILTER_SPECIAL, VALUES_FILTER_SPECIAL_LIMITS } from './effect/constant';
21
+ export type { FilterOptionsMap } from './effect/interface';
22
+ export { registerCustomEffect, unregisterCustomEffect, getAllEffects, getEffectOptions, GL_EFFECT_OPTIONS, type GlEffect, } from './effect/glsl/gl-effect';
23
+ export type { EffectKey } from './effect/glsl/gl-effect';
24
+ export { makeTransition } from './transition/transition';
25
+ export { registerCustomTransition, unregisterCustomTransition, getAllTransitions, getTransitionOptions, GL_TRANSITION_OPTIONS, type GlTransition, } from './transition/glsl/gl-transition';
26
+ export type { TransitionKey } from './transition/glsl/gl-transition';
27
+ export * from './animation';