Skip to content

Commit af455f6

Browse files
committed
Remvove "any" usage from PixelBlast
1 parent 2463327 commit af455f6

File tree

3 files changed

+30
-15
lines changed

3 files changed

+30
-15
lines changed

src/components/common/TabbedLayout.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ import ContributionSection from './ContributionSection.vue';
7070
:deep(.p-tablist-tab-list) {
7171
display: flex;
7272
gap: 0.5rem;
73-
padding-bottom: .1em;
73+
padding-bottom: 0.1em;
7474
align-items: flex-start;
7575
flex-wrap: wrap;
7676
border: none !important;

src/content/Animations/TargetCursor/TargetCursor.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ const setupAnimation = () => {
118118
const corners = Array.from(cornersRef.value);
119119
corners.forEach(corner => {
120120
gsap.killTweensOf(corner);
121-
})
121+
});
122122
gsap.killTweensOf(cursorRef.value, 'rotation');
123123
spinTl.value?.pause();
124124

src/content/Backgrounds/PixelBlast/PixelBlast.vue

Lines changed: 28 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -395,21 +395,31 @@ const threeRef = ref<{
395395
touch?: ReturnType<typeof createTouchTexture>;
396396
liquidEffect?: Effect;
397397
} | null>(null);
398-
const prevConfigRef = ref<any>(null);
398+
399+
interface PixelBlastConfig {
400+
antialias: boolean;
401+
liquid: boolean;
402+
noiseAmount: number;
403+
}
404+
const prevConfigRef = ref<PixelBlastConfig | null>(null);
399405
400406
let cleanup: (() => void) | null = null;
401407
402408
const setup = () => {
403409
const container = containerRef.value;
404410
if (!container) return;
405411
speedRef.value = props.speed;
406-
const needsReinitKeys = ['antialias', 'liquid', 'noiseAmount'];
407-
const cfg = { antialias: props.antialias, liquid: props.liquid, noiseAmount: props.noiseAmount };
412+
const needsReinitKeys: (keyof PixelBlastConfig)[] = ['antialias', 'liquid', 'noiseAmount'];
413+
const cfg: PixelBlastConfig = {
414+
antialias: props.antialias,
415+
liquid: props.liquid,
416+
noiseAmount: props.noiseAmount
417+
};
408418
let mustReinit = false;
409419
if (!threeRef.value) mustReinit = true;
410420
else if (prevConfigRef.value) {
411421
for (const k of needsReinitKeys)
412-
if (prevConfigRef.value[k] !== (cfg as any)[k]) {
422+
if (prevConfigRef.value[k] !== cfg[k]) {
413423
mustReinit = true;
414424
break;
415425
}
@@ -486,7 +496,7 @@ const setup = () => {
486496
const ro = new ResizeObserver(setSize);
487497
ro.observe(container);
488498
const randomFloat = () => {
489-
if (typeof window !== 'undefined' && (window as any).crypto?.getRandomValues) {
499+
if (typeof window !== 'undefined' && window.crypto?.getRandomValues) {
490500
const u32 = new Uint32Array(1);
491501
window.crypto.getRandomValues(u32);
492502
return u32[0] / 0xffffffff;
@@ -528,7 +538,11 @@ const setup = () => {
528538
);
529539
const noisePass = new EffectPass(camera, noiseEffect);
530540
noisePass.renderToScreen = true;
531-
if (composer && composer.passes.length > 0) composer.passes.forEach(p => ((p as any).renderToScreen = false));
541+
if (composer && composer.passes.length > 0)
542+
composer.passes.forEach(p => {
543+
// EffectPass has renderToScreen; ensure we turn it off before adding a new final pass
544+
if ('renderToScreen' in p) (p as { renderToScreen?: boolean }).renderToScreen = false;
545+
});
532546
composer.addPass(noisePass);
533547
}
534548
if (composer) composer.setSize(renderer.domElement.width, renderer.domElement.height);
@@ -570,16 +584,17 @@ const setup = () => {
570584
return;
571585
}
572586
uniforms.uTime.value = timeOffset + clock.getElapsedTime() * speedRef.value;
573-
if (liquidEffect) (liquidEffect as any).uniforms.get('uTime').value = uniforms.uTime.value;
587+
if (liquidEffect) liquidEffect.uniforms.get('uTime')!.value = uniforms.uTime.value;
574588
if (composer) {
575589
if (touch) touch.update();
576590
composer.passes.forEach(p => {
577-
const effs = (p as any).effects;
578-
if (effs)
579-
effs.forEach((eff: any) => {
580-
const u = eff.uniforms?.get('uTime');
591+
if (p instanceof EffectPass) {
592+
const effs = (p as unknown as { effects?: Effect[] }).effects;
593+
effs?.forEach(eff => {
594+
const u = eff.uniforms.get('uTime');
581595
if (u) u.value = uniforms.uTime.value;
582596
});
597+
}
583598
});
584599
composer.render();
585600
} else renderer.render(scene, camera);
@@ -618,9 +633,9 @@ const setup = () => {
618633
if (props.transparent) t.renderer.setClearAlpha(0);
619634
else t.renderer.setClearColor(0x000000, 1);
620635
if (t.liquidEffect) {
621-
const uStrength = (t.liquidEffect as any).uniforms.get('uStrength');
636+
const uStrength = t.liquidEffect?.uniforms.get('uStrength');
622637
if (uStrength) uStrength.value = props.liquidStrength;
623-
const uFreq = (t.liquidEffect as any).uniforms.get('uFreq');
638+
const uFreq = t.liquidEffect?.uniforms.get('uFreq');
624639
if (uFreq) uFreq.value = props.liquidWobbleSpeed;
625640
}
626641
if (t.touch) t.touch.radiusScale = props.liquidRadius;

0 commit comments

Comments
 (0)