cascading-reel 1.0.2 → 2.0.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/index.d.ts CHANGED
@@ -1,169 +1,168 @@
1
- export declare class CascadingReel {
2
- private static readonly RAINBOW_HUE_BUCKETS;
3
- private static readonly PARTICLE_GLOBAL_ALPHA;
4
- private static readonly PARTICLE_MAX_DISTANCE;
5
- private static readonly PARTICLE_BASE_RADIUS;
6
- private static readonly DEFAULT_SYMBOL_SCALE;
7
- private readonly canvas;
8
- private readonly container;
9
- private readonly button?;
10
- private readonly spinQueueController;
11
- private readonly spriteSource?;
12
- private readonly spriteCrossOrigin;
13
- private readonly spriteElementsCount;
14
- private readonly highlightInitialWinningCells;
15
- private readonly particleColorRgb;
16
- private readonly particleColorMode;
17
- private readonly symbolScale;
18
- private readonly motionProfile;
19
- private readonly isCoarsePointerDevice;
20
- private spriteImage;
21
- private spriteLoadError;
22
- private webglRenderer;
23
- private readonly rafLoop;
24
- private readonly runtime;
25
- private width;
26
- private height;
27
- private cellW;
28
- private cellH;
29
- private boardX;
30
- private boardY;
31
- private scriptedCascadeQueue;
32
- private scriptedOutgoingGrid;
33
- private scriptedPendingGrid;
34
- private scriptedOutroStartedAt;
35
- private scriptedOutroElapsedMs;
36
- private outroMotionPlan;
37
- private scriptedOutgoingOffsets;
38
- private scriptedOutgoingOffsetsPrev;
39
- private scriptedIncomingOffsets;
40
- private scriptedIncomingOffsetsPrev;
41
- private scriptedIncomingAlpha;
42
- private scriptedIncomingAlphaPrev;
43
- private scriptedIncomingVisibility;
44
- private scriptedIncomingVisibilityPrev;
45
- private winningCells;
46
- private readonly winningCellKeys;
47
- private grid;
48
- private readonly particlesPerCell;
49
- private lastRafTime;
50
- private initialHighlightRequestedAt;
51
- private simulationLastNow;
52
- private simulationAccumulatorMs;
53
- private outroInterpolationAlpha;
54
- private isOutroPipelineWarmedUp;
55
- private isGpuPipelineWarmedUp;
56
- private perfWindowStartedAt;
57
- private perfFrameCount;
58
- private perfOver20MsCount;
59
- private readonly perfDtSamples;
60
- private mobileDprCap;
61
- private mobilePerfGoodWindows;
62
- private mobilePerfBadWindows;
63
- private static readonly PERF_WINDOW_MS;
64
- private static readonly PERF_BAD_P95_DT_MS;
65
- private static readonly PERF_GOOD_P95_DT_MS;
66
- private static readonly PERF_BAD_SLOW_RATIO;
67
- private static readonly MOBILE_BAD_WINDOWS_TO_DECREASE_DPR;
68
- private static readonly MOBILE_GOOD_WINDOWS_TO_INCREASE_DPR;
69
- private static readonly MOBILE_DPR_CAP_MIN;
70
- private static readonly MOBILE_DPR_CAP_MAX;
71
- private static readonly MOBILE_DPR_STEP_DOWN;
72
- private static readonly MOBILE_DPR_STEP_UP;
73
- private static readonly DPR_QUANT_STEP;
74
- private static readonly MAX_CANVAS_AREA_PX_COARSE;
75
- private static readonly MAX_CANVAS_AREA_PX_FINE;
76
- private static readonly PRE_SPIN_MS;
77
- private static readonly WIN_EFFECTS_ENVELOPE_TAU_MS;
78
- private static readonly MAX_FRAME_DELTA_MS;
79
- private static readonly WIN_BORDER_ALPHA;
80
- private static readonly WIN_BORDER_INSET_RATIO;
81
- private static readonly particleSeedsCache;
82
- constructor(config: CascadingReelConfig);
83
- init(): Promise<void>;
84
- destroy(): void;
85
- spin(): void;
86
- private bindEvents;
87
- private unbindEvents;
88
- private readonly onVisibilityChange;
89
- private readonly onSpinClick;
90
- private getNextGrid;
91
- private update;
92
- private stepScriptedOutro;
93
- private tryStartScriptedCascade;
94
- private startOutroTransition;
95
- private finishSpinWithUi;
96
- private dismissHighlightIfActive;
97
- private applyInitialHighlightIfNeeded;
98
- private warmUpOutroPipeline;
99
- private createOutroMotionPlan;
100
- private quantizeMs;
101
- private warmUpGpuPipeline;
102
- private trackOutroPerf;
103
- private resetPerfWindow;
104
- private flushPerfWindow;
105
- private adjustMobileDprCap;
106
- private render;
107
- private readonly isWinningCell;
108
- private getRowCompactOffset;
109
- private applyPixelSnapY;
110
- private drawGrid;
111
- private drawGridInterpolated;
112
- private drawGridWithSampler;
113
- private drawWinningEffects;
114
- private drawCellParticleBurst;
115
- private drawElectricBorder;
116
- private static hslToRgb01;
117
- private static getRainbowParticleColor;
118
- private static detectCoarsePointerDevice;
119
- private quantizeDprCap;
120
- private static hash01;
121
- private static getParticleSeeds;
122
- private clearWinningCells;
123
- private setWinningCells;
124
- private readonly resize;
125
- private loadSpriteIfProvided;
126
- private decodeSpriteImage;
127
- private toSpriteLoadErrorMessage;
128
- private advanceSimulation;
129
- private advanceOutroFixedStep;
130
- private snapshotOutroState;
131
- private copyOffsets;
132
- private copyVisibility;
133
- private resetOutroBuffers;
134
- private static createVisibilityGrid;
135
- private fillVisibilityGrid;
136
- private startLoop;
137
- private shouldKeepAnimating;
138
- }
139
-
140
- export declare type CascadingReelConfig = {
141
- canvas: HTMLCanvasElement;
142
- container: HTMLElement;
143
- button?: HTMLButtonElement;
144
- sprite?: SpriteSource;
145
- spriteCrossOrigin?: SpriteCrossOrigin;
146
- spriteElementsCount?: number;
147
- symbolScale?: number;
148
- initialSegments?: number[][];
149
- highlightInitialWinningCells?: boolean;
150
- queuedSpinStates?: SpinState[];
151
- particleColor?: ParticleColor;
152
- };
153
-
154
- declare type ParticleColor = 'rainbow' | [number, number, number];
155
-
156
- export declare type SpinState = {
157
- stopGrid?: number[][];
158
- stopRows?: number[][];
159
- finaleSequence?: number[][][];
160
- finaleSequenceRows?: number[][][];
161
- highlightWin?: boolean;
162
- callback?: () => void;
163
- };
164
-
165
- declare type SpriteCrossOrigin = '' | 'anonymous' | 'use-credentials';
166
-
167
- declare type SpriteSource = string | HTMLImageElement;
168
-
169
- export { }
1
+ //#region src/types.d.ts
2
+ type ParticleColor = 'rainbow' | [number, number, number];
3
+ type SpriteSource = string | HTMLImageElement;
4
+ type SpriteCrossOrigin = '' | 'anonymous' | 'use-credentials';
5
+ type SpinState = {
6
+ stopGrid?: number[][];
7
+ stopRows?: number[][];
8
+ finaleSequence?: number[][][];
9
+ finaleSequenceRows?: number[][][];
10
+ highlightWin?: boolean;
11
+ callback?: () => void;
12
+ };
13
+ type CascadingReelConfig = {
14
+ canvas: HTMLCanvasElement;
15
+ container: HTMLElement;
16
+ button?: HTMLButtonElement;
17
+ sprite?: SpriteSource;
18
+ spriteCrossOrigin?: SpriteCrossOrigin;
19
+ spriteElementsCount?: number;
20
+ symbolScale?: number;
21
+ initialSegments?: number[][];
22
+ highlightInitialWinningCells?: boolean;
23
+ queuedSpinStates?: SpinState[];
24
+ particleColor?: ParticleColor;
25
+ };
26
+ //#endregion
27
+ //#region src/CascadingReel.d.ts
28
+ declare class CascadingReel {
29
+ private static readonly RAINBOW_HUE_BUCKETS;
30
+ private static readonly PARTICLE_GLOBAL_ALPHA;
31
+ private static readonly PARTICLE_MAX_DISTANCE;
32
+ private static readonly PARTICLE_BASE_RADIUS;
33
+ private static readonly DEFAULT_SYMBOL_SCALE;
34
+ private readonly canvas;
35
+ private readonly container;
36
+ private readonly button?;
37
+ private readonly spinQueueController;
38
+ private readonly spriteSource?;
39
+ private readonly spriteCrossOrigin;
40
+ private readonly spriteElementsCount;
41
+ private readonly highlightInitialWinningCells;
42
+ private readonly particleColorRgb;
43
+ private readonly particleColorMode;
44
+ private readonly symbolScale;
45
+ private readonly motionProfile;
46
+ private readonly isCoarsePointerDevice;
47
+ private spriteImage;
48
+ private spriteLoadError;
49
+ private webglRenderer;
50
+ private readonly rafLoop;
51
+ private readonly runtime;
52
+ private width;
53
+ private height;
54
+ private cellW;
55
+ private cellH;
56
+ private boardX;
57
+ private boardY;
58
+ private scriptedCascadeQueue;
59
+ private scriptedOutgoingGrid;
60
+ private scriptedPendingGrid;
61
+ private scriptedOutroStartedAt;
62
+ private scriptedOutroElapsedMs;
63
+ private outroMotionPlan;
64
+ private scriptedOutgoingOffsets;
65
+ private scriptedOutgoingOffsetsPrev;
66
+ private scriptedIncomingOffsets;
67
+ private scriptedIncomingOffsetsPrev;
68
+ private scriptedIncomingAlpha;
69
+ private scriptedIncomingAlphaPrev;
70
+ private scriptedIncomingVisibility;
71
+ private scriptedIncomingVisibilityPrev;
72
+ private winningCells;
73
+ private readonly winningCellKeys;
74
+ private grid;
75
+ private readonly particlesPerCell;
76
+ private lastRafTime;
77
+ private initialHighlightRequestedAt;
78
+ private simulationLastNow;
79
+ private simulationAccumulatorMs;
80
+ private outroInterpolationAlpha;
81
+ private isOutroPipelineWarmedUp;
82
+ private isGpuPipelineWarmedUp;
83
+ private perfWindowStartedAt;
84
+ private perfFrameCount;
85
+ private perfOver20MsCount;
86
+ private readonly perfDtSamples;
87
+ private mobileDprCap;
88
+ private mobilePerfGoodWindows;
89
+ private mobilePerfBadWindows;
90
+ private static readonly PERF_WINDOW_MS;
91
+ private static readonly PERF_BAD_P95_DT_MS;
92
+ private static readonly PERF_GOOD_P95_DT_MS;
93
+ private static readonly PERF_BAD_SLOW_RATIO;
94
+ private static readonly MOBILE_BAD_WINDOWS_TO_DECREASE_DPR;
95
+ private static readonly MOBILE_GOOD_WINDOWS_TO_INCREASE_DPR;
96
+ private static readonly MOBILE_DPR_CAP_MIN;
97
+ private static readonly MOBILE_DPR_CAP_MAX;
98
+ private static readonly MOBILE_DPR_STEP_DOWN;
99
+ private static readonly MOBILE_DPR_STEP_UP;
100
+ private static readonly DPR_QUANT_STEP;
101
+ private static readonly MAX_CANVAS_AREA_PX_COARSE;
102
+ private static readonly MAX_CANVAS_AREA_PX_FINE;
103
+ private static readonly PRE_SPIN_MS;
104
+ private static readonly WIN_EFFECTS_ENVELOPE_TAU_MS;
105
+ private static readonly MAX_FRAME_DELTA_MS;
106
+ private static readonly WIN_BORDER_ALPHA;
107
+ private static readonly WIN_BORDER_INSET_RATIO;
108
+ private static readonly particleSeedsCache;
109
+ constructor(config: CascadingReelConfig);
110
+ init(): Promise<void>;
111
+ destroy(): void;
112
+ spin(): void;
113
+ private bindEvents;
114
+ private unbindEvents;
115
+ private readonly onVisibilityChange;
116
+ private readonly onSpinClick;
117
+ private getNextGrid;
118
+ private update;
119
+ private stepScriptedOutro;
120
+ private tryStartScriptedCascade;
121
+ private startOutroTransition;
122
+ private finishSpinWithUi;
123
+ private dismissHighlightIfActive;
124
+ private applyInitialHighlightIfNeeded;
125
+ private warmUpOutroPipeline;
126
+ private createOutroMotionPlan;
127
+ private quantizeMs;
128
+ private warmUpGpuPipeline;
129
+ private trackOutroPerf;
130
+ private resetPerfWindow;
131
+ private flushPerfWindow;
132
+ private adjustMobileDprCap;
133
+ private render;
134
+ private readonly isWinningCell;
135
+ private getRowCompactOffset;
136
+ private applyPixelSnapY;
137
+ private drawGrid;
138
+ private drawGridInterpolated;
139
+ private drawGridWithSampler;
140
+ private drawWinningEffects;
141
+ private drawCellParticleBurst;
142
+ private drawElectricBorder;
143
+ private static hslToRgb01;
144
+ private static getRainbowParticleColor;
145
+ private static detectCoarsePointerDevice;
146
+ private quantizeDprCap;
147
+ private static hash01;
148
+ private static getParticleSeeds;
149
+ private clearWinningCells;
150
+ private setWinningCells;
151
+ private readonly resize;
152
+ private loadSpriteIfProvided;
153
+ private decodeSpriteImage;
154
+ private toSpriteLoadErrorMessage;
155
+ private advanceSimulation;
156
+ private advanceOutroFixedStep;
157
+ private snapshotOutroState;
158
+ private copyOffsets;
159
+ private copyVisibility;
160
+ private resetOutroBuffers;
161
+ private static createVisibilityGrid;
162
+ private fillVisibilityGrid;
163
+ private startLoop;
164
+ private shouldKeepAnimating;
165
+ }
166
+ //#endregion
167
+ export { CascadingReel, type CascadingReelConfig, type SpinState };
168
+ //# sourceMappingURL=index.d.ts.map